summaryrefslogtreecommitdiff
path: root/buildscripts/PhpDocumentor/phpDocumentor/Converters
diff options
context:
space:
mode:
Diffstat (limited to 'buildscripts/PhpDocumentor/phpDocumentor/Converters')
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/CHMdefaultConverter.inc1899
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/options.ini507
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/basicindex.tpl21
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/blank.tpl13
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/class.tpl94
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/classleft.tpl8
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/classtrees.tpl12
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/const.tpl29
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/contents.hhc.tpl11
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/define.tpl33
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/docblock.tpl31
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/elementindex.tpl9
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/errors.tpl21
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/fileleft.tpl8
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/filesource.tpl6
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/footer.tpl8
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/function.tpl44
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/global.tpl32
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/header.tpl22
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/hhp.tpl17
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/include.tpl26
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/index.hhk.tpl8
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/index.tpl24
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/media/bg_left.pngbin0 -> 991 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/media/stylesheet.css130
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/method.tpl126
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/packages.tpl3
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/page.tpl34
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/pkgelementindex.tpl14
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/ric.tpl6
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/tocentry.tpl11
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/todolist.tpl14
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/tutorial.tpl32
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/tutorial_toc.tpl29
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/tutorial_tree.tpl5
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/var.tpl51
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/HTMLSmartyConverter.inc1966
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/options.ini577
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/basicindex.tpl21
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/blank.tpl6
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/class.tpl541
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/classleft.tpl11
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/classtags.tpl22
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/classtrees.tpl17
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/const.tpl19
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/define.tpl34
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/docblock.tpl5
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/elementindex.tpl12
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/errors.tpl21
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/examplesource.tpl6
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/fileleft.tpl8
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/filesource.tpl8
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/filetags.tpl7
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/footer.tpl11
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/function.tpl54
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/global.tpl35
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/header.tpl110
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/include.tpl18
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/index.tpl7
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/media/background.pngbin0 -> 307 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/media/empty.pngbin0 -> 206 bytes
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/media/logo.pngbin0 -> 7724 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/media/style.css135
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/method.tpl176
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/packages.tpl3
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/page.tpl210
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/pkgelementindex.tpl15
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/ric.tpl6
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/tags.tpl22
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/todolist.tpl14
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/tutorial.tpl32
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/tutorial_toc.tpl29
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/tutorial_tree.tpl5
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/var.tpl94
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/options.ini577
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/basicindex.tpl18
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/blank.tpl5
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/class.tpl231
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/classleft.tpl9
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/classtrees.tpl17
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/const.tpl14
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/define.tpl32
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/docblock.tpl15
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/elementindex.tpl5
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/errors.tpl21
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/examplesource.tpl6
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/fileleft.tpl10
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/filesource.tpl8
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/footer.tpl11
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/function.tpl48
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/global.tpl40
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/header.tpl97
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/include.tpl9
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/index.tpl7
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/media/background.pngbin0 -> 238 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/media/empty.pngbin0 -> 206 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/media/style.css195
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/method.tpl145
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/packages.tpl3
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/page.tpl31
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/pkgelementindex.tpl5
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/ric.tpl6
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/todolist.tpl14
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/tutorial.tpl32
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/tutorial_toc.tpl29
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/tutorial_tree.tpl5
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/var.tpl60
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/options.ini577
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/__tags.tpl13
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_class_declaration.tpl38
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_class_description.tpl7
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_class_list.tpl1
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_constant_details.tpl33
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_constant_summary.tpl22
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_constructor_details.tpl55
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_constructor_summary.tpl25
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_destructor_details.tpl55
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_destructor_summary.tpl27
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_footer.tpl1
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_get_constant_type.tpl10
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_header.tpl4
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_inherited_constants.tpl34
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_inherited_methods.tpl42
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_inheritence_tree.tpl3
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_method_details.tpl101
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_method_summary.tpl61
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_sub_classes.tpl19
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_tags.tpl13
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/basicindex.tpl18
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/blank.tpl5
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/class.tpl29
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/classleft.tpl9
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/classtrees.tpl8
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/const.tpl14
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/define.tpl32
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/docblock.tpl15
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/elementindex.tpl5
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/errors.tpl21
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/examplesource.tpl6
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/fileleft.tpl10
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/filesource.tpl8
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/footer.tpl25
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/function.tpl48
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/global.tpl40
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/header.tpl113
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/include.tpl9
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/index.tpl7
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/media/background.pngbin0 -> 238 bytes
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/media/bg_left.pngbin0 -> 991 bytes
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/media/empty.pngbin0 -> 206 bytes
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/media/manual.css260
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/media/style.css598
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/media/stylesheet.css129
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/method.tpl58
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/packages.tpl3
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/page.tpl31
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/pkgelementindex.tpl5
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/ric.tpl6
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/todolist.tpl14
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/tutorial.tpl32
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/tutorial_toc.tpl29
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/tutorial_tree.tpl5
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/var.tpl28
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/options.ini577
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/basicindex.tpl17
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/blank.tpl5
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/class.tpl173
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/classleft.tpl8
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/classtrees.tpl17
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/const.tpl14
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/define.tpl23
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/docblock.tpl13
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/elementindex.tpl5
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/errors.tpl21
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/examplesource.tpl6
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/fileleft.tpl8
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/filesource.tpl8
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/footer.tpl7
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/function.tpl39
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/global.tpl24
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/header.tpl101
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/include.tpl8
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/index.tpl7
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/layout.css81
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/media/layout.css81
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/media/print.css25
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/media/style.css236
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/method.tpl123
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/packages.tpl3
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/page.tpl31
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/pkgelementindex.tpl5
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/ric.tpl6
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/style.css172
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/todolist.tpl14
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/tutorial.tpl32
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/tutorial_toc.tpl29
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/tutorial_tree.tpl5
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/var.tpl36
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/HTMLframesConverter.inc1914
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/options.ini577
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/basicindex.tpl47
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/blank.tpl13
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/class.tpl429
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/classtrees.tpl19
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/const.tpl18
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/define.tpl24
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/docblock.tpl14
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/elementindex.tpl12
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/errors.tpl21
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/examplesource.tpl6
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/filesource.tpl8
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/footer.tpl8
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/function.tpl44
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/global.tpl26
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/header.tpl95
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/include.tpl16
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/index.tpl24
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/left_frame.tpl197
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/banner.css32
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/I.pngbin0 -> 148 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/L.pngbin0 -> 153 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/Lminus.pngbin0 -> 219 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/Lplus.pngbin0 -> 224 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/T.pngbin0 -> 152 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/Tminus.pngbin0 -> 207 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/Tplus.pngbin0 -> 222 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/blank.pngbin0 -> 144 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/empty.pngbin0 -> 90 bytes
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/minus.gifbin0 -> 54 bytes
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/plus.gifbin0 -> 56 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/lib/classTree.js454
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/stylesheet.css184
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/method.tpl149
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/page.tpl211
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/pkgelementindex.tpl17
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/ric.tpl6
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/todolist.tpl14
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/top_frame.tpl45
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/tutorial.tpl13
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/tutorial_nav.tpl41
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/tutorial_toc.tpl40
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/tutorial_tree.tpl8
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/var.tpl90
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/options.ini577
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/basicindex.tpl57
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/blank.tpl13
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/class.tpl444
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/classtrees.tpl19
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/const.tpl18
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/define.tpl25
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/docblock.tpl14
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/elementindex.tpl12
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/errors.tpl21
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/examplesource.tpl6
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/filesource.tpl8
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/footer.tpl8
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/function.tpl44
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/global.tpl27
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/header.tpl95
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/include.tpl17
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/index.tpl24
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/left_frame.tpl250
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/banner.css32
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/AbstractClass.pngbin0 -> 620 bytes
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/AbstractClass_logo.pngbin0 -> 1232 bytes
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/AbstractMethod.pngbin0 -> 696 bytes
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/AbstractPrivateClass.pngbin0 -> 848 bytes
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/AbstractPrivateClass_logo.pngbin0 -> 1615 bytes
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/AbstractPrivateMethod.pngbin0 -> 874 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Class.pngbin0 -> 570 bytes
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Class_logo.pngbin0 -> 1600 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Constant.pngbin0 -> 752 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Constructor.pngbin0 -> 865 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Destructor.pngbin0 -> 956 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Function.pngbin0 -> 596 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Global.pngbin0 -> 712 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/I.pngbin0 -> 148 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Index.pngbin0 -> 584 bytes
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Interface.pngbin0 -> 1083 bytes
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Interface_logo.pngbin0 -> 1600 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/L.pngbin0 -> 153 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Lminus.pngbin0 -> 219 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Lplus.pngbin0 -> 224 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Method.pngbin0 -> 661 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Page.pngbin0 -> 592 bytes
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Page_logo.pngbin0 -> 1369 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/PrivateClass.pngbin0 -> 790 bytes
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/PrivateClass_logo.pngbin0 -> 1836 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/PrivateMethod.pngbin0 -> 918 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/PrivateVariable.pngbin0 -> 772 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/StaticMethod.pngbin0 -> 661 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/StaticVariable.pngbin0 -> 688 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/T.pngbin0 -> 152 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Tminus.pngbin0 -> 207 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Tplus.pngbin0 -> 222 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Variable.pngbin0 -> 688 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/blank.pngbin0 -> 144 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/class_folder.pngbin0 -> 633 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/empty.pngbin0 -> 90 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/file.pngbin0 -> 462 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/folder.pngbin0 -> 492 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/function_folder.pngbin0 -> 605 bytes
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/minus.gifbin0 -> 54 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/next_button.pngbin0 -> 657 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/next_button_disabled.pngbin0 -> 543 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/package.pngbin0 -> 668 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/package_folder.pngbin0 -> 564 bytes
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/plus.gifbin0 -> 56 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/previous_button.pngbin0 -> 644 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/previous_button_disabled.pngbin0 -> 541 bytes
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/private_class_logo.pngbin0 -> 1836 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/tutorial.pngbin0 -> 431 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/tutorial_folder.pngbin0 -> 572 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/up_button.pngbin0 -> 668 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/lib/classTree.js454
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/stylesheet.css181
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/method.tpl151
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/page.tpl214
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/pkgelementindex.tpl17
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/ric.tpl6
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/todolist.tpl14
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/top_frame.tpl45
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/tutorial.tpl13
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/tutorial_nav.tpl41
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/tutorial_toc.tpl40
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/tutorial_tree.tpl9
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/var.tpl94
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/options.ini577
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/basicindex.tpl47
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/blank.tpl13
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/class.tpl429
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/classtrees.tpl19
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/const.tpl18
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/define.tpl24
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/docblock.tpl14
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/elementindex.tpl12
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/errors.tpl21
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/examplesource.tpl6
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/filesource.tpl8
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/footer.tpl8
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/function.tpl44
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/global.tpl26
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/header.tpl99
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/include.tpl16
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/index.tpl24
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/left_frame.tpl198
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/banner.css32
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/bg_left.pngbin0 -> 181 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/images/I.pngbin0 -> 148 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/images/L.pngbin0 -> 153 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/images/Lminus.pngbin0 -> 219 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/images/Lplus.pngbin0 -> 224 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/images/T.pngbin0 -> 152 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/images/Tminus.pngbin0 -> 207 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/images/Tplus.pngbin0 -> 222 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/images/blank.pngbin0 -> 144 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/images/empty.pngbin0 -> 90 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/lib/classTree.js454
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/minus.gifbin0 -> 54 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/plus.gifbin0 -> 56 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/stylesheet.css196
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/method.tpl149
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/page.tpl211
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/pkgelementindex.tpl17
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/ric.tpl6
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/todolist.tpl14
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/top_frame.tpl45
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/tutorial.tpl13
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/tutorial_nav.tpl41
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/tutorial_toc.tpl40
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/tutorial_tree.tpl8
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/var.tpl92
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/options.ini577
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/basicindex.tpl47
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/blank.tpl13
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/class.tpl429
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/classtrees.tpl19
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/const.tpl18
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/define.tpl24
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/docblock.tpl14
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/elementindex.tpl12
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/errors.tpl21
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/examplesource.tpl6
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/filesource.tpl8
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/footer.tpl8
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/function.tpl44
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/global.tpl26
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/header.tpl95
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/include.tpl16
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/index.tpl24
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/left_frame.tpl217
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/banner.css32
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/I.pngbin0 -> 148 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/L.pngbin0 -> 153 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/Lminus.pngbin0 -> 219 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/Lplus.pngbin0 -> 224 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/T.pngbin0 -> 152 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/Tminus.pngbin0 -> 207 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/Tplus.pngbin0 -> 222 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/blank.pngbin0 -> 144 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/empty.pngbin0 -> 90 bytes
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/minus.gifbin0 -> 54 bytes
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/plus.gifbin0 -> 56 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/lib/classTree.js454
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/stylesheet.css184
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/method.tpl149
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/page.tpl211
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/pkgelementindex.tpl17
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/ric.tpl6
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/todolist.tpl14
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/top_frame.tpl45
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/tutorial.tpl13
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/tutorial_nav.tpl41
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/tutorial_toc.tpl40
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/tutorial_tree.tpl8
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/var.tpl92
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/options.ini577
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/basicindex.tpl47
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/blank.tpl13
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/class.tpl429
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/classtrees.tpl19
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/const.tpl18
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/define.tpl24
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/docblock.tpl14
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/elementindex.tpl12
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/errors.tpl21
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/examplesource.tpl6
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/filesource.tpl8
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/footer.tpl8
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/function.tpl44
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/global.tpl26
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/header.tpl95
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/include.tpl16
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/index.tpl24
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/left_frame.tpl216
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/banner.css32
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/I.pngbin0 -> 148 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/L.pngbin0 -> 153 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/Lminus.pngbin0 -> 219 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/Lplus.pngbin0 -> 224 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/T.pngbin0 -> 152 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/Tminus.pngbin0 -> 207 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/Tplus.pngbin0 -> 222 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/blank.pngbin0 -> 144 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/empty.pngbin0 -> 90 bytes
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/minus.gifbin0 -> 54 bytes
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/plus.gifbin0 -> 56 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/lib/classTree.js454
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/stylesheet.css184
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/method.tpl149
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/page.tpl211
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/pkgelementindex.tpl17
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/ric.tpl6
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/todolist.tpl14
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/top_frame.tpl45
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/tutorial.tpl13
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/tutorial_nav.tpl41
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/tutorial_toc.tpl40
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/tutorial_tree.tpl8
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/var.tpl92
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/options.ini577
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/basicindex.tpl47
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/blank.tpl13
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/class.tpl430
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/classtrees.tpl19
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/const.tpl18
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/define.tpl24
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/docblock.tpl14
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/elementindex.tpl12
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/errors.tpl21
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/examplesource.tpl6
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/filesource.tpl8
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/footer.tpl8
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/function.tpl44
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/global.tpl26
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/header.tpl12
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/include.tpl16
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/index.tpl24
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/left_frame.tpl159
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/media/banner.css32
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/media/stylesheet.css144
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/method.tpl151
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/page.tpl211
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/pkgelementindex.tpl17
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/ric.tpl6
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/todolist.tpl14
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/top_frame.tpl43
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/tutorial.tpl13
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/tutorial_nav.tpl41
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/tutorial_toc.tpl40
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/tutorial_tree.tpl6
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/var.tpl91
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/options.ini576
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/basicindex.tpl57
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/blank.tpl13
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/class.tpl437
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/classtrees.tpl19
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/const.tpl18
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/define.tpl25
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/docblock.tpl14
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/elementindex.tpl12
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/errors.tpl21
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/examplesource.tpl6
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/filesource.tpl8
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/footer.tpl8
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/function.tpl44
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/global.tpl27
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/header.tpl12
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/include.tpl17
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/index.tpl24
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/left_frame.tpl159
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/banner.css33
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/AbstractClass.pngbin0 -> 620 bytes
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/AbstractClass_logo.pngbin0 -> 1232 bytes
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/AbstractMethod.pngbin0 -> 696 bytes
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/AbstractPrivateClass.pngbin0 -> 848 bytes
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/AbstractPrivateClass_logo.pngbin0 -> 1615 bytes
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/AbstractPrivateMethod.pngbin0 -> 874 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Class.pngbin0 -> 570 bytes
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Class_logo.pngbin0 -> 1600 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Constant.pngbin0 -> 752 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Constructor.pngbin0 -> 865 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Destructor.pngbin0 -> 956 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Function.pngbin0 -> 596 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Global.pngbin0 -> 712 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/I.pngbin0 -> 148 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Index.pngbin0 -> 584 bytes
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Interface.pngbin0 -> 1083 bytes
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Interface_logo.pngbin0 -> 1600 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/L.pngbin0 -> 153 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Lminus.pngbin0 -> 219 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Lplus.pngbin0 -> 224 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Method.pngbin0 -> 661 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Page.pngbin0 -> 592 bytes
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Page_logo.pngbin0 -> 1369 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/PrivateClass.pngbin0 -> 790 bytes
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/PrivateClass_logo.pngbin0 -> 1836 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/PrivateMethod.pngbin0 -> 918 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/PrivateVariable.pngbin0 -> 772 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/StaticMethod.pngbin0 -> 661 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/StaticVariable.pngbin0 -> 688 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/T.pngbin0 -> 152 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Tminus.pngbin0 -> 207 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Tplus.pngbin0 -> 222 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Variable.pngbin0 -> 688 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/blank.pngbin0 -> 144 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/class_folder.pngbin0 -> 633 bytes
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/empty.pngbin0 -> 90 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/file.pngbin0 -> 462 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/folder.pngbin0 -> 492 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/function_folder.pngbin0 -> 605 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/next_button.pngbin0 -> 657 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/next_button_disabled.pngbin0 -> 543 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/package.pngbin0 -> 668 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/package_folder.pngbin0 -> 564 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/previous_button.pngbin0 -> 644 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/previous_button_disabled.pngbin0 -> 541 bytes
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/private_class_logo.pngbin0 -> 1836 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/tutorial.pngbin0 -> 431 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/tutorial_folder.pngbin0 -> 572 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/up_button.pngbin0 -> 668 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/stylesheet.css146
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/method.tpl151
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/page.tpl214
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/pkgelementindex.tpl17
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/ric.tpl6
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/todolist.tpl14
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/top_frame.tpl45
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/tutorial.tpl13
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/tutorial_nav.tpl41
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/tutorial_toc.tpl40
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/tutorial_tree.tpl6
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/var.tpl94
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/options.ini576
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/basicindex.tpl47
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/blank.tpl13
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/class.tpl429
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/classtrees.tpl19
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/const.tpl18
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/define.tpl24
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/docblock.tpl14
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/elementindex.tpl12
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/errors.tpl21
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/examplesource.tpl6
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/filesource.tpl8
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/footer.tpl8
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/function.tpl44
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/global.tpl26
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/header.tpl18
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/include.tpl16
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/index.tpl24
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/left_frame.tpl159
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/media/banner.css32
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/media/bg_left.pngbin0 -> 181 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/media/stylesheet.css154
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/method.tpl149
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/page.tpl211
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/pkgelementindex.tpl17
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/ric.tpl6
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/todolist.tpl14
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/top_frame.tpl45
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/tutorial.tpl13
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/tutorial_nav.tpl41
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/tutorial_toc.tpl40
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/tutorial_tree.tpl6
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/var.tpl92
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/options.ini577
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/basicindex.tpl47
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/blank.tpl13
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/class.tpl429
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/classtrees.tpl19
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/const.tpl18
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/define.tpl24
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/docblock.tpl14
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/elementindex.tpl12
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/errors.tpl21
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/examplesource.tpl6
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/filesource.tpl8
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/footer.tpl8
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/function.tpl44
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/global.tpl26
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/header.tpl12
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/include.tpl16
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/index.tpl24
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/left_frame.tpl159
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/media/banner.css32
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/media/stylesheet.css141
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/method.tpl149
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/page.tpl211
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/pkgelementindex.tpl17
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/ric.tpl6
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/todolist.tpl14
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/top_frame.tpl45
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/tutorial.tpl13
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/tutorial_nav.tpl41
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/tutorial_toc.tpl40
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/tutorial_tree.tpl6
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/var.tpl92
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/options.ini507
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/basicindex.tpl24
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/blank.tpl13
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/class.tpl95
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/classtrees.tpl19
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/const.tpl21
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/define.tpl24
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/docblock.tpl30
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/elementindex.tpl13
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/errors.tpl21
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/examplesource.tpl6
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/filesource.tpl8
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/footer.tpl8
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/function.tpl29
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/global.tpl24
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/header.tpl97
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/include.tpl16
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/index.tpl24
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/left_frame.tpl166
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Class.gifbin0 -> 1078 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Constant.gifbin0 -> 1041 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Constants.gifbin0 -> 1068 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Constructor.gifbin0 -> 1044 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Destructor.gifbin0 -> 1043 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Disk.gifbin0 -> 941 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/FolderClosed.gifbin0 -> 963 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/FolderOpened.gifbin0 -> 957 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Functions.gifbin0 -> 1064 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/GhostClass.gifbin0 -> 1071 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/I.pngbin0 -> 148 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/L.pngbin0 -> 153 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Lminus.pngbin0 -> 219 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Lplus.pngbin0 -> 224 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/PrivateDataMember.gifbin0 -> 967 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/PrivateMethod.gifbin0 -> 1062 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/PrivateProperty.gifbin0 -> 1063 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/ProtectedDataMember.gifbin0 -> 1064 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/ProtectedMethod.gifbin0 -> 1080 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/ProtectedProperty.gifbin0 -> 1068 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/PublicDataMember.gifbin0 -> 954 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/PublicMethod.gifbin0 -> 1038 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/PublicProperty.gifbin0 -> 1053 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/T.pngbin0 -> 152 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Tminus.pngbin0 -> 207 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Tplus.pngbin0 -> 222 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Types.gifbin0 -> 1049 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Variable.gifbin0 -> 1051 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Vars.gifbin0 -> 1064 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/blank.pngbin0 -> 144 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/classFolder.gifbin0 -> 1069 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/error.gifbin0 -> 122 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/file.pngbin0 -> 462 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/foldericon.pngbin0 -> 229 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/minus.gifbin0 -> 64 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/msgError.gifbin0 -> 997 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/msgFatalError.gifbin0 -> 1040 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/msgHint.gifbin0 -> 989 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/msgInformation.gifbin0 -> 963 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/msgWarning.gifbin0 -> 1043 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/openfoldericon.pngbin0 -> 232 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/plus.gifbin0 -> 67 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/spacer.gifbin0 -> 55 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/lib/classTree.js454
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/lib/tab.webfx.css86
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/lib/tabpane.js308
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/lib/ua.js111
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/stylesheet.css230
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/method.tpl126
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/page.tpl53
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/pkgelementindex.tpl17
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/ric.tpl6
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/todolist.tpl14
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/top_frame.tpl16
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/tutorial.tpl32
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/tutorial_toc.tpl29
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/tutorial_tree.tpl13
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/var.tpl49
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/options.ini577
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/basicindex.tpl47
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/blank.tpl13
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/class.tpl429
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/classtrees.tpl19
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/const.tpl18
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/define.tpl24
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/docblock.tpl14
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/elementindex.tpl12
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/errors.tpl21
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/examplesource.tpl6
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/filesource.tpl8
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/footer.tpl8
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/function.tpl44
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/global.tpl26
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/header.tpl12
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/include.tpl16
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/index.tpl24
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/left_frame.tpl159
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/media/banner.css32
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/media/stylesheet.css142
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/method.tpl149
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/page.tpl211
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/pkgelementindex.tpl17
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/ric.tpl6
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/todolist.tpl14
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/top_frame.tpl45
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/tutorial.tpl13
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/tutorial_nav.tpl41
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/tutorial_toc.tpl40
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/tutorial_tree.tpl6
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/var.tpl92
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/PDFdefaultConverter.inc981
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/ParserPDF.inc564
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/class.ezpdf.php1571
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/class.pdf.php3078
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/class.phpdocpdf.php353
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/options.ini431
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/appendix_title_page.tpl4
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/class.tpl12
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/classtree.tpl11
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/const.tpl7
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/define.tpl4
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/docblock.tpl10
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/examplesource.tpl5
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/filesource.tpl11
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/footer.tpl11
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/function.tpl4
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/global.tpl7
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/include.tpl3
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/index.tpl14
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/media/logo.jpgbin0 -> 2229 bytes
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/method.tpl4
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/newpackage_header.tpl6
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/packagepage.tpl5
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/page.tpl7
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/pagenumbering.tpl1
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/params.tpl4
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/ric.tpl7
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/ric_title_page.tpl5
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/source_loop.tpl8
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/source_title_page.tpl5
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/title_page.tpl7
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/toc.tpl15
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/todolist.tpl17
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/tutorial.tpl7
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/var.tpl7
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Courier-Bold.afm342
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Courier-BoldOblique.afm342
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Courier-Oblique.afm342
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Courier.afm342
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Helvetica-Bold.afm2827
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Helvetica-BoldOblique.afm2827
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Helvetica-Oblique.afm3051
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Helvetica.afm3051
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Symbol.afm213
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Times-Bold.afm2588
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Times-BoldItalic.afm2384
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Times-Italic.afm2667
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Times-Roman.afm2419
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/ZapfDingbats.afm225
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Courier-Bold.afm1
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Courier-BoldOblique.afm1
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Courier-Oblique.afm1
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Courier.afm1
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Helvetica-Bold.afm1
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Helvetica-BoldOblique.afm1
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Helvetica-Oblique.afm1
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Helvetica.afm1
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Symbol.afm1
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Times-Bold.afm1
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Times-BoldItalic.afm1
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Times-Italic.afm1
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Times-Roman.afm1
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_ZapfDingbats.afm1
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/XMLDocBookConverter.inc1792
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/Beautifier.php135
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/Plain.php250
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/Tokenizer.php752
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/XMLDocBookpeardoc2Converter.inc1701
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/options.ini39
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/category.tpl26
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/class.tpl29
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/class_summary.tpl53
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/constants.tpl68
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/docblock.tpl116
-rw-r--r--buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/errors.tpl21
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/globals.tpl69
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/imethods.tpl24
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/ivars.tpl26
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/method.tpl45
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/package.tpl26
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/tutorial.tpl21
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/var.tpl15
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/templates/peardoc2/templates/class_summary.tpl93
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/templates/peardoc2/templates/ivars.tpl26
-rwxr-xr-xbuildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/templates/peardoc2/templates/tutorial.tpl21
832 files changed, 80927 insertions, 0 deletions
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/CHMdefaultConverter.inc b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/CHMdefaultConverter.inc
new file mode 100755
index 00000000..b9679a27
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/CHMdefaultConverter.inc
@@ -0,0 +1,1899 @@
+<?php
+/**
+ * CHM (Compiled Help Manual) output converter for Smarty Template.
+ *
+ * phpDocumentor :: automatic documentation generator
+ *
+ * PHP versions 4 and 5
+ *
+ * Copyright (c) 2003-2006 Andrew Eddie, Greg Beaver
+ *
+ * LICENSE:
+ *
+ * This library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Lesser General
+ * Public License as published by the Free Software Foundation;
+ * either version 2.1 of the License, or (at your option) any
+ * later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ * @package Converters
+ * @subpackage CHMdefault
+ * @author Joshua Eichorn <jeichorn@phpdoc.org>
+ * @author Greg Beaver <cellog@php.net>
+ * @copyright 2000-2006 Joshua Eichorn, Gregory Beaver
+ * @license http://www.opensource.org/licenses/lgpl-license.php LGPL
+ * @version CVS: $Id: CHMdefaultConverter.inc 234145 2007-04-19 20:20:57Z ashnazg $
+ * @filesource
+ * @link http://www.phpdoc.org
+ * @link http://pear.php.net/PhpDocumentor
+ * @since 1.0rc1
+ */
+/**
+ * Generates files that MS HTML Help Worshop can use to create a MS Windows
+ * compiled help file (CHM)
+ *
+ * The free MS HTML Help compiler takes the project file (phpdoc.hhp) and reads
+ * the table of contents file specified in the project (which is always contents.hhc
+ * in phpDocumentor). When the converter reaches stable state, it will also
+ * output an index file index.hhk. The free download for MS HTML Help Workshop
+ * is available below
+ * @link http://www.microsoft.com/downloads/release.asp?releaseid=33071 MS HTML Help Workshop download
+ * @package Converters
+ * @subpackage CHMdefault
+ * @author Greg Beaver <cellog@php.net>
+ * @since 1.0rc1
+ * @version $Revision: 234145 $
+ */
+class CHMdefaultConverter extends Converter
+{
+ /**
+ * CHMdefaultConverter wants elements sorted by type as well as alphabetically
+ * @see Converter::$sort_page_contents_by_type
+ * @var boolean
+ */
+ var $sort_page_contents_by_type = true;
+ /** @var string */
+ var $outputformat = 'CHM';
+ /** @var string */
+ var $name = 'default';
+ /**
+ * indexes of elements by package that need to be generated
+ * @var array
+ */
+ var $leftindex = array('classes' => true, 'pages' => true, 'functions' => true, 'defines' => false, 'globals' => false);
+
+ /**
+ * output directory for the current procedural page being processed
+ * @var string
+ */
+ var $page_dir;
+
+ /**
+ * target directory passed on the command-line.
+ * {@link $targetDir} is malleable, always adding package/ and package/subpackage/ subdirectories onto it.
+ * @var string
+ */
+ var $base_dir;
+
+ /**
+ * output directory for the current class being processed
+ * @var string
+ */
+ var $class_dir;
+
+ /**
+ * array of converted package page names.
+ * Used to link to the package page in the left index
+ * @var array Format: array(package => 1)
+ */
+ var $package_pages = array();
+
+ /**
+ * controls formatting of parser informative output
+ *
+ * Converter prints:
+ * "Converting /path/to/file.php... Procedural Page Elements... Classes..."
+ * Since CHMdefaultConverter outputs files while converting, it needs to send a \n to start a new line. However, if there
+ * is more than one class, output is messy, with multiple \n's just between class file output. This variable prevents that
+ * and is purely cosmetic
+ * @var boolean
+ */
+ var $juststarted = false;
+
+ /**
+ * contains all of the template procedural page element loop data needed for the current template
+ * @var array
+ */
+ var $current;
+
+ /**
+ * contains all of the template class element loop data needed for the current template
+ * @var array
+ */
+ var $currentclass;
+ var $wrote = false;
+ var $ric_set = array();
+ /**
+ * Table of Contents entry for index.hhk
+ * @var array
+ */
+ var $KLinks = array();
+
+ /**
+ * sets {@link $base_dir} to $targetDir
+ * @see Converter()
+ */
+ function CHMdefaultConverter(&$allp, &$packp, &$classes, &$procpages, $po, $pp, $qm, $targetDir, $templateDir, $title)
+ {
+ Converter::Converter($allp, $packp, $classes, $procpages,$po, $pp, $qm, $targetDir, $templateDir, $title);
+ $this->base_dir = $targetDir;
+ }
+
+ /**
+ * @deprecated in favor of PHP 4.3.0+ tokenizer-based source highlighting
+ */
+ function unmangle($sourcecode)
+ {
+ $sourcecode = str_replace('<code>','<pre>',$sourcecode);
+ $sourcecode = str_replace('</code>','</pre>',$sourcecode);
+ $sourcecode = str_replace('<br />',"\n",$sourcecode);
+ $sourcecode = str_replace('&nbsp;',' ',$sourcecode);
+ $sourcecode = str_replace('&lt;','<',$sourcecode);
+ $sourcecode = str_replace('&gt;','>',$sourcecode);
+ $sourcecode = str_replace('&amp;','&',$sourcecode);
+ return $sourcecode;
+ }
+
+ /**
+ * @param string full path to the source file
+ * @param string fully highlighted source code
+ */
+ function writeSource($path, $value)
+ {
+ $templ = &$this->newSmarty();
+ $pathinfo = $this->proceduralpages->getPathInfo($path, $this);
+ $templ->assign('source',$value);
+ $templ->assign('package',$pathinfo['package']);
+ $templ->assign('subpackage',$pathinfo['subpackage']);
+ $templ->assign('name',$pathinfo['name']);
+ $templ->assign('source_loc',$pathinfo['source_loc']);
+ $templ->assign('docs',$pathinfo['docs']);
+ $templ->assign("subdir",'../');
+ $templ->register_outputfilter('CHMdefault_outputfilter');
+ $this->setTargetDir($this->getFileSourcePath($this->base_dir));
+ $this->addSourceTOC($pathinfo['name'],$this->getFileSourceName($path),$pathinfo['package'],$pathinfo['subpackage'], true);
+ phpDocumentor_out("\n");
+ $this->setSourcePaths($path);
+ $this->writefile($this->getFileSourceName($path).'.html',$templ->fetch('filesource.tpl'));
+ }
+
+ function writeExample($title, $path, $source)
+ {
+ $templ = &$this->newSmarty();
+ $templ->assign('source',$source);
+ if (empty($title))
+ {
+ $title = 'example';
+ addWarning(PDERROR_EMPTY_EXAMPLE_TITLE, $path, $title);
+ }
+ $templ->assign('title',$title);
+ $templ->assign('file',$path);
+ $templ->assign("subdir",'../');
+ $templ->register_outputfilter('CHMdefault_outputfilter');
+ $pathinfo = $this->proceduralpages->getPathInfo($path, $this);
+ $this->setTargetDir($this->base_dir . PATH_DELIMITER . '__examplesource');
+ $this->addSourceTOC($title,'exsource_'.$path,$pathinfo['package'],$pathinfo['subpackage'], false);
+ phpDocumentor_out("\n");
+ $this->writefile('exsource_'.$path.'.html',$templ->fetch('examplesource.tpl'));
+ }
+
+ function getExampleLink($path, $title)
+ {
+ return $this->returnLink('{$subdir}__examplesource' . PATH_DELIMITER . 'exsource_'.$path.'.html',$title);
+ }
+
+ function getSourceLink($path)
+ {
+ return $this->returnLink('{$subdir}__filesource/' .
+ $this->getFileSourceName($path).'.html','Source Code for this file');
+ }
+
+ /**
+ * Retrieve a Converter-specific anchor to a segment of a source code file
+ * parsed via a {@tutorial tags.filesource.pkg} tag.
+ * @param string full path to source file
+ * @param string name of anchor
+ * @param string link text, if this is a link
+ * @param boolean returns either a link or a destination based on this
+ * parameter
+ * @return string link to an anchor, or the anchor
+ */
+ function getSourceAnchor($sourcefile,$anchor,$text = '',$link = false)
+ {
+ if ($link) {
+ return $this->returnLink('{$subdir}__filesource/' .
+ $this->getFileSourceName($sourcefile) . '.html#a' . $anchor, $text);
+ } else {
+ return '<a name="a'.$anchor.'"></a>';
+ }
+ }
+
+
+ /**
+ * Return a line of highlighted source code with formatted line number
+ *
+ * If the $path is a full path, then an anchor to the line number will be
+ * added as well
+ * @param integer line number
+ * @param string highlighted source code line
+ * @param false|string full path to @filesource file this line is a part of,
+ * if this is a single line from a complete file.
+ * @return string formatted source code line with line number
+ */
+ function sourceLine($linenumber, $line, $path = false)
+ {
+ $extra = '';
+ if (strlen(str_replace("\n", '', $line)) == 0) {
+ $extra = '&nbsp;';
+ }
+ if ($path)
+ {
+ return '<li><div class="src-line">' . $this->getSourceAnchor($path, $linenumber) .
+ str_replace("\n",'',$line) . $extra .
+ "</div></li>\n";
+ } else
+ {
+ return '<li><div class="src-line">' . str_replace("\n",'',$line) .
+ "$extra</div></li>\n";
+ }
+ }
+
+ /**
+ * Used to convert the <<code>> tag in a docblock
+ * @param string
+ * @param boolean
+ * @return string
+ */
+ function ProgramExample($example, $tutorial = false, $inlinesourceparse = null/*false*/,
+ $class = null/*false*/, $linenum = null/*false*/, $filesourcepath = null/*false*/)
+ {
+ return $this->PreserveWhiteSpace(parent::ProgramExample($example, $tutorial, $inlinesourceparse, $class, $linenum, $filesourcepath));
+ }
+
+ /**
+ * @param string
+ */
+ function TutorialExample($example)
+ {
+ $trans = $this->template_options['desctranslate'];
+ $this->template_options['desctranslate'] = array();
+ $example = '<ol>' . parent::TutorialExample($example)
+ .'</ol>';
+ $this->template_options['desctranslate'] = $trans;
+ if (!isset($this->template_options['desctranslate'])) return $example;
+ if (!isset($this->template_options['desctranslate']['code'])) return $example;
+ $example = $this->template_options['desctranslate']['code'] . $example;
+ if (!isset($this->template_options['desctranslate']['/code'])) return $example;
+ return $example . $this->template_options['desctranslate']['/code'];
+ }
+
+ function getCurrentPageLink()
+ {
+ return $this->curname . '.html';
+ }
+
+ /**
+ * Uses htmlspecialchars() on the input
+ */
+ function postProcess($text)
+ {
+ if ($this->highlightingSource) {
+ return str_replace(array(' ',"\t"), array('&nbsp;', '&nbsp;&nbsp;&nbsp;'),
+ htmlspecialchars($text));
+ }
+ return htmlspecialchars($text);
+ }
+
+ /**
+ * Use the template tutorial_toc.tpl to generate a table of contents for HTML
+ * @return string table of contents formatted for use in the current output format
+ * @param array format: array(array('tagname' => section, 'link' => returnsee link, 'id' => anchor name, 'title' => from title tag),...)
+ */
+ function formatTutorialTOC($toc)
+ {
+ $template = &$this->newSmarty();
+ $template->assign('toc',$toc);
+ return $template->fetch('tutorial_toc.tpl');
+ }
+
+ function &SmartyInit(&$templ)
+ {
+ if (!isset($this->package_index))
+ foreach($this->all_packages as $key => $val)
+ {
+ if (isset($this->pkg_elements[$key]))
+ {
+ if (!isset($start)) $start = $key;
+ $this->package_index[] = array('link' => "li_$key.html", 'title' => $key);
+ }
+ }
+ $templ->assign("packageindex",$this->package_index);
+ $templ->assign("subdir",'');
+ return $templ;
+ }
+
+
+ /**
+ * Writes out the template file of {@link $class_data} and unsets the template to save memory
+ * @see registerCurrentClass()
+ * @see parent::endClass()
+ */
+ function endClass()
+ {
+ $a = '../';
+ if (!empty($this->subpackage)) $a .= '../';
+ if ($this->juststarted)
+ {
+ $this->juststarted = false;
+ phpDocumentor_out("\n");
+ flush();
+ }
+ $this->setTargetDir($this->base_dir . PATH_DELIMITER . $this->class_dir);
+ $this->class_data->assign("subdir",$a);
+ $this->class_data->register_outputfilter('CHMdefault_outputfilter');
+ $this->addTOC($this->class,$this->class,$this->package,$this->subpackage, true);
+ $this->writefile($this->class . '.html',$this->class_data->fetch('class.tpl'));
+ unset($this->class_data);
+ }
+
+ /**
+ * Writes out the template file of {@link $page_data} and unsets the template to save memory
+ * @see registerCurrent()
+ * @see parent::endPage()
+ */
+ function endPage()
+ {
+ $this->package = $this->curpage->package;
+ $this->subpackage = $this->curpage->subpackage;
+ $a = '../';
+ if (!empty($this->subpackage)) $a .= '../';
+ $this->setTargetDir($this->base_dir . PATH_DELIMITER . $this->page_dir);
+ $this->page_data->assign("package",$this->package);
+ $this->page_data->assign("subdir",$a);
+ $this->page_data->register_outputfilter('CHMdefault_outputfilter');
+ $this->addTOC($this->curpage->file,$this->page,$this->package,$this->subpackage);
+ $this->writefile($this->page . '.html',$this->page_data->fetch('page.tpl'));
+ unset($this->page_data);
+ }
+
+ /**
+ * @param string
+ * @param string
+ * @return string &lt;a href="'.$link.'">'.$text.'</a&gt;
+ */
+ function returnLink($link,$text)
+ {
+ return '<a href="'.$link.'">'.$text.'</a>';
+ }
+
+ /**
+ * CHMdefaultConverter chooses to format both package indexes and the complete index here
+ *
+ * This function formats output for the elementindex.html and pkgelementindex.html template files. It then
+ * writes them to the target directory
+ * @see generateElementIndex(), generatePkgElementIndex()
+ */
+ function formatPkgIndex()
+ {
+ list($package_indexes,$packages,$mletters) = $this->generatePkgElementIndexes();
+ for($i=0;$i<count($package_indexes);$i++)
+ {
+ $template = &$this->newSmarty();
+ $this->package = $package_indexes[$i]['package'];
+ $this->subpackage = '';
+ $template->assign("index",$package_indexes[$i]['pindex']);
+ $template->assign("package",$package_indexes[$i]['package']);
+ $template->assign("letters",$mletters[$package_indexes[$i]['package']]);
+ $template->assign("title","Package ".$package_indexes[$i]['package']." Element Index");
+ $template->assign("subdir",'../');
+ $template->register_outputfilter('CHMdefault_outputfilter');
+ $this->setTargetDir($this->base_dir . PATH_DELIMITER . $package_indexes[$i]['package']);
+ $this->addTOC($package_indexes[$i]['package']." Alphabetical Index",'elementindex_'.$package_indexes[$i]['package'],$package_indexes[$i]['package'],'');
+ $this->writefile('elementindex_'.$package_indexes[$i]['package'].'.html',$template->fetch('pkgelementindex.tpl'));
+ }
+ phpDocumentor_out("\n");
+ flush();
+ }
+
+ /**
+ * CHMdefaultConverter uses this function to format template index.html and packages.html
+ *
+ * This function generates the package list from {@link $all_packages}, eliminating any
+ * packages that don't have any entries in their package index (no files at all, due to @ignore
+ * or other factors). Then it uses the default package name as the first package index to display.
+ * It sets the right pane to be either a blank file with instructions on making package-level docs,
+ * or the package-level docs for the default package.
+ * @global string Used to set the starting package to display
+ */
+ function formatIndex()
+ {
+ global $phpDocumentor_DefaultPackageName;
+ list($elindex,$mletters) = $this->generateElementIndex();
+ $template = &$this->newSmarty();
+ $template->assign("index",$elindex);
+ $template->assign("letters",$mletters);
+ $template->assign("title","Element Index");
+ $template->assign("date",date("r",time()));
+ $template->register_outputfilter('CHMdefault_outputfilter');
+ phpDocumentor_out("\n");
+ flush();
+ $this->setTargetDir($this->base_dir);
+ $this->addTOC("Alphabetical Index Of All Elements",'elementindex',"Index",'');
+ $this->writefile('elementindex.html',$template->fetch('elementindex.tpl'));
+ usort($this->package_index,"CHMdefault_pindexcmp");
+ $index = &$this->newSmarty();
+ foreach($this->all_packages as $key => $val)
+ {
+ if (isset($this->pkg_elements[$key]))
+ {
+ if (!isset($start)) $start = $key;
+ if (!isset($this->package_pages[$key])) $this->writeNewPPage($key);
+ }
+ }
+ $this->setTargetDir($this->base_dir);
+ // Created index.html
+ if (isset($this->pkg_elements[$phpDocumentor_DefaultPackageName])) $start = $phpDocumentor_DefaultPackageName;
+ $this->package = $start;
+ $this->subpackage = '';
+ $setalready = false;
+ if (isset($this->tutorials[$start]['']['pkg']))
+ {
+ foreach($this->tutorials[$start]['']['pkg'] as $tute)
+ {
+ if ($tute->name == $start . '.pkg')
+ {
+ $setalready = true;
+ $this->addTOC("Start page",$start.'/tutorial_'.$tute->name,"Index",'');
+ }
+ }
+ }
+ if (!$setalready)
+ {
+ if (isset($this->package_pages[$start]))
+ {
+ $this->addTOC("Start page",'package_'.$start,"Index",'');
+ }
+ else
+ {
+ $index->assign("blank","blank");
+ $blank = &$this->newSmarty();
+ $blank->assign('package',$phpDocumentor_DefaultPackageName);
+ $this->addTOC("Start page",'blank',"Index",'');
+ $this->writefile("blank.html",$blank->fetch('blank.tpl'));
+ Converter::writefile('index.html',$blank->fetch('tutorial.tpl'));
+ }
+ }
+ phpDocumentor_out("\n");
+ flush();
+
+ unset($index);
+ }
+
+ function writeNewPPage($key)
+ {
+ return;
+ $template = &$this->newSmarty();
+ $this->package = $key;
+ $this->subpackage = '';
+ $template->assign("date",date("r",time()));
+ $template->assign("title",$this->title);
+ $template->assign("package",$key);
+ $template->register_outputfilter('CHMdefault_outputfilter');
+ phpDocumentor_out("\n");
+ flush();
+ $this->setTargetDir($this->base_dir);
+
+ $this->addTOC("$key Index","li_$key",$key,'');
+ $this->writefile("li_$key.html",$template->fetch('index.tpl'));
+ unset($template);
+ }
+
+ /**
+ * Generate indexes for li_package.html and classtree output files
+ *
+ * This function generates the li_package.html files from the template file left.html. It does this by
+ * iterating through each of the $page_elements, $class_elements and $function_elements arrays to retrieve
+ * the pre-sorted {@link abstractLink} descendants needed for index generation. Conversion of these links to
+ * text is done by {@link returnSee()}. The {@link $local} parameter is set to false to ensure that paths are correct.
+ *
+ * Then it uses {@link generateFormattedClassTrees()} to create class trees from the template file classtrees.html. Output
+ * filename is classtrees_packagename.html. This function also unsets {@link $elements} and {@link $pkg_elements} to free
+ * up the considerable memory these two class vars use
+ * @see $page_elements, $class_elements, $function_elements
+ */
+ function formatLeftIndex()
+ {
+ phpDocumentor_out("\n");
+ flush();
+ $this->setTargetDir($this->base_dir);
+ if (0)//!isset($this->left))
+ {
+ debug("Nothing parsed, check the command-line");
+ die();
+ }
+ foreach($this->all_packages as $package => $rest)
+ {
+ if (!isset($this->pkg_elements[$package])) continue;
+
+ // Create class tree page
+ $template = &$this->newSmarty();
+ $template->assign("classtrees",$this->generateFormattedClassTrees($package));
+ $template->assign("package",$package);
+ $template->assign("date",date("r",time()));
+ $template->register_outputfilter('CHMdefault_outputfilter');
+ $this->addTOC("$package Class Trees","classtrees_$package",$package,'');
+ $this->writefile("classtrees_$package.html",$template->fetch('classtrees.tpl'));
+ phpDocumentor_out("\n");
+ flush();
+ }
+ // free up considerable memory
+ unset($this->elements);
+ unset($this->pkg_elements);
+ }
+
+ /**
+ * This function takes an {@link abstractLink} descendant and returns an html link
+ *
+ * @param abstractLink a descendant of abstractlink should be passed, and never text
+ * @param string text to display in the link
+ * @param boolean this parameter is not used, and is deprecated
+ * @param boolean determines whether the returned text is enclosed in an <a> tag
+ */
+ function returnSee(&$element, $eltext = false, $with_a = true)
+ {
+ if (!$element) return false;
+ if (!$with_a) return $this->getId($element, false);
+ if (!$eltext)
+ {
+ $eltext = '';
+ switch($element->type)
+ {
+ case 'tutorial' :
+ $eltext = strip_tags($element->title);
+ break;
+ case 'method' :
+ case 'var' :
+ case 'const' :
+ $eltext .= $element->class.'::';
+ case 'page' :
+ case 'define' :
+ case 'class' :
+ case 'function' :
+ case 'global' :
+ default :
+ $eltext .= $element->name;
+ if ($element->type == 'function' || $element->type == 'method') $eltext .= '()';
+ break;
+ }
+ }
+ return '<a href="'.$this->getId($element).'">'.$eltext.'</a>';
+ }
+
+ function getId($element, $fullpath = true)
+ {
+ if (phpDocumentor_get_class($element) == 'parserdata')
+ {
+ $element = $this->addLink($element->parent);
+ $elp = $element->parent;
+ } elseif (is_a($element, 'parserbase'))
+ {
+ $elp = $element;
+ $element = $this->addLink($element);
+ }
+ $c = '';
+ if (!empty($element->subpackage))
+ {
+ $c = '/'.$element->subpackage;
+ }
+ $b = '{$subdir}';
+ switch ($element->type)
+ {
+ case 'page' :
+ if ($fullpath)
+ return $b.$element->package.$c.'/'.$element->fileAlias.'.html';
+ return 'top';
+ break;
+ case 'define' :
+ case 'global' :
+ case 'function' :
+ if ($fullpath)
+ return $b.$element->package.$c.'/'.$element->fileAlias.'.html#'.$element->type.$element->name;
+ return $element->type.$element->name;
+ break;
+ case 'class' :
+ if ($fullpath)
+ return $b.$element->package.$c.'/'.$element->name.'.html';
+ return 'top';
+ break;
+ case 'method' :
+ case 'var' :
+ case 'const' :
+ if ($fullpath)
+ return $b.$element->package.$c.'/'.$element->class.'.html#'.$element->type.$element->name;
+ return $element->type.$element->name;
+ break;
+ case 'tutorial' :
+ $d = '';
+ if ($element->section)
+ {
+ $d = '#'.$element->section;
+ }
+ return $b.$element->package.$c.'/tutorial_'.$element->name.'.html'.$d;
+ }
+ }
+
+ function ConvertTodoList()
+ {
+ $todolist = array();
+ foreach($this->todoList as $package => $alltodos)
+ {
+ foreach($alltodos as $todos)
+ {
+ $converted = array();
+ $converted['link'] = $this->returnSee($todos[0]);
+ if (!is_array($todos[1]))
+ {
+ $converted['todos'][] = $todos[1]->Convert($this);
+ } else
+ {
+ foreach($todos[1] as $todo)
+ {
+ $converted['todos'][] = $todo->Convert($this);
+ }
+ }
+ $todolist[$package][] = $converted;
+ }
+ }
+ $templ = &$this->newSmarty();
+ $templ->assign('todos',$todolist);
+ $templ->register_outputfilter('CHMdefault_outputfilter');
+ $this->setTargetDir($this->base_dir);
+ $this->addTOC('Todo List','todolist','Index','',false,true);
+ $this->addKLink('Todo List', 'todolist', '', 'Development');
+ $this->writefile('todolist.html',$templ->fetch('todolist.tpl'));
+ }
+
+ /**
+ * Convert README/INSTALL/CHANGELOG file contents to output format
+ * @param README|INSTALL|CHANGELOG
+ * @param string contents of the file
+ */
+ function Convert_RIC($name, $contents)
+ {
+ $template = &$this->newSmarty();
+ $template->assign('contents',$contents);
+ $template->assign('name',$name);
+ $this->setTargetDir($this->base_dir);
+ $this->addTOC($name,'ric_'.$name,'Index','',false,true);
+ $this->addKLink($name, 'ric_'.$name, '', 'Development');
+ $this->writefile('ric_'.$name . '.html',$template->fetch('ric.tpl'));
+ $this->ric_set[$name] = true;
+ }
+
+ /**
+ * Create errors.html template file output
+ *
+ * This method takes all parsing errors and warnings and spits them out ordered by file and line number.
+ * @global ErrorTracker We'll be using it's output facility
+ */
+ function ConvertErrorLog()
+ {
+ global $phpDocumentor_errors;
+ $allfiles = array();
+ $files = array();
+ $warnings = $phpDocumentor_errors->returnWarnings();
+ $errors = $phpDocumentor_errors->returnErrors();
+ $template = &$this->newSmarty();
+ foreach($warnings as $warning)
+ {
+ $file = '##none';
+ $linenum = 'Warning';
+ if ($warning->file)
+ {
+ $file = $warning->file;
+ $allfiles[$file] = 1;
+ $linenum .= ' on line '.$warning->linenum;
+ }
+ $files[$file]['warnings'][] = array('name' => $linenum, 'listing' => $warning->data);
+ }
+ foreach($errors as $error)
+ {
+ $file = '##none';
+ $linenum = 'Error';
+ if ($error->file)
+ {
+ $file = $error->file;
+ $allfiles[$file] = 1;
+ $linenum .= ' on line '.$error->linenum;
+ }
+ $files[$file]['errors'][] = array('name' => $linenum, 'listing' => $error->data);
+ }
+ $i=1;
+ $af = array();
+ foreach($allfiles as $file => $num)
+ {
+ $af[$i++] = $file;
+ }
+ $allfiles = $af;
+ usort($allfiles,'strnatcasecmp');
+ $allfiles[0] = "Post-parsing";
+ foreach($allfiles as $i => $a)
+ {
+ $allfiles[$i] = array('file' => $a);
+ }
+ $out = array();
+ foreach($files as $file => $data)
+ {
+ if ($file == '##none') $file = 'Post-parsing';
+ $out[$file] = $data;
+ }
+ $template->assign("files",$allfiles);
+ $template->assign("all",$out);
+ $template->assign("title","phpDocumentor Parser Errors and Warnings");
+ $this->setTargetDir($this->base_dir);
+ $this->writefile("errors.html",$template->fetch('errors.tpl'));
+ unset($template);
+ phpDocumentor_out("\n\nTo view errors and warnings, look at ".$this->base_dir. PATH_DELIMITER . "errors.html\n");
+ flush();
+ }
+
+ function getCData($value)
+ {
+ return '<pre>'.htmlentities($value).'</pre>';
+ }
+
+ function getTutorialId($package,$subpackage,$tutorial,$id)
+ {
+ return $id;
+ }
+
+ /**
+ * Converts package page and sets its package as used in {@link $package_pages}
+ * @param parserPackagePage
+ */
+ function convertPackagepage(&$element)
+ {
+ phpDocumentor_out("\n");
+ flush();
+ $this->package = $element->package;
+ $this->subpackage = '';
+ $contents = $element->Convert($this);
+ $this->package_pages[$element->package] = str_replace('{$subdir}','../',$contents);
+ phpDocumentor_out("\n");
+ flush();
+ $this->setTargetDir($this->base_dir . PATH_DELIMITER . $element->package);
+ $this->addTOC($element->package." Tutorial",'package_'.$element->package,$element->package,'');
+ $this->writeFile('package_'.$element->package.'.html',str_replace('{$subdir}','../',$contents));
+ $this->setTargetDir($this->base_dir);
+ Converter::writefile('index.html',str_replace('{$subdir}','',$contents));
+ $this->addKLink($element->package." Tutorial", 'package_'.$element->package, '', 'Tutorials');
+ }
+
+ /**
+ * @param parserTutorial
+ */
+ function convertTutorial(&$element)
+ {
+ phpDocumentor_out("\n");
+ flush();
+ $template = &parent::convertTutorial($element);
+ $a = '../';
+ if ($element->subpackage) $a .= '../';
+ $template->assign('subdir',$a);
+ $template->register_outputfilter('CHMdefault_outputfilter');
+ $contents = $template->fetch('tutorial.tpl');
+ if ($element->package == $GLOBALS['phpDocumentor_DefaultPackageName'] && empty($element->subpackage) && ($element->name == $element->package . '.pkg'))
+ {
+ $template->assign('subdir','');
+ $this->setTargetDir($this->base_dir);
+ Converter::writefile('index.html',$template->fetch('tutorial.tpl'));
+ }
+ $a = '';
+ if ($element->subpackage) $a = PATH_DELIMITER . $element->subpackage;
+ phpDocumentor_out("\n");
+ flush();
+ $this->setTargetDir($this->base_dir . PATH_DELIMITER . $element->package . $a);
+ $this->addTOC($a = strip_tags($element->getTitle($this)), 'tutorial_'.$element->name,
+ $element->package, $element->subpackage, false, true);
+ $this->writeFile('tutorial_'.$element->name.'.html',$contents);
+ $this->addKLink($element->getTitle($this), $element->package . $a . PATH_DELIMITER . 'tutorial_'.$element->name,
+ '', 'Tutorials');
+ }
+
+ /**
+ * Converts class for template output
+ * @see prepareDocBlock(), generateChildClassList(), generateFormattedClassTree(), getFormattedConflicts()
+ * @see getFormattedInheritedMethods(), getFormattedInheritedVars()
+ * @param parserClass
+ */
+ function convertClass(&$element)
+ {
+ parent::convertClass($element);
+ $this->class_dir = $element->docblock->package;
+ if (!empty($element->docblock->subpackage)) $this->class_dir .= PATH_DELIMITER . $element->docblock->subpackage;
+ $a = '../';
+ if ($element->docblock->subpackage != '') $a = "../$a";
+
+ $this->class_data->assign('subdir',$a);
+ $this->class_data->assign("title","Docs For Class " . $element->getName());
+ $this->class_data->assign("page",$element->getName() . '.html');
+ $this->addKLink($element->name, $this->class_dir . PATH_DELIMITER . $this->class, '', 'Classes');
+ }
+
+
+ /**
+ * Converts class variables for template output
+ * @see prepareDocBlock(), getFormattedConflicts()
+ * @param parserDefine
+ */
+ function convertVar(&$element)
+ {
+ parent::convertVar($element, array('var_dest' => $this->getId($element,false)));
+ $this->setTargetDir($this->base_dir . PATH_DELIMITER . $this->class_dir);
+ $this->addKLink($element->name, $this->class_dir . PATH_DELIMITER .$this->class, $this->getId($element,false), $element->class.' Properties');
+ }
+
+ /**
+ * Converts class constants for template output
+ * @see prepareDocBlock(), getFormattedConflicts()
+ * @param parserDefine
+ */
+ function convertConst(&$element)
+ {
+ parent::convertConst($element, array('const_dest' => $this->getId($element,false)));
+ $this->setTargetDir($this->base_dir . PATH_DELIMITER . $this->class_dir);
+ $this->addKLink($element->name, $this->class_dir . PATH_DELIMITER .$this->class, $this->getId($element,false), $element->class.' Constants');
+ }
+
+ /**
+ * Converts class methods for template output
+ * @see prepareDocBlock(), getFormattedConflicts()
+ * @param parserDefine
+ */
+ function convertMethod(&$element)
+ {
+ parent::convertMethod($element, array('method_dest' => $this->getId($element,false)));
+ $this->setTargetDir($this->base_dir . PATH_DELIMITER . $this->class_dir);
+ $this->addKLink($element->name, $this->class_dir . PATH_DELIMITER .$this->class, $this->getId($element,false), $element->class.' Methods');
+ }
+
+ /**
+ * Converts function for template output
+ * @see prepareDocBlock(), parserFunction::getFunctionCall(), getFormattedConflicts()
+ * @param parserFunction
+ */
+ function convertFunction(&$element)
+ {
+ $funcloc = $this->getId($this->addLink($element));
+ parent::convertFunction($element,array('function_dest' => $this->getId($element,false)));
+ $this->setTargetDir($this->base_dir . PATH_DELIMITER . $this->page_dir);
+ $this->addKLink($element->name, $this->page_dir . PATH_DELIMITER . $this->page, $this->getId($element,false), 'Functions');
+ }
+
+ /**
+ * Converts include elements for template output
+ * @see prepareDocBlock()
+ * @param parserInclude
+ */
+ function convertInclude(&$element)
+ {
+ parent::convertInclude($element, array('include_file' => '_'.strtr($element->getValue(),array('"' => '', "'" => '','.' => '_'))));
+ $this->setTargetDir($this->base_dir . PATH_DELIMITER . $this->page_dir);
+ $this->addKLink(str_replace('"', '', $element->getValue()), $this->page_dir . PATH_DELIMITER . $this->page, '', ucfirst($element->name));
+ }
+
+ /**
+ * Converts defines for template output
+ * @see prepareDocBlock(), getFormattedConflicts()
+ * @param parserDefine
+ */
+ function convertDefine(&$element)
+ {
+ parent::convertDefine($element, array('define_link' => $this->getId($element,false)));
+ $this->setTargetDir($this->base_dir . PATH_DELIMITER . $this->page_dir);
+ $this->addKLink($element->name, $this->page_dir . PATH_DELIMITER . $this->page, $this->getId($element,false), 'Constants');
+ }
+
+ /**
+ * Converts global variables for template output
+ * @param parserGlobal
+ */
+ function convertGlobal(&$element)
+ {
+ parent::convertGlobal($element, array('global_link' => $this->getId($element,false)));
+ $this->setTargetDir($this->base_dir . PATH_DELIMITER . $this->page_dir);
+ $this->addKLink($element->name, $this->page_dir . PATH_DELIMITER . $this->page, $this->getId($element,false), 'Global Variables');
+ }
+
+ /**
+ * converts procedural pages for template output
+ * @see prepareDocBlock(), getClassesOnPage()
+ * @param parserData
+ */
+ function convertPage(&$element)
+ {
+ parent::convertPage($element);
+ $this->juststarted = true;
+ $this->page_dir = $element->parent->package;
+ if (!empty($element->parent->subpackage)) $this->page_dir .= PATH_DELIMITER . $element->parent->subpackage;
+ // registering stuff on the template
+ $this->page_data->assign("page",$this->getPageName($element) . '.html');
+ $this->page_data->assign("title","Docs for page ".$element->parent->getFile());
+ $this->setTargetDir($this->base_dir . PATH_DELIMITER . $this->page_dir);
+ $this->addKLink($element->parent->file, $this->page_dir . PATH_DELIMITER . $this->page, '', 'Files');
+ }
+
+ function getPageName(&$element)
+ {
+ if (phpDocumentor_get_class($element) == 'parserpage') return '_'.$element->getName();
+ return '_'.$element->parent->getName();
+ }
+
+ /**
+ * returns an array containing the class inheritance tree from the root object to the class
+ *
+ * @param parserClass class variable
+ * @return array Format: array(root,child,child,child,...,$class)
+ * @uses parserClass::getParentClassTree()
+ */
+
+ function generateFormattedClassTree($class)
+ {
+ $tree = $class->getParentClassTree($this);
+ $out = '';
+ if (count($tree) - 1)
+ {
+ $result = array($class->getName());
+ $parent = $tree[$class->getName()];
+ $distance[] = '';
+ while ($parent)
+ {
+ $x = $parent;
+ if (is_object($parent))
+ {
+ $subpackage = $parent->docblock->subpackage;
+ $package = $parent->docblock->package;
+ $x = $parent;
+ $x = $parent->getLink($this);
+ if (!$x) $x = $parent->getName();
+ }
+ $result[] =
+ $x;
+ $distance[] =
+ "\n%s|\n" .
+ "%s--";
+ if (is_object($parent))
+ $parent = $tree[$parent->getName()];
+ elseif (isset($tree[$parent]))
+ $parent = $tree[$parent];
+ }
+ $nbsp = ' ';
+ for($i=count($result) - 1;$i>=0;$i--)
+ {
+ $my_nbsp = '';
+ for($j=0;$j<count($result) - $i;$j++) $my_nbsp .= $nbsp;
+ $distance[$i] = sprintf($distance[$i],$my_nbsp,$my_nbsp);
+ }
+ return array('classes'=>array_reverse($result),'distance'=>array_reverse($distance));
+ } else
+ {
+ return array('classes'=>$class->getName(),'distance'=>array(''));
+ }
+ }
+
+ /** @access private */
+ function sortVar($a, $b)
+ {
+ return strnatcasecmp($a->getName(),$b->getName());
+ }
+
+ /** @access private */
+ function sortMethod($a, $b)
+ {
+ if ($a->isConstructor) return -1;
+ if ($b->isConstructor) return 1;
+ return strnatcasecmp($a->getName(),$b->getName());
+ }
+
+ /**
+ * returns a template-enabled array of class trees
+ *
+ * @param string $package package to generate a class tree for
+ * @see $roots, HTMLConverter::getRootTree()
+ */
+ function generateFormattedClassTrees($package)
+ {
+ if (!isset($this->roots['normal'][$package]) &&
+ !isset($this->roots['special'][$package])) {
+ return array();
+ }
+ $trees = array();
+ if (isset($this->roots['normal'][$package])) {
+ $roots = $this->roots['normal'][$package];
+ for($i=0;$i<count($roots);$i++)
+ {
+ $root = $this->classes->getClassByPackage($roots[$i], $package);
+ if ($root && $root->isInterface()) {
+ continue;
+ }
+ $trees[] = array('class' => $roots[$i],'class_tree' => "<ul>\n".$this->getRootTree($this->getSortedClassTreeFromClass($roots[$i],$package,''),$package)."</ul>\n");
+ }
+ }
+ if (isset($this->roots['special'][$package])) {
+ $roots = $this->roots['special'][$package];
+ foreach ($roots as $parent => $classes) {
+ $thistree = '';
+ foreach ($classes as $classinfo) {
+ $root = $this->classes->getClassByPackage($classinfo, $package);
+ if ($root && $root->isInterface()) {
+ continue;
+ }
+ $thistree .=
+ $this->getRootTree(
+ $this->getSortedClassTreeFromClass(
+ $classinfo,
+ $package,
+ ''),
+ $package,
+ true);
+ }
+ if (!$thistree) {
+ continue;
+ }
+ $trees[] = array(
+ 'class' => $parent,
+ 'class_tree' => "<ul>\n" . $thistree . "</ul>\n"
+ );
+ }
+ }
+ return $trees;
+ }
+
+ /**
+ * returns a template-enabled array of interface inheritance trees
+ *
+ * @param string $package package to generate a class tree for
+ * @see $roots, HTMLConverter::getRootTree()
+ */
+ function generateFormattedInterfaceTrees($package)
+ {
+ if (!isset($this->roots['normal'][$package]) &&
+ !isset($this->roots['special'][$package])) {
+ return array();
+ }
+ $trees = array();
+ if (isset($this->roots['normal'][$package])) {
+ $roots = $this->roots['normal'][$package];
+ for($i=0;$i<count($roots);$i++)
+ {
+ $root = $this->classes->getClassByPackage($roots[$i], $package);
+ if ($root && !$root->isInterface()) {
+ continue;
+ }
+ $trees[] = array('class' => $roots[$i],'class_tree' => "<ul>\n".$this->getRootTree($this->getSortedClassTreeFromClass($roots[$i],$package,''),$package)."</ul>\n");
+ }
+ }
+ if (isset($this->roots['special'][$package])) {
+ $roots = $this->roots['special'][$package];
+ foreach ($roots as $parent => $classes) {
+ $thistree = '';
+ foreach ($classes as $classinfo) {
+ $root = $this->classes->getClassByPackage($classinfo, $package);
+ if ($root && !$root->isInterface()) {
+ continue;
+ }
+ $thistree .=
+ $this->getRootTree(
+ $this->getSortedClassTreeFromClass(
+ $classinfo,
+ $package,
+ ''),
+ $package,
+ true);
+ }
+ if (!$thistree) {
+ continue;
+ }
+ $trees[] = array(
+ 'class' => $parent,
+ 'class_tree' => "<ul>\n" . $thistree . "</ul>\n"
+ );
+ }
+ }
+ return $trees;
+ }
+
+ /**
+ * return formatted class tree for the Class Trees page
+ *
+ * @param array $tree output from {@link getSortedClassTreeFromClass()}
+ * @param string $package package
+ * @param boolean $nounknownparent if true, an object's parent will not be checked
+ * @see Classes::$definitechild, generateFormattedClassTrees()
+ * @return string
+ */
+ function getRootTree($tree, $package, $noparent = false)
+ {
+ if (!$tree) return '';
+ $my_tree = '';
+ $cur = '#root';
+ $lastcur = array(false);
+ $kids = array();
+ $dopar = false;
+ if (!$noparent && $tree[$cur]['parent'])
+ {
+ $dopar = true;
+ if (!is_object($tree[$cur]['parent']))
+ {
+// debug("parent ".$tree[$cur]['parent']." not found");
+ $my_tree .= '<li>' . $tree[$cur]['parent'] .'<ul>';
+ }
+ else
+ {
+// debug("parent ".$this->returnSee($tree[$cur]['parent'])." in other package");
+ $my_tree .= '<li>' . $this->returnSee($tree[$cur]['parent']);
+ if ($tree[$cur]['parent']->package != $package) $my_tree .= ' <b>(Different package)</b><ul>';
+ }
+ }
+ do
+ {
+// fancy_debug($cur,$lastcur,$kids);
+ if (count($tree[$cur]['children']))
+ {
+// debug("$cur has children");
+ if (!isset($kids[$cur]))
+ {
+// debug("set $cur kids");
+ $kids[$cur] = 1;
+ $my_tree .= '<li>'.$this->returnSee($tree[$cur]['link']);
+ $my_tree .= '<ul>'."\n";
+ }
+ array_push($lastcur,$cur);
+ list(,$cur) = each($tree[$cur]['children']);
+// var_dump('listed',$cur);
+ if ($cur)
+ {
+ $cur = $cur['package'] . '#' . $cur['class'];
+// debug("set cur to child $cur");
+// $my_tree .= '<li>'.$this->returnSee($tree[$cur]['link']);
+ continue;
+ } else
+ {
+// debug("end of children for $cur");
+ $cur = array_pop($lastcur);
+ $cur = array_pop($lastcur);
+ $my_tree .= '</ul></li>'."\n";
+ if ($dopar && ($cur == '#root' || !$cur)) $my_tree .= '</ul></li>';
+ }
+ } else
+ {
+// debug("$cur has no children");
+ $my_tree .= '<li>'.$this->returnSee($tree[$cur]['link'])."</li>";
+ if ($dopar && $cur == '#root') $my_tree .= '</ul></li>';
+ $cur = array_pop($lastcur);
+ }
+ } while ($cur);
+ return $my_tree;
+ }
+ /**
+ * Generate indexing information for given element
+ *
+ * @param parserElement descendant of parserElement
+ * @see generateElementIndex()
+ * @return array
+ */
+ function getIndexInformation($elt)
+ {
+ $Result['type'] = $elt->type;
+ $Result['file_name'] = $elt->file;
+ $Result['path'] = $elt->getPath();
+
+ if (isset($elt->docblock))
+ {
+ $Result['description'] = $elt->docblock->getSDesc($this);
+
+ if ($elt->docblock->hasaccess)
+ $Result['access'] = $elt->docblock->tags['access'][0]->value;
+ else
+ $Result['access'] = 'public';
+
+ $Result['abstract'] = isset ($elt->docblock->tags['abstract'][0]);
+ }
+ else
+ $Result['description'] = '';
+
+ $aa = $Result['description'];
+ if (!empty($aa)) $aa = "<br>&nbsp;&nbsp;&nbsp;&nbsp;$aa";
+
+ switch($elt->type)
+ {
+ case 'class':
+ $Result['name'] = $elt->getName();
+ $Result['title'] = 'Class';
+ $Result['link'] = $this->getClassLink($elt->getName(),
+ $elt->docblock->package,
+ $elt->getPath(),
+ $elt->getName());
+ $Result['listing'] = 'in file '.$elt->file.', class '.$Result['link']."$aa";
+ break;
+ case 'define':
+ $Result['name'] = $elt->getName();
+ $Result['title'] = 'Constant';
+ $Result['link'] = $this->getDefineLink($elt->getName(),
+ $elt->docblock->package,
+ $elt->getPath(),
+ $elt->getName());
+ $Result['listing'] = 'in file '.$elt->file.', constant '.$Result['link']."$aa";
+ break;
+ case 'global':
+ $Result['name'] = $elt->getName();
+ $Result['title'] = 'Global';
+ $Result['link'] = $this->getGlobalLink($elt->getName(),
+ $elt->docblock->package,
+ $elt->getPath(),
+ $elt->getName());
+ $Result['listing'] = 'in file '.$elt->file.', global variable '.$Result['link']."$aa";
+ break;
+ case 'function':
+ $Result['name'] = $elt->getName();
+ $Result['title'] = 'Function';
+ $Result['link'] = $this->getFunctionLink($elt->getName(),
+ $elt->docblock->package,
+ $elt->getPath(),
+ $elt->getName().'()');
+ $Result['listing'] = 'in file '.$elt->file.', function '.$Result['link']."$aa";
+ break;
+ case 'method':
+ $Result['name'] = $elt->getName();
+ $Result['title'] = 'Method';
+ $Result['link'] = $this->getMethodLink($elt->getName(),
+ $elt->class,
+ $elt->docblock->package,
+ $elt->getPath(),
+ $elt->class.'::'.$elt->getName().'()'
+ );
+ if ($elt->isConstructor) $Result['constructor'] = 1;
+ $Result['listing'] = 'in file '.$elt->file.', method '.$Result['link']."$aa";
+ break;
+ case 'var':
+ $Result['name'] = $elt->getName();
+ $Result['title'] = 'Variable';
+ $Result['link'] = $this->getVarLink($elt->getName(),
+ $elt->class,
+ $elt->docblock->package,
+ $elt->getPath(),
+ $elt->class.'::'.$elt->getName());
+ $Result['listing'] = 'in file '.$elt->file.', variable '.$Result['link']."$aa";
+ break;
+ case 'const':
+ $Result['name'] = $elt->getName();
+ $Result['title'] = 'Variable';
+ $Result['link'] = $this->getConstLink($elt->getName(),
+ $elt->class,
+ $elt->docblock->package,
+ $elt->getPath(),
+ $elt->class.'::'.$elt->getName());
+ $Result['listing'] = 'in file '.$elt->file.', class constant '.$Result['link']."$aa";
+ break;
+ case 'page':
+ $Result['name'] = $elt->getFile();
+ $Result['title'] = 'Page';
+ $Result['link'] = $this->getPageLink($elt->getFile(),
+ $elt->package,
+ $elt->getPath(),
+ $elt->getFile());
+ $Result['listing'] = 'procedural page '.$Result['link'];
+ break;
+ case 'include':
+ $Result['name'] = $elt->getName();
+ $Result['title'] = 'Include';
+ $Result['link'] = $elt->getValue();
+ $Result['listing'] = 'include '.$Result['name'];
+ break;
+ }
+
+ return $Result;
+ }
+ /**
+ * Generate alphabetical index of all elements
+ *
+ * @see $elements, walk()
+ */
+ function generateElementIndex()
+ {
+ $elementindex = array();
+ $letters = array();
+ $used = array();
+ foreach($this->elements as $letter => $nutoh)
+ {
+ foreach($this->elements[$letter] as $i => $yuh)
+ {
+ if ($this->elements[$letter][$i]->type != 'include')
+ {
+ if (!isset($used[$letter]))
+ {
+ $letters[]['letter'] = $letter;
+ $elindex['letter'] = $letter;
+ $used[$letter] = 1;
+ }
+
+ $elindex['index'][] = $this->getIndexInformation($this->elements[$letter][$i]);
+ }
+ }
+ if (isset($elindex['index']))
+ {
+ $elementindex[] = $elindex;
+ } else
+ {
+ unset($letters[count($letters) - 1]);
+ }
+ $elindex = array();
+ }
+ return array($elementindex,$letters);
+ }
+
+ function setTemplateDir($dir)
+ {
+ Converter::setTemplateDir($dir);
+ $this->smarty_dir = $this->templateDir;
+ }
+
+ function copyMediaRecursively($media,$targetdir,$subdir = '')
+ {
+ $versionControlDirectories = array ('CVS', 'media/CVS', 'media\\CVS', '.svn', 'media/.svn', 'media\\.svn');
+ if (!is_array($media)) {
+ return;
+ }
+ foreach($media as $dir => $files)
+ {
+ if ($dir === '/')
+ {
+ $this->copyMediaRecursively($files,$targetdir);
+ } else
+ {
+ if (!is_numeric($dir))
+ {
+ if (in_array($dir, $versionControlDirectories))
+ {
+ // skip it entirely
+ }
+ else
+ {
+ // create the subdir
+ phpDocumentor_out("creating $targetdir" . PATH_DELIMITER . "$dir\n");
+ Converter::setTargetDir($targetdir . PATH_DELIMITER . $dir);
+ if (!empty($subdir))
+ {
+ $subdir .= PATH_DELIMITER;
+ }
+ $this->copyMediaRecursively($files,"$targetdir/$dir",$subdir . $dir);
+ }
+ }
+ else
+ {
+ // copy the file
+ phpDocumentor_out("copying $targetdir" . PATH_DELIMITER . $files['file']."\n");
+ $this->copyFile($files['file'],$subdir);
+ }
+ }
+ }
+ }
+
+ /**
+ * calls the converter setTargetDir, and then copies any template images and the stylesheet if they haven't been copied
+ * @see Converter::setTargetDir()
+ */
+ function setTargetDir($dir)
+ {
+ Converter::setTargetDir($dir);
+ if ($this->wrote) return;
+ $this->wrote = true;
+ $template_images = array();
+ $stylesheets = array();
+ $tdir = $dir;
+ $dir = $this->templateDir;
+ $this->templateDir = $this->templateDir.'templates/';
+ $info = new Io;
+ $this->copyMediaRecursively($info->getDirTree($this->templateDir.'media',$this->templateDir),$tdir);
+ }
+
+ /**
+ * Generate alphabetical index of all elements by package and subpackage
+ *
+ * @param string $package name of a package
+ * @see $pkg_elements, walk(), generatePkgElementIndexes()
+ */
+ function generatePkgElementIndex($package)
+ {
+// var_dump($this->pkg_elements[$package]);
+ $elementindex = array();
+ $letters = array();
+ $letterind = array();
+ $used = array();
+ $subp = '';
+ foreach($this->pkg_elements[$package] as $subpackage => $els)
+ {
+ if (empty($els)) continue;
+ if (!empty($subpackage)) $subp = " (<b>subpackage:</b> $subpackage)"; else $subp = '';
+ foreach($els as $letter => $yuh)
+ {
+ foreach($els[$letter] as $i => $yuh)
+ {
+ if ($els[$letter][$i]->type != 'include')
+ {
+ if (!isset($used[$letter]))
+ {
+ $letters[]['letter'] = $letter;
+ $letterind[$letter] = count($letters) - 1;
+ $used[$letter] = 1;
+ }
+ $elindex[$letter]['letter'] = $letter;
+
+ $elindex[$letter]['index'][] = $this->getIndexInformation($els[$letter][$i]);
+ }
+ }
+ }
+ }
+ ksort($elindex);
+ usort($letters,'CHMdefault_lettersort');
+ if (isset($elindex))
+ {
+ while(list($letter,$tempel) = each($elindex))
+ {
+ if (!isset($tempel))
+ {
+ unset($letters[$letterind[$tempel['letter']]]);
+ } else
+ $elementindex[] = $tempel;
+ }
+ } else $letters = array();
+ return array($elementindex,$letters);
+ }
+
+ /**
+ *
+ * @see generatePkgElementIndex()
+ */
+ function generatePkgElementIndexes()
+ {
+ $packages = array();
+ $package_names = array();
+ $pkg = array();
+ $letters = array();
+ foreach($this->pkg_elements as $package => $trash)
+ {
+ $pkgs['package'] = $package;
+ $pkg['package'] = $package;
+ list($pkg['pindex'],$letters[$package]) = $this->generatePkgElementIndex($package);
+ if (count($pkg['pindex']))
+ {
+ $packages[] = $pkg;
+ $package_names[] = $pkgs;
+ }
+ unset($pkgs);
+ unset($pkg);
+ }
+ foreach($packages as $i => $package)
+ {
+ $pnames = array();
+ for($j=0;$j<count($package_names);$j++)
+ {
+ if ($package_names[$j]['package'] != $package['package']) $pnames[] = $package_names[$j];
+ }
+ $packages[$i]['packageindexes'] = $pnames;
+ }
+ return array($packages,$package_names,$letters);
+ }
+
+ /**
+ * @param string name of class
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @param boolean return just the URL, or enclose it in an html a tag
+ * @return mixed false if not found, or an html a link to the class's documentation
+ * @see parent::getClassLink()
+ */
+ function getClassLink($expr,$package, $file = false,$text = false, $with_a = true)
+ {
+ $a = Converter::getClassLink($expr,$package,$file);
+ if (!$a) return false;
+ return $this->returnSee($a, $text, $with_a);
+ }
+
+ /**
+ * @param string name of function
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @param boolean return just the URL, or enclose it in an html a tag
+ * @return mixed false if not found, or an html a link to the function's documentation
+ * @see parent::getFunctionLink()
+ */
+ function getFunctionLink($expr,$package, $file = false,$text = false)
+ {
+ $a = Converter::getFunctionLink($expr,$package,$file);
+ if (!$a) return false;
+ return $this->returnSee($a, $text);
+ }
+
+ /**
+ * @param string name of define
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @param boolean return just the URL, or enclose it in an html a tag
+ * @return mixed false if not found, or an html a link to the define's documentation
+ * @see parent::getDefineLink()
+ */
+ function getDefineLink($expr,$package, $file = false,$text = false)
+ {
+ $a = Converter::getDefineLink($expr,$package,$file);
+ if (!$a) return false;
+ return $this->returnSee($a, $text);
+ }
+
+ /**
+ * @param string name of global variable
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @param boolean return just the URL, or enclose it in an html a tag
+ * @return mixed false if not found, or an html a link to the global variable's documentation
+ * @see parent::getGlobalLink()
+ */
+ function getGlobalLink($expr,$package, $file = false,$text = false)
+ {
+ $a = Converter::getGlobalLink($expr,$package,$file);
+ if (!$a) return false;
+ return $this->returnSee($a, $text);
+ }
+
+ /**
+ * @param string name of procedural page
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @param boolean return just the URL, or enclose it in an html a tag
+ * @return mixed false if not found, or an html a link to the procedural page's documentation
+ * @see parent::getPageLink()
+ */
+ function getPageLink($expr,$package, $path = false,$text = false)
+ {
+ $a = Converter::getPageLink($expr,$package,$path);
+ if (!$a) return false;
+ return $this->returnSee($a, $text);
+ }
+
+ /**
+ * @param string name of method
+ * @param string class containing method
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @param boolean return just the URL, or enclose it in an html a tag
+ * @return mixed false if not found, or an html a link to the method's documentation
+ * @see parent::getMethodLink()
+ */
+ function getMethodLink($expr,$class,$package, $file = false,$text = false)
+ {
+ $a = Converter::getMethodLink($expr,$class,$package,$file);
+ if (!$a) return false;
+ return $this->returnSee($a, $text);
+ }
+
+ /**
+ * @param string name of var
+ * @param string class containing var
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @param boolean return just the URL, or enclose it in an html a tag
+ * @return mixed false if not found, or an html a link to the var's documentation
+ * @see parent::getVarLink()
+ */
+ function getVarLink($expr,$class,$package, $file = false,$text = false)
+ {
+ $a = Converter::getVarLink($expr,$class,$package,$file);
+ if (!$a) return false;
+ return $this->returnSee($a, $text);
+ }
+
+ /**
+ * @param string name of class constant
+ * @param string class containing class constant
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @param boolean return just the URL, or enclose it in an html a tag
+ * @return mixed false if not found, or an html a link to the var's documentation
+ * @see parent::getVarLink()
+ */
+ function getConstLink($expr,$class,$package, $file = false,$text = false)
+ {
+ $a = Converter::getConstLink($expr,$class,$package,$file);
+ if (!$a) return false;
+ return $this->returnSee($a, $text);
+ }
+
+ /**
+ * does a nat case sort on the specified second level value of the array
+ *
+ * @param mixed $a
+ * @param mixed $b
+ * @return int
+ */
+ function rcNatCmp ($a, $b)
+ {
+ $aa = strtoupper($a[$this->rcnatcmpkey]);
+ $bb = strtoupper($b[$this->rcnatcmpkey]);
+
+ return strnatcasecmp($aa, $bb);
+ }
+
+ /**
+ * does a nat case sort on the specified second level value of the array.
+ * this one puts constructors first
+ *
+ * @param mixed $a
+ * @param mixed $b
+ * @return int
+ */
+ function rcNatCmp1 ($a, $b)
+ {
+ $aa = strtoupper($a[$this->rcnatcmpkey]);
+ $bb = strtoupper($b[$this->rcnatcmpkey]);
+
+ if (strpos($aa,'CONSTRUCTOR') === 0)
+ {
+ return -1;
+ }
+ if (strpos($bb,'CONSTRUCTOR') === 0)
+ {
+ return 1;
+ }
+ if (strpos($aa,strtoupper($this->class)) === 0)
+ {
+ return -1;
+ }
+ if (strpos($bb,strtoupper($this->class)) === 0)
+ {
+ return -1;
+ }
+ return strnatcasecmp($aa, $bb);
+ }
+
+ /**
+ * Write a file to disk, and add it to the {@link $hhp_files} list of files
+ * to include in the generated CHM
+ *
+ * {@source}
+ */
+ function writefile($file,$contents)
+ {
+ $this->addHHP($this->targetDir . PATH_DELIMITER . $file);
+ Converter::writefile($file,$contents);
+ }
+
+ /**
+ * @uses $hhp_files creates the array by adding parameter $file
+ */
+ function addHHP($file)
+ {
+ $file = str_replace($this->base_dir . PATH_DELIMITER, '', $file);
+ $file = str_replace('\\',PATH_DELIMITER,$file);
+ $file = str_replace('//',PATH_DELIMITER,$file);
+ $file = str_replace(PATH_DELIMITER,'\\',$file);
+ $this->hhp_files[]['name'] = $file;
+ }
+
+ function generateTOC()
+ {
+ $comppack = '';
+ $templ = &$this->newSmarty();
+ foreach($this->TOC as $package => $TOC1)
+ {
+ $comp_subs = '';
+ $comp_subs1 = false;
+ foreach($TOC1 as $subpackage => $types)
+ {
+ $comp_types = '';
+ foreach($types as $type => $files)
+ {
+ $comp = '';
+ $templ1 = &$this->newSmarty();
+ $templ1->assign('entry', array());
+ foreach($files as $file)
+ {
+ // use book icon for classes
+ if ($type == 'Classes') {
+ $templ1->append('entry', array('paramname' => $file[0],'outputfile' => $file[1],'isclass' => 1));
+ } else {
+ $templ1->append('entry', array('paramname' => $file[0],'outputfile' => $file[1]));
+ }
+ }
+ $templ = &$this->newSmarty();
+ $templ->assign('tocsubentries',$templ1->fetch('tocentry.tpl'));
+ $templ->assign('entry', array(array('paramname' => $type)));
+ $comp_types .= $templ->fetch('tocentry.tpl');
+ }
+ if (!empty($subpackage))
+ {
+ $templ = &$this->newSmarty();
+ $templ->assign('tocsubentries',$comp_types);
+ $templ->assign('entry', array(array('paramname' => $subpackage)));
+ $comp_subs .= $templ->fetch('tocentry.tpl');
+ } else
+ {
+ $comp_subs1 = $comp_types;
+ }
+ }
+ if ($comp_subs1)
+ $templ->assign('tocsubentries',$comp_subs1);
+ if (!empty($comp_subs))
+ $templ->assign('entry', array(array('paramname' => $package, 'tocsubentries' => $comp_subs)));
+ else
+ $templ->assign('entry', array(array('paramname' => $package)));
+ $comppack .= $templ->fetch('tocentry.tpl');
+ }
+ return $comppack;
+ }
+
+ function addSourceTOC($name, $file, $package, $subpackage, $source = false)
+ {
+ $file = str_replace($this->base_dir . PATH_DELIMITER, '', $this->targetDir)
+ . PATH_DELIMITER . $file . '.html';
+ $file = str_replace('\\',PATH_DELIMITER,$file);
+ $file = str_replace('//',PATH_DELIMITER,$file);
+ $file = str_replace(PATH_DELIMITER,'\\',$file);
+ $sub = $source ? 'Source Code' : 'Examples';
+ $this->TOC[$package][$subpackage][$sub][] = array($name, $file);
+ }
+
+ function addTOC($name,$file,$package,$subpackage,$class = false,$tutorial = false)
+ {
+ $file = str_replace($this->base_dir . PATH_DELIMITER, '', $this->targetDir . PATH_DELIMITER)
+ . $file . '.html';
+ $file = str_replace('\\',PATH_DELIMITER,$file);
+ $file = str_replace('//',PATH_DELIMITER,$file);
+ $file = str_replace(PATH_DELIMITER,'\\',$file);
+ $file = str_replace($this->base_dir . '\\', '', $file);
+ $sub = $class ? 'Classes' : 'Files';
+ if ($tutorial) $sub = 'Manual';
+ $this->TOC[$package][$subpackage][$sub][] = array($name,$file);
+ }
+
+ /**
+ * Add an item to the index.hhk file
+ * @param string $name index entry name
+ * @param string $file filename containing index
+ * @param string $bookmark html anchor of location in file, if any
+ * @param string $group group this entry with a string
+ * @uses $KLinks tracks the index
+ * @author Andrew Eddie <eddieajau@users.sourceforge.net>
+ */
+ function addKLink($name, $file, $bookmark='', $group='')
+ {
+ $file = $file . '.html';
+ $file = str_replace('\\',PATH_DELIMITER,$file);
+ $file = str_replace('//',PATH_DELIMITER,$file);
+ $file = str_replace(PATH_DELIMITER,'\\',$file);
+// debug("added $name, $file, $bookmark, $group ");
+ $link = $file;
+ $link .= $bookmark ? "#$bookmark" :'';
+ if ($group) {
+ $this->KLinks[$group]['grouplink'] = $file;
+ $this->KLinks[$group][] = array($name,$link);
+ }
+ $this->KLinks[] = array($name,$link);
+ }
+
+ /**
+ * Get the table of contents for index.hhk
+ * @return string contents of tocentry.tpl generated from $KLinks
+ * @author Andrew Eddie <eddieajau@users.sourceforge.net>
+ */
+ function generateKLinks()
+ {
+ $templ = &$this->newSmarty();
+ $templ->assign('entry', array());
+ foreach($this->KLinks as $group=>$link)
+ {
+ if (isset($link['grouplink'])) {
+ $templg = &$this->newSmarty();
+ $templg->assign('entry', array());
+ foreach($link as $k=>$sublink)
+ {
+ if ($k != 'grouplink') {
+ $templg->append('entry', array('paramname' => $sublink[0],'outputfile' => $sublink[1]));
+ }
+ }
+ $templ->append('entry', array('paramname' => $group, 'outputfile' => $link['grouplink'], 'tocsubentries' => $templg->fetch('tocentry.tpl') ));
+ } else {
+ $templ->append('entry', array('paramname' => $link[0],'outputfile' => $link[1]));
+ }
+ }
+ return $templ->fetch('tocentry.tpl');
+ }
+
+ /**
+ * Create the phpdoc.hhp, contents.hhc files needed by MS HTML Help Compiler
+ * to create a CHM file
+ *
+ * The output function generates the table of contents (contents.hhc)
+ * and file list (phpdoc.hhp) files used to create a .CHM by the
+ * free MS HTML Help compiler.
+ * {@internal
+ * Using {@link $hhp_files}, a list of all separate .html files
+ * is created in CHM format, and written to phpdoc.hhp. This list was
+ * generated by {@link writefile}.
+ *
+ * Next, a call to the table of contents:
+ *
+ * {@source 12 2}
+ *
+ * finishes things off}}
+ * @todo use to directly call html help compiler hhc.exe
+ * @link http://www.microsoft.com/downloads/release.asp?releaseid=33071
+ * @uses generateTOC() assigns to the toc template variable
+ */
+ function Output()
+ {
+ $templ = &$this->newSmarty();
+ $templ->assign('files',$this->hhp_files);
+ $this->setTargetDir($this->base_dir);
+ Converter::writefile('phpdoc.hhp',$templ->fetch('hhp.tpl'));
+ $templ = &$this->newSmarty();
+ $templ->assign('toc',$this->generateTOC());
+ Converter::writefile('contents.hhc',$templ->fetch('contents.hhc.tpl'));
+ $templ->assign('klinks',$this->generateKLinks());
+ Converter::writefile('index.hhk',$templ->fetch('index.hhk.tpl'));
+ phpDocumentor_out("NOTE: to create the documentation.chm file, you must now run Microsoft Help Workshop on phpdoc.hhp\n");
+ phpDocumentor_out("To get the free Microsoft Help Workshop, browse to: http://go.microsoft.com/fwlink/?LinkId=14188\n");
+ flush();
+ }
+}
+
+/**
+ * @access private
+ * @global string name of the package to set as the first package
+ */
+function CHMdefault_pindexcmp($a, $b)
+{
+ global $phpDocumentor_DefaultPackageName;
+ if ($a['title'] == $phpDocumentor_DefaultPackageName) return -1;
+ if ($b['title'] == $phpDocumentor_DefaultPackageName) return 1;
+ return strnatcasecmp($a['title'],$b['title']);
+}
+
+/** @access private */
+function CHMdefault_lettersort($a, $b)
+{
+ return strnatcasecmp($a['letter'],$b['letter']);
+}
+
+/** @access private */
+function CHMdefault_outputfilter($src, &$smarty)
+{
+ return str_replace('{$subdir}',$smarty->_tpl_vars['subdir'],$src);
+}
+?>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/options.ini b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/options.ini
new file mode 100755
index 00000000..cae1952d
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/options.ini
@@ -0,0 +1,507 @@
+preservedocbooktags = false
+
+;; used to highlight the {@source} inline tag, @filesource tag, and @example tag
+[highlightSourceTokens]
+;; format:
+;; T_CONSTANTNAME = open
+;; /T_CONSTANTNAME = close
+T_ABSTRACT = <font color="blue">
+/T_ABSTRACT = </font>
+T_CLONE = <font color="blue">
+/T_CLONE = </font>
+T_HALT_COMPILER = <font color="red">
+/T_HALT_COMPILER = </font>
+T_PUBLIC = <font color="blue">
+/T_PUBLIC = </font>
+T_PRIVATE = <font color="blue">
+/T_PRIVATE = </font>
+T_PROTECTED = <font color="blue">
+/T_PROTECTED = </font>
+T_FINAL = <font color="blue">
+/T_FINAL = </font>
+T_IMPLEMENTS = <font color="blue">
+/T_IMPLEMENTS = </font>
+T_CLASS = <font color="blue">
+/T_CLASS = </font>
+T_INTERFACE = <font color="blue">
+/T_INTERFACE = </font>
+T_INCLUDE = <font color="blue">
+/T_INCLUDE = </font>
+T_INCLUDE_ONCE = <font color="blue">
+/T_INCLUDE_ONCE = </font>
+T_REQUIRE_ONCE = <font color="blue">
+/T_REQUIRE_ONCE = </font>
+T_FUNCTION = <font color="blue">
+/T_FUNCTION = </font>
+T_VARIABLE = <strong>
+/T_VARIABLE = </strong>
+T_CONSTANT_ENCAPSED_STRING = <font color="#66cccc">
+/T_CONSTANT_ENCAPSED_STRING = </font>
+T_COMMENT = <font color="green">
+/T_COMMENT = </font>
+T_OBJECT_OPERATOR = <strong>
+/T_OBJECT_OPERATOR = </strong>
+T_RETURN = <font color="blue">
+/T_RETURN = </font>
+T_STATIC = <font color="blue">
+/T_STATIC = </font>
+T_SWITCH = <font color="blue">
+/T_SWITCH = </font>
+T_IF = <font color="blue">
+/T_IF = </font>
+T_FOREACH = <font color="blue">
+/T_FOREACH = </font>
+T_FOR = <font color="blue">
+/T_FOR = </font>
+T_VAR = <font color="blue">
+/T_VAR = </font>
+T_EXTENDS = <font color="blue">
+/T_EXTENDS = </font>
+T_RETURN = <font color="blue">
+/T_RETURN = </font>
+T_GLOBAL = <font color="blue">
+/T_GLOBAL = </font>
+T_DOUBLE_COLON = <strong>
+/T_DOUBLE_COLON = </strong>
+T_OBJECT_OPERATOR = <strong>
+/T_OBJECT_OPERATOR = </strong>
+T_OPEN_TAG = <strong>
+/T_OPEN_TAG = </strong>
+T_CLOSE_TAG = <strong>
+/T_CLOSE_TAG = </strong>
+
+[highlightSource]
+;; this is for highlighting things that aren't tokens like "&"
+;; format:
+;; word = open
+;; /word = close
+@ = <strong>
+/@ = </strong>
+& = <strong>
+/& = </strong>
+[ = <strong>
+/[ = </strong>
+] = <strong>
+/] = </strong>
+! = <strong>
+/! = </strong>
+";" = <strong>
+/; = </strong>
+( = <strong>
+/( = </strong>
+) = <strong>
+/) = </strong>
+, = <strong>
+/, = </strong>
+{ = <strong>
+/{ = </strong>
+} = <strong>
+/} = </strong>
+""" = <font color="#66cccc">
+/" = </font>
+
+[highlightDocBlockSourceTokens]
+;; this is for docblock tokens, using by phpDocumentor_HighlightParser
+;; tagphptype is for "string" in @param string description, for example
+docblock = <font color="#009999">
+/docblock = </font>
+tagphptype = <em>
+/tagphptype = </em>
+tagvarname = <strong>
+/tagvarname = </strong>
+coretag = <strong><font color = "#0099FF">
+/coretag = </font></strong>
+tag = <strong><font color="#009999">
+/tag = </font></strong>
+inlinetag = <em><font color="#0099FF">
+/inlinetag = </font></em>
+internal = <em><font color = "#6699cc">
+/internal = </font></em>
+closetemplate = <strong><font color="blue">
+/closetemplate = </font></strong>
+docblocktemplate = <font color="blue">
+/docblocktemplate = </font color="blue">
+
+[highlightTutorialSourceTokens]
+;; this is for XML DocBook-based tutorials, highlighted by phpDocumentor_TutorialHighlightParser
+;; <tag>
+opentag = <span class="tute-tag">
+/opentag = </span>
+;; </tag>
+closetag = <span class="tute-tag">
+/closetag = </span>
+;; <tag attribute="value">
+attribute = <span class="tute-attribute-name">
+/attribute = </span>
+;; <tag attribute="value">
+attributevalue = <span class="tute-attribute-value">
+/attributevalue = </span>
+;; &entity;
+entity = <span class="tute-entity">
+/entity = </span>
+;; <!-- comment -->
+comment = <span class="tute-comment">
+/comment = </span>
+;; {@inline tag}
+itag = <span class="tute-inline-tag">
+/itag = </span>
+
+;; used for translation of html in DocBlocks
+[desctranslate]
+ul = <ul>
+/ul = </ul>
+ol = <ol>
+/ol = </ol>
+li = <li>
+/li = </li>
+code =
+/code =
+var = <var>
+/var = </var>
+samp = <samp>
+/samp = </samp>
+kbd = <kbd>
+/kbd = </kbd>
+pre = <pre>
+/pre = </pre>
+p = <p>
+/p = </p>
+b = <strong>
+/b = </strong>
+i = <em>
+/i = </em>
+br = <br />
+
+[ppage]
+;; this is the DocBook package page translation section. All DocBook tags
+;; that have a corresponding html tag must be listed here
+;;
+;; examples:
+;; 1)
+;; tagname = newtagname
+;;
+;; This is the simplest case, where all attributes will be added into the
+;; starting tag and the ending tag will be html/xml style </tranlatedtagname>
+;; <tagname></tagname> becomes <newtagname></newtagname> and
+;; <tagname attr="value"></tagname> becomes
+;; <newtagname attr="value"></newtagname>
+;;
+;; 2)
+;; tagname = newtagname
+;; tagname->attr = newattrname
+;;
+;; in this case, everything will be like the first case, except tags like:
+;; <tagname attr="value"></tagname> will become
+;; <newtagname newattrname="value"></newtagname>
+;;
+;; 3)
+;; tagname = newtagname
+;; tagname->attr = newattrname
+;; tagname->attr+value = newvalue
+;;
+;; in this case, the value is also translated to another. This can be useful
+;; for instances such as focus="middle" changing to align="center" or something
+;; of that nature.
+;; <tagname attr="value"></tagname> will become
+;; <newtagname newattrname="newvalue"></newtagname>
+;;
+;; 4)
+;; tagname = newtagname
+;; tagname->attr1 = newattrname
+;; tagname->attr2 = newattrname
+;; tagname->attr1+value|attr2+value = newvalue
+;;
+;; in this case, two attributes combine to make one new attribute, and the combined
+;; value is translated into a new value
+;; <tagname attr1="value1" attr2="value2"></tagname> will become
+;; <newtagname newattrname="newvalue"></newtagname>
+;;
+;; 5)
+;; tagname = newtagname
+;; tagname!attr = dummy
+;;
+;; here, the attribute will be ignored. dummy is not used and may be any value
+;; <tagname attr="value"></tagname> will become
+;; <newtagname></newtagname>
+;;
+;; 6)
+;; tagname = newtagname
+;; tagname! = dummy
+;;
+;; here, all attributes will be ignored. dummy is not used and may be any value
+;; <tagname attr1="value" attr2="foo"></tagname> will become
+;; <newtagname></newtagname>
+;;
+;; 7)
+;; tagname = newtagname
+;; tagname/ = 1
+;;
+;; here, the tag will be translated as a single tag with no closing tag, and all
+;; attributes
+;; <tagname attr="val">{text text}</tagname> will become
+;; <newtagname attr="val" />
+;;
+;; 8)
+;; tagname = <starttaginfo />
+;; /tagname = closetagtext
+;;
+;; in this case, the text <starttaginfo> will be inserted exactly as entered for
+;; <tagname> and closetagtext for </tagname>
+;; <tagname attr="val"></tagname> will become
+;; <starttaginfo />closetagtext
+;;
+;; 9)
+;; $attr$my_attribute = newattrname
+;;
+;; tagname = newtagname
+;;
+;; in this case, all occurences of my_attribute in any tag will be changed to
+;; newattrname. This is useful for changing things like role="php" to
+;; class="php," for example. Note that the text "$attr$" MUST be on the line
+;; start for phpDocumentor to recognize it.
+;;
+;; 10)
+;; &entity; = translation text
+;; &quot; = &quot;
+;; &quot; = """
+;; &lt; = <
+;;
+;; Use this to control translation of entities to their appropriate values
+
+&nbsp; = &nbsp;
+&quot; = &quot;
+&rdquo; = &rdquo;
+&ldquo; = &ldquo;
+&amp; = &amp;
+&lt; = &lt;
+&gt; = &gt;
+&copy; = &copy;
+
+$attr$role = class
+
+abbrev = abbr
+
+blockquote = blockquote
+
+arg = span
+arg->choice = class
+
+author = <font size="-1"><strong>by <em>
+/author = </em></strong></font>
+author! = 0
+
+authorblurb = blockquote
+
+authorgroup = <strong>Authors:</strong><br />
+/authorgroup =
+authorgroup! = 0
+
+caution = <table border="1"><th align="center">Caution</th><tr><td>
+/caution = </td></tr></table>
+caution! = 0
+
+command = <b class="cmd">
+/command = </b>
+
+cmdsynopsis = <div id="cmdsynopsis">
+/cmdsynopsis = </div>
+
+copyright = <em>
+/copyright = </em><br />
+
+emphasis = strong
+
+example = <table class="example" width="100%" border="1"><tr><td>
+/example = </td></tr></table>
+example! = 0
+
+function =
+/function = ()
+
+formalpara = p
+
+graphic = img
+graphic->fileref = src
+graphic/ =
+
+important = u
+
+informalequation = blockquote
+
+informalexample = pre
+
+inlineequation = em
+
+itemizedlist = ul
+
+listitem = li
+
+literal = code
+
+literallayout = pre
+
+option = " "
+/option =
+
+orderedlist = ol
+
+para = p
+
+programlisting = <table border="0" bgcolor="#E0E0E0" cellpadding="5"><tr><td><div class="src-code">
+/programlisting = </div></td></tr></table>
+programlisting! = 0
+
+refentry = div
+
+refnamediv = <div class="refname">
+/refnamediv = </div>
+refnamediv! = 0
+
+refname = h1
+
+refpurpose = <h2 class="refpurpose"><em>
+/refpurpose = </em></h2>
+
+refsynopsisdiv = <div class="refsynopsis">
+/refsynopsisdiv = </div>
+refsynopsisdiv! = 0
+
+refsect1 = span
+
+refsect2 =
+/refsect2 = <hr />
+
+refsect3 =
+/refsect3 = <br />
+
+releaseinfo = (
+/releaseinfo = )<br />
+
+simpara =
+/simpara = <br />
+simpara! = 0
+
+subscript = sub
+
+superscript = super
+
+table = table
+
+table->colsep = rules
+table->rowsep = rules
+table->colsep+1|rowsep+1 = all
+table->colsep+1|rowsep+0 = cols
+table->colsep+0|rowsep+1 = rows
+
+table->frame = frame
+table->frame+all = border
+table->frame+none = void
+table->frame+sides = vsides
+table->frame+top = above
+table->frame+topbot = hsides
+
+thead = thead
+
+tfoot = tfoot
+
+tbody = tbody
+
+colspec = col
+
+tgroup = colgroup
+tgroup/ = 1
+tgroup->cols = span
+
+row = tr
+
+entry = td
+entry->morerows = colspan
+entry->morerows+1 = 2
+entry->morerows+2 = 3
+entry->morerows+3 = 4
+entry->morerows+4 = 5
+entry->morerows+5 = 6
+entry->morerows+6 = 7
+entry->morerows+7 = 8
+entry->morerows+8 = 9
+entry->morerows+9 = 10
+entry->morerows+10 = 11
+;; add more if you need more colspans
+
+warning = <table border="1"><tr><td>
+/warning = </td></tr></table>
+warning! = 0
+
+;; now begins the attributes that should be tags in cdata
+[$attr$id]
+open = a
+;close = /a
+cdata! = true
+quotevalues = true
+separator = "="
+;separateall = true
+$id = name
+
+;; now begins the sections that deal with <title>
+[refsynopsisdiv_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h1 class="title" align="center">
+close = </h1>
+
+[refsect1_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h2 class="title" align="center">
+close = </h1>
+
+[refsect2_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h2 class="title" align="center">
+close = </h2>
+
+[refsect3_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h3 class="title" align="center">
+close = </h3>
+
+[para_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <strong class="title" align="center">
+close = </strong>
+
+[formalpara_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <strong class="title" align="center">
+close = </strong>
+
+[example_title]
+;tag_attr = true
+;attr_name = title
+;cdata_start = true
+cdata_end = true
+open = </td></tr><tr><td><strong>
+close = </strong>
+
+[table_title]
+;tag_attr = true
+;attr_name = true
+cdata_start = true
+open = <caption>
+close = </caption>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/basicindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/basicindex.tpl
new file mode 100755
index 00000000..29a27593
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/basicindex.tpl
@@ -0,0 +1,21 @@
+{section name=letter loop=$letters}
+ <a href="{$indexname}.html#{$letters[letter].letter}">{$letters[letter].letter}</a>
+{/section}
+<table>
+{section name=index loop=$index}
+<tr><td colspan = "2"><a name="{$index[index].letter}">&nbsp; </a>
+<a href="#top">top</a><br>
+<TABLE CELLPADDING='3' CELLSPACING='0' WIDTH='100%' CLASS="border">
+ <TR CLASS='TableHeadingColor'>
+ <TD>
+ <FONT SIZE='+2'><B>{$index[index].letter}</B></FONT>
+ </TD>
+ </TR>
+</TABLE>
+</td></tr>
+ {section name=contents loop=$index[index].index}
+ <tr><td><b>{$index[index].index[contents].name}</b></td><td width="100%" align="left" valign="top">{$index[index].index[contents].listing}</td></tr>
+ {/section}
+{/section}
+</table>
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/blank.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/blank.tpl
new file mode 100755
index 00000000..6a05f27e
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/blank.tpl
@@ -0,0 +1,13 @@
+<html>
+<head>
+ <title>{$maintitle}</title>
+ <link rel="stylesheet" href="{$subdir}media/stylesheet.css" />
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+</head>
+<body>
+<div align="center"><h1>{$maintitle}</h1></div>
+<b>Welcome to {$package}!</b><br />
+<br />
+This documentation was generated by <a href="{$phpdocwebsite}">phpDocumentor v{$phpdocversion}</a><br />
+</body>
+</html> \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/class.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/class.tpl
new file mode 100755
index 00000000..93cd4f27
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/class.tpl
@@ -0,0 +1,94 @@
+{include file="header.tpl" eltype="class" hasel=true contents=$classcontents}
+<!-- Start of Class Data -->
+<H3>
+ <SPAN class="type">{if $is_interface}Interface{else}Class{/if}</SPAN> {$class_name}
+ <HR>
+</H3>
+[line <span class="linenumber">{if $class_slink}{$class_slink}{else}{$line_number}{/if}</span>]<br />
+<pre>
+{section name=tree loop=$class_tree.classes}{$class_tree.classes[tree]}{$class_tree.distance[tree]}{/section}
+</pre>
+{if $tutorial}
+<div class="maintutorial">Class Tutorial: {$tutorial}</div>
+{/if}
+{if $children}
+<SPAN class="type">Classes extended from {$class_name}:</SPAN>
+ {section name=kids loop=$children}
+ <dl>
+ <dt>{$children[kids].link}</dt>
+ <dd>{$children[kids].sdesc}</dd>
+ </dl>
+ {/section}</p>
+{/if}
+{if $conflicts.conflict_type}<p class="warning">Conflicts with classes:<br />
+ {section name=me loop=$conflicts.conflicts}
+ {$conflicts.conflicts[me]}<br />
+ {/section}
+<p>
+{/if}
+<SPAN class="type">Location:</SPAN> {$source_location}
+<hr>
+{include file="docblock.tpl" type="class" sdesc=$sdesc desc=$desc}
+<hr>
+{include file="var.tpl" show="summary"}
+<hr>
+{include file="const.tpl" show="summary"}
+<hr>
+<!-- =========== INHERITED CONST SUMMARY =========== -->
+<A NAME='inheritedconst_summary'><!-- --></A>
+<H3>Inherited Class Constant Summary</H3>
+
+{section name=iconsts loop=$iconsts}
+<H4>Inherited From Class {$iconsts[iconsts].parent_class}</H4>
+<UL>
+ {section name=iconsts2 loop=$iconsts[iconsts].iconsts}
+ <!-- =========== Summary =========== -->
+ <LI><CODE>{$iconsts[iconsts].iconsts[iconsts2].link}</CODE> = <CODE class="varsummarydefault">{$iconsts[iconsts].iconsts[iconsts2].value}</CODE>
+ <BR>
+ {$iconsts[iconsts].iconsts[iconsts2].sdesc}
+ {/section}
+ </LI>
+</UL>
+{/section}
+<hr>
+<!-- =========== INHERITED VAR SUMMARY =========== -->
+<A NAME='inheritedvar_summary'><!-- --></A>
+<H3>Inherited Class Variable Summary</H3>
+
+{section name=ivars loop=$ivars}
+<H4>Inherited From Class {$ivars[ivars].parent_class}</H4>
+<UL>
+ {section name=ivars2 loop=$ivars[ivars].ivars}
+ <!-- =========== Summary =========== -->
+ <LI><CODE>{$ivars[ivars].ivars[ivars2].link}</CODE> = <CODE class="varsummarydefault">{$ivars[ivars].ivars[ivars2].default}</CODE>
+ <BR>
+ {$ivars[ivars].ivars[ivars2].sdesc}
+ {/section}
+ </LI>
+</UL>
+{/section}
+
+<hr>
+{include file="method.tpl" show="summary"}
+<!-- =========== INHERITED METHOD SUMMARY =========== -->
+<A NAME='methods_inherited'><!-- --></A>
+<H3>Inherited Method Summary</H3>
+
+{section name=imethods loop=$imethods}
+<H4>Inherited From Class {$imethods[imethods].parent_class}</h4>
+<UL>
+ {section name=im2 loop=$imethods[imethods].imethods}
+ <!-- =========== Summary =========== -->
+ <LI><CODE>{$imethods[imethods].imethods[im2].link}</CODE><br>
+ {$imethods[imethods].imethods[im2].sdesc}
+ {/section}
+</UL>
+{/section}
+<hr>
+{include file="method.tpl"}
+<hr>
+{include file="var.tpl"}
+<hr>
+{include file="const.tpl"}
+<hr>
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/classleft.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/classleft.tpl
new file mode 100755
index 00000000..65d60118
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/classleft.tpl
@@ -0,0 +1,8 @@
+{foreach key=subpackage item=files from=$classleftindex}
+ {if $subpackage != ""}<b>{$subpackage}</b><br>{/if}
+ {section name=files loop=$files}
+ {if $files[files].link != ''}<a href="{ldelim}$subdir{rdelim}{$files[files].link}">{/if}
+ {$files[files].title}
+ {if $files[files].link != ''}</a>{/if}<br>
+ {/section}
+{/foreach}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/classtrees.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/classtrees.tpl
new file mode 100755
index 00000000..6308aba9
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/classtrees.tpl
@@ -0,0 +1,12 @@
+{capture name="title"}Class Trees for Package {$package}{/capture}
+{include file="header.tpl" title=$smarty.capture.title}
+
+<!-- Start of Class Data -->
+<H2>
+ {$smarty.capture.title}
+</H2>
+{section name=classtrees loop=$classtrees}
+<SPAN class="code">Root class {$classtrees[classtrees].class}</SPAN>
+<code class="vardefaultsummary">{$classtrees[classtrees].class_tree}</code>
+{/section}
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/const.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/const.tpl
new file mode 100644
index 00000000..720a71b5
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/const.tpl
@@ -0,0 +1,29 @@
+{if $show=="summary"}
+<!-- =========== CONST SUMMARY =========== -->
+<A NAME='const_summary'><!-- --></A>
+<H3>Class Constant Summary</H3>
+
+<UL>
+ {section name=consts loop=$consts}
+ <!-- =========== Summary =========== -->
+ <LI><CODE><a href="{$consts[consts].id}">{$consts[consts].const_name}</a></CODE> = <CODE class="varsummarydefault">{$consts[consts].const_value|replace:"\n":"<br>\n"|replace:" ":"&nbsp;"|replace:"\t":"&nbsp;&nbsp;&nbsp;"}</CODE>
+ <BR>
+ {$consts[consts].sdesc}
+ {/section}
+</UL>
+{else}
+<!-- ============ VARIABLE DETAIL =========== -->
+
+<A NAME='variable_detail'></A>
+
+<H3>Class Constant Detail</H3>
+
+<UL>
+{section name=consts loop=$consts}
+<A NAME="{$consts[consts].const_dest}"><!-- --></A>
+<LI><SPAN class="code">{$consts[consts].const_name}</SPAN> = <CODE class="varsummarydefault">{$consts[consts].const_value|replace:"\n":"<br>\n"|replace:" ":"&nbsp;"|replace:"\t":"&nbsp;&nbsp;&nbsp;"}</CODE> [line <span class="linenumber">{if $consts[consts].slink}{$consts[consts].slink}{else}{$consts[consts].line_number}{/if}</span>]</LI>
+{include file="docblock.tpl" sdesc=$consts[consts].sdesc desc=$consts[consts].desc tags=$consts[consts].tags}
+<BR>
+{/section}
+</UL>
+{/if} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/contents.hhc.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/contents.hhc.tpl
new file mode 100755
index 00000000..44938319
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/contents.hhc.tpl
@@ -0,0 +1,11 @@
+<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
+<HTML>
+<HEAD>
+<meta name="GENERATOR" content="phpDocumentor version {$phpdocversion}">
+<!-- Sitemap 1.0 -->
+</HEAD><BODY>
+<OBJECT type="text/site properties">
+ <param name="ImageType" value="Folder">
+</OBJECT>
+{$toc}
+</BODY></HTML>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/define.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/define.tpl
new file mode 100755
index 00000000..4a3a64e9
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/define.tpl
@@ -0,0 +1,33 @@
+{if $summary}
+<!-- =========== CONSTANT SUMMARY =========== -->
+<A NAME='constant_summary'><!-- --></A>
+<H3>Constant Summary</H3>
+
+<UL>
+ {section name=def loop=$defines}
+ <LI><CODE><A HREF="{$defines[def].id}">{$defines[def].define_name}</A></CODE> = <CODE class="varsummarydefault">{$defines[def].define_value}</CODE>
+ <BR>{$defines[def].sdesc}
+ {/section}
+</UL>
+{else}
+<!-- ============ CONSTANT DETAIL =========== -->
+
+<A NAME='constant_detail'></A>
+<H3>Constant Detail</H3>
+
+<UL>
+ {section name=def loop=$defines}
+ <A NAME="{$defines[def].define_link}"><!-- --></A>
+ <LI><SPAN class="code">{$defines[def].define_name}</SPAN> = <CODE class="varsummarydefault">{$defines[def].define_value}</CODE> [line <span class="linenumber">{if $defines[def].slink}{$defines[def].slink}{else}{$defines[def].line_number}{/if}</span>]<br />
+ {if $defines[def].define_conflicts.conflict_type}
+ <p><b>Conflicts with defines:</b>
+ {section name=me loop=$defines[def].define_conflicts.conflicts}
+ {$defines[def].define_conflicts.conflicts[me]}<br />
+ {/section}
+ </p>
+ {/if}
+<BR><BR>
+ {include file="docblock.tpl" sdesc=$defines[def].sdesc desc=$defines[def].desc tags=$defines[def].tags}
+ {/section}
+</UL>
+{/if} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/docblock.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/docblock.tpl
new file mode 100755
index 00000000..ef621b9b
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/docblock.tpl
@@ -0,0 +1,31 @@
+<!-- ========== Info from phpDoc block ========= -->
+{if $function}
+ {if $params}
+ <p class="label"><b>Parameters</b></p>
+ {section name=params loop=$params}
+ <p class=dt><i>{$params[params].var}</i></p>
+ <p class=indent>{$params[params].data}</p>
+ {/section}
+ {/if}
+{/if}
+{section name=tags loop=$tags}
+{if $tags[tags].keyword == 'return'}
+ <p class="label"><b>Returns</b></p>
+ <p class=indent>{$tags[tags].data}</p>
+{/if}
+{/section}
+{if $sdesc || $desc}
+<p class="label"><b>Remarks</b></p>
+{/if}
+{if $sdesc}
+<p>{$sdesc}</p>
+{/if}
+{if $desc}
+<p>{$desc}</p>
+{/if}
+{section name=tags loop=$tags}
+{if $tags[tags].keyword != 'return'}
+ <p class="label"><b>{$tags[tags].keyword}</b></p>
+ <p class=indent>{$tags[tags].data}</p>
+{/if}
+{/section} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/elementindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/elementindex.tpl
new file mode 100755
index 00000000..755f33c7
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/elementindex.tpl
@@ -0,0 +1,9 @@
+{include file="header.tpl" noleftindex=true}
+<a name="top"></a>
+<h1>Index of All Elements</h1>
+<b>Indexes by package:</b><br>
+{section name=p loop=$packageindex}
+<a href="elementindex_{$packageindex[p].title}.html">{$packageindex[p].title}</a><br>
+{/section}<br>
+{include file="basicindex.tpl" indexname="elementindex"}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/errors.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/errors.tpl
new file mode 100755
index 00000000..0f526584
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/errors.tpl
@@ -0,0 +1,21 @@
+{include file="header.tpl" noleftindex=true}
+{section name=files loop=$files}
+<a href="#{$files[files].file}">{$files[files].file}</a><br>
+{/section}
+{foreach key=file item=issues from=$all}
+<a name="{$file}"></a>
+<h1>{$file}</h1>
+{if count($issues.warnings)}
+<h2>Warnings:</h2><br>
+{section name=warnings loop=$issues.warnings}
+<b>{$issues.warnings[warnings].name}</b> - {$issues.warnings[warnings].listing}<br>
+{/section}
+{/if}
+{if count($issues.errors)}
+<h2>Errors:</h2><br>
+{section name=errors loop=$issues.errors}
+<b>{$issues.errors[errors].name}</b> - {$issues.errors[errors].listing}<br>
+{/section}
+{/if}
+{/foreach}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/fileleft.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/fileleft.tpl
new file mode 100755
index 00000000..45bcf945
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/fileleft.tpl
@@ -0,0 +1,8 @@
+{foreach key=subpackage item=files from=$fileleftindex}
+ {if $subpackage != ""}subpackage <b>{$subpackage}</b><br>{/if}
+ {section name=files loop=$files}
+ {if $files[files].link != ''}<a href="{ldelim}$subdir{rdelim}{$files[files].link}">{/if}
+ {$files[files].title}
+ {if $files[files].link != ''}</a>{/if}<br>
+ {/section}
+{/foreach}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/filesource.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/filesource.tpl
new file mode 100755
index 00000000..55c826b9
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/filesource.tpl
@@ -0,0 +1,6 @@
+{capture name="tutle"}File Source for {$name}{/capture}
+{include file="header.tpl" title=$smarty.capture.tutle}
+<h1 align="center">Source for file {$name}</h1>
+<p>Documentation is available at {$docs}</p>
+{$source}
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/footer.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/footer.tpl
new file mode 100755
index 00000000..157bb1cd
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/footer.tpl
@@ -0,0 +1,8 @@
+{if !$index}
+ <div id="credit">
+ <hr>
+ Documentation generated on {$date} by <a href="{$phpdocwebsite}" target="_blank">phpDocumentor {$phpdocversion}</a>
+ </div>
+{/if}
+</body>
+</html>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/function.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/function.tpl
new file mode 100755
index 00000000..895e8ab4
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/function.tpl
@@ -0,0 +1,44 @@
+{if $summary}
+<!-- =========== FUNCTION SUMMARY =========== -->
+<A NAME='function_summary'><!-- --></A>
+<H3>Function Summary</H3>
+
+<UL>
+ {section name=func loop=$functions}
+ <!-- =========== Summary =========== -->
+ <LI><CODE><A HREF="{$functions[func].id}">{$functions[func].function_return} {$functions[func].function_name}()</A></CODE>
+ <BR>{$functions[func].sdesc}
+ {/section}
+</UL>
+{else}
+<!-- ============ FUNCTION DETAIL =========== -->
+
+<A NAME='function_detail'></A>
+<H3>Function Detail</H3>
+
+<UL>
+{section name=func loop=$functions}
+<A NAME="{$functions[func].function_dest}"><!-- --></A>
+
+<LI><SPAN class="code">{$functions[func].function_return} {$functions[func].function_name}()</SPAN> [line <span class="linenumber">{if $functions[func].slink}{$functions[func].slink}{else}{$functions[func].line_number}{/if}</span>]<br />
+<BR><BR>
+<SPAN class="type">Usage:</SPAN> <SPAN class="code">{if $functions[func].ifunction_call.returnsref}&amp;{/if}{$functions[func].function_name}(
+{if count($functions[func].ifunction_call.params)}
+{section name=params loop=$functions[func].ifunction_call.params}
+{if $smarty.section.params.iteration != 1}, {/if}{if $functions[func].ifunction_call.params[params].hasdefault}[{/if}{$functions[func].ifunction_call.params[params].type} {$functions[func].ifunction_call.params[params].name}{if $functions[func].ifunction_call.params[params].hasdefault} = {$functions[func].ifunction_call.params[params].default|escape:"html"}]{/if}
+{/section}
+{/if})</SPAN>
+<BR><BR>
+{if $functions[func].function_conflicts.conflict_type}
+<p><b>Conflicts with functions:</b>
+{section name=me loop=$functions[func].function_conflicts.conflicts}
+{$functions[func].function_conflicts.conflicts[me]}<br />
+{/section}
+</p>
+{/if}
+{include file="docblock.tpl" sdesc=$functions[func].sdesc desc=$functions[func].desc tags=$functions[func].tags params=$functions[func].params function=true}
+<BR>
+<p class="top">[ <a href="#top">Top</a> ]</p>
+{/section}
+</UL>
+{/if} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/global.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/global.tpl
new file mode 100755
index 00000000..113a67ab
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/global.tpl
@@ -0,0 +1,32 @@
+{if $summary}
+<!-- =========== GLOBAL VARIABLE SUMMARY =========== -->
+<A NAME='global_summary'><!-- --></A>
+<H3>Global Variable Summary</H3>
+
+<UL>
+ {section name=glob loop=$globals}
+ <LI><CODE><A HREF="{$globals[glob].id}">{$globals[glob].global_name}</A></CODE> = <CODE class="varsummarydefault">{$globals[glob].global_value}</CODE>
+ <BR>{$globals[glob].sdesc}
+ {/section}
+</UL>
+
+{else}
+<!-- ============ GLOBAL VARIABLE DETAIL =========== -->
+
+<A NAME='global_detail'></A>
+<H3>Global Variable Detail</H3>
+
+<UL>
+ {section name=glob loop=$globals}
+ <A NAME="{$globals[glob].global_link}"><!-- --></A>
+ <LI><i>{$globals[glob].global_type}</i> <SPAN class="code">{$globals[glob].global_name}</SPAN> = <CODE class="varsummarydefault">{$globals[glob].global_value}</CODE> [line <span class="linenumber">{if $globals[glob].slink}{$globals[glob].slink}{else}{$globals[glob].line_number}{/if}</span>]<br />
+ {if $globals[glob].global_conflicts.conflict_type}
+ <p><b>Conflicts with globals:</b>
+ {section name=me loop=$globals[glob].global_conflicts.conflicts}
+ {$globals[glob].global_conflicts.conflicts[me]}<br />
+ {/section}
+ {/if}<BR><BR>
+ {include file="docblock.tpl" sdesc=$globals[glob].sdesc desc=$globals[glob].desc tags=$globals[glob].tags}
+ {/section}
+</UL>
+{/if} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/header.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/header.tpl
new file mode 100755
index 00000000..30fad6bb
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/header.tpl
@@ -0,0 +1,22 @@
+<!--
+ IE 6 makes the page to wide with the following doctype. I accept
+ standards if they help me, not if they make anything even harder!
+//-->
+<!--<!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.0 Transitional//EN' 'http://www.w3.org/TR/REC-html40/loose.dtd'>//-->
+<!--NewPage-->
+<HTML>
+<HEAD>
+ <!-- Generated by PhpDoc date: '{$date}' -->
+ <TITLE>{$title}</TITLE>
+<LINK REL ='stylesheet' TYPE='text/css' HREF='{$subdir}media/stylesheet.css' TITLE='Style'>
+{if $bgleft}
+<STYLE type="text/css"><!--
+ BODY {ldelim}
+ background-image : url("{$subdir}media/bg_left.png");
+ background-repeat : repeat-y;
+ {rdelim}
+//--></STYLE>
+{/if}
+</HEAD>
+<BODY {if !$bgleft}BGCOLOR='white'{/if}>
+<a name="top"><!-- --></a> \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/hhp.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/hhp.tpl
new file mode 100755
index 00000000..c82846a8
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/hhp.tpl
@@ -0,0 +1,17 @@
+[OPTIONS]
+Compatibility=1.1 or later
+Compiled file=documentation.chm
+Contents file=contents.hhc
+Default topic=index.html
+Display compile progress=No
+Index file=Index.hhk
+Language=0x409 English (United States)
+Title={$maintitle}
+
+[FILES]
+{section name=files loop=$files}
+{$files[files].name}
+{/section}
+
+[INFOTYPES]
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/include.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/include.tpl
new file mode 100755
index 00000000..db76e4dc
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/include.tpl
@@ -0,0 +1,26 @@
+{if $summary}
+<!-- =========== INCLUDE SUMMARY =========== -->
+<A NAME='include_summary'><!-- --></A>
+<H3>Include Statements Summary</H3>
+
+<UL>
+ {section name=includes loop=$includes}
+ <LI><CODE><A HREF="#{$includes[includes].include_file}">{$includes[includes].include_name}</A></CODE> = <CODE class="varsummarydefault">{$includes[includes].include_value}</CODE>
+ <BR>{$includes[includes].sdesc}
+ {/section}
+</UL>
+{else}
+<!-- ============ INCLUDE DETAIL =========== -->
+
+<A NAME='include_detail'></A>
+<H3>Include Statements Detail</H3>
+
+<UL>
+ {section name=includes loop=$includes}
+ <A NAME="{$includes[includes].include_file}"><!-- --></A>
+ <LI><SPAN class="code">{$includes[includes].include_name} file:</SPAN> = <CODE class="varsummarydefault">{$includes[includes].include_value}</CODE> [line <span class="linenumber">{if $includes[includes].slink}{$includes[includes].slink}{else}{$includes[includes].line_number}{/if}</span>]<br />
+ <BR><BR>
+ {include file="docblock.tpl" sdesc=$includes[includes].sdesc desc=$includes[includes].desc tags=$includes[includes].tags}
+ {/section}
+</UL>
+{/if} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/index.hhk.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/index.hhk.tpl
new file mode 100755
index 00000000..94cbd18e
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/index.hhk.tpl
@@ -0,0 +1,8 @@
+<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
+<HTML>
+<HEAD>
+<meta name="GENERATOR" content="phpDocumentor {$phpdocversion} {$phpdocwebsite}">
+<!-- Sitemap 1.0 -->
+</HEAD><BODY>
+{$klinks}
+</BODY></HTML>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/index.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/index.tpl
new file mode 100755
index 00000000..4e053097
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/index.tpl
@@ -0,0 +1,24 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+ <!-- Generated by PhpDoc on {$date} -->
+ <TITLE>{$title}</TITLE>
+</HEAD>
+<FRAMESET cols='220,*'>
+{if $package_count > 1}
+ <FRAMESET rows='220,*'>
+ <FRAME src='packages.html' name='left_top'>
+{/if}
+ <FRAME src='{$start}' name='left_bottom'>
+{if $package_count > 1}
+ </FRAMESET>
+{/if}
+ <FRAME src='{$blank}.html' name='right'>
+ <NOFRAMES>
+ <H2>Frame Alert</H2>
+ <P>This document is designed to be viewed using the frames feature.
+ If you see this message, you are using a non-frame-capable web client.</P>
+ </NOFRAMES>
+</FRAMESET>
+</HTML>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/media/bg_left.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/media/bg_left.png
new file mode 100755
index 00000000..19fdf05d
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/media/bg_left.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/media/stylesheet.css b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/media/stylesheet.css
new file mode 100755
index 00000000..aa245bfa
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/media/stylesheet.css
@@ -0,0 +1,130 @@
+BODY, DIV, SPAN, PRE, CODE, TD, TH {
+ line-height: 140%;
+ font-size: 10pt;
+ font-family: verdana,arial,sans-serif;
+}
+
+H1 {
+ font-size: 12pt;
+}
+
+H4 {
+ font-size: 10pt;
+ font-weight: bold;
+}
+
+P.label {
+ margin-bottom: 5px;
+}
+P.dt {
+ margin-top: 0px;
+ margin-bottom: 0px;
+}
+P.indent {
+ margin-top: 0px;
+ margin-left: 20px;
+ margin-bottom: 0px;
+}
+P.method {
+ background-color: #f0f0f0;
+ padding: 2px;
+ border: 1px #cccccc solid;
+}
+
+A {
+ text-decoration: none;
+}
+
+A:link{
+ color: #336699;
+}
+
+A:visited {
+ color: #003366;
+}
+
+A:active, A:hover {
+ color: #6699CC;
+}
+
+A:hover{
+ text-decoration: underline;
+}
+
+SPAN.type {
+ color: #336699;
+ font-size: xx-small;
+ font-weight: normal;
+ }
+
+PRE {
+ background-color: #EEEEEE;
+ padding: 10px;
+ border-width: 1px;
+ border-color: #336699;
+ border-style: solid;
+}
+
+HR {
+ color: #336699;
+ background-color: #336699;
+ border-width: 0px;
+ height: 1px;
+ filter: Alpha (opacity=100,finishopacity=0,style=1);
+}
+
+DIV.sdesc {
+ font-weight: bold;
+ background-color: #EEEEEE;
+ padding: 10px;
+ border-width: 1px;
+ border-color: #336699;
+ border-style: solid;
+}
+
+DIV.desc {
+ font-family: monospace;
+ background-color: #EEEEEE;
+ padding: 10px;
+ border-width: 1px;
+ border-color: #336699;
+ border-style: solid;
+}
+
+SPAN.code {
+ font-family: monospace;
+}
+
+CODE.varsummarydefault{
+ padding: 1px;
+ border-width: 1px;
+ border-style: dashed;
+ border-color: #336699;
+}
+
+UL.tute {
+ margin: 0px;
+ padding: 0px;
+ padding-left: 5px;
+ }
+
+LI.tute {
+ line-height: 140%;
+ font-size: 10pt;
+ text-indent: -15px;
+ padding-bottom: 2px;
+ padding-left: 14px;
+}
+
+.small{
+ font-size: 9pt;
+}
+
+
+.tute-tag { color: #009999 }
+.tute-attribute-name { color: #0000FF }
+.tute-attribute-value { color: #0099FF }
+.tute-entity { font-weight: bold; }
+.tute-comment { font-style: italic }
+.tute-inline-tag { color: #636311; font-weight: bold }
+.src-code { font-family: 'Courier New', Courier, monospace; font-weight: normal; }
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/method.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/method.tpl
new file mode 100755
index 00000000..4816c4f9
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/method.tpl
@@ -0,0 +1,126 @@
+{if $show == 'summary'}
+<!-- =========== METHOD SUMMARY =========== -->
+<A NAME='method_summary'><!-- --></A>
+<H3>Method Summary</H3>
+
+<UL>
+ {section name=methods loop=$methods}
+ {if $methods[methods].static}
+ <!-- =========== Summary =========== -->
+ <LI><CODE>static <A HREF='{$methods[methods].id}'>{$methods[methods].function_return} {$methods[methods].function_name}()</A></CODE>
+ <BR>{$methods[methods].sdesc}
+ {/if}
+ {/section}
+ {section name=methods loop=$methods}
+ {if $methods[methods].static}
+ <!-- =========== Summary =========== -->
+ <LI><CODE><A HREF='{$methods[methods].id}'>{$methods[methods].function_return} {$methods[methods].function_name}()</A></CODE>
+ <BR>{$methods[methods].sdesc}
+ {/if}
+ {/section}
+</UL>
+
+{else}
+<!-- ============ METHOD DETAIL =========== -->
+
+<A NAME='method_detail'></A>
+<H3>Method Detail</H3>
+
+<UL>
+{section name=methods loop=$methods}
+{if $methods[methods].static}
+<A NAME='{$methods[methods].method_dest}'><!-- --></A>
+
+<h1><A name="{$methods[methods].function_name}"></A>static {$class_name}::{$methods[methods].function_name}</h1>
+
+<p class=method>
+<b>static {if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}(</b>
+{if count($methods[methods].ifunction_call.params)}
+{section name=params loop=$methods[methods].ifunction_call.params}
+{if $smarty.section.params.iteration != 1}, {/if}
+{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<b>{$methods[methods].ifunction_call.params[params].type}</b>
+<i>{$methods[methods].ifunction_call.params[params].name}</i>{if $methods[methods].ifunction_call.params[params].hasdefault} = {$methods[methods].ifunction_call.params[params].default}]{/if}
+{/section}
+{/if}<b> );</b>
+</p>
+
+{if $methods[methods].descmethod}
+ <p>Overridden in child classes as:<br />
+ {section name=dm loop=$methods[methods].descmethod}
+ <dl>
+ <dt>{$methods[methods].descmethod[dm].link}</dt>
+ <dd>{$methods[methods].descmethod[dm].sdesc}</dd>
+ </dl>
+ {/section}</p>
+{/if}
+{if $methods[methods].method_overrides}
+<p>Overrides {$methods[methods].method_overrides.link} ({$methods[methods].method_overrides.sdesc|default:"parent method not documented"})</p>
+{/if}
+ {if $methods[methods].method_implements}
+ <hr class="separator" />
+ <div class="notes">Implementation of:</div>
+ {section name=imp loop=$methods[methods].method_implements}
+ <dl>
+ <dt>{$methods[methods].method_implements[imp].link}</dt>
+ {if $methods[methods].method_implements[imp].sdesc}
+ <dd>{$methods[methods].method_implements[imp].sdesc}</dd>
+ {/if}
+ </dl>
+ {/section}
+ {/if}
+
+{include file="docblock.tpl" sdesc=$methods[methods].sdesc desc=$methods[methods].desc tags=$methods[methods].tags params=$methods[methods].params function=true}
+ <p class="top">[ <a href="#top">Top</a> ]</p>
+<BR>
+{/if}
+{/section}
+
+{section name=methods loop=$methods}
+{if !$methods[methods].static}
+<A NAME='{$methods[methods].method_dest}'><!-- --></A>
+
+<h1><A name="{$methods[methods].function_name}"></A>{$class_name}::{$methods[methods].function_name}</h1>
+
+<p class=method>
+<b>{if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}(</b>
+{if count($methods[methods].ifunction_call.params)}
+{section name=params loop=$methods[methods].ifunction_call.params}
+{if $smarty.section.params.iteration != 1}, {/if}
+{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<b>{$methods[methods].ifunction_call.params[params].type}</b>
+<i>{$methods[methods].ifunction_call.params[params].name}</i>{if $methods[methods].ifunction_call.params[params].hasdefault} = {$methods[methods].ifunction_call.params[params].default}]{/if}
+{/section}
+{/if}<b> );</b>
+</p>
+
+{if $methods[methods].descmethod}
+ <p>Overridden in child classes as:<br />
+ {section name=dm loop=$methods[methods].descmethod}
+ <dl>
+ <dt>{$methods[methods].descmethod[dm].link}</dt>
+ <dd>{$methods[methods].descmethod[dm].sdesc}</dd>
+ </dl>
+ {/section}</p>
+{/if}
+{if $methods[methods].method_overrides}
+<p>Overrides {$methods[methods].method_overrides.link} ({$methods[methods].method_overrides.sdesc|default:"parent method not documented"})</p>
+{/if}
+ {if $methods[methods].method_implements}
+ <hr class="separator" />
+ <div class="notes">Implementation of:</div>
+ {section name=imp loop=$methods[methods].method_implements}
+ <dl>
+ <dt>{$methods[methods].method_implements[imp].link}</dt>
+ {if $methods[methods].method_implements[imp].sdesc}
+ <dd>{$methods[methods].method_implements[imp].sdesc}</dd>
+ {/if}
+ </dl>
+ {/section}
+ {/if}
+
+{include file="docblock.tpl" sdesc=$methods[methods].sdesc desc=$methods[methods].desc tags=$methods[methods].tags params=$methods[methods].params function=true}
+ <p class="top">[ <a href="#top">Top</a> ]</p>
+<BR>
+{/if}
+{/section}
+</UL>
+{/if} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/packages.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/packages.tpl
new file mode 100755
index 00000000..0967e6e7
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/packages.tpl
@@ -0,0 +1,3 @@
+{section name=packages loop=$packages}
+<a href="{$packages[packages].link}">{$packages[packages].title}</a>
+{/section} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/page.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/page.tpl
new file mode 100755
index 00000000..39f4823a
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/page.tpl
@@ -0,0 +1,34 @@
+{include file="header.tpl" eltype="Procedural file"}
+<h3><SPAN class="type">File:</SPAN> {$source_location}<HR>
+</h3>
+{if $tutorial}
+<div class="maintutorial">Main Tutorial: {$tutorial}</div>
+{/if}
+{include file="docblock.tpl" desc=$desc sdesc=$sdesc tags=$tags}
+Classes in this file:
+<dl>
+{section name=classes loop=$classes}
+<dt>{$classes[classes].link}</dt>
+ <dd>{$classes[classes].sdesc}</dd>
+{/section}
+</dl>
+<hr>
+{include file="include.tpl" summary=true}
+<hr>
+{include file="global.tpl" summary=true}
+<hr>
+{include file="define.tpl" summary=true}
+<hr>
+{include file="function.tpl" summary=true}
+<hr>
+{include file="include.tpl"}
+<hr>
+{include file="global.tpl"}
+<hr>
+{include file="define.tpl"}
+<hr>
+{include file="function.tpl"}
+<hr>
+{include file="footer.tpl"}
+
+</HTML> \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/pkgelementindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/pkgelementindex.tpl
new file mode 100755
index 00000000..f3a90ab3
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/pkgelementindex.tpl
@@ -0,0 +1,14 @@
+{include file="header.tpl"}
+<a name="top"></a>
+<h1>Element index for package {$package}</h1>
+{if count($packageindex) > 1}
+<b>Indexes by package:</b><br>
+{/if}
+{section name=p loop=$packageindex}
+{if $packageindex[p].title != $package}
+<a href="elementindex_{$packageindex[p].title}.html">{$packageindex[p].title}</a><br>
+{/if}
+{/section}<br>
+<a href="elementindex.html"><b>Index of all elements</b></a><br>
+{include file="basicindex.tpl" indexname=elementindex_$package}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/ric.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/ric.tpl
new file mode 100755
index 00000000..eff734c1
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/ric.tpl
@@ -0,0 +1,6 @@
+{include file="header.tpl"}
+<h1 align="center">{$name}</h1>
+<pre>
+{$contents|htmlentities}
+</pre>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/tocentry.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/tocentry.tpl
new file mode 100755
index 00000000..dd0669b5
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/tocentry.tpl
@@ -0,0 +1,11 @@
+<UL>
+{section name=entry loop=$entry}
+ <LI> <OBJECT type="text/sitemap">
+ <param name="Name" value="{$entry[entry].paramname}">
+{if $entry[entry].isclass} <param name="ImageNumber" value="1">
+{/if}{if $entry[entry].outputfile} <param name="Local" value="{$entry[entry].outputfile}">
+{/if} </OBJECT>
+ {if $entry[entry].tocsubentries}{$entry[entry].tocsubentries}{/if}
+{/section}
+ {$tocsubentries}
+</UL>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/todolist.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/todolist.tpl
new file mode 100755
index 00000000..f929ccdb
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/todolist.tpl
@@ -0,0 +1,14 @@
+{include file="header.tpl" title="Todo List"}
+<div align="center"><h1>Todo List</h1></div>
+{foreach from=$todos key=todopackage item=todo}
+<h2>{$todopackage}</h2>
+{section name=todo loop=$todo}
+<h3>{$todo[todo].link}</h3>
+<ul>
+{section name=t loop=$todo[todo].todos}
+ <li>{$todo[todo].todos[t]}</li>
+{/section}
+</ul>
+{/section}
+{/foreach}
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/tutorial.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/tutorial.tpl
new file mode 100755
index 00000000..a943522c
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/tutorial.tpl
@@ -0,0 +1,32 @@
+{include file="header.tpl" title=$title}
+{if $nav}
+<table width="100%" border="0" cellpadding="0" cellspacing="0">
+<tr>
+<td width="10%" align="left" valign="bottom">{if $prev}<a href=
+"{$prev}">{/if}Prev{if $prev}</a>{/if}</td>
+<td width="80%" align="center" valign="bottom"></td>
+<td width="10%" align="right" valign="bottom">{if $next}<a href=
+"{$next}">{/if}Next{if $next}</a>{/if}</td>
+</tr>
+</table>
+{/if}
+{$contents}
+{if $nav}
+<table width="100%" border="0" cellpadding="0" cellspacing="0">
+<tr>
+<td width="33%" align="left" valign="top">{if $prev}<a href="{$prev}">{/if}
+Prev{if $prev}</a>{/if}</td>
+<td width="34%" align="center" valign="top">{if $up}<a href=
+"{$up}">Up</a>{else}&nbsp;{/if}</td>
+<td width="33%" align="right" valign="top">{if $next}<a href=
+"{$next}">{/if}Next{if $next}</a>{/if}</td>
+</tr>
+
+<tr>
+<td width="33%" align="left" valign="top">{if $prevtitle}{$prevtitle}{/if}</td>
+<td width="34%" align="center" valign="top">{if $uptitle}{$uptitle}{/if}</td>
+<td width="33%" align="right" valign="top">{if $nexttitle}{$nexttitle}{/if}</td>
+</tr>
+</table>
+{/if}
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/tutorial_toc.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/tutorial_toc.tpl
new file mode 100755
index 00000000..3d22d403
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/tutorial_toc.tpl
@@ -0,0 +1,29 @@
+{if count($toc)}
+<h1 align="center">Table of Contents</h1>
+<ul>
+{section name=toc loop=$toc}
+{if $toc[toc].tagname == 'refsect1'}
+{assign var="context" value="refsect1"}
+{$toc[toc].link}<br />
+{/if}
+{if $toc[toc].tagname == 'refsect2'}
+{assign var="context" value="refsect2"}
+&nbsp;&nbsp;&nbsp;{$toc[toc].link}<br />
+{/if}
+{if $toc[toc].tagname == 'refsect3'}
+{assign var="context" value="refsect3"}
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{$toc[toc].link}<br />
+{/if}
+{if $toc[toc].tagname == 'table'}
+{if $context == 'refsect2'}&nbsp;&nbsp;&nbsp;{/if}
+{if $context == 'refsect3'}&nbsp;&nbsp;&nbsp;{/if}
+Table: {$toc[toc].link}
+{/if}
+{if $toc[toc].tagname == 'example'}
+{if $context == 'refsect2'}&nbsp;&nbsp;&nbsp;{/if}
+{if $context == 'refsect3'}&nbsp;&nbsp;&nbsp;{/if}
+Table: {$toc[toc].link}
+{/if}
+{/section}
+</ul>
+{/if} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/tutorial_tree.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/tutorial_tree.tpl
new file mode 100755
index 00000000..de907179
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/tutorial_tree.tpl
@@ -0,0 +1,5 @@
+<ul>
+ <li><a href="{$main.link}" target="right">{$main.title|strip_tags}</a>
+{if $kids}{$kids}</li>{/if}
+</ul>
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/var.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/var.tpl
new file mode 100755
index 00000000..eeefcc51
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/CHM/default/templates/default/templates/var.tpl
@@ -0,0 +1,51 @@
+{if $show=="summary"}
+<!-- =========== VAR SUMMARY =========== -->
+<A NAME='var_summary'><!-- --></A>
+<H3>Class Variable Summary</H3>
+
+<UL>
+ {section name=vars loop=$vars}
+ {if $vars[vars].static}
+ <!-- =========== Summary =========== -->
+ <LI><CODE>static <a href="{$vars[vars].id}">{$vars[vars].var_name}</a></CODE> = <CODE class="varsummarydefault">{$vars[vars].var_default|replace:"\n":"<br>\n"|replace:" ":"&nbsp;"|replace:"\t":"&nbsp;&nbsp;&nbsp;"}</CODE>
+ <BR>
+ {$vars[vars].sdesc}
+ {/if}
+ {/section}
+ {section name=vars loop=$vars}
+ {if !$vars[vars].static}
+ <!-- =========== Summary =========== -->
+ <LI><CODE><a href="{$vars[vars].id}">{$vars[vars].var_name}</a></CODE> = <CODE class="varsummarydefault">{$vars[vars].var_default|replace:"\n":"<br>\n"|replace:" ":"&nbsp;"|replace:"\t":"&nbsp;&nbsp;&nbsp;"}</CODE>
+ <BR>
+ {$vars[vars].sdesc}
+ {/if}
+ {/section}
+</UL>
+{else}
+<!-- ============ VARIABLE DETAIL =========== -->
+
+<A NAME='variable_detail'></A>
+
+<H3>Variable Detail</H3>
+
+<UL>
+{section name=vars loop=$vars}
+{if $vars[vars].static}
+<A NAME="{$vars[vars].var_dest}"><!-- --></A>
+<LI><SPAN class="code">static {$vars[vars].var_name}</SPAN> = <CODE class="varsummarydefault">{$vars[vars].var_default|replace:"\n":"<br>\n"|replace:" ":"&nbsp;"|replace:"\t":"&nbsp;&nbsp;&nbsp;"}</CODE> [line <span class="linenumber">{if $vars[vars].slink}{$vars[vars].slink}{else}{$vars[vars].line_number}{/if}</span>]</LI>
+<LI><b>Data type:</b> <CODE class="varsummarydefault">{$vars[vars].var_type}</CODE>{if $vars[vars].var_overrides}<b>Overrides:</b> {$vars[vars].var_overrides}<br>{/if}</LI>
+{include file="docblock.tpl" sdesc=$vars[vars].sdesc desc=$vars[vars].desc tags=$vars[vars].tags}
+<BR>
+{/if}
+{/section}
+{section name=vars loop=$vars}
+{if !$vars[vars].static}
+<A NAME="{$vars[vars].var_dest}"><!-- --></A>
+<LI><SPAN class="code">{$vars[vars].var_name}</SPAN> = <CODE class="varsummarydefault">{$vars[vars].var_default|replace:"\n":"<br>\n"|replace:" ":"&nbsp;"|replace:"\t":"&nbsp;&nbsp;&nbsp;"}</CODE> [line <span class="linenumber">{if $vars[vars].slink}{$vars[vars].slink}{else}{$vars[vars].line_number}{/if}</span>]</LI>
+<LI><b>Data type:</b> <CODE class="varsummarydefault">{$vars[vars].var_type}</CODE>{if $vars[vars].var_overrides}<b>Overrides:</b> {$vars[vars].var_overrides}<br>{/if}</LI>
+{include file="docblock.tpl" sdesc=$vars[vars].sdesc desc=$vars[vars].desc tags=$vars[vars].tags}
+<BR>
+{/if}
+{/section}
+</UL>
+{/if} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/HTMLSmartyConverter.inc b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/HTMLSmartyConverter.inc
new file mode 100755
index 00000000..d9fe459c
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/HTMLSmartyConverter.inc
@@ -0,0 +1,1966 @@
+<?php
+/**
+ * HTML output converter for Smarty Template.
+ * This Converter takes output from the {@link Parser} and converts it to HTML-ready output for use with {@link Smarty}.
+ *
+ * phpDocumentor :: automatic documentation generator
+ *
+ * PHP versions 4 and 5
+ *
+ * Copyright (c) 2000-2006 Joshua Eichorn, Gregory Beaver
+ *
+ * LICENSE:
+ *
+ * This library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Lesser General
+ * Public License as published by the Free Software Foundation;
+ * either version 2.1 of the License, or (at your option) any
+ * later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ * @package Converters
+ * @subpackage HTMLframes
+ * @author Joshua Eichorn <jeichorn@phpdoc.org>
+ * @author Greg Beaver <cellog@php.net>
+ * @copyright 2000-2006 Joshua Eichorn, Gregory Beaver
+ * @license http://www.opensource.org/licenses/lgpl-license.php LGPL
+ * @version CVS: $Id: HTMLSmartyConverter.inc 234145 2007-04-19 20:20:57Z ashnazg $
+ * @filesource
+ * @link http://www.phpdoc.org
+ * @link http://pear.php.net/PhpDocumentor
+ * @see parserDocBlock, parserInclude, parserPage, parserClass
+ * @see parserDefine, parserFunction, parserMethod, parserVar
+ * @since 1.0rc1
+ */
+/**
+ * HTML output converter.
+ * This Converter takes output from the {@link Parser} and converts it to HTML-ready output for use with {@link Smarty}.
+ *
+ * @package Converters
+ * @subpackage HTMLSmarty
+ * @see parserDocBlock, parserInclude, parserPage, parserClass, parserDefine, parserFunction, parserMethod, parserVar
+ * @author Greg Beaver <cellog@php.net>
+ * @since 1.0rc1
+ * @version $Revision: 234145 $
+ */
+class HTMLSmartyConverter extends Converter
+{
+ /**
+ * This converter knows about the new root tree processing
+ * In order to fix PEAR Bug #6389
+ * @var boolean
+ */
+ var $processSpecialRoots = true;
+ /**
+ * Smarty Converter wants elements sorted by type as well as alphabetically
+ * @see Converter::$sort_page_contents_by_type
+ * @var boolean
+ */
+ var $sort_page_contents_by_type = true;
+ /** @var string */
+ var $outputformat = 'HTML';
+ /** @var string */
+ var $name = 'Smarty';
+ /**
+ * indexes of elements by package that need to be generated
+ * @var array
+ */
+ var $leftindex = array('classes' => true, 'pages' => true, 'functions' => true, 'defines' => false, 'globals' => false);
+
+ /**
+ * output directory for the current procedural page being processed
+ * @var string
+ */
+ var $page_dir;
+
+ /**
+ * target directory passed on the command-line.
+ * {@link $targetDir} is malleable, always adding package/ and package/subpackage/ subdirectories onto it.
+ * @var string
+ */
+ var $base_dir;
+
+ /**
+ * output directory for the current class being processed
+ * @var string
+ */
+ var $class_dir;
+
+ /**
+ * array of converted package page names.
+ * Used to link to the package page in the left index
+ * @var array Format: array(package => 1)
+ */
+ var $package_pages = array();
+
+ /**
+ * controls formatting of parser informative output
+ *
+ * Converter prints:
+ * "Converting /path/to/file.php... Procedural Page Elements... Classes..."
+ * Since HTMLdefaultConverter outputs files while converting, it needs to send a \n to start a new line. However, if there
+ * is more than one class, output is messy, with multiple \n's just between class file output. This variable prevents that
+ * and is purely cosmetic
+ * @var boolean
+ */
+ var $juststarted = false;
+
+ /**
+ * contains all of the template procedural page element loop data needed for the current template
+ * @var array
+ */
+ var $current;
+
+ /**
+ * contains all of the template class element loop data needed for the current template
+ * @var array
+ */
+ var $currentclass;
+ var $wrote = false;
+ var $ric_set = array();
+
+ /**
+ * sets {@link $base_dir} to $targetDir
+ * @see Converter()
+ */
+
+ /**#@+
+ * @access private
+ */
+ var $_classleft_cache = false;
+ var $_classcontents_cache = false;
+ var $_pagecontents_cache = false;
+ var $_pageleft_cache = false;
+ var $_done_package_index = false;
+ var $_ric_done = false;
+ var $_wrote_tdir = false;
+ var $ric_contents = array();
+ /**#@-*/
+
+ function HTMLSmartyConverter(&$allp, &$packp, &$classes, &$procpages, $po, $pp, $qm, $targetDir, $templateDir, $title)
+ {
+ Converter::Converter($allp, $packp, $classes, $procpages,$po, $pp, $qm, $targetDir, $templateDir, $title);
+ $this->base_dir = $targetDir;
+ }
+
+ function writeSource($path, $value)
+ {
+ $templ = &$this->newSmarty();
+ $pathinfo = $this->proceduralpages->getPathInfo($path, $this);
+ $templ->assign('source',$value);
+ $templ->assign('package',$pathinfo['package']);
+ $templ->assign('subpackage',$pathinfo['subpackage']);
+ $templ->assign('name',$pathinfo['name']);
+ $templ->assign('source_loc',$pathinfo['source_loc']);
+ $templ->assign('docs',$pathinfo['docs']);
+ $templ->assign("subdir",'../');
+ $templ->register_outputfilter('HTMLSmarty_outputfilter');
+ $this->setTargetDir($this->getFileSourcePath($this->base_dir));
+ phpDocumentor_out("\n");
+ $this->setSourcePaths($path);
+ $this->writefile($this->getFileSourceName($path).'.html',$templ->fetch('filesource.tpl'));
+ }
+
+ function writeExample($title, $path, $source)
+ {
+ $templ = &$this->newSmarty();
+ $templ->assign('source',$source);
+ if (empty($title))
+ {
+ $title = 'example';
+ addWarning(PDERROR_EMPTY_EXAMPLE_TITLE, $path, $title);
+ }
+ $templ->assign('title',$title);
+ $templ->assign('file',$path);
+ $templ->assign("subdir",'../');
+ $templ->register_outputfilter('HTMLSmarty_outputfilter');
+ $this->setTargetDir($this->base_dir . PATH_DELIMITER . '__examplesource');
+ phpDocumentor_out("\n");
+ $this->writefile('exsource_'.$path.'.html',$templ->fetch('examplesource.tpl'));
+ }
+
+ function getExampleLink($path, $title)
+ {
+ return $this->returnLink('{$subdir}__examplesource' . PATH_DELIMITER . 'exsource_'.$path.'.html',$title);
+ }
+
+ function getSourceLink($path)
+ {
+ return $this->returnLink('{$subdir}__filesource/' .
+ $this->getFileSourceName($path).'.html','Source Code for this file');
+ }
+
+ /**
+ * Retrieve a Converter-specific anchor to a segment of a source code file
+ * parsed via a {@tutorial tags.filesource.pkg} tag.
+ * @param string full path to source file
+ * @param string name of anchor
+ * @param string link text, if this is a link
+ * @param boolean returns either a link or a destination based on this
+ * parameter
+ * @return string link to an anchor, or the anchor
+ */
+ function getSourceAnchor($sourcefile,$anchor,$text = '',$link = false)
+ {
+ if ($link) {
+ return $this->returnLink('{$subdir}__filesource/' .
+ $this->getFileSourceName($sourcefile) . '.html#a' . $anchor, $text);
+ } else {
+ return '<a name="a'.$anchor.'"></a>';
+ }
+ }
+
+ /**
+ * Return a line of highlighted source code with formatted line number
+ *
+ * If the $path is a full path, then an anchor to the line number will be
+ * added as well
+ * @param integer line number
+ * @param string highlighted source code line
+ * @param false|string full path to @filesource file this line is a part of,
+ * if this is a single line from a complete file.
+ * @return string formatted source code line with line number
+ */
+ function sourceLine($linenumber, $line, $path = false)
+ {
+ $extra = '';
+ if (strlen(str_replace("\n", '', $line)) == 0) {
+ $extra = '&nbsp;';
+ }
+ if ($path)
+ {
+ return '<li><div class="src-line">' . $this->getSourceAnchor($path, $linenumber) .
+ str_replace("\n",'',$line) . $extra .
+ "</div></li>\n";
+ } else
+ {
+ return '<li><div class="src-line">' . str_replace("\n",'',$line) . "$extra</div></li>\n";
+ }
+ }
+
+ /**
+ * Used to convert the <<code>> tag in a docblock
+ * @param string
+ * @param boolean
+ * @return string
+ */
+ function ProgramExample($example, $tutorial = false, $inlinesourceparse = null/*false*/,
+ $class = null/*false*/, $linenum = null/*false*/, $filesourcepath = null/*false*/)
+ {
+ $trans = $this->template_options['desctranslate'];
+ $this->template_options['desctranslate'] = array();
+ $example = '<ol>' . parent::ProgramExample($example, $tutorial, $inlinesourceparse, $class, $linenum, $filesourcepath)
+ .'</ol>';
+ $this->template_options['desctranslate'] = $trans;
+ if (!isset($this->template_options['desctranslate'])) return $example;
+ if (!isset($this->template_options['desctranslate']['code'])) return $example;
+ $example = $this->template_options['desctranslate']['code'] . $example;
+ if (!isset($this->template_options['desctranslate']['/code'])) return $example;
+ return $example . $this->template_options['desctranslate']['/code'];
+ }
+
+ /**
+ * @param string
+ */
+ function TutorialExample($example)
+ {
+ $trans = $this->template_options['desctranslate'];
+ $this->template_options['desctranslate'] = array();
+ $example = '<ol>' . parent::TutorialExample($example)
+ .'</ol>';
+ $this->template_options['desctranslate'] = $trans;
+ if (!isset($this->template_options['desctranslate'])) return $example;
+ if (!isset($this->template_options['desctranslate']['code'])) return $example;
+ $example = $this->template_options['desctranslate']['code'] . $example;
+ if (!isset($this->template_options['desctranslate']['/code'])) return $example;
+ return $example . $this->template_options['desctranslate']['/code'];
+ }
+
+ function getCurrentPageLink()
+ {
+ return $this->curname . '.html';
+ }
+
+ function unmangle($sourcecode)
+ {
+ $sourcecode = str_replace('&nbsp;',' ',$sourcecode);
+ $sourcecode = str_replace('&amp;','&',$sourcecode);
+ $sourcecode = str_replace('<br />',"<br>",$sourcecode);
+ $sourcecode = str_replace('<code>','<pre>',$sourcecode);
+ $sourcecode = str_replace('</code>','</pre>',$sourcecode);
+ $sourcecode = str_replace('&lt;','<',$sourcecode);
+ $sourcecode = str_replace('&gt;','>',$sourcecode);
+ return $sourcecode;
+ }
+
+ /**
+ * Uses htmlspecialchars() on the input
+ */
+ function postProcess($text)
+ {
+ if ($this->highlightingSource) {
+ return str_replace(array(' ',"\t"), array('&nbsp;', '&nbsp;&nbsp;&nbsp;'),
+ htmlspecialchars($text));
+ }
+ return htmlspecialchars($text);
+ }
+
+ /**
+ * Use the template tutorial_toc.tpl to generate a table of contents for HTML
+ * @return string table of contents formatted for use in the current output format
+ * @param array format: array(array('tagname' => section, 'link' => returnsee link, 'id' => anchor name, 'title' => from title tag),...)
+ */
+ function formatTutorialTOC($toc)
+ {
+ $template = &$this->newSmarty();
+ $template->assign('toc',$toc);
+ return $template->fetch('tutorial_toc.tpl');
+ }
+
+ function &SmartyInit(&$templ)
+ {
+ $this->makeLeft();
+ $templ->assign("ric",$this->ric_set);
+ $templ->assign("packageindex",$this->package_index);
+ $templ->assign('hastodos',count($this->todoList));
+ $templ->assign('todolink','todolist.html');
+ $templ->assign("subdir",'');
+ return $templ;
+ }
+
+ /**
+ * Writes out the template file of {@link $class_data} and unsets the template to save memory
+ * @see registerCurrentClass()
+ * @see parent::endClass()
+ */
+ function endClass()
+ {
+ $a = '../';
+ if (!empty($this->subpackage)) $a .= '../';
+ if ($this->juststarted)
+ {
+ $this->juststarted = false;
+ phpDocumentor_out("\n");
+ flush();
+ }
+ $this->setTargetDir($this->base_dir . PATH_DELIMITER . $this->class_dir);
+ $classleft = $this->getClassLeft();
+ $this->class_data->assign("compiledfileindex",$this->getPageLeft());
+ $this->class_data->assign("compiledclassindex",$classleft['class']);
+ $this->class_data->assign("compiledinterfaceindex",$classleft['interface']);
+ $this->class_data->assign("tutorials",$this->getTutorialList());
+ $this->class_data->assign("contents",$this->getClassContents());
+ $this->class_data->assign("packageindex",$this->package_index);
+ $this->class_data->assign("package",$this->package);
+ $this->class_data->assign("subdir",$a);
+ $this->class_data->register_outputfilter('HTMLSmarty_outputfilter');
+ $this->writefile($this->class . '.html',$this->class_data->fetch('class.tpl'));
+ unset($this->class_data);
+ }
+
+ function getTutorialList()
+ {
+ static $cache = false;
+ if ($cache)
+ {
+ if (isset($cache[$this->package])) return $cache[$this->package];
+ }
+ $package = $this->package;
+ if (!isset($this->tutorials[$package])) return false;
+ foreach($this->tutorials[$package] as $subpackage => $blah)
+ {
+ $subpackages[] = $subpackage;
+ }
+ $tutes = array();
+ foreach($subpackages as $subpackage)
+ {
+ if (isset($this->tutorial_tree) && is_array($this->tutorial_tree))
+ foreach($this->tutorial_tree as $root => $tr)
+ {
+ if ($tr['tutorial']->package == $package && $tr['tutorial']->subpackage == $subpackage)
+ $tutes[$tr['tutorial']->tutorial_type][] = $this->getTutorialTree($tr['tutorial']);
+ }
+ }
+ $cache[$this->package] = $tutes;
+ return $tutes;
+ }
+
+ function getTutorialTree($tutorial,$k = false)
+ {
+ $ret = '';
+ if (is_object($tutorial)) $tree = parent::getTutorialTree($tutorial); else $tree = $tutorial;
+ if (!$tree)
+ {
+ $template = &$this->newSmarty();
+ $template->assign('subtree',false);
+ $template->assign('name',str_replace('.','',$tutorial->name));
+ $template->assign('parent',false);
+ $template->assign('haskids',false);
+ $template->assign('kids','');
+ $link = new tutorialLink;
+ $t = $tutorial;
+ $link->addLink('',$t->path,$t->name,$t->package,$t->subpackage,$t->getTitle($this));
+ $main = array('link' => $this->getId($link), 'title' => $link->title);
+ $template->assign('main',$main);
+ return $template->fetch('tutorial_tree.tpl');
+ }
+ if (isset($tree['kids']))
+ {
+ foreach($tree['kids'] as $subtree)
+ {
+ $ret .= $this->getTutorialTree($subtree, true);
+ }
+ }
+ $template = &$this->newSmarty();
+ $template->assign('subtree',$k);
+ $template->assign('name',str_replace('.','',$tree['tutorial']->name));
+ $template->assign('parent',($k ? str_replace('.','',$tree['tutorial']->parent->name) : false));
+ $template->assign('haskids',strlen($ret));
+ $template->assign('kids',$ret);
+ $link = new tutorialLink;
+ $t = $tree['tutorial'];
+ $link->addLink('',$t->path,$t->name,$t->package,$t->subpackage,$t->getTitle($this));
+ $main = array('link' => $this->getId($link), 'title' => $link->title);
+ $template->assign('main',$main);
+ return $template->fetch('tutorial_tree.tpl');
+ }
+
+ function getClassLeft()
+ {
+ if ($this->_classleft_cache)
+ {
+ if (isset($this->_classleft_cache[$this->package][$this->subpackage])) return $this->_classleft_cache[$this->package][$this->subpackage];
+ }
+ $arr = $classarr = $interfacearr = array();
+ if (isset($this->left['#class'][$this->package]))
+ foreach($this->left['#class'][$this->package] as $subpackage => $pages)
+ {
+ for ($i = 0; $i < count($pages); $i++) {
+ if ($pages[$i]['is_interface']) {
+ $interfacearr[$subpackage][] = $pages[$i];
+ } else {
+ $classarr[$subpackage][] = $pages[$i];
+ }
+ }
+ }
+ $templ = &$this->newSmarty();
+ $templ->assign('classleftindex',$classarr);
+ $classarr = $templ->fetch('classleft.tpl');
+ $this->_classleft_cache[$this->package][$this->subpackage]['class'] = $classarr;
+ $templ = &$this->newSmarty();
+ $templ->assign('classleftindex',$interfacearr);
+ $interfacearr = $templ->fetch('classleft.tpl');
+ $this->_classleft_cache[$this->package][$this->subpackage]['interface'] =
+ $interfacearr;
+ return $this->_classleft_cache[$this->package][$this->subpackage];
+ }
+
+ function getClassContents()
+ {
+ if ($this->_classcontents_cache)
+ {
+ if (isset($this->_classcontents_cache[$this->package][$this->subpackage][$this->class])) return $this->_classcontents_cache[$this->package][$this->subpackage][$this->class];
+ }
+ $arr = array();
+ foreach($this->class_contents[$this->package][$this->subpackage][$this->class] as $i => $link)
+ {
+ if (is_object($link))
+ $arr[$link->type][] = $this->returnSee($link,$link->name);
+ }
+ $this->_classcontents_cache[$this->package][$this->subpackage][$this->class] = $arr;
+ return $arr;
+ }
+
+ function getPageContents()
+ {
+ if (!isset($this->path)) $this->path = '#####';
+ if ($this->_pagecontents_cache)
+ {
+ if (isset($this->_pagecontents_cache[$this->package][$this->subpackage][$this->path])) return $this->_pagecontents_cache[$this->package][$this->subpackage][$this->path];
+ }
+ $arr = array();
+ foreach($this->page_contents[$this->curpage->package][$this->curpage->subpackage] as $i => $link)
+ {
+ if (is_object($link))
+ $arr[$link->type][$i] = $this->returnSee($link);
+ }
+ $this->_pagecontents_cache[$this->package][$this->subpackage][$this->path] = $arr;
+ return $arr;
+ }
+
+ function getPageLeft()
+ {
+ if ($this->_pageleft_cache)
+ {
+ if (isset($this->_pageleft_cache[$this->package][$this->subpackage])) return $this->_pageleft_cache[$this->package][$this->subpackage];
+ }
+ $arr = array();
+ if (isset($this->left[$this->package]))
+ foreach($this->left[$this->package] as $subpackage => $pages)
+ {
+ $arr[$subpackage] = $pages;
+ }
+ $templ = &$this->newSmarty();
+ $templ->assign('fileleftindex',$arr);
+ $arr = $templ->fetch('fileleft.tpl');
+ $this->_pageleft_cache[$this->package][$this->subpackage] = $arr;
+ return $arr;
+ }
+
+ /**
+ * Writes out the template file of {@link $page_data} and unsets the template to save memory
+ * @see registerCurrent()
+ * @see parent::endPage()
+ */
+ function endPage()
+ {
+ $this->package = $this->curpage->package;
+ $this->subpackage = $this->curpage->subpackage;
+ $a = '../';
+ if (!empty($this->subpackage)) $a .= '../';
+ $classleft = $this->getClassLeft();
+ $this->setTargetDir($this->base_dir . PATH_DELIMITER . $this->page_dir);
+ $this->page_data->assign("contents",$this->getPageContents());
+ $this->page_data->assign("compiledfileindex",$this->getPageLeft());
+ $this->page_data->assign("compiledclassindex",$classleft['class']);
+ $this->page_data->assign("compiledinterfaceindex",$classleft['interface']);
+ $this->page_data->assign("tutorials",$this->getTutorialList());
+ $this->page_data->assign("packageindex",$this->package_index);
+ $this->page_data->assign("package",$this->package);
+ $this->page_data->assign("subdir",$a);
+ $this->page_data->register_outputfilter('HTMLSmarty_outputfilter');
+ $this->writefile($this->page . '.html',$this->page_data->fetch('page.tpl'));
+ unset($this->page_data);
+ }
+
+ /**
+ * @param string
+ * @param string
+ * @return string &lt;a href="'.$link.'">'.$text.'</a&gt;
+ */
+ function returnLink($link,$text)
+ {
+ return '<a href="'.$link.'">'.$text.'</a>';
+ }
+
+ function makeLeft()
+ {
+ if ($this->_done_package_index) return;
+ $this->_done_package_index = true;
+ if (!isset($this->package_index))
+ foreach($this->all_packages as $key => $val)
+ {
+ if (isset($this->pkg_elements[$key]))
+ {
+ if (!isset($start)) $start = $key;
+ $this->package_index[] = array('link' => "li_$key.html", 'title' => $key);
+ }
+ }
+ foreach($this->page_elements as $package => $o1)
+ {
+ foreach($o1 as $subpackage => $links)
+ {
+ for($i=0;$i<count($links);$i++)
+ {
+ $this->left[$package][$subpackage][] =
+ array("link" => $this->getId($links[$i]), "title" => $links[$i]->name);
+ }
+ }
+ }
+ foreach($this->class_elements as $package => $o1)
+ {
+ foreach($o1 as $subpackage => $links)
+ {
+ for($i=0;$i<count($links);$i++)
+ {
+ $isinterface = false;
+ if ($links[$i]->type == 'class') {
+ $class = $this->classes->getClass($links[$i]->name,
+ $links[$i]->path);
+ if ($class) {
+ $isinterface = $class->isInterface();
+ }
+ }
+ $this->left['#class'][$package][$subpackage][] =
+ array("link" => $this->getId($links[$i]), "title" => $links[$i]->name, 'is_interface' => $isinterface);
+ }
+ }
+ }
+ }
+
+ /**
+ * HTMLdefaultConverter chooses to format both package indexes and the complete index here
+ *
+ * This function formats output for the elementindex.html and pkgelementindex.html template files. It then
+ * writes them to the target directory
+ * @see generateElementIndex(), generatePkgElementIndex()
+ */
+ function formatPkgIndex()
+ {
+ list($package_indexes,$packages,$mletters) = $this->generatePkgElementIndexes();
+ for($i=0;$i<count($package_indexes);$i++)
+ {
+ $template = &$this->newSmarty();
+ $this->package = $package_indexes[$i]['package'];
+ $this->subpackage = '';
+ $classleft = $this->getClassLeft();
+ $template->assign("compiledfileindex",$this->getPageLeft());
+ $template->assign("compiledclassindex",$classleft['class']);
+ $template->assign("compiledinterfaceindex",$classleft['interface']);
+ $template->assign("tutorials",$this->getTutorialList());
+ $template->assign("index",$package_indexes[$i]['pindex']);
+ $template->assign("package",$package_indexes[$i]['package']);
+ $template->assign("letters",$mletters[$package_indexes[$i]['package']]);
+ $template->assign("title","Package ".$package_indexes[$i]['package']." Element Index");
+ $template->assign("date",date("r",time()));
+ $template->register_outputfilter('HTMLSmarty_outputfilter');
+ $this->setTargetDir($this->base_dir);
+ $this->writefile('elementindex_'.$package_indexes[$i]['package'].'.html',$template->fetch('pkgelementindex.tpl'));
+ }
+ phpDocumentor_out("\n");
+ flush();
+ }
+
+ /**
+ * HTMLdefaultConverter uses this function to format template index.html and packages.html
+ *
+ * This function generates the package list from {@link $all_packages}, eliminating any
+ * packages that don't have any entries in their package index (no files at all, due to @ignore
+ * or other factors). Then it uses the default package name as the first package index to display.
+ * It sets the right pane to be either a blank file with instructions on making package-level docs,
+ * or the package-level docs for the default package.
+ * @global string Used to set the starting package to display
+ */
+ function formatIndex()
+ {
+ global $phpDocumentor_DefaultPackageName;
+ if (!isset($this->package_index))
+ {
+ debug("\nERROR: Nothing parsed, check the command-line");
+ die();
+ }
+ list($elindex,$mletters) = $this->generateElementIndex();
+ $template = &$this->newSmarty();
+ $template->assign("index",$elindex);
+ $template->assign("letters",$mletters);
+ $template->assign("title","Element Index");
+ $template->assign("package", false);
+ $template->assign("date",date("r",time()));
+ phpDocumentor_out("\n");
+ flush();
+ $this->setTargetDir($this->base_dir);
+ $template->register_outputfilter('HTMLSmarty_outputfilter');
+ $this->writefile('elementindex.html',$template->fetch('elementindex.tpl'));
+ usort($this->package_index,"HTMLSmarty_pindexcmp");
+ $index = &$this->newSmarty();
+ foreach($this->all_packages as $key => $val)
+ {
+ if (isset($this->pkg_elements[$key]))
+ {
+ if (!isset($start)) $start = $key;
+ if (!isset($this->package_pages[$key])) $this->writeNewPPage($key);
+ }
+ }
+ // Created index.html
+ $start = $phpDocumentor_DefaultPackageName;
+ if (!isset($this->pkg_elements[$key]))
+ {
+ // if there are no elements, use a random package as the default
+ $a = array_keys($this->pkg_elements);
+ $start = array_shift($a);
+ }
+ $this->package = $start;
+ $this->subpackage = '';
+ $classleft = $this->getClassLeft();
+ $index->assign("compiledfileindex",$this->getPageLeft());
+ $index->assign("compiledclassindex",$classleft['class']);
+ $index->assign("compiledinterfaceindex",$classleft['interface']);
+ $index->assign('hastodos',count($this->todoList));
+ $index->assign('todolink','todolist.html');
+ $index->assign("tutorials",$this->getTutorialList());
+ $index->assign("date",date("r",time()));
+ $index->assign("package",$this->package);
+ $index->assign("title",$this->title);
+ $index->assign("start","li_$start.html");
+ if (isset($this->package_pages[$start]))
+ {
+ $index->assign("contents",$this->package_pages[$start]);
+ }
+ $index->register_outputfilter('HTMLSmarty_outputfilter');
+ phpDocumentor_out("\n");
+ flush();
+ $this->setTargetDir($this->base_dir);
+ $this->writefile("index.html",$index->fetch('index.tpl'));
+ unset($index);
+
+ }
+
+ function writeNewPPage($key)
+ {
+ $template = &$this->newSmarty();
+ $this->package = $key;
+ $this->subpackage = '';
+ $classleft = $this->getClassLeft();
+ $template->assign("compiledfileindex",$this->getPageLeft());
+ $template->assign("compiledclassindex",$classleft['class']);
+ $template->assign("compiledinterfaceindex",$classleft['interface']);
+ $template->assign("tutorials",$this->getTutorialList());
+ $template->assign("date",date("r",time()));
+ $template->assign("title",$this->title);
+ $template->assign("package",$key);
+ $template->register_outputfilter('HTMLSmarty_outputfilter');
+ phpDocumentor_out("\n");
+ flush();
+ $this->setTargetDir($this->base_dir);
+ $this->writefile("li_$key.html",$template->fetch('index.tpl'));
+ unset($template);
+ }
+
+ /**
+ * Generate indexes for li_package.html and classtree output files
+ *
+ * This function generates the li_package.html files from the template file left.html. It does this by
+ * iterating through each of the $page_elements, $class_elements and $function_elements arrays to retrieve
+ * the pre-sorted {@link abstractLink} descendants needed for index generation. Conversion of these links to
+ * text is done by {@link returnSee()}.
+ *
+ * Then it uses {@link generateFormattedClassTrees()} to create class trees from the template file classtrees.html. Output
+ * filename is classtrees_packagename.html. This function also unsets {@link $elements} and {@link $pkg_elements} to free
+ * up the considerable memory these two class vars use
+ * @see $page_elements, $class_elements, $function_elements
+ */
+ function formatLeftIndex()
+ {
+ phpDocumentor_out("\n");
+ flush();
+ $this->setTargetDir($this->base_dir);
+ if (!isset($this->left))
+ {
+ debug("Nothing parsed, check the command-line");
+ die();
+ }
+ foreach($this->all_packages as $package => $rest)
+ {
+ if (!isset($this->pkg_elements[$package])) continue;
+ // Create class tree page
+ $template = &$this->newSmarty();
+ $classleft = $this->getClassLeft();
+ $template->assign("compiledfileindex",$this->getPageLeft());
+ $template->assign("compiledclassindex",$classleft['class']);
+ $template->assign("compiledinterfaceindex",$classleft['interface']);
+ $template->assign("classtrees",$this->generateFormattedClassTrees($package));
+ $template->assign("interfaces",$this->generateFormattedInterfaceTrees($package));
+ $template->assign("package",$package);
+ $template->assign("date",date("r",time()));
+ $template->assign("title","Class Trees for Package $package");
+ $template->register_outputfilter('HTMLSmarty_outputfilter');
+ $this->writefile("classtrees_$package.html",$template->fetch('classtrees.tpl'));
+ phpDocumentor_out("\n");
+ flush();
+ }
+ $this->writeRIC();
+ // free up considerable memory
+ unset($this->elements);
+ unset($this->pkg_elements);
+ }
+
+
+ /**
+ * This function takes an {@link abstractLink} descendant and returns an html link
+ *
+ * @param abstractLink a descendant of abstractlink should be passed, and never text
+ * @param string text to display in the link
+ * @param boolean this parameter is not used, and is deprecated
+ * @param boolean determines whether the returned text is enclosed in an &lt;a> tag
+ */
+ function returnSee(&$element, $eltext = false, $with_a = true)
+ {
+ if (!is_object($element) || !$element) return false;
+ if (!$with_a) return $this->getId($element, false);
+ if (!$eltext)
+ {
+ $eltext = '';
+ switch($element->type)
+ {
+ case 'tutorial' :
+ $eltext = strip_tags($element->title);
+ break;
+ case 'method' :
+ case 'var' :
+ case 'const' :
+ $eltext .= $element->class.'::';
+ case 'page' :
+ case 'define' :
+ case 'class' :
+ case 'function' :
+ case 'global' :
+ default :
+ $eltext .= $element->name;
+ if ($element->type == 'function' || $element->type == 'method') $eltext .= '()';
+ break;
+ }
+ }
+ return '<a href="'.$this->getId($element).'">'.$eltext.'</a>';
+ }
+
+ function getId($element, $fullpath = true)
+ {
+ if (phpDocumentor_get_class($element) == 'parserdata')
+ {
+ $element = $this->addLink($element->parent);
+ $elp = $element->parent;
+ } elseif (is_a($element, 'parserbase'))
+ {
+ $elp = $element;
+ $element = $this->addLink($element);
+ }
+ $c = '';
+ if (!empty($element->subpackage))
+ {
+ $c = '/'.$element->subpackage;
+ }
+ $b = '{$subdir}';
+ switch ($element->type)
+ {
+ case 'page' :
+ if ($fullpath)
+ return $b.$element->package.$c.'/'.$element->fileAlias.'.html';
+ return 'top';
+ break;
+ case 'define' :
+ case 'global' :
+ case 'function' :
+ if ($fullpath)
+ return $b.$element->package.$c.'/'.$element->fileAlias.'.html#'.$element->type.$element->name;
+ return $element->type.$element->name;
+ break;
+ case 'class' :
+ if ($fullpath)
+ return $b.$element->package.$c.'/'.$element->name.'.html';
+ return 'top';
+ break;
+ case 'method' :
+ case 'var' :
+ case 'const' :
+ if ($fullpath)
+ return $b.$element->package.$c.'/'.$element->class.'.html#'.$element->type.$element->name;
+ return $element->type.$element->name;
+ break;
+ case 'tutorial' :
+ $d = '';
+ if ($element->section)
+ {
+ $d = '#'.$element->section;
+ }
+ return $b.$element->package.$c.'/tutorial_'.$element->name.'.html'.$d;
+ }
+ }
+
+ /**
+ * Convert README/INSTALL/CHANGELOG file contents to output format
+ * @param README|INSTALL|CHANGELOG
+ * @param string contents of the file
+ */
+ function Convert_RIC($name, $contents)
+ {
+ $this->ric_contents[$name] = $contents;
+ $this->ric_set[] = array('file' => 'ric_'.$name . '.html','name' => $name);
+ }
+
+ function writeRIC()
+ {
+ if ($this->_ric_done) return;
+ $this->_ric_done = true;
+ foreach($this->ric_contents as $name => $contents)
+ {
+ $template = &$this->newSmarty();
+ $template->assign('contents',$contents);
+ $template->assign('name',$name);
+ $template->assign('title',$name);
+ $this->setTargetDir($this->base_dir);
+ $this->writefile('ric_'.$name . '.html',$template->fetch('ric.tpl'));
+ }
+ }
+
+ function ConvertTodoList()
+ {
+ $todolist = array();
+ foreach($this->todoList as $package => $alltodos)
+ {
+ foreach($alltodos as $todos)
+ {
+ $converted = array();
+ $converted['link'] = $this->returnSee($todos[0]);
+ if (!is_array($todos[1]))
+ {
+ $converted['todos'][] = $todos[1]->Convert($this);
+ } else
+ {
+ foreach($todos[1] as $todo)
+ {
+ $converted['todos'][] = $todo->Convert($this);
+ }
+ }
+ $todolist[$package][] = $converted;
+ }
+ }
+ $templ = &$this->newSmarty();
+ $templ->assign('todos',$todolist);
+ $templ->register_outputfilter('HTMLSmarty_outputfilter');
+ $this->setTargetDir($this->base_dir);
+ $this->writefile('todolist.html',$templ->fetch('todolist.tpl'));
+ }
+
+ /**
+ * Create errors.html template file output
+ *
+ * This method takes all parsing errors and warnings and spits them out ordered by file and line number.
+ * @global ErrorTracker We'll be using it's output facility
+ */
+ function ConvertErrorLog()
+ {
+ global $phpDocumentor_errors;
+ $allfiles = array();
+ $files = array();
+ $warnings = $phpDocumentor_errors->returnWarnings();
+ $errors = $phpDocumentor_errors->returnErrors();
+ $template = &$this->newSmarty();
+ foreach($warnings as $warning)
+ {
+ $file = '##none';
+ $linenum = 'Warning';
+ if ($warning->file)
+ {
+ $file = $warning->file;
+ $allfiles[$file] = 1;
+ $linenum .= ' on line '.$warning->linenum;
+ }
+ $files[$file]['warnings'][] = array('name' => $linenum, 'listing' => $warning->data);
+ }
+ foreach($errors as $error)
+ {
+ $file = '##none';
+ $linenum = 'Error';
+ if ($error->file)
+ {
+ $file = $error->file;
+ $allfiles[$file] = 1;
+ $linenum .= ' on line '.$error->linenum;
+ }
+ $files[$file]['errors'][] = array('name' => $linenum, 'listing' => $error->data);
+ }
+ $i=1;
+ $af = array();
+ foreach($allfiles as $file => $num)
+ {
+ $af[$i++] = $file;
+ }
+ $allfiles = $af;
+ usort($allfiles,'strnatcasecmp');
+ $allfiles[0] = "Post-parsing";
+ foreach($allfiles as $i => $a)
+ {
+ $allfiles[$i] = array('file' => $a);
+ }
+ $out = array();
+ foreach($files as $file => $data)
+ {
+ if ($file == '##none') $file = 'Post-parsing';
+ $out[$file] = $data;
+ }
+ $template->assign("files",$allfiles);
+ $template->assign("all",$out);
+ $template->assign("title","phpDocumentor Parser Errors and Warnings");
+ $template->register_outputfilter('HTMLSmarty_outputfilter');
+ $this->setTargetDir($this->base_dir);
+ $this->writefile("errors.html",$template->fetch('errors.tpl'));
+ unset($template);
+ phpDocumentor_out("\n\nTo view errors and warnings, look at ".$this->base_dir. PATH_DELIMITER . "errors.html\n");
+ flush();
+ }
+
+ function getCData($value)
+ {
+ return '<pre>'.htmlentities($value).'</pre>';
+ }
+
+ function getTutorialId($package,$subpackage,$tutorial,$id)
+ {
+ return $id;
+ }
+
+ /**
+ * Converts package page and sets its package as used in {@link $package_pages}
+ * @param parserPackagePage
+ */
+ function convertPackagepage(&$element)
+ {
+ phpDocumentor_out("\n");
+ flush();
+ $template = &$this->newSmarty();
+ $this->package = $element->package;
+ $this->subpackage = '';
+ $classleft = $this->getClassLeft();
+ $template->assign("compiledfileindex",$this->getPageLeft());
+ $template->assign("compiledclassindex",$classleft['class']);
+ $template->assign("compiledinterfaceindex",$classleft['interface']);
+ $template->assign("tutorials",$this->getTutorialList());
+ $template->assign("date",date("r",time()));
+ $template->assign("title",$this->title);
+ $template->assign("package",$element->package);
+ $x = $element->Convert($this);
+ $x = substr($x,strpos($x,'<body'));
+ $template->assign("contents",trim(substr($x,strpos($x,'>') + 1)));
+ $this->package_pages[$element->package] = trim(substr($x,strpos($x,'>') + 1));
+ $template->register_outputfilter('HTMLSmarty_outputfilter');
+ phpDocumentor_out("\n");
+ flush();
+ $this->setTargetDir($this->base_dir);
+ $this->writefile("li_".$element->package.".html",$template->fetch('index.tpl'));
+ unset($template);
+ }
+
+ /**
+ * @param parserTutorial
+ */
+ function convertTutorial(&$element)
+ {
+ phpDocumentor_out("\n");
+ flush();
+ $template = &parent::convertTutorial($element);
+ $this->package = $element->package;
+ $this->subpackage = $element->subpackage;
+ $classleft = $this->getClassLeft();
+ $template->assign("compiledfileindex",$this->getPageLeft());
+ $template->assign("compiledclassindex",$classleft['class']);
+ $template->assign("compiledinterfaceindex",$classleft['interface']);
+ $template->assign("tutorials",$this->getTutorialList());
+ $template->assign("title",strip_tags($element->getTitle($this)));
+ $contents = $element->Convert($this);
+ if ($element->name == $this->package . '.pkg')
+ {
+ $this->package_pages[$element->package] = $contents;
+ }
+ $a = '../';
+ if (!empty($element->subpackage)) $a .= $a;
+ $template->assign("subdir",$a);
+ $a = '';
+ if ($element->subpackage) $a = PATH_DELIMITER . $element->subpackage;
+ $template->register_outputfilter('HTMLSmarty_outputfilter');
+ $this->setTargetDir($this->base_dir . PATH_DELIMITER . $element->package . $a);
+ $this->writeFile('tutorial_'.$element->name.'.html',$template->fetch('tutorial.tpl'));
+ if ($element->name == $element->package . '.pkg')
+ {
+ phpDocumentor_out("\n");
+ flush();
+ // package-level docs
+ $this->setTargetDir($this->base_dir);
+ $template->assign("subdir",'');
+ $this->writeFile('li_'.$element->package.'.html',$template->fetch('tutorial.tpl'));
+ }
+ unset($template);
+ }
+
+ /**
+ * Converts class for template output
+ * @see prepareDocBlock(), generateChildClassList(), generateFormattedClassTree(), getFormattedConflicts()
+ * @see getFormattedInheritedMethods(), getFormattedInheritedVars()
+ * @param parserClass
+ */
+ function convertClass(&$element)
+ {
+ parent::convertClass($element);
+ $this->class_dir = $element->docblock->package;
+ if (!empty($element->docblock->subpackage)) $this->class_dir .= PATH_DELIMITER . $element->docblock->subpackage;
+ $a = '../classtrees_';
+ if ($element->docblock->subpackage != '') $a = "../$a";
+
+ $this->class_data->assign('subdir',$a);
+ $this->class_data->assign("title","Docs For Class " . $element->getName());
+ $this->class_data->assign("page",$element->getName() . '.html');
+ }
+
+ /**
+ * Converts class variables for template output
+ * @see prepareDocBlock(), getFormattedConflicts()
+ * @param parserDefine
+ */
+ function convertVar(&$element)
+ {
+ parent::convertVar($element, array('var_dest' => $this->getId($element,false)));
+ }
+
+ /**
+ * Converts class variables for template output
+ * @see prepareDocBlock(), getFormattedConflicts()
+ * @param parserDefine
+ */
+ function convertConst(&$element)
+ {
+ parent::convertConst($element, array('const_dest' => $this->getId($element,false)));
+ }
+
+ /**
+ * Converts class methods for template output
+ * @see prepareDocBlock(), getFormattedConflicts()
+ * @param parserDefine
+ */
+ function convertMethod(&$element)
+ {
+ parent::convertMethod($element, array('method_dest' => $this->getId($element,false)));
+ }
+
+ /**
+ * Converts function for template output
+ * @see prepareDocBlock(), parserFunction::getFunctionCall(), getFormattedConflicts()
+ * @param parserFunction
+ */
+ function convertFunction(&$element)
+ {
+ $funcloc = $this->getId($this->addLink($element));
+ parent::convertFunction($element,array('function_dest' => $this->getId($element,false)));
+ }
+
+ /**
+ * Converts include elements for template output
+ * @see prepareDocBlock()
+ * @param parserInclude
+ */
+ function convertInclude(&$element)
+ {
+ parent::convertInclude($element, array('include_file' => '_'.strtr($element->getValue(),array('"' => '', "'" => '','.' => '_'))));
+ }
+
+ /**
+ * Converts defines for template output
+ * @see prepareDocBlock(), getFormattedConflicts()
+ * @param parserDefine
+ */
+ function convertDefine(&$element)
+ {
+ parent::convertDefine($element, array('define_link' => $this->getId($element,false)));
+ }
+
+ /**
+ * Converts global variables for template output
+ * @param parserGlobal
+ * @see prepareDocBlock(), getFormattedConflicts()
+ */
+ function convertGlobal(&$element)
+ {
+ parent::convertGlobal($element, array('global_link' => $this->getId($element,false)));
+ }
+
+ /**
+ * converts procedural pages for template output
+ * @see prepareDocBlock(), getClassesOnPage()
+ * @param parserData
+ */
+ function convertPage(&$element)
+ {
+ parent::convertPage($element);
+ $this->juststarted = true;
+ $this->page_dir = $element->parent->package;
+ if (!empty($element->parent->subpackage)) $this->page_dir .= PATH_DELIMITER . $element->parent->subpackage;
+ // registering stuff on the template
+ $a = '../';
+ if (!empty($element->docblock->subpackage)) $a = $a . $a;
+ $this->page_data->assign('subdir',$a);
+ $this->page_data->assign("page",$this->getPageName($element) . '.html');
+ $this->page_data->assign("title","Docs for page ".$element->parent->getFile());
+ }
+
+ function getPageName(&$element)
+ {
+ if (phpDocumentor_get_class($element) == 'parserpage') return '_'.$element->getName();
+ return '_'.$element->parent->getName();
+ }
+
+ /**
+ * returns an array containing the class inheritance tree from the root object to the class
+ *
+ * @param parserClass class variable
+ * @return array Format: array(root,child,child,child,...,$class)
+ * @uses parserClass::getParentClassTree()
+ */
+
+ function generateFormattedClassTree($class)
+ {
+ $tree = $class->getParentClassTree($this);
+ $out = '';
+ if (count($tree) - 1)
+ {
+ $result = array($class->getName());
+ $parent = $tree[$class->getName()];
+ $distance[] = '';
+ while ($parent)
+ {
+ $x = $parent;
+ if (is_object($parent))
+ {
+ $subpackage = $parent->docblock->subpackage;
+ $package = $parent->docblock->package;
+ $x = $parent;
+ $x = $parent->getLink($this);
+ if (!$x) $x = $parent->getName();
+ }
+ $result[] =
+ $x;
+ $distance[] =
+ "\n%s|\n" .
+ "%s--";
+ if (is_object($parent))
+ $parent = $tree[$parent->getName()];
+ elseif (isset($tree[$parent]))
+ $parent = $tree[$parent];
+ }
+ $nbsp = ' ';
+ for($i=count($result) - 1;$i>=0;$i--)
+ {
+ $my_nbsp = '';
+ for($j=0;$j<count($result) - $i;$j++) $my_nbsp .= $nbsp;
+ $distance[$i] = sprintf($distance[$i],$my_nbsp,$my_nbsp);
+ }
+ return array('classes'=>array_reverse($result),'distance'=>array_reverse($distance));
+ } else
+ {
+ return array('classes'=>$class->getName(),'distance'=>array(''));
+ }
+ }
+
+ /** @access private */
+ function sortVar($a, $b)
+ {
+ return strnatcasecmp($a->getName(),$b->getName());
+ }
+
+ /** @access private */
+ function sortMethod($a, $b)
+ {
+ if ($a->isConstructor) return -1;
+ if ($b->isConstructor) return 1;
+ return strnatcasecmp($a->getName(),$b->getName());
+ }
+
+ /**
+ * returns a template-enabled array of class trees
+ *
+ * @param string $package package to generate a class tree for
+ * @see $roots, HTMLConverter::getRootTree()
+ */
+ function generateFormattedClassTrees($package)
+ {
+ if (!isset($this->roots['normal'][$package]) &&
+ !isset($this->roots['special'][$package])) {
+ return array();
+ }
+ $trees = array();
+ if (isset($this->roots['normal'][$package])) {
+ $roots = $this->roots['normal'][$package];
+ for($i=0;$i<count($roots);$i++)
+ {
+ $root = $this->classes->getClassByPackage($roots[$i], $package);
+ if ($root && $root->isInterface()) {
+ continue;
+ }
+ $trees[] = array('class' => $roots[$i],'class_tree' => "<ul>\n".$this->getRootTree($this->getSortedClassTreeFromClass($roots[$i],$package,''),$package)."</ul>\n");
+ }
+ }
+ if (isset($this->roots['special'][$package])) {
+ $roots = $this->roots['special'][$package];
+ foreach ($roots as $parent => $classes) {
+ $thistree = '';
+ foreach ($classes as $classinfo) {
+ $root = $this->classes->getClassByPackage($classinfo, $package);
+ if ($root && $root->isInterface()) {
+ continue;
+ }
+ $thistree .=
+ $this->getRootTree(
+ $this->getSortedClassTreeFromClass(
+ $classinfo,
+ $package,
+ ''),
+ $package,
+ true);
+ }
+ if (!$thistree) {
+ continue;
+ }
+ $trees[] = array(
+ 'class' => $parent,
+ 'class_tree' => "<ul>\n" . $thistree . "</ul>\n"
+ );
+ }
+ }
+ return $trees;
+ }
+
+ /**
+ * returns a template-enabled array of interface inheritance trees
+ *
+ * @param string $package package to generate a class tree for
+ * @see $roots, HTMLConverter::getRootTree()
+ */
+ function generateFormattedInterfaceTrees($package)
+ {
+ if (!isset($this->roots['normal'][$package]) &&
+ !isset($this->roots['special'][$package])) {
+ return array();
+ }
+ $trees = array();
+ if (isset($this->roots['normal'][$package])) {
+ $roots = $this->roots['normal'][$package];
+ for($i=0;$i<count($roots);$i++)
+ {
+ $root = $this->classes->getClassByPackage($roots[$i], $package);
+ if ($root && !$root->isInterface()) {
+ continue;
+ }
+ $trees[] = array('class' => $roots[$i],'class_tree' => "<ul>\n".$this->getRootTree($this->getSortedClassTreeFromClass($roots[$i],$package,''),$package)."</ul>\n");
+ }
+ }
+ if (isset($this->roots['special'][$package])) {
+ $roots = $this->roots['special'][$package];
+ foreach ($roots as $parent => $classes) {
+ $thistree = '';
+ foreach ($classes as $classinfo) {
+ $root = $this->classes->getClassByPackage($classinfo, $package);
+ if ($root && !$root->isInterface()) {
+ continue;
+ }
+ $thistree .=
+ $this->getRootTree(
+ $this->getSortedClassTreeFromClass(
+ $classinfo,
+ $package,
+ ''),
+ $package,
+ true);
+ }
+ if (!$thistree) {
+ continue;
+ }
+ $trees[] = array(
+ 'class' => $parent,
+ 'class_tree' => "<ul>\n" . $thistree . "</ul>\n"
+ );
+ }
+ }
+ return $trees;
+ }
+
+ /**
+ * return formatted class tree for the Class Trees page
+ *
+ * @param array $tree output from {@link getSortedClassTreeFromClass()}
+ * @param string $package package
+ * @param boolean $nounknownparent if true, an object's parent will not be checked
+ * @see Classes::$definitechild, generateFormattedClassTrees()
+ * @return string
+ */
+ function getRootTree($tree, $package, $noparent = false)
+ {
+ if (!$tree) return '';
+ $my_tree = '';
+ $cur = '#root';
+ $lastcur = array(false);
+ $kids = array();
+ $dopar = false;
+ if (!$noparent && $tree[$cur]['parent'])
+ {
+ $dopar = true;
+ if (!is_object($tree[$cur]['parent']))
+ {
+// debug("parent ".$tree[$cur]['parent']." not found");
+ $my_tree .= '<li>' . $tree[$cur]['parent'] .'<ul>';
+ }
+ else
+ {
+// debug("parent ".$this->returnSee($tree[$cur]['parent'])." in other package");
+ $root = $this->classes->getClassByPackage($tree[$cur]['parent']->name,
+ $package);
+ $my_tree .= '<li>' . $this->returnSee($tree[$cur]['parent']);
+ if ($tree[$cur]['parent']->package != $package) $my_tree .= ' <b>(Different package)</b><ul>';
+ }
+ }
+ do
+ {
+// fancy_debug($cur,$lastcur,$kids);
+ if (count($tree[$cur]['children']))
+ {
+// debug("$cur has children");
+ if (!isset($kids[$cur]))
+ {
+// debug("set $cur kids");
+ $kids[$cur] = 1;
+ $root = $this->classes->getClassByPackage(
+ $tree[$cur]['link']->name,
+ $tree[$cur]['link']->package);
+ if ($implements = $root->getImplements()) {
+ $my_tree .= '<li>'.$this->returnSee($tree[$cur]['link']) .
+ ' (implements ';
+ foreach ($implements as $i => $interface) {
+ if ($i && $i != count($implements) - 1) $my_tree .= ', ';
+ if ($link = $this->getLink('object ' . $interface)) {
+ $my_tree .= $this->returnSee($link);
+ } else {
+ $my_tree .= $interface;
+ }
+ }
+ $my_tree .= ')';
+ } else {
+ $my_tree .= '<li>'.$this->returnSee($tree[$cur]['link']);
+ }
+ $my_tree .= '<ul>'."\n";
+ }
+ array_push($lastcur,$cur);
+ list(,$cur) = each($tree[$cur]['children']);
+// var_dump('listed',$cur);
+ if ($cur)
+ {
+ $cur = $cur['package'] . '#' . $cur['class'];
+// debug("set cur to child $cur");
+// $my_tree .= '<li>'.$this->returnSee($tree[$cur]['link']);
+ continue;
+ } else
+ {
+// debug("end of children for $cur");
+ $cur = array_pop($lastcur);
+ $cur = array_pop($lastcur);
+ $my_tree .= '</ul></li>'."\n";
+ if ($dopar && ($cur == '#root' || !$cur)) $my_tree .= '</ul></li>';
+ }
+ } else
+ {
+// debug("$cur has no children");
+ $my_tree .= '<li>'.$this->returnSee($tree[$cur]['link'])."</li>";
+ if ($dopar && $cur == '#root') $my_tree .= '</ul></li>';
+ $cur = array_pop($lastcur);
+ }
+ } while ($cur);
+ return $my_tree;
+ }
+
+ /**
+ * Generate indexing information for given element
+ *
+ * @param parserElement descendant of parserElement
+ * @see generateElementIndex()
+ * @return array
+ */
+ function getIndexInformation($elt)
+ {
+ $Result['type'] = $elt->type;
+ $Result['file_name'] = $elt->file;
+ $Result['path'] = $elt->getPath();
+
+ if (isset($elt->docblock))
+ {
+ $Result['description'] = $elt->docblock->getSDesc($this);
+
+ if ($elt->docblock->hasaccess)
+ $Result['access'] = $elt->docblock->tags['access'][0]->value;
+ else
+ $Result['access'] = 'public';
+
+ $Result['abstract'] = isset ($elt->docblock->tags['abstract'][0]);
+ }
+ else
+ $Result['description'] = '';
+
+ $aa = $Result['description'];
+ if (!empty($aa)) $aa = "<br>&nbsp;&nbsp;&nbsp;&nbsp;$aa";
+
+ switch($elt->type)
+ {
+ case 'class':
+ $Result['name'] = $elt->getName();
+ $Result['title'] = 'Class';
+ $Result['link'] = $this->getClassLink($elt->getName(),
+ $elt->docblock->package,
+ $elt->getPath(),
+ $elt->getName());
+ $Result['listing'] = 'in file '.$elt->file.', class '.$Result['link']."$aa";
+ break;
+ case 'define':
+ $Result['name'] = $elt->getName();
+ $Result['title'] = 'Constant';
+ $Result['link'] = $this->getDefineLink($elt->getName(),
+ $elt->docblock->package,
+ $elt->getPath(),
+ $elt->getName());
+ $Result['listing'] = 'in file '.$elt->file.', constant '.$Result['link']."$aa";
+ break;
+ case 'global':
+ $Result['name'] = $elt->getName();
+ $Result['title'] = 'Global';
+ $Result['link'] = $this->getGlobalLink($elt->getName(),
+ $elt->docblock->package,
+ $elt->getPath(),
+ $elt->getName());
+ $Result['listing'] = 'in file '.$elt->file.', global variable '.$Result['link']."$aa";
+ break;
+ case 'function':
+ $Result['name'] = $elt->getName();
+ $Result['title'] = 'Function';
+ $Result['link'] = $this->getFunctionLink($elt->getName(),
+ $elt->docblock->package,
+ $elt->getPath(),
+ $elt->getName().'()');
+ $Result['listing'] = 'in file '.$elt->file.', function '.$Result['link']."$aa";
+ break;
+ case 'method':
+ $Result['name'] = $elt->getName();
+ $Result['title'] = 'Method';
+ $Result['link'] = $this->getMethodLink($elt->getName(),
+ $elt->class,
+ $elt->docblock->package,
+ $elt->getPath(),
+ $elt->class.'::'.$elt->getName().'()'
+ );
+ if ($elt->isConstructor) $Result['constructor'] = 1;
+ $Result['listing'] = 'in file '.$elt->file.', method '.$Result['link']."$aa";
+ break;
+ case 'var':
+ $Result['name'] = $elt->getName();
+ $Result['title'] = 'Variable';
+ $Result['link'] = $this->getVarLink($elt->getName(),
+ $elt->class,
+ $elt->docblock->package,
+ $elt->getPath(),
+ $elt->class.'::'.$elt->getName());
+ $Result['listing'] = 'in file '.$elt->file.', variable '.$Result['link']."$aa";
+ break;
+ case 'const':
+ $Result['name'] = $elt->getName();
+ $Result['title'] = 'Variable';
+ $Result['link'] = $this->getConstLink($elt->getName(),
+ $elt->class,
+ $elt->docblock->package,
+ $elt->getPath(),
+ $elt->class.'::'.$elt->getName());
+ $Result['listing'] = 'in file '.$elt->file.', class constant '.$Result['link']."$aa";
+ break;
+ case 'page':
+ $Result['name'] = $elt->getFile();
+ $Result['title'] = 'Page';
+ $Result['link'] = $this->getPageLink($elt->getFile(),
+ $elt->package,
+ $elt->getPath(),
+ $elt->getFile());
+ $Result['listing'] = 'procedural page '.$Result['link'];
+ break;
+ case 'include':
+ $Result['name'] = $elt->getName();
+ $Result['title'] = 'Include';
+ $Result['link'] = $elt->getValue();
+ $Result['listing'] = 'include '.$Result['name'];
+ break;
+ }
+
+ return $Result;
+ }
+
+ /**
+ * Generate alphabetical index of all elements
+ *
+ * @see $elements, walk()
+ */
+ function generateElementIndex()
+ {
+ $elementindex = array();
+ $letters = array();
+ $used = array();
+ foreach($this->elements as $letter => $nutoh)
+ {
+ foreach($this->elements[$letter] as $i => $yuh)
+ {
+ if ($this->elements[$letter][$i]->type != 'include')
+ {
+ if (!isset($used[$letter]))
+ {
+ $letters[]['letter'] = $letter;
+ $elindex['letter'] = $letter;
+ $used[$letter] = 1;
+ }
+
+ $elindex['index'][] = $this->getIndexInformation($this->elements[$letter][$i]);
+ }
+ }
+ if (isset($elindex['index']))
+ {
+ $elementindex[] = $elindex;
+ } else
+ {
+ unset($letters[count($letters) - 1]);
+ }
+ $elindex = array();
+ }
+ return array($elementindex,$letters);
+ }
+
+ function copyMediaRecursively($media,$targetdir,$subdir = '')
+ {
+ $versionControlDirectories = array ('CVS', 'media/CVS', 'media\\CVS', '.svn', 'media/.svn', 'media\\.svn');
+ if (!is_array($media)) {
+ return;
+ }
+ foreach($media as $dir => $files)
+ {
+ if ($dir === '/')
+ {
+ $this->copyMediaRecursively($files,$targetdir);
+ } else
+ {
+ if (!is_numeric($dir))
+ {
+ if (in_array($dir, $versionControlDirectories))
+ {
+ // skip it entirely
+ }
+ else
+ {
+ // create the subdir
+ phpDocumentor_out("creating $targetdir" . PATH_DELIMITER . "$dir\n");
+ Converter::setTargetDir($targetdir . PATH_DELIMITER . $dir);
+ if (!empty($subdir))
+ {
+ $subdir .= PATH_DELIMITER;
+ }
+ $this->copyMediaRecursively($files,"$targetdir/$dir",$subdir . $dir);
+ }
+ }
+ else
+ {
+ // copy the file
+ phpDocumentor_out("copying $targetdir" . PATH_DELIMITER . $files['file']."\n");
+ $this->copyFile($files['file'],$subdir);
+ }
+ }
+ }
+ }
+
+ /**
+ * calls the converter setTargetDir, and then copies any template images and the stylesheet if they haven't been copied
+ * @see Converter::setTargetDir()
+ */
+ function setTargetDir($dir)
+ {
+ Converter::setTargetDir($dir);
+ if ($this->_wrote_tdir) return;
+ $this->_wrote_tdir = true;
+ $template_images = array();
+ $stylesheets = array();
+ $tdir = $dir;
+ $dir = $this->templateDir;
+ $this->templateDir = $this->templateDir.'templates/';
+ $info = new Io;
+ $this->copyMediaRecursively($info->getDirTree($this->templateDir.'media',$this->templateDir),$tdir);
+ }
+
+ /**
+ * Generate alphabetical index of all elements by package and subpackage
+ *
+ * @param string $package name of a package
+ * @see $pkg_elements, walk(), generatePkgElementIndexes()
+ */
+ function generatePkgElementIndex($package)
+ {
+ $elementindex = array();
+ $letters = array();
+ $letterind = array();
+ $used = array();
+ $subp = '';
+ foreach($this->pkg_elements[$package] as $subpackage => $els)
+ {
+ if (empty($els)) continue;
+ if (!empty($subpackage)) $subp = " (<b>subpackage:</b> $subpackage)"; else $subp = '';
+ foreach($els as $letter => $yuh)
+ {
+ foreach($els[$letter] as $i => $yuh)
+ {
+ if ($els[$letter][$i]->type != 'include')
+ {
+ if (!isset($used[$letter]))
+ {
+ $letters[]['letter'] = $letter;
+ $letterind[$letter] = count($letters) - 1;
+ $used[$letter] = 1;
+ }
+ $elindex[$letter]['letter'] = $letter;
+
+ $elindex[$letter]['index'][] = $this->getIndexInformation($els[$letter][$i]);
+ }
+ }
+ }
+ }
+ ksort($elindex);
+ usort($letters,'HTMLSmarty_lettersort');
+ if (isset($elindex))
+ {
+ while(list($letter,$tempel) = each($elindex))
+ {
+ if (!isset($tempel))
+ {
+ unset($letters[$letterind[$tempel['letter']]]);
+ } else
+ $elementindex[] = $tempel;
+ }
+ } else $letters = array();
+ return array($elementindex,$letters);
+ }
+
+ /**
+ *
+ * @see generatePkgElementIndex()
+ */
+ function generatePkgElementIndexes()
+ {
+ $packages = array();
+ $package_names = array();
+ $pkg = array();
+ $letters = array();
+ foreach($this->pkg_elements as $package => $trash)
+ {
+ $pkgs['package'] = $package;
+ $pkg['package'] = $package;
+ list($pkg['pindex'],$letters[$package]) = $this->generatePkgElementIndex($package);
+ if (count($pkg['pindex']))
+ {
+ $packages[] = $pkg;
+ $package_names[] = $pkgs;
+ }
+ unset($pkgs);
+ unset($pkg);
+ }
+ foreach($packages as $i => $package)
+ {
+ $pnames = array();
+ for($j=0;$j<count($package_names);$j++)
+ {
+ if ($package_names[$j]['package'] != $package['package']) $pnames[] = $package_names[$j];
+ }
+ $packages[$i]['packageindexes'] = $pnames;
+ }
+ return array($packages,$package_names,$letters);
+ }
+
+ /**
+ * @param string name of class
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @param boolean return just the URL, or enclose it in an html a tag
+ * @return mixed false if not found, or an html a link to the class's documentation
+ * @see parent::getClassLink()
+ */
+ function getClassLink($expr,$package, $file = false,$text = false, $with_a = true)
+ {
+ $a = Converter::getClassLink($expr,$package,$file);
+ if (!$a) return false;
+ return $this->returnSee($a, $text, $with_a);
+ }
+
+ /**
+ * @param string name of function
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @param boolean return just the URL, or enclose it in an html a tag
+ * @return mixed false if not found, or an html a link to the function's documentation
+ * @see parent::getFunctionLink()
+ */
+ function getFunctionLink($expr,$package, $file = false,$text = false)
+ {
+ $a = Converter::getFunctionLink($expr,$package,$file);
+ if (!$a) return false;
+ return $this->returnSee($a, $text);
+ }
+
+ /**
+ * @param string name of define
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @param boolean return just the URL, or enclose it in an html a tag
+ * @return mixed false if not found, or an html a link to the define's documentation
+ * @see parent::getDefineLink()
+ */
+ function getDefineLink($expr,$package, $file = false,$text = false)
+ {
+ $a = Converter::getDefineLink($expr,$package,$file);
+ if (!$a) return false;
+ return $this->returnSee($a, $text);
+ }
+
+ /**
+ * @param string name of global variable
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @param boolean return just the URL, or enclose it in an html a tag
+ * @return mixed false if not found, or an html a link to the global variable's documentation
+ * @see parent::getGlobalLink()
+ */
+ function getGlobalLink($expr,$package, $file = false,$text = false)
+ {
+ $a = Converter::getGlobalLink($expr,$package,$file);
+ if (!$a) return false;
+ return $this->returnSee($a, $text);
+ }
+
+ /**
+ * @param string name of procedural page
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @param boolean return just the URL, or enclose it in an html a tag
+ * @return mixed false if not found, or an html a link to the procedural page's documentation
+ * @see parent::getPageLink()
+ */
+ function getPageLink($expr,$package, $path = false,$text = false)
+ {
+ $a = Converter::getPageLink($expr,$package,$path);
+ if (!$a) return false;
+ return $this->returnSee($a, $text);
+ }
+
+ /**
+ * @param string name of method
+ * @param string class containing method
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @param boolean return just the URL, or enclose it in an html a tag
+ * @return mixed false if not found, or an html a link to the method's documentation
+ * @see parent::getMethodLink()
+ */
+ function getMethodLink($expr,$class,$package, $file = false,$text = false)
+ {
+ $a = Converter::getMethodLink($expr,$class,$package,$file);
+ if (!$a) return false;
+ return $this->returnSee($a, $text);
+ }
+
+ /**
+ * @param string name of var
+ * @param string class containing var
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @param boolean return just the URL, or enclose it in an html a tag
+ * @return mixed false if not found, or an html a link to the var's documentation
+ * @see parent::getVarLink()
+ */
+ function getVarLink($expr,$class,$package, $file = false,$text = false)
+ {
+ $a = Converter::getVarLink($expr,$class,$package,$file);
+ if (!$a) return false;
+ return $this->returnSee($a, $text);
+ }
+
+ /**
+ * @param string name of class constant
+ * @param string class containing class constant
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @param boolean return just the URL, or enclose it in an html a tag
+ * @return mixed false if not found, or an html a link to the var's documentation
+ * @see parent::getVarLink()
+ */
+ function getConstLink($expr,$class,$package, $file = false,$text = false)
+ {
+ $a = Converter::getConstLink($expr,$class,$package,$file);
+ if (!$a) return false;
+ return $this->returnSee($a, $text);
+ }
+
+ /**
+ * does a nat case sort on the specified second level value of the array
+ *
+ * @param mixed $a
+ * @param mixed $b
+ * @return int
+ */
+ function rcNatCmp ($a, $b)
+ {
+ $aa = strtoupper($a[$this->rcnatcmpkey]);
+ $bb = strtoupper($b[$this->rcnatcmpkey]);
+
+ return strnatcasecmp($aa, $bb);
+ }
+
+ /**
+ * does a nat case sort on the specified second level value of the array.
+ * this one puts constructors first
+ *
+ * @param mixed $a
+ * @param mixed $b
+ * @return int
+ */
+ function rcNatCmp1 ($a, $b)
+ {
+ $aa = strtoupper($a[$this->rcnatcmpkey]);
+ $bb = strtoupper($b[$this->rcnatcmpkey]);
+
+ if (strpos($aa,'CONSTRUCTOR') === 0)
+ {
+ return -1;
+ }
+ if (strpos($bb,'CONSTRUCTOR') === 0)
+ {
+ return 1;
+ }
+ if (strpos($aa,strtoupper($this->class)) === 0)
+ {
+ return -1;
+ }
+ if (strpos($bb,strtoupper($this->class)) === 0)
+ {
+ return -1;
+ }
+ return strnatcasecmp($aa, $bb);
+ }
+
+ /**
+ * This function is not used by HTMLdefaultConverter, but is required by Converter
+ */
+ function Output()
+ {
+ }
+}
+
+/**
+ * @access private
+ * @global string name of the package to set as the first package
+ */
+function HTMLSmarty_pindexcmp($a, $b)
+{
+ global $phpDocumentor_DefaultPackageName;
+ if ($a['title'] == $phpDocumentor_DefaultPackageName) return -1;
+ if ($b['title'] == $phpDocumentor_DefaultPackageName) return 1;
+ return strnatcasecmp($a['title'],$b['title']);
+}
+
+/** @access private */
+function HTMLSmarty_lettersort($a, $b)
+{
+ return strnatcasecmp($a['letter'],$b['letter']);
+}
+
+/** @access private */
+function HTMLSmarty_outputfilter($src, &$smarty)
+{
+ return str_replace('{$subdir}',$smarty->_tpl_vars['subdir'],$src);
+}
+?>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/options.ini b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/options.ini
new file mode 100755
index 00000000..32ea2088
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/options.ini
@@ -0,0 +1,577 @@
+preservedocbooktags = false
+
+;; used to highlight the {@source} inline tag, @filesource tag, and @example tag
+[highlightSourceTokens]
+;; format:
+;; T_CONSTANTNAME = open
+;; /T_CONSTANTNAME = close
+
+T_INCLUDE = <span class="src-inc">
+/T_INCLUDE = </span>
+T_INCLUDE_ONCE = <span class="src-inc">
+/T_INCLUDE_ONCE = </span>
+T_REQUIRE_ONCE = <span class="src-inc">
+/T_REQUIRE_ONCE = </span>
+T_REQUIRE_ONCE = <span class="src-inc">
+/T_REQUIRE_ONCE = </span>
+
+T_CONSTANT_ENCAPSED_STRING = <span class="src-str">
+/T_CONSTANT_ENCAPSED_STRING = </span>
+T_STRING_VARNAME = <span class="src-str">
+/T_STRING_VARNAME = </span>
+
+T_STRING = <span class="src-id">
+/T_STRING = </span>
+
+T_DNUMBER = <span class="src-num">
+/T_DNUMBER = </span>
+T_LNUMBER = <span class="src-num">
+/T_LNUMBER = </span>
+
+T_VARIABLE = <span class="src-var">
+/T_VARIABLE = </span>
+
+T_COMMENT = <span class="src-comm">
+/T_COMMENT = </span>
+T_ML_COMMENT = <span class="src-comm">
+/T_ML_COMMENT = </span>
+
+T_OBJECT_OPERATOR = <span class="src-sym">
+/T_OBJECT_OPERATOR = </span>
+
+T_ABSTRACT = <span class="src-key">
+/T_ABSTRACT = </span>
+T_CLONE = <span class="src-key">
+/T_CLONE = </span>
+T_HALT_COMPILER = <span class="src-key">
+/T_HALT_COMPILER = </span>
+T_ARRAY = <span class="src-key">
+/T_ARRAY = </span>
+T_AS = <span class="src-key">
+/T_AS = </span>
+T_BREAK = <span class="src-key">
+/T_BREAK = </span>
+T_CLASS = <span class="src-key">
+/T_CLASS = </span>
+T_CASE = <span class="src-key">
+/T_CASE = </span>
+T_CONST = <span class="src-key">
+/T_CONST = </span>
+T_CONTINUE = <span class="src-key">
+/T_CONTINUE = </span>
+T_DECLARE = <span class="src-key">
+/T_DECLARE = </span>
+T_DEFAULT = <span class="src-key">
+/T_DEFAULT = </span>
+T_ELSE = <span class="src-key">
+/T_ELSE = </span>
+T_ELSEIF = <span class="src-key">
+/T_ELSEIF = </span>
+T_EMPTY = <span class="src-key">
+/T_EMPTY = </span>
+T_ENDDECLARE = <span class="src-key">
+/T_ENDDECLARE = </span>
+T_ENDFOR = <span class="src-key">
+/T_ENDFOR = </span>
+T_ENDSWITCH = <span class="src-key">
+/T_ENDSWITCH = </span>
+T_ENDFOREACH = <span class="src-key">
+/T_ENDFOREACH = </span>
+T_ENDIF = <span class="src-key">
+/T_ENDIF = </span>
+T_ENDWHILE = <span class="src-key">
+/T_ENDWHILE = </span>
+T_EXIT = <span class="src-key">
+/T_EXIT = </span>
+T_EXTENDS = <span class="src-key">
+/T_EXTENDS = </span>
+T_FINAL = <span class="src-key">
+/T_FINAL = </span>
+T_FOR = <span class="src-key">
+/T_FOR = </span>
+T_FOREACH = <span class="src-key">
+/T_FOREACH = </span>
+T_FUNCTION = <span class="src-key">
+/T_FUNCTION = </span>
+T_GLOBAL = <span class="src-key">
+/T_GLOBAL = </span>
+T_IF = <span class="src-key">
+/T_IF = </span>
+T_IMPLEMENTS = <span class="src-key">
+/T_IMPLEMENTS = </span>
+T_INTERFACE = <span class="src-key">
+/T_INTERFACE = </span>
+T_LOGICAL_AND = <span class="src-key">
+/T_LOGICAL_AND = </span>
+T_LOGICAL_OR = <span class="src-key">
+/T_LOGICAL_OR = </span>
+T_LOGICAL_XOR = <span class="src-key">
+/T_LOGICAL_XOR = </span>
+T_NEW = <span class="src-key">
+/T_NEW = </span>
+T_PRIVATE = <span class="src-key">
+/T_PRIVATE = </span>
+T_PROTECTED = <span class="src-key">
+/T_PROTECTED = </span>
+T_PUBLIC = <span class="src-key">
+/T_PUBLIC = </span>
+T_RETURN = <span class="src-key">
+/T_RETURN = </span>
+T_STATIC = <span class="src-key">
+/T_STATIC = </span>
+T_SWITCH = <span class="src-key">
+/T_SWITCH = </span>
+T_VAR = <span class="src-key">
+/T_VAR = </span>
+T_WHILE = <span class="src-key">
+/T_WHILE = </span>
+
+T_DOUBLE_COLON = <span class="src-sym">
+/T_DOUBLE_COLON = </span>
+
+T_OPEN_TAG = <span class="src-php">
+/T_OPEN_TAG = </span>
+T_OPEN_TAG_WITH_ECHO = <span class="src-php">
+/T_OPEN_TAG_WITH_ECHO = </span>
+T_CLOSE_TAG = <span class="src-php">
+/T_CLOSE_TAG = </span>
+
+
+[highlightSource]
+;; this is for highlighting things that aren't tokens like "&"
+;; format:
+;; word = open
+;; /word = close
+@ = <span class="src-sym">
+/@ = </span>
+& = <span class="src-sym">
+/& = </span>
+[ = <span class="src-sym">
+/[ = </span>
+] = <span class="src-sym">
+/] = </span>
+! = <span class="src-sym">
+/! = </span>
+";" = <span class="src-sym">
+/; = </span>
+( = <span class="src-sym">
+/( = </span>
+) = <span class="src-sym">
+/) = </span>
+, = <span class="src-sym">
+/, = </span>
+{ = <span class="src-sym">
+/{ = </span>
+} = <span class="src-sym">
+/} = </span>
+""" = <span class="src-str">
+/" = </span>
+
+[highlightDocBlockSourceTokens]
+;; this is for docblock tokens, highlighted by phpDocumentor_HighlightParser
+;; tagphptype is for "string" in @param string description, for example
+docblock = <span class="src-doc">
+/docblock = </span>
+tagphptype = <span class="src-doc-type">
+/tagphptype = </span>
+tagvarname = <span class="src-doc-var">
+/tagvarname = </span>
+coretag = <span class="src-doc-coretag">
+/coretag = </span>
+tag = <span class="src-doc-tag">
+/tag = </span>
+inlinetag = <span class="src-doc-inlinetag">
+/inlinetag = </span>
+internal = <span class="src-doc-internal">
+/internal = </span>
+closetemplate = <span class="src-doc-close-template">
+/closetemplate = </span>
+docblocktemplate = <span class="src-doc-template">
+/docblocktemplate = </span>
+
+[highlightTutorialSourceTokens]
+;; this is for XML DocBook-based tutorials, highlighted by phpDocumentor_TutorialHighlightParser
+;; <tag>
+opentag = <span class="tute-tag">
+/opentag = </span>
+;; </tag>
+closetag = <span class="tute-tag">
+/closetag = </span>
+;; <tag attribute="value">
+attribute = <span class="tute-attribute-name">
+/attribute = </span>
+;; <tag attribute="value">
+attributevalue = <span class="tute-attribute-value">
+/attributevalue = </span>
+;; &entity;
+entity = <span class="tute-entity">
+/entity = </span>
+;; <!-- comment -->
+comment = <span class="tute-comment">
+/comment = </span>
+;; {@inline tag}
+itag = <span class="tute-inline-tag">
+/itag = </span>
+
+;; used for translation of html in DocBlocks
+[desctranslate]
+ul = <ul>
+/ul = </ul>
+ol = <ol>
+/ol = </ol>
+li = <li>
+/li = </li>
+code =
+/code =
+var = <var>
+/var = </var>
+samp = <samp>
+/samp = </samp>
+kbd = <kbd>
+/kbd = </kbd>
+pre = <pre>
+/pre = </pre>
+p = <p>
+/p = </p>
+b = <strong>
+/b = </strong>
+i = <em>
+/i = </em>
+br = <br />
+
+[ppage]
+;; this is the DocBook package page translation section. All DocBook tags
+;; that have a corresponding html tag must be listed here. Entities should
+;; also be listed here
+;;
+;; examples:
+;; 1)
+;; tagname = newtagname
+;;
+;; This is the simplest case, where all attributes will be added into the
+;; starting tag and the ending tag will be html/xml style </tranlatedtagname>
+;; <tagname></tagname> becomes <newtagname></newtagname> and
+;; <tagname attr="value"></tagname> becomes
+;; <newtagname attr="value"></newtagname>
+;;
+;; 2)
+;; tagname = newtagname
+;; tagname->attr = newattrname
+;;
+;; in this case, everything will be like the first case, except tags like:
+;; <tagname attr="value"></tagname> will become
+;; <newtagname newattrname="value"></newtagname>
+;;
+;; 3)
+;; tagname = newtagname
+;; tagname->attr = newattrname
+;; tagname->attr+value = newvalue
+;;
+;; in this case, the value is also translated to another. This can be useful
+;; for instances such as focus="middle" changing to align="center" or something
+;; of that nature.
+;; <tagname attr="value"></tagname> will become
+;; <newtagname newattrname="newvalue"></newtagname>
+;;
+;; 4)
+;; tagname = newtagname
+;; tagname->attr1 = newattrname
+;; tagname->attr2 = newattrname
+;; tagname->attr1+value|attr2+value = newvalue
+;;
+;; in this case, two attributes combine to make one new attribute, and the combined
+;; value is translated into a new value
+;; <tagname attr1="value1" attr2="value2"></tagname> will become
+;; <newtagname newattrname="newvalue"></newtagname>
+;;
+;; 5)
+;; tagname = newtagname
+;; tagname!attr = dummy
+;;
+;; here, the attribute will be ignored. dummy is not used and may be any value
+;; <tagname attr="value"></tagname> will become
+;; <newtagname></newtagname>
+;;
+;; 6)
+;; tagname = newtagname
+;; tagname! = dummy
+;;
+;; here, all attributes will be ignored. dummy is not used and may be any value
+;; <tagname attr1="value" attr2="foo"></tagname> will become
+;; <newtagname></newtagname>
+;;
+;; 7)
+;; tagname = newtagname
+;; tagname/ = 1
+;;
+;; here, the tag will be translated as a single tag with no closing tag, and all
+;; attributes
+;; <tagname attr="val">{text text}</tagname> will become
+;; <newtagname attr="val" />
+;;
+;; 8)
+;; tagname = <starttaginfo />
+;; /tagname = closetagtext
+;;
+;; in this case, the text <starttaginfo> will be inserted exactly as entered for
+;; <tagname> and closetagtext for </tagname>
+;; <tagname attr="val"></tagname> will become
+;; <starttaginfo />closetagtext
+;;
+;; 9)
+;; $attr$my_attribute = newattrname
+;;
+;; tagname = newtagname
+;;
+;; in this case, all occurences of my_attribute in any tag will be changed to
+;; newattrname. This is useful for changing things like role="php" to
+;; class="php," for example. Note that the text "$attr$" MUST be on the line
+;; start for phpDocumentor to recognize it.
+;;
+;; 10)
+;; &entity; = translation text
+;; &quot; = &quot;
+;; &quot; = """
+;; &lt; = <
+;;
+;; Use this to control translation of entities to their appropriate values
+
+&nbsp; = &nbsp;
+&quot; = &quot;
+&rdquo; = &rdquo;
+&ldquo; = &ldquo;
+&amp; = &amp;
+&lt; = &lt;
+&gt; = &gt;
+&copy; = &copy;
+
+$attr$role = class
+
+abbrev = abbr
+
+blockquote = blockquote
+
+arg = span
+arg->choice = class
+
+author = <strong>by <span class="author">
+/author = </span></strong>
+author! = 0
+
+authorblurb = <div class="author-blurb">
+/authorblurb = </div>
+
+authorgroup = <div class="authors"><h2 class="title">Authors</h2>
+/authorgroup = </div>
+authorgroup! = 0
+
+caution = <span class="warning">
+/caution = </span>
+caution! = 0
+
+cmdsynopsis = <div class="cmd-synopsis">
+/cmdsynopsis = </div>
+
+command = <span class="cmd-title">
+/command = </span>
+
+copyright = <div class="notes">
+/copyright = </div>
+
+emphasis = strong
+
+example = <div class="src-code">
+/example = </div>
+example! = 0
+
+function =
+/function = ()
+
+formalpara = p
+
+graphic = img
+graphic->fileref = src
+graphic/ =
+
+important = strong
+
+informalequation = blockquote
+
+informalexample = div
+
+inlineequation = em
+
+itemizedlist = ul
+
+listitem = li
+
+literal = code
+
+literallayout = span
+
+option = " "
+/option =
+
+orderedlist = ol
+
+para = p
+
+programlisting = <div class="src-code">
+/programlisting = </div>
+programlisting! = 0
+
+refentry = div
+
+refnamediv = <div class="ref-title-box">
+/refnamediv = </div>
+refnamediv! = 0
+
+refname = <h1 class="ref-title">
+/refname = </h1>
+
+refpurpose = <h2 class="ref-purpose">
+/refpurpose = </h2>
+
+refsynopsisdiv = <div class="ref-synopsis">
+/refsynopsisdiv = </div>
+refsynopsisdiv! = 0
+
+refsect1 = span
+
+refsect2 =
+/refsect2 = <hr />
+
+refsect3 =
+/refsect3 = <br />
+
+releaseinfo = <div class="release-info">(
+/releaseinfo = )</div>
+
+simpara =
+/simpara = <br />
+simpara! = 0
+
+subscript = sub
+
+superscript = super
+
+table = table
+
+table->colsep = rules
+table->rowsep = rules
+table->colsep+1|rowsep+1 = all
+table->colsep+1|rowsep+0 = cols
+table->colsep+0|rowsep+1 = rows
+
+table->frame = frame
+table->frame+all = border
+table->frame+none = void
+table->frame+sides = vsides
+table->frame+top = above
+table->frame+topbot = hsides
+
+thead = thead
+
+tfoot = tfoot
+
+tbody = tbody
+
+colspec = col
+
+tgroup = colgroup
+tgroup/ = 1
+tgroup->cols = span
+
+row = tr
+
+entry = td
+entry->morerows = colspan
+entry->morerows+1 = 2
+entry->morerows+2 = 3
+entry->morerows+3 = 4
+entry->morerows+4 = 5
+entry->morerows+5 = 6
+entry->morerows+6 = 7
+entry->morerows+7 = 8
+entry->morerows+8 = 9
+entry->morerows+9 = 10
+entry->morerows+10 = 11
+;; add more if you need more colspans
+
+warning = <span class="warning">
+/warning = </span>
+warning! = 0
+
+;; now begins the attributes that should be tags in cdata
+[$attr$id]
+open = a
+;close = /a
+cdata! = true
+quotevalues = true
+separator = "="
+;separateall = true
+$id = name
+
+;; now begins the sections that deal with <title>
+[refsynopsisdiv_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h1 class="title">
+close = </h1>
+
+[refsect1_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h2 class="title">
+close = </h2>
+
+[refsect2_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h3 class="title">
+close = </h3>
+
+[refsect3_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h4 class="title">
+close = </h4>
+
+[para_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <div class="title">
+close = </div>
+
+[formalpara_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <div class="title">
+close = </div>
+
+[example_title]
+;tag_attr = true
+;attr_name = title
+;cdata_start = true
+cdata_end = true
+open = </td></tr><tr><td><strong>
+close = </strong>
+
+[table_title]
+;tag_attr = true
+;attr_name = true
+cdata_start = true
+open = <caption>
+close = </caption>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/basicindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/basicindex.tpl
new file mode 100755
index 00000000..02da5c40
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/basicindex.tpl
@@ -0,0 +1,21 @@
+{section name=letter loop=$letters}
+ [ <a href="{$indexname}.html#{$letters[letter].letter}">{$letters[letter].letter}</a> ]
+{/section}
+<br /><br />
+{section name=index loop=$index}
+ <a name="{$index[index].letter}"></a>
+ <div class="index-letter-section">
+ <div style="float: left" class="index-letter-title">{$index[index].letter}</div>
+ <div style="float: right"><a href="#top">[Top]</a></div>
+ <div style="clear: both"></div>
+ </div>
+ <div>
+ <h2>{$index[index].letter}</h2>
+ <dl>
+ {section name=contents loop=$index[index].index}
+ <dt><b>{$index[index].index[contents].name}</b></dt>
+ <dd>{$index[index].index[contents].listing}</dd>
+ {/section}
+ </dl>
+ </div>
+{/section}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/blank.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/blank.tpl
new file mode 100755
index 00000000..a7f6308f
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/blank.tpl
@@ -0,0 +1,6 @@
+<div align="center"><h1>{$maintitle}</h1></div>
+<strong>Welcome to {$package}!</strong><br />
+<br />
+This documentation was generated by <a href="{$phpdocwebsite}">phpDocumentor v{$phpdocversion}</a>
+<br />
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/class.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/class.tpl
new file mode 100755
index 00000000..fe930904
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/class.tpl
@@ -0,0 +1,541 @@
+{include file="header.tpl" eltype="class" hasel=true contents=$classcontents}
+
+<h2 class="class-name">{if $is_interface}Interface{else}Class{/if} {$class_name}</h2>
+
+<a name="sec-description"></a>
+<div class="info-box">
+ <div class="info-box-title">{if $is_interface}Interface{else}Class{/if} Overview</div>
+ <div class="nav-bar">
+ {if $children || $vars || $ivars || $methods || $imethods || $consts || $iconsts}
+ <span class="disabled">{if $is_interface}Interface{else}Class{/if} Overview</span>
+ {/if}
+ {if $children}
+ | <a href="#sec-descendants">Descendants</a>
+ {/if}
+
+ {if $ivars || $imethods}
+ | <a href="#sec-inherited">Inherited Properties, Constants, and Methods</a>
+ {/if}
+ {if $vars || $ivars}
+ {if $vars}
+ | <a href="#sec-var-summary">Property Summary</a> | <a href="#sec-vars">Properties Detail</a>
+ {else}
+ | <a href="#sec-vars">Properties</a>
+ {/if}
+ {/if}
+ {if $methods || $imethods}
+ {if $methods}
+ | <a href="#sec-method-summary">Method Summary</a> | <a href="#sec-methods">Methods Detail</a>
+ {else}
+ | <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ | <a href="#sec-const-summary">Constants Summary</a> | <a href="#sec-consts">Constants Detail</a>
+ {else}
+ | <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <table width="100%" border="0">
+ <tr><td valign="top" width="60%" class="class-overview">
+
+ {if $implements}
+ <p class="implements">
+ Implements interfaces:
+ <ul>
+ {foreach item="int" from=$implements}<li>{$int}</li>{/foreach}
+ </ul>
+ </p>
+ {/if}
+ {include file="docblock.tpl" type="class" sdesc=$sdesc desc=$desc}
+
+ <p class="notes">
+ Located in <a class="field" href="{$page_link}">{$source_location}</a> [<span class="field">line {if $class_slink}{$class_slink}{else}{$line_number}{/if}</span>]
+ </p>
+
+ {if $tutorial}
+ <hr class="separator" />
+ <div class="notes">Tutorial: <span class="tutorial">{$tutorial}</div>
+ {/if}
+
+ <pre>{section name=tree loop=$class_tree.classes}{$class_tree.classes[tree]}{$class_tree.distance[tree]}{/section}</pre>
+
+ {if $conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with classes:</span><br />
+ {section name=me loop=$conflicts.conflicts}
+ {$conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+
+ {if count($tags) > 0}
+ <strong>Author(s):</strong>
+ <ul>
+ {section name=tag loop=$tags}
+ {if $tags[tag].keyword eq "author"}
+ <li>{$tags[tag].data}</li>
+ {/if}
+ {/section}
+ </ul>
+ {/if}
+
+ {include file="classtags.tpl" tags=$tags}
+ </td>
+
+ {if count($contents.var) > 0}
+ <td valign="top" width="20%" class="class-overview">
+ <p align="center" class="short-description"><strong><a href="#sec_vars">Properties</a></strong></p>
+ <ul>
+ {section name=contents loop=$contents.var}
+ <li>{$contents.var[contents]}</li>
+ {/section}
+ </ul>
+ </td>
+ {/if}
+
+ {if count($contents.method) > 0}
+ <td valign="top" width="20%" class="class-overview">
+ <p align="center" class="short-description"><strong><a href="#sec_methods">Methods</a></strong></p>
+ <ul>
+ {section name=contents loop=$contents.method}
+ <li>{$contents.method[contents]}</li>
+ {/section}
+ </ul>
+ </td>
+ {/if}
+
+ </tr></table>
+ <div class="top">[ <a href="#top">Top</a> ]</div>
+ </div>
+</div>
+
+{if $children}
+ <a name="sec-descendants"></a>
+ <div class="info-box">
+ <div class="info-box-title">Descendants</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Class Overview</a>
+ {if $children}
+ | <span class="disabled">Descendants</span>
+ {/if}
+ {if $ivars || $imethods}
+ | <a href="#sec-inherited">Inherited Properties and Methods</a>
+ {/if}
+ {if $vars || $ivars}
+ {if $vars}
+ | <a href="#sec-var-summary">Property Summary</a> | <a href="#sec-vars">Properties Detail</a>
+ {else}
+ | <a href="#sec-vars">Properties</a>
+ {/if}
+ {/if}
+ {if $methods || $imethods}
+ {if $methods}
+ | <a href="#sec-method-summary">Method Summary</a> | <a href="#sec-methods">Methods Detail</a>
+ {else}
+ | <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ | <a href="#sec-const-summary">Constants Summary</a> | <a href="#sec-consts">Constants Detail</a>
+ {else}
+ | <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <table cellpadding="2" cellspacing="0" class="class-table">
+ <tr>
+ <th class="class-table-header">Child Class</th>
+ <th class="class-table-header">Description</th>
+ </tr>
+ {section name=kids loop=$children}
+ <tr>
+ <td style="padding-right: 2em">{$children[kids].link}</td>
+ <td>
+ {if $children[kids].sdesc}
+ {$children[kids].sdesc}
+ {else}
+ {$children[kids].desc}
+ {/if}
+ </td>
+ </tr>
+ {/section}
+ </table>
+ <br /><div class="top">[ <a href="#top">Top</a> ]</div>
+ </div>
+ </div>
+{/if}
+
+{if $ivars || $imethods || $iconsts}
+ <a name="sec-inherited"></a>
+ <div class="info-box">
+ <div class="info-box-title">Inherited Properties, Constants, and Methods</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Class Overview</a>
+ {if $children}
+ | <a href="#sec-descendants">Descendants</a>
+ {/if}
+ | <span class="disabled">Inherited Properties, Constants, and Methods</span>
+ {if $vars || $ivars}
+ {if $vars}
+ | <a href="#sec-var-summary">Property Summary</a> | <a href="#sec-vars">Properties Detail</a>
+ {else}
+ | <a href="#sec-vars">Properties</a>
+ {/if}
+ {/if}
+ {if $methods || $imethods}
+ {if $methods}
+ | <a href="#sec-method-summary">Method Summary</a> | <a href="#sec-methods">Methods Detail</a>
+ {else}
+ | <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ | <a href="#sec-const-summary">Constants Summary</a> | <a href="#sec-consts">Constants Detail</a>
+ {else}
+ | <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <table cellpadding="2" cellspacing="0" class="class-table">
+ <tr>
+ <th class="class-table-header" width="30%">Inherited Properties</th>
+ <th class="class-table-header" width="40%">Inherited Methods</th>
+ <th class="class-table-header" width="30%">Inherited Constants</th>
+ </tr>
+ <tr>
+ <td width="30%">
+ {section name=ivars loop=$ivars}
+ <p>Inherited From <span class="classname">{$ivars[ivars].parent_class}</span></p>
+ <blockquote>
+ <dl>
+ {section name=ivars2 loop=$ivars[ivars].ivars}
+ <dt>
+ <span class="method-definition">{$ivars[ivars].ivars[ivars2].link}</span>
+ </dt>
+ <dd>
+ <span class="method-definition">{$ivars[ivars].ivars[ivars2].ivars_sdesc}</span>
+ </dd>
+ {/section}
+ </dl>
+ </blockquote>
+ {/section}
+ </td>
+ <td width="40%">
+ {section name=imethods loop=$imethods}
+ <p>Inherited From <span class="classname">{$imethods[imethods].parent_class}</span></p>
+ <blockquote>
+ <dl>
+ {section name=im2 loop=$imethods[imethods].imethods}
+ <dt>
+ <span class="method-definition">{$imethods[imethods].imethods[im2].link}</span>
+ </dt>
+ <dd>
+ <span class="method-definition">{$imethods[imethods].imethods[im2].sdesc}</span>
+ </dd>
+ {/section}
+ </dl>
+ </blockquote>
+ {/section}
+ </td>
+ <td width="30%">
+ {section name=iconsts loop=$iconsts}
+ <p>Inherited From <span class="classname">{$iconsts[iconsts].parent_class}</span></p>
+ <blockquote>
+ <dl>
+ {section name=iconsts2 loop=$iconsts[iconsts].iconsts}
+ <dt>
+ <span class="method-definition">{$iconsts[iconsts].iconsts[iconsts2].link}</span>
+ </dt>
+ <dd>
+ <span class="method-definition">{$iconsts[iconsts].iconsts[iconsts2].iconsts_sdesc}</span>
+ </dd>
+ {/section}
+ </dl>
+ </blockquote>
+ {/section}
+ </td>
+ </tr>
+ </table>
+ <br /><div class="top">[ <a href="#top">Top</a> ]</div>
+ </div>
+ </div>
+{/if}
+
+{if $consts}
+ <a name="sec-const-summary"></a>
+ <div class="info-box">
+ <div class="info-box-title">Constant Summary</span></div>
+ <div class="nav-bar">
+ <a href="#sec-description">Class Overview</a>
+ {if $children}
+ | <a href="#sec-descendants">Descendants</a>
+ {/if}
+ {if $ivars || $imethods || $iconsts}
+ | <a href="#sec-inherited">Inherited Properties, Constants, and Methods</a>
+ {/if}
+ | <span class="disabled">Constants Summary</span> | <a href="#sec-consts">Constants Detail</a>
+ {if $vars || $ivars}
+ {if $vars}
+ | <a href="#sec-var-summary">Property Summary</a> | <a href="#sec-vars">Properties Detail</a>
+ {else}
+ | <a href="#sec-vars">Properties</a>
+ {/if}
+ {/if}
+ {if $methods || $imethods}
+ {if $methods}
+ | <a href="#sec-method-summary">Method Summary</a> | <a href="#sec-methods">Methods Detail</a>
+ {else}
+ | <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <div class="const-summary">
+ <table border="0" cellspacing="0" cellpadding="0" class="var-summary">
+ {section name=consts loop=$consts}
+ <div class="var-title">
+ <tr>
+ <td class="var-title"><a href="#{$consts[consts].const_dest}" title="details" class="const-name-summary">{$consts[consts].const_name}</a>&nbsp;&nbsp;</td>
+ <td class="const-summary-description">{$consts[consts].sdesc}</td></tr>
+ </div>
+ {/section}
+ </table>
+ </div>
+ <br /><div class="top">[ <a href="#top">Top</a> ]</div>
+ </div>
+ </div>
+{/if}
+
+{if $vars}
+ <a name="sec-var-summary"></a>
+ <div class="info-box">
+ <div class="info-box-title">Property Summary</span></div>
+ <div class="nav-bar">
+ <a href="#sec-description">Class Overview</a>
+ {if $children}
+ | <a href="#sec-descendants">Descendants</a>
+ {/if}
+ {if $ivars || $imethods || $iconsts}
+ | <a href="#sec-inherited">Inherited Properties and Methods</a>
+ {/if}
+ | <span class="disabled">Property Summary</span> | <a href="#sec-vars">Properties Detail</a>
+ {if $methods || $imethods}
+ {if $methods}
+ | <a href="#sec-method-summary">Method Summary</a> | <a href="#sec-methods">Methods Detail</a>
+ {else}
+ | <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ | <a href="#sec-const-summary">Constants Summary</a> | <a href="#sec-consts">Constants Detail</a>
+ {else}
+ | <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <div class="var-summary">
+ <table border="0" cellspacing="0" cellpadding="0" class="var-summary">
+ {section name=vars loop=$vars}
+ {if $vars[vars].static}
+ <div class="var-title">
+ <tr><td class="var-title">static <span class="var-type-summary">{$vars[vars].var_type}</span>&nbsp;&nbsp;</td>
+ <td class="var-title"><a href="#{$vars[vars].var_name}" title="details" class="var-name-summary">{$vars[vars].var_name}</a>&nbsp;&nbsp;</td>
+ <td class="var-summary-description">{$vars[vars].sdesc}</td></tr>
+ </div>
+ {/if}
+ {/section}
+ {section name=vars loop=$vars}
+ {if !$vars[vars].static}
+ <div class="var-title">
+ <tr><td class="var-title"><span class="var-type-summary">{$vars[vars].var_type}</span>&nbsp;&nbsp;</td>
+ <td class="var-title"><a href="#{$vars[vars].var_name}" title="details" class="var-name-summary">{$vars[vars].var_name}</a>&nbsp;&nbsp;</td>
+ <td class="var-summary-description">{$vars[vars].sdesc}</td></tr>
+ </div>
+ {/if}
+ {/section}
+ </table>
+ </div>
+ <br /><div class="top">[ <a href="#top">Top</a> ]</div>
+ </div>
+ </div>
+{/if}
+
+{if $methods}
+ <a name="sec-method-summary"></a>
+ <div class="info-box">
+ <div class="info-box-title">Method Summary</span></div>
+ <div class="nav-bar">
+ <a href="#sec-description">Class Overview</a>
+ {if $children}
+ | <a href="#sec-descendants">Descendants</a>
+ {/if}
+ {if $ivars || $imethods || $iconsts}
+ | <a href="#sec-inherited">Inherited Properties and Methods</a>
+ {/if}
+ {if $vars || $ivars}
+ {if $vars}
+ | <a href="#sec-var-summary">Property Summary</a> | <a href="#sec-vars">Properties Detail</a>
+ {else}
+ | <a href="#sec-vars">Properties</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ | <a href="#sec-const-summary">Constants Summary</a> | <a href="#sec-consts">Constants Detail</a>
+ {else}
+ | <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ | <span class="disabled">Method Summary</span> | <a href="#sec-methods">Methods Detail</a>
+ </div>
+ <div class="info-box-body">
+ <div class="method-summary">
+ <table border="0" cellspacing="0" cellpadding="0" class="method-summary">
+ {section name=methods loop=$methods}
+ {if $methods[methods].static}
+ <div class="method-definition">
+ <tr><td class="method-definition">static
+ {if $methods[methods].function_return}
+ <span class="method-result">{$methods[methods].function_return}</span>&nbsp;&nbsp;
+ {/if}</td>
+ <td class="method-definition"><a href="#{$methods[methods].function_name}" title="details" class="method-name">{if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}</a>()&nbsp;&nbsp;</td>
+ <td class="method-definition">{$methods[methods].sdesc}</td></tr>
+ </div>
+ {/if}
+ {/section}
+ {section name=methods loop=$methods}
+ {if !$methods[methods].static}
+ <div class="method-definition">
+ {if $methods[methods].function_return}
+ <tr><td class="method-definition"><span class="method-result">{$methods[methods].function_return}</span>&nbsp;&nbsp;</td>
+ {/if}
+ <td class="method-definition"><a href="#{$methods[methods].function_name}" title="details" class="method-name">{if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}</a>()&nbsp;&nbsp;</td>
+ <td class="method-definition">{$methods[methods].sdesc}</td></tr>
+ </div>
+ {/if}
+ {/section}
+ </table>
+ </div>
+ <br /><div class="top">[ <a href="#top">Top</a> ]</div>
+ </div>
+ </div>
+{/if}
+
+{if $vars || $ivars}
+ <a name="sec-vars"></a>
+ <div class="info-box">
+ <div class="info-box-title">Properties</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Class Overview</a>
+ {if $children}
+ | <a href="#sec-descendants">Descendants</a>
+ {/if}
+ {if $ivars || $imethods || $iconsts}
+ | <a href="#sec-inherited">Inherited Properties and Methods</a>
+ {/if}
+ {if $methods}
+ | <a href="#sec-var-summary">Property Summary</a> | <span class="disabled">Properties Detail</span>
+ {else}
+ | <span class="disabled">Properties</span>
+ {/if}
+ {if $methods || $imethods}
+ {if $methods}
+ | <a href="#sec-method-summary">Method Summary</a> | <a href="#sec-methods">Methods Detail</a>
+ {else}
+ | <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ | <a href="#sec-const-summary">Constants Summary</a> | <a href="#sec-consts">Constants Detail</a>
+ {else}
+ | <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="var.tpl"}
+ </div>
+ </div>
+{/if}
+
+{if $methods || $imethods}
+ <a name="sec-methods"></a>
+ <div class="info-box">
+ <div class="info-box-title">Methods</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Class Overview</a>
+ {if $children}
+ | <a href="#sec-descendants">Descendants</a>
+ {/if}
+ {if $ivars || $imethods || $iconsts}
+ | <a href="#sec-inherited">Inherited Properties and Methods</a>
+ {/if}
+ {if $vars || $ivars}
+ {if $vars}
+ | <a href="#sec-var-summary">Property Summary</a> | <a href="#sec-vars">Properties Detail</a>
+ {else}
+ | <a href="#sec-vars">Properties</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ | <a href="#sec-const-summary">Constants Summary</a> | <a href="#sec-consts">Constants Detail</a>
+ {else}
+ | <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ {if $methods}
+ | <a href="#sec-method-summary">Method Summary</a> | <span class="disabled">Methods Detail</span>
+ {else}
+ | <span class="disabled">Methods</span>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="method.tpl"}
+ </div>
+ </div>
+{/if}
+
+{if $consts || $consts}
+ <a name="sec-consts"></a>
+ <div class="info-box">
+ <div class="info-box-title">Constants</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Class Overview</a>
+ {if $children}
+ | <a href="#sec-descendants">Descendants</a>
+ {/if}
+ {if $consts}
+ | <a href="#sec-const-summary">Constants Summary</a> | <span class="disabled">Constants Detail</span>
+ {else}
+ | <span class="disabled">Constants</span>
+ {/if}
+ {if $ivars || $imethods || $iconsts}
+ | <a href="#sec-inherited">Inherited Properties, Constants, and Methods</a>
+ {/if}
+ {if $methods || $imethods}
+ {if $methods}
+ | <a href="#sec-method-summary">Method Summary</a> | <a href="#sec-methods">Methods Detail</a>
+ {else}
+ | <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="const.tpl"}
+ </div>
+ </div>
+{/if}
+
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/classleft.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/classleft.tpl
new file mode 100755
index 00000000..3bae1684
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/classleft.tpl
@@ -0,0 +1,11 @@
+{foreach key=subpackage item=files from=$classleftindex}
+ <div class="package">
+ {if $subpackage != ""}{$subpackage}<br />{/if}
+ {section name=files loop=$files}
+ {if $subpackage != ""}<span style="padding-left: 1em;">{/if}
+ {if $files[files].link != ''}<a href="{$files[files].link}">{/if}{$files[files].title}{if $files[files].link != ''}</a>{/if}
+ {if $subpackage != ""}</span>{/if}
+ <br />
+ {/section}
+ </div>
+{/foreach}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/classtags.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/classtags.tpl
new file mode 100755
index 00000000..b810ecf8
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/classtags.tpl
@@ -0,0 +1,22 @@
+{if count($api_tags) > 0}
+<strong>API Tags:</strong><br />
+<table border="0" cellspacing="0" cellpadding="0">
+{section name=tag loop=$api_tags}
+ <tr>
+ <td class="indent"><strong>{$api_tags[tag].keyword|capitalize}:</strong>&nbsp;&nbsp;</td><td>{$api_tags[tag].data}</td>
+ </tr>
+{/section}
+</table>
+<br />
+{/if}
+
+{if count($info_tags) > 0}
+<strong>Information Tags:</strong><br />
+<table border="0" cellspacing="0" cellpadding="0">
+{section name=tag loop=$info_tags}
+ {if $info_tags[tag].keyword ne "author"}
+ <tr><td><strong>{$info_tags[tag].keyword|capitalize}:</strong>&nbsp;&nbsp;</td><td>{$info_tags[tag].data}</td></tr>
+ {/if}
+{/section}
+</table>
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/classtrees.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/classtrees.tpl
new file mode 100755
index 00000000..0c0e974a
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/classtrees.tpl
@@ -0,0 +1,17 @@
+{include file="header.tpl" noleftindex=true}
+<h1>{$title}</h1>
+{if $interfaces}
+{section name=classtrees loop=$interfaces}
+<hr />
+<div class="classtree">Root interface {$interfaces[classtrees].class}</div><br />
+{$interfaces[classtrees].class_tree}
+{/section}
+{/if}
+{if $classtrees}
+{section name=classtrees loop=$classtrees}
+<hr />
+<div class="classtree">Root class {$classtrees[classtrees].class}</div><br />
+{$classtrees[classtrees].class_tree}
+{/section}
+{/if}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/const.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/const.tpl
new file mode 100644
index 00000000..2e3270e0
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/const.tpl
@@ -0,0 +1,19 @@
+{section name=consts loop=$consts}
+<a name="const{$consts[consts].const_name}" id="{$consts[consts].const_name}"><!-- --></A>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="var-header">
+ <span class="var-title">
+ <span class="var-name">{$consts[consts].const_name}</span>
+ = <span class="var-default">{$consts[consts].const_value|replace:"\n":"<br />"}</span>
+ <span class="smalllinenumber">[line {if $consts[consts].slink}{$consts[consts].slink}{else}{$consts[consts].line_number}{/if}]</span>
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$consts[consts].sdesc desc=$consts[consts].desc}
+ {include file="tags.tpl" api_tags=$consts[consts].api_tags info_tags=$consts[consts].info_tags}
+
+ <br />
+ <div class="top">[ <a href="#top">Top</a> ]</div>
+</div>
+{/section}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/define.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/define.tpl
new file mode 100755
index 00000000..9b3809df
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/define.tpl
@@ -0,0 +1,34 @@
+{if count($defines) > 0}
+{section name=def loop=$defines}
+<a name="{$defines[def].define_link}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <span class="const-title">
+ <span class="const-name">{$defines[def].define_name}</span>&nbsp;&nbsp;<span class="smalllinenumber">[line {if $defines[def].slink}{$defines[def].slink}{else}{$defines[def].line_number}{/if}]</span>
+ </span>
+ </div>
+<br />
+ <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code-border">
+ <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
+ <code>{$defines[def].define_name} = {$defines[def].define_value}</code>
+ </td></tr></table>
+ </td></tr></table>
+
+ {include file="docblock.tpl" sdesc=$defines[def].sdesc desc=$defines[def].desc}
+ {include file="tags.tpl" api_tags=$defines[def].api_tags info_tags=$defines[def].info_tags}
+ <br />
+
+ {if $globals[glob].global_conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with constants:</span><br />
+ {section name=me loop=$defines[def].define_conflicts.conflicts}
+ {$defines[def].define_conflicts.conflicts[me]}<br />
+ {/section}
+ </div><br />
+ {/if}
+ <div class="top">[ <a href="#top">Top</a> ]</div>
+ <br />
+</div>
+{/section}
+{/if} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/docblock.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/docblock.tpl
new file mode 100755
index 00000000..20bda10b
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/docblock.tpl
@@ -0,0 +1,5 @@
+{if $sdesc != ''}
+<p align="center" class="short-description"><strong>{$sdesc|default:''}
+</strong></p>
+{/if}
+{if $desc != ''}<span class="description">{$desc|default:''}</span>{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/elementindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/elementindex.tpl
new file mode 100755
index 00000000..0bb2be85
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/elementindex.tpl
@@ -0,0 +1,12 @@
+{include file="header.tpl" noleftindex=true}
+<a name="top"></a>
+<h1>Index of All Elements</h1>
+<h3>Package Indexes</h3>
+<ul>
+{section name=p loop=$packageindex}
+ <li><a href="elementindex_{$packageindex[p].title}.html">{$packageindex[p].title}</a></li>
+{/section}
+</ul>
+<br />
+{include file="basicindex.tpl" indexname="elementindex"}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/errors.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/errors.tpl
new file mode 100755
index 00000000..0f526584
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/errors.tpl
@@ -0,0 +1,21 @@
+{include file="header.tpl" noleftindex=true}
+{section name=files loop=$files}
+<a href="#{$files[files].file}">{$files[files].file}</a><br>
+{/section}
+{foreach key=file item=issues from=$all}
+<a name="{$file}"></a>
+<h1>{$file}</h1>
+{if count($issues.warnings)}
+<h2>Warnings:</h2><br>
+{section name=warnings loop=$issues.warnings}
+<b>{$issues.warnings[warnings].name}</b> - {$issues.warnings[warnings].listing}<br>
+{/section}
+{/if}
+{if count($issues.errors)}
+<h2>Errors:</h2><br>
+{section name=errors loop=$issues.errors}
+<b>{$issues.errors[errors].name}</b> - {$issues.errors[errors].listing}<br>
+{/section}
+{/if}
+{/foreach}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/examplesource.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/examplesource.tpl
new file mode 100755
index 00000000..8b8c94fc
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/examplesource.tpl
@@ -0,0 +1,6 @@
+{include file="header.tpl" title=$title}
+<h1 align="center">{$title}</h1>
+<div class="src-code"><span class="php">
+{$source}
+</span></div>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/fileleft.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/fileleft.tpl
new file mode 100755
index 00000000..44d254e1
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/fileleft.tpl
@@ -0,0 +1,8 @@
+{foreach key=subpackage item=files from=$fileleftindex}
+ <div class="package">
+ {if $subpackage != ""}<strong>{$subpackage}</strong><br />{/if}
+ {section name=files loop=$files}
+ <span style="padding-left: 1em;">{if $files[files].link != ''}<a href="{$files[files].link}">{/if}{$files[files].title}{if $files[files].link != ''}</a>{/if}</span><br />
+ {/section}
+ </div>
+{/foreach}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/filesource.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/filesource.tpl
new file mode 100755
index 00000000..73074863
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/filesource.tpl
@@ -0,0 +1,8 @@
+{capture name="tutle"}File Source for {$name}{/capture}
+{include file="header.tpl" title=$smarty.capture.tutle}
+<h1 align="center">Source for file {$name}</h1>
+<p>Documentation is available at {$docs}</p>
+<div class="src-code"><span class="php">
+{$source}
+</span></div>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/filetags.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/filetags.tpl
new file mode 100755
index 00000000..77427b0e
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/filetags.tpl
@@ -0,0 +1,7 @@
+{if count($tags) > 0}
+<table border="0" cellspacing="0" cellpadding="0">
+ {section name=tag loop=$tags}
+ <tr><td><strong>{$tags[tag].keyword|capitalize}:</strong>&nbsp;&nbsp;</td><td>{$tags[tag].data}</td></tr>
+ {/section}
+</table>
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/footer.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/footer.tpl
new file mode 100755
index 00000000..32b09c11
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/footer.tpl
@@ -0,0 +1,11 @@
+ <div class="credit">
+ <hr class="separator" />
+ Documentation generated on {$date} by <a href="{$phpdocwebsite}">phpDocumentor {$phpdocversion}</a>
+ </div>
+ </td></tr></table>
+ </td>
+ </tr>
+</table>
+
+</body>
+</html> \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/function.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/function.tpl
new file mode 100755
index 00000000..417bbf76
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/function.tpl
@@ -0,0 +1,54 @@
+{section name=func loop=$functions}
+<a name="{$functions[func].function_dest}" id="{$functions[func].function_dest}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <span class="method-title">{$functions[func].function_name}</span>&nbsp;&nbsp;<span class="smalllinenumber">[line {if $functions[func].slink}{$functions[func].slink}{else}{$functions[func].line_number}{/if}]</span>
+ </div>
+<br />
+ <div class="function">
+ <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code-border">
+ <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
+ <code>{$functions[func].function_return} {if $functions[func].ifunction_call.returnsref}&amp;{/if}{$functions[func].function_name}(
+{if count($functions[func].ifunction_call.params)}
+{section name=params loop=$functions[func].ifunction_call.params}
+{if $smarty.section.params.iteration != 1}, {/if}{if $functions[func].ifunction_call.params[params].hasdefault}[{/if}{$functions[func].ifunction_call.params[params].type} {$functions[func].ifunction_call.params[params].name}{if $functions[func].ifunction_call.params[params].hasdefault} = {$functions[func].ifunction_call.params[params].default|escape:"html"}]{/if}
+{/section}
+&nbsp;
+{/if})</code>
+ </td></tr></table>
+ </td></tr></table>
+
+ {include file="docblock.tpl" sdesc=$functions[func].sdesc desc=$functions[func].desc}
+
+ {if count($functions[func].params) > 0}
+ <strong>Parameters:</strong><br />
+ <table border="0" cellspacing="0" cellpadding="0">
+ {section name=params loop=$functions[func].params}
+ <tr><td class="indent">
+ <span class="var-type">{$functions[func].params[params].datatype}</span>&nbsp;&nbsp;</td>
+ <td>
+ <span class="var-name">{$functions[func].params[params].var}:&nbsp;</span></td>
+ <td>
+ {if $functions[func].params[params].data}<span class="var-description"> {$functions[func].params[params].data}</span>{/if}
+ </td></tr>
+ {/section}
+ </table>
+ {/if}
+
+<br />
+ {include file="tags.tpl" api_tags=$functions[func].api_tags info_tags=$functions[func].info_tags}
+
+ {if $functions[func].function_conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with functions:</span><br />
+ {section name=me loop=$functions[func].function_conflicts.conflicts}
+ {$functions[func].function_conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+ <br />
+ <div class="top">[ <a href="#top">Top</a> ]</div>
+ </div>
+ </div>
+{/section}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/global.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/global.tpl
new file mode 100755
index 00000000..f616349b
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/global.tpl
@@ -0,0 +1,35 @@
+{if count($globals) > 0}
+{section name=glob loop=$globals}
+<a name="{$globals[glob].global_link}" id="{$globals[glob].global_link}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <span class="var-title">
+ <span class="var-type">{$globals[glob].global_type}</span>&nbsp;&nbsp;
+ <span class="var-name">{$globals[glob].global_name}</span>
+ <span class="smalllinenumber">[line {if $globals[glob].slink}{$globals[glob].slink}{else}{$globals[glob].line_number}{/if}]</span>
+ </span>
+ </div>
+
+ {if $globals[glob].sdesc != ""}
+ {include file="docblock.tpl" sdesc=$globals[glob].sdesc desc=$globals[glob].desc}
+ {/if}
+
+ <b>Default value:</b>&nbsp;&nbsp;<span class="var-default">{$globals[glob].global_value|replace:" ":"&nbsp;"|replace:"\n":"<br />\n"|replace:"\t":"&nbsp;&nbsp;&nbsp;"}</span>
+<br />
+ {include file="tags.tpl" api_tags=$globals[glob].api_tags info_tags=$globals[glob].info_tags}
+
+ {if $globals[glob].global_conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with global variables:</span><br />
+ {section name=me loop=$globals[glob].global_conflicts.conflicts}
+ {$globals[glob].global_conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+ <br />
+ <div class="top">[ <a href="#top">Top</a> ]</div>
+ <br />
+</div>
+{/section}
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/header.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/header.tpl
new file mode 100755
index 00000000..b57cbdb6
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/header.tpl
@@ -0,0 +1,110 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+ <html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+ <title>{$title}</title>
+ <link rel="stylesheet" type="text/css" href="{$subdir}media/style.css">
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+</head>
+<body>
+
+<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
+ <tr>
+ <td class="header-top-left"><img src="{$subdir}media/logo.png" border="0" alt="phpDocumentor {$phpdocver}" /></td>
+ <td class="header-top-right">{$package}<br /><div class="header-top-right-subpackage">{$subpackage}</div></td>
+ </tr>
+ <tr><td colspan="2" class="header-line"><img src="{$subdir}media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
+ <tr>
+ <td colspan="2" class="header-menu">
+ {assign var="packagehaselements" value=false}
+ {foreach from=$packageindex item=thispackage}
+ {if in_array($package, $thispackage)}
+ {assign var="packagehaselements" value=true}
+ {/if}
+ {/foreach}
+ {if $packagehaselements}
+ [ <a href="{$subdir}classtrees_{$package}.html" class="menu">class tree: {$package}</a> ]
+ [ <a href="{$subdir}elementindex_{$package}.html" class="menu">index: {$package}</a> ]
+ {/if}
+ [ <a href="{$subdir}elementindex.html" class="menu">all elements</a> ]
+ </td>
+ </tr>
+ <tr><td colspan="2" class="header-line"><img src="{$subdir}media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
+</table>
+
+<table width="100%" border="0" cellpadding="0" cellspacing="0">
+ <tr valign="top">
+ <td width="195" class="menu">
+ <div class="package-title">{$package}</div>
+{if count($ric) >= 1}
+ <div class="package">
+ <div id="ric">
+ {section name=ric loop=$ric}
+ <p><a href="{$subdir}{$ric[ric].file}">{$ric[ric].name}</a></p>
+ {/section}
+ </div>
+ </div>
+{/if}
+{if $hastodos}
+ <div class="package">
+ <div id="todolist">
+ <p><a href="{$subdir}{$todolink}">Todo List</a></p>
+ </div>
+ </div>
+{/if}
+ <b>Packages:</b><br />
+ <div class="package">
+ {section name=packagelist loop=$packageindex}
+ <a href="{$subdir}{$packageindex[packagelist].link}">{$packageindex[packagelist].title}</a><br />
+ {/section}
+ </div>
+ <br />
+{if $tutorials}
+ <b>Tutorials/Manuals:</b><br />
+ <div class="package">
+ {if $tutorials.pkg}
+ <strong>Package-level:</strong>
+ {section name=ext loop=$tutorials.pkg}
+ {$tutorials.pkg[ext]}
+ {/section}
+ {/if}
+ {if $tutorials.cls}
+ <strong>Class-level:</strong>
+ {section name=ext loop=$tutorials.cls}
+ {$tutorials.cls[ext]}
+ {/section}
+ {/if}
+ {if $tutorials.proc}
+ <strong>Procedural-level:</strong>
+ {section name=ext loop=$tutorials.proc}
+ {$tutorials.proc[ext]}
+ {/section}
+ </div>
+ {/if}
+{/if}
+ {if !$noleftindex}{assign var="noleftindex" value=false}{/if}
+ {if !$noleftindex}
+ {if $compiledfileindex}
+ <b>Files:</b><br />
+ {eval var=$compiledfileindex}
+ {/if}
+ <br />
+ {if $compiledinterfaceindex}
+ <b>Interfaces:</b><br />
+ {eval var=$compiledinterfaceindex}
+ {/if}
+ {if $compiledclassindex}
+ <b>Classes:</b><br />
+ {eval var=$compiledclassindex}
+ {/if}
+ {/if}
+ </td>
+ <td>
+ <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
+
+{if !$hasel}{assign var="hasel" value=false}{/if}
+{if $eltype == 'class' && $is_interface}{assign var="eltype" value="interface"}{/if}
+{if $hasel}
+<h1>{$eltype|capitalize}: {$class_name}</h1>
+Source Location: {$source_location}<br /><br />
+{/if} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/include.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/include.tpl
new file mode 100755
index 00000000..ffab8eff
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/include.tpl
@@ -0,0 +1,18 @@
+{section name=includes loop=$includes}
+<a name="{$includes[includes].include_file}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <span class="include-title">
+ <span class="include-type">{$includes[includes].include_name}</span>
+ (<span class="include-name">{$includes[includes].include_value}</span>)
+ <span class="smalllinenumber">[line {if $includes[includes].slink}{$includes[includes].slink}{else}{$includes[includes].line_number}{/if}]</span>
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$includes[includes].sdesc desc=$includes[includes].desc tags=$includes[includes].tags}
+ {include file="tags.tpl" api_tags=$includes[includes].api_tags info_tags=$includes[includes].info_tags}
+ <div class="top">[ <a href="#top">Top</a> ]</div>
+ <br />
+</div>
+{/section} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/index.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/index.tpl
new file mode 100755
index 00000000..a493f70e
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/index.tpl
@@ -0,0 +1,7 @@
+{include file="header.tpl"}
+{if $contents}
+{$contents}
+{else}
+{include file="blank.tpl"}
+{/if}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/media/background.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/media/background.png
new file mode 100755
index 00000000..8c4ff464
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/media/background.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/media/empty.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/media/empty.png
new file mode 100755
index 00000000..a9f29bb1
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/media/empty.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/media/logo.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/media/logo.png
new file mode 100644
index 00000000..10fe5d61
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/media/logo.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/media/style.css b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/media/style.css
new file mode 100755
index 00000000..a06eee2f
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/media/style.css
@@ -0,0 +1,135 @@
+a{ background-color: transparent; color: #636331; text-decoration: none; }
+a:hover{ text-decoration: underline; }
+a.menu{ background-color: transparent; color: #636331; }
+body{ background-color: #ffffff; background-image: url("background.png"); background-repeat: repeat-y; color: #000000; font-family: tahoma,verdana,arial,sans-serif; font-size: 10pt; margin: 0; padding: 0; }
+dd { margin-left: 0px; padding-left: 1em; }
+div.credit{ font-size: 8pt; text-align: center; }
+div.description,div.tags,div.function{ padding-left: 15px; }
+div.header-top-right-subpackage{ background-color: #fdfcf2; color: #636331; font-size: 12pt; font-weight: bold; padding: 10px; text-align: right; }
+div.package{ padding-left: 5px; }
+div.warning{ background-color: transparent; color: #ff0000; }
+hr{ border-color: #ccc9a4; border-style: solid; height: 1px; margin-bottom: 10px; margin-top: 10px; }
+li { list-style-type: square; }
+td{ font-size: 10pt; vertical-align: top; }
+td.class-overview{ padding: 2px; padding-left: 1em; }
+td.code{ background-color: #ccc9a4; color: #000000; padding-left: 3em; padding-right: 1em; text-indent: -2em; }
+td.code-border{ background-color: #636331; color: #000000; }
+td.header-line{ background-color: #636331; color: #ffffff; }
+td.header-menu{ background-color: #ccc9a4; color: #636331; font-size: 8pt; padding: 2px; padding-right: 5px; text-align: right; }
+td.header-top-left{ background-color: #fdfcf2; color: #636331; font-size: 16pt; font-weight: bold; padding: 10px; text-align: left; }
+td.header-top-right{ background-color: #fdfcf2; color: #636331; font-size: 16pt; font-weight: bold; padding: 10px; text-align: right; }
+td.indent { padding-left: 1em; }
+td.menu{ padding: 2px; padding-left: 5px; }
+td.type,.folder-title,.method-result,.include-type{ font-style: italic; }
+ul{ margin-left: 0px; padding-left: 8px; vertical-align: top; }
+.class-name { color: #000000; font-weight: bold; }
+.class-table { width: 100%; }
+.class-table-header { border-bottom: 1px dotted #666666; text-align: left; }
+.const-title { }
+.description{ color: #000000; }
+.detail,div.top,span.smalllinenumber{ font-size: 8pt; }
+.disabled{ color: #ccc9a4; font-style: italic; }
+.evenrow{ border: 1px solid #ccc9a4; color: #000000; margin-bottom: 1em; padding: .5em; }
+.include-title{ }
+.index-item-body { margin-bottom: .5em; margin-top: .5em; }
+.index-item-description { margin-top: .25em; }
+.index-item-details { font-size: 8pt; font-style: italic; font-weight: normal; }
+.index-letter { font-size: 12pt; }
+.index-letter-menu { margin: 1em; text-align: center; }
+.index-letter-section { background-color: #ccc9a4; border: 1px dotted #636331; margin-bottom: 1em; padding: .5em; }
+.index-letter-title { font-size: 12pt; font-weight: bold; }
+.info-box{ }
+.info-box-body{ border: 1px solid #ccc9a4; padding: .5em; }
+.info-box-title{ background-color: #ccc9a4; border: 1px solid #636331; color: #636331; font-size: 14pt; font-weight: normal; margin: 1em 0em 0em 0em; padding: .25em; }
+.line-number, .var-name-summary { font-size: 8pt; font-weight: bold; }
+.method-definition { font-size: 8pt; margin-bottom: .3em; padding-left: 1em; }
+.method-definition{ font-size: 8pt; margin-bottom: .3em; }
+.method-header{ }
+.method-result { color: #636331; font-size: 8pt; font-style: italic; }
+.method-signature{ color: #ccc9a4; font-size: 85%; margin: .5em 0em; }
+.nav-bar{ font-size: 8pt; margin: 0em 0em 1em 0em; padding: .2em; text-align: right; white-space: nowrap; }
+.nav-button:active,
+.nav-button:focus,
+.nav-button:hover{ background-color: #dddddd; outline: 1px solid #999999; text-decoration: none; }
+.nav-button-disabled{ color: #999999; }
+.notes{ font-size: 8pt; font-style: italic; }
+.oddrow{ background-color: #fdfcf2; border: 1px solid #ccc9a4; color: #000000; margin-bottom: 1em; padding: .5em; }
+.package{ padding-left : 2em; font-size : 9pt; }
+.package-details{ font-size: 85%; }
+.package-title{ border-bottom: 1px solid #000000; font-size: 14pt; font-weight: bold; }
+.page-body{ margin: auto; max-width: 800px; }
+.parameters{ list-style-type: square; margin-bottom: 0em; margin-left: 3em; margin-right: 1em; margin-top: 0em; padding-left: 0em; vertical-align: top; }
+.redefinitions{ font-size: 8pt; margin-left: 2em; padding-left: 0em; }
+.separator{ background-color: #ccc9a4; height: 1px; }
+.short-description{ color: #636331; font-weight: bold; }
+.src-code li, .php-src li, .php li, .listing li { list-style-type: decimal }
+/* This will not be executed by IE, so now we have a fix! */
+.php-src { font-family: 'Courier New', Courier, monospace; font-weight: normal; }
+.sub-package{ font-size: 120%; font-weight: bold; }
+.tags{ color: #636331; list-style-type: square; margin-bottom: 0em; margin-left: 3em; margin-right: 1em; margin-top: 0em; padding-left: 0em; vertical-align: top; }
+.tree dl { margin: 0px; }
+.tutorial{ border-color: #0066ff; border-width: thin; }
+.tutorial-nav-box{ background-color: #fdfcf2; border: 1px solid #999999; width: 100%; }
+.var-default{ }
+.var-summary-description { font-size: 8pt; font-weight: normal; color: #000000; }
+.var-description{ color: #000000; font-weight: normal; }
+.var-header{ }
+.var-name, .const-name, .method-title,.method-name,.include-name,.var-name,.field { font-weight: bold; }
+.var-summary,.method-summary{ font-size: 8pt;}
+.var-title{ margin-bottom: .3em; }
+.var-type{ color: #636331; font-style: italic; }
+.var-type-summary{ color: #636331; font-size: 8pt; font-style: italic; padding-left: 1em; }
+.warning{ color: #ff6600; }
+
+/* Syntax highlighting */
+
+.src-code { background-color: #f5f5f5; border: 1px solid #ccc9a4; padding: 1em; margin : 0px;
+ font-family: 'Courier New', Courier, monospace; font-weight: normal; }
+.src-line { font-family: 'Courier New', Courier, monospace; font-weight: normal; }
+
+.src-comm { color: green; }
+.src-id { }
+.src-inc { color: #0000FF; }
+.src-key { color: #0000FF; }
+.src-num { color: #CC0000; }
+.src-str { color: #66cccc; }
+.src-sym { font-weight: bold; }
+.src-var { }
+
+.src-php { font-weight: bold; }
+
+.src-doc { color: #009999 }
+.src-doc-close-template { color: #0000FF }
+.src-doc-coretag { color: #0099FF; font-weight: bold }
+.src-doc-inlinetag { color: #0099FF }
+.src-doc-internal { color: #6699cc }
+.src-doc-tag { color: #0080CC }
+.src-doc-template { color: #0000FF }
+.src-doc-type { font-style: italic }
+.src-doc-var { font-style: italic }
+
+.tute-tag { color: #009999 }
+.tute-attribute-name { color: #0000FF }
+.tute-attribute-value { color: #0099FF }
+.tute-entity { font-weight: bold; }
+.tute-comment { font-style: italic }
+.tute-inline-tag { color: #636311; font-weight: bold }
+
+/* tutorial */
+
+.authors { }
+.author { font-style: italic; font-weight: bold }
+.author-blurb { margin: .5em 0em .5em 2em; font-size: 85%; font-weight: normal; font-style: normal }
+.example { border: 1px dashed #999999; background-color: #EEEEEE; padding: .5em; }
+.listing { border: 1px dashed #999999; background-color: #EEEEEE; padding: .5em; white-space: nowrap; }
+.release-info { font-size: 85%; font-style: italic; margin: 1em 0em }
+.ref-title-box { }
+.ref-title { }
+.ref-purpose { font-style: italic; color: #666666 }
+.ref-synopsis { }
+.title { font-weight: bold; margin: 1em 0em 0em 0em; padding: .25em; border: 2px solid #999999; background-color: #fdfcf2;
+ color: #636331; }
+.cmd-synopsis { margin: 1em 0em }
+.cmd-title { font-weight: bold }
+.toc { margin-left: 2em; padding-left: 0em }
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/method.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/method.tpl
new file mode 100755
index 00000000..8ea3853c
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/method.tpl
@@ -0,0 +1,176 @@
+<a name='method_detail'></a>
+{section name=methods loop=$methods}
+{if $methods[methods].static}
+<a name="method{$methods[methods].function_name}" id="{$methods[methods].function_name}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+<div class="method-header">
+ <span class="method-title">static method {$methods[methods].function_name}</span>&nbsp;&nbsp;<span class="smalllinenumber">[line {if $methods[methods].slink}{$methods[methods].slink}{else}{$methods[methods].line_number}{/if}]</span>
+</div>
+<br />
+
+ <div class="function">
+ <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code-border">
+ <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">&nbsp;
+ <code>static {$methods[methods].function_return} {if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}(
+{if count($methods[methods].ifunction_call.params)}
+{section name=params loop=$methods[methods].ifunction_call.params}
+{if $smarty.section.params.iteration != 1}, {/if}
+{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}{$methods[methods].ifunction_call.params[params].type}
+{$methods[methods].ifunction_call.params[params].name}{if $methods[methods].ifunction_call.params[params].hasdefault} = {$methods[methods].ifunction_call.params[params].default}]{/if}
+{/section}
+&nbsp;
+{/if})</code>
+ </td></tr></table>
+ </td></tr></table><br /></div>
+
+ {include file="docblock.tpl" sdesc=$methods[methods].sdesc desc=$methods[methods].desc}
+
+ {if $methods[methods].params}
+ <strong>Parameters:</strong><br />
+ <table border="0" cellspacing="0" cellpadding="0">
+ {section name=params loop=$methods[methods].params}
+ <tr><td class="indent">
+ <span class="var-type">{$methods[methods].params[params].datatype}</span>&nbsp;&nbsp;</td>
+ <td>
+ <span class="var-name">{$methods[methods].params[params].var}:&nbsp;</span></td>
+ <td>
+ {if $methods[methods].params[params].data}<span class="var-description"> {$methods[methods].params[params].data}</span>{/if}
+ </td></tr>
+ {/section}
+ </table>
+
+ {/if}
+<br />
+ {include file="tags.tpl" api_tags=$methods[methods].api_tags info_tags=$methods[methods].info_tags}
+
+ {if $methods[methods].method_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$methods[methods].method_overrides.link}</dt>
+ {if $methods[methods].method_overrides.sdesc}
+ <dd>{$methods[methods].method_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+ {if $methods[methods].method_implements}
+ <hr class="separator" />
+ <div class="notes">Implementation of:</div>
+ {section name=imp loop=$methods[methods].method_implements}
+ <dl>
+ <dt>{$methods[methods].method_implements[imp].link}</dt>
+ {if $methods[methods].method_implements[imp].sdesc}
+ <dd>{$methods[methods].method_implements[imp].sdesc}</dd>
+ {/if}
+ </dl>
+ {/section}
+ {/if}
+
+ {if $methods[methods].descmethod}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=dm loop=$methods[methods].descmethod}
+ <li>
+ {$methods[methods].descmethod[dm].link}
+ {if $methods[methods].descmethod[dm].sdesc}
+ : {$methods[methods].descmethod[dm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+ <br />
+ <div class="top">[ <a href="#top">Top</a> ]</div>
+</div>
+{/if}
+{/section}
+
+{section name=methods loop=$methods}
+{if !$methods[methods].static}
+<a name="method{$methods[methods].function_name}" id="{$methods[methods].function_name}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+<div class="method-header">
+ <span class="method-title">{if $methods[methods].ifunction_call.constructor}Constructor {elseif $methods[methods].ifunction_call.destructor}Destructor {/if}{$methods[methods].function_name}</span>&nbsp;&nbsp;<span class="smalllinenumber">[line {if $methods[methods].slink}{$methods[methods].slink}{else}{$methods[methods].line_number}{/if}]</span>
+</div>
+<br />
+
+ <div class="function">
+ <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code-border">
+ <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">&nbsp;
+ <code>{$methods[methods].function_return} {if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}(
+{if count($methods[methods].ifunction_call.params)}
+{section name=params loop=$methods[methods].ifunction_call.params}
+{if $smarty.section.params.iteration != 1}, {/if}
+{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}{$methods[methods].ifunction_call.params[params].type}
+{$methods[methods].ifunction_call.params[params].name}{if $methods[methods].ifunction_call.params[params].hasdefault} = {$methods[methods].ifunction_call.params[params].default}]{/if}
+{/section}
+&nbsp;
+{/if})</code>
+ </td></tr></table>
+ </td></tr></table><br /></div>
+
+ {include file="docblock.tpl" sdesc=$methods[methods].sdesc desc=$methods[methods].desc}
+
+ {if $methods[methods].params}
+ <strong>Parameters:</strong><br />
+ <table border="0" cellspacing="0" cellpadding="0">
+ {section name=params loop=$methods[methods].params}
+ <tr><td class="indent">
+ <span class="var-type">{$methods[methods].params[params].datatype}</span>&nbsp;&nbsp;</td>
+ <td>
+ <span class="var-name">{$methods[methods].params[params].var}:&nbsp;</span></td>
+ <td>
+ {if $methods[methods].params[params].data}<span class="var-description"> {$methods[methods].params[params].data}</span>{/if}
+ </td></tr>
+ {/section}
+ </table>
+
+ {/if}
+<br />
+ {include file="tags.tpl" api_tags=$methods[methods].api_tags info_tags=$methods[methods].info_tags}
+
+ {if $methods[methods].method_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$methods[methods].method_overrides.link}</dt>
+ {if $methods[methods].method_overrides.sdesc}
+ <dd>{$methods[methods].method_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+ {if $methods[methods].method_implements}
+ <hr class="separator" />
+ <div class="notes">Implementation of:</div>
+ {section name=imp loop=$methods[methods].method_implements}
+ <dl>
+ <dt>{$methods[methods].method_implements[imp].link}</dt>
+ {if $methods[methods].method_implements[imp].sdesc}
+ <dd>{$methods[methods].method_implements[imp].sdesc}</dd>
+ {/if}
+ </dl>
+ {/section}
+ {/if}
+
+ {if $methods[methods].descmethod}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=dm loop=$methods[methods].descmethod}
+ <li>
+ {$methods[methods].descmethod[dm].link}
+ {if $methods[methods].descmethod[dm].sdesc}
+ : {$methods[methods].descmethod[dm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+ <br />
+ <div class="top">[ <a href="#top">Top</a> ]</div>
+</div>
+{/if}
+{/section}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/packages.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/packages.tpl
new file mode 100755
index 00000000..0967e6e7
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/packages.tpl
@@ -0,0 +1,3 @@
+{section name=packages loop=$packages}
+<a href="{$packages[packages].link}">{$packages[packages].title}</a>
+{/section} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/page.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/page.tpl
new file mode 100755
index 00000000..83cfc582
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/page.tpl
@@ -0,0 +1,210 @@
+{include file="header.tpl" eltype="Procedural file" class_name=$name hasel=true contents=$pagecontents}
+
+<a name="sec-description"></a>
+<div class="info-box">
+ <div class="info-box-title">Page Details</div>
+ <div class="nav-bar">
+ {if $classes || $includes || $defines || $globals || $functions}
+ <span class="disabled">Page Details</span> |
+ {/if}
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Globals</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="docblock.tpl" type="page" desc=$desc sdesc=$sdesc}
+ {include file="filetags.tpl" tags=$tags}
+
+ {if $tutorial}
+ <hr class="separator" />
+ <div class="notes">Tutorial: <span class="tutorial">{$tutorial}</div>
+ {/if}
+ </div>
+</div>
+
+{if $classes}
+ <a name="sec-classes"></a>
+ <div class="info-box">
+ <div class="info-box-title">Classes</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Page Details</a> |
+ <span class="disabled">Classes</span>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Globals</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <table cellpadding="2" cellspacing="0" class="class-table">
+ <tr>
+ <th class="class-table-header">Class</th>
+ <th class="class-table-header">Description</th>
+ </tr>
+ {section name=classes loop=$classes}
+ <tr>
+ <td style="padding-right: 2em; vertical-align: top">
+ {$classes[classes].link}
+ </td>
+ <td>
+ {if $classes[classes].sdesc}
+ {$classes[classes].sdesc}
+ {else}
+ {$classes[classes].desc}
+ {/if}
+ </td>
+ </tr>
+ {/section}
+ </table>
+ </div>
+ </div>
+{/if}
+
+{if $includes}
+ <a name="sec-includes"></a>
+ <div class="info-box">
+ <div class="info-box-title">Includes</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Page Details</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ <span class="disabled">Includes</span>
+ {if $defines || $globals || $functions}|{/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Globals</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="include.tpl"}
+ </div>
+ </div><br />
+{/if}
+
+{if $defines}
+ <a name="sec-constants"></a>
+ <div class="info-box">
+ <div class="info-box-title">Constants</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Page Details</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ <span class="disabled">Constants</span>
+ {if $globals || $functions}|{/if}
+ {if $globals}
+ <a href="#sec-variables">Globals</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="define.tpl"}
+ </div>
+ </div><br />
+{/if}
+
+{if $globals}
+ <a name="sec-variables"></a>
+ <div class="info-box">
+ <div class="info-box-title">Globals</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Page Details</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ <span class="disabled">Globals</span>
+ {if $functions}|{/if}
+ {if $globals}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="global.tpl"}
+ </div>
+ </div><br />
+{/if}
+
+{if $functions}
+ <a name="sec-functions"></a>
+ <div class="info-box">
+ <div class="info-box-title">Functions</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Page Details</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Globals</a>
+ {if $functions}|{/if}
+ {/if}
+ <span class="disabled">Functions</span>
+ </div>
+ <div class="info-box-body">
+ {include file="function.tpl"}
+ </div>
+ </div><br />
+{/if}
+
+{include file="footer.tpl" top3=true}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/pkgelementindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/pkgelementindex.tpl
new file mode 100755
index 00000000..7f12c6c5
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/pkgelementindex.tpl
@@ -0,0 +1,15 @@
+{include file="header.tpl"}
+<a name="top"></a>
+<h1>Element index for package {$package}</h1>
+{if count($packageindex) > 1}
+ <h3>Package indexes</h3>
+ <ul>
+ {section name=p loop=$packageindex}
+ {if $packageindex[p].title != $package}
+ <li><a href="elementindex_{$packageindex[p].title}.html">{$packageindex[p].title}</a></li>
+ {/if}
+ {/section}
+ </ul>
+{/if}
+{include file="basicindex.tpl" indexname=elementindex_$package}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/ric.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/ric.tpl
new file mode 100755
index 00000000..eff734c1
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/ric.tpl
@@ -0,0 +1,6 @@
+{include file="header.tpl"}
+<h1 align="center">{$name}</h1>
+<pre>
+{$contents|htmlentities}
+</pre>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/tags.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/tags.tpl
new file mode 100755
index 00000000..9f965d88
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/tags.tpl
@@ -0,0 +1,22 @@
+{if count($api_tags) > 0}
+<strong>API Tags:</strong><br />
+<table border="0" cellspacing="0" cellpadding="0">
+{section name=tag loop=$api_tags}
+ <tr>
+ <td class="indent"><strong>{$api_tags[tag].keyword|capitalize}:</strong>&nbsp;&nbsp;</td><td>{$api_tags[tag].data}</td>
+ </tr>
+{/section}
+</table>
+<br />
+{/if}
+
+{if count($info_tags) > 0}
+<strong>Information Tags:</strong><br />
+<table border="0" cellspacing="0" cellpadding="0">
+{section name=tag loop=$info_tags}
+ <tr>
+ <td class="indent"><strong>{$info_tags[tag].keyword|capitalize}:</strong>&nbsp;&nbsp;</td><td>{$info_tags[tag].data}</td>
+ </tr>
+{/section}
+</table>
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/todolist.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/todolist.tpl
new file mode 100755
index 00000000..f929ccdb
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/todolist.tpl
@@ -0,0 +1,14 @@
+{include file="header.tpl" title="Todo List"}
+<div align="center"><h1>Todo List</h1></div>
+{foreach from=$todos key=todopackage item=todo}
+<h2>{$todopackage}</h2>
+{section name=todo loop=$todo}
+<h3>{$todo[todo].link}</h3>
+<ul>
+{section name=t loop=$todo[todo].todos}
+ <li>{$todo[todo].todos[t]}</li>
+{/section}
+</ul>
+{/section}
+{/foreach}
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/tutorial.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/tutorial.tpl
new file mode 100755
index 00000000..a943522c
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/tutorial.tpl
@@ -0,0 +1,32 @@
+{include file="header.tpl" title=$title}
+{if $nav}
+<table width="100%" border="0" cellpadding="0" cellspacing="0">
+<tr>
+<td width="10%" align="left" valign="bottom">{if $prev}<a href=
+"{$prev}">{/if}Prev{if $prev}</a>{/if}</td>
+<td width="80%" align="center" valign="bottom"></td>
+<td width="10%" align="right" valign="bottom">{if $next}<a href=
+"{$next}">{/if}Next{if $next}</a>{/if}</td>
+</tr>
+</table>
+{/if}
+{$contents}
+{if $nav}
+<table width="100%" border="0" cellpadding="0" cellspacing="0">
+<tr>
+<td width="33%" align="left" valign="top">{if $prev}<a href="{$prev}">{/if}
+Prev{if $prev}</a>{/if}</td>
+<td width="34%" align="center" valign="top">{if $up}<a href=
+"{$up}">Up</a>{else}&nbsp;{/if}</td>
+<td width="33%" align="right" valign="top">{if $next}<a href=
+"{$next}">{/if}Next{if $next}</a>{/if}</td>
+</tr>
+
+<tr>
+<td width="33%" align="left" valign="top">{if $prevtitle}{$prevtitle}{/if}</td>
+<td width="34%" align="center" valign="top">{if $uptitle}{$uptitle}{/if}</td>
+<td width="33%" align="right" valign="top">{if $nexttitle}{$nexttitle}{/if}</td>
+</tr>
+</table>
+{/if}
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/tutorial_toc.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/tutorial_toc.tpl
new file mode 100755
index 00000000..3d22d403
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/tutorial_toc.tpl
@@ -0,0 +1,29 @@
+{if count($toc)}
+<h1 align="center">Table of Contents</h1>
+<ul>
+{section name=toc loop=$toc}
+{if $toc[toc].tagname == 'refsect1'}
+{assign var="context" value="refsect1"}
+{$toc[toc].link}<br />
+{/if}
+{if $toc[toc].tagname == 'refsect2'}
+{assign var="context" value="refsect2"}
+&nbsp;&nbsp;&nbsp;{$toc[toc].link}<br />
+{/if}
+{if $toc[toc].tagname == 'refsect3'}
+{assign var="context" value="refsect3"}
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{$toc[toc].link}<br />
+{/if}
+{if $toc[toc].tagname == 'table'}
+{if $context == 'refsect2'}&nbsp;&nbsp;&nbsp;{/if}
+{if $context == 'refsect3'}&nbsp;&nbsp;&nbsp;{/if}
+Table: {$toc[toc].link}
+{/if}
+{if $toc[toc].tagname == 'example'}
+{if $context == 'refsect2'}&nbsp;&nbsp;&nbsp;{/if}
+{if $context == 'refsect3'}&nbsp;&nbsp;&nbsp;{/if}
+Table: {$toc[toc].link}
+{/if}
+{/section}
+</ul>
+{/if} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/tutorial_tree.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/tutorial_tree.tpl
new file mode 100755
index 00000000..dd2e5811
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/tutorial_tree.tpl
@@ -0,0 +1,5 @@
+<ul>
+ <li type="square"><a href="{$main.link}">{$main.title|strip_tags}</a>
+{if $kids}{$kids}</li>{/if}
+</ul>
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/var.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/var.tpl
new file mode 100755
index 00000000..45aba195
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/HandS/templates/var.tpl
@@ -0,0 +1,94 @@
+{section name=vars loop=$vars}
+{if $vars[vars].static}
+<a name="var{$vars[vars].var_name}" id="{$vars[vars].var_name}"><!-- --></A>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="var-header">
+ <span class="var-title">
+ static <span class="var-type">{$vars[vars].var_type}</span>&nbsp;&nbsp;
+ <span class="var-name">{$vars[vars].var_name}</span>
+ {if $vars[vars].var_default} = <span class="var-default">{$vars[vars].var_default|replace:"\n":"<br />"}</span>{/if}
+ <span class="smalllinenumber">[line {if $vars[vars].slink}{$vars[vars].slink}{else}{$vars[vars].line_number}{/if}]</span>
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$vars[vars].sdesc desc=$vars[vars].desc}
+ {include file="tags.tpl" api_tags=$vars[vars].api_tags info_tags=$vars[vars].info_tags}
+
+ {if $vars[vars].var_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$vars[vars].var_overrides.link}</dt>
+ {if $vars[vars].var_overrides.sdesc}
+ <dd>{$vars[vars].var_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+
+ {if $vars[vars].descvar}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=vm loop=$vars[vars].descvar}
+ <li>
+ {$vars[vars].descvar[vm].link}
+ {if $vars[vars].descvar[vm].sdesc}
+ : {$vars[vars].descvar[vm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+ <br />
+ <div class="top">[ <a href="#top">Top</a> ]</div>
+</div>
+{/if}
+{/section}
+{section name=vars loop=$vars}
+{if !$vars[vars].static}
+<a name="var{$vars[vars].var_name}" id="{$vars[vars].var_name}"><!-- --></A>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="var-header">
+ <span class="var-title">
+ <span class="var-type">{$vars[vars].var_type}</span>&nbsp;&nbsp;
+ <span class="var-name">{$vars[vars].var_name}</span>
+ {if $vars[vars].var_default} = <span class="var-default">{$vars[vars].var_default|replace:"\n":"<br />"}</span>{/if}
+ <span class="smalllinenumber">[line {if $vars[vars].slink}{$vars[vars].slink}{else}{$vars[vars].line_number}{/if}]</span>
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$vars[vars].sdesc desc=$vars[vars].desc}
+ {include file="tags.tpl" api_tags=$vars[vars].api_tags info_tags=$vars[vars].info_tags}
+
+ {if $vars[vars].var_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$vars[vars].var_overrides.link}</dt>
+ {if $vars[vars].var_overrides.sdesc}
+ <dd>{$vars[vars].var_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+
+ {if $vars[vars].descvar}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=vm loop=$vars[vars].descvar}
+ <li>
+ {$vars[vars].descvar[vm].link}
+ {if $vars[vars].descvar[vm].sdesc}
+ : {$vars[vars].descvar[vm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+ <br />
+ <div class="top">[ <a href="#top">Top</a> ]</div>
+</div>
+{/if}
+{/section}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/options.ini b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/options.ini
new file mode 100755
index 00000000..73479c5f
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/options.ini
@@ -0,0 +1,577 @@
+preservedocbooktags = false
+
+;; used to highlight the {@source} inline tag, @filesource tag, and @example tag
+[highlightSourceTokens]
+;; format:
+;; T_CONSTANTNAME = open
+;; /T_CONSTANTNAME = close
+
+T_INCLUDE = <span class="src-inc">
+/T_INCLUDE = </span>
+T_INCLUDE_ONCE = <span class="src-inc">
+/T_INCLUDE_ONCE = </span>
+T_REQUIRE_ONCE = <span class="src-inc">
+/T_REQUIRE_ONCE = </span>
+T_REQUIRE_ONCE = <span class="src-inc">
+/T_REQUIRE_ONCE = </span>
+
+T_CONSTANT_ENCAPSED_STRING = <span class="src-str">
+/T_CONSTANT_ENCAPSED_STRING = </span>
+T_STRING_VARNAME = <span class="src-str">
+/T_STRING_VARNAME = </span>
+
+T_STRING = <span class="src-id">
+/T_STRING = </span>
+
+T_DNUMBER = <span class="src-num">
+/T_DNUMBER = </span>
+T_LNUMBER = <span class="src-num">
+/T_LNUMBER = </span>
+
+T_VARIABLE = <span class="src-var">
+/T_VARIABLE = </span>
+
+T_COMMENT = <span class="src-comm">
+/T_COMMENT = </span>
+T_ML_COMMENT = <span class="src-comm">
+/T_ML_COMMENT = </span>
+
+T_OBJECT_OPERATOR = <span class="src-sym">
+/T_OBJECT_OPERATOR = </span>
+
+T_ABSTRACT = <span class="src-key">
+/T_ABSTRACT = </span>
+T_CLONE = <span class="src-key">
+/T_CLONE = </span>
+T_HALT_COMPILER = <span class="src-key">
+/T_HALT_COMPILER = </span>
+T_ARRAY = <span class="src-key">
+/T_ARRAY = </span>
+T_AS = <span class="src-key">
+/T_AS = </span>
+T_BREAK = <span class="src-key">
+/T_BREAK = </span>
+T_CLASS = <span class="src-key">
+/T_CLASS = </span>
+T_CASE = <span class="src-key">
+/T_CASE = </span>
+T_CONST = <span class="src-key">
+/T_CONST = </span>
+T_CONTINUE = <span class="src-key">
+/T_CONTINUE = </span>
+T_DECLARE = <span class="src-key">
+/T_DECLARE = </span>
+T_DEFAULT = <span class="src-key">
+/T_DEFAULT = </span>
+T_ELSE = <span class="src-key">
+/T_ELSE = </span>
+T_ELSEIF = <span class="src-key">
+/T_ELSEIF = </span>
+T_EMPTY = <span class="src-key">
+/T_EMPTY = </span>
+T_ENDDECLARE = <span class="src-key">
+/T_ENDDECLARE = </span>
+T_ENDFOR = <span class="src-key">
+/T_ENDFOR = </span>
+T_ENDSWITCH = <span class="src-key">
+/T_ENDSWITCH = </span>
+T_ENDFOREACH = <span class="src-key">
+/T_ENDFOREACH = </span>
+T_ENDIF = <span class="src-key">
+/T_ENDIF = </span>
+T_ENDWHILE = <span class="src-key">
+/T_ENDWHILE = </span>
+T_EXIT = <span class="src-key">
+/T_EXIT = </span>
+T_EXTENDS = <span class="src-key">
+/T_EXTENDS = </span>
+T_FINAL = <span class="src-key">
+/T_FINAL = </span>
+T_FOR = <span class="src-key">
+/T_FOR = </span>
+T_FOREACH = <span class="src-key">
+/T_FOREACH = </span>
+T_FUNCTION = <span class="src-key">
+/T_FUNCTION = </span>
+T_GLOBAL = <span class="src-key">
+/T_GLOBAL = </span>
+T_IF = <span class="src-key">
+/T_IF = </span>
+T_IMPLEMENTS = <span class="src-key">
+/T_IMPLEMENTS = </span>
+T_INTERFACE = <span class="src-key">
+/T_INTERFACE = </span>
+T_LOGICAL_AND = <span class="src-key">
+/T_LOGICAL_AND = </span>
+T_LOGICAL_OR = <span class="src-key">
+/T_LOGICAL_OR = </span>
+T_LOGICAL_XOR = <span class="src-key">
+/T_LOGICAL_XOR = </span>
+T_NEW = <span class="src-key">
+/T_NEW = </span>
+T_PRIVATE = <span class="src-key">
+/T_PRIVATE = </span>
+T_PROTECTED = <span class="src-key">
+/T_PROTECTED = </span>
+T_PUBLIC = <span class="src-key">
+/T_PUBLIC = </span>
+T_RETURN = <span class="src-key">
+/T_RETURN = </span>
+T_STATIC = <span class="src-key">
+/T_STATIC = </span>
+T_SWITCH = <span class="src-key">
+/T_SWITCH = </span>
+T_VAR = <span class="src-key">
+/T_VAR = </span>
+T_WHILE = <span class="src-key">
+/T_WHILE = </span>
+
+T_DOUBLE_COLON = <span class="src-sym">
+/T_DOUBLE_COLON = </span>
+
+T_OPEN_TAG = <span class="src-php">
+/T_OPEN_TAG = </span>
+T_OPEN_TAG_WITH_ECHO = <span class="src-php">
+/T_OPEN_TAG_WITH_ECHO = </span>
+T_CLOSE_TAG = <span class="src-php">
+/T_CLOSE_TAG = </span>
+
+
+[highlightSource]
+;; this is for highlighting things that aren't tokens like "&"
+;; format:
+;; word = open
+;; /word = close
+@ = <span class="src-sym">
+/@ = </span>
+& = <span class="src-sym">
+/& = </span>
+[ = <span class="src-sym">
+/[ = </span>
+] = <span class="src-sym">
+/] = </span>
+! = <span class="src-sym">
+/! = </span>
+";" = <span class="src-sym">
+/; = </span>
+( = <span class="src-sym">
+/( = </span>
+) = <span class="src-sym">
+/) = </span>
+, = <span class="src-sym">
+/, = </span>
+{ = <span class="src-sym">
+/{ = </span>
+} = <span class="src-sym">
+/} = </span>
+""" = <span class="src-str">
+/" = </span>
+
+[highlightDocBlockSourceTokens]
+;; this is for docblock tokens, using by phpDocumentor_HighlightParser
+;; tagphptype is for "string" in @param string description, for example
+docblock = <span class="src-doc">
+/docblock = </span>
+tagphptype = <span class="src-doc-type">
+/tagphptype = </span>
+tagvarname = <span class="src-doc-var">
+/tagvarname = </span>
+coretag = <span class="src-doc-coretag">
+/coretag = </span>
+tag = <span class="src-doc-tag">
+/tag = </span>
+inlinetag = <span class="src-doc-inlinetag">
+/inlinetag = </span>
+internal = <span class="src-doc-internal">
+/internal = </span>
+closetemplate = <span class="src-doc-close-template">
+/closetemplate = </span>
+docblocktemplate = <span class="src-doc-template">
+/docblocktemplate = </span>
+
+[highlightTutorialSourceTokens]
+;; this is for XML DocBook-based tutorials, highlighted by phpDocumentor_TutorialHighlightParser
+;; <tag>
+opentag = <span class="tute-tag">
+/opentag = </span>
+;; </tag>
+closetag = <span class="tute-tag">
+/closetag = </span>
+;; <tag attribute="value">
+attribute = <span class="tute-attribute-name">
+/attribute = </span>
+;; <tag attribute="value">
+attributevalue = <span class="tute-attribute-value">
+/attributevalue = </span>
+;; &entity;
+entity = <span class="tute-entity">
+/entity = </span>
+;; <!-- comment -->
+comment = <span class="tute-comment">
+/comment = </span>
+;; {@inline tag}
+itag = <span class="tute-inline-tag">
+/itag = </span>
+
+;; used for translation of html in DocBlocks
+[desctranslate]
+ul = <ul>
+/ul = </ul>
+ol = <ol>
+/ol = </ol>
+li = <li>
+/li = </li>
+code =
+/code =
+var = <var>
+/var = </var>
+samp = <samp>
+/samp = </samp>
+kbd = <kbd>
+/kbd = </kbd>
+pre = <pre>
+/pre = </pre>
+p = <p>
+/p = </p>
+b = <strong>
+/b = </strong>
+i = <em>
+/i = </em>
+br = <br />
+
+[ppage]
+;; this is the DocBook package page translation section. All DocBook tags
+;; that have a corresponding html tag must be listed here. Entities should
+;; also be listed here
+;;
+;; examples:
+;; 1)
+;; tagname = newtagname
+;;
+;; This is the simplest case, where all attributes will be added into the
+;; starting tag and the ending tag will be html/xml style </tranlatedtagname>
+;; <tagname></tagname> becomes <newtagname></newtagname> and
+;; <tagname attr="value"></tagname> becomes
+;; <newtagname attr="value"></newtagname>
+;;
+;; 2)
+;; tagname = newtagname
+;; tagname->attr = newattrname
+;;
+;; in this case, everything will be like the first case, except tags like:
+;; <tagname attr="value"></tagname> will become
+;; <newtagname newattrname="value"></newtagname>
+;;
+;; 3)
+;; tagname = newtagname
+;; tagname->attr = newattrname
+;; tagname->attr+value = newvalue
+;;
+;; in this case, the value is also translated to another. This can be useful
+;; for instances such as focus="middle" changing to align="center" or something
+;; of that nature.
+;; <tagname attr="value"></tagname> will become
+;; <newtagname newattrname="newvalue"></newtagname>
+;;
+;; 4)
+;; tagname = newtagname
+;; tagname->attr1 = newattrname
+;; tagname->attr2 = newattrname
+;; tagname->attr1+value|attr2+value = newvalue
+;;
+;; in this case, two attributes combine to make one new attribute, and the combined
+;; value is translated into a new value
+;; <tagname attr1="value1" attr2="value2"></tagname> will become
+;; <newtagname newattrname="newvalue"></newtagname>
+;;
+;; 5)
+;; tagname = newtagname
+;; tagname!attr = dummy
+;;
+;; here, the attribute will be ignored. dummy is not used and may be any value
+;; <tagname attr="value"></tagname> will become
+;; <newtagname></newtagname>
+;;
+;; 6)
+;; tagname = newtagname
+;; tagname! = dummy
+;;
+;; here, all attributes will be ignored. dummy is not used and may be any value
+;; <tagname attr1="value" attr2="foo"></tagname> will become
+;; <newtagname></newtagname>
+;;
+;; 7)
+;; tagname = newtagname
+;; tagname/ = 1
+;;
+;; here, the tag will be translated as a single tag with no closing tag, and all
+;; attributes
+;; <tagname attr="val">{text text}</tagname> will become
+;; <newtagname attr="val" />
+;;
+;; 8)
+;; tagname = <starttaginfo />
+;; /tagname = closetagtext
+;;
+;; in this case, the text <starttaginfo> will be inserted exactly as entered for
+;; <tagname> and closetagtext for </tagname>
+;; <tagname attr="val"></tagname> will become
+;; <starttaginfo />closetagtext
+;;
+;; 9)
+;; $attr$my_attribute = newattrname
+;;
+;; tagname = newtagname
+;;
+;; in this case, all occurences of my_attribute in any tag will be changed to
+;; newattrname. This is useful for changing things like role="php" to
+;; class="php," for example. Note that the text "$attr$" MUST be on the line
+;; start for phpDocumentor to recognize it.
+;;
+;; 10)
+;; &entity; = translation text
+;; &quot; = &quot;
+;; &quot; = """
+;; &lt; = <
+;;
+;; Use this to control translation of entities to their appropriate values
+
+&nbsp; = &nbsp;
+&quot; = &quot;
+&rdquo; = &rdquo;
+&ldquo; = &ldquo;
+&amp; = &amp;
+&lt; = &lt;
+&gt; = &gt;
+&copy; = &copy;
+
+$attr$role = class
+
+abbrev = abbr
+
+blockquote = blockquote
+
+arg = span
+arg->choice = class
+
+author = <span class="author">
+/author = </span>
+author! = 0
+
+authorblurb = <div class="author-blurb">
+/authorblurb = </div>
+
+authorgroup = <div class="authors"><h2 class="title">Authors</h2>
+/authorgroup = </div>
+authorgroup! = 0
+
+caution = <span class="warning">
+/caution = </span>
+caution! = 0
+
+cmdsynopsis = <div class="cmd-synopsis">
+/cmdsynopsis = </div>
+
+command = <span class="cmd-title">
+/command = </span>
+
+copyright = <div class="notes">
+/copyright = </div>
+
+emphasis = strong
+
+example = <div class="src-code">
+/example = </div>
+example! = 0
+
+function =
+/function = ()
+
+formalpara = p
+
+graphic = img
+graphic->fileref = src
+graphic/ =
+
+important = strong
+
+informalequation = blockquote
+
+informalexample = div
+
+inlineequation = em
+
+itemizedlist = ul
+
+listitem = li
+
+literal = code
+
+literallayout = span
+
+option = " "
+/option =
+
+orderedlist = ol
+
+para = p
+
+programlisting = <div class="src-code">
+/programlisting = </div>
+programlisting! = 0
+
+refentry = div
+
+refnamediv = <div class="ref-title-box">
+/refnamediv = </div>
+refnamediv! = 0
+
+refname = <h1 class="ref-title">
+/refname = </h1>
+
+refpurpose = <h2 class="ref-purpose">
+/refpurpose = </h2>
+
+refsynopsisdiv = <div class="ref-synopsis">
+/refsynopsisdiv = </div>
+refsynopsisdiv! = 0
+
+refsect1 = span
+
+refsect2 =
+/refsect2 = <hr />
+
+refsect3 =
+/refsect3 = <br />
+
+releaseinfo = <div class="release-info">(
+/releaseinfo = )</div>
+
+simpara =
+/simpara = <br />
+simpara! = 0
+
+subscript = sub
+
+superscript = super
+
+table = table
+
+table->colsep = rules
+table->rowsep = rules
+table->colsep+1|rowsep+1 = all
+table->colsep+1|rowsep+0 = cols
+table->colsep+0|rowsep+1 = rows
+
+table->frame = frame
+table->frame+all = border
+table->frame+none = void
+table->frame+sides = vsides
+table->frame+top = above
+table->frame+topbot = hsides
+
+thead = thead
+
+tfoot = tfoot
+
+tbody = tbody
+
+colspec = col
+
+tgroup = colgroup
+tgroup/ = 1
+tgroup->cols = span
+
+row = tr
+
+entry = td
+entry->morerows = colspan
+entry->morerows+1 = 2
+entry->morerows+2 = 3
+entry->morerows+3 = 4
+entry->morerows+4 = 5
+entry->morerows+5 = 6
+entry->morerows+6 = 7
+entry->morerows+7 = 8
+entry->morerows+8 = 9
+entry->morerows+9 = 10
+entry->morerows+10 = 11
+;; add more if you need more colspans
+
+warning = <span class="warning">
+/warning = </span>
+warning! = 0
+
+;; now begins the attributes that should be tags in cdata
+[$attr$id]
+open = a
+;close = /a
+cdata! = true
+quotevalues = true
+separator = "="
+;separateall = true
+$id = name
+
+;; now begins the sections that deal with <title>
+[refsynopsisdiv_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h1 class="title">
+close = </h1>
+
+[refsect1_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h2 class="title">
+close = </h2>
+
+[refsect2_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h3 class="title">
+close = </h3>
+
+[refsect3_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h4 class="title">
+close = </h4>
+
+[para_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <div class="title">
+close = </div>
+
+[formalpara_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <div class="title">
+close = </div>
+
+[example_title]
+;tag_attr = true
+;attr_name = title
+;cdata_start = true
+cdata_end = true
+open = </td></tr><tr><td><strong>
+close = </strong>
+
+[table_title]
+;tag_attr = true
+;attr_name = true
+cdata_start = true
+open = <caption>
+close = </caption>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/basicindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/basicindex.tpl
new file mode 100755
index 00000000..36cf9b4f
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/basicindex.tpl
@@ -0,0 +1,18 @@
+{section name=letter loop=$letters}
+ [ <a href="{$indexname}.html#{$letters[letter].letter}">{$letters[letter].letter}</a> ]
+{/section}
+
+{section name=index loop=$index}
+ <hr />
+ <a name="{$index[index].letter}"></a>
+ <div>
+ <h2>{$index[index].letter}</h2>
+ <dl>
+ {section name=contents loop=$index[index].index}
+ <dt><b>{$index[index].index[contents].name}</b></dt>
+ <dd>{$index[index].index[contents].listing}</dd>
+ {/section}
+ </dl>
+ </div>
+ <a href="{$indexname}.html#top">top</a><br>
+{/section}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/blank.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/blank.tpl
new file mode 100755
index 00000000..aae59975
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/blank.tpl
@@ -0,0 +1,5 @@
+<div align="center"><h1>{$maintitle}</h1></div>
+<b>Welcome to {$package}!</b><br />
+<br />
+This documentation was generated by <a href="{$phpdocwebsite}">phpDocumentor v{$phpdocversion}</a><br />
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/class.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/class.tpl
new file mode 100755
index 00000000..860707eb
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/class.tpl
@@ -0,0 +1,231 @@
+{include file="header.tpl" eltype="class" hasel=true contents=$classcontents}
+
+{if $conflicts.conflict_type}<div class="warning">Conflicts with classes:<br />
+ {section name=me loop=$conflicts.conflicts}
+ {$conflicts.conflicts[me]}<br />
+ {/section}
+</div>
+ {/if}
+{* original <div class="warning">{$conflicts</div> *}
+
+<table width="100%" border="0">
+<tr><td valign="top">
+
+<h3><a href="#class_details">{if $is_interface}Interface{else}Class{/if} Overview</a></h3>
+<pre>{section name=tree loop=$class_tree.classes}{$class_tree.classes[tree]}{$class_tree.distance[tree]}{/section}</pre><br />
+<div class="description">{$sdesc|default:''}</div><br /><br />
+{if $tutorial}
+<h4 class="classtutorial">{if $is_interface}Interface{else}Class{/if} Tutorial:</h4>
+<ul>
+ <li>{$tutorial}</li>
+</ul>
+{/if}
+{if count($tags) > 0}
+<h4>Author(s):</h4>
+<ul>
+ {section name=tag loop=$tags}
+ {if $tags[tag].keyword eq "author"}
+ <li>{$tags[tag].data}</li>
+ {/if}
+ {/section}
+</ul>
+{/if}
+
+{assign var="version" value=""}
+{assign var="copyright" value=""}
+
+{section name=tag loop=$tags}
+ {if $tags[tag].keyword eq "version"}
+ {assign var="version" value=$tags[tag].data}
+ {/if}
+ {if $tags[tag].keyword eq "copyright"}
+ {assign var="copyright" value=$tags[tag].data}
+ {/if}
+{/section}
+
+{if $version}
+<h4>Version:</h4>
+<ul>
+ <li>{$version}</li>
+</ul>
+{/if}
+
+{if $copyright}
+<h4>Copyright:</h4>
+<ul>
+ <li>{$copyright}</li>
+</ul>
+{/if}
+ {if $implements}
+ <p class="implements">
+ Implements interfaces:
+ <ul>
+ {foreach item="int" from=$implements}<li>{$int}</li>{/foreach}
+ </ul>
+ </p>
+ {/if}
+
+</td>
+
+{if count($contents.var) > 0}
+<td valign="top">
+<h3><a href="#class_vars">Variables</a></h3>
+<ul>
+ {section name=contents loop=$contents.var}
+ <li>{$contents.var[contents]}</li>
+ {/section}
+</ul>
+</td>
+{/if}
+
+{if count($contents.const) > 0}
+<td valign="top">
+<h3><a href="#class_consts">Constants</a></h3>
+<ul>
+ {section name=contents loop=$contents.const}
+ <li>{$contents.const[contents]}</li>
+ {/section}
+</ul>
+</td>
+{/if}
+
+{if count($contents.method) > 0}
+<td valign="top">
+<h3><a href="#class_methods">Methods</a></h3>
+<ul>
+ {section name=contents loop=$contents.method}
+ <li>{$contents.method[contents]}</li>
+ {/section}
+</ul>
+</td>
+{/if}
+
+</tr></table>
+<hr />
+
+<table width="100%" border="0"><tr>
+
+{* original {if $children != ""
+<td valign="top">
+<h3>Child classes:</h3>
+<div class="tags">
+{$children *}
+
+{if $children}
+<td valign="top">
+<h3>Child classes:</h3>
+<div class="tags">
+{section name=kids loop=$children}
+<dl>
+<dt>{$children[kids].link}</dt>
+ <dd>{$children[kids].sdesc}</dd>
+</dl>
+{/section}
+</div>
+</td>
+{/if}
+
+{if $iconsts && count($iconsts) > 0}
+<td valign="top">
+<h3>Inherited Constants</h3>
+{section name=iconsts loop=$iconsts}
+<div class="tags">
+<h4>Class: {$iconsts[iconsts].parent_class}</h4>
+<dl>
+{section name=iconsts2 loop=$iconsts[iconsts].iconsts}
+<dt>
+ {$iconsts[iconsts].iconsts[iconsts2].link}
+</dt>
+<dd>
+ {$iconsts[iconsts].iconsts[iconsts2].iconsts_sdesc}
+</dd>
+{/section}
+</dl>
+</div>
+{/section}
+</td>
+{/if}
+
+{if $ivars && count($ivars) > 0}
+<td valign="top">
+<h3>Inherited Variables</h3>
+{section name=ivars loop=$ivars}
+<div class="tags">
+<h4>Class: {$ivars[ivars].parent_class}</h4>
+<dl>
+{section name=ivars2 loop=$ivars[ivars].ivars}
+<dt>
+ {$ivars[ivars].ivars[ivars2].link}
+ {* original <a href="{$ivars[ivars].ivars[ivars2].ipath #{$ivars[ivars].ivars[ivars2].ivar_name ">{$ivars[ivars].ivars[ivars2].ivar_name </a> *}
+</dt>
+<dd>
+ {$ivars[ivars].ivars[ivars2].ivars_sdesc}
+</dd>
+{/section}
+</dl>
+</div>
+{/section}
+</td>
+{/if}
+
+{if $imethods && count($imethods) > 0}
+<td valign="top">
+<h3>Inherited Methods</h3>
+<div class="tags">
+{section name=imethods loop=$imethods}
+<h4>Class: {$imethods[imethods].parent_class}</h4>
+<dl>
+ {section name=im2 loop=$imethods[imethods].imethods}
+ <dt>
+ {$imethods[imethods].imethods[im2].link}
+{* original <a href="{$imethods[imethods].imethods[im2].ipath#{$imethods[imethods].imethods[im2].ifunction_name">{$imethods[imethods].imethods[im2].ifunction_call</a> *}
+ </dt>
+ <dd>
+ {$imethods[imethods].imethods[im2].sdesc}
+ </dd>
+ {/section}
+</dl>
+{/section}
+</div>
+</td>
+{/if}
+
+</tr></table>
+<hr />
+
+<a name="class_details"></a>
+<h3>Class Details</h3>
+<div class="tags">
+[line {if $class_slink}{$class_slink}{else}{$line_number}{/if}]<br />
+{include file="docblock.tpl" type="class" sdesc=$sdesc desc=$desc}
+</div><br /><br />
+<div class="top">[ <a href="#top">Top</a> ]</div><br />
+
+{if $vars && count($vars) > 0}
+<hr />
+<a name="class_vars"></a>
+<h3>Class Variables</h3>
+<div class="tags">
+{include file="var.tpl"}
+</div><br />
+{/if}
+
+{if $methods & count($methods) > 0}
+<hr />
+<a name="class_methods"></a>
+<h3>Class Methods</h3>
+<div class="tags">
+{include file="method.tpl"}
+</div><br />
+{/if}
+
+{if $consts && count($consts) > 0}
+<hr />
+<a name="class_consts"></a>
+<h3>Class Constants</h3>
+<div class="tags">
+{include file="const.tpl"}
+</div><br />
+{/if}
+
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/classleft.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/classleft.tpl
new file mode 100755
index 00000000..b847f409
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/classleft.tpl
@@ -0,0 +1,9 @@
+{foreach key=subpackage item=files from=$classleftindex}
+ <div class="package">
+ {if $subpackage != ""}{$subpackage}<br />{/if}
+ {section name=files loop=$files}
+ {if $subpackage != ""}&nbsp;&nbsp;{/if}
+ {if $files[files].link != ''}<a href="{$files[files].link}">{/if}{$files[files].title}{if $files[files].link != ''}</a>{/if}<br />
+ {/section}
+ </div>
+{/foreach}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/classtrees.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/classtrees.tpl
new file mode 100755
index 00000000..0c0e974a
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/classtrees.tpl
@@ -0,0 +1,17 @@
+{include file="header.tpl" noleftindex=true}
+<h1>{$title}</h1>
+{if $interfaces}
+{section name=classtrees loop=$interfaces}
+<hr />
+<div class="classtree">Root interface {$interfaces[classtrees].class}</div><br />
+{$interfaces[classtrees].class_tree}
+{/section}
+{/if}
+{if $classtrees}
+{section name=classtrees loop=$classtrees}
+<hr />
+<div class="classtree">Root class {$classtrees[classtrees].class}</div><br />
+{$classtrees[classtrees].class_tree}
+{/section}
+{/if}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/const.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/const.tpl
new file mode 100644
index 00000000..9ad36e01
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/const.tpl
@@ -0,0 +1,14 @@
+{section name=consts loop=$consts}
+{if $show == 'summary'}
+ var {$consts[consts].const_name}, {$consts[consts].sdesc}<br>
+{else}
+ <a name="{$consts[consts].const_dest}"></a>
+ <p></p>
+ <h4>{$consts[consts].const_name} = <span class="value">{$consts[consts].const_value|replace:"\n":"<br>\n"|replace:" ":"&nbsp;"|replace:"\t":"&nbsp;&nbsp;&nbsp;"}</span></h4>
+ <p>[line {if $consts[consts].slink}{$consts[consts].slink}{else}{$consts[consts].line_number}{/if}]</p>
+ {include file="docblock.tpl" sdesc=$consts[consts].sdesc desc=$consts[consts].desc tags=$consts[consts].tags}
+
+ <br />
+ <div class="top">[ <a href="#top">Top</a> ]</div><br />
+{/if}
+{/section}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/define.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/define.tpl
new file mode 100755
index 00000000..3cc84da3
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/define.tpl
@@ -0,0 +1,32 @@
+{if count($defines) > 0}
+{section name=def loop=$defines}
+{if $show == 'summary'}
+define constant <a href="{$defines[def].id}">{$defines[def].define_name}</a> = {$defines[def].define_value}, {$defines[def].sdesc}<br>
+{else}
+ <hr />
+ <a name="{$defines[def].define_link}"></a>
+ <h3>{$defines[def].define_name} <span class="smalllinenumber">[line {if $defines[def].slink}{$defines[def].slink}{else}{$defines[def].line_number}{/if}]</span></h3>
+ <div class="tags">
+ <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
+ <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
+ <code>{$defines[def].define_name} = {$defines[def].define_value}</code>
+ </td></tr></table>
+ </td></tr></table>
+
+ {include file="docblock.tpl" sdesc=$defines[def].sdesc desc=$defines[def].desc tags=$defines[def].tags}
+ <br />
+ {if $defines[def].define_conflicts.conflict_type}
+ <p><b>Conflicts with defines:</b>
+ {section name=me loop=$defines[def].define_conflicts.conflicts}
+ {$defines[def].define_conflicts.conflicts[me]}<br />
+ {/section}
+ </p>
+ {/if}
+{* original {if $defines[def].define_conflicts != ""
+ <b>Conflicts:</b> {$defines[def].define_conflicts<br /><br />
+ {/if *}
+ </div>
+ <div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
+{/if}
+{/section}
+{/if} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/docblock.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/docblock.tpl
new file mode 100755
index 00000000..2ddfa0be
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/docblock.tpl
@@ -0,0 +1,15 @@
+{if $sdesc != ''}{$sdesc|default:''}<br /><br />{/if}
+{if $desc != ''}{$desc|default:''}<br />{/if}
+{if count($tags) > 0}
+<br /><br />
+<h4>Tags:</h4>
+<div class="tags">
+<table border="0" cellspacing="0" cellpadding="0">
+{section name=tag loop=$tags}
+ <tr>
+ <td><b>{$tags[tag].keyword}:</b>&nbsp;&nbsp;</td><td>{$tags[tag].data}</td>
+ </tr>
+{/section}
+</table>
+</div>
+{/if} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/elementindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/elementindex.tpl
new file mode 100755
index 00000000..adb7b136
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/elementindex.tpl
@@ -0,0 +1,5 @@
+{include file="header.tpl" noleftindex=true}
+<a name="top"></a>
+<h1>Index of all elements</h1>
+{include file="basicindex.tpl" indexname="elementindex"}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/errors.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/errors.tpl
new file mode 100755
index 00000000..0f526584
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/errors.tpl
@@ -0,0 +1,21 @@
+{include file="header.tpl" noleftindex=true}
+{section name=files loop=$files}
+<a href="#{$files[files].file}">{$files[files].file}</a><br>
+{/section}
+{foreach key=file item=issues from=$all}
+<a name="{$file}"></a>
+<h1>{$file}</h1>
+{if count($issues.warnings)}
+<h2>Warnings:</h2><br>
+{section name=warnings loop=$issues.warnings}
+<b>{$issues.warnings[warnings].name}</b> - {$issues.warnings[warnings].listing}<br>
+{/section}
+{/if}
+{if count($issues.errors)}
+<h2>Errors:</h2><br>
+{section name=errors loop=$issues.errors}
+<b>{$issues.errors[errors].name}</b> - {$issues.errors[errors].listing}<br>
+{/section}
+{/if}
+{/foreach}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/examplesource.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/examplesource.tpl
new file mode 100755
index 00000000..c9ed8b86
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/examplesource.tpl
@@ -0,0 +1,6 @@
+{include file="header.tpl" title=$title}
+<h1 align="center">{$title}</h1>
+<div class="php">
+{$source}
+</div>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/fileleft.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/fileleft.tpl
new file mode 100755
index 00000000..9af5e1cf
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/fileleft.tpl
@@ -0,0 +1,10 @@
+{foreach key=subpackage item=files from=$fileleftindex}
+ {if $subpackage != ""}subpackage <b>{$subpackage}</b><br>{/if}
+ <div class="package">
+ {section name=files loop=$files}
+ {if $files[files].link != ''}<a href="{$files[files].link}">{/if}
+ {$files[files].title}
+ {if $files[files].link != ''}</a>{/if}<br>
+ {/section}
+ </div><br />
+{/foreach}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/filesource.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/filesource.tpl
new file mode 100755
index 00000000..3d93199e
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/filesource.tpl
@@ -0,0 +1,8 @@
+{capture name="tutle"}File Source for {$name}{/capture}
+{include file="header.tpl" title=$smarty.capture.tutle}
+<h1 align="center">Source for file {$name}</h1>
+<p>Documentation is available at {$docs}</p>
+<div class="src-code">
+{$source}
+</div>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/footer.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/footer.tpl
new file mode 100755
index 00000000..57097ba5
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/footer.tpl
@@ -0,0 +1,11 @@
+ <div class="credit">
+ <hr />
+ Documentation generated on {$date} by <a href="{$phpdocwebsite}">phpDocumentor {$phpdocversion}</a>
+ </div>
+ </td></tr></table>
+ </td>
+ </tr>
+</table>
+
+</body>
+</html> \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/function.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/function.tpl
new file mode 100755
index 00000000..204c582f
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/function.tpl
@@ -0,0 +1,48 @@
+{section name=func loop=$functions}
+{if $show == 'summary'}
+function {$functions[func].id}, {$functions[func].sdesc}<br />
+{else}
+ <hr />
+ <a name="{$functions[func].function_dest}"></a>
+ <h3>{$functions[func].function_name} <span class="smalllinenumber">[line {if $functions[func].slink}{$functions[func].slink}{else}{$functions[func].line_number}{/if}]</span></h3>
+ <div class="function">
+ <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
+ <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
+ <code>{$functions[func].function_return} {if $functions[func].ifunction_call.returnsref}&amp;{/if}{$functions[func].function_name}(
+{if count($functions[func].ifunction_call.params)}
+{section name=params loop=$functions[func].ifunction_call.params}
+{if $smarty.section.params.iteration != 1}, {/if}{if $functions[func].ifunction_call.params[params].hasdefault}[{/if}{$functions[func].ifunction_call.params[params].type} {$functions[func].ifunction_call.params[params].name}{if $functions[func].ifunction_call.params[params].hasdefault} = {$functions[func].ifunction_call.params[params].default|escape:"html"}]{/if}
+{/section}
+{/if})</code>
+ </td></tr></table>
+ </td></tr></table><br />
+
+ {include file="docblock.tpl" sdesc=$functions[func].sdesc desc=$functions[func].desc tags=$functions[func].tags}
+ <br /><br />
+ {if $functions[func].function_conflicts.conflict_type}
+ <p><b>Conflicts with functions:</b>
+ {section name=me loop=$functions[func].function_conflicts.conflicts}
+ {$functions[func].function_conflicts.conflicts[me]}<br />
+ {/section}
+ </p>
+ {/if}
+{* original {if $functions[func].function_conflicts != ""
+ <b>Conflicts:</b> {$functions[func].function_conflicts<br /><br />
+ {/if *}
+
+ {if count($functions[func].params) > 0}
+ <h4>Parameters</h4>
+ <table border="0" cellspacing="0" cellpadding="0">
+ {section name=params loop=$functions[func].params}
+ <tr>
+ <td class="type">{$functions[func].params[params].datatype}&nbsp;&nbsp;</td>
+ <td><b>{$functions[func].params[params].var}</b>&nbsp;&nbsp;</td>
+ <td>{$functions[func].params[params].data}</td>
+ </tr>
+ {/section}
+ </table>
+ {/if}
+ <div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
+ </div>
+{/if}
+{/section}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/global.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/global.tpl
new file mode 100755
index 00000000..51ba0855
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/global.tpl
@@ -0,0 +1,40 @@
+{if count($globals) > 0}
+{section name=glob loop=$globals}
+{if $show == 'summary'}
+global variable <a href="{$globals[glob].id}">{$globals[glob].global_name}</a> = {$globals[glob].global_value}, {$globals[glob].sdesc}<br>
+{else}
+ <hr />
+ <a name="{$globals[glob].global_link}"></a>
+ <h4><i>{$globals[glob].global_type}</i> {$globals[glob].global_name} <span class="smalllinenumber">[line {if $globals[glob].slink}{$globals[glob].slink}{else}{$globals[glob].line_number}{/if}]</span></h4>
+ <div class="tags">
+ {if $globals[glob].sdesc != ""}
+ {include file="docblock.tpl" sdesc=$globals[glob].sdesc desc=$globals[glob].desc tags=$globals[glob].tags}
+ {/if}
+
+ <table border="0" cellspacing="0" cellpadding="0">
+ <tr>
+ <td><b>Default value:</b>&nbsp;&nbsp;</td>
+ <td>{$globals[glob].global_value|replace:" ":"&nbsp;"|replace:"\n":"<br />\n"|replace:"\t":"&nbsp;&nbsp;&nbsp;"}</td>
+ </tr>
+ {if $globals[glob].global_conflicts.conflict_type}
+ <tr>
+ <td><b>Conflicts with globals:</b>&nbsp;&nbsp;</td>
+ <td>
+ {section name=me loop=$globals[glob].global_conflicts.conflicts}
+ {$globals[glob].global_conflicts.conflicts[me]}<br />
+ {/section}
+ </td>
+ </tr>
+ {/if}
+{* original {if $globals[glob].global_conflicts != ""
+ <tr>
+ <td><b>Conflicts:</b>&nbsp;&nbsp;</td>
+ <td>{$globals[glob].global_conflicts</td>
+ </tr>
+ {/if *}
+ </table>
+ </div><br /><br />
+ <div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
+{/if}
+{/section}
+{/if} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/header.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/header.tpl
new file mode 100755
index 00000000..7d3e8f7d
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/header.tpl
@@ -0,0 +1,97 @@
+<html>
+<head>
+<title>{$title}</title>
+<link rel="stylesheet" type="text/css" href="{$subdir}media/style.css">
+</head>
+<body>
+
+<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
+ <tr>
+ <td class="header_top">{$package}</td>
+ </tr>
+ <tr><td class="header_line"><img src="{$subdir}media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
+ <tr>
+ <td class="header_menu">
+ {assign var="packagehaselements" value=false}
+ {foreach from=$packageindex item=thispackage}
+ {if in_array($package, $thispackage)}
+ {assign var="packagehaselements" value=true}
+ {/if}
+ {/foreach}
+ {if $packagehaselements}
+ [ <a href="{$subdir}classtrees_{$package}.html" class="menu">class tree: {$package}</a> ]
+ [ <a href="{$subdir}elementindex_{$package}.html" class="menu">index: {$package}</a> ]
+ {/if}
+ [ <a href="{$subdir}elementindex.html" class="menu">all elements</a> ]
+ </td>
+ </tr>
+ <tr><td class="header_line"><img src="{$subdir}media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
+</table>
+
+<table width="100%" border="0" cellpadding="0" cellspacing="0">
+ <tr valign="top">
+ <td width="200" class="menu">
+{if count($ric) >= 1}
+ <div id="ric">
+ {section name=ric loop=$ric}
+ <p><a href="{$subdir}{$ric[ric].file}">{$ric[ric].name}</a></p>
+ {/section}
+ </div>
+{/if}
+{if $hastodos}
+ <div id="todolist">
+ <p><a href="{$subdir}{$todolink}">Todo List</a></p>
+ </div>
+{/if}
+ <b>Packages:</b><br />
+ {section name=packagelist loop=$packageindex}
+ <a href="{$subdir}{$packageindex[packagelist].link}">{$packageindex[packagelist].title}</a><br />
+ {/section}
+ <br /><br />
+{if $tutorials}
+ <b>Tutorials/Manuals:</b><br />
+ {if $tutorials.pkg}
+ <strong>Package-level:</strong>
+ {section name=ext loop=$tutorials.pkg}
+ {$tutorials.pkg[ext]}
+ {/section}
+ {/if}
+ {if $tutorials.cls}
+ <strong>Class-level:</strong>
+ {section name=ext loop=$tutorials.cls}
+ {$tutorials.cls[ext]}
+ {/section}
+ {/if}
+ {if $tutorials.proc}
+ <strong>Procedural-level:</strong>
+ {section name=ext loop=$tutorials.proc}
+ {$tutorials.proc[ext]}
+ {/section}
+ {/if}
+{/if}
+ {if !$noleftindex}{assign var="noleftindex" value=false}{/if}
+ {if !$noleftindex}
+ {if $compiledfileindex}
+ <b>Files:</b><br />
+ {eval var=$compiledfileindex}
+ {/if}
+
+ {if $compiledinterfaceindex}
+ <b>Interfaces:</b><br />
+ {eval var=$compiledinterfaceindex}
+ {/if}
+
+ {if $compiledclassindex}
+ <b>Classes:</b><br />
+ {eval var=$compiledclassindex}
+ {/if}
+ {/if}
+ </td>
+ <td>
+ <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
+
+{if !$hasel}{assign var="hasel" value=false}{/if}
+{if $hasel}
+<h1>{$eltype|capitalize}: {$class_name}</h1>
+Source Location: {$source_location}<br /><br />
+{/if} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/include.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/include.tpl
new file mode 100755
index 00000000..68b80081
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/include.tpl
@@ -0,0 +1,9 @@
+{if count($includes) > 0}
+<h4>Includes:</h4>
+<div class="tags">
+{section name=includes loop=$includes}
+{$includes[includes].include_name}({$includes[includes].include_value}) [line {if $includes[includes].slink}{$includes[includes].slink}{else}{$includes[includes].line_number}{/if}]<br />
+{include file="docblock.tpl" sdesc=$includes[includes].sdesc desc=$includes[includes].desc tags=$includes[includes].tags}
+{/section}
+</div>
+{/if} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/index.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/index.tpl
new file mode 100755
index 00000000..a493f70e
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/index.tpl
@@ -0,0 +1,7 @@
+{include file="header.tpl"}
+{if $contents}
+{$contents}
+{else}
+{include file="blank.tpl"}
+{/if}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/media/background.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/media/background.png
new file mode 100755
index 00000000..d6f36f60
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/media/background.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/media/empty.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/media/empty.png
new file mode 100755
index 00000000..a9f29bb1
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/media/empty.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/media/style.css b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/media/style.css
new file mode 100755
index 00000000..bc65d896
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/media/style.css
@@ -0,0 +1,195 @@
+.php {
+ padding: 1em;
+}
+.php-src { font-family: 'Courier New', Courier, monospace; font-weight: normal; }
+
+body
+{
+ color: #000000;
+ background-color: #ffffff;
+ background-image: url("background.png");
+ background-repeat: repeat-y;
+ font-family: tahoma, verdana, arial, sans-serif;
+ font-size: 10pt;
+ margin: 0;
+ padding: 0;
+}
+
+a
+{
+ color: #000099;
+ background-color: transparent;
+ text-decoration: none;
+}
+
+a:hover
+{
+ text-decoration: underline;
+}
+
+a.menu
+{
+ color: #ffffff;
+ background-color: transparent;
+}
+
+td
+{
+ font-size: 10pt;
+}
+
+td.header_top
+{
+ color: #ffffff;
+ background-color: #9999cc;
+ font-size: 16pt;
+ font-weight: bold;
+ text-align: right;
+ padding: 10px;
+}
+
+td.header_line
+{
+ color: #ffffff;
+ background-color: #333366;
+}
+
+td.header_menu
+{
+ color: #ffffff;
+ background-color: #666699;
+ font-size: 8pt;
+ text-align: right;
+ padding: 2px;
+ padding-right: 5px;
+}
+
+td.menu
+{
+ padding: 2px;
+ padding-left: 5px;
+}
+
+td.code_border
+{
+ color: #000000;
+ background-color: #c0c0c0;
+}
+
+td.code
+{
+ color: #000000;
+ background-color: #f0f0f0;
+}
+
+td.type
+{
+ font-style: italic;
+}
+
+div.credit
+{
+ font-size: 8pt;
+ text-align: center;
+}
+
+div.package
+{
+ padding-left: 5px;
+}
+
+div.tags
+{
+ padding-left: 15px;
+}
+
+div.function
+{
+ padding-left: 15px;
+}
+
+div.top
+{
+ font-size: 8pt;
+}
+
+div.warning
+{
+ color: #ff0000;
+ background-color: transparent;
+}
+
+div.description
+{
+ padding-left: 15px;
+}
+
+hr
+{
+ height: 1px;
+ border-style: solid;
+ border-color: #c0c0c0;
+ margin-top: 10px;
+ margin-bottom: 10px;
+}
+
+span.smalllinenumber
+{
+ font-size: 8pt;
+}
+
+ul {
+ margin-left: 0px;
+ padding-left: 8px;
+}
+/* Syntax highlighting */
+
+.src-code { background-color: #f5f5f5; border: 1px solid #ccc9a4; padding: 0 0 0 1em; margin : 0px;
+ font-family: 'Courier New', Courier, monospace; font-weight: normal; }
+.src-line { font-family: 'Courier New', Courier, monospace; font-weight: normal; }
+
+.src-comm { color: green; }
+.src-id { }
+.src-inc { color: #0000FF; }
+.src-key { color: #0000FF; }
+.src-num { color: #CC0000; }
+.src-str { color: #66cccc; }
+.src-sym { font-weight: bold; }
+.src-var { }
+
+.src-php { font-weight: bold; }
+
+.src-doc { color: #009999 }
+.src-doc-close-template { color: #0000FF }
+.src-doc-coretag { color: #0099FF; font-weight: bold }
+.src-doc-inlinetag { color: #0099FF }
+.src-doc-internal { color: #6699cc }
+.src-doc-tag { color: #0080CC }
+.src-doc-template { color: #0000FF }
+.src-doc-type { font-style: italic }
+.src-doc-var { font-style: italic }
+
+.tute-tag { color: #009999 }
+.tute-attribute-name { color: #0000FF }
+.tute-attribute-value { color: #0099FF }
+.tute-entity { font-weight: bold; }
+.tute-comment { font-style: italic }
+.tute-inline-tag { color: #636311; font-weight: bold }
+
+/* tutorial */
+
+.authors { }
+.author { font-style: italic; font-weight: bold }
+.author-blurb { margin: .5em 0em .5em 2em; font-size: 85%; font-weight: normal; font-style: normal }
+.example { border: 1px dashed #999999; background-color: #EEEEEE; padding: .5em; }
+.listing { border: 1px dashed #999999; background-color: #EEEEEE; padding: .5em; white-space: nowrap; }
+.release-info { font-size: 85%; font-style: italic; margin: 1em 0em }
+.ref-title-box { }
+.ref-title { }
+.ref-purpose { font-style: italic; color: #666666 }
+.ref-synopsis { }
+.title { font-weight: bold; margin: 1em 0em 0em 0em; padding: .25em; border: 2px solid #999999; background-color: #9999CC }
+.cmd-synopsis { margin: 1em 0em }
+.cmd-title { font-weight: bold }
+.toc { margin-left: 2em; padding-left: 0em }
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/method.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/method.tpl
new file mode 100755
index 00000000..bcc4dcee
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/method.tpl
@@ -0,0 +1,145 @@
+{section name=methods loop=$methods}
+{if $methods[methods].static}
+{if $show == 'summary'}
+static method {$methods[methods].function_call}, {$methods[methods].sdesc}<br />
+{else}
+ <hr />
+ <a name="{$methods[methods].method_dest}"></a>
+ <h3>static method {$methods[methods].function_name} <span class="smalllinenumber">[line {if $methods[methods].slink}{$methods[methods].slink}{else}{$methods[methods].line_number}{/if}]</span></h3>
+ <div class="function">
+ <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
+ <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
+ <code>static {$methods[methods].function_return} {if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}(
+{if count($methods[methods].ifunction_call.params)}
+{section name=params loop=$methods[methods].ifunction_call.params}
+{if $smarty.section.params.iteration != 1}, {/if}
+{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}{$methods[methods].ifunction_call.params[params].type}
+{$methods[methods].ifunction_call.params[params].name}{if $methods[methods].ifunction_call.params[params].hasdefault} = {$methods[methods].ifunction_call.params[params].default}]{/if}
+{/section}
+{/if})</code>
+ </td></tr></table>
+ </td></tr></table><br />
+
+ {include file="docblock.tpl" sdesc=$methods[methods].sdesc desc=$methods[methods].desc tags=$methods[methods].tags}<br /><br />
+
+{if $methods[methods].descmethod}
+ <p>Overridden in child classes as:<br />
+ {section name=dm loop=$methods[methods].descmethod}
+ <dl>
+ <dt>{$methods[methods].descmethod[dm].link}</dt>
+ <dd>{$methods[methods].descmethod[dm].sdesc}</dd>
+ </dl>
+ {/section}</p>
+{/if}
+ {if $methods[methods].method_implements}
+ <hr class="separator" />
+ <div class="notes">Implementation of:</div>
+ {section name=imp loop=$methods[methods].method_implements}
+ <dl>
+ <dt>{$methods[methods].method_implements[imp].link}</dt>
+ {if $methods[methods].method_implements[imp].sdesc}
+ <dd>{$methods[methods].method_implements[imp].sdesc}</dd>
+ {/if}
+ </dl>
+ {/section}
+ {/if}
+{* original {if $methods[methods].descmethod != ""
+ {$methods[methods].descmethod<br /><br />
+ {/if *}
+{if $methods[methods].method_overrides}Overrides {$methods[methods].method_overrides.link} ({$methods[methods].method_overrides.sdesc|default:"parent method not documented"})<br /><br />{/if}
+{* original {if $methods[methods].method_overrides != ""
+ {$methods[methods].method_overrides<br /><br />
+ {/if *}
+
+ {if count($methods[methods].params) > 0}
+ <h4>Parameters:</h4>
+ <div class="tags">
+ <table border="0" cellspacing="0" cellpadding="0">
+ {section name=params loop=$methods[methods].params}
+ <tr>
+ <td class="type">{$methods[methods].params[params].datatype}&nbsp;&nbsp;</td>
+ <td><b>{$methods[methods].params[params].var}</b>&nbsp;&nbsp;</td>
+ <td>{$methods[methods].params[params].data}</td>
+ </tr>
+ {/section}
+ </table>
+ </div><br />
+ {/if}
+ <div class="top">[ <a href="#top">Top</a> ]</div>
+ </div>
+{/if}
+{/if}
+{/section}
+
+{section name=methods loop=$methods}
+{if !$methods[methods].static}
+{if $show == 'summary'}
+method {$methods[methods].function_call}, {$methods[methods].sdesc}<br />
+{else}
+ <hr />
+ <a name="{$methods[methods].method_dest}"></a>
+ <h3>{if $methods[methods].ifunction_call.constructor}constructor {elseif $methods[methods].ifunction_call.destructor}destructor {else}method {/if}{$methods[methods].function_name} <span class="smalllinenumber">[line {if $methods[methods].slink}{$methods[methods].slink}{else}{$methods[methods].line_number}{/if}]</span></h3>
+ <div class="function">
+ <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
+ <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
+ <code>{$methods[methods].function_return} {if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}(
+{if count($methods[methods].ifunction_call.params)}
+{section name=params loop=$methods[methods].ifunction_call.params}
+{if $smarty.section.params.iteration != 1}, {/if}
+{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}{$methods[methods].ifunction_call.params[params].type}
+{$methods[methods].ifunction_call.params[params].name}{if $methods[methods].ifunction_call.params[params].hasdefault} = {$methods[methods].ifunction_call.params[params].default}]{/if}
+{/section}
+{/if})</code>
+ </td></tr></table>
+ </td></tr></table><br />
+
+ {include file="docblock.tpl" sdesc=$methods[methods].sdesc desc=$methods[methods].desc tags=$methods[methods].tags}<br /><br />
+
+{if $methods[methods].descmethod}
+ <p>Overridden in child classes as:<br />
+ {section name=dm loop=$methods[methods].descmethod}
+ <dl>
+ <dt>{$methods[methods].descmethod[dm].link}</dt>
+ <dd>{$methods[methods].descmethod[dm].sdesc}</dd>
+ </dl>
+ {/section}</p>
+{/if}
+ {if $methods[methods].method_implements}
+ <hr class="separator" />
+ <div class="notes">Implementation of:</div>
+ {section name=imp loop=$methods[methods].method_implements}
+ <dl>
+ <dt>{$methods[methods].method_implements[imp].link}</dt>
+ {if $methods[methods].method_implements[imp].sdesc}
+ <dd>{$methods[methods].method_implements[imp].sdesc}</dd>
+ {/if}
+ </dl>
+ {/section}
+ {/if}
+{* original {if $methods[methods].descmethod != ""
+ {$methods[methods].descmethod<br /><br />
+ {/if *}
+{if $methods[methods].method_overrides}Overrides {$methods[methods].method_overrides.link} ({$methods[methods].method_overrides.sdesc|default:"parent method not documented"})<br /><br />{/if}
+{* original {if $methods[methods].method_overrides != ""
+ {$methods[methods].method_overrides<br /><br />
+ {/if *}
+
+ {if count($methods[methods].params) > 0}
+ <h4>Parameters:</h4>
+ <div class="tags">
+ <table border="0" cellspacing="0" cellpadding="0">
+ {section name=params loop=$methods[methods].params}
+ <tr>
+ <td class="type">{$methods[methods].params[params].datatype}&nbsp;&nbsp;</td>
+ <td><b>{$methods[methods].params[params].var}</b>&nbsp;&nbsp;</td>
+ <td>{$methods[methods].params[params].data}</td>
+ </tr>
+ {/section}
+ </table>
+ </div><br />
+ {/if}
+ <div class="top">[ <a href="#top">Top</a> ]</div>
+ </div>
+{/if}
+{/if}
+{/section}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/packages.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/packages.tpl
new file mode 100755
index 00000000..0967e6e7
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/packages.tpl
@@ -0,0 +1,3 @@
+{section name=packages loop=$packages}
+<a href="{$packages[packages].link}">{$packages[packages].title}</a>
+{/section} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/page.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/page.tpl
new file mode 100755
index 00000000..db2cd607
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/page.tpl
@@ -0,0 +1,31 @@
+{include file="header.tpl" eltype="Procedural file" class_name=$name hasel=true contents=$pagecontents}
+
+<br>
+<br>
+
+{if $classes}
+<div class="contents">
+{if $tutorial}
+<span class="maintutorial">Main Tutorial: {$tutorial}</span>
+{/if}
+<h2>Classes:</h2>
+{section name=classes loop=$classes}
+<dt>{$classes[classes].link}</dt>
+ <dd>{$classes[classes].sdesc}</dd>
+{/section}
+</div><br /><br />
+{/if}
+
+<h2>Page Details:</h2>
+{include file="docblock.tpl" type="page"}
+<br /><br />
+{include file="include.tpl"}
+<br /><br />
+{include file="global.tpl"}
+<br /><br />
+{include file="define.tpl"}
+<br />
+{include file="function.tpl"}
+
+{include file="footer.tpl"}
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/pkgelementindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/pkgelementindex.tpl
new file mode 100755
index 00000000..0dabfdb7
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/pkgelementindex.tpl
@@ -0,0 +1,5 @@
+{include file="header.tpl"}
+<a name="top"></a>
+<h1>Element index for package {$package}</h1>
+{include file="basicindex.tpl" indexname=elementindex_$package}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/ric.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/ric.tpl
new file mode 100755
index 00000000..eff734c1
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/ric.tpl
@@ -0,0 +1,6 @@
+{include file="header.tpl"}
+<h1 align="center">{$name}</h1>
+<pre>
+{$contents|htmlentities}
+</pre>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/todolist.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/todolist.tpl
new file mode 100755
index 00000000..f929ccdb
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/todolist.tpl
@@ -0,0 +1,14 @@
+{include file="header.tpl" title="Todo List"}
+<div align="center"><h1>Todo List</h1></div>
+{foreach from=$todos key=todopackage item=todo}
+<h2>{$todopackage}</h2>
+{section name=todo loop=$todo}
+<h3>{$todo[todo].link}</h3>
+<ul>
+{section name=t loop=$todo[todo].todos}
+ <li>{$todo[todo].todos[t]}</li>
+{/section}
+</ul>
+{/section}
+{/foreach}
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/tutorial.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/tutorial.tpl
new file mode 100755
index 00000000..a943522c
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/tutorial.tpl
@@ -0,0 +1,32 @@
+{include file="header.tpl" title=$title}
+{if $nav}
+<table width="100%" border="0" cellpadding="0" cellspacing="0">
+<tr>
+<td width="10%" align="left" valign="bottom">{if $prev}<a href=
+"{$prev}">{/if}Prev{if $prev}</a>{/if}</td>
+<td width="80%" align="center" valign="bottom"></td>
+<td width="10%" align="right" valign="bottom">{if $next}<a href=
+"{$next}">{/if}Next{if $next}</a>{/if}</td>
+</tr>
+</table>
+{/if}
+{$contents}
+{if $nav}
+<table width="100%" border="0" cellpadding="0" cellspacing="0">
+<tr>
+<td width="33%" align="left" valign="top">{if $prev}<a href="{$prev}">{/if}
+Prev{if $prev}</a>{/if}</td>
+<td width="34%" align="center" valign="top">{if $up}<a href=
+"{$up}">Up</a>{else}&nbsp;{/if}</td>
+<td width="33%" align="right" valign="top">{if $next}<a href=
+"{$next}">{/if}Next{if $next}</a>{/if}</td>
+</tr>
+
+<tr>
+<td width="33%" align="left" valign="top">{if $prevtitle}{$prevtitle}{/if}</td>
+<td width="34%" align="center" valign="top">{if $uptitle}{$uptitle}{/if}</td>
+<td width="33%" align="right" valign="top">{if $nexttitle}{$nexttitle}{/if}</td>
+</tr>
+</table>
+{/if}
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/tutorial_toc.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/tutorial_toc.tpl
new file mode 100755
index 00000000..3d22d403
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/tutorial_toc.tpl
@@ -0,0 +1,29 @@
+{if count($toc)}
+<h1 align="center">Table of Contents</h1>
+<ul>
+{section name=toc loop=$toc}
+{if $toc[toc].tagname == 'refsect1'}
+{assign var="context" value="refsect1"}
+{$toc[toc].link}<br />
+{/if}
+{if $toc[toc].tagname == 'refsect2'}
+{assign var="context" value="refsect2"}
+&nbsp;&nbsp;&nbsp;{$toc[toc].link}<br />
+{/if}
+{if $toc[toc].tagname == 'refsect3'}
+{assign var="context" value="refsect3"}
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{$toc[toc].link}<br />
+{/if}
+{if $toc[toc].tagname == 'table'}
+{if $context == 'refsect2'}&nbsp;&nbsp;&nbsp;{/if}
+{if $context == 'refsect3'}&nbsp;&nbsp;&nbsp;{/if}
+Table: {$toc[toc].link}
+{/if}
+{if $toc[toc].tagname == 'example'}
+{if $context == 'refsect2'}&nbsp;&nbsp;&nbsp;{/if}
+{if $context == 'refsect3'}&nbsp;&nbsp;&nbsp;{/if}
+Table: {$toc[toc].link}
+{/if}
+{/section}
+</ul>
+{/if} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/tutorial_tree.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/tutorial_tree.tpl
new file mode 100755
index 00000000..dd2e5811
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/tutorial_tree.tpl
@@ -0,0 +1,5 @@
+<ul>
+ <li type="square"><a href="{$main.link}">{$main.title|strip_tags}</a>
+{if $kids}{$kids}</li>{/if}
+</ul>
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/var.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/var.tpl
new file mode 100755
index 00000000..e36c61fd
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PHP/templates/var.tpl
@@ -0,0 +1,60 @@
+{section name=vars loop=$vars}
+{if $vars[vars].static}
+{if $show == 'summary'}
+ static var {$vars[vars].var_name}, {$vars[vars].sdesc}<br>
+{else}
+ <a name="{$vars[vars].var_dest}"></a>
+ <p></p>
+ <h4>static {$vars[vars].var_name} = <span class="value">{$vars[vars].var_default|replace:"\n":"<br>\n"|replace:" ":"&nbsp;"|replace:"\t":"&nbsp;&nbsp;&nbsp;"}</span></h4>
+ <p>[line {if $vars[vars].slink}{$vars[vars].slink}{else}{$vars[vars].line_number}{/if}]</p>
+ {include file="docblock.tpl" sdesc=$vars[vars].sdesc desc=$vars[vars].desc tags=$vars[vars].tags}
+
+ <br />
+ <div class="tags">
+ <table border="0" cellspacing="0" cellpadding="0">
+ <tr>
+ <td><b>Type:</b>&nbsp;&nbsp;</td>
+ <td>{$vars[vars].var_type}</td>
+ </tr>
+ {if $vars[vars].var_overrides != ""}
+ <tr>
+ <td><b>Overrides:</b>&nbsp;&nbsp;</td>
+ <td>{$vars[vars].var_overrides}</td>
+ </tr>
+ {/if}
+ </table>
+ </div><br /><br />
+ <div class="top">[ <a href="#top">Top</a> ]</div><br />
+{/if}
+{/if}
+{/section}
+{section name=vars loop=$vars}
+{if !$vars[vars].static}
+{if $show == 'summary'}
+ var {$vars[vars].var_name}, {$vars[vars].sdesc}<br>
+{else}
+ <a name="{$vars[vars].var_dest}"></a>
+ <p></p>
+ <h4>{$vars[vars].var_name} = <span class="value">{$vars[vars].var_default|replace:"\n":"<br>\n"|replace:" ":"&nbsp;"|replace:"\t":"&nbsp;&nbsp;&nbsp;"}</span></h4>
+ <p>[line {if $vars[vars].slink}{$vars[vars].slink}{else}{$vars[vars].line_number}{/if}]</p>
+ {include file="docblock.tpl" sdesc=$vars[vars].sdesc desc=$vars[vars].desc tags=$vars[vars].tags}
+
+ <br />
+ <div class="tags">
+ <table border="0" cellspacing="0" cellpadding="0">
+ <tr>
+ <td><b>Type:</b>&nbsp;&nbsp;</td>
+ <td>{$vars[vars].var_type}</td>
+ </tr>
+ {if $vars[vars].var_overrides != ""}
+ <tr>
+ <td><b>Overrides:</b>&nbsp;&nbsp;</td>
+ <td>{$vars[vars].var_overrides}</td>
+ </tr>
+ {/if}
+ </table>
+ </div><br /><br />
+ <div class="top">[ <a href="#top">Top</a> ]</div><br />
+{/if}
+{/if}
+{/section}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/options.ini b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/options.ini
new file mode 100644
index 00000000..4566db60
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/options.ini
@@ -0,0 +1,577 @@
+preservedocbooktags = false
+
+;; used to highlight the {@source} inline tag, @filesource tag, and @example tag
+[highlightSourceTokens]
+;; format:
+;; T_CONSTANTNAME = open
+;; /T_CONSTANTNAME = close
+
+T_INCLUDE = <span class="src-inc">
+/T_INCLUDE = </span>
+T_INCLUDE_ONCE = <span class="src-inc">
+/T_INCLUDE_ONCE = </span>
+T_REQUIRE_ONCE = <span class="src-inc">
+/T_REQUIRE_ONCE = </span>
+T_REQUIRE_ONCE = <span class="src-inc">
+/T_REQUIRE_ONCE = </span>
+
+T_CONSTANT_ENCAPSED_STRING = <span class="src-str">
+/T_CONSTANT_ENCAPSED_STRING = </span>
+T_STRING_VARNAME = <span class="src-str">
+/T_STRING_VARNAME = </span>
+
+T_STRING = <span class="src-id">
+/T_STRING = </span>
+
+T_DNUMBER = <span class="src-num">
+/T_DNUMBER = </span>
+T_LNUMBER = <span class="src-num">
+/T_LNUMBER = </span>
+
+T_VARIABLE = <span class="src-var">
+/T_VARIABLE = </span>
+
+T_COMMENT = <span class="src-comm">
+/T_COMMENT = </span>
+T_ML_COMMENT = <span class="src-comm">
+/T_ML_COMMENT = </span>
+
+T_OBJECT_OPERATOR = <span class="src-sym">
+/T_OBJECT_OPERATOR = </span>
+
+T_ABSTRACT = <span class="src-key">
+/T_ABSTRACT = </span>
+T_CLONE = <span class="src-key">
+/T_CLONE = </span>
+T_HALT_COMPILER = <span class="src-key">
+/T_HALT_COMPILER = </span>
+T_ARRAY = <span class="src-key">
+/T_ARRAY = </span>
+T_AS = <span class="src-key">
+/T_AS = </span>
+T_BREAK = <span class="src-key">
+/T_BREAK = </span>
+T_CLASS = <span class="src-key">
+/T_CLASS = </span>
+T_CASE = <span class="src-key">
+/T_CASE = </span>
+T_CONST = <span class="src-key">
+/T_CONST = </span>
+T_CONTINUE = <span class="src-key">
+/T_CONTINUE = </span>
+T_DECLARE = <span class="src-key">
+/T_DECLARE = </span>
+T_DEFAULT = <span class="src-key">
+/T_DEFAULT = </span>
+T_ELSE = <span class="src-key">
+/T_ELSE = </span>
+T_ELSEIF = <span class="src-key">
+/T_ELSEIF = </span>
+T_EMPTY = <span class="src-key">
+/T_EMPTY = </span>
+T_ENDDECLARE = <span class="src-key">
+/T_ENDDECLARE = </span>
+T_ENDFOR = <span class="src-key">
+/T_ENDFOR = </span>
+T_ENDSWITCH = <span class="src-key">
+/T_ENDSWITCH = </span>
+T_ENDFOREACH = <span class="src-key">
+/T_ENDFOREACH = </span>
+T_ENDIF = <span class="src-key">
+/T_ENDIF = </span>
+T_ENDWHILE = <span class="src-key">
+/T_ENDWHILE = </span>
+T_EXIT = <span class="src-key">
+/T_EXIT = </span>
+T_EXTENDS = <span class="src-key">
+/T_EXTENDS = </span>
+T_FINAL = <span class="src-key">
+/T_FINAL = </span>
+T_FOR = <span class="src-key">
+/T_FOR = </span>
+T_FOREACH = <span class="src-key">
+/T_FOREACH = </span>
+T_FUNCTION = <span class="src-key">
+/T_FUNCTION = </span>
+T_GLOBAL = <span class="src-key">
+/T_GLOBAL = </span>
+T_IF = <span class="src-key">
+/T_IF = </span>
+T_IMPLEMENTS = <span class="src-key">
+/T_IMPLEMENTS = </span>
+T_INTERFACE = <span class="src-key">
+/T_INTERFACE = </span>
+T_LOGICAL_AND = <span class="src-key">
+/T_LOGICAL_AND = </span>
+T_LOGICAL_OR = <span class="src-key">
+/T_LOGICAL_OR = </span>
+T_LOGICAL_XOR = <span class="src-key">
+/T_LOGICAL_XOR = </span>
+T_NEW = <span class="src-key">
+/T_NEW = </span>
+T_PRIVATE = <span class="src-key">
+/T_PRIVATE = </span>
+T_PROTECTED = <span class="src-key">
+/T_PROTECTED = </span>
+T_PUBLIC = <span class="src-key">
+/T_PUBLIC = </span>
+T_RETURN = <span class="src-key">
+/T_RETURN = </span>
+T_STATIC = <span class="src-key">
+/T_STATIC = </span>
+T_SWITCH = <span class="src-key">
+/T_SWITCH = </span>
+T_VAR = <span class="src-key">
+/T_VAR = </span>
+T_WHILE = <span class="src-key">
+/T_WHILE = </span>
+
+T_DOUBLE_COLON = <span class="src-sym">
+/T_DOUBLE_COLON = </span>
+
+T_OPEN_TAG = <span class="src-php">
+/T_OPEN_TAG = </span>
+T_OPEN_TAG_WITH_ECHO = <span class="src-php">
+/T_OPEN_TAG_WITH_ECHO = </span>
+T_CLOSE_TAG = <span class="src-php">
+/T_CLOSE_TAG = </span>
+
+
+[highlightSource]
+;; this is for highlighting things that aren't tokens like "&"
+;; format:
+;; word = open
+;; /word = close
+@ = <span class="src-sym">
+/@ = </span>
+& = <span class="src-sym">
+/& = </span>
+[ = <span class="src-sym">
+/[ = </span>
+] = <span class="src-sym">
+/] = </span>
+! = <span class="src-sym">
+/! = </span>
+";" = <span class="src-sym">
+/; = </span>
+( = <span class="src-sym">
+/( = </span>
+) = <span class="src-sym">
+/) = </span>
+, = <span class="src-sym">
+/, = </span>
+{ = <span class="src-sym">
+/{ = </span>
+} = <span class="src-sym">
+/} = </span>
+""" = <span class="src-str">
+/" = </span>
+
+[highlightDocBlockSourceTokens]
+;; this is for docblock tokens, using by phpDocumentor_HighlightParser
+;; tagphptype is for "string" in @param string description, for example
+docblock = <span class="src-doc">
+/docblock = </span>
+tagphptype = <span class="src-doc-type">
+/tagphptype = </span>
+tagvarname = <span class="src-doc-var">
+/tagvarname = </span>
+coretag = <span class="src-doc-coretag">
+/coretag = </span>
+tag = <span class="src-doc-tag">
+/tag = </span>
+inlinetag = <span class="src-doc-inlinetag">
+/inlinetag = </span>
+internal = <span class="src-doc-internal">
+/internal = </span>
+closetemplate = <span class="src-doc-close-template">
+/closetemplate = </span>
+docblocktemplate = <span class="src-doc-template">
+/docblocktemplate = </span>
+
+[highlightTutorialSourceTokens]
+;; this is for XML DocBook-based tutorials, highlighted by phpDocumentor_TutorialHighlightParser
+;; <tag>
+opentag = <span class="tute-tag">
+/opentag = </span>
+;; </tag>
+closetag = <span class="tute-tag">
+/closetag = </span>
+;; <tag attribute="value">
+attribute = <span class="tute-attribute-name">
+/attribute = </span>
+;; <tag attribute="value">
+attributevalue = <span class="tute-attribute-value">
+/attributevalue = </span>
+;; &entity;
+entity = <span class="tute-entity">
+/entity = </span>
+;; <!-- comment -->
+comment = <span class="tute-comment">
+/comment = </span>
+;; {@inline tag}
+itag = <span class="tute-inline-tag">
+/itag = </span>
+
+;; used for translation of html in DocBlocks
+[desctranslate]
+ul = <ul>
+/ul = </ul>
+ol = <ol>
+/ol = </ol>
+li = <li>
+/li = </li>
+code = <div class="listing"><pre>
+/code = </pre></div>
+var = <var>
+/var = </var>
+samp = <samp>
+/samp = </samp>
+kbd = <kbd>
+/kbd = </kbd>
+pre = <pre>
+/pre = </pre>
+p = <p>
+/p = </p>
+b = <strong>
+/b = </strong>
+i = <em>
+/i = </em>
+br = <br />
+
+[ppage]
+;; this is the DocBook package page translation section. All DocBook tags
+;; that have a corresponding html tag must be listed here. Entities should
+;; also be listed here
+;;
+;; examples:
+;; 1)
+;; tagname = newtagname
+;;
+;; This is the simplest case, where all attributes will be added into the
+;; starting tag and the ending tag will be html/xml style </tranlatedtagname>
+;; <tagname></tagname> becomes <newtagname></newtagname> and
+;; <tagname attr="value"></tagname> becomes
+;; <newtagname attr="value"></newtagname>
+;;
+;; 2)
+;; tagname = newtagname
+;; tagname->attr = newattrname
+;;
+;; in this case, everything will be like the first case, except tags like:
+;; <tagname attr="value"></tagname> will become
+;; <newtagname newattrname="value"></newtagname>
+;;
+;; 3)
+;; tagname = newtagname
+;; tagname->attr = newattrname
+;; tagname->attr+value = newvalue
+;;
+;; in this case, the value is also translated to another. This can be useful
+;; for instances such as focus="middle" changing to align="center" or something
+;; of that nature.
+;; <tagname attr="value"></tagname> will become
+;; <newtagname newattrname="newvalue"></newtagname>
+;;
+;; 4)
+;; tagname = newtagname
+;; tagname->attr1 = newattrname
+;; tagname->attr2 = newattrname
+;; tagname->attr1+value|attr2+value = newvalue
+;;
+;; in this case, two attributes combine to make one new attribute, and the combined
+;; value is translated into a new value
+;; <tagname attr1="value1" attr2="value2"></tagname> will become
+;; <newtagname newattrname="newvalue"></newtagname>
+;;
+;; 5)
+;; tagname = newtagname
+;; tagname!attr = dummy
+;;
+;; here, the attribute will be ignored. dummy is not used and may be any value
+;; <tagname attr="value"></tagname> will become
+;; <newtagname></newtagname>
+;;
+;; 6)
+;; tagname = newtagname
+;; tagname! = dummy
+;;
+;; here, all attributes will be ignored. dummy is not used and may be any value
+;; <tagname attr1="value" attr2="foo"></tagname> will become
+;; <newtagname></newtagname>
+;;
+;; 7)
+;; tagname = newtagname
+;; tagname/ = 1
+;;
+;; here, the tag will be translated as a single tag with no closing tag, and all
+;; attributes
+;; <tagname attr="val">{text text}</tagname> will become
+;; <newtagname attr="val" />
+;;
+;; 8)
+;; tagname = <starttaginfo />
+;; /tagname = closetagtext
+;;
+;; in this case, the text <starttaginfo> will be inserted exactly as entered for
+;; <tagname> and closetagtext for </tagname>
+;; <tagname attr="val"></tagname> will become
+;; <starttaginfo />closetagtext
+;;
+;; 9)
+;; $attr$my_attribute = newattrname
+;;
+;; tagname = newtagname
+;;
+;; in this case, all occurences of my_attribute in any tag will be changed to
+;; newattrname. This is useful for changing things like role="php" to
+;; class="php," for example. Note that the text "$attr$" MUST be on the line
+;; start for phpDocumentor to recognize it.
+;;
+;; 10)
+;; &entity; = translation text
+;; &quot; = &quot;
+;; &quot; = """
+;; &lt; = <
+;;
+;; Use this to control translation of entities to their appropriate values
+
+&nbsp; = &nbsp;
+&quot; = &quot;
+&rdquo; = &rdquo;
+&ldquo; = &ldquo;
+&amp; = &amp;
+&lt; = &lt;
+&gt; = &gt;
+&copy; = &copy;
+
+$attr$role = class
+
+abbrev = abbr
+
+blockquote = blockquote
+
+arg = span
+arg->choice = class
+
+author = <span class="author">
+/author = </span>
+author! = 0
+
+authorblurb = <div class="author-blurb">
+/authorblurb = </div>
+
+authorgroup = <div class="authors"><h2 class="title">Authors</h2>
+/authorgroup = </div>
+authorgroup! = 0
+
+caution = <span class="warning">
+/caution = </span>
+caution! = 0
+
+cmdsynopsis = <div class="cmd-synopsis">
+/cmdsynopsis = </div>
+
+command = <span class="cmd-title">
+/command = </span>
+
+copyright = <div class="notes">
+/copyright = </div>
+
+emphasis = strong
+
+example = <pre class="example">
+/example = </pre>
+example! = 0
+
+function =
+/function = ()
+
+formalpara = p
+
+graphic = img
+graphic->fileref = src
+graphic/ =
+
+important = strong
+
+informalequation = blockquote
+
+informalexample = div
+
+inlineequation = em
+
+itemizedlist = ul
+
+listitem = li
+
+literal = code
+
+literallayout = span
+
+option = " "
+/option =
+
+orderedlist = ol
+
+para = p
+
+programlisting = <pre class="listing">
+/programlisting = </pre>
+programlisting! = 0
+
+refentry = div
+
+refnamediv = <div class="ref-title-box">
+/refnamediv = </div>
+refnamediv! = 0
+
+refname = <h1 class="ref-title">
+/refname = </h1>
+
+refpurpose = <h2 class="ref-purpose">
+/refpurpose = </h2>
+
+refsynopsisdiv = <div class="ref-synopsis">
+/refsynopsisdiv = </div>
+refsynopsisdiv! = 0
+
+refsect1 = span
+
+refsect2 =
+/refsect2 = <hr />
+
+refsect3 =
+/refsect3 = <br />
+
+releaseinfo = <div class="release-info">(
+/releaseinfo = )</div>
+
+simpara =
+/simpara = <br />
+simpara! = 0
+
+subscript = sub
+
+superscript = super
+
+table = table
+
+table->colsep = rules
+table->rowsep = rules
+table->colsep+1|rowsep+1 = all
+table->colsep+1|rowsep+0 = cols
+table->colsep+0|rowsep+1 = rows
+
+table->frame = frame
+table->frame+all = border
+table->frame+none = void
+table->frame+sides = vsides
+table->frame+top = above
+table->frame+topbot = hsides
+
+thead = thead
+
+tfoot = tfoot
+
+tbody = tbody
+
+colspec = col
+
+tgroup = colgroup
+tgroup/ = 1
+tgroup->cols = span
+
+row = tr
+
+entry = td
+entry->morerows = colspan
+entry->morerows+1 = 2
+entry->morerows+2 = 3
+entry->morerows+3 = 4
+entry->morerows+4 = 5
+entry->morerows+5 = 6
+entry->morerows+6 = 7
+entry->morerows+7 = 8
+entry->morerows+8 = 9
+entry->morerows+9 = 10
+entry->morerows+10 = 11
+;; add more if you need more colspans
+
+warning = <span class="warning">
+/warning = </span>
+warning! = 0
+
+;; now begins the attributes that should be tags in cdata
+[$attr$id]
+open = a
+;close = /a
+cdata! = true
+quotevalues = true
+separator = "="
+;separateall = true
+$id = name
+
+;; now begins the sections that deal with <title>
+[refsynopsisdiv_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h1 class="title">
+close = </h1>
+
+[refsect1_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h2 class="title">
+close = </h2>
+
+[refsect2_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h3 class="title">
+close = </h3>
+
+[refsect3_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h4 class="title">
+close = </h4>
+
+[para_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <div class="title">
+close = </div>
+
+[formalpara_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <div class="title">
+close = </div>
+
+[example_title]
+;tag_attr = true
+;attr_name = title
+;cdata_start = true
+cdata_end = true
+open = </td></tr><tr><td><strong>
+close = </strong>
+
+[table_title]
+;tag_attr = true
+;attr_name = true
+cdata_start = true
+open = <caption>
+close = </caption>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/__tags.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/__tags.tpl
new file mode 100644
index 00000000..221830c4
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/__tags.tpl
@@ -0,0 +1,13 @@
+<div class="tag-list">
+ {section name=tag loop=$tags}
+ {if $tags[tag].keyword != "abstract" &&
+ $tags[tag].keyword != "access" &&
+ $tags[tag].keyword != "static" &&
+ $tags[tag].keyword != "version"
+ }
+
+ <strong>{$tags[tag].keyword|capitalize}:</strong>
+ {$tags[tag].data}<br />
+ {/if}
+ {/section}
+</div>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_class_declaration.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_class_declaration.tpl
new file mode 100644
index 00000000..d7fe2f82
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_class_declaration.tpl
@@ -0,0 +1,38 @@
+<hr size="1" noshade="noshade"/>
+<div class="class-declaration">
+ {if count($tags) > 0}
+ {section name=tag loop=$tags}
+ {if $tags[tag].keyword == "abstract"}
+ abstract
+ {/if}
+ {/section}
+ {/if}
+
+ {if $is_interface}
+ interface
+ {else}
+ class
+ {/if}
+
+ <strong>{$class_name}</strong>
+
+ {if count($class_tree) > 1}
+ {section name=tree loop=$class_tree.classes}
+ {if $smarty.section.tree.last}
+ extends {$class_tree.classes[$smarty.section.tree.index_prev]}
+ {/if}
+ {/section}
+ {/if}
+
+ {if $implements}
+ <br/>
+ implements
+ {foreach item="interface" from=$implements}
+ {if !$smarty.foreach.interface.first}
+ , {$interface}
+ {else}
+ {$interface}
+ {/if}
+ {/foreach}
+ {/if}
+</div> \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_class_description.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_class_description.tpl
new file mode 100644
index 00000000..12025c1c
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_class_description.tpl
@@ -0,0 +1,7 @@
+<div class="class-description">
+ <p>{$sdesc}</p>
+
+ {if $desc != ""}{$desc}{/if}
+</div>
+
+{include file="_tags.tpl" tags=$tags}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_class_list.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_class_list.tpl
new file mode 100644
index 00000000..d6a1d398
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_class_list.tpl
@@ -0,0 +1 @@
+{eval var=$compiledclassindex} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_constant_details.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_constant_details.tpl
new file mode 100644
index 00000000..bca71e17
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_constant_details.tpl
@@ -0,0 +1,33 @@
+{if $consts}
+ <hr size="1" noshade="noshade"/>
+ <a name="constant-details"></a>
+ <table class="constant-details" cellspacing="1">
+ <tr>
+ <th>Constant Details</th>
+ </tr>
+ {section name=const loop=$consts}
+ <tr>
+ <td>
+ <a name="{$consts[const].const_dest}"></a>
+
+ <h3>{$consts[const].const_name}</h3>
+
+ <p>{$consts[const].sdesc}</p>
+
+ {if $consts[const].desc}
+ {$consts[const].desc}
+ {/if}
+
+ <div class="tag-list">
+ <h4 class="tag">Type:</h4>
+ <div class="tag-data">{include file="_get_constant_type.tpl" const=$consts[const].const_value}</div>
+ <h4 class="tag">Value:</h4>
+ <div class="tag-data">{$consts[const].const_value}</div>
+ </div>
+ {include file="_tags.tpl" tags=$consts[const].tags}
+ <p/>
+ </td>
+ </tr>
+ {/section}
+ </table>
+{/if} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_constant_summary.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_constant_summary.tpl
new file mode 100644
index 00000000..8049c4b0
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_constant_summary.tpl
@@ -0,0 +1,22 @@
+{if $consts || $iconsts}
+ <hr size="1" noshade="noshade"/>
+ <a name="constant-summary"></a>
+ <table class="constant-summary" cellspacing="1">
+ <tr>
+ <th colspan="3">Constant Summary</th>
+ </tr>
+ {section name=const loop=$consts}
+ <tr>
+ <td class="type" nowrap="nowrap">{strip}{include file="_get_constant_type.tpl" const=$consts[const].const_value}{/strip}</td>
+ <td class="name"><a href="{$consts[const].id}">{$consts[const].const_name}</a></td>
+ <td class="description" width="100%">
+ {$consts[const].sdesc}
+
+ {if $consts[const].desc}
+ {$consts[const].desc}
+ {/if}
+ </td>
+ </tr>
+ {/section}
+ </table>
+{/if} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_constructor_details.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_constructor_details.tpl
new file mode 100644
index 00000000..ec4fd0a2
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_constructor_details.tpl
@@ -0,0 +1,55 @@
+{if $methods}
+ {section name=method loop=$methods}
+ {if $methods[method].function_name == "__construct"}
+ <hr size="1" noshade="noshade"/>
+ <a name="sec-method"></a>
+ <table class="method-details" cellspacing="1">
+ <tr>
+ <th colspan="3">Constructor Details</th>
+ </tr>
+ <tr>
+ <td class="method-data">
+ <a name="{$methods[method].method_dest}"></a>
+
+ <h2>{$methods[method].function_name}</h2>
+
+ <table class="method-detail" cellspacing="0">
+ <tr>
+ <td nowrap="nowrap">{strip}
+ {if $methods[method].access == "protected"}
+ protected&nbsp;
+ {/if}
+
+ {if $methods[method].access == "public"}
+ public&nbsp;
+ {/if}
+
+ {if $methods[method].abstract == "1"}
+ abstract&nbsp;
+ {/if}
+
+ {if $methods[method].static == "1"}
+ static&nbsp;
+ {/if}
+
+ <strong>{$methods[method].function_name}</strong>
+ {/strip}</td>
+ <td nowrap="nowrap">{strip}
+ {$methods[method].ifunction_call.params}
+ {/strip}</td>
+ </tr>
+ </table>
+
+ <p>{$methods[method].sdesc}</p>
+
+ {if $methods[method].desc}
+ {$methods[method].desc}
+ {/if}
+
+ {include file="_tags.tpl" tags=$methods[method].tags}
+ </td>
+ </tr>
+ </table>
+ {/if}
+ {/section}
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_constructor_summary.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_constructor_summary.tpl
new file mode 100644
index 00000000..8819f63e
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_constructor_summary.tpl
@@ -0,0 +1,25 @@
+{if $methods}
+ {section name=method loop=$methods}
+ {if $methods[method].function_name == "__construct"}
+ <hr size="1" noshade="noshade"/>
+ <a name="constructor-summary"></a>
+ <table class="method-summary" cellspacing="1">
+ <tr>
+ <th colspan="2">Constructor Summary</th>
+ </tr>
+ <tr>
+ <td class="type" nowrap="nowrap" width="1%">{$methods[method].access}</td>
+ <td>
+ <div class="declaration">
+ <a href="{$methods[method].id}">{$methods[method].function_name}</a>
+ {$methods[method].ifunction_call.params}
+ </div>
+ <div class="description">
+ {$methods[method].sdesc}
+ </div>
+ </td>
+ </tr>
+ </table>
+ {/if}
+ {/section}
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_destructor_details.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_destructor_details.tpl
new file mode 100644
index 00000000..3cb5534a
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_destructor_details.tpl
@@ -0,0 +1,55 @@
+{if $methods}
+ {section name=method loop=$methods}
+ {if $methods[method].function_name == "__destruct"}
+ <hr size="1" noshade="noshade"/>
+ <a name="sec-method"></a>
+ <table class="method-details" cellspacing="1">
+ <tr>
+ <th colspan="3">Destructor Details</th>
+ </tr>
+ <tr>
+ <td class="method-data">
+ <a name="{$methods[method].method_dest}"></a>
+
+ <h2>{$methods[method].function_name}</h2>
+
+ <table class="method-detail" cellspacing="0">
+ <tr>
+ <td nowrap="nowrap">{strip}
+ {if $methods[method].access == "protected"}
+ protected&nbsp;
+ {/if}
+
+ {if $methods[method].access == "public"}
+ public&nbsp;
+ {/if}
+
+ {if $methods[method].abstract == "1"}
+ abstract&nbsp;
+ {/if}
+
+ {if $methods[method].static == "1"}
+ static&nbsp;
+ {/if}
+
+ <strong>{$methods[method].function_name}</strong>
+ {/strip}</td>
+ <td nowrap="nowrap">{strip}
+ {build_argument_list args=$methods[method].ifunction_call.params style="vertical"}
+ {/strip}</td>
+ </tr>
+ </table>
+
+ <p>{$methods[method].sdesc}</p>
+
+ {if $methods[method].desc}
+ {$methods[method].desc}
+ {/if}
+
+ {include file="_tags.tpl" tags=$methods[method].tags}
+ </td>
+ </tr>
+ </table>
+ {/if}
+ {/section}
+{/if} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_destructor_summary.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_destructor_summary.tpl
new file mode 100644
index 00000000..53e8f1d2
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_destructor_summary.tpl
@@ -0,0 +1,27 @@
+{if $methods}
+ {section name=method loop=$methods}
+ {if $methods[method].function_name == "__destruct"}
+ <hr size="1" noshade="noshade"/>
+ <a name="desructor-summary"></a>
+ <table class="method-summary" cellspacing="1">
+ <tr>
+ <th colspan="2">Destructor Summary</th>
+ </tr>
+ <tr>
+ <td class="type" nowrap="nowrap" width="1%">{strip}
+ {$methods[method].access}
+ {/strip}</td>
+ <td>
+ <div class="declaration">{strip}
+ <a href="{$methods[method].id}">{$methods[method].function_name}</a>
+ {$methods[method].ifunction_call.params}
+ {/strip}</div>
+ <div class="description">
+ {$methods[method].sdesc}
+ </div>
+ </td>
+ </tr>
+ </table>
+ {/if}
+ {/section}
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_footer.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_footer.tpl
new file mode 100644
index 00000000..0c2eddc2
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_footer.tpl
@@ -0,0 +1 @@
+</div>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_get_constant_type.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_get_constant_type.tpl
new file mode 100644
index 00000000..48301da4
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_get_constant_type.tpl
@@ -0,0 +1,10 @@
+{if is_numeric(strtolower(trim($const)))}
+ int
+{elseif strtolower(trim($const)) == "true" ||
+ strtolower(trim($const)) == "false"}
+ bool
+{elseif strtolower(trim($const)) == "null"}
+ null
+{else}
+ string
+{/if} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_header.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_header.tpl
new file mode 100644
index 00000000..f92571a4
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_header.tpl
@@ -0,0 +1,4 @@
+<div id="bar" nowrap="nowrap">
+ {include file="_class_list.tpl"}
+</div>
+<div id="content1">
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_inherited_constants.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_inherited_constants.tpl
new file mode 100644
index 00000000..66c37633
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_inherited_constants.tpl
@@ -0,0 +1,34 @@
+{if $iconsts}
+ {section name=iconst loop=$iconsts}
+ <table class="inherited-constants" cellspacing="1">
+ <tr>
+ <th>Constants Inherited From {$iconsts[iconst].parent_class}</th>
+ </tr>
+ <tr>
+ <td>
+ {assign var="_consts" value=""}
+
+ {section name=_const loop=$iconsts[iconst].iconsts}
+ {if $_consts != ""},
+ {* append var="_consts" value=", "*}
+ {/if}
+ <a href="{$href}">{$iconsts[iconst].iconsts[_const].name}</a>{if !$smarty.section.name.last},{/if}
+ {*
+ {extract_attribute attribute="href"
+ element=$iconsts[iconst].iconsts[_const].link
+ var="href" append="no"}
+
+ {append var="_consts" value="<a href=\""}
+ {append var="_consts" value=$href}
+ {append var="_consts" value="\">"}
+ {append var="_consts" value=$iconsts[iconst].iconsts[_const].name}
+ {append var="_consts" value="</a>"}
+ *}
+{/section}
+
+ {*$_consts*}
+ </td>
+ </tr>
+ </table>
+ {/section}
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_inherited_methods.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_inherited_methods.tpl
new file mode 100644
index 00000000..55aafb17
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_inherited_methods.tpl
@@ -0,0 +1,42 @@
+{if $imethods}
+ {section name=imethod loop=$imethods}
+ {if count($imethods[imethod].imethods) > 1 ||
+ ($imethods[imethod].imethods[0].name != "__construct" &&
+ $imethods[imethod].imethods[0].name != "__destruct" &&
+ $imethods[imethod].imethods[0].abstract != "1")}
+ <table class="inherited-methods" cellspacing="1">
+ <tr>
+ <th>Methods Inherited From {$imethods[imethod].parent_class}</th>
+ </tr>
+ <tr>
+ <td>
+ {* assign var="_methods" value="" *}
+
+ {section name=_method loop=$imethods[imethod].imethods}
+ {if $imethods[imethod].imethods[_method].name != "__construct" &&
+ $imethods[imethod].imethods[_method].abstract != "1"}
+ {*
+ {if $_methods != ""}
+ {append var="_methods" value=", "}
+ {/if}
+
+ {extract_attribute attribute="href"
+ element=$imethods[imethod].imethods[_method].link
+ var="href" append="no"}
+
+ {append var="_methods" value="<a href=\""}
+ {append var="_methods" value=$href}
+ {append var="_methods" value="\">"}
+ {append var="_methods" value=$imethods[imethod].imethods[_method].name}
+ {append var="_methods" value="</a>"}
+ *}
+ {$imethods[imethod].imethods[_method].link}{if !$smarty.section._method.last},{/if}
+ {/if}
+ {/section}
+
+ </td>
+ </tr>
+ </table>
+ {/if}
+ {/section}
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_inheritence_tree.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_inheritence_tree.tpl
new file mode 100644
index 00000000..471c7972
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_inheritence_tree.tpl
@@ -0,0 +1,3 @@
+<div class="inheritence-tree">
+ <pre>{section name=tree loop=$class_tree.classes}{if $smarty.section.tree.last}<strong>{$class_tree.classes[tree]}</strong>{else}{$class_tree.classes[tree]}{/if}{$class_tree.distance[tree]}{/section}</pre>
+</div> \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_method_details.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_method_details.tpl
new file mode 100644
index 00000000..b5ddfb10
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_method_details.tpl
@@ -0,0 +1,101 @@
+{if $methods && (count($methods) > 1 ||
+ ($methods[0].function_name != "__construct" &&
+ $methods[0].function_name != "__destruct"))}
+
+ <hr size="1" noshade="noshade"/>
+ <a name="method-details"></a>
+ <table class="method-details" cellspacing="1">
+ <tr>
+ <th>Method Details</th>
+ </tr>
+ {section name=method loop=$methods}
+ {if $methods[method].function_name != "__construct" &&
+ $methods[method].function_name != "__destruct"}
+
+ <tr>
+ <td class="method-data">
+
+ <a name="{$methods[method].method_dest}"></a>
+
+ <h2>{$methods[method].function_name}</h2>
+
+ <table class="method-detail" cellspacing="0">
+ <tr>
+ <td nowrap="nowrap">{strip}
+ {if $methods[method].access == "protected"}
+ protected&nbsp;
+ {/if}
+
+ {if $methods[method].access == "public"}
+ public&nbsp;
+ {/if}
+
+ {if $methods[method].abstract == 1}
+ abstract&nbsp;
+ {/if}
+
+ {if $methods[method].static == 1}
+ static&nbsp;
+ {/if}
+
+ {$methods[method].function_return}&nbsp;
+
+
+ <strong>{$methods[method].function_name}</strong>
+ {/strip}</td>
+ <td width="100%">{strip}
+ (
+ {if $methods[method].ifunction_call.params}
+ {foreach item=param name="method" from=$methods[method].ifunction_call.params}
+ {$param.type} {$param.name} {if !$smarty.foreach.method.last}, {/if}
+ {/foreach}
+
+ {/if}
+ )
+ {/strip}</td>
+ </tr>
+ </table>
+
+ <p>{$methods[method].sdesc}</p>
+
+ {if $methods[method].desc}
+ {$methods[method].desc}
+ {/if}
+ {* $methods[method]|print_r *}
+ <div class="tag-list"><table class="method-summary" cellspacing="1">
+ {if $methods[method].ifunction_call.params}
+ <tr><th colspan="3" class="small">Input</th></tr>
+ {foreach item=param name="method" from=$methods[method].ifunction_call.params}
+ <tr><td valign="top">{$param.type}</td><td valign="top"><strong>{$param.name}</strong><td valign="top">{$param.description}</td></tr>
+ {/foreach}
+ {/if}
+ {if $methods[method].tags}
+ <tr><th colspan="3" class="small">Output</th></tr>
+
+ {foreach item=param name="method" from=$methods[method].tags}
+ {if $param.keyword == "return"}
+ <tr><td valign="top">
+ {$methods[method].function_return}
+ </td><td valign="top" colspan="2">{$param.data}</td></tr>
+ {/if}
+ {/foreach}
+ {/if}
+ {if $methods[method].tags}
+ <tr><th colspan="3" class="small">Exception</th></tr>
+
+ {foreach item=param name="method" from=$methods[method].tags}
+ {if $param.keyword == "throws"}
+ <tr><td valign="top">{$param.keyword}</td><td valign="top" colspan="2">{$param.data}</td></tr>
+ {/if}
+ {/foreach}
+ {/if}
+ </table></div>
+
+ {* include file="_tags.tpl" tags=$methods[method].tags *}
+ <p/>
+ </td>
+ </tr>
+ {/if}
+ {/section}
+ </table>
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_method_summary.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_method_summary.tpl
new file mode 100644
index 00000000..8fefd671
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_method_summary.tpl
@@ -0,0 +1,61 @@
+{if $methods || $imethods}
+ <hr size="1" noshade="noshade"/>
+ <a name="method-summary"></a>
+ <table class="method-summary" cellspacing="1">
+ <tr>
+ <th colspan="2">Method Summary</th>
+ </tr>
+ {section name=method loop=$methods}
+ {if $methods[method].function_name != "__construct" &&
+ $methods[method].function_name != "__destruct"}
+ {*
+ {if trim(substr($methods[method].function_call, 0, 1)) == "&"}
+ {assign var="ref" value="true"}
+ {assign var="css" value=" class=\"reference\""}
+ {else}
+ {assign var="ref" value="false"}
+ {assign var="css" value=""}
+ {/if}
+ *}
+ <tr>
+ <td class="type" nowrap="nowrap" width="1%">
+ {if $methods[method].access == "protected"}
+ protected&nbsp;
+ {/if}
+
+ {if $methods[method].abstract == 1}
+ abstract&nbsp;
+ {/if}
+
+ {if $methods[method].static == 1}
+ static&nbsp;
+ {/if}
+
+ {$methods[method].function_return}
+{*
+ {if $ref == "true"}
+ &nbsp;&amp;
+ {/if}
+*}
+ </td>
+ <td>
+ <div class="declaration">
+ <a href="{$methods[method].id}">{$methods[method].function_name}</a>
+ ({strip}
+ {if $methods[method].ifunction_call.params}
+ {foreach item=param name="method" from=$methods[method].ifunction_call.params}
+ {$param.type} {$param.name}{if !$smarty.foreach.method.last}, {/if}
+ {/foreach}
+
+ {/if}
+ {/strip})
+ </div>
+ <div class="description">
+ {$methods[method].sdesc}
+ </div>
+ </td>
+ </tr>
+ {/if}
+ {/section}
+ </table>
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_sub_classes.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_sub_classes.tpl
new file mode 100644
index 00000000..e605b314
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_sub_classes.tpl
@@ -0,0 +1,19 @@
+{if $children}
+ <div class="sub-classes">
+ {if $is_interface}
+ <h4>Direct Known Sub-interfaces:</h4>
+ {else}
+ <h4>Direct Known Sub-classes:</h4>
+ {/if}
+
+ <div><small>
+ {section name=child loop=$children}
+ {if !$smarty.section.child.first}
+ , {$children[child].link}
+ {else}
+ {$children[child].link}
+ {/if}
+ {/section}
+ </small></div>
+ </div>
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_tags.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_tags.tpl
new file mode 100644
index 00000000..221830c4
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/_tags.tpl
@@ -0,0 +1,13 @@
+<div class="tag-list">
+ {section name=tag loop=$tags}
+ {if $tags[tag].keyword != "abstract" &&
+ $tags[tag].keyword != "access" &&
+ $tags[tag].keyword != "static" &&
+ $tags[tag].keyword != "version"
+ }
+
+ <strong>{$tags[tag].keyword|capitalize}:</strong>
+ {$tags[tag].data}<br />
+ {/if}
+ {/section}
+</div>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/basicindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/basicindex.tpl
new file mode 100644
index 00000000..37e94343
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/basicindex.tpl
@@ -0,0 +1,18 @@
+{section name=letter loop=$letters}
+ [ <a href="{$indexname}.html#{$letters[letter].letter}">{$letters[letter].letter}</a> ]
+{/section}
+
+{section name=index loop=$index}
+ <hr />
+ <a name="{$index[index].letter}"></a>
+ <div>
+ <h2>{$index[index].letter}</h2>
+ <dl>
+ {section name=contents loop=$index[index].index}
+ <dt><b>{$index[index].index[contents].name}</b></dt>
+ <dd>{$index[index].index[contents].listing}</dd>
+ {/section}
+ </dl>
+ </div>
+ <a href="{$indexname}.html#top">top</a><br>
+{/section}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/blank.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/blank.tpl
new file mode 100644
index 00000000..b503c142
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/blank.tpl
@@ -0,0 +1,5 @@
+<div align="center"><h1>{$maintitle}</h1></div>
+<b>Welcome to {$package}!</b><br />
+<br />
+This documentation was generated by <a href="{$phpdocwebsite}">phpDocumentor v{$phpdocversion}</a><br />
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/class.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/class.tpl
new file mode 100644
index 00000000..e791bbba
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/class.tpl
@@ -0,0 +1,29 @@
+{include file="header.tpl" eltype="class" hasel=true contents=$classcontents}
+
+<h1>{if $is_interface}Interface{else}Class{/if} {$class_name}</h1>
+
+{*inheritence tree*}
+<div class="inheritence-tree">
+ <pre>{section name=tree loop=$class_tree.classes}{if $smarty.section.tree.last}<strong>{$class_tree.classes[tree]}</strong>{else}{$class_tree.classes[tree]}{/if}{$class_tree.distance[tree]}{/section}</pre>
+</div>
+
+{include file="_sub_classes.tpl"}
+{include file="_class_description.tpl"}
+{include file="_inherited_constants.tpl"}
+
+{include file="_constructor_summary.tpl"}
+{* include file="_destructor_summary.tpl" *}
+
+{include file="_method_summary.tpl"}
+
+{include file="_inherited_methods.tpl"}
+{include file="_constant_summary.tpl"}
+{include file="_constructor_details.tpl"}
+
+{* include file="_destructor_details.tpl" *}
+
+{include file="_method_details.tpl"}
+
+{include file="_constant_details.tpl"}
+
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/classleft.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/classleft.tpl
new file mode 100644
index 00000000..c07fc33a
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/classleft.tpl
@@ -0,0 +1,9 @@
+{foreach key=subpackage item=files from=$classleftindex}
+ <div class="package">
+ {if $subpackage != ""}{$subpackage}<br />{/if}
+ {section name=files loop=$files}
+ {if $subpackage != ""}&nbsp;&nbsp;{/if}
+ {if $files[files].link != ''}<a href="{$files[files].link}">{/if}{$files[files].title}{if $files[files].link != ''}</a>{/if}<br />
+ {/section}
+ </div>
+{/foreach}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/classtrees.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/classtrees.tpl
new file mode 100644
index 00000000..4020e3a8
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/classtrees.tpl
@@ -0,0 +1,8 @@
+{include file="header.tpl" noleftindex=true}
+<h1>{$title}</h1>
+{section name=classtrees loop=$classtrees}
+<hr />
+<div class="classtree">Root class {$classtrees[classtrees].class}</div><br>
+{$classtrees[classtrees].class_tree}
+{/section}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/const.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/const.tpl
new file mode 100644
index 00000000..88856c4b
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/const.tpl
@@ -0,0 +1,14 @@
+{section name=consts loop=$consts}
+{if $show == 'summary'}
+ var {$consts[consts].const_name}, {$consts[consts].sdesc}<br>
+{else}
+ <a name="{$consts[consts].const_dest}"></a>
+ <p></p>
+ <h4>{$consts[consts].const_name} = <span class="value">{$consts[consts].const_value|replace:"\n":"<br>\n"|replace:" ":"&nbsp;"|replace:"\t":"&nbsp;&nbsp;&nbsp;"}</span></h4>
+ <p>[line {if $consts[consts].slink}{$consts[consts].slink}{else}{$consts[consts].line_number}{/if}]</p>
+ {include file="docblock.tpl" sdesc=$consts[consts].sdesc desc=$consts[consts].desc tags=$consts[consts].tags}
+
+ <br />
+ <div class="top">[ <a href="#top">Top</a> ]</div><br />
+{/if}
+{/section}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/define.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/define.tpl
new file mode 100644
index 00000000..04ce5b48
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/define.tpl
@@ -0,0 +1,32 @@
+{if count($defines) > 0}
+{section name=def loop=$defines}
+{if $show == 'summary'}
+define constant <a href="{$defines[def].id}">{$defines[def].define_name}</a> = {$defines[def].define_value}, {$defines[def].sdesc}<br>
+{else}
+ <hr />
+ <a name="{$defines[def].define_link}"></a>
+ <h3>{$defines[def].define_name} <span class="smalllinenumber">[line {if $defines[def].slink}{$defines[def].slink}{else}{$defines[def].line_number}{/if}]</span></h3>
+ <div class="tags">
+ <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
+ <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
+ <code>{$defines[def].define_name} = {$defines[def].define_value}</code>
+ </td></tr></table>
+ </td></tr></table>
+
+ {include file="docblock.tpl" sdesc=$defines[def].sdesc desc=$defines[def].desc tags=$defines[def].tags}
+ <br />
+ {if $defines[def].define_conflicts.conflict_type}
+ <p><b>Conflicts with defines:</b>
+ {section name=me loop=$defines[def].define_conflicts.conflicts}
+ {$defines[def].define_conflicts.conflicts[me]}<br />
+ {/section}
+ </p>
+ {/if}
+{* original {if $defines[def].define_conflicts != ""
+ <b>Conflicts:</b> {$defines[def].define_conflicts<br /><br />
+ {/if *}
+ </div>
+ <div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
+{/if}
+{/section}
+{/if} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/docblock.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/docblock.tpl
new file mode 100644
index 00000000..09a603f8
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/docblock.tpl
@@ -0,0 +1,15 @@
+{if $sdesc != ''}{$sdesc|default:''}<br /><br />{/if}
+{if $desc != ''}{$desc|default:''}<br />{/if}
+{if count($tags) > 0}
+<br /><br />
+<h4>Tags:</h4>
+<div class="tags">
+<table border="0" cellspacing="0" cellpadding="0">
+{section name=tag loop=$tags}
+ <tr>
+ <td><b>{$tags[tag].keyword}:</b>&nbsp;&nbsp;</td><td>{$tags[tag].data}</td>
+ </tr>
+{/section}
+</table>
+</div>
+{/if} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/elementindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/elementindex.tpl
new file mode 100644
index 00000000..175a5136
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/elementindex.tpl
@@ -0,0 +1,5 @@
+{include file="header.tpl" noleftindex=true}
+<a name="top"></a>
+<h1>Index of all elements</h1>
+{include file="basicindex.tpl" indexname="elementindex"}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/errors.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/errors.tpl
new file mode 100644
index 00000000..1576a822
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/errors.tpl
@@ -0,0 +1,21 @@
+{include file="header.tpl" noleftindex=true}
+{section name=files loop=$files}
+<a href="#{$files[files].file}">{$files[files].file}</a><br>
+{/section}
+{foreach key=file item=issues from=$all}
+<a name="{$file}"></a>
+<h1>{$file}</h1>
+{if count($issues.warnings)}
+<h2>Warnings:</h2><br>
+{section name=warnings loop=$issues.warnings}
+<b>{$issues.warnings[warnings].name}</b> - {$issues.warnings[warnings].listing}<br>
+{/section}
+{/if}
+{if count($issues.errors)}
+<h2>Errors:</h2><br>
+{section name=errors loop=$issues.errors}
+<b>{$issues.errors[errors].name}</b> - {$issues.errors[errors].listing}<br>
+{/section}
+{/if}
+{/foreach}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/examplesource.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/examplesource.tpl
new file mode 100644
index 00000000..fb85654b
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/examplesource.tpl
@@ -0,0 +1,6 @@
+{include file="header.tpl" title=$title}
+<h1 align="center">{$title}</h1>
+<div class="php">
+{$source}
+</div>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/fileleft.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/fileleft.tpl
new file mode 100644
index 00000000..50f108d7
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/fileleft.tpl
@@ -0,0 +1,10 @@
+{foreach key=subpackage item=files from=$fileleftindex}
+ {if $subpackage != ""}subpackage <b>{$subpackage}</b><br>{/if}
+ <div class="package">
+ {section name=files loop=$files}
+ {if $files[files].link != ''}<a href="{$files[files].link}">{/if}
+ {$files[files].title}
+ {if $files[files].link != ''}</a>{/if}<br>
+ {/section}
+ </div><br />
+{/foreach}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/filesource.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/filesource.tpl
new file mode 100644
index 00000000..b23076a0
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/filesource.tpl
@@ -0,0 +1,8 @@
+{capture name="tutle"}File Source for {$name}{/capture}
+{include file="header.tpl" title=$smarty.capture.tutle}
+<h1 align="center">Source for file {$name}</h1>
+<p>Documentation is available at {$docs}</p>
+<div class="php">
+{$source}
+</div>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/footer.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/footer.tpl
new file mode 100644
index 00000000..68135cd6
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/footer.tpl
@@ -0,0 +1,25 @@
+ <!-- content end --></td></tr></table>
+ </td>
+ </tr>
+</table>
+
+</div><!-- main -->
+
+<div id="footer">
+ <a href="/tos/">Terms of Service</a> |
+ <a href="/support/">Contact Us</a>
+ <br/>
+ Copyright &copy; 2006-2007 by the PRADO Group.<br/>
+ <a title="Powered by PRADO" href="http://www.pradosoft.com/"><img src="http://www.pradosoft.com/images/powered2.gif" style="border-width:0px;" alt="Powered by PRADO" /></a>
+</div>
+
+</div><!-- page -->
+<script src="http://www.google-analytics.com/urchin.js" type="text/javascript">
+</script>
+<script type="text/javascript">
+_uacct = "UA-186303-3";
+urchinTracker();
+</script>
+
+</body>
+</html> \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/function.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/function.tpl
new file mode 100644
index 00000000..098aeb17
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/function.tpl
@@ -0,0 +1,48 @@
+{section name=func loop=$functions}
+{if $show == 'summary'}
+function {$functions[func].id}, {$functions[func].sdesc}<br />
+{else}
+ <hr />
+ <a name="{$functions[func].function_dest}"></a>
+ <h3>{$functions[func].function_name} <span class="smalllinenumber">[line {if $functions[func].slink}{$functions[func].slink}{else}{$functions[func].line_number}{/if}]</span></h3>
+ <div class="function">
+ <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
+ <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
+ <code>{$functions[func].function_return} {if $functions[func].ifunction_call.returnsref}&amp;{/if}{$functions[func].function_name}(
+{if count($functions[func].ifunction_call.params)}
+{section name=params loop=$functions[func].ifunction_call.params}
+{if $smarty.section.params.iteration != 1}, {/if}{if $functions[func].ifunction_call.params[params].default != ''}[{/if}{$functions[func].ifunction_call.params[params].type} {$functions[func].ifunction_call.params[params].name}{if $functions[func].ifunction_call.params[params].default != ''} = {$functions[func].ifunction_call.params[params].default|escape:"html"}]{/if}
+{/section}
+{/if})</code>
+ </td></tr></table>
+ </td></tr></table><br />
+
+ {include file="docblock.tpl" sdesc=$functions[func].sdesc desc=$functions[func].desc tags=$functions[func].tags}
+ <br /><br />
+ {if $functions[func].function_conflicts.conflict_type}
+ <p><b>Conflicts with functions:</b>
+ {section name=me loop=$functions[func].function_conflicts.conflicts}
+ {$functions[func].function_conflicts.conflicts[me]}<br />
+ {/section}
+ </p>
+ {/if}
+{* original {if $functions[func].function_conflicts != ""
+ <b>Conflicts:</b> {$functions[func].function_conflicts<br /><br />
+ {/if *}
+
+ {if count($functions[func].params) > 0}
+ <h4>Parameters</h4>
+ <table border="0" cellspacing="0" cellpadding="0">
+ {section name=params loop=$functions[func].params}
+ <tr>
+ <td class="type">{$functions[func].params[params].datatype}&nbsp;&nbsp;</td>
+ <td><b>{$functions[func].params[params].var}</b>&nbsp;&nbsp;</td>
+ <td>{$functions[func].params[params].data}</td>
+ </tr>
+ {/section}
+ </table>
+ {/if}
+ <div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
+ </div>
+{/if}
+{/section}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/global.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/global.tpl
new file mode 100644
index 00000000..1053f748
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/global.tpl
@@ -0,0 +1,40 @@
+{if count($globals) > 0}
+{section name=glob loop=$globals}
+{if $show == 'summary'}
+global variable <a href="{$globals[glob].id}">{$globals[glob].global_name}</a> = {$globals[glob].global_value}, {$globals[glob].sdesc}<br>
+{else}
+ <hr />
+ <a name="{$globals[glob].global_link}"></a>
+ <h4><i>{$globals[glob].global_type}</i> {$globals[glob].global_name} <span class="smalllinenumber">[line {if $globals[glob].slink}{$globals[glob].slink}{else}{$globals[glob].line_number}{/if}]</span></h4>
+ <div class="tags">
+ {if $globals[glob].sdesc != ""}
+ {include file="docblock.tpl" sdesc=$globals[glob].sdesc desc=$globals[glob].desc tags=$globals[glob].tags}
+ {/if}
+
+ <table border="0" cellspacing="0" cellpadding="0">
+ <tr>
+ <td><b>Default value:</b>&nbsp;&nbsp;</td>
+ <td>{$globals[glob].global_value|replace:" ":"&nbsp;"|replace:"\n":"<br />\n"|replace:"\t":"&nbsp;&nbsp;&nbsp;"}</td>
+ </tr>
+ {if $globals[glob].global_conflicts.conflict_type}
+ <tr>
+ <td><b>Conflicts with globals:</b>&nbsp;&nbsp;</td>
+ <td>
+ {section name=me loop=$globals[glob].global_conflicts.conflicts}
+ {$globals[glob].global_conflicts.conflicts[me]}<br />
+ {/section}
+ </td>
+ </tr>
+ {/if}
+{* original {if $globals[glob].global_conflicts != ""
+ <tr>
+ <td><b>Conflicts:</b>&nbsp;&nbsp;</td>
+ <td>{$globals[glob].global_conflicts</td>
+ </tr>
+ {/if *}
+ </table>
+ </div><br /><br />
+ <div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
+{/if}
+{/section}
+{/if} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/header.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/header.tpl
new file mode 100644
index 00000000..659168cf
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/header.tpl
@@ -0,0 +1,113 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" >
+ <head>
+ <title>PRADO API Manual: {$title}</title>
+ <meta http-equiv="Expires" content="Fri, Jan 01 1900 00:00:00 GMT"/>
+ <meta http-equiv="Pragma" content="no-cache"/>
+ <meta http-equiv="Cache-Control" content="no-cache"/>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
+ <meta http-equiv="content-language" content="en"/>
+ <meta name="Keywords" content="PRADO PHP framework component template delphi asp.net event property OOP PHP5 object oriented programming Web programming development" />
+ <meta name="Description" content="PRADO is a component-based and event-driven framework for Web application development in PHP 5." />
+ <meta name="Author" content="Qiang Xue" />
+ <meta name="Subject" content="Web programming, PHP framework" />
+ <meta name="Language" content="en" />
+ <link rel="Shortcut Icon" href="/favicon.ico" />
+ <link rel="stylesheet" type="text/css" href="/css/style.css" />
+ <link rel="stylesheet" type="text/css" href="/css/manual.css" />
+ </head>
+ <body>
+ <div id="page">
+ <div id="header">
+ <div id="logo"><img src="/css/pradoheader.gif" alt="PRADO Component Framework for PHP 5" /></div>
+ <div id="mainmenu">
+ <ul>
+ <li><a href="/">Home</a></li>
+ <li><a href="/about/" >About</a></li>
+ <li><a href="/testimonials/" >Testimonials</a></li>
+ <li><a href="/demos/" >Demos</a></li>
+ <li><a href="/download/" >Download</a></li>
+ <li><a href="/documentation/" class="active">Documentation</a></li>
+ <li><a href="/forum/" >Forum</a></li>
+ <li><a href="http://code.google.com/p/prado3/updates/list">Development</a></li>
+ </ul>
+ </div><!-- mainmenu -->
+ </div><!-- header -->
+ <div id="main">
+ <div id="navbar">
+ <ul>
+ <li><a href="/tutorials/">Tutorials</a></li>
+ <li><a href="/docs/classdoc/">Class Docs</a></li>
+ <li><a href="/docs/manual/" class="active">API Manual</a></li>
+ <li><a href="/wiki/">Wiki</a></li>
+ </ul>
+ </div>
+ <table width="100%" border="0" cellpadding="0" cellspacing="0">
+ <tr valign="top">
+ <td width="200" id="infobar">
+{if count($ric) >= 1}
+ <div id="ric">
+{section name=ric loop=$ric}
+ <p><a href="{$subdir}{$ric[ric].file}">{$ric[ric].name}</a></p>
+{/section}
+ </div>
+{/if}
+ <b>Packages:</b><br />
+{section name=packagelist loop=$packageindex}
+ <a href="{$subdir}{$packageindex[packagelist].link}">{$packageindex[packagelist].title}</a><br />
+{/section}
+ <br /><br />
+{if $tutorials}
+ <b>Tutorials/Manuals:</b><br />
+{if $tutorials.pkg}
+ <strong>Package-level:</strong>
+{section name=ext loop=$tutorials.pkg}
+ {$tutorials.pkg[ext]}
+{/section}
+{/if}
+{if $tutorials.cls}
+ <strong>Class-level:</strong>
+{section name=ext loop=$tutorials.cls}
+ {$tutorials.cls[ext]}
+{/section}
+{/if}
+{if $tutorials.proc}
+ <strong>Procedural-level:</strong>
+{section name=ext loop=$tutorials.proc}
+ {$tutorials.proc[ext]}
+{/section}
+{/if}
+{/if}
+{if !$noleftindex}{assign var="noleftindex" value=false}{/if}
+{if !$noleftindex}
+{*
+{if $compiledfileindex}
+ <b>Files:</b><br />
+ {eval var=$compiledfileindex}
+{/if}
+*}
+{if $compiledclassindex}
+ <b>Classes:</b><br />
+ {eval var=$compiledclassindex}
+{/if}
+{/if}
+ </td>
+ <td>
+ <table cellpadding="10" cellspacing="0" width="100%" border="0">
+ <tr>
+ <td valign="top" align="center">
+ <form type="get" action="/docs/manual/search.php">
+ Keyword <input type="text" name="keyword" size="50" />
+ <input type="submit" value="Search" />
+ </form>
+ </td>
+ </tr>
+ <tr>
+ <td valign="top"><!-- content begin -->
+{*
+{if !$hasel}{assign var="hasel" value=false}{/if}
+{if $hasel}
+ <h1>{$eltype|capitalize}: {$class_name}</h1>
+ Source Location: {$source_location}<br /><br />
+{/if}
+*}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/include.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/include.tpl
new file mode 100644
index 00000000..cff067db
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/include.tpl
@@ -0,0 +1,9 @@
+{if count($includes) > 0}
+<h4>Includes:</h4>
+<div class="tags">
+{section name=includes loop=$includes}
+{$includes[includes].include_name}({$includes[includes].include_value}) [line {if $includes[includes].slink}{$includes[includes].slink}{else}{$includes[includes].line_number}{/if}]<br />
+{include file="docblock.tpl" sdesc=$includes[includes].sdesc desc=$includes[includes].desc tags=$includes[includes].tags}
+{/section}
+</div>
+{/if} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/index.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/index.tpl
new file mode 100644
index 00000000..60c74b47
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/index.tpl
@@ -0,0 +1,7 @@
+{include file="header.tpl"}
+{if $contents}
+{$contents}
+{else}
+{include file="blank.tpl"}
+{/if}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/media/background.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/media/background.png
new file mode 100644
index 00000000..d6f36f60
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/media/background.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/media/bg_left.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/media/bg_left.png
new file mode 100644
index 00000000..19fdf05d
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/media/bg_left.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/media/empty.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/media/empty.png
new file mode 100644
index 00000000..a9f29bb1
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/media/empty.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/media/manual.css b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/media/manual.css
new file mode 100644
index 00000000..8aaa937d
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/media/manual.css
@@ -0,0 +1,260 @@
+/* thanks to symfony for a great base template for phpdoc */
+/* symfony-project.com */
+
+#page
+{
+ width: 99%;
+}
+
+div.credit
+{
+ font-size: 10px;
+ color: #888;
+}
+
+.inherited-methods
+{
+ background-color: #ddd;
+ font-size: 1.0em;
+ margin-top: 10px;
+ width: 100%;
+}
+
+.inherited-methods td
+{
+ background-color: #FFFFFF;
+ font-family: "courier new", courier;
+ font-size: 1.1em;
+ padding: 5px;
+}
+
+.inherited-methods th
+{
+ background-color: #F0F0F0;
+ font-weight: bold;
+ padding: 5px;
+ text-align: left;
+}
+
+.method-detail
+{
+ font-size: 1.0em;
+}
+
+.method-detail a
+{
+ font-weight: bold;
+}
+
+.method-detail td
+{
+ font-family: "courier new", courier;
+ font-size: 1.1em;
+ padding-top: 10px;
+ vertical-align: top;
+}
+
+.method-details
+{
+ background-color: #ddd;
+ font-size: 1.0em;
+ width: 100%;
+}
+
+.method-details td
+{
+ background-color: #FFFFFF;
+}
+
+.method-details td.method-data
+{
+ padding: 5px;
+}
+
+.method-details h2
+{
+ color: #750000;
+}
+
+.method-details th
+{
+ background-color: #F0F0F0;
+ font-weight: bold;
+ font-size: 1.2em;
+ padding: 5px;
+ text-align: left;
+}
+
+.method-summary
+{
+ background-color: #aaa;
+ font-size: 1.0em;
+ width: 100%;
+}
+
+.method-summary td
+{
+ background-color: #FFFFFF;
+ padding: 5px;
+}
+
+.method-summary td a
+{
+ font-weight: bold;
+}
+
+.method-summary td.type
+{
+ font-family: "courier new", courier;
+ font-size: 1.0em;
+ text-align: right;
+ vertical-align: top;
+}
+
+.method-summary div.declaration
+{
+ font-family: "courier new", courier;
+ font-size: 1.1em;
+}
+
+.method-summary th
+{
+ background-color: #F0F0F0;
+ font-weight: bold;
+ font-size: 1.2em;
+ padding: 5px;
+ text-align: left;
+}
+
+.method-summary th.small
+{
+ font-size: 1.0em;
+}
+
+.method-summary tr.reference td {
+ background-color: #FFEDED;
+}
+
+
+.constant-details
+{
+ background-color: #ddd;
+ font-size: 1.0em;
+ width: 100%;
+}
+
+.constant-details h3
+{
+ color: #750000;
+}
+
+.constant-details td
+{
+ background-color: #FFFFFF;
+ padding: 5px;
+}
+
+.constant-details th
+{
+ background-color: #F0F0F0;
+ font-weight: bold;
+ font-size: 1.2em;
+ padding: 5px;
+ text-align: left;
+}
+
+.constant-summary
+{
+ background-color: #ddd;
+ font-size: 1.0em;
+ width: 100%;
+}
+
+.constant-summary td
+{
+ background-color: #FFFFFF;
+ padding: 5px;
+}
+
+.constant-summary td.name a
+{
+ font-family: "courier new", courier;
+ font-size: 1.0em;
+ font-weight: bold;
+}
+
+.constant-summary td.type
+{
+ font-family: "courier new", courier;
+ font-size: 1.0em;
+}
+
+.constant-summary th
+{
+ background-color: #F0F0F0;
+ font-weight: bold;
+ font-size: 1.2em;
+ padding: 5px;
+ text-align: left;
+}
+
+.inherited-constants
+{
+ background-color: #eee;
+ font-size: 1.0em;
+ margin-top: 10px;
+ width: 100%;
+}
+
+.inherited-constants td
+{
+ background-color: #FFFFFF;
+ font-family: "courier new", courier;
+ font-size: 1.1em;
+ padding: 5px;
+}
+
+.inherited-constants th
+{
+ background-color: #F0F0F0;
+ font-weight: bold;
+ padding: 5px;
+ text-align: left;
+}
+
+.class-declaration
+{
+ font-family: "courier new", courier;
+ font-size: 1.1em;
+}
+
+.class-description
+{
+ background-color: #F0F0F0;
+ margin-top: 10px;
+ padding: 1px 8px 1px 8px;
+ margin-bottom: 5px;
+}
+
+.inheritence-tree pre
+{
+ margin-bottom: 0;
+}
+
+.sub-classes h4
+{
+ margin: 10px 0 0 0;
+}
+
+.sub-classes div
+{
+ font-family: "courier new", courier;
+ font-size: 1.1em;
+ margin: 5px 0 0 40px;
+}
+
+.sub-classes div small
+{
+ font-size: 1.0em;
+}
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/media/style.css b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/media/style.css
new file mode 100644
index 00000000..918d43e4
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/media/style.css
@@ -0,0 +1,598 @@
+/**
+ * PradoSoft profile by Carl G. Mathisen and Stefan A. Petrov
+ * http://decart.no
+ */
+
+body
+{
+ text-align: center;
+}
+
+body, div, span, p, input
+{
+ font-family: Verdana, sans-serif, Arial;
+ font-size: 10pt;
+ color: #333333;
+}
+
+h1, h2, h3, h4
+{
+ font-family: Verdana, Helvetica, Arial, Lucida Grande, Trebuchet MS;
+ padding: 0px;
+ margin: 0px;
+ margin-bottom: 10px;
+ color: #821B18;
+ font-weight: normal;
+}
+
+h2
+{
+ font-size: 18px;
+}
+
+h3
+{
+ font-size: 16px;
+}
+
+div
+{
+ text-align: left;
+}
+
+.instructions
+{
+ background-color: #EEEEEE;
+}
+
+img
+{
+ border: none;
+}
+
+a
+{
+ color: #CD2C27;
+ text-decoration: none;
+}
+
+a:hover
+{
+ color: #821B18;
+ text-decoration: underline;
+}
+
+#page
+{
+ margin: 0 auto;
+ padding: 0;
+ position: relative;
+}
+
+#header
+{
+ position: relative;
+ height: 98px;
+}
+
+#logo
+{
+ height: 99px;
+}
+
+/* main page */
+
+div.intro
+{
+ height: 190px;
+ background-image: url('bigmantis.jpg');
+ background-repeat: no-repeat;
+ background-position: top right;
+ background-color: #fff;
+}
+
+div.statements
+{
+ height: 135px;
+ background-image: url('statementsbg.gif');
+ background-repeat: repeat-x;
+ position: relative;
+ border-bottom : 1px solid #EEE;
+}
+
+div.statements div
+{
+ position: absolute;
+ width: 250px;
+ top: 20px;
+}
+
+div.statements div p
+{
+ font-size: 13px;
+ color: #818181;
+}
+
+div.statements div.whatis
+{
+ left: 20px;
+}
+
+div.statements div.whatreq
+{
+ left: 290px;
+}
+
+div.statements div.cani
+{
+ left: 600px;
+ width: 210px;
+}
+
+/* navbar */
+#navbar
+{
+ border-bottom: 2px solid #E9EEEF;
+ height: 30px;
+ margin-bottom: 20px;
+}
+
+#navbar ul
+{
+ margin-left: 0;
+ padding-left: 0;
+ display: inline;
+}
+
+#navbar ul li
+{
+ margin-left: 0px;
+ list-style: none;
+ display: inline;
+}
+
+#navbar ul li a
+{
+ display: block;
+ float: left;
+ font-size: 14px;
+ font-weight: bold;
+ padding-right: 14px;
+ padding-top: 5px;
+ color: #CD2B26;
+ text-decoration: none;
+ height: 29px;
+}
+
+#navbar ul li a.active, #navbar ul li a.hover
+{
+ color: #821B18;
+}
+
+/* infobar */
+div#infobar
+{
+ float: right;
+ width: 200px;
+ padding-left: 20px;
+ border-left: 2px solid #E9EEEF;
+}
+
+div#infobar div
+{
+ margin-bottom: 20px;
+}
+
+div#infobar div#featured img
+{
+ margin-top: 10px;
+}
+
+/* articles */
+
+div#articles
+{
+ width: 560px;
+ float: left;
+}
+
+/* article */
+
+div.article
+{
+ margin-bottom: 40px;
+}
+
+div.article .date
+{
+ color: #9F9291;
+}
+
+div.article .more
+{
+ margin-right: 10px;
+ display: block;
+ text-align: right;
+}
+
+.logo
+{
+ position: absolute;
+ margin-left: 15px;
+ margin-top: 0px;
+ z-index: 1;
+}
+
+#main
+{
+ padding: 20px;
+ padding-top: 20px;
+ background-color: #fff;
+}
+
+div.mantis
+{
+ height: 190px;
+ background-color: #fff;
+ border-bottom: 1px solid #DCDCDC;
+}
+
+div.releases
+{
+ float: left;
+ width: 240px;
+ height: 190px;
+}
+
+div.releases div.official
+{
+ width: 190px;
+ position: relative;
+ left: 52px;
+ top: 128px;
+ font-size: 8pt;
+ color: #6D6D6D;
+}
+
+div.releases div.official a
+{
+ display: block;
+}
+
+div.whyprado
+{
+ display: block;
+ float: left;
+}
+
+div.whyprado ul.list
+{
+ margin-top: 40px;
+ margin-left: 40px;
+}
+
+div.whyprado ul.list li
+{
+ display: block;
+ margin: 5px;
+ padding: 0px;
+ font-size: 18px;
+ background-repeat: no-repeat;
+ background-position: bottom left;
+ padding-left: 30px;
+ list-style: none;
+}
+
+
+#footer
+{
+ border-top: 1px solid #e9eeef;
+ background-color: #fff;
+ clear: both;
+ color: #A7A7A7;
+ font-size: 8pt;
+ text-align: center;
+ padding-top: 10px;
+ padding-bottom: 30px;
+ background-repeat: repeat-x;
+ background-position: bottom;
+}
+
+#features
+{
+ margin-left: 610px;
+ padding: 10px;
+ padding-left: 10px;
+ padding-right: 10px;
+ background-color: #BEDD75;
+ color: #344A1E;
+ font-size: 9pt;
+}
+
+#features ul
+{
+ margin: 10px;
+ padding: 0px;
+}
+
+#features ul li
+{
+ font-size: 8pt;
+ padding: 0px;
+ margin: 0px;
+ margin-top: 8px;
+}
+
+#features h3
+{
+ margin: 0px;
+ padding: 0px;
+ font-size: 10pt;
+ color: #292E1D;
+ text-align: center;
+ border-bottom: 1px solid silver;
+}
+
+#news
+{
+ float: left;
+ width: 590px;
+}
+
+.newstitle
+{
+ font-size: 12pt;
+ font-weight: bold;
+ color: #555;
+ margin-top: 10px;
+ margin-bottom: 0px;
+ border-bottom: 1px solid silver;
+}
+
+.newscontentmore
+{
+ margin-right: 10px;
+ display: block;
+ color: #50811A;
+ text-align: right;
+}
+
+.newscontentmore:hover
+{
+ color: red;
+}
+
+.newstime
+{
+ margin: 0px;
+ font-size:0.8em;
+ color:#aaa;
+ padding-left:10px;
+ text-align: right;
+}
+
+.newscontent
+{
+ margin-top: 5px;
+}
+
+#leftpanel
+{
+ float: left;
+ width: 550px;
+}
+
+#topics
+{
+ border: 1px solid #804040;
+ margin-left: 610px;
+ padding-bottom: 10px;
+}
+
+#topicsheader
+{
+ text-align:center;
+ font-weight:bold;
+ background-color:#804040;
+ color:#FFFFBC;
+ padding: 3px;
+ margin-bottom:0px;
+}
+
+.topicitem
+{
+ padding: 5px;
+}
+
+.topicitem a:hover
+{
+ text-decoration: underline;
+}
+
+.topicitem p
+{
+ margin: 0px;
+ font-size:0.8em;
+ color:#aaa;
+ padding-left:10px;
+ white-space:nowrap;
+}
+
+.reference
+{
+}
+
+.reference img
+{
+ margin: 10px;
+}
+
+.reference h3
+{
+}
+
+
+.download
+{
+ width: 100%;
+ background-color: #aaa;
+}
+
+.download td
+{
+ background-color: #FFFFFF;
+ padding: 5px;
+ font-size: 9pt;
+}
+
+.download td a
+{
+ font-weight: bold;
+}
+
+.download td.type
+{
+ font-family: "courier new", courier;
+ text-align: right;
+ vertical-align: top;
+}
+
+.download div.declaration
+{
+ font-family: "courier new", courier;
+}
+
+
+.download th
+{
+ background-color: #F0F0F0;
+ font-weight: bold;
+ padding: 5px;
+ text-align: left;
+}
+
+.download th.small
+{
+ font-size: 1.0em;
+}
+
+.download tr.reference td {
+ background-color: #FFEDED;
+}
+
+
+.doc-title
+{
+ font-size: 14pt;
+ font-weight: bold;
+ margin-top: 10px;
+ margin-bottom: 10px;
+}
+
+.doc-subtitle
+{
+ font-size: 11pt;
+ font-weight: bold;
+ background-color: #EEE;
+ padding: 5px;
+ margin-top: 20px;
+}
+
+.doc-namespace
+{
+ font-size: 8pt;
+}
+
+
+.doc-menu
+{
+}
+
+.doc-classes
+{
+}
+
+.doc-ancestors
+{
+ font-size: 8pt;
+}
+
+.doc-properties
+{
+ font-size: 9pt;
+}
+
+.doc-properties table
+{
+ border-collapse: collapse;
+ background-color: silver;
+ width: 100%;
+}
+
+.doc-properties td, .doc-properties th
+{
+ padding: 3px;
+ vertical-align: top;
+ background-color: white;
+ border: 1px solid silver;
+}
+
+.doc-events
+{
+ font-size: 9pt;
+}
+
+.doc-events table
+{
+ border-collapse: collapse;
+ background-color: silver;
+ width: 100%;
+}
+
+.doc-events td, .doc-events th
+{
+ padding: 3px;
+ vertical-align: top;
+ background-color: white;
+ border: 1px solid silver;
+}
+
+.doc-methods
+{
+ font-size: 9pt;
+}
+
+.doc-methods table
+{
+ border-collapse: collapse;
+ background-color: silver;
+ width: 100%;
+}
+
+.doc-methods td, .doc-methods th
+{
+ padding: 3px;
+ vertical-align: top;
+ background-color: white;
+ border: 1px solid silver;
+}
+
+.doc-derived
+{
+}
+
+.doc-inherited
+{
+}
+
+.doc-native td
+{
+ background-color: lightyellow;
+}
+
+.forum-topic
+{
+ padding: 10px;
+ border:1px solid silver;
+ margin-bottom: 10px;
+}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/media/stylesheet.css b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/media/stylesheet.css
new file mode 100644
index 00000000..2c08f94f
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/media/stylesheet.css
@@ -0,0 +1,129 @@
+BODY, DIV, SPAN, PRE, CODE, TD, TH {
+ line-height: 140%;
+ font-size: 10pt;
+ font-family: verdana,arial,sans-serif;
+}
+
+H1 {
+ font-size: 12pt;
+}
+
+H4 {
+ font-size: 10pt;
+ font-weight: bold;
+}
+
+P.label {
+ margin-bottom: 5px;
+}
+P.dt {
+ margin-top: 0px;
+ margin-bottom: 0px;
+}
+P.indent {
+ margin-top: 0px;
+ margin-left: 20px;
+ margin-bottom: 0px;
+}
+P.method {
+ background-color: #f0f0f0;
+ padding: 2px;
+ border: 1px #cccccc solid;
+}
+
+A {
+ text-decoration: none;
+}
+
+A:link{
+ color: #336699;
+}
+
+A:visited {
+ color: #003366;
+}
+
+A:active, A:hover {
+ color: #6699CC;
+}
+
+A:hover{
+ text-decoration: underline;
+}
+
+SPAN.type {
+ color: #336699;
+ font-size: xx-small;
+ font-weight: normal;
+ }
+
+PRE {
+ background-color: #EEEEEE;
+ padding: 10px;
+ border-width: 1px;
+ border-color: #336699;
+ border-style: solid;
+}
+
+HR {
+ color: #336699;
+ background-color: #336699;
+ border-width: 0px;
+ height: 1px;
+ filter: Alpha (opacity=100,finishopacity=0,style=1);
+}
+
+DIV.sdesc {
+ font-weight: bold;
+ background-color: #EEEEEE;
+ padding: 10px;
+ border-width: 1px;
+ border-color: #336699;
+ border-style: solid;
+}
+
+DIV.desc {
+ font-family: monospace;
+ background-color: #EEEEEE;
+ padding: 10px;
+ border-width: 1px;
+ border-color: #336699;
+ border-style: solid;
+}
+
+SPAN.code {
+ font-family: monospace;
+}
+
+CODE.varsummarydefault{
+ padding: 1px;
+ border-width: 1px;
+ border-style: dashed;
+ border-color: #336699;
+}
+
+UL.tute {
+ margin: 0px;
+ padding: 0px;
+ padding-left: 5px;
+ }
+
+LI.tute {
+ line-height: 140%;
+ font-size: 10pt;
+ text-indent: -15px;
+ padding-bottom: 2px;
+ padding-left: 14px;
+}
+
+.small{
+ font-size: 9pt;
+}
+
+
+.tute-tag { color: #009999 }
+.tute-attribute-name { color: #0000FF }
+.tute-attribute-value { color: #0099FF }
+.tute-entity { font-weight: bold; }
+.tute-comment { font-style: italic }
+.tute-inline-tag { color: #636311; font-weight: bold }
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/method.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/method.tpl
new file mode 100644
index 00000000..07cb76e5
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/method.tpl
@@ -0,0 +1,58 @@
+{section name=methods loop=$methods}
+{if $show == 'summary'}
+method {$methods[methods].function_call}, {$methods[methods].sdesc}<br />
+{else}
+ <hr />
+ <a name="{$methods[methods].method_dest}"></a>
+ <h3>{if $methods[methods].ifunction_call.constructor}constructor {elseif $methods[methods].ifunction_call.destructor}destructor {else}method {/if}{$methods[methods].function_name} <span class="smalllinenumber">[line {if $methods[methods].slink}{$methods[methods].slink}{else}{$methods[methods].line_number}{/if}]</span></h3>
+ <div class="function">
+ <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
+ <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
+ <code>{$methods[methods].function_return} {if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}(
+{if count($methods[methods].ifunction_call.params)}
+{section name=params loop=$methods[methods].ifunction_call.params}
+{if $smarty.section.params.iteration != 1}, {/if}
+{if $methods[methods].ifunction_call.params[params].default != ''}[{/if}{$methods[methods].ifunction_call.params[params].type}
+{$methods[methods].ifunction_call.params[params].name}{if $methods[methods].ifunction_call.params[params].default != ''} = {$methods[methods].ifunction_call.params[params].default}]{/if}
+{/section}
+{/if})</code>
+ </td></tr></table>
+ </td></tr></table><br />
+
+ {include file="docblock.tpl" sdesc=$methods[methods].sdesc desc=$methods[methods].desc tags=$methods[methods].tags}<br /><br />
+
+{if $methods[methods].descmethod}
+ <p>Overridden in child classes as:<br />
+ {section name=dm loop=$methods[methods].descmethod}
+ <dl>
+ <dt>{$methods[methods].descmethod[dm].link}</dt>
+ <dd>{$methods[methods].descmethod[dm].sdesc}</dd>
+ </dl>
+ {/section}</p>
+{/if}
+{* original {if $methods[methods].descmethod != ""
+ {$methods[methods].descmethod<br /><br />
+ {/if *}
+{if $methods[methods].method_overrides}Overrides {$methods[methods].method_overrides.link} ({$methods[methods].method_overrides.sdesc|default:"parent method not documented"})<br /><br />{/if}
+{* original {if $methods[methods].method_overrides != ""
+ {$methods[methods].method_overrides<br /><br />
+ {/if *}
+
+ {if count($methods[methods].params) > 0}
+ <h4>Parameters:</h4>
+ <div class="tags">
+ <table border="0" cellspacing="0" cellpadding="0">
+ {section name=params loop=$methods[methods].params}
+ <tr>
+ <td class="type">{$methods[methods].params[params].datatype}&nbsp;&nbsp;</td>
+ <td><b>{$methods[methods].params[params].var}</b>&nbsp;&nbsp;</td>
+ <td>{$methods[methods].params[params].data}</td>
+ </tr>
+ {/section}
+ </table>
+ </div><br />
+ {/if}
+ <div class="top">[ <a href="#top">Top</a> ]</div>
+ </div>
+{/if}
+{/section}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/packages.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/packages.tpl
new file mode 100644
index 00000000..b48b6719
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/packages.tpl
@@ -0,0 +1,3 @@
+{section name=packages loop=$packages}
+<a href="{$packages[packages].link}">{$packages[packages].title}</a>
+{/section} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/page.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/page.tpl
new file mode 100644
index 00000000..6dd8683d
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/page.tpl
@@ -0,0 +1,31 @@
+{include file="header.tpl" eltype="Procedural file" class_name=$name hasel=true contents=$pagecontents}
+
+<br>
+<br>
+
+{if $classes}
+<div class="contents">
+{if $tutorial}
+<span class="maintutorial">Main Tutorial: {$tutorial}</span>
+{/if}
+<h2>Classes:</h2>
+{section name=classes loop=$classes}
+<dt>{$classes[classes].link}</dt>
+ <dd>{$classes[classes].sdesc}</dd>
+{/section}
+</div><br /><br />
+{/if}
+
+<h2>Page Details:</h2>
+{include file="docblock.tpl" type="page"}
+<br /><br />
+{include file="include.tpl"}
+<br /><br />
+{include file="global.tpl"}
+<br /><br />
+{include file="define.tpl"}
+<br />
+{include file="function.tpl"}
+
+{include file="footer.tpl"}
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/pkgelementindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/pkgelementindex.tpl
new file mode 100644
index 00000000..753ad7cf
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/pkgelementindex.tpl
@@ -0,0 +1,5 @@
+{include file="header.tpl"}
+<a name="top"></a>
+<h1>Element index for package {$package}</h1>
+{include file="basicindex.tpl" indexname=elementindex_$package}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/ric.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/ric.tpl
new file mode 100644
index 00000000..c4cb83f9
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/ric.tpl
@@ -0,0 +1,6 @@
+{include file="header.tpl"}
+<h1 align="center">{$name}</h1>
+<pre>
+{$contents|htmlentities}
+</pre>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/todolist.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/todolist.tpl
new file mode 100644
index 00000000..5ab0bca2
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/todolist.tpl
@@ -0,0 +1,14 @@
+{include file="header.tpl" title="Todo List"}
+<div align="center"><h1>Todo List</h1></div>
+{foreach from=$todos key=todopackage item=todo}
+<h2>{$todopackage}</h2>
+{section name=todo loop=$todo}
+<h3>{$todo[todo].link}</h3>
+<ul>
+{section name=t loop=$todo[todo].todos}
+ <li>{$todo[todo].todos[t]}</li>
+{/section}
+</ul>
+{/section}
+{/foreach}
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/tutorial.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/tutorial.tpl
new file mode 100644
index 00000000..22c71c3b
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/tutorial.tpl
@@ -0,0 +1,32 @@
+{include file="header.tpl" title=$title}
+{if $nav}
+<table width="100%" border="0" cellpadding="0" cellspacing="0">
+<tr>
+<td width="10%" align="left" valign="bottom">{if $prev}<a href=
+"{$prev}">{/if}Prev{if $prev}</a>{/if}</td>
+<td width="80%" align="center" valign="bottom"></td>
+<td width="10%" align="right" valign="bottom">{if $next}<a href=
+"{$next}">{/if}Next{if $next}</a>{/if}</td>
+</tr>
+</table>
+{/if}
+{$contents}
+{if $nav}
+<table width="100%" border="0" cellpadding="0" cellspacing="0">
+<tr>
+<td width="33%" align="left" valign="top">{if $prev}<a href="{$prev}">{/if}
+Prev{if $prev}</a>{/if}</td>
+<td width="34%" align="center" valign="top">{if $up}<a href=
+"{$up}">Up</a>{else}&nbsp;{/if}</td>
+<td width="33%" align="right" valign="top">{if $next}<a href=
+"{$next}">{/if}Next{if $next}</a>{/if}</td>
+</tr>
+
+<tr>
+<td width="33%" align="left" valign="top">{if $prevtitle}{$prevtitle}{/if}</td>
+<td width="34%" align="center" valign="top">{if $uptitle}{$uptitle}{/if}</td>
+<td width="33%" align="right" valign="top">{if $nexttitle}{$nexttitle}{/if}</td>
+</tr>
+</table>
+{/if}
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/tutorial_toc.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/tutorial_toc.tpl
new file mode 100644
index 00000000..1db34438
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/tutorial_toc.tpl
@@ -0,0 +1,29 @@
+{if count($toc)}
+<h1 align="center">Table of Contents</h1>
+<ul>
+{section name=toc loop=$toc}
+{if $toc[toc].tagname == 'refsect1'}
+{assign var="context" value="refsect1"}
+{$toc[toc].link}<br />
+{/if}
+{if $toc[toc].tagname == 'refsect2'}
+{assign var="context" value="refsect2"}
+&nbsp;&nbsp;&nbsp;{$toc[toc].link}<br />
+{/if}
+{if $toc[toc].tagname == 'refsect3'}
+{assign var="context" value="refsect3"}
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{$toc[toc].link}<br />
+{/if}
+{if $toc[toc].tagname == 'table'}
+{if $context == 'refsect2'}&nbsp;&nbsp;&nbsp;{/if}
+{if $context == 'refsect3'}&nbsp;&nbsp;&nbsp;{/if}
+Table: {$toc[toc].link}
+{/if}
+{if $toc[toc].tagname == 'example'}
+{if $context == 'refsect2'}&nbsp;&nbsp;&nbsp;{/if}
+{if $context == 'refsect3'}&nbsp;&nbsp;&nbsp;{/if}
+Table: {$toc[toc].link}
+{/if}
+{/section}
+</ul>
+{/if} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/tutorial_tree.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/tutorial_tree.tpl
new file mode 100644
index 00000000..faf7bcef
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/tutorial_tree.tpl
@@ -0,0 +1,5 @@
+<ul>
+ <li type="square"><a href="{$main.link}">{$main.title|strip_tags}</a>
+{if $kids}{$kids}</li>{/if}
+</ul>
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/var.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/var.tpl
new file mode 100644
index 00000000..c76929fe
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/PradoSoft/templates/var.tpl
@@ -0,0 +1,28 @@
+{section name=vars loop=$vars}
+{if $show == 'summary'}
+ var {$vars[vars].var_name}, {$vars[vars].sdesc}<br>
+{else}
+ <a name="{$vars[vars].var_dest}"></a>
+ <p></p>
+ <h4>{$vars[vars].var_name} = <span class="value">{$vars[vars].var_default|replace:"\n":"<br>\n"|replace:" ":"&nbsp;"|replace:"\t":"&nbsp;&nbsp;&nbsp;"}</span></h4>
+ <p>[line {if $vars[vars].slink}{$vars[vars].slink}{else}{$vars[vars].line_number}{/if}]</p>
+ {include file="docblock.tpl" sdesc=$vars[vars].sdesc desc=$vars[vars].desc tags=$vars[vars].tags}
+
+ <br />
+ <div class="tags">
+ <table border="0" cellspacing="0" cellpadding="0">
+ <tr>
+ <td><b>Type:</b>&nbsp;&nbsp;</td>
+ <td>{$vars[vars].var_type}</td>
+ </tr>
+ {if $vars[vars].var_overrides != ""}
+ <tr>
+ <td><b>Overrides:</b>&nbsp;&nbsp;</td>
+ <td>{$vars[vars].var_overrides}</td>
+ </tr>
+ {/if}
+ </table>
+ </div><br /><br />
+ <div class="top">[ <a href="#top">Top</a> ]</div><br />
+{/if}
+{/section}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/options.ini b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/options.ini
new file mode 100755
index 00000000..e61aeba8
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/options.ini
@@ -0,0 +1,577 @@
+preservedocbooktags = false
+
+;; used to highlight the {@source} inline tag, @filesource tag, and @example tag
+[highlightSourceTokens]
+;; format:
+;; T_CONSTANTNAME = open
+;; /T_CONSTANTNAME = close
+
+T_INCLUDE = <span class="src-inc">
+/T_INCLUDE = </span>
+T_INCLUDE_ONCE = <span class="src-inc">
+/T_INCLUDE_ONCE = </span>
+T_REQUIRE_ONCE = <span class="src-inc">
+/T_REQUIRE_ONCE = </span>
+T_REQUIRE_ONCE = <span class="src-inc">
+/T_REQUIRE_ONCE = </span>
+
+T_CONSTANT_ENCAPSED_STRING = <span class="src-str">
+/T_CONSTANT_ENCAPSED_STRING = </span>
+T_STRING_VARNAME = <span class="src-str">
+/T_STRING_VARNAME = </span>
+
+T_STRING = <span class="src-id">
+/T_STRING = </span>
+
+T_DNUMBER = <span class="src-num">
+/T_DNUMBER = </span>
+T_LNUMBER = <span class="src-num">
+/T_LNUMBER = </span>
+
+T_VARIABLE = <span class="src-var">
+/T_VARIABLE = </span>
+
+T_COMMENT = <span class="src-comm">
+/T_COMMENT = </span>
+T_ML_COMMENT = <span class="src-comm">
+/T_ML_COMMENT = </span>
+
+T_OBJECT_OPERATOR = <span class="src-sym">
+/T_OBJECT_OPERATOR = </span>
+
+T_ABSTRACT = <span class="src-key">
+/T_ABSTRACT = </span>
+T_CLONE = <span class="src-key">
+/T_CLONE = </span>
+T_HALT_COMPILER = <span class="src-key">
+/T_HALT_COMPILER = </span>
+T_ARRAY = <span class="src-key">
+/T_ARRAY = </span>
+T_AS = <span class="src-key">
+/T_AS = </span>
+T_BREAK = <span class="src-key">
+/T_BREAK = </span>
+T_CLASS = <span class="src-key">
+/T_CLASS = </span>
+T_CASE = <span class="src-key">
+/T_CASE = </span>
+T_CONST = <span class="src-key">
+/T_CONST = </span>
+T_CONTINUE = <span class="src-key">
+/T_CONTINUE = </span>
+T_DECLARE = <span class="src-key">
+/T_DECLARE = </span>
+T_DEFAULT = <span class="src-key">
+/T_DEFAULT = </span>
+T_ELSE = <span class="src-key">
+/T_ELSE = </span>
+T_ELSEIF = <span class="src-key">
+/T_ELSEIF = </span>
+T_EMPTY = <span class="src-key">
+/T_EMPTY = </span>
+T_ENDDECLARE = <span class="src-key">
+/T_ENDDECLARE = </span>
+T_ENDFOR = <span class="src-key">
+/T_ENDFOR = </span>
+T_ENDSWITCH = <span class="src-key">
+/T_ENDSWITCH = </span>
+T_ENDFOREACH = <span class="src-key">
+/T_ENDFOREACH = </span>
+T_ENDIF = <span class="src-key">
+/T_ENDIF = </span>
+T_ENDWHILE = <span class="src-key">
+/T_ENDWHILE = </span>
+T_EXIT = <span class="src-key">
+/T_EXIT = </span>
+T_EXTENDS = <span class="src-key">
+/T_EXTENDS = </span>
+T_FINAL = <span class="src-key">
+/T_FINAL = </span>
+T_FOR = <span class="src-key">
+/T_FOR = </span>
+T_FOREACH = <span class="src-key">
+/T_FOREACH = </span>
+T_FUNCTION = <span class="src-key">
+/T_FUNCTION = </span>
+T_GLOBAL = <span class="src-key">
+/T_GLOBAL = </span>
+T_IF = <span class="src-key">
+/T_IF = </span>
+T_IMPLEMENTS = <span class="src-key">
+/T_IMPLEMENTS = </span>
+T_INTERFACE = <span class="src-key">
+/T_INTERFACE = </span>
+T_LOGICAL_AND = <span class="src-key">
+/T_LOGICAL_AND = </span>
+T_LOGICAL_OR = <span class="src-key">
+/T_LOGICAL_OR = </span>
+T_LOGICAL_XOR = <span class="src-key">
+/T_LOGICAL_XOR = </span>
+T_NEW = <span class="src-key">
+/T_NEW = </span>
+T_PRIVATE = <span class="src-key">
+/T_PRIVATE = </span>
+T_PROTECTED = <span class="src-key">
+/T_PROTECTED = </span>
+T_PUBLIC = <span class="src-key">
+/T_PUBLIC = </span>
+T_RETURN = <span class="src-key">
+/T_RETURN = </span>
+T_STATIC = <span class="src-key">
+/T_STATIC = </span>
+T_SWITCH = <span class="src-key">
+/T_SWITCH = </span>
+T_VAR = <span class="src-key">
+/T_VAR = </span>
+T_WHILE = <span class="src-key">
+/T_WHILE = </span>
+
+T_DOUBLE_COLON = <span class="src-sym">
+/T_DOUBLE_COLON = </span>
+
+T_OPEN_TAG = <span class="src-php">
+/T_OPEN_TAG = </span>
+T_OPEN_TAG_WITH_ECHO = <span class="src-php">
+/T_OPEN_TAG_WITH_ECHO = </span>
+T_CLOSE_TAG = <span class="src-php">
+/T_CLOSE_TAG = </span>
+
+
+[highlightSource]
+;; this is for highlighting things that aren't tokens like "&"
+;; format:
+;; word = open
+;; /word = close
+@ = <span class="src-sym">
+/@ = </span>
+& = <span class="src-sym">
+/& = </span>
+[ = <span class="src-sym">
+/[ = </span>
+] = <span class="src-sym">
+/] = </span>
+! = <span class="src-sym">
+/! = </span>
+";" = <span class="src-sym">
+/; = </span>
+( = <span class="src-sym">
+/( = </span>
+) = <span class="src-sym">
+/) = </span>
+, = <span class="src-sym">
+/, = </span>
+{ = <span class="src-sym">
+/{ = </span>
+} = <span class="src-sym">
+/} = </span>
+""" = <span class="src-str">
+/" = </span>
+
+[highlightDocBlockSourceTokens]
+;; this is for docblock tokens, using by phpDocumentor_HighlightParser
+;; tagphptype is for "string" in @param string description, for example
+docblock = <span class="src-doc">
+/docblock = </span>
+tagphptype = <span class="src-doc-type">
+/tagphptype = </span>
+tagvarname = <span class="src-doc-var">
+/tagvarname = </span>
+coretag = <span class="src-doc-coretag">
+/coretag = </span>
+tag = <span class="src-doc-tag">
+/tag = </span>
+inlinetag = <span class="src-doc-inlinetag">
+/inlinetag = </span>
+internal = <span class="src-doc-internal">
+/internal = </span>
+closetemplate = <span class="src-doc-close-template">
+/closetemplate = </span>
+docblocktemplate = <span class="src-doc-template">
+/docblocktemplate = </span>
+
+[highlightTutorialSourceTokens]
+;; this is for XML DocBook-based tutorials, highlighted by phpDocumentor_TutorialHighlightParser
+;; <tag>
+opentag = <span class="tute-tag">
+/opentag = </span>
+;; </tag>
+closetag = <span class="tute-tag">
+/closetag = </span>
+;; <tag attribute="value">
+attribute = <span class="tute-attribute-name">
+/attribute = </span>
+;; <tag attribute="value">
+attributevalue = <span class="tute-attribute-value">
+/attributevalue = </span>
+;; &entity;
+entity = <span class="tute-entity">
+/entity = </span>
+;; <!-- comment -->
+comment = <span class="tute-comment">
+/comment = </span>
+;; {@inline tag}
+itag = <span class="tute-inline-tag">
+/itag = </span>
+
+;; used for translation of html in DocBlocks
+[desctranslate]
+ul = <ul>
+/ul = </ul>
+ol = <ol>
+/ol = </ol>
+li = <li>
+/li = </li>
+code =
+/code =
+var = <var>
+/var = </var>
+samp = <samp>
+/samp = </samp>
+kbd = <kbd>
+/kbd = </kbd>
+pre = <pre>
+/pre = </pre>
+p = <p>
+/p = </p>
+b = <strong>
+/b = </strong>
+i = <em>
+/i = </em>
+br = <br />
+
+[ppage]
+;; this is the DocBook package page translation section. All DocBook tags
+;; that have a corresponding html tag must be listed here. Entities should
+;; also be listed here
+;;
+;; examples:
+;; 1)
+;; tagname = newtagname
+;;
+;; This is the simplest case, where all attributes will be added into the
+;; starting tag and the ending tag will be html/xml style </tranlatedtagname>
+;; <tagname></tagname> becomes <newtagname></newtagname> and
+;; <tagname attr="value"></tagname> becomes
+;; <newtagname attr="value"></newtagname>
+;;
+;; 2)
+;; tagname = newtagname
+;; tagname->attr = newattrname
+;;
+;; in this case, everything will be like the first case, except tags like:
+;; <tagname attr="value"></tagname> will become
+;; <newtagname newattrname="value"></newtagname>
+;;
+;; 3)
+;; tagname = newtagname
+;; tagname->attr = newattrname
+;; tagname->attr+value = newvalue
+;;
+;; in this case, the value is also translated to another. This can be useful
+;; for instances such as focus="middle" changing to align="center" or something
+;; of that nature.
+;; <tagname attr="value"></tagname> will become
+;; <newtagname newattrname="newvalue"></newtagname>
+;;
+;; 4)
+;; tagname = newtagname
+;; tagname->attr1 = newattrname
+;; tagname->attr2 = newattrname
+;; tagname->attr1+value|attr2+value = newvalue
+;;
+;; in this case, two attributes combine to make one new attribute, and the combined
+;; value is translated into a new value
+;; <tagname attr1="value1" attr2="value2"></tagname> will become
+;; <newtagname newattrname="newvalue"></newtagname>
+;;
+;; 5)
+;; tagname = newtagname
+;; tagname!attr = dummy
+;;
+;; here, the attribute will be ignored. dummy is not used and may be any value
+;; <tagname attr="value"></tagname> will become
+;; <newtagname></newtagname>
+;;
+;; 6)
+;; tagname = newtagname
+;; tagname! = dummy
+;;
+;; here, all attributes will be ignored. dummy is not used and may be any value
+;; <tagname attr1="value" attr2="foo"></tagname> will become
+;; <newtagname></newtagname>
+;;
+;; 7)
+;; tagname = newtagname
+;; tagname/ = 1
+;;
+;; here, the tag will be translated as a single tag with no closing tag, and all
+;; attributes
+;; <tagname attr="val">{text text}</tagname> will become
+;; <newtagname attr="val" />
+;;
+;; 8)
+;; tagname = <starttaginfo />
+;; /tagname = closetagtext
+;;
+;; in this case, the text <starttaginfo> will be inserted exactly as entered for
+;; <tagname> and closetagtext for </tagname>
+;; <tagname attr="val"></tagname> will become
+;; <starttaginfo />closetagtext
+;;
+;; 9)
+;; $attr$my_attribute = newattrname
+;;
+;; tagname = newtagname
+;;
+;; in this case, all occurences of my_attribute in any tag will be changed to
+;; newattrname. This is useful for changing things like role="php" to
+;; class="php," for example. Note that the text "$attr$" MUST be on the line
+;; start for phpDocumentor to recognize it.
+;;
+;; 10)
+;; &entity; = translation text
+;; &quot; = &quot;
+;; &quot; = """
+;; &lt; = <
+;;
+;; Use this to control translation of entities to their appropriate values
+
+&nbsp; = &nbsp;
+&quot; = &quot;
+&rdquo; = &rdquo;
+&ldquo; = &ldquo;
+&amp; = &amp;
+&lt; = &lt;
+&gt; = &gt;
+&copy; = &copy;
+
+$attr$role = class
+
+abbrev = abbr
+
+blockquote = blockquote
+
+arg = span
+arg->choice = class
+
+author = <span class="author">
+/author = </span>
+author! = 0
+
+authorblurb = <div class="author-blurb">
+/authorblurb = </div>
+
+authorgroup = <div class="authors"><h2 class="title">Authors</h2>
+/authorgroup = </div>
+authorgroup! = 0
+
+caution = <span class="warning">
+/caution = </span>
+caution! = 0
+
+cmdsynopsis = <div class="cmd-synopsis">
+/cmdsynopsis = </div>
+
+command = <span class="cmd-title">
+/command = </span>
+
+copyright = <div class="notes">
+/copyright = </div>
+
+emphasis = em
+
+example = <div class="src-code">
+/example = </div>
+example! = 0
+
+function =
+/function = ()
+
+formalpara = p
+
+graphic = img
+graphic->fileref = src
+graphic/ =
+
+important = strong
+
+informalequation = blockquote
+
+informalexample = div
+
+inlineequation = em
+
+itemizedlist = ul
+
+listitem = li
+
+literal = code
+
+literallayout = span
+
+option = " "
+/option =
+
+orderedlist = ol
+
+para = p
+
+programlisting = <div class="src-code">
+/programlisting = </div>
+programlisting! = 0
+
+refentry = div
+
+refnamediv = <div class="ref-title-box">
+/refnamediv = </div>
+refnamediv! = 0
+
+refname = <h1 class="ref-title">
+/refname = </h1>
+
+refpurpose = <h2 class="ref-purpose">
+/refpurpose = </h2>
+
+refsynopsisdiv = <div class="ref-synopsis">
+/refsynopsisdiv = </div>
+refsynopsisdiv! = 0
+
+refsect1 = span
+
+refsect2 =
+/refsect2 = <hr />
+
+refsect3 =
+/refsect3 = <br />
+
+releaseinfo = <div class="release-info">(
+/releaseinfo = )</div>
+
+simpara =
+/simpara = <br />
+simpara! = 0
+
+subscript = sub
+
+superscript = super
+
+table = table
+
+table->colsep = rules
+table->rowsep = rules
+table->colsep+1|rowsep+1 = all
+table->colsep+1|rowsep+0 = cols
+table->colsep+0|rowsep+1 = rows
+
+table->frame = frame
+table->frame+all = border
+table->frame+none = void
+table->frame+sides = vsides
+table->frame+top = above
+table->frame+topbot = hsides
+
+thead = thead
+
+tfoot = tfoot
+
+tbody = tbody
+
+colspec = col
+
+tgroup = colgroup
+tgroup/ = 1
+tgroup->cols = span
+
+row = tr
+
+entry = td
+entry->morerows = colspan
+entry->morerows+1 = 2
+entry->morerows+2 = 3
+entry->morerows+3 = 4
+entry->morerows+4 = 5
+entry->morerows+5 = 6
+entry->morerows+6 = 7
+entry->morerows+7 = 8
+entry->morerows+8 = 9
+entry->morerows+9 = 10
+entry->morerows+10 = 11
+;; add more if you need more colspans
+
+warning = <span class="warning">
+/warning = </span>
+warning! = 0
+
+;; now begins the attributes that should be tags in cdata
+[$attr$id]
+open = a
+;close = /a
+cdata! = true
+quotevalues = true
+separator = "="
+;separateall = true
+$id = name
+
+;; now begins the sections that deal with <title>
+[refsynopsisdiv_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h1 class="title" align="center">
+close = </h1>
+
+[refsect1_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h2 class="title">
+close = </h2>
+
+[refsect2_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h3 class="title">
+close = </h3>
+
+[refsect3_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h4 class="title">
+close = </h4>
+
+[para_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <div class="title">
+close = </div>
+
+[formalpara_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <div class="title">
+close = </div>
+
+[example_title]
+;tag_attr = true
+;attr_name = title
+;cdata_start = true
+cdata_end = true
+open = </td></tr><tr><td><strong>
+close = </strong>
+
+[table_title]
+;tag_attr = true
+;attr_name = true
+cdata_start = true
+open = <caption>
+close = </caption>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/basicindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/basicindex.tpl
new file mode 100755
index 00000000..b3f0c4a4
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/basicindex.tpl
@@ -0,0 +1,17 @@
+{section name=letter loop=$letters}
+ <a href="{$indexname}.html#{$letters[letter].letter}">{$letters[letter].letter}</a>
+{/section}
+
+{section name=index loop=$index}
+ <a name="{$index[index].letter}"></a>
+ <a href="{$indexname}.html#top">top</a><br>
+ <div>
+ <h2>{$index[index].letter}</h2>
+ <dl class="lettercontents">
+ {section name=contents loop=$index[index].index}
+ <dt>{$index[index].index[contents].name}</dt>
+ <dd>{$index[index].index[contents].listing}</dd>
+ {/section}
+ </dl>
+ </div>
+{/section}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/blank.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/blank.tpl
new file mode 100755
index 00000000..aae59975
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/blank.tpl
@@ -0,0 +1,5 @@
+<div align="center"><h1>{$maintitle}</h1></div>
+<b>Welcome to {$package}!</b><br />
+<br />
+This documentation was generated by <a href="{$phpdocwebsite}">phpDocumentor v{$phpdocversion}</a><br />
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/class.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/class.tpl
new file mode 100755
index 00000000..399116ad
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/class.tpl
@@ -0,0 +1,173 @@
+{include file="header.tpl" eltype="class" hasel=true contents=$classcontents}
+
+{if $conflicts.conflict_type}<p class="warning">Conflicts with classes:<br />
+ {section name=me loop=$conflicts.conflicts}
+ {$conflicts.conflicts[me]}<br />
+ {/section}
+<p>
+ {/if}
+
+<div class="leftcol">
+ <h3><a href="#class_details">{if $is_interface}Interface{else}Class{/if} Overview</a> <span class="smalllinenumber">[line {if $class_slink}{$class_slink}{else}{$line_number}{/if}]</span></h3>
+ <div id="classTree"><pre>{section name=tree loop=$class_tree.classes}{$class_tree.classes[tree]}{$class_tree.distance[tree]}{/section}</pre>
+</div>
+ <div class="small">
+ <p>{$sdesc|default:''}</p>
+ {if $tutorial}
+ <h4 class="classtutorial">{if $is_interface}Interface{else}Class{/if} Tutorial:</h4>
+ <ul>
+ <li>{$tutorial}</li>
+ </ul>
+ {/if}
+ <h4>Author(s):</h4>
+ <ul>
+ {section name=tag loop=$tags}
+ {if $tags[tag].keyword eq "author"}
+ <li>{$tags[tag].data}</li>
+ {/if}
+ {/section}
+ </ul>
+ <h4>Version:</h4>
+ <ul>
+ {section name=tag loop=$tags}
+ {if $tags[tag].keyword eq "version"}
+ <li>{$tags[tag].data}</li>
+ {/if}
+ {/section}
+ </ul>
+
+ <h4>Copyright:</h4>
+ <ul>
+ {section name=tag loop=$tags}
+ {if $tags[tag].keyword eq "copyright"}
+ <li>{$tags[tag].data}</li>
+ {/if}
+ {/section}
+ </li>
+ </div>
+</div>
+
+<div class="middlecol">
+ <h3><a href="#class_vars">Variables</a></h3>
+ <ul class="small">
+ {section name=contents loop=$contents.var}
+ <li>{$contents.var[contents]}</li>
+ {/section}
+ </ul>
+ <h3><a href="#class_consts">Constants</a></h3>
+ <ul class="small">
+ {section name=contents loop=$contents.const}
+ <li>{$contents.const[contents]}</li>
+ {/section}
+ </ul>
+</div>
+<div class="rightcol">
+ <h3><a href="#class_methods">Methods</a></h3>
+ <ul class="small">
+ {section name=contents loop=$contents.method}
+ <li>{$contents.method[contents]}</li>
+ {/section}
+ </ul>
+</div>
+
+<div id="content">
+<hr>
+ <div class="contents">
+{if $children}
+ <h2>Child classes:</h2>
+ {section name=kids loop=$children}
+ <dl>
+ <dt>{$children[kids].link}</dt>
+ <dd>{$children[kids].sdesc}</dd>
+ </dl>
+ {/section}</p>
+{/if}
+ </div>
+
+ <div class="leftCol">
+ {if $implements}
+ <h2>Implements interfaces</h2>
+ <ul>
+ {foreach item="int" from=$implements}<li>{$int}</li>{/foreach}
+ </ul>
+ {/if}
+ <h2>Inherited Variables</h2>
+ {section name=ivars loop=$ivars}
+ <div class="indent">
+ <h3>Class: {$ivars[ivars].parent_class}</h3>
+ <div class="small">
+ <dl>
+ {section name=ivars2 loop=$ivars[ivars].ivars}
+ <dt>
+ {$ivars[ivars].ivars[ivars2].link}
+ </dt>
+ <dd>
+ {$ivars[ivars].ivars[ivars2].ivars_sdesc}
+ </dd>
+ {/section}
+ </dl>
+ </div>
+ </div>
+ {/section}
+ <h2>Inherited Constants</h2>
+ {section name=iconsts loop=$iconsts}
+ <div class="indent">
+ <h3>Class: {$iconsts[iconsts].parent_class}</h3>
+ <div class="small">
+ <dl>
+ {section name=iconsts2 loop=$iconsts[iconsts].iconsts}
+ <dt>
+ {$iconsts[iconsts].iconsts[iconsts2].link}
+ </dt>
+ <dd>
+ {$iconsts[iconsts].iconsts[iconsts2].iconsts_sdesc}
+ </dd>
+ {/section}
+ </dl>
+ </div>
+ </div>
+ {/section}
+ </div>
+
+ <div class="rightCol">
+ <h2>Inherited Methods</h2>
+ {section name=imethods loop=$imethods}
+ <div class="indent">
+ <h3>Class: {$imethods[imethods].parent_class}</h3>
+ <dl class="small">
+ {section name=im2 loop=$imethods[imethods].imethods}
+ <dt>
+ {$imethods[imethods].imethods[im2].link}
+ </dt>
+ <dd>
+ {$imethods[imethods].imethods[im2].sdesc}
+ </dd>
+ {/section}
+ </dl>
+ </div>
+ {/section}
+ </div>
+ <br clear="all">
+ <hr>
+
+ <a name="class_details"></a>
+ <h2>Class Details</h2>
+ {include file="docblock.tpl" type="class" sdesc=$sdesc desc=$desc}
+ <p class="small" style="color: #334B66;">[ <a href="#top">Top</a> ]</p>
+
+ <hr>
+ <a name="class_vars"></a>
+ <h2>Class Variables</h2>
+ {include file="var.tpl"}
+
+ <hr>
+ <a name="class_methods"></a>
+ <h2>Class Methods</h2>
+ {include file="method.tpl"}
+
+ <hr>
+ <a name="class_consts"></a>
+ <h2>Class Constants</h2>
+ {include file="const.tpl"}
+</div>
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/classleft.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/classleft.tpl
new file mode 100755
index 00000000..7d7de89a
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/classleft.tpl
@@ -0,0 +1,8 @@
+{foreach key=subpackage item=files from=$classleftindex}
+ {if $subpackage != ""}<b>{$subpackage}</b><br>{/if}
+ {section name=files loop=$files}
+ {if $files[files].link != ''}<a href="{$files[files].link}">{/if}
+ {$files[files].title}
+ {if $files[files].link != ''}</a>{/if}<br>
+ {/section}
+{/foreach}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/classtrees.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/classtrees.tpl
new file mode 100755
index 00000000..0c0e974a
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/classtrees.tpl
@@ -0,0 +1,17 @@
+{include file="header.tpl" noleftindex=true}
+<h1>{$title}</h1>
+{if $interfaces}
+{section name=classtrees loop=$interfaces}
+<hr />
+<div class="classtree">Root interface {$interfaces[classtrees].class}</div><br />
+{$interfaces[classtrees].class_tree}
+{/section}
+{/if}
+{if $classtrees}
+{section name=classtrees loop=$classtrees}
+<hr />
+<div class="classtree">Root class {$classtrees[classtrees].class}</div><br />
+{$classtrees[classtrees].class_tree}
+{/section}
+{/if}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/const.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/const.tpl
new file mode 100644
index 00000000..aeab7293
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/const.tpl
@@ -0,0 +1,14 @@
+{section name=consts loop=$consts}
+{if $show == 'summary'}
+ var {$consts[consts].const_name}, {$consts[consts].sdesc}<br>
+{else}
+ <a name="{$consts[consts].const_dest}"></a>
+ <p></p>
+ <h4>{$consts[consts].const_name} = <span class="value">{$consts[consts].const_value|replace:"\n":"<br>\n"|replace:" ":"&nbsp;"|replace:"\t":"&nbsp;&nbsp;&nbsp;"}</span></h4>
+ <div class="indent">
+ <p class="linenumber">[line {if $consts[consts].slink}{$consts[consts].slink}{else}{$consts[consts].line_number}{/if}]</p>
+ {include file="docblock.tpl" sdesc=$consts[consts].sdesc desc=$consts[consts].desc tags=$consts[consts].tags}
+ </div>
+ <p class="top">[ <a href="#top">Top</a> ]</p>
+{/if}
+{/section}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/define.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/define.tpl
new file mode 100755
index 00000000..0aa7ef76
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/define.tpl
@@ -0,0 +1,23 @@
+<div id="define{if $show == 'summary'}_summary{/if}">
+{section name=def loop=$defines}
+{if $show == 'summary'}
+define constant <a href="{$defines[def].id}">{$defines[def].define_name}</a> = {$defines[def].define_value}, {$defines[def].sdesc}<br>
+{else}
+ <a name="{$defines[def].define_link}"></a>
+ <h3>{$defines[def].define_name}</h3>
+ <div class="indent">
+ <p class="linenumber">[line {if $defines[def].slink}{$defines[def].slink}{else}{$defines[def].line_number}{/if}]</p>
+ <p><code>{$defines[def].define_name} = {$defines[def].define_value}</code></p>
+ {include file="docblock.tpl" sdesc=$defines[def].sdesc desc=$defines[def].desc tags=$defines[def].tags}
+ {if $defines[def].define_conflicts.conflict_type}
+ <p><b>Conflicts with defines:</b>
+ {section name=me loop=$defines[def].define_conflicts.conflicts}
+ {$defines[def].define_conflicts.conflicts[me]}<br />
+ {/section}
+ </p>
+ {/if}
+ </div>
+ <p class="top">[ <a href="#top">Top</a> ]</p>
+{/if}
+{/section}
+</div>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/docblock.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/docblock.tpl
new file mode 100755
index 00000000..9ea60cf2
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/docblock.tpl
@@ -0,0 +1,13 @@
+{if $sdesc != ''}
+<p align="center"><strong>{$sdesc|default:''}
+</strong></p>
+{/if}
+{if $desc != ''}{$desc|default:''}{/if}
+{if count($tags)}
+<h4>Tags:</h4>
+<ul>
+{section name=tag loop=$tags}
+ <li><b>{$tags[tag].keyword}</b> - {$tags[tag].data}</li>
+{/section}
+</ul>
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/elementindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/elementindex.tpl
new file mode 100755
index 00000000..0ff4a79e
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/elementindex.tpl
@@ -0,0 +1,5 @@
+{include file="header.tpl" noleftindex=true}
+<a name="top"></a>
+<h1>Index of All Elements</h1>
+{include file="basicindex.tpl" indexname="elementindex"}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/errors.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/errors.tpl
new file mode 100755
index 00000000..0f526584
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/errors.tpl
@@ -0,0 +1,21 @@
+{include file="header.tpl" noleftindex=true}
+{section name=files loop=$files}
+<a href="#{$files[files].file}">{$files[files].file}</a><br>
+{/section}
+{foreach key=file item=issues from=$all}
+<a name="{$file}"></a>
+<h1>{$file}</h1>
+{if count($issues.warnings)}
+<h2>Warnings:</h2><br>
+{section name=warnings loop=$issues.warnings}
+<b>{$issues.warnings[warnings].name}</b> - {$issues.warnings[warnings].listing}<br>
+{/section}
+{/if}
+{if count($issues.errors)}
+<h2>Errors:</h2><br>
+{section name=errors loop=$issues.errors}
+<b>{$issues.errors[errors].name}</b> - {$issues.errors[errors].listing}<br>
+{/section}
+{/if}
+{/foreach}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/examplesource.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/examplesource.tpl
new file mode 100755
index 00000000..1bf1f882
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/examplesource.tpl
@@ -0,0 +1,6 @@
+{include file="header.tpl" title=$title}
+<h1 align="center">{$title}</h1>
+<div class="php-src">
+{$source}
+</div>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/fileleft.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/fileleft.tpl
new file mode 100755
index 00000000..9e141dc5
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/fileleft.tpl
@@ -0,0 +1,8 @@
+{foreach key=subpackage item=files from=$fileleftindex}
+ {if $subpackage != ""}subpackage <b>{$subpackage}</b><br>{/if}
+ {section name=files loop=$files}
+ {if $files[files].link != ''}<a href="{$files[files].link}">{/if}
+ {$files[files].title}
+ {if $files[files].link != ''}</a>{/if}<br>
+ {/section}
+{/foreach}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/filesource.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/filesource.tpl
new file mode 100755
index 00000000..15f7fbfe
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/filesource.tpl
@@ -0,0 +1,8 @@
+{capture name="tutle"}File Source for {$name}{/capture}
+{include file="header.tpl" title=$smarty.capture.tutle}
+<h1 align="center">Source for file {$name}</h1>
+<p>Documentation is available at {$docs}</p>
+<div class="php-src">
+{$source}
+</div>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/footer.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/footer.tpl
new file mode 100755
index 00000000..0bdda65c
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/footer.tpl
@@ -0,0 +1,7 @@
+ <div id="credit">
+ <hr>
+ Documentation generated on {$date} by <a href="{$phpdocwebsite}">phpDocumentor {$phpdocversion}</a>
+ </div>
+</div>
+</body>
+</html>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/function.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/function.tpl
new file mode 100755
index 00000000..14fd78eb
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/function.tpl
@@ -0,0 +1,39 @@
+<div id="function{if $show == 'summary'}_summary{/if}">
+{section name=func loop=$functions}
+{if $show == 'summary'}
+function {$functions[func].id}, {$functions[func].sdesc}<br>
+{else}
+ <a name="{$functions[func].function_dest}"></a>
+ <h3>{$functions[func].function_name}</h3>
+ <div class="indent">
+ <code>{$functions[func].function_return} {if $functions[func].ifunction_call.returnsref}&amp;{/if}{$functions[func].function_name}(
+{if count($functions[func].ifunction_call.params)}
+{section name=params loop=$functions[func].ifunction_call.params}
+{if $smarty.section.params.iteration != 1}, {/if}{if $functions[func].ifunction_call.params[params].hasdefault}[{/if}{$functions[func].ifunction_call.params[params].type} {$functions[func].ifunction_call.params[params].name}{if $functions[func].ifunction_call.params[params].hasdefault} = {$functions[func].ifunction_call.params[params].default|escape:"html"}]{/if}
+{/section}
+{/if})</code>
+ <p class="linenumber">[line {if $functions[func].slink}{$functions[func].slink}{else}{$functions[func].line_number}{/if}]</p>
+ {include file="docblock.tpl" sdesc=$functions[func].sdesc desc=$functions[func].desc tags=$functions[func].tags}
+ {if $functions[func].function_conflicts.conflict_type}
+ <p><b>Conflicts with functions:</b>
+ {section name=me loop=$functions[func].function_conflicts.conflicts}
+ {$functions[func].function_conflicts.conflicts[me]}<br />
+ {/section}
+ </p>
+ {/if}
+
+ <h4>Parameters</h4>
+ <ul>
+ {section name=params loop=$functions[func].params}
+ <li>
+ <span class="type">{$functions[func].params[params].datatype}</span>
+ <b>{$functions[func].params[params].var}</b>
+ -
+ {$functions[func].params[params].data}</li>
+ {/section}
+ </ul>
+ </div>
+ <p class="top">[ <a href="#top">Top</a> ]</p>
+{/if}
+{/section}
+</div>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/global.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/global.tpl
new file mode 100755
index 00000000..9fa52bce
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/global.tpl
@@ -0,0 +1,24 @@
+<div id="global{if $show == 'summary'}_summary{/if}">
+{section name=glob loop=$globals}
+{if $show == 'summary'}
+global variable <a href="{$globals[glob].id}">{$globals[glob].global_name}</a> = {$globals[glob].global_value}, {$globals[glob].sdesc}<br>
+{else}
+ <a name="{$globals[glob].global_link}"></a>
+ <h3><i>{$globals[glob].global_type}</i> {$globals[glob].global_name}</h3>
+ <div class="indent">
+ <p class="linenumber">[line {if $globals[glob].slink}{$globals[glob].slink}{else}{$globals[glob].line_number}{/if}]</p>
+ {include file="docblock.tpl" sdesc=$globals[glob].sdesc desc=$globals[glob].desc tags=$globals[glob].tags}
+
+ <p><b>Default Value:</b>{$globals[glob].global_value|replace:"\n":"<br>\n"|replace:" ":"&nbsp;"|replace:"\t":"&nbsp;&nbsp;&nbsp;"}</p>
+ {if $globals[glob].global_conflicts.conflict_type}
+ <p><b>Conflicts with globals:</b>
+ {section name=me loop=$globals[glob].global_conflicts.conflicts}
+ {$globals[glob].global_conflicts.conflicts[me]}<br />
+ {/section}
+ </p>
+ {/if}
+ </div>
+ <p class="top">[ <a href="#top">Top</a> ]</p>
+{/if}
+{/section}
+</div>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/header.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/header.tpl
new file mode 100755
index 00000000..f23687eb
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/header.tpl
@@ -0,0 +1,101 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+ <title>{$title}</title>
+ <link rel="stylesheet" type="text/css" id="layout" href="{$subdir}media/layout.css" media="screen">
+ <link rel="stylesheet" type="text/css" href="{$subdir}media/style.css" media="all">
+ <link rel="stylesheet" type="text/css" href="{$subdir}media/print.css" media="print">
+</head>
+
+<body>
+<div id="header">
+ <div id="navLinks">
+ {assign var="packagehaselements" value=false}
+ {foreach from=$packageindex item=thispackage}
+ {if in_array($package, $thispackage)}
+ {assign var="packagehaselements" value=true}
+ {/if}
+ {/foreach}
+ {if $packagehaselements}
+ [ <a href="{$subdir}classtrees_{$package}.html">Class Tree: {$package}</a> ]
+ [ <a href="{$subdir}elementindex_{$package}.html">Index: {$package}</a> ]
+ {/if}
+ [ <a href="{$subdir}elementindex.html">All elements</a> ]
+ </div>
+ <div id="packagePosition">
+ <div id="packageTitle2">{$package}</div>
+ <div id="packageTitle">{$package}</div>
+ <div id="elementPath">{$subpackage} &middot; {$current}</div>
+ </div>
+</div>
+
+<div id="nav" class="small">
+{if count($ric) >= 1}
+ <div id="ric">
+ {section name=ric loop=$ric}
+ <p><a href="{$subdir}{$ric[ric].file}">{$ric[ric].name}</a></p>
+ {/section}
+ </div>
+{/if}
+{if $hastodos}
+ <div id="todolist">
+ <p><a href="{$subdir}{$todolink}">Todo List</a></p>
+ </div>
+{/if}
+ <div id="packages">
+ Packages:
+ {section name=packagelist loop=$packageindex}
+ <p><a href="{$subdir}{$packageindex[packagelist].link}">{$packageindex[packagelist].title}</a></p>
+ {/section}
+ </div>
+{if $tutorials}
+ <div id="tutorials">
+ Tutorials/Manuals:<br />
+ {if $tutorials.pkg}
+ <strong>Package-level:</strong>
+ {section name=ext loop=$tutorials.pkg}
+ {$tutorials.pkg[ext]}
+ {/section}
+ {/if}
+ {if $tutorials.cls}
+ <strong>Class-level:</strong>
+ {section name=ext loop=$tutorials.cls}
+ {$tutorials.cls[ext]}
+ {/section}
+ {/if}
+ {if $tutorials.proc}
+ <strong>Procedural-level:</strong>
+ {section name=ext loop=$tutorials.proc}
+ {$tutorials.proc[ext]}
+ {/section}
+ {/if}
+ </div>
+{/if}
+
+ {if !$noleftindex}{assign var="noleftindex" value=false}{/if}
+ {if !$noleftindex}
+ <div id="index">
+ <div id="files">
+ {if $compiledfileindex}
+ Files:<br>
+ {eval var=$compiledfileindex}{/if}
+ </div>
+ <div id="interfaces">
+ {if $compiledinterfaceindex}Interfaces:<br>
+ {eval var=$compiledinterfaceindex}{/if}
+ </div>
+ <div id="classes">
+ {if $compiledclassindex}Classes:<br>
+ {eval var=$compiledclassindex}{/if}
+ </div>
+ </div>
+ {/if}
+</div>
+
+<div id="body">
+ {if !$hasel}{assign var="hasel" value=false}{/if}
+ {if $eltype == 'class' && $is_interface}{assign var="eltype" value="interface"}{/if}
+ {if $hasel}
+ <h1>{$eltype|capitalize}: {$class_name}</h1>
+ <p style="margin: 0px;">Source Location: {$source_location}</p>
+ {/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/include.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/include.tpl
new file mode 100755
index 00000000..f2f5625d
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/include.tpl
@@ -0,0 +1,8 @@
+{if count($includes) > 0}
+Includes:<br>
+{section name=includes loop=$includes}
+{$includes[includes].include_name}({$includes[includes].include_value}) <span class="linenumber">[line {if $includes[includes].slink}{$includes[includes].slink}{else}{$includes[includes].line_number}{/if}]</span>
+<br />
+{include file="docblock.tpl" sdesc=$includes[includes].sdesc desc=$includes[includes].desc tags=$includes[includes].tags}
+{/section}
+{/if} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/index.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/index.tpl
new file mode 100755
index 00000000..a493f70e
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/index.tpl
@@ -0,0 +1,7 @@
+{include file="header.tpl"}
+{if $contents}
+{$contents}
+{else}
+{include file="blank.tpl"}
+{/if}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/layout.css b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/layout.css
new file mode 100755
index 00000000..1184cf1f
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/layout.css
@@ -0,0 +1,81 @@
+#header {
+ z-index: 100;
+ position: absolute;
+ top: 0px;
+ left: 0px;
+ width: 100%;
+ height: 5%;
+}
+#nav {
+ z-index: 200;
+ position: absolute;
+ top: 5%;
+ left: 0px;
+ width: 15%;
+ height: 1600px;
+ clip: auto;
+ overflow: auto;
+}
+#body {
+ position: absolute;
+ top: 6%;
+ left: 17%;
+ width: 82%;
+}
+#content {
+ clear: both;
+ top: -1px;
+}
+#packagePosition {
+ position: absolute;
+ right: 5px;
+ top: 0px;
+ width: 35%;
+ height: 100%;
+}
+#packageTitle {
+ position: absolute;
+ right: 0px;
+}
+#packageTitle2 {
+ position: absolute;
+ right: -3px;
+ top: -2px;
+}
+#elementPath {
+ position: absolute;
+ right: 0px;
+ bottom: 0px;
+}
+#navLinks {
+ position: absolute;
+ top: 0px;
+ left: 10px;
+ height: 100%;
+
+}
+.leftCol {
+ width: auto;
+ float: left;
+}
+.middleCol {
+ width: auto;
+ float: left;
+}
+.rightCol {
+ width: auto;
+ float: left;
+}
+#credit {
+ margin-top: 20px;
+ margin-bottom: 50px;
+}
+
+/** Fixed layout for nav on mozilla */
+head:first-child+body div#header {
+ position: fixed;
+}
+head:first-child+body div#nav {
+ position: fixed;
+ height: 94%
+}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/media/layout.css b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/media/layout.css
new file mode 100755
index 00000000..1184cf1f
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/media/layout.css
@@ -0,0 +1,81 @@
+#header {
+ z-index: 100;
+ position: absolute;
+ top: 0px;
+ left: 0px;
+ width: 100%;
+ height: 5%;
+}
+#nav {
+ z-index: 200;
+ position: absolute;
+ top: 5%;
+ left: 0px;
+ width: 15%;
+ height: 1600px;
+ clip: auto;
+ overflow: auto;
+}
+#body {
+ position: absolute;
+ top: 6%;
+ left: 17%;
+ width: 82%;
+}
+#content {
+ clear: both;
+ top: -1px;
+}
+#packagePosition {
+ position: absolute;
+ right: 5px;
+ top: 0px;
+ width: 35%;
+ height: 100%;
+}
+#packageTitle {
+ position: absolute;
+ right: 0px;
+}
+#packageTitle2 {
+ position: absolute;
+ right: -3px;
+ top: -2px;
+}
+#elementPath {
+ position: absolute;
+ right: 0px;
+ bottom: 0px;
+}
+#navLinks {
+ position: absolute;
+ top: 0px;
+ left: 10px;
+ height: 100%;
+
+}
+.leftCol {
+ width: auto;
+ float: left;
+}
+.middleCol {
+ width: auto;
+ float: left;
+}
+.rightCol {
+ width: auto;
+ float: left;
+}
+#credit {
+ margin-top: 20px;
+ margin-bottom: 50px;
+}
+
+/** Fixed layout for nav on mozilla */
+head:first-child+body div#header {
+ position: fixed;
+}
+head:first-child+body div#nav {
+ position: fixed;
+ height: 94%
+}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/media/print.css b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/media/print.css
new file mode 100755
index 00000000..3fcc2baa
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/media/print.css
@@ -0,0 +1,25 @@
+BODY {
+ margin: 1em;
+}
+#header {
+}
+#nav {
+ display: none;
+}
+#packagePosition {
+ text-align: right;
+}
+#packageTitle {
+ display: inline;
+ margin: 5px;
+}
+#packageTitle2 {
+ display: none;
+}
+#elementPath {
+ display: inline;
+ margin: 5px;
+}
+#navLinks {
+ display: none;
+}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/media/style.css b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/media/style.css
new file mode 100755
index 00000000..041c489a
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/media/style.css
@@ -0,0 +1,236 @@
+BODY {
+ background: #FFFFFF;
+ font-family: Arial;
+ margin: 0px;
+ padding: 0px;
+}
+A {
+ color: #CC4400;
+ font-weight: bold;
+}
+A:Hover {
+ color: white;
+ background-color: #334B66;
+ font-weight: bold;
+ text-decoration: none;
+}
+
+#packageTitle {
+ font-size: 160%;
+ font-weight: bold;
+ text-align: right;
+ color: #CC6633;
+}
+#packageTitle2 {
+ font-size: 160%;
+ font-weight: bold;
+ text-align: right;
+ color: #334B66;
+ background-color: #6699CC;
+}
+#packageLinks {
+ background-color: #6699CC;
+}
+#header {
+ background-color: #6699CC;
+ border-bottom: solid #334B66 4px;
+}
+#nav {
+ background-color: #6699CC;
+ padding: 4px;
+ border-right: solid #334B66 4px;
+}
+#index {
+ padding: 18px;
+}
+hr {
+ width: 80%;
+ background-color: #6699CC;
+ color: #6699CC;
+ margin-top: 15px;
+ margin-bottom: 15px;
+ clear: both;
+}
+.links {
+ text-align: left;
+ width: 98%;
+ margin: auto;
+}
+UL {
+ margin: 0px;
+ padding: 0px;
+ padding-left: 5px;
+ list-style-type: none;
+}
+li {
+ text-indent: -15px;
+ padding-bottom: 2px;
+ padding-left: 14px;
+}
+dd {
+ margin-bottom: .5em;
+}
+.small {
+ font-size: 80%;
+}
+h3 {
+}
+.middleCol {
+ margin-left: -1px;
+ border-right: dotted gray 1px;
+ border-left: dotted gray 1px;
+ padding: 5px;
+}
+.leftCol {
+ border-right: dotted gray 1px;
+ padding: 5px;
+}
+.rightCol {
+ margin-left: -1px;
+ border-left: dotted gray 1px;
+ padding: 5px;
+}
+#elementPath {
+ font-size: 14px;
+ font-weight: bold;
+ color: #334B66;
+}
+.constructor {
+ /*border: dashed #334B66 1px;*/
+ font-weight: bold;
+}
+#credit {
+ text-align: center;
+ color: #334B66;
+ font-weight: bold;
+}
+div.contents {
+ border: solid #334B66 1px;
+ padding: 3px;
+ margin-bottom: 5px;
+ clear: all;
+}
+H1 {
+ margin: 0px;
+}
+H2 {
+ margin: 0px;
+ margin-bottom: 2px;
+}
+H3 {
+ margin: 0px;
+}
+H4 {
+ margin: 0px;
+}
+#classTree {
+ padding: 0px;
+ margin: 0px;
+}
+div.indent {
+ margin-left: 15px;
+}
+.warning {
+ color: red;
+ background-color: #334B66;
+ font-weight: bold;
+}
+code {
+ font-family: fixed;
+ padding: 3px;
+ color: #334B66;
+ background-color: #dddddd;
+}
+.type {
+ color: #334B66;
+}
+.value {
+ color: #334B66;
+ border: dotted #334B66 1px;
+}
+.top {
+ color: #334B66;
+ border-bottom: dotted #334B66 1px;
+ padding-bottom: 4px;
+}
+.php-src, .php, .listing {
+ font-family: fixed;
+ padding: 3px;
+ color: #334B66;
+ background-color: #dddddd;
+ font-family: 'Courier New', Courier, monospace; font-weight: normal;
+}
+DIV#nav DL {
+ margin: 0px;
+ padding: 0px;
+ list-style-type: none;
+}
+div.classtree {
+ font-size: 130%;
+ font-weight: bold;
+ background-color: #CC6633;
+ border: dotted #334B66 2px;
+}
+span.linenumber,p.linenumber {
+ font-weight: bold,italic;
+}
+span.smalllinenumber {
+ font-weight: bold,italic;
+ font-size: 9pt;
+}
+ul {
+ margin-left: 0px;
+ padding-left: 8px;
+}
+/* Syntax highlighting */
+
+.src-code { background-color: #f5f5f5; border: 1px solid #ccc9a4; padding: 0px; margin : 0px}
+.src-line { font-family: 'Courier New', Courier, monospace; font-weight: normal; }
+/*.src-code pre { }*/
+
+.src-comm { color: green; }
+.src-id { }
+.src-inc { color: #0000FF; }
+.src-key { color: #0000FF; }
+.src-num { color: #CC0000; }
+.src-str { color: #66cccc; }
+.src-sym { font-weight: bold; }
+.src-var { }
+
+.src-php { font-weight: bold; }
+
+.src-doc { color: #009999 }
+.src-doc-close-template { color: #0000FF }
+.src-doc-coretag { color: #0099FF; font-weight: bold }
+.src-doc-inlinetag { color: #0099FF }
+.src-doc-internal { color: #6699cc }
+.src-doc-tag { color: #0080CC }
+.src-doc-template { color: #0000FF }
+.src-doc-type { font-style: italic }
+.src-doc-var { font-style: italic }
+
+.tute-tag { color: #009999 }
+.tute-attribute-name { color: #0000FF }
+.tute-attribute-value { color: #0099FF }
+.tute-entity { font-weight: bold; }
+.tute-comment { font-style: italic }
+.tute-inline-tag { color: #636311; font-weight: bold }
+
+/* tutorial */
+
+.authors { }
+.author { font-style: italic; font-weight: bold }
+.author-blurb { margin: .5em 0em .5em 2em; font-size: 85%; font-weight: normal; font-style: normal }
+.example { border: 1px dashed #999999; background-color: #EEEEEE; padding: .5em; }
+.listing { border: 1px dashed #999999; background-color: #EEEEEE; padding: .5em; white-space: nowrap; }
+.release-info { font-size: 85%; font-style: italic; margin: 1em 0em }
+.ref-title-box { }
+.ref-title { }
+.ref-purpose { font-style: italic; color: #666666 }
+.ref-synopsis { }
+.title { font-weight: bold; margin: 1em 0em 0em 0em; padding: .25em;
+ border: 2px solid #CC6633; background-color: #6699CC }
+.cmd-synopsis { margin: 1em 0em }
+.cmd-title { font-weight: bold }
+.toc { margin-left: 2em; padding-left: 0em }
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/method.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/method.tpl
new file mode 100755
index 00000000..f9bcdd38
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/method.tpl
@@ -0,0 +1,123 @@
+{section name=methods loop=$methods}
+{if $methods[methods].static}
+{if $show == 'summary'}
+ <p>static method {$methods[methods].function_call}, {$methods[methods].sdesc}</p>
+{else}
+ <a name="{$methods[methods].method_dest}"></a>
+ <p></p>
+ <h3>static {$methods[methods].function_name}</h3>
+ <div class="indent">
+ <p>
+ <code>static {$methods[methods].function_return} {if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}(
+{if count($methods[methods].ifunction_call.params)}
+{section name=params loop=$methods[methods].ifunction_call.params}
+{if $smarty.section.params.iteration != 1}, {/if}
+{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}{$methods[methods].ifunction_call.params[params].type}
+{$methods[methods].ifunction_call.params[params].name}{if $methods[methods].ifunction_call.params[params].hasdefault} = {$methods[methods].ifunction_call.params[params].default}]{/if}
+{/section}
+{/if})</code>
+ </p>
+
+ <p class="linenumber">[line {if $methods[methods].slink}{$methods[methods].slink}{else}{$methods[methods].line_number}{/if}]</p>
+ {include file="docblock.tpl" sdesc=$methods[methods].sdesc desc=$methods[methods].desc tags=$methods[methods].tags}
+
+{if $methods[methods].descmethod}
+ <p>Overridden in child classes as:<br />
+ {section name=dm loop=$methods[methods].descmethod}
+ <dl>
+ <dt>{$methods[methods].descmethod[dm].link}</dt>
+ <dd>{$methods[methods].descmethod[dm].sdesc}</dd>
+ </dl>
+ {/section}</p>
+{/if}
+{if $methods[methods].method_overrides}<p>Overrides {$methods[methods].method_overrides.link} ({$methods[methods].method_overrides.sdesc|default:"parent method not documented"})</p>{/if}
+ {if $methods[methods].method_implements}
+ <hr class="separator" />
+ <div class="notes">Implementation of:</div>
+ {section name=imp loop=$methods[methods].method_implements}
+ <dl>
+ <dt>{$methods[methods].method_implements[imp].link}</dt>
+ {if $methods[methods].method_implements[imp].sdesc}
+ <dd>{$methods[methods].method_implements[imp].sdesc}</dd>
+ {/if}
+ </dl>
+ {/section}
+ {/if}
+
+ <h4>Parameters:</h4>
+ <ul>
+ {section name=params loop=$methods[methods].params}
+ <li>
+ <span class="type">{$methods[methods].params[params].datatype}</span>
+ <b>{$methods[methods].params[params].var}</b>
+ -
+ {$methods[methods].params[params].data}</li>
+ {/section}
+ </ul>
+ </div>
+ <p class="top">[ <a href="#top">Top</a> ]</p>
+{/if}
+{/if}
+{/section}
+
+{section name=methods loop=$methods}
+{if !$methods[methods].static}
+{if $show == 'summary'}
+ <p>{if $methods[methods].ifunction_call.constructor}constructor {elseif $methods[methods].ifunction_call.destructor}destructor {else}method {/if}{$methods[methods].function_call}, {$methods[methods].sdesc}</p>
+{else}
+ <a name="{$methods[methods].method_dest}"></a>
+ <p></p>
+ <h3>{$methods[methods].function_name}</h3>
+ <div class="indent">
+ <p>
+ <code>{$methods[methods].function_return} {if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}(
+{if count($methods[methods].ifunction_call.params)}
+{section name=params loop=$methods[methods].ifunction_call.params}
+{if $smarty.section.params.iteration != 1}, {/if}
+{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}{$methods[methods].ifunction_call.params[params].type}
+{$methods[methods].ifunction_call.params[params].name}{if $methods[methods].ifunction_call.params[params].hasdefault} = {$methods[methods].ifunction_call.params[params].default}]{/if}
+{/section}
+{/if})</code>
+ </p>
+
+ <p class="linenumber">[line {if $methods[methods].slink}{$methods[methods].slink}{else}{$methods[methods].line_number}{/if}]</p>
+ {include file="docblock.tpl" sdesc=$methods[methods].sdesc desc=$methods[methods].desc tags=$methods[methods].tags}
+
+{if $methods[methods].descmethod}
+ <p>Overridden in child classes as:<br />
+ {section name=dm loop=$methods[methods].descmethod}
+ <dl>
+ <dt>{$methods[methods].descmethod[dm].link}</dt>
+ <dd>{$methods[methods].descmethod[dm].sdesc}</dd>
+ </dl>
+ {/section}</p>
+{/if}
+{if $methods[methods].method_overrides}<p>Overrides {$methods[methods].method_overrides.link} ({$methods[methods].method_overrides.sdesc|default:"parent method not documented"})</p>{/if}
+ {if $methods[methods].method_implements}
+ <hr class="separator" />
+ <div class="notes">Implementation of:</div>
+ {section name=imp loop=$methods[methods].method_implements}
+ <dl>
+ <dt>{$methods[methods].method_implements[imp].link}</dt>
+ {if $methods[methods].method_implements[imp].sdesc}
+ <dd>{$methods[methods].method_implements[imp].sdesc}</dd>
+ {/if}
+ </dl>
+ {/section}
+ {/if}
+
+ <h4>Parameters:</h4>
+ <ul>
+ {section name=params loop=$methods[methods].params}
+ <li>
+ <span class="type">{$methods[methods].params[params].datatype}</span>
+ <b>{$methods[methods].params[params].var}</b>
+ -
+ {$methods[methods].params[params].data}</li>
+ {/section}
+ </ul>
+ </div>
+ <p class="top">[ <a href="#top">Top</a> ]</p>
+{/if}
+{/if}
+{/section}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/packages.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/packages.tpl
new file mode 100755
index 00000000..0967e6e7
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/packages.tpl
@@ -0,0 +1,3 @@
+{section name=packages loop=$packages}
+<a href="{$packages[packages].link}">{$packages[packages].title}</a>
+{/section} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/page.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/page.tpl
new file mode 100755
index 00000000..c3cb9fd1
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/page.tpl
@@ -0,0 +1,31 @@
+{include file="header.tpl" eltype="Procedural file" class_name=$name hasel=true contents=$pagecontents}
+
+<br>
+<br>
+
+<div class="contents">
+{if $tutorial}
+<span class="maintutorial">Main Tutorial: {$tutorial}</span>
+{/if}
+<h2>Classes:</h2>
+<dl>
+{section name=classes loop=$classes}
+<dt>{$classes[classes].link}</dt>
+ <dd>{$classes[classes].sdesc}</dd>
+{/section}
+</dl>
+</div>
+
+<h2>Page Details:</h2>
+{include file="docblock.tpl" type="page"}
+<hr>
+{include file="include.tpl"}
+<hr>
+{include file="global.tpl"}
+<hr>
+{include file="define.tpl"}
+<hr>
+{include file="function.tpl"}
+
+{include file="footer.tpl"}
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/pkgelementindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/pkgelementindex.tpl
new file mode 100755
index 00000000..0dabfdb7
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/pkgelementindex.tpl
@@ -0,0 +1,5 @@
+{include file="header.tpl"}
+<a name="top"></a>
+<h1>Element index for package {$package}</h1>
+{include file="basicindex.tpl" indexname=elementindex_$package}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/ric.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/ric.tpl
new file mode 100755
index 00000000..eff734c1
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/ric.tpl
@@ -0,0 +1,6 @@
+{include file="header.tpl"}
+<h1 align="center">{$name}</h1>
+<pre>
+{$contents|htmlentities}
+</pre>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/style.css b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/style.css
new file mode 100755
index 00000000..993997ae
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/style.css
@@ -0,0 +1,172 @@
+BODY {
+ font-family: Arial;
+ margin: 0px;
+ padding: 0px;
+}
+A {
+ color: #CC4400;
+ font-weight: bold;
+}
+A:Hover {
+ color: white;
+ background-color: #334B66;
+ font-weight: bold;
+ text-decoration: none;
+}
+
+#packageTitle {
+ font-size: 160%;
+ font-weight: bold;
+ text-align: right;
+ color: #CC6633;
+}
+#packageTitle2 {
+ font-size: 160%;
+ font-weight: bold;
+ text-align: right;
+ color: #334B66;
+ background-color: #6699CC;
+}
+#packageLinks {
+ background-color: #6699CC;
+}
+#header {
+ background-color: #6699CC;
+ border-bottom: solid #334B66 4px;
+}
+#nav {
+ background-color: #6699CC;
+ padding: 4px;
+ border-right: solid #334B66 4px;
+}
+#index {
+ padding: 18px;
+}
+hr {
+ width: 80%;
+ background-color: #6699CC;
+ color: #6699CC;
+ margin-top: 15px;
+ margin-bottom: 15px;
+ clear: both;
+}
+.links {
+ text-align: left;
+ width: 98%;
+ margin: auto;
+}
+UL {
+ margin: 0px;
+ padding: 0px;
+ padding-left: 5px;
+ list-style-type: none;
+}
+li {
+ text-indent: -15px;
+ padding-bottom: 2px;
+ padding-left: 14px;
+}
+dd {
+ margin-bottom: .5em;
+}
+.small {
+ font-size: 80%;
+}
+h3 {
+}
+.middleCol {
+ margin-left: -1px;
+ border-right: dotted gray 1px;
+ border-left: dotted gray 1px;
+ padding: 5px;
+}
+.leftCol {
+ border-right: dotted gray 1px;
+ padding: 5px;
+}
+.rightCol {
+ margin-left: -1px;
+ border-left: dotted gray 1px;
+ padding: 5px;
+}
+#elementPath {
+ font-size: 14px;
+ font-weight: bold;
+ color: #334B66;
+}
+.constructor {
+ /*border: dashed #334B66 1px;*/
+ font-weight: bold;
+}
+#credit {
+ text-align: center;
+ color: #334B66;
+ font-weight: bold;
+}
+div.contents {
+ border: solid #334B66 1px;
+ padding: 3px;
+ margin-bottom: 5px;
+ clear: all;
+}
+H1 {
+ margin: 0px;
+}
+H2 {
+ margin: 0px;
+ margin-bottom: 2px;
+}
+H3 {
+ margin: 0px;
+}
+H4 {
+ margin: 0px;
+}
+#classTree {
+ padding: 0px;
+ margin: 0px;
+}
+div.indent {
+ margin-left: 15px;
+}
+.warning {
+ color: red;
+ background-color: #334B66;
+ font-weight: bold;
+}
+code {
+ font-family: fixed;
+ padding: 3px;
+ color: #334B66;
+ background-color: #dddddd;
+}
+.type {
+ color: #334B66;
+}
+.value {
+ color: #334B66;
+ border: dotted #334B66 1px;
+}
+.top {
+ color: #334B66;
+ border-bottom: dotted #334B66 1px;
+ padding-bottom: 4px;
+}
+DIV#nav DL {
+ margin: 0px;
+ padding: 0px;
+ list-style-type: none;
+}
+div.classtree {
+ font-size: 130%;
+ font-weight: bold;
+ background-color: #CC6633;
+ border: dotted #334B66 2px;
+}
+span.linenumber,p.linenumber {
+ font-weight: bold,italic;
+}
+span.smalllinenumber {
+ font-weight: bold,italic;
+ font-size: 9pt;
+}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/todolist.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/todolist.tpl
new file mode 100755
index 00000000..f929ccdb
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/todolist.tpl
@@ -0,0 +1,14 @@
+{include file="header.tpl" title="Todo List"}
+<div align="center"><h1>Todo List</h1></div>
+{foreach from=$todos key=todopackage item=todo}
+<h2>{$todopackage}</h2>
+{section name=todo loop=$todo}
+<h3>{$todo[todo].link}</h3>
+<ul>
+{section name=t loop=$todo[todo].todos}
+ <li>{$todo[todo].todos[t]}</li>
+{/section}
+</ul>
+{/section}
+{/foreach}
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/tutorial.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/tutorial.tpl
new file mode 100755
index 00000000..71fbb4fe
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/tutorial.tpl
@@ -0,0 +1,32 @@
+{include file="header.tpl" title=$title}
+{if $nav}
+<table width="100%" border="0" cellpadding="0" cellspacing="0">
+<tr>
+<td width="10%" align="left" valign="bottom">{if $prev}<a href=
+"{$prev}">{/if}Prev{if $prev}</a>{/if}</td>
+<td width="80%" align="center" valign="bottom"></td>
+<td width="10%" align="right" valign="bottom">{if $next}<a href=
+"{$next}">{/if}Next{if $next}</a>{/if}</td>
+</tr>
+</table>
+{/if}
+{$contents}
+{if $nav}
+<table width="100%" border="0" cellpadding="0" cellspacing="0">
+<tr>
+<td width="33%" align="left" valign="top">{if $prev}<a href="{$prev}">{/if}
+Prev{if $prev}</a>{/if}</td>
+<td width="34%" align="center" valign="top">{if $up}<a href=
+"{$up}">Up</a>{else}&nbsp;{/if}</td>
+<td width="33%" align="right" valign="top">{if $next}<a href=
+"{$next}">{/if}Next{if $next}</a>{/if}</td>
+</tr>
+
+<tr>
+<td width="33%" align="left" valign="top">{if $prevtitle}{$prevtitle}{/if}</td>
+<td width="34%" align="center" valign="top">{if $uptitle}{$uptitle}{/if}</td>
+<td width="33%" align="right" valign="top">{if $nexttitle}{$nexttitle}{/if}</td>
+</tr>
+</table>
+{/if}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/tutorial_toc.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/tutorial_toc.tpl
new file mode 100755
index 00000000..3d22d403
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/tutorial_toc.tpl
@@ -0,0 +1,29 @@
+{if count($toc)}
+<h1 align="center">Table of Contents</h1>
+<ul>
+{section name=toc loop=$toc}
+{if $toc[toc].tagname == 'refsect1'}
+{assign var="context" value="refsect1"}
+{$toc[toc].link}<br />
+{/if}
+{if $toc[toc].tagname == 'refsect2'}
+{assign var="context" value="refsect2"}
+&nbsp;&nbsp;&nbsp;{$toc[toc].link}<br />
+{/if}
+{if $toc[toc].tagname == 'refsect3'}
+{assign var="context" value="refsect3"}
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{$toc[toc].link}<br />
+{/if}
+{if $toc[toc].tagname == 'table'}
+{if $context == 'refsect2'}&nbsp;&nbsp;&nbsp;{/if}
+{if $context == 'refsect3'}&nbsp;&nbsp;&nbsp;{/if}
+Table: {$toc[toc].link}
+{/if}
+{if $toc[toc].tagname == 'example'}
+{if $context == 'refsect2'}&nbsp;&nbsp;&nbsp;{/if}
+{if $context == 'refsect3'}&nbsp;&nbsp;&nbsp;{/if}
+Table: {$toc[toc].link}
+{/if}
+{/section}
+</ul>
+{/if} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/tutorial_tree.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/tutorial_tree.tpl
new file mode 100755
index 00000000..ccb0289e
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/tutorial_tree.tpl
@@ -0,0 +1,5 @@
+<ul>
+ <li><a href="{$main.link}">{$main.title|strip_tags}</a>
+{if $kids}{$kids}</li>{/if}
+</ul>
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/var.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/var.tpl
new file mode 100755
index 00000000..262f427a
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/Smarty/templates/default/templates/var.tpl
@@ -0,0 +1,36 @@
+{section name=vars loop=$vars}
+{if $vars[vars].static}
+{if $show == 'summary'}
+ static var {$vars[vars].var_name}, {$vars[vars].sdesc}<br>
+{else}
+ <a name="{$vars[vars].var_dest}"></a>
+ <p></p>
+ <h4>static {$vars[vars].var_name}{if $vars[vars].has_default} = <span class="value">{$vars[vars].var_default|replace:"\n":"<br>\n"|replace:" ":"&nbsp;"|replace:"\t":"&nbsp;&nbsp;&nbsp;"}</span>{/if}</h4>
+ <div class="indent">
+ <p class="linenumber">[line {if $vars[vars].slink}{$vars[vars].slink}{else}{$vars[vars].line_number}{/if}]</p>
+ {include file="docblock.tpl" sdesc=$vars[vars].sdesc desc=$vars[vars].desc tags=$vars[vars].tags}
+ <p><b>Type:</b> {$vars[vars].var_type}</p>
+ <p><b>Overrides:</b> {$vars[vars].var_overrides}</p>
+ </div>
+ <p class="top">[ <a href="#top">Top</a> ]</p>
+{/if}
+{/if}
+{/section}
+{section name=vars loop=$vars}
+{if !$vars[vars].static}
+{if $show == 'summary'}
+ var {$vars[vars].var_name}, {$vars[vars].sdesc}<br>
+{else}
+ <a name="{$vars[vars].var_dest}"></a>
+ <p></p>
+ <h4>{$vars[vars].var_name}{if $vars[vars].has_default} = <span class="value">{$vars[vars].var_default|replace:"\n":"<br>\n"|replace:" ":"&nbsp;"|replace:"\t":"&nbsp;&nbsp;&nbsp;"}</span>{/if}</h4>
+ <div class="indent">
+ <p class="linenumber">[line {if $vars[vars].slink}{$vars[vars].slink}{else}{$vars[vars].line_number}{/if}]</p>
+ {include file="docblock.tpl" sdesc=$vars[vars].sdesc desc=$vars[vars].desc tags=$vars[vars].tags}
+ <p><b>Type:</b> {$vars[vars].var_type}</p>
+ <p><b>Overrides:</b> {$vars[vars].var_overrides}</p>
+ </div>
+ <p class="top">[ <a href="#top">Top</a> ]</p>
+{/if}
+{/if}
+{/section}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/HTMLframesConverter.inc b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/HTMLframesConverter.inc
new file mode 100755
index 00000000..8bab7d99
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/HTMLframesConverter.inc
@@ -0,0 +1,1914 @@
+<?php
+/**
+ * HTML original framed output converter, modified to use Smarty Template.
+ * This Converter takes output from the {@link Parser} and converts it to HTML-ready output for use with {@link Smarty}.
+ *
+ * phpDocumentor :: automatic documentation generator
+ *
+ * PHP versions 4 and 5
+ *
+ * Copyright (c) 2002-2006 Gregory Beaver
+ *
+ * LICENSE:
+ *
+ * This library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Lesser General
+ * Public License as published by the Free Software Foundation;
+ * either version 2.1 of the License, or (at your option) any
+ * later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ * @package Converters
+ * @subpackage HTMLframes
+ * @author Gregory Beaver <cellog@php.net>
+ * @copyright 2002-2006 Gregory Beaver
+ * @license http://www.opensource.org/licenses/lgpl-license.php LGPL
+ * @version CVS: $Id: HTMLframesConverter.inc 234145 2007-04-19 20:20:57Z ashnazg $
+ * @filesource
+ * @link http://www.phpdoc.org
+ * @link http://pear.php.net/PhpDocumentor
+ * @see parserDocBlock, parserInclude, parserPage, parserClass
+ * @see parserDefine, parserFunction, parserMethod, parserVar
+ * @since 1.2
+ */
+/**
+ * HTML output converter.
+ * This Converter takes output from the {@link Parser} and converts it to HTML-ready output for use with {@link Smarty}.
+ *
+ * @package Converters
+ * @subpackage HTMLframes
+ * @see parserDocBlock, parserInclude, parserPage, parserClass, parserDefine, parserFunction, parserMethod, parserVar
+ * @author Greg Beaver <cellog@php.net>
+ * @since 1.2
+ * @version $Id: HTMLframesConverter.inc 234145 2007-04-19 20:20:57Z ashnazg $
+ */
+class HTMLframesConverter extends Converter
+{
+ /**
+ * This converter knows about the new root tree processing
+ * In order to fix PEAR Bug #6389
+ * @var boolean
+ */
+ var $processSpecialRoots = true;
+ /**
+ * Smarty Converter wants elements sorted by type as well as alphabetically
+ * @see Converter::$sort_page_contents_by_type
+ * @var boolean
+ */
+ var $sort_page_contents_by_type = true;
+ /** @var string */
+ var $outputformat = 'HTML';
+ /** @var string */
+ var $name = 'frames';
+ /**
+ * indexes of elements by package that need to be generated
+ * @var array
+ */
+ var $leftindex = array('classes' => true, 'pages' => true, 'functions' => true, 'defines' => false, 'globals' => false);
+
+ /**
+ * output directory for the current procedural page being processed
+ * @var string
+ */
+ var $page_dir;
+
+ /**
+ * target directory passed on the command-line.
+ * {@link $targetDir} is malleable, always adding package/ and package/subpackage/ subdirectories onto it.
+ * @var string
+ */
+ var $base_dir;
+
+ /**
+ * output directory for the current class being processed
+ * @var string
+ */
+ var $class_dir;
+
+ /**
+ * array of converted package page names.
+ * Used to link to the package page in the left index
+ * @var array Format: array(package => 1)
+ */
+ var $package_pages = array();
+
+ /**
+ * controls formatting of parser informative output
+ *
+ * Converter prints:
+ * "Converting /path/to/file.php... Procedural Page Elements... Classes..."
+ * Since HTMLdefaultConverter outputs files while converting, it needs to send a \n to start a new line. However, if there
+ * is more than one class, output is messy, with multiple \n's just between class file output. This variable prevents that
+ * and is purely cosmetic
+ * @var boolean
+ */
+ var $juststarted = false;
+
+ /**
+ * contains all of the template procedural page element loop data needed for the current template
+ * @var array
+ */
+ var $current;
+
+ /**
+ * contains all of the template class element loop data needed for the current template
+ * @var array
+ */
+ var $currentclass;
+ var $wrote = false;
+ var $ric_set = array();
+
+ /**
+ * sets {@link $base_dir} to $targetDir
+ * @see Converter()
+ */
+ function HTMLframesConverter(&$allp, &$packp, &$classes, &$procpages, $po, $pp, $qm, $targetDir, $templateDir, $title)
+ {
+ Converter::Converter($allp, $packp, $classes, $procpages,$po, $pp, $qm, $targetDir, $templateDir, $title);
+ $this->base_dir = $targetDir;
+ }
+
+ /**
+ * @deprecated in favor of PHP 4.3.0+ tokenizer-based source highlighting
+ */
+ function unmangle($sourcecode)
+ {
+ $sourcecode = str_replace('<code>','<pre>',$sourcecode);
+ $sourcecode = str_replace('</code>','</pre>',$sourcecode);
+ $sourcecode = str_replace('<br />',"\n",$sourcecode);
+ $sourcecode = str_replace('&nbsp;',' ',$sourcecode);
+ $sourcecode = str_replace('&lt;','<',$sourcecode);
+ $sourcecode = str_replace('&gt;','>',$sourcecode);
+ $sourcecode = str_replace('&amp;','&',$sourcecode);
+ return $sourcecode;
+ }
+
+ /**
+ * @param string full path to the source file
+ * @param string fully highlighted source code
+ */
+ function writeSource($path, $value)
+ {
+ $templ = &$this->newSmarty();
+ $pathinfo = $this->proceduralpages->getPathInfo($path, $this);
+ $templ->assign('source',$value);
+ $templ->assign('package',$pathinfo['package']);
+ $templ->assign('subpackage',$pathinfo['subpackage']);
+ $templ->assign('name',$pathinfo['name']);
+ $templ->assign('source_loc',$pathinfo['source_loc']);
+ $templ->assign('docs',$pathinfo['docs']);
+ $templ->assign("subdir",'../');
+ $templ->register_outputfilter('HTMLframes_outputfilter');
+ $this->setTargetDir($this->getFileSourcePath($this->base_dir));
+ phpDocumentor_out("\n");
+ $this->setSourcePaths($path);
+ $this->writefile($this->getFileSourceName($path).'.html',$templ->fetch('filesource.tpl'));
+ }
+
+ function writeExample($title, $path, $source)
+ {
+ $templ = &$this->newSmarty();
+ $templ->assign('source',$source);
+ if (empty($title))
+ {
+ $title = 'example';
+ addWarning(PDERROR_EMPTY_EXAMPLE_TITLE, $path, $title);
+ }
+ $templ->assign('title',$title);
+ $templ->assign('file',$path);
+ $templ->assign("subdir",'../');
+ $templ->register_outputfilter('HTMLframes_outputfilter');
+ $this->setTargetDir($this->base_dir . PATH_DELIMITER . '__examplesource');
+ phpDocumentor_out("\n");
+ $this->writefile('exsource_'.$path.'.html',$templ->fetch('examplesource.tpl'));
+ }
+
+ function getExampleLink($path, $title)
+ {
+ return $this->returnLink('{$subdir}__examplesource' . PATH_DELIMITER . 'exsource_'.$path.'.html',$title);
+ }
+
+ function getSourceLink($path)
+ {
+ return $this->returnLink('{$subdir}__filesource/' .
+ $this->getFileSourceName($path).'.html','Source Code for this file');
+ }
+
+ /**
+ * Retrieve a Converter-specific anchor to a segment of a source code file
+ * parsed via a {@tutorial tags.filesource.pkg} tag.
+ * @param string full path to source file
+ * @param string name of anchor
+ * @param string link text, if this is a link
+ * @param boolean returns either a link or a destination based on this
+ * parameter
+ * @return string link to an anchor, or the anchor
+ */
+ function getSourceAnchor($sourcefile,$anchor,$text = '',$link = false)
+ {
+ if ($link) {
+ return $this->returnLink('{$subdir}__filesource/' .
+ $this->getFileSourceName($sourcefile) . '.html#a' . $anchor, $text);
+ } else {
+ return '<a name="a'.$anchor.'"></a>';
+ }
+ }
+
+ /**
+ * Return a line of highlighted source code with formatted line number
+ *
+ * If the $path is a full path, then an anchor to the line number will be
+ * added as well
+ * @param integer line number
+ * @param string highlighted source code line
+ * @param false|string full path to @filesource file this line is a part of,
+ * if this is a single line from a complete file.
+ * @return string formatted source code line with line number
+ */
+ function sourceLine($linenumber, $line, $path = false)
+ {
+ $extra = '';
+ if (strlen(str_replace("\n", '', $line)) == 0) {
+ $extra = '&nbsp;';
+ }
+ if ($path)
+ {
+ return '<li><div class="src-line">' . $this->getSourceAnchor($path, $linenumber) .
+ str_replace("\n",'',$line) . $extra .
+ "</div></li>\n";
+ } else
+ {
+ return '<li><div class="src-line">' . str_replace("\n",'',$line) .
+ "$extra</div></li>\n";
+ }
+ }
+
+ /**
+ * Used to convert the <<code>> tag in a docblock
+ * @param string
+ * @param boolean
+ * @return string
+ */
+ function ProgramExample($example, $tutorial = false, $inlinesourceparse = null/*false*/,
+ $class = null/*false*/, $linenum = null/*false*/, $filesourcepath = null/*false*/)
+ {
+ return '<div class="src-code"><ol>' . parent::ProgramExample($example, $tutorial, $inlinesourceparse, $class, $linenum, $filesourcepath)
+ .'</ol></div>';
+ }
+
+ /**
+ * @param string
+ */
+ function TutorialExample($example)
+ {
+ $trans = $this->template_options['desctranslate'];
+ $this->template_options['desctranslate'] = array();
+ $example = '<ol>' . parent::TutorialExample($example)
+ .'</ol>';
+ $this->template_options['desctranslate'] = $trans;
+ if (!isset($this->template_options['desctranslate'])) return $example;
+ if (!isset($this->template_options['desctranslate']['code'])) return $example;
+ $example = $this->template_options['desctranslate']['code'] . $example;
+ if (!isset($this->template_options['desctranslate']['/code'])) return $example;
+ return $example . $this->template_options['desctranslate']['/code'];
+ }
+
+ function getCurrentPageLink()
+ {
+ return $this->curname . '.html';
+ }
+
+ /**
+ * Uses htmlspecialchars() on the input
+ */
+ function postProcess($text)
+ {
+ if ($this->highlightingSource) {
+ return str_replace(array(' ',"\t"), array('&nbsp;', '&nbsp;&nbsp;&nbsp;'),
+ htmlspecialchars($text));
+ }
+ return htmlspecialchars($text);
+ }
+
+ /**
+ * Use the template tutorial_toc.tpl to generate a table of contents for HTML
+ * @return string table of contents formatted for use in the current output format
+ * @param array format: array(array('tagname' => section, 'link' => returnsee link, 'id' => anchor name, 'title' => from title tag),...)
+ */
+ function formatTutorialTOC($toc)
+ {
+ $template = &$this->newSmarty();
+ $template->assign('toc',$toc);
+ return $template->fetch('tutorial_toc.tpl');
+ }
+
+ function &SmartyInit(&$templ)
+ {
+ if (!isset($this->package_index))
+ foreach($this->all_packages as $key => $val)
+ {
+ if (isset($this->pkg_elements[$key]))
+ {
+ if (!isset($start)) $start = $key;
+ $this->package_index[] = array('link' => "li_$key.html", 'title' => $key);
+ }
+ }
+ $templ->assign("packageindex",$this->package_index);
+ $templ->assign("subdir",'');
+ return $templ;
+ }
+
+ /**
+ * Writes out the template file of {@link $class_data} and unsets the template to save memory
+ * @see registerCurrentClass()
+ * @see parent::endClass()
+ */
+ function endClass()
+ {
+ $a = '../';
+ if (!empty($this->subpackage)) $a .= '../';
+ if ($this->juststarted)
+ {
+ $this->juststarted = false;
+ phpDocumentor_out("\n");
+ flush();
+ }
+ $this->setTargetDir($this->base_dir . PATH_DELIMITER . $this->class_dir);
+ $this->class_data->assign("subdir",$a);
+ $this->class_data->register_outputfilter('HTMLframes_outputfilter');
+ $this->writefile($this->class . '.html',$this->class_data->fetch('class.tpl'));
+ unset($this->class_data);
+ }
+
+ /**
+ * Writes out the template file of {@link $page_data} and unsets the template to save memory
+ * @see registerCurrent()
+ * @see parent::endPage()
+ */
+ function endPage()
+ {
+ $this->package = $this->curpage->package;
+ $this->subpackage = $this->curpage->subpackage;
+ $a = '../';
+ if (!empty($this->subpackage)) $a .= '../';
+ $this->setTargetDir($this->base_dir . PATH_DELIMITER . $this->page_dir);
+ $this->page_data->assign("package",$this->package);
+ $this->page_data->assign("subdir",$a);
+ $this->page_data->register_outputfilter('HTMLframes_outputfilter');
+ $this->writefile($this->page . '.html',$this->page_data->fetch('page.tpl'));
+ unset($this->page_data);
+ }
+
+ /**
+ * @param string
+ * @param string
+ * @return string &lt;a href="'.$link.'">'.$text.'</a&gt;
+ */
+ function returnLink($link,$text)
+ {
+ return '<a href="'.$link.'">'.$text.'</a>';
+ }
+
+ function makeLeft()
+ {
+ foreach($this->page_elements as $package => $o1)
+ {
+ foreach($o1 as $subpackage => $links)
+ {
+ for($i=0;$i<count($links);$i++)
+ {
+ $left[$package][$subpackage]['files'][] =
+ array("link" => $this->getId($links[$i]), "title" => $links[$i]->name);
+ }
+ }
+ }
+ $interfaces = $classes = false;
+ foreach($this->class_elements as $package => $o1)
+ {
+ foreach($o1 as $subpackage => $links)
+ {
+ for($i=0;$i<count($links);$i++)
+ {
+ $class = $this->classes->getClassByPackage($links[$i]->name, $links[$i]->package);
+ $isinterface = $isclass = false;
+ if ($class->isInterface()) {
+ $isinterface = true;
+ $interfaces = true;
+ } else {
+ $isclass = true;
+ $classes = true;
+ }
+ if ($class && isset($class->docblock) && $class->docblock->hasaccess) {
+ $left[$package][$subpackage]['classes'][] =
+ array("link" => $this->getId($links[$i]),
+ "title" => $links[$i]->name,
+ 'is_interface' => $isinterface,
+ 'is_class' => $isclass,
+ "access" => $class->docblock->tags['access'][0]->value,
+ "abstract" => isset ($class->docblock->tags['abstract'][0]));
+ } else {
+ $left[$package][$subpackage]['classes'][] =
+ array("link" => $this->getId($links[$i]),
+ "title" => $links[$i]->name,
+ 'is_interface' => $isinterface,
+ 'is_class' => $isclass,
+ "access" => 'public',
+ "abstract" => isset ($class->docblock->tags['abstract'][0]));
+ }
+ }
+ }
+ }
+ foreach($this->function_elements as $package => $o1)
+ {
+ foreach($o1 as $subpackage => $links)
+ {
+ for($i=0;$i<count($links);$i++)
+ {
+ $left[$package][$subpackage]['functions'][] =
+ array("link" => $this->getId($links[$i]), "title" => $links[$i]->name);
+ }
+ }
+ }
+ $ret = array();
+ foreach($left as $package => $r)
+ {
+ $pd = 'blank';
+ if (isset($this->package_pages[$package])) $pd = $package.'/package_'.$package.'.html';
+ if (!isset($r['']))
+ {
+ $pt = false;
+ $ptnoa = false;
+ $ptt = $package;
+ if ($t = $this->hasTutorial('pkg',$package,$package,''))
+ {
+ $pt = $t->getLink($this);
+ $ptnoa = $this->getId($t->getLink($this,true));
+ $ptt = $t->getTitle($this);
+ }
+ $tutes = array();
+ foreach($this->tutorial_tree as $root => $tr)
+ {
+ if ($tr['tutorial']->package == $package && $tr['tutorial']->subpackage == '') {
+ $tutes[$tr['tutorial']->tutorial_type][] =
+ $this->getTutorialTree($tr['tutorial']);
+ }
+ }
+ if (isset($this->childless_tutorials[$package][$subpackage]))
+ {
+ foreach($this->childless_tutorials[$package][$subpackage] as $ext => $other)
+ {
+ foreach($other as $tutorial)
+ {
+ $tutes[$tutorial->tutorial_type][] = $this->getTutorialTree($tutorial);
+ }
+ }
+ }
+ $ret[$package][] =
+ array(
+ 'package' => $package,
+ 'subpackage' => '',
+ 'packagedoc' => $pd,
+ 'packagetutorial' => $pt,
+ 'packagetutorialnoa' => $ptnoa,
+ 'packagetutorialtitle' => $ptt,
+ 'files' => array(),
+ 'functions' => array(),
+ 'classes' => array(),
+ 'tutorials' => $tutes,
+ );
+ }
+ foreach($r as $subpackage => $info)
+ {
+ $my = array();
+ $my['package'] = $package;
+ if (isset($this->package_pages[$package]))
+ $my['packagedoc'] = $pd;
+ else
+ $my['packagedoc'] = 'blank';
+ $my['subpackage'] = $subpackage;
+ if (empty($subpackage))
+ {
+ if ($t = $this->hasTutorial('pkg',$package,$package,$subpackage))
+ {
+ $my['packagetutorial'] = $t->getLink($this);
+ $my['packagetutorialnoa'] = $this->getId($t->getLink($this,true));
+ $my['packagetutorialtitle'] = $t->getTitle($this);
+ } else
+ {
+ $my['packagetutorial'] = '<a href="blank.html">No Package-Level Tutorial</a>';
+ $my['packagetutorialnoa'] = 'blank.html';
+ $my['packagetutorialtitle'] = $package;
+ }
+ } else
+ {
+ if ($t = $this->hasTutorial('pkg',$subpackage,$package,$subpackage))
+ {
+ $my['subpackagetutorial'] = $this->returnSee($this->getTutorialLink($t));
+ $my['subpackagetutorialnoa'] = $this->getId($t->getLink($this,true));
+ $my['subpackagetutorialtitle'] = $t->getTitle($this);
+ } else
+ {
+ $my['subpackagetutorial'] = false;
+ $my['subpackagetutorialnoa'] = false;
+ $my['subpackagetutorialtitle'] = $subpackage;
+ }
+ }
+ $tutes = array();
+ foreach($this->tutorial_tree as $root => $tr)
+ {
+ if ($tr['tutorial']->package == $package && $tr['tutorial']->subpackage == $subpackage)
+ {
+ $tutes[$tr['tutorial']->tutorial_type][] = $this->getTutorialTree($tr['tutorial']);
+ }
+ }
+ $my['tutorials'] = $tutes;
+ $my['files'] = $my['classes'] = $my['functions'] = array();
+ if (isset($info['files']))
+ $my['files'] = $info['files'];
+ if (isset($info['classes']))
+ $my['classes'] = $info['classes'];
+ $my['hasclasses'] = $classes;
+ $my['hasinterfaces'] = $interfaces;
+ if (isset($info['functions']))
+ $my['functions'] = $info['functions'];
+ $ret[$package][] = $my;
+ }
+ }
+ return $ret;
+ }
+
+ function getTutorialTree($tutorial,$k = false)
+ {
+ $ret = '';
+ if (is_object($tutorial)) $tree = parent::getTutorialTree($tutorial); else $tree = $tutorial;
+// debug($this->vardump_tree($tree));exit;
+ if (!$tree)
+ {
+ $template = &$this->newSmarty();
+ $template->assign('subtree',false);
+ $template->assign('name',str_replace('.','',$tutorial->name));
+ $template->assign('parent',false);
+ $template->assign('haskids',false);
+ $template->assign('kids','');
+ $link = new tutorialLink;
+ $t = $tutorial;
+ $link->addLink('',$t->path,$t->name,$t->package,$t->subpackage,$t->getTitle($this));
+ $main = array('link' => $this->getId($link), 'title' => $link->title);
+ $template->assign('main',$main);
+ return $template->fetch('tutorial_tree.tpl');
+ }
+ if (isset($tree['kids']))
+ {
+ foreach($tree['kids'] as $subtree)
+ {
+ $ret .= $this->getTutorialTree($subtree, true);
+ }
+ }
+ $template = &$this->newSmarty();
+ $template->assign('subtree',$k);
+ $template->assign('name',str_replace('.','',$tree['tutorial']->name));
+ $template->assign('parent',($k ? str_replace('.','',$tree['tutorial']->parent->name) : false));
+ $template->assign('haskids',strlen($ret));
+ $template->assign('kids',$ret);
+ $link = new tutorialLink;
+ $t = $tree['tutorial'];
+ $link->addLink('',$t->path,$t->name,$t->package,$t->subpackage,$t->getTitle($this));
+ $main = array('link' => $this->getId($link), 'title' => $link->title);
+ $template->assign('main',$main);
+ $ret = $template->fetch('tutorial_tree.tpl');
+ return $ret;
+ }
+
+ /**
+ * HTMLdefaultConverter chooses to format both package indexes and the complete index here
+ *
+ * This function formats output for the elementindex.html and pkgelementindex.html template files. It then
+ * writes them to the target directory
+ * @see generateElementIndex(), generatePkgElementIndex()
+ */
+ function formatPkgIndex()
+ {
+ list($package_indexes,$packages,$mletters) = $this->generatePkgElementIndexes();
+ for($i=0;$i<count($package_indexes);$i++)
+ {
+ $template = &$this->newSmarty();
+ $this->package = $package_indexes[$i]['package'];
+ $this->subpackage = '';
+ $template->assign("index",$package_indexes[$i]['pindex']);
+ $template->assign("package",$package_indexes[$i]['package']);
+ $template->assign("letters",$mletters[$package_indexes[$i]['package']]);
+ $template->register_outputfilter('HTMLframes_outputfilter');
+ $this->setTargetDir($this->base_dir);
+ $this->writefile('elementindex_'.$package_indexes[$i]['package'].'.html',$template->fetch('pkgelementindex.tpl'));
+ }
+ phpDocumentor_out("\n");
+ flush();
+ }
+
+ /**
+ * HTMLdefaultConverter uses this function to format template index.html and packages.html
+ *
+ * This function generates the package list from {@link $all_packages}, eliminating any
+ * packages that don't have any entries in their package index (no files at all, due to @ignore
+ * or other factors). Then it uses the default package name as the first package index to display.
+ * It sets the right pane to be either a blank file with instructions on making package-level docs,
+ * or the package-level docs for the default package.
+ * @global string Used to set the starting package to display
+ */
+ function formatIndex()
+ {
+ global $phpDocumentor_DefaultPackageName;
+ list($elindex,$mletters) = $this->generateElementIndex();
+ $template = &$this->newSmarty();
+ $template->assign("index",$elindex);
+ $template->assign("letters",$mletters);
+ $template->register_outputfilter('HTMLframes_outputfilter');
+ phpDocumentor_out("\n");
+ flush();
+ $this->setTargetDir($this->base_dir);
+ $this->writefile('elementindex.html',$template->fetch('elementindex.tpl'));
+ usort($this->package_index,"HTMLframes_pindexcmp");
+ $index = &$this->newSmarty();
+ foreach($this->all_packages as $key => $val)
+ {
+ if (isset($this->pkg_elements[$key]))
+ {
+ if (!isset($start)) $start = $key;
+ if (!isset($this->package_pages[$key])) $this->writeNewPPage($key);
+ }
+ }
+ // Created index.html
+ if (isset($this->pkg_elements[$phpDocumentor_DefaultPackageName])) $start = $phpDocumentor_DefaultPackageName;
+ $this->package = $start;
+ $this->subpackage = '';
+ $index->assign("package_count",count($this->pkg_elements));
+ if (count($this->ric_set))
+ $index->assign("package_count",2);
+ $index->assign("date",date("r",time()));
+ $index->assign("title",$this->title);
+ $index->assign("start","li_$start.html");
+ $index->register_outputfilter('HTMLframes_outputfilter');
+ if (isset($this->tutorials[$start]['']['pkg'][$start . '.pkg']))
+ {
+ $index->assign("blank",$start.'/tutorial_'.$start.'.pkg');
+ } elseif (isset($this->package_pages[$start]))
+ {
+ $index->assign("blank",$start.'/package_'.$start);
+ }
+ else
+ {
+ $index->assign("blank","blank");
+ $blank = &$this->newSmarty();
+ $blank->assign('package',$this->package);
+ $this->setTargetDir($this->base_dir);
+ $this->writefile("blank.html",$blank->fetch('blank.tpl'));
+ }
+ phpDocumentor_out("\n");
+ flush();
+ $this->setTargetDir($this->base_dir);
+ $this->writefile("index.html",$index->fetch('index.tpl'));
+
+ // Create package index
+ $package = &$this->newSmarty();
+ $package->assign('ric',array());
+ if (isset($this->ric_set))
+ {
+ foreach($this->ric_set as $name => $u)
+ {
+ $package->append('ric',array('file' => 'ric_'.$name.'.html','name' => $name));
+ }
+ }
+ $package->assign("packages",$this->package_index);
+ $package->register_outputfilter('HTMLframes_outputfilter');
+ $this->writefile("packages.html",$package->fetch('top_frame.tpl'));
+ unset($index);
+ }
+
+ function writeNewPPage($key)
+ {
+ return;
+ $template = &$this->newSmarty();
+ $this->package = $key;
+ $this->subpackage = '';
+ $template->assign("date",date("r",time()));
+ $template->assign("title",$this->title);
+ $template->assign("package",$key);
+ $template->register_outputfilter('HTMLframes_outputfilter');
+ phpDocumentor_out("\n");
+ flush();
+ $this->setTargetDir($this->base_dir);
+
+ $this->writefile("li_$key.html",$template->fetch('index.tpl'));
+ unset($template);
+ }
+
+ /**
+ * Generate indexes for li_package.html and classtree output files
+ *
+ * This function generates the li_package.html files from the template file left.html. It does this by
+ * iterating through each of the $page_elements, $class_elements and $function_elements arrays to retrieve
+ * the pre-sorted {@link abstractLink} descendants needed for index generation. Conversion of these links to
+ * text is done by {@link returnSee()}. The {@link $local} parameter is set to false to ensure that paths are correct.
+ *
+ * Then it uses {@link generateFormattedClassTrees()} to create class trees from the template file classtrees.html. Output
+ * filename is classtrees_packagename.html. This function also unsets {@link $elements} and {@link $pkg_elements} to free
+ * up the considerable memory these two class vars use
+ * @see $page_elements, $class_elements, $function_elements
+ */
+ function formatLeftIndex()
+ {
+ phpDocumentor_out("\n");
+ flush();
+ $this->setTargetDir($this->base_dir);
+ if (0)//!isset($this->left))
+ {
+ debug("Nothing parsed, check the command-line");
+ die();
+ }
+ $x = $this->makeLeft();
+ foreach($this->all_packages as $package => $rest)
+ {
+ if (!isset($this->pkg_elements[$package])) continue;
+ $template = &$this->newSmarty();
+ $template->assign("info",$x[$package]);
+ $template->assign('package',$package);
+ $template->assign("hastutorials",isset($this->tutorials[$package]));
+ $template->assign('hastodos',count($this->todoList));
+ $template->assign('todolink','todolist.html');
+ $template->assign("classtreepage","classtrees_$package");
+ $template->assign("elementindex","elementindex_$package");
+ $template->register_outputfilter('HTMLframes_outputfilter');
+ if (isset($this->package_pages[$package]))
+ {
+ $template->assign("packagedoc",$package.'/package_' . $package . '.html');
+ } else
+ {
+ $template->assign("packagedoc",false);
+ }
+ $this->writefile("li_$package.html",$template->fetch('left_frame.tpl'));
+
+ // Create class tree page
+ $template = &$this->newSmarty();
+ $template->assign("classtrees",$this->generateFormattedClassTrees($package));
+ $template->assign("interfaces",$this->generateFormattedInterfaceTrees($package));
+ $template->assign("package",$package);
+ $template->register_outputfilter('HTMLframes_outputfilter');
+ $this->writefile("classtrees_$package.html",$template->fetch('classtrees.tpl'));
+ phpDocumentor_out("\n");
+ flush();
+ }
+ // free up considerable memory
+ unset($this->elements);
+ unset($this->pkg_elements);
+ }
+
+ /**
+ * This function takes an {@link abstractLink} descendant and returns an html link
+ *
+ * @param abstractLink a descendant of abstractlink should be passed, and never text
+ * @param string text to display in the link
+ * @param boolean this parameter is not used, and is deprecated
+ * @param boolean determines whether the returned text is enclosed in an <a> tag
+ */
+ function returnSee(&$element, $eltext = false, $with_a = true)
+ {
+ if (!is_object($element) || !$element) return false;
+ if (!$with_a) return $this->getId($element, false);
+ if (!$eltext)
+ {
+ $eltext = '';
+ switch($element->type)
+ {
+ case 'tutorial' :
+ $eltext = strip_tags($element->title);
+ break;
+ case 'method' :
+ case 'var' :
+ case 'const' :
+ $eltext .= $element->class.'::';
+ case 'page' :
+ case 'define' :
+ case 'class' :
+ case 'function' :
+ case 'global' :
+ default :
+ $eltext .= $element->name;
+ if ($element->type == 'function' || $element->type == 'method') $eltext .= '()';
+ break;
+ }
+ }
+ return '<a href="'.$this->getId($element).'">'.$eltext.'</a>';
+ }
+
+ function getId($element, $fullpath = true)
+ {
+ if (phpDocumentor_get_class($element) == 'parserdata')
+ {
+ $element = $this->addLink($element->parent);
+ $elp = $element->parent;
+ } elseif (is_a($element, 'parserbase'))
+ {
+ $elp = $element;
+ $element = $this->addLink($element);
+ }
+ $c = '';
+ if (!empty($element->subpackage))
+ {
+ $c = '/'.$element->subpackage;
+ }
+ $b = '{$subdir}';
+ switch ($element->type)
+ {
+ case 'page' :
+ if ($fullpath)
+ return $b.$element->package.$c.'/'.$element->fileAlias.'.html';
+ return 'top';
+ break;
+ case 'define' :
+ case 'global' :
+ case 'function' :
+ if ($fullpath)
+ return $b.$element->package.$c.'/'.$element->fileAlias.'.html#'.$element->type.$element->name;
+ return $element->type.$element->name;
+ break;
+ case 'class' :
+ if ($fullpath)
+ return $b.$element->package.$c.'/'.$element->name.'.html';
+ return 'top';
+ break;
+ case 'method' :
+ case 'var' :
+ case 'const' :
+ if ($fullpath)
+ return $b.$element->package.$c.'/'.$element->class.'.html#'.$element->type.$element->name;
+ return $element->type.$element->name;
+ break;
+ case 'tutorial' :
+ $d = '';
+ if ($element->section)
+ {
+ $d = '#'.$element->section;
+ }
+ return $b.$element->package.$c.'/tutorial_'.$element->name.'.html'.$d;
+ }
+ }
+
+ /**
+ * Convert README/INSTALL/CHANGELOG file contents to output format
+ * @param README|INSTALL|CHANGELOG
+ * @param string contents of the file
+ */
+ function Convert_RIC($name, $contents)
+ {
+ $template = &$this->newSmarty();
+ $template->assign('contents',$contents);
+ $template->assign('name',$name);
+ $this->setTargetDir($this->base_dir);
+ $this->writefile('ric_'.$name . '.html',$template->fetch('ric.tpl'));
+ $this->ric_set[$name] = true;
+ }
+
+ function ConvertTodoList()
+ {
+ $todolist = array();
+ foreach($this->todoList as $package => $alltodos)
+ {
+ foreach($alltodos as $todos)
+ {
+ $converted = array();
+ $converted['link'] = $this->returnSee($todos[0]);
+ if (!is_array($todos[1]))
+ {
+ $converted['todos'][] = $todos[1]->Convert($this);
+ } else
+ {
+ foreach($todos[1] as $todo)
+ {
+ $converted['todos'][] = $todo->Convert($this);
+ }
+ }
+ $todolist[$package][] = $converted;
+ }
+ }
+ $templ = &$this->newSmarty();
+ $templ->assign('todos',$todolist);
+ $templ->register_outputfilter('HTMLframes_outputfilter');
+ $this->setTargetDir($this->base_dir);
+ $this->writefile('todolist.html',$templ->fetch('todolist.tpl'));
+ }
+
+ /**
+ * Create errors.html template file output
+ *
+ * This method takes all parsing errors and warnings and spits them out ordered by file and line number.
+ * @global ErrorTracker We'll be using it's output facility
+ */
+ function ConvertErrorLog()
+ {
+ global $phpDocumentor_errors;
+ $allfiles = array();
+ $files = array();
+ $warnings = $phpDocumentor_errors->returnWarnings();
+ $errors = $phpDocumentor_errors->returnErrors();
+ $template = &$this->newSmarty();
+ foreach($warnings as $warning)
+ {
+ $file = '##none';
+ $linenum = 'Warning';
+ if ($warning->file)
+ {
+ $file = $warning->file;
+ $allfiles[$file] = 1;
+ $linenum .= ' on line '.$warning->linenum;
+ }
+ $files[$file]['warnings'][] = array('name' => $linenum, 'listing' => $warning->data);
+ }
+ foreach($errors as $error)
+ {
+ $file = '##none';
+ $linenum = 'Error';
+ if ($error->file)
+ {
+ $file = $error->file;
+ $allfiles[$file] = 1;
+ $linenum .= ' on line '.$error->linenum;
+ }
+ $files[$file]['errors'][] = array('name' => $linenum, 'listing' => $error->data);
+ }
+ $i=1;
+ $af = array();
+ foreach($allfiles as $file => $num)
+ {
+ $af[$i++] = $file;
+ }
+ $allfiles = $af;
+ usort($allfiles,'strnatcasecmp');
+ $allfiles[0] = "Post-parsing";
+ foreach($allfiles as $i => $a)
+ {
+ $allfiles[$i] = array('file' => $a);
+ }
+ $out = array();
+ foreach($files as $file => $data)
+ {
+ if ($file == '##none') $file = 'Post-parsing';
+ $out[$file] = $data;
+ }
+ $template->assign("files",$allfiles);
+ $template->assign("all",$out);
+ $template->assign("title","phpDocumentor Parser Errors and Warnings");
+ $this->setTargetDir($this->base_dir);
+ $this->writefile("errors.html",$template->fetch('errors.tpl'));
+ unset($template);
+ phpDocumentor_out("\n\nTo view errors and warnings, look at ".$this->base_dir. PATH_DELIMITER . "errors.html\n");
+ flush();
+ }
+
+ function getTutorialId($package,$subpackage,$tutorial,$id)
+ {
+ return $id;
+ }
+
+ function getCData($value)
+ {
+ return '<pre>'.htmlentities($value).'</pre>';
+ }
+
+ /**
+ * Converts package page and sets its package as used in {@link $package_pages}
+ * @param parserPackagePage
+ */
+ function convertPackagepage(&$element)
+ {
+ phpDocumentor_out("\n");
+ flush();
+ $this->package = $element->package;
+ $this->subpackage = '';
+ $contents = $element->Convert($this);
+ $this->package_pages[$element->package] = str_replace('{$subdir}','../',$contents);
+ phpDocumentor_out("\n");
+ flush();
+ $this->setTargetDir($this->base_dir . PATH_DELIMITER . $element->package);
+ $this->writeFile('package_'.$element->package.'.html',str_replace('{$subdir}','../',$contents));
+ }
+
+ /**
+ * @param parserTutorial
+ */
+ function convertTutorial(&$element)
+ {
+ phpDocumentor_out("\n");
+ flush();
+ $template = &parent::convertTutorial($element);
+ $a = '../';
+ if ($element->subpackage) $a .= '../';
+ $template->assign('subdir',$a);
+ $template->register_outputfilter('HTMLframes_outputfilter');
+ $contents = $template->fetch('tutorial.tpl');
+ $a = '';
+ if ($element->subpackage) $a = PATH_DELIMITER . $element->subpackage;
+ phpDocumentor_out("\n");
+ flush();
+ $this->setTargetDir($this->base_dir . PATH_DELIMITER . $element->package . $a);
+ $this->writeFile('tutorial_'.$element->name.'.html',$contents);
+ }
+
+ /**
+ * Converts class for template output
+ * @see prepareDocBlock(), generateChildClassList(), generateFormattedClassTree(), getFormattedConflicts()
+ * @see getFormattedInheritedMethods(), getFormattedInheritedVars()
+ * @param parserClass
+ */
+ function convertClass(&$element)
+ {
+ parent::convertClass($element);
+ $this->class_dir = $element->docblock->package;
+ if (!empty($element->docblock->subpackage)) $this->class_dir .= PATH_DELIMITER . $element->docblock->subpackage;
+ $a = '../';
+ if ($element->docblock->subpackage != '') $a = "../$a";
+
+ $this->class_data->assign('subdir',$a);
+ $this->class_data->assign("title","Docs For Class " . $element->getName());
+ $this->class_data->assign("page",$element->getName() . '.html');
+ }
+
+ /**
+ * Converts class variables for template output
+ * @see prepareDocBlock(), getFormattedConflicts()
+ * @param parserDefine
+ */
+ function convertVar(&$element)
+ {
+ parent::convertVar($element, array('var_dest' => $this->getId($element,false)));
+ }
+
+ /**
+ * Converts class variables for template output
+ * @see prepareDocBlock(), getFormattedConflicts()
+ * @param parserDefine
+ */
+ function convertConst(&$element)
+ {
+ parent::convertConst($element, array('const_dest' => $this->getId($element,false)));
+ }
+
+ /**
+ * Converts class methods for template output
+ * @see prepareDocBlock(), getFormattedConflicts()
+ * @param parserDefine
+ */
+ function convertMethod(&$element)
+ {
+ parent::convertMethod($element, array('method_dest' => $this->getId($element,false)));
+ }
+
+ /**
+ * Converts function for template output
+ * @see prepareDocBlock(), parserFunction::getFunctionCall(), getFormattedConflicts()
+ * @param parserFunction
+ */
+ function convertFunction(&$element)
+ {
+ $funcloc = $this->getId($this->addLink($element));
+ parent::convertFunction($element,array('function_dest' => $this->getId($element,false)));
+ }
+
+ /**
+ * Converts include elements for template output
+ * @see prepareDocBlock()
+ * @param parserInclude
+ */
+ function convertInclude(&$element)
+ {
+ parent::convertInclude($element, array('include_file' => '_'.strtr($element->getValue(),array('"' => '', "'" => '','.' => '_'))));
+ }
+
+ /**
+ * Converts defines for template output
+ * @see prepareDocBlock(), getFormattedConflicts()
+ * @param parserDefine
+ */
+ function convertDefine(&$element)
+ {
+ parent::convertDefine($element, array('define_link' => $this->getId($element,false)));
+ }
+
+ /**
+ * Converts global variables for template output
+ * @param parserGlobal
+ */
+ function convertGlobal(&$element)
+ {
+ parent::convertGlobal($element, array('global_link' => $this->getId($element,false)));
+ }
+
+ /**
+ * converts procedural pages for template output
+ * @see prepareDocBlock(), getClassesOnPage()
+ * @param parserData
+ */
+ function convertPage(&$element)
+ {
+ parent::convertPage($element);
+ $this->juststarted = true;
+ $this->page_dir = $element->parent->package;
+ if (!empty($element->parent->subpackage)) $this->page_dir .= PATH_DELIMITER . $element->parent->subpackage;
+ // registering stuff on the template
+ $this->page_data->assign("page",$this->getPageName($element) . '.html');
+ $this->page_data->assign("title","Docs for page ".$element->parent->getFile());
+ }
+
+ function getPageName(&$element)
+ {
+ if (phpDocumentor_get_class($element) == 'parserpage') return '_'.$element->getName();
+ return '_'.$element->parent->getName();
+ }
+
+ /**
+ * returns an array containing the class inheritance tree from the root object to the class
+ *
+ * @param parserClass class variable
+ * @return array Format: array(root,child,child,child,...,$class)
+ * @uses parserClass::getParentClassTree()
+ */
+
+ function generateFormattedClassTree($class)
+ {
+ $tree = $class->getParentClassTree($this);
+ $out = '';
+ if (count($tree) - 1)
+ {
+ $result = array($class->getName());
+ $parent = $tree[$class->getName()];
+ $distance[] = '';
+ while ($parent)
+ {
+ $x = $parent;
+ if (is_object($parent))
+ {
+ $subpackage = $parent->docblock->subpackage;
+ $package = $parent->docblock->package;
+ $x = $parent;
+ $x = $parent->getLink($this);
+ if (!$x) $x = $parent->getName();
+ }
+ $result[] =
+ $x;
+ $distance[] =
+ "\n%s|\n" .
+ "%s--";
+ if (is_object($parent))
+ $parent = $tree[$parent->getName()];
+ elseif (isset($tree[$parent]))
+ $parent = $tree[$parent];
+ }
+ $nbsp = ' ';
+ for($i=count($result) - 1;$i>=0;$i--)
+ {
+ $my_nbsp = '';
+ for($j=0;$j<count($result) - $i;$j++) $my_nbsp .= $nbsp;
+ $distance[$i] = sprintf($distance[$i],$my_nbsp,$my_nbsp);
+ }
+ return array('classes'=>array_reverse($result),'distance'=>array_reverse($distance));
+ } else
+ {
+ return array('classes'=>$class->getName(),'distance'=>array(''));
+ }
+ }
+
+ /** @access private */
+ function sortVar($a, $b)
+ {
+ return strnatcasecmp($a->getName(),$b->getName());
+ }
+
+ /** @access private */
+ function sortMethod($a, $b)
+ {
+ if ($a->isConstructor) return -1;
+ if ($b->isConstructor) return 1;
+ return strnatcasecmp($a->getName(),$b->getName());
+ }
+
+ /**
+ * returns a template-enabled array of class trees
+ *
+ * @param string $package package to generate a class tree for
+ * @see $roots, HTMLConverter::getRootTree()
+ */
+ function generateFormattedClassTrees($package)
+ {
+ if (!isset($this->roots['normal'][$package]) &&
+ !isset($this->roots['special'][$package])) {
+ return array();
+ }
+ $trees = array();
+ if (isset($this->roots['normal'][$package])) {
+ $roots = $this->roots['normal'][$package];
+ for($i=0;$i<count($roots);$i++)
+ {
+ $root = $this->classes->getClassByPackage($roots[$i], $package);
+ if ($root && $root->isInterface()) {
+ continue;
+ }
+ $trees[] = array('class' => $roots[$i],'class_tree' => "<ul>\n".$this->getRootTree($this->getSortedClassTreeFromClass($roots[$i],$package,''),$package)."</ul>\n");
+ }
+ }
+ if (isset($this->roots['special'][$package])) {
+ $roots = $this->roots['special'][$package];
+ foreach ($roots as $parent => $classes) {
+ $thistree = '';
+ foreach ($classes as $classinfo) {
+ $root = $this->classes->getClassByPackage($classinfo, $package);
+ if ($root && $root->isInterface()) {
+ continue;
+ }
+ $thistree .=
+ $this->getRootTree(
+ $this->getSortedClassTreeFromClass(
+ $classinfo,
+ $package,
+ ''),
+ $package,
+ true);
+ }
+ if (!$thistree) {
+ continue;
+ }
+ $trees[] = array(
+ 'class' => $parent,
+ 'class_tree' => "<ul>\n" . $thistree . "</ul>\n"
+ );
+ }
+ }
+ return $trees;
+ }
+
+ /**
+ * returns a template-enabled array of interface inheritance trees
+ *
+ * @param string $package package to generate a class tree for
+ * @see $roots, HTMLConverter::getRootTree()
+ */
+ function generateFormattedInterfaceTrees($package)
+ {
+ if (!isset($this->roots['normal'][$package]) &&
+ !isset($this->roots['special'][$package])) {
+ return array();
+ }
+ $trees = array();
+ if (isset($this->roots['normal'][$package])) {
+ $roots = $this->roots['normal'][$package];
+ for($i=0;$i<count($roots);$i++)
+ {
+ $root = $this->classes->getClassByPackage($roots[$i], $package);
+ if ($root && !$root->isInterface()) {
+ continue;
+ }
+ $trees[] = array('class' => $roots[$i],'class_tree' => "<ul>\n".$this->getRootTree($this->getSortedClassTreeFromClass($roots[$i],$package,''),$package)."</ul>\n");
+ }
+ }
+ if (isset($this->roots['special'][$package])) {
+ $roots = $this->roots['special'][$package];
+ foreach ($roots as $parent => $classes) {
+ $thistree = '';
+ foreach ($classes as $classinfo) {
+ $root = $this->classes->getClassByPackage($classinfo, $package);
+ if ($root && !$root->isInterface()) {
+ continue;
+ }
+ $thistree .=
+ $this->getRootTree(
+ $this->getSortedClassTreeFromClass(
+ $classinfo,
+ $package,
+ ''),
+ $package,
+ true);
+ }
+ if (!$thistree) {
+ continue;
+ }
+ $trees[] = array(
+ 'class' => $parent,
+ 'class_tree' => "<ul>\n" . $thistree . "</ul>\n"
+ );
+ }
+ }
+ return $trees;
+ }
+
+ /**
+ * return formatted class tree for the Class Trees page
+ *
+ * @param array $tree output from {@link getSortedClassTreeFromClass()}
+ * @param string $package package
+ * @param boolean $nounknownparent if true, an object's parent will not be checked
+ * @see Classes::$definitechild, generateFormattedClassTrees()
+ * @return string
+ */
+ function getRootTree($tree, $package, $noparent = false)
+ {
+ if (!$tree) return '';
+ $my_tree = '';
+ $cur = '#root';
+ $lastcur = array(false);
+ $kids = array();
+ $dopar = false;
+ if (!$noparent && $tree[$cur]['parent'])
+ {
+ $dopar = true;
+ if (!is_object($tree[$cur]['parent']))
+ {
+// debug("parent ".$tree[$cur]['parent']." not found");
+ $my_tree .= '<li>' . $tree[$cur]['parent'] .'<ul>';
+ }
+ else
+ {
+// debug("parent ".$this->returnSee($tree[$cur]['parent'])." in other package");
+ $root = $this->classes->getClassByPackage($tree[$cur]['parent']->name,
+ $package);
+ $my_tree .= '<li>' . $this->returnSee($tree[$cur]['parent']);
+ if ($tree[$cur]['parent']->package != $package) $my_tree .= ' <b>(Different package)</b><ul>';
+ }
+ }
+ do
+ {
+// fancy_debug($cur,$lastcur,$kids);
+ if (count($tree[$cur]['children']))
+ {
+// debug("$cur has children");
+ if (!isset($kids[$cur]))
+ {
+// debug("set $cur kids");
+ $kids[$cur] = 1;
+ $root = $this->classes->getClassByPackage(
+ $tree[$cur]['link']->name,
+ $tree[$cur]['link']->package);
+ if ($implements = $root->getImplements()) {
+ $my_tree .= '<li>'.$this->returnSee($tree[$cur]['link']) .
+ ' (implements ';
+ foreach ($implements as $i => $interface) {
+ if ($i && $i != count($implements) - 1) $my_tree .= ', ';
+ if ($link = $this->getLink('object ' . $interface)) {
+ $my_tree .= $this->returnSee($link);
+ } else {
+ $my_tree .= $interface;
+ }
+ }
+ $my_tree .= ')';
+ } else {
+ $my_tree .= '<li>'.$this->returnSee($tree[$cur]['link']);
+ }
+ $my_tree .= '<ul>'."\n";
+ }
+ array_push($lastcur,$cur);
+ list(,$cur) = each($tree[$cur]['children']);
+// var_dump('listed',$cur);
+ if ($cur)
+ {
+ $cur = $cur['package'] . '#' . $cur['class'];
+// debug("set cur to child $cur");
+// $my_tree .= '<li>'.$this->returnSee($tree[$cur]['link']);
+ continue;
+ } else
+ {
+// debug("end of children for $cur");
+ $cur = array_pop($lastcur);
+ $cur = array_pop($lastcur);
+ $my_tree .= '</ul></li>'."\n";
+ if ($dopar && ($cur == '#root' || !$cur)) $my_tree .= '</ul></li>';
+ }
+ } else
+ {
+// debug("$cur has no children");
+ $my_tree .= '<li>'.$this->returnSee($tree[$cur]['link'])."</li>";
+ if ($dopar && $cur == '#root') $my_tree .= '</ul></li>';
+ $cur = array_pop($lastcur);
+ }
+ } while ($cur);
+ return $my_tree;
+ }
+
+ /**
+ * Generate indexing information for given element
+ *
+ * @param parserElement descendant of parserElement
+ * @see generateElementIndex()
+ * @return array
+ */
+ function getIndexInformation($elt)
+ {
+ $Result['type'] = $elt->type;
+ $Result['file_name'] = $elt->file;
+ $Result['path'] = $elt->getPath();
+
+ if (isset($elt->docblock))
+ {
+ $Result['description'] = $elt->docblock->getSDesc($this);
+
+ if ($elt->docblock->hasaccess)
+ $Result['access'] = $elt->docblock->tags['access'][0]->value;
+ else
+ $Result['access'] = 'public';
+
+ $Result['abstract'] = isset ($elt->docblock->tags['abstract'][0]);
+ }
+ else
+ $Result['description'] = '';
+
+ $aa = $Result['description'];
+ if (!empty($aa)) $aa = "<br>&nbsp;&nbsp;&nbsp;&nbsp;$aa";
+
+ switch($elt->type)
+ {
+ case 'class':
+ $Result['name'] = $elt->getName();
+ $Result['title'] = 'Class';
+ $Result['link'] = $this->getClassLink($elt->getName(),
+ $elt->docblock->package,
+ $elt->getPath(),
+ $elt->getName());
+ $Result['listing'] = 'in file '.$elt->file.', class '.$Result['link']."$aa";
+ break;
+ case 'define':
+ $Result['name'] = $elt->getName();
+ $Result['title'] = 'Constant';
+ $Result['link'] = $this->getDefineLink($elt->getName(),
+ $elt->docblock->package,
+ $elt->getPath(),
+ $elt->getName());
+ $Result['listing'] = 'in file '.$elt->file.', constant '.$Result['link']."$aa";
+ break;
+ case 'global':
+ $Result['name'] = $elt->getName();
+ $Result['title'] = 'Global';
+ $Result['link'] = $this->getGlobalLink($elt->getName(),
+ $elt->docblock->package,
+ $elt->getPath(),
+ $elt->getName());
+ $Result['listing'] = 'in file '.$elt->file.', global variable '.$Result['link']."$aa";
+ break;
+ case 'function':
+ $Result['name'] = $elt->getName();
+ $Result['title'] = 'Function';
+ $Result['link'] = $this->getFunctionLink($elt->getName(),
+ $elt->docblock->package,
+ $elt->getPath(),
+ $elt->getName().'()');
+ $Result['listing'] = 'in file '.$elt->file.', function '.$Result['link']."$aa";
+ break;
+ case 'method':
+ $Result['name'] = $elt->getName();
+ $Result['title'] = 'Method';
+ $Result['link'] = $this->getMethodLink($elt->getName(),
+ $elt->class,
+ $elt->docblock->package,
+ $elt->getPath(),
+ $elt->class.'::'.$elt->getName().'()'
+ );
+ if ($elt->isConstructor) $Result['constructor'] = 1;
+ $Result['listing'] = 'in file '.$elt->file.', method '.$Result['link']."$aa";
+ break;
+ case 'var':
+ $Result['name'] = $elt->getName();
+ $Result['title'] = 'Variable';
+ $Result['link'] = $this->getVarLink($elt->getName(),
+ $elt->class,
+ $elt->docblock->package,
+ $elt->getPath(),
+ $elt->class.'::'.$elt->getName());
+ $Result['listing'] = 'in file '.$elt->file.', variable '.$Result['link']."$aa";
+ break;
+ case 'const':
+ $Result['name'] = $elt->getName();
+ $Result['title'] = 'Class Constant';
+ $Result['link'] = $this->getConstLink($elt->getName(),
+ $elt->class,
+ $elt->docblock->package,
+ $elt->getPath(),
+ $elt->class.'::'.$elt->getName());
+ $Result['listing'] = 'in file '.$elt->file.', class constant '.$Result['link']."$aa";
+ break;
+ case 'page':
+ $Result['name'] = $elt->getFile();
+ $Result['title'] = 'Page';
+ $Result['link'] = $this->getPageLink($elt->getFile(),
+ $elt->package,
+ $elt->getPath(),
+ $elt->getFile());
+ $Result['listing'] = 'procedural page '.$Result['link'];
+ break;
+ case 'include':
+ $Result['name'] = $elt->getName();
+ $Result['title'] = 'Include';
+ $Result['link'] = $elt->getValue();
+ $Result['listing'] = 'include '.$Result['name'];
+ break;
+ }
+
+ return $Result;
+ }
+ /**
+ * Generate alphabetical index of all elements
+ *
+ * @see $elements, walk()
+ */
+ function generateElementIndex()
+ {
+ $elementindex = array();
+ $letters = array();
+ $used = array();
+ foreach($this->elements as $letter => $nutoh)
+ {
+ foreach($this->elements[$letter] as $i => $yuh)
+ {
+ if ($this->elements[$letter][$i]->type != 'include')
+ {
+ if (!isset($used[$letter]))
+ {
+ $letters[]['letter'] = $letter;
+ $elindex['letter'] = $letter;
+ $used[$letter] = 1;
+ }
+
+ $elindex['index'][] = $this->getIndexInformation($this->elements[$letter][$i]);
+ }
+ }
+ if (isset($elindex['index']))
+ {
+ $elementindex[] = $elindex;
+ } else
+ {
+ unset($letters[count($letters) - 1]);
+ }
+ $elindex = array();
+ }
+ return array($elementindex,$letters);
+ }
+
+ function copyMediaRecursively($media,$targetdir,$subdir = '')
+ {
+ $versionControlDirectories = array ('CVS', 'media/CVS', 'media\\CVS', '.svn', 'media/.svn', 'media\\.svn');
+ if (!is_array($media)) {
+ return;
+ }
+ foreach($media as $dir => $files)
+ {
+ if ($dir === '/')
+ {
+ $this->copyMediaRecursively($files,$targetdir);
+ } else
+ {
+ if (!is_numeric($dir))
+ {
+ if (in_array($dir, $versionControlDirectories))
+ {
+ // skip it entirely
+ }
+ else
+ {
+ // create the subdir
+ phpDocumentor_out("creating $targetdir" . PATH_DELIMITER . "$dir\n");
+ Converter::setTargetDir($targetdir . PATH_DELIMITER . $dir);
+ if (!empty($subdir))
+ {
+ $subdir .= PATH_DELIMITER;
+ }
+ $this->copyMediaRecursively($files,"$targetdir/$dir",$subdir . $dir);
+ }
+ }
+ else
+ {
+ // copy the file
+ phpDocumentor_out("copying $targetdir" . PATH_DELIMITER . $files['file']."\n");
+ $this->copyFile($files['file'],$subdir);
+ }
+ }
+ }
+ }
+
+ /**
+ * calls the converter setTargetDir, and then copies any template images and the stylesheet if they haven't been copied
+ * @see Converter::setTargetDir()
+ */
+ function setTargetDir($dir)
+ {
+ Converter::setTargetDir($dir);
+ if ($this->wrote) return;
+ $this->wrote = true;
+ $template_images = array();
+ $stylesheets = array();
+ $tdir = $dir;
+ $dir = $this->templateDir;
+ $this->templateDir = $this->templateDir.'templates/';
+ $info = new Io;
+ $this->copyMediaRecursively($info->getDirTree($this->templateDir.'media',$this->templateDir),$tdir);
+ }
+
+ /**
+ * Generate alphabetical index of all elements by package and subpackage
+ *
+ * @param string $package name of a package
+ * @see $pkg_elements, walk(), generatePkgElementIndexes()
+ */
+ function generatePkgElementIndex($package)
+ {
+// var_dump($this->pkg_elements[$package]);
+ $elementindex = array();
+ $letters = array();
+ $letterind = array();
+ $used = array();
+ $subp = '';
+ foreach($this->pkg_elements[$package] as $subpackage => $els)
+ {
+ if (empty($els)) continue;
+ if (!empty($subpackage)) $subp = " (<b>subpackage:</b> $subpackage)"; else $subp = '';
+ foreach($els as $letter => $yuh)
+ {
+ foreach($els[$letter] as $i => $yuh)
+ {
+ if ($els[$letter][$i]->type != 'include')
+ {
+ if (!isset($used[$letter]))
+ {
+ $letters[]['letter'] = $letter;
+ $letterind[$letter] = count($letters) - 1;
+ $used[$letter] = 1;
+ }
+ $elindex[$letter]['letter'] = $letter;
+
+ $elindex[$letter]['index'][] = $this->getIndexInformation($els[$letter][$i]);
+ }
+ }
+ }
+ }
+ ksort($elindex);
+ usort($letters,'HTMLframes_lettersort');
+ if (isset($elindex))
+ {
+ while(list($letter,$tempel) = each($elindex))
+ {
+ if (!isset($tempel))
+ {
+ unset($letters[$letterind[$tempel['letter']]]);
+ } else
+ $elementindex[] = $tempel;
+ }
+ } else $letters = array();
+ return array($elementindex,$letters);
+ }
+
+ /**
+ *
+ * @see generatePkgElementIndex()
+ */
+ function generatePkgElementIndexes()
+ {
+ $packages = array();
+ $package_names = array();
+ $pkg = array();
+ $letters = array();
+ foreach($this->pkg_elements as $package => $trash)
+ {
+ $pkgs['package'] = $package;
+ $pkg['package'] = $package;
+ list($pkg['pindex'],$letters[$package]) = $this->generatePkgElementIndex($package);
+ if (count($pkg['pindex']))
+ {
+ $packages[] = $pkg;
+ $package_names[] = $pkgs;
+ }
+ unset($pkgs);
+ unset($pkg);
+ }
+ foreach($packages as $i => $package)
+ {
+ $pnames = array();
+ for($j=0;$j<count($package_names);$j++)
+ {
+ if ($package_names[$j]['package'] != $package['package']) $pnames[] = $package_names[$j];
+ }
+ $packages[$i]['packageindexes'] = $pnames;
+ }
+ return array($packages,$package_names,$letters);
+ }
+
+ /**
+ * @param string name of class
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @param boolean return just the URL, or enclose it in an html a tag
+ * @return mixed false if not found, or an html a link to the class's documentation
+ * @see parent::getClassLink()
+ */
+ function getClassLink($expr,$package, $file = false,$text = false, $with_a = true)
+ {
+ $a = Converter::getClassLink($expr,$package,$file);
+ if (!$a) return false;
+ return $this->returnSee($a, $text, $with_a);
+ }
+
+ /**
+ * @param string name of function
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @param boolean return just the URL, or enclose it in an html a tag
+ * @return mixed false if not found, or an html a link to the function's documentation
+ * @see parent::getFunctionLink()
+ */
+ function getFunctionLink($expr,$package, $file = false,$text = false)
+ {
+ $a = Converter::getFunctionLink($expr,$package,$file);
+ if (!$a) return false;
+ return $this->returnSee($a, $text);
+ }
+
+ /**
+ * @param string name of define
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @param boolean return just the URL, or enclose it in an html a tag
+ * @return mixed false if not found, or an html a link to the define's documentation
+ * @see parent::getDefineLink()
+ */
+ function getDefineLink($expr,$package, $file = false,$text = false)
+ {
+ $a = Converter::getDefineLink($expr,$package,$file);
+ if (!$a) return false;
+ return $this->returnSee($a, $text);
+ }
+
+ /**
+ * @param string name of global variable
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @param boolean return just the URL, or enclose it in an html a tag
+ * @return mixed false if not found, or an html a link to the global variable's documentation
+ * @see parent::getGlobalLink()
+ */
+ function getGlobalLink($expr,$package, $file = false,$text = false)
+ {
+ $a = Converter::getGlobalLink($expr,$package,$file);
+ if (!$a) return false;
+ return $this->returnSee($a, $text);
+ }
+
+ /**
+ * @param string name of procedural page
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @param boolean return just the URL, or enclose it in an html a tag
+ * @return mixed false if not found, or an html a link to the procedural page's documentation
+ * @see parent::getPageLink()
+ */
+ function getPageLink($expr,$package, $path = false,$text = false)
+ {
+ $a = Converter::getPageLink($expr,$package,$path);
+ if (!$a) return false;
+ return $this->returnSee($a, $text);
+ }
+
+ /**
+ * @param string name of method
+ * @param string class containing method
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @param boolean return just the URL, or enclose it in an html a tag
+ * @return mixed false if not found, or an html a link to the method's documentation
+ * @see parent::getMethodLink()
+ */
+ function getMethodLink($expr,$class,$package, $file = false,$text = false)
+ {
+ $a = Converter::getMethodLink($expr,$class,$package,$file);
+ if (!$a) return false;
+ return $this->returnSee($a, $text);
+ }
+
+ /**
+ * @param string name of var
+ * @param string class containing var
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @param boolean return just the URL, or enclose it in an html a tag
+ * @return mixed false if not found, or an html a link to the var's documentation
+ * @see parent::getVarLink()
+ */
+ function getVarLink($expr,$class,$package, $file = false,$text = false)
+ {
+ $a = Converter::getVarLink($expr,$class,$package,$file);
+ if (!$a) return false;
+ return $this->returnSee($a, $text);
+ }
+
+ /**
+ * @param string name of class constant
+ * @param string class containing class constant
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @param boolean return just the URL, or enclose it in an html a tag
+ * @return mixed false if not found, or an html a link to the var's documentation
+ * @see parent::getVarLink()
+ */
+ function getConstLink($expr,$class,$package, $file = false,$text = false)
+ {
+ $a = Converter::getConstLink($expr,$class,$package,$file);
+ if (!$a) return false;
+ return $this->returnSee($a, $text);
+ }
+
+ /**
+ * does a nat case sort on the specified second level value of the array
+ *
+ * @param mixed $a
+ * @param mixed $b
+ * @return int
+ */
+ function rcNatCmp ($a, $b)
+ {
+ $aa = strtoupper($a[$this->rcnatcmpkey]);
+ $bb = strtoupper($b[$this->rcnatcmpkey]);
+
+ return strnatcasecmp($aa, $bb);
+ }
+
+ /**
+ * does a nat case sort on the specified second level value of the array.
+ * this one puts constructors first
+ *
+ * @param mixed $a
+ * @param mixed $b
+ * @return int
+ */
+ function rcNatCmp1 ($a, $b)
+ {
+ $aa = strtoupper($a[$this->rcnatcmpkey]);
+ $bb = strtoupper($b[$this->rcnatcmpkey]);
+
+ if (strpos($aa,'CONSTRUCTOR') === 0)
+ {
+ return -1;
+ }
+ if (strpos($bb,'CONSTRUCTOR') === 0)
+ {
+ return 1;
+ }
+ if (strpos($aa,strtoupper($this->class)) === 0)
+ {
+ return -1;
+ }
+ if (strpos($bb,strtoupper($this->class)) === 0)
+ {
+ return -1;
+ }
+ return strnatcasecmp($aa, $bb);
+ }
+
+ /**
+ * This function is not used by HTMLdefaultConverter, but is required by Converter
+ */
+ function Output()
+ {
+ }
+}
+
+/**
+ * @access private
+ * @global string name of the package to set as the first package
+ */
+function HTMLframes_pindexcmp($a, $b)
+{
+ global $phpDocumentor_DefaultPackageName;
+ if ($a['title'] == $phpDocumentor_DefaultPackageName) return -1;
+ if ($b['title'] == $phpDocumentor_DefaultPackageName) return 1;
+ return strnatcasecmp($a['title'],$b['title']);
+}
+
+/** @access private */
+function HTMLframes_lettersort($a, $b)
+{
+ return strnatcasecmp($a['letter'],$b['letter']);
+}
+
+/** @access private */
+function HTMLframes_outputfilter($src, &$smarty)
+{
+ return str_replace('{$subdir}',$smarty->_tpl_vars['subdir'],$src);
+}
+?>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/options.ini b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/options.ini
new file mode 100755
index 00000000..084809be
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/options.ini
@@ -0,0 +1,577 @@
+preservedocbooktags = false
+
+;; used to highlight the {@source} inline tag, @filesource tag, and @example tag
+[highlightSourceTokens]
+;; format:
+;; T_CONSTANTNAME = open
+;; /T_CONSTANTNAME = close
+
+T_INCLUDE = <span class="src-inc">
+/T_INCLUDE = </span>
+T_INCLUDE_ONCE = <span class="src-inc">
+/T_INCLUDE_ONCE = </span>
+T_REQUIRE_ONCE = <span class="src-inc">
+/T_REQUIRE_ONCE = </span>
+T_REQUIRE_ONCE = <span class="src-inc">
+/T_REQUIRE_ONCE = </span>
+
+T_CONSTANT_ENCAPSED_STRING = <span class="src-str">
+/T_CONSTANT_ENCAPSED_STRING = </span>
+T_STRING_VARNAME = <span class="src-str">
+/T_STRING_VARNAME = </span>
+
+T_STRING = <span class="src-id">
+/T_STRING = </span>
+
+T_DNUMBER = <span class="src-num">
+/T_DNUMBER = </span>
+T_LNUMBER = <span class="src-num">
+/T_LNUMBER = </span>
+
+T_VARIABLE = <span class="src-var">
+/T_VARIABLE = </span>
+
+T_COMMENT = <span class="src-comm">
+/T_COMMENT = </span>
+T_ML_COMMENT = <span class="src-comm">
+/T_ML_COMMENT = </span>
+
+T_OBJECT_OPERATOR = <span class="src-sym">
+/T_OBJECT_OPERATOR = </span>
+
+T_ABSTRACT = <span class="src-key">
+/T_ABSTRACT = </span>
+T_CLONE = <span class="src-key">
+/T_CLONE = </span>
+T_HALT_COMPILER = <span class="src-key">
+/T_HALT_COMPILER = </span>
+T_ARRAY = <span class="src-key">
+/T_ARRAY = </span>
+T_AS = <span class="src-key">
+/T_AS = </span>
+T_BREAK = <span class="src-key">
+/T_BREAK = </span>
+T_CLASS = <span class="src-key">
+/T_CLASS = </span>
+T_CASE = <span class="src-key">
+/T_CASE = </span>
+T_CONST = <span class="src-key">
+/T_CONST = </span>
+T_CONTINUE = <span class="src-key">
+/T_CONTINUE = </span>
+T_DECLARE = <span class="src-key">
+/T_DECLARE = </span>
+T_DEFAULT = <span class="src-key">
+/T_DEFAULT = </span>
+T_ELSE = <span class="src-key">
+/T_ELSE = </span>
+T_ELSEIF = <span class="src-key">
+/T_ELSEIF = </span>
+T_EMPTY = <span class="src-key">
+/T_EMPTY = </span>
+T_ENDDECLARE = <span class="src-key">
+/T_ENDDECLARE = </span>
+T_ENDFOR = <span class="src-key">
+/T_ENDFOR = </span>
+T_ENDSWITCH = <span class="src-key">
+/T_ENDSWITCH = </span>
+T_ENDFOREACH = <span class="src-key">
+/T_ENDFOREACH = </span>
+T_ENDIF = <span class="src-key">
+/T_ENDIF = </span>
+T_ENDWHILE = <span class="src-key">
+/T_ENDWHILE = </span>
+T_EXIT = <span class="src-key">
+/T_EXIT = </span>
+T_EXTENDS = <span class="src-key">
+/T_EXTENDS = </span>
+T_FINAL = <span class="src-key">
+/T_FINAL = </span>
+T_FOR = <span class="src-key">
+/T_FOR = </span>
+T_FOREACH = <span class="src-key">
+/T_FOREACH = </span>
+T_FUNCTION = <span class="src-key">
+/T_FUNCTION = </span>
+T_GLOBAL = <span class="src-key">
+/T_GLOBAL = </span>
+T_IF = <span class="src-key">
+/T_IF = </span>
+T_IMPLEMENTS = <span class="src-key">
+/T_IMPLEMENTS = </span>
+T_INTERFACE = <span class="src-key">
+/T_INTERFACE = </span>
+T_LOGICAL_AND = <span class="src-key">
+/T_LOGICAL_AND = </span>
+T_LOGICAL_OR = <span class="src-key">
+/T_LOGICAL_OR = </span>
+T_LOGICAL_XOR = <span class="src-key">
+/T_LOGICAL_XOR = </span>
+T_NEW = <span class="src-key">
+/T_NEW = </span>
+T_PRIVATE = <span class="src-key">
+/T_PRIVATE = </span>
+T_PROTECTED = <span class="src-key">
+/T_PROTECTED = </span>
+T_PUBLIC = <span class="src-key">
+/T_PUBLIC = </span>
+T_RETURN = <span class="src-key">
+/T_RETURN = </span>
+T_STATIC = <span class="src-key">
+/T_STATIC = </span>
+T_SWITCH = <span class="src-key">
+/T_SWITCH = </span>
+T_VAR = <span class="src-key">
+/T_VAR = </span>
+T_WHILE = <span class="src-key">
+/T_WHILE = </span>
+
+T_DOUBLE_COLON = <span class="src-sym">
+/T_DOUBLE_COLON = </span>
+
+T_OPEN_TAG = <span class="src-php">
+/T_OPEN_TAG = </span>
+T_OPEN_TAG_WITH_ECHO = <span class="src-php">
+/T_OPEN_TAG_WITH_ECHO = </span>
+T_CLOSE_TAG = <span class="src-php">
+/T_CLOSE_TAG = </span>
+
+
+[highlightSource]
+;; this is for highlighting things that aren't tokens like "&"
+;; format:
+;; word = open
+;; /word = close
+@ = <span class="src-sym">
+/@ = </span>
+& = <span class="src-sym">
+/& = </span>
+[ = <span class="src-sym">
+/[ = </span>
+] = <span class="src-sym">
+/] = </span>
+! = <span class="src-sym">
+/! = </span>
+";" = <span class="src-sym">
+/; = </span>
+( = <span class="src-sym">
+/( = </span>
+) = <span class="src-sym">
+/) = </span>
+, = <span class="src-sym">
+/, = </span>
+{ = <span class="src-sym">
+/{ = </span>
+} = <span class="src-sym">
+/} = </span>
+""" = <span class="src-str">
+/" = </span>
+
+[highlightDocBlockSourceTokens]
+;; this is for docblock tokens, using by phpDocumentor_HighlightParser
+;; tagphptype is for "string" in @param string description, for example
+docblock = <span class="src-doc">
+/docblock = </span>
+tagphptype = <span class="src-doc-type">
+/tagphptype = </span>
+tagvarname = <span class="src-doc-var">
+/tagvarname = </span>
+coretag = <span class="src-doc-coretag">
+/coretag = </span>
+tag = <span class="src-doc-tag">
+/tag = </span>
+inlinetag = <span class="src-doc-inlinetag">
+/inlinetag = </span>
+internal = <span class="src-doc-internal">
+/internal = </span>
+closetemplate = <span class="src-doc-close-template">
+/closetemplate = </span>
+docblocktemplate = <span class="src-doc-template">
+/docblocktemplate = </span>
+
+[highlightTutorialSourceTokens]
+;; this is for XML DocBook-based tutorials, highlighted by phpDocumentor_TutorialHighlightParser
+;; <tag>
+opentag = <span class="tute-tag">
+/opentag = </span>
+;; </tag>
+closetag = <span class="tute-tag">
+/closetag = </span>
+;; <tag attribute="value">
+attribute = <span class="tute-attribute-name">
+/attribute = </span>
+;; <tag attribute="value">
+attributevalue = <span class="tute-attribute-value">
+/attributevalue = </span>
+;; &entity;
+entity = <span class="tute-entity">
+/entity = </span>
+;; <!-- comment -->
+comment = <span class="tute-comment">
+/comment = </span>
+;; {@inline tag}
+itag = <span class="tute-inline-tag">
+/itag = </span>
+
+;; used for translation of html in DocBlocks
+[desctranslate]
+ul = <ul>
+/ul = </ul>
+ol = <ol>
+/ol = </ol>
+li = <li>
+/li = </li>
+code =
+/code =
+var = <var>
+/var = </var>
+samp = <samp>
+/samp = </samp>
+kbd = <kbd>
+/kbd = </kbd>
+pre = <pre>
+/pre = </pre>
+p = <p>
+/p = </p>
+b = <strong>
+/b = </strong>
+i = <em>
+/i = </em>
+br = <br />
+
+[ppage]
+;; this is the DocBook package page translation section. All DocBook tags
+;; that have a corresponding html tag must be listed here. Entities should
+;; also be listed here
+;;
+;; examples:
+;; 1)
+;; tagname = newtagname
+;;
+;; This is the simplest case, where all attributes will be added into the
+;; starting tag and the ending tag will be html/xml style </tranlatedtagname>
+;; <tagname></tagname> becomes <newtagname></newtagname> and
+;; <tagname attr="value"></tagname> becomes
+;; <newtagname attr="value"></newtagname>
+;;
+;; 2)
+;; tagname = newtagname
+;; tagname->attr = newattrname
+;;
+;; in this case, everything will be like the first case, except tags like:
+;; <tagname attr="value"></tagname> will become
+;; <newtagname newattrname="value"></newtagname>
+;;
+;; 3)
+;; tagname = newtagname
+;; tagname->attr = newattrname
+;; tagname->attr+value = newvalue
+;;
+;; in this case, the value is also translated to another. This can be useful
+;; for instances such as focus="middle" changing to align="center" or something
+;; of that nature.
+;; <tagname attr="value"></tagname> will become
+;; <newtagname newattrname="newvalue"></newtagname>
+;;
+;; 4)
+;; tagname = newtagname
+;; tagname->attr1 = newattrname
+;; tagname->attr2 = newattrname
+;; tagname->attr1+value|attr2+value = newvalue
+;;
+;; in this case, two attributes combine to make one new attribute, and the combined
+;; value is translated into a new value
+;; <tagname attr1="value1" attr2="value2"></tagname> will become
+;; <newtagname newattrname="newvalue"></newtagname>
+;;
+;; 5)
+;; tagname = newtagname
+;; tagname!attr = dummy
+;;
+;; here, the attribute will be ignored. dummy is not used and may be any value
+;; <tagname attr="value"></tagname> will become
+;; <newtagname></newtagname>
+;;
+;; 6)
+;; tagname = newtagname
+;; tagname! = dummy
+;;
+;; here, all attributes will be ignored. dummy is not used and may be any value
+;; <tagname attr1="value" attr2="foo"></tagname> will become
+;; <newtagname></newtagname>
+;;
+;; 7)
+;; tagname = newtagname
+;; tagname/ = 1
+;;
+;; here, the tag will be translated as a single tag with no closing tag, and all
+;; attributes
+;; <tagname attr="val">{text text}</tagname> will become
+;; <newtagname attr="val" />
+;;
+;; 8)
+;; tagname = <starttaginfo />
+;; /tagname = closetagtext
+;;
+;; in this case, the text <starttaginfo> will be inserted exactly as entered for
+;; <tagname> and closetagtext for </tagname>
+;; <tagname attr="val"></tagname> will become
+;; <starttaginfo />closetagtext
+;;
+;; 9)
+;; $attr$my_attribute = newattrname
+;;
+;; tagname = newtagname
+;;
+;; in this case, all occurences of my_attribute in any tag will be changed to
+;; newattrname. This is useful for changing things like role="php" to
+;; class="php," for example. Note that the text "$attr$" MUST be on the line
+;; start for phpDocumentor to recognize it.
+;;
+;; 10)
+;; &entity; = translation text
+;; &quot; = &quot;
+;; &quot; = """
+;; &lt; = <
+;;
+;; Use this to control translation of entities to their appropriate values
+
+&nbsp; = &nbsp;
+&quot; = &quot;
+&rdquo; = &rdquo;
+&ldquo; = &ldquo;
+&amp; = &amp;
+&lt; = &lt;
+&gt; = &gt;
+&copy; = &copy;
+
+
+$attr$role = class
+
+abbrev = abbr
+
+blockquote = blockquote
+
+arg = span
+arg->choice = class
+
+author = <span class="author">
+/author = </span>
+author! = 0
+
+authorblurb = <div class="author-blurb">
+/authorblurb = </div>
+
+authorgroup = <div class="authors"><h2 class="title">Authors</h2>
+/authorgroup = </div>
+authorgroup! = 0
+
+caution = <span class="warning">
+/caution = </span>
+caution! = 0
+
+cmdsynopsis = <div class="cmd-synopsis">
+/cmdsynopsis = </div>
+
+command = <span class="cmd-title">
+/command = </span>
+
+copyright = <div class="notes">
+/copyright = </div>
+
+emphasis = em
+
+example = <div class="src-code">
+/example = </div>
+example! = 0
+
+function =
+/function = ()
+
+formalpara = p
+
+graphic = img
+graphic->fileref = src
+graphic/ =
+
+important = strong
+
+informalequation = blockquote
+
+informalexample = div
+
+inlineequation = em
+
+itemizedlist = ul
+
+listitem = li
+
+literal = code
+
+literallayout = span
+
+option = " "
+/option =
+
+orderedlist = ol
+
+para = p
+
+programlisting = <div class="src-code">
+/programlisting = </div>
+programlisting! = 0
+
+refentry = div
+
+refnamediv = <div class="ref-title-box">
+/refnamediv = </div>
+refnamediv! = 0
+
+refname = <h1 class="ref-title">
+/refname = </h1>
+
+refpurpose = <h2 class="ref-purpose">
+/refpurpose = </h2>
+
+refsynopsisdiv = <div class="ref-synopsis">
+/refsynopsisdiv = </div>
+refsynopsisdiv! = 0
+
+refsect1 = span
+
+refsect2 = span
+
+refsect3 =
+/refsect3 = <br />
+
+releaseinfo = <div class="release-info">(
+/releaseinfo = )</div>
+
+simpara =
+/simpara = <br />
+simpara! = 0
+
+subscript = sub
+
+superscript = super
+
+table = table
+
+table->colsep = rules
+table->rowsep = rules
+table->colsep+1|rowsep+1 =all
+table->colsep+1|rowsep+0 =cols
+table->colsep+0|rowsep+1 =rows
+
+table->frame =frame
+table->frame+all =border
+table->frame+none =void
+table->frame+sides =vsides
+table->frame+top =above
+table->frame+topbot =hsides
+
+thead = thead
+
+tfoot = tfoot
+
+tbody = tbody
+
+colspec = col
+
+tgroup = colgroup
+tgroup/ = 1
+tgroup->cols = span
+
+row = tr
+
+entry = td
+entry->morerows = colspan
+entry->morerows+1 =2
+entry->morerows+2 =3
+entry->morerows+3 =4
+entry->morerows+4 =5
+entry->morerows+5 =6
+entry->morerows+6 =7
+entry->morerows+7 =8
+entry->morerows+8 =9
+entry->morerows+9 =10
+entry->morerows+10 =11
+;; add more if you need more colspans
+
+warning = <span class="warning">
+/warning = </span>
+warning! = 0
+
+;; now begins the attributes that should be tags in cdata
+[$attr$id]
+open = a
+;close = /a
+cdata! = true
+quotevalues = true
+separator = "="
+;separateall = true
+$id = name
+
+;; now begins the sections that deal with <title>
+[refsynopsisdiv_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h1 class="title">
+close = </h1>
+
+[refsect1_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h2 class="title">
+close = </h2>
+
+[refsect2_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h3 class="title">
+close = </h3>
+
+[refsect3_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h4 class="title">
+close = </h4>
+
+[para_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <div class="title">
+close = </div>
+
+[formalpara_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <div class="title">
+close = </div>
+
+[example_title]
+;tag_attr = true
+;attr_name = title
+;cdata_start = true
+cdata_end = true
+open = </td></tr><tr><td><strong>
+close = </strong>
+
+[table_title]
+;tag_attr = true
+;attr_name = true
+cdata_start = true
+open = <caption>
+close = </caption>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/basicindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/basicindex.tpl
new file mode 100755
index 00000000..951ee264
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/basicindex.tpl
@@ -0,0 +1,47 @@
+<div class="index-letter-menu">
+{section name=letter loop=$letters}
+ <a class="index-letter" href="{$indexname}.html#{$letters[letter].letter}">{$letters[letter].letter}</a>
+{/section}
+</div>
+
+{section name=index loop=$index}
+ <a name="{$index[index].letter}"></a>
+ <div class="index-letter-section">
+ <div style="float: left" class="index-letter-title">{$index[index].letter}</div>
+ <div style="float: right"><a href="#top">top</a></div>
+ <div style="clear: both"></div>
+ </div>
+ <dl>
+ {section name=contents loop=$index[index].index}
+ <dt class="field">
+ {if ($index[index].index[contents].title == "Variable")}
+ <span class="var-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Global")}
+ <span class="var-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Method")}
+ <span class="method-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Function")}
+ <span class="method-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Constant")}
+ <span class="const-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Page") || ($index[index].index[contents].title == "Include")}
+ <span class="include-title">{$index[index].index[contents].name}</span>
+ {else}
+ {$index[index].index[contents].name}
+ {/if}
+ </dt>
+ <dd class="index-item-body">
+ <div class="index-item-details">{$index[index].index[contents].link} in {$index[index].index[contents].file_name}</div>
+ {if $index[index].index[contents].description}
+ <div class="index-item-description">{$index[index].index[contents].description}</div>
+ {/if}
+ </dd>
+ {/section}
+ </dl>
+{/section}
+
+<div class="index-letter-menu">
+{section name=letter loop=$letters}
+ <a class="index-letter" href="{$indexname}.html#{$letters[letter].letter}">{$letters[letter].letter}</a>
+{/section}
+</div>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/blank.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/blank.tpl
new file mode 100755
index 00000000..6a05f27e
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/blank.tpl
@@ -0,0 +1,13 @@
+<html>
+<head>
+ <title>{$maintitle}</title>
+ <link rel="stylesheet" href="{$subdir}media/stylesheet.css" />
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+</head>
+<body>
+<div align="center"><h1>{$maintitle}</h1></div>
+<b>Welcome to {$package}!</b><br />
+<br />
+This documentation was generated by <a href="{$phpdocwebsite}">phpDocumentor v{$phpdocversion}</a><br />
+</body>
+</html> \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/class.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/class.tpl
new file mode 100755
index 00000000..9ab7c455
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/class.tpl
@@ -0,0 +1,429 @@
+{include file="header.tpl" top3=true}
+
+<h2 class="class-name">{if $is_interface}Interface{else}Class{/if} {$class_name}</h2>
+
+<a name="sec-description"></a>
+<div class="info-box">
+ <div class="info-box-title">Description</div>
+ <div class="nav-bar">
+ {if $children || $vars || $ivars || $methods || $imethods || $consts || $iconsts }
+ <span class="disabled">Description</span> |
+ {/if}
+ {if $children}
+ <a href="#sec-descendents">Descendents</a>
+ {if $vars || $ivars || $methods || $imethods || $consts || $iconsts}|{/if}
+ {/if}
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ {if $methods || $imethods}|{/if}
+ {/if}
+ {if $methods || $imethods}
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {if $implements}
+ <p class="implements">
+ Implements interfaces:
+ <ul>
+ {foreach item="int" from=$implements}<li>{$int}</li>{/foreach}
+ </ul>
+ </p>
+ {/if}
+ {include file="docblock.tpl" type="class" sdesc=$sdesc desc=$desc}
+ <p class="notes">
+ Located in <a class="field" href="{$page_link}">{$source_location}</a> (line <span class="field">{if $class_slink}{$class_slink}{else}{$line_number}{/if}</span>)
+ </p>
+
+ {if $tutorial}
+ <hr class="separator" />
+ <div class="notes">Tutorial: <span class="tutorial">{$tutorial}</span></div>
+ {/if}
+
+ <pre>{section name=tree loop=$class_tree.classes}{$class_tree.classes[tree]}{$class_tree.distance[tree]}{/section}</pre>
+
+ {if $conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with classes:</span><br />
+ {section name=me loop=$conflicts.conflicts}
+ {$conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+ </div>
+</div>
+
+{if $children}
+ <a name="sec-descendents"></a>
+ <div class="info-box">
+ <div class="info-box-title">Direct descendents</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ <span class="disabled">Descendents</span>
+ {if $vars || $ivars || $methods || $imethods}|{/if}
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ {if $methods || $imethods}|{/if}
+ {/if}
+ {if $methods || $imethods}
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <table cellpadding="2" cellspacing="0" class="class-table">
+ <tr>
+ <th class="class-table-header">Class</th>
+ <th class="class-table-header">Description</th>
+ </tr>
+ {section name=kids loop=$children}
+ <tr>
+ <td style="padding-right: 2em">{$children[kids].link}</td>
+ <td>
+ {if $children[kids].sdesc}
+ {$children[kids].sdesc}
+ {else}
+ {$children[kids].desc}
+ {/if}
+ </td>
+ </tr>
+ {/section}
+ </table>
+ </div>
+ </div>
+{/if}
+
+{if $consts}
+ <a name="sec-const-summary"></a>
+ <div class="info-box">
+ <div class="info-box-title">Class Constant Summary</span></div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendants</a> |
+ {/if}
+ <span class="disabled">Constants</span> (<a href="#sec-consts">details</a>)
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ |
+ {/if}
+ {if $methods || $imethods}
+ |
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <div class="const-summary">
+ {section name=consts loop=$consts}
+ <div class="const-title">
+ <img src="{$subdir}media/images/Constant.png" alt=" " />
+ <a href="#{$consts[consts].const_name}" title="details" class="const-name">{$consts[consts].const_name}</a> = <span class="var-type">{$consts[consts].const_value}</span>
+
+ </div>
+ {/section}
+ </div>
+ </div>
+ </div>
+{/if}
+
+{if $vars}
+ <a name="sec-var-summary"></a>
+ <div class="info-box">
+ <div class="info-box-title">Variable Summary</span></div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendents</a> |
+ {/if}
+ <span class="disabled">Vars</span> (<a href="#sec-vars">details</a>)
+ {if $methods || $imethods}
+ |
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <div class="var-summary">
+ {section name=vars loop=$vars}
+ {if $vars[vars].static}
+ <div class="var-title">
+ static <span class="var-type">{$vars[vars].var_type}</span>
+ <a href="#{$vars[vars].var_name}" title="details" class="var-name">{$vars[vars].var_name}</a>
+ </div>
+ {/if}
+ {/section}
+ {section name=vars loop=$vars}
+ {if !$vars[vars].static}
+ <div class="var-title">
+ <span class="var-type">{$vars[vars].var_type}</span>
+ <a href="#{$vars[vars].var_name}" title="details" class="var-name">{$vars[vars].var_name}</a>
+ </div>
+ {/if}
+ {/section}
+ </div>
+ </div>
+ </div>
+{/if}
+
+{if $methods}
+ <a name="sec-method-summary"></a>
+ <div class="info-box">
+ <div class="info-box-title">Method Summary</span></div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendents</a> |
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ |
+ {/if}
+ <span class="disabled">Methods</span> (<a href="#sec-methods">details</a>)
+ </div>
+ <div class="info-box-body">
+ <div class="method-summary">
+ {section name=methods loop=$methods}
+ {if $methods[methods].static}
+ <div class="method-definition">
+ static {if $methods[methods].function_return}
+ <span class="method-result">{$methods[methods].function_return}</span>
+ {/if}
+ <a href="#{$methods[methods].function_name}" title="details" class="method-name">{if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}</a>
+ {if count($methods[methods].ifunction_call.params)}
+ ({section name=params loop=$methods[methods].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$methods[methods].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$methods[methods].ifunction_call.params[params].name}</span>{if $methods[methods].ifunction_call.params[params].hasdefault} = <span class="var-default">{$methods[methods].ifunction_call.params[params].default}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+ {/if}
+ {/section}
+ {section name=methods loop=$methods}
+ {if !$methods[methods].static}
+ <div class="method-definition">
+ {if $methods[methods].function_return}
+ <span class="method-result">{$methods[methods].function_return}</span>
+ {/if}
+ <a href="#{$methods[methods].function_name}" title="details" class="method-name">{if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}</a>
+ {if count($methods[methods].ifunction_call.params)}
+ ({section name=params loop=$methods[methods].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$methods[methods].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$methods[methods].ifunction_call.params[params].name}</span>{if $methods[methods].ifunction_call.params[params].hasdefault} = <span class="var-default">{$methods[methods].ifunction_call.params[params].default}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+ {/if}
+ {/section}
+ </div>
+ </div>
+ </div>
+{/if}
+
+{if $vars || $ivars}
+ <a name="sec-vars"></a>
+ <div class="info-box">
+ <div class="info-box-title">Variables</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendents</a> |
+ {/if}
+ {if $methods}
+ <a href="#sec-var-summary">Vars</a> (<span class="disabled">details</span>)
+ {else}
+ <span class="disabled">Vars</span>
+ {/if}
+
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ {if $methods || $imethods}
+ |
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="var.tpl"}
+ {if $ivars}
+ <h4>Inherited Variables</h4>
+ <A NAME='inherited_vars'><!-- --></A>
+ {section name=ivars loop=$ivars}
+ <p>Inherited from <span class="classname">{$ivars[ivars].parent_class}</span></p>
+ <blockquote>
+ {section name=ivars2 loop=$ivars[ivars].ivars}
+ <span class="var-title">
+ <span class="var-name">{$ivars[ivars].ivars[ivars2].link}</span>{if $ivars[ivars].ivars[ivars2].ivar_sdesc}: {$ivars[ivars].ivars[ivars2].ivar_sdesc}{/if}<br>
+ </span>
+ {/section}
+ </blockquote>
+ {/section}
+ {/if}
+ </div>
+ </div>
+{/if}
+
+{if $methods || $imethods}
+ <a name="sec-methods"></a>
+ <div class="info-box">
+ <div class="info-box-title">Methods</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendents</a> |
+ {/if}
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<span class="disabled">details</span>)
+ {else}
+ <span class="disabled">Methods</span>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="method.tpl"}
+ {if $imethods}
+ <h4>Inherited Methods</h4>
+ <a name='inherited_methods'><!-- --></a>
+ {section name=imethods loop=$imethods}
+ <!-- =========== Summary =========== -->
+ <p>Inherited From <span class="classname">{$imethods[imethods].parent_class}</span></p>
+ <blockquote>
+ {section name=im2 loop=$imethods[imethods].imethods}
+ <span class="method-name">{$imethods[imethods].imethods[im2].link}</span>{if $imethods[imethods].imethods[im2].ifunction_sdesc}: {$imethods[imethods].imethods[im2].ifunction_sdesc}{/if}<br>
+ {/section}
+ </blockquote>
+ {/section}
+ {/if}
+ </div>
+ </div>
+{/if}
+
+{if $consts || $iconsts}
+ <a name="sec-consts"></a>
+ <div class="info-box">
+ <div class="info-box-title">Class Constants</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendants</a> |
+ {/if}
+ {if $methods}
+ <a href="#sec-var-summary">Constants</a> (<span class="disabled">details</span>)
+ {else}
+ <span class="disabled">Constants</span>
+ {/if}
+
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ {/if}
+ {if $methods || $imethods}
+ |
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="const.tpl"}
+ {if $iconsts}
+ <h4>Inherited Constants</h4>
+ <A NAME='inherited_vars'><!-- --></A>
+ {section name=iconsts loop=$iconsts}
+ <p>Inherited from <span class="classname">{$iconsts[iconsts].parent_class}</span></p>
+ <blockquote>
+ {section name=iconsts2 loop=$iconsts[iconsts].iconsts}
+ <img src="{$subdir}media/images/{if $iconsts[iconsts].iconsts[iconsts2].access == 'private'}PrivateVariable{else}Variable{/if}.png" />
+ <span class="const-title">
+ <span class="const-name">{$iconsts[iconsts].iconsts[iconsts2].link}</span>{if $iconsts[iconsts].iconsts[iconsts2].iconst_sdesc}: {$iconsts[iconsts].iconsts[iconsts2].iconst_sdesc}{/if}<br>
+ </span>
+ {/section}
+ </blockquote>
+ {/section}
+ {/if}
+ </div>
+ </div>
+{/if}
+
+{include file="footer.tpl" top3=true}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/classtrees.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/classtrees.tpl
new file mode 100755
index 00000000..952e6d50
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/classtrees.tpl
@@ -0,0 +1,19 @@
+{include file="header.tpl" top1=true}
+
+<!-- Start of Class Data -->
+<H2>
+ {$smarty.capture.title}
+</H2>
+{if $interfaces}
+{section name=classtrees loop=$interfaces}
+<h2>Root interface {$interfaces[classtrees].class}</h2>
+{$interfaces[classtrees].class_tree}
+{/section}
+{/if}
+{if $classtrees}
+{section name=classtrees loop=$classtrees}
+<h2>Root class {$classtrees[classtrees].class}</h2>
+{$classtrees[classtrees].class_tree}
+{/section}
+{/if}
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/const.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/const.tpl
new file mode 100644
index 00000000..c26ff92d
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/const.tpl
@@ -0,0 +1,18 @@
+{section name=consts loop=$consts}
+<a name="const{$consts[consts].const_name}" id="{$consts[consts].const_name}"><!-- --></A>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="const-header">
+ <img src="{$subdir}media/images/{if $consts[consts].access == 'private'}PrivateVariable{else}Variable{/if}.png" />
+ <span class="const-title">
+ <span class="const-name">{$consts[consts].const_name}</span>
+ = <span class="const-default">{$consts[consts].const_value|replace:"\n":"<br />"}</span>
+ (line <span class="line-number">{if $consts[consts].slink}{$consts[consts].slink}{else}{$consts[consts].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$consts[consts].sdesc desc=$consts[consts].desc tags=$consts[consts].tags}
+
+</div>
+{/section}
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/define.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/define.tpl
new file mode 100755
index 00000000..0da5d864
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/define.tpl
@@ -0,0 +1,24 @@
+{section name=def loop=$defines}
+<a name="{$defines[def].define_link}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <span class="const-title">
+ <span class="const-name">{$defines[def].define_name}</span> = {$defines[def].define_value|replace:"\n":"<br />"}
+ (line <span class="line-number">{if $defines[def].slink}{$defines[def].slink}{else}{$defines[def].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$defines[def].sdesc desc=$defines[def].desc tags=$defines[def].tags}
+
+ {if $globals[glob].global_conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with constants:</span><br />
+ {section name=me loop=$defines[def].define_conflicts.conflicts}
+ {$defines[def].define_conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+
+</div>
+{/section} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/docblock.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/docblock.tpl
new file mode 100755
index 00000000..783d5271
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/docblock.tpl
@@ -0,0 +1,14 @@
+<!-- ========== Info from phpDoc block ========= -->
+{if $sdesc}
+<p class="short-description">{$sdesc}</p>
+{/if}
+{if $desc}
+<p class="description">{$desc}</p>
+{/if}
+{if $tags}
+ <ul class="tags">
+ {section name=tags loop=$tags}
+ <li><span class="field">{$tags[tags].keyword}:</span> {$tags[tags].data}</li>
+ {/section}
+ </ul>
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/elementindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/elementindex.tpl
new file mode 100755
index 00000000..d5964f99
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/elementindex.tpl
@@ -0,0 +1,12 @@
+{include file="header.tpl" noleftindex=true}
+<a name="top"></a>
+<h2>Full index</h2>
+<h3>Package indexes</h3>
+<ul>
+{section name=p loop=$packageindex}
+ <li><a href="elementindex_{$packageindex[p].title}.html">{$packageindex[p].title}</a></li>
+{/section}
+</ul>
+<br />
+{include file="basicindex.tpl" indexname="elementindex"}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/errors.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/errors.tpl
new file mode 100755
index 00000000..0f526584
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/errors.tpl
@@ -0,0 +1,21 @@
+{include file="header.tpl" noleftindex=true}
+{section name=files loop=$files}
+<a href="#{$files[files].file}">{$files[files].file}</a><br>
+{/section}
+{foreach key=file item=issues from=$all}
+<a name="{$file}"></a>
+<h1>{$file}</h1>
+{if count($issues.warnings)}
+<h2>Warnings:</h2><br>
+{section name=warnings loop=$issues.warnings}
+<b>{$issues.warnings[warnings].name}</b> - {$issues.warnings[warnings].listing}<br>
+{/section}
+{/if}
+{if count($issues.errors)}
+<h2>Errors:</h2><br>
+{section name=errors loop=$issues.errors}
+<b>{$issues.errors[errors].name}</b> - {$issues.errors[errors].listing}<br>
+{/section}
+{/if}
+{/foreach}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/examplesource.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/examplesource.tpl
new file mode 100755
index 00000000..8abf74ce
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/examplesource.tpl
@@ -0,0 +1,6 @@
+{include file="header.tpl" title=$title}
+<h1>{$title}</h1>
+<div class="listing">
+{$source}
+</div>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/filesource.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/filesource.tpl
new file mode 100755
index 00000000..239f7b41
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/filesource.tpl
@@ -0,0 +1,8 @@
+{capture name="tutle"}File Source for {$name}{/capture}
+{include file="header.tpl" title=$smarty.capture.tutle}
+<h1>Source for file {$name}</h1>
+<p>Documentation is available at {$docs}</p>
+<div class="src-code">
+{$source}
+</div>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/footer.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/footer.tpl
new file mode 100755
index 00000000..8d0f79db
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/footer.tpl
@@ -0,0 +1,8 @@
+{if !$index}
+ <p class="notes" id="credit">
+ Documentation generated on {$date} by <a href="{$phpdocwebsite}" target="_blank">phpDocumentor {$phpdocversion}</a>
+ </p>
+{/if}
+ {if $top3}</div>{/if}
+</body>
+</html>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/function.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/function.tpl
new file mode 100755
index 00000000..b6880059
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/function.tpl
@@ -0,0 +1,44 @@
+{section name=func loop=$functions}
+<a name="{$functions[func].function_dest}" id="{$functions[func].function_dest}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <span class="method-title">{$functions[func].function_name}</span> (line <span class="line-number">{if $functions[func].slink}{$functions[func].slink}{else}{$functions[func].line_number}{/if}</span>)
+ </div>
+
+ {include file="docblock.tpl" sdesc=$functions[func].sdesc desc=$functions[func].desc tags=$functions[func].tags params=$functions[func].params function=false}
+
+ <div class="method-signature">
+ <span class="method-result">{$functions[func].function_return}</span>
+ <span class="method-name">
+ {if $functions[func].ifunction_call.returnsref}&amp;{/if}{$functions[func].function_name}
+ </span>
+ {if count($functions[func].ifunction_call.params)}
+ ({section name=params loop=$functions[func].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $functions[func].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$functions[func].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$functions[func].ifunction_call.params[params].name}</span>{if $functions[func].ifunction_call.params[params].hasdefault} = <span class="var-default">{$functions[func].ifunction_call.params[params].default|escape:"html"}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+
+ {if $functions[func].params}
+ <ul class="parameters">
+ {section name=params loop=$functions[func].params}
+ <li>
+ <span class="var-type">{$functions[func].params[params].datatype}</span>
+ <span class="var-name">{$functions[func].params[params].var}</span>{if $functions[func].params[params].data}<span class="var-description">: {$functions[func].params[params].data}</span>{/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+ {if $functions[func].function_conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with functions:</span><br />
+ {section name=me loop=$functions[func].function_conflicts.conflicts}
+ {$functions[func].function_conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+
+</div>
+{/section}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/global.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/global.tpl
new file mode 100755
index 00000000..eab7e0b0
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/global.tpl
@@ -0,0 +1,26 @@
+{section name=glob loop=$globals}
+<a name="{$globals[glob].global_link}" id="{$globals[glob].global_link}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <span class="var-title">
+ <span class="var-type">{$globals[glob].global_type}</span>
+ <span class="var-name">{$globals[glob].global_name}</span>
+ {if $vars[vars].var_default} = <span class="var-default">{$globals[glob].global_value|replace:"\n":"<br />"}</span>{/if}
+ (line <span class="line-number">{if $globals[glob].slink}{$globals[glob].slink}{else}{$globals[glob].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$globals[glob].sdesc desc=$globals[glob].desc tags=$globals[glob].tags}
+
+ {if $globals[glob].global_conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with global variables:</span><br />
+ {section name=me loop=$globals[glob].global_conflicts.conflicts}
+ {$globals[glob].global_conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+
+</div>
+{/section} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/header.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/header.tpl
new file mode 100755
index 00000000..0d626190
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/header.tpl
@@ -0,0 +1,95 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+ <html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <!-- template designed by Marco Von Ballmoos -->
+ <title>{$title}</title>
+ <link rel="stylesheet" href="{$subdir}media/stylesheet.css" />
+ {if $top2 || $top3}
+ <script src="{$subdir}media/lib/classTree.js"></script>
+ {/if}
+ {if $top2}
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+ {/if}
+ {if $top3 || $top2}
+ <script language="javascript" type="text/javascript">
+ var imgPlus = new Image();
+ var imgMinus = new Image();
+ imgPlus.src = "{$subdir}media/images/plus.png";
+ imgMinus.src = "{$subdir}media/images/minus.png";
+
+ function showNode(Node){ldelim}
+ switch(navigator.family){ldelim}
+ case 'nn4':
+ // Nav 4.x code fork...
+ var oTable = document.layers["span" + Node];
+ var oImg = document.layers["img" + Node];
+ break;
+ case 'ie4':
+ // IE 4/5 code fork...
+ var oTable = document.all["span" + Node];
+ var oImg = document.all["img" + Node];
+ break;
+ case 'gecko':
+ // Standards Compliant code fork...
+ var oTable = document.getElementById("span" + Node);
+ var oImg = document.getElementById("img" + Node);
+ break;
+ {rdelim}
+ oImg.src = imgMinus.src;
+ oTable.style.display = "block";
+ {rdelim}
+
+ function hideNode(Node){ldelim}
+ switch(navigator.family){ldelim}
+ case 'nn4':
+ // Nav 4.x code fork...
+ var oTable = document.layers["span" + Node];
+ var oImg = document.layers["img" + Node];
+ break;
+ case 'ie4':
+ // IE 4/5 code fork...
+ var oTable = document.all["span" + Node];
+ var oImg = document.all["img" + Node];
+ break;
+ case 'gecko':
+ // Standards Compliant code fork...
+ var oTable = document.getElementById("span" + Node);
+ var oImg = document.getElementById("img" + Node);
+ break;
+ {rdelim}
+ oImg.src = imgPlus.src;
+ oTable.style.display = "none";
+ {rdelim}
+
+ function nodeIsVisible(Node){ldelim}
+ switch(navigator.family){ldelim}
+ case 'nn4':
+ // Nav 4.x code fork...
+ var oTable = document.layers["span" + Node];
+ break;
+ case 'ie4':
+ // IE 4/5 code fork...
+ var oTable = document.all["span" + Node];
+ break;
+ case 'gecko':
+ // Standards Compliant code fork...
+ var oTable = document.getElementById("span" + Node);
+ break;
+ {rdelim}
+ return (oTable && oTable.style.display == "block");
+ {rdelim}
+
+ function toggleNodeVisibility(Node){ldelim}
+ if (nodeIsVisible(Node)){ldelim}
+ hideNode(Node);
+ {rdelim}else{ldelim}
+ showNode(Node);
+ {rdelim}
+ {rdelim}
+ </script>
+ {/if}
+ </head>
+ <body>
+ {if $top3}<div class="page-body">{/if}
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/include.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/include.tpl
new file mode 100755
index 00000000..c2419e5f
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/include.tpl
@@ -0,0 +1,16 @@
+{section name=includes loop=$includes}
+<a name="{$includes[includes].include_file}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <span class="include-title">
+ <span class="include-type">{$includes[includes].include_name}</span>
+ (<span class="include-name">{$includes[includes].include_value}</span>)
+ (line <span class="line-number">{if $includes[includes].slink}{$includes[includes].slink}{else}{$includes[includes].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$includes[includes].sdesc desc=$includes[includes].desc tags=$includes[includes].tags}
+
+</div>
+{/section} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/index.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/index.tpl
new file mode 100755
index 00000000..7cd61094
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/index.tpl
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//FR"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
+ <html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+ <!-- Generated by phpDocumentor on {$date} -->
+ <title>{$title}</title>
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+</head>
+
+<FRAMESET rows='120,*'>
+ <FRAME src='packages.html' name='left_top' frameborder="1" bordercolor="#999999">
+ <FRAMESET cols='25%,*'>
+ <FRAME src='{$start}' name='left_bottom' frameborder="1" bordercolor="#999999">
+ <FRAME src='{$blank}.html' name='right' frameborder="1" bordercolor="#999999">
+ </FRAMESET>
+ <NOFRAMES>
+ <H2>Frame Alert</H2>
+ <P>This document is designed to be viewed using the frames feature.
+ If you see this message, you are using a non-frame-capable web client.</P>
+ </NOFRAMES>
+</FRAMESET>
+</HTML>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/left_frame.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/left_frame.tpl
new file mode 100755
index 00000000..35178d87
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/left_frame.tpl
@@ -0,0 +1,197 @@
+{include file="header.tpl" top2=true}
+<h3 class="package-title">{$info.0.package}</h3>
+<div class="tree">
+<script language="Javascript">
+if (document.getElementById) {ldelim}
+{section name=p loop=$info}
+ {if $info[p].subpackage == ""}
+ var tree = new WebFXTree('<span class="package">{$info.0.package|escape:"quotes"}</span>');
+ tree.setBehavior('classic');
+
+ {if $hastodos}
+ var todos = new WebFXTreeItem('To-do List', '{$todolink}');
+ tree.add(todos);
+ {/if}
+
+ var class_trees = new WebFXTreeItem('Class trees', '{$classtreepage}.html');
+ tree.add(class_trees);
+
+ var elements = new WebFXTreeItem('Index of elements', '{$elementindex}.html');
+ tree.add(elements);
+
+ var parent_node;
+
+ {if $info[p].tutorials}
+ var tree_tutorial = new WebFXTreeItem('Tutorial(s)/Manual(s)', '');
+ tree.add(tree_tutorial);
+
+ {if $info[p].tutorials.pkg}
+ var tree_inner_tutorial = new WebFXTreeItem('Package-level', '');
+ tree_tutorial.add(tree_inner_tutorial);
+
+ parent_node = tree_inner_tutorial;
+ {section name=ext loop=$info[p].tutorials.pkg}
+ {$info[p].tutorials.pkg[ext]}
+ {/section}
+ {/if}
+
+ {if $info[p].tutorials.cls}
+ var tree_inner_tutorial = new WebFXTreeItem('Class-level', '');
+ tree_tutorial.add(tree_inner_tutorial);
+
+ parent_node = tree_inner_tutorial;
+ {section name=ext loop=$info[p].tutorials.cls}
+ {$info[p].tutorials.cls[ext]}
+ {/section}
+ {/if}
+
+ {if $info[p].tutorials.proc}
+ var tree_inner_tutorial = new WebFXTreeItem('Function-level', '');
+ tree_tutorial.add(tree_inner_tutorial);
+
+ parent_node = tree_inner_tutorial;
+ {section name=ext loop=$info[p].tutorials.proc}
+ {$info[p].tutorials.proc[ext]}
+ {/section}
+ {/if}
+ {/if}
+ {if $info[p].hasinterfaces}
+ {if $info[p].classes}
+ var tree_classe = new WebFXTreeItem('Interface(s)', '{$packagedoc}');
+
+ {section name=class loop=$info[p].classes}
+ {if $info[p].classes[class].is_interface}
+ var classe = new WebFXTreeItem('{$info[p].classes[class].title|escape:"quotes"}', '{$info[p].classes[class].link|escape:"quotes"}');
+ tree_classe.add(classe);
+ {/if}
+ {/section}
+
+ tree.add(tree_classe);
+ {/if}
+ {/if}
+ {if $info[p].hasclasses}
+ {if $info[p].classes}
+ var tree_classe = new WebFXTreeItem('Class(es)', '{$packagedoc}');
+
+ {section name=class loop=$info[p].classes}
+ {if $info[p].classes[class].is_class}
+ var classe = new WebFXTreeItem('{$info[p].classes[class].title|escape:"quotes"}', '{$info[p].classes[class].link|escape:"quotes"}');
+ tree_classe.add(classe);
+ {/if}
+ {/section}
+
+ tree.add(tree_classe);
+ {/if}
+ {/if}
+
+ {if $info[p].functions}
+ var tree_function = new WebFXTreeItem('Function(s)', '{$packagedoc|escape:"quotes"}');
+
+ {section name=nonclass loop=$info[p].functions}
+ var fic = new WebFXTreeItem('{$info[p].functions[nonclass].title|escape:"quotes"}', '{$info[p].functions[nonclass].link}');
+ tree_function.add(fic);
+ {/section}
+
+ tree.add(tree_function);
+ {/if}
+
+ {if $info[p].files}
+ var tree_file = new WebFXTreeItem('File(s)', '{$packagedoc|escape:"quotes"}');
+
+ {section name=nonclass loop=$info[p].files}
+ var file = new WebFXTreeItem('{$info[p].files[nonclass].title|escape:"quotes"}', '{$info[p].files[nonclass].link|escape:"quotes"}');
+ tree_file.add(file);
+ {/section}
+
+ tree.add(tree_file);
+ {/if}
+
+ {else}
+ {if $info[p].subpackagetutorial}
+ var subpackagetree = new WebFXTreeItem('<span class="sub-package">{$info[p].subpackagetutorialtitle|strip_tags|escape:"quotes"}</span>', '{$info[p].subpackagetutorialnoa|escape:"quotes"}');
+ {else}
+ var subpackagetree = new WebFXTreeItem('<span class="sub-package">{$info[p].subpackage|escape:"quotes"}</span>', '{$packagedoc|escape:"quotes"}');
+ {/if}
+
+ {if $info[p].tutorials}
+ var tree_tutorial = new WebFXTreeItem('Tutorial(s)/Manual(s)', '');
+ tree.add(tree_tutorial);
+
+ {if $info[p].tutorials.pkg}
+ var tree_inner_tutorial = new WebFXTreeItem('Package-level', '');
+ tree_tutorial.add(tree_inner_tutorial);
+
+ parent_node = tree_inner_tutorial;
+ {section name=ext loop=$info[p].tutorials.pkg}
+ {$info[p].tutorials.pkg[ext]}
+ {/section}
+ {/if}
+
+ {if $info[p].tutorials.cls}
+ var tree_inner_tutorial = new WebFXTreeItem('Class-level', '');
+ tree_tutorial.add(tree_inner_tutorial);
+
+ parent_node = tree_inner_tutorial;
+ {section name=ext loop=$info[p].tutorials.cls}
+ {$info[p].tutorials.cls[ext]}
+ {/section}
+ {/if}
+
+ {if $info[p].tutorials.proc}
+ var tree_inner_tutorial = new WebFXTreeItem('Function-level', '');
+ tree_tutorial.add(tree_inner_tutorial);
+
+ parent_node = tree_inner_tutorial;
+ {section name=ext loop=$info[p].tutorials.proc}
+ {$info[p].tutorials.proc[ext]}
+ {/section}
+ {/if}
+ {/if}
+
+ {if $info[p].classes}
+ var subpackagetree_classe = new WebFXTreeItem('Class(es)', '{$packagedoc|escape:"quotes"}');
+
+ {section name=class loop=$info[p].classes}
+ var classe = new WebFXTreeItem('{$info[p].classes[class].title|escape:"quotes"}', '{$info[p].classes[class].link|escape:"quotes"}');
+ subpackagetree_classe.add(classe);
+ {/section}
+
+ subpackagetree.add(subpackagetree_classe);
+ {/if}
+
+ {if $info[p].functions}
+ var subpackagetree_function = new WebFXTreeItem('Function(s)', '{$packagedoc}');
+
+ {section name=nonclass loop=$info[p].functions}
+ var fic = new WebFXTreeItem('{$info[p].functions[nonclass].title|escape:"quotes"}', '{$info[p].functions[nonclass].link|escape:"quotes"}');
+ subpackagetree_function.add(fic);
+ {/section}
+
+ subpackagetree.add(subpackagetree_function);
+ {/if}
+
+ {if $info[p].files}
+ var subpackagetree_file = new WebFXTreeItem('File(s)', '{$packagedoc|escape:"quotes"}');
+
+ {section name=nonclass loop=$info[p].files}
+ var file = new WebFXTreeItem('{$info[p].files[nonclass].title|escape:"quotes"}', '{$info[p].files[nonclass].link|escape:"quotes"}');
+ subpackagetree_file.add(file);
+ {/section}
+
+ subpackagetree.add(subpackagetree_file);
+ {/if}
+
+ tree.add(subpackagetree);
+ {/if}
+{/section}
+
+document.write(tree);
+{rdelim}
+</script>
+</div>
+<p class="notes">
+ Generated by
+ <a href="{$phpdocwebsite}" target="_blank">phpDocumentor <span class="field">{$phpdocversion}</span></a>
+</p>
+</body>
+</html>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/banner.css b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/banner.css
new file mode 100755
index 00000000..f2149ebb
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/banner.css
@@ -0,0 +1,32 @@
+body
+{
+ background-color: #CCCCFF;
+ margin: 0px;
+ padding: 0px;
+}
+
+/* Banner (top bar) classes */
+
+.banner { }
+
+.banner-menu
+{
+ clear: both;
+ padding: .5em;
+ border-top: 2px solid #6666AA;
+}
+
+.banner-title
+{
+ text-align: right;
+ font-size: 20pt;
+ font-weight: bold;
+ margin: .2em;
+}
+
+.package-selector
+{
+ background-color: #AAAADD;
+ border: 1px solid black;
+ color: yellow;
+}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/I.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/I.png
new file mode 100755
index 00000000..e8512fb9
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/I.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/L.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/L.png
new file mode 100755
index 00000000..eb334eda
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/L.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/Lminus.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/Lminus.png
new file mode 100755
index 00000000..f7c43c0a
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/Lminus.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/Lplus.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/Lplus.png
new file mode 100755
index 00000000..848ec2fc
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/Lplus.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/T.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/T.png
new file mode 100755
index 00000000..30173254
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/T.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/Tminus.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/Tminus.png
new file mode 100755
index 00000000..2260e424
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/Tminus.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/Tplus.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/Tplus.png
new file mode 100755
index 00000000..2c8d8f4f
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/Tplus.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/blank.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/blank.png
new file mode 100755
index 00000000..cee9cd37
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/blank.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/empty.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/empty.png
new file mode 100755
index 00000000..d5683865
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/empty.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/minus.gif b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/minus.gif
new file mode 100644
index 00000000..f502662b
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/minus.gif
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/plus.gif b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/plus.gif
new file mode 100644
index 00000000..eeca02ce
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/images/plus.gif
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/lib/classTree.js b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/lib/classTree.js
new file mode 100755
index 00000000..ebb3fb4a
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/lib/classTree.js
@@ -0,0 +1,454 @@
+/*----------------------------------------\
+| Cross Browser Tree Widget 1.1 |
+|-----------------------------------------|
+| Created by Emil A. Eklund (eae@eae.net) |
+| For WebFX (http://webfx.eae.net/) |
+|-----------------------------------------|
+| This script is provided as is without |
+| any warranty whatsoever. It may be used |
+| free of charge for non commerical sites |
+| For commerical use contact the author |
+| of this script for further details. |
+|-----------------------------------------|
+| Created 2000-12-11 | Updated 2001-09-06 |
+\----------------------------------------*/
+
+var webFXTreeConfig = {
+ rootIcon : 'media/images/empty.png',
+ openRootIcon : 'media/images/empty.png',
+ folderIcon : 'media/images/empty.png',
+ openFolderIcon : 'media/images/empty.png',
+ fileIcon : 'media/images/empty.png',
+ iIcon : 'media/images/I.png',
+ lIcon : 'media/images/L.png',
+ lMinusIcon : 'media/images/Lminus.png',
+ lPlusIcon : 'media/images/Lplus.png',
+ tIcon : 'media/images/T.png',
+ tMinusIcon : 'media/images/Tminus.png',
+ tPlusIcon : 'media/images/Tplus.png',
+ blankIcon : 'media/images/blank.png',
+ defaultText : 'Tree Item',
+ defaultAction : 'javascript:void(0);',
+ defaultTarget : 'right',
+ defaultBehavior : 'classic'
+};
+
+var webFXTreeHandler = {
+ idCounter : 0,
+ idPrefix : "webfx-tree-object-",
+ all : {},
+ behavior : null,
+ selected : null,
+ getId : function() { return this.idPrefix + this.idCounter++; },
+ toggle : function (oItem) { this.all[oItem.id.replace('-plus','')].toggle(); },
+ select : function (oItem) { this.all[oItem.id.replace('-icon','')].select(); },
+ focus : function (oItem) { this.all[oItem.id.replace('-anchor','')].focus(); },
+ blur : function (oItem) { this.all[oItem.id.replace('-anchor','')].blur(); },
+ keydown : function (oItem) { return this.all[oItem.id].keydown(window.event.keyCode); },
+ cookies : new WebFXCookie()
+};
+
+/*
+ * WebFXCookie class
+ */
+
+function WebFXCookie() {
+ if (document.cookie.length) { this.cookies = ' ' + document.cookie; }
+}
+
+WebFXCookie.prototype.setCookie = function (key, value) {
+ document.cookie = key + "=" + escape(value);
+}
+
+WebFXCookie.prototype.getCookie = function (key) {
+ if (this.cookies) {
+ var start = this.cookies.indexOf(' ' + key + '=');
+ if (start == -1) { return null; }
+ var end = this.cookies.indexOf(";", start);
+ if (end == -1) { end = this.cookies.length; }
+ end -= start;
+ var cookie = this.cookies.substr(start,end);
+ return unescape(cookie.substr(cookie.indexOf('=') + 1, cookie.length - cookie.indexOf('=') + 1));
+ }
+ else { return null; }
+}
+
+/*
+ * WebFXTreeAbstractNode class
+ */
+
+function WebFXTreeAbstractNode(sText, sAction, sTarget) {
+ this.childNodes = [];
+ this.id = webFXTreeHandler.getId();
+ this.text = sText || webFXTreeConfig.defaultText;
+ this.action = sAction || webFXTreeConfig.defaultAction;
+ this.targetWindow = sTarget || webFXTreeConfig.defaultTarget;
+ this._last = false;
+ webFXTreeHandler.all[this.id] = this;
+}
+
+WebFXTreeAbstractNode.prototype.add = function (node) {
+ node.parentNode = this;
+ this.childNodes[this.childNodes.length] = node;
+ var root = this;
+ if (this.childNodes.length >=2) {
+ this.childNodes[this.childNodes.length -2]._last = false;
+ }
+ while (root.parentNode) { root = root.parentNode; }
+ if (root.rendered) {
+ if (this.childNodes.length >= 2) {
+ document.getElementById(this.childNodes[this.childNodes.length -2].id + '-plus').src = ((this.childNodes[this.childNodes.length -2].folder)?webFXTreeConfig.tMinusIcon:webFXTreeConfig.tIcon);
+ if (this.childNodes[this.childNodes.length -2].folder) {
+ this.childNodes[this.childNodes.length -2].plusIcon = webFXTreeConfig.tPlusIcon;
+ this.childNodes[this.childNodes.length -2].minusIcon = webFXTreeConfig.tMinusIcon;
+ }
+ this.childNodes[this.childNodes.length -2]._last = false;
+ }
+ this._last = true;
+ var foo = this;
+ while (foo.parentNode) {
+ for (var i = 0; i < foo.parentNode.childNodes.length; i++) {
+ if (foo.id == foo.parentNode.childNodes[i].id) { break; }
+ }
+ if (++i == foo.parentNode.childNodes.length) { foo.parentNode._last = true; }
+ else { foo.parentNode._last = false; }
+ foo = foo.parentNode;
+ }
+ document.getElementById(this.id + '-cont').insertAdjacentHTML("beforeEnd", node.toString());
+ if ((!this.folder) && (!this.openIcon)) {
+ this.icon = webFXTreeConfig.folderIcon;
+ this.openIcon = webFXTreeConfig.openFolderIcon;
+ }
+ this.folder = true;
+ this.indent();
+ this.expand();
+ }
+ return node;
+}
+
+WebFXTreeAbstractNode.prototype.toggle = function() {
+ if (this.folder) {
+ if (this.open) { this.collapse(); }
+ else { this.expand(); }
+ }
+}
+
+WebFXTreeAbstractNode.prototype.select = function() {
+ document.getElementById(this.id + '-anchor').focus();
+}
+
+WebFXTreeAbstractNode.prototype.focus = function() {
+ webFXTreeHandler.selected = this;
+ if ((this.openIcon) && (webFXTreeHandler.behavior != 'classic')) { document.getElementById(this.id + '-icon').src = this.openIcon; }
+ document.getElementById(this.id + '-anchor').style.backgroundColor = 'highlight';
+ document.getElementById(this.id + '-anchor').style.color = 'highlighttext';
+ document.getElementById(this.id + '-anchor').focus();
+}
+
+WebFXTreeAbstractNode.prototype.blur = function() {
+ if ((this.openIcon) && (webFXTreeHandler.behavior != 'classic')) { document.getElementById(this.id + '-icon').src = this.icon; }
+ document.getElementById(this.id + '-anchor').style.backgroundColor = 'transparent';
+ document.getElementById(this.id + '-anchor').style.color = 'menutext';
+}
+
+WebFXTreeAbstractNode.prototype.doExpand = function() {
+ if (webFXTreeHandler.behavior == 'classic') { document.getElementById(this.id + '-icon').src = this.openIcon; }
+ if (this.childNodes.length) { document.getElementById(this.id + '-cont').style.display = 'block'; }
+ this.open = true;
+ webFXTreeHandler.cookies.setCookie(this.id.substr(18,this.id.length - 18), '1');
+}
+
+WebFXTreeAbstractNode.prototype.doCollapse = function() {
+ if (webFXTreeHandler.behavior == 'classic') { document.getElementById(this.id + '-icon').src = this.icon; }
+ if (this.childNodes.length) { document.getElementById(this.id + '-cont').style.display = 'none'; }
+ this.open = false;
+ webFXTreeHandler.cookies.setCookie(this.id.substr(18,this.id.length - 18), '0');
+}
+
+WebFXTreeAbstractNode.prototype.expandAll = function() {
+ this.expandChildren();
+ if ((this.folder) && (!this.open)) { this.expand(); }
+}
+
+WebFXTreeAbstractNode.prototype.expandChildren = function() {
+ for (var i = 0; i < this.childNodes.length; i++) {
+ this.childNodes[i].expandAll();
+} }
+
+WebFXTreeAbstractNode.prototype.collapseAll = function() {
+ if ((this.folder) && (this.open)) { this.collapse(); }
+ this.collapseChildren();
+}
+
+WebFXTreeAbstractNode.prototype.collapseChildren = function() {
+ for (var i = 0; i < this.childNodes.length; i++) {
+ this.childNodes[i].collapseAll();
+} }
+
+WebFXTreeAbstractNode.prototype.indent = function(lvl, del, last, level) {
+ /*
+ * Since we only want to modify items one level below ourself,
+ * and since the rightmost indentation position is occupied by
+ * the plus icon we set this to -2
+ */
+ if (lvl == null) { lvl = -2; }
+ var state = 0;
+ for (var i = this.childNodes.length - 1; i >= 0 ; i--) {
+ state = this.childNodes[i].indent(lvl + 1, del, last, level);
+ if (state) { return; }
+ }
+ if (del) {
+ if (level >= this._level) {
+ if (this.folder) {
+ document.getElementById(this.id + '-plus').src = (this.open)?webFXTreeConfig.lMinusIcon:webFXTreeConfig.lPlusIcon;
+ this.plusIcon = webFXTreeConfig.lPlusIcon;
+ this.minusIcon = webFXTreeConfig.lMinusIcon;
+ }
+ else { document.getElementById(this.id + '-plus').src = webFXTreeConfig.lIcon; }
+ return 1;
+ }
+ }
+ var foo = document.getElementById(this.id + '-indent-' + lvl);
+ if (foo) {
+ if ((del) && (last)) { foo._last = true; }
+ if (foo._last) { foo.src = webFXTreeConfig.blankIcon; }
+ else { foo.src = webFXTreeConfig.iIcon; }
+ }
+ return 0;
+}
+
+/*
+ * WebFXTree class
+ */
+
+function WebFXTree(sText, sAction, sBehavior, sIcon, sOpenIcon) {
+ this.base = WebFXTreeAbstractNode;
+ this.base(sText, sAction);
+ this.icon = sIcon || webFXTreeConfig.rootIcon;
+ this.openIcon = sOpenIcon || webFXTreeConfig.openRootIcon;
+ /* Defaults to open */
+ this.open = (webFXTreeHandler.cookies.getCookie(this.id.substr(18,this.id.length - 18)) == '0')?false:true;
+ this.folder = true;
+ this.rendered = false;
+ if (!webFXTreeHandler.behavior) { webFXTreeHandler.behavior = sBehavior || webFXTreeConfig.defaultBehavior; }
+ this.targetWindow = 'right';
+}
+
+WebFXTree.prototype = new WebFXTreeAbstractNode;
+
+WebFXTree.prototype.setBehavior = function (sBehavior) {
+ webFXTreeHandler.behavior = sBehavior;
+};
+
+WebFXTree.prototype.getBehavior = function (sBehavior) {
+ return webFXTreeHandler.behavior;
+};
+
+WebFXTree.prototype.getSelected = function() {
+ if (webFXTreeHandler.selected) { return webFXTreeHandler.selected; }
+ else { return null; }
+}
+
+WebFXTree.prototype.remove = function() { }
+
+WebFXTree.prototype.expand = function() {
+ this.doExpand();
+}
+
+WebFXTree.prototype.collapse = function() {
+ this.focus();
+ this.doCollapse();
+}
+
+WebFXTree.prototype.getFirst = function() {
+ return null;
+}
+
+WebFXTree.prototype.getLast = function() {
+ return null;
+}
+
+WebFXTree.prototype.getNextSibling = function() {
+ return null;
+}
+
+WebFXTree.prototype.getPreviousSibling = function() {
+ return null;
+}
+
+WebFXTree.prototype.keydown = function(key) {
+ if (key == 39) { this.expand(); return false; }
+ if (key == 37) { this.collapse(); return false; }
+ if ((key == 40) && (this.open)) { this.childNodes[0].select(); return false; }
+ return true;
+}
+
+WebFXTree.prototype.toString = function() {
+ var str = "<div id=\"" + this.id + "\" ondblclick=\"webFXTreeHandler.toggle(this);\" class=\"webfx-tree-item\" onkeydown=\"return webFXTreeHandler.keydown(this)\">";
+ str += "<img id=\"" + this.id + "-icon\" class=\"webfx-tree-icon\" src=\"" + ((webFXTreeHandler.behavior == 'classic' && this.open)?this.openIcon:this.icon) + "\" onclick=\"webFXTreeHandler.select(this);\"><a href=\"" + this.action + "\" id=\"" + this.id + "-anchor\" target=\"" + this.targetWindow + "\" onfocus=\"webFXTreeHandler.focus(this);\" onblur=\"webFXTreeHandler.blur(this);\">" + this.text + "</a></div>";
+ str += "<div id=\"" + this.id + "-cont\" class=\"webfx-tree-container\" style=\"display: " + ((this.open)?'block':'none') + ";\">";
+ for (var i = 0; i < this.childNodes.length; i++) {
+ str += this.childNodes[i].toString(i, this.childNodes.length);
+ }
+ str += "</div>";
+ this.rendered = true;
+ return str;
+};
+
+/*
+ * WebFXTreeItem class
+ */
+
+function WebFXTreeItem(sText, sAction, eParent, sIcon, sOpenIcon) {
+ this.base = WebFXTreeAbstractNode;
+ this.base(sText, sAction);
+ /* Defaults to close */
+ this.open = (webFXTreeHandler.cookies.getCookie(this.id.substr(18,this.id.length - 18)) == '1')?true:false;
+ if (eParent) { eParent.add(this); }
+ if (sIcon) { this.icon = sIcon; }
+ if (sOpenIcon) { this.openIcon = sOpenIcon; }
+}
+
+WebFXTreeItem.prototype = new WebFXTreeAbstractNode;
+
+WebFXTreeItem.prototype.remove = function() {
+ var parentNode = this.parentNode;
+ var prevSibling = this.getPreviousSibling(true);
+ var nextSibling = this.getNextSibling(true);
+ var folder = this.parentNode.folder;
+ var last = ((nextSibling) && (nextSibling.parentNode) && (nextSibling.parentNode.id == parentNode.id))?false:true;
+ this.getPreviousSibling().focus();
+ this._remove();
+ if (parentNode.childNodes.length == 0) {
+ parentNode.folder = false;
+ parentNode.open = false;
+ }
+ if (last) {
+ if (parentNode.id == prevSibling.id) {
+ document.getElementById(parentNode.id + '-icon').src = webFXTreeConfig.fileIcon;
+ }
+ else { }
+ }
+ if ((!prevSibling.parentNode) || (prevSibling.parentNode != parentNode)) {
+ parentNode.indent(null, true, last, this._level);
+ }
+ if (document.getElementById(prevSibling.id + '-plus')) {
+ if (nextSibling) {
+ if ((parentNode == prevSibling) && (parentNode.getNextSibling)) { document.getElementById(prevSibling.id + '-plus').src = webFXTreeConfig.tIcon; }
+ else if (nextSibling.parentNode != prevSibling) { document.getElementById(prevSibling.id + '-plus').src = webFXTreeConfig.lIcon; }
+ }
+ else { document.getElementById(prevSibling.id + '-plus').src = webFXTreeConfig.lIcon; }
+ }
+}
+
+WebFXTreeItem.prototype._remove = function() {
+ for (var i = this.childNodes.length - 1; i >= 0; i--) {
+ this.childNodes[i]._remove();
+ }
+ for (var i = 0; i < this.parentNode.childNodes.length; i++) {
+ if (this.id == this.parentNode.childNodes[i].id) {
+ for (var j = i; j < this.parentNode.childNodes.length; j++) {
+ this.parentNode.childNodes[i] = this.parentNode.childNodes[i+1]
+ }
+ this.parentNode.childNodes.length = this.parentNode.childNodes.length - 1;
+ if (i + 1 == this.parentNode.childNodes.length) { this.parentNode._last = true; }
+ }
+ }
+ webFXTreeHandler.all[this.id] = null;
+ if (document.getElementById(this.id)) {
+ document.getElementById(this.id).innerHTML = "";
+ document.getElementById(this.id).removeNode();
+ }
+}
+
+WebFXTreeItem.prototype.expand = function() {
+ this.doExpand();
+ document.getElementById(this.id + '-plus').src = this.minusIcon;
+}
+
+WebFXTreeItem.prototype.collapse = function() {
+ this.focus();
+ this.doCollapse();
+ document.getElementById(this.id + '-plus').src = this.plusIcon;
+}
+
+WebFXTreeItem.prototype.getFirst = function() {
+ return this.childNodes[0];
+}
+
+WebFXTreeItem.prototype.getLast = function() {
+ if (this.childNodes[this.childNodes.length - 1].open) { return this.childNodes[this.childNodes.length - 1].getLast(); }
+ else { return this.childNodes[this.childNodes.length - 1]; }
+}
+
+WebFXTreeItem.prototype.getNextSibling = function() {
+ for (var i = 0; i < this.parentNode.childNodes.length; i++) {
+ if (this == this.parentNode.childNodes[i]) { break; }
+ }
+ if (++i == this.parentNode.childNodes.length) { return this.parentNode.getNextSibling(); }
+ else { return this.parentNode.childNodes[i]; }
+}
+
+WebFXTreeItem.prototype.getPreviousSibling = function(b) {
+ for (var i = 0; i < this.parentNode.childNodes.length; i++) {
+ if (this == this.parentNode.childNodes[i]) { break; }
+ }
+ if (i == 0) { return this.parentNode; }
+ else {
+ if ((this.parentNode.childNodes[--i].open) || (b && this.parentNode.childNodes[i].folder)) { return this.parentNode.childNodes[i].getLast(); }
+ else { return this.parentNode.childNodes[i]; }
+} }
+
+WebFXTreeItem.prototype.keydown = function(key) {
+ if ((key == 39) && (this.folder)) {
+ if (!this.open) { this.expand(); return false; }
+ else { this.getFirst().select(); return false; }
+ }
+ else if (key == 37) {
+ if (this.open) { this.collapse(); return false; }
+ else { this.parentNode.select(); return false; }
+ }
+ else if (key == 40) {
+ if (this.open) { this.getFirst().select(); return false; }
+ else {
+ var sib = this.getNextSibling();
+ if (sib) { sib.select(); return false; }
+ } }
+ else if (key == 38) { this.getPreviousSibling().select(); return false; }
+ return true;
+}
+
+WebFXTreeItem.prototype.toString = function (nItem, nItemCount) {
+ var foo = this.parentNode;
+ var indent = '';
+ if (nItem + 1 == nItemCount) { this.parentNode._last = true; }
+ var i = 0;
+ while (foo.parentNode) {
+ foo = foo.parentNode;
+ indent = "<img id=\"" + this.id + "-indent-" + i + "\" src=\"" + ((foo._last)?webFXTreeConfig.blankIcon:webFXTreeConfig.iIcon) + "\">" + indent;
+ i++;
+ }
+ this._level = i;
+ if (this.childNodes.length) { this.folder = 1; }
+ else { this.open = false; }
+ if ((this.folder) || (webFXTreeHandler.behavior != 'classic')) {
+ if (!this.icon) { this.icon = webFXTreeConfig.folderIcon; }
+ if (!this.openIcon) { this.openIcon = webFXTreeConfig.openFolderIcon; }
+ }
+ else if (!this.icon) { this.icon = webFXTreeConfig.fileIcon; }
+ var label = this.text;
+ label = label.replace('<', '<');
+ label = label.replace('>', '>');
+ var str = "<div id=\"" + this.id + "\" ondblclick=\"webFXTreeHandler.toggle(this);\" class=\"webfx-tree-item\" onkeydown=\"return webFXTreeHandler.keydown(this)\">";
+ str += indent;
+ str += "<img id=\"" + this.id + "-plus\" src=\"" + ((this.folder)?((this.open)?((this.parentNode._last)?webFXTreeConfig.lMinusIcon:webFXTreeConfig.tMinusIcon):((this.parentNode._last)?webFXTreeConfig.lPlusIcon:webFXTreeConfig.tPlusIcon)):((this.parentNode._last)?webFXTreeConfig.lIcon:webFXTreeConfig.tIcon)) + "\" onclick=\"webFXTreeHandler.toggle(this);\">"
+ str += "<img id=\"" + this.id + "-icon\" src=\"" + ((webFXTreeHandler.behavior == 'classic' && this.open)?this.openIcon:this.icon) + "\" onclick=\"webFXTreeHandler.select(this);\"><a href=\"" + this.action + "\" id=\"" + this.id + "-anchor\" target=\"" + this.targetWindow + "\" onfocus=\"webFXTreeHandler.focus(this);\" onblur=\"webFXTreeHandler.blur(this);\">" + label + "</a></div>";
+ str += "<div id=\"" + this.id + "-cont\" class=\"webfx-tree-container\" style=\"display: " + ((this.open)?'block':'none') + ";\">";
+ for (var i = 0; i < this.childNodes.length; i++) {
+ str += this.childNodes[i].toString(i,this.childNodes.length);
+ }
+ str += "</div>";
+ this.plusIcon = ((this.parentNode._last)?webFXTreeConfig.lPlusIcon:webFXTreeConfig.tPlusIcon);
+ this.minusIcon = ((this.parentNode._last)?webFXTreeConfig.lMinusIcon:webFXTreeConfig.tMinusIcon);
+ return str;
+} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/stylesheet.css b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/stylesheet.css
new file mode 100755
index 00000000..72d3141d
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/media/stylesheet.css
@@ -0,0 +1,184 @@
+a { color: #336699; text-decoration: none; }
+a:hover { color: #6699CC; text-decoration: underline; }
+a:active { color: #6699CC; text-decoration: underline; }
+
+body { background : #FFFFFF; }
+body, table { font-family: Georgia, Times New Roman, Times, serif; font-size: 10pt }
+p, li { line-height: 140% }
+a img { border: 0px; }
+dd { margin-left: 0px; padding-left: 1em; }
+
+/* Page layout/boxes */
+
+.info-box {}
+.info-box-title { margin: 1em 0em 0em 0em; padding: .25em; font-weight: normal; font-size: 14pt; border: 2px solid #999999; background-color: #CCCCFF }
+.info-box-body { border: 1px solid #999999; padding: .5em; }
+.nav-bar { font-size: 8pt; white-space: nowrap; text-align: right; padding: .2em; margin: 0em 0em 1em 0em; }
+
+.oddrow { background-color: #F8F8F8; border: 1px solid #AAAAAA; padding: .5em; margin-bottom: 1em}
+.evenrow { border: 1px solid #AAAAAA; padding: .5em; margin-bottom: 1em}
+
+.page-body { max-width: 800px; margin: auto; }
+.tree { }
+
+/* Index formatting classes */
+
+.index-item-body { margin-top: .5em; margin-bottom: .5em}
+.index-item-description { margin-top: .25em }
+.index-item-details { font-weight: normal; font-style: italic; font-size: 8pt }
+.index-letter-section { background-color: #EEEEEE; border: 1px dotted #999999; padding: .5em; margin-bottom: 1em}
+.index-letter-title { font-size: 12pt; font-weight: bold }
+.index-letter-menu { text-align: center; margin: 1em }
+.index-letter { font-size: 12pt }
+
+/* Docbook classes */
+
+.description {}
+.short-description { font-weight: bold; color: #666666; }
+.tags { padding-left: 0em; margin-left: 3em; color: #666666; list-style-type: square; }
+.parameters { padding-left: 0em; margin-left: 3em; font-style: italic; list-style-type: square; }
+.redefinitions { font-size: 8pt; padding-left: 0em; margin-left: 2em; }
+.package { }
+.package-title { font-weight: bold; font-size: 14pt; border-bottom: 1px solid black }
+.package-details { font-size: 85%; }
+.sub-package { font-weight: bold; font-size: 120% }
+.tutorial { border-width: thin; border-color: #0066ff }
+.tutorial-nav-box { width: 100%; border: 1px solid #999999; background-color: #F8F8F8; }
+.nav-button-disabled { color: #999999; }
+.nav-button:active,
+.nav-button:focus,
+.nav-button:hover { background-color: #DDDDDD; outline: 1px solid #999999; text-decoration: none }
+.folder-title { font-style: italic }
+
+/* Generic formatting */
+
+.field { font-weight: bold; }
+.detail { font-size: 8pt; }
+.notes { font-style: italic; font-size: 8pt; }
+.separator { background-color: #999999; height: 2px; }
+.warning { color: #FF6600; }
+.disabled { font-style: italic; color: #999999; }
+
+/* Code elements */
+
+.line-number { }
+
+.class-table { width: 100%; }
+.class-table-header { border-bottom: 1px dotted #666666; text-align: left}
+.class-name { color: #000000; font-weight: bold; }
+
+.method-summary { padding-left: 1em; font-size: 8pt }
+.method-header { }
+.method-definition { margin-bottom: .3em }
+.method-title { font-weight: bold; }
+.method-name { font-weight: bold; }
+.method-signature { font-size: 85%; color: #666666; margin: .5em 0em }
+.method-result { font-style: italic; }
+
+.var-summary { padding-left: 1em; font-size: 8pt; }
+.var-header { }
+.var-title { margin-bottom: .3em }
+.var-type { font-style: italic; }
+.var-name { font-weight: bold; }
+.var-default {}
+.var-description { font-weight: normal; color: #000000; }
+
+.include-title { }
+.include-type { font-style: italic; }
+.include-name { font-weight: bold; }
+
+.const-title { }
+.const-name { font-weight: bold; }
+
+/* Syntax highlighting */
+
+.src-code { border: 1px solid #336699; padding: 1em; background-color: #EEEEEE; }
+.src-line { font-family: 'Courier New', Courier, monospace; font-weight: normal; }
+
+.src-comm { color: green; }
+.src-id { }
+.src-inc { color: #0000FF; }
+.src-key { color: #0000FF; }
+.src-num { color: #CC0000; }
+.src-str { color: #66cccc; }
+.src-sym { font-weight: bold; }
+.src-var { }
+
+.src-php { font-weight: bold; }
+
+.src-doc { color: #009999 }
+.src-doc-close-template { color: #0000FF }
+.src-doc-coretag { color: #0099FF; font-weight: bold }
+.src-doc-inlinetag { color: #0099FF }
+.src-doc-internal { color: #6699cc }
+.src-doc-tag { color: #0080CC }
+.src-doc-template { color: #0000FF }
+.src-doc-type { font-style: italic }
+.src-doc-var { font-style: italic }
+
+.tute-tag { color: #009999 }
+.tute-attribute-name { color: #0000FF }
+.tute-attribute-value { color: #0099FF }
+.tute-entity { font-weight: bold; }
+.tute-comment { font-style: italic }
+.tute-inline-tag { color: #636311; font-weight: bold }
+
+/* tutorial */
+
+.authors { }
+.author { font-style: italic; font-weight: bold }
+.author-blurb { margin: .5em 0em .5em 2em; font-size: 85%; font-weight: normal; font-style: normal }
+.example { border: 1px dashed #999999; background-color: #EEEEEE; padding: .5em; }
+.listing { border: 1px dashed #999999; background-color: #EEEEEE; padding: .5em; white-space: nowrap; }
+.release-info { font-size: 85%; font-style: italic; margin: 1em 0em }
+.ref-title-box { }
+.ref-title { }
+.ref-purpose { font-style: italic; color: #666666 }
+.ref-synopsis { }
+.title { font-weight: bold; margin: 1em 0em 0em 0em; padding: .25em; border: 2px solid #999999; background-color: #CCCCFF }
+.cmd-synopsis { margin: 1em 0em }
+.cmd-title { font-weight: bold }
+.toc { margin-left: 2em; padding-left: 0em }
+
+/*------------------------------------------------------------------------------
+ webfx-tree
+------------------------------------------------------------------------------*/
+
+.webfx-tree-container {
+ margin: 0px;
+ padding: 0px;
+ white-space: nowrap;
+ font: icon;
+}
+
+.webfx-tree-item {
+ padding: 0px;
+ margin: 0px;
+ color: black;
+ white-space: nowrap;
+ font: icon;
+}
+
+.webfx-tree-item a {
+ margin-left: 3px;
+ padding: 1px 2px 1px 2px;
+ color: black;
+ text-decoration: none;
+}
+
+.webfx-tree-item a:hover, .webfx-tree-item a:active, .webfx-tree-item a:focus {
+ color: black;
+ background: #CCCCFF;
+ text-decoration: none
+}
+
+.webfx-tree-item img {
+ vertical-align: middle;
+ border: 0px;
+}
+
+.webfx-tree-icon {
+ width: 16px;
+ height: 16px;
+}
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/method.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/method.tpl
new file mode 100755
index 00000000..06d57a12
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/method.tpl
@@ -0,0 +1,149 @@
+<A NAME='method_detail'></A>
+{section name=methods loop=$methods}
+{if $methods[methods].static}
+<a name="method{$methods[methods].function_name}" id="{$methods[methods].function_name}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="method-header">
+ <span class="method-title">static {$methods[methods].function_name}</span> (line <span class="line-number">{if $methods[methods].slink}{$methods[methods].slink}{else}{$methods[methods].line_number}{/if}</span>)
+ </div>
+
+ {include file="docblock.tpl" sdesc=$methods[methods].sdesc desc=$methods[methods].desc tags=$methods[methods].tags params=$methods[methods].params function=false}
+
+ <div class="method-signature">
+ static <span class="method-result">{$methods[methods].function_return}</span>
+ <span class="method-name">
+ {if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}
+ </span>
+ {if count($methods[methods].ifunction_call.params)}
+ ({section name=params loop=$methods[methods].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$methods[methods].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$methods[methods].ifunction_call.params[params].name}</span>{if $methods[methods].ifunction_call.params[params].hasdefault} = <span class="var-default">{$methods[methods].ifunction_call.params[params].default}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+
+ {if $methods[methods].params}
+ <ul class="parameters">
+ {section name=params loop=$methods[methods].params}
+ <li>
+ <span class="var-type">{$methods[methods].params[params].datatype}</span>
+ <span class="var-name">{$methods[methods].params[params].var}</span>{if $methods[methods].params[params].data}<span class="var-description">: {$methods[methods].params[params].data}</span>{/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+ {if $methods[methods].method_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$methods[methods].method_overrides.link}</dt>
+ {if $methods[methods].method_overrides.sdesc}
+ <dd>{$methods[methods].method_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+ {if $methods[methods].method_implements}
+ <hr class="separator" />
+ <div class="notes">Implementation of:</div>
+ {section name=imp loop=$methods[methods].method_implements}
+ <dl>
+ <dt>{$methods[methods].method_implements[imp].link}</dt>
+ {if $methods[methods].method_implements[imp].sdesc}
+ <dd>{$methods[methods].method_implements[imp].sdesc}</dd>
+ {/if}
+ </dl>
+ {/section}
+ {/if}
+
+ {if $methods[methods].descmethod}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=dm loop=$methods[methods].descmethod}
+ <li>
+ {$methods[methods].descmethod[dm].link}
+ {if $methods[methods].descmethod[dm].sdesc}
+ : {$methods[methods].descmethod[dm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+</div>
+{/if}
+{/section}
+{section name=methods loop=$methods}
+{if !$methods[methods].static}
+<a name="method{$methods[methods].function_name}" id="{$methods[methods].function_name}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="method-header">
+ <span class="method-title">{if $methods[methods].ifunction_call.constructor}Constructor {elseif $methods[methods].ifunction_call.destructor}Destructor {/if}{$methods[methods].function_name}</span> (line <span class="line-number">{if $methods[methods].slink}{$methods[methods].slink}{else}{$methods[methods].line_number}{/if}</span>)
+ </div>
+
+ {include file="docblock.tpl" sdesc=$methods[methods].sdesc desc=$methods[methods].desc tags=$methods[methods].tags params=$methods[methods].params function=false}
+
+ <div class="method-signature">
+ <span class="method-result">{$methods[methods].function_return}</span>
+ <span class="method-name">
+ {if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}
+ </span>
+ {if count($methods[methods].ifunction_call.params)}
+ ({section name=params loop=$methods[methods].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$methods[methods].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$methods[methods].ifunction_call.params[params].name}</span>{if $methods[methods].ifunction_call.params[params].hasdefault} = <span class="var-default">{$methods[methods].ifunction_call.params[params].default}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+
+ {if $methods[methods].params}
+ <ul class="parameters">
+ {section name=params loop=$methods[methods].params}
+ <li>
+ <span class="var-type">{$methods[methods].params[params].datatype}</span>
+ <span class="var-name">{$methods[methods].params[params].var}</span>{if $methods[methods].params[params].data}<span class="var-description">: {$methods[methods].params[params].data}</span>{/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+ {if $methods[methods].method_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$methods[methods].method_overrides.link}</dt>
+ {if $methods[methods].method_overrides.sdesc}
+ <dd>{$methods[methods].method_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+ {if $methods[methods].method_implements}
+ <hr class="separator" />
+ <div class="notes">Implementation of:</div>
+ {section name=imp loop=$methods[methods].method_implements}
+ <dl>
+ <dt>{$methods[methods].method_implements[imp].link}</dt>
+ {if $methods[methods].method_implements[imp].sdesc}
+ <dd>{$methods[methods].method_implements[imp].sdesc}</dd>
+ {/if}
+ </dl>
+ {/section}
+ {/if}
+
+ {if $methods[methods].descmethod}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=dm loop=$methods[methods].descmethod}
+ <li>
+ {$methods[methods].descmethod[dm].link}
+ {if $methods[methods].descmethod[dm].sdesc}
+ : {$methods[methods].descmethod[dm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+</div>
+{/if}
+{/section}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/page.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/page.tpl
new file mode 100755
index 00000000..b5980236
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/page.tpl
@@ -0,0 +1,211 @@
+{include file="header.tpl" top3=true}
+
+<h2 class="file-name">{$source_location}</h2>
+
+<a name="sec-description"></a>
+<div class="info-box">
+ <div class="info-box-title">Description</div>
+ <div class="nav-bar">
+ {if $classes || $includes || $defines || $globals || $functions}
+ <span class="disabled">Description</span> |
+ {/if}
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="docblock.tpl" desc=$desc sdesc=$sdesc tags=$tags}
+
+ {if $tutorial}
+ <hr class="separator" />
+ <div class="notes">Tutorial: <span class="tutorial">{$tutorial}</div>
+ {/if}
+ </div>
+</div>
+
+{if $classes}
+ <a name="sec-classes"></a>
+ <div class="info-box">
+ <div class="info-box-title">Classes</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ <span class="disabled">Classes</span>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <table cellpadding="2" cellspacing="0" class="class-table">
+ <tr>
+ <th class="class-table-header">Class</th>
+ <th class="class-table-header">Description</th>
+ </tr>
+ {section name=classes loop=$classes}
+ <tr>
+ <td style="padding-right: 2em; vertical-align: top">
+ {$classes[classes].link}
+ </td>
+ <td>
+ {if $classes[classes].sdesc}
+ {$classes[classes].sdesc}
+ {else}
+ {$classes[classes].desc}
+ {/if}
+ </td>
+ </tr>
+ {/section}
+ </table>
+ </div>
+ </div>
+{/if}
+
+{if $includes}
+ <a name="sec-includes"></a>
+ <div class="info-box">
+ <div class="info-box-title">Includes</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ <span class="disabled">Includes</span>
+ {if $defines || $globals || $functions}|{/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="include.tpl"}
+ </div>
+ </div>
+{/if}
+
+{if $defines}
+ <a name="sec-constants"></a>
+ <div class="info-box">
+ <div class="info-box-title">Constants</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ <span class="disabled">Constants</span>
+ {if $globals || $functions}|{/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="define.tpl"}
+ </div>
+ </div>
+{/if}
+
+{if $globals}
+ <a name="sec-variables"></a>
+ <div class="info-box">
+ <div class="info-box-title">Variables</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ <span class="disabled">Variables</span>
+ {if $functions}|{/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="global.tpl"}
+ </div>
+ </div>
+{/if}
+
+{if $functions}
+ <a name="sec-functions"></a>
+ <div class="info-box">
+ <div class="info-box-title">Functions</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ <span class="disabled">Functions</span>
+ </div>
+ <div class="info-box-body">
+ {include file="function.tpl"}
+ </div>
+ </div>
+{/if}
+
+{include file="footer.tpl" top3=true}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/pkgelementindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/pkgelementindex.tpl
new file mode 100755
index 00000000..dc283ad0
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/pkgelementindex.tpl
@@ -0,0 +1,17 @@
+{include file="header.tpl"}
+<a name="top"></a>
+<h2>[{$package}] element index</h2>
+{if count($packageindex) > 1}
+ <h3>Package indexes</h3>
+ <ul>
+ {section name=p loop=$packageindex}
+ {if $packageindex[p].title != $package}
+ <li><a href="elementindex_{$packageindex[p].title}.html">{$packageindex[p].title}</a></li>
+ {/if}
+ {/section}
+ </ul>
+{/if}
+<a href="elementindex.html">All elements</a>
+<br />
+{include file="basicindex.tpl" indexname=elementindex_$package}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/ric.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/ric.tpl
new file mode 100755
index 00000000..ad792475
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/ric.tpl
@@ -0,0 +1,6 @@
+{include file="header.tpl"}
+<div align="center"><h1>{$name}</h1></div>
+<pre>
+{$contents|htmlentities}
+</pre>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/todolist.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/todolist.tpl
new file mode 100755
index 00000000..f929ccdb
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/todolist.tpl
@@ -0,0 +1,14 @@
+{include file="header.tpl" title="Todo List"}
+<div align="center"><h1>Todo List</h1></div>
+{foreach from=$todos key=todopackage item=todo}
+<h2>{$todopackage}</h2>
+{section name=todo loop=$todo}
+<h3>{$todo[todo].link}</h3>
+<ul>
+{section name=t loop=$todo[todo].todos}
+ <li>{$todo[todo].todos[t]}</li>
+{/section}
+</ul>
+{/section}
+{/foreach}
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/top_frame.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/top_frame.tpl
new file mode 100755
index 00000000..36d1e5a1
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/top_frame.tpl
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+ <html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <!-- template designed by Marco Von Ballmoos -->
+ <title>{$title}</title>
+ <link rel="stylesheet" href="{$subdir}media/stylesheet.css" />
+ <link rel="stylesheet" href="{$subdir}media/banner.css" />
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+ </head>
+ <body>
+ <div class="banner">
+ <div class="banner-title">{$package}</div>
+ <div class="banner-menu">
+ <form>
+ <table cellpadding="0" cellspacing="0" style="width: 100%">
+ <tr>
+ <td>
+ {if count($ric) >= 1}
+ {assign var="last_ric_name" value=""}
+ {section name=ric loop=$ric}
+ {if $last_ric_name != ""} | {/if}
+ <a href="{$ric[ric].file}" target="right">{$ric[ric].name}</a>
+ {assign var="last_ric_name" value=$ric[ric].name}
+ {/section}
+ {/if}
+ </td>
+ <td style="width: 2em">&nbsp;</td>
+ <td style="text-align: right">
+ {if count($packages) > 1}
+ <span class="field">Packages</span>
+ <select class="package-selector" onchange="window.parent.left_bottom.location=this[selectedIndex].value">
+ {section name=p loop=$packages}
+ <option value="{$packages[p].link}">{$packages[p].title}</option>
+ {/section}
+ </select>
+ {/if}
+ </td>
+ </tr>
+ </table>
+ </form>
+ </div>
+ </div>
+ </body>
+ </html>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/tutorial.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/tutorial.tpl
new file mode 100755
index 00000000..3b9109d1
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/tutorial.tpl
@@ -0,0 +1,13 @@
+{include file="header.tpl" title=$title top3=true}
+
+{if $nav}
+ {include file="tutorial_nav.tpl" prev=$prev next=$next up=$up prevtitle=$prevtitle nexttitle=$nexttitle uptitle=$uptitle}
+{/if}
+
+{$contents}
+
+{if $nav}
+ {include file="tutorial_nav.tpl" prev=$prev next=$next up=$up prevtitle=$prevtitle nexttitle=$nexttitle uptitle=$uptitle}
+{/if}
+
+{include file="footer.tpl" top3=true} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/tutorial_nav.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/tutorial_nav.tpl
new file mode 100755
index 00000000..89952301
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/tutorial_nav.tpl
@@ -0,0 +1,41 @@
+<table class="tutorial-nav-box">
+ <tr>
+ <td style="width: 30%">
+ {if $prev}
+ <a href="{$prev}" class="nav-button">Previous</a>
+ {else}
+ <span class="nav-button-disabled">Previous</span>
+ {/if}
+ </td>
+ <td style="text-align: center">
+ {if $up}
+ <a href="{$up}" class="nav-button">Up</a>
+ {/if}
+ </td>
+ <td style="text-align: right; width: 30%">
+ {if $next}
+ <a href="{$next}" class="nav-button">Next</a>
+ {else}
+ <span class="nav-button-disabled">Next</span>
+ {/if}
+ </td>
+ </tr>
+ <tr>
+ <td style="width: 30%">
+ {if $prevtitle}
+ <span class="detail">{$prevtitle}</span>
+ {/if}
+ </td>
+ <td style="text-align: center">
+ {if $uptitle}
+ <span class="detail">{$uptitle}</span>
+ {/if}
+ </td>
+ <td style="text-align: right; width: 30%">
+ {if $nexttitle}
+ <span class="detail">{$nexttitle}</span>
+ {/if}
+ </td>
+ </tr>
+</table>
+ \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/tutorial_toc.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/tutorial_toc.tpl
new file mode 100755
index 00000000..3482249b
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/tutorial_toc.tpl
@@ -0,0 +1,40 @@
+{if count($toc)}
+<h1 class="title">Table of Contents</h1>
+<ul class="toc">
+ {assign var="lastcontext" value='refsect1'}
+ {section name=toc loop=$toc}
+
+ {if $toc[toc].tagname != $lastcontext}
+ {if $lastcontext == 'refsect1'}
+ <ul class="toc">
+ <li>{$toc[toc].link}</li>
+ {else}
+ {if $lastcontext == 'refsect2'}
+ {if $toc[toc].tagname == 'refsect1'}
+ </ul>
+ <li>{$toc[toc].link}</li>
+ {/if}
+ {if $toc[toc].tagname == 'refsect3'}
+ <ul class="toc">
+ <li>{$toc[toc].link}</li>
+ {/if}
+ {else}
+ </ul>
+ </ul>
+ <li>{$toc[toc].link}</li>
+ {/if}
+ {/if}
+ {assign var="lastcontext" value=$toc[toc].tagname}
+ {else}
+ <li>{$toc[toc].link}</li>
+ {/if}
+ {/section}
+ {if $lastcontext == 'refsect2'}
+ </ul>
+ {/if}
+ {if $lastcontext == 'refsect3'}
+ </ul>
+ </ul>
+ {/if}
+</ul>
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/tutorial_tree.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/tutorial_tree.tpl
new file mode 100755
index 00000000..40d9a4ff
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/tutorial_tree.tpl
@@ -0,0 +1,8 @@
+ var a{$name|replace:"-":"_"}node = new WebFXTreeItem('{$main.title|strip_tags|escape:"quotes"}','{$main.link}', parent_node);
+
+{if $haskids}
+ var a{$name|replace:"-":"_"}_old_parent_node = parent_node;
+ parent_node = a{$name|replace:"-":"_"}node;
+ {$kids}
+ parent_node = a{$name|replace:"-":"_"}_old_parent_node;
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/var.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/var.tpl
new file mode 100755
index 00000000..1b3ca2ff
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/default/templates/var.tpl
@@ -0,0 +1,90 @@
+{section name=vars loop=$vars}
+{if $vars[vars].static}
+<a name="var{$vars[vars].var_name}" id="{$vars[vars].var_name}"><!-- --></A>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="var-header">
+ <span class="var-title">
+ static <span class="var-type">{$vars[vars].var_type}</span>
+ <span class="var-name">{$vars[vars].var_name}</span>
+ {if $vars[vars].var_default} = <span class="var-default">{$vars[vars].var_default|replace:"\n":"<br />"}</span>{/if}
+ (line <span class="line-number">{if $vars[vars].slink}{$vars[vars].slink}{else}{$vars[vars].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$vars[vars].sdesc desc=$vars[vars].desc tags=$vars[vars].tags}
+
+ {if $vars[vars].var_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$vars[vars].var_overrides.link}</dt>
+ {if $vars[vars].var_overrides.sdesc}
+ <dd>{$vars[vars].var_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+
+ {if $vars[vars].descvar}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=vm loop=$vars[vars].descvar}
+ <li>
+ {$vars[vars].descvar[vm].link}
+ {if $vars[vars].descvar[vm].sdesc}
+ : {$vars[vars].descvar[vm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+</div>
+{/if}
+{/section}
+{section name=vars loop=$vars}
+{if !$vars[vars].static}
+<a name="var{$vars[vars].var_name}" id="{$vars[vars].var_name}"><!-- --></A>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="var-header">
+ <span class="var-title">
+ <span class="var-type">{$vars[vars].var_type}</span>
+ <span class="var-name">{$vars[vars].var_name}</span>
+ {if $vars[vars].var_default} = <span class="var-default">{$vars[vars].var_default|replace:"\n":"<br />"}</span>{/if}
+ (line <span class="line-number">{if $vars[vars].slink}{$vars[vars].slink}{else}{$vars[vars].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$vars[vars].sdesc desc=$vars[vars].desc tags=$vars[vars].tags}
+
+ {if $vars[vars].var_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$vars[vars].var_overrides.link}</dt>
+ {if $vars[vars].var_overrides.sdesc}
+ <dd>{$vars[vars].var_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+
+ {if $vars[vars].descvar}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=vm loop=$vars[vars].descvar}
+ <li>
+ {$vars[vars].descvar[vm].link}
+ {if $vars[vars].descvar[vm].sdesc}
+ : {$vars[vars].descvar[vm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+</div>
+{/if}
+{/section}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/options.ini b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/options.ini
new file mode 100755
index 00000000..084809be
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/options.ini
@@ -0,0 +1,577 @@
+preservedocbooktags = false
+
+;; used to highlight the {@source} inline tag, @filesource tag, and @example tag
+[highlightSourceTokens]
+;; format:
+;; T_CONSTANTNAME = open
+;; /T_CONSTANTNAME = close
+
+T_INCLUDE = <span class="src-inc">
+/T_INCLUDE = </span>
+T_INCLUDE_ONCE = <span class="src-inc">
+/T_INCLUDE_ONCE = </span>
+T_REQUIRE_ONCE = <span class="src-inc">
+/T_REQUIRE_ONCE = </span>
+T_REQUIRE_ONCE = <span class="src-inc">
+/T_REQUIRE_ONCE = </span>
+
+T_CONSTANT_ENCAPSED_STRING = <span class="src-str">
+/T_CONSTANT_ENCAPSED_STRING = </span>
+T_STRING_VARNAME = <span class="src-str">
+/T_STRING_VARNAME = </span>
+
+T_STRING = <span class="src-id">
+/T_STRING = </span>
+
+T_DNUMBER = <span class="src-num">
+/T_DNUMBER = </span>
+T_LNUMBER = <span class="src-num">
+/T_LNUMBER = </span>
+
+T_VARIABLE = <span class="src-var">
+/T_VARIABLE = </span>
+
+T_COMMENT = <span class="src-comm">
+/T_COMMENT = </span>
+T_ML_COMMENT = <span class="src-comm">
+/T_ML_COMMENT = </span>
+
+T_OBJECT_OPERATOR = <span class="src-sym">
+/T_OBJECT_OPERATOR = </span>
+
+T_ABSTRACT = <span class="src-key">
+/T_ABSTRACT = </span>
+T_CLONE = <span class="src-key">
+/T_CLONE = </span>
+T_HALT_COMPILER = <span class="src-key">
+/T_HALT_COMPILER = </span>
+T_ARRAY = <span class="src-key">
+/T_ARRAY = </span>
+T_AS = <span class="src-key">
+/T_AS = </span>
+T_BREAK = <span class="src-key">
+/T_BREAK = </span>
+T_CLASS = <span class="src-key">
+/T_CLASS = </span>
+T_CASE = <span class="src-key">
+/T_CASE = </span>
+T_CONST = <span class="src-key">
+/T_CONST = </span>
+T_CONTINUE = <span class="src-key">
+/T_CONTINUE = </span>
+T_DECLARE = <span class="src-key">
+/T_DECLARE = </span>
+T_DEFAULT = <span class="src-key">
+/T_DEFAULT = </span>
+T_ELSE = <span class="src-key">
+/T_ELSE = </span>
+T_ELSEIF = <span class="src-key">
+/T_ELSEIF = </span>
+T_EMPTY = <span class="src-key">
+/T_EMPTY = </span>
+T_ENDDECLARE = <span class="src-key">
+/T_ENDDECLARE = </span>
+T_ENDFOR = <span class="src-key">
+/T_ENDFOR = </span>
+T_ENDSWITCH = <span class="src-key">
+/T_ENDSWITCH = </span>
+T_ENDFOREACH = <span class="src-key">
+/T_ENDFOREACH = </span>
+T_ENDIF = <span class="src-key">
+/T_ENDIF = </span>
+T_ENDWHILE = <span class="src-key">
+/T_ENDWHILE = </span>
+T_EXIT = <span class="src-key">
+/T_EXIT = </span>
+T_EXTENDS = <span class="src-key">
+/T_EXTENDS = </span>
+T_FINAL = <span class="src-key">
+/T_FINAL = </span>
+T_FOR = <span class="src-key">
+/T_FOR = </span>
+T_FOREACH = <span class="src-key">
+/T_FOREACH = </span>
+T_FUNCTION = <span class="src-key">
+/T_FUNCTION = </span>
+T_GLOBAL = <span class="src-key">
+/T_GLOBAL = </span>
+T_IF = <span class="src-key">
+/T_IF = </span>
+T_IMPLEMENTS = <span class="src-key">
+/T_IMPLEMENTS = </span>
+T_INTERFACE = <span class="src-key">
+/T_INTERFACE = </span>
+T_LOGICAL_AND = <span class="src-key">
+/T_LOGICAL_AND = </span>
+T_LOGICAL_OR = <span class="src-key">
+/T_LOGICAL_OR = </span>
+T_LOGICAL_XOR = <span class="src-key">
+/T_LOGICAL_XOR = </span>
+T_NEW = <span class="src-key">
+/T_NEW = </span>
+T_PRIVATE = <span class="src-key">
+/T_PRIVATE = </span>
+T_PROTECTED = <span class="src-key">
+/T_PROTECTED = </span>
+T_PUBLIC = <span class="src-key">
+/T_PUBLIC = </span>
+T_RETURN = <span class="src-key">
+/T_RETURN = </span>
+T_STATIC = <span class="src-key">
+/T_STATIC = </span>
+T_SWITCH = <span class="src-key">
+/T_SWITCH = </span>
+T_VAR = <span class="src-key">
+/T_VAR = </span>
+T_WHILE = <span class="src-key">
+/T_WHILE = </span>
+
+T_DOUBLE_COLON = <span class="src-sym">
+/T_DOUBLE_COLON = </span>
+
+T_OPEN_TAG = <span class="src-php">
+/T_OPEN_TAG = </span>
+T_OPEN_TAG_WITH_ECHO = <span class="src-php">
+/T_OPEN_TAG_WITH_ECHO = </span>
+T_CLOSE_TAG = <span class="src-php">
+/T_CLOSE_TAG = </span>
+
+
+[highlightSource]
+;; this is for highlighting things that aren't tokens like "&"
+;; format:
+;; word = open
+;; /word = close
+@ = <span class="src-sym">
+/@ = </span>
+& = <span class="src-sym">
+/& = </span>
+[ = <span class="src-sym">
+/[ = </span>
+] = <span class="src-sym">
+/] = </span>
+! = <span class="src-sym">
+/! = </span>
+";" = <span class="src-sym">
+/; = </span>
+( = <span class="src-sym">
+/( = </span>
+) = <span class="src-sym">
+/) = </span>
+, = <span class="src-sym">
+/, = </span>
+{ = <span class="src-sym">
+/{ = </span>
+} = <span class="src-sym">
+/} = </span>
+""" = <span class="src-str">
+/" = </span>
+
+[highlightDocBlockSourceTokens]
+;; this is for docblock tokens, using by phpDocumentor_HighlightParser
+;; tagphptype is for "string" in @param string description, for example
+docblock = <span class="src-doc">
+/docblock = </span>
+tagphptype = <span class="src-doc-type">
+/tagphptype = </span>
+tagvarname = <span class="src-doc-var">
+/tagvarname = </span>
+coretag = <span class="src-doc-coretag">
+/coretag = </span>
+tag = <span class="src-doc-tag">
+/tag = </span>
+inlinetag = <span class="src-doc-inlinetag">
+/inlinetag = </span>
+internal = <span class="src-doc-internal">
+/internal = </span>
+closetemplate = <span class="src-doc-close-template">
+/closetemplate = </span>
+docblocktemplate = <span class="src-doc-template">
+/docblocktemplate = </span>
+
+[highlightTutorialSourceTokens]
+;; this is for XML DocBook-based tutorials, highlighted by phpDocumentor_TutorialHighlightParser
+;; <tag>
+opentag = <span class="tute-tag">
+/opentag = </span>
+;; </tag>
+closetag = <span class="tute-tag">
+/closetag = </span>
+;; <tag attribute="value">
+attribute = <span class="tute-attribute-name">
+/attribute = </span>
+;; <tag attribute="value">
+attributevalue = <span class="tute-attribute-value">
+/attributevalue = </span>
+;; &entity;
+entity = <span class="tute-entity">
+/entity = </span>
+;; <!-- comment -->
+comment = <span class="tute-comment">
+/comment = </span>
+;; {@inline tag}
+itag = <span class="tute-inline-tag">
+/itag = </span>
+
+;; used for translation of html in DocBlocks
+[desctranslate]
+ul = <ul>
+/ul = </ul>
+ol = <ol>
+/ol = </ol>
+li = <li>
+/li = </li>
+code =
+/code =
+var = <var>
+/var = </var>
+samp = <samp>
+/samp = </samp>
+kbd = <kbd>
+/kbd = </kbd>
+pre = <pre>
+/pre = </pre>
+p = <p>
+/p = </p>
+b = <strong>
+/b = </strong>
+i = <em>
+/i = </em>
+br = <br />
+
+[ppage]
+;; this is the DocBook package page translation section. All DocBook tags
+;; that have a corresponding html tag must be listed here. Entities should
+;; also be listed here
+;;
+;; examples:
+;; 1)
+;; tagname = newtagname
+;;
+;; This is the simplest case, where all attributes will be added into the
+;; starting tag and the ending tag will be html/xml style </tranlatedtagname>
+;; <tagname></tagname> becomes <newtagname></newtagname> and
+;; <tagname attr="value"></tagname> becomes
+;; <newtagname attr="value"></newtagname>
+;;
+;; 2)
+;; tagname = newtagname
+;; tagname->attr = newattrname
+;;
+;; in this case, everything will be like the first case, except tags like:
+;; <tagname attr="value"></tagname> will become
+;; <newtagname newattrname="value"></newtagname>
+;;
+;; 3)
+;; tagname = newtagname
+;; tagname->attr = newattrname
+;; tagname->attr+value = newvalue
+;;
+;; in this case, the value is also translated to another. This can be useful
+;; for instances such as focus="middle" changing to align="center" or something
+;; of that nature.
+;; <tagname attr="value"></tagname> will become
+;; <newtagname newattrname="newvalue"></newtagname>
+;;
+;; 4)
+;; tagname = newtagname
+;; tagname->attr1 = newattrname
+;; tagname->attr2 = newattrname
+;; tagname->attr1+value|attr2+value = newvalue
+;;
+;; in this case, two attributes combine to make one new attribute, and the combined
+;; value is translated into a new value
+;; <tagname attr1="value1" attr2="value2"></tagname> will become
+;; <newtagname newattrname="newvalue"></newtagname>
+;;
+;; 5)
+;; tagname = newtagname
+;; tagname!attr = dummy
+;;
+;; here, the attribute will be ignored. dummy is not used and may be any value
+;; <tagname attr="value"></tagname> will become
+;; <newtagname></newtagname>
+;;
+;; 6)
+;; tagname = newtagname
+;; tagname! = dummy
+;;
+;; here, all attributes will be ignored. dummy is not used and may be any value
+;; <tagname attr1="value" attr2="foo"></tagname> will become
+;; <newtagname></newtagname>
+;;
+;; 7)
+;; tagname = newtagname
+;; tagname/ = 1
+;;
+;; here, the tag will be translated as a single tag with no closing tag, and all
+;; attributes
+;; <tagname attr="val">{text text}</tagname> will become
+;; <newtagname attr="val" />
+;;
+;; 8)
+;; tagname = <starttaginfo />
+;; /tagname = closetagtext
+;;
+;; in this case, the text <starttaginfo> will be inserted exactly as entered for
+;; <tagname> and closetagtext for </tagname>
+;; <tagname attr="val"></tagname> will become
+;; <starttaginfo />closetagtext
+;;
+;; 9)
+;; $attr$my_attribute = newattrname
+;;
+;; tagname = newtagname
+;;
+;; in this case, all occurences of my_attribute in any tag will be changed to
+;; newattrname. This is useful for changing things like role="php" to
+;; class="php," for example. Note that the text "$attr$" MUST be on the line
+;; start for phpDocumentor to recognize it.
+;;
+;; 10)
+;; &entity; = translation text
+;; &quot; = &quot;
+;; &quot; = """
+;; &lt; = <
+;;
+;; Use this to control translation of entities to their appropriate values
+
+&nbsp; = &nbsp;
+&quot; = &quot;
+&rdquo; = &rdquo;
+&ldquo; = &ldquo;
+&amp; = &amp;
+&lt; = &lt;
+&gt; = &gt;
+&copy; = &copy;
+
+
+$attr$role = class
+
+abbrev = abbr
+
+blockquote = blockquote
+
+arg = span
+arg->choice = class
+
+author = <span class="author">
+/author = </span>
+author! = 0
+
+authorblurb = <div class="author-blurb">
+/authorblurb = </div>
+
+authorgroup = <div class="authors"><h2 class="title">Authors</h2>
+/authorgroup = </div>
+authorgroup! = 0
+
+caution = <span class="warning">
+/caution = </span>
+caution! = 0
+
+cmdsynopsis = <div class="cmd-synopsis">
+/cmdsynopsis = </div>
+
+command = <span class="cmd-title">
+/command = </span>
+
+copyright = <div class="notes">
+/copyright = </div>
+
+emphasis = em
+
+example = <div class="src-code">
+/example = </div>
+example! = 0
+
+function =
+/function = ()
+
+formalpara = p
+
+graphic = img
+graphic->fileref = src
+graphic/ =
+
+important = strong
+
+informalequation = blockquote
+
+informalexample = div
+
+inlineequation = em
+
+itemizedlist = ul
+
+listitem = li
+
+literal = code
+
+literallayout = span
+
+option = " "
+/option =
+
+orderedlist = ol
+
+para = p
+
+programlisting = <div class="src-code">
+/programlisting = </div>
+programlisting! = 0
+
+refentry = div
+
+refnamediv = <div class="ref-title-box">
+/refnamediv = </div>
+refnamediv! = 0
+
+refname = <h1 class="ref-title">
+/refname = </h1>
+
+refpurpose = <h2 class="ref-purpose">
+/refpurpose = </h2>
+
+refsynopsisdiv = <div class="ref-synopsis">
+/refsynopsisdiv = </div>
+refsynopsisdiv! = 0
+
+refsect1 = span
+
+refsect2 = span
+
+refsect3 =
+/refsect3 = <br />
+
+releaseinfo = <div class="release-info">(
+/releaseinfo = )</div>
+
+simpara =
+/simpara = <br />
+simpara! = 0
+
+subscript = sub
+
+superscript = super
+
+table = table
+
+table->colsep = rules
+table->rowsep = rules
+table->colsep+1|rowsep+1 =all
+table->colsep+1|rowsep+0 =cols
+table->colsep+0|rowsep+1 =rows
+
+table->frame =frame
+table->frame+all =border
+table->frame+none =void
+table->frame+sides =vsides
+table->frame+top =above
+table->frame+topbot =hsides
+
+thead = thead
+
+tfoot = tfoot
+
+tbody = tbody
+
+colspec = col
+
+tgroup = colgroup
+tgroup/ = 1
+tgroup->cols = span
+
+row = tr
+
+entry = td
+entry->morerows = colspan
+entry->morerows+1 =2
+entry->morerows+2 =3
+entry->morerows+3 =4
+entry->morerows+4 =5
+entry->morerows+5 =6
+entry->morerows+6 =7
+entry->morerows+7 =8
+entry->morerows+8 =9
+entry->morerows+9 =10
+entry->morerows+10 =11
+;; add more if you need more colspans
+
+warning = <span class="warning">
+/warning = </span>
+warning! = 0
+
+;; now begins the attributes that should be tags in cdata
+[$attr$id]
+open = a
+;close = /a
+cdata! = true
+quotevalues = true
+separator = "="
+;separateall = true
+$id = name
+
+;; now begins the sections that deal with <title>
+[refsynopsisdiv_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h1 class="title">
+close = </h1>
+
+[refsect1_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h2 class="title">
+close = </h2>
+
+[refsect2_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h3 class="title">
+close = </h3>
+
+[refsect3_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h4 class="title">
+close = </h4>
+
+[para_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <div class="title">
+close = </div>
+
+[formalpara_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <div class="title">
+close = </div>
+
+[example_title]
+;tag_attr = true
+;attr_name = title
+;cdata_start = true
+cdata_end = true
+open = </td></tr><tr><td><strong>
+close = </strong>
+
+[table_title]
+;tag_attr = true
+;attr_name = true
+cdata_start = true
+open = <caption>
+close = </caption>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/basicindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/basicindex.tpl
new file mode 100755
index 00000000..f90100b4
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/basicindex.tpl
@@ -0,0 +1,57 @@
+<div class="index-letter-menu">
+{section name=letter loop=$letters}
+ <a class="index-letter" href="{$indexname}.html#{$letters[letter].letter}">{$letters[letter].letter}</a>
+{/section}
+</div>
+
+{section name=index loop=$index}
+ <a name="{$index[index].letter}"></a>
+ <div class="index-letter-section">
+ <div style="float: left" class="index-letter-title">{$index[index].letter}</div>
+ <div style="float: right"><a href="#top">top</a></div>
+ <div style="clear: both"></div>
+ </div>
+ <dl>
+ {section name=contents loop=$index[index].index}
+ <dt class="field">
+ {if ($index[index].index[contents].title == "Variable")}
+ <img src="{$subdir}media/images/{if $index[index].index[contents].access == 'private'}Private{/if}{$index[index].index[contents].title}.png" alt="{$index[index].index[contents].title}" title="{$index[index].index[contents].title}" />
+ <span class="var-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Global")}
+ <img src="{$subdir}media/images/{$index[index].index[contents].title}.png" alt="{$index[index].index[contents].title}" title="{$index[index].index[contents].title}" />
+ <span class="var-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Method")}
+ <img src="{$subdir}media/images/{if $index[index].index[contents].constructor}Constructor{elseif $index[index].index[contents].destructor}Destructor{else}{if $index[index].index[contents].abstract}Abstract{/if}{if $index[index].index[contents].access == 'private'}Private{/if}{$index[index].index[contents].title}{/if}.png" alt="{$index[index].index[contents].title}" title="{$index[index].index[contents].title}" />
+ <span class="method-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Function")}
+ <img src="{$subdir}media/images/{$index[index].index[contents].title}.png" alt="{$index[index].index[contents].title}" title="{$index[index].index[contents].title}" />
+ <span class="method-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Constant")}
+ <img src="{$subdir}media/images/{$index[index].index[contents].title}.png" alt="{$index[index].index[contents].title}" title="{$index[index].index[contents].title}" />
+ <span class="const-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Page") || ($index[index].index[contents].title == "Include")}
+ <img src="{$subdir}media/images/{$index[index].index[contents].title}.png" alt="{$index[index].index[contents].title}" title="{$index[index].index[contents].title}" />
+ <span class="include-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Class")}
+ <img src="{$subdir}media/images/{if $index[index].index[contents].abstract}Abstract{/if}{if $index[index].index[contents].access == 'private'}Private{/if}{$index[index].index[contents].title}.png" alt="{$index[index].index[contents].title}" title="{$index[index].index[contents].title}" />
+ {$index[index].index[contents].name}
+ {else}
+ <img src="{$subdir}media/images/{$index[index].index[contents].title}.png" alt="{$index[index].index[contents].title}" title="{$index[index].index[contents].title}" />
+ {$index[index].index[contents].name}
+ {/if}
+ </dt>
+ <dd class="index-item-body">
+ <div class="index-item-details">{$index[index].index[contents].link} in {$index[index].index[contents].file_name}</div>
+ {if $index[index].index[contents].description}
+ <div class="index-item-description">{$index[index].index[contents].description}</div>
+ {/if}
+ </dd>
+ {/section}
+ </dl>
+{/section}
+
+<div class="index-letter-menu">
+{section name=letter loop=$letters}
+ <a class="index-letter" href="{$indexname}.html#{$letters[letter].letter}">{$letters[letter].letter}</a>
+{/section}
+</div>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/blank.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/blank.tpl
new file mode 100755
index 00000000..6a05f27e
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/blank.tpl
@@ -0,0 +1,13 @@
+<html>
+<head>
+ <title>{$maintitle}</title>
+ <link rel="stylesheet" href="{$subdir}media/stylesheet.css" />
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+</head>
+<body>
+<div align="center"><h1>{$maintitle}</h1></div>
+<b>Welcome to {$package}!</b><br />
+<br />
+This documentation was generated by <a href="{$phpdocwebsite}">phpDocumentor v{$phpdocversion}</a><br />
+</body>
+</html> \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/class.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/class.tpl
new file mode 100755
index 00000000..1999d25d
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/class.tpl
@@ -0,0 +1,444 @@
+{include file="header.tpl" top3=true}
+
+<h2 class="class-name"><img src="{$subdir}media/images/{if $abstract}{if $access == 'private'}AbstractPrivate{else}Abstract{/if}{else}{if $access == 'private'}Private{/if}{/if}Class_logo.png"
+ alt="{if $abstract}{if $access == 'private'}AbstractPrivate{else}Abstract{/if}{else}{if $access == 'private'}Private{/if}{/if} Class"
+ title="{if $abstract}{if $access == 'private'}AbstractPrivate{else}Abstract{/if}{else}{if $access == 'private'}Private{/if}{/if} Class"
+ style="vertical-align: middle">{if $is_interface}Interface{/if} {$class_name}</h2>
+
+<a name="sec-description"></a>
+<div class="info-box">
+ <div class="info-box-title">Description</div>
+ <div class="nav-bar">
+ {if $children || $vars || $ivars || $methods || $imethods || $consts || $iconsts}
+ <span class="disabled">Description</span> |
+ {/if}
+ {if $children}
+ <a href="#sec-descendents">Descendents</a>
+ {if $vars || $ivars || $methods || $imethods || $consts || $iconsts}|{/if}
+ {/if}
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ {if $methods || $imethods}|{/if}
+ {/if}
+ {if $methods || $imethods}
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {if $implements}
+ <p class="implements">
+ Implements interfaces:
+ <ul>
+ {foreach item="int" from=$implements}<li>{$int}</li>{/foreach}
+ </ul>
+ </p>
+ {/if}
+ {include file="docblock.tpl" type="class" sdesc=$sdesc desc=$desc}
+ <p class="notes">
+ Located in <a class="field" href="{$page_link}">{$source_location}</a> (line <span class="field">{if $class_slink}{$class_slink}{else}{$line_number}{/if}</span>)
+ </p>
+
+ {if $tutorial}
+ <hr class="separator" />
+ <div class="notes">Tutorial: <span class="tutorial">{$tutorial}</span></div>
+ {/if}
+
+ <pre>{section name=tree loop=$class_tree.classes}{$class_tree.classes[tree]}{$class_tree.distance[tree]}{/section}</pre>
+
+ {if $conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with classes:</span><br />
+ {section name=me loop=$conflicts.conflicts}
+ {$conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+ </div>
+</div>
+
+{if $children}
+ <a name="sec-descendents"></a>
+ <div class="info-box">
+ <div class="info-box-title">Direct descendents</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ <span class="disabled">Descendents</span>
+ {if $vars || $ivars || $methods || $imethods || $consts || $iconsts}|{/if}
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ {if $methods || $imethods}|{/if}
+ {/if}
+ {if $methods || $imethods}
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <table cellpadding="2" cellspacing="0" class="class-table">
+ <tr>
+ <th class="class-table-header">Class</th>
+ <th class="class-table-header">Description</th>
+ </tr>
+ {section name=kids loop=$children}
+ <tr>
+ <td style="padding-right: 2em; white-space: nowrap">
+ <img src="{$subdir}media/images/{if $children[kids].abstract}Abstract{/if}{if $children[kids].access == 'private'}Private{/if}Class.png"
+ alt="{if $children[kids].abstract}Abstract{/if}{if $children[kids].access == 'private'}Private{/if} class"
+ title="{if $children[kids].abstract}Abstract{/if}{if $children[kids].access == 'private'}Private{/if} class"
+ style="vertical-align: center"/>
+ {$children[kids].link}
+ </td>
+ <td>
+ {if $children[kids].sdesc}
+ {$children[kids].sdesc}
+ {else}
+ {$children[kids].desc}
+ {/if}
+ </td>
+ </tr>
+ {/section}
+ </table>
+ </div>
+ </div>
+{/if}
+
+{if $consts}
+ <a name="sec-const-summary"></a>
+ <div class="info-box">
+ <div class="info-box-title">Class Constant Summary</span></div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendants</a> |
+ {/if}
+ <span class="disabled">Constants</span> (<a href="#sec-consts">details</a>)
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ |
+ {/if}
+ {if $methods || $imethods}
+ |
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <div class="const-summary">
+ {section name=consts loop=$consts}
+ <div class="const-title">
+ <img src="{$subdir}media/images/Constant.png" alt=" " />
+ <a href="#{$consts[consts].const_name}" title="details" class="const-name">{$consts[consts].const_name}</a> = <span class="var-type">{$consts[consts].const_value}</span>
+
+ </div>
+ {/section}
+ </div>
+ </div>
+ </div>
+{/if}
+
+{if $vars}
+ <a name="sec-var-summary"></a>
+ <div class="info-box">
+ <div class="info-box-title">Variable Summary</span></div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendants</a> |
+ {/if}
+ <span class="disabled">Vars</span> (<a href="#sec-vars">details</a>)
+ {if $methods || $imethods}
+ |
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <div class="var-summary">
+ {section name=vars loop=$vars}
+ {if $vars[vars].static}
+ <div class="var-title">
+ <img src="{$subdir}media/images/StaticVariable.png" alt=" " />
+ static <span class="var-type">{$vars[vars].var_type}</span>
+ <a href="#{$vars[vars].var_name}" title="details" class="var-name">{$vars[vars].var_name}</a>
+ </div>
+ {/if}
+ {/section}
+ {section name=vars loop=$vars}
+ {if !$vars[vars].static}
+ <div class="var-title">
+ <img src="{$subdir}media/images/{if $vars[vars].access == 'private'}PrivateVariable{else}Variable{/if}.png" alt=" " />
+ <span class="var-type">{$vars[vars].var_type}</span>
+ <a href="#{$vars[vars].var_name}" title="details" class="var-name">{$vars[vars].var_name}</a>
+ </div>
+ {/if}
+ {/section}
+ </div>
+ </div>
+ </div>
+{/if}
+
+{if $methods}
+ <a name="sec-method-summary"></a>
+ <div class="info-box">
+ <div class="info-box-title">Method Summary</span></div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendants</a> |
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ |
+ {/if}
+ <span class="disabled">Methods</span> (<a href="#sec-methods">details</a>)
+ </div>
+ <div class="info-box-body">
+ <div class="method-summary">
+ {section name=methods loop=$methods}
+ {if $methods[methods].static}
+ <div class="method-definition">
+ <img src="{$subdir}media/images/StaticMethod.png" alt=" "/>
+ static {if $methods[methods].function_return}
+ <span class="method-result">{$methods[methods].function_return}</span>
+ {/if}
+ <a href="#{$methods[methods].function_name}" title="details" class="method-name">{if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}</a>
+ {if count($methods[methods].ifunction_call.params)}
+ ({section name=params loop=$methods[methods].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$methods[methods].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$methods[methods].ifunction_call.params[params].name}</span>{if $methods[methods].ifunction_call.params[params].hasdefault} = <span class="var-default">{$methods[methods].ifunction_call.params[params].default}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+ {/if}
+ {/section}
+ {section name=methods loop=$methods}
+ {if !$methods[methods].static}
+ <div class="method-definition">
+ <img src="{$subdir}media/images/{if $methods[methods].ifunction_call.constructor}Constructor{elseif $methods[methods].ifunction_call.destructor}Destructor{elseif $methods[methods].access == 'private'}{if $methods[methods].abstract}Abstract{/if}PrivateMethod{else}{if $methods[methods].abstract}Abstract{/if}Method{/if}.png" alt=" "/>
+ {if $methods[methods].function_return}
+ <span class="method-result">{$methods[methods].function_return}</span>
+ {/if}
+ <a href="#{$methods[methods].function_name}" title="details" class="method-name">{if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}</a>
+ {if count($methods[methods].ifunction_call.params)}
+ ({section name=params loop=$methods[methods].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$methods[methods].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$methods[methods].ifunction_call.params[params].name}</span>{if $methods[methods].ifunction_call.params[params].hasdefault} = <span class="var-default">{$methods[methods].ifunction_call.params[params].default}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+ {/if}
+ {/section}
+ </div>
+ </div>
+ </div>
+{/if}
+
+{if $vars || $ivars}
+ <a name="sec-vars"></a>
+ <div class="info-box">
+ <div class="info-box-title">Variables</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendents</a> |
+ {/if}
+ {if $methods}
+ <a href="#sec-var-summary">Vars</a> (<span class="disabled">details</span>)
+ {else}
+ <span class="disabled">Vars</span>
+ {/if}
+
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ {if $methods || $imethods}
+ |
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="var.tpl"}
+ {if $ivars}
+ <h4>Inherited Variables</h4>
+ <A NAME='inherited_vars'><!-- --></A>
+ {section name=ivars loop=$ivars}
+ <p>Inherited from <span class="classname">{$ivars[ivars].parent_class}</span></p>
+ <blockquote>
+ {section name=ivars2 loop=$ivars[ivars].ivars}
+ <img src="{$subdir}media/images/{if $ivars[ivars].ivars[ivars2].access == 'private'}PrivateVariable{else}Variable{/if}.png" />
+ <span class="var-title">
+ <span class="var-name">{$ivars[ivars].ivars[ivars2].link}</span>{if $ivars[ivars].ivars[ivars2].ivar_sdesc}: {$ivars[ivars].ivars[ivars2].ivar_sdesc}{/if}<br>
+ </span>
+ {/section}
+ </blockquote>
+ {/section}
+ {/if}
+ </div>
+ </div>
+{/if}
+
+{if $methods || $imethods}
+ <a name="sec-methods"></a>
+ <div class="info-box">
+ <div class="info-box-title">Methods</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendents</a> |
+ {/if}
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<span class="disabled">details</span>)
+ {else}
+ <span class="disabled">Methods</span>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="method.tpl"}
+ {if $imethods}
+ <h4>Inherited Methods</h4>
+ <a name='inherited_methods'><!-- --></a>
+ {section name=imethods loop=$imethods}
+ <!-- =========== Summary =========== -->
+ <p>Inherited From <span class="classname">{$imethods[imethods].parent_class}</span></p>
+ <blockquote>
+ {section name=im2 loop=$imethods[imethods].imethods}
+ <img src="{$subdir}media/images/{if $imethods[imethods].imethods[im2].constructor}Constructor{elseif $imethods[imethods].imethods[im2].destructor}Destructor{elseif $imethods[imethods].imethods[im2].access == 'private'}{if $imethods[imethods].imethods[im2].abstract}Abstract{/if}PrivateMethod{else}{if $imethods[imethods].imethods[im2].abstract}Abstract{/if}Method{/if}.png" alt=" "/>
+ <span class="method-name">{$imethods[imethods].imethods[im2].link}</span>{if $imethods[imethods].imethods[im2].ifunction_sdesc}: {$imethods[imethods].imethods[im2].ifunction_sdesc}{/if}<br>
+ {/section}
+ </blockquote>
+ {/section}
+ {/if}
+ </div>
+ </div>
+{/if}
+
+{if $consts || $iconsts}
+ <a name="sec-consts"></a>
+ <div class="info-box">
+ <div class="info-box-title">Class Constants</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendants</a> |
+ {/if}
+ {if $methods}
+ <a href="#sec-var-summary">Constants</a> (<span class="disabled">details</span>)
+ {else}
+ <span class="disabled">Constants</span>
+ {/if}
+
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ {/if}
+ {if $methods || $imethods}
+ |
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="const.tpl"}
+ {if $iconsts}
+ <h4>Inherited Constants</h4>
+ <A NAME='inherited_vars'><!-- --></A>
+ {section name=iconsts loop=$iconsts}
+ <p>Inherited from <span class="classname">{$iconsts[iconsts].parent_class}</span></p>
+ <blockquote>
+ {section name=iconsts2 loop=$iconsts[iconsts].iconsts}
+ <img src="{$subdir}media/images/{if $iconsts[iconsts].iconsts[iconsts2].access == 'private'}PrivateVariable{else}Variable{/if}.png" />
+ <span class="const-title">
+ <span class="const-name">{$iconsts[iconsts].iconsts[iconsts2].link}</span>{if $iconsts[iconsts].iconsts[iconsts2].iconst_sdesc}: {$iconsts[iconsts].iconsts[iconsts2].iconst_sdesc}{/if}<br>
+ </span>
+ {/section}
+ </blockquote>
+ {/section}
+ {/if}
+ </div>
+ </div>
+{/if}
+
+{include file="footer.tpl" top3=true}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/classtrees.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/classtrees.tpl
new file mode 100755
index 00000000..952e6d50
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/classtrees.tpl
@@ -0,0 +1,19 @@
+{include file="header.tpl" top1=true}
+
+<!-- Start of Class Data -->
+<H2>
+ {$smarty.capture.title}
+</H2>
+{if $interfaces}
+{section name=classtrees loop=$interfaces}
+<h2>Root interface {$interfaces[classtrees].class}</h2>
+{$interfaces[classtrees].class_tree}
+{/section}
+{/if}
+{if $classtrees}
+{section name=classtrees loop=$classtrees}
+<h2>Root class {$classtrees[classtrees].class}</h2>
+{$classtrees[classtrees].class_tree}
+{/section}
+{/if}
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/const.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/const.tpl
new file mode 100644
index 00000000..c26ff92d
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/const.tpl
@@ -0,0 +1,18 @@
+{section name=consts loop=$consts}
+<a name="const{$consts[consts].const_name}" id="{$consts[consts].const_name}"><!-- --></A>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="const-header">
+ <img src="{$subdir}media/images/{if $consts[consts].access == 'private'}PrivateVariable{else}Variable{/if}.png" />
+ <span class="const-title">
+ <span class="const-name">{$consts[consts].const_name}</span>
+ = <span class="const-default">{$consts[consts].const_value|replace:"\n":"<br />"}</span>
+ (line <span class="line-number">{if $consts[consts].slink}{$consts[consts].slink}{else}{$consts[consts].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$consts[consts].sdesc desc=$consts[consts].desc tags=$consts[consts].tags}
+
+</div>
+{/section}
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/define.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/define.tpl
new file mode 100755
index 00000000..94078960
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/define.tpl
@@ -0,0 +1,25 @@
+{section name=def loop=$defines}
+<a name="{$defines[def].define_link}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <img src="{$subdir}media/images/Constant.png" />
+ <span class="const-title">
+ <span class="const-name">{$defines[def].define_name}</span> = {$defines[def].define_value|replace:"\n":"<br />"}
+ (line <span class="line-number">{if $defines[def].slink}{$defines[def].slink}{else}{$defines[def].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$defines[def].sdesc desc=$defines[def].desc tags=$defines[def].tags}
+
+ {if $globals[glob].global_conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with constants:</span><br />
+ {section name=me loop=$defines[def].define_conflicts.conflicts}
+ {$defines[def].define_conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+
+</div>
+{/section} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/docblock.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/docblock.tpl
new file mode 100755
index 00000000..783d5271
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/docblock.tpl
@@ -0,0 +1,14 @@
+<!-- ========== Info from phpDoc block ========= -->
+{if $sdesc}
+<p class="short-description">{$sdesc}</p>
+{/if}
+{if $desc}
+<p class="description">{$desc}</p>
+{/if}
+{if $tags}
+ <ul class="tags">
+ {section name=tags loop=$tags}
+ <li><span class="field">{$tags[tags].keyword}:</span> {$tags[tags].data}</li>
+ {/section}
+ </ul>
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/elementindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/elementindex.tpl
new file mode 100755
index 00000000..d5964f99
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/elementindex.tpl
@@ -0,0 +1,12 @@
+{include file="header.tpl" noleftindex=true}
+<a name="top"></a>
+<h2>Full index</h2>
+<h3>Package indexes</h3>
+<ul>
+{section name=p loop=$packageindex}
+ <li><a href="elementindex_{$packageindex[p].title}.html">{$packageindex[p].title}</a></li>
+{/section}
+</ul>
+<br />
+{include file="basicindex.tpl" indexname="elementindex"}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/errors.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/errors.tpl
new file mode 100755
index 00000000..0f526584
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/errors.tpl
@@ -0,0 +1,21 @@
+{include file="header.tpl" noleftindex=true}
+{section name=files loop=$files}
+<a href="#{$files[files].file}">{$files[files].file}</a><br>
+{/section}
+{foreach key=file item=issues from=$all}
+<a name="{$file}"></a>
+<h1>{$file}</h1>
+{if count($issues.warnings)}
+<h2>Warnings:</h2><br>
+{section name=warnings loop=$issues.warnings}
+<b>{$issues.warnings[warnings].name}</b> - {$issues.warnings[warnings].listing}<br>
+{/section}
+{/if}
+{if count($issues.errors)}
+<h2>Errors:</h2><br>
+{section name=errors loop=$issues.errors}
+<b>{$issues.errors[errors].name}</b> - {$issues.errors[errors].listing}<br>
+{/section}
+{/if}
+{/foreach}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/examplesource.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/examplesource.tpl
new file mode 100755
index 00000000..8abf74ce
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/examplesource.tpl
@@ -0,0 +1,6 @@
+{include file="header.tpl" title=$title}
+<h1>{$title}</h1>
+<div class="listing">
+{$source}
+</div>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/filesource.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/filesource.tpl
new file mode 100755
index 00000000..239f7b41
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/filesource.tpl
@@ -0,0 +1,8 @@
+{capture name="tutle"}File Source for {$name}{/capture}
+{include file="header.tpl" title=$smarty.capture.tutle}
+<h1>Source for file {$name}</h1>
+<p>Documentation is available at {$docs}</p>
+<div class="src-code">
+{$source}
+</div>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/footer.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/footer.tpl
new file mode 100755
index 00000000..8d0f79db
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/footer.tpl
@@ -0,0 +1,8 @@
+{if !$index}
+ <p class="notes" id="credit">
+ Documentation generated on {$date} by <a href="{$phpdocwebsite}" target="_blank">phpDocumentor {$phpdocversion}</a>
+ </p>
+{/if}
+ {if $top3}</div>{/if}
+</body>
+</html>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/function.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/function.tpl
new file mode 100755
index 00000000..e62a98ae
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/function.tpl
@@ -0,0 +1,44 @@
+{section name=func loop=$functions}
+<a name="{$functions[func].function_dest}" id="{$functions[func].function_dest}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <img src="{$subdir}media/images/Function.png" />
+ <span class="method-title">{$functions[func].function_name}</span> (line <span class="line-number">{if $functions[func].slink}{$functions[func].slink}{else}{$functions[func].line_number}{/if}</span>)
+ </div>
+
+ {include file="docblock.tpl" sdesc=$functions[func].sdesc desc=$functions[func].desc tags=$functions[func].tags params=$functions[func].params function=false}
+ <div class="method-signature">
+ <span class="method-result">{$functions[func].function_return}</span>
+ <span class="method-name">
+ {if $functions[func].ifunction_call.returnsref}&amp;{/if}{$functions[func].function_name}
+ </span>
+ {if count($functions[func].ifunction_call.params)}
+ ({section name=params loop=$functions[func].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $functions[func].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$functions[func].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$functions[func].ifunction_call.params[params].name}</span>{if $functions[func].ifunction_call.params[params].hasdefault} = <span class="var-default">{$functions[func].ifunction_call.params[params].default|escape:"html"}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+
+ {if $functions[func].params}
+ <ul class="parameters">
+ {section name=params loop=$functions[func].params}
+ <li>
+ <span class="var-type">{$functions[func].params[params].datatype}</span>
+ <span class="var-name">{$functions[func].params[params].var}</span>{if $functions[func].params[params].data}<span class="var-description">: {$functions[func].params[params].data}</span>{/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+ {if $functions[func].function_conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with functions:</span><br />
+ {section name=me loop=$functions[func].function_conflicts.conflicts}
+ {$functions[func].function_conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+
+</div>
+{/section}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/global.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/global.tpl
new file mode 100755
index 00000000..d37bda37
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/global.tpl
@@ -0,0 +1,27 @@
+{section name=glob loop=$globals}
+<a name="{$globals[glob].global_link}" id="{$globals[glob].global_link}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <img src="{$subdir}media/images/Global.png" />
+ <span class="var-title">
+ <span class="var-type">{$globals[glob].global_type}</span>
+ <span class="var-name">{$globals[glob].global_name}</span>
+ {if $vars[vars].var_default} = <span class="var-default">{$globals[glob].global_value|replace:"\n":"<br />"}</span>{/if}
+ (line <span class="line-number">{if $globals[glob].slink}{$globals[glob].slink}{else}{$globals[glob].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$globals[glob].sdesc desc=$globals[glob].desc tags=$globals[glob].tags}
+
+ {if $globals[glob].global_conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with global variables:</span><br />
+ {section name=me loop=$globals[glob].global_conflicts.conflicts}
+ {$globals[glob].global_conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+
+</div>
+{/section} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/header.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/header.tpl
new file mode 100755
index 00000000..0d626190
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/header.tpl
@@ -0,0 +1,95 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+ <html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <!-- template designed by Marco Von Ballmoos -->
+ <title>{$title}</title>
+ <link rel="stylesheet" href="{$subdir}media/stylesheet.css" />
+ {if $top2 || $top3}
+ <script src="{$subdir}media/lib/classTree.js"></script>
+ {/if}
+ {if $top2}
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+ {/if}
+ {if $top3 || $top2}
+ <script language="javascript" type="text/javascript">
+ var imgPlus = new Image();
+ var imgMinus = new Image();
+ imgPlus.src = "{$subdir}media/images/plus.png";
+ imgMinus.src = "{$subdir}media/images/minus.png";
+
+ function showNode(Node){ldelim}
+ switch(navigator.family){ldelim}
+ case 'nn4':
+ // Nav 4.x code fork...
+ var oTable = document.layers["span" + Node];
+ var oImg = document.layers["img" + Node];
+ break;
+ case 'ie4':
+ // IE 4/5 code fork...
+ var oTable = document.all["span" + Node];
+ var oImg = document.all["img" + Node];
+ break;
+ case 'gecko':
+ // Standards Compliant code fork...
+ var oTable = document.getElementById("span" + Node);
+ var oImg = document.getElementById("img" + Node);
+ break;
+ {rdelim}
+ oImg.src = imgMinus.src;
+ oTable.style.display = "block";
+ {rdelim}
+
+ function hideNode(Node){ldelim}
+ switch(navigator.family){ldelim}
+ case 'nn4':
+ // Nav 4.x code fork...
+ var oTable = document.layers["span" + Node];
+ var oImg = document.layers["img" + Node];
+ break;
+ case 'ie4':
+ // IE 4/5 code fork...
+ var oTable = document.all["span" + Node];
+ var oImg = document.all["img" + Node];
+ break;
+ case 'gecko':
+ // Standards Compliant code fork...
+ var oTable = document.getElementById("span" + Node);
+ var oImg = document.getElementById("img" + Node);
+ break;
+ {rdelim}
+ oImg.src = imgPlus.src;
+ oTable.style.display = "none";
+ {rdelim}
+
+ function nodeIsVisible(Node){ldelim}
+ switch(navigator.family){ldelim}
+ case 'nn4':
+ // Nav 4.x code fork...
+ var oTable = document.layers["span" + Node];
+ break;
+ case 'ie4':
+ // IE 4/5 code fork...
+ var oTable = document.all["span" + Node];
+ break;
+ case 'gecko':
+ // Standards Compliant code fork...
+ var oTable = document.getElementById("span" + Node);
+ break;
+ {rdelim}
+ return (oTable && oTable.style.display == "block");
+ {rdelim}
+
+ function toggleNodeVisibility(Node){ldelim}
+ if (nodeIsVisible(Node)){ldelim}
+ hideNode(Node);
+ {rdelim}else{ldelim}
+ showNode(Node);
+ {rdelim}
+ {rdelim}
+ </script>
+ {/if}
+ </head>
+ <body>
+ {if $top3}<div class="page-body">{/if}
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/include.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/include.tpl
new file mode 100755
index 00000000..f264afd3
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/include.tpl
@@ -0,0 +1,17 @@
+{section name=includes loop=$includes}
+<a name="{$includes[includes].include_file}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <img src="{$subdir}media/images/Page.png" alt=" " />
+ <span class="include-title">
+ <span class="include-type">{$includes[includes].include_name}</span>
+ (<span class="include-name">{$includes[includes].include_value}</span>)
+ (line <span class="line-number">{if $includes[includes].slink}{$includes[includes].slink}{else}{$includes[includes].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$includes[includes].sdesc desc=$includes[includes].desc tags=$includes[includes].tags}
+
+</div>
+{/section} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/index.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/index.tpl
new file mode 100755
index 00000000..7cd61094
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/index.tpl
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//FR"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
+ <html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+ <!-- Generated by phpDocumentor on {$date} -->
+ <title>{$title}</title>
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+</head>
+
+<FRAMESET rows='120,*'>
+ <FRAME src='packages.html' name='left_top' frameborder="1" bordercolor="#999999">
+ <FRAMESET cols='25%,*'>
+ <FRAME src='{$start}' name='left_bottom' frameborder="1" bordercolor="#999999">
+ <FRAME src='{$blank}.html' name='right' frameborder="1" bordercolor="#999999">
+ </FRAMESET>
+ <NOFRAMES>
+ <H2>Frame Alert</H2>
+ <P>This document is designed to be viewed using the frames feature.
+ If you see this message, you are using a non-frame-capable web client.</P>
+ </NOFRAMES>
+</FRAMESET>
+</HTML>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/left_frame.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/left_frame.tpl
new file mode 100755
index 00000000..a38cb29f
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/left_frame.tpl
@@ -0,0 +1,250 @@
+{include file="header.tpl" top2=true}
+<h3 class="package-title">{$info.0.package}</h3>
+<div class="tree">
+<script language="Javascript">
+if (document.getElementById) {ldelim}
+{section name=p loop=$info}
+ {if $info[p].subpackage == ""}
+ var tree = new WebFXTree('<span class="package">{$info.0.package}</span>');
+ tree.setBehavior('classic');
+ tree.openIcon = 'media/images/package.png';
+ tree.icon = 'media/images/package.png';
+
+ {if $hastodos}
+ var todos = new WebFXTreeItem('To-do List', '{$todolink}');
+ todos.openIcon = 'media/images/Index.png';
+ todos.icon = 'media/images/Index.png';
+ tree.add(todos);
+ {/if}
+
+ var class_trees = new WebFXTreeItem('Class trees', '{$classtreepage}.html');
+ class_trees.openIcon = 'media/images/Index.png';
+ class_trees.icon = 'media/images/Index.png';
+ tree.add(class_trees);
+
+ var elements = new WebFXTreeItem('Index of elements', '{$elementindex}.html');
+ elements.openIcon = 'media/images/Index.png';
+ elements.icon = 'media/images/Index.png';
+ tree.add(elements);
+
+ var parent_node;
+
+ {if $info[p].tutorials}
+ var tree_tutorial = new WebFXTreeItem('Tutorial(s)/Manual(s)', '');
+ tree_tutorial.openIcon = 'media/images/tutorial_folder.png';
+ tree_tutorial.icon = 'media/images/tutorial_folder.png';
+ tree.add(tree_tutorial);
+
+ {if $info[p].tutorials.pkg}
+ var tree_inner_tutorial = new WebFXTreeItem('Package-level', '');
+ tree_inner_tutorial.openIcon = 'media/images/package_folder.png';
+ tree_inner_tutorial.icon = 'media/images/package_folder.png';
+ tree_tutorial.add(tree_inner_tutorial);
+
+ parent_node = tree_inner_tutorial;
+ {section name=ext loop=$info[p].tutorials.pkg}
+ {$info[p].tutorials.pkg[ext]}
+ {/section}
+ {/if}
+
+ {if $info[p].tutorials.cls}
+ var tree_inner_tutorial = new WebFXTreeItem('Class-level', '');
+ tree_inner_tutorial.openIcon = 'media/images/class_folder.png';
+ tree_inner_tutorial.icon = 'media/images/class_folder.png';
+ tree_tutorial.add(tree_inner_tutorial);
+
+ parent_node = tree_inner_tutorial;
+ {section name=ext loop=$info[p].tutorials.cls}
+ {$info[p].tutorials.cls[ext]}
+ {/section}
+ {/if}
+
+ {if $info[p].tutorials.proc}
+ var tree_inner_tutorial = new WebFXTreeItem('Function-level', '');
+ tree_inner_tutorial.openIcon = 'media/images/function_folder.png';
+ tree_inner_tutorial.icon = 'media/images/function_folder.png';
+ tree_tutorial.add(tree_inner_tutorial);
+
+ parent_node = tree_inner_tutorial;
+ {section name=ext loop=$info[p].tutorials.proc}
+ {$info[p].tutorials.proc[ext]}
+ {/section}
+ {/if}
+ {/if}
+
+ {if $info[p].hasinterfaces}
+ var tree_classe = new WebFXTreeItem('Interface(s)', '{$packagedoc|escape:"quotes"}');
+ tree_classe.openIcon = 'media/images/class_folder.png';
+ tree_classe.icon = 'media/images/class_folder.png';
+
+ {section name=class loop=$info[p].classes}
+ {if $info[p].classes[class].is_interface}
+ var classe = new WebFXTreeItem('{$info[p].classes[class].title|escape:"quotes"}', '{$info[p].classes[class].link|escape:"quotes"}');
+ classe.openIcon = 'media/images/Interface.png';
+ classe.icon = 'media/images/Interface.png';
+ tree_classe.add(classe);
+ {/if}
+ {/section}
+
+ tree.add(tree_classe);
+ {/if}
+
+ {if $info[p].hasclasses}
+ var tree_classe = new WebFXTreeItem('Class(es)', '{$packagedoc|escape:"quotes"}');
+ tree_classe.openIcon = 'media/images/class_folder.png';
+ tree_classe.icon = 'media/images/class_folder.png';
+
+ {section name=class loop=$info[p].classes}
+ {if $info[p].classes[class].is_class}
+ var classe = new WebFXTreeItem('{$info[p].classes[class].title|escape:"quotes"}', '{$info[p].classes[class].link|escape:"quotes"}');
+ classe.openIcon = 'media/images/{if $info[p].classes[class].abstract}Abstract{/if}{if $info[p].classes[class].access == 'private'}Private{/if}Class.png';
+ classe.icon = 'media/images/{if $info[p].classes[class].abstract}Abstract{/if}{if $info[p].classes[class].access == 'private'}Private{/if}Class.png';
+ tree_classe.add(classe);
+ {/if}
+ {/section}
+
+ tree.add(tree_classe);
+ {/if}
+
+ {if $info[p].functions}
+ var tree_function = new WebFXTreeItem('Function(s)', '{$packagedoc|escape:"quotes"}');
+ tree_function.openIcon = 'media/images/function_folder.png';
+ tree_function.icon = 'media/images/function_folder.png';
+
+ {section name=nonclass loop=$info[p].functions}
+ var fic = new WebFXTreeItem('{$info[p].functions[nonclass].title|escape:"quotes"}', '{$info[p].functions[nonclass].link|escape:"quotes"}');
+ fic.openIcon = 'media/images/Function.png';
+ fic.icon = 'media/images/Function.png';
+ tree_function.add(fic);
+ {/section}
+
+ tree.add(tree_function);
+ {/if}
+
+ {if $info[p].files}
+ var tree_file = new WebFXTreeItem('File(s)', '{$packagedoc|escape:"quotes"}');
+ tree_file.openIcon = 'media/images/folder.png';
+ tree_file.icon = 'media/images/folder.png';
+
+ {section name=nonclass loop=$info[p].files}
+ var file = new WebFXTreeItem('{$info[p].files[nonclass].title|escape:"quotes"}', '{$info[p].files[nonclass].link|escape:"quotes"}');
+ file.openIcon = 'media/images/Page.png';
+ file.icon = 'media/images/Page.png';
+ tree_file.add(file);
+ {/section}
+
+ tree.add(tree_file);
+ {/if}
+
+ {else}
+ {if $info[p].subpackagetutorial}
+ var subpackagetree = new WebFXTreeItem('<span class="sub-package">{$info[p].subpackagetutorialtitle|strip_tags|escape:"quotes"}</span>', '{$info[p].subpackagetutorialnoa}');
+ {else}
+ var subpackagetree = new WebFXTreeItem('<span class="sub-package">{$info[p].subpackage}</span>', '{$packagedoc|escape:"quotes"}');
+ {/if}
+
+ subpackagetree.openIcon = 'media/images/package.png';
+ subpackagetree.icon = 'media/images/package.png';
+
+ {if $info[p].tutorials}
+ var tree_tutorial = new WebFXTreeItem('Tutorial(s)/Manual(s)', '');
+ tree_tutorial.openIcon = 'media/images/tutorial_folder.png';
+ tree_tutorial.icon = 'media/images/tutorial_folder.png';
+ tree.add(tree_tutorial);
+
+ {if $info[p].tutorials.pkg}
+ var tree_inner_tutorial = new WebFXTreeItem('Package-level', '');
+ tree_inner_tutorial.openIcon = 'media/images/package_folder.png';
+ tree_inner_tutorial.icon = 'media/images/package_folder.png';
+ tree_tutorial.add(tree_inner_tutorial);
+
+ parent_node = tree_inner_tutorial;
+ {section name=ext loop=$info[p].tutorials.pkg}
+ {$info[p].tutorials.pkg[ext]}
+ {/section}
+ {/if}
+
+ {if $info[p].tutorials.cls}
+ var tree_inner_tutorial = new WebFXTreeItem('Class-level', '');
+ tree_inner_tutorial.openIcon = 'media/images/class_folder.png';
+ tree_inner_tutorial.icon = 'media/images/class_folder.png';
+ tree_tutorial.add(tree_inner_tutorial);
+
+ parent_node = tree_inner_tutorial;
+ {section name=ext loop=$info[p].tutorials.cls}
+ {$info[p].tutorials.cls[ext]}
+ {/section}
+ {/if}
+
+ {if $info[p].tutorials.proc}
+ var tree_inner_tutorial = new WebFXTreeItem('Function-level', '');
+ tree_inner_tutorial.openIcon = 'media/images/function_folder.png';
+ tree_inner_tutorial.icon = 'media/images/function_folder.png';
+ tree_tutorial.add(tree_inner_tutorial);
+
+ parent_node = tree_inner_tutorial;
+ {section name=ext loop=$info[p].tutorials.proc}
+ {$info[p].tutorials.proc[ext]}
+ {/section}
+ {/if}
+ {/if}
+
+ {if $info[p].classes}
+ var subpackagetree_classe = new WebFXTreeItem('Class(es)', '{$packagedoc|escape:"quotes"}');
+ subpackagetree_classe.openIcon = 'media/images/class_folder.png';
+ subpackagetree_classe.icon = 'media/images/class_folder.png';
+
+ {section name=class loop=$info[p].classes}
+ var classe = new WebFXTreeItem('{$info[p].classes[class].title|escape:"quotes"}', '{$info[p].classes[class].link|escape:"quotes"}');
+ classe.openIcon = 'media/images/{if $info[p].classes[class].abstract}Abstract{/if}{if $info[p].classes[class].access == 'private'}Private{/if}Class.png';
+ classe.icon = 'media/images/{if $info[p].classes[class].abstract}Abstract{/if}{if $info[p].classes[class].access == 'private'}Private{/if}Class.png';
+ subpackagetree_classe.add(classe);
+ {/section}
+
+ subpackagetree.add(subpackagetree_classe);
+ {/if}
+
+ {if $info[p].functions}
+ var subpackagetree_function = new WebFXTreeItem('Function(s)', '{$packagedoc|escape:"quotes"}');
+ subpackagetree_function.openIcon = 'media/images/function_folder.png';
+ subpackagetree_function.icon = 'media/images/function_folder.png';
+
+ {section name=nonclass loop=$info[p].functions}
+ var fic = new WebFXTreeItem('{$info[p].functions[nonclass].title|escape:"quotes"}', '{$info[p].functions[nonclass].link|escape:"quotes"}');
+ fic.openIcon = 'media/images/Function.png';
+ fic.icon = 'media/images/Function.png';
+ subpackagetree_function.add(fic);
+ {/section}
+
+ subpackagetree.add(subpackagetree_function);
+ {/if}
+
+ {if $info[p].files}
+ var subpackagetree_file = new WebFXTreeItem('File(s)', '{$packagedoc|escape:"quotes"}');
+ subpackagetree_file.openIcon = 'media/images/folder.png';
+ subpackagetree_file.icon = 'media/images/folder.png';
+
+ {section name=nonclass loop=$info[p].files}
+ var file = new WebFXTreeItem('{$info[p].files[nonclass].title|escape:"quotes"}', '{$info[p].files[nonclass].link|escape:"quotes"}');
+ file.openIcon = 'media/images/Page.png';
+ file.icon = 'media/images/Page.png';
+ subpackagetree_file.add(file);
+ {/section}
+
+ subpackagetree.add(subpackagetree_file);
+ {/if}
+
+ tree.add(subpackagetree);
+ {/if}
+{/section}
+
+document.write(tree);
+{rdelim}
+</script>
+</div>
+<p class="notes">
+ Generated by
+ <a href="{$phpdocwebsite}" target="_blank">phpDocumentor <span class="field">{$phpdocversion}</span></a>
+</p>
+</body>
+</html>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/banner.css b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/banner.css
new file mode 100755
index 00000000..19a383c3
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/banner.css
@@ -0,0 +1,32 @@
+body
+{
+ background-color: #EEEEEE;
+ margin: 0px;
+ padding: 0px;
+}
+
+/* Banner (top bar) classes */
+
+.banner { }
+
+.banner-menu
+{
+ clear: both;
+ padding: .5em;
+ border-top: 2px solid #AAAAAA;
+}
+
+.banner-title
+{
+ text-align: right;
+ font-size: 20pt;
+ font-weight: bold;
+ margin: .2em;
+}
+
+.package-selector
+{
+ background-color: #DDDDDD;
+ border: 1px solid #AAAAAA;
+ color: #000090;
+}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/AbstractClass.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/AbstractClass.png
new file mode 100644
index 00000000..afa9d1d9
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/AbstractClass.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/AbstractClass_logo.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/AbstractClass_logo.png
new file mode 100644
index 00000000..8f65c390
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/AbstractClass_logo.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/AbstractMethod.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/AbstractMethod.png
new file mode 100644
index 00000000..605ccbe5
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/AbstractMethod.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/AbstractPrivateClass.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/AbstractPrivateClass.png
new file mode 100644
index 00000000..53d76c63
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/AbstractPrivateClass.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/AbstractPrivateClass_logo.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/AbstractPrivateClass_logo.png
new file mode 100644
index 00000000..4e68f570
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/AbstractPrivateClass_logo.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/AbstractPrivateMethod.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/AbstractPrivateMethod.png
new file mode 100644
index 00000000..41cc9f02
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/AbstractPrivateMethod.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Class.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Class.png
new file mode 100755
index 00000000..cf548d27
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Class.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Class_logo.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Class_logo.png
new file mode 100644
index 00000000..6f223c47
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Class_logo.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Constant.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Constant.png
new file mode 100755
index 00000000..a9c6f28b
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Constant.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Constructor.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Constructor.png
new file mode 100755
index 00000000..3f16222b
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Constructor.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Destructor.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Destructor.png
new file mode 100755
index 00000000..f28528f0
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Destructor.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Function.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Function.png
new file mode 100755
index 00000000..902fe258
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Function.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Global.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Global.png
new file mode 100755
index 00000000..7281bd2a
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Global.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/I.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/I.png
new file mode 100755
index 00000000..e8512fb9
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/I.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Index.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Index.png
new file mode 100755
index 00000000..6558ec39
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Index.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Interface.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Interface.png
new file mode 100644
index 00000000..e6cd51ed
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Interface.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Interface_logo.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Interface_logo.png
new file mode 100644
index 00000000..6f223c47
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Interface_logo.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/L.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/L.png
new file mode 100755
index 00000000..eb334eda
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/L.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Lminus.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Lminus.png
new file mode 100755
index 00000000..f7c43c0a
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Lminus.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Lplus.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Lplus.png
new file mode 100755
index 00000000..848ec2fc
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Lplus.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Method.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Method.png
new file mode 100755
index 00000000..9b215784
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Method.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Page.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Page.png
new file mode 100755
index 00000000..ffe7986e
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Page.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Page_logo.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Page_logo.png
new file mode 100644
index 00000000..44ce0b3c
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Page_logo.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/PrivateClass.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/PrivateClass.png
new file mode 100755
index 00000000..470e6d56
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/PrivateClass.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/PrivateClass_logo.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/PrivateClass_logo.png
new file mode 100644
index 00000000..590e0064
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/PrivateClass_logo.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/PrivateMethod.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/PrivateMethod.png
new file mode 100755
index 00000000..d01f2b31
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/PrivateMethod.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/PrivateVariable.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/PrivateVariable.png
new file mode 100755
index 00000000..d76b21d4
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/PrivateVariable.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/StaticMethod.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/StaticMethod.png
new file mode 100755
index 00000000..9b215784
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/StaticMethod.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/StaticVariable.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/StaticVariable.png
new file mode 100755
index 00000000..8e820193
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/StaticVariable.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/T.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/T.png
new file mode 100755
index 00000000..30173254
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/T.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Tminus.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Tminus.png
new file mode 100755
index 00000000..2260e424
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Tminus.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Tplus.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Tplus.png
new file mode 100755
index 00000000..2c8d8f4f
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Tplus.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Variable.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Variable.png
new file mode 100755
index 00000000..8e820193
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/Variable.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/blank.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/blank.png
new file mode 100755
index 00000000..cee9cd37
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/blank.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/class_folder.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/class_folder.png
new file mode 100755
index 00000000..84e9587a
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/class_folder.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/empty.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/empty.png
new file mode 100755
index 00000000..d5683865
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/empty.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/file.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/file.png
new file mode 100755
index 00000000..0bb2427f
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/file.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/folder.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/folder.png
new file mode 100755
index 00000000..a2d79f8d
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/folder.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/function_folder.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/function_folder.png
new file mode 100755
index 00000000..8b3d6e3b
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/function_folder.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/minus.gif b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/minus.gif
new file mode 100644
index 00000000..f502662b
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/minus.gif
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/next_button.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/next_button.png
new file mode 100755
index 00000000..cdbc615d
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/next_button.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/next_button_disabled.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/next_button_disabled.png
new file mode 100755
index 00000000..4a11780f
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/next_button_disabled.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/package.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/package.png
new file mode 100755
index 00000000..b04cf566
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/package.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/package_folder.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/package_folder.png
new file mode 100755
index 00000000..6162bafd
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/package_folder.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/plus.gif b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/plus.gif
new file mode 100644
index 00000000..eeca02ce
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/plus.gif
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/previous_button.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/previous_button.png
new file mode 100755
index 00000000..327fdbc2
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/previous_button.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/previous_button_disabled.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/previous_button_disabled.png
new file mode 100755
index 00000000..c02ff64b
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/previous_button_disabled.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/private_class_logo.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/private_class_logo.png
new file mode 100644
index 00000000..590e0064
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/private_class_logo.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/tutorial.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/tutorial.png
new file mode 100755
index 00000000..bc197375
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/tutorial.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/tutorial_folder.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/tutorial_folder.png
new file mode 100755
index 00000000..2a468b2a
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/tutorial_folder.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/up_button.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/up_button.png
new file mode 100755
index 00000000..ff36c593
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/images/up_button.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/lib/classTree.js b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/lib/classTree.js
new file mode 100755
index 00000000..ebb3fb4a
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/lib/classTree.js
@@ -0,0 +1,454 @@
+/*----------------------------------------\
+| Cross Browser Tree Widget 1.1 |
+|-----------------------------------------|
+| Created by Emil A. Eklund (eae@eae.net) |
+| For WebFX (http://webfx.eae.net/) |
+|-----------------------------------------|
+| This script is provided as is without |
+| any warranty whatsoever. It may be used |
+| free of charge for non commerical sites |
+| For commerical use contact the author |
+| of this script for further details. |
+|-----------------------------------------|
+| Created 2000-12-11 | Updated 2001-09-06 |
+\----------------------------------------*/
+
+var webFXTreeConfig = {
+ rootIcon : 'media/images/empty.png',
+ openRootIcon : 'media/images/empty.png',
+ folderIcon : 'media/images/empty.png',
+ openFolderIcon : 'media/images/empty.png',
+ fileIcon : 'media/images/empty.png',
+ iIcon : 'media/images/I.png',
+ lIcon : 'media/images/L.png',
+ lMinusIcon : 'media/images/Lminus.png',
+ lPlusIcon : 'media/images/Lplus.png',
+ tIcon : 'media/images/T.png',
+ tMinusIcon : 'media/images/Tminus.png',
+ tPlusIcon : 'media/images/Tplus.png',
+ blankIcon : 'media/images/blank.png',
+ defaultText : 'Tree Item',
+ defaultAction : 'javascript:void(0);',
+ defaultTarget : 'right',
+ defaultBehavior : 'classic'
+};
+
+var webFXTreeHandler = {
+ idCounter : 0,
+ idPrefix : "webfx-tree-object-",
+ all : {},
+ behavior : null,
+ selected : null,
+ getId : function() { return this.idPrefix + this.idCounter++; },
+ toggle : function (oItem) { this.all[oItem.id.replace('-plus','')].toggle(); },
+ select : function (oItem) { this.all[oItem.id.replace('-icon','')].select(); },
+ focus : function (oItem) { this.all[oItem.id.replace('-anchor','')].focus(); },
+ blur : function (oItem) { this.all[oItem.id.replace('-anchor','')].blur(); },
+ keydown : function (oItem) { return this.all[oItem.id].keydown(window.event.keyCode); },
+ cookies : new WebFXCookie()
+};
+
+/*
+ * WebFXCookie class
+ */
+
+function WebFXCookie() {
+ if (document.cookie.length) { this.cookies = ' ' + document.cookie; }
+}
+
+WebFXCookie.prototype.setCookie = function (key, value) {
+ document.cookie = key + "=" + escape(value);
+}
+
+WebFXCookie.prototype.getCookie = function (key) {
+ if (this.cookies) {
+ var start = this.cookies.indexOf(' ' + key + '=');
+ if (start == -1) { return null; }
+ var end = this.cookies.indexOf(";", start);
+ if (end == -1) { end = this.cookies.length; }
+ end -= start;
+ var cookie = this.cookies.substr(start,end);
+ return unescape(cookie.substr(cookie.indexOf('=') + 1, cookie.length - cookie.indexOf('=') + 1));
+ }
+ else { return null; }
+}
+
+/*
+ * WebFXTreeAbstractNode class
+ */
+
+function WebFXTreeAbstractNode(sText, sAction, sTarget) {
+ this.childNodes = [];
+ this.id = webFXTreeHandler.getId();
+ this.text = sText || webFXTreeConfig.defaultText;
+ this.action = sAction || webFXTreeConfig.defaultAction;
+ this.targetWindow = sTarget || webFXTreeConfig.defaultTarget;
+ this._last = false;
+ webFXTreeHandler.all[this.id] = this;
+}
+
+WebFXTreeAbstractNode.prototype.add = function (node) {
+ node.parentNode = this;
+ this.childNodes[this.childNodes.length] = node;
+ var root = this;
+ if (this.childNodes.length >=2) {
+ this.childNodes[this.childNodes.length -2]._last = false;
+ }
+ while (root.parentNode) { root = root.parentNode; }
+ if (root.rendered) {
+ if (this.childNodes.length >= 2) {
+ document.getElementById(this.childNodes[this.childNodes.length -2].id + '-plus').src = ((this.childNodes[this.childNodes.length -2].folder)?webFXTreeConfig.tMinusIcon:webFXTreeConfig.tIcon);
+ if (this.childNodes[this.childNodes.length -2].folder) {
+ this.childNodes[this.childNodes.length -2].plusIcon = webFXTreeConfig.tPlusIcon;
+ this.childNodes[this.childNodes.length -2].minusIcon = webFXTreeConfig.tMinusIcon;
+ }
+ this.childNodes[this.childNodes.length -2]._last = false;
+ }
+ this._last = true;
+ var foo = this;
+ while (foo.parentNode) {
+ for (var i = 0; i < foo.parentNode.childNodes.length; i++) {
+ if (foo.id == foo.parentNode.childNodes[i].id) { break; }
+ }
+ if (++i == foo.parentNode.childNodes.length) { foo.parentNode._last = true; }
+ else { foo.parentNode._last = false; }
+ foo = foo.parentNode;
+ }
+ document.getElementById(this.id + '-cont').insertAdjacentHTML("beforeEnd", node.toString());
+ if ((!this.folder) && (!this.openIcon)) {
+ this.icon = webFXTreeConfig.folderIcon;
+ this.openIcon = webFXTreeConfig.openFolderIcon;
+ }
+ this.folder = true;
+ this.indent();
+ this.expand();
+ }
+ return node;
+}
+
+WebFXTreeAbstractNode.prototype.toggle = function() {
+ if (this.folder) {
+ if (this.open) { this.collapse(); }
+ else { this.expand(); }
+ }
+}
+
+WebFXTreeAbstractNode.prototype.select = function() {
+ document.getElementById(this.id + '-anchor').focus();
+}
+
+WebFXTreeAbstractNode.prototype.focus = function() {
+ webFXTreeHandler.selected = this;
+ if ((this.openIcon) && (webFXTreeHandler.behavior != 'classic')) { document.getElementById(this.id + '-icon').src = this.openIcon; }
+ document.getElementById(this.id + '-anchor').style.backgroundColor = 'highlight';
+ document.getElementById(this.id + '-anchor').style.color = 'highlighttext';
+ document.getElementById(this.id + '-anchor').focus();
+}
+
+WebFXTreeAbstractNode.prototype.blur = function() {
+ if ((this.openIcon) && (webFXTreeHandler.behavior != 'classic')) { document.getElementById(this.id + '-icon').src = this.icon; }
+ document.getElementById(this.id + '-anchor').style.backgroundColor = 'transparent';
+ document.getElementById(this.id + '-anchor').style.color = 'menutext';
+}
+
+WebFXTreeAbstractNode.prototype.doExpand = function() {
+ if (webFXTreeHandler.behavior == 'classic') { document.getElementById(this.id + '-icon').src = this.openIcon; }
+ if (this.childNodes.length) { document.getElementById(this.id + '-cont').style.display = 'block'; }
+ this.open = true;
+ webFXTreeHandler.cookies.setCookie(this.id.substr(18,this.id.length - 18), '1');
+}
+
+WebFXTreeAbstractNode.prototype.doCollapse = function() {
+ if (webFXTreeHandler.behavior == 'classic') { document.getElementById(this.id + '-icon').src = this.icon; }
+ if (this.childNodes.length) { document.getElementById(this.id + '-cont').style.display = 'none'; }
+ this.open = false;
+ webFXTreeHandler.cookies.setCookie(this.id.substr(18,this.id.length - 18), '0');
+}
+
+WebFXTreeAbstractNode.prototype.expandAll = function() {
+ this.expandChildren();
+ if ((this.folder) && (!this.open)) { this.expand(); }
+}
+
+WebFXTreeAbstractNode.prototype.expandChildren = function() {
+ for (var i = 0; i < this.childNodes.length; i++) {
+ this.childNodes[i].expandAll();
+} }
+
+WebFXTreeAbstractNode.prototype.collapseAll = function() {
+ if ((this.folder) && (this.open)) { this.collapse(); }
+ this.collapseChildren();
+}
+
+WebFXTreeAbstractNode.prototype.collapseChildren = function() {
+ for (var i = 0; i < this.childNodes.length; i++) {
+ this.childNodes[i].collapseAll();
+} }
+
+WebFXTreeAbstractNode.prototype.indent = function(lvl, del, last, level) {
+ /*
+ * Since we only want to modify items one level below ourself,
+ * and since the rightmost indentation position is occupied by
+ * the plus icon we set this to -2
+ */
+ if (lvl == null) { lvl = -2; }
+ var state = 0;
+ for (var i = this.childNodes.length - 1; i >= 0 ; i--) {
+ state = this.childNodes[i].indent(lvl + 1, del, last, level);
+ if (state) { return; }
+ }
+ if (del) {
+ if (level >= this._level) {
+ if (this.folder) {
+ document.getElementById(this.id + '-plus').src = (this.open)?webFXTreeConfig.lMinusIcon:webFXTreeConfig.lPlusIcon;
+ this.plusIcon = webFXTreeConfig.lPlusIcon;
+ this.minusIcon = webFXTreeConfig.lMinusIcon;
+ }
+ else { document.getElementById(this.id + '-plus').src = webFXTreeConfig.lIcon; }
+ return 1;
+ }
+ }
+ var foo = document.getElementById(this.id + '-indent-' + lvl);
+ if (foo) {
+ if ((del) && (last)) { foo._last = true; }
+ if (foo._last) { foo.src = webFXTreeConfig.blankIcon; }
+ else { foo.src = webFXTreeConfig.iIcon; }
+ }
+ return 0;
+}
+
+/*
+ * WebFXTree class
+ */
+
+function WebFXTree(sText, sAction, sBehavior, sIcon, sOpenIcon) {
+ this.base = WebFXTreeAbstractNode;
+ this.base(sText, sAction);
+ this.icon = sIcon || webFXTreeConfig.rootIcon;
+ this.openIcon = sOpenIcon || webFXTreeConfig.openRootIcon;
+ /* Defaults to open */
+ this.open = (webFXTreeHandler.cookies.getCookie(this.id.substr(18,this.id.length - 18)) == '0')?false:true;
+ this.folder = true;
+ this.rendered = false;
+ if (!webFXTreeHandler.behavior) { webFXTreeHandler.behavior = sBehavior || webFXTreeConfig.defaultBehavior; }
+ this.targetWindow = 'right';
+}
+
+WebFXTree.prototype = new WebFXTreeAbstractNode;
+
+WebFXTree.prototype.setBehavior = function (sBehavior) {
+ webFXTreeHandler.behavior = sBehavior;
+};
+
+WebFXTree.prototype.getBehavior = function (sBehavior) {
+ return webFXTreeHandler.behavior;
+};
+
+WebFXTree.prototype.getSelected = function() {
+ if (webFXTreeHandler.selected) { return webFXTreeHandler.selected; }
+ else { return null; }
+}
+
+WebFXTree.prototype.remove = function() { }
+
+WebFXTree.prototype.expand = function() {
+ this.doExpand();
+}
+
+WebFXTree.prototype.collapse = function() {
+ this.focus();
+ this.doCollapse();
+}
+
+WebFXTree.prototype.getFirst = function() {
+ return null;
+}
+
+WebFXTree.prototype.getLast = function() {
+ return null;
+}
+
+WebFXTree.prototype.getNextSibling = function() {
+ return null;
+}
+
+WebFXTree.prototype.getPreviousSibling = function() {
+ return null;
+}
+
+WebFXTree.prototype.keydown = function(key) {
+ if (key == 39) { this.expand(); return false; }
+ if (key == 37) { this.collapse(); return false; }
+ if ((key == 40) && (this.open)) { this.childNodes[0].select(); return false; }
+ return true;
+}
+
+WebFXTree.prototype.toString = function() {
+ var str = "<div id=\"" + this.id + "\" ondblclick=\"webFXTreeHandler.toggle(this);\" class=\"webfx-tree-item\" onkeydown=\"return webFXTreeHandler.keydown(this)\">";
+ str += "<img id=\"" + this.id + "-icon\" class=\"webfx-tree-icon\" src=\"" + ((webFXTreeHandler.behavior == 'classic' && this.open)?this.openIcon:this.icon) + "\" onclick=\"webFXTreeHandler.select(this);\"><a href=\"" + this.action + "\" id=\"" + this.id + "-anchor\" target=\"" + this.targetWindow + "\" onfocus=\"webFXTreeHandler.focus(this);\" onblur=\"webFXTreeHandler.blur(this);\">" + this.text + "</a></div>";
+ str += "<div id=\"" + this.id + "-cont\" class=\"webfx-tree-container\" style=\"display: " + ((this.open)?'block':'none') + ";\">";
+ for (var i = 0; i < this.childNodes.length; i++) {
+ str += this.childNodes[i].toString(i, this.childNodes.length);
+ }
+ str += "</div>";
+ this.rendered = true;
+ return str;
+};
+
+/*
+ * WebFXTreeItem class
+ */
+
+function WebFXTreeItem(sText, sAction, eParent, sIcon, sOpenIcon) {
+ this.base = WebFXTreeAbstractNode;
+ this.base(sText, sAction);
+ /* Defaults to close */
+ this.open = (webFXTreeHandler.cookies.getCookie(this.id.substr(18,this.id.length - 18)) == '1')?true:false;
+ if (eParent) { eParent.add(this); }
+ if (sIcon) { this.icon = sIcon; }
+ if (sOpenIcon) { this.openIcon = sOpenIcon; }
+}
+
+WebFXTreeItem.prototype = new WebFXTreeAbstractNode;
+
+WebFXTreeItem.prototype.remove = function() {
+ var parentNode = this.parentNode;
+ var prevSibling = this.getPreviousSibling(true);
+ var nextSibling = this.getNextSibling(true);
+ var folder = this.parentNode.folder;
+ var last = ((nextSibling) && (nextSibling.parentNode) && (nextSibling.parentNode.id == parentNode.id))?false:true;
+ this.getPreviousSibling().focus();
+ this._remove();
+ if (parentNode.childNodes.length == 0) {
+ parentNode.folder = false;
+ parentNode.open = false;
+ }
+ if (last) {
+ if (parentNode.id == prevSibling.id) {
+ document.getElementById(parentNode.id + '-icon').src = webFXTreeConfig.fileIcon;
+ }
+ else { }
+ }
+ if ((!prevSibling.parentNode) || (prevSibling.parentNode != parentNode)) {
+ parentNode.indent(null, true, last, this._level);
+ }
+ if (document.getElementById(prevSibling.id + '-plus')) {
+ if (nextSibling) {
+ if ((parentNode == prevSibling) && (parentNode.getNextSibling)) { document.getElementById(prevSibling.id + '-plus').src = webFXTreeConfig.tIcon; }
+ else if (nextSibling.parentNode != prevSibling) { document.getElementById(prevSibling.id + '-plus').src = webFXTreeConfig.lIcon; }
+ }
+ else { document.getElementById(prevSibling.id + '-plus').src = webFXTreeConfig.lIcon; }
+ }
+}
+
+WebFXTreeItem.prototype._remove = function() {
+ for (var i = this.childNodes.length - 1; i >= 0; i--) {
+ this.childNodes[i]._remove();
+ }
+ for (var i = 0; i < this.parentNode.childNodes.length; i++) {
+ if (this.id == this.parentNode.childNodes[i].id) {
+ for (var j = i; j < this.parentNode.childNodes.length; j++) {
+ this.parentNode.childNodes[i] = this.parentNode.childNodes[i+1]
+ }
+ this.parentNode.childNodes.length = this.parentNode.childNodes.length - 1;
+ if (i + 1 == this.parentNode.childNodes.length) { this.parentNode._last = true; }
+ }
+ }
+ webFXTreeHandler.all[this.id] = null;
+ if (document.getElementById(this.id)) {
+ document.getElementById(this.id).innerHTML = "";
+ document.getElementById(this.id).removeNode();
+ }
+}
+
+WebFXTreeItem.prototype.expand = function() {
+ this.doExpand();
+ document.getElementById(this.id + '-plus').src = this.minusIcon;
+}
+
+WebFXTreeItem.prototype.collapse = function() {
+ this.focus();
+ this.doCollapse();
+ document.getElementById(this.id + '-plus').src = this.plusIcon;
+}
+
+WebFXTreeItem.prototype.getFirst = function() {
+ return this.childNodes[0];
+}
+
+WebFXTreeItem.prototype.getLast = function() {
+ if (this.childNodes[this.childNodes.length - 1].open) { return this.childNodes[this.childNodes.length - 1].getLast(); }
+ else { return this.childNodes[this.childNodes.length - 1]; }
+}
+
+WebFXTreeItem.prototype.getNextSibling = function() {
+ for (var i = 0; i < this.parentNode.childNodes.length; i++) {
+ if (this == this.parentNode.childNodes[i]) { break; }
+ }
+ if (++i == this.parentNode.childNodes.length) { return this.parentNode.getNextSibling(); }
+ else { return this.parentNode.childNodes[i]; }
+}
+
+WebFXTreeItem.prototype.getPreviousSibling = function(b) {
+ for (var i = 0; i < this.parentNode.childNodes.length; i++) {
+ if (this == this.parentNode.childNodes[i]) { break; }
+ }
+ if (i == 0) { return this.parentNode; }
+ else {
+ if ((this.parentNode.childNodes[--i].open) || (b && this.parentNode.childNodes[i].folder)) { return this.parentNode.childNodes[i].getLast(); }
+ else { return this.parentNode.childNodes[i]; }
+} }
+
+WebFXTreeItem.prototype.keydown = function(key) {
+ if ((key == 39) && (this.folder)) {
+ if (!this.open) { this.expand(); return false; }
+ else { this.getFirst().select(); return false; }
+ }
+ else if (key == 37) {
+ if (this.open) { this.collapse(); return false; }
+ else { this.parentNode.select(); return false; }
+ }
+ else if (key == 40) {
+ if (this.open) { this.getFirst().select(); return false; }
+ else {
+ var sib = this.getNextSibling();
+ if (sib) { sib.select(); return false; }
+ } }
+ else if (key == 38) { this.getPreviousSibling().select(); return false; }
+ return true;
+}
+
+WebFXTreeItem.prototype.toString = function (nItem, nItemCount) {
+ var foo = this.parentNode;
+ var indent = '';
+ if (nItem + 1 == nItemCount) { this.parentNode._last = true; }
+ var i = 0;
+ while (foo.parentNode) {
+ foo = foo.parentNode;
+ indent = "<img id=\"" + this.id + "-indent-" + i + "\" src=\"" + ((foo._last)?webFXTreeConfig.blankIcon:webFXTreeConfig.iIcon) + "\">" + indent;
+ i++;
+ }
+ this._level = i;
+ if (this.childNodes.length) { this.folder = 1; }
+ else { this.open = false; }
+ if ((this.folder) || (webFXTreeHandler.behavior != 'classic')) {
+ if (!this.icon) { this.icon = webFXTreeConfig.folderIcon; }
+ if (!this.openIcon) { this.openIcon = webFXTreeConfig.openFolderIcon; }
+ }
+ else if (!this.icon) { this.icon = webFXTreeConfig.fileIcon; }
+ var label = this.text;
+ label = label.replace('<', '<');
+ label = label.replace('>', '>');
+ var str = "<div id=\"" + this.id + "\" ondblclick=\"webFXTreeHandler.toggle(this);\" class=\"webfx-tree-item\" onkeydown=\"return webFXTreeHandler.keydown(this)\">";
+ str += indent;
+ str += "<img id=\"" + this.id + "-plus\" src=\"" + ((this.folder)?((this.open)?((this.parentNode._last)?webFXTreeConfig.lMinusIcon:webFXTreeConfig.tMinusIcon):((this.parentNode._last)?webFXTreeConfig.lPlusIcon:webFXTreeConfig.tPlusIcon)):((this.parentNode._last)?webFXTreeConfig.lIcon:webFXTreeConfig.tIcon)) + "\" onclick=\"webFXTreeHandler.toggle(this);\">"
+ str += "<img id=\"" + this.id + "-icon\" src=\"" + ((webFXTreeHandler.behavior == 'classic' && this.open)?this.openIcon:this.icon) + "\" onclick=\"webFXTreeHandler.select(this);\"><a href=\"" + this.action + "\" id=\"" + this.id + "-anchor\" target=\"" + this.targetWindow + "\" onfocus=\"webFXTreeHandler.focus(this);\" onblur=\"webFXTreeHandler.blur(this);\">" + label + "</a></div>";
+ str += "<div id=\"" + this.id + "-cont\" class=\"webfx-tree-container\" style=\"display: " + ((this.open)?'block':'none') + ";\">";
+ for (var i = 0; i < this.childNodes.length; i++) {
+ str += this.childNodes[i].toString(i,this.childNodes.length);
+ }
+ str += "</div>";
+ this.plusIcon = ((this.parentNode._last)?webFXTreeConfig.lPlusIcon:webFXTreeConfig.tPlusIcon);
+ this.minusIcon = ((this.parentNode._last)?webFXTreeConfig.lMinusIcon:webFXTreeConfig.tMinusIcon);
+ return str;
+} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/stylesheet.css b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/stylesheet.css
new file mode 100755
index 00000000..5b025a93
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/media/stylesheet.css
@@ -0,0 +1,181 @@
+a { color: #000090; text-decoration: none; }
+a:hover, a:active, a:focus { color: highlighttext; background-color: highlight; text-decoration: none; }
+
+body { background : #FFFFFF; }
+body, table { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10pt; }
+
+a img { border: 0px; }
+
+/* Page layout/boxes */
+
+.info-box { }
+.info-box-title { margin: 1em 0em 0em 0em; font-weight: normal; font-size: 14pt; color: #999999; border-bottom: 2px solid #999999; }
+.info-box-body { border: 1px solid #999999; padding: .5em; }
+.nav-bar { font-size: 8pt; white-space: nowrap; text-align: right; padding: .2em; margin: 0em 0em 1em 0em; }
+
+.oddrow { background-color: #F8F8F8; border: 1px solid #AAAAAA; padding: .5em; margin-bottom: 1em}
+.evenrow { border: 1px solid #AAAAAA; padding: .5em; margin-bottom: 1em}
+
+.page-body { max-width: 800px; margin: auto; }
+.tree { }
+
+/* Index formatting classes */
+
+.index-item-body { margin-top: .5em; margin-bottom: .5em}
+.index-item-description { margin-top: .25em }
+.index-item-details { font-weight: normal; font-style: italic; font-size: 8pt }
+.index-letter-section { background-color: #EEEEEE; border: 1px dotted #999999; padding: .5em; margin-bottom: 1em}
+.index-letter-title { font-size: 12pt; font-weight: bold }
+.index-letter-menu { text-align: center; margin: 1em }
+.index-letter { font-size: 12pt }
+
+/* Docbook classes */
+
+.description {}
+.short-description { font-weight: bold; color: #666666; }
+.tags { padding-left: 0em; margin-left: 3em; color: #666666; list-style-type: square; }
+.parameters { padding-left: 0em; margin-left: 3em; color: #014fbe; list-style-type: square; }
+.redefinitions { font-size: 8pt; padding-left: 0em; margin-left: 2em; }
+.package { font-weight: bold; }
+.package-title { font-weight: bold; font-size: 14pt; border-bottom: 1px solid black }
+.sub-package { font-weight: bold; }
+.tutorial { border-width: thin; border-color: #0066ff; }
+.tutorial-nav-box { width: 100%; border: 1px solid #999999; background-color: #F8F8F8; }
+
+/* Generic formatting */
+
+.field { font-weight: bold; }
+.detail { font-size: 8pt; }
+.notes { font-style: italic; font-size: 8pt; }
+.separator { background-color: #999999; height: 2px; }
+.warning { color: #FF6600; }
+.disabled { font-style: italic; color: #999999; }
+
+/* Code elements */
+
+.line-number { }
+
+.class-table { width: 100%; }
+.class-table-header { border-bottom: 1px dotted #666666; text-align: left}
+.class-name { color: #0000AA; font-weight: bold; }
+
+.method-summary { color: #009000; padding-left: 1em; font-size: 8pt; }
+.method-header { }
+.method-definition { margin-bottom: .2em }
+.method-title { color: #009000; font-weight: bold; }
+.method-name { font-weight: bold; }
+.method-signature { font-size: 85%; color: #666666; margin: .5em 0em }
+.method-result { font-style: italic; }
+
+.var-summary { padding-left: 1em; font-size: 8pt; }
+.var-header { }
+.var-title { color: #014fbe; margin-bottom: .3em }
+.var-type { font-style: italic; }
+.var-name { font-weight: bold; }
+.var-default {}
+.var-description { font-weight: normal; color: #000000; }
+
+.include-title { color: #014fbe;}
+.include-type { font-style: italic; }
+.include-name { font-weight: bold; }
+
+.const-title { color: #FF6600; }
+.const-name { font-weight: bold; }
+
+/* Syntax highlighting */
+
+.src-code { font-family: 'Courier New', Courier, monospace; font-weight: normal; }
+.src-line { font-family: 'Courier New', Courier, monospace; font-weight: normal; }
+
+.src-code a:link { padding: 1px; text-decoration: underline; color: #0000DD; }
+.src-code a:visited { text-decoration: underline; color: #0000DD; }
+.src-code a:active { background-color: #FFFF66; color: #008000; }
+.src-code a:hover { background-color: #FFFF66; text-decoration: overline underline; color: #008000; }
+
+.src-comm { color: #666666; }
+.src-id { color: #FF6600; font-style: italic; }
+.src-inc { color: #0000AA; font-weight: bold; }
+.src-key { color: #0000AA; font-weight: bold; }
+.src-num { color: #CC0000; }
+.src-str { color: #CC0000; }
+.src-sym { }
+.src-var { }
+
+.src-php { font-weight: bold; }
+
+.src-doc { color: #666666; }
+.src-doc-close-template { color: #666666 }
+.src-doc-coretag { color: #008000; }
+.src-doc-inlinetag {}
+.src-doc-internal {}
+.src-doc-tag { color: #0080CC; }
+.src-doc-template { color: #666666 }
+.src-doc-type { font-style: italic; color: #444444 }
+.src-doc-var { color: #444444 }
+
+.tute-tag { color: #009999 }
+.tute-attribute-name { color: #0000FF }
+.tute-attribute-value { color: #0099FF }
+.tute-entity { font-weight: bold; }
+.tute-comment { font-style: italic }
+.tute-inline-tag { color: #636311; font-weight: bold }
+
+/* tutorial */
+
+.authors { }
+.author { font-style: italic; font-weight: bold }
+.author-blurb { margin: .5em 0em .5em 2em; font-size: 85%; font-weight: normal; font-style: normal }
+.example { border: 1px dashed #999999; background-color: #EEEEEE; padding: .5em; }
+.listing { border: 1px dashed #999999; background-color: #EEEEEE; padding: .5em; white-space: nowrap; }
+.release-info { font-size: 85%; font-style: italic; margin: 1em 0em }
+.ref-title-box { }
+.ref-title { }
+.ref-purpose { font-style: italic; color: #666666 }
+.ref-synopsis { }
+.title { font-weight: bold; border-bottom: 1px solid #999999; color: #999999; }
+.cmd-synopsis { margin: 1em 0em }
+.cmd-title { font-weight: bold }
+.toc { margin-left: 2em; padding-left: 0em }
+
+/*------------------------------------------------------------------------------
+ webfx-tree
+------------------------------------------------------------------------------*/
+
+.webfx-tree-container {
+ margin: 0px;
+ padding: 0px;
+ white-space: nowrap;
+ font: icon;
+}
+
+.webfx-tree-item {
+ padding: 0px;
+ margin: 0px;
+ color: black;
+ white-space: nowrap;
+ font: icon;
+}
+
+.webfx-tree-item a {
+ margin-left: 3px;
+ padding: 1px 2px 1px 2px;
+ color: black;
+ text-decoration: none;
+}
+
+.webfx-tree-item a:hover, .webfx-tree-item a:active {
+ color: highlighttext;
+ background: highlight;
+ text-decoration: none
+}
+
+.webfx-tree-item img {
+ vertical-align: middle;
+ border: 0px;
+}
+
+.webfx-tree-icon {
+ width: 16px;
+ height: 16px;
+}
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/method.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/method.tpl
new file mode 100755
index 00000000..547e261d
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/method.tpl
@@ -0,0 +1,151 @@
+<A NAME='method_detail'></A>
+{section name=methods loop=$methods}
+{if $methods[methods].static}
+<a name="method{$methods[methods].function_name}" id="{$methods[methods].function_name}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="method-header">
+ <img src="{$subdir}media/images/StaticMethod.png" />
+ <span class="method-title">static {$methods[methods].function_name}</span> (line <span class="line-number">{if $methods[methods].slink}{$methods[methods].slink}{else}{$methods[methods].line_number}{/if}</span>)
+ </div>
+
+ {include file="docblock.tpl" sdesc=$methods[methods].sdesc desc=$methods[methods].desc tags=$methods[methods].tags params=$methods[methods].params function=false}
+
+ <div class="method-signature">
+ static <span class="method-result">{$methods[methods].function_return}</span>
+ <span class="method-name">
+ {if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}
+ </span>
+ {if count($methods[methods].ifunction_call.params)}
+ ({section name=params loop=$methods[methods].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$methods[methods].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$methods[methods].ifunction_call.params[params].name}</span>{if $methods[methods].ifunction_call.params[params].hasdefault} = <span class="var-default">{$methods[methods].ifunction_call.params[params].default}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+
+ {if $methods[methods].params}
+ <ul class="parameters">
+ {section name=params loop=$methods[methods].params}
+ <li>
+ <span class="var-type">{$methods[methods].params[params].datatype}</span>
+ <span class="var-name">{$methods[methods].params[params].var}</span>{if $methods[methods].params[params].data}<span class="var-description">: {$methods[methods].params[params].data}</span>{/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+ {if $methods[methods].method_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$methods[methods].method_overrides.link}</dt>
+ {if $methods[methods].method_overrides.sdesc}
+ <dd>{$methods[methods].method_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+ {if $methods[methods].method_implements}
+ <hr class="separator" />
+ <div class="notes">Implementation of:</div>
+ {section name=imp loop=$methods[methods].method_implements}
+ <dl>
+ <dt>{$methods[methods].method_implements[imp].link}</dt>
+ {if $methods[methods].method_implements[imp].sdesc}
+ <dd>{$methods[methods].method_implements[imp].sdesc}</dd>
+ {/if}
+ </dl>
+ {/section}
+ {/if}
+
+ {if $methods[methods].descmethod}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=dm loop=$methods[methods].descmethod}
+ <li>
+ {$methods[methods].descmethod[dm].link}
+ {if $methods[methods].descmethod[dm].sdesc}
+ : {$methods[methods].descmethod[dm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+</div>
+{/if}
+{/section}
+{section name=methods loop=$methods}
+{if !$methods[methods].static}
+<a name="method{$methods[methods].function_name}" id="{$methods[methods].function_name}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="method-header">
+ <img src="{$subdir}media/images/{if $methods[methods].ifunction_call.constructor}Constructor{elseif $methods[methods].ifunction_call.destructor}Destructor{else}{if $methods[methods].abstract}Abstract{/if}{if $methods[methods].access == 'private'}Private{/if}Method{/if}.png" />
+ <span class="method-title">{if $methods[methods].ifunction_call.constructor}Constructor {elseif $methods[methods].ifunction_call.destructor}Destructor {/if}{$methods[methods].function_name}</span> (line <span class="line-number">{if $methods[methods].slink}{$methods[methods].slink}{else}{$methods[methods].line_number}{/if}</span>)
+ </div>
+
+ {include file="docblock.tpl" sdesc=$methods[methods].sdesc desc=$methods[methods].desc tags=$methods[methods].tags params=$methods[methods].params function=false}
+
+ <div class="method-signature">
+ <span class="method-result">{$methods[methods].function_return}</span>
+ <span class="method-name">
+ {if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}
+ </span>
+ {if count($methods[methods].ifunction_call.params)}
+ ({section name=params loop=$methods[methods].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$methods[methods].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$methods[methods].ifunction_call.params[params].name}</span>{if $methods[methods].ifunction_call.params[params].hasdefault} = <span class="var-default">{$methods[methods].ifunction_call.params[params].default}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+
+ {if $methods[methods].params}
+ <ul class="parameters">
+ {section name=params loop=$methods[methods].params}
+ <li>
+ <span class="var-type">{$methods[methods].params[params].datatype}</span>
+ <span class="var-name">{$methods[methods].params[params].var}</span>{if $methods[methods].params[params].data}<span class="var-description">: {$methods[methods].params[params].data}</span>{/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+ {if $methods[methods].method_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$methods[methods].method_overrides.link}</dt>
+ {if $methods[methods].method_overrides.sdesc}
+ <dd>{$methods[methods].method_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+ {if $methods[methods].method_implements}
+ <hr class="separator" />
+ <div class="notes">Implementation of:</div>
+ {section name=imp loop=$methods[methods].method_implements}
+ <dl>
+ <dt>{$methods[methods].method_implements[imp].link}</dt>
+ {if $methods[methods].method_implements[imp].sdesc}
+ <dd>{$methods[methods].method_implements[imp].sdesc}</dd>
+ {/if}
+ </dl>
+ {/section}
+ {/if}
+
+ {if $methods[methods].descmethod}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=dm loop=$methods[methods].descmethod}
+ <li>
+ {$methods[methods].descmethod[dm].link}
+ {if $methods[methods].descmethod[dm].sdesc}
+ : {$methods[methods].descmethod[dm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+</div>
+{/if}
+{/section}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/page.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/page.tpl
new file mode 100755
index 00000000..2cffc22d
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/page.tpl
@@ -0,0 +1,214 @@
+{include file="header.tpl" top3=true}
+
+<h2 class="file-name"><img src="{$subdir}media/images/Page_logo.png" alt="File" style="vertical-align: middle">{$source_location}</h2>
+
+<a name="sec-description"></a>
+<div class="info-box">
+ <div class="info-box-title">Description</div>
+ <div class="nav-bar">
+ {if $classes || $includes || $defines || $globals || $functions}
+ <span class="disabled">Description</span> |
+ {/if}
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="docblock.tpl" desc=$desc sdesc=$sdesc tags=$tags}
+
+ {if $tutorial}
+ <hr class="separator" />
+ <div class="notes">Tutorial: <span class="tutorial">{$tutorial}</div>
+ {/if}
+ </div>
+</div>
+
+{if $classes}
+ <a name="sec-classes"></a>
+ <div class="info-box">
+ <div class="info-box-title">Classes</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ <span class="disabled">Classes</span>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <table cellpadding="2" cellspacing="0" class="class-table">
+ <tr>
+ <th class="class-table-header">Class</th>
+ <th class="class-table-header">Description</th>
+ </tr>
+ {section name=classes loop=$classes}
+ <tr>
+ <td style="padding-right: 2em; vertical-align: top; white-space: nowrap">
+ <img src="{$subdir}media/images/{if $classes[classes].abstract}Abstract{/if}{if $classes[classes].access == 'private'}Private{/if}Class.png"
+ alt="{if $classes[classes].abstract}Abstract{/if}{if $classes[classes].access == 'private'}Private{/if} class"
+ title="{if $classes[classes].abstract}Abstract{/if}{if $classes[classes].access == 'private'}Private{/if} class"/>
+ {$classes[classes].link}
+ </td>
+ <td>
+ {if $classes[classes].sdesc}
+ {$classes[classes].sdesc}
+ {else}
+ {$classes[classes].desc}
+ {/if}
+ </td>
+ </tr>
+ {/section}
+ </table>
+ </div>
+ </div>
+{/if}
+
+{if $includes}
+ <a name="sec-includes"></a>
+ <div class="info-box">
+ <div class="info-box-title">Includes</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ <span class="disabled">Includes</span>
+ {if $defines || $globals || $functions}|{/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="include.tpl"}
+ </div>
+ </div>
+{/if}
+
+{if $defines}
+ <a name="sec-constants"></a>
+ <div class="info-box">
+ <div class="info-box-title">Constants</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ <span class="disabled">Constants</span>
+ {if $globals || $functions}|{/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="define.tpl"}
+ </div>
+ </div>
+{/if}
+
+{if $globals}
+ <a name="sec-variables"></a>
+ <div class="info-box">
+ <div class="info-box-title">Variables</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ <span class="disabled">Variables</span>
+ {if $functions}|{/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="global.tpl"}
+ </div>
+ </div>
+{/if}
+
+{if $functions}
+ <a name="sec-functions"></a>
+ <div class="info-box">
+ <div class="info-box-title">Functions</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ <span class="disabled">Functions</span>
+ </div>
+ <div class="info-box-body">
+ {include file="function.tpl"}
+ </div>
+ </div>
+{/if}
+
+{include file="footer.tpl" top3=true}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/pkgelementindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/pkgelementindex.tpl
new file mode 100755
index 00000000..dc283ad0
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/pkgelementindex.tpl
@@ -0,0 +1,17 @@
+{include file="header.tpl"}
+<a name="top"></a>
+<h2>[{$package}] element index</h2>
+{if count($packageindex) > 1}
+ <h3>Package indexes</h3>
+ <ul>
+ {section name=p loop=$packageindex}
+ {if $packageindex[p].title != $package}
+ <li><a href="elementindex_{$packageindex[p].title}.html">{$packageindex[p].title}</a></li>
+ {/if}
+ {/section}
+ </ul>
+{/if}
+<a href="elementindex.html">All elements</a>
+<br />
+{include file="basicindex.tpl" indexname=elementindex_$package}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/ric.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/ric.tpl
new file mode 100755
index 00000000..ad792475
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/ric.tpl
@@ -0,0 +1,6 @@
+{include file="header.tpl"}
+<div align="center"><h1>{$name}</h1></div>
+<pre>
+{$contents|htmlentities}
+</pre>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/todolist.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/todolist.tpl
new file mode 100755
index 00000000..f929ccdb
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/todolist.tpl
@@ -0,0 +1,14 @@
+{include file="header.tpl" title="Todo List"}
+<div align="center"><h1>Todo List</h1></div>
+{foreach from=$todos key=todopackage item=todo}
+<h2>{$todopackage}</h2>
+{section name=todo loop=$todo}
+<h3>{$todo[todo].link}</h3>
+<ul>
+{section name=t loop=$todo[todo].todos}
+ <li>{$todo[todo].todos[t]}</li>
+{/section}
+</ul>
+{/section}
+{/foreach}
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/top_frame.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/top_frame.tpl
new file mode 100755
index 00000000..36d1e5a1
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/top_frame.tpl
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+ <html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <!-- template designed by Marco Von Ballmoos -->
+ <title>{$title}</title>
+ <link rel="stylesheet" href="{$subdir}media/stylesheet.css" />
+ <link rel="stylesheet" href="{$subdir}media/banner.css" />
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+ </head>
+ <body>
+ <div class="banner">
+ <div class="banner-title">{$package}</div>
+ <div class="banner-menu">
+ <form>
+ <table cellpadding="0" cellspacing="0" style="width: 100%">
+ <tr>
+ <td>
+ {if count($ric) >= 1}
+ {assign var="last_ric_name" value=""}
+ {section name=ric loop=$ric}
+ {if $last_ric_name != ""} | {/if}
+ <a href="{$ric[ric].file}" target="right">{$ric[ric].name}</a>
+ {assign var="last_ric_name" value=$ric[ric].name}
+ {/section}
+ {/if}
+ </td>
+ <td style="width: 2em">&nbsp;</td>
+ <td style="text-align: right">
+ {if count($packages) > 1}
+ <span class="field">Packages</span>
+ <select class="package-selector" onchange="window.parent.left_bottom.location=this[selectedIndex].value">
+ {section name=p loop=$packages}
+ <option value="{$packages[p].link}">{$packages[p].title}</option>
+ {/section}
+ </select>
+ {/if}
+ </td>
+ </tr>
+ </table>
+ </form>
+ </div>
+ </div>
+ </body>
+ </html>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/tutorial.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/tutorial.tpl
new file mode 100755
index 00000000..3b9109d1
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/tutorial.tpl
@@ -0,0 +1,13 @@
+{include file="header.tpl" title=$title top3=true}
+
+{if $nav}
+ {include file="tutorial_nav.tpl" prev=$prev next=$next up=$up prevtitle=$prevtitle nexttitle=$nexttitle uptitle=$uptitle}
+{/if}
+
+{$contents}
+
+{if $nav}
+ {include file="tutorial_nav.tpl" prev=$prev next=$next up=$up prevtitle=$prevtitle nexttitle=$nexttitle uptitle=$uptitle}
+{/if}
+
+{include file="footer.tpl" top3=true} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/tutorial_nav.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/tutorial_nav.tpl
new file mode 100755
index 00000000..3cd7893d
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/tutorial_nav.tpl
@@ -0,0 +1,41 @@
+<table class="tutorial-nav-box">
+ <tr>
+ <td style="width: 30%">
+ {if $prev}
+ <a href="{$prev}"><img src="{$subdir}media/images/previous_button.png" alt="Previous"></a>
+ {else}
+ <span class="disabled"><img src="{$subdir}media/images/previous_button_disabled.png" alt="Previous"></span>
+ {/if}
+ </td>
+ <td style="text-align: center">
+ {if $up}
+ <a href="{$up}"><img src="{$subdir}media/images/up_button.png" alt="Up"></a>
+ {/if}
+ </td>
+ <td style="text-align: right; width: 30%">
+ {if $next}
+ <a href="{$next}"><img src="{$subdir}media/images/next_button.png" alt="Next"></a>
+ {else}
+ <span class="disabled"><img src="{$subdir}media/images/next_button_disabled.png" alt="Next"></span>
+ {/if}
+ </td>
+ </tr>
+ <tr>
+ <td style="width: 30%">
+ {if $prevtitle}
+ <span class="detail">{$prevtitle}</span>
+ {/if}
+ </td>
+ <td style="text-align: center">
+ {if $uptitle}
+ <span class="detail">{$uptitle}</span>
+ {/if}
+ </td>
+ <td style="text-align: right; width: 30%">
+ {if $nexttitle}
+ <span class="detail">{$nexttitle}</span>
+ {/if}
+ </td>
+ </tr>
+</table>
+ \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/tutorial_toc.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/tutorial_toc.tpl
new file mode 100755
index 00000000..3482249b
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/tutorial_toc.tpl
@@ -0,0 +1,40 @@
+{if count($toc)}
+<h1 class="title">Table of Contents</h1>
+<ul class="toc">
+ {assign var="lastcontext" value='refsect1'}
+ {section name=toc loop=$toc}
+
+ {if $toc[toc].tagname != $lastcontext}
+ {if $lastcontext == 'refsect1'}
+ <ul class="toc">
+ <li>{$toc[toc].link}</li>
+ {else}
+ {if $lastcontext == 'refsect2'}
+ {if $toc[toc].tagname == 'refsect1'}
+ </ul>
+ <li>{$toc[toc].link}</li>
+ {/if}
+ {if $toc[toc].tagname == 'refsect3'}
+ <ul class="toc">
+ <li>{$toc[toc].link}</li>
+ {/if}
+ {else}
+ </ul>
+ </ul>
+ <li>{$toc[toc].link}</li>
+ {/if}
+ {/if}
+ {assign var="lastcontext" value=$toc[toc].tagname}
+ {else}
+ <li>{$toc[toc].link}</li>
+ {/if}
+ {/section}
+ {if $lastcontext == 'refsect2'}
+ </ul>
+ {/if}
+ {if $lastcontext == 'refsect3'}
+ </ul>
+ </ul>
+ {/if}
+</ul>
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/tutorial_tree.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/tutorial_tree.tpl
new file mode 100755
index 00000000..8b10e9db
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/tutorial_tree.tpl
@@ -0,0 +1,9 @@
+ var a{$name|replace:"-":"_"}node = new WebFXTreeItem('{$main.title|strip_tags|escape:"quotes"}','{$main.link}', parent_node,
+ 'media/images/tutorial.png', 'media/images/tutorial.png');
+
+{if $haskids}
+ var a{$name|replace:"-":"_"}_old_parent_node = parent_node;
+ parent_node = a{$name|replace:"-":"_"}node;
+ {$kids}
+ parent_node = a{$name|replace:"-":"_"}_old_parent_node;
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/var.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/var.tpl
new file mode 100755
index 00000000..a82d1bfa
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/earthli/templates/var.tpl
@@ -0,0 +1,94 @@
+{section name=vars loop=$vars}
+{if $vars[vars].static}
+<a name="var{$vars[vars].var_name}" id="{$vars[vars].var_name}"><!-- --></A>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="var-header">
+ <img src="{$subdir}media/images/StaticVariable.png" />
+ <span class="var-title">
+ static <span class="var-type">{$vars[vars].var_type}</span>
+ <span class="var-name">{$vars[vars].var_name}</span>
+ {if $vars[vars].var_default} = <span class="var-default">{$vars[vars].var_default|replace:"\n":"<br />"}</span>{/if}
+ (line <span class="line-number">{if $vars[vars].slink}{$vars[vars].slink}{else}{$vars[vars].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$vars[vars].sdesc desc=$vars[vars].desc tags=$vars[vars].tags}
+
+ {if $vars[vars].var_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$vars[vars].var_overrides.link}</dt>
+ {if $vars[vars].var_overrides.sdesc}
+ <dd>{$vars[vars].var_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+
+ {if $vars[vars].descvar}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=vm loop=$vars[vars].descvar}
+ <li>
+ {$vars[vars].descvar[vm].link}
+ {if $vars[vars].descvar[vm].sdesc}
+ : {$vars[vars].descvar[vm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+</div>
+{/if}
+{/section}
+
+{section name=vars loop=$vars}
+{if !$vars[vars].static}
+<a name="var{$vars[vars].var_name}" id="{$vars[vars].var_name}"><!-- --></A>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="var-header">
+ <img src="{$subdir}media/images/{if $vars[vars].access == 'private'}PrivateVariable{else}Variable{/if}.png" />
+ <span class="var-title">
+ <span class="var-type">{$vars[vars].var_type}</span>
+ <span class="var-name">{$vars[vars].var_name}</span>
+ {if $vars[vars].var_default} = <span class="var-default">{$vars[vars].var_default|replace:"\n":"<br />"}</span>{/if}
+ (line <span class="line-number">{if $vars[vars].slink}{$vars[vars].slink}{else}{$vars[vars].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$vars[vars].sdesc desc=$vars[vars].desc tags=$vars[vars].tags}
+
+ {if $vars[vars].var_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$vars[vars].var_overrides.link}</dt>
+ {if $vars[vars].var_overrides.sdesc}
+ <dd>{$vars[vars].var_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+
+ {if $vars[vars].descvar}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=vm loop=$vars[vars].descvar}
+ <li>
+ {$vars[vars].descvar[vm].link}
+ {if $vars[vars].descvar[vm].sdesc}
+ : {$vars[vars].descvar[vm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+</div>
+{/if}
+{/section}
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/options.ini b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/options.ini
new file mode 100755
index 00000000..084809be
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/options.ini
@@ -0,0 +1,577 @@
+preservedocbooktags = false
+
+;; used to highlight the {@source} inline tag, @filesource tag, and @example tag
+[highlightSourceTokens]
+;; format:
+;; T_CONSTANTNAME = open
+;; /T_CONSTANTNAME = close
+
+T_INCLUDE = <span class="src-inc">
+/T_INCLUDE = </span>
+T_INCLUDE_ONCE = <span class="src-inc">
+/T_INCLUDE_ONCE = </span>
+T_REQUIRE_ONCE = <span class="src-inc">
+/T_REQUIRE_ONCE = </span>
+T_REQUIRE_ONCE = <span class="src-inc">
+/T_REQUIRE_ONCE = </span>
+
+T_CONSTANT_ENCAPSED_STRING = <span class="src-str">
+/T_CONSTANT_ENCAPSED_STRING = </span>
+T_STRING_VARNAME = <span class="src-str">
+/T_STRING_VARNAME = </span>
+
+T_STRING = <span class="src-id">
+/T_STRING = </span>
+
+T_DNUMBER = <span class="src-num">
+/T_DNUMBER = </span>
+T_LNUMBER = <span class="src-num">
+/T_LNUMBER = </span>
+
+T_VARIABLE = <span class="src-var">
+/T_VARIABLE = </span>
+
+T_COMMENT = <span class="src-comm">
+/T_COMMENT = </span>
+T_ML_COMMENT = <span class="src-comm">
+/T_ML_COMMENT = </span>
+
+T_OBJECT_OPERATOR = <span class="src-sym">
+/T_OBJECT_OPERATOR = </span>
+
+T_ABSTRACT = <span class="src-key">
+/T_ABSTRACT = </span>
+T_CLONE = <span class="src-key">
+/T_CLONE = </span>
+T_HALT_COMPILER = <span class="src-key">
+/T_HALT_COMPILER = </span>
+T_ARRAY = <span class="src-key">
+/T_ARRAY = </span>
+T_AS = <span class="src-key">
+/T_AS = </span>
+T_BREAK = <span class="src-key">
+/T_BREAK = </span>
+T_CLASS = <span class="src-key">
+/T_CLASS = </span>
+T_CASE = <span class="src-key">
+/T_CASE = </span>
+T_CONST = <span class="src-key">
+/T_CONST = </span>
+T_CONTINUE = <span class="src-key">
+/T_CONTINUE = </span>
+T_DECLARE = <span class="src-key">
+/T_DECLARE = </span>
+T_DEFAULT = <span class="src-key">
+/T_DEFAULT = </span>
+T_ELSE = <span class="src-key">
+/T_ELSE = </span>
+T_ELSEIF = <span class="src-key">
+/T_ELSEIF = </span>
+T_EMPTY = <span class="src-key">
+/T_EMPTY = </span>
+T_ENDDECLARE = <span class="src-key">
+/T_ENDDECLARE = </span>
+T_ENDFOR = <span class="src-key">
+/T_ENDFOR = </span>
+T_ENDSWITCH = <span class="src-key">
+/T_ENDSWITCH = </span>
+T_ENDFOREACH = <span class="src-key">
+/T_ENDFOREACH = </span>
+T_ENDIF = <span class="src-key">
+/T_ENDIF = </span>
+T_ENDWHILE = <span class="src-key">
+/T_ENDWHILE = </span>
+T_EXIT = <span class="src-key">
+/T_EXIT = </span>
+T_EXTENDS = <span class="src-key">
+/T_EXTENDS = </span>
+T_FINAL = <span class="src-key">
+/T_FINAL = </span>
+T_FOR = <span class="src-key">
+/T_FOR = </span>
+T_FOREACH = <span class="src-key">
+/T_FOREACH = </span>
+T_FUNCTION = <span class="src-key">
+/T_FUNCTION = </span>
+T_GLOBAL = <span class="src-key">
+/T_GLOBAL = </span>
+T_IF = <span class="src-key">
+/T_IF = </span>
+T_IMPLEMENTS = <span class="src-key">
+/T_IMPLEMENTS = </span>
+T_INTERFACE = <span class="src-key">
+/T_INTERFACE = </span>
+T_LOGICAL_AND = <span class="src-key">
+/T_LOGICAL_AND = </span>
+T_LOGICAL_OR = <span class="src-key">
+/T_LOGICAL_OR = </span>
+T_LOGICAL_XOR = <span class="src-key">
+/T_LOGICAL_XOR = </span>
+T_NEW = <span class="src-key">
+/T_NEW = </span>
+T_PRIVATE = <span class="src-key">
+/T_PRIVATE = </span>
+T_PROTECTED = <span class="src-key">
+/T_PROTECTED = </span>
+T_PUBLIC = <span class="src-key">
+/T_PUBLIC = </span>
+T_RETURN = <span class="src-key">
+/T_RETURN = </span>
+T_STATIC = <span class="src-key">
+/T_STATIC = </span>
+T_SWITCH = <span class="src-key">
+/T_SWITCH = </span>
+T_VAR = <span class="src-key">
+/T_VAR = </span>
+T_WHILE = <span class="src-key">
+/T_WHILE = </span>
+
+T_DOUBLE_COLON = <span class="src-sym">
+/T_DOUBLE_COLON = </span>
+
+T_OPEN_TAG = <span class="src-php">
+/T_OPEN_TAG = </span>
+T_OPEN_TAG_WITH_ECHO = <span class="src-php">
+/T_OPEN_TAG_WITH_ECHO = </span>
+T_CLOSE_TAG = <span class="src-php">
+/T_CLOSE_TAG = </span>
+
+
+[highlightSource]
+;; this is for highlighting things that aren't tokens like "&"
+;; format:
+;; word = open
+;; /word = close
+@ = <span class="src-sym">
+/@ = </span>
+& = <span class="src-sym">
+/& = </span>
+[ = <span class="src-sym">
+/[ = </span>
+] = <span class="src-sym">
+/] = </span>
+! = <span class="src-sym">
+/! = </span>
+";" = <span class="src-sym">
+/; = </span>
+( = <span class="src-sym">
+/( = </span>
+) = <span class="src-sym">
+/) = </span>
+, = <span class="src-sym">
+/, = </span>
+{ = <span class="src-sym">
+/{ = </span>
+} = <span class="src-sym">
+/} = </span>
+""" = <span class="src-str">
+/" = </span>
+
+[highlightDocBlockSourceTokens]
+;; this is for docblock tokens, using by phpDocumentor_HighlightParser
+;; tagphptype is for "string" in @param string description, for example
+docblock = <span class="src-doc">
+/docblock = </span>
+tagphptype = <span class="src-doc-type">
+/tagphptype = </span>
+tagvarname = <span class="src-doc-var">
+/tagvarname = </span>
+coretag = <span class="src-doc-coretag">
+/coretag = </span>
+tag = <span class="src-doc-tag">
+/tag = </span>
+inlinetag = <span class="src-doc-inlinetag">
+/inlinetag = </span>
+internal = <span class="src-doc-internal">
+/internal = </span>
+closetemplate = <span class="src-doc-close-template">
+/closetemplate = </span>
+docblocktemplate = <span class="src-doc-template">
+/docblocktemplate = </span>
+
+[highlightTutorialSourceTokens]
+;; this is for XML DocBook-based tutorials, highlighted by phpDocumentor_TutorialHighlightParser
+;; <tag>
+opentag = <span class="tute-tag">
+/opentag = </span>
+;; </tag>
+closetag = <span class="tute-tag">
+/closetag = </span>
+;; <tag attribute="value">
+attribute = <span class="tute-attribute-name">
+/attribute = </span>
+;; <tag attribute="value">
+attributevalue = <span class="tute-attribute-value">
+/attributevalue = </span>
+;; &entity;
+entity = <span class="tute-entity">
+/entity = </span>
+;; <!-- comment -->
+comment = <span class="tute-comment">
+/comment = </span>
+;; {@inline tag}
+itag = <span class="tute-inline-tag">
+/itag = </span>
+
+;; used for translation of html in DocBlocks
+[desctranslate]
+ul = <ul>
+/ul = </ul>
+ol = <ol>
+/ol = </ol>
+li = <li>
+/li = </li>
+code =
+/code =
+var = <var>
+/var = </var>
+samp = <samp>
+/samp = </samp>
+kbd = <kbd>
+/kbd = </kbd>
+pre = <pre>
+/pre = </pre>
+p = <p>
+/p = </p>
+b = <strong>
+/b = </strong>
+i = <em>
+/i = </em>
+br = <br />
+
+[ppage]
+;; this is the DocBook package page translation section. All DocBook tags
+;; that have a corresponding html tag must be listed here. Entities should
+;; also be listed here
+;;
+;; examples:
+;; 1)
+;; tagname = newtagname
+;;
+;; This is the simplest case, where all attributes will be added into the
+;; starting tag and the ending tag will be html/xml style </tranlatedtagname>
+;; <tagname></tagname> becomes <newtagname></newtagname> and
+;; <tagname attr="value"></tagname> becomes
+;; <newtagname attr="value"></newtagname>
+;;
+;; 2)
+;; tagname = newtagname
+;; tagname->attr = newattrname
+;;
+;; in this case, everything will be like the first case, except tags like:
+;; <tagname attr="value"></tagname> will become
+;; <newtagname newattrname="value"></newtagname>
+;;
+;; 3)
+;; tagname = newtagname
+;; tagname->attr = newattrname
+;; tagname->attr+value = newvalue
+;;
+;; in this case, the value is also translated to another. This can be useful
+;; for instances such as focus="middle" changing to align="center" or something
+;; of that nature.
+;; <tagname attr="value"></tagname> will become
+;; <newtagname newattrname="newvalue"></newtagname>
+;;
+;; 4)
+;; tagname = newtagname
+;; tagname->attr1 = newattrname
+;; tagname->attr2 = newattrname
+;; tagname->attr1+value|attr2+value = newvalue
+;;
+;; in this case, two attributes combine to make one new attribute, and the combined
+;; value is translated into a new value
+;; <tagname attr1="value1" attr2="value2"></tagname> will become
+;; <newtagname newattrname="newvalue"></newtagname>
+;;
+;; 5)
+;; tagname = newtagname
+;; tagname!attr = dummy
+;;
+;; here, the attribute will be ignored. dummy is not used and may be any value
+;; <tagname attr="value"></tagname> will become
+;; <newtagname></newtagname>
+;;
+;; 6)
+;; tagname = newtagname
+;; tagname! = dummy
+;;
+;; here, all attributes will be ignored. dummy is not used and may be any value
+;; <tagname attr1="value" attr2="foo"></tagname> will become
+;; <newtagname></newtagname>
+;;
+;; 7)
+;; tagname = newtagname
+;; tagname/ = 1
+;;
+;; here, the tag will be translated as a single tag with no closing tag, and all
+;; attributes
+;; <tagname attr="val">{text text}</tagname> will become
+;; <newtagname attr="val" />
+;;
+;; 8)
+;; tagname = <starttaginfo />
+;; /tagname = closetagtext
+;;
+;; in this case, the text <starttaginfo> will be inserted exactly as entered for
+;; <tagname> and closetagtext for </tagname>
+;; <tagname attr="val"></tagname> will become
+;; <starttaginfo />closetagtext
+;;
+;; 9)
+;; $attr$my_attribute = newattrname
+;;
+;; tagname = newtagname
+;;
+;; in this case, all occurences of my_attribute in any tag will be changed to
+;; newattrname. This is useful for changing things like role="php" to
+;; class="php," for example. Note that the text "$attr$" MUST be on the line
+;; start for phpDocumentor to recognize it.
+;;
+;; 10)
+;; &entity; = translation text
+;; &quot; = &quot;
+;; &quot; = """
+;; &lt; = <
+;;
+;; Use this to control translation of entities to their appropriate values
+
+&nbsp; = &nbsp;
+&quot; = &quot;
+&rdquo; = &rdquo;
+&ldquo; = &ldquo;
+&amp; = &amp;
+&lt; = &lt;
+&gt; = &gt;
+&copy; = &copy;
+
+
+$attr$role = class
+
+abbrev = abbr
+
+blockquote = blockquote
+
+arg = span
+arg->choice = class
+
+author = <span class="author">
+/author = </span>
+author! = 0
+
+authorblurb = <div class="author-blurb">
+/authorblurb = </div>
+
+authorgroup = <div class="authors"><h2 class="title">Authors</h2>
+/authorgroup = </div>
+authorgroup! = 0
+
+caution = <span class="warning">
+/caution = </span>
+caution! = 0
+
+cmdsynopsis = <div class="cmd-synopsis">
+/cmdsynopsis = </div>
+
+command = <span class="cmd-title">
+/command = </span>
+
+copyright = <div class="notes">
+/copyright = </div>
+
+emphasis = em
+
+example = <div class="src-code">
+/example = </div>
+example! = 0
+
+function =
+/function = ()
+
+formalpara = p
+
+graphic = img
+graphic->fileref = src
+graphic/ =
+
+important = strong
+
+informalequation = blockquote
+
+informalexample = div
+
+inlineequation = em
+
+itemizedlist = ul
+
+listitem = li
+
+literal = code
+
+literallayout = span
+
+option = " "
+/option =
+
+orderedlist = ol
+
+para = p
+
+programlisting = <div class="src-code">
+/programlisting = </div>
+programlisting! = 0
+
+refentry = div
+
+refnamediv = <div class="ref-title-box">
+/refnamediv = </div>
+refnamediv! = 0
+
+refname = <h1 class="ref-title">
+/refname = </h1>
+
+refpurpose = <h2 class="ref-purpose">
+/refpurpose = </h2>
+
+refsynopsisdiv = <div class="ref-synopsis">
+/refsynopsisdiv = </div>
+refsynopsisdiv! = 0
+
+refsect1 = span
+
+refsect2 = span
+
+refsect3 =
+/refsect3 = <br />
+
+releaseinfo = <div class="release-info">(
+/releaseinfo = )</div>
+
+simpara =
+/simpara = <br />
+simpara! = 0
+
+subscript = sub
+
+superscript = super
+
+table = table
+
+table->colsep = rules
+table->rowsep = rules
+table->colsep+1|rowsep+1 =all
+table->colsep+1|rowsep+0 =cols
+table->colsep+0|rowsep+1 =rows
+
+table->frame =frame
+table->frame+all =border
+table->frame+none =void
+table->frame+sides =vsides
+table->frame+top =above
+table->frame+topbot =hsides
+
+thead = thead
+
+tfoot = tfoot
+
+tbody = tbody
+
+colspec = col
+
+tgroup = colgroup
+tgroup/ = 1
+tgroup->cols = span
+
+row = tr
+
+entry = td
+entry->morerows = colspan
+entry->morerows+1 =2
+entry->morerows+2 =3
+entry->morerows+3 =4
+entry->morerows+4 =5
+entry->morerows+5 =6
+entry->morerows+6 =7
+entry->morerows+7 =8
+entry->morerows+8 =9
+entry->morerows+9 =10
+entry->morerows+10 =11
+;; add more if you need more colspans
+
+warning = <span class="warning">
+/warning = </span>
+warning! = 0
+
+;; now begins the attributes that should be tags in cdata
+[$attr$id]
+open = a
+;close = /a
+cdata! = true
+quotevalues = true
+separator = "="
+;separateall = true
+$id = name
+
+;; now begins the sections that deal with <title>
+[refsynopsisdiv_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h1 class="title">
+close = </h1>
+
+[refsect1_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h2 class="title">
+close = </h2>
+
+[refsect2_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h3 class="title">
+close = </h3>
+
+[refsect3_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h4 class="title">
+close = </h4>
+
+[para_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <div class="title">
+close = </div>
+
+[formalpara_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <div class="title">
+close = </div>
+
+[example_title]
+;tag_attr = true
+;attr_name = title
+;cdata_start = true
+cdata_end = true
+open = </td></tr><tr><td><strong>
+close = </strong>
+
+[table_title]
+;tag_attr = true
+;attr_name = true
+cdata_start = true
+open = <caption>
+close = </caption>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/basicindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/basicindex.tpl
new file mode 100755
index 00000000..951ee264
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/basicindex.tpl
@@ -0,0 +1,47 @@
+<div class="index-letter-menu">
+{section name=letter loop=$letters}
+ <a class="index-letter" href="{$indexname}.html#{$letters[letter].letter}">{$letters[letter].letter}</a>
+{/section}
+</div>
+
+{section name=index loop=$index}
+ <a name="{$index[index].letter}"></a>
+ <div class="index-letter-section">
+ <div style="float: left" class="index-letter-title">{$index[index].letter}</div>
+ <div style="float: right"><a href="#top">top</a></div>
+ <div style="clear: both"></div>
+ </div>
+ <dl>
+ {section name=contents loop=$index[index].index}
+ <dt class="field">
+ {if ($index[index].index[contents].title == "Variable")}
+ <span class="var-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Global")}
+ <span class="var-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Method")}
+ <span class="method-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Function")}
+ <span class="method-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Constant")}
+ <span class="const-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Page") || ($index[index].index[contents].title == "Include")}
+ <span class="include-title">{$index[index].index[contents].name}</span>
+ {else}
+ {$index[index].index[contents].name}
+ {/if}
+ </dt>
+ <dd class="index-item-body">
+ <div class="index-item-details">{$index[index].index[contents].link} in {$index[index].index[contents].file_name}</div>
+ {if $index[index].index[contents].description}
+ <div class="index-item-description">{$index[index].index[contents].description}</div>
+ {/if}
+ </dd>
+ {/section}
+ </dl>
+{/section}
+
+<div class="index-letter-menu">
+{section name=letter loop=$letters}
+ <a class="index-letter" href="{$indexname}.html#{$letters[letter].letter}">{$letters[letter].letter}</a>
+{/section}
+</div>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/blank.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/blank.tpl
new file mode 100755
index 00000000..6a05f27e
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/blank.tpl
@@ -0,0 +1,13 @@
+<html>
+<head>
+ <title>{$maintitle}</title>
+ <link rel="stylesheet" href="{$subdir}media/stylesheet.css" />
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+</head>
+<body>
+<div align="center"><h1>{$maintitle}</h1></div>
+<b>Welcome to {$package}!</b><br />
+<br />
+This documentation was generated by <a href="{$phpdocwebsite}">phpDocumentor v{$phpdocversion}</a><br />
+</body>
+</html> \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/class.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/class.tpl
new file mode 100755
index 00000000..9ab7c455
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/class.tpl
@@ -0,0 +1,429 @@
+{include file="header.tpl" top3=true}
+
+<h2 class="class-name">{if $is_interface}Interface{else}Class{/if} {$class_name}</h2>
+
+<a name="sec-description"></a>
+<div class="info-box">
+ <div class="info-box-title">Description</div>
+ <div class="nav-bar">
+ {if $children || $vars || $ivars || $methods || $imethods || $consts || $iconsts }
+ <span class="disabled">Description</span> |
+ {/if}
+ {if $children}
+ <a href="#sec-descendents">Descendents</a>
+ {if $vars || $ivars || $methods || $imethods || $consts || $iconsts}|{/if}
+ {/if}
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ {if $methods || $imethods}|{/if}
+ {/if}
+ {if $methods || $imethods}
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {if $implements}
+ <p class="implements">
+ Implements interfaces:
+ <ul>
+ {foreach item="int" from=$implements}<li>{$int}</li>{/foreach}
+ </ul>
+ </p>
+ {/if}
+ {include file="docblock.tpl" type="class" sdesc=$sdesc desc=$desc}
+ <p class="notes">
+ Located in <a class="field" href="{$page_link}">{$source_location}</a> (line <span class="field">{if $class_slink}{$class_slink}{else}{$line_number}{/if}</span>)
+ </p>
+
+ {if $tutorial}
+ <hr class="separator" />
+ <div class="notes">Tutorial: <span class="tutorial">{$tutorial}</span></div>
+ {/if}
+
+ <pre>{section name=tree loop=$class_tree.classes}{$class_tree.classes[tree]}{$class_tree.distance[tree]}{/section}</pre>
+
+ {if $conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with classes:</span><br />
+ {section name=me loop=$conflicts.conflicts}
+ {$conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+ </div>
+</div>
+
+{if $children}
+ <a name="sec-descendents"></a>
+ <div class="info-box">
+ <div class="info-box-title">Direct descendents</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ <span class="disabled">Descendents</span>
+ {if $vars || $ivars || $methods || $imethods}|{/if}
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ {if $methods || $imethods}|{/if}
+ {/if}
+ {if $methods || $imethods}
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <table cellpadding="2" cellspacing="0" class="class-table">
+ <tr>
+ <th class="class-table-header">Class</th>
+ <th class="class-table-header">Description</th>
+ </tr>
+ {section name=kids loop=$children}
+ <tr>
+ <td style="padding-right: 2em">{$children[kids].link}</td>
+ <td>
+ {if $children[kids].sdesc}
+ {$children[kids].sdesc}
+ {else}
+ {$children[kids].desc}
+ {/if}
+ </td>
+ </tr>
+ {/section}
+ </table>
+ </div>
+ </div>
+{/if}
+
+{if $consts}
+ <a name="sec-const-summary"></a>
+ <div class="info-box">
+ <div class="info-box-title">Class Constant Summary</span></div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendants</a> |
+ {/if}
+ <span class="disabled">Constants</span> (<a href="#sec-consts">details</a>)
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ |
+ {/if}
+ {if $methods || $imethods}
+ |
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <div class="const-summary">
+ {section name=consts loop=$consts}
+ <div class="const-title">
+ <img src="{$subdir}media/images/Constant.png" alt=" " />
+ <a href="#{$consts[consts].const_name}" title="details" class="const-name">{$consts[consts].const_name}</a> = <span class="var-type">{$consts[consts].const_value}</span>
+
+ </div>
+ {/section}
+ </div>
+ </div>
+ </div>
+{/if}
+
+{if $vars}
+ <a name="sec-var-summary"></a>
+ <div class="info-box">
+ <div class="info-box-title">Variable Summary</span></div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendents</a> |
+ {/if}
+ <span class="disabled">Vars</span> (<a href="#sec-vars">details</a>)
+ {if $methods || $imethods}
+ |
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <div class="var-summary">
+ {section name=vars loop=$vars}
+ {if $vars[vars].static}
+ <div class="var-title">
+ static <span class="var-type">{$vars[vars].var_type}</span>
+ <a href="#{$vars[vars].var_name}" title="details" class="var-name">{$vars[vars].var_name}</a>
+ </div>
+ {/if}
+ {/section}
+ {section name=vars loop=$vars}
+ {if !$vars[vars].static}
+ <div class="var-title">
+ <span class="var-type">{$vars[vars].var_type}</span>
+ <a href="#{$vars[vars].var_name}" title="details" class="var-name">{$vars[vars].var_name}</a>
+ </div>
+ {/if}
+ {/section}
+ </div>
+ </div>
+ </div>
+{/if}
+
+{if $methods}
+ <a name="sec-method-summary"></a>
+ <div class="info-box">
+ <div class="info-box-title">Method Summary</span></div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendents</a> |
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ |
+ {/if}
+ <span class="disabled">Methods</span> (<a href="#sec-methods">details</a>)
+ </div>
+ <div class="info-box-body">
+ <div class="method-summary">
+ {section name=methods loop=$methods}
+ {if $methods[methods].static}
+ <div class="method-definition">
+ static {if $methods[methods].function_return}
+ <span class="method-result">{$methods[methods].function_return}</span>
+ {/if}
+ <a href="#{$methods[methods].function_name}" title="details" class="method-name">{if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}</a>
+ {if count($methods[methods].ifunction_call.params)}
+ ({section name=params loop=$methods[methods].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$methods[methods].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$methods[methods].ifunction_call.params[params].name}</span>{if $methods[methods].ifunction_call.params[params].hasdefault} = <span class="var-default">{$methods[methods].ifunction_call.params[params].default}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+ {/if}
+ {/section}
+ {section name=methods loop=$methods}
+ {if !$methods[methods].static}
+ <div class="method-definition">
+ {if $methods[methods].function_return}
+ <span class="method-result">{$methods[methods].function_return}</span>
+ {/if}
+ <a href="#{$methods[methods].function_name}" title="details" class="method-name">{if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}</a>
+ {if count($methods[methods].ifunction_call.params)}
+ ({section name=params loop=$methods[methods].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$methods[methods].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$methods[methods].ifunction_call.params[params].name}</span>{if $methods[methods].ifunction_call.params[params].hasdefault} = <span class="var-default">{$methods[methods].ifunction_call.params[params].default}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+ {/if}
+ {/section}
+ </div>
+ </div>
+ </div>
+{/if}
+
+{if $vars || $ivars}
+ <a name="sec-vars"></a>
+ <div class="info-box">
+ <div class="info-box-title">Variables</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendents</a> |
+ {/if}
+ {if $methods}
+ <a href="#sec-var-summary">Vars</a> (<span class="disabled">details</span>)
+ {else}
+ <span class="disabled">Vars</span>
+ {/if}
+
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ {if $methods || $imethods}
+ |
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="var.tpl"}
+ {if $ivars}
+ <h4>Inherited Variables</h4>
+ <A NAME='inherited_vars'><!-- --></A>
+ {section name=ivars loop=$ivars}
+ <p>Inherited from <span class="classname">{$ivars[ivars].parent_class}</span></p>
+ <blockquote>
+ {section name=ivars2 loop=$ivars[ivars].ivars}
+ <span class="var-title">
+ <span class="var-name">{$ivars[ivars].ivars[ivars2].link}</span>{if $ivars[ivars].ivars[ivars2].ivar_sdesc}: {$ivars[ivars].ivars[ivars2].ivar_sdesc}{/if}<br>
+ </span>
+ {/section}
+ </blockquote>
+ {/section}
+ {/if}
+ </div>
+ </div>
+{/if}
+
+{if $methods || $imethods}
+ <a name="sec-methods"></a>
+ <div class="info-box">
+ <div class="info-box-title">Methods</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendents</a> |
+ {/if}
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<span class="disabled">details</span>)
+ {else}
+ <span class="disabled">Methods</span>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="method.tpl"}
+ {if $imethods}
+ <h4>Inherited Methods</h4>
+ <a name='inherited_methods'><!-- --></a>
+ {section name=imethods loop=$imethods}
+ <!-- =========== Summary =========== -->
+ <p>Inherited From <span class="classname">{$imethods[imethods].parent_class}</span></p>
+ <blockquote>
+ {section name=im2 loop=$imethods[imethods].imethods}
+ <span class="method-name">{$imethods[imethods].imethods[im2].link}</span>{if $imethods[imethods].imethods[im2].ifunction_sdesc}: {$imethods[imethods].imethods[im2].ifunction_sdesc}{/if}<br>
+ {/section}
+ </blockquote>
+ {/section}
+ {/if}
+ </div>
+ </div>
+{/if}
+
+{if $consts || $iconsts}
+ <a name="sec-consts"></a>
+ <div class="info-box">
+ <div class="info-box-title">Class Constants</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendants</a> |
+ {/if}
+ {if $methods}
+ <a href="#sec-var-summary">Constants</a> (<span class="disabled">details</span>)
+ {else}
+ <span class="disabled">Constants</span>
+ {/if}
+
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ {/if}
+ {if $methods || $imethods}
+ |
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="const.tpl"}
+ {if $iconsts}
+ <h4>Inherited Constants</h4>
+ <A NAME='inherited_vars'><!-- --></A>
+ {section name=iconsts loop=$iconsts}
+ <p>Inherited from <span class="classname">{$iconsts[iconsts].parent_class}</span></p>
+ <blockquote>
+ {section name=iconsts2 loop=$iconsts[iconsts].iconsts}
+ <img src="{$subdir}media/images/{if $iconsts[iconsts].iconsts[iconsts2].access == 'private'}PrivateVariable{else}Variable{/if}.png" />
+ <span class="const-title">
+ <span class="const-name">{$iconsts[iconsts].iconsts[iconsts2].link}</span>{if $iconsts[iconsts].iconsts[iconsts2].iconst_sdesc}: {$iconsts[iconsts].iconsts[iconsts2].iconst_sdesc}{/if}<br>
+ </span>
+ {/section}
+ </blockquote>
+ {/section}
+ {/if}
+ </div>
+ </div>
+{/if}
+
+{include file="footer.tpl" top3=true}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/classtrees.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/classtrees.tpl
new file mode 100755
index 00000000..952e6d50
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/classtrees.tpl
@@ -0,0 +1,19 @@
+{include file="header.tpl" top1=true}
+
+<!-- Start of Class Data -->
+<H2>
+ {$smarty.capture.title}
+</H2>
+{if $interfaces}
+{section name=classtrees loop=$interfaces}
+<h2>Root interface {$interfaces[classtrees].class}</h2>
+{$interfaces[classtrees].class_tree}
+{/section}
+{/if}
+{if $classtrees}
+{section name=classtrees loop=$classtrees}
+<h2>Root class {$classtrees[classtrees].class}</h2>
+{$classtrees[classtrees].class_tree}
+{/section}
+{/if}
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/const.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/const.tpl
new file mode 100644
index 00000000..c26ff92d
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/const.tpl
@@ -0,0 +1,18 @@
+{section name=consts loop=$consts}
+<a name="const{$consts[consts].const_name}" id="{$consts[consts].const_name}"><!-- --></A>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="const-header">
+ <img src="{$subdir}media/images/{if $consts[consts].access == 'private'}PrivateVariable{else}Variable{/if}.png" />
+ <span class="const-title">
+ <span class="const-name">{$consts[consts].const_name}</span>
+ = <span class="const-default">{$consts[consts].const_value|replace:"\n":"<br />"}</span>
+ (line <span class="line-number">{if $consts[consts].slink}{$consts[consts].slink}{else}{$consts[consts].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$consts[consts].sdesc desc=$consts[consts].desc tags=$consts[consts].tags}
+
+</div>
+{/section}
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/define.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/define.tpl
new file mode 100755
index 00000000..0da5d864
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/define.tpl
@@ -0,0 +1,24 @@
+{section name=def loop=$defines}
+<a name="{$defines[def].define_link}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <span class="const-title">
+ <span class="const-name">{$defines[def].define_name}</span> = {$defines[def].define_value|replace:"\n":"<br />"}
+ (line <span class="line-number">{if $defines[def].slink}{$defines[def].slink}{else}{$defines[def].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$defines[def].sdesc desc=$defines[def].desc tags=$defines[def].tags}
+
+ {if $globals[glob].global_conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with constants:</span><br />
+ {section name=me loop=$defines[def].define_conflicts.conflicts}
+ {$defines[def].define_conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+
+</div>
+{/section} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/docblock.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/docblock.tpl
new file mode 100755
index 00000000..783d5271
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/docblock.tpl
@@ -0,0 +1,14 @@
+<!-- ========== Info from phpDoc block ========= -->
+{if $sdesc}
+<p class="short-description">{$sdesc}</p>
+{/if}
+{if $desc}
+<p class="description">{$desc}</p>
+{/if}
+{if $tags}
+ <ul class="tags">
+ {section name=tags loop=$tags}
+ <li><span class="field">{$tags[tags].keyword}:</span> {$tags[tags].data}</li>
+ {/section}
+ </ul>
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/elementindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/elementindex.tpl
new file mode 100755
index 00000000..d5964f99
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/elementindex.tpl
@@ -0,0 +1,12 @@
+{include file="header.tpl" noleftindex=true}
+<a name="top"></a>
+<h2>Full index</h2>
+<h3>Package indexes</h3>
+<ul>
+{section name=p loop=$packageindex}
+ <li><a href="elementindex_{$packageindex[p].title}.html">{$packageindex[p].title}</a></li>
+{/section}
+</ul>
+<br />
+{include file="basicindex.tpl" indexname="elementindex"}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/errors.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/errors.tpl
new file mode 100755
index 00000000..0f526584
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/errors.tpl
@@ -0,0 +1,21 @@
+{include file="header.tpl" noleftindex=true}
+{section name=files loop=$files}
+<a href="#{$files[files].file}">{$files[files].file}</a><br>
+{/section}
+{foreach key=file item=issues from=$all}
+<a name="{$file}"></a>
+<h1>{$file}</h1>
+{if count($issues.warnings)}
+<h2>Warnings:</h2><br>
+{section name=warnings loop=$issues.warnings}
+<b>{$issues.warnings[warnings].name}</b> - {$issues.warnings[warnings].listing}<br>
+{/section}
+{/if}
+{if count($issues.errors)}
+<h2>Errors:</h2><br>
+{section name=errors loop=$issues.errors}
+<b>{$issues.errors[errors].name}</b> - {$issues.errors[errors].listing}<br>
+{/section}
+{/if}
+{/foreach}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/examplesource.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/examplesource.tpl
new file mode 100755
index 00000000..8abf74ce
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/examplesource.tpl
@@ -0,0 +1,6 @@
+{include file="header.tpl" title=$title}
+<h1>{$title}</h1>
+<div class="listing">
+{$source}
+</div>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/filesource.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/filesource.tpl
new file mode 100755
index 00000000..239f7b41
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/filesource.tpl
@@ -0,0 +1,8 @@
+{capture name="tutle"}File Source for {$name}{/capture}
+{include file="header.tpl" title=$smarty.capture.tutle}
+<h1>Source for file {$name}</h1>
+<p>Documentation is available at {$docs}</p>
+<div class="src-code">
+{$source}
+</div>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/footer.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/footer.tpl
new file mode 100755
index 00000000..8d0f79db
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/footer.tpl
@@ -0,0 +1,8 @@
+{if !$index}
+ <p class="notes" id="credit">
+ Documentation generated on {$date} by <a href="{$phpdocwebsite}" target="_blank">phpDocumentor {$phpdocversion}</a>
+ </p>
+{/if}
+ {if $top3}</div>{/if}
+</body>
+</html>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/function.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/function.tpl
new file mode 100755
index 00000000..b6880059
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/function.tpl
@@ -0,0 +1,44 @@
+{section name=func loop=$functions}
+<a name="{$functions[func].function_dest}" id="{$functions[func].function_dest}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <span class="method-title">{$functions[func].function_name}</span> (line <span class="line-number">{if $functions[func].slink}{$functions[func].slink}{else}{$functions[func].line_number}{/if}</span>)
+ </div>
+
+ {include file="docblock.tpl" sdesc=$functions[func].sdesc desc=$functions[func].desc tags=$functions[func].tags params=$functions[func].params function=false}
+
+ <div class="method-signature">
+ <span class="method-result">{$functions[func].function_return}</span>
+ <span class="method-name">
+ {if $functions[func].ifunction_call.returnsref}&amp;{/if}{$functions[func].function_name}
+ </span>
+ {if count($functions[func].ifunction_call.params)}
+ ({section name=params loop=$functions[func].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $functions[func].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$functions[func].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$functions[func].ifunction_call.params[params].name}</span>{if $functions[func].ifunction_call.params[params].hasdefault} = <span class="var-default">{$functions[func].ifunction_call.params[params].default|escape:"html"}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+
+ {if $functions[func].params}
+ <ul class="parameters">
+ {section name=params loop=$functions[func].params}
+ <li>
+ <span class="var-type">{$functions[func].params[params].datatype}</span>
+ <span class="var-name">{$functions[func].params[params].var}</span>{if $functions[func].params[params].data}<span class="var-description">: {$functions[func].params[params].data}</span>{/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+ {if $functions[func].function_conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with functions:</span><br />
+ {section name=me loop=$functions[func].function_conflicts.conflicts}
+ {$functions[func].function_conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+
+</div>
+{/section}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/global.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/global.tpl
new file mode 100755
index 00000000..eab7e0b0
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/global.tpl
@@ -0,0 +1,26 @@
+{section name=glob loop=$globals}
+<a name="{$globals[glob].global_link}" id="{$globals[glob].global_link}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <span class="var-title">
+ <span class="var-type">{$globals[glob].global_type}</span>
+ <span class="var-name">{$globals[glob].global_name}</span>
+ {if $vars[vars].var_default} = <span class="var-default">{$globals[glob].global_value|replace:"\n":"<br />"}</span>{/if}
+ (line <span class="line-number">{if $globals[glob].slink}{$globals[glob].slink}{else}{$globals[glob].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$globals[glob].sdesc desc=$globals[glob].desc tags=$globals[glob].tags}
+
+ {if $globals[glob].global_conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with global variables:</span><br />
+ {section name=me loop=$globals[glob].global_conflicts.conflicts}
+ {$globals[glob].global_conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+
+</div>
+{/section} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/header.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/header.tpl
new file mode 100755
index 00000000..cd34cf9f
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/header.tpl
@@ -0,0 +1,99 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+ <html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <!-- template designed by Marco Von Ballmoos -->
+ <title>{$title}</title>
+ <link rel="stylesheet" href="{$subdir}media/stylesheet.css" />
+ {if $top2 || $top3}
+ <script src="{$subdir}media/lib/classTree.js"></script>
+ {/if}
+ {if $top2}
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+ <link rel="stylesheet" href="{$subdir}media/banner.css" />
+ <style>
+ body {ldelim} padding: 1em {rdelim}
+ </style>
+ {/if}
+ {if $top3 || $top2}
+ <script language="javascript" type="text/javascript">
+ var imgPlus = new Image();
+ var imgMinus = new Image();
+ imgPlus.src = "{$subdir}media/images/plus.png";
+ imgMinus.src = "{$subdir}media/images/minus.png";
+
+ function showNode(Node){ldelim}
+ switch(navigator.family){ldelim}
+ case 'nn4':
+ // Nav 4.x code fork...
+ var oTable = document.layers["span" + Node];
+ var oImg = document.layers["img" + Node];
+ break;
+ case 'ie4':
+ // IE 4/5 code fork...
+ var oTable = document.all["span" + Node];
+ var oImg = document.all["img" + Node];
+ break;
+ case 'gecko':
+ // Standards Compliant code fork...
+ var oTable = document.getElementById("span" + Node);
+ var oImg = document.getElementById("img" + Node);
+ break;
+ {rdelim}
+ oImg.src = imgMinus.src;
+ oTable.style.display = "block";
+ {rdelim}
+
+ function hideNode(Node){ldelim}
+ switch(navigator.family){ldelim}
+ case 'nn4':
+ // Nav 4.x code fork...
+ var oTable = document.layers["span" + Node];
+ var oImg = document.layers["img" + Node];
+ break;
+ case 'ie4':
+ // IE 4/5 code fork...
+ var oTable = document.all["span" + Node];
+ var oImg = document.all["img" + Node];
+ break;
+ case 'gecko':
+ // Standards Compliant code fork...
+ var oTable = document.getElementById("span" + Node);
+ var oImg = document.getElementById("img" + Node);
+ break;
+ {rdelim}
+ oImg.src = imgPlus.src;
+ oTable.style.display = "none";
+ {rdelim}
+
+ function nodeIsVisible(Node){ldelim}
+ switch(navigator.family){ldelim}
+ case 'nn4':
+ // Nav 4.x code fork...
+ var oTable = document.layers["span" + Node];
+ break;
+ case 'ie4':
+ // IE 4/5 code fork...
+ var oTable = document.all["span" + Node];
+ break;
+ case 'gecko':
+ // Standards Compliant code fork...
+ var oTable = document.getElementById("span" + Node);
+ break;
+ {rdelim}
+ return (oTable && oTable.style.display == "block");
+ {rdelim}
+
+ function toggleNodeVisibility(Node){ldelim}
+ if (nodeIsVisible(Node)){ldelim}
+ hideNode(Node);
+ {rdelim}else{ldelim}
+ showNode(Node);
+ {rdelim}
+ {rdelim}
+ </script>
+ {/if}
+ </head>
+ <body>
+ {if $top3}<div class="page-body">{/if}
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/include.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/include.tpl
new file mode 100755
index 00000000..c2419e5f
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/include.tpl
@@ -0,0 +1,16 @@
+{section name=includes loop=$includes}
+<a name="{$includes[includes].include_file}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <span class="include-title">
+ <span class="include-type">{$includes[includes].include_name}</span>
+ (<span class="include-name">{$includes[includes].include_value}</span>)
+ (line <span class="line-number">{if $includes[includes].slink}{$includes[includes].slink}{else}{$includes[includes].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$includes[includes].sdesc desc=$includes[includes].desc tags=$includes[includes].tags}
+
+</div>
+{/section} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/index.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/index.tpl
new file mode 100755
index 00000000..7cd61094
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/index.tpl
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//FR"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
+ <html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+ <!-- Generated by phpDocumentor on {$date} -->
+ <title>{$title}</title>
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+</head>
+
+<FRAMESET rows='120,*'>
+ <FRAME src='packages.html' name='left_top' frameborder="1" bordercolor="#999999">
+ <FRAMESET cols='25%,*'>
+ <FRAME src='{$start}' name='left_bottom' frameborder="1" bordercolor="#999999">
+ <FRAME src='{$blank}.html' name='right' frameborder="1" bordercolor="#999999">
+ </FRAMESET>
+ <NOFRAMES>
+ <H2>Frame Alert</H2>
+ <P>This document is designed to be viewed using the frames feature.
+ If you see this message, you are using a non-frame-capable web client.</P>
+ </NOFRAMES>
+</FRAMESET>
+</HTML>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/left_frame.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/left_frame.tpl
new file mode 100755
index 00000000..2072566d
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/left_frame.tpl
@@ -0,0 +1,198 @@
+{include file="header.tpl" top2=true}
+<h3 class="package-title">{$info.0.package}</h3>
+<div class="tree">
+<script language="Javascript">
+if (document.getElementById) {ldelim}
+{section name=p loop=$info}
+ {if $info[p].subpackage == ""}
+ var tree = new WebFXTree('<span class="package">{$info.0.package}</span>');
+ tree.setBehavior('classic');
+
+ {if $hastodos}
+ var todos = new WebFXTreeItem('To-do List', '{$todolink}');
+ tree.add(todos);
+ {/if}
+
+ var class_trees = new WebFXTreeItem('Class trees', '{$classtreepage}.html');
+ tree.add(class_trees);
+
+ var elements = new WebFXTreeItem('Index of elements', '{$elementindex}.html');
+ tree.add(elements);
+
+ var parent_node;
+
+ {if $info[p].tutorials}
+ var tree_tutorial = new WebFXTreeItem('Tutorial(s)/Manual(s)', '');
+ tree.add(tree_tutorial);
+
+ {if $info[p].tutorials.pkg}
+ var tree_inner_tutorial = new WebFXTreeItem('Package-level', '');
+ tree_tutorial.add(tree_inner_tutorial);
+
+ parent_node = tree_inner_tutorial;
+ {section name=ext loop=$info[p].tutorials.pkg}
+ {$info[p].tutorials.pkg[ext]}
+ {/section}
+ {/if}
+
+ {if $info[p].tutorials.cls}
+ var tree_inner_tutorial = new WebFXTreeItem('Class-level', '');
+ tree_tutorial.add(tree_inner_tutorial);
+
+ parent_node = tree_inner_tutorial;
+ {section name=ext loop=$info[p].tutorials.cls}
+ {$info[p].tutorials.cls[ext]}
+ {/section}
+ {/if}
+
+ {if $info[p].tutorials.proc}
+ var tree_inner_tutorial = new WebFXTreeItem('Function-level', '');
+ tree_tutorial.add(tree_inner_tutorial);
+
+ parent_node = tree_inner_tutorial;
+ {section name=ext loop=$info[p].tutorials.proc}
+ {$info[p].tutorials.proc[ext]}
+ {/section}
+ {/if}
+ {/if}
+
+ {if $info[p].hasinterfaces}
+ {if $info[p].classes}
+ var tree_classe = new WebFXTreeItem('Interface(s)', '{$packagedoc}');
+
+ {section name=class loop=$info[p].classes}
+ {if $info[p].classes[class].is_interface}
+ var classe = new WebFXTreeItem('{$info[p].classes[class].title|escape:"quotes"}', '{$info[p].classes[class].link|escape:"quotes"}');
+ tree_classe.add(classe);
+ {/if}
+ {/section}
+
+ tree.add(tree_classe);
+ {/if}
+ {/if}
+ {if $info[p].hasclasses}
+ {if $info[p].classes}
+ var tree_classe = new WebFXTreeItem('Class(es)', '{$packagedoc}');
+
+ {section name=class loop=$info[p].classes}
+ {if $info[p].classes[class].is_class}
+ var classe = new WebFXTreeItem('{$info[p].classes[class].title|escape:"quotes"}', '{$info[p].classes[class].link|escape:"quotes"}');
+ tree_classe.add(classe);
+ {/if}
+ {/section}
+
+ tree.add(tree_classe);
+ {/if}
+ {/if}
+
+ {if $info[p].functions}
+ var tree_function = new WebFXTreeItem('Function(s)', '{$packagedoc}');
+
+ {section name=nonclass loop=$info[p].functions}
+ var fic = new WebFXTreeItem('{$info[p].functions[nonclass].title|escape:"quotes"}', '{$info[p].functions[nonclass].link|escape:"quotes"}');
+ tree_function.add(fic);
+ {/section}
+
+ tree.add(tree_function);
+ {/if}
+
+ {if $info[p].files}
+ var tree_file = new WebFXTreeItem('File(s)', '{$packagedoc|escape:"quotes"}');
+
+ {section name=nonclass loop=$info[p].files}
+ var file = new WebFXTreeItem('{$info[p].files[nonclass].title|escape:"quotes"}', '{$info[p].files[nonclass].link|escape:"quotes"}');
+ tree_file.add(file);
+ {/section}
+
+ tree.add(tree_file);
+ {/if}
+
+ {else}
+ {if $info[p].subpackagetutorial}
+ var subpackagetree = new WebFXTreeItem('<span class="sub-package">{$info[p].subpackagetutorialtitle|strip_tags|escape:"quotes"}</span>', '{$info[p].subpackagetutorialnoa}');
+ {else}
+ var subpackagetree = new WebFXTreeItem('<span class="sub-package">{$info[p].subpackage}</span>', '{$packagedoc|escape:"quotes"}');
+ {/if}
+
+ {if $info[p].tutorials}
+ var tree_tutorial = new WebFXTreeItem('Tutorial(s)/Manual(s)', '');
+ tree.add(tree_tutorial);
+
+ {if $info[p].tutorials.pkg}
+ var tree_inner_tutorial = new WebFXTreeItem('Package-level', '');
+ tree_tutorial.add(tree_inner_tutorial);
+
+ parent_node = tree_inner_tutorial;
+ {section name=ext loop=$info[p].tutorials.pkg}
+ {$info[p].tutorials.pkg[ext]}
+ {/section}
+ {/if}
+
+ {if $info[p].tutorials.cls}
+ var tree_inner_tutorial = new WebFXTreeItem('Class-level', '');
+ tree_tutorial.add(tree_inner_tutorial);
+
+ parent_node = tree_inner_tutorial;
+ {section name=ext loop=$info[p].tutorials.cls}
+ {$info[p].tutorials.cls[ext]}
+ {/section}
+ {/if}
+
+ {if $info[p].tutorials.proc}
+ var tree_inner_tutorial = new WebFXTreeItem('Function-level', '');
+ tree_tutorial.add(tree_inner_tutorial);
+
+ parent_node = tree_inner_tutorial;
+ {section name=ext loop=$info[p].tutorials.proc}
+ {$info[p].tutorials.proc[ext]}
+ {/section}
+ {/if}
+ {/if}
+
+ {if $info[p].classes}
+ var subpackagetree_classe = new WebFXTreeItem('Class(es)', '{$packagedoc|escape:"quotes"}');
+
+ {section name=class loop=$info[p].classes}
+ var classe = new WebFXTreeItem('{$info[p].classes[class].title|escape:"quotes"}', '{$info[p].classes[class].link|escape:"quotes"}');
+ subpackagetree_classe.add(classe);
+ {/section}
+
+ subpackagetree.add(subpackagetree_classe);
+ {/if}
+
+ {if $info[p].functions}
+ var subpackagetree_function = new WebFXTreeItem('Function(s)', '{$packagedoc}');
+
+ {section name=nonclass loop=$info[p].functions}
+ var fic = new WebFXTreeItem('{$info[p].functions[nonclass].title|escape:"quotes"}', '{$info[p].functions[nonclass].link|escape:"quotes"}');
+ subpackagetree_function.add(fic);
+ {/section}
+
+ subpackagetree.add(subpackagetree_function);
+ {/if}
+
+ {if $info[p].files}
+ var subpackagetree_file = new WebFXTreeItem('File(s)', '{$packagedoc|escape:"quotes"}');
+
+ {section name=nonclass loop=$info[p].files}
+ var file = new WebFXTreeItem('{$info[p].files[nonclass].title|escape:"quotes"}', '{$info[p].files[nonclass].link|escape:"quotes"}');
+ subpackagetree_file.add(file);
+ {/section}
+
+ subpackagetree.add(subpackagetree_file);
+ {/if}
+
+ tree.add(subpackagetree);
+ {/if}
+{/section}
+
+document.write(tree);
+{rdelim}
+</script>
+</div>
+<p class="notes">
+ Generated by
+ <a href="{$phpdocwebsite}" target="_blank">phpDocumentor <span class="field">{$phpdocversion}</span></a>
+</p>
+</body>
+</html>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/banner.css b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/banner.css
new file mode 100755
index 00000000..4f7db5da
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/banner.css
@@ -0,0 +1,32 @@
+body
+{
+ background: #EEEEEE url(bg_left.png) repeat;
+ margin: 0px;
+ padding: 0px;
+}
+
+/* Banner (top bar) classes */
+
+.banner { }
+
+.banner-menu
+{
+ clear: both;
+ padding: .5em;
+ border-top: 2px solid #999999;
+}
+
+.banner-title
+{
+ text-align: right;
+ font-size: 20pt;
+ font-weight: bold;
+ margin: .2em;
+}
+
+.package-selector
+{
+ background-color: #EEEEEE;
+ border: 1px solid black;
+ color: #0000C0;
+}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/bg_left.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/bg_left.png
new file mode 100755
index 00000000..1c331f09
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/bg_left.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/images/I.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/images/I.png
new file mode 100755
index 00000000..e8512fb9
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/images/I.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/images/L.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/images/L.png
new file mode 100755
index 00000000..eb334eda
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/images/L.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/images/Lminus.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/images/Lminus.png
new file mode 100755
index 00000000..f7c43c0a
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/images/Lminus.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/images/Lplus.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/images/Lplus.png
new file mode 100755
index 00000000..848ec2fc
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/images/Lplus.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/images/T.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/images/T.png
new file mode 100755
index 00000000..30173254
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/images/T.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/images/Tminus.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/images/Tminus.png
new file mode 100755
index 00000000..2260e424
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/images/Tminus.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/images/Tplus.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/images/Tplus.png
new file mode 100755
index 00000000..2c8d8f4f
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/images/Tplus.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/images/blank.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/images/blank.png
new file mode 100755
index 00000000..cee9cd37
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/images/blank.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/images/empty.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/images/empty.png
new file mode 100755
index 00000000..d5683865
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/images/empty.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/lib/classTree.js b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/lib/classTree.js
new file mode 100755
index 00000000..ebb3fb4a
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/lib/classTree.js
@@ -0,0 +1,454 @@
+/*----------------------------------------\
+| Cross Browser Tree Widget 1.1 |
+|-----------------------------------------|
+| Created by Emil A. Eklund (eae@eae.net) |
+| For WebFX (http://webfx.eae.net/) |
+|-----------------------------------------|
+| This script is provided as is without |
+| any warranty whatsoever. It may be used |
+| free of charge for non commerical sites |
+| For commerical use contact the author |
+| of this script for further details. |
+|-----------------------------------------|
+| Created 2000-12-11 | Updated 2001-09-06 |
+\----------------------------------------*/
+
+var webFXTreeConfig = {
+ rootIcon : 'media/images/empty.png',
+ openRootIcon : 'media/images/empty.png',
+ folderIcon : 'media/images/empty.png',
+ openFolderIcon : 'media/images/empty.png',
+ fileIcon : 'media/images/empty.png',
+ iIcon : 'media/images/I.png',
+ lIcon : 'media/images/L.png',
+ lMinusIcon : 'media/images/Lminus.png',
+ lPlusIcon : 'media/images/Lplus.png',
+ tIcon : 'media/images/T.png',
+ tMinusIcon : 'media/images/Tminus.png',
+ tPlusIcon : 'media/images/Tplus.png',
+ blankIcon : 'media/images/blank.png',
+ defaultText : 'Tree Item',
+ defaultAction : 'javascript:void(0);',
+ defaultTarget : 'right',
+ defaultBehavior : 'classic'
+};
+
+var webFXTreeHandler = {
+ idCounter : 0,
+ idPrefix : "webfx-tree-object-",
+ all : {},
+ behavior : null,
+ selected : null,
+ getId : function() { return this.idPrefix + this.idCounter++; },
+ toggle : function (oItem) { this.all[oItem.id.replace('-plus','')].toggle(); },
+ select : function (oItem) { this.all[oItem.id.replace('-icon','')].select(); },
+ focus : function (oItem) { this.all[oItem.id.replace('-anchor','')].focus(); },
+ blur : function (oItem) { this.all[oItem.id.replace('-anchor','')].blur(); },
+ keydown : function (oItem) { return this.all[oItem.id].keydown(window.event.keyCode); },
+ cookies : new WebFXCookie()
+};
+
+/*
+ * WebFXCookie class
+ */
+
+function WebFXCookie() {
+ if (document.cookie.length) { this.cookies = ' ' + document.cookie; }
+}
+
+WebFXCookie.prototype.setCookie = function (key, value) {
+ document.cookie = key + "=" + escape(value);
+}
+
+WebFXCookie.prototype.getCookie = function (key) {
+ if (this.cookies) {
+ var start = this.cookies.indexOf(' ' + key + '=');
+ if (start == -1) { return null; }
+ var end = this.cookies.indexOf(";", start);
+ if (end == -1) { end = this.cookies.length; }
+ end -= start;
+ var cookie = this.cookies.substr(start,end);
+ return unescape(cookie.substr(cookie.indexOf('=') + 1, cookie.length - cookie.indexOf('=') + 1));
+ }
+ else { return null; }
+}
+
+/*
+ * WebFXTreeAbstractNode class
+ */
+
+function WebFXTreeAbstractNode(sText, sAction, sTarget) {
+ this.childNodes = [];
+ this.id = webFXTreeHandler.getId();
+ this.text = sText || webFXTreeConfig.defaultText;
+ this.action = sAction || webFXTreeConfig.defaultAction;
+ this.targetWindow = sTarget || webFXTreeConfig.defaultTarget;
+ this._last = false;
+ webFXTreeHandler.all[this.id] = this;
+}
+
+WebFXTreeAbstractNode.prototype.add = function (node) {
+ node.parentNode = this;
+ this.childNodes[this.childNodes.length] = node;
+ var root = this;
+ if (this.childNodes.length >=2) {
+ this.childNodes[this.childNodes.length -2]._last = false;
+ }
+ while (root.parentNode) { root = root.parentNode; }
+ if (root.rendered) {
+ if (this.childNodes.length >= 2) {
+ document.getElementById(this.childNodes[this.childNodes.length -2].id + '-plus').src = ((this.childNodes[this.childNodes.length -2].folder)?webFXTreeConfig.tMinusIcon:webFXTreeConfig.tIcon);
+ if (this.childNodes[this.childNodes.length -2].folder) {
+ this.childNodes[this.childNodes.length -2].plusIcon = webFXTreeConfig.tPlusIcon;
+ this.childNodes[this.childNodes.length -2].minusIcon = webFXTreeConfig.tMinusIcon;
+ }
+ this.childNodes[this.childNodes.length -2]._last = false;
+ }
+ this._last = true;
+ var foo = this;
+ while (foo.parentNode) {
+ for (var i = 0; i < foo.parentNode.childNodes.length; i++) {
+ if (foo.id == foo.parentNode.childNodes[i].id) { break; }
+ }
+ if (++i == foo.parentNode.childNodes.length) { foo.parentNode._last = true; }
+ else { foo.parentNode._last = false; }
+ foo = foo.parentNode;
+ }
+ document.getElementById(this.id + '-cont').insertAdjacentHTML("beforeEnd", node.toString());
+ if ((!this.folder) && (!this.openIcon)) {
+ this.icon = webFXTreeConfig.folderIcon;
+ this.openIcon = webFXTreeConfig.openFolderIcon;
+ }
+ this.folder = true;
+ this.indent();
+ this.expand();
+ }
+ return node;
+}
+
+WebFXTreeAbstractNode.prototype.toggle = function() {
+ if (this.folder) {
+ if (this.open) { this.collapse(); }
+ else { this.expand(); }
+ }
+}
+
+WebFXTreeAbstractNode.prototype.select = function() {
+ document.getElementById(this.id + '-anchor').focus();
+}
+
+WebFXTreeAbstractNode.prototype.focus = function() {
+ webFXTreeHandler.selected = this;
+ if ((this.openIcon) && (webFXTreeHandler.behavior != 'classic')) { document.getElementById(this.id + '-icon').src = this.openIcon; }
+ document.getElementById(this.id + '-anchor').style.backgroundColor = 'highlight';
+ document.getElementById(this.id + '-anchor').style.color = 'highlighttext';
+ document.getElementById(this.id + '-anchor').focus();
+}
+
+WebFXTreeAbstractNode.prototype.blur = function() {
+ if ((this.openIcon) && (webFXTreeHandler.behavior != 'classic')) { document.getElementById(this.id + '-icon').src = this.icon; }
+ document.getElementById(this.id + '-anchor').style.backgroundColor = 'transparent';
+ document.getElementById(this.id + '-anchor').style.color = 'menutext';
+}
+
+WebFXTreeAbstractNode.prototype.doExpand = function() {
+ if (webFXTreeHandler.behavior == 'classic') { document.getElementById(this.id + '-icon').src = this.openIcon; }
+ if (this.childNodes.length) { document.getElementById(this.id + '-cont').style.display = 'block'; }
+ this.open = true;
+ webFXTreeHandler.cookies.setCookie(this.id.substr(18,this.id.length - 18), '1');
+}
+
+WebFXTreeAbstractNode.prototype.doCollapse = function() {
+ if (webFXTreeHandler.behavior == 'classic') { document.getElementById(this.id + '-icon').src = this.icon; }
+ if (this.childNodes.length) { document.getElementById(this.id + '-cont').style.display = 'none'; }
+ this.open = false;
+ webFXTreeHandler.cookies.setCookie(this.id.substr(18,this.id.length - 18), '0');
+}
+
+WebFXTreeAbstractNode.prototype.expandAll = function() {
+ this.expandChildren();
+ if ((this.folder) && (!this.open)) { this.expand(); }
+}
+
+WebFXTreeAbstractNode.prototype.expandChildren = function() {
+ for (var i = 0; i < this.childNodes.length; i++) {
+ this.childNodes[i].expandAll();
+} }
+
+WebFXTreeAbstractNode.prototype.collapseAll = function() {
+ if ((this.folder) && (this.open)) { this.collapse(); }
+ this.collapseChildren();
+}
+
+WebFXTreeAbstractNode.prototype.collapseChildren = function() {
+ for (var i = 0; i < this.childNodes.length; i++) {
+ this.childNodes[i].collapseAll();
+} }
+
+WebFXTreeAbstractNode.prototype.indent = function(lvl, del, last, level) {
+ /*
+ * Since we only want to modify items one level below ourself,
+ * and since the rightmost indentation position is occupied by
+ * the plus icon we set this to -2
+ */
+ if (lvl == null) { lvl = -2; }
+ var state = 0;
+ for (var i = this.childNodes.length - 1; i >= 0 ; i--) {
+ state = this.childNodes[i].indent(lvl + 1, del, last, level);
+ if (state) { return; }
+ }
+ if (del) {
+ if (level >= this._level) {
+ if (this.folder) {
+ document.getElementById(this.id + '-plus').src = (this.open)?webFXTreeConfig.lMinusIcon:webFXTreeConfig.lPlusIcon;
+ this.plusIcon = webFXTreeConfig.lPlusIcon;
+ this.minusIcon = webFXTreeConfig.lMinusIcon;
+ }
+ else { document.getElementById(this.id + '-plus').src = webFXTreeConfig.lIcon; }
+ return 1;
+ }
+ }
+ var foo = document.getElementById(this.id + '-indent-' + lvl);
+ if (foo) {
+ if ((del) && (last)) { foo._last = true; }
+ if (foo._last) { foo.src = webFXTreeConfig.blankIcon; }
+ else { foo.src = webFXTreeConfig.iIcon; }
+ }
+ return 0;
+}
+
+/*
+ * WebFXTree class
+ */
+
+function WebFXTree(sText, sAction, sBehavior, sIcon, sOpenIcon) {
+ this.base = WebFXTreeAbstractNode;
+ this.base(sText, sAction);
+ this.icon = sIcon || webFXTreeConfig.rootIcon;
+ this.openIcon = sOpenIcon || webFXTreeConfig.openRootIcon;
+ /* Defaults to open */
+ this.open = (webFXTreeHandler.cookies.getCookie(this.id.substr(18,this.id.length - 18)) == '0')?false:true;
+ this.folder = true;
+ this.rendered = false;
+ if (!webFXTreeHandler.behavior) { webFXTreeHandler.behavior = sBehavior || webFXTreeConfig.defaultBehavior; }
+ this.targetWindow = 'right';
+}
+
+WebFXTree.prototype = new WebFXTreeAbstractNode;
+
+WebFXTree.prototype.setBehavior = function (sBehavior) {
+ webFXTreeHandler.behavior = sBehavior;
+};
+
+WebFXTree.prototype.getBehavior = function (sBehavior) {
+ return webFXTreeHandler.behavior;
+};
+
+WebFXTree.prototype.getSelected = function() {
+ if (webFXTreeHandler.selected) { return webFXTreeHandler.selected; }
+ else { return null; }
+}
+
+WebFXTree.prototype.remove = function() { }
+
+WebFXTree.prototype.expand = function() {
+ this.doExpand();
+}
+
+WebFXTree.prototype.collapse = function() {
+ this.focus();
+ this.doCollapse();
+}
+
+WebFXTree.prototype.getFirst = function() {
+ return null;
+}
+
+WebFXTree.prototype.getLast = function() {
+ return null;
+}
+
+WebFXTree.prototype.getNextSibling = function() {
+ return null;
+}
+
+WebFXTree.prototype.getPreviousSibling = function() {
+ return null;
+}
+
+WebFXTree.prototype.keydown = function(key) {
+ if (key == 39) { this.expand(); return false; }
+ if (key == 37) { this.collapse(); return false; }
+ if ((key == 40) && (this.open)) { this.childNodes[0].select(); return false; }
+ return true;
+}
+
+WebFXTree.prototype.toString = function() {
+ var str = "<div id=\"" + this.id + "\" ondblclick=\"webFXTreeHandler.toggle(this);\" class=\"webfx-tree-item\" onkeydown=\"return webFXTreeHandler.keydown(this)\">";
+ str += "<img id=\"" + this.id + "-icon\" class=\"webfx-tree-icon\" src=\"" + ((webFXTreeHandler.behavior == 'classic' && this.open)?this.openIcon:this.icon) + "\" onclick=\"webFXTreeHandler.select(this);\"><a href=\"" + this.action + "\" id=\"" + this.id + "-anchor\" target=\"" + this.targetWindow + "\" onfocus=\"webFXTreeHandler.focus(this);\" onblur=\"webFXTreeHandler.blur(this);\">" + this.text + "</a></div>";
+ str += "<div id=\"" + this.id + "-cont\" class=\"webfx-tree-container\" style=\"display: " + ((this.open)?'block':'none') + ";\">";
+ for (var i = 0; i < this.childNodes.length; i++) {
+ str += this.childNodes[i].toString(i, this.childNodes.length);
+ }
+ str += "</div>";
+ this.rendered = true;
+ return str;
+};
+
+/*
+ * WebFXTreeItem class
+ */
+
+function WebFXTreeItem(sText, sAction, eParent, sIcon, sOpenIcon) {
+ this.base = WebFXTreeAbstractNode;
+ this.base(sText, sAction);
+ /* Defaults to close */
+ this.open = (webFXTreeHandler.cookies.getCookie(this.id.substr(18,this.id.length - 18)) == '1')?true:false;
+ if (eParent) { eParent.add(this); }
+ if (sIcon) { this.icon = sIcon; }
+ if (sOpenIcon) { this.openIcon = sOpenIcon; }
+}
+
+WebFXTreeItem.prototype = new WebFXTreeAbstractNode;
+
+WebFXTreeItem.prototype.remove = function() {
+ var parentNode = this.parentNode;
+ var prevSibling = this.getPreviousSibling(true);
+ var nextSibling = this.getNextSibling(true);
+ var folder = this.parentNode.folder;
+ var last = ((nextSibling) && (nextSibling.parentNode) && (nextSibling.parentNode.id == parentNode.id))?false:true;
+ this.getPreviousSibling().focus();
+ this._remove();
+ if (parentNode.childNodes.length == 0) {
+ parentNode.folder = false;
+ parentNode.open = false;
+ }
+ if (last) {
+ if (parentNode.id == prevSibling.id) {
+ document.getElementById(parentNode.id + '-icon').src = webFXTreeConfig.fileIcon;
+ }
+ else { }
+ }
+ if ((!prevSibling.parentNode) || (prevSibling.parentNode != parentNode)) {
+ parentNode.indent(null, true, last, this._level);
+ }
+ if (document.getElementById(prevSibling.id + '-plus')) {
+ if (nextSibling) {
+ if ((parentNode == prevSibling) && (parentNode.getNextSibling)) { document.getElementById(prevSibling.id + '-plus').src = webFXTreeConfig.tIcon; }
+ else if (nextSibling.parentNode != prevSibling) { document.getElementById(prevSibling.id + '-plus').src = webFXTreeConfig.lIcon; }
+ }
+ else { document.getElementById(prevSibling.id + '-plus').src = webFXTreeConfig.lIcon; }
+ }
+}
+
+WebFXTreeItem.prototype._remove = function() {
+ for (var i = this.childNodes.length - 1; i >= 0; i--) {
+ this.childNodes[i]._remove();
+ }
+ for (var i = 0; i < this.parentNode.childNodes.length; i++) {
+ if (this.id == this.parentNode.childNodes[i].id) {
+ for (var j = i; j < this.parentNode.childNodes.length; j++) {
+ this.parentNode.childNodes[i] = this.parentNode.childNodes[i+1]
+ }
+ this.parentNode.childNodes.length = this.parentNode.childNodes.length - 1;
+ if (i + 1 == this.parentNode.childNodes.length) { this.parentNode._last = true; }
+ }
+ }
+ webFXTreeHandler.all[this.id] = null;
+ if (document.getElementById(this.id)) {
+ document.getElementById(this.id).innerHTML = "";
+ document.getElementById(this.id).removeNode();
+ }
+}
+
+WebFXTreeItem.prototype.expand = function() {
+ this.doExpand();
+ document.getElementById(this.id + '-plus').src = this.minusIcon;
+}
+
+WebFXTreeItem.prototype.collapse = function() {
+ this.focus();
+ this.doCollapse();
+ document.getElementById(this.id + '-plus').src = this.plusIcon;
+}
+
+WebFXTreeItem.prototype.getFirst = function() {
+ return this.childNodes[0];
+}
+
+WebFXTreeItem.prototype.getLast = function() {
+ if (this.childNodes[this.childNodes.length - 1].open) { return this.childNodes[this.childNodes.length - 1].getLast(); }
+ else { return this.childNodes[this.childNodes.length - 1]; }
+}
+
+WebFXTreeItem.prototype.getNextSibling = function() {
+ for (var i = 0; i < this.parentNode.childNodes.length; i++) {
+ if (this == this.parentNode.childNodes[i]) { break; }
+ }
+ if (++i == this.parentNode.childNodes.length) { return this.parentNode.getNextSibling(); }
+ else { return this.parentNode.childNodes[i]; }
+}
+
+WebFXTreeItem.prototype.getPreviousSibling = function(b) {
+ for (var i = 0; i < this.parentNode.childNodes.length; i++) {
+ if (this == this.parentNode.childNodes[i]) { break; }
+ }
+ if (i == 0) { return this.parentNode; }
+ else {
+ if ((this.parentNode.childNodes[--i].open) || (b && this.parentNode.childNodes[i].folder)) { return this.parentNode.childNodes[i].getLast(); }
+ else { return this.parentNode.childNodes[i]; }
+} }
+
+WebFXTreeItem.prototype.keydown = function(key) {
+ if ((key == 39) && (this.folder)) {
+ if (!this.open) { this.expand(); return false; }
+ else { this.getFirst().select(); return false; }
+ }
+ else if (key == 37) {
+ if (this.open) { this.collapse(); return false; }
+ else { this.parentNode.select(); return false; }
+ }
+ else if (key == 40) {
+ if (this.open) { this.getFirst().select(); return false; }
+ else {
+ var sib = this.getNextSibling();
+ if (sib) { sib.select(); return false; }
+ } }
+ else if (key == 38) { this.getPreviousSibling().select(); return false; }
+ return true;
+}
+
+WebFXTreeItem.prototype.toString = function (nItem, nItemCount) {
+ var foo = this.parentNode;
+ var indent = '';
+ if (nItem + 1 == nItemCount) { this.parentNode._last = true; }
+ var i = 0;
+ while (foo.parentNode) {
+ foo = foo.parentNode;
+ indent = "<img id=\"" + this.id + "-indent-" + i + "\" src=\"" + ((foo._last)?webFXTreeConfig.blankIcon:webFXTreeConfig.iIcon) + "\">" + indent;
+ i++;
+ }
+ this._level = i;
+ if (this.childNodes.length) { this.folder = 1; }
+ else { this.open = false; }
+ if ((this.folder) || (webFXTreeHandler.behavior != 'classic')) {
+ if (!this.icon) { this.icon = webFXTreeConfig.folderIcon; }
+ if (!this.openIcon) { this.openIcon = webFXTreeConfig.openFolderIcon; }
+ }
+ else if (!this.icon) { this.icon = webFXTreeConfig.fileIcon; }
+ var label = this.text;
+ label = label.replace('<', '<');
+ label = label.replace('>', '>');
+ var str = "<div id=\"" + this.id + "\" ondblclick=\"webFXTreeHandler.toggle(this);\" class=\"webfx-tree-item\" onkeydown=\"return webFXTreeHandler.keydown(this)\">";
+ str += indent;
+ str += "<img id=\"" + this.id + "-plus\" src=\"" + ((this.folder)?((this.open)?((this.parentNode._last)?webFXTreeConfig.lMinusIcon:webFXTreeConfig.tMinusIcon):((this.parentNode._last)?webFXTreeConfig.lPlusIcon:webFXTreeConfig.tPlusIcon)):((this.parentNode._last)?webFXTreeConfig.lIcon:webFXTreeConfig.tIcon)) + "\" onclick=\"webFXTreeHandler.toggle(this);\">"
+ str += "<img id=\"" + this.id + "-icon\" src=\"" + ((webFXTreeHandler.behavior == 'classic' && this.open)?this.openIcon:this.icon) + "\" onclick=\"webFXTreeHandler.select(this);\"><a href=\"" + this.action + "\" id=\"" + this.id + "-anchor\" target=\"" + this.targetWindow + "\" onfocus=\"webFXTreeHandler.focus(this);\" onblur=\"webFXTreeHandler.blur(this);\">" + label + "</a></div>";
+ str += "<div id=\"" + this.id + "-cont\" class=\"webfx-tree-container\" style=\"display: " + ((this.open)?'block':'none') + ";\">";
+ for (var i = 0; i < this.childNodes.length; i++) {
+ str += this.childNodes[i].toString(i,this.childNodes.length);
+ }
+ str += "</div>";
+ this.plusIcon = ((this.parentNode._last)?webFXTreeConfig.lPlusIcon:webFXTreeConfig.tPlusIcon);
+ this.minusIcon = ((this.parentNode._last)?webFXTreeConfig.lMinusIcon:webFXTreeConfig.tMinusIcon);
+ return str;
+} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/minus.gif b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/minus.gif
new file mode 100755
index 00000000..f502662b
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/minus.gif
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/plus.gif b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/plus.gif
new file mode 100755
index 00000000..eeca02ce
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/plus.gif
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/stylesheet.css b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/stylesheet.css
new file mode 100755
index 00000000..3552b78f
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/media/stylesheet.css
@@ -0,0 +1,196 @@
+a
+{
+ color: #336699;
+ text-decoration: underline;
+}
+
+a:hover, a:active, a:focus
+{
+ text-decoration: underline;
+ color: #6699CC
+}
+
+body { background : #FFFFFF; font-family: "Courier New", Courier, fixed; font-size: 10pt }
+table { font-size: 10pt }
+p, li { line-height: 140% }
+a img { border: 0px; }
+dd { margin-left: 0px; padding-left: 1em; }
+
+/* Page layout/boxes */
+
+.info-box {}
+.info-box-title { margin: 1em 0em 0em 0em; padding: .25em; font-weight: normal; font-size: 14pt; border: 1px solid #336699; background-color: #EEEEEE }
+.info-box-body { border: 1px solid #999999; padding: .5em; }
+.nav-bar { font-size: 8pt; white-space: nowrap; text-align: right; padding: .2em; margin: 0em 0em 1em 0em; }
+
+.oddrow { background-color: #F4F4F4; border: 1px solid #AAAAAA; padding: .5em; margin-bottom: 1em}
+.evenrow { border: 1px solid #AAAAAA; padding: .5em; margin-bottom: 1em}
+
+.page-body { max-width: 800px; margin: auto; }
+.menu-body { background: #EEEEEE url(bg_left.css) repeat }
+.tree dl { margin: 0px }
+.tree a { text-decoration: none }
+.tree a:hover, .tree a:active, .tree a:focus { text-decoration: underline }
+
+/* Index formatting classes */
+
+.index-item-body { margin-top: .5em; margin-bottom: .5em}
+.index-item-description { margin-top: .25em }
+.index-item-details { font-weight: normal; font-style: italic; font-size: 8pt }
+.index-letter-section { background-color: #EEEEEE; border: 1px dotted #999999; padding: .5em; margin-bottom: 1em}
+.index-letter-title { font-size: 12pt; font-weight: bold }
+.index-letter-menu { text-align: center; margin: 1em }
+.index-letter { font-size: 12pt }
+
+/* Docbook classes */
+
+.description {}
+.short-description { font-weight: bold; color: #666666; }
+.tags { padding-left: 0em; margin-left: 3em; color: #666666; list-style-type: square; }
+.parameters { padding-left: 0em; margin-left: 3em; font-style: italic; list-style-type: square; }
+.redefinitions { font-size: 8pt; padding-left: 0em; margin-left: 2em; }
+.package { }
+.package-title { font-weight: bold; font-size: 14pt; border-bottom: 1px solid black }
+.package-details { font-size: 85%; }
+.sub-package { font-weight: bold; font-size: 120% }
+.tutorial { border-width: thin; border-color: #0066ff }
+.tutorial-nav-box { width: 100%; border: 1px solid #AAAAAA; background: #EEEEEE url(bg_left.png) repeat; }
+.nav-button-disabled { color: #AAAAAA; }
+.nav-button:active,
+.nav-button:focus,
+.nav-button:hover { background-color: #CCCCCC; outline: 1px solid #999999; text-decoration: none }
+.folder-title { font-style: italic }
+
+/* Generic formatting */
+
+.field { font-weight: bold; }
+.detail { font-size: 8pt; }
+.notes { font-style: italic; font-size: 8pt; }
+.separator { background-color: #999999; height: 2px; }
+.warning { color: #CC0000; }
+.disabled { font-style: italic; color: #999999; }
+
+/* Code elements */
+
+.line-number { }
+
+.class-table { width: 100%; }
+.class-table-header { border-bottom: 1px dotted #666666; text-align: left; background-color: DDDDFF }
+.class-name { color: #000000; font-weight: bold; }
+
+.method-summary { padding-left: 1em; font-size: 8pt }
+.method-header { }
+.method-definition { margin-bottom: .3em }
+.method-title { font-weight: bold }
+.method-name { font-weight: bold; }
+.method-signature { font-size: 85%; color: #666666; margin: .5em 0em }
+.method-result { font-style: italic; }
+
+.var-summary { padding-left: 1em; font-size: 8pt; }
+.var-header { }
+.var-title { margin-bottom: .3em }
+.var-type { font-style: italic; border: 1px dashed #336699 }
+.var-name { font-weight: bold; }
+.var-default { border: 1px dashed #336699 }
+.var-description { font-weight: normal; color: #000000; }
+
+.include-title { }
+.include-type { font-style: italic; }
+.include-name { font-weight: bold; }
+
+.const-title { }
+.const-name { font-weight: bold; }
+
+/* Syntax highlighting */
+
+.src-code { border: 1px solid #336699; padding: 1em;
+ font-family: 'Courier New', Courier, monospace; font-weight: normal; }
+.src-line { font-family: 'Courier New', Courier, monospace; font-weight: normal; }
+
+.src-comm { color: green; }
+.src-id { }
+.src-inc { color: #0000FF; }
+.src-key { color: #0000FF; }
+.src-num { color: #CC0000; }
+.src-str { color: #66cccc; }
+.src-sym { font-weight: bold; }
+.src-var { }
+
+.src-php { font-weight: bold; }
+
+.src-doc { color: #009999 }
+.src-doc-close-template { color: #0000FF }
+.src-doc-coretag { color: #0099FF; font-weight: bold }
+.src-doc-inlinetag { color: #0099FF }
+.src-doc-internal { color: #6699cc }
+.src-doc-tag { color: #0080CC }
+.src-doc-template { color: #0000FF }
+.src-doc-type { font-style: italic }
+.src-doc-var { font-style: italic }
+
+.tute-tag { color: #009999 }
+.tute-attribute-name { color: #0000FF }
+.tute-attribute-value { color: #0099FF }
+.tute-entity { font-weight: bold; }
+.tute-comment { font-style: italic }
+.tute-inline-tag { color: #636311; font-weight: bold }
+
+/* tutorial */
+
+.authors { }
+.author { font-style: italic; font-weight: bold }
+.author-blurb { margin: .5em 0em .5em 2em; font-size: 85%; font-weight: normal; font-style: normal }
+.example { border: 1px solid #336699; background-color: #F4F4F4; padding: .5em; }
+.listing { border: 1px solid #336699; background-color: #F4F4F4; padding: .5em; white-space: nowrap; }
+.release-info { font-size: 85%; font-style: italic; margin: 1em 0em }
+.ref-title-box { }
+.ref-title { }
+.ref-purpose { font-style: italic; color: #666666 }
+.ref-synopsis { }
+.title { font-weight: bold; border-bottom: 1px solid #336699; padding: 2px }
+.cmd-synopsis { margin: 1em 0em }
+.cmd-title { font-weight: bold }
+.toc { margin-left: 2em; padding-left: 0em }
+
+/*------------------------------------------------------------------------------
+ webfx-tree
+------------------------------------------------------------------------------*/
+
+.webfx-tree-container {
+ margin: 0px;
+ padding: 0px;
+ white-space: nowrap;
+ font: icon;
+}
+
+.webfx-tree-item {
+ padding: 0px;
+ margin: 0px;
+ color: black;
+ white-space: nowrap;
+ font: icon;
+}
+
+.webfx-tree-item a {
+ margin-left: 3px;
+ padding: 1px 2px 1px 2px;
+ color: black;
+ text-decoration: none;
+}
+
+.webfx-tree-item a:hover, .webfx-tree-item a:active, .webfx-tree-item a:focus {
+ color: white;
+ background: #6699CC;
+ text-decoration: none
+}
+
+.webfx-tree-item img {
+ vertical-align: middle;
+ border: 0px;
+}
+
+.webfx-tree-icon {
+ width: 16px;
+ height: 16px;
+}
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/method.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/method.tpl
new file mode 100755
index 00000000..06d57a12
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/method.tpl
@@ -0,0 +1,149 @@
+<A NAME='method_detail'></A>
+{section name=methods loop=$methods}
+{if $methods[methods].static}
+<a name="method{$methods[methods].function_name}" id="{$methods[methods].function_name}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="method-header">
+ <span class="method-title">static {$methods[methods].function_name}</span> (line <span class="line-number">{if $methods[methods].slink}{$methods[methods].slink}{else}{$methods[methods].line_number}{/if}</span>)
+ </div>
+
+ {include file="docblock.tpl" sdesc=$methods[methods].sdesc desc=$methods[methods].desc tags=$methods[methods].tags params=$methods[methods].params function=false}
+
+ <div class="method-signature">
+ static <span class="method-result">{$methods[methods].function_return}</span>
+ <span class="method-name">
+ {if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}
+ </span>
+ {if count($methods[methods].ifunction_call.params)}
+ ({section name=params loop=$methods[methods].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$methods[methods].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$methods[methods].ifunction_call.params[params].name}</span>{if $methods[methods].ifunction_call.params[params].hasdefault} = <span class="var-default">{$methods[methods].ifunction_call.params[params].default}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+
+ {if $methods[methods].params}
+ <ul class="parameters">
+ {section name=params loop=$methods[methods].params}
+ <li>
+ <span class="var-type">{$methods[methods].params[params].datatype}</span>
+ <span class="var-name">{$methods[methods].params[params].var}</span>{if $methods[methods].params[params].data}<span class="var-description">: {$methods[methods].params[params].data}</span>{/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+ {if $methods[methods].method_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$methods[methods].method_overrides.link}</dt>
+ {if $methods[methods].method_overrides.sdesc}
+ <dd>{$methods[methods].method_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+ {if $methods[methods].method_implements}
+ <hr class="separator" />
+ <div class="notes">Implementation of:</div>
+ {section name=imp loop=$methods[methods].method_implements}
+ <dl>
+ <dt>{$methods[methods].method_implements[imp].link}</dt>
+ {if $methods[methods].method_implements[imp].sdesc}
+ <dd>{$methods[methods].method_implements[imp].sdesc}</dd>
+ {/if}
+ </dl>
+ {/section}
+ {/if}
+
+ {if $methods[methods].descmethod}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=dm loop=$methods[methods].descmethod}
+ <li>
+ {$methods[methods].descmethod[dm].link}
+ {if $methods[methods].descmethod[dm].sdesc}
+ : {$methods[methods].descmethod[dm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+</div>
+{/if}
+{/section}
+{section name=methods loop=$methods}
+{if !$methods[methods].static}
+<a name="method{$methods[methods].function_name}" id="{$methods[methods].function_name}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="method-header">
+ <span class="method-title">{if $methods[methods].ifunction_call.constructor}Constructor {elseif $methods[methods].ifunction_call.destructor}Destructor {/if}{$methods[methods].function_name}</span> (line <span class="line-number">{if $methods[methods].slink}{$methods[methods].slink}{else}{$methods[methods].line_number}{/if}</span>)
+ </div>
+
+ {include file="docblock.tpl" sdesc=$methods[methods].sdesc desc=$methods[methods].desc tags=$methods[methods].tags params=$methods[methods].params function=false}
+
+ <div class="method-signature">
+ <span class="method-result">{$methods[methods].function_return}</span>
+ <span class="method-name">
+ {if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}
+ </span>
+ {if count($methods[methods].ifunction_call.params)}
+ ({section name=params loop=$methods[methods].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$methods[methods].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$methods[methods].ifunction_call.params[params].name}</span>{if $methods[methods].ifunction_call.params[params].hasdefault} = <span class="var-default">{$methods[methods].ifunction_call.params[params].default}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+
+ {if $methods[methods].params}
+ <ul class="parameters">
+ {section name=params loop=$methods[methods].params}
+ <li>
+ <span class="var-type">{$methods[methods].params[params].datatype}</span>
+ <span class="var-name">{$methods[methods].params[params].var}</span>{if $methods[methods].params[params].data}<span class="var-description">: {$methods[methods].params[params].data}</span>{/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+ {if $methods[methods].method_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$methods[methods].method_overrides.link}</dt>
+ {if $methods[methods].method_overrides.sdesc}
+ <dd>{$methods[methods].method_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+ {if $methods[methods].method_implements}
+ <hr class="separator" />
+ <div class="notes">Implementation of:</div>
+ {section name=imp loop=$methods[methods].method_implements}
+ <dl>
+ <dt>{$methods[methods].method_implements[imp].link}</dt>
+ {if $methods[methods].method_implements[imp].sdesc}
+ <dd>{$methods[methods].method_implements[imp].sdesc}</dd>
+ {/if}
+ </dl>
+ {/section}
+ {/if}
+
+ {if $methods[methods].descmethod}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=dm loop=$methods[methods].descmethod}
+ <li>
+ {$methods[methods].descmethod[dm].link}
+ {if $methods[methods].descmethod[dm].sdesc}
+ : {$methods[methods].descmethod[dm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+</div>
+{/if}
+{/section}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/page.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/page.tpl
new file mode 100755
index 00000000..b5980236
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/page.tpl
@@ -0,0 +1,211 @@
+{include file="header.tpl" top3=true}
+
+<h2 class="file-name">{$source_location}</h2>
+
+<a name="sec-description"></a>
+<div class="info-box">
+ <div class="info-box-title">Description</div>
+ <div class="nav-bar">
+ {if $classes || $includes || $defines || $globals || $functions}
+ <span class="disabled">Description</span> |
+ {/if}
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="docblock.tpl" desc=$desc sdesc=$sdesc tags=$tags}
+
+ {if $tutorial}
+ <hr class="separator" />
+ <div class="notes">Tutorial: <span class="tutorial">{$tutorial}</div>
+ {/if}
+ </div>
+</div>
+
+{if $classes}
+ <a name="sec-classes"></a>
+ <div class="info-box">
+ <div class="info-box-title">Classes</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ <span class="disabled">Classes</span>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <table cellpadding="2" cellspacing="0" class="class-table">
+ <tr>
+ <th class="class-table-header">Class</th>
+ <th class="class-table-header">Description</th>
+ </tr>
+ {section name=classes loop=$classes}
+ <tr>
+ <td style="padding-right: 2em; vertical-align: top">
+ {$classes[classes].link}
+ </td>
+ <td>
+ {if $classes[classes].sdesc}
+ {$classes[classes].sdesc}
+ {else}
+ {$classes[classes].desc}
+ {/if}
+ </td>
+ </tr>
+ {/section}
+ </table>
+ </div>
+ </div>
+{/if}
+
+{if $includes}
+ <a name="sec-includes"></a>
+ <div class="info-box">
+ <div class="info-box-title">Includes</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ <span class="disabled">Includes</span>
+ {if $defines || $globals || $functions}|{/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="include.tpl"}
+ </div>
+ </div>
+{/if}
+
+{if $defines}
+ <a name="sec-constants"></a>
+ <div class="info-box">
+ <div class="info-box-title">Constants</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ <span class="disabled">Constants</span>
+ {if $globals || $functions}|{/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="define.tpl"}
+ </div>
+ </div>
+{/if}
+
+{if $globals}
+ <a name="sec-variables"></a>
+ <div class="info-box">
+ <div class="info-box-title">Variables</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ <span class="disabled">Variables</span>
+ {if $functions}|{/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="global.tpl"}
+ </div>
+ </div>
+{/if}
+
+{if $functions}
+ <a name="sec-functions"></a>
+ <div class="info-box">
+ <div class="info-box-title">Functions</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ <span class="disabled">Functions</span>
+ </div>
+ <div class="info-box-body">
+ {include file="function.tpl"}
+ </div>
+ </div>
+{/if}
+
+{include file="footer.tpl" top3=true}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/pkgelementindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/pkgelementindex.tpl
new file mode 100755
index 00000000..dc283ad0
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/pkgelementindex.tpl
@@ -0,0 +1,17 @@
+{include file="header.tpl"}
+<a name="top"></a>
+<h2>[{$package}] element index</h2>
+{if count($packageindex) > 1}
+ <h3>Package indexes</h3>
+ <ul>
+ {section name=p loop=$packageindex}
+ {if $packageindex[p].title != $package}
+ <li><a href="elementindex_{$packageindex[p].title}.html">{$packageindex[p].title}</a></li>
+ {/if}
+ {/section}
+ </ul>
+{/if}
+<a href="elementindex.html">All elements</a>
+<br />
+{include file="basicindex.tpl" indexname=elementindex_$package}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/ric.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/ric.tpl
new file mode 100755
index 00000000..ad792475
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/ric.tpl
@@ -0,0 +1,6 @@
+{include file="header.tpl"}
+<div align="center"><h1>{$name}</h1></div>
+<pre>
+{$contents|htmlentities}
+</pre>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/todolist.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/todolist.tpl
new file mode 100755
index 00000000..f929ccdb
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/todolist.tpl
@@ -0,0 +1,14 @@
+{include file="header.tpl" title="Todo List"}
+<div align="center"><h1>Todo List</h1></div>
+{foreach from=$todos key=todopackage item=todo}
+<h2>{$todopackage}</h2>
+{section name=todo loop=$todo}
+<h3>{$todo[todo].link}</h3>
+<ul>
+{section name=t loop=$todo[todo].todos}
+ <li>{$todo[todo].todos[t]}</li>
+{/section}
+</ul>
+{/section}
+{/foreach}
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/top_frame.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/top_frame.tpl
new file mode 100755
index 00000000..36d1e5a1
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/top_frame.tpl
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+ <html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <!-- template designed by Marco Von Ballmoos -->
+ <title>{$title}</title>
+ <link rel="stylesheet" href="{$subdir}media/stylesheet.css" />
+ <link rel="stylesheet" href="{$subdir}media/banner.css" />
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+ </head>
+ <body>
+ <div class="banner">
+ <div class="banner-title">{$package}</div>
+ <div class="banner-menu">
+ <form>
+ <table cellpadding="0" cellspacing="0" style="width: 100%">
+ <tr>
+ <td>
+ {if count($ric) >= 1}
+ {assign var="last_ric_name" value=""}
+ {section name=ric loop=$ric}
+ {if $last_ric_name != ""} | {/if}
+ <a href="{$ric[ric].file}" target="right">{$ric[ric].name}</a>
+ {assign var="last_ric_name" value=$ric[ric].name}
+ {/section}
+ {/if}
+ </td>
+ <td style="width: 2em">&nbsp;</td>
+ <td style="text-align: right">
+ {if count($packages) > 1}
+ <span class="field">Packages</span>
+ <select class="package-selector" onchange="window.parent.left_bottom.location=this[selectedIndex].value">
+ {section name=p loop=$packages}
+ <option value="{$packages[p].link}">{$packages[p].title}</option>
+ {/section}
+ </select>
+ {/if}
+ </td>
+ </tr>
+ </table>
+ </form>
+ </div>
+ </div>
+ </body>
+ </html>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/tutorial.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/tutorial.tpl
new file mode 100755
index 00000000..3b9109d1
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/tutorial.tpl
@@ -0,0 +1,13 @@
+{include file="header.tpl" title=$title top3=true}
+
+{if $nav}
+ {include file="tutorial_nav.tpl" prev=$prev next=$next up=$up prevtitle=$prevtitle nexttitle=$nexttitle uptitle=$uptitle}
+{/if}
+
+{$contents}
+
+{if $nav}
+ {include file="tutorial_nav.tpl" prev=$prev next=$next up=$up prevtitle=$prevtitle nexttitle=$nexttitle uptitle=$uptitle}
+{/if}
+
+{include file="footer.tpl" top3=true} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/tutorial_nav.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/tutorial_nav.tpl
new file mode 100755
index 00000000..89952301
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/tutorial_nav.tpl
@@ -0,0 +1,41 @@
+<table class="tutorial-nav-box">
+ <tr>
+ <td style="width: 30%">
+ {if $prev}
+ <a href="{$prev}" class="nav-button">Previous</a>
+ {else}
+ <span class="nav-button-disabled">Previous</span>
+ {/if}
+ </td>
+ <td style="text-align: center">
+ {if $up}
+ <a href="{$up}" class="nav-button">Up</a>
+ {/if}
+ </td>
+ <td style="text-align: right; width: 30%">
+ {if $next}
+ <a href="{$next}" class="nav-button">Next</a>
+ {else}
+ <span class="nav-button-disabled">Next</span>
+ {/if}
+ </td>
+ </tr>
+ <tr>
+ <td style="width: 30%">
+ {if $prevtitle}
+ <span class="detail">{$prevtitle}</span>
+ {/if}
+ </td>
+ <td style="text-align: center">
+ {if $uptitle}
+ <span class="detail">{$uptitle}</span>
+ {/if}
+ </td>
+ <td style="text-align: right; width: 30%">
+ {if $nexttitle}
+ <span class="detail">{$nexttitle}</span>
+ {/if}
+ </td>
+ </tr>
+</table>
+ \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/tutorial_toc.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/tutorial_toc.tpl
new file mode 100755
index 00000000..3482249b
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/tutorial_toc.tpl
@@ -0,0 +1,40 @@
+{if count($toc)}
+<h1 class="title">Table of Contents</h1>
+<ul class="toc">
+ {assign var="lastcontext" value='refsect1'}
+ {section name=toc loop=$toc}
+
+ {if $toc[toc].tagname != $lastcontext}
+ {if $lastcontext == 'refsect1'}
+ <ul class="toc">
+ <li>{$toc[toc].link}</li>
+ {else}
+ {if $lastcontext == 'refsect2'}
+ {if $toc[toc].tagname == 'refsect1'}
+ </ul>
+ <li>{$toc[toc].link}</li>
+ {/if}
+ {if $toc[toc].tagname == 'refsect3'}
+ <ul class="toc">
+ <li>{$toc[toc].link}</li>
+ {/if}
+ {else}
+ </ul>
+ </ul>
+ <li>{$toc[toc].link}</li>
+ {/if}
+ {/if}
+ {assign var="lastcontext" value=$toc[toc].tagname}
+ {else}
+ <li>{$toc[toc].link}</li>
+ {/if}
+ {/section}
+ {if $lastcontext == 'refsect2'}
+ </ul>
+ {/if}
+ {if $lastcontext == 'refsect3'}
+ </ul>
+ </ul>
+ {/if}
+</ul>
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/tutorial_tree.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/tutorial_tree.tpl
new file mode 100755
index 00000000..40d9a4ff
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/tutorial_tree.tpl
@@ -0,0 +1,8 @@
+ var a{$name|replace:"-":"_"}node = new WebFXTreeItem('{$main.title|strip_tags|escape:"quotes"}','{$main.link}', parent_node);
+
+{if $haskids}
+ var a{$name|replace:"-":"_"}_old_parent_node = parent_node;
+ parent_node = a{$name|replace:"-":"_"}node;
+ {$kids}
+ parent_node = a{$name|replace:"-":"_"}_old_parent_node;
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/var.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/var.tpl
new file mode 100755
index 00000000..fccf6892
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/l0l33t/templates/var.tpl
@@ -0,0 +1,92 @@
+{section name=vars loop=$vars}
+{if $vars[vars].static}
+<a name="var{$vars[vars].var_name}" id="{$vars[vars].var_name}"><!-- --></A>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="var-header">
+ <span class="var-title">
+ static <span class="var-type">{$vars[vars].var_type}</span>
+ <span class="var-name">{$vars[vars].var_name}</span>
+ {if $vars[vars].var_default} = <span class="var-default">{$vars[vars].var_default|replace:"\n":"<br />"}</span>{/if}
+ (line <span class="line-number">{if $vars[vars].slink}{$vars[vars].slink}{else}{$vars[vars].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$vars[vars].sdesc desc=$vars[vars].desc tags=$vars[vars].tags}
+
+ {if $vars[vars].var_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$vars[vars].var_overrides.link}</dt>
+ {if $vars[vars].var_overrides.sdesc}
+ <dd>{$vars[vars].var_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+
+ {if $vars[vars].descvar}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=vm loop=$vars[vars].descvar}
+ <li>
+ {$vars[vars].descvar[vm].link}
+ {if $vars[vars].descvar[vm].sdesc}
+ : {$vars[vars].descvar[vm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+</div>
+{/if}
+{/section}
+
+{section name=vars loop=$vars}
+{if !$vars[vars].static}
+<a name="var{$vars[vars].var_name}" id="{$vars[vars].var_name}"><!-- --></A>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="var-header">
+ <span class="var-title">
+ <span class="var-type">{$vars[vars].var_type}</span>
+ <span class="var-name">{$vars[vars].var_name}</span>
+ {if $vars[vars].var_default} = <span class="var-default">{$vars[vars].var_default|replace:"\n":"<br />"}</span>{/if}
+ (line <span class="line-number">{if $vars[vars].slink}{$vars[vars].slink}{else}{$vars[vars].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$vars[vars].sdesc desc=$vars[vars].desc tags=$vars[vars].tags}
+
+ {if $vars[vars].var_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$vars[vars].var_overrides.link}</dt>
+ {if $vars[vars].var_overrides.sdesc}
+ <dd>{$vars[vars].var_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+
+ {if $vars[vars].descvar}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=vm loop=$vars[vars].descvar}
+ <li>
+ {$vars[vars].descvar[vm].link}
+ {if $vars[vars].descvar[vm].sdesc}
+ : {$vars[vars].descvar[vm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+</div>
+{/if}
+{/section}
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/options.ini b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/options.ini
new file mode 100755
index 00000000..084809be
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/options.ini
@@ -0,0 +1,577 @@
+preservedocbooktags = false
+
+;; used to highlight the {@source} inline tag, @filesource tag, and @example tag
+[highlightSourceTokens]
+;; format:
+;; T_CONSTANTNAME = open
+;; /T_CONSTANTNAME = close
+
+T_INCLUDE = <span class="src-inc">
+/T_INCLUDE = </span>
+T_INCLUDE_ONCE = <span class="src-inc">
+/T_INCLUDE_ONCE = </span>
+T_REQUIRE_ONCE = <span class="src-inc">
+/T_REQUIRE_ONCE = </span>
+T_REQUIRE_ONCE = <span class="src-inc">
+/T_REQUIRE_ONCE = </span>
+
+T_CONSTANT_ENCAPSED_STRING = <span class="src-str">
+/T_CONSTANT_ENCAPSED_STRING = </span>
+T_STRING_VARNAME = <span class="src-str">
+/T_STRING_VARNAME = </span>
+
+T_STRING = <span class="src-id">
+/T_STRING = </span>
+
+T_DNUMBER = <span class="src-num">
+/T_DNUMBER = </span>
+T_LNUMBER = <span class="src-num">
+/T_LNUMBER = </span>
+
+T_VARIABLE = <span class="src-var">
+/T_VARIABLE = </span>
+
+T_COMMENT = <span class="src-comm">
+/T_COMMENT = </span>
+T_ML_COMMENT = <span class="src-comm">
+/T_ML_COMMENT = </span>
+
+T_OBJECT_OPERATOR = <span class="src-sym">
+/T_OBJECT_OPERATOR = </span>
+
+T_ABSTRACT = <span class="src-key">
+/T_ABSTRACT = </span>
+T_CLONE = <span class="src-key">
+/T_CLONE = </span>
+T_HALT_COMPILER = <span class="src-key">
+/T_HALT_COMPILER = </span>
+T_ARRAY = <span class="src-key">
+/T_ARRAY = </span>
+T_AS = <span class="src-key">
+/T_AS = </span>
+T_BREAK = <span class="src-key">
+/T_BREAK = </span>
+T_CLASS = <span class="src-key">
+/T_CLASS = </span>
+T_CASE = <span class="src-key">
+/T_CASE = </span>
+T_CONST = <span class="src-key">
+/T_CONST = </span>
+T_CONTINUE = <span class="src-key">
+/T_CONTINUE = </span>
+T_DECLARE = <span class="src-key">
+/T_DECLARE = </span>
+T_DEFAULT = <span class="src-key">
+/T_DEFAULT = </span>
+T_ELSE = <span class="src-key">
+/T_ELSE = </span>
+T_ELSEIF = <span class="src-key">
+/T_ELSEIF = </span>
+T_EMPTY = <span class="src-key">
+/T_EMPTY = </span>
+T_ENDDECLARE = <span class="src-key">
+/T_ENDDECLARE = </span>
+T_ENDFOR = <span class="src-key">
+/T_ENDFOR = </span>
+T_ENDSWITCH = <span class="src-key">
+/T_ENDSWITCH = </span>
+T_ENDFOREACH = <span class="src-key">
+/T_ENDFOREACH = </span>
+T_ENDIF = <span class="src-key">
+/T_ENDIF = </span>
+T_ENDWHILE = <span class="src-key">
+/T_ENDWHILE = </span>
+T_EXIT = <span class="src-key">
+/T_EXIT = </span>
+T_EXTENDS = <span class="src-key">
+/T_EXTENDS = </span>
+T_FINAL = <span class="src-key">
+/T_FINAL = </span>
+T_FOR = <span class="src-key">
+/T_FOR = </span>
+T_FOREACH = <span class="src-key">
+/T_FOREACH = </span>
+T_FUNCTION = <span class="src-key">
+/T_FUNCTION = </span>
+T_GLOBAL = <span class="src-key">
+/T_GLOBAL = </span>
+T_IF = <span class="src-key">
+/T_IF = </span>
+T_IMPLEMENTS = <span class="src-key">
+/T_IMPLEMENTS = </span>
+T_INTERFACE = <span class="src-key">
+/T_INTERFACE = </span>
+T_LOGICAL_AND = <span class="src-key">
+/T_LOGICAL_AND = </span>
+T_LOGICAL_OR = <span class="src-key">
+/T_LOGICAL_OR = </span>
+T_LOGICAL_XOR = <span class="src-key">
+/T_LOGICAL_XOR = </span>
+T_NEW = <span class="src-key">
+/T_NEW = </span>
+T_PRIVATE = <span class="src-key">
+/T_PRIVATE = </span>
+T_PROTECTED = <span class="src-key">
+/T_PROTECTED = </span>
+T_PUBLIC = <span class="src-key">
+/T_PUBLIC = </span>
+T_RETURN = <span class="src-key">
+/T_RETURN = </span>
+T_STATIC = <span class="src-key">
+/T_STATIC = </span>
+T_SWITCH = <span class="src-key">
+/T_SWITCH = </span>
+T_VAR = <span class="src-key">
+/T_VAR = </span>
+T_WHILE = <span class="src-key">
+/T_WHILE = </span>
+
+T_DOUBLE_COLON = <span class="src-sym">
+/T_DOUBLE_COLON = </span>
+
+T_OPEN_TAG = <span class="src-php">
+/T_OPEN_TAG = </span>
+T_OPEN_TAG_WITH_ECHO = <span class="src-php">
+/T_OPEN_TAG_WITH_ECHO = </span>
+T_CLOSE_TAG = <span class="src-php">
+/T_CLOSE_TAG = </span>
+
+
+[highlightSource]
+;; this is for highlighting things that aren't tokens like "&"
+;; format:
+;; word = open
+;; /word = close
+@ = <span class="src-sym">
+/@ = </span>
+& = <span class="src-sym">
+/& = </span>
+[ = <span class="src-sym">
+/[ = </span>
+] = <span class="src-sym">
+/] = </span>
+! = <span class="src-sym">
+/! = </span>
+";" = <span class="src-sym">
+/; = </span>
+( = <span class="src-sym">
+/( = </span>
+) = <span class="src-sym">
+/) = </span>
+, = <span class="src-sym">
+/, = </span>
+{ = <span class="src-sym">
+/{ = </span>
+} = <span class="src-sym">
+/} = </span>
+""" = <span class="src-str">
+/" = </span>
+
+[highlightDocBlockSourceTokens]
+;; this is for docblock tokens, using by phpDocumentor_HighlightParser
+;; tagphptype is for "string" in @param string description, for example
+docblock = <span class="src-doc">
+/docblock = </span>
+tagphptype = <span class="src-doc-type">
+/tagphptype = </span>
+tagvarname = <span class="src-doc-var">
+/tagvarname = </span>
+coretag = <span class="src-doc-coretag">
+/coretag = </span>
+tag = <span class="src-doc-tag">
+/tag = </span>
+inlinetag = <span class="src-doc-inlinetag">
+/inlinetag = </span>
+internal = <span class="src-doc-internal">
+/internal = </span>
+closetemplate = <span class="src-doc-close-template">
+/closetemplate = </span>
+docblocktemplate = <span class="src-doc-template">
+/docblocktemplate = </span>
+
+[highlightTutorialSourceTokens]
+;; this is for XML DocBook-based tutorials, highlighted by phpDocumentor_TutorialHighlightParser
+;; <tag>
+opentag = <span class="tute-tag">
+/opentag = </span>
+;; </tag>
+closetag = <span class="tute-tag">
+/closetag = </span>
+;; <tag attribute="value">
+attribute = <span class="tute-attribute-name">
+/attribute = </span>
+;; <tag attribute="value">
+attributevalue = <span class="tute-attribute-value">
+/attributevalue = </span>
+;; &entity;
+entity = <span class="tute-entity">
+/entity = </span>
+;; <!-- comment -->
+comment = <span class="tute-comment">
+/comment = </span>
+;; {@inline tag}
+itag = <span class="tute-inline-tag">
+/itag = </span>
+
+;; used for translation of html in DocBlocks
+[desctranslate]
+ul = <ul>
+/ul = </ul>
+ol = <ol>
+/ol = </ol>
+li = <li>
+/li = </li>
+code =
+/code =
+var = <var>
+/var = </var>
+samp = <samp>
+/samp = </samp>
+kbd = <kbd>
+/kbd = </kbd>
+pre = <pre>
+/pre = </pre>
+p = <p>
+/p = </p>
+b = <strong>
+/b = </strong>
+i = <em>
+/i = </em>
+br = <br />
+
+[ppage]
+;; this is the DocBook package page translation section. All DocBook tags
+;; that have a corresponding html tag must be listed here. Entities should
+;; also be listed here
+;;
+;; examples:
+;; 1)
+;; tagname = newtagname
+;;
+;; This is the simplest case, where all attributes will be added into the
+;; starting tag and the ending tag will be html/xml style </tranlatedtagname>
+;; <tagname></tagname> becomes <newtagname></newtagname> and
+;; <tagname attr="value"></tagname> becomes
+;; <newtagname attr="value"></newtagname>
+;;
+;; 2)
+;; tagname = newtagname
+;; tagname->attr = newattrname
+;;
+;; in this case, everything will be like the first case, except tags like:
+;; <tagname attr="value"></tagname> will become
+;; <newtagname newattrname="value"></newtagname>
+;;
+;; 3)
+;; tagname = newtagname
+;; tagname->attr = newattrname
+;; tagname->attr+value = newvalue
+;;
+;; in this case, the value is also translated to another. This can be useful
+;; for instances such as focus="middle" changing to align="center" or something
+;; of that nature.
+;; <tagname attr="value"></tagname> will become
+;; <newtagname newattrname="newvalue"></newtagname>
+;;
+;; 4)
+;; tagname = newtagname
+;; tagname->attr1 = newattrname
+;; tagname->attr2 = newattrname
+;; tagname->attr1+value|attr2+value = newvalue
+;;
+;; in this case, two attributes combine to make one new attribute, and the combined
+;; value is translated into a new value
+;; <tagname attr1="value1" attr2="value2"></tagname> will become
+;; <newtagname newattrname="newvalue"></newtagname>
+;;
+;; 5)
+;; tagname = newtagname
+;; tagname!attr = dummy
+;;
+;; here, the attribute will be ignored. dummy is not used and may be any value
+;; <tagname attr="value"></tagname> will become
+;; <newtagname></newtagname>
+;;
+;; 6)
+;; tagname = newtagname
+;; tagname! = dummy
+;;
+;; here, all attributes will be ignored. dummy is not used and may be any value
+;; <tagname attr1="value" attr2="foo"></tagname> will become
+;; <newtagname></newtagname>
+;;
+;; 7)
+;; tagname = newtagname
+;; tagname/ = 1
+;;
+;; here, the tag will be translated as a single tag with no closing tag, and all
+;; attributes
+;; <tagname attr="val">{text text}</tagname> will become
+;; <newtagname attr="val" />
+;;
+;; 8)
+;; tagname = <starttaginfo />
+;; /tagname = closetagtext
+;;
+;; in this case, the text <starttaginfo> will be inserted exactly as entered for
+;; <tagname> and closetagtext for </tagname>
+;; <tagname attr="val"></tagname> will become
+;; <starttaginfo />closetagtext
+;;
+;; 9)
+;; $attr$my_attribute = newattrname
+;;
+;; tagname = newtagname
+;;
+;; in this case, all occurences of my_attribute in any tag will be changed to
+;; newattrname. This is useful for changing things like role="php" to
+;; class="php," for example. Note that the text "$attr$" MUST be on the line
+;; start for phpDocumentor to recognize it.
+;;
+;; 10)
+;; &entity; = translation text
+;; &quot; = &quot;
+;; &quot; = """
+;; &lt; = <
+;;
+;; Use this to control translation of entities to their appropriate values
+
+&nbsp; = &nbsp;
+&quot; = &quot;
+&rdquo; = &rdquo;
+&ldquo; = &ldquo;
+&amp; = &amp;
+&lt; = &lt;
+&gt; = &gt;
+&copy; = &copy;
+
+
+$attr$role = class
+
+abbrev = abbr
+
+blockquote = blockquote
+
+arg = span
+arg->choice = class
+
+author = <span class="author">
+/author = </span>
+author! = 0
+
+authorblurb = <div class="author-blurb">
+/authorblurb = </div>
+
+authorgroup = <div class="authors"><h2 class="title">Authors</h2>
+/authorgroup = </div>
+authorgroup! = 0
+
+caution = <span class="warning">
+/caution = </span>
+caution! = 0
+
+cmdsynopsis = <div class="cmd-synopsis">
+/cmdsynopsis = </div>
+
+command = <span class="cmd-title">
+/command = </span>
+
+copyright = <div class="notes">
+/copyright = </div>
+
+emphasis = em
+
+example = <div class="src-code">
+/example = </div>
+example! = 0
+
+function =
+/function = ()
+
+formalpara = p
+
+graphic = img
+graphic->fileref = src
+graphic/ =
+
+important = strong
+
+informalequation = blockquote
+
+informalexample = div
+
+inlineequation = em
+
+itemizedlist = ul
+
+listitem = li
+
+literal = code
+
+literallayout = span
+
+option = " "
+/option =
+
+orderedlist = ol
+
+para = p
+
+programlisting = <div class="src-code">
+/programlisting = </div>
+programlisting! = 0
+
+refentry = div
+
+refnamediv = <div class="ref-title-box">
+/refnamediv = </div>
+refnamediv! = 0
+
+refname = <h1 class="ref-title">
+/refname = </h1>
+
+refpurpose = <h2 class="ref-purpose">
+/refpurpose = </h2>
+
+refsynopsisdiv = <div class="ref-synopsis">
+/refsynopsisdiv = </div>
+refsynopsisdiv! = 0
+
+refsect1 = span
+
+refsect2 = span
+
+refsect3 =
+/refsect3 = <br />
+
+releaseinfo = <div class="release-info">(
+/releaseinfo = )</div>
+
+simpara =
+/simpara = <br />
+simpara! = 0
+
+subscript = sub
+
+superscript = super
+
+table = table
+
+table->colsep = rules
+table->rowsep = rules
+table->colsep+1|rowsep+1 =all
+table->colsep+1|rowsep+0 =cols
+table->colsep+0|rowsep+1 =rows
+
+table->frame =frame
+table->frame+all =border
+table->frame+none =void
+table->frame+sides =vsides
+table->frame+top =above
+table->frame+topbot =hsides
+
+thead = thead
+
+tfoot = tfoot
+
+tbody = tbody
+
+colspec = col
+
+tgroup = colgroup
+tgroup/ = 1
+tgroup->cols = span
+
+row = tr
+
+entry = td
+entry->morerows = colspan
+entry->morerows+1 =2
+entry->morerows+2 =3
+entry->morerows+3 =4
+entry->morerows+4 =5
+entry->morerows+5 =6
+entry->morerows+6 =7
+entry->morerows+7 =8
+entry->morerows+8 =9
+entry->morerows+9 =10
+entry->morerows+10 =11
+;; add more if you need more colspans
+
+warning = <span class="warning">
+/warning = </span>
+warning! = 0
+
+;; now begins the attributes that should be tags in cdata
+[$attr$id]
+open = a
+;close = /a
+cdata! = true
+quotevalues = true
+separator = "="
+;separateall = true
+$id = name
+
+;; now begins the sections that deal with <title>
+[refsynopsisdiv_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h1 class="title">
+close = </h1>
+
+[refsect1_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h2 class="title">
+close = </h2>
+
+[refsect2_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h3 class="title">
+close = </h3>
+
+[refsect3_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h4 class="title">
+close = </h4>
+
+[para_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <div class="title">
+close = </div>
+
+[formalpara_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <div class="title">
+close = </div>
+
+[example_title]
+;tag_attr = true
+;attr_name = title
+;cdata_start = true
+cdata_end = true
+open = </td></tr><tr><td><strong>
+close = </strong>
+
+[table_title]
+;tag_attr = true
+;attr_name = true
+cdata_start = true
+open = <caption>
+close = </caption>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/basicindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/basicindex.tpl
new file mode 100755
index 00000000..951ee264
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/basicindex.tpl
@@ -0,0 +1,47 @@
+<div class="index-letter-menu">
+{section name=letter loop=$letters}
+ <a class="index-letter" href="{$indexname}.html#{$letters[letter].letter}">{$letters[letter].letter}</a>
+{/section}
+</div>
+
+{section name=index loop=$index}
+ <a name="{$index[index].letter}"></a>
+ <div class="index-letter-section">
+ <div style="float: left" class="index-letter-title">{$index[index].letter}</div>
+ <div style="float: right"><a href="#top">top</a></div>
+ <div style="clear: both"></div>
+ </div>
+ <dl>
+ {section name=contents loop=$index[index].index}
+ <dt class="field">
+ {if ($index[index].index[contents].title == "Variable")}
+ <span class="var-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Global")}
+ <span class="var-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Method")}
+ <span class="method-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Function")}
+ <span class="method-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Constant")}
+ <span class="const-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Page") || ($index[index].index[contents].title == "Include")}
+ <span class="include-title">{$index[index].index[contents].name}</span>
+ {else}
+ {$index[index].index[contents].name}
+ {/if}
+ </dt>
+ <dd class="index-item-body">
+ <div class="index-item-details">{$index[index].index[contents].link} in {$index[index].index[contents].file_name}</div>
+ {if $index[index].index[contents].description}
+ <div class="index-item-description">{$index[index].index[contents].description}</div>
+ {/if}
+ </dd>
+ {/section}
+ </dl>
+{/section}
+
+<div class="index-letter-menu">
+{section name=letter loop=$letters}
+ <a class="index-letter" href="{$indexname}.html#{$letters[letter].letter}">{$letters[letter].letter}</a>
+{/section}
+</div>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/blank.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/blank.tpl
new file mode 100755
index 00000000..6a05f27e
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/blank.tpl
@@ -0,0 +1,13 @@
+<html>
+<head>
+ <title>{$maintitle}</title>
+ <link rel="stylesheet" href="{$subdir}media/stylesheet.css" />
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+</head>
+<body>
+<div align="center"><h1>{$maintitle}</h1></div>
+<b>Welcome to {$package}!</b><br />
+<br />
+This documentation was generated by <a href="{$phpdocwebsite}">phpDocumentor v{$phpdocversion}</a><br />
+</body>
+</html> \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/class.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/class.tpl
new file mode 100755
index 00000000..9ab7c455
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/class.tpl
@@ -0,0 +1,429 @@
+{include file="header.tpl" top3=true}
+
+<h2 class="class-name">{if $is_interface}Interface{else}Class{/if} {$class_name}</h2>
+
+<a name="sec-description"></a>
+<div class="info-box">
+ <div class="info-box-title">Description</div>
+ <div class="nav-bar">
+ {if $children || $vars || $ivars || $methods || $imethods || $consts || $iconsts }
+ <span class="disabled">Description</span> |
+ {/if}
+ {if $children}
+ <a href="#sec-descendents">Descendents</a>
+ {if $vars || $ivars || $methods || $imethods || $consts || $iconsts}|{/if}
+ {/if}
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ {if $methods || $imethods}|{/if}
+ {/if}
+ {if $methods || $imethods}
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {if $implements}
+ <p class="implements">
+ Implements interfaces:
+ <ul>
+ {foreach item="int" from=$implements}<li>{$int}</li>{/foreach}
+ </ul>
+ </p>
+ {/if}
+ {include file="docblock.tpl" type="class" sdesc=$sdesc desc=$desc}
+ <p class="notes">
+ Located in <a class="field" href="{$page_link}">{$source_location}</a> (line <span class="field">{if $class_slink}{$class_slink}{else}{$line_number}{/if}</span>)
+ </p>
+
+ {if $tutorial}
+ <hr class="separator" />
+ <div class="notes">Tutorial: <span class="tutorial">{$tutorial}</span></div>
+ {/if}
+
+ <pre>{section name=tree loop=$class_tree.classes}{$class_tree.classes[tree]}{$class_tree.distance[tree]}{/section}</pre>
+
+ {if $conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with classes:</span><br />
+ {section name=me loop=$conflicts.conflicts}
+ {$conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+ </div>
+</div>
+
+{if $children}
+ <a name="sec-descendents"></a>
+ <div class="info-box">
+ <div class="info-box-title">Direct descendents</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ <span class="disabled">Descendents</span>
+ {if $vars || $ivars || $methods || $imethods}|{/if}
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ {if $methods || $imethods}|{/if}
+ {/if}
+ {if $methods || $imethods}
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <table cellpadding="2" cellspacing="0" class="class-table">
+ <tr>
+ <th class="class-table-header">Class</th>
+ <th class="class-table-header">Description</th>
+ </tr>
+ {section name=kids loop=$children}
+ <tr>
+ <td style="padding-right: 2em">{$children[kids].link}</td>
+ <td>
+ {if $children[kids].sdesc}
+ {$children[kids].sdesc}
+ {else}
+ {$children[kids].desc}
+ {/if}
+ </td>
+ </tr>
+ {/section}
+ </table>
+ </div>
+ </div>
+{/if}
+
+{if $consts}
+ <a name="sec-const-summary"></a>
+ <div class="info-box">
+ <div class="info-box-title">Class Constant Summary</span></div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendants</a> |
+ {/if}
+ <span class="disabled">Constants</span> (<a href="#sec-consts">details</a>)
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ |
+ {/if}
+ {if $methods || $imethods}
+ |
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <div class="const-summary">
+ {section name=consts loop=$consts}
+ <div class="const-title">
+ <img src="{$subdir}media/images/Constant.png" alt=" " />
+ <a href="#{$consts[consts].const_name}" title="details" class="const-name">{$consts[consts].const_name}</a> = <span class="var-type">{$consts[consts].const_value}</span>
+
+ </div>
+ {/section}
+ </div>
+ </div>
+ </div>
+{/if}
+
+{if $vars}
+ <a name="sec-var-summary"></a>
+ <div class="info-box">
+ <div class="info-box-title">Variable Summary</span></div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendents</a> |
+ {/if}
+ <span class="disabled">Vars</span> (<a href="#sec-vars">details</a>)
+ {if $methods || $imethods}
+ |
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <div class="var-summary">
+ {section name=vars loop=$vars}
+ {if $vars[vars].static}
+ <div class="var-title">
+ static <span class="var-type">{$vars[vars].var_type}</span>
+ <a href="#{$vars[vars].var_name}" title="details" class="var-name">{$vars[vars].var_name}</a>
+ </div>
+ {/if}
+ {/section}
+ {section name=vars loop=$vars}
+ {if !$vars[vars].static}
+ <div class="var-title">
+ <span class="var-type">{$vars[vars].var_type}</span>
+ <a href="#{$vars[vars].var_name}" title="details" class="var-name">{$vars[vars].var_name}</a>
+ </div>
+ {/if}
+ {/section}
+ </div>
+ </div>
+ </div>
+{/if}
+
+{if $methods}
+ <a name="sec-method-summary"></a>
+ <div class="info-box">
+ <div class="info-box-title">Method Summary</span></div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendents</a> |
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ |
+ {/if}
+ <span class="disabled">Methods</span> (<a href="#sec-methods">details</a>)
+ </div>
+ <div class="info-box-body">
+ <div class="method-summary">
+ {section name=methods loop=$methods}
+ {if $methods[methods].static}
+ <div class="method-definition">
+ static {if $methods[methods].function_return}
+ <span class="method-result">{$methods[methods].function_return}</span>
+ {/if}
+ <a href="#{$methods[methods].function_name}" title="details" class="method-name">{if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}</a>
+ {if count($methods[methods].ifunction_call.params)}
+ ({section name=params loop=$methods[methods].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$methods[methods].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$methods[methods].ifunction_call.params[params].name}</span>{if $methods[methods].ifunction_call.params[params].hasdefault} = <span class="var-default">{$methods[methods].ifunction_call.params[params].default}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+ {/if}
+ {/section}
+ {section name=methods loop=$methods}
+ {if !$methods[methods].static}
+ <div class="method-definition">
+ {if $methods[methods].function_return}
+ <span class="method-result">{$methods[methods].function_return}</span>
+ {/if}
+ <a href="#{$methods[methods].function_name}" title="details" class="method-name">{if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}</a>
+ {if count($methods[methods].ifunction_call.params)}
+ ({section name=params loop=$methods[methods].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$methods[methods].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$methods[methods].ifunction_call.params[params].name}</span>{if $methods[methods].ifunction_call.params[params].hasdefault} = <span class="var-default">{$methods[methods].ifunction_call.params[params].default}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+ {/if}
+ {/section}
+ </div>
+ </div>
+ </div>
+{/if}
+
+{if $vars || $ivars}
+ <a name="sec-vars"></a>
+ <div class="info-box">
+ <div class="info-box-title">Variables</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendents</a> |
+ {/if}
+ {if $methods}
+ <a href="#sec-var-summary">Vars</a> (<span class="disabled">details</span>)
+ {else}
+ <span class="disabled">Vars</span>
+ {/if}
+
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ {if $methods || $imethods}
+ |
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="var.tpl"}
+ {if $ivars}
+ <h4>Inherited Variables</h4>
+ <A NAME='inherited_vars'><!-- --></A>
+ {section name=ivars loop=$ivars}
+ <p>Inherited from <span class="classname">{$ivars[ivars].parent_class}</span></p>
+ <blockquote>
+ {section name=ivars2 loop=$ivars[ivars].ivars}
+ <span class="var-title">
+ <span class="var-name">{$ivars[ivars].ivars[ivars2].link}</span>{if $ivars[ivars].ivars[ivars2].ivar_sdesc}: {$ivars[ivars].ivars[ivars2].ivar_sdesc}{/if}<br>
+ </span>
+ {/section}
+ </blockquote>
+ {/section}
+ {/if}
+ </div>
+ </div>
+{/if}
+
+{if $methods || $imethods}
+ <a name="sec-methods"></a>
+ <div class="info-box">
+ <div class="info-box-title">Methods</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendents</a> |
+ {/if}
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<span class="disabled">details</span>)
+ {else}
+ <span class="disabled">Methods</span>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="method.tpl"}
+ {if $imethods}
+ <h4>Inherited Methods</h4>
+ <a name='inherited_methods'><!-- --></a>
+ {section name=imethods loop=$imethods}
+ <!-- =========== Summary =========== -->
+ <p>Inherited From <span class="classname">{$imethods[imethods].parent_class}</span></p>
+ <blockquote>
+ {section name=im2 loop=$imethods[imethods].imethods}
+ <span class="method-name">{$imethods[imethods].imethods[im2].link}</span>{if $imethods[imethods].imethods[im2].ifunction_sdesc}: {$imethods[imethods].imethods[im2].ifunction_sdesc}{/if}<br>
+ {/section}
+ </blockquote>
+ {/section}
+ {/if}
+ </div>
+ </div>
+{/if}
+
+{if $consts || $iconsts}
+ <a name="sec-consts"></a>
+ <div class="info-box">
+ <div class="info-box-title">Class Constants</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendants</a> |
+ {/if}
+ {if $methods}
+ <a href="#sec-var-summary">Constants</a> (<span class="disabled">details</span>)
+ {else}
+ <span class="disabled">Constants</span>
+ {/if}
+
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ {/if}
+ {if $methods || $imethods}
+ |
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="const.tpl"}
+ {if $iconsts}
+ <h4>Inherited Constants</h4>
+ <A NAME='inherited_vars'><!-- --></A>
+ {section name=iconsts loop=$iconsts}
+ <p>Inherited from <span class="classname">{$iconsts[iconsts].parent_class}</span></p>
+ <blockquote>
+ {section name=iconsts2 loop=$iconsts[iconsts].iconsts}
+ <img src="{$subdir}media/images/{if $iconsts[iconsts].iconsts[iconsts2].access == 'private'}PrivateVariable{else}Variable{/if}.png" />
+ <span class="const-title">
+ <span class="const-name">{$iconsts[iconsts].iconsts[iconsts2].link}</span>{if $iconsts[iconsts].iconsts[iconsts2].iconst_sdesc}: {$iconsts[iconsts].iconsts[iconsts2].iconst_sdesc}{/if}<br>
+ </span>
+ {/section}
+ </blockquote>
+ {/section}
+ {/if}
+ </div>
+ </div>
+{/if}
+
+{include file="footer.tpl" top3=true}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/classtrees.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/classtrees.tpl
new file mode 100755
index 00000000..952e6d50
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/classtrees.tpl
@@ -0,0 +1,19 @@
+{include file="header.tpl" top1=true}
+
+<!-- Start of Class Data -->
+<H2>
+ {$smarty.capture.title}
+</H2>
+{if $interfaces}
+{section name=classtrees loop=$interfaces}
+<h2>Root interface {$interfaces[classtrees].class}</h2>
+{$interfaces[classtrees].class_tree}
+{/section}
+{/if}
+{if $classtrees}
+{section name=classtrees loop=$classtrees}
+<h2>Root class {$classtrees[classtrees].class}</h2>
+{$classtrees[classtrees].class_tree}
+{/section}
+{/if}
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/const.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/const.tpl
new file mode 100644
index 00000000..c26ff92d
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/const.tpl
@@ -0,0 +1,18 @@
+{section name=consts loop=$consts}
+<a name="const{$consts[consts].const_name}" id="{$consts[consts].const_name}"><!-- --></A>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="const-header">
+ <img src="{$subdir}media/images/{if $consts[consts].access == 'private'}PrivateVariable{else}Variable{/if}.png" />
+ <span class="const-title">
+ <span class="const-name">{$consts[consts].const_name}</span>
+ = <span class="const-default">{$consts[consts].const_value|replace:"\n":"<br />"}</span>
+ (line <span class="line-number">{if $consts[consts].slink}{$consts[consts].slink}{else}{$consts[consts].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$consts[consts].sdesc desc=$consts[consts].desc tags=$consts[consts].tags}
+
+</div>
+{/section}
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/define.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/define.tpl
new file mode 100755
index 00000000..0da5d864
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/define.tpl
@@ -0,0 +1,24 @@
+{section name=def loop=$defines}
+<a name="{$defines[def].define_link}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <span class="const-title">
+ <span class="const-name">{$defines[def].define_name}</span> = {$defines[def].define_value|replace:"\n":"<br />"}
+ (line <span class="line-number">{if $defines[def].slink}{$defines[def].slink}{else}{$defines[def].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$defines[def].sdesc desc=$defines[def].desc tags=$defines[def].tags}
+
+ {if $globals[glob].global_conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with constants:</span><br />
+ {section name=me loop=$defines[def].define_conflicts.conflicts}
+ {$defines[def].define_conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+
+</div>
+{/section} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/docblock.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/docblock.tpl
new file mode 100755
index 00000000..783d5271
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/docblock.tpl
@@ -0,0 +1,14 @@
+<!-- ========== Info from phpDoc block ========= -->
+{if $sdesc}
+<p class="short-description">{$sdesc}</p>
+{/if}
+{if $desc}
+<p class="description">{$desc}</p>
+{/if}
+{if $tags}
+ <ul class="tags">
+ {section name=tags loop=$tags}
+ <li><span class="field">{$tags[tags].keyword}:</span> {$tags[tags].data}</li>
+ {/section}
+ </ul>
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/elementindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/elementindex.tpl
new file mode 100755
index 00000000..d5964f99
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/elementindex.tpl
@@ -0,0 +1,12 @@
+{include file="header.tpl" noleftindex=true}
+<a name="top"></a>
+<h2>Full index</h2>
+<h3>Package indexes</h3>
+<ul>
+{section name=p loop=$packageindex}
+ <li><a href="elementindex_{$packageindex[p].title}.html">{$packageindex[p].title}</a></li>
+{/section}
+</ul>
+<br />
+{include file="basicindex.tpl" indexname="elementindex"}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/errors.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/errors.tpl
new file mode 100755
index 00000000..0f526584
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/errors.tpl
@@ -0,0 +1,21 @@
+{include file="header.tpl" noleftindex=true}
+{section name=files loop=$files}
+<a href="#{$files[files].file}">{$files[files].file}</a><br>
+{/section}
+{foreach key=file item=issues from=$all}
+<a name="{$file}"></a>
+<h1>{$file}</h1>
+{if count($issues.warnings)}
+<h2>Warnings:</h2><br>
+{section name=warnings loop=$issues.warnings}
+<b>{$issues.warnings[warnings].name}</b> - {$issues.warnings[warnings].listing}<br>
+{/section}
+{/if}
+{if count($issues.errors)}
+<h2>Errors:</h2><br>
+{section name=errors loop=$issues.errors}
+<b>{$issues.errors[errors].name}</b> - {$issues.errors[errors].listing}<br>
+{/section}
+{/if}
+{/foreach}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/examplesource.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/examplesource.tpl
new file mode 100755
index 00000000..8abf74ce
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/examplesource.tpl
@@ -0,0 +1,6 @@
+{include file="header.tpl" title=$title}
+<h1>{$title}</h1>
+<div class="listing">
+{$source}
+</div>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/filesource.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/filesource.tpl
new file mode 100755
index 00000000..239f7b41
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/filesource.tpl
@@ -0,0 +1,8 @@
+{capture name="tutle"}File Source for {$name}{/capture}
+{include file="header.tpl" title=$smarty.capture.tutle}
+<h1>Source for file {$name}</h1>
+<p>Documentation is available at {$docs}</p>
+<div class="src-code">
+{$source}
+</div>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/footer.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/footer.tpl
new file mode 100755
index 00000000..8d0f79db
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/footer.tpl
@@ -0,0 +1,8 @@
+{if !$index}
+ <p class="notes" id="credit">
+ Documentation generated on {$date} by <a href="{$phpdocwebsite}" target="_blank">phpDocumentor {$phpdocversion}</a>
+ </p>
+{/if}
+ {if $top3}</div>{/if}
+</body>
+</html>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/function.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/function.tpl
new file mode 100755
index 00000000..b6880059
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/function.tpl
@@ -0,0 +1,44 @@
+{section name=func loop=$functions}
+<a name="{$functions[func].function_dest}" id="{$functions[func].function_dest}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <span class="method-title">{$functions[func].function_name}</span> (line <span class="line-number">{if $functions[func].slink}{$functions[func].slink}{else}{$functions[func].line_number}{/if}</span>)
+ </div>
+
+ {include file="docblock.tpl" sdesc=$functions[func].sdesc desc=$functions[func].desc tags=$functions[func].tags params=$functions[func].params function=false}
+
+ <div class="method-signature">
+ <span class="method-result">{$functions[func].function_return}</span>
+ <span class="method-name">
+ {if $functions[func].ifunction_call.returnsref}&amp;{/if}{$functions[func].function_name}
+ </span>
+ {if count($functions[func].ifunction_call.params)}
+ ({section name=params loop=$functions[func].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $functions[func].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$functions[func].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$functions[func].ifunction_call.params[params].name}</span>{if $functions[func].ifunction_call.params[params].hasdefault} = <span class="var-default">{$functions[func].ifunction_call.params[params].default|escape:"html"}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+
+ {if $functions[func].params}
+ <ul class="parameters">
+ {section name=params loop=$functions[func].params}
+ <li>
+ <span class="var-type">{$functions[func].params[params].datatype}</span>
+ <span class="var-name">{$functions[func].params[params].var}</span>{if $functions[func].params[params].data}<span class="var-description">: {$functions[func].params[params].data}</span>{/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+ {if $functions[func].function_conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with functions:</span><br />
+ {section name=me loop=$functions[func].function_conflicts.conflicts}
+ {$functions[func].function_conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+
+</div>
+{/section}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/global.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/global.tpl
new file mode 100755
index 00000000..eab7e0b0
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/global.tpl
@@ -0,0 +1,26 @@
+{section name=glob loop=$globals}
+<a name="{$globals[glob].global_link}" id="{$globals[glob].global_link}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <span class="var-title">
+ <span class="var-type">{$globals[glob].global_type}</span>
+ <span class="var-name">{$globals[glob].global_name}</span>
+ {if $vars[vars].var_default} = <span class="var-default">{$globals[glob].global_value|replace:"\n":"<br />"}</span>{/if}
+ (line <span class="line-number">{if $globals[glob].slink}{$globals[glob].slink}{else}{$globals[glob].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$globals[glob].sdesc desc=$globals[glob].desc tags=$globals[glob].tags}
+
+ {if $globals[glob].global_conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with global variables:</span><br />
+ {section name=me loop=$globals[glob].global_conflicts.conflicts}
+ {$globals[glob].global_conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+
+</div>
+{/section} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/header.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/header.tpl
new file mode 100755
index 00000000..0d626190
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/header.tpl
@@ -0,0 +1,95 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+ <html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <!-- template designed by Marco Von Ballmoos -->
+ <title>{$title}</title>
+ <link rel="stylesheet" href="{$subdir}media/stylesheet.css" />
+ {if $top2 || $top3}
+ <script src="{$subdir}media/lib/classTree.js"></script>
+ {/if}
+ {if $top2}
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+ {/if}
+ {if $top3 || $top2}
+ <script language="javascript" type="text/javascript">
+ var imgPlus = new Image();
+ var imgMinus = new Image();
+ imgPlus.src = "{$subdir}media/images/plus.png";
+ imgMinus.src = "{$subdir}media/images/minus.png";
+
+ function showNode(Node){ldelim}
+ switch(navigator.family){ldelim}
+ case 'nn4':
+ // Nav 4.x code fork...
+ var oTable = document.layers["span" + Node];
+ var oImg = document.layers["img" + Node];
+ break;
+ case 'ie4':
+ // IE 4/5 code fork...
+ var oTable = document.all["span" + Node];
+ var oImg = document.all["img" + Node];
+ break;
+ case 'gecko':
+ // Standards Compliant code fork...
+ var oTable = document.getElementById("span" + Node);
+ var oImg = document.getElementById("img" + Node);
+ break;
+ {rdelim}
+ oImg.src = imgMinus.src;
+ oTable.style.display = "block";
+ {rdelim}
+
+ function hideNode(Node){ldelim}
+ switch(navigator.family){ldelim}
+ case 'nn4':
+ // Nav 4.x code fork...
+ var oTable = document.layers["span" + Node];
+ var oImg = document.layers["img" + Node];
+ break;
+ case 'ie4':
+ // IE 4/5 code fork...
+ var oTable = document.all["span" + Node];
+ var oImg = document.all["img" + Node];
+ break;
+ case 'gecko':
+ // Standards Compliant code fork...
+ var oTable = document.getElementById("span" + Node);
+ var oImg = document.getElementById("img" + Node);
+ break;
+ {rdelim}
+ oImg.src = imgPlus.src;
+ oTable.style.display = "none";
+ {rdelim}
+
+ function nodeIsVisible(Node){ldelim}
+ switch(navigator.family){ldelim}
+ case 'nn4':
+ // Nav 4.x code fork...
+ var oTable = document.layers["span" + Node];
+ break;
+ case 'ie4':
+ // IE 4/5 code fork...
+ var oTable = document.all["span" + Node];
+ break;
+ case 'gecko':
+ // Standards Compliant code fork...
+ var oTable = document.getElementById("span" + Node);
+ break;
+ {rdelim}
+ return (oTable && oTable.style.display == "block");
+ {rdelim}
+
+ function toggleNodeVisibility(Node){ldelim}
+ if (nodeIsVisible(Node)){ldelim}
+ hideNode(Node);
+ {rdelim}else{ldelim}
+ showNode(Node);
+ {rdelim}
+ {rdelim}
+ </script>
+ {/if}
+ </head>
+ <body>
+ {if $top3}<div class="page-body">{/if}
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/include.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/include.tpl
new file mode 100755
index 00000000..c2419e5f
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/include.tpl
@@ -0,0 +1,16 @@
+{section name=includes loop=$includes}
+<a name="{$includes[includes].include_file}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <span class="include-title">
+ <span class="include-type">{$includes[includes].include_name}</span>
+ (<span class="include-name">{$includes[includes].include_value}</span>)
+ (line <span class="line-number">{if $includes[includes].slink}{$includes[includes].slink}{else}{$includes[includes].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$includes[includes].sdesc desc=$includes[includes].desc tags=$includes[includes].tags}
+
+</div>
+{/section} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/index.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/index.tpl
new file mode 100755
index 00000000..7cd61094
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/index.tpl
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//FR"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
+ <html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+ <!-- Generated by phpDocumentor on {$date} -->
+ <title>{$title}</title>
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+</head>
+
+<FRAMESET rows='120,*'>
+ <FRAME src='packages.html' name='left_top' frameborder="1" bordercolor="#999999">
+ <FRAMESET cols='25%,*'>
+ <FRAME src='{$start}' name='left_bottom' frameborder="1" bordercolor="#999999">
+ <FRAME src='{$blank}.html' name='right' frameborder="1" bordercolor="#999999">
+ </FRAMESET>
+ <NOFRAMES>
+ <H2>Frame Alert</H2>
+ <P>This document is designed to be viewed using the frames feature.
+ If you see this message, you are using a non-frame-capable web client.</P>
+ </NOFRAMES>
+</FRAMESET>
+</HTML>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/left_frame.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/left_frame.tpl
new file mode 100755
index 00000000..98fc3135
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/left_frame.tpl
@@ -0,0 +1,217 @@
+{include file="header.tpl" top2=true}
+<h3 class="package-title">{$info.0.package}</h3>
+<div class="tree">
+<script language="Javascript">
+if (document.getElementById) {ldelim}
+{section name=p loop=$info}
+ {if $info[p].subpackage == ""}
+ var tree = new WebFXTree('<span class="package">{$info.0.package}</span>');
+ tree.setBehavior('classic');
+
+ {if $hastodos}
+ var todos = new WebFXTreeItem('To-do List', '{$todolink}');
+ tree.add(todos);
+ {/if}
+
+ var class_trees = new WebFXTreeItem('Class trees', '{$classtreepage}.html');
+ tree.add(class_trees);
+
+ var elements = new WebFXTreeItem('Index of elements', '{$elementindex}.html');
+ tree.add(elements);
+
+ var parent_node;
+
+ {if $info[p].tutorials}
+ var tree_tutorial = new WebFXTreeItem('Tutorial(s)/Manual(s)', '');
+ tree.add(tree_tutorial);
+
+ {if $info[p].tutorials.pkg}
+ var tree_inner_tutorial = new WebFXTreeItem('Package-level', '');
+ tree_tutorial.add(tree_inner_tutorial);
+
+ parent_node = tree_inner_tutorial;
+ {section name=ext loop=$info[p].tutorials.pkg}
+ {$info[p].tutorials.pkg[ext]}
+ {/section}
+ {/if}
+
+ {if $info[p].tutorials.cls}
+ var tree_inner_tutorial = new WebFXTreeItem('Class-level', '');
+ tree_tutorial.add(tree_inner_tutorial);
+
+ parent_node = tree_inner_tutorial;
+ {section name=ext loop=$info[p].tutorials.cls}
+ {$info[p].tutorials.cls[ext]}
+ {/section}
+ {/if}
+
+ {if $info[p].tutorials.proc}
+ var tree_inner_tutorial = new WebFXTreeItem('Function-level', '');
+ tree_tutorial.add(tree_inner_tutorial);
+
+ parent_node = tree_inner_tutorial;
+ {section name=ext loop=$info[p].tutorials.proc}
+ {$info[p].tutorials.proc[ext]}
+ {/section}
+ {/if}
+ {/if}
+
+ {if $info[p].hasinterfaces}
+ {if $info[p].classes}
+ var tree_classe = new WebFXTreeItem('Interface(s)', '{$packagedoc}');
+
+ {section name=class loop=$info[p].classes}
+ {if $info[p].classes[class].is_interface}
+ var classe = new WebFXTreeItem('{$info[p].classes[class].title|escape:"quotes"}', '{$info[p].classes[class].link|escape:"quotes"}');
+ tree_classe.add(classe);
+ {/if}
+ {/section}
+
+ tree.add(tree_classe);
+ {/if}
+ {/if}
+ {if $info[p].hasclasses}
+ {if $info[p].classes}
+ var tree_classe = new WebFXTreeItem('Class(es)', '{$packagedoc}');
+
+ {section name=class loop=$info[p].classes}
+ {if $info[p].classes[class].is_class}
+ var classe = new WebFXTreeItem('{$info[p].classes[class].title|escape:"quotes"}', '{$info[p].classes[class].link|escape:"quotes"}');
+ tree_classe.add(classe);
+ {/if}
+ {/section}
+
+ tree.add(tree_classe);
+ {/if}
+ {/if}
+
+ {if $info[p].functions}
+ var tree_function = new WebFXTreeItem('Function(s)', '{$packagedoc|escape:"quotes"}');
+
+ {section name=nonclass loop=$info[p].functions}
+ var fic = new WebFXTreeItem('{$info[p].functions[nonclass].title|escape:"quotes"}', '{$info[p].functions[nonclass].link|escape:"quotes"}');
+ tree_function.add(fic);
+ {/section}
+
+ tree.add(tree_function);
+ {/if}
+
+ {if $info[p].files}
+ var tree_file = new WebFXTreeItem('File(s)', '{$packagedoc|escape:"quotes"}');
+
+ {section name=nonclass loop=$info[p].files}
+ var file = new WebFXTreeItem('{$info[p].files[nonclass].title|escape:"quotes"}', '{$info[p].files[nonclass].link|escape:"quotes"}');
+ tree_file.add(file);
+ {/section}
+
+ tree.add(tree_file);
+ {/if}
+
+ {else}
+ {if $info[p].subpackagetutorial}
+ var subpackagetree = new WebFXTreeItem('<span class="sub-package">{$info[p].subpackagetutorialtitle|strip_tags|escape:"quotes"}</span>', '{$info[p].subpackagetutorialnoa}');
+ {else}
+ var subpackagetree = new WebFXTreeItem('<span class="sub-package">{$info[p].subpackage}</span>', '{$packagedoc}');
+ {/if}
+
+ {if $info[p].tutorials}
+ var tree_tutorial = new WebFXTreeItem('Tutorial(s)/Manual(s)', '');
+ tree.add(tree_tutorial);
+
+ {if $info[p].tutorials.pkg}
+ var tree_inner_tutorial = new WebFXTreeItem('Package-level', '');
+ tree_tutorial.add(tree_inner_tutorial);
+
+ parent_node = tree_inner_tutorial;
+ {section name=ext loop=$info[p].tutorials.pkg}
+ {$info[p].tutorials.pkg[ext]}
+ {/section}
+ {/if}
+
+ {if $info[p].tutorials.cls}
+ var tree_inner_tutorial = new WebFXTreeItem('Class-level', '');
+ tree_tutorial.add(tree_inner_tutorial);
+
+ parent_node = tree_inner_tutorial;
+ {section name=ext loop=$info[p].tutorials.cls}
+ {$info[p].tutorials.cls[ext]}
+ {/section}
+ {/if}
+
+ {if $info[p].tutorials.proc}
+ var tree_inner_tutorial = new WebFXTreeItem('Function-level', '');
+ tree_tutorial.add(tree_inner_tutorial);
+
+ parent_node = tree_inner_tutorial;
+ {section name=ext loop=$info[p].tutorials.proc}
+ {$info[p].tutorials.proc[ext]}
+ {/section}
+ {/if}
+ {/if}
+
+ {if $info[p].hasinterfaces}
+ {if $info[p].classes}
+ var subpackagetree_classe = new WebFXTreeItem('Interface(s)', '{$packagedoc}');
+
+ {section name=class loop=$info[p].classes}
+ {if $info[p].classes[class].is_interface}
+ var classe = new WebFXTreeItem('{$info[p].classes[class].title|escape:"quotes"}', '{$info[p].classes[class].link|escape:"quotes"}');
+ subpackagetree_classe.add(classe);
+ {/if}
+ {/section}
+
+ subpackagetree.add(subpackagetree_classe);
+ {/if}
+ {/if}
+
+ {if $info[p].hasclasses}
+ {if $info[p].classes}
+ var subpackagetree_classe = new WebFXTreeItem('Class(es)', '{$packagedoc}');
+
+ {section name=class loop=$info[p].classes}
+ {if $info[p].classes[class].is_class}
+ var classe = new WebFXTreeItem('{$info[p].classes[class].title|escape:"quotes"}', '{$info[p].classes[class].link|escape:"quotes"}');
+ subpackagetree_classe.add(classe);
+ {/if}
+ {/section}
+
+ subpackagetree.add(subpackagetree_classe);
+ {/if}
+ {/if}
+
+ {if $info[p].functions}
+ var subpackagetree_function = new WebFXTreeItem('Function(s)', '{$packagedoc|escape:"quotes"}');
+
+ {section name=nonclass loop=$info[p].functions}
+ var fic = new WebFXTreeItem('{$info[p].functions[nonclass].title|escape:"quotes"}', '{$info[p].functions[nonclass].link|escape:"quotes"}');
+ subpackagetree_function.add(fic);
+ {/section}
+
+ subpackagetree.add(subpackagetree_function);
+ {/if}
+
+ {if $info[p].files}
+ var subpackagetree_file = new WebFXTreeItem('File(s)', '{$packagedoc|escape:"quotes"}');
+
+ {section name=nonclass loop=$info[p].files}
+ var file = new WebFXTreeItem('{$info[p].files[nonclass].title|escape:"quotes"}', '{$info[p].files[nonclass].link|escape:"quotes"}');
+ subpackagetree_file.add(file);
+ {/section}
+
+ subpackagetree.add(subpackagetree_file);
+ {/if}
+
+ tree.add(subpackagetree);
+ {/if}
+{/section}
+
+document.write(tree);
+{rdelim}
+</script>
+</div>
+<p class="notes">
+ Generated by
+ <a href="{$phpdocwebsite}" target="_blank">phpDocumentor <span class="field">{$phpdocversion}</span></a>
+</p>
+</body>
+</html>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/banner.css b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/banner.css
new file mode 100755
index 00000000..065e76bc
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/banner.css
@@ -0,0 +1,32 @@
+body
+{
+ background-color: #FFFFFF;
+ margin: 0px;
+ padding: 0px;
+}
+
+/* Banner (top bar) classes */
+
+.banner { }
+
+.banner-menu
+{
+ clear: both;
+ padding: .5em;
+ border-top: 2px solid #999999;
+}
+
+.banner-title
+{
+ text-align: right;
+ font-size: 20pt;
+ font-weight: bold;
+ margin: .2em;
+}
+
+.package-selector
+{
+ background-color: #EEEEEE;
+ border: 1px solid black;
+ color: #0000C0;
+}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/I.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/I.png
new file mode 100755
index 00000000..e8512fb9
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/I.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/L.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/L.png
new file mode 100755
index 00000000..eb334eda
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/L.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/Lminus.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/Lminus.png
new file mode 100755
index 00000000..f7c43c0a
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/Lminus.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/Lplus.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/Lplus.png
new file mode 100755
index 00000000..848ec2fc
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/Lplus.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/T.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/T.png
new file mode 100755
index 00000000..30173254
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/T.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/Tminus.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/Tminus.png
new file mode 100755
index 00000000..2260e424
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/Tminus.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/Tplus.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/Tplus.png
new file mode 100755
index 00000000..2c8d8f4f
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/Tplus.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/blank.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/blank.png
new file mode 100755
index 00000000..cee9cd37
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/blank.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/empty.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/empty.png
new file mode 100755
index 00000000..d5683865
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/empty.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/minus.gif b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/minus.gif
new file mode 100644
index 00000000..f502662b
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/minus.gif
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/plus.gif b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/plus.gif
new file mode 100644
index 00000000..eeca02ce
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/images/plus.gif
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/lib/classTree.js b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/lib/classTree.js
new file mode 100755
index 00000000..ebb3fb4a
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/lib/classTree.js
@@ -0,0 +1,454 @@
+/*----------------------------------------\
+| Cross Browser Tree Widget 1.1 |
+|-----------------------------------------|
+| Created by Emil A. Eklund (eae@eae.net) |
+| For WebFX (http://webfx.eae.net/) |
+|-----------------------------------------|
+| This script is provided as is without |
+| any warranty whatsoever. It may be used |
+| free of charge for non commerical sites |
+| For commerical use contact the author |
+| of this script for further details. |
+|-----------------------------------------|
+| Created 2000-12-11 | Updated 2001-09-06 |
+\----------------------------------------*/
+
+var webFXTreeConfig = {
+ rootIcon : 'media/images/empty.png',
+ openRootIcon : 'media/images/empty.png',
+ folderIcon : 'media/images/empty.png',
+ openFolderIcon : 'media/images/empty.png',
+ fileIcon : 'media/images/empty.png',
+ iIcon : 'media/images/I.png',
+ lIcon : 'media/images/L.png',
+ lMinusIcon : 'media/images/Lminus.png',
+ lPlusIcon : 'media/images/Lplus.png',
+ tIcon : 'media/images/T.png',
+ tMinusIcon : 'media/images/Tminus.png',
+ tPlusIcon : 'media/images/Tplus.png',
+ blankIcon : 'media/images/blank.png',
+ defaultText : 'Tree Item',
+ defaultAction : 'javascript:void(0);',
+ defaultTarget : 'right',
+ defaultBehavior : 'classic'
+};
+
+var webFXTreeHandler = {
+ idCounter : 0,
+ idPrefix : "webfx-tree-object-",
+ all : {},
+ behavior : null,
+ selected : null,
+ getId : function() { return this.idPrefix + this.idCounter++; },
+ toggle : function (oItem) { this.all[oItem.id.replace('-plus','')].toggle(); },
+ select : function (oItem) { this.all[oItem.id.replace('-icon','')].select(); },
+ focus : function (oItem) { this.all[oItem.id.replace('-anchor','')].focus(); },
+ blur : function (oItem) { this.all[oItem.id.replace('-anchor','')].blur(); },
+ keydown : function (oItem) { return this.all[oItem.id].keydown(window.event.keyCode); },
+ cookies : new WebFXCookie()
+};
+
+/*
+ * WebFXCookie class
+ */
+
+function WebFXCookie() {
+ if (document.cookie.length) { this.cookies = ' ' + document.cookie; }
+}
+
+WebFXCookie.prototype.setCookie = function (key, value) {
+ document.cookie = key + "=" + escape(value);
+}
+
+WebFXCookie.prototype.getCookie = function (key) {
+ if (this.cookies) {
+ var start = this.cookies.indexOf(' ' + key + '=');
+ if (start == -1) { return null; }
+ var end = this.cookies.indexOf(";", start);
+ if (end == -1) { end = this.cookies.length; }
+ end -= start;
+ var cookie = this.cookies.substr(start,end);
+ return unescape(cookie.substr(cookie.indexOf('=') + 1, cookie.length - cookie.indexOf('=') + 1));
+ }
+ else { return null; }
+}
+
+/*
+ * WebFXTreeAbstractNode class
+ */
+
+function WebFXTreeAbstractNode(sText, sAction, sTarget) {
+ this.childNodes = [];
+ this.id = webFXTreeHandler.getId();
+ this.text = sText || webFXTreeConfig.defaultText;
+ this.action = sAction || webFXTreeConfig.defaultAction;
+ this.targetWindow = sTarget || webFXTreeConfig.defaultTarget;
+ this._last = false;
+ webFXTreeHandler.all[this.id] = this;
+}
+
+WebFXTreeAbstractNode.prototype.add = function (node) {
+ node.parentNode = this;
+ this.childNodes[this.childNodes.length] = node;
+ var root = this;
+ if (this.childNodes.length >=2) {
+ this.childNodes[this.childNodes.length -2]._last = false;
+ }
+ while (root.parentNode) { root = root.parentNode; }
+ if (root.rendered) {
+ if (this.childNodes.length >= 2) {
+ document.getElementById(this.childNodes[this.childNodes.length -2].id + '-plus').src = ((this.childNodes[this.childNodes.length -2].folder)?webFXTreeConfig.tMinusIcon:webFXTreeConfig.tIcon);
+ if (this.childNodes[this.childNodes.length -2].folder) {
+ this.childNodes[this.childNodes.length -2].plusIcon = webFXTreeConfig.tPlusIcon;
+ this.childNodes[this.childNodes.length -2].minusIcon = webFXTreeConfig.tMinusIcon;
+ }
+ this.childNodes[this.childNodes.length -2]._last = false;
+ }
+ this._last = true;
+ var foo = this;
+ while (foo.parentNode) {
+ for (var i = 0; i < foo.parentNode.childNodes.length; i++) {
+ if (foo.id == foo.parentNode.childNodes[i].id) { break; }
+ }
+ if (++i == foo.parentNode.childNodes.length) { foo.parentNode._last = true; }
+ else { foo.parentNode._last = false; }
+ foo = foo.parentNode;
+ }
+ document.getElementById(this.id + '-cont').insertAdjacentHTML("beforeEnd", node.toString());
+ if ((!this.folder) && (!this.openIcon)) {
+ this.icon = webFXTreeConfig.folderIcon;
+ this.openIcon = webFXTreeConfig.openFolderIcon;
+ }
+ this.folder = true;
+ this.indent();
+ this.expand();
+ }
+ return node;
+}
+
+WebFXTreeAbstractNode.prototype.toggle = function() {
+ if (this.folder) {
+ if (this.open) { this.collapse(); }
+ else { this.expand(); }
+ }
+}
+
+WebFXTreeAbstractNode.prototype.select = function() {
+ document.getElementById(this.id + '-anchor').focus();
+}
+
+WebFXTreeAbstractNode.prototype.focus = function() {
+ webFXTreeHandler.selected = this;
+ if ((this.openIcon) && (webFXTreeHandler.behavior != 'classic')) { document.getElementById(this.id + '-icon').src = this.openIcon; }
+ document.getElementById(this.id + '-anchor').style.backgroundColor = 'highlight';
+ document.getElementById(this.id + '-anchor').style.color = 'highlighttext';
+ document.getElementById(this.id + '-anchor').focus();
+}
+
+WebFXTreeAbstractNode.prototype.blur = function() {
+ if ((this.openIcon) && (webFXTreeHandler.behavior != 'classic')) { document.getElementById(this.id + '-icon').src = this.icon; }
+ document.getElementById(this.id + '-anchor').style.backgroundColor = 'transparent';
+ document.getElementById(this.id + '-anchor').style.color = 'menutext';
+}
+
+WebFXTreeAbstractNode.prototype.doExpand = function() {
+ if (webFXTreeHandler.behavior == 'classic') { document.getElementById(this.id + '-icon').src = this.openIcon; }
+ if (this.childNodes.length) { document.getElementById(this.id + '-cont').style.display = 'block'; }
+ this.open = true;
+ webFXTreeHandler.cookies.setCookie(this.id.substr(18,this.id.length - 18), '1');
+}
+
+WebFXTreeAbstractNode.prototype.doCollapse = function() {
+ if (webFXTreeHandler.behavior == 'classic') { document.getElementById(this.id + '-icon').src = this.icon; }
+ if (this.childNodes.length) { document.getElementById(this.id + '-cont').style.display = 'none'; }
+ this.open = false;
+ webFXTreeHandler.cookies.setCookie(this.id.substr(18,this.id.length - 18), '0');
+}
+
+WebFXTreeAbstractNode.prototype.expandAll = function() {
+ this.expandChildren();
+ if ((this.folder) && (!this.open)) { this.expand(); }
+}
+
+WebFXTreeAbstractNode.prototype.expandChildren = function() {
+ for (var i = 0; i < this.childNodes.length; i++) {
+ this.childNodes[i].expandAll();
+} }
+
+WebFXTreeAbstractNode.prototype.collapseAll = function() {
+ if ((this.folder) && (this.open)) { this.collapse(); }
+ this.collapseChildren();
+}
+
+WebFXTreeAbstractNode.prototype.collapseChildren = function() {
+ for (var i = 0; i < this.childNodes.length; i++) {
+ this.childNodes[i].collapseAll();
+} }
+
+WebFXTreeAbstractNode.prototype.indent = function(lvl, del, last, level) {
+ /*
+ * Since we only want to modify items one level below ourself,
+ * and since the rightmost indentation position is occupied by
+ * the plus icon we set this to -2
+ */
+ if (lvl == null) { lvl = -2; }
+ var state = 0;
+ for (var i = this.childNodes.length - 1; i >= 0 ; i--) {
+ state = this.childNodes[i].indent(lvl + 1, del, last, level);
+ if (state) { return; }
+ }
+ if (del) {
+ if (level >= this._level) {
+ if (this.folder) {
+ document.getElementById(this.id + '-plus').src = (this.open)?webFXTreeConfig.lMinusIcon:webFXTreeConfig.lPlusIcon;
+ this.plusIcon = webFXTreeConfig.lPlusIcon;
+ this.minusIcon = webFXTreeConfig.lMinusIcon;
+ }
+ else { document.getElementById(this.id + '-plus').src = webFXTreeConfig.lIcon; }
+ return 1;
+ }
+ }
+ var foo = document.getElementById(this.id + '-indent-' + lvl);
+ if (foo) {
+ if ((del) && (last)) { foo._last = true; }
+ if (foo._last) { foo.src = webFXTreeConfig.blankIcon; }
+ else { foo.src = webFXTreeConfig.iIcon; }
+ }
+ return 0;
+}
+
+/*
+ * WebFXTree class
+ */
+
+function WebFXTree(sText, sAction, sBehavior, sIcon, sOpenIcon) {
+ this.base = WebFXTreeAbstractNode;
+ this.base(sText, sAction);
+ this.icon = sIcon || webFXTreeConfig.rootIcon;
+ this.openIcon = sOpenIcon || webFXTreeConfig.openRootIcon;
+ /* Defaults to open */
+ this.open = (webFXTreeHandler.cookies.getCookie(this.id.substr(18,this.id.length - 18)) == '0')?false:true;
+ this.folder = true;
+ this.rendered = false;
+ if (!webFXTreeHandler.behavior) { webFXTreeHandler.behavior = sBehavior || webFXTreeConfig.defaultBehavior; }
+ this.targetWindow = 'right';
+}
+
+WebFXTree.prototype = new WebFXTreeAbstractNode;
+
+WebFXTree.prototype.setBehavior = function (sBehavior) {
+ webFXTreeHandler.behavior = sBehavior;
+};
+
+WebFXTree.prototype.getBehavior = function (sBehavior) {
+ return webFXTreeHandler.behavior;
+};
+
+WebFXTree.prototype.getSelected = function() {
+ if (webFXTreeHandler.selected) { return webFXTreeHandler.selected; }
+ else { return null; }
+}
+
+WebFXTree.prototype.remove = function() { }
+
+WebFXTree.prototype.expand = function() {
+ this.doExpand();
+}
+
+WebFXTree.prototype.collapse = function() {
+ this.focus();
+ this.doCollapse();
+}
+
+WebFXTree.prototype.getFirst = function() {
+ return null;
+}
+
+WebFXTree.prototype.getLast = function() {
+ return null;
+}
+
+WebFXTree.prototype.getNextSibling = function() {
+ return null;
+}
+
+WebFXTree.prototype.getPreviousSibling = function() {
+ return null;
+}
+
+WebFXTree.prototype.keydown = function(key) {
+ if (key == 39) { this.expand(); return false; }
+ if (key == 37) { this.collapse(); return false; }
+ if ((key == 40) && (this.open)) { this.childNodes[0].select(); return false; }
+ return true;
+}
+
+WebFXTree.prototype.toString = function() {
+ var str = "<div id=\"" + this.id + "\" ondblclick=\"webFXTreeHandler.toggle(this);\" class=\"webfx-tree-item\" onkeydown=\"return webFXTreeHandler.keydown(this)\">";
+ str += "<img id=\"" + this.id + "-icon\" class=\"webfx-tree-icon\" src=\"" + ((webFXTreeHandler.behavior == 'classic' && this.open)?this.openIcon:this.icon) + "\" onclick=\"webFXTreeHandler.select(this);\"><a href=\"" + this.action + "\" id=\"" + this.id + "-anchor\" target=\"" + this.targetWindow + "\" onfocus=\"webFXTreeHandler.focus(this);\" onblur=\"webFXTreeHandler.blur(this);\">" + this.text + "</a></div>";
+ str += "<div id=\"" + this.id + "-cont\" class=\"webfx-tree-container\" style=\"display: " + ((this.open)?'block':'none') + ";\">";
+ for (var i = 0; i < this.childNodes.length; i++) {
+ str += this.childNodes[i].toString(i, this.childNodes.length);
+ }
+ str += "</div>";
+ this.rendered = true;
+ return str;
+};
+
+/*
+ * WebFXTreeItem class
+ */
+
+function WebFXTreeItem(sText, sAction, eParent, sIcon, sOpenIcon) {
+ this.base = WebFXTreeAbstractNode;
+ this.base(sText, sAction);
+ /* Defaults to close */
+ this.open = (webFXTreeHandler.cookies.getCookie(this.id.substr(18,this.id.length - 18)) == '1')?true:false;
+ if (eParent) { eParent.add(this); }
+ if (sIcon) { this.icon = sIcon; }
+ if (sOpenIcon) { this.openIcon = sOpenIcon; }
+}
+
+WebFXTreeItem.prototype = new WebFXTreeAbstractNode;
+
+WebFXTreeItem.prototype.remove = function() {
+ var parentNode = this.parentNode;
+ var prevSibling = this.getPreviousSibling(true);
+ var nextSibling = this.getNextSibling(true);
+ var folder = this.parentNode.folder;
+ var last = ((nextSibling) && (nextSibling.parentNode) && (nextSibling.parentNode.id == parentNode.id))?false:true;
+ this.getPreviousSibling().focus();
+ this._remove();
+ if (parentNode.childNodes.length == 0) {
+ parentNode.folder = false;
+ parentNode.open = false;
+ }
+ if (last) {
+ if (parentNode.id == prevSibling.id) {
+ document.getElementById(parentNode.id + '-icon').src = webFXTreeConfig.fileIcon;
+ }
+ else { }
+ }
+ if ((!prevSibling.parentNode) || (prevSibling.parentNode != parentNode)) {
+ parentNode.indent(null, true, last, this._level);
+ }
+ if (document.getElementById(prevSibling.id + '-plus')) {
+ if (nextSibling) {
+ if ((parentNode == prevSibling) && (parentNode.getNextSibling)) { document.getElementById(prevSibling.id + '-plus').src = webFXTreeConfig.tIcon; }
+ else if (nextSibling.parentNode != prevSibling) { document.getElementById(prevSibling.id + '-plus').src = webFXTreeConfig.lIcon; }
+ }
+ else { document.getElementById(prevSibling.id + '-plus').src = webFXTreeConfig.lIcon; }
+ }
+}
+
+WebFXTreeItem.prototype._remove = function() {
+ for (var i = this.childNodes.length - 1; i >= 0; i--) {
+ this.childNodes[i]._remove();
+ }
+ for (var i = 0; i < this.parentNode.childNodes.length; i++) {
+ if (this.id == this.parentNode.childNodes[i].id) {
+ for (var j = i; j < this.parentNode.childNodes.length; j++) {
+ this.parentNode.childNodes[i] = this.parentNode.childNodes[i+1]
+ }
+ this.parentNode.childNodes.length = this.parentNode.childNodes.length - 1;
+ if (i + 1 == this.parentNode.childNodes.length) { this.parentNode._last = true; }
+ }
+ }
+ webFXTreeHandler.all[this.id] = null;
+ if (document.getElementById(this.id)) {
+ document.getElementById(this.id).innerHTML = "";
+ document.getElementById(this.id).removeNode();
+ }
+}
+
+WebFXTreeItem.prototype.expand = function() {
+ this.doExpand();
+ document.getElementById(this.id + '-plus').src = this.minusIcon;
+}
+
+WebFXTreeItem.prototype.collapse = function() {
+ this.focus();
+ this.doCollapse();
+ document.getElementById(this.id + '-plus').src = this.plusIcon;
+}
+
+WebFXTreeItem.prototype.getFirst = function() {
+ return this.childNodes[0];
+}
+
+WebFXTreeItem.prototype.getLast = function() {
+ if (this.childNodes[this.childNodes.length - 1].open) { return this.childNodes[this.childNodes.length - 1].getLast(); }
+ else { return this.childNodes[this.childNodes.length - 1]; }
+}
+
+WebFXTreeItem.prototype.getNextSibling = function() {
+ for (var i = 0; i < this.parentNode.childNodes.length; i++) {
+ if (this == this.parentNode.childNodes[i]) { break; }
+ }
+ if (++i == this.parentNode.childNodes.length) { return this.parentNode.getNextSibling(); }
+ else { return this.parentNode.childNodes[i]; }
+}
+
+WebFXTreeItem.prototype.getPreviousSibling = function(b) {
+ for (var i = 0; i < this.parentNode.childNodes.length; i++) {
+ if (this == this.parentNode.childNodes[i]) { break; }
+ }
+ if (i == 0) { return this.parentNode; }
+ else {
+ if ((this.parentNode.childNodes[--i].open) || (b && this.parentNode.childNodes[i].folder)) { return this.parentNode.childNodes[i].getLast(); }
+ else { return this.parentNode.childNodes[i]; }
+} }
+
+WebFXTreeItem.prototype.keydown = function(key) {
+ if ((key == 39) && (this.folder)) {
+ if (!this.open) { this.expand(); return false; }
+ else { this.getFirst().select(); return false; }
+ }
+ else if (key == 37) {
+ if (this.open) { this.collapse(); return false; }
+ else { this.parentNode.select(); return false; }
+ }
+ else if (key == 40) {
+ if (this.open) { this.getFirst().select(); return false; }
+ else {
+ var sib = this.getNextSibling();
+ if (sib) { sib.select(); return false; }
+ } }
+ else if (key == 38) { this.getPreviousSibling().select(); return false; }
+ return true;
+}
+
+WebFXTreeItem.prototype.toString = function (nItem, nItemCount) {
+ var foo = this.parentNode;
+ var indent = '';
+ if (nItem + 1 == nItemCount) { this.parentNode._last = true; }
+ var i = 0;
+ while (foo.parentNode) {
+ foo = foo.parentNode;
+ indent = "<img id=\"" + this.id + "-indent-" + i + "\" src=\"" + ((foo._last)?webFXTreeConfig.blankIcon:webFXTreeConfig.iIcon) + "\">" + indent;
+ i++;
+ }
+ this._level = i;
+ if (this.childNodes.length) { this.folder = 1; }
+ else { this.open = false; }
+ if ((this.folder) || (webFXTreeHandler.behavior != 'classic')) {
+ if (!this.icon) { this.icon = webFXTreeConfig.folderIcon; }
+ if (!this.openIcon) { this.openIcon = webFXTreeConfig.openFolderIcon; }
+ }
+ else if (!this.icon) { this.icon = webFXTreeConfig.fileIcon; }
+ var label = this.text;
+ label = label.replace('<', '<');
+ label = label.replace('>', '>');
+ var str = "<div id=\"" + this.id + "\" ondblclick=\"webFXTreeHandler.toggle(this);\" class=\"webfx-tree-item\" onkeydown=\"return webFXTreeHandler.keydown(this)\">";
+ str += indent;
+ str += "<img id=\"" + this.id + "-plus\" src=\"" + ((this.folder)?((this.open)?((this.parentNode._last)?webFXTreeConfig.lMinusIcon:webFXTreeConfig.tMinusIcon):((this.parentNode._last)?webFXTreeConfig.lPlusIcon:webFXTreeConfig.tPlusIcon)):((this.parentNode._last)?webFXTreeConfig.lIcon:webFXTreeConfig.tIcon)) + "\" onclick=\"webFXTreeHandler.toggle(this);\">"
+ str += "<img id=\"" + this.id + "-icon\" src=\"" + ((webFXTreeHandler.behavior == 'classic' && this.open)?this.openIcon:this.icon) + "\" onclick=\"webFXTreeHandler.select(this);\"><a href=\"" + this.action + "\" id=\"" + this.id + "-anchor\" target=\"" + this.targetWindow + "\" onfocus=\"webFXTreeHandler.focus(this);\" onblur=\"webFXTreeHandler.blur(this);\">" + label + "</a></div>";
+ str += "<div id=\"" + this.id + "-cont\" class=\"webfx-tree-container\" style=\"display: " + ((this.open)?'block':'none') + ";\">";
+ for (var i = 0; i < this.childNodes.length; i++) {
+ str += this.childNodes[i].toString(i,this.childNodes.length);
+ }
+ str += "</div>";
+ this.plusIcon = ((this.parentNode._last)?webFXTreeConfig.lPlusIcon:webFXTreeConfig.tPlusIcon);
+ this.minusIcon = ((this.parentNode._last)?webFXTreeConfig.lMinusIcon:webFXTreeConfig.tMinusIcon);
+ return str;
+} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/stylesheet.css b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/stylesheet.css
new file mode 100755
index 00000000..ccedc6a4
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/media/stylesheet.css
@@ -0,0 +1,184 @@
+a { color: #0000C0; text-decoration: underline; }
+a:hover { text-decoration: underline; background-color: #FFFFFF }
+a:active { text-decoration: underline; background-color: #FFFFFF }
+
+body, table { background-color: #EEEEEE; font-family: Verdana, Arial, sans-serif; font-size: 10pt }
+p, li { line-height: 140% }
+a img { border: 0px; }
+dd { margin-left: 0px; padding-left: 1em; }
+
+/* Page layout/boxes */
+
+.info-box {}
+.info-box-title { margin: 1em 0em 0em 0em; padding: .25em; font-weight: normal; font-size: 14pt; border: 2px solid #999999; background-color: #FFFFFF }
+.info-box-body { border: 1px solid #999999; padding: .5em; }
+.nav-bar { font-size: 8pt; white-space: nowrap; text-align: right; padding: .2em; margin: 0em 0em 1em 0em; }
+
+.oddrow { background-color: #F8F8F8; border: 1px solid #AAAAAA; padding: .5em; margin-bottom: 1em}
+.evenrow { border: 1px solid #AAAAAA; padding: .5em; margin-bottom: 1em}
+
+.page-body { max-width: 800px; margin: auto; }
+.tree { }
+
+/* Index formatting classes */
+
+.index-item-body { margin-top: .5em; margin-bottom: .5em}
+.index-item-description { margin-top: .25em }
+.index-item-details { font-weight: normal; font-style: italic; font-size: 8pt }
+.index-letter-section { background-color: #EEEEEE; border: 1px dotted #999999; padding: .5em; margin-bottom: 1em}
+.index-letter-title { font-size: 12pt; font-weight: bold }
+.index-letter-menu { text-align: center; margin: 1em }
+.index-letter { font-size: 12pt }
+
+/* Docbook classes */
+
+.description {}
+.short-description { font-weight: bold; color: #666666; }
+.tags { padding-left: 0em; margin-left: 3em; color: #666666; list-style-type: square; }
+.parameters { padding-left: 0em; margin-left: 3em; font-style: italic; list-style-type: square; }
+.redefinitions { font-size: 8pt; padding-left: 0em; margin-left: 2em; }
+.package { }
+.package-title { font-weight: bold; font-size: 14pt; border-bottom: 1px solid black }
+.package-details { font-size: 85%; }
+.sub-package { font-weight: bold; font-size: 120% }
+.tutorial { border-width: thin; border-color: #0066ff }
+.tutorial-nav-box { width: 100%; border: 1px solid #AAAAAA; background-color: #DDDDFF; }
+.nav-button-disabled { color: #AAAAAA; }
+.nav-button:active,
+.nav-button:focus,
+.nav-button:hover { background-color: #CCCCCC; outline: 1px solid #999999; text-decoration: none }
+.folder-title { font-style: italic }
+
+/* Generic formatting */
+
+.field { font-weight: bold; }
+.detail { font-size: 8pt; }
+.notes { font-style: italic; font-size: 8pt; }
+.separator { background-color: #999999; height: 2px; }
+.warning { color: #FF6600; }
+.disabled { font-style: italic; color: #999999; }
+
+/* Code elements */
+
+.line-number { }
+
+.class-table { width: 100%; }
+.class-table-header { border-bottom: 1px dotted #666666; text-align: left; background-color: DDDDFF }
+.class-name { color: #000000; font-weight: bold; }
+
+.method-summary { padding-left: 1em; font-size: 8pt }
+.method-header { background-color: #DDDDFF; padding: 1px; }
+.method-definition { margin-bottom: .3em }
+.method-title { font-weight: bold }
+.method-name { font-weight: bold; }
+.method-signature { font-size: 85%; color: #666666; margin: .5em 0em }
+.method-result { font-style: italic; }
+
+.var-summary { padding-left: 1em; font-size: 8pt; }
+.var-header { background-color: #DDDDFF; padding: 1px; }
+.var-title { margin-bottom: .3em }
+.var-type { font-style: italic; }
+.var-name { font-weight: bold; }
+.var-default {}
+.var-description { font-weight: normal; color: #000000; }
+
+.include-title { }
+.include-type { font-style: italic; }
+.include-name { font-weight: bold; }
+
+.const-title { }
+.const-name { font-weight: bold; }
+
+/* Syntax highlighting */
+
+.src-code { border: 1px solid #999999; padding: 1em;
+ font-family: 'Courier New', Courier, monospace; font-weight: normal; }
+.src-line { font-family: 'Courier New', Courier, monospace; font-weight: normal; }
+
+.src-comm { color: green; }
+.src-id { }
+.src-inc { color: #0000FF; }
+.src-key { color: #0000FF; }
+.src-num { color: #CC0000; }
+.src-str { color: #66cccc; }
+.src-sym { font-weight: bold; }
+.src-var { }
+
+.src-php { font-weight: bold; }
+
+.src-doc { color: #009999 }
+.src-doc-close-template { color: #0000FF }
+.src-doc-coretag { color: #0099FF; font-weight: bold }
+.src-doc-inlinetag { color: #0099FF }
+.src-doc-internal { color: #6699cc }
+.src-doc-tag { color: #0080CC }
+.src-doc-template { color: #0000FF }
+.src-doc-type { font-style: italic }
+.src-doc-var { font-style: italic }
+
+.tute-tag { color: #009999 }
+.tute-attribute-name { color: #0000FF }
+.tute-attribute-value { color: #0099FF }
+.tute-entity { font-weight: bold; }
+.tute-comment { font-style: italic }
+.tute-inline-tag { color: #636311; font-weight: bold }
+
+/* tutorial */
+
+.authors { }
+.author { font-style: italic; font-weight: bold }
+.author-blurb { margin: .5em 0em .5em 2em; font-size: 85%; font-weight: normal; font-style: normal }
+.example { border: 1px dashed #999999; background-color: #EEEEEE; padding: .5em; }
+.listing { border: 1px dashed #999999; background-color: #EEEEEE; padding: .5em; white-space: nowrap; }
+.release-info { font-size: 85%; font-style: italic; margin: 1em 0em }
+.ref-title-box { }
+.ref-title { }
+.ref-purpose { font-style: italic; color: #666666 }
+.ref-synopsis { }
+.title { font-weight: bold; border: 2px solid #999999; background-color: #FFFFFF; padding: 2px }
+.cmd-synopsis { margin: 1em 0em }
+.cmd-title { font-weight: bold }
+.toc { margin-left: 2em; padding-left: 0em }
+
+/*------------------------------------------------------------------------------
+ webfx-tree
+------------------------------------------------------------------------------*/
+
+.webfx-tree-container {
+ margin: 0px;
+ padding: 0px;
+ white-space: nowrap;
+ font: icon;
+}
+
+.webfx-tree-item {
+ padding: 0px;
+ margin: 0px;
+ color: black;
+ white-space: nowrap;
+ font: icon;
+}
+
+.webfx-tree-item a {
+ margin-left: 3px;
+ padding: 1px 2px 1px 2px;
+ color: black;
+ text-decoration: none;
+}
+
+.webfx-tree-item a:hover, .webfx-tree-item a:active {
+ color: #666666;
+ background: white;
+ text-decoration: none
+}
+
+.webfx-tree-item img {
+ vertical-align: middle;
+ border: 0px;
+}
+
+.webfx-tree-icon {
+ width: 16px;
+ height: 16px;
+}
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/method.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/method.tpl
new file mode 100755
index 00000000..06d57a12
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/method.tpl
@@ -0,0 +1,149 @@
+<A NAME='method_detail'></A>
+{section name=methods loop=$methods}
+{if $methods[methods].static}
+<a name="method{$methods[methods].function_name}" id="{$methods[methods].function_name}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="method-header">
+ <span class="method-title">static {$methods[methods].function_name}</span> (line <span class="line-number">{if $methods[methods].slink}{$methods[methods].slink}{else}{$methods[methods].line_number}{/if}</span>)
+ </div>
+
+ {include file="docblock.tpl" sdesc=$methods[methods].sdesc desc=$methods[methods].desc tags=$methods[methods].tags params=$methods[methods].params function=false}
+
+ <div class="method-signature">
+ static <span class="method-result">{$methods[methods].function_return}</span>
+ <span class="method-name">
+ {if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}
+ </span>
+ {if count($methods[methods].ifunction_call.params)}
+ ({section name=params loop=$methods[methods].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$methods[methods].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$methods[methods].ifunction_call.params[params].name}</span>{if $methods[methods].ifunction_call.params[params].hasdefault} = <span class="var-default">{$methods[methods].ifunction_call.params[params].default}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+
+ {if $methods[methods].params}
+ <ul class="parameters">
+ {section name=params loop=$methods[methods].params}
+ <li>
+ <span class="var-type">{$methods[methods].params[params].datatype}</span>
+ <span class="var-name">{$methods[methods].params[params].var}</span>{if $methods[methods].params[params].data}<span class="var-description">: {$methods[methods].params[params].data}</span>{/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+ {if $methods[methods].method_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$methods[methods].method_overrides.link}</dt>
+ {if $methods[methods].method_overrides.sdesc}
+ <dd>{$methods[methods].method_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+ {if $methods[methods].method_implements}
+ <hr class="separator" />
+ <div class="notes">Implementation of:</div>
+ {section name=imp loop=$methods[methods].method_implements}
+ <dl>
+ <dt>{$methods[methods].method_implements[imp].link}</dt>
+ {if $methods[methods].method_implements[imp].sdesc}
+ <dd>{$methods[methods].method_implements[imp].sdesc}</dd>
+ {/if}
+ </dl>
+ {/section}
+ {/if}
+
+ {if $methods[methods].descmethod}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=dm loop=$methods[methods].descmethod}
+ <li>
+ {$methods[methods].descmethod[dm].link}
+ {if $methods[methods].descmethod[dm].sdesc}
+ : {$methods[methods].descmethod[dm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+</div>
+{/if}
+{/section}
+{section name=methods loop=$methods}
+{if !$methods[methods].static}
+<a name="method{$methods[methods].function_name}" id="{$methods[methods].function_name}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="method-header">
+ <span class="method-title">{if $methods[methods].ifunction_call.constructor}Constructor {elseif $methods[methods].ifunction_call.destructor}Destructor {/if}{$methods[methods].function_name}</span> (line <span class="line-number">{if $methods[methods].slink}{$methods[methods].slink}{else}{$methods[methods].line_number}{/if}</span>)
+ </div>
+
+ {include file="docblock.tpl" sdesc=$methods[methods].sdesc desc=$methods[methods].desc tags=$methods[methods].tags params=$methods[methods].params function=false}
+
+ <div class="method-signature">
+ <span class="method-result">{$methods[methods].function_return}</span>
+ <span class="method-name">
+ {if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}
+ </span>
+ {if count($methods[methods].ifunction_call.params)}
+ ({section name=params loop=$methods[methods].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$methods[methods].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$methods[methods].ifunction_call.params[params].name}</span>{if $methods[methods].ifunction_call.params[params].hasdefault} = <span class="var-default">{$methods[methods].ifunction_call.params[params].default}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+
+ {if $methods[methods].params}
+ <ul class="parameters">
+ {section name=params loop=$methods[methods].params}
+ <li>
+ <span class="var-type">{$methods[methods].params[params].datatype}</span>
+ <span class="var-name">{$methods[methods].params[params].var}</span>{if $methods[methods].params[params].data}<span class="var-description">: {$methods[methods].params[params].data}</span>{/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+ {if $methods[methods].method_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$methods[methods].method_overrides.link}</dt>
+ {if $methods[methods].method_overrides.sdesc}
+ <dd>{$methods[methods].method_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+ {if $methods[methods].method_implements}
+ <hr class="separator" />
+ <div class="notes">Implementation of:</div>
+ {section name=imp loop=$methods[methods].method_implements}
+ <dl>
+ <dt>{$methods[methods].method_implements[imp].link}</dt>
+ {if $methods[methods].method_implements[imp].sdesc}
+ <dd>{$methods[methods].method_implements[imp].sdesc}</dd>
+ {/if}
+ </dl>
+ {/section}
+ {/if}
+
+ {if $methods[methods].descmethod}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=dm loop=$methods[methods].descmethod}
+ <li>
+ {$methods[methods].descmethod[dm].link}
+ {if $methods[methods].descmethod[dm].sdesc}
+ : {$methods[methods].descmethod[dm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+</div>
+{/if}
+{/section}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/page.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/page.tpl
new file mode 100755
index 00000000..b5980236
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/page.tpl
@@ -0,0 +1,211 @@
+{include file="header.tpl" top3=true}
+
+<h2 class="file-name">{$source_location}</h2>
+
+<a name="sec-description"></a>
+<div class="info-box">
+ <div class="info-box-title">Description</div>
+ <div class="nav-bar">
+ {if $classes || $includes || $defines || $globals || $functions}
+ <span class="disabled">Description</span> |
+ {/if}
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="docblock.tpl" desc=$desc sdesc=$sdesc tags=$tags}
+
+ {if $tutorial}
+ <hr class="separator" />
+ <div class="notes">Tutorial: <span class="tutorial">{$tutorial}</div>
+ {/if}
+ </div>
+</div>
+
+{if $classes}
+ <a name="sec-classes"></a>
+ <div class="info-box">
+ <div class="info-box-title">Classes</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ <span class="disabled">Classes</span>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <table cellpadding="2" cellspacing="0" class="class-table">
+ <tr>
+ <th class="class-table-header">Class</th>
+ <th class="class-table-header">Description</th>
+ </tr>
+ {section name=classes loop=$classes}
+ <tr>
+ <td style="padding-right: 2em; vertical-align: top">
+ {$classes[classes].link}
+ </td>
+ <td>
+ {if $classes[classes].sdesc}
+ {$classes[classes].sdesc}
+ {else}
+ {$classes[classes].desc}
+ {/if}
+ </td>
+ </tr>
+ {/section}
+ </table>
+ </div>
+ </div>
+{/if}
+
+{if $includes}
+ <a name="sec-includes"></a>
+ <div class="info-box">
+ <div class="info-box-title">Includes</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ <span class="disabled">Includes</span>
+ {if $defines || $globals || $functions}|{/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="include.tpl"}
+ </div>
+ </div>
+{/if}
+
+{if $defines}
+ <a name="sec-constants"></a>
+ <div class="info-box">
+ <div class="info-box-title">Constants</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ <span class="disabled">Constants</span>
+ {if $globals || $functions}|{/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="define.tpl"}
+ </div>
+ </div>
+{/if}
+
+{if $globals}
+ <a name="sec-variables"></a>
+ <div class="info-box">
+ <div class="info-box-title">Variables</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ <span class="disabled">Variables</span>
+ {if $functions}|{/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="global.tpl"}
+ </div>
+ </div>
+{/if}
+
+{if $functions}
+ <a name="sec-functions"></a>
+ <div class="info-box">
+ <div class="info-box-title">Functions</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ <span class="disabled">Functions</span>
+ </div>
+ <div class="info-box-body">
+ {include file="function.tpl"}
+ </div>
+ </div>
+{/if}
+
+{include file="footer.tpl" top3=true}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/pkgelementindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/pkgelementindex.tpl
new file mode 100755
index 00000000..dc283ad0
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/pkgelementindex.tpl
@@ -0,0 +1,17 @@
+{include file="header.tpl"}
+<a name="top"></a>
+<h2>[{$package}] element index</h2>
+{if count($packageindex) > 1}
+ <h3>Package indexes</h3>
+ <ul>
+ {section name=p loop=$packageindex}
+ {if $packageindex[p].title != $package}
+ <li><a href="elementindex_{$packageindex[p].title}.html">{$packageindex[p].title}</a></li>
+ {/if}
+ {/section}
+ </ul>
+{/if}
+<a href="elementindex.html">All elements</a>
+<br />
+{include file="basicindex.tpl" indexname=elementindex_$package}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/ric.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/ric.tpl
new file mode 100755
index 00000000..ad792475
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/ric.tpl
@@ -0,0 +1,6 @@
+{include file="header.tpl"}
+<div align="center"><h1>{$name}</h1></div>
+<pre>
+{$contents|htmlentities}
+</pre>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/todolist.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/todolist.tpl
new file mode 100755
index 00000000..f929ccdb
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/todolist.tpl
@@ -0,0 +1,14 @@
+{include file="header.tpl" title="Todo List"}
+<div align="center"><h1>Todo List</h1></div>
+{foreach from=$todos key=todopackage item=todo}
+<h2>{$todopackage}</h2>
+{section name=todo loop=$todo}
+<h3>{$todo[todo].link}</h3>
+<ul>
+{section name=t loop=$todo[todo].todos}
+ <li>{$todo[todo].todos[t]}</li>
+{/section}
+</ul>
+{/section}
+{/foreach}
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/top_frame.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/top_frame.tpl
new file mode 100755
index 00000000..36d1e5a1
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/top_frame.tpl
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+ <html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <!-- template designed by Marco Von Ballmoos -->
+ <title>{$title}</title>
+ <link rel="stylesheet" href="{$subdir}media/stylesheet.css" />
+ <link rel="stylesheet" href="{$subdir}media/banner.css" />
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+ </head>
+ <body>
+ <div class="banner">
+ <div class="banner-title">{$package}</div>
+ <div class="banner-menu">
+ <form>
+ <table cellpadding="0" cellspacing="0" style="width: 100%">
+ <tr>
+ <td>
+ {if count($ric) >= 1}
+ {assign var="last_ric_name" value=""}
+ {section name=ric loop=$ric}
+ {if $last_ric_name != ""} | {/if}
+ <a href="{$ric[ric].file}" target="right">{$ric[ric].name}</a>
+ {assign var="last_ric_name" value=$ric[ric].name}
+ {/section}
+ {/if}
+ </td>
+ <td style="width: 2em">&nbsp;</td>
+ <td style="text-align: right">
+ {if count($packages) > 1}
+ <span class="field">Packages</span>
+ <select class="package-selector" onchange="window.parent.left_bottom.location=this[selectedIndex].value">
+ {section name=p loop=$packages}
+ <option value="{$packages[p].link}">{$packages[p].title}</option>
+ {/section}
+ </select>
+ {/if}
+ </td>
+ </tr>
+ </table>
+ </form>
+ </div>
+ </div>
+ </body>
+ </html>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/tutorial.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/tutorial.tpl
new file mode 100755
index 00000000..3b9109d1
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/tutorial.tpl
@@ -0,0 +1,13 @@
+{include file="header.tpl" title=$title top3=true}
+
+{if $nav}
+ {include file="tutorial_nav.tpl" prev=$prev next=$next up=$up prevtitle=$prevtitle nexttitle=$nexttitle uptitle=$uptitle}
+{/if}
+
+{$contents}
+
+{if $nav}
+ {include file="tutorial_nav.tpl" prev=$prev next=$next up=$up prevtitle=$prevtitle nexttitle=$nexttitle uptitle=$uptitle}
+{/if}
+
+{include file="footer.tpl" top3=true} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/tutorial_nav.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/tutorial_nav.tpl
new file mode 100755
index 00000000..89952301
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/tutorial_nav.tpl
@@ -0,0 +1,41 @@
+<table class="tutorial-nav-box">
+ <tr>
+ <td style="width: 30%">
+ {if $prev}
+ <a href="{$prev}" class="nav-button">Previous</a>
+ {else}
+ <span class="nav-button-disabled">Previous</span>
+ {/if}
+ </td>
+ <td style="text-align: center">
+ {if $up}
+ <a href="{$up}" class="nav-button">Up</a>
+ {/if}
+ </td>
+ <td style="text-align: right; width: 30%">
+ {if $next}
+ <a href="{$next}" class="nav-button">Next</a>
+ {else}
+ <span class="nav-button-disabled">Next</span>
+ {/if}
+ </td>
+ </tr>
+ <tr>
+ <td style="width: 30%">
+ {if $prevtitle}
+ <span class="detail">{$prevtitle}</span>
+ {/if}
+ </td>
+ <td style="text-align: center">
+ {if $uptitle}
+ <span class="detail">{$uptitle}</span>
+ {/if}
+ </td>
+ <td style="text-align: right; width: 30%">
+ {if $nexttitle}
+ <span class="detail">{$nexttitle}</span>
+ {/if}
+ </td>
+ </tr>
+</table>
+ \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/tutorial_toc.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/tutorial_toc.tpl
new file mode 100755
index 00000000..3482249b
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/tutorial_toc.tpl
@@ -0,0 +1,40 @@
+{if count($toc)}
+<h1 class="title">Table of Contents</h1>
+<ul class="toc">
+ {assign var="lastcontext" value='refsect1'}
+ {section name=toc loop=$toc}
+
+ {if $toc[toc].tagname != $lastcontext}
+ {if $lastcontext == 'refsect1'}
+ <ul class="toc">
+ <li>{$toc[toc].link}</li>
+ {else}
+ {if $lastcontext == 'refsect2'}
+ {if $toc[toc].tagname == 'refsect1'}
+ </ul>
+ <li>{$toc[toc].link}</li>
+ {/if}
+ {if $toc[toc].tagname == 'refsect3'}
+ <ul class="toc">
+ <li>{$toc[toc].link}</li>
+ {/if}
+ {else}
+ </ul>
+ </ul>
+ <li>{$toc[toc].link}</li>
+ {/if}
+ {/if}
+ {assign var="lastcontext" value=$toc[toc].tagname}
+ {else}
+ <li>{$toc[toc].link}</li>
+ {/if}
+ {/section}
+ {if $lastcontext == 'refsect2'}
+ </ul>
+ {/if}
+ {if $lastcontext == 'refsect3'}
+ </ul>
+ </ul>
+ {/if}
+</ul>
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/tutorial_tree.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/tutorial_tree.tpl
new file mode 100755
index 00000000..40d9a4ff
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/tutorial_tree.tpl
@@ -0,0 +1,8 @@
+ var a{$name|replace:"-":"_"}node = new WebFXTreeItem('{$main.title|strip_tags|escape:"quotes"}','{$main.link}', parent_node);
+
+{if $haskids}
+ var a{$name|replace:"-":"_"}_old_parent_node = parent_node;
+ parent_node = a{$name|replace:"-":"_"}node;
+ {$kids}
+ parent_node = a{$name|replace:"-":"_"}_old_parent_node;
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/var.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/var.tpl
new file mode 100755
index 00000000..fccf6892
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phpdoc.de/templates/var.tpl
@@ -0,0 +1,92 @@
+{section name=vars loop=$vars}
+{if $vars[vars].static}
+<a name="var{$vars[vars].var_name}" id="{$vars[vars].var_name}"><!-- --></A>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="var-header">
+ <span class="var-title">
+ static <span class="var-type">{$vars[vars].var_type}</span>
+ <span class="var-name">{$vars[vars].var_name}</span>
+ {if $vars[vars].var_default} = <span class="var-default">{$vars[vars].var_default|replace:"\n":"<br />"}</span>{/if}
+ (line <span class="line-number">{if $vars[vars].slink}{$vars[vars].slink}{else}{$vars[vars].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$vars[vars].sdesc desc=$vars[vars].desc tags=$vars[vars].tags}
+
+ {if $vars[vars].var_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$vars[vars].var_overrides.link}</dt>
+ {if $vars[vars].var_overrides.sdesc}
+ <dd>{$vars[vars].var_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+
+ {if $vars[vars].descvar}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=vm loop=$vars[vars].descvar}
+ <li>
+ {$vars[vars].descvar[vm].link}
+ {if $vars[vars].descvar[vm].sdesc}
+ : {$vars[vars].descvar[vm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+</div>
+{/if}
+{/section}
+
+{section name=vars loop=$vars}
+{if !$vars[vars].static}
+<a name="var{$vars[vars].var_name}" id="{$vars[vars].var_name}"><!-- --></A>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="var-header">
+ <span class="var-title">
+ <span class="var-type">{$vars[vars].var_type}</span>
+ <span class="var-name">{$vars[vars].var_name}</span>
+ {if $vars[vars].var_default} = <span class="var-default">{$vars[vars].var_default|replace:"\n":"<br />"}</span>{/if}
+ (line <span class="line-number">{if $vars[vars].slink}{$vars[vars].slink}{else}{$vars[vars].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$vars[vars].sdesc desc=$vars[vars].desc tags=$vars[vars].tags}
+
+ {if $vars[vars].var_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$vars[vars].var_overrides.link}</dt>
+ {if $vars[vars].var_overrides.sdesc}
+ <dd>{$vars[vars].var_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+
+ {if $vars[vars].descvar}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=vm loop=$vars[vars].descvar}
+ <li>
+ {$vars[vars].descvar[vm].link}
+ {if $vars[vars].descvar[vm].sdesc}
+ : {$vars[vars].descvar[vm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+</div>
+{/if}
+{/section}
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/options.ini b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/options.ini
new file mode 100755
index 00000000..084809be
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/options.ini
@@ -0,0 +1,577 @@
+preservedocbooktags = false
+
+;; used to highlight the {@source} inline tag, @filesource tag, and @example tag
+[highlightSourceTokens]
+;; format:
+;; T_CONSTANTNAME = open
+;; /T_CONSTANTNAME = close
+
+T_INCLUDE = <span class="src-inc">
+/T_INCLUDE = </span>
+T_INCLUDE_ONCE = <span class="src-inc">
+/T_INCLUDE_ONCE = </span>
+T_REQUIRE_ONCE = <span class="src-inc">
+/T_REQUIRE_ONCE = </span>
+T_REQUIRE_ONCE = <span class="src-inc">
+/T_REQUIRE_ONCE = </span>
+
+T_CONSTANT_ENCAPSED_STRING = <span class="src-str">
+/T_CONSTANT_ENCAPSED_STRING = </span>
+T_STRING_VARNAME = <span class="src-str">
+/T_STRING_VARNAME = </span>
+
+T_STRING = <span class="src-id">
+/T_STRING = </span>
+
+T_DNUMBER = <span class="src-num">
+/T_DNUMBER = </span>
+T_LNUMBER = <span class="src-num">
+/T_LNUMBER = </span>
+
+T_VARIABLE = <span class="src-var">
+/T_VARIABLE = </span>
+
+T_COMMENT = <span class="src-comm">
+/T_COMMENT = </span>
+T_ML_COMMENT = <span class="src-comm">
+/T_ML_COMMENT = </span>
+
+T_OBJECT_OPERATOR = <span class="src-sym">
+/T_OBJECT_OPERATOR = </span>
+
+T_ABSTRACT = <span class="src-key">
+/T_ABSTRACT = </span>
+T_CLONE = <span class="src-key">
+/T_CLONE = </span>
+T_HALT_COMPILER = <span class="src-key">
+/T_HALT_COMPILER = </span>
+T_ARRAY = <span class="src-key">
+/T_ARRAY = </span>
+T_AS = <span class="src-key">
+/T_AS = </span>
+T_BREAK = <span class="src-key">
+/T_BREAK = </span>
+T_CLASS = <span class="src-key">
+/T_CLASS = </span>
+T_CASE = <span class="src-key">
+/T_CASE = </span>
+T_CONST = <span class="src-key">
+/T_CONST = </span>
+T_CONTINUE = <span class="src-key">
+/T_CONTINUE = </span>
+T_DECLARE = <span class="src-key">
+/T_DECLARE = </span>
+T_DEFAULT = <span class="src-key">
+/T_DEFAULT = </span>
+T_ELSE = <span class="src-key">
+/T_ELSE = </span>
+T_ELSEIF = <span class="src-key">
+/T_ELSEIF = </span>
+T_EMPTY = <span class="src-key">
+/T_EMPTY = </span>
+T_ENDDECLARE = <span class="src-key">
+/T_ENDDECLARE = </span>
+T_ENDFOR = <span class="src-key">
+/T_ENDFOR = </span>
+T_ENDSWITCH = <span class="src-key">
+/T_ENDSWITCH = </span>
+T_ENDFOREACH = <span class="src-key">
+/T_ENDFOREACH = </span>
+T_ENDIF = <span class="src-key">
+/T_ENDIF = </span>
+T_ENDWHILE = <span class="src-key">
+/T_ENDWHILE = </span>
+T_EXIT = <span class="src-key">
+/T_EXIT = </span>
+T_EXTENDS = <span class="src-key">
+/T_EXTENDS = </span>
+T_FINAL = <span class="src-key">
+/T_FINAL = </span>
+T_FOR = <span class="src-key">
+/T_FOR = </span>
+T_FOREACH = <span class="src-key">
+/T_FOREACH = </span>
+T_FUNCTION = <span class="src-key">
+/T_FUNCTION = </span>
+T_GLOBAL = <span class="src-key">
+/T_GLOBAL = </span>
+T_IF = <span class="src-key">
+/T_IF = </span>
+T_IMPLEMENTS = <span class="src-key">
+/T_IMPLEMENTS = </span>
+T_INTERFACE = <span class="src-key">
+/T_INTERFACE = </span>
+T_LOGICAL_AND = <span class="src-key">
+/T_LOGICAL_AND = </span>
+T_LOGICAL_OR = <span class="src-key">
+/T_LOGICAL_OR = </span>
+T_LOGICAL_XOR = <span class="src-key">
+/T_LOGICAL_XOR = </span>
+T_NEW = <span class="src-key">
+/T_NEW = </span>
+T_PRIVATE = <span class="src-key">
+/T_PRIVATE = </span>
+T_PROTECTED = <span class="src-key">
+/T_PROTECTED = </span>
+T_PUBLIC = <span class="src-key">
+/T_PUBLIC = </span>
+T_RETURN = <span class="src-key">
+/T_RETURN = </span>
+T_STATIC = <span class="src-key">
+/T_STATIC = </span>
+T_SWITCH = <span class="src-key">
+/T_SWITCH = </span>
+T_VAR = <span class="src-key">
+/T_VAR = </span>
+T_WHILE = <span class="src-key">
+/T_WHILE = </span>
+
+T_DOUBLE_COLON = <span class="src-sym">
+/T_DOUBLE_COLON = </span>
+
+T_OPEN_TAG = <span class="src-php">
+/T_OPEN_TAG = </span>
+T_OPEN_TAG_WITH_ECHO = <span class="src-php">
+/T_OPEN_TAG_WITH_ECHO = </span>
+T_CLOSE_TAG = <span class="src-php">
+/T_CLOSE_TAG = </span>
+
+
+[highlightSource]
+;; this is for highlighting things that aren't tokens like "&"
+;; format:
+;; word = open
+;; /word = close
+@ = <span class="src-sym">
+/@ = </span>
+& = <span class="src-sym">
+/& = </span>
+[ = <span class="src-sym">
+/[ = </span>
+] = <span class="src-sym">
+/] = </span>
+! = <span class="src-sym">
+/! = </span>
+";" = <span class="src-sym">
+/; = </span>
+( = <span class="src-sym">
+/( = </span>
+) = <span class="src-sym">
+/) = </span>
+, = <span class="src-sym">
+/, = </span>
+{ = <span class="src-sym">
+/{ = </span>
+} = <span class="src-sym">
+/} = </span>
+""" = <span class="src-str">
+/" = </span>
+
+[highlightDocBlockSourceTokens]
+;; this is for docblock tokens, using by phpDocumentor_HighlightParser
+;; tagphptype is for "string" in @param string description, for example
+docblock = <span class="src-doc">
+/docblock = </span>
+tagphptype = <span class="src-doc-type">
+/tagphptype = </span>
+tagvarname = <span class="src-doc-var">
+/tagvarname = </span>
+coretag = <span class="src-doc-coretag">
+/coretag = </span>
+tag = <span class="src-doc-tag">
+/tag = </span>
+inlinetag = <span class="src-doc-inlinetag">
+/inlinetag = </span>
+internal = <span class="src-doc-internal">
+/internal = </span>
+closetemplate = <span class="src-doc-close-template">
+/closetemplate = </span>
+docblocktemplate = <span class="src-doc-template">
+/docblocktemplate = </span>
+
+[highlightTutorialSourceTokens]
+;; this is for XML DocBook-based tutorials, highlighted by phpDocumentor_TutorialHighlightParser
+;; <tag>
+opentag = <span class="tute-tag">
+/opentag = </span>
+;; </tag>
+closetag = <span class="tute-tag">
+/closetag = </span>
+;; <tag attribute="value">
+attribute = <span class="tute-attribute-name">
+/attribute = </span>
+;; <tag attribute="value">
+attributevalue = <span class="tute-attribute-value">
+/attributevalue = </span>
+;; &entity;
+entity = <span class="tute-entity">
+/entity = </span>
+;; <!-- comment -->
+comment = <span class="tute-comment">
+/comment = </span>
+;; {@inline tag}
+itag = <span class="tute-inline-tag">
+/itag = </span>
+
+;; used for translation of html in DocBlocks
+[desctranslate]
+ul = <ul>
+/ul = </ul>
+ol = <ol>
+/ol = </ol>
+li = <li>
+/li = </li>
+code =
+/code =
+var = <var>
+/var = </var>
+samp = <samp>
+/samp = </samp>
+kbd = <kbd>
+/kbd = </kbd>
+pre = <pre>
+/pre = </pre>
+p = <p>
+/p = </p>
+b = <strong>
+/b = </strong>
+i = <em>
+/i = </em>
+br = <br />
+
+[ppage]
+;; this is the DocBook package page translation section. All DocBook tags
+;; that have a corresponding html tag must be listed here. Entities should
+;; also be listed here
+;;
+;; examples:
+;; 1)
+;; tagname = newtagname
+;;
+;; This is the simplest case, where all attributes will be added into the
+;; starting tag and the ending tag will be html/xml style </tranlatedtagname>
+;; <tagname></tagname> becomes <newtagname></newtagname> and
+;; <tagname attr="value"></tagname> becomes
+;; <newtagname attr="value"></newtagname>
+;;
+;; 2)
+;; tagname = newtagname
+;; tagname->attr = newattrname
+;;
+;; in this case, everything will be like the first case, except tags like:
+;; <tagname attr="value"></tagname> will become
+;; <newtagname newattrname="value"></newtagname>
+;;
+;; 3)
+;; tagname = newtagname
+;; tagname->attr = newattrname
+;; tagname->attr+value = newvalue
+;;
+;; in this case, the value is also translated to another. This can be useful
+;; for instances such as focus="middle" changing to align="center" or something
+;; of that nature.
+;; <tagname attr="value"></tagname> will become
+;; <newtagname newattrname="newvalue"></newtagname>
+;;
+;; 4)
+;; tagname = newtagname
+;; tagname->attr1 = newattrname
+;; tagname->attr2 = newattrname
+;; tagname->attr1+value|attr2+value = newvalue
+;;
+;; in this case, two attributes combine to make one new attribute, and the combined
+;; value is translated into a new value
+;; <tagname attr1="value1" attr2="value2"></tagname> will become
+;; <newtagname newattrname="newvalue"></newtagname>
+;;
+;; 5)
+;; tagname = newtagname
+;; tagname!attr = dummy
+;;
+;; here, the attribute will be ignored. dummy is not used and may be any value
+;; <tagname attr="value"></tagname> will become
+;; <newtagname></newtagname>
+;;
+;; 6)
+;; tagname = newtagname
+;; tagname! = dummy
+;;
+;; here, all attributes will be ignored. dummy is not used and may be any value
+;; <tagname attr1="value" attr2="foo"></tagname> will become
+;; <newtagname></newtagname>
+;;
+;; 7)
+;; tagname = newtagname
+;; tagname/ = 1
+;;
+;; here, the tag will be translated as a single tag with no closing tag, and all
+;; attributes
+;; <tagname attr="val">{text text}</tagname> will become
+;; <newtagname attr="val" />
+;;
+;; 8)
+;; tagname = <starttaginfo />
+;; /tagname = closetagtext
+;;
+;; in this case, the text <starttaginfo> will be inserted exactly as entered for
+;; <tagname> and closetagtext for </tagname>
+;; <tagname attr="val"></tagname> will become
+;; <starttaginfo />closetagtext
+;;
+;; 9)
+;; $attr$my_attribute = newattrname
+;;
+;; tagname = newtagname
+;;
+;; in this case, all occurences of my_attribute in any tag will be changed to
+;; newattrname. This is useful for changing things like role="php" to
+;; class="php," for example. Note that the text "$attr$" MUST be on the line
+;; start for phpDocumentor to recognize it.
+;;
+;; 10)
+;; &entity; = translation text
+;; &quot; = &quot;
+;; &quot; = """
+;; &lt; = <
+;;
+;; Use this to control translation of entities to their appropriate values
+
+&nbsp; = &nbsp;
+&quot; = &quot;
+&rdquo; = &rdquo;
+&ldquo; = &ldquo;
+&amp; = &amp;
+&lt; = &lt;
+&gt; = &gt;
+&copy; = &copy;
+
+
+$attr$role = class
+
+abbrev = abbr
+
+blockquote = blockquote
+
+arg = span
+arg->choice = class
+
+author = <span class="author">
+/author = </span>
+author! = 0
+
+authorblurb = <div class="author-blurb">
+/authorblurb = </div>
+
+authorgroup = <div class="authors"><h2 class="title">Authors</h2>
+/authorgroup = </div>
+authorgroup! = 0
+
+caution = <span class="warning">
+/caution = </span>
+caution! = 0
+
+cmdsynopsis = <div class="cmd-synopsis">
+/cmdsynopsis = </div>
+
+command = <span class="cmd-title">
+/command = </span>
+
+copyright = <div class="notes">
+/copyright = </div>
+
+emphasis = em
+
+example = <div class="src-code">
+/example = </div>
+example! = 0
+
+function =
+/function = ()
+
+formalpara = p
+
+graphic = img
+graphic->fileref = src
+graphic/ =
+
+important = strong
+
+informalequation = blockquote
+
+informalexample = div
+
+inlineequation = em
+
+itemizedlist = ul
+
+listitem = li
+
+literal = code
+
+literallayout = span
+
+option = " "
+/option =
+
+orderedlist = ol
+
+para = p
+
+programlisting = <div class="src-code">
+/programlisting = </div>
+programlisting! = 0
+
+refentry = div
+
+refnamediv = <div class="ref-title-box">
+/refnamediv = </div>
+refnamediv! = 0
+
+refname = <h1 class="ref-title">
+/refname = </h1>
+
+refpurpose = <h2 class="ref-purpose">
+/refpurpose = </h2>
+
+refsynopsisdiv = <div class="ref-synopsis">
+/refsynopsisdiv = </div>
+refsynopsisdiv! = 0
+
+refsect1 = span
+
+refsect2 = span
+
+refsect3 =
+/refsect3 = <br />
+
+releaseinfo = <div class="release-info">(
+/releaseinfo = )</div>
+
+simpara =
+/simpara = <br />
+simpara! = 0
+
+subscript = sub
+
+superscript = super
+
+table = table
+
+table->colsep = rules
+table->rowsep = rules
+table->colsep+1|rowsep+1 =all
+table->colsep+1|rowsep+0 =cols
+table->colsep+0|rowsep+1 =rows
+
+table->frame =frame
+table->frame+all =border
+table->frame+none =void
+table->frame+sides =vsides
+table->frame+top =above
+table->frame+topbot =hsides
+
+thead = thead
+
+tfoot = tfoot
+
+tbody = tbody
+
+colspec = col
+
+tgroup = colgroup
+tgroup/ = 1
+tgroup->cols = span
+
+row = tr
+
+entry = td
+entry->morerows = colspan
+entry->morerows+1 =2
+entry->morerows+2 =3
+entry->morerows+3 =4
+entry->morerows+4 =5
+entry->morerows+5 =6
+entry->morerows+6 =7
+entry->morerows+7 =8
+entry->morerows+8 =9
+entry->morerows+9 =10
+entry->morerows+10 =11
+;; add more if you need more colspans
+
+warning = <span class="warning">
+/warning = </span>
+warning! = 0
+
+;; now begins the attributes that should be tags in cdata
+[$attr$id]
+open = a
+;close = /a
+cdata! = true
+quotevalues = true
+separator = "="
+;separateall = true
+$id = name
+
+;; now begins the sections that deal with <title>
+[refsynopsisdiv_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h1 class="title">
+close = </h1>
+
+[refsect1_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h2 class="title">
+close = </h2>
+
+[refsect2_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h3 class="title">
+close = </h3>
+
+[refsect3_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h4 class="title">
+close = </h4>
+
+[para_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <div class="title">
+close = </div>
+
+[formalpara_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <div class="title">
+close = </div>
+
+[example_title]
+;tag_attr = true
+;attr_name = title
+;cdata_start = true
+cdata_end = true
+open = </td></tr><tr><td><strong>
+close = </strong>
+
+[table_title]
+;tag_attr = true
+;attr_name = true
+cdata_start = true
+open = <caption>
+close = </caption>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/basicindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/basicindex.tpl
new file mode 100755
index 00000000..951ee264
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/basicindex.tpl
@@ -0,0 +1,47 @@
+<div class="index-letter-menu">
+{section name=letter loop=$letters}
+ <a class="index-letter" href="{$indexname}.html#{$letters[letter].letter}">{$letters[letter].letter}</a>
+{/section}
+</div>
+
+{section name=index loop=$index}
+ <a name="{$index[index].letter}"></a>
+ <div class="index-letter-section">
+ <div style="float: left" class="index-letter-title">{$index[index].letter}</div>
+ <div style="float: right"><a href="#top">top</a></div>
+ <div style="clear: both"></div>
+ </div>
+ <dl>
+ {section name=contents loop=$index[index].index}
+ <dt class="field">
+ {if ($index[index].index[contents].title == "Variable")}
+ <span class="var-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Global")}
+ <span class="var-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Method")}
+ <span class="method-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Function")}
+ <span class="method-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Constant")}
+ <span class="const-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Page") || ($index[index].index[contents].title == "Include")}
+ <span class="include-title">{$index[index].index[contents].name}</span>
+ {else}
+ {$index[index].index[contents].name}
+ {/if}
+ </dt>
+ <dd class="index-item-body">
+ <div class="index-item-details">{$index[index].index[contents].link} in {$index[index].index[contents].file_name}</div>
+ {if $index[index].index[contents].description}
+ <div class="index-item-description">{$index[index].index[contents].description}</div>
+ {/if}
+ </dd>
+ {/section}
+ </dl>
+{/section}
+
+<div class="index-letter-menu">
+{section name=letter loop=$letters}
+ <a class="index-letter" href="{$indexname}.html#{$letters[letter].letter}">{$letters[letter].letter}</a>
+{/section}
+</div>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/blank.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/blank.tpl
new file mode 100755
index 00000000..6a05f27e
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/blank.tpl
@@ -0,0 +1,13 @@
+<html>
+<head>
+ <title>{$maintitle}</title>
+ <link rel="stylesheet" href="{$subdir}media/stylesheet.css" />
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+</head>
+<body>
+<div align="center"><h1>{$maintitle}</h1></div>
+<b>Welcome to {$package}!</b><br />
+<br />
+This documentation was generated by <a href="{$phpdocwebsite}">phpDocumentor v{$phpdocversion}</a><br />
+</body>
+</html> \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/class.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/class.tpl
new file mode 100755
index 00000000..9ab7c455
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/class.tpl
@@ -0,0 +1,429 @@
+{include file="header.tpl" top3=true}
+
+<h2 class="class-name">{if $is_interface}Interface{else}Class{/if} {$class_name}</h2>
+
+<a name="sec-description"></a>
+<div class="info-box">
+ <div class="info-box-title">Description</div>
+ <div class="nav-bar">
+ {if $children || $vars || $ivars || $methods || $imethods || $consts || $iconsts }
+ <span class="disabled">Description</span> |
+ {/if}
+ {if $children}
+ <a href="#sec-descendents">Descendents</a>
+ {if $vars || $ivars || $methods || $imethods || $consts || $iconsts}|{/if}
+ {/if}
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ {if $methods || $imethods}|{/if}
+ {/if}
+ {if $methods || $imethods}
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {if $implements}
+ <p class="implements">
+ Implements interfaces:
+ <ul>
+ {foreach item="int" from=$implements}<li>{$int}</li>{/foreach}
+ </ul>
+ </p>
+ {/if}
+ {include file="docblock.tpl" type="class" sdesc=$sdesc desc=$desc}
+ <p class="notes">
+ Located in <a class="field" href="{$page_link}">{$source_location}</a> (line <span class="field">{if $class_slink}{$class_slink}{else}{$line_number}{/if}</span>)
+ </p>
+
+ {if $tutorial}
+ <hr class="separator" />
+ <div class="notes">Tutorial: <span class="tutorial">{$tutorial}</span></div>
+ {/if}
+
+ <pre>{section name=tree loop=$class_tree.classes}{$class_tree.classes[tree]}{$class_tree.distance[tree]}{/section}</pre>
+
+ {if $conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with classes:</span><br />
+ {section name=me loop=$conflicts.conflicts}
+ {$conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+ </div>
+</div>
+
+{if $children}
+ <a name="sec-descendents"></a>
+ <div class="info-box">
+ <div class="info-box-title">Direct descendents</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ <span class="disabled">Descendents</span>
+ {if $vars || $ivars || $methods || $imethods}|{/if}
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ {if $methods || $imethods}|{/if}
+ {/if}
+ {if $methods || $imethods}
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <table cellpadding="2" cellspacing="0" class="class-table">
+ <tr>
+ <th class="class-table-header">Class</th>
+ <th class="class-table-header">Description</th>
+ </tr>
+ {section name=kids loop=$children}
+ <tr>
+ <td style="padding-right: 2em">{$children[kids].link}</td>
+ <td>
+ {if $children[kids].sdesc}
+ {$children[kids].sdesc}
+ {else}
+ {$children[kids].desc}
+ {/if}
+ </td>
+ </tr>
+ {/section}
+ </table>
+ </div>
+ </div>
+{/if}
+
+{if $consts}
+ <a name="sec-const-summary"></a>
+ <div class="info-box">
+ <div class="info-box-title">Class Constant Summary</span></div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendants</a> |
+ {/if}
+ <span class="disabled">Constants</span> (<a href="#sec-consts">details</a>)
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ |
+ {/if}
+ {if $methods || $imethods}
+ |
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <div class="const-summary">
+ {section name=consts loop=$consts}
+ <div class="const-title">
+ <img src="{$subdir}media/images/Constant.png" alt=" " />
+ <a href="#{$consts[consts].const_name}" title="details" class="const-name">{$consts[consts].const_name}</a> = <span class="var-type">{$consts[consts].const_value}</span>
+
+ </div>
+ {/section}
+ </div>
+ </div>
+ </div>
+{/if}
+
+{if $vars}
+ <a name="sec-var-summary"></a>
+ <div class="info-box">
+ <div class="info-box-title">Variable Summary</span></div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendents</a> |
+ {/if}
+ <span class="disabled">Vars</span> (<a href="#sec-vars">details</a>)
+ {if $methods || $imethods}
+ |
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <div class="var-summary">
+ {section name=vars loop=$vars}
+ {if $vars[vars].static}
+ <div class="var-title">
+ static <span class="var-type">{$vars[vars].var_type}</span>
+ <a href="#{$vars[vars].var_name}" title="details" class="var-name">{$vars[vars].var_name}</a>
+ </div>
+ {/if}
+ {/section}
+ {section name=vars loop=$vars}
+ {if !$vars[vars].static}
+ <div class="var-title">
+ <span class="var-type">{$vars[vars].var_type}</span>
+ <a href="#{$vars[vars].var_name}" title="details" class="var-name">{$vars[vars].var_name}</a>
+ </div>
+ {/if}
+ {/section}
+ </div>
+ </div>
+ </div>
+{/if}
+
+{if $methods}
+ <a name="sec-method-summary"></a>
+ <div class="info-box">
+ <div class="info-box-title">Method Summary</span></div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendents</a> |
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ |
+ {/if}
+ <span class="disabled">Methods</span> (<a href="#sec-methods">details</a>)
+ </div>
+ <div class="info-box-body">
+ <div class="method-summary">
+ {section name=methods loop=$methods}
+ {if $methods[methods].static}
+ <div class="method-definition">
+ static {if $methods[methods].function_return}
+ <span class="method-result">{$methods[methods].function_return}</span>
+ {/if}
+ <a href="#{$methods[methods].function_name}" title="details" class="method-name">{if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}</a>
+ {if count($methods[methods].ifunction_call.params)}
+ ({section name=params loop=$methods[methods].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$methods[methods].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$methods[methods].ifunction_call.params[params].name}</span>{if $methods[methods].ifunction_call.params[params].hasdefault} = <span class="var-default">{$methods[methods].ifunction_call.params[params].default}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+ {/if}
+ {/section}
+ {section name=methods loop=$methods}
+ {if !$methods[methods].static}
+ <div class="method-definition">
+ {if $methods[methods].function_return}
+ <span class="method-result">{$methods[methods].function_return}</span>
+ {/if}
+ <a href="#{$methods[methods].function_name}" title="details" class="method-name">{if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}</a>
+ {if count($methods[methods].ifunction_call.params)}
+ ({section name=params loop=$methods[methods].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$methods[methods].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$methods[methods].ifunction_call.params[params].name}</span>{if $methods[methods].ifunction_call.params[params].hasdefault} = <span class="var-default">{$methods[methods].ifunction_call.params[params].default}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+ {/if}
+ {/section}
+ </div>
+ </div>
+ </div>
+{/if}
+
+{if $vars || $ivars}
+ <a name="sec-vars"></a>
+ <div class="info-box">
+ <div class="info-box-title">Variables</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendents</a> |
+ {/if}
+ {if $methods}
+ <a href="#sec-var-summary">Vars</a> (<span class="disabled">details</span>)
+ {else}
+ <span class="disabled">Vars</span>
+ {/if}
+
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ {if $methods || $imethods}
+ |
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="var.tpl"}
+ {if $ivars}
+ <h4>Inherited Variables</h4>
+ <A NAME='inherited_vars'><!-- --></A>
+ {section name=ivars loop=$ivars}
+ <p>Inherited from <span class="classname">{$ivars[ivars].parent_class}</span></p>
+ <blockquote>
+ {section name=ivars2 loop=$ivars[ivars].ivars}
+ <span class="var-title">
+ <span class="var-name">{$ivars[ivars].ivars[ivars2].link}</span>{if $ivars[ivars].ivars[ivars2].ivar_sdesc}: {$ivars[ivars].ivars[ivars2].ivar_sdesc}{/if}<br>
+ </span>
+ {/section}
+ </blockquote>
+ {/section}
+ {/if}
+ </div>
+ </div>
+{/if}
+
+{if $methods || $imethods}
+ <a name="sec-methods"></a>
+ <div class="info-box">
+ <div class="info-box-title">Methods</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendents</a> |
+ {/if}
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<span class="disabled">details</span>)
+ {else}
+ <span class="disabled">Methods</span>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="method.tpl"}
+ {if $imethods}
+ <h4>Inherited Methods</h4>
+ <a name='inherited_methods'><!-- --></a>
+ {section name=imethods loop=$imethods}
+ <!-- =========== Summary =========== -->
+ <p>Inherited From <span class="classname">{$imethods[imethods].parent_class}</span></p>
+ <blockquote>
+ {section name=im2 loop=$imethods[imethods].imethods}
+ <span class="method-name">{$imethods[imethods].imethods[im2].link}</span>{if $imethods[imethods].imethods[im2].ifunction_sdesc}: {$imethods[imethods].imethods[im2].ifunction_sdesc}{/if}<br>
+ {/section}
+ </blockquote>
+ {/section}
+ {/if}
+ </div>
+ </div>
+{/if}
+
+{if $consts || $iconsts}
+ <a name="sec-consts"></a>
+ <div class="info-box">
+ <div class="info-box-title">Class Constants</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendants</a> |
+ {/if}
+ {if $methods}
+ <a href="#sec-var-summary">Constants</a> (<span class="disabled">details</span>)
+ {else}
+ <span class="disabled">Constants</span>
+ {/if}
+
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ {/if}
+ {if $methods || $imethods}
+ |
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="const.tpl"}
+ {if $iconsts}
+ <h4>Inherited Constants</h4>
+ <A NAME='inherited_vars'><!-- --></A>
+ {section name=iconsts loop=$iconsts}
+ <p>Inherited from <span class="classname">{$iconsts[iconsts].parent_class}</span></p>
+ <blockquote>
+ {section name=iconsts2 loop=$iconsts[iconsts].iconsts}
+ <img src="{$subdir}media/images/{if $iconsts[iconsts].iconsts[iconsts2].access == 'private'}PrivateVariable{else}Variable{/if}.png" />
+ <span class="const-title">
+ <span class="const-name">{$iconsts[iconsts].iconsts[iconsts2].link}</span>{if $iconsts[iconsts].iconsts[iconsts2].iconst_sdesc}: {$iconsts[iconsts].iconsts[iconsts2].iconst_sdesc}{/if}<br>
+ </span>
+ {/section}
+ </blockquote>
+ {/section}
+ {/if}
+ </div>
+ </div>
+{/if}
+
+{include file="footer.tpl" top3=true}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/classtrees.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/classtrees.tpl
new file mode 100755
index 00000000..952e6d50
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/classtrees.tpl
@@ -0,0 +1,19 @@
+{include file="header.tpl" top1=true}
+
+<!-- Start of Class Data -->
+<H2>
+ {$smarty.capture.title}
+</H2>
+{if $interfaces}
+{section name=classtrees loop=$interfaces}
+<h2>Root interface {$interfaces[classtrees].class}</h2>
+{$interfaces[classtrees].class_tree}
+{/section}
+{/if}
+{if $classtrees}
+{section name=classtrees loop=$classtrees}
+<h2>Root class {$classtrees[classtrees].class}</h2>
+{$classtrees[classtrees].class_tree}
+{/section}
+{/if}
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/const.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/const.tpl
new file mode 100644
index 00000000..c26ff92d
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/const.tpl
@@ -0,0 +1,18 @@
+{section name=consts loop=$consts}
+<a name="const{$consts[consts].const_name}" id="{$consts[consts].const_name}"><!-- --></A>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="const-header">
+ <img src="{$subdir}media/images/{if $consts[consts].access == 'private'}PrivateVariable{else}Variable{/if}.png" />
+ <span class="const-title">
+ <span class="const-name">{$consts[consts].const_name}</span>
+ = <span class="const-default">{$consts[consts].const_value|replace:"\n":"<br />"}</span>
+ (line <span class="line-number">{if $consts[consts].slink}{$consts[consts].slink}{else}{$consts[consts].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$consts[consts].sdesc desc=$consts[consts].desc tags=$consts[consts].tags}
+
+</div>
+{/section}
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/define.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/define.tpl
new file mode 100755
index 00000000..0da5d864
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/define.tpl
@@ -0,0 +1,24 @@
+{section name=def loop=$defines}
+<a name="{$defines[def].define_link}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <span class="const-title">
+ <span class="const-name">{$defines[def].define_name}</span> = {$defines[def].define_value|replace:"\n":"<br />"}
+ (line <span class="line-number">{if $defines[def].slink}{$defines[def].slink}{else}{$defines[def].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$defines[def].sdesc desc=$defines[def].desc tags=$defines[def].tags}
+
+ {if $globals[glob].global_conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with constants:</span><br />
+ {section name=me loop=$defines[def].define_conflicts.conflicts}
+ {$defines[def].define_conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+
+</div>
+{/section} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/docblock.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/docblock.tpl
new file mode 100755
index 00000000..783d5271
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/docblock.tpl
@@ -0,0 +1,14 @@
+<!-- ========== Info from phpDoc block ========= -->
+{if $sdesc}
+<p class="short-description">{$sdesc}</p>
+{/if}
+{if $desc}
+<p class="description">{$desc}</p>
+{/if}
+{if $tags}
+ <ul class="tags">
+ {section name=tags loop=$tags}
+ <li><span class="field">{$tags[tags].keyword}:</span> {$tags[tags].data}</li>
+ {/section}
+ </ul>
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/elementindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/elementindex.tpl
new file mode 100755
index 00000000..d5964f99
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/elementindex.tpl
@@ -0,0 +1,12 @@
+{include file="header.tpl" noleftindex=true}
+<a name="top"></a>
+<h2>Full index</h2>
+<h3>Package indexes</h3>
+<ul>
+{section name=p loop=$packageindex}
+ <li><a href="elementindex_{$packageindex[p].title}.html">{$packageindex[p].title}</a></li>
+{/section}
+</ul>
+<br />
+{include file="basicindex.tpl" indexname="elementindex"}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/errors.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/errors.tpl
new file mode 100755
index 00000000..0f526584
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/errors.tpl
@@ -0,0 +1,21 @@
+{include file="header.tpl" noleftindex=true}
+{section name=files loop=$files}
+<a href="#{$files[files].file}">{$files[files].file}</a><br>
+{/section}
+{foreach key=file item=issues from=$all}
+<a name="{$file}"></a>
+<h1>{$file}</h1>
+{if count($issues.warnings)}
+<h2>Warnings:</h2><br>
+{section name=warnings loop=$issues.warnings}
+<b>{$issues.warnings[warnings].name}</b> - {$issues.warnings[warnings].listing}<br>
+{/section}
+{/if}
+{if count($issues.errors)}
+<h2>Errors:</h2><br>
+{section name=errors loop=$issues.errors}
+<b>{$issues.errors[errors].name}</b> - {$issues.errors[errors].listing}<br>
+{/section}
+{/if}
+{/foreach}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/examplesource.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/examplesource.tpl
new file mode 100755
index 00000000..8abf74ce
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/examplesource.tpl
@@ -0,0 +1,6 @@
+{include file="header.tpl" title=$title}
+<h1>{$title}</h1>
+<div class="listing">
+{$source}
+</div>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/filesource.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/filesource.tpl
new file mode 100755
index 00000000..239f7b41
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/filesource.tpl
@@ -0,0 +1,8 @@
+{capture name="tutle"}File Source for {$name}{/capture}
+{include file="header.tpl" title=$smarty.capture.tutle}
+<h1>Source for file {$name}</h1>
+<p>Documentation is available at {$docs}</p>
+<div class="src-code">
+{$source}
+</div>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/footer.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/footer.tpl
new file mode 100755
index 00000000..8d0f79db
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/footer.tpl
@@ -0,0 +1,8 @@
+{if !$index}
+ <p class="notes" id="credit">
+ Documentation generated on {$date} by <a href="{$phpdocwebsite}" target="_blank">phpDocumentor {$phpdocversion}</a>
+ </p>
+{/if}
+ {if $top3}</div>{/if}
+</body>
+</html>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/function.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/function.tpl
new file mode 100755
index 00000000..b6880059
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/function.tpl
@@ -0,0 +1,44 @@
+{section name=func loop=$functions}
+<a name="{$functions[func].function_dest}" id="{$functions[func].function_dest}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <span class="method-title">{$functions[func].function_name}</span> (line <span class="line-number">{if $functions[func].slink}{$functions[func].slink}{else}{$functions[func].line_number}{/if}</span>)
+ </div>
+
+ {include file="docblock.tpl" sdesc=$functions[func].sdesc desc=$functions[func].desc tags=$functions[func].tags params=$functions[func].params function=false}
+
+ <div class="method-signature">
+ <span class="method-result">{$functions[func].function_return}</span>
+ <span class="method-name">
+ {if $functions[func].ifunction_call.returnsref}&amp;{/if}{$functions[func].function_name}
+ </span>
+ {if count($functions[func].ifunction_call.params)}
+ ({section name=params loop=$functions[func].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $functions[func].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$functions[func].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$functions[func].ifunction_call.params[params].name}</span>{if $functions[func].ifunction_call.params[params].hasdefault} = <span class="var-default">{$functions[func].ifunction_call.params[params].default|escape:"html"}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+
+ {if $functions[func].params}
+ <ul class="parameters">
+ {section name=params loop=$functions[func].params}
+ <li>
+ <span class="var-type">{$functions[func].params[params].datatype}</span>
+ <span class="var-name">{$functions[func].params[params].var}</span>{if $functions[func].params[params].data}<span class="var-description">: {$functions[func].params[params].data}</span>{/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+ {if $functions[func].function_conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with functions:</span><br />
+ {section name=me loop=$functions[func].function_conflicts.conflicts}
+ {$functions[func].function_conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+
+</div>
+{/section}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/global.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/global.tpl
new file mode 100755
index 00000000..eab7e0b0
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/global.tpl
@@ -0,0 +1,26 @@
+{section name=glob loop=$globals}
+<a name="{$globals[glob].global_link}" id="{$globals[glob].global_link}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <span class="var-title">
+ <span class="var-type">{$globals[glob].global_type}</span>
+ <span class="var-name">{$globals[glob].global_name}</span>
+ {if $vars[vars].var_default} = <span class="var-default">{$globals[glob].global_value|replace:"\n":"<br />"}</span>{/if}
+ (line <span class="line-number">{if $globals[glob].slink}{$globals[glob].slink}{else}{$globals[glob].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$globals[glob].sdesc desc=$globals[glob].desc tags=$globals[glob].tags}
+
+ {if $globals[glob].global_conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with global variables:</span><br />
+ {section name=me loop=$globals[glob].global_conflicts.conflicts}
+ {$globals[glob].global_conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+
+</div>
+{/section} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/header.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/header.tpl
new file mode 100755
index 00000000..0d626190
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/header.tpl
@@ -0,0 +1,95 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+ <html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <!-- template designed by Marco Von Ballmoos -->
+ <title>{$title}</title>
+ <link rel="stylesheet" href="{$subdir}media/stylesheet.css" />
+ {if $top2 || $top3}
+ <script src="{$subdir}media/lib/classTree.js"></script>
+ {/if}
+ {if $top2}
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+ {/if}
+ {if $top3 || $top2}
+ <script language="javascript" type="text/javascript">
+ var imgPlus = new Image();
+ var imgMinus = new Image();
+ imgPlus.src = "{$subdir}media/images/plus.png";
+ imgMinus.src = "{$subdir}media/images/minus.png";
+
+ function showNode(Node){ldelim}
+ switch(navigator.family){ldelim}
+ case 'nn4':
+ // Nav 4.x code fork...
+ var oTable = document.layers["span" + Node];
+ var oImg = document.layers["img" + Node];
+ break;
+ case 'ie4':
+ // IE 4/5 code fork...
+ var oTable = document.all["span" + Node];
+ var oImg = document.all["img" + Node];
+ break;
+ case 'gecko':
+ // Standards Compliant code fork...
+ var oTable = document.getElementById("span" + Node);
+ var oImg = document.getElementById("img" + Node);
+ break;
+ {rdelim}
+ oImg.src = imgMinus.src;
+ oTable.style.display = "block";
+ {rdelim}
+
+ function hideNode(Node){ldelim}
+ switch(navigator.family){ldelim}
+ case 'nn4':
+ // Nav 4.x code fork...
+ var oTable = document.layers["span" + Node];
+ var oImg = document.layers["img" + Node];
+ break;
+ case 'ie4':
+ // IE 4/5 code fork...
+ var oTable = document.all["span" + Node];
+ var oImg = document.all["img" + Node];
+ break;
+ case 'gecko':
+ // Standards Compliant code fork...
+ var oTable = document.getElementById("span" + Node);
+ var oImg = document.getElementById("img" + Node);
+ break;
+ {rdelim}
+ oImg.src = imgPlus.src;
+ oTable.style.display = "none";
+ {rdelim}
+
+ function nodeIsVisible(Node){ldelim}
+ switch(navigator.family){ldelim}
+ case 'nn4':
+ // Nav 4.x code fork...
+ var oTable = document.layers["span" + Node];
+ break;
+ case 'ie4':
+ // IE 4/5 code fork...
+ var oTable = document.all["span" + Node];
+ break;
+ case 'gecko':
+ // Standards Compliant code fork...
+ var oTable = document.getElementById("span" + Node);
+ break;
+ {rdelim}
+ return (oTable && oTable.style.display == "block");
+ {rdelim}
+
+ function toggleNodeVisibility(Node){ldelim}
+ if (nodeIsVisible(Node)){ldelim}
+ hideNode(Node);
+ {rdelim}else{ldelim}
+ showNode(Node);
+ {rdelim}
+ {rdelim}
+ </script>
+ {/if}
+ </head>
+ <body>
+ {if $top3}<div class="page-body">{/if}
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/include.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/include.tpl
new file mode 100755
index 00000000..c2419e5f
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/include.tpl
@@ -0,0 +1,16 @@
+{section name=includes loop=$includes}
+<a name="{$includes[includes].include_file}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <span class="include-title">
+ <span class="include-type">{$includes[includes].include_name}</span>
+ (<span class="include-name">{$includes[includes].include_value}</span>)
+ (line <span class="line-number">{if $includes[includes].slink}{$includes[includes].slink}{else}{$includes[includes].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$includes[includes].sdesc desc=$includes[includes].desc tags=$includes[includes].tags}
+
+</div>
+{/section} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/index.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/index.tpl
new file mode 100755
index 00000000..7cd61094
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/index.tpl
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//FR"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
+ <html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+ <!-- Generated by phpDocumentor on {$date} -->
+ <title>{$title}</title>
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+</head>
+
+<FRAMESET rows='120,*'>
+ <FRAME src='packages.html' name='left_top' frameborder="1" bordercolor="#999999">
+ <FRAMESET cols='25%,*'>
+ <FRAME src='{$start}' name='left_bottom' frameborder="1" bordercolor="#999999">
+ <FRAME src='{$blank}.html' name='right' frameborder="1" bordercolor="#999999">
+ </FRAMESET>
+ <NOFRAMES>
+ <H2>Frame Alert</H2>
+ <P>This document is designed to be viewed using the frames feature.
+ If you see this message, you are using a non-frame-capable web client.</P>
+ </NOFRAMES>
+</FRAMESET>
+</HTML>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/left_frame.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/left_frame.tpl
new file mode 100755
index 00000000..a30f167d
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/left_frame.tpl
@@ -0,0 +1,216 @@
+{include file="header.tpl" top2=true}
+<h3 class="package-title">{$info.0.package}</h3>
+<div class="tree">
+<script language="Javascript">
+if (document.getElementById) {ldelim}
+{section name=p loop=$info}
+ {if $info[p].subpackage == ""}
+ var tree = new WebFXTree('<span class="package">{$info.0.package}</span>');
+ tree.setBehavior('classic');
+
+ {if $hastodos}
+ var todos = new WebFXTreeItem('To-do List', '{$todolink}');
+ tree.add(todos);
+ {/if}
+
+ var class_trees = new WebFXTreeItem('Class trees', '{$classtreepage}.html');
+ tree.add(class_trees);
+
+ var elements = new WebFXTreeItem('Index of elements', '{$elementindex}.html');
+ tree.add(elements);
+
+ var parent_node;
+
+ {if $info[p].tutorials}
+ var tree_tutorial = new WebFXTreeItem('Tutorial(s)/Manual(s)', '');
+ tree.add(tree_tutorial);
+
+ {if $info[p].tutorials.pkg}
+ var tree_inner_tutorial = new WebFXTreeItem('Package-level', '');
+ tree_tutorial.add(tree_inner_tutorial);
+
+ parent_node = tree_inner_tutorial;
+ {section name=ext loop=$info[p].tutorials.pkg}
+ {$info[p].tutorials.pkg[ext]}
+ {/section}
+ {/if}
+
+ {if $info[p].tutorials.cls}
+ var tree_inner_tutorial = new WebFXTreeItem('Class-level', '');
+ tree_tutorial.add(tree_inner_tutorial);
+
+ parent_node = tree_inner_tutorial;
+ {section name=ext loop=$info[p].tutorials.cls}
+ {$info[p].tutorials.cls[ext]}
+ {/section}
+ {/if}
+
+ {if $info[p].tutorials.proc}
+ var tree_inner_tutorial = new WebFXTreeItem('Function-level', '');
+ tree_tutorial.add(tree_inner_tutorial);
+
+ parent_node = tree_inner_tutorial;
+ {section name=ext loop=$info[p].tutorials.proc}
+ {$info[p].tutorials.proc[ext]}
+ {/section}
+ {/if}
+ {/if}
+
+ {if $info[p].hasinterfaces}
+ {if $info[p].classes}
+ var tree_classe = new WebFXTreeItem('Interface(s)', '{$packagedoc}');
+
+ {section name=class loop=$info[p].classes}
+ {if $info[p].classes[class].is_interface}
+ var classe = new WebFXTreeItem('{$info[p].classes[class].title|escape:"quotes"}', '{$info[p].classes[class].link|escape:"quotes"}');
+ tree_classe.add(classe);
+ {/if}
+ {/section}
+
+ tree.add(tree_classe);
+ {/if}
+ {/if}
+ {if $info[p].hasclasses}
+ {if $info[p].classes}
+ var tree_classe = new WebFXTreeItem('Class(es)', '{$packagedoc}');
+
+ {section name=class loop=$info[p].classes}
+ {if $info[p].classes[class].is_class}
+ var classe = new WebFXTreeItem('{$info[p].classes[class].title|escape:"quotes"}', '{$info[p].classes[class].link|escape:"quotes"}');
+ tree_classe.add(classe);
+ {/if}
+ {/section}
+
+ tree.add(tree_classe);
+ {/if}
+ {/if}
+
+ {if $info[p].functions}
+ var tree_function = new WebFXTreeItem('Function(s)', '{$packagedoc|escape:"quotes"}');
+
+ {section name=nonclass loop=$info[p].functions}
+ var fic = new WebFXTreeItem('{$info[p].functions[nonclass].title|escape:"quotes"}', '{$info[p].functions[nonclass].link|escape:"quotes"}');
+ tree_function.add(fic);
+ {/section}
+
+ tree.add(tree_function);
+ {/if}
+
+ {if $info[p].files}
+ var tree_file = new WebFXTreeItem('File(s)', '{$packagedoc|escape:"quotes"}');
+
+ {section name=nonclass loop=$info[p].files}
+ var file = new WebFXTreeItem('{$info[p].files[nonclass].title|escape:"quotes"}', '{$info[p].files[nonclass].link|escape:"quotes"}');
+ tree_file.add(file);
+ {/section}
+
+ tree.add(tree_file);
+ {/if}
+
+ {else}
+ {if $info[p].subpackagetutorial}
+ var subpackagetree = new WebFXTreeItem('<span class="sub-package">{$info[p].subpackagetutorialtitle|strip_tags}</span>', '{$info[p].subpackagetutorialnoa}');
+ {else}
+ var subpackagetree = new WebFXTreeItem('<span class="sub-package">{$info[p].subpackage}</span>', '{$packagedoc|escape:"quotes"}');
+ {/if}
+
+ {if $info[p].tutorials}
+ var tree_tutorial = new WebFXTreeItem('Tutorial(s)/Manual(s)', '');
+ tree.add(tree_tutorial);
+
+ {if $info[p].tutorials.pkg}
+ var tree_inner_tutorial = new WebFXTreeItem('Package-level', '');
+ tree_tutorial.add(tree_inner_tutorial);
+
+ parent_node = tree_inner_tutorial;
+ {section name=ext loop=$info[p].tutorials.pkg}
+ {$info[p].tutorials.pkg[ext]}
+ {/section}
+ {/if}
+
+ {if $info[p].tutorials.cls}
+ var tree_inner_tutorial = new WebFXTreeItem('Class-level', '');
+ tree_tutorial.add(tree_inner_tutorial);
+
+ parent_node = tree_inner_tutorial;
+ {section name=ext loop=$info[p].tutorials.cls}
+ {$info[p].tutorials.cls[ext]}
+ {/section}
+ {/if}
+
+ {if $info[p].tutorials.proc}
+ var tree_inner_tutorial = new WebFXTreeItem('Function-level', '');
+ tree_tutorial.add(tree_inner_tutorial);
+
+ parent_node = tree_inner_tutorial;
+ {section name=ext loop=$info[p].tutorials.proc}
+ {$info[p].tutorials.proc[ext]}
+ {/section}
+ {/if}
+ {/if}
+
+ {if $info[p].hasinterfaces}
+ {if $info[p].classes}
+ var subpackagetree_classe = new WebFXTreeItem('Interface(s)', '{$packagedoc}');
+
+ {section name=class loop=$info[p].classes}
+ {if $info[p].classes[class].is_interface}
+ var classe = new WebFXTreeItem('{$info[p].classes[class].title|escape:"quotes"}', '{$info[p].classes[class].link|escape:"quotes"}');
+ subpackagetree_classe.add(classe);
+ {/if}
+ {/section}
+
+ subpackagetree.add(subpackagetree_classe);
+ {/if}
+ {/if}
+ {if $info[p].hasclasses}
+ {if $info[p].classes}
+ var subpackagetree_classe = new WebFXTreeItem('Class(es)', '{$packagedoc|escape:"quotes"}');
+
+ {section name=class loop=$info[p].classes}
+ {if $info[p].classes[class].is_class}
+ var classe = new WebFXTreeItem('{$info[p].classes[class].title|escape:"quotes"}', '{$info[p].classes[class].link|escape:"quotes"}');
+ subpackagetree_classe.add(classe);
+ {/if}
+ {/section}
+
+ subpackagetree.add(subpackagetree_classe);
+ {/if}
+ {/if}
+
+ {if $info[p].functions}
+ var subpackagetree_function = new WebFXTreeItem('Function(s)', '{$packagedoc|escape:"quotes"}');
+
+ {section name=nonclass loop=$info[p].functions}
+ var fic = new WebFXTreeItem('{$info[p].functions[nonclass].title|escape:"quotes"}', '{$info[p].functions[nonclass].link|escape:"quotes"}');
+ subpackagetree_function.add(fic);
+ {/section}
+
+ subpackagetree.add(subpackagetree_function);
+ {/if}
+
+ {if $info[p].files}
+ var subpackagetree_file = new WebFXTreeItem('File(s)', '{$packagedoc|escape:"quotes"}');
+
+ {section name=nonclass loop=$info[p].files}
+ var file = new WebFXTreeItem('{$info[p].files[nonclass].title|escape:"quotes"}', '{$info[p].files[nonclass].link|escape:"quotes"}');
+ subpackagetree_file.add(file);
+ {/section}
+
+ subpackagetree.add(subpackagetree_file);
+ {/if}
+
+ tree.add(subpackagetree);
+ {/if}
+{/section}
+
+document.write(tree);
+{rdelim}
+</script>
+</div>
+<p class="notes">
+ Generated by
+ <a href="{$phpdocwebsite}" target="_blank">phpDocumentor <span class="field">{$phpdocversion}</span></a>
+</p>
+</body>
+</html>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/banner.css b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/banner.css
new file mode 100755
index 00000000..ba1a7ba5
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/banner.css
@@ -0,0 +1,32 @@
+body
+{
+ background-color: #DDDDDD;
+ margin: 0px;
+ padding: 0px;
+}
+
+/* Banner (top bar) classes */
+
+.banner { }
+
+.banner-menu
+{
+ clear: both;
+ padding: .5em;
+ border-top: 2px solid #999999;
+}
+
+.banner-title
+{
+ text-align: right;
+ font-size: 20pt;
+ font-weight: bold;
+ margin: .2em;
+}
+
+.package-selector
+{
+ background-color: #CCCCCC;
+ border: 1px solid black;
+ color: blue;
+}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/I.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/I.png
new file mode 100755
index 00000000..e8512fb9
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/I.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/L.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/L.png
new file mode 100755
index 00000000..eb334eda
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/L.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/Lminus.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/Lminus.png
new file mode 100755
index 00000000..f7c43c0a
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/Lminus.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/Lplus.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/Lplus.png
new file mode 100755
index 00000000..848ec2fc
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/Lplus.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/T.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/T.png
new file mode 100755
index 00000000..30173254
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/T.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/Tminus.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/Tminus.png
new file mode 100755
index 00000000..2260e424
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/Tminus.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/Tplus.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/Tplus.png
new file mode 100755
index 00000000..2c8d8f4f
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/Tplus.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/blank.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/blank.png
new file mode 100755
index 00000000..cee9cd37
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/blank.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/empty.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/empty.png
new file mode 100755
index 00000000..d5683865
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/empty.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/minus.gif b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/minus.gif
new file mode 100644
index 00000000..f502662b
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/minus.gif
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/plus.gif b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/plus.gif
new file mode 100644
index 00000000..eeca02ce
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/images/plus.gif
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/lib/classTree.js b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/lib/classTree.js
new file mode 100755
index 00000000..ebb3fb4a
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/lib/classTree.js
@@ -0,0 +1,454 @@
+/*----------------------------------------\
+| Cross Browser Tree Widget 1.1 |
+|-----------------------------------------|
+| Created by Emil A. Eklund (eae@eae.net) |
+| For WebFX (http://webfx.eae.net/) |
+|-----------------------------------------|
+| This script is provided as is without |
+| any warranty whatsoever. It may be used |
+| free of charge for non commerical sites |
+| For commerical use contact the author |
+| of this script for further details. |
+|-----------------------------------------|
+| Created 2000-12-11 | Updated 2001-09-06 |
+\----------------------------------------*/
+
+var webFXTreeConfig = {
+ rootIcon : 'media/images/empty.png',
+ openRootIcon : 'media/images/empty.png',
+ folderIcon : 'media/images/empty.png',
+ openFolderIcon : 'media/images/empty.png',
+ fileIcon : 'media/images/empty.png',
+ iIcon : 'media/images/I.png',
+ lIcon : 'media/images/L.png',
+ lMinusIcon : 'media/images/Lminus.png',
+ lPlusIcon : 'media/images/Lplus.png',
+ tIcon : 'media/images/T.png',
+ tMinusIcon : 'media/images/Tminus.png',
+ tPlusIcon : 'media/images/Tplus.png',
+ blankIcon : 'media/images/blank.png',
+ defaultText : 'Tree Item',
+ defaultAction : 'javascript:void(0);',
+ defaultTarget : 'right',
+ defaultBehavior : 'classic'
+};
+
+var webFXTreeHandler = {
+ idCounter : 0,
+ idPrefix : "webfx-tree-object-",
+ all : {},
+ behavior : null,
+ selected : null,
+ getId : function() { return this.idPrefix + this.idCounter++; },
+ toggle : function (oItem) { this.all[oItem.id.replace('-plus','')].toggle(); },
+ select : function (oItem) { this.all[oItem.id.replace('-icon','')].select(); },
+ focus : function (oItem) { this.all[oItem.id.replace('-anchor','')].focus(); },
+ blur : function (oItem) { this.all[oItem.id.replace('-anchor','')].blur(); },
+ keydown : function (oItem) { return this.all[oItem.id].keydown(window.event.keyCode); },
+ cookies : new WebFXCookie()
+};
+
+/*
+ * WebFXCookie class
+ */
+
+function WebFXCookie() {
+ if (document.cookie.length) { this.cookies = ' ' + document.cookie; }
+}
+
+WebFXCookie.prototype.setCookie = function (key, value) {
+ document.cookie = key + "=" + escape(value);
+}
+
+WebFXCookie.prototype.getCookie = function (key) {
+ if (this.cookies) {
+ var start = this.cookies.indexOf(' ' + key + '=');
+ if (start == -1) { return null; }
+ var end = this.cookies.indexOf(";", start);
+ if (end == -1) { end = this.cookies.length; }
+ end -= start;
+ var cookie = this.cookies.substr(start,end);
+ return unescape(cookie.substr(cookie.indexOf('=') + 1, cookie.length - cookie.indexOf('=') + 1));
+ }
+ else { return null; }
+}
+
+/*
+ * WebFXTreeAbstractNode class
+ */
+
+function WebFXTreeAbstractNode(sText, sAction, sTarget) {
+ this.childNodes = [];
+ this.id = webFXTreeHandler.getId();
+ this.text = sText || webFXTreeConfig.defaultText;
+ this.action = sAction || webFXTreeConfig.defaultAction;
+ this.targetWindow = sTarget || webFXTreeConfig.defaultTarget;
+ this._last = false;
+ webFXTreeHandler.all[this.id] = this;
+}
+
+WebFXTreeAbstractNode.prototype.add = function (node) {
+ node.parentNode = this;
+ this.childNodes[this.childNodes.length] = node;
+ var root = this;
+ if (this.childNodes.length >=2) {
+ this.childNodes[this.childNodes.length -2]._last = false;
+ }
+ while (root.parentNode) { root = root.parentNode; }
+ if (root.rendered) {
+ if (this.childNodes.length >= 2) {
+ document.getElementById(this.childNodes[this.childNodes.length -2].id + '-plus').src = ((this.childNodes[this.childNodes.length -2].folder)?webFXTreeConfig.tMinusIcon:webFXTreeConfig.tIcon);
+ if (this.childNodes[this.childNodes.length -2].folder) {
+ this.childNodes[this.childNodes.length -2].plusIcon = webFXTreeConfig.tPlusIcon;
+ this.childNodes[this.childNodes.length -2].minusIcon = webFXTreeConfig.tMinusIcon;
+ }
+ this.childNodes[this.childNodes.length -2]._last = false;
+ }
+ this._last = true;
+ var foo = this;
+ while (foo.parentNode) {
+ for (var i = 0; i < foo.parentNode.childNodes.length; i++) {
+ if (foo.id == foo.parentNode.childNodes[i].id) { break; }
+ }
+ if (++i == foo.parentNode.childNodes.length) { foo.parentNode._last = true; }
+ else { foo.parentNode._last = false; }
+ foo = foo.parentNode;
+ }
+ document.getElementById(this.id + '-cont').insertAdjacentHTML("beforeEnd", node.toString());
+ if ((!this.folder) && (!this.openIcon)) {
+ this.icon = webFXTreeConfig.folderIcon;
+ this.openIcon = webFXTreeConfig.openFolderIcon;
+ }
+ this.folder = true;
+ this.indent();
+ this.expand();
+ }
+ return node;
+}
+
+WebFXTreeAbstractNode.prototype.toggle = function() {
+ if (this.folder) {
+ if (this.open) { this.collapse(); }
+ else { this.expand(); }
+ }
+}
+
+WebFXTreeAbstractNode.prototype.select = function() {
+ document.getElementById(this.id + '-anchor').focus();
+}
+
+WebFXTreeAbstractNode.prototype.focus = function() {
+ webFXTreeHandler.selected = this;
+ if ((this.openIcon) && (webFXTreeHandler.behavior != 'classic')) { document.getElementById(this.id + '-icon').src = this.openIcon; }
+ document.getElementById(this.id + '-anchor').style.backgroundColor = 'highlight';
+ document.getElementById(this.id + '-anchor').style.color = 'highlighttext';
+ document.getElementById(this.id + '-anchor').focus();
+}
+
+WebFXTreeAbstractNode.prototype.blur = function() {
+ if ((this.openIcon) && (webFXTreeHandler.behavior != 'classic')) { document.getElementById(this.id + '-icon').src = this.icon; }
+ document.getElementById(this.id + '-anchor').style.backgroundColor = 'transparent';
+ document.getElementById(this.id + '-anchor').style.color = 'menutext';
+}
+
+WebFXTreeAbstractNode.prototype.doExpand = function() {
+ if (webFXTreeHandler.behavior == 'classic') { document.getElementById(this.id + '-icon').src = this.openIcon; }
+ if (this.childNodes.length) { document.getElementById(this.id + '-cont').style.display = 'block'; }
+ this.open = true;
+ webFXTreeHandler.cookies.setCookie(this.id.substr(18,this.id.length - 18), '1');
+}
+
+WebFXTreeAbstractNode.prototype.doCollapse = function() {
+ if (webFXTreeHandler.behavior == 'classic') { document.getElementById(this.id + '-icon').src = this.icon; }
+ if (this.childNodes.length) { document.getElementById(this.id + '-cont').style.display = 'none'; }
+ this.open = false;
+ webFXTreeHandler.cookies.setCookie(this.id.substr(18,this.id.length - 18), '0');
+}
+
+WebFXTreeAbstractNode.prototype.expandAll = function() {
+ this.expandChildren();
+ if ((this.folder) && (!this.open)) { this.expand(); }
+}
+
+WebFXTreeAbstractNode.prototype.expandChildren = function() {
+ for (var i = 0; i < this.childNodes.length; i++) {
+ this.childNodes[i].expandAll();
+} }
+
+WebFXTreeAbstractNode.prototype.collapseAll = function() {
+ if ((this.folder) && (this.open)) { this.collapse(); }
+ this.collapseChildren();
+}
+
+WebFXTreeAbstractNode.prototype.collapseChildren = function() {
+ for (var i = 0; i < this.childNodes.length; i++) {
+ this.childNodes[i].collapseAll();
+} }
+
+WebFXTreeAbstractNode.prototype.indent = function(lvl, del, last, level) {
+ /*
+ * Since we only want to modify items one level below ourself,
+ * and since the rightmost indentation position is occupied by
+ * the plus icon we set this to -2
+ */
+ if (lvl == null) { lvl = -2; }
+ var state = 0;
+ for (var i = this.childNodes.length - 1; i >= 0 ; i--) {
+ state = this.childNodes[i].indent(lvl + 1, del, last, level);
+ if (state) { return; }
+ }
+ if (del) {
+ if (level >= this._level) {
+ if (this.folder) {
+ document.getElementById(this.id + '-plus').src = (this.open)?webFXTreeConfig.lMinusIcon:webFXTreeConfig.lPlusIcon;
+ this.plusIcon = webFXTreeConfig.lPlusIcon;
+ this.minusIcon = webFXTreeConfig.lMinusIcon;
+ }
+ else { document.getElementById(this.id + '-plus').src = webFXTreeConfig.lIcon; }
+ return 1;
+ }
+ }
+ var foo = document.getElementById(this.id + '-indent-' + lvl);
+ if (foo) {
+ if ((del) && (last)) { foo._last = true; }
+ if (foo._last) { foo.src = webFXTreeConfig.blankIcon; }
+ else { foo.src = webFXTreeConfig.iIcon; }
+ }
+ return 0;
+}
+
+/*
+ * WebFXTree class
+ */
+
+function WebFXTree(sText, sAction, sBehavior, sIcon, sOpenIcon) {
+ this.base = WebFXTreeAbstractNode;
+ this.base(sText, sAction);
+ this.icon = sIcon || webFXTreeConfig.rootIcon;
+ this.openIcon = sOpenIcon || webFXTreeConfig.openRootIcon;
+ /* Defaults to open */
+ this.open = (webFXTreeHandler.cookies.getCookie(this.id.substr(18,this.id.length - 18)) == '0')?false:true;
+ this.folder = true;
+ this.rendered = false;
+ if (!webFXTreeHandler.behavior) { webFXTreeHandler.behavior = sBehavior || webFXTreeConfig.defaultBehavior; }
+ this.targetWindow = 'right';
+}
+
+WebFXTree.prototype = new WebFXTreeAbstractNode;
+
+WebFXTree.prototype.setBehavior = function (sBehavior) {
+ webFXTreeHandler.behavior = sBehavior;
+};
+
+WebFXTree.prototype.getBehavior = function (sBehavior) {
+ return webFXTreeHandler.behavior;
+};
+
+WebFXTree.prototype.getSelected = function() {
+ if (webFXTreeHandler.selected) { return webFXTreeHandler.selected; }
+ else { return null; }
+}
+
+WebFXTree.prototype.remove = function() { }
+
+WebFXTree.prototype.expand = function() {
+ this.doExpand();
+}
+
+WebFXTree.prototype.collapse = function() {
+ this.focus();
+ this.doCollapse();
+}
+
+WebFXTree.prototype.getFirst = function() {
+ return null;
+}
+
+WebFXTree.prototype.getLast = function() {
+ return null;
+}
+
+WebFXTree.prototype.getNextSibling = function() {
+ return null;
+}
+
+WebFXTree.prototype.getPreviousSibling = function() {
+ return null;
+}
+
+WebFXTree.prototype.keydown = function(key) {
+ if (key == 39) { this.expand(); return false; }
+ if (key == 37) { this.collapse(); return false; }
+ if ((key == 40) && (this.open)) { this.childNodes[0].select(); return false; }
+ return true;
+}
+
+WebFXTree.prototype.toString = function() {
+ var str = "<div id=\"" + this.id + "\" ondblclick=\"webFXTreeHandler.toggle(this);\" class=\"webfx-tree-item\" onkeydown=\"return webFXTreeHandler.keydown(this)\">";
+ str += "<img id=\"" + this.id + "-icon\" class=\"webfx-tree-icon\" src=\"" + ((webFXTreeHandler.behavior == 'classic' && this.open)?this.openIcon:this.icon) + "\" onclick=\"webFXTreeHandler.select(this);\"><a href=\"" + this.action + "\" id=\"" + this.id + "-anchor\" target=\"" + this.targetWindow + "\" onfocus=\"webFXTreeHandler.focus(this);\" onblur=\"webFXTreeHandler.blur(this);\">" + this.text + "</a></div>";
+ str += "<div id=\"" + this.id + "-cont\" class=\"webfx-tree-container\" style=\"display: " + ((this.open)?'block':'none') + ";\">";
+ for (var i = 0; i < this.childNodes.length; i++) {
+ str += this.childNodes[i].toString(i, this.childNodes.length);
+ }
+ str += "</div>";
+ this.rendered = true;
+ return str;
+};
+
+/*
+ * WebFXTreeItem class
+ */
+
+function WebFXTreeItem(sText, sAction, eParent, sIcon, sOpenIcon) {
+ this.base = WebFXTreeAbstractNode;
+ this.base(sText, sAction);
+ /* Defaults to close */
+ this.open = (webFXTreeHandler.cookies.getCookie(this.id.substr(18,this.id.length - 18)) == '1')?true:false;
+ if (eParent) { eParent.add(this); }
+ if (sIcon) { this.icon = sIcon; }
+ if (sOpenIcon) { this.openIcon = sOpenIcon; }
+}
+
+WebFXTreeItem.prototype = new WebFXTreeAbstractNode;
+
+WebFXTreeItem.prototype.remove = function() {
+ var parentNode = this.parentNode;
+ var prevSibling = this.getPreviousSibling(true);
+ var nextSibling = this.getNextSibling(true);
+ var folder = this.parentNode.folder;
+ var last = ((nextSibling) && (nextSibling.parentNode) && (nextSibling.parentNode.id == parentNode.id))?false:true;
+ this.getPreviousSibling().focus();
+ this._remove();
+ if (parentNode.childNodes.length == 0) {
+ parentNode.folder = false;
+ parentNode.open = false;
+ }
+ if (last) {
+ if (parentNode.id == prevSibling.id) {
+ document.getElementById(parentNode.id + '-icon').src = webFXTreeConfig.fileIcon;
+ }
+ else { }
+ }
+ if ((!prevSibling.parentNode) || (prevSibling.parentNode != parentNode)) {
+ parentNode.indent(null, true, last, this._level);
+ }
+ if (document.getElementById(prevSibling.id + '-plus')) {
+ if (nextSibling) {
+ if ((parentNode == prevSibling) && (parentNode.getNextSibling)) { document.getElementById(prevSibling.id + '-plus').src = webFXTreeConfig.tIcon; }
+ else if (nextSibling.parentNode != prevSibling) { document.getElementById(prevSibling.id + '-plus').src = webFXTreeConfig.lIcon; }
+ }
+ else { document.getElementById(prevSibling.id + '-plus').src = webFXTreeConfig.lIcon; }
+ }
+}
+
+WebFXTreeItem.prototype._remove = function() {
+ for (var i = this.childNodes.length - 1; i >= 0; i--) {
+ this.childNodes[i]._remove();
+ }
+ for (var i = 0; i < this.parentNode.childNodes.length; i++) {
+ if (this.id == this.parentNode.childNodes[i].id) {
+ for (var j = i; j < this.parentNode.childNodes.length; j++) {
+ this.parentNode.childNodes[i] = this.parentNode.childNodes[i+1]
+ }
+ this.parentNode.childNodes.length = this.parentNode.childNodes.length - 1;
+ if (i + 1 == this.parentNode.childNodes.length) { this.parentNode._last = true; }
+ }
+ }
+ webFXTreeHandler.all[this.id] = null;
+ if (document.getElementById(this.id)) {
+ document.getElementById(this.id).innerHTML = "";
+ document.getElementById(this.id).removeNode();
+ }
+}
+
+WebFXTreeItem.prototype.expand = function() {
+ this.doExpand();
+ document.getElementById(this.id + '-plus').src = this.minusIcon;
+}
+
+WebFXTreeItem.prototype.collapse = function() {
+ this.focus();
+ this.doCollapse();
+ document.getElementById(this.id + '-plus').src = this.plusIcon;
+}
+
+WebFXTreeItem.prototype.getFirst = function() {
+ return this.childNodes[0];
+}
+
+WebFXTreeItem.prototype.getLast = function() {
+ if (this.childNodes[this.childNodes.length - 1].open) { return this.childNodes[this.childNodes.length - 1].getLast(); }
+ else { return this.childNodes[this.childNodes.length - 1]; }
+}
+
+WebFXTreeItem.prototype.getNextSibling = function() {
+ for (var i = 0; i < this.parentNode.childNodes.length; i++) {
+ if (this == this.parentNode.childNodes[i]) { break; }
+ }
+ if (++i == this.parentNode.childNodes.length) { return this.parentNode.getNextSibling(); }
+ else { return this.parentNode.childNodes[i]; }
+}
+
+WebFXTreeItem.prototype.getPreviousSibling = function(b) {
+ for (var i = 0; i < this.parentNode.childNodes.length; i++) {
+ if (this == this.parentNode.childNodes[i]) { break; }
+ }
+ if (i == 0) { return this.parentNode; }
+ else {
+ if ((this.parentNode.childNodes[--i].open) || (b && this.parentNode.childNodes[i].folder)) { return this.parentNode.childNodes[i].getLast(); }
+ else { return this.parentNode.childNodes[i]; }
+} }
+
+WebFXTreeItem.prototype.keydown = function(key) {
+ if ((key == 39) && (this.folder)) {
+ if (!this.open) { this.expand(); return false; }
+ else { this.getFirst().select(); return false; }
+ }
+ else if (key == 37) {
+ if (this.open) { this.collapse(); return false; }
+ else { this.parentNode.select(); return false; }
+ }
+ else if (key == 40) {
+ if (this.open) { this.getFirst().select(); return false; }
+ else {
+ var sib = this.getNextSibling();
+ if (sib) { sib.select(); return false; }
+ } }
+ else if (key == 38) { this.getPreviousSibling().select(); return false; }
+ return true;
+}
+
+WebFXTreeItem.prototype.toString = function (nItem, nItemCount) {
+ var foo = this.parentNode;
+ var indent = '';
+ if (nItem + 1 == nItemCount) { this.parentNode._last = true; }
+ var i = 0;
+ while (foo.parentNode) {
+ foo = foo.parentNode;
+ indent = "<img id=\"" + this.id + "-indent-" + i + "\" src=\"" + ((foo._last)?webFXTreeConfig.blankIcon:webFXTreeConfig.iIcon) + "\">" + indent;
+ i++;
+ }
+ this._level = i;
+ if (this.childNodes.length) { this.folder = 1; }
+ else { this.open = false; }
+ if ((this.folder) || (webFXTreeHandler.behavior != 'classic')) {
+ if (!this.icon) { this.icon = webFXTreeConfig.folderIcon; }
+ if (!this.openIcon) { this.openIcon = webFXTreeConfig.openFolderIcon; }
+ }
+ else if (!this.icon) { this.icon = webFXTreeConfig.fileIcon; }
+ var label = this.text;
+ label = label.replace('<', '<');
+ label = label.replace('>', '>');
+ var str = "<div id=\"" + this.id + "\" ondblclick=\"webFXTreeHandler.toggle(this);\" class=\"webfx-tree-item\" onkeydown=\"return webFXTreeHandler.keydown(this)\">";
+ str += indent;
+ str += "<img id=\"" + this.id + "-plus\" src=\"" + ((this.folder)?((this.open)?((this.parentNode._last)?webFXTreeConfig.lMinusIcon:webFXTreeConfig.tMinusIcon):((this.parentNode._last)?webFXTreeConfig.lPlusIcon:webFXTreeConfig.tPlusIcon)):((this.parentNode._last)?webFXTreeConfig.lIcon:webFXTreeConfig.tIcon)) + "\" onclick=\"webFXTreeHandler.toggle(this);\">"
+ str += "<img id=\"" + this.id + "-icon\" src=\"" + ((webFXTreeHandler.behavior == 'classic' && this.open)?this.openIcon:this.icon) + "\" onclick=\"webFXTreeHandler.select(this);\"><a href=\"" + this.action + "\" id=\"" + this.id + "-anchor\" target=\"" + this.targetWindow + "\" onfocus=\"webFXTreeHandler.focus(this);\" onblur=\"webFXTreeHandler.blur(this);\">" + label + "</a></div>";
+ str += "<div id=\"" + this.id + "-cont\" class=\"webfx-tree-container\" style=\"display: " + ((this.open)?'block':'none') + ";\">";
+ for (var i = 0; i < this.childNodes.length; i++) {
+ str += this.childNodes[i].toString(i,this.childNodes.length);
+ }
+ str += "</div>";
+ this.plusIcon = ((this.parentNode._last)?webFXTreeConfig.lPlusIcon:webFXTreeConfig.tPlusIcon);
+ this.minusIcon = ((this.parentNode._last)?webFXTreeConfig.lMinusIcon:webFXTreeConfig.tMinusIcon);
+ return str;
+} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/stylesheet.css b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/stylesheet.css
new file mode 100755
index 00000000..3f546dc5
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/media/stylesheet.css
@@ -0,0 +1,184 @@
+a { color: #0000FF; text-decoration: none; }
+a:hover { color: #FF0000; text-decoration: underline; }
+a:active { color: #FF0000; text-decoration: underline; }
+
+body { background-color: #EEEEEE; font-family: Verdana, Arial, sans-serif }
+body, table { font-size: 10pt }
+a img { border: 0px; }
+dd { margin-left: 0px; padding-left: 1em; }
+
+/* Page layout/boxes */
+
+.info-box {}
+.info-box-title { margin: 1em 0em 0em 0em; padding: .25em; font-weight: normal; font-size: 14pt; border: 2px solid #999999; background-color: #DDDDDD }
+.info-box-body { border: 1px solid #999999; padding: .5em; background-color: #F8F8F8; }
+.nav-bar { font-size: 8pt; white-space: nowrap; text-align: right; padding: .2em; margin: 0em 0em 1em 0em; }
+
+.oddrow { background-color: #DDDDDD; border: 1px solid #999999; padding: .5em; margin-bottom: 1em}
+.evenrow { background-color: #DDDDDD; border: 1px solid #999999; padding: .5em; margin-bottom: 1em}
+
+.page-body { max-width: 800px; margin: auto; }
+.tree { }
+
+/* Index formatting classes */
+
+.index-item-body { margin-top: .5em; margin-bottom: .5em}
+.index-item-description { margin-top: .25em }
+.index-item-details { font-weight: normal; font-style: italic; font-size: 8pt }
+.index-letter-section { background-color: #EEEEEE; border: 1px dotted #999999; padding: .5em; margin-bottom: 1em}
+.index-letter-title { font-size: 12pt; font-weight: bold }
+.index-letter-menu { text-align: center; margin: 1em }
+.index-letter { font-size: 12pt }
+
+/* Docbook classes */
+
+.description {}
+.short-description { font-weight: bold; color: #666666; }
+.tags { padding-left: 0em; margin-left: 3em; color: #666666; list-style-type: square; }
+.parameters { padding-left: 0em; margin-left: 3em; font-style: italic; list-style-type: square; }
+.redefinitions { font-size: 8pt; padding-left: 0em; margin-left: 2em; }
+.package { }
+.package-title { font-weight: bold; font-size: 14pt; border-bottom: 1px solid black }
+.package-details { font-size: 85%; }
+.sub-package { font-weight: bold; font-size: 120% }
+.tutorial { border-width: thin; border-color: #0066ff }
+.tutorial-nav-box { width: 100%; border: 2px solid #999999; background-color: #DDDDDD }
+.nav-button-disabled { color: #999999; }
+.nav-button:active,
+.nav-button:focus,
+.nav-button:hover { background-color: #AAAAAA; outline: 1px solid #666666; text-decoration: none }
+.folder-title { font-style: italic }
+
+/* Generic formatting */
+
+.field { font-weight: bold; }
+.detail { font-size: 8pt; }
+.notes { font-style: italic; font-size: 8pt; }
+.separator { background-color: #999999; height: 2px; }
+.warning { color: #FF6600; }
+.disabled { font-style: italic; color: #999999; }
+
+/* Code elements */
+
+.line-number { }
+
+.class-table { width: 100%; }
+.class-table-header { border-bottom: 1px dotted #666666; text-align: left}
+.class-name { color: #000000; font-weight: bold; }
+
+.method-summary { padding-left: 1em; font-size: 8pt }
+.method-header { }
+.method-definition { margin-bottom: .3em }
+.method-title { font-weight: bold; }
+.method-name { font-weight: bold; }
+.method-signature { font-size: 85%; color: #0066BB; margin: .5em 0em }
+.method-result { font-style: italic; }
+
+.var-summary { padding-left: 1em; font-size: 8pt; }
+.var-header { }
+.var-title { margin-bottom: .3em }
+.var-type { color: red; font-weight: bold }
+.var-name { font-weight: bold; }
+.var-default {}
+.var-description { font-weight: normal; color: #000000; }
+
+.include-title { }
+.include-type { font-style: italic; }
+.include-name { font-weight: bold; }
+
+.const-title { }
+.const-name { font-weight: bold; }
+
+/* Syntax highlighting */
+
+.src-code { border: 1px solid #336699; padding: 1em; background-color: #EEEEEE;
+ font-family: 'Courier New', Courier, monospace; font-weight: normal; }
+.src-line { font-family: 'Courier New', Courier, monospace; font-weight: normal; }
+
+.src-comm { color: #666666; }
+.src-id { }
+.src-inc { color: #0000FF; }
+.src-key { color: #0000FF; }
+.src-num { color: #CC0000; }
+.src-str { color: #66cccc; }
+.src-sym { font-weight: bold; }
+.src-var { }
+
+.src-php { font-weight: bold; }
+
+.src-doc { color: #009999 }
+.src-doc-close-template { color: #0000FF }
+.src-doc-coretag { color: #0099FF; font-weight: bold }
+.src-doc-inlinetag { color: #0099FF }
+.src-doc-internal { color: #6699cc }
+.src-doc-tag { color: #0080CC }
+.src-doc-template { color: #0000FF }
+.src-doc-type { font-style: italic }
+.src-doc-var { font-style: italic }
+
+.tute-tag { color: #009999 }
+.tute-attribute-name { color: #0000FF }
+.tute-attribute-value { color: #0099FF }
+.tute-entity { font-weight: bold; }
+.tute-comment { font-style: italic }
+.tute-inline-tag { color: #636311; font-weight: bold }
+
+/* tutorial */
+
+.authors { }
+.author { font-style: italic; font-weight: bold }
+.author-blurb { margin: .5em 0em .5em 2em; font-size: 85%; font-weight: normal; font-style: normal }
+.example { background-color: #DDDDDD; border: 1px solid #999999; padding: .5em; }
+.listing { background-color: #DDDDDD; border: 1px solid #999999; padding: .5em; white-space: nowrap; }
+.release-info { font-size: 85%; font-style: italic; margin: 1em 0em }
+.ref-title-box { }
+.ref-title { }
+.ref-purpose { font-style: italic; color: #666666 }
+.ref-synopsis { }
+.title { font-weight: bold; border-bottom: 1px solid #888888; color: #888888; }
+.cmd-synopsis { margin: 1em 0em }
+.cmd-title { font-weight: bold }
+.toc { margin-left: 2em; padding-left: 0em }
+
+/*------------------------------------------------------------------------------
+ webfx-tree
+------------------------------------------------------------------------------*/
+
+.webfx-tree-container {
+ margin: 0px;
+ padding: 0px;
+ white-space: nowrap;
+ font: icon;
+}
+
+.webfx-tree-item {
+ padding: 0px;
+ margin: 0px;
+ color: black;
+ white-space: nowrap;
+ font: icon;
+}
+
+.webfx-tree-item a {
+ margin-left: 3px;
+ padding: 1px 2px 1px 2px;
+ color: black;
+ text-decoration: none;
+}
+
+.webfx-tree-item a:hover, .webfx-tree-item a:active {
+ color: white;
+ background: red;
+ text-decoration: none
+}
+
+.webfx-tree-item img {
+ vertical-align: middle;
+ border: 0px;
+}
+
+.webfx-tree-icon {
+ width: 16px;
+ height: 16px;
+}
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/method.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/method.tpl
new file mode 100755
index 00000000..06d57a12
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/method.tpl
@@ -0,0 +1,149 @@
+<A NAME='method_detail'></A>
+{section name=methods loop=$methods}
+{if $methods[methods].static}
+<a name="method{$methods[methods].function_name}" id="{$methods[methods].function_name}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="method-header">
+ <span class="method-title">static {$methods[methods].function_name}</span> (line <span class="line-number">{if $methods[methods].slink}{$methods[methods].slink}{else}{$methods[methods].line_number}{/if}</span>)
+ </div>
+
+ {include file="docblock.tpl" sdesc=$methods[methods].sdesc desc=$methods[methods].desc tags=$methods[methods].tags params=$methods[methods].params function=false}
+
+ <div class="method-signature">
+ static <span class="method-result">{$methods[methods].function_return}</span>
+ <span class="method-name">
+ {if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}
+ </span>
+ {if count($methods[methods].ifunction_call.params)}
+ ({section name=params loop=$methods[methods].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$methods[methods].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$methods[methods].ifunction_call.params[params].name}</span>{if $methods[methods].ifunction_call.params[params].hasdefault} = <span class="var-default">{$methods[methods].ifunction_call.params[params].default}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+
+ {if $methods[methods].params}
+ <ul class="parameters">
+ {section name=params loop=$methods[methods].params}
+ <li>
+ <span class="var-type">{$methods[methods].params[params].datatype}</span>
+ <span class="var-name">{$methods[methods].params[params].var}</span>{if $methods[methods].params[params].data}<span class="var-description">: {$methods[methods].params[params].data}</span>{/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+ {if $methods[methods].method_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$methods[methods].method_overrides.link}</dt>
+ {if $methods[methods].method_overrides.sdesc}
+ <dd>{$methods[methods].method_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+ {if $methods[methods].method_implements}
+ <hr class="separator" />
+ <div class="notes">Implementation of:</div>
+ {section name=imp loop=$methods[methods].method_implements}
+ <dl>
+ <dt>{$methods[methods].method_implements[imp].link}</dt>
+ {if $methods[methods].method_implements[imp].sdesc}
+ <dd>{$methods[methods].method_implements[imp].sdesc}</dd>
+ {/if}
+ </dl>
+ {/section}
+ {/if}
+
+ {if $methods[methods].descmethod}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=dm loop=$methods[methods].descmethod}
+ <li>
+ {$methods[methods].descmethod[dm].link}
+ {if $methods[methods].descmethod[dm].sdesc}
+ : {$methods[methods].descmethod[dm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+</div>
+{/if}
+{/section}
+{section name=methods loop=$methods}
+{if !$methods[methods].static}
+<a name="method{$methods[methods].function_name}" id="{$methods[methods].function_name}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="method-header">
+ <span class="method-title">{if $methods[methods].ifunction_call.constructor}Constructor {elseif $methods[methods].ifunction_call.destructor}Destructor {/if}{$methods[methods].function_name}</span> (line <span class="line-number">{if $methods[methods].slink}{$methods[methods].slink}{else}{$methods[methods].line_number}{/if}</span>)
+ </div>
+
+ {include file="docblock.tpl" sdesc=$methods[methods].sdesc desc=$methods[methods].desc tags=$methods[methods].tags params=$methods[methods].params function=false}
+
+ <div class="method-signature">
+ <span class="method-result">{$methods[methods].function_return}</span>
+ <span class="method-name">
+ {if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}
+ </span>
+ {if count($methods[methods].ifunction_call.params)}
+ ({section name=params loop=$methods[methods].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$methods[methods].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$methods[methods].ifunction_call.params[params].name}</span>{if $methods[methods].ifunction_call.params[params].hasdefault} = <span class="var-default">{$methods[methods].ifunction_call.params[params].default}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+
+ {if $methods[methods].params}
+ <ul class="parameters">
+ {section name=params loop=$methods[methods].params}
+ <li>
+ <span class="var-type">{$methods[methods].params[params].datatype}</span>
+ <span class="var-name">{$methods[methods].params[params].var}</span>{if $methods[methods].params[params].data}<span class="var-description">: {$methods[methods].params[params].data}</span>{/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+ {if $methods[methods].method_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$methods[methods].method_overrides.link}</dt>
+ {if $methods[methods].method_overrides.sdesc}
+ <dd>{$methods[methods].method_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+ {if $methods[methods].method_implements}
+ <hr class="separator" />
+ <div class="notes">Implementation of:</div>
+ {section name=imp loop=$methods[methods].method_implements}
+ <dl>
+ <dt>{$methods[methods].method_implements[imp].link}</dt>
+ {if $methods[methods].method_implements[imp].sdesc}
+ <dd>{$methods[methods].method_implements[imp].sdesc}</dd>
+ {/if}
+ </dl>
+ {/section}
+ {/if}
+
+ {if $methods[methods].descmethod}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=dm loop=$methods[methods].descmethod}
+ <li>
+ {$methods[methods].descmethod[dm].link}
+ {if $methods[methods].descmethod[dm].sdesc}
+ : {$methods[methods].descmethod[dm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+</div>
+{/if}
+{/section}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/page.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/page.tpl
new file mode 100755
index 00000000..b5980236
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/page.tpl
@@ -0,0 +1,211 @@
+{include file="header.tpl" top3=true}
+
+<h2 class="file-name">{$source_location}</h2>
+
+<a name="sec-description"></a>
+<div class="info-box">
+ <div class="info-box-title">Description</div>
+ <div class="nav-bar">
+ {if $classes || $includes || $defines || $globals || $functions}
+ <span class="disabled">Description</span> |
+ {/if}
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="docblock.tpl" desc=$desc sdesc=$sdesc tags=$tags}
+
+ {if $tutorial}
+ <hr class="separator" />
+ <div class="notes">Tutorial: <span class="tutorial">{$tutorial}</div>
+ {/if}
+ </div>
+</div>
+
+{if $classes}
+ <a name="sec-classes"></a>
+ <div class="info-box">
+ <div class="info-box-title">Classes</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ <span class="disabled">Classes</span>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <table cellpadding="2" cellspacing="0" class="class-table">
+ <tr>
+ <th class="class-table-header">Class</th>
+ <th class="class-table-header">Description</th>
+ </tr>
+ {section name=classes loop=$classes}
+ <tr>
+ <td style="padding-right: 2em; vertical-align: top">
+ {$classes[classes].link}
+ </td>
+ <td>
+ {if $classes[classes].sdesc}
+ {$classes[classes].sdesc}
+ {else}
+ {$classes[classes].desc}
+ {/if}
+ </td>
+ </tr>
+ {/section}
+ </table>
+ </div>
+ </div>
+{/if}
+
+{if $includes}
+ <a name="sec-includes"></a>
+ <div class="info-box">
+ <div class="info-box-title">Includes</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ <span class="disabled">Includes</span>
+ {if $defines || $globals || $functions}|{/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="include.tpl"}
+ </div>
+ </div>
+{/if}
+
+{if $defines}
+ <a name="sec-constants"></a>
+ <div class="info-box">
+ <div class="info-box-title">Constants</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ <span class="disabled">Constants</span>
+ {if $globals || $functions}|{/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="define.tpl"}
+ </div>
+ </div>
+{/if}
+
+{if $globals}
+ <a name="sec-variables"></a>
+ <div class="info-box">
+ <div class="info-box-title">Variables</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ <span class="disabled">Variables</span>
+ {if $functions}|{/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="global.tpl"}
+ </div>
+ </div>
+{/if}
+
+{if $functions}
+ <a name="sec-functions"></a>
+ <div class="info-box">
+ <div class="info-box-title">Functions</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ <span class="disabled">Functions</span>
+ </div>
+ <div class="info-box-body">
+ {include file="function.tpl"}
+ </div>
+ </div>
+{/if}
+
+{include file="footer.tpl" top3=true}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/pkgelementindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/pkgelementindex.tpl
new file mode 100755
index 00000000..dc283ad0
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/pkgelementindex.tpl
@@ -0,0 +1,17 @@
+{include file="header.tpl"}
+<a name="top"></a>
+<h2>[{$package}] element index</h2>
+{if count($packageindex) > 1}
+ <h3>Package indexes</h3>
+ <ul>
+ {section name=p loop=$packageindex}
+ {if $packageindex[p].title != $package}
+ <li><a href="elementindex_{$packageindex[p].title}.html">{$packageindex[p].title}</a></li>
+ {/if}
+ {/section}
+ </ul>
+{/if}
+<a href="elementindex.html">All elements</a>
+<br />
+{include file="basicindex.tpl" indexname=elementindex_$package}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/ric.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/ric.tpl
new file mode 100755
index 00000000..ad792475
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/ric.tpl
@@ -0,0 +1,6 @@
+{include file="header.tpl"}
+<div align="center"><h1>{$name}</h1></div>
+<pre>
+{$contents|htmlentities}
+</pre>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/todolist.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/todolist.tpl
new file mode 100755
index 00000000..f929ccdb
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/todolist.tpl
@@ -0,0 +1,14 @@
+{include file="header.tpl" title="Todo List"}
+<div align="center"><h1>Todo List</h1></div>
+{foreach from=$todos key=todopackage item=todo}
+<h2>{$todopackage}</h2>
+{section name=todo loop=$todo}
+<h3>{$todo[todo].link}</h3>
+<ul>
+{section name=t loop=$todo[todo].todos}
+ <li>{$todo[todo].todos[t]}</li>
+{/section}
+</ul>
+{/section}
+{/foreach}
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/top_frame.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/top_frame.tpl
new file mode 100755
index 00000000..36d1e5a1
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/top_frame.tpl
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+ <html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <!-- template designed by Marco Von Ballmoos -->
+ <title>{$title}</title>
+ <link rel="stylesheet" href="{$subdir}media/stylesheet.css" />
+ <link rel="stylesheet" href="{$subdir}media/banner.css" />
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+ </head>
+ <body>
+ <div class="banner">
+ <div class="banner-title">{$package}</div>
+ <div class="banner-menu">
+ <form>
+ <table cellpadding="0" cellspacing="0" style="width: 100%">
+ <tr>
+ <td>
+ {if count($ric) >= 1}
+ {assign var="last_ric_name" value=""}
+ {section name=ric loop=$ric}
+ {if $last_ric_name != ""} | {/if}
+ <a href="{$ric[ric].file}" target="right">{$ric[ric].name}</a>
+ {assign var="last_ric_name" value=$ric[ric].name}
+ {/section}
+ {/if}
+ </td>
+ <td style="width: 2em">&nbsp;</td>
+ <td style="text-align: right">
+ {if count($packages) > 1}
+ <span class="field">Packages</span>
+ <select class="package-selector" onchange="window.parent.left_bottom.location=this[selectedIndex].value">
+ {section name=p loop=$packages}
+ <option value="{$packages[p].link}">{$packages[p].title}</option>
+ {/section}
+ </select>
+ {/if}
+ </td>
+ </tr>
+ </table>
+ </form>
+ </div>
+ </div>
+ </body>
+ </html>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/tutorial.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/tutorial.tpl
new file mode 100755
index 00000000..3b9109d1
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/tutorial.tpl
@@ -0,0 +1,13 @@
+{include file="header.tpl" title=$title top3=true}
+
+{if $nav}
+ {include file="tutorial_nav.tpl" prev=$prev next=$next up=$up prevtitle=$prevtitle nexttitle=$nexttitle uptitle=$uptitle}
+{/if}
+
+{$contents}
+
+{if $nav}
+ {include file="tutorial_nav.tpl" prev=$prev next=$next up=$up prevtitle=$prevtitle nexttitle=$nexttitle uptitle=$uptitle}
+{/if}
+
+{include file="footer.tpl" top3=true} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/tutorial_nav.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/tutorial_nav.tpl
new file mode 100755
index 00000000..89952301
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/tutorial_nav.tpl
@@ -0,0 +1,41 @@
+<table class="tutorial-nav-box">
+ <tr>
+ <td style="width: 30%">
+ {if $prev}
+ <a href="{$prev}" class="nav-button">Previous</a>
+ {else}
+ <span class="nav-button-disabled">Previous</span>
+ {/if}
+ </td>
+ <td style="text-align: center">
+ {if $up}
+ <a href="{$up}" class="nav-button">Up</a>
+ {/if}
+ </td>
+ <td style="text-align: right; width: 30%">
+ {if $next}
+ <a href="{$next}" class="nav-button">Next</a>
+ {else}
+ <span class="nav-button-disabled">Next</span>
+ {/if}
+ </td>
+ </tr>
+ <tr>
+ <td style="width: 30%">
+ {if $prevtitle}
+ <span class="detail">{$prevtitle}</span>
+ {/if}
+ </td>
+ <td style="text-align: center">
+ {if $uptitle}
+ <span class="detail">{$uptitle}</span>
+ {/if}
+ </td>
+ <td style="text-align: right; width: 30%">
+ {if $nexttitle}
+ <span class="detail">{$nexttitle}</span>
+ {/if}
+ </td>
+ </tr>
+</table>
+ \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/tutorial_toc.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/tutorial_toc.tpl
new file mode 100755
index 00000000..3482249b
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/tutorial_toc.tpl
@@ -0,0 +1,40 @@
+{if count($toc)}
+<h1 class="title">Table of Contents</h1>
+<ul class="toc">
+ {assign var="lastcontext" value='refsect1'}
+ {section name=toc loop=$toc}
+
+ {if $toc[toc].tagname != $lastcontext}
+ {if $lastcontext == 'refsect1'}
+ <ul class="toc">
+ <li>{$toc[toc].link}</li>
+ {else}
+ {if $lastcontext == 'refsect2'}
+ {if $toc[toc].tagname == 'refsect1'}
+ </ul>
+ <li>{$toc[toc].link}</li>
+ {/if}
+ {if $toc[toc].tagname == 'refsect3'}
+ <ul class="toc">
+ <li>{$toc[toc].link}</li>
+ {/if}
+ {else}
+ </ul>
+ </ul>
+ <li>{$toc[toc].link}</li>
+ {/if}
+ {/if}
+ {assign var="lastcontext" value=$toc[toc].tagname}
+ {else}
+ <li>{$toc[toc].link}</li>
+ {/if}
+ {/section}
+ {if $lastcontext == 'refsect2'}
+ </ul>
+ {/if}
+ {if $lastcontext == 'refsect3'}
+ </ul>
+ </ul>
+ {/if}
+</ul>
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/tutorial_tree.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/tutorial_tree.tpl
new file mode 100755
index 00000000..40d9a4ff
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/tutorial_tree.tpl
@@ -0,0 +1,8 @@
+ var a{$name|replace:"-":"_"}node = new WebFXTreeItem('{$main.title|strip_tags|escape:"quotes"}','{$main.link}', parent_node);
+
+{if $haskids}
+ var a{$name|replace:"-":"_"}_old_parent_node = parent_node;
+ parent_node = a{$name|replace:"-":"_"}node;
+ {$kids}
+ parent_node = a{$name|replace:"-":"_"}_old_parent_node;
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/var.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/var.tpl
new file mode 100755
index 00000000..fccf6892
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/DOM/phphtmllib/templates/var.tpl
@@ -0,0 +1,92 @@
+{section name=vars loop=$vars}
+{if $vars[vars].static}
+<a name="var{$vars[vars].var_name}" id="{$vars[vars].var_name}"><!-- --></A>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="var-header">
+ <span class="var-title">
+ static <span class="var-type">{$vars[vars].var_type}</span>
+ <span class="var-name">{$vars[vars].var_name}</span>
+ {if $vars[vars].var_default} = <span class="var-default">{$vars[vars].var_default|replace:"\n":"<br />"}</span>{/if}
+ (line <span class="line-number">{if $vars[vars].slink}{$vars[vars].slink}{else}{$vars[vars].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$vars[vars].sdesc desc=$vars[vars].desc tags=$vars[vars].tags}
+
+ {if $vars[vars].var_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$vars[vars].var_overrides.link}</dt>
+ {if $vars[vars].var_overrides.sdesc}
+ <dd>{$vars[vars].var_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+
+ {if $vars[vars].descvar}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=vm loop=$vars[vars].descvar}
+ <li>
+ {$vars[vars].descvar[vm].link}
+ {if $vars[vars].descvar[vm].sdesc}
+ : {$vars[vars].descvar[vm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+</div>
+{/if}
+{/section}
+
+{section name=vars loop=$vars}
+{if !$vars[vars].static}
+<a name="var{$vars[vars].var_name}" id="{$vars[vars].var_name}"><!-- --></A>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="var-header">
+ <span class="var-title">
+ <span class="var-type">{$vars[vars].var_type}</span>
+ <span class="var-name">{$vars[vars].var_name}</span>
+ {if $vars[vars].var_default} = <span class="var-default">{$vars[vars].var_default|replace:"\n":"<br />"}</span>{/if}
+ (line <span class="line-number">{if $vars[vars].slink}{$vars[vars].slink}{else}{$vars[vars].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$vars[vars].sdesc desc=$vars[vars].desc tags=$vars[vars].tags}
+
+ {if $vars[vars].var_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$vars[vars].var_overrides.link}</dt>
+ {if $vars[vars].var_overrides.sdesc}
+ <dd>{$vars[vars].var_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+
+ {if $vars[vars].descvar}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=vm loop=$vars[vars].descvar}
+ <li>
+ {$vars[vars].descvar[vm].link}
+ {if $vars[vars].descvar[vm].sdesc}
+ : {$vars[vars].descvar[vm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+</div>
+{/if}
+{/section}
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/options.ini b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/options.ini
new file mode 100755
index 00000000..084809be
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/options.ini
@@ -0,0 +1,577 @@
+preservedocbooktags = false
+
+;; used to highlight the {@source} inline tag, @filesource tag, and @example tag
+[highlightSourceTokens]
+;; format:
+;; T_CONSTANTNAME = open
+;; /T_CONSTANTNAME = close
+
+T_INCLUDE = <span class="src-inc">
+/T_INCLUDE = </span>
+T_INCLUDE_ONCE = <span class="src-inc">
+/T_INCLUDE_ONCE = </span>
+T_REQUIRE_ONCE = <span class="src-inc">
+/T_REQUIRE_ONCE = </span>
+T_REQUIRE_ONCE = <span class="src-inc">
+/T_REQUIRE_ONCE = </span>
+
+T_CONSTANT_ENCAPSED_STRING = <span class="src-str">
+/T_CONSTANT_ENCAPSED_STRING = </span>
+T_STRING_VARNAME = <span class="src-str">
+/T_STRING_VARNAME = </span>
+
+T_STRING = <span class="src-id">
+/T_STRING = </span>
+
+T_DNUMBER = <span class="src-num">
+/T_DNUMBER = </span>
+T_LNUMBER = <span class="src-num">
+/T_LNUMBER = </span>
+
+T_VARIABLE = <span class="src-var">
+/T_VARIABLE = </span>
+
+T_COMMENT = <span class="src-comm">
+/T_COMMENT = </span>
+T_ML_COMMENT = <span class="src-comm">
+/T_ML_COMMENT = </span>
+
+T_OBJECT_OPERATOR = <span class="src-sym">
+/T_OBJECT_OPERATOR = </span>
+
+T_ABSTRACT = <span class="src-key">
+/T_ABSTRACT = </span>
+T_CLONE = <span class="src-key">
+/T_CLONE = </span>
+T_HALT_COMPILER = <span class="src-key">
+/T_HALT_COMPILER = </span>
+T_ARRAY = <span class="src-key">
+/T_ARRAY = </span>
+T_AS = <span class="src-key">
+/T_AS = </span>
+T_BREAK = <span class="src-key">
+/T_BREAK = </span>
+T_CLASS = <span class="src-key">
+/T_CLASS = </span>
+T_CASE = <span class="src-key">
+/T_CASE = </span>
+T_CONST = <span class="src-key">
+/T_CONST = </span>
+T_CONTINUE = <span class="src-key">
+/T_CONTINUE = </span>
+T_DECLARE = <span class="src-key">
+/T_DECLARE = </span>
+T_DEFAULT = <span class="src-key">
+/T_DEFAULT = </span>
+T_ELSE = <span class="src-key">
+/T_ELSE = </span>
+T_ELSEIF = <span class="src-key">
+/T_ELSEIF = </span>
+T_EMPTY = <span class="src-key">
+/T_EMPTY = </span>
+T_ENDDECLARE = <span class="src-key">
+/T_ENDDECLARE = </span>
+T_ENDFOR = <span class="src-key">
+/T_ENDFOR = </span>
+T_ENDSWITCH = <span class="src-key">
+/T_ENDSWITCH = </span>
+T_ENDFOREACH = <span class="src-key">
+/T_ENDFOREACH = </span>
+T_ENDIF = <span class="src-key">
+/T_ENDIF = </span>
+T_ENDWHILE = <span class="src-key">
+/T_ENDWHILE = </span>
+T_EXIT = <span class="src-key">
+/T_EXIT = </span>
+T_EXTENDS = <span class="src-key">
+/T_EXTENDS = </span>
+T_FINAL = <span class="src-key">
+/T_FINAL = </span>
+T_FOR = <span class="src-key">
+/T_FOR = </span>
+T_FOREACH = <span class="src-key">
+/T_FOREACH = </span>
+T_FUNCTION = <span class="src-key">
+/T_FUNCTION = </span>
+T_GLOBAL = <span class="src-key">
+/T_GLOBAL = </span>
+T_IF = <span class="src-key">
+/T_IF = </span>
+T_IMPLEMENTS = <span class="src-key">
+/T_IMPLEMENTS = </span>
+T_INTERFACE = <span class="src-key">
+/T_INTERFACE = </span>
+T_LOGICAL_AND = <span class="src-key">
+/T_LOGICAL_AND = </span>
+T_LOGICAL_OR = <span class="src-key">
+/T_LOGICAL_OR = </span>
+T_LOGICAL_XOR = <span class="src-key">
+/T_LOGICAL_XOR = </span>
+T_NEW = <span class="src-key">
+/T_NEW = </span>
+T_PRIVATE = <span class="src-key">
+/T_PRIVATE = </span>
+T_PROTECTED = <span class="src-key">
+/T_PROTECTED = </span>
+T_PUBLIC = <span class="src-key">
+/T_PUBLIC = </span>
+T_RETURN = <span class="src-key">
+/T_RETURN = </span>
+T_STATIC = <span class="src-key">
+/T_STATIC = </span>
+T_SWITCH = <span class="src-key">
+/T_SWITCH = </span>
+T_VAR = <span class="src-key">
+/T_VAR = </span>
+T_WHILE = <span class="src-key">
+/T_WHILE = </span>
+
+T_DOUBLE_COLON = <span class="src-sym">
+/T_DOUBLE_COLON = </span>
+
+T_OPEN_TAG = <span class="src-php">
+/T_OPEN_TAG = </span>
+T_OPEN_TAG_WITH_ECHO = <span class="src-php">
+/T_OPEN_TAG_WITH_ECHO = </span>
+T_CLOSE_TAG = <span class="src-php">
+/T_CLOSE_TAG = </span>
+
+
+[highlightSource]
+;; this is for highlighting things that aren't tokens like "&"
+;; format:
+;; word = open
+;; /word = close
+@ = <span class="src-sym">
+/@ = </span>
+& = <span class="src-sym">
+/& = </span>
+[ = <span class="src-sym">
+/[ = </span>
+] = <span class="src-sym">
+/] = </span>
+! = <span class="src-sym">
+/! = </span>
+";" = <span class="src-sym">
+/; = </span>
+( = <span class="src-sym">
+/( = </span>
+) = <span class="src-sym">
+/) = </span>
+, = <span class="src-sym">
+/, = </span>
+{ = <span class="src-sym">
+/{ = </span>
+} = <span class="src-sym">
+/} = </span>
+""" = <span class="src-str">
+/" = </span>
+
+[highlightDocBlockSourceTokens]
+;; this is for docblock tokens, using by phpDocumentor_HighlightParser
+;; tagphptype is for "string" in @param string description, for example
+docblock = <span class="src-doc">
+/docblock = </span>
+tagphptype = <span class="src-doc-type">
+/tagphptype = </span>
+tagvarname = <span class="src-doc-var">
+/tagvarname = </span>
+coretag = <span class="src-doc-coretag">
+/coretag = </span>
+tag = <span class="src-doc-tag">
+/tag = </span>
+inlinetag = <span class="src-doc-inlinetag">
+/inlinetag = </span>
+internal = <span class="src-doc-internal">
+/internal = </span>
+closetemplate = <span class="src-doc-close-template">
+/closetemplate = </span>
+docblocktemplate = <span class="src-doc-template">
+/docblocktemplate = </span>
+
+[highlightTutorialSourceTokens]
+;; this is for XML DocBook-based tutorials, highlighted by phpDocumentor_TutorialHighlightParser
+;; <tag>
+opentag = <span class="tute-tag">
+/opentag = </span>
+;; </tag>
+closetag = <span class="tute-tag">
+/closetag = </span>
+;; <tag attribute="value">
+attribute = <span class="tute-attribute-name">
+/attribute = </span>
+;; <tag attribute="value">
+attributevalue = <span class="tute-attribute-value">
+/attributevalue = </span>
+;; &entity;
+entity = <span class="tute-entity">
+/entity = </span>
+;; <!-- comment -->
+comment = <span class="tute-comment">
+/comment = </span>
+;; {@inline tag}
+itag = <span class="tute-inline-tag">
+/itag = </span>
+
+;; used for translation of html in DocBlocks
+[desctranslate]
+ul = <ul>
+/ul = </ul>
+ol = <ol>
+/ol = </ol>
+li = <li>
+/li = </li>
+code =
+/code =
+var = <var>
+/var = </var>
+samp = <samp>
+/samp = </samp>
+kbd = <kbd>
+/kbd = </kbd>
+pre = <pre>
+/pre = </pre>
+p = <p>
+/p = </p>
+b = <strong>
+/b = </strong>
+i = <em>
+/i = </em>
+br = <br />
+
+[ppage]
+;; this is the DocBook package page translation section. All DocBook tags
+;; that have a corresponding html tag must be listed here. Entities should
+;; also be listed here
+;;
+;; examples:
+;; 1)
+;; tagname = newtagname
+;;
+;; This is the simplest case, where all attributes will be added into the
+;; starting tag and the ending tag will be html/xml style </tranlatedtagname>
+;; <tagname></tagname> becomes <newtagname></newtagname> and
+;; <tagname attr="value"></tagname> becomes
+;; <newtagname attr="value"></newtagname>
+;;
+;; 2)
+;; tagname = newtagname
+;; tagname->attr = newattrname
+;;
+;; in this case, everything will be like the first case, except tags like:
+;; <tagname attr="value"></tagname> will become
+;; <newtagname newattrname="value"></newtagname>
+;;
+;; 3)
+;; tagname = newtagname
+;; tagname->attr = newattrname
+;; tagname->attr+value = newvalue
+;;
+;; in this case, the value is also translated to another. This can be useful
+;; for instances such as focus="middle" changing to align="center" or something
+;; of that nature.
+;; <tagname attr="value"></tagname> will become
+;; <newtagname newattrname="newvalue"></newtagname>
+;;
+;; 4)
+;; tagname = newtagname
+;; tagname->attr1 = newattrname
+;; tagname->attr2 = newattrname
+;; tagname->attr1+value|attr2+value = newvalue
+;;
+;; in this case, two attributes combine to make one new attribute, and the combined
+;; value is translated into a new value
+;; <tagname attr1="value1" attr2="value2"></tagname> will become
+;; <newtagname newattrname="newvalue"></newtagname>
+;;
+;; 5)
+;; tagname = newtagname
+;; tagname!attr = dummy
+;;
+;; here, the attribute will be ignored. dummy is not used and may be any value
+;; <tagname attr="value"></tagname> will become
+;; <newtagname></newtagname>
+;;
+;; 6)
+;; tagname = newtagname
+;; tagname! = dummy
+;;
+;; here, all attributes will be ignored. dummy is not used and may be any value
+;; <tagname attr1="value" attr2="foo"></tagname> will become
+;; <newtagname></newtagname>
+;;
+;; 7)
+;; tagname = newtagname
+;; tagname/ = 1
+;;
+;; here, the tag will be translated as a single tag with no closing tag, and all
+;; attributes
+;; <tagname attr="val">{text text}</tagname> will become
+;; <newtagname attr="val" />
+;;
+;; 8)
+;; tagname = <starttaginfo />
+;; /tagname = closetagtext
+;;
+;; in this case, the text <starttaginfo> will be inserted exactly as entered for
+;; <tagname> and closetagtext for </tagname>
+;; <tagname attr="val"></tagname> will become
+;; <starttaginfo />closetagtext
+;;
+;; 9)
+;; $attr$my_attribute = newattrname
+;;
+;; tagname = newtagname
+;;
+;; in this case, all occurences of my_attribute in any tag will be changed to
+;; newattrname. This is useful for changing things like role="php" to
+;; class="php," for example. Note that the text "$attr$" MUST be on the line
+;; start for phpDocumentor to recognize it.
+;;
+;; 10)
+;; &entity; = translation text
+;; &quot; = &quot;
+;; &quot; = """
+;; &lt; = <
+;;
+;; Use this to control translation of entities to their appropriate values
+
+&nbsp; = &nbsp;
+&quot; = &quot;
+&rdquo; = &rdquo;
+&ldquo; = &ldquo;
+&amp; = &amp;
+&lt; = &lt;
+&gt; = &gt;
+&copy; = &copy;
+
+
+$attr$role = class
+
+abbrev = abbr
+
+blockquote = blockquote
+
+arg = span
+arg->choice = class
+
+author = <span class="author">
+/author = </span>
+author! = 0
+
+authorblurb = <div class="author-blurb">
+/authorblurb = </div>
+
+authorgroup = <div class="authors"><h2 class="title">Authors</h2>
+/authorgroup = </div>
+authorgroup! = 0
+
+caution = <span class="warning">
+/caution = </span>
+caution! = 0
+
+cmdsynopsis = <div class="cmd-synopsis">
+/cmdsynopsis = </div>
+
+command = <span class="cmd-title">
+/command = </span>
+
+copyright = <div class="notes">
+/copyright = </div>
+
+emphasis = em
+
+example = <div class="src-code">
+/example = </div>
+example! = 0
+
+function =
+/function = ()
+
+formalpara = p
+
+graphic = img
+graphic->fileref = src
+graphic/ =
+
+important = strong
+
+informalequation = blockquote
+
+informalexample = div
+
+inlineequation = em
+
+itemizedlist = ul
+
+listitem = li
+
+literal = code
+
+literallayout = span
+
+option = " "
+/option =
+
+orderedlist = ol
+
+para = p
+
+programlisting = <div class="src-code">
+/programlisting = </div>
+programlisting! = 0
+
+refentry = div
+
+refnamediv = <div class="ref-title-box">
+/refnamediv = </div>
+refnamediv! = 0
+
+refname = <h1 class="ref-title">
+/refname = </h1>
+
+refpurpose = <h2 class="ref-purpose">
+/refpurpose = </h2>
+
+refsynopsisdiv = <div class="ref-synopsis">
+/refsynopsisdiv = </div>
+refsynopsisdiv! = 0
+
+refsect1 = span
+
+refsect2 = span
+
+refsect3 =
+/refsect3 = <br />
+
+releaseinfo = <div class="release-info">(
+/releaseinfo = )</div>
+
+simpara =
+/simpara = <br />
+simpara! = 0
+
+subscript = sub
+
+superscript = super
+
+table = table
+
+table->colsep = rules
+table->rowsep = rules
+table->colsep+1|rowsep+1 =all
+table->colsep+1|rowsep+0 =cols
+table->colsep+0|rowsep+1 =rows
+
+table->frame =frame
+table->frame+all =border
+table->frame+none =void
+table->frame+sides =vsides
+table->frame+top =above
+table->frame+topbot =hsides
+
+thead = thead
+
+tfoot = tfoot
+
+tbody = tbody
+
+colspec = col
+
+tgroup = colgroup
+tgroup/ = 1
+tgroup->cols = span
+
+row = tr
+
+entry = td
+entry->morerows = colspan
+entry->morerows+1 =2
+entry->morerows+2 =3
+entry->morerows+3 =4
+entry->morerows+4 =5
+entry->morerows+5 =6
+entry->morerows+6 =7
+entry->morerows+7 =8
+entry->morerows+8 =9
+entry->morerows+9 =10
+entry->morerows+10 =11
+;; add more if you need more colspans
+
+warning = <span class="warning">
+/warning = </span>
+warning! = 0
+
+;; now begins the attributes that should be tags in cdata
+[$attr$id]
+open = a
+;close = /a
+cdata! = true
+quotevalues = true
+separator = "="
+;separateall = true
+$id = name
+
+;; now begins the sections that deal with <title>
+[refsynopsisdiv_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h1 class="title">
+close = </h1>
+
+[refsect1_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h2 class="title">
+close = </h2>
+
+[refsect2_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h3 class="title">
+close = </h3>
+
+[refsect3_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h4 class="title">
+close = </h4>
+
+[para_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <div class="title">
+close = </div>
+
+[formalpara_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <div class="title">
+close = </div>
+
+[example_title]
+;tag_attr = true
+;attr_name = title
+;cdata_start = true
+cdata_end = true
+open = </td></tr><tr><td><strong>
+close = </strong>
+
+[table_title]
+;tag_attr = true
+;attr_name = true
+cdata_start = true
+open = <caption>
+close = </caption>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/basicindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/basicindex.tpl
new file mode 100755
index 00000000..951ee264
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/basicindex.tpl
@@ -0,0 +1,47 @@
+<div class="index-letter-menu">
+{section name=letter loop=$letters}
+ <a class="index-letter" href="{$indexname}.html#{$letters[letter].letter}">{$letters[letter].letter}</a>
+{/section}
+</div>
+
+{section name=index loop=$index}
+ <a name="{$index[index].letter}"></a>
+ <div class="index-letter-section">
+ <div style="float: left" class="index-letter-title">{$index[index].letter}</div>
+ <div style="float: right"><a href="#top">top</a></div>
+ <div style="clear: both"></div>
+ </div>
+ <dl>
+ {section name=contents loop=$index[index].index}
+ <dt class="field">
+ {if ($index[index].index[contents].title == "Variable")}
+ <span class="var-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Global")}
+ <span class="var-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Method")}
+ <span class="method-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Function")}
+ <span class="method-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Constant")}
+ <span class="const-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Page") || ($index[index].index[contents].title == "Include")}
+ <span class="include-title">{$index[index].index[contents].name}</span>
+ {else}
+ {$index[index].index[contents].name}
+ {/if}
+ </dt>
+ <dd class="index-item-body">
+ <div class="index-item-details">{$index[index].index[contents].link} in {$index[index].index[contents].file_name}</div>
+ {if $index[index].index[contents].description}
+ <div class="index-item-description">{$index[index].index[contents].description}</div>
+ {/if}
+ </dd>
+ {/section}
+ </dl>
+{/section}
+
+<div class="index-letter-menu">
+{section name=letter loop=$letters}
+ <a class="index-letter" href="{$indexname}.html#{$letters[letter].letter}">{$letters[letter].letter}</a>
+{/section}
+</div>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/blank.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/blank.tpl
new file mode 100755
index 00000000..6a05f27e
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/blank.tpl
@@ -0,0 +1,13 @@
+<html>
+<head>
+ <title>{$maintitle}</title>
+ <link rel="stylesheet" href="{$subdir}media/stylesheet.css" />
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+</head>
+<body>
+<div align="center"><h1>{$maintitle}</h1></div>
+<b>Welcome to {$package}!</b><br />
+<br />
+This documentation was generated by <a href="{$phpdocwebsite}">phpDocumentor v{$phpdocversion}</a><br />
+</body>
+</html> \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/class.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/class.tpl
new file mode 100755
index 00000000..bb5378f6
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/class.tpl
@@ -0,0 +1,430 @@
+{include file="header.tpl" top3=true}
+
+<h2 class="class-name">{if $is_interface}Interface{else}Class{/if} {$class_name}</h2>
+
+<a name="sec-description"></a>
+<div class="info-box">
+ <div class="info-box-title">Description</div>
+ <div class="nav-bar">
+ {if $children || $vars || $ivars || $methods || $imethods || $consts || $iconsts }
+ <span class="disabled">Description</span> |
+ {/if}
+ {if $children}
+ <a href="#sec-descendents">Descendents</a>
+ {if $vars || $ivars || $methods || $imethods || $consts || $iconsts}|{/if}
+ {/if}
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ {if $methods || $imethods}|{/if}
+ {/if}
+ {if $methods || $imethods}
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {if $implements}
+ <p class="implements">
+ Implements interfaces:
+ <ul>
+ {foreach item="int" from=$implements}<li>{$int}</li>{/foreach}
+ </ul>
+ </p>
+ {/if}
+ {include file="docblock.tpl" type="class" sdesc=$sdesc desc=$desc}
+ <p class="notes">
+ Located in <a class="field" href="{$page_link}">{$source_location}</a> (line <span class="field">{if $class_slink}{$class_slink}{else}{$line_number}{/if}</span>)
+ </p>
+
+ {if $tutorial}
+ <hr class="separator" />
+ <div class="notes">Tutorial: <span class="tutorial">{$tutorial}</span></div>
+ {/if}
+
+ <pre>{section name=tree loop=$class_tree.classes}{$class_tree.classes[tree]}{$class_tree.distance[tree]}{/section}</pre>
+
+ {if $conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with classes:</span><br />
+ {section name=me loop=$conflicts.conflicts}
+ {$conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+ </div>
+</div>
+
+{if $children}
+ <a name="sec-descendents"></a>
+ <div class="info-box">
+ <div class="info-box-title">Direct descendents</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ <span class="disabled">Descendents</span>
+ {if $vars || $ivars || $methods || $imethods}|{/if}
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ {if $methods || $imethods}|{/if}
+ {/if}
+ {if $methods || $imethods}
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <table cellpadding="2" cellspacing="0" class="class-table">
+ <tr>
+ <th class="class-table-header">Class</th>
+ <th class="class-table-header">Description</th>
+ </tr>
+ {section name=kids loop=$children}
+ <tr>
+ <td style="padding-right: 2em">{$children[kids].link}</td>
+ <td>
+ {if $children[kids].sdesc}
+ {$children[kids].sdesc}
+ {else}
+ {$children[kids].desc}
+ {/if}
+ </td>
+ </tr>
+ {/section}
+ </table>
+ </div>
+ </div>
+{/if}
+
+{if $consts}
+ <a name="sec-const-summary"></a>
+ <div class="info-box">
+ <div class="info-box-title">Class Constant Summary</span></div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendants</a> |
+ {/if}
+ <span class="disabled">Constants</span> (<a href="#sec-consts">details</a>)
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ |
+ {/if}
+ {if $methods || $imethods}
+ |
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <div class="const-summary">
+ {section name=consts loop=$consts}
+ <div class="const-title">
+ <img src="{$subdir}media/images/Constant.png" alt=" " />
+ <a href="#{$consts[consts].const_name}" title="details" class="const-name">{$consts[consts].const_name}</a> = <span class="var-type">{$consts[consts].const_value}</span>
+
+ </div>
+ {/section}
+ </div>
+ </div>
+ </div>
+{/if}
+
+{if $vars}
+ <a name="sec-var-summary"></a>
+ <div class="info-box">
+ <div class="info-box-title">Variable Summary</span></div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendents</a> |
+ {/if}
+ <span class="disabled">Vars</span> (<a href="#sec-vars">details</a>)
+ {if $methods || $imethods}
+ |
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <div class="var-summary">
+ {section name=vars loop=$vars}
+ {if $vars[vars].static}
+ <div class="var-title">
+ static <span class="var-type">{$vars[vars].var_type}</span>
+ <a href="#{$vars[vars].var_name}" title="details" class="var-name">{$vars[vars].var_name}</a>
+ </div>
+ {/if}
+ {/section}
+ {section name=vars loop=$vars}
+ {if !$vars[vars].static}
+ <div class="var-title">
+ <span class="var-type">{$vars[vars].var_type}</span>
+ <a href="#{$vars[vars].var_name}" title="details" class="var-name">{$vars[vars].var_name}</a>
+ </div>
+ {/if}
+ {/section}
+ </div>
+ </div>
+ </div>
+{/if}
+
+{if $methods}
+ <a name="sec-method-summary"></a>
+ <div class="info-box">
+ <div class="info-box-title">Method Summary</span></div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendents</a> |
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ |
+ {/if}
+ <span class="disabled">Methods</span> (<a href="#sec-methods">details</a>)
+ </div>
+ <div class="info-box-body">
+ <div class="method-summary">
+ {section name=methods loop=$methods}
+ {if $methods[methods].static}
+ <div class="method-definition">
+ static {if $methods[methods].function_return}
+ <span class="method-result">{$methods[methods].function_return}</span>
+ {/if}
+ <a href="#{$methods[methods].function_name}" title="details" class="method-name">{if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}</a>
+ {if count($methods[methods].ifunction_call.params)}
+ ({section name=params loop=$methods[methods].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$methods[methods].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$methods[methods].ifunction_call.params[params].name}</span>{if $methods[methods].ifunction_call.params[params].hasdefault} = <span class="var-default">{$methods[methods].ifunction_call.params[params].default}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+ {/if}
+ {/section}
+
+ {section name=methods loop=$methods}
+ {if !$methods[methods].static}
+ <div class="method-definition">
+ {if $methods[methods].function_return}
+ <span class="method-result">{$methods[methods].function_return}</span>
+ {/if}
+ <a href="#{$methods[methods].function_name}" title="details" class="method-name">{if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}</a>
+ {if count($methods[methods].ifunction_call.params)}
+ ({section name=params loop=$methods[methods].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$methods[methods].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$methods[methods].ifunction_call.params[params].name}</span>{if $methods[methods].ifunction_call.params[params].hasdefault} = <span class="var-default">{$methods[methods].ifunction_call.params[params].default}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+ {/if}
+ {/section}
+</div>
+ </div>
+ </div>
+{/if}
+
+{if $vars || $ivars}
+ <a name="sec-vars"></a>
+ <div class="info-box">
+ <div class="info-box-title">Variables</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendents</a> |
+ {/if}
+ {if $methods}
+ <a href="#sec-var-summary">Vars</a> (<span class="disabled">details</span>)
+ {else}
+ <span class="disabled">Vars</span>
+ {/if}
+
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ {if $methods || $imethods}
+ |
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="var.tpl"}
+ {if $ivars}
+ <h4>Inherited Variables</h4>
+ <A NAME='inherited_vars'><!-- --></A>
+ {section name=ivars loop=$ivars}
+ <p>Inherited from <span class="classname">{$ivars[ivars].parent_class}</span></p>
+ <blockquote>
+ {section name=ivars2 loop=$ivars[ivars].ivars}
+ <span class="var-title">
+ <span class="var-name">{$ivars[ivars].ivars[ivars2].link}</span>{if $ivars[ivars].ivars[ivars2].ivar_sdesc}: {$ivars[ivars].ivars[ivars2].ivar_sdesc}{/if}<br>
+ </span>
+ {/section}
+ </blockquote>
+ {/section}
+ {/if}
+ </div>
+ </div>
+{/if}
+
+{if $methods || $imethods}
+ <a name="sec-methods"></a>
+ <div class="info-box">
+ <div class="info-box-title">Methods</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendents</a> |
+ {/if}
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<span class="disabled">details</span>)
+ {else}
+ <span class="disabled">Methods</span>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="method.tpl"}
+ {if $imethods}
+ <h4>Inherited Methods</h4>
+ <a name='inherited_methods'><!-- --></a>
+ {section name=imethods loop=$imethods}
+ <!-- =========== Summary =========== -->
+ <p>Inherited From <span class="classname">{$imethods[imethods].parent_class}</span></p>
+ <blockquote>
+ {section name=im2 loop=$imethods[imethods].imethods}
+ <span class="method-name">{$imethods[imethods].imethods[im2].link}</span>{if $imethods[imethods].imethods[im2].ifunction_sdesc}: {$imethods[imethods].imethods[im2].ifunction_sdesc}{/if}<br>
+ {/section}
+ </blockquote>
+ {/section}
+ {/if}
+ </div>
+ </div>
+{/if}
+
+{if $consts || $iconsts}
+ <a name="sec-consts"></a>
+ <div class="info-box">
+ <div class="info-box-title">Class Constants</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendants</a> |
+ {/if}
+ {if $methods}
+ <a href="#sec-var-summary">Constants</a> (<span class="disabled">details</span>)
+ {else}
+ <span class="disabled">Constants</span>
+ {/if}
+
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ {/if}
+ {if $methods || $imethods}
+ |
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="const.tpl"}
+ {if $iconsts}
+ <h4>Inherited Constants</h4>
+ <A NAME='inherited_vars'><!-- --></A>
+ {section name=iconsts loop=$iconsts}
+ <p>Inherited from <span class="classname">{$iconsts[iconsts].parent_class}</span></p>
+ <blockquote>
+ {section name=iconsts2 loop=$iconsts[iconsts].iconsts}
+ <img src="{$subdir}media/images/{if $iconsts[iconsts].iconsts[iconsts2].access == 'private'}PrivateVariable{else}Variable{/if}.png" />
+ <span class="const-title">
+ <span class="const-name">{$iconsts[iconsts].iconsts[iconsts2].link}</span>{if $iconsts[iconsts].iconsts[iconsts2].iconst_sdesc}: {$iconsts[iconsts].iconsts[iconsts2].iconst_sdesc}{/if}<br>
+ </span>
+ {/section}
+ </blockquote>
+ {/section}
+ {/if}
+ </div>
+ </div>
+{/if}
+
+{include file="footer.tpl" top3=true}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/classtrees.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/classtrees.tpl
new file mode 100755
index 00000000..952e6d50
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/classtrees.tpl
@@ -0,0 +1,19 @@
+{include file="header.tpl" top1=true}
+
+<!-- Start of Class Data -->
+<H2>
+ {$smarty.capture.title}
+</H2>
+{if $interfaces}
+{section name=classtrees loop=$interfaces}
+<h2>Root interface {$interfaces[classtrees].class}</h2>
+{$interfaces[classtrees].class_tree}
+{/section}
+{/if}
+{if $classtrees}
+{section name=classtrees loop=$classtrees}
+<h2>Root class {$classtrees[classtrees].class}</h2>
+{$classtrees[classtrees].class_tree}
+{/section}
+{/if}
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/const.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/const.tpl
new file mode 100644
index 00000000..c26ff92d
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/const.tpl
@@ -0,0 +1,18 @@
+{section name=consts loop=$consts}
+<a name="const{$consts[consts].const_name}" id="{$consts[consts].const_name}"><!-- --></A>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="const-header">
+ <img src="{$subdir}media/images/{if $consts[consts].access == 'private'}PrivateVariable{else}Variable{/if}.png" />
+ <span class="const-title">
+ <span class="const-name">{$consts[consts].const_name}</span>
+ = <span class="const-default">{$consts[consts].const_value|replace:"\n":"<br />"}</span>
+ (line <span class="line-number">{if $consts[consts].slink}{$consts[consts].slink}{else}{$consts[consts].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$consts[consts].sdesc desc=$consts[consts].desc tags=$consts[consts].tags}
+
+</div>
+{/section}
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/define.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/define.tpl
new file mode 100755
index 00000000..0da5d864
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/define.tpl
@@ -0,0 +1,24 @@
+{section name=def loop=$defines}
+<a name="{$defines[def].define_link}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <span class="const-title">
+ <span class="const-name">{$defines[def].define_name}</span> = {$defines[def].define_value|replace:"\n":"<br />"}
+ (line <span class="line-number">{if $defines[def].slink}{$defines[def].slink}{else}{$defines[def].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$defines[def].sdesc desc=$defines[def].desc tags=$defines[def].tags}
+
+ {if $globals[glob].global_conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with constants:</span><br />
+ {section name=me loop=$defines[def].define_conflicts.conflicts}
+ {$defines[def].define_conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+
+</div>
+{/section} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/docblock.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/docblock.tpl
new file mode 100755
index 00000000..783d5271
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/docblock.tpl
@@ -0,0 +1,14 @@
+<!-- ========== Info from phpDoc block ========= -->
+{if $sdesc}
+<p class="short-description">{$sdesc}</p>
+{/if}
+{if $desc}
+<p class="description">{$desc}</p>
+{/if}
+{if $tags}
+ <ul class="tags">
+ {section name=tags loop=$tags}
+ <li><span class="field">{$tags[tags].keyword}:</span> {$tags[tags].data}</li>
+ {/section}
+ </ul>
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/elementindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/elementindex.tpl
new file mode 100755
index 00000000..d5964f99
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/elementindex.tpl
@@ -0,0 +1,12 @@
+{include file="header.tpl" noleftindex=true}
+<a name="top"></a>
+<h2>Full index</h2>
+<h3>Package indexes</h3>
+<ul>
+{section name=p loop=$packageindex}
+ <li><a href="elementindex_{$packageindex[p].title}.html">{$packageindex[p].title}</a></li>
+{/section}
+</ul>
+<br />
+{include file="basicindex.tpl" indexname="elementindex"}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/errors.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/errors.tpl
new file mode 100755
index 00000000..0f526584
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/errors.tpl
@@ -0,0 +1,21 @@
+{include file="header.tpl" noleftindex=true}
+{section name=files loop=$files}
+<a href="#{$files[files].file}">{$files[files].file}</a><br>
+{/section}
+{foreach key=file item=issues from=$all}
+<a name="{$file}"></a>
+<h1>{$file}</h1>
+{if count($issues.warnings)}
+<h2>Warnings:</h2><br>
+{section name=warnings loop=$issues.warnings}
+<b>{$issues.warnings[warnings].name}</b> - {$issues.warnings[warnings].listing}<br>
+{/section}
+{/if}
+{if count($issues.errors)}
+<h2>Errors:</h2><br>
+{section name=errors loop=$issues.errors}
+<b>{$issues.errors[errors].name}</b> - {$issues.errors[errors].listing}<br>
+{/section}
+{/if}
+{/foreach}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/examplesource.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/examplesource.tpl
new file mode 100755
index 00000000..8abf74ce
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/examplesource.tpl
@@ -0,0 +1,6 @@
+{include file="header.tpl" title=$title}
+<h1>{$title}</h1>
+<div class="listing">
+{$source}
+</div>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/filesource.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/filesource.tpl
new file mode 100755
index 00000000..239f7b41
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/filesource.tpl
@@ -0,0 +1,8 @@
+{capture name="tutle"}File Source for {$name}{/capture}
+{include file="header.tpl" title=$smarty.capture.tutle}
+<h1>Source for file {$name}</h1>
+<p>Documentation is available at {$docs}</p>
+<div class="src-code">
+{$source}
+</div>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/footer.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/footer.tpl
new file mode 100755
index 00000000..8d0f79db
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/footer.tpl
@@ -0,0 +1,8 @@
+{if !$index}
+ <p class="notes" id="credit">
+ Documentation generated on {$date} by <a href="{$phpdocwebsite}" target="_blank">phpDocumentor {$phpdocversion}</a>
+ </p>
+{/if}
+ {if $top3}</div>{/if}
+</body>
+</html>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/function.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/function.tpl
new file mode 100755
index 00000000..b6880059
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/function.tpl
@@ -0,0 +1,44 @@
+{section name=func loop=$functions}
+<a name="{$functions[func].function_dest}" id="{$functions[func].function_dest}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <span class="method-title">{$functions[func].function_name}</span> (line <span class="line-number">{if $functions[func].slink}{$functions[func].slink}{else}{$functions[func].line_number}{/if}</span>)
+ </div>
+
+ {include file="docblock.tpl" sdesc=$functions[func].sdesc desc=$functions[func].desc tags=$functions[func].tags params=$functions[func].params function=false}
+
+ <div class="method-signature">
+ <span class="method-result">{$functions[func].function_return}</span>
+ <span class="method-name">
+ {if $functions[func].ifunction_call.returnsref}&amp;{/if}{$functions[func].function_name}
+ </span>
+ {if count($functions[func].ifunction_call.params)}
+ ({section name=params loop=$functions[func].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $functions[func].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$functions[func].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$functions[func].ifunction_call.params[params].name}</span>{if $functions[func].ifunction_call.params[params].hasdefault} = <span class="var-default">{$functions[func].ifunction_call.params[params].default|escape:"html"}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+
+ {if $functions[func].params}
+ <ul class="parameters">
+ {section name=params loop=$functions[func].params}
+ <li>
+ <span class="var-type">{$functions[func].params[params].datatype}</span>
+ <span class="var-name">{$functions[func].params[params].var}</span>{if $functions[func].params[params].data}<span class="var-description">: {$functions[func].params[params].data}</span>{/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+ {if $functions[func].function_conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with functions:</span><br />
+ {section name=me loop=$functions[func].function_conflicts.conflicts}
+ {$functions[func].function_conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+
+</div>
+{/section}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/global.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/global.tpl
new file mode 100755
index 00000000..eab7e0b0
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/global.tpl
@@ -0,0 +1,26 @@
+{section name=glob loop=$globals}
+<a name="{$globals[glob].global_link}" id="{$globals[glob].global_link}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <span class="var-title">
+ <span class="var-type">{$globals[glob].global_type}</span>
+ <span class="var-name">{$globals[glob].global_name}</span>
+ {if $vars[vars].var_default} = <span class="var-default">{$globals[glob].global_value|replace:"\n":"<br />"}</span>{/if}
+ (line <span class="line-number">{if $globals[glob].slink}{$globals[glob].slink}{else}{$globals[glob].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$globals[glob].sdesc desc=$globals[glob].desc tags=$globals[glob].tags}
+
+ {if $globals[glob].global_conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with global variables:</span><br />
+ {section name=me loop=$globals[glob].global_conflicts.conflicts}
+ {$globals[glob].global_conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+
+</div>
+{/section} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/header.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/header.tpl
new file mode 100755
index 00000000..c22ba37d
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/header.tpl
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+ <html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <!-- template designed by Marco Von Ballmoos -->
+ <title>{$title}</title>
+ <link rel="stylesheet" href="{$subdir}media/stylesheet.css" />
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+ </head>
+ <body>
+ {if $top3}<div class="page-body">{/if}
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/include.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/include.tpl
new file mode 100755
index 00000000..c2419e5f
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/include.tpl
@@ -0,0 +1,16 @@
+{section name=includes loop=$includes}
+<a name="{$includes[includes].include_file}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <span class="include-title">
+ <span class="include-type">{$includes[includes].include_name}</span>
+ (<span class="include-name">{$includes[includes].include_value}</span>)
+ (line <span class="line-number">{if $includes[includes].slink}{$includes[includes].slink}{else}{$includes[includes].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$includes[includes].sdesc desc=$includes[includes].desc tags=$includes[includes].tags}
+
+</div>
+{/section} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/index.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/index.tpl
new file mode 100755
index 00000000..7cd61094
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/index.tpl
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//FR"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
+ <html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+ <!-- Generated by phpDocumentor on {$date} -->
+ <title>{$title}</title>
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+</head>
+
+<FRAMESET rows='120,*'>
+ <FRAME src='packages.html' name='left_top' frameborder="1" bordercolor="#999999">
+ <FRAMESET cols='25%,*'>
+ <FRAME src='{$start}' name='left_bottom' frameborder="1" bordercolor="#999999">
+ <FRAME src='{$blank}.html' name='right' frameborder="1" bordercolor="#999999">
+ </FRAMESET>
+ <NOFRAMES>
+ <H2>Frame Alert</H2>
+ <P>This document is designed to be viewed using the frames feature.
+ If you see this message, you are using a non-frame-capable web client.</P>
+ </NOFRAMES>
+</FRAMESET>
+</HTML>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/left_frame.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/left_frame.tpl
new file mode 100755
index 00000000..eb3f670d
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/left_frame.tpl
@@ -0,0 +1,159 @@
+{include file="header.tpl" top2=true}
+<div class="package-title">{$package}</div>
+<div class="package-details">
+
+ <dl class="tree">
+
+ <dt class="folder-title">Description</dt>
+ <dd>
+ <a href='{$classtreepage}.html' target='right'>Class trees</a><br />
+ <a href='{$elementindex}.html' target='right'>Index of elements</a><br />
+ {if $hastodos}
+ <a href="{$todolink}" target="right">Todo List</a><br />
+ {/if}
+ </dd>
+
+ {section name=p loop=$info}
+
+ {if $info[p].subpackage == ""}
+
+ {if $info[p].tutorials}
+ <dt class="folder-title">Tutorials/Manuals</dt>
+ <dd>
+ {if $info[p].tutorials.pkg}
+ <dl class="tree">
+ <dt class="folder-title">Package-level</dt>
+ <dd>
+ {section name=ext loop=$info[p].tutorials.pkg}
+ {$info[p].tutorials.pkg[ext]}
+ {/section}
+ </dd>
+ </dl>
+ {/if}
+
+ {if $info[p].tutorials.cls}
+ <dl class="tree">
+ <dt class="folder-title">Class-level</dt>
+ <dd>
+ {section name=ext loop=$info[p].tutorials.cls}
+ {$info[p].tutorials.cls[ext]}
+ {/section}
+ </dd>
+ </dl>
+ {/if}
+
+ {if $info[p].tutorials.proc}
+ <dl class="tree">
+ <dt class="folder-title">Function-level</dt>
+ <dd>
+ {section name=ext loop=$info[p].tutorials.proc}
+ {$info[p].tutorials.proc[ext]}
+ {/section}
+ </dd>
+ </dl>
+ {/if}
+ </dd>
+ {/if}
+ {if $info[p].hasinterfaces}
+ <dt class="folder-title">Interfaces</dt>
+ {section name=class loop=$info[p].classes}
+ {if $info[p].classes[class].is_interface}
+ <dd><a href='{$info[p].classes[class].link}' target='right'>{$info[p].classes[class].title}</a></dd>
+ {/if}
+ {/section}
+ {/if}
+ {if $info[p].hasclasses}
+ <dt class="folder-title">Classes</dt>
+ {section name=class loop=$info[p].classes}
+ {if $info[p].classes[class].is_class}
+ <dd><a href='{$info[p].classes[class].link}' target='right'>{$info[p].classes[class].title}</a></dd>
+ {/if}
+ {/section}
+ {/if}
+ {if $info[p].functions}
+ <dt class="folder-title">Functions</dt>
+ {section name=f loop=$info[p].functions}
+ <dd><a href='{$info[p].functions[f].link}' target='right'>{$info[p].functions[f].title}</a></dd>
+ {/section}
+ {/if}
+ {if $info[p].files}
+ <dt class="folder-title">Files</dt>
+ {section name=nonclass loop=$info[p].files}
+ <dd><a href='{$info[p].files[nonclass].link}' target='right'>{$info[p].files[nonclass].title}</a></dd>
+ {/section}
+ {/if}
+
+ {else}
+ {if $info[p].tutorials}
+ <dt class="folder-title">Tutorials/Manuals</dt>
+ <dd>
+ {if $info[p].tutorials.pkg}
+ <dl class="tree">
+ <dt class="folder-title">Package-level</dt>
+ <dd>
+ {section name=ext loop=$info[p].tutorials.pkg}
+ {$info[p].tutorials.pkg[ext]}
+ {/section}
+ </dd>
+ </dl>
+ {/if}
+
+ {if $info[p].tutorials.cls}
+ <dl class="tree">
+ <dt class="folder-title">Class-level</dt>
+ <dd>
+ {section name=ext loop=$info[p].tutorials.cls}
+ {$info[p].tutorials.cls[ext]}
+ {/section}
+ </dd>
+ </dl>
+ {/if}
+
+ {if $info[p].tutorials.proc}
+ <dl class="tree">
+ <dt class="folder-title">Function-level</dt>
+ <dd>
+ {section name=ext loop=$info[p].tutorials.proc}
+ {$info[p].tutorials.proc[ext]}
+ {/section}
+ </dd>
+ </dl>
+ {/if}
+ </dd>
+ {/if}
+
+ <dt class="sub-package">{$info[p].subpackage}</dt>
+ <dd>
+ <dl class="tree">
+ {if $info[p].subpackagetutorial}
+ <div><a href="{$info.0.subpackagetutorialnoa}" target="right">{$info.0.subpackagetutorialtitle}</a></div>
+ {/if}
+ {if $info[p].classes}
+ <dt class="folder-title">Classes</dt>
+ {section name=class loop=$info[p].classes}
+ <dd><a href='{$info[p].classes[class].link}' target='right'>{$info[p].classes[class].title}</a></dd>
+ {/section}
+ {/if}
+ {if $info[p].functions}
+ <dt class="folder-title">Functions</dt>
+ {section name=f loop=$info[p].functions}
+ <dd><a href='{$info[p].functions[f].link}' target='right'>{$info[p].functions[f].title}</a></dd>
+ {/section}
+ {/if}
+ {if $info[p].files}
+ <dt class="folder-title">Files</dt>
+ {section name=nonclass loop=$info[p].files}
+ <dd><a href='{$info[p].files[nonclass].link}' target='right'>{$info[p].files[nonclass].title}</a></dd>
+ {/section}
+ {/if}
+ </dl>
+ </dd>
+
+ {/if}
+
+ {/section}
+ </dl>
+</div>
+<p class="notes"><a href="{$phpdocwebsite}" target="_blank">phpDocumentor v <span class="field">{$phpdocversion}</span></a></p>
+</BODY>
+</HTML>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/media/banner.css b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/media/banner.css
new file mode 100755
index 00000000..f2149ebb
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/media/banner.css
@@ -0,0 +1,32 @@
+body
+{
+ background-color: #CCCCFF;
+ margin: 0px;
+ padding: 0px;
+}
+
+/* Banner (top bar) classes */
+
+.banner { }
+
+.banner-menu
+{
+ clear: both;
+ padding: .5em;
+ border-top: 2px solid #6666AA;
+}
+
+.banner-title
+{
+ text-align: right;
+ font-size: 20pt;
+ font-weight: bold;
+ margin: .2em;
+}
+
+.package-selector
+{
+ background-color: #AAAADD;
+ border: 1px solid black;
+ color: yellow;
+}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/media/stylesheet.css b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/media/stylesheet.css
new file mode 100755
index 00000000..1fc91c19
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/media/stylesheet.css
@@ -0,0 +1,144 @@
+a { color: #336699; text-decoration: none; }
+a:hover { color: #6699CC; text-decoration: underline; }
+a:active { color: #6699CC; text-decoration: underline; }
+
+body { background : #FFFFFF; }
+body, table { font-family: Georgia, Times New Roman, Times, serif; font-size: 10pt }
+p, li { line-height: 140% }
+a img { border: 0px; }
+dd { margin-left: 0px; padding-left: 1em; }
+
+/* Page layout/boxes */
+
+.info-box {}
+.info-box-title { margin: 1em 0em 0em 0em; padding: .25em; font-weight: normal; font-size: 14pt; border: 2px solid #999999; background-color: #CCCCFF }
+.info-box-body { border: 1px solid #999999; padding: .5em; }
+.nav-bar { font-size: 8pt; white-space: nowrap; text-align: right; padding: .2em; margin: 0em 0em 1em 0em; }
+
+.oddrow { background-color: #F8F8F8; border: 1px solid #AAAAAA; padding: .5em; margin-bottom: 1em}
+.evenrow { border: 1px solid #AAAAAA; padding: .5em; margin-bottom: 1em}
+
+.page-body { max-width: 800px; margin: auto; }
+.tree dl { margin: 0px }
+
+/* Index formatting classes */
+
+.index-item-body { margin-top: .5em; margin-bottom: .5em}
+.index-item-description { margin-top: .25em }
+.index-item-details { font-weight: normal; font-style: italic; font-size: 8pt }
+.index-letter-section { background-color: #EEEEEE; border: 1px dotted #999999; padding: .5em; margin-bottom: 1em}
+.index-letter-title { font-size: 12pt; font-weight: bold }
+.index-letter-menu { text-align: center; margin: 1em }
+.index-letter { font-size: 12pt }
+
+/* Docbook classes */
+
+.description {}
+.short-description { font-weight: bold; color: #666666; }
+.tags { padding-left: 0em; margin-left: 3em; color: #666666; list-style-type: square; }
+.parameters { padding-left: 0em; margin-left: 3em; font-style: italic; list-style-type: square; }
+.redefinitions { font-size: 8pt; padding-left: 0em; margin-left: 2em; }
+.package { }
+.package-title { font-weight: bold; font-size: 14pt; border-bottom: 1px solid black }
+.package-details { font-size: 85%; }
+.sub-package { font-weight: bold; font-size: 120% }
+.tutorial { border-width: thin; border-color: #0066ff }
+.tutorial-nav-box { width: 100%; border: 1px solid #999999; background-color: #F8F8F8; }
+.nav-button-disabled { color: #999999; }
+.nav-button:active,
+.nav-button:focus,
+.nav-button:hover { background-color: #DDDDDD; outline: 1px solid #999999; text-decoration: none }
+.folder-title { font-style: italic }
+
+/* Generic formatting */
+
+.field { font-weight: bold; }
+.detail { font-size: 8pt; }
+.notes { font-style: italic; font-size: 8pt; }
+.separator { background-color: #999999; height: 2px; }
+.warning { color: #FF6600; }
+.disabled { font-style: italic; color: #999999; }
+
+/* Code elements */
+
+.line-number { }
+
+.class-table { width: 100%; }
+.class-table-header { border-bottom: 1px dotted #666666; text-align: left}
+.class-name { color: #000000; font-weight: bold; }
+
+.method-summary { padding-left: 1em; font-size: 8pt }
+.method-header { }
+.method-definition { margin-bottom: .3em }
+.method-title { font-weight: bold; }
+.method-name { font-weight: bold; }
+.method-signature { font-size: 85%; color: #666666; margin: .5em 0em }
+.method-result { font-style: italic; }
+
+.var-summary { padding-left: 1em; font-size: 8pt; }
+.var-header { }
+.var-title { margin-bottom: .3em }
+.var-type { font-style: italic; }
+.var-name { font-weight: bold; }
+.var-default {}
+.var-description { font-weight: normal; color: #000000; }
+
+.include-title { }
+.include-type { font-style: italic; }
+.include-name { font-weight: bold; }
+
+.const-title { }
+.const-name { font-weight: bold; }
+
+/* Syntax highlighting */
+
+.src-code { border: 1px solid #336699; padding: 1em; background-color: #EEEEEE; }
+.src-line { font-family: 'Courier New', Courier, monospace; font-weight: normal; }
+
+.src-comm { color: green; }
+.src-id { }
+.src-inc { color: #0000FF; }
+.src-key { color: #0000FF; }
+.src-num { color: #CC0000; }
+.src-str { color: #66cccc; }
+.src-sym { font-weight: bold; }
+.src-var { }
+
+.src-php { font-weight: bold; }
+
+.src-doc { color: #009999 }
+.src-doc-close-template { color: #0000FF }
+.src-doc-coretag { color: #0099FF; font-weight: bold }
+.src-doc-inlinetag { color: #0099FF }
+.src-doc-internal { color: #6699cc }
+.src-doc-tag { color: #0080CC }
+.src-doc-template { color: #0000FF }
+.src-doc-type { font-style: italic }
+.src-doc-var { font-style: italic }
+
+.tute-tag { color: #009999 }
+.tute-attribute-name { color: #0000FF }
+.tute-attribute-value { color: #0099FF }
+.tute-entity { font-weight: bold; }
+.tute-comment { font-style: italic }
+.tute-inline-tag { color: #636311; font-weight: bold }
+
+/* tutorial */
+
+.authors { }
+.author { font-style: italic; font-weight: bold }
+.author-blurb { margin: .5em 0em .5em 2em; font-size: 85%; font-weight: normal; font-style: normal }
+.example { border: 1px dashed #999999; background-color: #EEEEEE; padding: .5em; }
+*[class="example"] { line-height : 0.5em }
+.listing { border: 1px dashed #999999; background-color: #EEEEEE; padding: .5em; white-space: nowrap; }
+*[class="listing"] { line-height : 0.5em }
+.release-info { font-size: 85%; font-style: italic; margin: 1em 0em }
+.ref-title-box { }
+.ref-title { }
+.ref-purpose { font-style: italic; color: #666666 }
+.ref-synopsis { }
+.title { font-weight: bold; margin: 1em 0em 0em 0em; padding: .25em; border: 2px solid #999999; background-color: #CCCCFF }
+.cmd-synopsis { margin: 1em 0em }
+.cmd-title { font-weight: bold }
+.toc { margin-left: 2em; padding-left: 0em }
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/method.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/method.tpl
new file mode 100755
index 00000000..3ef9ee53
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/method.tpl
@@ -0,0 +1,151 @@
+<A NAME='method_detail'></A>
+{section name=methods loop=$methods}
+{if $methods[methods].static}
+<a name="method{$methods[methods].function_name}" id="{$methods[methods].function_name}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="method-header">
+ <span class="method-title">static method {$methods[methods].function_name}</span> (line <span class="line-number">{if $methods[methods].slink}{$methods[methods].slink}{else}{$methods[methods].line_number}{/if}</span>)
+ </div>
+
+ {include file="docblock.tpl" sdesc=$methods[methods].sdesc desc=$methods[methods].desc tags=$methods[methods].tags params=$methods[methods].params function=false}
+
+ <div class="method-signature">
+ static
+ <span class="method-result">{$methods[methods].function_return}</span>
+ <span class="method-name">
+ {if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}
+ </span>
+ {if count($methods[methods].ifunction_call.params)}
+ ({section name=params loop=$methods[methods].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$methods[methods].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$methods[methods].ifunction_call.params[params].name}</span>{if $methods[methods].ifunction_call.params[params].hasdefault} = <span class="var-default">{$methods[methods].ifunction_call.params[params].default}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+
+ {if $methods[methods].params}
+ <ul class="parameters">
+ {section name=params loop=$methods[methods].params}
+ <li>
+ <span class="var-type">{$methods[methods].params[params].datatype}</span>
+ <span class="var-name">{$methods[methods].params[params].var}</span>{if $methods[methods].params[params].data}<span class="var-description">: {$methods[methods].params[params].data}</span>{/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+ {if $methods[methods].method_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$methods[methods].method_overrides.link}</dt>
+ {if $methods[methods].method_overrides.sdesc}
+ <dd>{$methods[methods].method_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+ {if $methods[methods].method_implements}
+ <hr class="separator" />
+ <div class="notes">Implementation of:</div>
+ {section name=imp loop=$methods[methods].method_implements}
+ <dl>
+ <dt>{$methods[methods].method_implements[imp].link}</dt>
+ {if $methods[methods].method_implements[imp].sdesc}
+ <dd>{$methods[methods].method_implements[imp].sdesc}</dd>
+ {/if}
+ </dl>
+ {/section}
+ {/if}
+
+ {if $methods[methods].descmethod}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=dm loop=$methods[methods].descmethod}
+ <li>
+ {$methods[methods].descmethod[dm].link}
+ {if $methods[methods].descmethod[dm].sdesc}
+ : {$methods[methods].descmethod[dm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+</div>
+{/if}
+{/section}
+
+{section name=methods loop=$methods}
+{if !$methods[methods].static}
+<a name="method{$methods[methods].function_name}" id="{$methods[methods].function_name}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="method-header">
+ <span class="method-title">{if $methods[methods].ifunction_call.constructor}Constructor {elseif $methods[methods].ifunction_call.destructor}Destructor {/if}{$methods[methods].function_name}</span> (line <span class="line-number">{if $methods[methods].slink}{$methods[methods].slink}{else}{$methods[methods].line_number}{/if}</span>)
+ </div>
+
+ {include file="docblock.tpl" sdesc=$methods[methods].sdesc desc=$methods[methods].desc tags=$methods[methods].tags params=$methods[methods].params function=false}
+
+ <div class="method-signature">
+ <span class="method-result">{$methods[methods].function_return}</span>
+ <span class="method-name">
+ {if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}
+ </span>
+ {if count($methods[methods].ifunction_call.params)}
+ ({section name=params loop=$methods[methods].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$methods[methods].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$methods[methods].ifunction_call.params[params].name}</span>{if $methods[methods].ifunction_call.params[params].hasdefault} = <span class="var-default">{$methods[methods].ifunction_call.params[params].default}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+
+ {if $methods[methods].params}
+ <ul class="parameters">
+ {section name=params loop=$methods[methods].params}
+ <li>
+ <span class="var-type">{$methods[methods].params[params].datatype}</span>
+ <span class="var-name">{$methods[methods].params[params].var}</span>{if $methods[methods].params[params].data}<span class="var-description">: {$methods[methods].params[params].data}</span>{/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+ {if $methods[methods].method_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$methods[methods].method_overrides.link}</dt>
+ {if $methods[methods].method_overrides.sdesc}
+ <dd>{$methods[methods].method_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+ {if $methods[methods].method_implements}
+ <hr class="separator" />
+ <div class="notes">Implementation of:</div>
+ {section name=imp loop=$methods[methods].method_implements}
+ <dl>
+ <dt>{$methods[methods].method_implements[imp].link}</dt>
+ {if $methods[methods].method_implements[imp].sdesc}
+ <dd>{$methods[methods].method_implements[imp].sdesc}</dd>
+ {/if}
+ </dl>
+ {/section}
+ {/if}
+
+ {if $methods[methods].descmethod}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=dm loop=$methods[methods].descmethod}
+ <li>
+ {$methods[methods].descmethod[dm].link}
+ {if $methods[methods].descmethod[dm].sdesc}
+ : {$methods[methods].descmethod[dm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+</div>
+{/if}
+{/section}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/page.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/page.tpl
new file mode 100755
index 00000000..b5980236
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/page.tpl
@@ -0,0 +1,211 @@
+{include file="header.tpl" top3=true}
+
+<h2 class="file-name">{$source_location}</h2>
+
+<a name="sec-description"></a>
+<div class="info-box">
+ <div class="info-box-title">Description</div>
+ <div class="nav-bar">
+ {if $classes || $includes || $defines || $globals || $functions}
+ <span class="disabled">Description</span> |
+ {/if}
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="docblock.tpl" desc=$desc sdesc=$sdesc tags=$tags}
+
+ {if $tutorial}
+ <hr class="separator" />
+ <div class="notes">Tutorial: <span class="tutorial">{$tutorial}</div>
+ {/if}
+ </div>
+</div>
+
+{if $classes}
+ <a name="sec-classes"></a>
+ <div class="info-box">
+ <div class="info-box-title">Classes</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ <span class="disabled">Classes</span>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <table cellpadding="2" cellspacing="0" class="class-table">
+ <tr>
+ <th class="class-table-header">Class</th>
+ <th class="class-table-header">Description</th>
+ </tr>
+ {section name=classes loop=$classes}
+ <tr>
+ <td style="padding-right: 2em; vertical-align: top">
+ {$classes[classes].link}
+ </td>
+ <td>
+ {if $classes[classes].sdesc}
+ {$classes[classes].sdesc}
+ {else}
+ {$classes[classes].desc}
+ {/if}
+ </td>
+ </tr>
+ {/section}
+ </table>
+ </div>
+ </div>
+{/if}
+
+{if $includes}
+ <a name="sec-includes"></a>
+ <div class="info-box">
+ <div class="info-box-title">Includes</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ <span class="disabled">Includes</span>
+ {if $defines || $globals || $functions}|{/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="include.tpl"}
+ </div>
+ </div>
+{/if}
+
+{if $defines}
+ <a name="sec-constants"></a>
+ <div class="info-box">
+ <div class="info-box-title">Constants</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ <span class="disabled">Constants</span>
+ {if $globals || $functions}|{/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="define.tpl"}
+ </div>
+ </div>
+{/if}
+
+{if $globals}
+ <a name="sec-variables"></a>
+ <div class="info-box">
+ <div class="info-box-title">Variables</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ <span class="disabled">Variables</span>
+ {if $functions}|{/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="global.tpl"}
+ </div>
+ </div>
+{/if}
+
+{if $functions}
+ <a name="sec-functions"></a>
+ <div class="info-box">
+ <div class="info-box-title">Functions</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ <span class="disabled">Functions</span>
+ </div>
+ <div class="info-box-body">
+ {include file="function.tpl"}
+ </div>
+ </div>
+{/if}
+
+{include file="footer.tpl" top3=true}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/pkgelementindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/pkgelementindex.tpl
new file mode 100755
index 00000000..dc283ad0
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/pkgelementindex.tpl
@@ -0,0 +1,17 @@
+{include file="header.tpl"}
+<a name="top"></a>
+<h2>[{$package}] element index</h2>
+{if count($packageindex) > 1}
+ <h3>Package indexes</h3>
+ <ul>
+ {section name=p loop=$packageindex}
+ {if $packageindex[p].title != $package}
+ <li><a href="elementindex_{$packageindex[p].title}.html">{$packageindex[p].title}</a></li>
+ {/if}
+ {/section}
+ </ul>
+{/if}
+<a href="elementindex.html">All elements</a>
+<br />
+{include file="basicindex.tpl" indexname=elementindex_$package}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/ric.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/ric.tpl
new file mode 100755
index 00000000..eff734c1
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/ric.tpl
@@ -0,0 +1,6 @@
+{include file="header.tpl"}
+<h1 align="center">{$name}</h1>
+<pre>
+{$contents|htmlentities}
+</pre>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/todolist.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/todolist.tpl
new file mode 100755
index 00000000..f929ccdb
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/todolist.tpl
@@ -0,0 +1,14 @@
+{include file="header.tpl" title="Todo List"}
+<div align="center"><h1>Todo List</h1></div>
+{foreach from=$todos key=todopackage item=todo}
+<h2>{$todopackage}</h2>
+{section name=todo loop=$todo}
+<h3>{$todo[todo].link}</h3>
+<ul>
+{section name=t loop=$todo[todo].todos}
+ <li>{$todo[todo].todos[t]}</li>
+{/section}
+</ul>
+{/section}
+{/foreach}
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/top_frame.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/top_frame.tpl
new file mode 100755
index 00000000..fbe7eda3
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/top_frame.tpl
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+ <html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <!-- template designed by Marco Von Ballmoos -->
+ <title>{$title}</title>
+ <link rel="stylesheet" href="{$subdir}media/stylesheet.css" />
+ <link rel="stylesheet" href="{$subdir}media/banner.css" />
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+ </head>
+ <body>
+ <div class="banner">
+ <div class="banner-title">{$package}</div>
+ <div class="banner-menu">
+ <table cellpadding="0" cellspacing="0" style="width: 100%">
+ <tr>
+ <td>
+ {if count($ric) >= 1}
+ {assign var="last_ric_name" value=""}
+ {section name=ric loop=$ric}
+ {if $last_ric_name != ""} | {/if}
+ <a href="{$ric[ric].file}" target="right">{$ric[ric].name}</a>
+ {assign var="last_ric_name" value=$ric[ric].name}
+ {/section}
+ {/if}
+ </td>
+ <td style="width: 2em">&nbsp;</td>
+ <td style="text-align: right">
+ {if count($packages) > 1}
+ {assign var="last_package_name" value=""}
+ {section name=p loop=$packages}
+ {if $last_package_name != ""} | {/if}
+ <a href="{$packages[p].link}" target="left_bottom">{$packages[p].title}</a>
+ {assign var="last_package_name" value=$packages[p].title}
+ {/section}
+ {/if}
+ </td>
+ </tr>
+ </table>
+ </div>
+ </div>
+ </body>
+ </html> \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/tutorial.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/tutorial.tpl
new file mode 100755
index 00000000..3b9109d1
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/tutorial.tpl
@@ -0,0 +1,13 @@
+{include file="header.tpl" title=$title top3=true}
+
+{if $nav}
+ {include file="tutorial_nav.tpl" prev=$prev next=$next up=$up prevtitle=$prevtitle nexttitle=$nexttitle uptitle=$uptitle}
+{/if}
+
+{$contents}
+
+{if $nav}
+ {include file="tutorial_nav.tpl" prev=$prev next=$next up=$up prevtitle=$prevtitle nexttitle=$nexttitle uptitle=$uptitle}
+{/if}
+
+{include file="footer.tpl" top3=true} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/tutorial_nav.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/tutorial_nav.tpl
new file mode 100755
index 00000000..89952301
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/tutorial_nav.tpl
@@ -0,0 +1,41 @@
+<table class="tutorial-nav-box">
+ <tr>
+ <td style="width: 30%">
+ {if $prev}
+ <a href="{$prev}" class="nav-button">Previous</a>
+ {else}
+ <span class="nav-button-disabled">Previous</span>
+ {/if}
+ </td>
+ <td style="text-align: center">
+ {if $up}
+ <a href="{$up}" class="nav-button">Up</a>
+ {/if}
+ </td>
+ <td style="text-align: right; width: 30%">
+ {if $next}
+ <a href="{$next}" class="nav-button">Next</a>
+ {else}
+ <span class="nav-button-disabled">Next</span>
+ {/if}
+ </td>
+ </tr>
+ <tr>
+ <td style="width: 30%">
+ {if $prevtitle}
+ <span class="detail">{$prevtitle}</span>
+ {/if}
+ </td>
+ <td style="text-align: center">
+ {if $uptitle}
+ <span class="detail">{$uptitle}</span>
+ {/if}
+ </td>
+ <td style="text-align: right; width: 30%">
+ {if $nexttitle}
+ <span class="detail">{$nexttitle}</span>
+ {/if}
+ </td>
+ </tr>
+</table>
+ \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/tutorial_toc.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/tutorial_toc.tpl
new file mode 100755
index 00000000..3482249b
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/tutorial_toc.tpl
@@ -0,0 +1,40 @@
+{if count($toc)}
+<h1 class="title">Table of Contents</h1>
+<ul class="toc">
+ {assign var="lastcontext" value='refsect1'}
+ {section name=toc loop=$toc}
+
+ {if $toc[toc].tagname != $lastcontext}
+ {if $lastcontext == 'refsect1'}
+ <ul class="toc">
+ <li>{$toc[toc].link}</li>
+ {else}
+ {if $lastcontext == 'refsect2'}
+ {if $toc[toc].tagname == 'refsect1'}
+ </ul>
+ <li>{$toc[toc].link}</li>
+ {/if}
+ {if $toc[toc].tagname == 'refsect3'}
+ <ul class="toc">
+ <li>{$toc[toc].link}</li>
+ {/if}
+ {else}
+ </ul>
+ </ul>
+ <li>{$toc[toc].link}</li>
+ {/if}
+ {/if}
+ {assign var="lastcontext" value=$toc[toc].tagname}
+ {else}
+ <li>{$toc[toc].link}</li>
+ {/if}
+ {/section}
+ {if $lastcontext == 'refsect2'}
+ </ul>
+ {/if}
+ {if $lastcontext == 'refsect3'}
+ </ul>
+ </ul>
+ {/if}
+</ul>
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/tutorial_tree.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/tutorial_tree.tpl
new file mode 100755
index 00000000..617b5654
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/tutorial_tree.tpl
@@ -0,0 +1,6 @@
+<div><a href="{$main.link}" target="right">{$main.title|strip_tags}</a></div>
+{if $haskids}
+<div style="margin-left: 1em">
+ {$kids}
+</div>
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/var.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/var.tpl
new file mode 100755
index 00000000..607d7681
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/default/templates/var.tpl
@@ -0,0 +1,91 @@
+{section name=vars loop=$vars}
+{if $vars[vars].static}
+<a name="var{$vars[vars].var_name}" id="{$vars[vars].var_name}"><!-- --></A>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="var-header">
+ <span class="var-title">
+ static <span class="var-type">{$vars[vars].var_type}</span>
+ <span class="var-name">{$vars[vars].var_name}</span>
+ {if $vars[vars].var_default} = <span class="var-default">{$vars[vars].var_default|replace:"\n":"<br />"}</span>{/if}
+ (line <span class="line-number">{if $vars[vars].slink}{$vars[vars].slink}{else}{$vars[vars].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$vars[vars].sdesc desc=$vars[vars].desc tags=$vars[vars].tags}
+
+ {if $vars[vars].var_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$vars[vars].var_overrides.link}</dt>
+ {if $vars[vars].var_overrides.sdesc}
+ <dd>{$vars[vars].var_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+
+ {if $vars[vars].descvar}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=vm loop=$vars[vars].descvar}
+ <li>
+ {$vars[vars].descvar[vm].link}
+ {if $vars[vars].descvar[vm].sdesc}
+ : {$vars[vars].descvar[vm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+</div>
+{/if}
+{/section}
+{section name=vars loop=$vars}
+{if !$vars[vars].static}
+<a name="var{$vars[vars].var_name}" id="{$vars[vars].var_name}"><!-- --></A>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="var-header">
+ <span class="var-title">
+ <span class="var-type">{$vars[vars].var_type}</span>
+ <span class="var-name">{$vars[vars].var_name}</span>
+ {if $vars[vars].var_default} = <span class="var-default">{$vars[vars].var_default|replace:"\n":"<br />"}</span>{/if}
+ (line <span class="line-number">{if $vars[vars].slink}{$vars[vars].slink}{else}{$vars[vars].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$vars[vars].sdesc desc=$vars[vars].desc tags=$vars[vars].tags}
+
+ {if $vars[vars].var_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$vars[vars].var_overrides.link}</dt>
+ {if $vars[vars].var_overrides.sdesc}
+ <dd>{$vars[vars].var_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+
+ {if $vars[vars].descvar}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=vm loop=$vars[vars].descvar}
+ <li>
+ {$vars[vars].descvar[vm].link}
+ {if $vars[vars].descvar[vm].sdesc}
+ : {$vars[vars].descvar[vm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+</div>
+{/if}
+{/section}
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/options.ini b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/options.ini
new file mode 100755
index 00000000..64638d09
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/options.ini
@@ -0,0 +1,576 @@
+preservedocbooktags = false
+
+;; used to highlight the {@source} inline tag, @filesource tag, and @example tag
+[highlightSourceTokens]
+;; format:
+;; T_CONSTANTNAME = open
+;; /T_CONSTANTNAME = close
+
+T_INCLUDE = <span class="src-inc">
+/T_INCLUDE = </span>
+T_INCLUDE_ONCE = <span class="src-inc">
+/T_INCLUDE_ONCE = </span>
+T_REQUIRE_ONCE = <span class="src-inc">
+/T_REQUIRE_ONCE = </span>
+T_REQUIRE_ONCE = <span class="src-inc">
+/T_REQUIRE_ONCE = </span>
+
+T_CONSTANT_ENCAPSED_STRING = <span class="src-str">
+/T_CONSTANT_ENCAPSED_STRING = </span>
+T_STRING_VARNAME = <span class="src-str">
+/T_STRING_VARNAME = </span>
+
+T_STRING = <span class="src-id">
+/T_STRING = </span>
+
+T_DNUMBER = <span class="src-num">
+/T_DNUMBER = </span>
+T_LNUMBER = <span class="src-num">
+/T_LNUMBER = </span>
+
+T_VARIABLE = <span class="src-var">
+/T_VARIABLE = </span>
+
+T_COMMENT = <span class="src-comm">
+/T_COMMENT = </span>
+T_ML_COMMENT = <span class="src-comm">
+/T_ML_COMMENT = </span>
+
+T_OBJECT_OPERATOR = <span class="src-sym">
+/T_OBJECT_OPERATOR = </span>
+
+T_ABSTRACT = <span class="src-key">
+/T_ABSTRACT = </span>
+T_CLONE = <span class="src-key">
+/T_CLONE = </span>
+T_HALT_COMPILER = <span class="src-key">
+/T_HALT_COMPILER = </span>
+T_ARRAY = <span class="src-key">
+/T_ARRAY = </span>
+T_AS = <span class="src-key">
+/T_AS = </span>
+T_BREAK = <span class="src-key">
+/T_BREAK = </span>
+T_CLASS = <span class="src-key">
+/T_CLASS = </span>
+T_CASE = <span class="src-key">
+/T_CASE = </span>
+T_CONST = <span class="src-key">
+/T_CONST = </span>
+T_CONTINUE = <span class="src-key">
+/T_CONTINUE = </span>
+T_DECLARE = <span class="src-key">
+/T_DECLARE = </span>
+T_DEFAULT = <span class="src-key">
+/T_DEFAULT = </span>
+T_ELSE = <span class="src-key">
+/T_ELSE = </span>
+T_ELSEIF = <span class="src-key">
+/T_ELSEIF = </span>
+T_EMPTY = <span class="src-key">
+/T_EMPTY = </span>
+T_ENDDECLARE = <span class="src-key">
+/T_ENDDECLARE = </span>
+T_ENDFOR = <span class="src-key">
+/T_ENDFOR = </span>
+T_ENDSWITCH = <span class="src-key">
+/T_ENDSWITCH = </span>
+T_ENDFOREACH = <span class="src-key">
+/T_ENDFOREACH = </span>
+T_ENDIF = <span class="src-key">
+/T_ENDIF = </span>
+T_ENDWHILE = <span class="src-key">
+/T_ENDWHILE = </span>
+T_EXIT = <span class="src-key">
+/T_EXIT = </span>
+T_EXTENDS = <span class="src-key">
+/T_EXTENDS = </span>
+T_FINAL = <span class="src-key">
+/T_FINAL = </span>
+T_FOR = <span class="src-key">
+/T_FOR = </span>
+T_FOREACH = <span class="src-key">
+/T_FOREACH = </span>
+T_FUNCTION = <span class="src-key">
+/T_FUNCTION = </span>
+T_GLOBAL = <span class="src-key">
+/T_GLOBAL = </span>
+T_IF = <span class="src-key">
+/T_IF = </span>
+T_IMPLEMENTS = <span class="src-key">
+/T_IMPLEMENTS = </span>
+T_INTERFACE = <span class="src-key">
+/T_INTERFACE = </span>
+T_LOGICAL_AND = <span class="src-key">
+/T_LOGICAL_AND = </span>
+T_LOGICAL_OR = <span class="src-key">
+/T_LOGICAL_OR = </span>
+T_LOGICAL_XOR = <span class="src-key">
+/T_LOGICAL_XOR = </span>
+T_NEW = <span class="src-key">
+/T_NEW = </span>
+T_PRIVATE = <span class="src-key">
+/T_PRIVATE = </span>
+T_PROTECTED = <span class="src-key">
+/T_PROTECTED = </span>
+T_PUBLIC = <span class="src-key">
+/T_PUBLIC = </span>
+T_RETURN = <span class="src-key">
+/T_RETURN = </span>
+T_STATIC = <span class="src-key">
+/T_STATIC = </span>
+T_SWITCH = <span class="src-key">
+/T_SWITCH = </span>
+T_VAR = <span class="src-key">
+/T_VAR = </span>
+T_WHILE = <span class="src-key">
+/T_WHILE = </span>
+
+T_DOUBLE_COLON = <span class="src-sym">
+/T_DOUBLE_COLON = </span>
+
+T_OPEN_TAG = <span class="src-php">
+/T_OPEN_TAG = </span>
+T_OPEN_TAG_WITH_ECHO = <span class="src-php">
+/T_OPEN_TAG_WITH_ECHO = </span>
+T_CLOSE_TAG = <span class="src-php">
+/T_CLOSE_TAG = </span>
+
+
+[highlightSource]
+;; this is for highlighting things that aren't tokens like "&"
+;; format:
+;; word = open
+;; /word = close
+@ = <span class="src-sym">
+/@ = </span>
+& = <span class="src-sym">
+/& = </span>
+[ = <span class="src-sym">
+/[ = </span>
+] = <span class="src-sym">
+/] = </span>
+! = <span class="src-sym">
+/! = </span>
+";" = <span class="src-sym">
+/; = </span>
+( = <span class="src-sym">
+/( = </span>
+) = <span class="src-sym">
+/) = </span>
+, = <span class="src-sym">
+/, = </span>
+{ = <span class="src-sym">
+/{ = </span>
+} = <span class="src-sym">
+/} = </span>
+""" = <span class="src-str">
+/" = </span>
+
+[highlightDocBlockSourceTokens]
+;; this is for docblock tokens, using by phpDocumentor_HighlightParser
+;; tagphptype is for "string" in @param string description, for example
+docblock = <span class="src-doc">
+/docblock = </span>
+tagphptype = <span class="src-doc-type">
+/tagphptype = </span>
+tagvarname = <span class="src-doc-var">
+/tagvarname = </span>
+coretag = <span class="src-doc-coretag">
+/coretag = </span>
+tag = <span class="src-doc-tag">
+/tag = </span>
+inlinetag = <span class="src-doc-inlinetag">
+/inlinetag = </span>
+internal = <span class="src-doc-internal">
+/internal = </span>
+closetemplate = <span class="src-doc-close-template">
+/closetemplate = </span>
+docblocktemplate = <span class="src-doc-template">
+/docblocktemplate = </span>
+
+[highlightTutorialSourceTokens]
+;; this is for XML DocBook-based tutorials, highlighted by phpDocumentor_TutorialHighlightParser
+;; <tag>
+opentag = <span class="tute-tag">
+/opentag = </span>
+;; </tag>
+closetag = <span class="tute-tag">
+/closetag = </span>
+;; <tag attribute="value">
+attribute = <span class="tute-attribute-name">
+/attribute = </span>
+;; <tag attribute="value">
+attributevalue = <span class="tute-attribute-value">
+/attributevalue = </span>
+;; &entity;
+entity = <span class="tute-entity">
+/entity = </span>
+;; <!-- comment -->
+comment = <span class="tute-comment">
+/comment = </span>
+;; {@inline tag}
+itag = <span class="tute-inline-tag">
+/itag = </span>
+
+;; used for translation of html in DocBlocks
+[desctranslate]
+ul = <ul>
+/ul = </ul>
+ol = <ol>
+/ol = </ol>
+li = <li>
+/li = </li>
+code =
+/code =
+var = <var>
+/var = </var>
+samp = <samp>
+/samp = </samp>
+kbd = <kbd>
+/kbd = </kbd>
+pre = <pre>
+/pre = </pre>
+p = <p>
+/p = </p>
+b = <strong>
+/b = </strong>
+i = <em>
+/i = </em>
+br = <br />
+
+[ppage]
+;; this is the DocBook package page translation section. All DocBook tags
+;; that have a corresponding html tag must be listed here. Entities should
+;; also be listed here
+;;
+;; examples:
+;; 1)
+;; tagname = newtagname
+;;
+;; This is the simplest case, where all attributes will be added into the
+;; starting tag and the ending tag will be html/xml style </tranlatedtagname>
+;; <tagname></tagname> becomes <newtagname></newtagname> and
+;; <tagname attr="value"></tagname> becomes
+;; <newtagname attr="value"></newtagname>
+;;
+;; 2)
+;; tagname = newtagname
+;; tagname->attr = newattrname
+;;
+;; in this case, everything will be like the first case, except tags like:
+;; <tagname attr="value"></tagname> will become
+;; <newtagname newattrname="value"></newtagname>
+;;
+;; 3)
+;; tagname = newtagname
+;; tagname->attr = newattrname
+;; tagname->attr+value = newvalue
+;;
+;; in this case, the value is also translated to another. This can be useful
+;; for instances such as focus="middle" changing to align="center" or something
+;; of that nature.
+;; <tagname attr="value"></tagname> will become
+;; <newtagname newattrname="newvalue"></newtagname>
+;;
+;; 4)
+;; tagname = newtagname
+;; tagname->attr1 = newattrname
+;; tagname->attr2 = newattrname
+;; tagname->attr1+value|attr2+value = newvalue
+;;
+;; in this case, two attributes combine to make one new attribute, and the combined
+;; value is translated into a new value
+;; <tagname attr1="value1" attr2="value2"></tagname> will become
+;; <newtagname newattrname="newvalue"></newtagname>
+;;
+;; 5)
+;; tagname = newtagname
+;; tagname!attr = dummy
+;;
+;; here, the attribute will be ignored. dummy is not used and may be any value
+;; <tagname attr="value"></tagname> will become
+;; <newtagname></newtagname>
+;;
+;; 6)
+;; tagname = newtagname
+;; tagname! = dummy
+;;
+;; here, all attributes will be ignored. dummy is not used and may be any value
+;; <tagname attr1="value" attr2="foo"></tagname> will become
+;; <newtagname></newtagname>
+;;
+;; 7)
+;; tagname = newtagname
+;; tagname/ = 1
+;;
+;; here, the tag will be translated as a single tag with no closing tag, and all
+;; attributes
+;; <tagname attr="val">{text text}</tagname> will become
+;; <newtagname attr="val" />
+;;
+;; 8)
+;; tagname = <starttaginfo />
+;; /tagname = closetagtext
+;;
+;; in this case, the text <starttaginfo> will be inserted exactly as entered for
+;; <tagname> and closetagtext for </tagname>
+;; <tagname attr="val"></tagname> will become
+;; <starttaginfo />closetagtext
+;;
+;; 9)
+;; $attr$my_attribute = newattrname
+;;
+;; tagname = newtagname
+;;
+;; in this case, all occurences of my_attribute in any tag will be changed to
+;; newattrname. This is useful for changing things like role="php" to
+;; class="php," for example. Note that the text "$attr$" MUST be on the line
+;; start for phpDocumentor to recognize it.
+;;
+;; 10)
+;; &entity; = translation text
+;; &quot; = &quot;
+;; &quot; = """
+;; &lt; = <
+;;
+;; Use this to control translation of entities to their appropriate values
+
+&nbsp; = &nbsp;
+&quot; = &quot;
+&rdquo; = &rdquo;
+&ldquo; = &ldquo;
+&amp; = &amp;
+&lt; = &lt;
+&gt; = &gt;
+&copy; = &copy;
+
+$attr$role = class
+
+abbrev = abbr
+
+blockquote = blockquote
+
+arg = span
+arg->choice = class
+
+author = <span class="author">
+/author = </span>
+author! = 0
+
+authorblurb = <div class="author-blurb">
+/authorblurb = </div>
+
+authorgroup = <div class="authors"><h2 class="title">Authors</h2>
+/authorgroup = </div>
+authorgroup! = 0
+
+caution = <span class="warning">
+/caution = </span>
+caution! = 0
+
+cmdsynopsis = <div class="cmd-synopsis">
+/cmdsynopsis = </div>
+
+command = <span class="cmd-title">
+/command = </span>
+
+copyright = <div class="notes">
+/copyright = </div>
+
+emphasis = em
+
+example = <div class="src-code">
+/example = </div>
+example! = 0
+
+formalpara = p
+
+graphic = img
+graphic->fileref = src
+graphic/ =
+
+function =
+/function = ()
+
+important = strong
+
+informalequation = blockquote
+
+informalexample = div
+
+inlineequation = em
+
+itemizedlist = ul
+
+listitem = li
+
+literal = code
+
+literallayout = span
+
+option = " "
+/option =
+
+orderedlist = ol
+
+para = p
+
+programlisting = <div class="src-code">
+/programlisting = </div>
+programlisting! = 0
+
+refentry = div
+
+refnamediv = <div class="ref-title-box">
+/refnamediv = </div>
+refnamediv! = 0
+
+refname = <h1 class="ref-title">
+/refname = </h1>
+
+refpurpose = <h2 class="ref-purpose">
+/refpurpose = </h2>
+
+refsynopsisdiv = <div class="ref-synopsis">
+/refsynopsisdiv = </div>
+refsynopsisdiv! = 0
+
+refsect1 = span
+
+refsect2 = span
+
+refsect3 =
+/refsect3 = <br />
+
+releaseinfo = <div class="release-info">(
+/releaseinfo = )</div>
+
+simpara =
+/simpara = <br />
+simpara! = 0
+
+subscript = sub
+
+superscript = super
+
+table = table
+
+table->colsep = rules
+table->rowsep = rules
+table->colsep+1|rowsep+1 =all
+table->colsep+1|rowsep+0 =cols
+table->colsep+0|rowsep+1 =rows
+
+table->frame =frame
+table->frame+all =border
+table->frame+none =void
+table->frame+sides =vsides
+table->frame+top =above
+table->frame+topbot =hsides
+
+thead = thead
+
+tfoot = tfoot
+
+tbody = tbody
+
+colspec = col
+
+tgroup = colgroup
+tgroup/ = 1
+tgroup->cols = span
+
+row = tr
+
+entry = td
+entry->morerows = colspan
+entry->morerows+1 =2
+entry->morerows+2 =3
+entry->morerows+3 =4
+entry->morerows+4 =5
+entry->morerows+5 =6
+entry->morerows+6 =7
+entry->morerows+7 =8
+entry->morerows+8 =9
+entry->morerows+9 =10
+entry->morerows+10 =11
+;; add more if you need more colspans
+
+warning = <span class="warning">
+/warning = </span>
+warning! = 0
+
+;; now begins the attributes that should be tags in cdata
+[$attr$id]
+open = a
+;close = /a
+cdata! = true
+quotevalues = true
+separator = "="
+;separateall = true
+$id = name
+
+;; now begins the sections that deal with <title>
+[refsynopsisdiv_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h1 class="title">
+close = </h1>
+
+[refsect1_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h2 class="title">
+close = </h2>
+
+[refsect2_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h3 class="title">
+close = </h3>
+
+[refsect3_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h4 class="title">
+close = </h4>
+
+[para_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <div class="title">
+close = </div>
+
+[formalpara_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <div class="title">
+close = </div>
+
+[example_title]
+;tag_attr = true
+;attr_name = title
+;cdata_start = true
+cdata_end = true
+open = </td></tr><tr><td><strong>
+close = </strong>
+
+[table_title]
+;tag_attr = true
+;attr_name = true
+cdata_start = true
+open = <caption>
+close = </caption>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/basicindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/basicindex.tpl
new file mode 100755
index 00000000..f90100b4
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/basicindex.tpl
@@ -0,0 +1,57 @@
+<div class="index-letter-menu">
+{section name=letter loop=$letters}
+ <a class="index-letter" href="{$indexname}.html#{$letters[letter].letter}">{$letters[letter].letter}</a>
+{/section}
+</div>
+
+{section name=index loop=$index}
+ <a name="{$index[index].letter}"></a>
+ <div class="index-letter-section">
+ <div style="float: left" class="index-letter-title">{$index[index].letter}</div>
+ <div style="float: right"><a href="#top">top</a></div>
+ <div style="clear: both"></div>
+ </div>
+ <dl>
+ {section name=contents loop=$index[index].index}
+ <dt class="field">
+ {if ($index[index].index[contents].title == "Variable")}
+ <img src="{$subdir}media/images/{if $index[index].index[contents].access == 'private'}Private{/if}{$index[index].index[contents].title}.png" alt="{$index[index].index[contents].title}" title="{$index[index].index[contents].title}" />
+ <span class="var-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Global")}
+ <img src="{$subdir}media/images/{$index[index].index[contents].title}.png" alt="{$index[index].index[contents].title}" title="{$index[index].index[contents].title}" />
+ <span class="var-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Method")}
+ <img src="{$subdir}media/images/{if $index[index].index[contents].constructor}Constructor{elseif $index[index].index[contents].destructor}Destructor{else}{if $index[index].index[contents].abstract}Abstract{/if}{if $index[index].index[contents].access == 'private'}Private{/if}{$index[index].index[contents].title}{/if}.png" alt="{$index[index].index[contents].title}" title="{$index[index].index[contents].title}" />
+ <span class="method-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Function")}
+ <img src="{$subdir}media/images/{$index[index].index[contents].title}.png" alt="{$index[index].index[contents].title}" title="{$index[index].index[contents].title}" />
+ <span class="method-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Constant")}
+ <img src="{$subdir}media/images/{$index[index].index[contents].title}.png" alt="{$index[index].index[contents].title}" title="{$index[index].index[contents].title}" />
+ <span class="const-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Page") || ($index[index].index[contents].title == "Include")}
+ <img src="{$subdir}media/images/{$index[index].index[contents].title}.png" alt="{$index[index].index[contents].title}" title="{$index[index].index[contents].title}" />
+ <span class="include-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Class")}
+ <img src="{$subdir}media/images/{if $index[index].index[contents].abstract}Abstract{/if}{if $index[index].index[contents].access == 'private'}Private{/if}{$index[index].index[contents].title}.png" alt="{$index[index].index[contents].title}" title="{$index[index].index[contents].title}" />
+ {$index[index].index[contents].name}
+ {else}
+ <img src="{$subdir}media/images/{$index[index].index[contents].title}.png" alt="{$index[index].index[contents].title}" title="{$index[index].index[contents].title}" />
+ {$index[index].index[contents].name}
+ {/if}
+ </dt>
+ <dd class="index-item-body">
+ <div class="index-item-details">{$index[index].index[contents].link} in {$index[index].index[contents].file_name}</div>
+ {if $index[index].index[contents].description}
+ <div class="index-item-description">{$index[index].index[contents].description}</div>
+ {/if}
+ </dd>
+ {/section}
+ </dl>
+{/section}
+
+<div class="index-letter-menu">
+{section name=letter loop=$letters}
+ <a class="index-letter" href="{$indexname}.html#{$letters[letter].letter}">{$letters[letter].letter}</a>
+{/section}
+</div>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/blank.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/blank.tpl
new file mode 100755
index 00000000..6a05f27e
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/blank.tpl
@@ -0,0 +1,13 @@
+<html>
+<head>
+ <title>{$maintitle}</title>
+ <link rel="stylesheet" href="{$subdir}media/stylesheet.css" />
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+</head>
+<body>
+<div align="center"><h1>{$maintitle}</h1></div>
+<b>Welcome to {$package}!</b><br />
+<br />
+This documentation was generated by <a href="{$phpdocwebsite}">phpDocumentor v{$phpdocversion}</a><br />
+</body>
+</html> \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/class.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/class.tpl
new file mode 100755
index 00000000..7a46002e
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/class.tpl
@@ -0,0 +1,437 @@
+{include file="header.tpl" top3=true}
+
+<h2 class="class-name"><img src="{$subdir}media/images/{if $abstract}{if $access == 'private'}AbstractPrivate{else}Abstract{/if}{else}{if $access == 'private'}Private{/if}{/if}{if $is_interface}Interface{else}Class{/if}_logo.png"
+ alt="{if $abstract}{if $access == 'private'}AbstractPrivate{else}Abstract{/if}{else}{if $access == 'private'}Private{/if}{/if} Class"
+ title="{if $abstract}{if $access == 'private'}AbstractPrivate{else}Abstract{/if}{else}{if $access == 'private'}Private{/if}{/if} Class"
+ style="vertical-align: middle">{if $is_interface}Interface{/if} {$class_name}</h2>
+
+<a name="sec-description"></a>
+<div class="info-box">
+ <div class="info-box-title">Description</div>
+ <div class="nav-bar">
+ {if $children || $vars || $ivars || $methods || $imethods || $consts || $iconsts}
+ <span class="disabled">Description</span> |
+ {/if}
+ {if $children}
+ <a href="#sec-descendents">Descendents</a>
+ {if $vars || $ivars || $methods || $imethods || $consts || $iconsts}|{/if}
+ {/if}
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ {if $methods || $imethods}|{/if}
+ {/if}
+ {if $methods || $imethods}
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {if $implements}
+ <p class="implements">
+ Implements interfaces:
+ <ul>
+ {foreach item="int" from=$implements}<li>{$int}</li>{/foreach}
+ </ul>
+ </p>
+ {/if}
+ {include file="docblock.tpl" type="class" sdesc=$sdesc desc=$desc}
+ <p class="notes">
+ Located in <a class="field" href="{$page_link}">{$source_location}</a> (line <span class="field">{if $class_slink}{$class_slink}{else}{$line_number}{/if}</span>)
+ </p>
+
+ {if $tutorial}
+ <hr class="separator" />
+ <div class="notes">Tutorial: <span class="tutorial">{$tutorial}</span></div>
+ {/if}
+
+ <pre>{section name=tree loop=$class_tree.classes}{$class_tree.classes[tree]}{$class_tree.distance[tree]}{/section}</pre>
+
+ {if $conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with classes:</span><br />
+ {section name=me loop=$conflicts.conflicts}
+ {$conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+ </div>
+</div>
+
+{if $children}
+ <a name="sec-descendents"></a>
+ <div class="info-box">
+ <div class="info-box-title">Direct descendents</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ <span class="disabled">Descendents</span>
+ {if $vars || $ivars || $methods || $imethods || $consts || $iconsts}|{/if}
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ {if $methods || $imethods}|{/if}
+ {/if}
+ {if $methods || $imethods}
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <table cellpadding="2" cellspacing="0" class="class-table">
+ <tr>
+ <th class="class-table-header">Class</th>
+ <th class="class-table-header">Description</th>
+ </tr>
+ {section name=kids loop=$children}
+ <tr>
+ <td style="padding-right: 2em; white-space: nowrap">
+ <img src="{$subdir}media/images/{if $children[kids].abstract}Abstract{/if}{if $children[kids].access == 'private'}Private{/if}Class.png"
+ alt="{if $children[kids].abstract}Abstract{/if}{if $children[kids].access == 'private'}Private{/if} class"
+ title="{if $children[kids].abstract}Abstract{/if}{if $children[kids].access == 'private'}Private{/if} class"
+ style="vertical-align: center"/>
+ {$children[kids].link}
+ </td>
+ <td>
+ {if $children[kids].sdesc}
+ {$children[kids].sdesc}
+ {else}
+ {$children[kids].desc}
+ {/if}
+ </td>
+ </tr>
+ {/section}
+ </table>
+ </div>
+ </div>
+{/if}
+
+{if $consts}
+ <a name="sec-const-summary"></a>
+ <div class="info-box">
+ <div class="info-box-title">Class Constant Summary</span></div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendants</a> |
+ {/if}
+ <span class="disabled">Constants</span> (<a href="#sec-consts">details</a>)
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ |
+ {/if}
+ {if $methods || $imethods}
+ |
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <div class="const-summary">
+ {section name=consts loop=$consts}
+ <div class="const-title">
+ <img src="{$subdir}media/images/Constant.png" alt=" " />
+ <a href="#{$consts[consts].const_name}" title="details" class="const-name">{$consts[consts].const_name}</a> = <span class="var-type">{$consts[consts].const_value}</span>
+
+ </div>
+ {/section}
+ </div>
+ </div>
+ </div>
+{/if}
+
+{if $vars}
+ <a name="sec-var-summary"></a>
+ <div class="info-box">
+ <div class="info-box-title">Variable Summary</span></div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendants</a> |
+ {/if}
+ <span class="disabled">Vars</span> (<a href="#sec-vars">details</a>)
+ {if $methods || $imethods}
+ |
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <div class="var-summary">
+ {section name=vars loop=$vars}
+ {if $vars[vars].static}
+ <div class="var-title">
+ <img src="{$subdir}media/images/StaticVariable.png" alt=" " />
+ static <span class="var-type">{$vars[vars].var_type}</span>
+ <a href="#{$vars[vars].var_name}" title="details" class="var-name">{$vars[vars].var_name}</a>
+ </div>
+ {/if}
+ {/section}
+ {section name=vars loop=$vars}
+ {if !$vars[vars].static}
+ <div class="var-title">
+ <img src="{$subdir}media/images/{if $vars[vars].access == 'private'}PrivateVariable{else}Variable{/if}.png" alt=" " />
+ <span class="var-type">{$vars[vars].var_type}</span>
+ <a href="#{$vars[vars].var_name}" title="details" class="var-name">{$vars[vars].var_name}</a>
+ </div>
+ {/if}
+ {/section}
+ </div>
+ </div>
+ </div>
+{/if}
+
+{if $methods}
+ <a name="sec-method-summary"></a>
+ <div class="info-box">
+ <div class="info-box-title">Method Summary</span></div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendants</a> |
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ |
+ {/if}
+ <span class="disabled">Methods</span> (<a href="#sec-methods">details</a>)
+ </div>
+ <div class="info-box-body">
+ <div class="method-summary">
+ {section name=methods loop=$methods}
+ {if $methods[methods].static}
+ <div class="method-definition">
+ <img src="{$subdir}media/images/StaticMethod.png" alt=" "/>
+ {if $methods[methods].function_return}
+ static <span class="method-result">{$methods[methods].function_return}</span>
+ {/if}
+ <a href="#{$methods[methods].function_name}" title="details" class="method-name">{if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}</a>
+ {if count($methods[methods].ifunction_call.params)}
+ ({section name=params loop=$methods[methods].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$methods[methods].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$methods[methods].ifunction_call.params[params].name}</span>{if $methods[methods].ifunction_call.params[params].hasdefault} = <span class="var-default">{$methods[methods].ifunction_call.params[params].default}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+ {/if}
+ {/section}
+ {section name=methods loop=$methods}
+ {if !$methods[methods].static}
+ <div class="method-definition">
+ <img src="{$subdir}media/images/{if $methods[methods].ifunction_call.constructor}Constructor{elseif $methods[methods].ifunction_call.destructor}Destructor{elseif $methods[methods].access == 'private'}{if $methods[methods].abstract}Abstract{/if}PrivateMethod{else}{if $methods[methods].abstract}Abstract{/if}Method{/if}.png" alt=" "/>
+ {if $methods[methods].function_return}
+ <span class="method-result">{$methods[methods].function_return}</span>
+ {/if}
+ <a href="#{$methods[methods].function_name}" title="details" class="method-name">{if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}</a>
+ {if count($methods[methods].ifunction_call.params)}
+ ({section name=params loop=$methods[methods].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$methods[methods].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$methods[methods].ifunction_call.params[params].name}</span>{if $methods[methods].ifunction_call.params[params].hasdefault} = <span class="var-default">{$methods[methods].ifunction_call.params[params].default}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+ {/if}
+ {/section}
+ </div>
+ </div>
+ </div>
+{/if}
+
+{if $vars || $ivars}
+ <a name="sec-vars"></a>
+ <div class="info-box">
+ <div class="info-box-title">Variables</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendents</a> |
+ {/if}
+ {if $methods}
+ <a href="#sec-var-summary">Vars</a> (<span class="disabled">details</span>)
+ {else}
+ <span class="disabled">Vars</span>
+ {/if}
+
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ {if $methods || $imethods}
+ |
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="var.tpl"}
+ {if $ivars}
+ <h4>Inherited Variables</h4>
+ <A NAME='inherited_vars'><!-- --></A>
+ {section name=ivars loop=$ivars}
+ <p>Inherited from <span class="classname">{$ivars[ivars].parent_class}</span></p>
+ <blockquote>
+ {section name=ivars2 loop=$ivars[ivars].ivars}
+ <img src="{$subdir}media/images/{if $ivars[ivars].ivars[ivars2].access == 'private'}PrivateVariable{else}Variable{/if}.png" />
+ <span class="var-title">
+ <span class="var-name">{$ivars[ivars].ivars[ivars2].link}</span>{if $ivars[ivars].ivars[ivars2].ivar_sdesc}: {$ivars[ivars].ivars[ivars2].ivar_sdesc}{/if}<br>
+ </span>
+ {/section}
+ </blockquote>
+ {/section}
+ {/if}
+ </div>
+ </div>
+{/if}
+
+{if $methods || $imethods}
+ <a name="sec-methods"></a>
+ <div class="info-box">
+ <div class="info-box-title">Methods</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendents</a> |
+ {/if}
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ {/if}
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<span class="disabled">details</span>)
+ {else}
+ <span class="disabled">Methods</span>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="method.tpl"}
+ {if $imethods}
+ <h4>Inherited Methods</h4>
+ <a name='inherited_methods'><!-- --></a>
+ {section name=imethods loop=$imethods}
+ <!-- =========== Summary =========== -->
+ <p>Inherited From <span class="classname">{$imethods[imethods].parent_class}</span></p>
+ <blockquote>
+ {section name=im2 loop=$imethods[imethods].imethods}
+ <img src="{$subdir}media/images/{if $imethods[imethods].imethods[im2].constructor}Constructor{elseif $imethods[imethods].imethods[im2].destructor}Destructor{elseif $imethods[imethods].imethods[im2].access == 'private'}{if $imethods[imethods].imethods[im2].abstract}Abstract{/if}PrivateMethod{else}{if $imethods[imethods].imethods[im2].abstract}Abstract{/if}Method{/if}.png" alt=" "/>
+ <span class="method-name">{$imethods[imethods].imethods[im2].link}</span>{if $imethods[imethods].imethods[im2].ifunction_sdesc}: {$imethods[imethods].imethods[im2].ifunction_sdesc}{/if}<br>
+ {/section}
+ </blockquote>
+ {/section}
+ {/if}
+ </div>
+ </div>
+{/if}
+
+{if $consts || $iconsts}
+ <a name="sec-consts"></a>
+ <div class="info-box">
+ <div class="info-box-title">Class Constants</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendants</a> |
+ {/if}
+ {if $methods}
+ <a href="#sec-var-summary">Constants</a> (<span class="disabled">details</span>)
+ {else}
+ <span class="disabled">Constants</span>
+ {/if}
+
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ {/if}
+ {if $methods || $imethods}
+ |
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="const.tpl"}
+ {if $iconsts}
+ <h4>Inherited Constants</h4>
+ <A NAME='inherited_consts'><!-- --></A>
+ {section name=iconsts loop=$iconsts}
+ <p>Inherited from <span class="classname">{$iconsts[iconsts].parent_class}</span></p>
+ <blockquote>
+ {section name=iconsts2 loop=$iconsts[iconsts].iconsts}
+ <img src="{$subdir}media/images/{if $iconsts[iconsts].iconsts[iconsts2].access == 'private'}PrivateVariable{else}Variable{/if}.png" />
+ <span class="const-title">
+ <span class="const-name">{$iconsts[iconsts].iconsts[iconsts2].link}</span>{if $iconsts[iconsts].iconsts[iconsts2].iconst_sdesc}: {$iconsts[iconsts].iconsts[iconsts2].iconst_sdesc}{/if}<br>
+ </span>
+ {/section}
+ </blockquote>
+ {/section}
+ {/if}
+ </div>
+ </div>
+{/if}
+
+{include file="footer.tpl" top3=true}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/classtrees.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/classtrees.tpl
new file mode 100755
index 00000000..952e6d50
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/classtrees.tpl
@@ -0,0 +1,19 @@
+{include file="header.tpl" top1=true}
+
+<!-- Start of Class Data -->
+<H2>
+ {$smarty.capture.title}
+</H2>
+{if $interfaces}
+{section name=classtrees loop=$interfaces}
+<h2>Root interface {$interfaces[classtrees].class}</h2>
+{$interfaces[classtrees].class_tree}
+{/section}
+{/if}
+{if $classtrees}
+{section name=classtrees loop=$classtrees}
+<h2>Root class {$classtrees[classtrees].class}</h2>
+{$classtrees[classtrees].class_tree}
+{/section}
+{/if}
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/const.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/const.tpl
new file mode 100644
index 00000000..c26ff92d
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/const.tpl
@@ -0,0 +1,18 @@
+{section name=consts loop=$consts}
+<a name="const{$consts[consts].const_name}" id="{$consts[consts].const_name}"><!-- --></A>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="const-header">
+ <img src="{$subdir}media/images/{if $consts[consts].access == 'private'}PrivateVariable{else}Variable{/if}.png" />
+ <span class="const-title">
+ <span class="const-name">{$consts[consts].const_name}</span>
+ = <span class="const-default">{$consts[consts].const_value|replace:"\n":"<br />"}</span>
+ (line <span class="line-number">{if $consts[consts].slink}{$consts[consts].slink}{else}{$consts[consts].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$consts[consts].sdesc desc=$consts[consts].desc tags=$consts[consts].tags}
+
+</div>
+{/section}
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/define.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/define.tpl
new file mode 100755
index 00000000..94078960
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/define.tpl
@@ -0,0 +1,25 @@
+{section name=def loop=$defines}
+<a name="{$defines[def].define_link}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <img src="{$subdir}media/images/Constant.png" />
+ <span class="const-title">
+ <span class="const-name">{$defines[def].define_name}</span> = {$defines[def].define_value|replace:"\n":"<br />"}
+ (line <span class="line-number">{if $defines[def].slink}{$defines[def].slink}{else}{$defines[def].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$defines[def].sdesc desc=$defines[def].desc tags=$defines[def].tags}
+
+ {if $globals[glob].global_conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with constants:</span><br />
+ {section name=me loop=$defines[def].define_conflicts.conflicts}
+ {$defines[def].define_conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+
+</div>
+{/section} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/docblock.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/docblock.tpl
new file mode 100755
index 00000000..783d5271
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/docblock.tpl
@@ -0,0 +1,14 @@
+<!-- ========== Info from phpDoc block ========= -->
+{if $sdesc}
+<p class="short-description">{$sdesc}</p>
+{/if}
+{if $desc}
+<p class="description">{$desc}</p>
+{/if}
+{if $tags}
+ <ul class="tags">
+ {section name=tags loop=$tags}
+ <li><span class="field">{$tags[tags].keyword}:</span> {$tags[tags].data}</li>
+ {/section}
+ </ul>
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/elementindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/elementindex.tpl
new file mode 100755
index 00000000..d5964f99
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/elementindex.tpl
@@ -0,0 +1,12 @@
+{include file="header.tpl" noleftindex=true}
+<a name="top"></a>
+<h2>Full index</h2>
+<h3>Package indexes</h3>
+<ul>
+{section name=p loop=$packageindex}
+ <li><a href="elementindex_{$packageindex[p].title}.html">{$packageindex[p].title}</a></li>
+{/section}
+</ul>
+<br />
+{include file="basicindex.tpl" indexname="elementindex"}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/errors.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/errors.tpl
new file mode 100755
index 00000000..0f526584
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/errors.tpl
@@ -0,0 +1,21 @@
+{include file="header.tpl" noleftindex=true}
+{section name=files loop=$files}
+<a href="#{$files[files].file}">{$files[files].file}</a><br>
+{/section}
+{foreach key=file item=issues from=$all}
+<a name="{$file}"></a>
+<h1>{$file}</h1>
+{if count($issues.warnings)}
+<h2>Warnings:</h2><br>
+{section name=warnings loop=$issues.warnings}
+<b>{$issues.warnings[warnings].name}</b> - {$issues.warnings[warnings].listing}<br>
+{/section}
+{/if}
+{if count($issues.errors)}
+<h2>Errors:</h2><br>
+{section name=errors loop=$issues.errors}
+<b>{$issues.errors[errors].name}</b> - {$issues.errors[errors].listing}<br>
+{/section}
+{/if}
+{/foreach}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/examplesource.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/examplesource.tpl
new file mode 100755
index 00000000..8abf74ce
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/examplesource.tpl
@@ -0,0 +1,6 @@
+{include file="header.tpl" title=$title}
+<h1>{$title}</h1>
+<div class="listing">
+{$source}
+</div>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/filesource.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/filesource.tpl
new file mode 100755
index 00000000..239f7b41
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/filesource.tpl
@@ -0,0 +1,8 @@
+{capture name="tutle"}File Source for {$name}{/capture}
+{include file="header.tpl" title=$smarty.capture.tutle}
+<h1>Source for file {$name}</h1>
+<p>Documentation is available at {$docs}</p>
+<div class="src-code">
+{$source}
+</div>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/footer.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/footer.tpl
new file mode 100755
index 00000000..8d0f79db
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/footer.tpl
@@ -0,0 +1,8 @@
+{if !$index}
+ <p class="notes" id="credit">
+ Documentation generated on {$date} by <a href="{$phpdocwebsite}" target="_blank">phpDocumentor {$phpdocversion}</a>
+ </p>
+{/if}
+ {if $top3}</div>{/if}
+</body>
+</html>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/function.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/function.tpl
new file mode 100755
index 00000000..e62a98ae
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/function.tpl
@@ -0,0 +1,44 @@
+{section name=func loop=$functions}
+<a name="{$functions[func].function_dest}" id="{$functions[func].function_dest}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <img src="{$subdir}media/images/Function.png" />
+ <span class="method-title">{$functions[func].function_name}</span> (line <span class="line-number">{if $functions[func].slink}{$functions[func].slink}{else}{$functions[func].line_number}{/if}</span>)
+ </div>
+
+ {include file="docblock.tpl" sdesc=$functions[func].sdesc desc=$functions[func].desc tags=$functions[func].tags params=$functions[func].params function=false}
+ <div class="method-signature">
+ <span class="method-result">{$functions[func].function_return}</span>
+ <span class="method-name">
+ {if $functions[func].ifunction_call.returnsref}&amp;{/if}{$functions[func].function_name}
+ </span>
+ {if count($functions[func].ifunction_call.params)}
+ ({section name=params loop=$functions[func].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $functions[func].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$functions[func].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$functions[func].ifunction_call.params[params].name}</span>{if $functions[func].ifunction_call.params[params].hasdefault} = <span class="var-default">{$functions[func].ifunction_call.params[params].default|escape:"html"}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+
+ {if $functions[func].params}
+ <ul class="parameters">
+ {section name=params loop=$functions[func].params}
+ <li>
+ <span class="var-type">{$functions[func].params[params].datatype}</span>
+ <span class="var-name">{$functions[func].params[params].var}</span>{if $functions[func].params[params].data}<span class="var-description">: {$functions[func].params[params].data}</span>{/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+ {if $functions[func].function_conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with functions:</span><br />
+ {section name=me loop=$functions[func].function_conflicts.conflicts}
+ {$functions[func].function_conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+
+</div>
+{/section}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/global.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/global.tpl
new file mode 100755
index 00000000..d37bda37
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/global.tpl
@@ -0,0 +1,27 @@
+{section name=glob loop=$globals}
+<a name="{$globals[glob].global_link}" id="{$globals[glob].global_link}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <img src="{$subdir}media/images/Global.png" />
+ <span class="var-title">
+ <span class="var-type">{$globals[glob].global_type}</span>
+ <span class="var-name">{$globals[glob].global_name}</span>
+ {if $vars[vars].var_default} = <span class="var-default">{$globals[glob].global_value|replace:"\n":"<br />"}</span>{/if}
+ (line <span class="line-number">{if $globals[glob].slink}{$globals[glob].slink}{else}{$globals[glob].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$globals[glob].sdesc desc=$globals[glob].desc tags=$globals[glob].tags}
+
+ {if $globals[glob].global_conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with global variables:</span><br />
+ {section name=me loop=$globals[glob].global_conflicts.conflicts}
+ {$globals[glob].global_conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+
+</div>
+{/section} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/header.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/header.tpl
new file mode 100755
index 00000000..c22ba37d
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/header.tpl
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+ <html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <!-- template designed by Marco Von Ballmoos -->
+ <title>{$title}</title>
+ <link rel="stylesheet" href="{$subdir}media/stylesheet.css" />
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+ </head>
+ <body>
+ {if $top3}<div class="page-body">{/if}
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/include.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/include.tpl
new file mode 100755
index 00000000..f264afd3
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/include.tpl
@@ -0,0 +1,17 @@
+{section name=includes loop=$includes}
+<a name="{$includes[includes].include_file}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <img src="{$subdir}media/images/Page.png" alt=" " />
+ <span class="include-title">
+ <span class="include-type">{$includes[includes].include_name}</span>
+ (<span class="include-name">{$includes[includes].include_value}</span>)
+ (line <span class="line-number">{if $includes[includes].slink}{$includes[includes].slink}{else}{$includes[includes].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$includes[includes].sdesc desc=$includes[includes].desc tags=$includes[includes].tags}
+
+</div>
+{/section} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/index.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/index.tpl
new file mode 100755
index 00000000..7cd61094
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/index.tpl
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//FR"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
+ <html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+ <!-- Generated by phpDocumentor on {$date} -->
+ <title>{$title}</title>
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+</head>
+
+<FRAMESET rows='120,*'>
+ <FRAME src='packages.html' name='left_top' frameborder="1" bordercolor="#999999">
+ <FRAMESET cols='25%,*'>
+ <FRAME src='{$start}' name='left_bottom' frameborder="1" bordercolor="#999999">
+ <FRAME src='{$blank}.html' name='right' frameborder="1" bordercolor="#999999">
+ </FRAMESET>
+ <NOFRAMES>
+ <H2>Frame Alert</H2>
+ <P>This document is designed to be viewed using the frames feature.
+ If you see this message, you are using a non-frame-capable web client.</P>
+ </NOFRAMES>
+</FRAMESET>
+</HTML>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/left_frame.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/left_frame.tpl
new file mode 100755
index 00000000..fe79e521
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/left_frame.tpl
@@ -0,0 +1,159 @@
+{include file="header.tpl" top2=true}
+<div class="package-title">{$package}</div>
+<div class="package-details">
+
+ <dl class="tree">
+
+ <dt class="folder-title">Description</dt>
+ <dd>
+ <a href='{$classtreepage}.html' target='right'>Class trees</a><br />
+ <a href='{$elementindex}.html' target='right'>Index of elements</a><br />
+ {if $hastodos}
+ <a href="{$todolink}" target="right">Todo List</a><br />
+ {/if}
+ </dd>
+
+ {section name=p loop=$info}
+
+ {if $info[p].subpackage == ""}
+
+ {if $info[p].tutorials}
+ <dt class="folder-title"><img class="tree-icon" src="{$subdir}media/images/tutorial_folder.png" alt=" ">Tutorials/Manuals</dt>
+ <dd>
+ {if $info[p].tutorials.pkg}
+ <dl class="tree">
+ <dt class="folder-title"><img class="tree-icon" src="{$subdir}media/images/package_folder.png" alt=" ">Package-level</dt>
+ <dd>
+ {section name=ext loop=$info[p].tutorials.pkg}
+ {$info[p].tutorials.pkg[ext]}
+ {/section}
+ </dd>
+ </dl>
+ {/if}
+
+ {if $info[p].tutorials.cls}
+ <dl class="tree">
+ <dt class="folder-title"><img class="tree-icon" src="{$subdir}media/images/class_folder.png" alt=" ">Class-level</dt>
+ <dd>
+ {section name=ext loop=$info[p].tutorials.cls}
+ {$info[p].tutorials.cls[ext]}
+ {/section}
+ </dd>
+ </dl>
+ {/if}
+
+ {if $info[p].tutorials.proc}
+ <dl class="tree">
+ <dt class="folder-title"><img class="tree-icon" src="{$subdir}media/images/function_folder.png" alt=" ">Function-level</dt>
+ <dd>
+ {section name=ext loop=$info[p].tutorials.proc}
+ {$info[p].tutorials.proc[ext]}
+ {/section}
+ </dd>
+ </dl>
+ {/if}
+ </dd>
+ {/if}
+ {if $info[p].hasinterfaces}
+ <dt class="folder-title"><img class="tree-icon" src="{$subdir}media/images/class_folder.png" alt=" ">Interfaces</dt>
+ {section name=class loop=$info[p].classes}
+ {if $info[p].classes[class].is_interface}
+ <dd><img class="tree-icon" src="{$subdir}media/images/Interface.png" alt="Interface"><a href='{$info[p].classes[class].link}' target='right'>{$info[p].classes[class].title}</a></dd>
+ {/if}
+ {/section}
+ {/if}
+ {if $info[p].hasclasses}
+ <dt class="folder-title"><img class="tree-icon" src="{$subdir}media/images/class_folder.png" alt=" ">Classes</dt>
+ {section name=class loop=$info[p].classes}
+ {if $info[p].classes[class].is_class}
+ <dd><img class="tree-icon" src="{$subdir}media/images/{if $info[p].classes[class].abstract}Abstract{/if}{if $info[p].classes[class].access == 'private'}Private{/if}Class.png" alt="Class"><a href='{$info[p].classes[class].link}' target='right'>{$info[p].classes[class].title}</a></dd>
+ {/if}
+ {/section}
+ {/if}
+ {if $info[p].functions}
+ <dt class="folder-title"><img class="tree-icon" src="{$subdir}media/images/function_folder.png" alt=" ">Functions</dt>
+ {section name=f loop=$info[p].functions}
+ <dd><img class="tree-icon" src="{$subdir}media/images/Function.png" alt="Function"><a href='{$info[p].functions[f].link}' target='right'>{$info[p].functions[f].title}</a></dd>
+ {/section}
+ {/if}
+ {if $info[p].files}
+ <dt class="folder-title"><img class="tree-icon" src="{$subdir}media/images/folder.png" alt=" ">Files</dt>
+ {section name=nonclass loop=$info[p].files}
+ <dd><img class="tree-icon" src="{$subdir}media/images/Page.png" alt="File"><a href='{$info[p].files[nonclass].link}' target='right'>{$info[p].files[nonclass].title}</a></dd>
+ {/section}
+ {/if}
+
+ {else}
+ {if $info[p].tutorials}
+ <dt class="folder-title"><img class="tree-icon" src="{$subdir}media/images/tutorial_folder.png" alt=" ">Tutorials/Manuals</dt>
+ <dd>
+ {if $info[p].tutorials.pkg}
+ <dl class="tree">
+ <dt class="folder-title"><img class="tree-icon" src="{$subdir}media/images/package_folder.png" alt=" ">Package-level</dt>
+ <dd>
+ {section name=ext loop=$info[p].tutorials.pkg}
+ {$info[p].tutorials.pkg[ext]}
+ {/section}
+ </dd>
+ </dl>
+ {/if}
+
+ {if $info[p].tutorials.cls}
+ <dl class="tree">
+ <dt class="folder-title"><img class="tree-icon" src="{$subdir}media/images/class_folder.png" alt=" ">Class-level</dt>
+ <dd>
+ {section name=ext loop=$info[p].tutorials.cls}
+ {$info[p].tutorials.cls[ext]}
+ {/section}
+ </dd>
+ </dl>
+ {/if}
+
+ {if $info[p].tutorials.proc}
+ <dl class="tree">
+ <dt class="folder-title"><img class="tree-icon" src="{$subdir}media/images/function_folder.png" alt=" ">Function-level</dt>
+ <dd>
+ {section name=ext loop=$info[p].tutorials.proc}
+ {$info[p].tutorials.proc[ext]}
+ {/section}
+ </dd>
+ </dl>
+ {/if}
+ </dd>
+ {/if}
+
+ <dt class="sub-package"><img class="tree-icon" src="{$subdir}media/images/package.png" alt="Sub-package">{$info[p].subpackage}</dt>
+ <dd>
+ <dl class="tree">
+ {if $info[p].subpackagetutorial}
+ <div><img class="tree-icon" src="{$subdir}media/images/tutorial.png" alt="Tutorial"><a href="{$info.0.subpackagetutorialnoa}" target="right">{$info.0.subpackagetutorialtitle}</a></div>
+ {/if}
+ {if $info[p].classes}
+ <dt class="folder-title"><img class="tree-icon" src="{$subdir}media/images/class_folder.png" alt=" ">Classes</dt>
+ {section name=class loop=$info[p].classes}
+ <dd><img class="tree-icon" src="{$subdir}media/images/{if $info[p].classes[class].abstract}Abstract{/if}{if $info[p].classes[class].access == 'private'}Private{/if}Class.png" alt="Class"><a href='{$info[p].classes[class].link}' target='right'>{$info[p].classes[class].title}</a></dd>
+ {/section}
+ {/if}
+ {if $info[p].functions}
+ <dt class="folder-title"><img class="tree-icon" src="{$subdir}media/images/function_folder.png" alt=" ">Functions</dt>
+ {section name=f loop=$info[p].functions}
+ <dd><img class="tree-icon" src="{$subdir}media/images/Function.png" alt="Function"><a href='{$info[p].functions[f].link}' target='right'>{$info[p].functions[f].title}</a></dd>
+ {/section}
+ {/if}
+ {if $info[p].files}
+ <dt class="folder-title"><img class="tree-icon" src="{$subdir}media/images/folder.png" alt=" ">Files</dt>
+ {section name=nonclass loop=$info[p].files}
+ <dd><img class="tree-icon" src="{$subdir}media/images/Page.png" alt="File"><a href='{$info[p].files[nonclass].link}' target='right'>{$info[p].files[nonclass].title}</a></dd>
+ {/section}
+ {/if}
+ </dl>
+ </dd>
+
+ {/if}
+
+ {/section}
+ </dl>
+</div>
+<p class="notes"><a href="{$phpdocwebsite}" target="_blank">phpDocumentor v <span class="field">{$phpdocversion}</span></a></p>
+</BODY>
+</HTML>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/banner.css b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/banner.css
new file mode 100755
index 00000000..032b037f
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/banner.css
@@ -0,0 +1,33 @@
+body
+{
+ background-color: #EEEEEE;
+ margin: 0px;
+ padding: 0px;
+}
+
+/* Banner (top bar) classes */
+
+.banner { }
+
+.banner-menu
+{
+ text-align: right;
+ clear: both;
+ padding: .5em;
+ border-top: 2px solid #AAAAAA;
+}
+
+.banner-title
+{
+ text-align: right;
+ font-size: 20pt;
+ font-weight: bold;
+ margin: .2em;
+}
+
+.package-selector
+{
+ background-color: #DDDDDD;
+ border: 1px solid #AAAAAA;
+ color: #000090;
+}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/AbstractClass.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/AbstractClass.png
new file mode 100644
index 00000000..afa9d1d9
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/AbstractClass.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/AbstractClass_logo.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/AbstractClass_logo.png
new file mode 100644
index 00000000..8f65c390
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/AbstractClass_logo.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/AbstractMethod.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/AbstractMethod.png
new file mode 100644
index 00000000..605ccbe5
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/AbstractMethod.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/AbstractPrivateClass.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/AbstractPrivateClass.png
new file mode 100644
index 00000000..53d76c63
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/AbstractPrivateClass.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/AbstractPrivateClass_logo.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/AbstractPrivateClass_logo.png
new file mode 100644
index 00000000..4e68f570
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/AbstractPrivateClass_logo.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/AbstractPrivateMethod.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/AbstractPrivateMethod.png
new file mode 100644
index 00000000..41cc9f02
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/AbstractPrivateMethod.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Class.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Class.png
new file mode 100755
index 00000000..cf548d27
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Class.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Class_logo.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Class_logo.png
new file mode 100644
index 00000000..6f223c47
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Class_logo.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Constant.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Constant.png
new file mode 100755
index 00000000..a9c6f28b
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Constant.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Constructor.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Constructor.png
new file mode 100755
index 00000000..3f16222b
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Constructor.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Destructor.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Destructor.png
new file mode 100755
index 00000000..f28528f0
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Destructor.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Function.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Function.png
new file mode 100755
index 00000000..902fe258
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Function.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Global.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Global.png
new file mode 100755
index 00000000..7281bd2a
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Global.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/I.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/I.png
new file mode 100755
index 00000000..e8512fb9
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/I.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Index.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Index.png
new file mode 100755
index 00000000..6558ec39
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Index.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Interface.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Interface.png
new file mode 100644
index 00000000..e6cd51ed
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Interface.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Interface_logo.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Interface_logo.png
new file mode 100644
index 00000000..6f223c47
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Interface_logo.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/L.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/L.png
new file mode 100755
index 00000000..eb334eda
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/L.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Lminus.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Lminus.png
new file mode 100755
index 00000000..f7c43c0a
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Lminus.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Lplus.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Lplus.png
new file mode 100755
index 00000000..848ec2fc
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Lplus.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Method.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Method.png
new file mode 100755
index 00000000..9b215784
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Method.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Page.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Page.png
new file mode 100755
index 00000000..ffe7986e
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Page.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Page_logo.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Page_logo.png
new file mode 100644
index 00000000..44ce0b3c
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Page_logo.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/PrivateClass.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/PrivateClass.png
new file mode 100755
index 00000000..470e6d56
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/PrivateClass.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/PrivateClass_logo.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/PrivateClass_logo.png
new file mode 100644
index 00000000..590e0064
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/PrivateClass_logo.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/PrivateMethod.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/PrivateMethod.png
new file mode 100755
index 00000000..d01f2b31
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/PrivateMethod.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/PrivateVariable.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/PrivateVariable.png
new file mode 100755
index 00000000..d76b21d4
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/PrivateVariable.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/StaticMethod.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/StaticMethod.png
new file mode 100755
index 00000000..9b215784
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/StaticMethod.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/StaticVariable.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/StaticVariable.png
new file mode 100755
index 00000000..8e820193
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/StaticVariable.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/T.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/T.png
new file mode 100755
index 00000000..30173254
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/T.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Tminus.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Tminus.png
new file mode 100755
index 00000000..2260e424
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Tminus.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Tplus.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Tplus.png
new file mode 100755
index 00000000..2c8d8f4f
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Tplus.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Variable.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Variable.png
new file mode 100755
index 00000000..8e820193
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/Variable.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/blank.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/blank.png
new file mode 100755
index 00000000..cee9cd37
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/blank.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/class_folder.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/class_folder.png
new file mode 100755
index 00000000..84e9587a
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/class_folder.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/empty.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/empty.png
new file mode 100644
index 00000000..d5683865
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/empty.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/file.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/file.png
new file mode 100755
index 00000000..0bb2427f
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/file.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/folder.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/folder.png
new file mode 100755
index 00000000..a2d79f8d
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/folder.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/function_folder.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/function_folder.png
new file mode 100755
index 00000000..8b3d6e3b
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/function_folder.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/next_button.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/next_button.png
new file mode 100755
index 00000000..cdbc615d
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/next_button.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/next_button_disabled.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/next_button_disabled.png
new file mode 100755
index 00000000..4a11780f
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/next_button_disabled.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/package.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/package.png
new file mode 100755
index 00000000..b04cf566
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/package.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/package_folder.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/package_folder.png
new file mode 100755
index 00000000..6162bafd
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/package_folder.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/previous_button.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/previous_button.png
new file mode 100755
index 00000000..327fdbc2
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/previous_button.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/previous_button_disabled.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/previous_button_disabled.png
new file mode 100755
index 00000000..c02ff64b
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/previous_button_disabled.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/private_class_logo.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/private_class_logo.png
new file mode 100644
index 00000000..590e0064
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/private_class_logo.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/tutorial.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/tutorial.png
new file mode 100755
index 00000000..bc197375
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/tutorial.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/tutorial_folder.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/tutorial_folder.png
new file mode 100755
index 00000000..2a468b2a
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/tutorial_folder.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/up_button.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/up_button.png
new file mode 100755
index 00000000..ff36c593
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/images/up_button.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/stylesheet.css b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/stylesheet.css
new file mode 100755
index 00000000..96729b65
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/media/stylesheet.css
@@ -0,0 +1,146 @@
+a { color: #000090; text-decoration: none; }
+a:hover, a:active, a:focus { color: highlighttext; background-color: highlight; text-decoration: none; }
+
+body { background: #FFFFFF; }
+body, table { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10pt; }
+
+a img { border: 0px; }
+
+/* Page layout/boxes */
+
+.info-box { }
+.info-box-title { margin: 1em 0em 0em 0em; font-weight: normal; font-size: 14pt; color: #999999; border-bottom: 2px solid #999999; }
+.info-box-body { border: 1px solid #999999; padding: .5em; }
+.nav-bar { font-size: 8pt; white-space: nowrap; text-align: right; padding: .2em; margin: 0em 0em 1em 0em; }
+
+.oddrow { background-color: #F8F8F8; border: 1px solid #AAAAAA; padding: .5em; margin-bottom: 1em}
+.evenrow { border: 1px solid #AAAAAA; padding: .5em; margin-bottom: 1em}
+
+.page-body { max-width: 800px; margin: auto; }
+.tree { white-space: nowrap; font: icon }
+.tree dd { margin-left: 19px }
+.tree dl { margin: 0px }
+.tree-icon { vertical-align: middle; border: 0px; margin-right: 3px }
+
+/* Index formatting classes */
+
+.index-item-body { margin-top: .5em; margin-bottom: .5em}
+.index-item-description { margin-top: .25em }
+.index-item-details { font-weight: normal; font-style: italic; font-size: 8pt }
+.index-letter-section { background-color: #EEEEEE; border: 1px dotted #999999; padding: .5em; margin-bottom: 1em}
+.index-letter-title { font-size: 12pt; font-weight: bold }
+.index-letter-menu { text-align: center; margin: 1em }
+.index-letter { font-size: 12pt }
+
+/* Docbook classes */
+
+.description {}
+.short-description { font-weight: bold; color: #666666; }
+.tags { padding-left: 0em; margin-left: 3em; color: #666666; list-style-type: square; }
+.parameters { padding-left: 0em; margin-left: 3em; color: #014fbe; list-style-type: square; }
+.redefinitions { font-size: 8pt; padding-left: 0em; margin-left: 2em; }
+.package { font-weight: bold; }
+.package-title { font-weight: bold; font-size: 14pt; border-bottom: 1px solid black }
+.package-details { font-size: 85%; }
+.sub-package { font-weight: bold; }
+.tutorial { border-width: thin; border-color: #0066ff; }
+.tutorial-nav-box { width: 100%; border: 1px solid #999999; background-color: #F8F8F8; }
+.folder-title { font-style: italic; font-family: Verdana, Arial, Helvetica, sans-serif }
+
+/* Generic formatting */
+
+.field { font-weight: bold; }
+.detail { font-size: 8pt; }
+.notes { font-style: italic; font-size: 8pt; }
+.separator { background-color: #999999; height: 2px; }
+.warning { color: #FF6600; }
+.disabled { font-style: italic; color: #999999; }
+
+/* Code elements */
+
+.line-number { }
+
+.class-table { width: 100%; }
+.class-table-header { border-bottom: 1px dotted #666666; text-align: left}
+.class-name { color: #0000AA; font-weight: bold; }
+
+.method-summary { color: #009000; padding-left: 1em; font-size: 8pt; }
+.method-header { }
+.method-definition { margin-bottom: .2em }
+.method-title { color: #009000; font-weight: bold; }
+.method-name { font-weight: bold; }
+.method-signature { font-size: 85%; color: #666666; margin: .5em 0em }
+.method-result { font-style: italic; }
+
+.var-summary { padding-left: 1em; font-size: 8pt; }
+.var-header { }
+.var-title { color: #014fbe; margin-bottom: .3em }
+.var-type { font-style: italic; }
+.var-name { font-weight: bold; }
+.var-default {}
+.var-description { font-weight: normal; color: #000000; }
+
+.include-title { color: #014fbe;}
+.include-type { font-style: italic; }
+.include-name { font-weight: bold; }
+
+.const-title { color: #FF6600; }
+.const-name { font-weight: bold; }
+
+/* Syntax highlighting */
+
+.src-code { font-family: 'Courier New', Courier, monospace; font-weight: normal; }
+.src-line { font-family: 'Courier New', Courier, monospace; font-weight: normal; }
+
+.src-code a:link { padding: 1px; text-decoration: underline; color: #0000DD; }
+.src-code a:visited { text-decoration: underline; color: #0000DD; }
+.src-code a:active { background-color: #FFFF66; color: #008000; }
+.src-code a:hover { background-color: #FFFF66; text-decoration: overline underline; color: #008000; }
+
+.src-comm { color: #666666; }
+.src-id { color: #FF6600; font-style: italic; }
+.src-inc { color: #0000AA; font-weight: bold; }
+.src-key { color: #0000AA; font-weight: bold; }
+.src-num { color: #CC0000; }
+.src-str { color: #CC0000; }
+.src-sym { }
+.src-var { }
+
+.src-php { font-weight: bold; }
+
+.src-doc { color: #666666; }
+.src-doc-close-template { color: #666666 }
+.src-doc-coretag { color: #008000; }
+.src-doc-inlinetag {}
+.src-doc-internal {}
+.src-doc-tag { color: #0080CC; }
+.src-doc-template { color: #666666 }
+.src-doc-type { font-style: italic; color: #444444 }
+.src-doc-var { color: #444444 }
+
+.tute-tag { color: #009999 }
+.tute-attribute-name { color: #0000FF }
+.tute-attribute-value { color: #0099FF }
+.tute-entity { font-weight: bold; }
+.tute-comment { font-style: italic }
+.tute-inline-tag { color: #636311; font-weight: bold }
+
+/* tutorial */
+
+.authors { }
+.author { font-style: italic; font-weight: bold }
+.author-blurb { margin: .5em 0em .5em 2em; font-size: 85%; font-weight: normal; font-style: normal }
+.example { border: 1px dashed #999999; background-color: #EEEEEE; padding: .5em; }
+*[class="example"] { line-height : 1.0em; }
+.listing { border: 1px dashed #999999; background-color: #EEEEEE; padding: .5em; white-space: nowrap; }
+*[class="listing"] { line-height : 1.0em; }
+.release-info { font-size: 85%; font-style: italic; margin: 1em 0em }
+.ref-title-box { }
+.ref-title { }
+.ref-purpose { font-style: italic; color: #666666 }
+.ref-synopsis { }
+.title { font-weight: bold; border-bottom: 1px solid #999999; color: #999999; }
+.cmd-synopsis { margin: 1em 0em }
+.cmd-title { font-weight: bold }
+.toc { margin-left: 2em; padding-left: 0em }
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/method.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/method.tpl
new file mode 100755
index 00000000..413cc5ea
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/method.tpl
@@ -0,0 +1,151 @@
+<A NAME='method_detail'></A>
+{section name=methods loop=$methods}
+{if $methods[methods].static}
+<a name="method{$methods[methods].function_name}" id="{$methods[methods].function_name}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="method-header">
+ <img src="{$subdir}media/images/StaticMethod.png" />
+ <span class="method-title">static {$methods[methods].function_name}</span> (line <span class="line-number">{if $methods[methods].slink}{$methods[methods].slink}{else}{$methods[methods].line_number}{/if}</span>)
+ </div>
+
+ {include file="docblock.tpl" sdesc=$methods[methods].sdesc desc=$methods[methods].desc tags=$methods[methods].tags params=$methods[methods].params function=false}
+
+ <div class="method-signature">
+ <span class="method-result">{$methods[methods].function_return}</span>
+ <span class="method-name">
+ {if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}
+ </span>
+ {if count($methods[methods].ifunction_call.params)}
+ ({section name=params loop=$methods[methods].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$methods[methods].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$methods[methods].ifunction_call.params[params].name}</span>{if $methods[methods].ifunction_call.params[params].hasdefault} = <span class="var-default">{$methods[methods].ifunction_call.params[params].default}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+
+ {if $methods[methods].params}
+ <ul class="parameters">
+ {section name=params loop=$methods[methods].params}
+ <li>
+ <span class="var-type">{$methods[methods].params[params].datatype}</span>
+ <span class="var-name">{$methods[methods].params[params].var}</span>{if $methods[methods].params[params].data}<span class="var-description">: {$methods[methods].params[params].data}</span>{/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+ {if $methods[methods].method_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$methods[methods].method_overrides.link}</dt>
+ {if $methods[methods].method_overrides.sdesc}
+ <dd>{$methods[methods].method_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+ {if $methods[methods].method_implements}
+ <hr class="separator" />
+ <div class="notes">Implementation of:</div>
+ {section name=imp loop=$methods[methods].method_implements}
+ <dl>
+ <dt>{$methods[methods].method_implements[imp].link}</dt>
+ {if $methods[methods].method_implements[imp].sdesc}
+ <dd>{$methods[methods].method_implements[imp].sdesc}</dd>
+ {/if}
+ </dl>
+ {/section}
+ {/if}
+
+ {if $methods[methods].descmethod}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=dm loop=$methods[methods].descmethod}
+ <li>
+ {$methods[methods].descmethod[dm].link}
+ {if $methods[methods].descmethod[dm].sdesc}
+ : {$methods[methods].descmethod[dm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+</div>
+{/if}
+{/section}
+{section name=methods loop=$methods}
+{if !$methods[methods].static}
+<a name="method{$methods[methods].function_name}" id="{$methods[methods].function_name}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="method-header">
+ <img src="{$subdir}media/images/{if $methods[methods].ifunction_call.constructor}Constructor{elseif $methods[methods].ifunction_call.destructor}Destructor{else}{if $methods[methods].abstract}Abstract{/if}{if $methods[methods].access == 'private'}Private{/if}Method{/if}.png" />
+ <span class="method-title">{if $methods[methods].ifunction_call.constructor}Constructor {elseif $methods[methods].ifunction_call.destructor}Destructor {/if}{$methods[methods].function_name}</span> (line <span class="line-number">{if $methods[methods].slink}{$methods[methods].slink}{else}{$methods[methods].line_number}{/if}</span>)
+ </div>
+
+ {include file="docblock.tpl" sdesc=$methods[methods].sdesc desc=$methods[methods].desc tags=$methods[methods].tags params=$methods[methods].params function=false}
+
+ <div class="method-signature">
+ <span class="method-result">{$methods[methods].function_return}</span>
+ <span class="method-name">
+ {if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}
+ </span>
+ {if count($methods[methods].ifunction_call.params)}
+ ({section name=params loop=$methods[methods].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$methods[methods].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$methods[methods].ifunction_call.params[params].name}</span>{if $methods[methods].ifunction_call.params[params].hasdefault} = <span class="var-default">{$methods[methods].ifunction_call.params[params].default}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+
+ {if $methods[methods].params}
+ <ul class="parameters">
+ {section name=params loop=$methods[methods].params}
+ <li>
+ <span class="var-type">{$methods[methods].params[params].datatype}</span>
+ <span class="var-name">{$methods[methods].params[params].var}</span>{if $methods[methods].params[params].data}<span class="var-description">: {$methods[methods].params[params].data}</span>{/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+ {if $methods[methods].method_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$methods[methods].method_overrides.link}</dt>
+ {if $methods[methods].method_overrides.sdesc}
+ <dd>{$methods[methods].method_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+ {if $methods[methods].method_implements}
+ <hr class="separator" />
+ <div class="notes">Implementation of:</div>
+ {section name=imp loop=$methods[methods].method_implements}
+ <dl>
+ <dt>{$methods[methods].method_implements[imp].link}</dt>
+ {if $methods[methods].method_implements[imp].sdesc}
+ <dd>{$methods[methods].method_implements[imp].sdesc}</dd>
+ {/if}
+ </dl>
+ {/section}
+ {/if}
+
+ {if $methods[methods].descmethod}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=dm loop=$methods[methods].descmethod}
+ <li>
+ {$methods[methods].descmethod[dm].link}
+ {if $methods[methods].descmethod[dm].sdesc}
+ : {$methods[methods].descmethod[dm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+</div>
+{/if}
+{/section}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/page.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/page.tpl
new file mode 100755
index 00000000..2cffc22d
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/page.tpl
@@ -0,0 +1,214 @@
+{include file="header.tpl" top3=true}
+
+<h2 class="file-name"><img src="{$subdir}media/images/Page_logo.png" alt="File" style="vertical-align: middle">{$source_location}</h2>
+
+<a name="sec-description"></a>
+<div class="info-box">
+ <div class="info-box-title">Description</div>
+ <div class="nav-bar">
+ {if $classes || $includes || $defines || $globals || $functions}
+ <span class="disabled">Description</span> |
+ {/if}
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="docblock.tpl" desc=$desc sdesc=$sdesc tags=$tags}
+
+ {if $tutorial}
+ <hr class="separator" />
+ <div class="notes">Tutorial: <span class="tutorial">{$tutorial}</div>
+ {/if}
+ </div>
+</div>
+
+{if $classes}
+ <a name="sec-classes"></a>
+ <div class="info-box">
+ <div class="info-box-title">Classes</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ <span class="disabled">Classes</span>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <table cellpadding="2" cellspacing="0" class="class-table">
+ <tr>
+ <th class="class-table-header">Class</th>
+ <th class="class-table-header">Description</th>
+ </tr>
+ {section name=classes loop=$classes}
+ <tr>
+ <td style="padding-right: 2em; vertical-align: top; white-space: nowrap">
+ <img src="{$subdir}media/images/{if $classes[classes].abstract}Abstract{/if}{if $classes[classes].access == 'private'}Private{/if}Class.png"
+ alt="{if $classes[classes].abstract}Abstract{/if}{if $classes[classes].access == 'private'}Private{/if} class"
+ title="{if $classes[classes].abstract}Abstract{/if}{if $classes[classes].access == 'private'}Private{/if} class"/>
+ {$classes[classes].link}
+ </td>
+ <td>
+ {if $classes[classes].sdesc}
+ {$classes[classes].sdesc}
+ {else}
+ {$classes[classes].desc}
+ {/if}
+ </td>
+ </tr>
+ {/section}
+ </table>
+ </div>
+ </div>
+{/if}
+
+{if $includes}
+ <a name="sec-includes"></a>
+ <div class="info-box">
+ <div class="info-box-title">Includes</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ <span class="disabled">Includes</span>
+ {if $defines || $globals || $functions}|{/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="include.tpl"}
+ </div>
+ </div>
+{/if}
+
+{if $defines}
+ <a name="sec-constants"></a>
+ <div class="info-box">
+ <div class="info-box-title">Constants</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ <span class="disabled">Constants</span>
+ {if $globals || $functions}|{/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="define.tpl"}
+ </div>
+ </div>
+{/if}
+
+{if $globals}
+ <a name="sec-variables"></a>
+ <div class="info-box">
+ <div class="info-box-title">Variables</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ <span class="disabled">Variables</span>
+ {if $functions}|{/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="global.tpl"}
+ </div>
+ </div>
+{/if}
+
+{if $functions}
+ <a name="sec-functions"></a>
+ <div class="info-box">
+ <div class="info-box-title">Functions</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ <span class="disabled">Functions</span>
+ </div>
+ <div class="info-box-body">
+ {include file="function.tpl"}
+ </div>
+ </div>
+{/if}
+
+{include file="footer.tpl" top3=true}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/pkgelementindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/pkgelementindex.tpl
new file mode 100755
index 00000000..dc283ad0
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/pkgelementindex.tpl
@@ -0,0 +1,17 @@
+{include file="header.tpl"}
+<a name="top"></a>
+<h2>[{$package}] element index</h2>
+{if count($packageindex) > 1}
+ <h3>Package indexes</h3>
+ <ul>
+ {section name=p loop=$packageindex}
+ {if $packageindex[p].title != $package}
+ <li><a href="elementindex_{$packageindex[p].title}.html">{$packageindex[p].title}</a></li>
+ {/if}
+ {/section}
+ </ul>
+{/if}
+<a href="elementindex.html">All elements</a>
+<br />
+{include file="basicindex.tpl" indexname=elementindex_$package}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/ric.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/ric.tpl
new file mode 100755
index 00000000..ad792475
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/ric.tpl
@@ -0,0 +1,6 @@
+{include file="header.tpl"}
+<div align="center"><h1>{$name}</h1></div>
+<pre>
+{$contents|htmlentities}
+</pre>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/todolist.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/todolist.tpl
new file mode 100755
index 00000000..f929ccdb
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/todolist.tpl
@@ -0,0 +1,14 @@
+{include file="header.tpl" title="Todo List"}
+<div align="center"><h1>Todo List</h1></div>
+{foreach from=$todos key=todopackage item=todo}
+<h2>{$todopackage}</h2>
+{section name=todo loop=$todo}
+<h3>{$todo[todo].link}</h3>
+<ul>
+{section name=t loop=$todo[todo].todos}
+ <li>{$todo[todo].todos[t]}</li>
+{/section}
+</ul>
+{/section}
+{/foreach}
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/top_frame.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/top_frame.tpl
new file mode 100755
index 00000000..69beb10c
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/top_frame.tpl
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+ <html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <!-- template designed by Marco Von Ballmoos -->
+ <title>{$title}</title>
+ <link rel="stylesheet" href="{$subdir}media/stylesheet.css" />
+ <link rel="stylesheet" href="{$subdir}media/banner.css" />
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+ </head>
+ <body>
+ <div class="banner">
+ <div class="banner-title">{$package}</div>
+ <div class="banner-menu">
+ <form>
+ <table cellpadding="0" cellspacing="0" style="width: 100%">
+ <tr>
+ <td>
+ {if count($ric) >= 1}
+ {assign var="last_ric_name" value=""}
+ {section name=ric loop=$ric}
+ {if $last_ric_name != ""} | {/if}
+ <a href="{$ric[ric].file}" target="right">{$ric[ric].name}</a>
+ {assign var="last_ric_name" value=$ric[ric].name}
+ {/section}
+ {/if}
+ </td>
+ <td style="width: 2em">&nbsp;</td>
+ <td style="text-align: right">
+ {if count($packages) > 1}
+ <span class="field">Packages</span>
+ <select class="package-selector" onchange="window.parent.left_bottom.location=this[selectedIndex].value">
+ {section name=p loop=$packages}
+ <option value="{$packages[p].link}">{$packages[p].title}</option>
+ {/section}
+ </select>
+ {/if}
+ </td>
+ </tr>
+ </table>
+ </form>
+ </div>
+ </div>
+ </body>
+ </html> \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/tutorial.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/tutorial.tpl
new file mode 100755
index 00000000..3b9109d1
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/tutorial.tpl
@@ -0,0 +1,13 @@
+{include file="header.tpl" title=$title top3=true}
+
+{if $nav}
+ {include file="tutorial_nav.tpl" prev=$prev next=$next up=$up prevtitle=$prevtitle nexttitle=$nexttitle uptitle=$uptitle}
+{/if}
+
+{$contents}
+
+{if $nav}
+ {include file="tutorial_nav.tpl" prev=$prev next=$next up=$up prevtitle=$prevtitle nexttitle=$nexttitle uptitle=$uptitle}
+{/if}
+
+{include file="footer.tpl" top3=true} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/tutorial_nav.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/tutorial_nav.tpl
new file mode 100755
index 00000000..3cd7893d
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/tutorial_nav.tpl
@@ -0,0 +1,41 @@
+<table class="tutorial-nav-box">
+ <tr>
+ <td style="width: 30%">
+ {if $prev}
+ <a href="{$prev}"><img src="{$subdir}media/images/previous_button.png" alt="Previous"></a>
+ {else}
+ <span class="disabled"><img src="{$subdir}media/images/previous_button_disabled.png" alt="Previous"></span>
+ {/if}
+ </td>
+ <td style="text-align: center">
+ {if $up}
+ <a href="{$up}"><img src="{$subdir}media/images/up_button.png" alt="Up"></a>
+ {/if}
+ </td>
+ <td style="text-align: right; width: 30%">
+ {if $next}
+ <a href="{$next}"><img src="{$subdir}media/images/next_button.png" alt="Next"></a>
+ {else}
+ <span class="disabled"><img src="{$subdir}media/images/next_button_disabled.png" alt="Next"></span>
+ {/if}
+ </td>
+ </tr>
+ <tr>
+ <td style="width: 30%">
+ {if $prevtitle}
+ <span class="detail">{$prevtitle}</span>
+ {/if}
+ </td>
+ <td style="text-align: center">
+ {if $uptitle}
+ <span class="detail">{$uptitle}</span>
+ {/if}
+ </td>
+ <td style="text-align: right; width: 30%">
+ {if $nexttitle}
+ <span class="detail">{$nexttitle}</span>
+ {/if}
+ </td>
+ </tr>
+</table>
+ \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/tutorial_toc.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/tutorial_toc.tpl
new file mode 100755
index 00000000..3482249b
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/tutorial_toc.tpl
@@ -0,0 +1,40 @@
+{if count($toc)}
+<h1 class="title">Table of Contents</h1>
+<ul class="toc">
+ {assign var="lastcontext" value='refsect1'}
+ {section name=toc loop=$toc}
+
+ {if $toc[toc].tagname != $lastcontext}
+ {if $lastcontext == 'refsect1'}
+ <ul class="toc">
+ <li>{$toc[toc].link}</li>
+ {else}
+ {if $lastcontext == 'refsect2'}
+ {if $toc[toc].tagname == 'refsect1'}
+ </ul>
+ <li>{$toc[toc].link}</li>
+ {/if}
+ {if $toc[toc].tagname == 'refsect3'}
+ <ul class="toc">
+ <li>{$toc[toc].link}</li>
+ {/if}
+ {else}
+ </ul>
+ </ul>
+ <li>{$toc[toc].link}</li>
+ {/if}
+ {/if}
+ {assign var="lastcontext" value=$toc[toc].tagname}
+ {else}
+ <li>{$toc[toc].link}</li>
+ {/if}
+ {/section}
+ {if $lastcontext == 'refsect2'}
+ </ul>
+ {/if}
+ {if $lastcontext == 'refsect3'}
+ </ul>
+ </ul>
+ {/if}
+</ul>
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/tutorial_tree.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/tutorial_tree.tpl
new file mode 100755
index 00000000..18c8b05a
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/tutorial_tree.tpl
@@ -0,0 +1,6 @@
+<div><img class="tree-icon" src="{$subdir}media/images/tutorial.png" alt="Tutorial"><a href="{$main.link}" target="right">{$main.title|strip_tags}</a></div>
+{if $haskids}
+<div style="margin-left: 19px">
+ {$kids}
+</div>
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/var.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/var.tpl
new file mode 100755
index 00000000..1da110cc
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/earthli/templates/var.tpl
@@ -0,0 +1,94 @@
+{section name=vars loop=$vars}
+{if $vars[vars].static}
+<a name="var{$vars[vars].var_name}" id="{$vars[vars].var_name}"><!-- --></A>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="var-header">
+ <img src="{$subdir}media/images/{if $vars[vars].access == 'private'}PrivateVariable{else}Variable{/if}.png" />
+ <span class="var-title">
+ static <span class="var-type">{$vars[vars].var_type}</span>
+ <span class="var-name">{$vars[vars].var_name}</span>
+ {if $vars[vars].var_default} = <span class="var-default">{$vars[vars].var_default|replace:"\n":"<br />"}</span>{/if}
+ (line <span class="line-number">{if $vars[vars].slink}{$vars[vars].slink}{else}{$vars[vars].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$vars[vars].sdesc desc=$vars[vars].desc tags=$vars[vars].tags}
+
+ {if $vars[vars].var_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$vars[vars].var_overrides.link}</dt>
+ {if $vars[vars].var_overrides.sdesc}
+ <dd>{$vars[vars].var_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+
+ {if $vars[vars].descvar}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=vm loop=$vars[vars].descvar}
+ <li>
+ {$vars[vars].descvar[vm].link}
+ {if $vars[vars].descvar[vm].sdesc}
+ : {$vars[vars].descvar[vm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+</div>
+{/if}
+{/section}
+
+{section name=vars loop=$vars}
+{if !$vars[vars].static}
+<a name="var{$vars[vars].var_name}" id="{$vars[vars].var_name}"><!-- --></A>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="var-header">
+ <img src="{$subdir}media/images/{if $vars[vars].access == 'private'}PrivateVariable{else}Variable{/if}.png" />
+ <span class="var-title">
+ <span class="var-type">{$vars[vars].var_type}</span>
+ <span class="var-name">{$vars[vars].var_name}</span>
+ {if $vars[vars].var_default} = <span class="var-default">{$vars[vars].var_default|replace:"\n":"<br />"}</span>{/if}
+ (line <span class="line-number">{if $vars[vars].slink}{$vars[vars].slink}{else}{$vars[vars].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$vars[vars].sdesc desc=$vars[vars].desc tags=$vars[vars].tags}
+
+ {if $vars[vars].var_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$vars[vars].var_overrides.link}</dt>
+ {if $vars[vars].var_overrides.sdesc}
+ <dd>{$vars[vars].var_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+
+ {if $vars[vars].descvar}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=vm loop=$vars[vars].descvar}
+ <li>
+ {$vars[vars].descvar[vm].link}
+ {if $vars[vars].descvar[vm].sdesc}
+ : {$vars[vars].descvar[vm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+</div>
+{/if}
+{/section}
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/options.ini b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/options.ini
new file mode 100755
index 00000000..fc1211f8
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/options.ini
@@ -0,0 +1,576 @@
+preservedocbooktags = false
+
+;; used to highlight the {@source} inline tag, @filesource tag, and @example tag
+[highlightSourceTokens]
+;; format:
+;; T_CONSTANTNAME = open
+;; /T_CONSTANTNAME = close
+
+T_INCLUDE = <span class="src-inc">
+/T_INCLUDE = </span>
+T_INCLUDE_ONCE = <span class="src-inc">
+/T_INCLUDE_ONCE = </span>
+T_REQUIRE_ONCE = <span class="src-inc">
+/T_REQUIRE_ONCE = </span>
+T_REQUIRE_ONCE = <span class="src-inc">
+/T_REQUIRE_ONCE = </span>
+
+T_CONSTANT_ENCAPSED_STRING = <span class="src-str">
+/T_CONSTANT_ENCAPSED_STRING = </span>
+T_STRING_VARNAME = <span class="src-str">
+/T_STRING_VARNAME = </span>
+
+T_STRING = <span class="src-id">
+/T_STRING = </span>
+
+T_DNUMBER = <span class="src-num">
+/T_DNUMBER = </span>
+T_LNUMBER = <span class="src-num">
+/T_LNUMBER = </span>
+
+T_VARIABLE = <span class="src-var">
+/T_VARIABLE = </span>
+
+T_COMMENT = <span class="src-comm">
+/T_COMMENT = </span>
+T_ML_COMMENT = <span class="src-comm">
+/T_ML_COMMENT = </span>
+
+T_OBJECT_OPERATOR = <span class="src-sym">
+/T_OBJECT_OPERATOR = </span>
+
+T_ABSTRACT = <span class="src-key">
+/T_ABSTRACT = </span>
+T_CLONE = <span class="src-key">
+/T_CLONE = </span>
+T_HALT_COMPILER = <span class="src-key">
+/T_HALT_COMPILER = </span>
+T_ARRAY = <span class="src-key">
+/T_ARRAY = </span>
+T_AS = <span class="src-key">
+/T_AS = </span>
+T_BREAK = <span class="src-key">
+/T_BREAK = </span>
+T_CLASS = <span class="src-key">
+/T_CLASS = </span>
+T_CASE = <span class="src-key">
+/T_CASE = </span>
+T_CONST = <span class="src-key">
+/T_CONST = </span>
+T_CONTINUE = <span class="src-key">
+/T_CONTINUE = </span>
+T_DECLARE = <span class="src-key">
+/T_DECLARE = </span>
+T_DEFAULT = <span class="src-key">
+/T_DEFAULT = </span>
+T_ELSE = <span class="src-key">
+/T_ELSE = </span>
+T_ELSEIF = <span class="src-key">
+/T_ELSEIF = </span>
+T_EMPTY = <span class="src-key">
+/T_EMPTY = </span>
+T_ENDDECLARE = <span class="src-key">
+/T_ENDDECLARE = </span>
+T_ENDFOR = <span class="src-key">
+/T_ENDFOR = </span>
+T_ENDSWITCH = <span class="src-key">
+/T_ENDSWITCH = </span>
+T_ENDFOREACH = <span class="src-key">
+/T_ENDFOREACH = </span>
+T_ENDIF = <span class="src-key">
+/T_ENDIF = </span>
+T_ENDWHILE = <span class="src-key">
+/T_ENDWHILE = </span>
+T_EXIT = <span class="src-key">
+/T_EXIT = </span>
+T_EXTENDS = <span class="src-key">
+/T_EXTENDS = </span>
+T_FINAL = <span class="src-key">
+/T_FINAL = </span>
+T_FOR = <span class="src-key">
+/T_FOR = </span>
+T_FOREACH = <span class="src-key">
+/T_FOREACH = </span>
+T_FUNCTION = <span class="src-key">
+/T_FUNCTION = </span>
+T_GLOBAL = <span class="src-key">
+/T_GLOBAL = </span>
+T_IF = <span class="src-key">
+/T_IF = </span>
+T_IMPLEMENTS = <span class="src-key">
+/T_IMPLEMENTS = </span>
+T_INTERFACE = <span class="src-key">
+/T_INTERFACE = </span>
+T_LOGICAL_AND = <span class="src-key">
+/T_LOGICAL_AND = </span>
+T_LOGICAL_OR = <span class="src-key">
+/T_LOGICAL_OR = </span>
+T_LOGICAL_XOR = <span class="src-key">
+/T_LOGICAL_XOR = </span>
+T_NEW = <span class="src-key">
+/T_NEW = </span>
+T_PRIVATE = <span class="src-key">
+/T_PRIVATE = </span>
+T_PROTECTED = <span class="src-key">
+/T_PROTECTED = </span>
+T_PUBLIC = <span class="src-key">
+/T_PUBLIC = </span>
+T_RETURN = <span class="src-key">
+/T_RETURN = </span>
+T_STATIC = <span class="src-key">
+/T_STATIC = </span>
+T_SWITCH = <span class="src-key">
+/T_SWITCH = </span>
+T_VAR = <span class="src-key">
+/T_VAR = </span>
+T_WHILE = <span class="src-key">
+/T_WHILE = </span>
+
+T_DOUBLE_COLON = <span class="src-sym">
+/T_DOUBLE_COLON = </span>
+
+T_OPEN_TAG = <span class="src-php">
+/T_OPEN_TAG = </span>
+T_OPEN_TAG_WITH_ECHO = <span class="src-php">
+/T_OPEN_TAG_WITH_ECHO = </span>
+T_CLOSE_TAG = <span class="src-php">
+/T_CLOSE_TAG = </span>
+
+
+[highlightSource]
+;; this is for highlighting things that aren't tokens like "&"
+;; format:
+;; word = open
+;; /word = close
+@ = <span class="src-sym">
+/@ = </span>
+& = <span class="src-sym">
+/& = </span>
+[ = <span class="src-sym">
+/[ = </span>
+] = <span class="src-sym">
+/] = </span>
+! = <span class="src-sym">
+/! = </span>
+";" = <span class="src-sym">
+/; = </span>
+( = <span class="src-sym">
+/( = </span>
+) = <span class="src-sym">
+/) = </span>
+, = <span class="src-sym">
+/, = </span>
+{ = <span class="src-sym">
+/{ = </span>
+} = <span class="src-sym">
+/} = </span>
+""" = <span class="src-str">
+/" = </span>
+
+[highlightDocBlockSourceTokens]
+;; this is for docblock tokens, using by phpDocumentor_HighlightParser
+;; tagphptype is for "string" in @param string description, for example
+docblock = <span class="src-doc">
+/docblock = </span>
+tagphptype = <span class="src-doc-type">
+/tagphptype = </span>
+tagvarname = <span class="src-doc-var">
+/tagvarname = </span>
+coretag = <span class="src-doc-coretag">
+/coretag = </span>
+tag = <span class="src-doc-tag">
+/tag = </span>
+inlinetag = <span class="src-doc-inlinetag">
+/inlinetag = </span>
+internal = <span class="src-doc-internal">
+/internal = </span>
+closetemplate = <span class="src-doc-close-template">
+/closetemplate = </span>
+docblocktemplate = <span class="src-doc-template">
+/docblocktemplate = </span>
+
+[highlightTutorialSourceTokens]
+;; this is for XML DocBook-based tutorials, highlighted by phpDocumentor_TutorialHighlightParser
+;; <tag>
+opentag = <span class="tute-tag">
+/opentag = </span>
+;; </tag>
+closetag = <span class="tute-tag">
+/closetag = </span>
+;; <tag attribute="value">
+attribute = <span class="tute-attribute-name">
+/attribute = </span>
+;; <tag attribute="value">
+attributevalue = <span class="tute-attribute-value">
+/attributevalue = </span>
+;; &entity;
+entity = <span class="tute-entity">
+/entity = </span>
+;; <!-- comment -->
+comment = <span class="tute-comment">
+/comment = </span>
+;; {@inline tag}
+itag = <span class="tute-inline-tag">
+/itag = </span>
+
+;; used for translation of html in DocBlocks
+[desctranslate]
+ul = <ul>
+/ul = </ul>
+ol = <ol>
+/ol = </ol>
+li = <li>
+/li = </li>
+code =
+/code =
+var = <var>
+/var = </var>
+samp = <samp>
+/samp = </samp>
+kbd = <kbd>
+/kbd = </kbd>
+pre = <pre>
+/pre = </pre>
+p = <p>
+/p = </p>
+b = <strong>
+/b = </strong>
+i = <em>
+/i = </em>
+br = <br />
+
+[ppage]
+;; this is the DocBook package page translation section. All DocBook tags
+;; that have a corresponding html tag must be listed here. Entities should
+;; also be listed here
+;;
+;; examples:
+;; 1)
+;; tagname = newtagname
+;;
+;; This is the simplest case, where all attributes will be added into the
+;; starting tag and the ending tag will be html/xml style </tranlatedtagname>
+;; <tagname></tagname> becomes <newtagname></newtagname> and
+;; <tagname attr="value"></tagname> becomes
+;; <newtagname attr="value"></newtagname>
+;;
+;; 2)
+;; tagname = newtagname
+;; tagname->attr = newattrname
+;;
+;; in this case, everything will be like the first case, except tags like:
+;; <tagname attr="value"></tagname> will become
+;; <newtagname newattrname="value"></newtagname>
+;;
+;; 3)
+;; tagname = newtagname
+;; tagname->attr = newattrname
+;; tagname->attr+value = newvalue
+;;
+;; in this case, the value is also translated to another. This can be useful
+;; for instances such as focus="middle" changing to align="center" or something
+;; of that nature.
+;; <tagname attr="value"></tagname> will become
+;; <newtagname newattrname="newvalue"></newtagname>
+;;
+;; 4)
+;; tagname = newtagname
+;; tagname->attr1 = newattrname
+;; tagname->attr2 = newattrname
+;; tagname->attr1+value|attr2+value = newvalue
+;;
+;; in this case, two attributes combine to make one new attribute, and the combined
+;; value is translated into a new value
+;; <tagname attr1="value1" attr2="value2"></tagname> will become
+;; <newtagname newattrname="newvalue"></newtagname>
+;;
+;; 5)
+;; tagname = newtagname
+;; tagname!attr = dummy
+;;
+;; here, the attribute will be ignored. dummy is not used and may be any value
+;; <tagname attr="value"></tagname> will become
+;; <newtagname></newtagname>
+;;
+;; 6)
+;; tagname = newtagname
+;; tagname! = dummy
+;;
+;; here, all attributes will be ignored. dummy is not used and may be any value
+;; <tagname attr1="value" attr2="foo"></tagname> will become
+;; <newtagname></newtagname>
+;;
+;; 7)
+;; tagname = newtagname
+;; tagname/ = 1
+;;
+;; here, the tag will be translated as a single tag with no closing tag, and all
+;; attributes
+;; <tagname attr="val">{text text}</tagname> will become
+;; <newtagname attr="val" />
+;;
+;; 8)
+;; tagname = <starttaginfo />
+;; /tagname = closetagtext
+;;
+;; in this case, the text <starttaginfo> will be inserted exactly as entered for
+;; <tagname> and closetagtext for </tagname>
+;; <tagname attr="val"></tagname> will become
+;; <starttaginfo />closetagtext
+;;
+;; 9)
+;; $attr$my_attribute = newattrname
+;;
+;; tagname = newtagname
+;;
+;; in this case, all occurences of my_attribute in any tag will be changed to
+;; newattrname. This is useful for changing things like role="php" to
+;; class="php," for example. Note that the text "$attr$" MUST be on the line
+;; start for phpDocumentor to recognize it.
+;;
+;; 10)
+;; &entity; = translation text
+;; &quot; = &quot;
+;; &quot; = """
+;; &lt; = <
+;;
+;; Use this to control translation of entities to their appropriate values
+
+&nbsp; = &nbsp;
+&quot; = &quot;
+&rdquo; = &rdquo;
+&ldquo; = &ldquo;
+&amp; = &amp;
+&lt; = &lt;
+&gt; = &gt;
+&copy; = &copy;
+
+$attr$role = class
+
+abbrev = abbr
+
+blockquote = blockquote
+
+arg = span
+arg->choice = class
+
+author = <span class="author">
+/author = </span>
+author! = 0
+
+authorblurb = <div class="author-blurb">
+/authorblurb = </div>
+
+authorgroup = <div class="authors"><h2 class="title">Authors</h2>
+/authorgroup = </div>
+authorgroup! = 0
+
+caution = <span class="warning">
+/caution = </span>
+caution! = 0
+
+cmdsynopsis = <div class="cmd-synopsis">
+/cmdsynopsis = </div>
+
+command = <span class="cmd-title">
+/command = </span>
+
+copyright = <div class="notes">
+/copyright = </div>
+
+emphasis = em
+
+example = <div class="src-code">
+/example = </div>
+example! = 0
+
+function =
+/function = ()
+
+formalpara = p
+
+graphic = img
+graphic->fileref = src
+graphic/ =
+
+important = strong
+
+informalequation = blockquote
+
+informalexample = div
+
+inlineequation = em
+
+itemizedlist = ul
+
+listitem = li
+
+literal = code
+
+literallayout = span
+
+option = " "
+/option =
+
+orderedlist = ol
+
+para = p
+
+programlisting = <div class="src-code">
+/programlisting = </div>
+programlisting! = 0
+
+refentry = div
+
+refnamediv = <div class="ref-title-box">
+/refnamediv = </div>
+refnamediv! = 0
+
+refname = <h1 class="ref-title">
+/refname = </h1>
+
+refpurpose = <h2 class="ref-purpose">
+/refpurpose = </h2>
+
+refsynopsisdiv = <div class="ref-synopsis">
+/refsynopsisdiv = </div>
+refsynopsisdiv! = 0
+
+refsect1 = span
+
+refsect2 = span
+
+refsect3 =
+/refsect3 = <br />
+
+releaseinfo = <div class="release-info">(
+/releaseinfo = )</div>
+
+simpara =
+/simpara = <br />
+simpara! = 0
+
+subscript = sub
+
+superscript = super
+
+table = table
+
+table->colsep = rules
+table->rowsep = rules
+table->colsep+1|rowsep+1 =all
+table->colsep+1|rowsep+0 =cols
+table->colsep+0|rowsep+1 =rows
+
+table->frame =frame
+table->frame+all =border
+table->frame+none =void
+table->frame+sides =vsides
+table->frame+top =above
+table->frame+topbot =hsides
+
+thead = thead
+
+tfoot = tfoot
+
+tbody = tbody
+
+colspec = col
+
+tgroup = colgroup
+tgroup/ = 1
+tgroup->cols = span
+
+row = tr
+
+entry = td
+entry->morerows = colspan
+entry->morerows+1 =2
+entry->morerows+2 =3
+entry->morerows+3 =4
+entry->morerows+4 =5
+entry->morerows+5 =6
+entry->morerows+6 =7
+entry->morerows+7 =8
+entry->morerows+8 =9
+entry->morerows+9 =10
+entry->morerows+10 =11
+;; add more if you need more colspans
+
+warning = <span class="warning">
+/warning = </span>
+warning! = 0
+
+;; now begins the attributes that should be tags in cdata
+[$attr$id]
+open = a
+;close = /a
+cdata! = true
+quotevalues = true
+separator = "="
+;separateall = true
+$id = name
+
+;; now begins the sections that deal with <title>
+[refsynopsisdiv_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h1 class="title">
+close = </h1>
+
+[refsect1_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h2 class="title">
+close = </h2>
+
+[refsect2_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h3 class="title">
+close = </h3>
+
+[refsect3_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h4 class="title">
+close = </h4>
+
+[para_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <div class="title">
+close = </div>
+
+[formalpara_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <div class="title">
+close = </div>
+
+[example_title]
+;tag_attr = true
+;attr_name = title
+;cdata_start = true
+cdata_end = true
+open = </td></tr><tr><td><strong>
+close = </strong>
+
+[table_title]
+;tag_attr = true
+;attr_name = true
+cdata_start = true
+open = <caption>
+close = </caption>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/basicindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/basicindex.tpl
new file mode 100755
index 00000000..951ee264
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/basicindex.tpl
@@ -0,0 +1,47 @@
+<div class="index-letter-menu">
+{section name=letter loop=$letters}
+ <a class="index-letter" href="{$indexname}.html#{$letters[letter].letter}">{$letters[letter].letter}</a>
+{/section}
+</div>
+
+{section name=index loop=$index}
+ <a name="{$index[index].letter}"></a>
+ <div class="index-letter-section">
+ <div style="float: left" class="index-letter-title">{$index[index].letter}</div>
+ <div style="float: right"><a href="#top">top</a></div>
+ <div style="clear: both"></div>
+ </div>
+ <dl>
+ {section name=contents loop=$index[index].index}
+ <dt class="field">
+ {if ($index[index].index[contents].title == "Variable")}
+ <span class="var-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Global")}
+ <span class="var-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Method")}
+ <span class="method-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Function")}
+ <span class="method-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Constant")}
+ <span class="const-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Page") || ($index[index].index[contents].title == "Include")}
+ <span class="include-title">{$index[index].index[contents].name}</span>
+ {else}
+ {$index[index].index[contents].name}
+ {/if}
+ </dt>
+ <dd class="index-item-body">
+ <div class="index-item-details">{$index[index].index[contents].link} in {$index[index].index[contents].file_name}</div>
+ {if $index[index].index[contents].description}
+ <div class="index-item-description">{$index[index].index[contents].description}</div>
+ {/if}
+ </dd>
+ {/section}
+ </dl>
+{/section}
+
+<div class="index-letter-menu">
+{section name=letter loop=$letters}
+ <a class="index-letter" href="{$indexname}.html#{$letters[letter].letter}">{$letters[letter].letter}</a>
+{/section}
+</div>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/blank.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/blank.tpl
new file mode 100755
index 00000000..6a05f27e
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/blank.tpl
@@ -0,0 +1,13 @@
+<html>
+<head>
+ <title>{$maintitle}</title>
+ <link rel="stylesheet" href="{$subdir}media/stylesheet.css" />
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+</head>
+<body>
+<div align="center"><h1>{$maintitle}</h1></div>
+<b>Welcome to {$package}!</b><br />
+<br />
+This documentation was generated by <a href="{$phpdocwebsite}">phpDocumentor v{$phpdocversion}</a><br />
+</body>
+</html> \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/class.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/class.tpl
new file mode 100755
index 00000000..9ab7c455
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/class.tpl
@@ -0,0 +1,429 @@
+{include file="header.tpl" top3=true}
+
+<h2 class="class-name">{if $is_interface}Interface{else}Class{/if} {$class_name}</h2>
+
+<a name="sec-description"></a>
+<div class="info-box">
+ <div class="info-box-title">Description</div>
+ <div class="nav-bar">
+ {if $children || $vars || $ivars || $methods || $imethods || $consts || $iconsts }
+ <span class="disabled">Description</span> |
+ {/if}
+ {if $children}
+ <a href="#sec-descendents">Descendents</a>
+ {if $vars || $ivars || $methods || $imethods || $consts || $iconsts}|{/if}
+ {/if}
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ {if $methods || $imethods}|{/if}
+ {/if}
+ {if $methods || $imethods}
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {if $implements}
+ <p class="implements">
+ Implements interfaces:
+ <ul>
+ {foreach item="int" from=$implements}<li>{$int}</li>{/foreach}
+ </ul>
+ </p>
+ {/if}
+ {include file="docblock.tpl" type="class" sdesc=$sdesc desc=$desc}
+ <p class="notes">
+ Located in <a class="field" href="{$page_link}">{$source_location}</a> (line <span class="field">{if $class_slink}{$class_slink}{else}{$line_number}{/if}</span>)
+ </p>
+
+ {if $tutorial}
+ <hr class="separator" />
+ <div class="notes">Tutorial: <span class="tutorial">{$tutorial}</span></div>
+ {/if}
+
+ <pre>{section name=tree loop=$class_tree.classes}{$class_tree.classes[tree]}{$class_tree.distance[tree]}{/section}</pre>
+
+ {if $conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with classes:</span><br />
+ {section name=me loop=$conflicts.conflicts}
+ {$conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+ </div>
+</div>
+
+{if $children}
+ <a name="sec-descendents"></a>
+ <div class="info-box">
+ <div class="info-box-title">Direct descendents</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ <span class="disabled">Descendents</span>
+ {if $vars || $ivars || $methods || $imethods}|{/if}
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ {if $methods || $imethods}|{/if}
+ {/if}
+ {if $methods || $imethods}
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <table cellpadding="2" cellspacing="0" class="class-table">
+ <tr>
+ <th class="class-table-header">Class</th>
+ <th class="class-table-header">Description</th>
+ </tr>
+ {section name=kids loop=$children}
+ <tr>
+ <td style="padding-right: 2em">{$children[kids].link}</td>
+ <td>
+ {if $children[kids].sdesc}
+ {$children[kids].sdesc}
+ {else}
+ {$children[kids].desc}
+ {/if}
+ </td>
+ </tr>
+ {/section}
+ </table>
+ </div>
+ </div>
+{/if}
+
+{if $consts}
+ <a name="sec-const-summary"></a>
+ <div class="info-box">
+ <div class="info-box-title">Class Constant Summary</span></div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendants</a> |
+ {/if}
+ <span class="disabled">Constants</span> (<a href="#sec-consts">details</a>)
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ |
+ {/if}
+ {if $methods || $imethods}
+ |
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <div class="const-summary">
+ {section name=consts loop=$consts}
+ <div class="const-title">
+ <img src="{$subdir}media/images/Constant.png" alt=" " />
+ <a href="#{$consts[consts].const_name}" title="details" class="const-name">{$consts[consts].const_name}</a> = <span class="var-type">{$consts[consts].const_value}</span>
+
+ </div>
+ {/section}
+ </div>
+ </div>
+ </div>
+{/if}
+
+{if $vars}
+ <a name="sec-var-summary"></a>
+ <div class="info-box">
+ <div class="info-box-title">Variable Summary</span></div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendents</a> |
+ {/if}
+ <span class="disabled">Vars</span> (<a href="#sec-vars">details</a>)
+ {if $methods || $imethods}
+ |
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <div class="var-summary">
+ {section name=vars loop=$vars}
+ {if $vars[vars].static}
+ <div class="var-title">
+ static <span class="var-type">{$vars[vars].var_type}</span>
+ <a href="#{$vars[vars].var_name}" title="details" class="var-name">{$vars[vars].var_name}</a>
+ </div>
+ {/if}
+ {/section}
+ {section name=vars loop=$vars}
+ {if !$vars[vars].static}
+ <div class="var-title">
+ <span class="var-type">{$vars[vars].var_type}</span>
+ <a href="#{$vars[vars].var_name}" title="details" class="var-name">{$vars[vars].var_name}</a>
+ </div>
+ {/if}
+ {/section}
+ </div>
+ </div>
+ </div>
+{/if}
+
+{if $methods}
+ <a name="sec-method-summary"></a>
+ <div class="info-box">
+ <div class="info-box-title">Method Summary</span></div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendents</a> |
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ |
+ {/if}
+ <span class="disabled">Methods</span> (<a href="#sec-methods">details</a>)
+ </div>
+ <div class="info-box-body">
+ <div class="method-summary">
+ {section name=methods loop=$methods}
+ {if $methods[methods].static}
+ <div class="method-definition">
+ static {if $methods[methods].function_return}
+ <span class="method-result">{$methods[methods].function_return}</span>
+ {/if}
+ <a href="#{$methods[methods].function_name}" title="details" class="method-name">{if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}</a>
+ {if count($methods[methods].ifunction_call.params)}
+ ({section name=params loop=$methods[methods].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$methods[methods].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$methods[methods].ifunction_call.params[params].name}</span>{if $methods[methods].ifunction_call.params[params].hasdefault} = <span class="var-default">{$methods[methods].ifunction_call.params[params].default}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+ {/if}
+ {/section}
+ {section name=methods loop=$methods}
+ {if !$methods[methods].static}
+ <div class="method-definition">
+ {if $methods[methods].function_return}
+ <span class="method-result">{$methods[methods].function_return}</span>
+ {/if}
+ <a href="#{$methods[methods].function_name}" title="details" class="method-name">{if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}</a>
+ {if count($methods[methods].ifunction_call.params)}
+ ({section name=params loop=$methods[methods].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$methods[methods].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$methods[methods].ifunction_call.params[params].name}</span>{if $methods[methods].ifunction_call.params[params].hasdefault} = <span class="var-default">{$methods[methods].ifunction_call.params[params].default}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+ {/if}
+ {/section}
+ </div>
+ </div>
+ </div>
+{/if}
+
+{if $vars || $ivars}
+ <a name="sec-vars"></a>
+ <div class="info-box">
+ <div class="info-box-title">Variables</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendents</a> |
+ {/if}
+ {if $methods}
+ <a href="#sec-var-summary">Vars</a> (<span class="disabled">details</span>)
+ {else}
+ <span class="disabled">Vars</span>
+ {/if}
+
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ {if $methods || $imethods}
+ |
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="var.tpl"}
+ {if $ivars}
+ <h4>Inherited Variables</h4>
+ <A NAME='inherited_vars'><!-- --></A>
+ {section name=ivars loop=$ivars}
+ <p>Inherited from <span class="classname">{$ivars[ivars].parent_class}</span></p>
+ <blockquote>
+ {section name=ivars2 loop=$ivars[ivars].ivars}
+ <span class="var-title">
+ <span class="var-name">{$ivars[ivars].ivars[ivars2].link}</span>{if $ivars[ivars].ivars[ivars2].ivar_sdesc}: {$ivars[ivars].ivars[ivars2].ivar_sdesc}{/if}<br>
+ </span>
+ {/section}
+ </blockquote>
+ {/section}
+ {/if}
+ </div>
+ </div>
+{/if}
+
+{if $methods || $imethods}
+ <a name="sec-methods"></a>
+ <div class="info-box">
+ <div class="info-box-title">Methods</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendents</a> |
+ {/if}
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<span class="disabled">details</span>)
+ {else}
+ <span class="disabled">Methods</span>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="method.tpl"}
+ {if $imethods}
+ <h4>Inherited Methods</h4>
+ <a name='inherited_methods'><!-- --></a>
+ {section name=imethods loop=$imethods}
+ <!-- =========== Summary =========== -->
+ <p>Inherited From <span class="classname">{$imethods[imethods].parent_class}</span></p>
+ <blockquote>
+ {section name=im2 loop=$imethods[imethods].imethods}
+ <span class="method-name">{$imethods[imethods].imethods[im2].link}</span>{if $imethods[imethods].imethods[im2].ifunction_sdesc}: {$imethods[imethods].imethods[im2].ifunction_sdesc}{/if}<br>
+ {/section}
+ </blockquote>
+ {/section}
+ {/if}
+ </div>
+ </div>
+{/if}
+
+{if $consts || $iconsts}
+ <a name="sec-consts"></a>
+ <div class="info-box">
+ <div class="info-box-title">Class Constants</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendants</a> |
+ {/if}
+ {if $methods}
+ <a href="#sec-var-summary">Constants</a> (<span class="disabled">details</span>)
+ {else}
+ <span class="disabled">Constants</span>
+ {/if}
+
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ {/if}
+ {if $methods || $imethods}
+ |
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="const.tpl"}
+ {if $iconsts}
+ <h4>Inherited Constants</h4>
+ <A NAME='inherited_vars'><!-- --></A>
+ {section name=iconsts loop=$iconsts}
+ <p>Inherited from <span class="classname">{$iconsts[iconsts].parent_class}</span></p>
+ <blockquote>
+ {section name=iconsts2 loop=$iconsts[iconsts].iconsts}
+ <img src="{$subdir}media/images/{if $iconsts[iconsts].iconsts[iconsts2].access == 'private'}PrivateVariable{else}Variable{/if}.png" />
+ <span class="const-title">
+ <span class="const-name">{$iconsts[iconsts].iconsts[iconsts2].link}</span>{if $iconsts[iconsts].iconsts[iconsts2].iconst_sdesc}: {$iconsts[iconsts].iconsts[iconsts2].iconst_sdesc}{/if}<br>
+ </span>
+ {/section}
+ </blockquote>
+ {/section}
+ {/if}
+ </div>
+ </div>
+{/if}
+
+{include file="footer.tpl" top3=true}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/classtrees.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/classtrees.tpl
new file mode 100755
index 00000000..952e6d50
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/classtrees.tpl
@@ -0,0 +1,19 @@
+{include file="header.tpl" top1=true}
+
+<!-- Start of Class Data -->
+<H2>
+ {$smarty.capture.title}
+</H2>
+{if $interfaces}
+{section name=classtrees loop=$interfaces}
+<h2>Root interface {$interfaces[classtrees].class}</h2>
+{$interfaces[classtrees].class_tree}
+{/section}
+{/if}
+{if $classtrees}
+{section name=classtrees loop=$classtrees}
+<h2>Root class {$classtrees[classtrees].class}</h2>
+{$classtrees[classtrees].class_tree}
+{/section}
+{/if}
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/const.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/const.tpl
new file mode 100644
index 00000000..c26ff92d
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/const.tpl
@@ -0,0 +1,18 @@
+{section name=consts loop=$consts}
+<a name="const{$consts[consts].const_name}" id="{$consts[consts].const_name}"><!-- --></A>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="const-header">
+ <img src="{$subdir}media/images/{if $consts[consts].access == 'private'}PrivateVariable{else}Variable{/if}.png" />
+ <span class="const-title">
+ <span class="const-name">{$consts[consts].const_name}</span>
+ = <span class="const-default">{$consts[consts].const_value|replace:"\n":"<br />"}</span>
+ (line <span class="line-number">{if $consts[consts].slink}{$consts[consts].slink}{else}{$consts[consts].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$consts[consts].sdesc desc=$consts[consts].desc tags=$consts[consts].tags}
+
+</div>
+{/section}
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/define.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/define.tpl
new file mode 100755
index 00000000..0da5d864
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/define.tpl
@@ -0,0 +1,24 @@
+{section name=def loop=$defines}
+<a name="{$defines[def].define_link}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <span class="const-title">
+ <span class="const-name">{$defines[def].define_name}</span> = {$defines[def].define_value|replace:"\n":"<br />"}
+ (line <span class="line-number">{if $defines[def].slink}{$defines[def].slink}{else}{$defines[def].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$defines[def].sdesc desc=$defines[def].desc tags=$defines[def].tags}
+
+ {if $globals[glob].global_conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with constants:</span><br />
+ {section name=me loop=$defines[def].define_conflicts.conflicts}
+ {$defines[def].define_conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+
+</div>
+{/section} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/docblock.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/docblock.tpl
new file mode 100755
index 00000000..783d5271
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/docblock.tpl
@@ -0,0 +1,14 @@
+<!-- ========== Info from phpDoc block ========= -->
+{if $sdesc}
+<p class="short-description">{$sdesc}</p>
+{/if}
+{if $desc}
+<p class="description">{$desc}</p>
+{/if}
+{if $tags}
+ <ul class="tags">
+ {section name=tags loop=$tags}
+ <li><span class="field">{$tags[tags].keyword}:</span> {$tags[tags].data}</li>
+ {/section}
+ </ul>
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/elementindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/elementindex.tpl
new file mode 100755
index 00000000..d5964f99
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/elementindex.tpl
@@ -0,0 +1,12 @@
+{include file="header.tpl" noleftindex=true}
+<a name="top"></a>
+<h2>Full index</h2>
+<h3>Package indexes</h3>
+<ul>
+{section name=p loop=$packageindex}
+ <li><a href="elementindex_{$packageindex[p].title}.html">{$packageindex[p].title}</a></li>
+{/section}
+</ul>
+<br />
+{include file="basicindex.tpl" indexname="elementindex"}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/errors.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/errors.tpl
new file mode 100755
index 00000000..0f526584
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/errors.tpl
@@ -0,0 +1,21 @@
+{include file="header.tpl" noleftindex=true}
+{section name=files loop=$files}
+<a href="#{$files[files].file}">{$files[files].file}</a><br>
+{/section}
+{foreach key=file item=issues from=$all}
+<a name="{$file}"></a>
+<h1>{$file}</h1>
+{if count($issues.warnings)}
+<h2>Warnings:</h2><br>
+{section name=warnings loop=$issues.warnings}
+<b>{$issues.warnings[warnings].name}</b> - {$issues.warnings[warnings].listing}<br>
+{/section}
+{/if}
+{if count($issues.errors)}
+<h2>Errors:</h2><br>
+{section name=errors loop=$issues.errors}
+<b>{$issues.errors[errors].name}</b> - {$issues.errors[errors].listing}<br>
+{/section}
+{/if}
+{/foreach}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/examplesource.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/examplesource.tpl
new file mode 100755
index 00000000..8abf74ce
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/examplesource.tpl
@@ -0,0 +1,6 @@
+{include file="header.tpl" title=$title}
+<h1>{$title}</h1>
+<div class="listing">
+{$source}
+</div>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/filesource.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/filesource.tpl
new file mode 100755
index 00000000..239f7b41
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/filesource.tpl
@@ -0,0 +1,8 @@
+{capture name="tutle"}File Source for {$name}{/capture}
+{include file="header.tpl" title=$smarty.capture.tutle}
+<h1>Source for file {$name}</h1>
+<p>Documentation is available at {$docs}</p>
+<div class="src-code">
+{$source}
+</div>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/footer.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/footer.tpl
new file mode 100755
index 00000000..8d0f79db
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/footer.tpl
@@ -0,0 +1,8 @@
+{if !$index}
+ <p class="notes" id="credit">
+ Documentation generated on {$date} by <a href="{$phpdocwebsite}" target="_blank">phpDocumentor {$phpdocversion}</a>
+ </p>
+{/if}
+ {if $top3}</div>{/if}
+</body>
+</html>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/function.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/function.tpl
new file mode 100755
index 00000000..b6880059
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/function.tpl
@@ -0,0 +1,44 @@
+{section name=func loop=$functions}
+<a name="{$functions[func].function_dest}" id="{$functions[func].function_dest}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <span class="method-title">{$functions[func].function_name}</span> (line <span class="line-number">{if $functions[func].slink}{$functions[func].slink}{else}{$functions[func].line_number}{/if}</span>)
+ </div>
+
+ {include file="docblock.tpl" sdesc=$functions[func].sdesc desc=$functions[func].desc tags=$functions[func].tags params=$functions[func].params function=false}
+
+ <div class="method-signature">
+ <span class="method-result">{$functions[func].function_return}</span>
+ <span class="method-name">
+ {if $functions[func].ifunction_call.returnsref}&amp;{/if}{$functions[func].function_name}
+ </span>
+ {if count($functions[func].ifunction_call.params)}
+ ({section name=params loop=$functions[func].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $functions[func].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$functions[func].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$functions[func].ifunction_call.params[params].name}</span>{if $functions[func].ifunction_call.params[params].hasdefault} = <span class="var-default">{$functions[func].ifunction_call.params[params].default|escape:"html"}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+
+ {if $functions[func].params}
+ <ul class="parameters">
+ {section name=params loop=$functions[func].params}
+ <li>
+ <span class="var-type">{$functions[func].params[params].datatype}</span>
+ <span class="var-name">{$functions[func].params[params].var}</span>{if $functions[func].params[params].data}<span class="var-description">: {$functions[func].params[params].data}</span>{/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+ {if $functions[func].function_conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with functions:</span><br />
+ {section name=me loop=$functions[func].function_conflicts.conflicts}
+ {$functions[func].function_conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+
+</div>
+{/section}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/global.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/global.tpl
new file mode 100755
index 00000000..eab7e0b0
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/global.tpl
@@ -0,0 +1,26 @@
+{section name=glob loop=$globals}
+<a name="{$globals[glob].global_link}" id="{$globals[glob].global_link}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <span class="var-title">
+ <span class="var-type">{$globals[glob].global_type}</span>
+ <span class="var-name">{$globals[glob].global_name}</span>
+ {if $vars[vars].var_default} = <span class="var-default">{$globals[glob].global_value|replace:"\n":"<br />"}</span>{/if}
+ (line <span class="line-number">{if $globals[glob].slink}{$globals[glob].slink}{else}{$globals[glob].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$globals[glob].sdesc desc=$globals[glob].desc tags=$globals[glob].tags}
+
+ {if $globals[glob].global_conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with global variables:</span><br />
+ {section name=me loop=$globals[glob].global_conflicts.conflicts}
+ {$globals[glob].global_conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+
+</div>
+{/section} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/header.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/header.tpl
new file mode 100755
index 00000000..09fc9856
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/header.tpl
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+ <html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <!-- template designed by Marco Von Ballmoos -->
+ <title>{$title}</title>
+ <link rel="stylesheet" href="{$subdir}media/stylesheet.css" />
+ {if $top2}
+ <link rel="stylesheet" href="{$subdir}media/banner.css" />
+ <style>
+ body {ldelim} padding: 1em; {rdelim}
+ </style>
+ {/if}
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+ </head>
+ <body>
+ {if $top3}<div class="page-body">{/if}
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/include.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/include.tpl
new file mode 100755
index 00000000..c2419e5f
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/include.tpl
@@ -0,0 +1,16 @@
+{section name=includes loop=$includes}
+<a name="{$includes[includes].include_file}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <span class="include-title">
+ <span class="include-type">{$includes[includes].include_name}</span>
+ (<span class="include-name">{$includes[includes].include_value}</span>)
+ (line <span class="line-number">{if $includes[includes].slink}{$includes[includes].slink}{else}{$includes[includes].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$includes[includes].sdesc desc=$includes[includes].desc tags=$includes[includes].tags}
+
+</div>
+{/section} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/index.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/index.tpl
new file mode 100755
index 00000000..7cd61094
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/index.tpl
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//FR"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
+ <html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+ <!-- Generated by phpDocumentor on {$date} -->
+ <title>{$title}</title>
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+</head>
+
+<FRAMESET rows='120,*'>
+ <FRAME src='packages.html' name='left_top' frameborder="1" bordercolor="#999999">
+ <FRAMESET cols='25%,*'>
+ <FRAME src='{$start}' name='left_bottom' frameborder="1" bordercolor="#999999">
+ <FRAME src='{$blank}.html' name='right' frameborder="1" bordercolor="#999999">
+ </FRAMESET>
+ <NOFRAMES>
+ <H2>Frame Alert</H2>
+ <P>This document is designed to be viewed using the frames feature.
+ If you see this message, you are using a non-frame-capable web client.</P>
+ </NOFRAMES>
+</FRAMESET>
+</HTML>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/left_frame.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/left_frame.tpl
new file mode 100755
index 00000000..eb3f670d
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/left_frame.tpl
@@ -0,0 +1,159 @@
+{include file="header.tpl" top2=true}
+<div class="package-title">{$package}</div>
+<div class="package-details">
+
+ <dl class="tree">
+
+ <dt class="folder-title">Description</dt>
+ <dd>
+ <a href='{$classtreepage}.html' target='right'>Class trees</a><br />
+ <a href='{$elementindex}.html' target='right'>Index of elements</a><br />
+ {if $hastodos}
+ <a href="{$todolink}" target="right">Todo List</a><br />
+ {/if}
+ </dd>
+
+ {section name=p loop=$info}
+
+ {if $info[p].subpackage == ""}
+
+ {if $info[p].tutorials}
+ <dt class="folder-title">Tutorials/Manuals</dt>
+ <dd>
+ {if $info[p].tutorials.pkg}
+ <dl class="tree">
+ <dt class="folder-title">Package-level</dt>
+ <dd>
+ {section name=ext loop=$info[p].tutorials.pkg}
+ {$info[p].tutorials.pkg[ext]}
+ {/section}
+ </dd>
+ </dl>
+ {/if}
+
+ {if $info[p].tutorials.cls}
+ <dl class="tree">
+ <dt class="folder-title">Class-level</dt>
+ <dd>
+ {section name=ext loop=$info[p].tutorials.cls}
+ {$info[p].tutorials.cls[ext]}
+ {/section}
+ </dd>
+ </dl>
+ {/if}
+
+ {if $info[p].tutorials.proc}
+ <dl class="tree">
+ <dt class="folder-title">Function-level</dt>
+ <dd>
+ {section name=ext loop=$info[p].tutorials.proc}
+ {$info[p].tutorials.proc[ext]}
+ {/section}
+ </dd>
+ </dl>
+ {/if}
+ </dd>
+ {/if}
+ {if $info[p].hasinterfaces}
+ <dt class="folder-title">Interfaces</dt>
+ {section name=class loop=$info[p].classes}
+ {if $info[p].classes[class].is_interface}
+ <dd><a href='{$info[p].classes[class].link}' target='right'>{$info[p].classes[class].title}</a></dd>
+ {/if}
+ {/section}
+ {/if}
+ {if $info[p].hasclasses}
+ <dt class="folder-title">Classes</dt>
+ {section name=class loop=$info[p].classes}
+ {if $info[p].classes[class].is_class}
+ <dd><a href='{$info[p].classes[class].link}' target='right'>{$info[p].classes[class].title}</a></dd>
+ {/if}
+ {/section}
+ {/if}
+ {if $info[p].functions}
+ <dt class="folder-title">Functions</dt>
+ {section name=f loop=$info[p].functions}
+ <dd><a href='{$info[p].functions[f].link}' target='right'>{$info[p].functions[f].title}</a></dd>
+ {/section}
+ {/if}
+ {if $info[p].files}
+ <dt class="folder-title">Files</dt>
+ {section name=nonclass loop=$info[p].files}
+ <dd><a href='{$info[p].files[nonclass].link}' target='right'>{$info[p].files[nonclass].title}</a></dd>
+ {/section}
+ {/if}
+
+ {else}
+ {if $info[p].tutorials}
+ <dt class="folder-title">Tutorials/Manuals</dt>
+ <dd>
+ {if $info[p].tutorials.pkg}
+ <dl class="tree">
+ <dt class="folder-title">Package-level</dt>
+ <dd>
+ {section name=ext loop=$info[p].tutorials.pkg}
+ {$info[p].tutorials.pkg[ext]}
+ {/section}
+ </dd>
+ </dl>
+ {/if}
+
+ {if $info[p].tutorials.cls}
+ <dl class="tree">
+ <dt class="folder-title">Class-level</dt>
+ <dd>
+ {section name=ext loop=$info[p].tutorials.cls}
+ {$info[p].tutorials.cls[ext]}
+ {/section}
+ </dd>
+ </dl>
+ {/if}
+
+ {if $info[p].tutorials.proc}
+ <dl class="tree">
+ <dt class="folder-title">Function-level</dt>
+ <dd>
+ {section name=ext loop=$info[p].tutorials.proc}
+ {$info[p].tutorials.proc[ext]}
+ {/section}
+ </dd>
+ </dl>
+ {/if}
+ </dd>
+ {/if}
+
+ <dt class="sub-package">{$info[p].subpackage}</dt>
+ <dd>
+ <dl class="tree">
+ {if $info[p].subpackagetutorial}
+ <div><a href="{$info.0.subpackagetutorialnoa}" target="right">{$info.0.subpackagetutorialtitle}</a></div>
+ {/if}
+ {if $info[p].classes}
+ <dt class="folder-title">Classes</dt>
+ {section name=class loop=$info[p].classes}
+ <dd><a href='{$info[p].classes[class].link}' target='right'>{$info[p].classes[class].title}</a></dd>
+ {/section}
+ {/if}
+ {if $info[p].functions}
+ <dt class="folder-title">Functions</dt>
+ {section name=f loop=$info[p].functions}
+ <dd><a href='{$info[p].functions[f].link}' target='right'>{$info[p].functions[f].title}</a></dd>
+ {/section}
+ {/if}
+ {if $info[p].files}
+ <dt class="folder-title">Files</dt>
+ {section name=nonclass loop=$info[p].files}
+ <dd><a href='{$info[p].files[nonclass].link}' target='right'>{$info[p].files[nonclass].title}</a></dd>
+ {/section}
+ {/if}
+ </dl>
+ </dd>
+
+ {/if}
+
+ {/section}
+ </dl>
+</div>
+<p class="notes"><a href="{$phpdocwebsite}" target="_blank">phpDocumentor v <span class="field">{$phpdocversion}</span></a></p>
+</BODY>
+</HTML>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/media/banner.css b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/media/banner.css
new file mode 100755
index 00000000..4f7db5da
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/media/banner.css
@@ -0,0 +1,32 @@
+body
+{
+ background: #EEEEEE url(bg_left.png) repeat;
+ margin: 0px;
+ padding: 0px;
+}
+
+/* Banner (top bar) classes */
+
+.banner { }
+
+.banner-menu
+{
+ clear: both;
+ padding: .5em;
+ border-top: 2px solid #999999;
+}
+
+.banner-title
+{
+ text-align: right;
+ font-size: 20pt;
+ font-weight: bold;
+ margin: .2em;
+}
+
+.package-selector
+{
+ background-color: #EEEEEE;
+ border: 1px solid black;
+ color: #0000C0;
+}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/media/bg_left.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/media/bg_left.png
new file mode 100755
index 00000000..1c331f09
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/media/bg_left.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/media/stylesheet.css b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/media/stylesheet.css
new file mode 100755
index 00000000..26a31801
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/media/stylesheet.css
@@ -0,0 +1,154 @@
+a
+{
+ color: #336699;
+ text-decoration: underline;
+}
+
+a:hover, a:active, a:focus
+{
+ text-decoration: underline;
+ color: #6699CC
+}
+
+body { background: #FFFFFF; font-family: "Courier New", Courier, fixed; font-size: 10pt }
+table { font-size: 10pt }
+p, li { line-height: 140% }
+a img { border: 0px; }
+dd { margin-left: 0px; padding-left: 1em; }
+
+/* Page layout/boxes */
+
+.info-box {}
+.info-box-title { margin: 1em 0em 0em 0em; padding: .25em; font-weight: normal; font-size: 14pt; border: 1px solid #336699; background-color: #EEEEEE }
+.info-box-body { border: 1px solid #999999; padding: .5em; }
+.nav-bar { font-size: 8pt; white-space: nowrap; text-align: right; padding: .2em; margin: 0em 0em 1em 0em; }
+
+.oddrow { background-color: #F4F4F4; border: 1px solid #AAAAAA; padding: .5em; margin-bottom: 1em}
+.evenrow { border: 1px solid #AAAAAA; padding: .5em; margin-bottom: 1em}
+
+.page-body { max-width: 800px; margin: auto; }
+.menu-body { background: #EEEEEE url(bg_left.css) repeat }
+.tree dl { margin: 0px }
+.tree a { text-decoration: none }
+.tree a:hover, .tree a:active, .tree a:focus { text-decoration: underline }
+
+/* Index formatting classes */
+
+.index-item-body { margin-top: .5em; margin-bottom: .5em}
+.index-item-description { margin-top: .25em }
+.index-item-details { font-weight: normal; font-style: italic; font-size: 8pt }
+.index-letter-section { background-color: #EEEEEE; border: 1px dotted #999999; padding: .5em; margin-bottom: 1em}
+.index-letter-title { font-size: 12pt; font-weight: bold }
+.index-letter-menu { text-align: center; margin: 1em }
+.index-letter { font-size: 12pt }
+
+/* Docbook classes */
+
+.description {}
+.short-description { font-weight: bold; color: #666666; }
+.tags { padding-left: 0em; margin-left: 3em; color: #666666; list-style-type: square; }
+.parameters { padding-left: 0em; margin-left: 3em; font-style: italic; list-style-type: square; }
+.redefinitions { font-size: 8pt; padding-left: 0em; margin-left: 2em; }
+.package { }
+.package-title { font-weight: bold; font-size: 14pt; border-bottom: 1px solid black }
+.package-details { font-size: 85%; }
+.sub-package { font-weight: bold; font-size: 120% }
+.tutorial { border-width: thin; border-color: #0066ff }
+.tutorial-nav-box { width: 100%; border: 1px solid #AAAAAA; background: #EEEEEE url(bg_left.png) repeat; }
+.nav-button-disabled { color: #AAAAAA; }
+.nav-button:active,
+.nav-button:focus,
+.nav-button:hover { background-color: #CCCCCC; outline: 1px solid #999999; text-decoration: none }
+.folder-title { font-style: italic }
+
+/* Generic formatting */
+
+.field { font-weight: bold; }
+.detail { font-size: 8pt; }
+.notes { font-style: italic; font-size: 8pt; }
+.separator { background-color: #999999; height: 2px; }
+.warning { color: #CC0000; }
+.disabled { font-style: italic; color: #999999; }
+
+/* Code elements */
+
+.line-number { }
+
+.class-table { width: 100%; }
+.class-table-header { border-bottom: 1px dotted #666666; text-align: left; background-color: DDDDFF }
+.class-name { color: #000000; font-weight: bold; }
+
+.method-summary { padding-left: 1em; font-size: 8pt }
+.method-header { }
+.method-definition { margin-bottom: .3em }
+.method-title { font-weight: bold }
+.method-name { font-weight: bold; }
+.method-signature { font-size: 85%; color: #666666; margin: .5em 0em }
+.method-result { font-style: italic; }
+
+.var-summary { padding-left: 1em; font-size: 8pt; }
+.var-header { }
+.var-title { margin-bottom: .3em }
+.var-type { font-style: italic; border: 1px dashed #336699 }
+.var-name { font-weight: bold; }
+.var-default { border: 1px dashed #336699 }
+.var-description { font-weight: normal; color: #000000; }
+
+.include-title { }
+.include-type { font-style: italic; }
+.include-name { font-weight: bold; }
+
+.const-title { }
+.const-name { font-weight: bold; }
+
+/* Syntax highlighting */
+
+.src-code { border: 1px solid #336699; padding: 1em;
+ font-family: 'Courier New', Courier, monospace; font-weight: normal; }
+.src-line { font-family: 'Courier New', Courier, monospace; font-weight: normal; }
+
+.src-comm { color: green; }
+.src-id { }
+.src-inc { color: #0000FF; }
+.src-key { color: #0000FF; }
+.src-num { color: #CC0000; }
+.src-str { color: #66cccc; }
+.src-sym { font-weight: bold; }
+.src-var { }
+
+.src-php { font-weight: bold; }
+
+.src-doc { color: #009999 }
+.src-doc-close-template { color: #0000FF }
+.src-doc-coretag { color: #0099FF; font-weight: bold }
+.src-doc-inlinetag { color: #0099FF }
+.src-doc-internal { color: #6699cc }
+.src-doc-tag { color: #0080CC }
+.src-doc-template { color: #0000FF }
+.src-doc-type { font-style: italic }
+.src-doc-var { font-style: italic }
+
+.tute-tag { color: #009999 }
+.tute-attribute-name { color: #0000FF }
+.tute-attribute-value { color: #0099FF }
+.tute-entity { font-weight: bold; }
+.tute-comment { font-style: italic }
+.tute-inline-tag { color: #636311; font-weight: bold }
+
+/* tutorial */
+
+.authors { }
+.author { font-style: italic; font-weight: bold }
+.author-blurb { margin: .5em 0em .5em 2em; font-size: 85%; font-weight: normal; font-style: normal }
+.example { border: 1px solid #336699; background-color: #F4F4F4; padding: .5em; }
+.listing { border: 1px solid #336699; background-color: #F4F4F4; padding: .5em; white-space: nowrap; }
+.release-info { font-size: 85%; font-style: italic; margin: 1em 0em }
+.ref-title-box { }
+.ref-title { }
+.ref-purpose { font-style: italic; color: #666666 }
+.ref-synopsis { }
+.title { font-weight: bold; border-bottom: 1px solid #336699; padding: 2px }
+.cmd-synopsis { margin: 1em 0em }
+.cmd-title { font-weight: bold }
+.toc { margin-left: 2em; padding-left: 0em }
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/method.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/method.tpl
new file mode 100755
index 00000000..06d57a12
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/method.tpl
@@ -0,0 +1,149 @@
+<A NAME='method_detail'></A>
+{section name=methods loop=$methods}
+{if $methods[methods].static}
+<a name="method{$methods[methods].function_name}" id="{$methods[methods].function_name}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="method-header">
+ <span class="method-title">static {$methods[methods].function_name}</span> (line <span class="line-number">{if $methods[methods].slink}{$methods[methods].slink}{else}{$methods[methods].line_number}{/if}</span>)
+ </div>
+
+ {include file="docblock.tpl" sdesc=$methods[methods].sdesc desc=$methods[methods].desc tags=$methods[methods].tags params=$methods[methods].params function=false}
+
+ <div class="method-signature">
+ static <span class="method-result">{$methods[methods].function_return}</span>
+ <span class="method-name">
+ {if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}
+ </span>
+ {if count($methods[methods].ifunction_call.params)}
+ ({section name=params loop=$methods[methods].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$methods[methods].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$methods[methods].ifunction_call.params[params].name}</span>{if $methods[methods].ifunction_call.params[params].hasdefault} = <span class="var-default">{$methods[methods].ifunction_call.params[params].default}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+
+ {if $methods[methods].params}
+ <ul class="parameters">
+ {section name=params loop=$methods[methods].params}
+ <li>
+ <span class="var-type">{$methods[methods].params[params].datatype}</span>
+ <span class="var-name">{$methods[methods].params[params].var}</span>{if $methods[methods].params[params].data}<span class="var-description">: {$methods[methods].params[params].data}</span>{/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+ {if $methods[methods].method_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$methods[methods].method_overrides.link}</dt>
+ {if $methods[methods].method_overrides.sdesc}
+ <dd>{$methods[methods].method_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+ {if $methods[methods].method_implements}
+ <hr class="separator" />
+ <div class="notes">Implementation of:</div>
+ {section name=imp loop=$methods[methods].method_implements}
+ <dl>
+ <dt>{$methods[methods].method_implements[imp].link}</dt>
+ {if $methods[methods].method_implements[imp].sdesc}
+ <dd>{$methods[methods].method_implements[imp].sdesc}</dd>
+ {/if}
+ </dl>
+ {/section}
+ {/if}
+
+ {if $methods[methods].descmethod}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=dm loop=$methods[methods].descmethod}
+ <li>
+ {$methods[methods].descmethod[dm].link}
+ {if $methods[methods].descmethod[dm].sdesc}
+ : {$methods[methods].descmethod[dm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+</div>
+{/if}
+{/section}
+{section name=methods loop=$methods}
+{if !$methods[methods].static}
+<a name="method{$methods[methods].function_name}" id="{$methods[methods].function_name}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="method-header">
+ <span class="method-title">{if $methods[methods].ifunction_call.constructor}Constructor {elseif $methods[methods].ifunction_call.destructor}Destructor {/if}{$methods[methods].function_name}</span> (line <span class="line-number">{if $methods[methods].slink}{$methods[methods].slink}{else}{$methods[methods].line_number}{/if}</span>)
+ </div>
+
+ {include file="docblock.tpl" sdesc=$methods[methods].sdesc desc=$methods[methods].desc tags=$methods[methods].tags params=$methods[methods].params function=false}
+
+ <div class="method-signature">
+ <span class="method-result">{$methods[methods].function_return}</span>
+ <span class="method-name">
+ {if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}
+ </span>
+ {if count($methods[methods].ifunction_call.params)}
+ ({section name=params loop=$methods[methods].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$methods[methods].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$methods[methods].ifunction_call.params[params].name}</span>{if $methods[methods].ifunction_call.params[params].hasdefault} = <span class="var-default">{$methods[methods].ifunction_call.params[params].default}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+
+ {if $methods[methods].params}
+ <ul class="parameters">
+ {section name=params loop=$methods[methods].params}
+ <li>
+ <span class="var-type">{$methods[methods].params[params].datatype}</span>
+ <span class="var-name">{$methods[methods].params[params].var}</span>{if $methods[methods].params[params].data}<span class="var-description">: {$methods[methods].params[params].data}</span>{/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+ {if $methods[methods].method_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$methods[methods].method_overrides.link}</dt>
+ {if $methods[methods].method_overrides.sdesc}
+ <dd>{$methods[methods].method_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+ {if $methods[methods].method_implements}
+ <hr class="separator" />
+ <div class="notes">Implementation of:</div>
+ {section name=imp loop=$methods[methods].method_implements}
+ <dl>
+ <dt>{$methods[methods].method_implements[imp].link}</dt>
+ {if $methods[methods].method_implements[imp].sdesc}
+ <dd>{$methods[methods].method_implements[imp].sdesc}</dd>
+ {/if}
+ </dl>
+ {/section}
+ {/if}
+
+ {if $methods[methods].descmethod}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=dm loop=$methods[methods].descmethod}
+ <li>
+ {$methods[methods].descmethod[dm].link}
+ {if $methods[methods].descmethod[dm].sdesc}
+ : {$methods[methods].descmethod[dm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+</div>
+{/if}
+{/section}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/page.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/page.tpl
new file mode 100755
index 00000000..b5980236
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/page.tpl
@@ -0,0 +1,211 @@
+{include file="header.tpl" top3=true}
+
+<h2 class="file-name">{$source_location}</h2>
+
+<a name="sec-description"></a>
+<div class="info-box">
+ <div class="info-box-title">Description</div>
+ <div class="nav-bar">
+ {if $classes || $includes || $defines || $globals || $functions}
+ <span class="disabled">Description</span> |
+ {/if}
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="docblock.tpl" desc=$desc sdesc=$sdesc tags=$tags}
+
+ {if $tutorial}
+ <hr class="separator" />
+ <div class="notes">Tutorial: <span class="tutorial">{$tutorial}</div>
+ {/if}
+ </div>
+</div>
+
+{if $classes}
+ <a name="sec-classes"></a>
+ <div class="info-box">
+ <div class="info-box-title">Classes</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ <span class="disabled">Classes</span>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <table cellpadding="2" cellspacing="0" class="class-table">
+ <tr>
+ <th class="class-table-header">Class</th>
+ <th class="class-table-header">Description</th>
+ </tr>
+ {section name=classes loop=$classes}
+ <tr>
+ <td style="padding-right: 2em; vertical-align: top">
+ {$classes[classes].link}
+ </td>
+ <td>
+ {if $classes[classes].sdesc}
+ {$classes[classes].sdesc}
+ {else}
+ {$classes[classes].desc}
+ {/if}
+ </td>
+ </tr>
+ {/section}
+ </table>
+ </div>
+ </div>
+{/if}
+
+{if $includes}
+ <a name="sec-includes"></a>
+ <div class="info-box">
+ <div class="info-box-title">Includes</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ <span class="disabled">Includes</span>
+ {if $defines || $globals || $functions}|{/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="include.tpl"}
+ </div>
+ </div>
+{/if}
+
+{if $defines}
+ <a name="sec-constants"></a>
+ <div class="info-box">
+ <div class="info-box-title">Constants</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ <span class="disabled">Constants</span>
+ {if $globals || $functions}|{/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="define.tpl"}
+ </div>
+ </div>
+{/if}
+
+{if $globals}
+ <a name="sec-variables"></a>
+ <div class="info-box">
+ <div class="info-box-title">Variables</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ <span class="disabled">Variables</span>
+ {if $functions}|{/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="global.tpl"}
+ </div>
+ </div>
+{/if}
+
+{if $functions}
+ <a name="sec-functions"></a>
+ <div class="info-box">
+ <div class="info-box-title">Functions</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ <span class="disabled">Functions</span>
+ </div>
+ <div class="info-box-body">
+ {include file="function.tpl"}
+ </div>
+ </div>
+{/if}
+
+{include file="footer.tpl" top3=true}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/pkgelementindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/pkgelementindex.tpl
new file mode 100755
index 00000000..dc283ad0
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/pkgelementindex.tpl
@@ -0,0 +1,17 @@
+{include file="header.tpl"}
+<a name="top"></a>
+<h2>[{$package}] element index</h2>
+{if count($packageindex) > 1}
+ <h3>Package indexes</h3>
+ <ul>
+ {section name=p loop=$packageindex}
+ {if $packageindex[p].title != $package}
+ <li><a href="elementindex_{$packageindex[p].title}.html">{$packageindex[p].title}</a></li>
+ {/if}
+ {/section}
+ </ul>
+{/if}
+<a href="elementindex.html">All elements</a>
+<br />
+{include file="basicindex.tpl" indexname=elementindex_$package}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/ric.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/ric.tpl
new file mode 100755
index 00000000..eff734c1
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/ric.tpl
@@ -0,0 +1,6 @@
+{include file="header.tpl"}
+<h1 align="center">{$name}</h1>
+<pre>
+{$contents|htmlentities}
+</pre>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/todolist.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/todolist.tpl
new file mode 100755
index 00000000..f929ccdb
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/todolist.tpl
@@ -0,0 +1,14 @@
+{include file="header.tpl" title="Todo List"}
+<div align="center"><h1>Todo List</h1></div>
+{foreach from=$todos key=todopackage item=todo}
+<h2>{$todopackage}</h2>
+{section name=todo loop=$todo}
+<h3>{$todo[todo].link}</h3>
+<ul>
+{section name=t loop=$todo[todo].todos}
+ <li>{$todo[todo].todos[t]}</li>
+{/section}
+</ul>
+{/section}
+{/foreach}
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/top_frame.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/top_frame.tpl
new file mode 100755
index 00000000..36d1e5a1
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/top_frame.tpl
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+ <html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <!-- template designed by Marco Von Ballmoos -->
+ <title>{$title}</title>
+ <link rel="stylesheet" href="{$subdir}media/stylesheet.css" />
+ <link rel="stylesheet" href="{$subdir}media/banner.css" />
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+ </head>
+ <body>
+ <div class="banner">
+ <div class="banner-title">{$package}</div>
+ <div class="banner-menu">
+ <form>
+ <table cellpadding="0" cellspacing="0" style="width: 100%">
+ <tr>
+ <td>
+ {if count($ric) >= 1}
+ {assign var="last_ric_name" value=""}
+ {section name=ric loop=$ric}
+ {if $last_ric_name != ""} | {/if}
+ <a href="{$ric[ric].file}" target="right">{$ric[ric].name}</a>
+ {assign var="last_ric_name" value=$ric[ric].name}
+ {/section}
+ {/if}
+ </td>
+ <td style="width: 2em">&nbsp;</td>
+ <td style="text-align: right">
+ {if count($packages) > 1}
+ <span class="field">Packages</span>
+ <select class="package-selector" onchange="window.parent.left_bottom.location=this[selectedIndex].value">
+ {section name=p loop=$packages}
+ <option value="{$packages[p].link}">{$packages[p].title}</option>
+ {/section}
+ </select>
+ {/if}
+ </td>
+ </tr>
+ </table>
+ </form>
+ </div>
+ </div>
+ </body>
+ </html>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/tutorial.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/tutorial.tpl
new file mode 100755
index 00000000..3b9109d1
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/tutorial.tpl
@@ -0,0 +1,13 @@
+{include file="header.tpl" title=$title top3=true}
+
+{if $nav}
+ {include file="tutorial_nav.tpl" prev=$prev next=$next up=$up prevtitle=$prevtitle nexttitle=$nexttitle uptitle=$uptitle}
+{/if}
+
+{$contents}
+
+{if $nav}
+ {include file="tutorial_nav.tpl" prev=$prev next=$next up=$up prevtitle=$prevtitle nexttitle=$nexttitle uptitle=$uptitle}
+{/if}
+
+{include file="footer.tpl" top3=true} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/tutorial_nav.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/tutorial_nav.tpl
new file mode 100755
index 00000000..89952301
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/tutorial_nav.tpl
@@ -0,0 +1,41 @@
+<table class="tutorial-nav-box">
+ <tr>
+ <td style="width: 30%">
+ {if $prev}
+ <a href="{$prev}" class="nav-button">Previous</a>
+ {else}
+ <span class="nav-button-disabled">Previous</span>
+ {/if}
+ </td>
+ <td style="text-align: center">
+ {if $up}
+ <a href="{$up}" class="nav-button">Up</a>
+ {/if}
+ </td>
+ <td style="text-align: right; width: 30%">
+ {if $next}
+ <a href="{$next}" class="nav-button">Next</a>
+ {else}
+ <span class="nav-button-disabled">Next</span>
+ {/if}
+ </td>
+ </tr>
+ <tr>
+ <td style="width: 30%">
+ {if $prevtitle}
+ <span class="detail">{$prevtitle}</span>
+ {/if}
+ </td>
+ <td style="text-align: center">
+ {if $uptitle}
+ <span class="detail">{$uptitle}</span>
+ {/if}
+ </td>
+ <td style="text-align: right; width: 30%">
+ {if $nexttitle}
+ <span class="detail">{$nexttitle}</span>
+ {/if}
+ </td>
+ </tr>
+</table>
+ \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/tutorial_toc.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/tutorial_toc.tpl
new file mode 100755
index 00000000..3482249b
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/tutorial_toc.tpl
@@ -0,0 +1,40 @@
+{if count($toc)}
+<h1 class="title">Table of Contents</h1>
+<ul class="toc">
+ {assign var="lastcontext" value='refsect1'}
+ {section name=toc loop=$toc}
+
+ {if $toc[toc].tagname != $lastcontext}
+ {if $lastcontext == 'refsect1'}
+ <ul class="toc">
+ <li>{$toc[toc].link}</li>
+ {else}
+ {if $lastcontext == 'refsect2'}
+ {if $toc[toc].tagname == 'refsect1'}
+ </ul>
+ <li>{$toc[toc].link}</li>
+ {/if}
+ {if $toc[toc].tagname == 'refsect3'}
+ <ul class="toc">
+ <li>{$toc[toc].link}</li>
+ {/if}
+ {else}
+ </ul>
+ </ul>
+ <li>{$toc[toc].link}</li>
+ {/if}
+ {/if}
+ {assign var="lastcontext" value=$toc[toc].tagname}
+ {else}
+ <li>{$toc[toc].link}</li>
+ {/if}
+ {/section}
+ {if $lastcontext == 'refsect2'}
+ </ul>
+ {/if}
+ {if $lastcontext == 'refsect3'}
+ </ul>
+ </ul>
+ {/if}
+</ul>
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/tutorial_tree.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/tutorial_tree.tpl
new file mode 100755
index 00000000..617b5654
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/tutorial_tree.tpl
@@ -0,0 +1,6 @@
+<div><a href="{$main.link}" target="right">{$main.title|strip_tags}</a></div>
+{if $haskids}
+<div style="margin-left: 1em">
+ {$kids}
+</div>
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/var.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/var.tpl
new file mode 100755
index 00000000..fccf6892
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/l0l33t/templates/var.tpl
@@ -0,0 +1,92 @@
+{section name=vars loop=$vars}
+{if $vars[vars].static}
+<a name="var{$vars[vars].var_name}" id="{$vars[vars].var_name}"><!-- --></A>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="var-header">
+ <span class="var-title">
+ static <span class="var-type">{$vars[vars].var_type}</span>
+ <span class="var-name">{$vars[vars].var_name}</span>
+ {if $vars[vars].var_default} = <span class="var-default">{$vars[vars].var_default|replace:"\n":"<br />"}</span>{/if}
+ (line <span class="line-number">{if $vars[vars].slink}{$vars[vars].slink}{else}{$vars[vars].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$vars[vars].sdesc desc=$vars[vars].desc tags=$vars[vars].tags}
+
+ {if $vars[vars].var_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$vars[vars].var_overrides.link}</dt>
+ {if $vars[vars].var_overrides.sdesc}
+ <dd>{$vars[vars].var_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+
+ {if $vars[vars].descvar}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=vm loop=$vars[vars].descvar}
+ <li>
+ {$vars[vars].descvar[vm].link}
+ {if $vars[vars].descvar[vm].sdesc}
+ : {$vars[vars].descvar[vm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+</div>
+{/if}
+{/section}
+
+{section name=vars loop=$vars}
+{if !$vars[vars].static}
+<a name="var{$vars[vars].var_name}" id="{$vars[vars].var_name}"><!-- --></A>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="var-header">
+ <span class="var-title">
+ <span class="var-type">{$vars[vars].var_type}</span>
+ <span class="var-name">{$vars[vars].var_name}</span>
+ {if $vars[vars].var_default} = <span class="var-default">{$vars[vars].var_default|replace:"\n":"<br />"}</span>{/if}
+ (line <span class="line-number">{if $vars[vars].slink}{$vars[vars].slink}{else}{$vars[vars].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$vars[vars].sdesc desc=$vars[vars].desc tags=$vars[vars].tags}
+
+ {if $vars[vars].var_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$vars[vars].var_overrides.link}</dt>
+ {if $vars[vars].var_overrides.sdesc}
+ <dd>{$vars[vars].var_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+
+ {if $vars[vars].descvar}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=vm loop=$vars[vars].descvar}
+ <li>
+ {$vars[vars].descvar[vm].link}
+ {if $vars[vars].descvar[vm].sdesc}
+ : {$vars[vars].descvar[vm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+</div>
+{/if}
+{/section}
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/options.ini b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/options.ini
new file mode 100755
index 00000000..084809be
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/options.ini
@@ -0,0 +1,577 @@
+preservedocbooktags = false
+
+;; used to highlight the {@source} inline tag, @filesource tag, and @example tag
+[highlightSourceTokens]
+;; format:
+;; T_CONSTANTNAME = open
+;; /T_CONSTANTNAME = close
+
+T_INCLUDE = <span class="src-inc">
+/T_INCLUDE = </span>
+T_INCLUDE_ONCE = <span class="src-inc">
+/T_INCLUDE_ONCE = </span>
+T_REQUIRE_ONCE = <span class="src-inc">
+/T_REQUIRE_ONCE = </span>
+T_REQUIRE_ONCE = <span class="src-inc">
+/T_REQUIRE_ONCE = </span>
+
+T_CONSTANT_ENCAPSED_STRING = <span class="src-str">
+/T_CONSTANT_ENCAPSED_STRING = </span>
+T_STRING_VARNAME = <span class="src-str">
+/T_STRING_VARNAME = </span>
+
+T_STRING = <span class="src-id">
+/T_STRING = </span>
+
+T_DNUMBER = <span class="src-num">
+/T_DNUMBER = </span>
+T_LNUMBER = <span class="src-num">
+/T_LNUMBER = </span>
+
+T_VARIABLE = <span class="src-var">
+/T_VARIABLE = </span>
+
+T_COMMENT = <span class="src-comm">
+/T_COMMENT = </span>
+T_ML_COMMENT = <span class="src-comm">
+/T_ML_COMMENT = </span>
+
+T_OBJECT_OPERATOR = <span class="src-sym">
+/T_OBJECT_OPERATOR = </span>
+
+T_ABSTRACT = <span class="src-key">
+/T_ABSTRACT = </span>
+T_CLONE = <span class="src-key">
+/T_CLONE = </span>
+T_HALT_COMPILER = <span class="src-key">
+/T_HALT_COMPILER = </span>
+T_ARRAY = <span class="src-key">
+/T_ARRAY = </span>
+T_AS = <span class="src-key">
+/T_AS = </span>
+T_BREAK = <span class="src-key">
+/T_BREAK = </span>
+T_CLASS = <span class="src-key">
+/T_CLASS = </span>
+T_CASE = <span class="src-key">
+/T_CASE = </span>
+T_CONST = <span class="src-key">
+/T_CONST = </span>
+T_CONTINUE = <span class="src-key">
+/T_CONTINUE = </span>
+T_DECLARE = <span class="src-key">
+/T_DECLARE = </span>
+T_DEFAULT = <span class="src-key">
+/T_DEFAULT = </span>
+T_ELSE = <span class="src-key">
+/T_ELSE = </span>
+T_ELSEIF = <span class="src-key">
+/T_ELSEIF = </span>
+T_EMPTY = <span class="src-key">
+/T_EMPTY = </span>
+T_ENDDECLARE = <span class="src-key">
+/T_ENDDECLARE = </span>
+T_ENDFOR = <span class="src-key">
+/T_ENDFOR = </span>
+T_ENDSWITCH = <span class="src-key">
+/T_ENDSWITCH = </span>
+T_ENDFOREACH = <span class="src-key">
+/T_ENDFOREACH = </span>
+T_ENDIF = <span class="src-key">
+/T_ENDIF = </span>
+T_ENDWHILE = <span class="src-key">
+/T_ENDWHILE = </span>
+T_EXIT = <span class="src-key">
+/T_EXIT = </span>
+T_EXTENDS = <span class="src-key">
+/T_EXTENDS = </span>
+T_FINAL = <span class="src-key">
+/T_FINAL = </span>
+T_FOR = <span class="src-key">
+/T_FOR = </span>
+T_FOREACH = <span class="src-key">
+/T_FOREACH = </span>
+T_FUNCTION = <span class="src-key">
+/T_FUNCTION = </span>
+T_GLOBAL = <span class="src-key">
+/T_GLOBAL = </span>
+T_IF = <span class="src-key">
+/T_IF = </span>
+T_IMPLEMENTS = <span class="src-key">
+/T_IMPLEMENTS = </span>
+T_INTERFACE = <span class="src-key">
+/T_INTERFACE = </span>
+T_LOGICAL_AND = <span class="src-key">
+/T_LOGICAL_AND = </span>
+T_LOGICAL_OR = <span class="src-key">
+/T_LOGICAL_OR = </span>
+T_LOGICAL_XOR = <span class="src-key">
+/T_LOGICAL_XOR = </span>
+T_NEW = <span class="src-key">
+/T_NEW = </span>
+T_PRIVATE = <span class="src-key">
+/T_PRIVATE = </span>
+T_PROTECTED = <span class="src-key">
+/T_PROTECTED = </span>
+T_PUBLIC = <span class="src-key">
+/T_PUBLIC = </span>
+T_RETURN = <span class="src-key">
+/T_RETURN = </span>
+T_STATIC = <span class="src-key">
+/T_STATIC = </span>
+T_SWITCH = <span class="src-key">
+/T_SWITCH = </span>
+T_VAR = <span class="src-key">
+/T_VAR = </span>
+T_WHILE = <span class="src-key">
+/T_WHILE = </span>
+
+T_DOUBLE_COLON = <span class="src-sym">
+/T_DOUBLE_COLON = </span>
+
+T_OPEN_TAG = <span class="src-php">
+/T_OPEN_TAG = </span>
+T_OPEN_TAG_WITH_ECHO = <span class="src-php">
+/T_OPEN_TAG_WITH_ECHO = </span>
+T_CLOSE_TAG = <span class="src-php">
+/T_CLOSE_TAG = </span>
+
+
+[highlightSource]
+;; this is for highlighting things that aren't tokens like "&"
+;; format:
+;; word = open
+;; /word = close
+@ = <span class="src-sym">
+/@ = </span>
+& = <span class="src-sym">
+/& = </span>
+[ = <span class="src-sym">
+/[ = </span>
+] = <span class="src-sym">
+/] = </span>
+! = <span class="src-sym">
+/! = </span>
+";" = <span class="src-sym">
+/; = </span>
+( = <span class="src-sym">
+/( = </span>
+) = <span class="src-sym">
+/) = </span>
+, = <span class="src-sym">
+/, = </span>
+{ = <span class="src-sym">
+/{ = </span>
+} = <span class="src-sym">
+/} = </span>
+""" = <span class="src-str">
+/" = </span>
+
+[highlightDocBlockSourceTokens]
+;; this is for docblock tokens, using by phpDocumentor_HighlightParser
+;; tagphptype is for "string" in @param string description, for example
+docblock = <span class="src-doc">
+/docblock = </span>
+tagphptype = <span class="src-doc-type">
+/tagphptype = </span>
+tagvarname = <span class="src-doc-var">
+/tagvarname = </span>
+coretag = <span class="src-doc-coretag">
+/coretag = </span>
+tag = <span class="src-doc-tag">
+/tag = </span>
+inlinetag = <span class="src-doc-inlinetag">
+/inlinetag = </span>
+internal = <span class="src-doc-internal">
+/internal = </span>
+closetemplate = <span class="src-doc-close-template">
+/closetemplate = </span>
+docblocktemplate = <span class="src-doc-template">
+/docblocktemplate = </span>
+
+[highlightTutorialSourceTokens]
+;; this is for XML DocBook-based tutorials, highlighted by phpDocumentor_TutorialHighlightParser
+;; <tag>
+opentag = <span class="tute-tag">
+/opentag = </span>
+;; </tag>
+closetag = <span class="tute-tag">
+/closetag = </span>
+;; <tag attribute="value">
+attribute = <span class="tute-attribute-name">
+/attribute = </span>
+;; <tag attribute="value">
+attributevalue = <span class="tute-attribute-value">
+/attributevalue = </span>
+;; &entity;
+entity = <span class="tute-entity">
+/entity = </span>
+;; <!-- comment -->
+comment = <span class="tute-comment">
+/comment = </span>
+;; {@inline tag}
+itag = <span class="tute-inline-tag">
+/itag = </span>
+
+;; used for translation of html in DocBlocks
+[desctranslate]
+ul = <ul>
+/ul = </ul>
+ol = <ol>
+/ol = </ol>
+li = <li>
+/li = </li>
+code =
+/code =
+var = <var>
+/var = </var>
+samp = <samp>
+/samp = </samp>
+kbd = <kbd>
+/kbd = </kbd>
+pre = <pre>
+/pre = </pre>
+p = <p>
+/p = </p>
+b = <strong>
+/b = </strong>
+i = <em>
+/i = </em>
+br = <br />
+
+[ppage]
+;; this is the DocBook package page translation section. All DocBook tags
+;; that have a corresponding html tag must be listed here. Entities should
+;; also be listed here
+;;
+;; examples:
+;; 1)
+;; tagname = newtagname
+;;
+;; This is the simplest case, where all attributes will be added into the
+;; starting tag and the ending tag will be html/xml style </tranlatedtagname>
+;; <tagname></tagname> becomes <newtagname></newtagname> and
+;; <tagname attr="value"></tagname> becomes
+;; <newtagname attr="value"></newtagname>
+;;
+;; 2)
+;; tagname = newtagname
+;; tagname->attr = newattrname
+;;
+;; in this case, everything will be like the first case, except tags like:
+;; <tagname attr="value"></tagname> will become
+;; <newtagname newattrname="value"></newtagname>
+;;
+;; 3)
+;; tagname = newtagname
+;; tagname->attr = newattrname
+;; tagname->attr+value = newvalue
+;;
+;; in this case, the value is also translated to another. This can be useful
+;; for instances such as focus="middle" changing to align="center" or something
+;; of that nature.
+;; <tagname attr="value"></tagname> will become
+;; <newtagname newattrname="newvalue"></newtagname>
+;;
+;; 4)
+;; tagname = newtagname
+;; tagname->attr1 = newattrname
+;; tagname->attr2 = newattrname
+;; tagname->attr1+value|attr2+value = newvalue
+;;
+;; in this case, two attributes combine to make one new attribute, and the combined
+;; value is translated into a new value
+;; <tagname attr1="value1" attr2="value2"></tagname> will become
+;; <newtagname newattrname="newvalue"></newtagname>
+;;
+;; 5)
+;; tagname = newtagname
+;; tagname!attr = dummy
+;;
+;; here, the attribute will be ignored. dummy is not used and may be any value
+;; <tagname attr="value"></tagname> will become
+;; <newtagname></newtagname>
+;;
+;; 6)
+;; tagname = newtagname
+;; tagname! = dummy
+;;
+;; here, all attributes will be ignored. dummy is not used and may be any value
+;; <tagname attr1="value" attr2="foo"></tagname> will become
+;; <newtagname></newtagname>
+;;
+;; 7)
+;; tagname = newtagname
+;; tagname/ = 1
+;;
+;; here, the tag will be translated as a single tag with no closing tag, and all
+;; attributes
+;; <tagname attr="val">{text text}</tagname> will become
+;; <newtagname attr="val" />
+;;
+;; 8)
+;; tagname = <starttaginfo />
+;; /tagname = closetagtext
+;;
+;; in this case, the text <starttaginfo> will be inserted exactly as entered for
+;; <tagname> and closetagtext for </tagname>
+;; <tagname attr="val"></tagname> will become
+;; <starttaginfo />closetagtext
+;;
+;; 9)
+;; $attr$my_attribute = newattrname
+;;
+;; tagname = newtagname
+;;
+;; in this case, all occurences of my_attribute in any tag will be changed to
+;; newattrname. This is useful for changing things like role="php" to
+;; class="php," for example. Note that the text "$attr$" MUST be on the line
+;; start for phpDocumentor to recognize it.
+;;
+;; 10)
+;; &entity; = translation text
+;; &quot; = &quot;
+;; &quot; = """
+;; &lt; = <
+;;
+;; Use this to control translation of entities to their appropriate values
+
+&nbsp; = &nbsp;
+&quot; = &quot;
+&rdquo; = &rdquo;
+&ldquo; = &ldquo;
+&amp; = &amp;
+&lt; = &lt;
+&gt; = &gt;
+&copy; = &copy;
+
+
+$attr$role = class
+
+abbrev = abbr
+
+blockquote = blockquote
+
+arg = span
+arg->choice = class
+
+author = <span class="author">
+/author = </span>
+author! = 0
+
+authorblurb = <div class="author-blurb">
+/authorblurb = </div>
+
+authorgroup = <div class="authors"><h2 class="title">Authors</h2>
+/authorgroup = </div>
+authorgroup! = 0
+
+caution = <span class="warning">
+/caution = </span>
+caution! = 0
+
+cmdsynopsis = <div class="cmd-synopsis">
+/cmdsynopsis = </div>
+
+command = <span class="cmd-title">
+/command = </span>
+
+copyright = <div class="notes">
+/copyright = </div>
+
+emphasis = em
+
+example = <div class="src-code">
+/example = </div>
+example! = 0
+
+function =
+/function = ()
+
+formalpara = p
+
+graphic = img
+graphic->fileref = src
+graphic/ =
+
+important = strong
+
+informalequation = blockquote
+
+informalexample = div
+
+inlineequation = em
+
+itemizedlist = ul
+
+listitem = li
+
+literal = code
+
+literallayout = span
+
+option = " "
+/option =
+
+orderedlist = ol
+
+para = p
+
+programlisting = <div class="src-code">
+/programlisting = </div>
+programlisting! = 0
+
+refentry = div
+
+refnamediv = <div class="ref-title-box">
+/refnamediv = </div>
+refnamediv! = 0
+
+refname = <h1 class="ref-title">
+/refname = </h1>
+
+refpurpose = <h2 class="ref-purpose">
+/refpurpose = </h2>
+
+refsynopsisdiv = <div class="ref-synopsis">
+/refsynopsisdiv = </div>
+refsynopsisdiv! = 0
+
+refsect1 = span
+
+refsect2 = span
+
+refsect3 =
+/refsect3 = <br />
+
+releaseinfo = <div class="release-info">(
+/releaseinfo = )</div>
+
+simpara =
+/simpara = <br />
+simpara! = 0
+
+subscript = sub
+
+superscript = super
+
+table = table
+
+table->colsep = rules
+table->rowsep = rules
+table->colsep+1|rowsep+1 =all
+table->colsep+1|rowsep+0 =cols
+table->colsep+0|rowsep+1 =rows
+
+table->frame =frame
+table->frame+all =border
+table->frame+none =void
+table->frame+sides =vsides
+table->frame+top =above
+table->frame+topbot =hsides
+
+thead = thead
+
+tfoot = tfoot
+
+tbody = tbody
+
+colspec = col
+
+tgroup = colgroup
+tgroup/ = 1
+tgroup->cols = span
+
+row = tr
+
+entry = td
+entry->morerows = colspan
+entry->morerows+1 =2
+entry->morerows+2 =3
+entry->morerows+3 =4
+entry->morerows+4 =5
+entry->morerows+5 =6
+entry->morerows+6 =7
+entry->morerows+7 =8
+entry->morerows+8 =9
+entry->morerows+9 =10
+entry->morerows+10 =11
+;; add more if you need more colspans
+
+warning = <span class="warning">
+/warning = </span>
+warning! = 0
+
+;; now begins the attributes that should be tags in cdata
+[$attr$id]
+open = a
+;close = /a
+cdata! = true
+quotevalues = true
+separator = "="
+;separateall = true
+$id = name
+
+;; now begins the sections that deal with <title>
+[refsynopsisdiv_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h1 class="title">
+close = </h1>
+
+[refsect1_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h2 class="title">
+close = </h2>
+
+[refsect2_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h3 class="title">
+close = </h3>
+
+[refsect3_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h4 class="title">
+close = </h4>
+
+[para_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <div class="title">
+close = </div>
+
+[formalpara_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <div class="title">
+close = </div>
+
+[example_title]
+;tag_attr = true
+;attr_name = title
+;cdata_start = true
+cdata_end = true
+open = </td></tr><tr><td><strong>
+close = </strong>
+
+[table_title]
+;tag_attr = true
+;attr_name = true
+cdata_start = true
+open = <caption>
+close = </caption>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/basicindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/basicindex.tpl
new file mode 100755
index 00000000..951ee264
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/basicindex.tpl
@@ -0,0 +1,47 @@
+<div class="index-letter-menu">
+{section name=letter loop=$letters}
+ <a class="index-letter" href="{$indexname}.html#{$letters[letter].letter}">{$letters[letter].letter}</a>
+{/section}
+</div>
+
+{section name=index loop=$index}
+ <a name="{$index[index].letter}"></a>
+ <div class="index-letter-section">
+ <div style="float: left" class="index-letter-title">{$index[index].letter}</div>
+ <div style="float: right"><a href="#top">top</a></div>
+ <div style="clear: both"></div>
+ </div>
+ <dl>
+ {section name=contents loop=$index[index].index}
+ <dt class="field">
+ {if ($index[index].index[contents].title == "Variable")}
+ <span class="var-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Global")}
+ <span class="var-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Method")}
+ <span class="method-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Function")}
+ <span class="method-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Constant")}
+ <span class="const-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Page") || ($index[index].index[contents].title == "Include")}
+ <span class="include-title">{$index[index].index[contents].name}</span>
+ {else}
+ {$index[index].index[contents].name}
+ {/if}
+ </dt>
+ <dd class="index-item-body">
+ <div class="index-item-details">{$index[index].index[contents].link} in {$index[index].index[contents].file_name}</div>
+ {if $index[index].index[contents].description}
+ <div class="index-item-description">{$index[index].index[contents].description}</div>
+ {/if}
+ </dd>
+ {/section}
+ </dl>
+{/section}
+
+<div class="index-letter-menu">
+{section name=letter loop=$letters}
+ <a class="index-letter" href="{$indexname}.html#{$letters[letter].letter}">{$letters[letter].letter}</a>
+{/section}
+</div>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/blank.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/blank.tpl
new file mode 100755
index 00000000..6a05f27e
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/blank.tpl
@@ -0,0 +1,13 @@
+<html>
+<head>
+ <title>{$maintitle}</title>
+ <link rel="stylesheet" href="{$subdir}media/stylesheet.css" />
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+</head>
+<body>
+<div align="center"><h1>{$maintitle}</h1></div>
+<b>Welcome to {$package}!</b><br />
+<br />
+This documentation was generated by <a href="{$phpdocwebsite}">phpDocumentor v{$phpdocversion}</a><br />
+</body>
+</html> \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/class.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/class.tpl
new file mode 100755
index 00000000..9ab7c455
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/class.tpl
@@ -0,0 +1,429 @@
+{include file="header.tpl" top3=true}
+
+<h2 class="class-name">{if $is_interface}Interface{else}Class{/if} {$class_name}</h2>
+
+<a name="sec-description"></a>
+<div class="info-box">
+ <div class="info-box-title">Description</div>
+ <div class="nav-bar">
+ {if $children || $vars || $ivars || $methods || $imethods || $consts || $iconsts }
+ <span class="disabled">Description</span> |
+ {/if}
+ {if $children}
+ <a href="#sec-descendents">Descendents</a>
+ {if $vars || $ivars || $methods || $imethods || $consts || $iconsts}|{/if}
+ {/if}
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ {if $methods || $imethods}|{/if}
+ {/if}
+ {if $methods || $imethods}
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {if $implements}
+ <p class="implements">
+ Implements interfaces:
+ <ul>
+ {foreach item="int" from=$implements}<li>{$int}</li>{/foreach}
+ </ul>
+ </p>
+ {/if}
+ {include file="docblock.tpl" type="class" sdesc=$sdesc desc=$desc}
+ <p class="notes">
+ Located in <a class="field" href="{$page_link}">{$source_location}</a> (line <span class="field">{if $class_slink}{$class_slink}{else}{$line_number}{/if}</span>)
+ </p>
+
+ {if $tutorial}
+ <hr class="separator" />
+ <div class="notes">Tutorial: <span class="tutorial">{$tutorial}</span></div>
+ {/if}
+
+ <pre>{section name=tree loop=$class_tree.classes}{$class_tree.classes[tree]}{$class_tree.distance[tree]}{/section}</pre>
+
+ {if $conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with classes:</span><br />
+ {section name=me loop=$conflicts.conflicts}
+ {$conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+ </div>
+</div>
+
+{if $children}
+ <a name="sec-descendents"></a>
+ <div class="info-box">
+ <div class="info-box-title">Direct descendents</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ <span class="disabled">Descendents</span>
+ {if $vars || $ivars || $methods || $imethods}|{/if}
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ {if $methods || $imethods}|{/if}
+ {/if}
+ {if $methods || $imethods}
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <table cellpadding="2" cellspacing="0" class="class-table">
+ <tr>
+ <th class="class-table-header">Class</th>
+ <th class="class-table-header">Description</th>
+ </tr>
+ {section name=kids loop=$children}
+ <tr>
+ <td style="padding-right: 2em">{$children[kids].link}</td>
+ <td>
+ {if $children[kids].sdesc}
+ {$children[kids].sdesc}
+ {else}
+ {$children[kids].desc}
+ {/if}
+ </td>
+ </tr>
+ {/section}
+ </table>
+ </div>
+ </div>
+{/if}
+
+{if $consts}
+ <a name="sec-const-summary"></a>
+ <div class="info-box">
+ <div class="info-box-title">Class Constant Summary</span></div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendants</a> |
+ {/if}
+ <span class="disabled">Constants</span> (<a href="#sec-consts">details</a>)
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ |
+ {/if}
+ {if $methods || $imethods}
+ |
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <div class="const-summary">
+ {section name=consts loop=$consts}
+ <div class="const-title">
+ <img src="{$subdir}media/images/Constant.png" alt=" " />
+ <a href="#{$consts[consts].const_name}" title="details" class="const-name">{$consts[consts].const_name}</a> = <span class="var-type">{$consts[consts].const_value}</span>
+
+ </div>
+ {/section}
+ </div>
+ </div>
+ </div>
+{/if}
+
+{if $vars}
+ <a name="sec-var-summary"></a>
+ <div class="info-box">
+ <div class="info-box-title">Variable Summary</span></div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendents</a> |
+ {/if}
+ <span class="disabled">Vars</span> (<a href="#sec-vars">details</a>)
+ {if $methods || $imethods}
+ |
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <div class="var-summary">
+ {section name=vars loop=$vars}
+ {if $vars[vars].static}
+ <div class="var-title">
+ static <span class="var-type">{$vars[vars].var_type}</span>
+ <a href="#{$vars[vars].var_name}" title="details" class="var-name">{$vars[vars].var_name}</a>
+ </div>
+ {/if}
+ {/section}
+ {section name=vars loop=$vars}
+ {if !$vars[vars].static}
+ <div class="var-title">
+ <span class="var-type">{$vars[vars].var_type}</span>
+ <a href="#{$vars[vars].var_name}" title="details" class="var-name">{$vars[vars].var_name}</a>
+ </div>
+ {/if}
+ {/section}
+ </div>
+ </div>
+ </div>
+{/if}
+
+{if $methods}
+ <a name="sec-method-summary"></a>
+ <div class="info-box">
+ <div class="info-box-title">Method Summary</span></div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendents</a> |
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ |
+ {/if}
+ <span class="disabled">Methods</span> (<a href="#sec-methods">details</a>)
+ </div>
+ <div class="info-box-body">
+ <div class="method-summary">
+ {section name=methods loop=$methods}
+ {if $methods[methods].static}
+ <div class="method-definition">
+ static {if $methods[methods].function_return}
+ <span class="method-result">{$methods[methods].function_return}</span>
+ {/if}
+ <a href="#{$methods[methods].function_name}" title="details" class="method-name">{if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}</a>
+ {if count($methods[methods].ifunction_call.params)}
+ ({section name=params loop=$methods[methods].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$methods[methods].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$methods[methods].ifunction_call.params[params].name}</span>{if $methods[methods].ifunction_call.params[params].hasdefault} = <span class="var-default">{$methods[methods].ifunction_call.params[params].default}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+ {/if}
+ {/section}
+ {section name=methods loop=$methods}
+ {if !$methods[methods].static}
+ <div class="method-definition">
+ {if $methods[methods].function_return}
+ <span class="method-result">{$methods[methods].function_return}</span>
+ {/if}
+ <a href="#{$methods[methods].function_name}" title="details" class="method-name">{if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}</a>
+ {if count($methods[methods].ifunction_call.params)}
+ ({section name=params loop=$methods[methods].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$methods[methods].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$methods[methods].ifunction_call.params[params].name}</span>{if $methods[methods].ifunction_call.params[params].hasdefault} = <span class="var-default">{$methods[methods].ifunction_call.params[params].default}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+ {/if}
+ {/section}
+ </div>
+ </div>
+ </div>
+{/if}
+
+{if $vars || $ivars}
+ <a name="sec-vars"></a>
+ <div class="info-box">
+ <div class="info-box-title">Variables</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendents</a> |
+ {/if}
+ {if $methods}
+ <a href="#sec-var-summary">Vars</a> (<span class="disabled">details</span>)
+ {else}
+ <span class="disabled">Vars</span>
+ {/if}
+
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ {if $methods || $imethods}
+ |
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="var.tpl"}
+ {if $ivars}
+ <h4>Inherited Variables</h4>
+ <A NAME='inherited_vars'><!-- --></A>
+ {section name=ivars loop=$ivars}
+ <p>Inherited from <span class="classname">{$ivars[ivars].parent_class}</span></p>
+ <blockquote>
+ {section name=ivars2 loop=$ivars[ivars].ivars}
+ <span class="var-title">
+ <span class="var-name">{$ivars[ivars].ivars[ivars2].link}</span>{if $ivars[ivars].ivars[ivars2].ivar_sdesc}: {$ivars[ivars].ivars[ivars2].ivar_sdesc}{/if}<br>
+ </span>
+ {/section}
+ </blockquote>
+ {/section}
+ {/if}
+ </div>
+ </div>
+{/if}
+
+{if $methods || $imethods}
+ <a name="sec-methods"></a>
+ <div class="info-box">
+ <div class="info-box-title">Methods</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendents</a> |
+ {/if}
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<span class="disabled">details</span>)
+ {else}
+ <span class="disabled">Methods</span>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="method.tpl"}
+ {if $imethods}
+ <h4>Inherited Methods</h4>
+ <a name='inherited_methods'><!-- --></a>
+ {section name=imethods loop=$imethods}
+ <!-- =========== Summary =========== -->
+ <p>Inherited From <span class="classname">{$imethods[imethods].parent_class}</span></p>
+ <blockquote>
+ {section name=im2 loop=$imethods[imethods].imethods}
+ <span class="method-name">{$imethods[imethods].imethods[im2].link}</span>{if $imethods[imethods].imethods[im2].ifunction_sdesc}: {$imethods[imethods].imethods[im2].ifunction_sdesc}{/if}<br>
+ {/section}
+ </blockquote>
+ {/section}
+ {/if}
+ </div>
+ </div>
+{/if}
+
+{if $consts || $iconsts}
+ <a name="sec-consts"></a>
+ <div class="info-box">
+ <div class="info-box-title">Class Constants</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendants</a> |
+ {/if}
+ {if $methods}
+ <a href="#sec-var-summary">Constants</a> (<span class="disabled">details</span>)
+ {else}
+ <span class="disabled">Constants</span>
+ {/if}
+
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ {/if}
+ {if $methods || $imethods}
+ |
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="const.tpl"}
+ {if $iconsts}
+ <h4>Inherited Constants</h4>
+ <A NAME='inherited_vars'><!-- --></A>
+ {section name=iconsts loop=$iconsts}
+ <p>Inherited from <span class="classname">{$iconsts[iconsts].parent_class}</span></p>
+ <blockquote>
+ {section name=iconsts2 loop=$iconsts[iconsts].iconsts}
+ <img src="{$subdir}media/images/{if $iconsts[iconsts].iconsts[iconsts2].access == 'private'}PrivateVariable{else}Variable{/if}.png" />
+ <span class="const-title">
+ <span class="const-name">{$iconsts[iconsts].iconsts[iconsts2].link}</span>{if $iconsts[iconsts].iconsts[iconsts2].iconst_sdesc}: {$iconsts[iconsts].iconsts[iconsts2].iconst_sdesc}{/if}<br>
+ </span>
+ {/section}
+ </blockquote>
+ {/section}
+ {/if}
+ </div>
+ </div>
+{/if}
+
+{include file="footer.tpl" top3=true}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/classtrees.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/classtrees.tpl
new file mode 100755
index 00000000..952e6d50
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/classtrees.tpl
@@ -0,0 +1,19 @@
+{include file="header.tpl" top1=true}
+
+<!-- Start of Class Data -->
+<H2>
+ {$smarty.capture.title}
+</H2>
+{if $interfaces}
+{section name=classtrees loop=$interfaces}
+<h2>Root interface {$interfaces[classtrees].class}</h2>
+{$interfaces[classtrees].class_tree}
+{/section}
+{/if}
+{if $classtrees}
+{section name=classtrees loop=$classtrees}
+<h2>Root class {$classtrees[classtrees].class}</h2>
+{$classtrees[classtrees].class_tree}
+{/section}
+{/if}
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/const.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/const.tpl
new file mode 100644
index 00000000..c26ff92d
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/const.tpl
@@ -0,0 +1,18 @@
+{section name=consts loop=$consts}
+<a name="const{$consts[consts].const_name}" id="{$consts[consts].const_name}"><!-- --></A>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="const-header">
+ <img src="{$subdir}media/images/{if $consts[consts].access == 'private'}PrivateVariable{else}Variable{/if}.png" />
+ <span class="const-title">
+ <span class="const-name">{$consts[consts].const_name}</span>
+ = <span class="const-default">{$consts[consts].const_value|replace:"\n":"<br />"}</span>
+ (line <span class="line-number">{if $consts[consts].slink}{$consts[consts].slink}{else}{$consts[consts].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$consts[consts].sdesc desc=$consts[consts].desc tags=$consts[consts].tags}
+
+</div>
+{/section}
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/define.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/define.tpl
new file mode 100755
index 00000000..0da5d864
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/define.tpl
@@ -0,0 +1,24 @@
+{section name=def loop=$defines}
+<a name="{$defines[def].define_link}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <span class="const-title">
+ <span class="const-name">{$defines[def].define_name}</span> = {$defines[def].define_value|replace:"\n":"<br />"}
+ (line <span class="line-number">{if $defines[def].slink}{$defines[def].slink}{else}{$defines[def].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$defines[def].sdesc desc=$defines[def].desc tags=$defines[def].tags}
+
+ {if $globals[glob].global_conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with constants:</span><br />
+ {section name=me loop=$defines[def].define_conflicts.conflicts}
+ {$defines[def].define_conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+
+</div>
+{/section} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/docblock.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/docblock.tpl
new file mode 100755
index 00000000..783d5271
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/docblock.tpl
@@ -0,0 +1,14 @@
+<!-- ========== Info from phpDoc block ========= -->
+{if $sdesc}
+<p class="short-description">{$sdesc}</p>
+{/if}
+{if $desc}
+<p class="description">{$desc}</p>
+{/if}
+{if $tags}
+ <ul class="tags">
+ {section name=tags loop=$tags}
+ <li><span class="field">{$tags[tags].keyword}:</span> {$tags[tags].data}</li>
+ {/section}
+ </ul>
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/elementindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/elementindex.tpl
new file mode 100755
index 00000000..d5964f99
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/elementindex.tpl
@@ -0,0 +1,12 @@
+{include file="header.tpl" noleftindex=true}
+<a name="top"></a>
+<h2>Full index</h2>
+<h3>Package indexes</h3>
+<ul>
+{section name=p loop=$packageindex}
+ <li><a href="elementindex_{$packageindex[p].title}.html">{$packageindex[p].title}</a></li>
+{/section}
+</ul>
+<br />
+{include file="basicindex.tpl" indexname="elementindex"}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/errors.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/errors.tpl
new file mode 100755
index 00000000..0f526584
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/errors.tpl
@@ -0,0 +1,21 @@
+{include file="header.tpl" noleftindex=true}
+{section name=files loop=$files}
+<a href="#{$files[files].file}">{$files[files].file}</a><br>
+{/section}
+{foreach key=file item=issues from=$all}
+<a name="{$file}"></a>
+<h1>{$file}</h1>
+{if count($issues.warnings)}
+<h2>Warnings:</h2><br>
+{section name=warnings loop=$issues.warnings}
+<b>{$issues.warnings[warnings].name}</b> - {$issues.warnings[warnings].listing}<br>
+{/section}
+{/if}
+{if count($issues.errors)}
+<h2>Errors:</h2><br>
+{section name=errors loop=$issues.errors}
+<b>{$issues.errors[errors].name}</b> - {$issues.errors[errors].listing}<br>
+{/section}
+{/if}
+{/foreach}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/examplesource.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/examplesource.tpl
new file mode 100755
index 00000000..8abf74ce
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/examplesource.tpl
@@ -0,0 +1,6 @@
+{include file="header.tpl" title=$title}
+<h1>{$title}</h1>
+<div class="listing">
+{$source}
+</div>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/filesource.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/filesource.tpl
new file mode 100755
index 00000000..239f7b41
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/filesource.tpl
@@ -0,0 +1,8 @@
+{capture name="tutle"}File Source for {$name}{/capture}
+{include file="header.tpl" title=$smarty.capture.tutle}
+<h1>Source for file {$name}</h1>
+<p>Documentation is available at {$docs}</p>
+<div class="src-code">
+{$source}
+</div>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/footer.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/footer.tpl
new file mode 100755
index 00000000..8d0f79db
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/footer.tpl
@@ -0,0 +1,8 @@
+{if !$index}
+ <p class="notes" id="credit">
+ Documentation generated on {$date} by <a href="{$phpdocwebsite}" target="_blank">phpDocumentor {$phpdocversion}</a>
+ </p>
+{/if}
+ {if $top3}</div>{/if}
+</body>
+</html>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/function.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/function.tpl
new file mode 100755
index 00000000..b6880059
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/function.tpl
@@ -0,0 +1,44 @@
+{section name=func loop=$functions}
+<a name="{$functions[func].function_dest}" id="{$functions[func].function_dest}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <span class="method-title">{$functions[func].function_name}</span> (line <span class="line-number">{if $functions[func].slink}{$functions[func].slink}{else}{$functions[func].line_number}{/if}</span>)
+ </div>
+
+ {include file="docblock.tpl" sdesc=$functions[func].sdesc desc=$functions[func].desc tags=$functions[func].tags params=$functions[func].params function=false}
+
+ <div class="method-signature">
+ <span class="method-result">{$functions[func].function_return}</span>
+ <span class="method-name">
+ {if $functions[func].ifunction_call.returnsref}&amp;{/if}{$functions[func].function_name}
+ </span>
+ {if count($functions[func].ifunction_call.params)}
+ ({section name=params loop=$functions[func].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $functions[func].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$functions[func].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$functions[func].ifunction_call.params[params].name}</span>{if $functions[func].ifunction_call.params[params].hasdefault} = <span class="var-default">{$functions[func].ifunction_call.params[params].default|escape:"html"}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+
+ {if $functions[func].params}
+ <ul class="parameters">
+ {section name=params loop=$functions[func].params}
+ <li>
+ <span class="var-type">{$functions[func].params[params].datatype}</span>
+ <span class="var-name">{$functions[func].params[params].var}</span>{if $functions[func].params[params].data}<span class="var-description">: {$functions[func].params[params].data}</span>{/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+ {if $functions[func].function_conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with functions:</span><br />
+ {section name=me loop=$functions[func].function_conflicts.conflicts}
+ {$functions[func].function_conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+
+</div>
+{/section}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/global.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/global.tpl
new file mode 100755
index 00000000..eab7e0b0
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/global.tpl
@@ -0,0 +1,26 @@
+{section name=glob loop=$globals}
+<a name="{$globals[glob].global_link}" id="{$globals[glob].global_link}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <span class="var-title">
+ <span class="var-type">{$globals[glob].global_type}</span>
+ <span class="var-name">{$globals[glob].global_name}</span>
+ {if $vars[vars].var_default} = <span class="var-default">{$globals[glob].global_value|replace:"\n":"<br />"}</span>{/if}
+ (line <span class="line-number">{if $globals[glob].slink}{$globals[glob].slink}{else}{$globals[glob].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$globals[glob].sdesc desc=$globals[glob].desc tags=$globals[glob].tags}
+
+ {if $globals[glob].global_conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with global variables:</span><br />
+ {section name=me loop=$globals[glob].global_conflicts.conflicts}
+ {$globals[glob].global_conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+
+</div>
+{/section} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/header.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/header.tpl
new file mode 100755
index 00000000..c22ba37d
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/header.tpl
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+ <html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <!-- template designed by Marco Von Ballmoos -->
+ <title>{$title}</title>
+ <link rel="stylesheet" href="{$subdir}media/stylesheet.css" />
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+ </head>
+ <body>
+ {if $top3}<div class="page-body">{/if}
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/include.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/include.tpl
new file mode 100755
index 00000000..c2419e5f
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/include.tpl
@@ -0,0 +1,16 @@
+{section name=includes loop=$includes}
+<a name="{$includes[includes].include_file}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <span class="include-title">
+ <span class="include-type">{$includes[includes].include_name}</span>
+ (<span class="include-name">{$includes[includes].include_value}</span>)
+ (line <span class="line-number">{if $includes[includes].slink}{$includes[includes].slink}{else}{$includes[includes].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$includes[includes].sdesc desc=$includes[includes].desc tags=$includes[includes].tags}
+
+</div>
+{/section} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/index.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/index.tpl
new file mode 100755
index 00000000..7cd61094
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/index.tpl
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//FR"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
+ <html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+ <!-- Generated by phpDocumentor on {$date} -->
+ <title>{$title}</title>
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+</head>
+
+<FRAMESET rows='120,*'>
+ <FRAME src='packages.html' name='left_top' frameborder="1" bordercolor="#999999">
+ <FRAMESET cols='25%,*'>
+ <FRAME src='{$start}' name='left_bottom' frameborder="1" bordercolor="#999999">
+ <FRAME src='{$blank}.html' name='right' frameborder="1" bordercolor="#999999">
+ </FRAMESET>
+ <NOFRAMES>
+ <H2>Frame Alert</H2>
+ <P>This document is designed to be viewed using the frames feature.
+ If you see this message, you are using a non-frame-capable web client.</P>
+ </NOFRAMES>
+</FRAMESET>
+</HTML>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/left_frame.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/left_frame.tpl
new file mode 100755
index 00000000..eb3f670d
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/left_frame.tpl
@@ -0,0 +1,159 @@
+{include file="header.tpl" top2=true}
+<div class="package-title">{$package}</div>
+<div class="package-details">
+
+ <dl class="tree">
+
+ <dt class="folder-title">Description</dt>
+ <dd>
+ <a href='{$classtreepage}.html' target='right'>Class trees</a><br />
+ <a href='{$elementindex}.html' target='right'>Index of elements</a><br />
+ {if $hastodos}
+ <a href="{$todolink}" target="right">Todo List</a><br />
+ {/if}
+ </dd>
+
+ {section name=p loop=$info}
+
+ {if $info[p].subpackage == ""}
+
+ {if $info[p].tutorials}
+ <dt class="folder-title">Tutorials/Manuals</dt>
+ <dd>
+ {if $info[p].tutorials.pkg}
+ <dl class="tree">
+ <dt class="folder-title">Package-level</dt>
+ <dd>
+ {section name=ext loop=$info[p].tutorials.pkg}
+ {$info[p].tutorials.pkg[ext]}
+ {/section}
+ </dd>
+ </dl>
+ {/if}
+
+ {if $info[p].tutorials.cls}
+ <dl class="tree">
+ <dt class="folder-title">Class-level</dt>
+ <dd>
+ {section name=ext loop=$info[p].tutorials.cls}
+ {$info[p].tutorials.cls[ext]}
+ {/section}
+ </dd>
+ </dl>
+ {/if}
+
+ {if $info[p].tutorials.proc}
+ <dl class="tree">
+ <dt class="folder-title">Function-level</dt>
+ <dd>
+ {section name=ext loop=$info[p].tutorials.proc}
+ {$info[p].tutorials.proc[ext]}
+ {/section}
+ </dd>
+ </dl>
+ {/if}
+ </dd>
+ {/if}
+ {if $info[p].hasinterfaces}
+ <dt class="folder-title">Interfaces</dt>
+ {section name=class loop=$info[p].classes}
+ {if $info[p].classes[class].is_interface}
+ <dd><a href='{$info[p].classes[class].link}' target='right'>{$info[p].classes[class].title}</a></dd>
+ {/if}
+ {/section}
+ {/if}
+ {if $info[p].hasclasses}
+ <dt class="folder-title">Classes</dt>
+ {section name=class loop=$info[p].classes}
+ {if $info[p].classes[class].is_class}
+ <dd><a href='{$info[p].classes[class].link}' target='right'>{$info[p].classes[class].title}</a></dd>
+ {/if}
+ {/section}
+ {/if}
+ {if $info[p].functions}
+ <dt class="folder-title">Functions</dt>
+ {section name=f loop=$info[p].functions}
+ <dd><a href='{$info[p].functions[f].link}' target='right'>{$info[p].functions[f].title}</a></dd>
+ {/section}
+ {/if}
+ {if $info[p].files}
+ <dt class="folder-title">Files</dt>
+ {section name=nonclass loop=$info[p].files}
+ <dd><a href='{$info[p].files[nonclass].link}' target='right'>{$info[p].files[nonclass].title}</a></dd>
+ {/section}
+ {/if}
+
+ {else}
+ {if $info[p].tutorials}
+ <dt class="folder-title">Tutorials/Manuals</dt>
+ <dd>
+ {if $info[p].tutorials.pkg}
+ <dl class="tree">
+ <dt class="folder-title">Package-level</dt>
+ <dd>
+ {section name=ext loop=$info[p].tutorials.pkg}
+ {$info[p].tutorials.pkg[ext]}
+ {/section}
+ </dd>
+ </dl>
+ {/if}
+
+ {if $info[p].tutorials.cls}
+ <dl class="tree">
+ <dt class="folder-title">Class-level</dt>
+ <dd>
+ {section name=ext loop=$info[p].tutorials.cls}
+ {$info[p].tutorials.cls[ext]}
+ {/section}
+ </dd>
+ </dl>
+ {/if}
+
+ {if $info[p].tutorials.proc}
+ <dl class="tree">
+ <dt class="folder-title">Function-level</dt>
+ <dd>
+ {section name=ext loop=$info[p].tutorials.proc}
+ {$info[p].tutorials.proc[ext]}
+ {/section}
+ </dd>
+ </dl>
+ {/if}
+ </dd>
+ {/if}
+
+ <dt class="sub-package">{$info[p].subpackage}</dt>
+ <dd>
+ <dl class="tree">
+ {if $info[p].subpackagetutorial}
+ <div><a href="{$info.0.subpackagetutorialnoa}" target="right">{$info.0.subpackagetutorialtitle}</a></div>
+ {/if}
+ {if $info[p].classes}
+ <dt class="folder-title">Classes</dt>
+ {section name=class loop=$info[p].classes}
+ <dd><a href='{$info[p].classes[class].link}' target='right'>{$info[p].classes[class].title}</a></dd>
+ {/section}
+ {/if}
+ {if $info[p].functions}
+ <dt class="folder-title">Functions</dt>
+ {section name=f loop=$info[p].functions}
+ <dd><a href='{$info[p].functions[f].link}' target='right'>{$info[p].functions[f].title}</a></dd>
+ {/section}
+ {/if}
+ {if $info[p].files}
+ <dt class="folder-title">Files</dt>
+ {section name=nonclass loop=$info[p].files}
+ <dd><a href='{$info[p].files[nonclass].link}' target='right'>{$info[p].files[nonclass].title}</a></dd>
+ {/section}
+ {/if}
+ </dl>
+ </dd>
+
+ {/if}
+
+ {/section}
+ </dl>
+</div>
+<p class="notes"><a href="{$phpdocwebsite}" target="_blank">phpDocumentor v <span class="field">{$phpdocversion}</span></a></p>
+</BODY>
+</HTML>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/media/banner.css b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/media/banner.css
new file mode 100755
index 00000000..065e76bc
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/media/banner.css
@@ -0,0 +1,32 @@
+body
+{
+ background-color: #FFFFFF;
+ margin: 0px;
+ padding: 0px;
+}
+
+/* Banner (top bar) classes */
+
+.banner { }
+
+.banner-menu
+{
+ clear: both;
+ padding: .5em;
+ border-top: 2px solid #999999;
+}
+
+.banner-title
+{
+ text-align: right;
+ font-size: 20pt;
+ font-weight: bold;
+ margin: .2em;
+}
+
+.package-selector
+{
+ background-color: #EEEEEE;
+ border: 1px solid black;
+ color: #0000C0;
+}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/media/stylesheet.css b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/media/stylesheet.css
new file mode 100755
index 00000000..43834a16
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/media/stylesheet.css
@@ -0,0 +1,141 @@
+a { color: #0000C0; text-decoration: underline; }
+a:hover { text-decoration: underline; background-color: #FFFFFF }
+a:active { text-decoration: underline; background-color: #FFFFFF }
+
+body, table { background-color: #EEEEEE; font-family: Verdana, Arial, sans-serif; font-size: 10pt }
+p, li { line-height: 140% }
+a img { border: 0px; }
+dd { margin-left: 0px; padding-left: 1em; }
+
+/* Page layout/boxes */
+
+.info-box {}
+.info-box-title { margin: 1em 0em 0em 0em; padding: .25em; font-weight: normal; font-size: 14pt; border: 2px solid #999999; background-color: #FFFFFF }
+.info-box-body { border: 1px solid #999999; padding: .5em; }
+.nav-bar { font-size: 8pt; white-space: nowrap; text-align: right; padding: .2em; margin: 0em 0em 1em 0em; }
+
+.oddrow { background-color: #F8F8F8; border: 1px solid #AAAAAA; padding: .5em; margin-bottom: 1em}
+.evenrow { border: 1px solid #AAAAAA; padding: .5em; margin-bottom: 1em}
+
+.page-body { max-width: 800px; margin: auto; }
+.tree dl { margin: 0px }
+
+/* Index formatting classes */
+
+.index-item-body { margin-top: .5em; margin-bottom: .5em}
+.index-item-description { margin-top: .25em }
+.index-item-details { font-weight: normal; font-style: italic; font-size: 8pt }
+.index-letter-section { background-color: #EEEEEE; border: 1px dotted #999999; padding: .5em; margin-bottom: 1em}
+.index-letter-title { font-size: 12pt; font-weight: bold }
+.index-letter-menu { text-align: center; margin: 1em }
+.index-letter { font-size: 12pt }
+
+/* Docbook classes */
+
+.description {}
+.short-description { font-weight: bold; color: #666666; }
+.tags { padding-left: 0em; margin-left: 3em; color: #666666; list-style-type: square; }
+.parameters { padding-left: 0em; margin-left: 3em; font-style: italic; list-style-type: square; }
+.redefinitions { font-size: 8pt; padding-left: 0em; margin-left: 2em; }
+.package { }
+.package-title { font-weight: bold; font-size: 14pt; border-bottom: 1px solid black }
+.package-details { font-size: 85%; }
+.sub-package { font-weight: bold; font-size: 120% }
+.tutorial { border-width: thin; border-color: #0066ff }
+.tutorial-nav-box { width: 100%; border: 1px solid #AAAAAA; background-color: #DDDDFF; }
+.nav-button-disabled { color: #AAAAAA; }
+.nav-button:active,
+.nav-button:focus,
+.nav-button:hover { background-color: #CCCCCC; outline: 1px solid #999999; text-decoration: none }
+.folder-title { font-style: italic }
+
+/* Generic formatting */
+
+.field { font-weight: bold; }
+.detail { font-size: 8pt; }
+.notes { font-style: italic; font-size: 8pt; }
+.separator { background-color: #999999; height: 2px; }
+.warning { color: #FF6600; }
+.disabled { font-style: italic; color: #999999; }
+
+/* Code elements */
+
+.line-number { }
+
+.class-table { width: 100%; }
+.class-table-header { border-bottom: 1px dotted #666666; text-align: left; background-color: DDDDFF }
+.class-name { color: #000000; font-weight: bold; }
+
+.method-summary { padding-left: 1em; font-size: 8pt }
+.method-header { background-color: #DDDDFF; padding: 1px; }
+.method-definition { margin-bottom: .3em }
+.method-title { font-weight: bold }
+.method-name { font-weight: bold; }
+.method-signature { font-size: 85%; color: #666666; margin: .5em 0em }
+.method-result { font-style: italic; }
+
+.var-summary { padding-left: 1em; font-size: 8pt; }
+.var-header { background-color: #DDDDFF; padding: 1px; }
+.var-title { margin-bottom: .3em }
+.var-type { font-style: italic; }
+.var-name { font-weight: bold; }
+.var-default {}
+.var-description { font-weight: normal; color: #000000; }
+
+.include-title { }
+.include-type { font-style: italic; }
+.include-name { font-weight: bold; }
+
+.const-title { }
+.const-name { font-weight: bold; }
+
+/* Syntax highlighting */
+
+.src-code { border: 1px solid #999999; padding: 1em;
+ font-family: 'Courier New', Courier, monospace; font-weight: normal; }
+.src-line { font-family: 'Courier New', Courier, monospace; font-weight: normal; }
+.src-comm { color: green; }
+.src-id { }
+.src-inc { color: #0000FF; }
+.src-key { color: #0000FF; }
+.src-num { color: #CC0000; }
+.src-str { color: #66cccc; }
+.src-sym { font-weight: bold; }
+.src-var { }
+
+.src-php { font-weight: bold; }
+
+.src-doc { color: #009999 }
+.src-doc-close-template { color: #0000FF }
+.src-doc-coretag { color: #0099FF; font-weight: bold }
+.src-doc-inlinetag { color: #0099FF }
+.src-doc-internal { color: #6699cc }
+.src-doc-tag { color: #0080CC }
+.src-doc-template { color: #0000FF }
+.src-doc-type { font-style: italic }
+.src-doc-var { font-style: italic }
+
+.tute-tag { color: #009999 }
+.tute-attribute-name { color: #0000FF }
+.tute-attribute-value { color: #0099FF }
+.tute-entity { font-weight: bold; }
+.tute-comment { font-style: italic }
+.tute-inline-tag { color: #636311; font-weight: bold }
+
+/* tutorial */
+
+.authors { }
+.author { font-style: italic; font-weight: bold }
+.author-blurb { margin: .5em 0em .5em 2em; font-size: 85%; font-weight: normal; font-style: normal }
+.example { border: 1px dashed #999999; background-color: #EEEEEE; padding: .5em; }
+.listing { border: 1px dashed #999999; background-color: #EEEEEE; padding: .5em; white-space: nowrap; }
+.release-info { font-size: 85%; font-style: italic; margin: 1em 0em }
+.ref-title-box { }
+.ref-title { }
+.ref-purpose { font-style: italic; color: #666666 }
+.ref-synopsis { }
+.title { font-weight: bold; border: 2px solid #999999; background-color: #FFFFFF; padding: 2px }
+.cmd-synopsis { margin: 1em 0em }
+.cmd-title { font-weight: bold }
+.toc { margin-left: 2em; padding-left: 0em }
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/method.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/method.tpl
new file mode 100755
index 00000000..06d57a12
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/method.tpl
@@ -0,0 +1,149 @@
+<A NAME='method_detail'></A>
+{section name=methods loop=$methods}
+{if $methods[methods].static}
+<a name="method{$methods[methods].function_name}" id="{$methods[methods].function_name}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="method-header">
+ <span class="method-title">static {$methods[methods].function_name}</span> (line <span class="line-number">{if $methods[methods].slink}{$methods[methods].slink}{else}{$methods[methods].line_number}{/if}</span>)
+ </div>
+
+ {include file="docblock.tpl" sdesc=$methods[methods].sdesc desc=$methods[methods].desc tags=$methods[methods].tags params=$methods[methods].params function=false}
+
+ <div class="method-signature">
+ static <span class="method-result">{$methods[methods].function_return}</span>
+ <span class="method-name">
+ {if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}
+ </span>
+ {if count($methods[methods].ifunction_call.params)}
+ ({section name=params loop=$methods[methods].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$methods[methods].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$methods[methods].ifunction_call.params[params].name}</span>{if $methods[methods].ifunction_call.params[params].hasdefault} = <span class="var-default">{$methods[methods].ifunction_call.params[params].default}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+
+ {if $methods[methods].params}
+ <ul class="parameters">
+ {section name=params loop=$methods[methods].params}
+ <li>
+ <span class="var-type">{$methods[methods].params[params].datatype}</span>
+ <span class="var-name">{$methods[methods].params[params].var}</span>{if $methods[methods].params[params].data}<span class="var-description">: {$methods[methods].params[params].data}</span>{/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+ {if $methods[methods].method_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$methods[methods].method_overrides.link}</dt>
+ {if $methods[methods].method_overrides.sdesc}
+ <dd>{$methods[methods].method_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+ {if $methods[methods].method_implements}
+ <hr class="separator" />
+ <div class="notes">Implementation of:</div>
+ {section name=imp loop=$methods[methods].method_implements}
+ <dl>
+ <dt>{$methods[methods].method_implements[imp].link}</dt>
+ {if $methods[methods].method_implements[imp].sdesc}
+ <dd>{$methods[methods].method_implements[imp].sdesc}</dd>
+ {/if}
+ </dl>
+ {/section}
+ {/if}
+
+ {if $methods[methods].descmethod}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=dm loop=$methods[methods].descmethod}
+ <li>
+ {$methods[methods].descmethod[dm].link}
+ {if $methods[methods].descmethod[dm].sdesc}
+ : {$methods[methods].descmethod[dm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+</div>
+{/if}
+{/section}
+{section name=methods loop=$methods}
+{if !$methods[methods].static}
+<a name="method{$methods[methods].function_name}" id="{$methods[methods].function_name}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="method-header">
+ <span class="method-title">{if $methods[methods].ifunction_call.constructor}Constructor {elseif $methods[methods].ifunction_call.destructor}Destructor {/if}{$methods[methods].function_name}</span> (line <span class="line-number">{if $methods[methods].slink}{$methods[methods].slink}{else}{$methods[methods].line_number}{/if}</span>)
+ </div>
+
+ {include file="docblock.tpl" sdesc=$methods[methods].sdesc desc=$methods[methods].desc tags=$methods[methods].tags params=$methods[methods].params function=false}
+
+ <div class="method-signature">
+ <span class="method-result">{$methods[methods].function_return}</span>
+ <span class="method-name">
+ {if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}
+ </span>
+ {if count($methods[methods].ifunction_call.params)}
+ ({section name=params loop=$methods[methods].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$methods[methods].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$methods[methods].ifunction_call.params[params].name}</span>{if $methods[methods].ifunction_call.params[params].hasdefault} = <span class="var-default">{$methods[methods].ifunction_call.params[params].default}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+
+ {if $methods[methods].params}
+ <ul class="parameters">
+ {section name=params loop=$methods[methods].params}
+ <li>
+ <span class="var-type">{$methods[methods].params[params].datatype}</span>
+ <span class="var-name">{$methods[methods].params[params].var}</span>{if $methods[methods].params[params].data}<span class="var-description">: {$methods[methods].params[params].data}</span>{/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+ {if $methods[methods].method_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$methods[methods].method_overrides.link}</dt>
+ {if $methods[methods].method_overrides.sdesc}
+ <dd>{$methods[methods].method_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+ {if $methods[methods].method_implements}
+ <hr class="separator" />
+ <div class="notes">Implementation of:</div>
+ {section name=imp loop=$methods[methods].method_implements}
+ <dl>
+ <dt>{$methods[methods].method_implements[imp].link}</dt>
+ {if $methods[methods].method_implements[imp].sdesc}
+ <dd>{$methods[methods].method_implements[imp].sdesc}</dd>
+ {/if}
+ </dl>
+ {/section}
+ {/if}
+
+ {if $methods[methods].descmethod}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=dm loop=$methods[methods].descmethod}
+ <li>
+ {$methods[methods].descmethod[dm].link}
+ {if $methods[methods].descmethod[dm].sdesc}
+ : {$methods[methods].descmethod[dm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+</div>
+{/if}
+{/section}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/page.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/page.tpl
new file mode 100755
index 00000000..b5980236
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/page.tpl
@@ -0,0 +1,211 @@
+{include file="header.tpl" top3=true}
+
+<h2 class="file-name">{$source_location}</h2>
+
+<a name="sec-description"></a>
+<div class="info-box">
+ <div class="info-box-title">Description</div>
+ <div class="nav-bar">
+ {if $classes || $includes || $defines || $globals || $functions}
+ <span class="disabled">Description</span> |
+ {/if}
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="docblock.tpl" desc=$desc sdesc=$sdesc tags=$tags}
+
+ {if $tutorial}
+ <hr class="separator" />
+ <div class="notes">Tutorial: <span class="tutorial">{$tutorial}</div>
+ {/if}
+ </div>
+</div>
+
+{if $classes}
+ <a name="sec-classes"></a>
+ <div class="info-box">
+ <div class="info-box-title">Classes</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ <span class="disabled">Classes</span>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <table cellpadding="2" cellspacing="0" class="class-table">
+ <tr>
+ <th class="class-table-header">Class</th>
+ <th class="class-table-header">Description</th>
+ </tr>
+ {section name=classes loop=$classes}
+ <tr>
+ <td style="padding-right: 2em; vertical-align: top">
+ {$classes[classes].link}
+ </td>
+ <td>
+ {if $classes[classes].sdesc}
+ {$classes[classes].sdesc}
+ {else}
+ {$classes[classes].desc}
+ {/if}
+ </td>
+ </tr>
+ {/section}
+ </table>
+ </div>
+ </div>
+{/if}
+
+{if $includes}
+ <a name="sec-includes"></a>
+ <div class="info-box">
+ <div class="info-box-title">Includes</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ <span class="disabled">Includes</span>
+ {if $defines || $globals || $functions}|{/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="include.tpl"}
+ </div>
+ </div>
+{/if}
+
+{if $defines}
+ <a name="sec-constants"></a>
+ <div class="info-box">
+ <div class="info-box-title">Constants</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ <span class="disabled">Constants</span>
+ {if $globals || $functions}|{/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="define.tpl"}
+ </div>
+ </div>
+{/if}
+
+{if $globals}
+ <a name="sec-variables"></a>
+ <div class="info-box">
+ <div class="info-box-title">Variables</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ <span class="disabled">Variables</span>
+ {if $functions}|{/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="global.tpl"}
+ </div>
+ </div>
+{/if}
+
+{if $functions}
+ <a name="sec-functions"></a>
+ <div class="info-box">
+ <div class="info-box-title">Functions</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ <span class="disabled">Functions</span>
+ </div>
+ <div class="info-box-body">
+ {include file="function.tpl"}
+ </div>
+ </div>
+{/if}
+
+{include file="footer.tpl" top3=true}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/pkgelementindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/pkgelementindex.tpl
new file mode 100755
index 00000000..dc283ad0
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/pkgelementindex.tpl
@@ -0,0 +1,17 @@
+{include file="header.tpl"}
+<a name="top"></a>
+<h2>[{$package}] element index</h2>
+{if count($packageindex) > 1}
+ <h3>Package indexes</h3>
+ <ul>
+ {section name=p loop=$packageindex}
+ {if $packageindex[p].title != $package}
+ <li><a href="elementindex_{$packageindex[p].title}.html">{$packageindex[p].title}</a></li>
+ {/if}
+ {/section}
+ </ul>
+{/if}
+<a href="elementindex.html">All elements</a>
+<br />
+{include file="basicindex.tpl" indexname=elementindex_$package}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/ric.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/ric.tpl
new file mode 100755
index 00000000..eff734c1
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/ric.tpl
@@ -0,0 +1,6 @@
+{include file="header.tpl"}
+<h1 align="center">{$name}</h1>
+<pre>
+{$contents|htmlentities}
+</pre>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/todolist.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/todolist.tpl
new file mode 100755
index 00000000..f929ccdb
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/todolist.tpl
@@ -0,0 +1,14 @@
+{include file="header.tpl" title="Todo List"}
+<div align="center"><h1>Todo List</h1></div>
+{foreach from=$todos key=todopackage item=todo}
+<h2>{$todopackage}</h2>
+{section name=todo loop=$todo}
+<h3>{$todo[todo].link}</h3>
+<ul>
+{section name=t loop=$todo[todo].todos}
+ <li>{$todo[todo].todos[t]}</li>
+{/section}
+</ul>
+{/section}
+{/foreach}
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/top_frame.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/top_frame.tpl
new file mode 100755
index 00000000..36d1e5a1
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/top_frame.tpl
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+ <html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <!-- template designed by Marco Von Ballmoos -->
+ <title>{$title}</title>
+ <link rel="stylesheet" href="{$subdir}media/stylesheet.css" />
+ <link rel="stylesheet" href="{$subdir}media/banner.css" />
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+ </head>
+ <body>
+ <div class="banner">
+ <div class="banner-title">{$package}</div>
+ <div class="banner-menu">
+ <form>
+ <table cellpadding="0" cellspacing="0" style="width: 100%">
+ <tr>
+ <td>
+ {if count($ric) >= 1}
+ {assign var="last_ric_name" value=""}
+ {section name=ric loop=$ric}
+ {if $last_ric_name != ""} | {/if}
+ <a href="{$ric[ric].file}" target="right">{$ric[ric].name}</a>
+ {assign var="last_ric_name" value=$ric[ric].name}
+ {/section}
+ {/if}
+ </td>
+ <td style="width: 2em">&nbsp;</td>
+ <td style="text-align: right">
+ {if count($packages) > 1}
+ <span class="field">Packages</span>
+ <select class="package-selector" onchange="window.parent.left_bottom.location=this[selectedIndex].value">
+ {section name=p loop=$packages}
+ <option value="{$packages[p].link}">{$packages[p].title}</option>
+ {/section}
+ </select>
+ {/if}
+ </td>
+ </tr>
+ </table>
+ </form>
+ </div>
+ </div>
+ </body>
+ </html>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/tutorial.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/tutorial.tpl
new file mode 100755
index 00000000..3b9109d1
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/tutorial.tpl
@@ -0,0 +1,13 @@
+{include file="header.tpl" title=$title top3=true}
+
+{if $nav}
+ {include file="tutorial_nav.tpl" prev=$prev next=$next up=$up prevtitle=$prevtitle nexttitle=$nexttitle uptitle=$uptitle}
+{/if}
+
+{$contents}
+
+{if $nav}
+ {include file="tutorial_nav.tpl" prev=$prev next=$next up=$up prevtitle=$prevtitle nexttitle=$nexttitle uptitle=$uptitle}
+{/if}
+
+{include file="footer.tpl" top3=true} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/tutorial_nav.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/tutorial_nav.tpl
new file mode 100755
index 00000000..89952301
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/tutorial_nav.tpl
@@ -0,0 +1,41 @@
+<table class="tutorial-nav-box">
+ <tr>
+ <td style="width: 30%">
+ {if $prev}
+ <a href="{$prev}" class="nav-button">Previous</a>
+ {else}
+ <span class="nav-button-disabled">Previous</span>
+ {/if}
+ </td>
+ <td style="text-align: center">
+ {if $up}
+ <a href="{$up}" class="nav-button">Up</a>
+ {/if}
+ </td>
+ <td style="text-align: right; width: 30%">
+ {if $next}
+ <a href="{$next}" class="nav-button">Next</a>
+ {else}
+ <span class="nav-button-disabled">Next</span>
+ {/if}
+ </td>
+ </tr>
+ <tr>
+ <td style="width: 30%">
+ {if $prevtitle}
+ <span class="detail">{$prevtitle}</span>
+ {/if}
+ </td>
+ <td style="text-align: center">
+ {if $uptitle}
+ <span class="detail">{$uptitle}</span>
+ {/if}
+ </td>
+ <td style="text-align: right; width: 30%">
+ {if $nexttitle}
+ <span class="detail">{$nexttitle}</span>
+ {/if}
+ </td>
+ </tr>
+</table>
+ \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/tutorial_toc.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/tutorial_toc.tpl
new file mode 100755
index 00000000..3482249b
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/tutorial_toc.tpl
@@ -0,0 +1,40 @@
+{if count($toc)}
+<h1 class="title">Table of Contents</h1>
+<ul class="toc">
+ {assign var="lastcontext" value='refsect1'}
+ {section name=toc loop=$toc}
+
+ {if $toc[toc].tagname != $lastcontext}
+ {if $lastcontext == 'refsect1'}
+ <ul class="toc">
+ <li>{$toc[toc].link}</li>
+ {else}
+ {if $lastcontext == 'refsect2'}
+ {if $toc[toc].tagname == 'refsect1'}
+ </ul>
+ <li>{$toc[toc].link}</li>
+ {/if}
+ {if $toc[toc].tagname == 'refsect3'}
+ <ul class="toc">
+ <li>{$toc[toc].link}</li>
+ {/if}
+ {else}
+ </ul>
+ </ul>
+ <li>{$toc[toc].link}</li>
+ {/if}
+ {/if}
+ {assign var="lastcontext" value=$toc[toc].tagname}
+ {else}
+ <li>{$toc[toc].link}</li>
+ {/if}
+ {/section}
+ {if $lastcontext == 'refsect2'}
+ </ul>
+ {/if}
+ {if $lastcontext == 'refsect3'}
+ </ul>
+ </ul>
+ {/if}
+</ul>
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/tutorial_tree.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/tutorial_tree.tpl
new file mode 100755
index 00000000..617b5654
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/tutorial_tree.tpl
@@ -0,0 +1,6 @@
+<div><a href="{$main.link}" target="right">{$main.title|strip_tags}</a></div>
+{if $haskids}
+<div style="margin-left: 1em">
+ {$kids}
+</div>
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/var.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/var.tpl
new file mode 100755
index 00000000..fccf6892
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpdoc.de/templates/var.tpl
@@ -0,0 +1,92 @@
+{section name=vars loop=$vars}
+{if $vars[vars].static}
+<a name="var{$vars[vars].var_name}" id="{$vars[vars].var_name}"><!-- --></A>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="var-header">
+ <span class="var-title">
+ static <span class="var-type">{$vars[vars].var_type}</span>
+ <span class="var-name">{$vars[vars].var_name}</span>
+ {if $vars[vars].var_default} = <span class="var-default">{$vars[vars].var_default|replace:"\n":"<br />"}</span>{/if}
+ (line <span class="line-number">{if $vars[vars].slink}{$vars[vars].slink}{else}{$vars[vars].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$vars[vars].sdesc desc=$vars[vars].desc tags=$vars[vars].tags}
+
+ {if $vars[vars].var_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$vars[vars].var_overrides.link}</dt>
+ {if $vars[vars].var_overrides.sdesc}
+ <dd>{$vars[vars].var_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+
+ {if $vars[vars].descvar}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=vm loop=$vars[vars].descvar}
+ <li>
+ {$vars[vars].descvar[vm].link}
+ {if $vars[vars].descvar[vm].sdesc}
+ : {$vars[vars].descvar[vm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+</div>
+{/if}
+{/section}
+
+{section name=vars loop=$vars}
+{if !$vars[vars].static}
+<a name="var{$vars[vars].var_name}" id="{$vars[vars].var_name}"><!-- --></A>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="var-header">
+ <span class="var-title">
+ <span class="var-type">{$vars[vars].var_type}</span>
+ <span class="var-name">{$vars[vars].var_name}</span>
+ {if $vars[vars].var_default} = <span class="var-default">{$vars[vars].var_default|replace:"\n":"<br />"}</span>{/if}
+ (line <span class="line-number">{if $vars[vars].slink}{$vars[vars].slink}{else}{$vars[vars].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$vars[vars].sdesc desc=$vars[vars].desc tags=$vars[vars].tags}
+
+ {if $vars[vars].var_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$vars[vars].var_overrides.link}</dt>
+ {if $vars[vars].var_overrides.sdesc}
+ <dd>{$vars[vars].var_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+
+ {if $vars[vars].descvar}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=vm loop=$vars[vars].descvar}
+ <li>
+ {$vars[vars].descvar[vm].link}
+ {if $vars[vars].descvar[vm].sdesc}
+ : {$vars[vars].descvar[vm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+</div>
+{/if}
+{/section}
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/options.ini b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/options.ini
new file mode 100755
index 00000000..c785503d
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/options.ini
@@ -0,0 +1,507 @@
+preservedocbooktags = false
+
+;; used to highlight the {@source} inline tag, @filesource tag, and @example tag
+[highlightSourceTokens]
+;; format:
+;; T_CONSTANTNAME = open
+;; /T_CONSTANTNAME = close
+T_ABSTRACT = <font color="blue">
+/T_ABSTRACT = </font>
+T_CLONE = <font color="blue">
+/T_CLONE = </font>
+T_HALT_COMPILER = <font color="red">
+/T_HALT_COMPILER = </font>
+T_PUBLIC = <font color="blue">
+/T_PUBLIC = </font>
+T_PRIVATE = <font color="blue">
+/T_PRIVATE = </font>
+T_PROTECTED = <font color="blue">
+/T_PROTECTED = </font>
+T_FINAL = <font color="blue">
+/T_FINAL = </font>
+T_IMPLEMENTS = <font color="blue">
+/T_IMPLEMENTS = </font>
+T_CLASS = <font color="blue">
+/T_CLASS = </font>
+T_INTERFACE = <font color="blue">
+/T_INTERFACE = </font>
+T_INCLUDE = <font color="blue">
+/T_INCLUDE = </font>
+T_INCLUDE_ONCE = <font color="blue">
+/T_INCLUDE_ONCE = </font>
+T_REQUIRE_ONCE = <font color="blue">
+/T_REQUIRE_ONCE = </font>
+T_FUNCTION = <font color="blue">
+/T_FUNCTION = </font>
+T_VARIABLE = <strong>
+/T_VARIABLE = </strong>
+T_CONSTANT_ENCAPSED_STRING = <font color="#66cccc">
+/T_CONSTANT_ENCAPSED_STRING = </font>
+T_COMMENT = <font color="green">
+/T_COMMENT = </font>
+T_OBJECT_OPERATOR = <strong>
+/T_OBJECT_OPERATOR = </strong>
+T_RETURN = <font color="blue">
+/T_RETURN = </font>
+T_STATIC = <font color="blue">
+/T_STATIC = </font>
+T_SWITCH = <font color="blue">
+/T_SWITCH = </font>
+T_IF = <font color="blue">
+/T_IF = </font>
+T_FOREACH = <font color="blue">
+/T_FOREACH = </font>
+T_FOR = <font color="blue">
+/T_FOR = </font>
+T_VAR = <font color="blue">
+/T_VAR = </font>
+T_EXTENDS = <font color="blue">
+/T_EXTENDS = </font>
+T_RETURN = <font color="blue">
+/T_RETURN = </font>
+T_GLOBAL = <font color="blue">
+/T_GLOBAL = </font>
+T_DOUBLE_COLON = <strong>
+/T_DOUBLE_COLON = </strong>
+T_OBJECT_OPERATOR = <strong>
+/T_OBJECT_OPERATOR = </strong>
+T_OPEN_TAG = <strong>
+/T_OPEN_TAG = </strong>
+T_CLOSE_TAG = <strong>
+/T_CLOSE_TAG = </strong>
+
+[highlightSource]
+;; this is for highlighting things that aren't tokens like "&"
+;; format:
+;; word = open
+;; /word = close
+@ = <strong>
+/@ = </strong>
+& = <strong>
+/& = </strong>
+[ = <strong>
+/[ = </strong>
+] = <strong>
+/] = </strong>
+! = <strong>
+/! = </strong>
+";" = <strong>
+/; = </strong>
+( = <strong>
+/( = </strong>
+) = <strong>
+/) = </strong>
+, = <strong>
+/, = </strong>
+{ = <strong>
+/{ = </strong>
+} = <strong>
+/} = </strong>
+""" = <font color="#66cccc">
+/" = </font>
+
+[highlightDocBlockSourceTokens]
+;; this is for docblock tokens, using by phpDocumentor_HighlightParser
+;; tagphptype is for "string" in @param string description, for example
+docblock = <font color="#009999">
+/docblock = </font>
+tagphptype = <em>
+/tagphptype = </em>
+tagvarname = <strong>
+/tagvarname = </strong>
+coretag = <strong><font color = "#0099FF">
+/coretag = </font></strong>
+tag = <strong><font color="#009999">
+/tag = </font></strong>
+inlinetag = <em><font color="#0099FF">
+/inlinetag = </font></em>
+internal = <em><font color = "#6699cc">
+/internal = </font></em>
+closetemplate = <strong><font color="blue">
+/closetemplate = </font></strong>
+docblocktemplate = <font color="blue">
+/docblocktemplate = </font color="blue">
+
+[highlightTutorialSourceTokens]
+;; this is for XML DocBook-based tutorials, highlighted by phpDocumentor_TutorialHighlightParser
+;; <tag>
+opentag = <span class="tute-tag">
+/opentag = </span>
+;; </tag>
+closetag = <span class="tute-tag">
+/closetag = </span>
+;; <tag attribute="value">
+attribute = <span class="tute-attribute-name">
+/attribute = </span>
+;; <tag attribute="value">
+attributevalue = <span class="tute-attribute-value">
+/attributevalue = </span>
+;; &entity;
+entity = <span class="tute-entity">
+/entity = </span>
+;; <!-- comment -->
+comment = <span class="tute-comment">
+/comment = </span>
+;; {@inline tag}
+itag = <span class="tute-inline-tag">
+/itag = </span>
+
+;; used for translation of html in DocBlocks
+[desctranslate]
+ul = <ul>
+/ul = </ul>
+ol = <ol>
+/ol = </ol>
+li = <li>
+/li = </li>
+code =
+/code =
+var = <var>
+/var = </var>
+samp = <samp>
+/samp = </samp>
+kbd = <kbd>
+/kbd = </kbd>
+pre = <pre>
+/pre = </pre>
+p = <p>
+/p = </p>
+b = <strong>
+/b = </strong>
+i = <em>
+/i = </em>
+br = <br />
+
+[ppage]
+;; this is the DocBook package page translation section. All DocBook tags
+;; that have a corresponding html tag must be listed here
+;;
+;; examples:
+;; 1)
+;; tagname = newtagname
+;;
+;; This is the simplest case, where all attributes will be added into the
+;; starting tag and the ending tag will be html/xml style </tranlatedtagname>
+;; <tagname></tagname> becomes <newtagname></newtagname> and
+;; <tagname attr="value"></tagname> becomes
+;; <newtagname attr="value"></newtagname>
+;;
+;; 2)
+;; tagname = newtagname
+;; tagname->attr = newattrname
+;;
+;; in this case, everything will be like the first case, except tags like:
+;; <tagname attr="value"></tagname> will become
+;; <newtagname newattrname="value"></newtagname>
+;;
+;; 3)
+;; tagname = newtagname
+;; tagname->attr = newattrname
+;; tagname->attr+value = newvalue
+;;
+;; in this case, the value is also translated to another. This can be useful
+;; for instances such as focus="middle" changing to align="center" or something
+;; of that nature.
+;; <tagname attr="value"></tagname> will become
+;; <newtagname newattrname="newvalue"></newtagname>
+;;
+;; 4)
+;; tagname = newtagname
+;; tagname->attr1 = newattrname
+;; tagname->attr2 = newattrname
+;; tagname->attr1+value|attr2+value = newvalue
+;;
+;; in this case, two attributes combine to make one new attribute, and the combined
+;; value is translated into a new value
+;; <tagname attr1="value1" attr2="value2"></tagname> will become
+;; <newtagname newattrname="newvalue"></newtagname>
+;;
+;; 5)
+;; tagname = newtagname
+;; tagname!attr = dummy
+;;
+;; here, the attribute will be ignored. dummy is not used and may be any value
+;; <tagname attr="value"></tagname> will become
+;; <newtagname></newtagname>
+;;
+;; 6)
+;; tagname = newtagname
+;; tagname! = dummy
+;;
+;; here, all attributes will be ignored. dummy is not used and may be any value
+;; <tagname attr1="value" attr2="foo"></tagname> will become
+;; <newtagname></newtagname>
+;;
+;; 7)
+;; tagname = newtagname
+;; tagname/ = 1
+;;
+;; here, the tag will be translated as a single tag with no closing tag, and all
+;; attributes
+;; <tagname attr="val">{text text}</tagname> will become
+;; <newtagname attr="val" />
+;;
+;; 8)
+;; tagname = <starttaginfo />
+;; /tagname = closetagtext
+;;
+;; in this case, the text <starttaginfo> will be inserted exactly as entered for
+;; <tagname> and closetagtext for </tagname>
+;; <tagname attr="val"></tagname> will become
+;; <starttaginfo />closetagtext
+;;
+;; 9)
+;; $attr$my_attribute = newattrname
+;;
+;; tagname = newtagname
+;;
+;; in this case, all occurences of my_attribute in any tag will be changed to
+;; newattrname. This is useful for changing things like role="php" to
+;; class="php," for example. Note that the text "$attr$" MUST be on the line
+;; start for phpDocumentor to recognize it.
+;;
+;; 10)
+;; &entity; = translation text
+;; &quot; = &quot;
+;; &quot; = """
+;; &lt; = <
+;;
+;; Use this to control translation of entities to their appropriate values
+
+&nbsp; = &nbsp;
+&quot; = &quot;
+&rdquo; = &rdquo;
+&ldquo; = &ldquo;
+&amp; = &amp;
+&lt; = &lt;
+&gt; = &gt;
+&copy; = &copy;
+
+$attr$role = class
+
+abbrev = abbr
+
+blockquote = blockquote
+
+arg = span
+arg->choice = class
+
+author = <font size="-1"><strong>by <em>
+/author = </em></strong></font>
+author! = 0
+
+authorblurb = blockquote
+
+authorgroup = <strong>Authors:</strong><br />
+/authorgroup =
+authorgroup! = 0
+
+caution = <table border="1"><th align="center">Caution</th><tr><td>
+/caution = </td></tr></table>
+caution! = 0
+
+command = <b class="cmd">
+/command = </b>
+
+cmdsynopsis = <div id="cmdsynopsis">
+/cmdsynopsis = </div>
+
+copyright = <em>
+/copyright = </em><br />
+
+emphasis = strong
+
+example = <table class="src-code" width="100%" border="1"><tr><td>
+/example = </td></tr></table>
+example! = 0
+
+function =
+/function = ()
+
+formalpara = p
+
+graphic = img
+graphic->fileref = src
+graphic/ =
+
+important = u
+
+informalequation = blockquote
+
+informalexample = pre
+
+inlineequation = em
+
+itemizedlist = ul
+
+listitem = li
+
+literal = code
+
+literallayout = pre
+
+option = " "
+/option =
+
+orderedlist = ol
+
+para = p
+
+programlisting = <table border="0" bgcolor="#E0E0E0" cellpadding="5"><tr><td><div class="src-code">
+/programlisting = </div></td></tr></table>
+programlisting! = 0
+
+refentry = div
+
+refnamediv = <div class="refname">
+/refnamediv = </div>
+refnamediv! = 0
+
+refname = h1
+
+refpurpose = <h2 class="refpurpose"><em>
+/refpurpose = </em></h2>
+
+refsynopsisdiv = <div class="refsynopsis">
+/refsynopsisdiv = </div>
+refsynopsisdiv! = 0
+
+refsect1 = span
+
+refsect2 =
+/refsect2 = <hr />
+
+refsect3 =
+/refsect3 = <br />
+
+releaseinfo = (
+/releaseinfo = )<br />
+
+simpara =
+/simpara = <br />
+simpara! = 0
+
+subscript = sub
+
+superscript = super
+
+table = table
+
+table->colsep = rules
+table->rowsep = rules
+table->colsep+1|rowsep+1 = all
+table->colsep+1|rowsep+0 = cols
+table->colsep+0|rowsep+1 = rows
+
+table->frame = frame
+table->frame+all = border
+table->frame+none = void
+table->frame+sides = vsides
+table->frame+top = above
+table->frame+topbot = hsides
+
+thead = thead
+
+tfoot = tfoot
+
+tbody = tbody
+
+colspec = col
+
+tgroup = colgroup
+tgroup/ = 1
+tgroup->cols = span
+
+row = tr
+
+entry = td
+entry->morerows = colspan
+entry->morerows+1 = 2
+entry->morerows+2 = 3
+entry->morerows+3 = 4
+entry->morerows+4 = 5
+entry->morerows+5 = 6
+entry->morerows+6 = 7
+entry->morerows+7 = 8
+entry->morerows+8 = 9
+entry->morerows+9 = 10
+entry->morerows+10 = 11
+;; add more if you need more colspans
+
+warning = <table border="1"><tr><td>
+/warning = </td></tr></table>
+warning! = 0
+
+;; now begins the attributes that should be tags in cdata
+[$attr$id]
+open = a
+;close = /a
+cdata! = true
+quotevalues = true
+separator = "="
+;separateall = true
+$id = name
+
+;; now begins the sections that deal with <title>
+[refsynopsisdiv_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h1 class="title" align="center">
+close = </h1>
+
+[refsect1_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h2 class="title" align="center">
+close = </h1>
+
+[refsect2_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h2 class="title" align="center">
+close = </h2>
+
+[refsect3_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h3 class="title" align="center">
+close = </h3>
+
+[para_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <strong class="title" align="center">
+close = </strong>
+
+[formalpara_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <strong class="title" align="center">
+close = </strong>
+
+[example_title]
+;tag_attr = true
+;attr_name = title
+;cdata_start = true
+cdata_end = true
+open = </td></tr><tr><td><strong>
+close = </strong>
+
+[table_title]
+;tag_attr = true
+;attr_name = true
+cdata_start = true
+open = <caption>
+close = </caption>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/basicindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/basicindex.tpl
new file mode 100755
index 00000000..f6f906cc
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/basicindex.tpl
@@ -0,0 +1,24 @@
+{section name=letter loop=$letters}
+ <a href="{$indexname}.html#{$letters[letter].letter}">{$letters[letter].letter}</a>
+{/section}
+
+<br /><br />
+<table border="0" width="100%">
+{section name=index loop=$index}
+<thead>
+ <tr>
+ <td><strong>{$index[index].letter}</strong></td>
+ <td align='right'><a name="{$index[index].letter}">&nbsp; </a>
+ <a href="#top">top</a><br /></td>
+ </tr>
+</thead>
+<tbody>
+ {section name=contents loop=$index[index].index}
+ <tr>
+ <td>&nbsp;&nbsp;&nbsp;<strong>{$index[index].index[contents].name}</strong></td>
+ <td width="100%" align="left" valign="top">{$index[index].index[contents].listing}</td>
+ </tr>
+ {/section}
+</tbody>
+{/section}
+</table>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/blank.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/blank.tpl
new file mode 100755
index 00000000..6a05f27e
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/blank.tpl
@@ -0,0 +1,13 @@
+<html>
+<head>
+ <title>{$maintitle}</title>
+ <link rel="stylesheet" href="{$subdir}media/stylesheet.css" />
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+</head>
+<body>
+<div align="center"><h1>{$maintitle}</h1></div>
+<b>Welcome to {$package}!</b><br />
+<br />
+This documentation was generated by <a href="{$phpdocwebsite}">phpDocumentor v{$phpdocversion}</a><br />
+</body>
+</html> \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/class.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/class.tpl
new file mode 100755
index 00000000..b9dda927
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/class.tpl
@@ -0,0 +1,95 @@
+{include file="header.tpl" top3=true}
+<!-- Start of Class Data -->
+<h2>
+ {if $is_interface}Interface{else}Class{/if} {$class_name}
+</h2> (line <span class="linenumber">{if $class_slink}{$class_slink}{else}{$line_number}{/if}</span>)
+<div class="tab-pane" id="tabPane1">
+<script type="text/javascript">
+tp1 = new WebFXTabPane( document.getElementById( "tabPane1" ));
+</script>
+
+<div class="tab-page" id="Description">
+<h2 class="tab">Description</h2>
+<pre>
+{section name=tree loop=$class_tree.classes}{$class_tree.classes[tree]}{$class_tree.distance[tree]}{/section}
+</pre>
+{if $tutorial}
+<div class="maintutorial">Class Tutorial: {$tutorial}</div>
+{/if}
+{if $conflicts.conflict_type}
+ <div align="left"><span class="font10bold" style="color:#FF0000">Warning:</span> Conflicts with classes:<br />
+ {section name=me loop=$conflicts.conflicts}
+ {$conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+{/if}
+<p>
+ <b><i>Located in File: <a href="{$page_link}">{$source_location}</a></i></b><br>
+</p>
+{include file="docblock.tpl" type="class" sdesc=$sdesc desc=$desc}
+<br /><hr />
+{if $children}
+<span class="type">Classes extended from {$class_name}:</span>
+ {section name=kids loop=$children}
+ <dl>
+ <dt>{$children[kids].link}</dt>
+ <dd>{$children[kids].sdesc}</dd>
+ </dl>
+ {/section}</p>
+{/if}
+</div>
+<script type="text/javascript">tp1.addTabPage( document.getElementById( "Description" ) );</script>
+<div class="tab-page" id="tabPage1">
+{include file="var.tpl"}
+</div>
+<div class="tab-page" id="constantsTabpage">
+{include file="const.tpl"}
+</div>
+<div class="tab-page" id="tabPage2">
+{include file="method.tpl"}
+</div>
+<div class="tab-page" id="iVars">
+<h2 class="tab">Inherited Variables</h2>
+<script type="text/javascript">tp1.addTabPage( document.getElementById( "iVars" ) );</script>
+<!-- =========== VAR INHERITED SUMMARY =========== -->
+<A NAME='var_inherited_summary'><!-- --></A>
+<h3>Inherited Class Variable Summary</h3>
+
+ {section name=ivars loop=$ivars}
+ <!-- =========== Summary =========== -->
+ <h4>Inherited From Class {$ivars[ivars].parent_class}</h4>
+ {section name=ivars2 loop=$ivars[ivars].ivars}
+ <h4>
+<img src="{$subdir}media/images/PublicProperty.gif" border="0" /><strong class="property"> {$ivars[ivars].ivars[ivars2].link}</strong> - {$ivars[ivars].ivars[ivars2].sdesc}
+ </h4>
+ {/section}
+ {/section}
+</div>
+<div class="tab-page" id="iMethods">
+<h2 class="tab">Inherited Methods</h2>
+<script type="text/javascript">tp1.addTabPage( document.getElementById( "iMethods" ) );</script>
+<!-- =========== INHERITED METHOD SUMMARY =========== -->
+<A NAME='functions_inherited'><!-- --></A>
+<h3>Inherited Method Summary</h3>
+
+ {section name=imethods loop=$imethods}
+ <!-- =========== Summary =========== -->
+ <h4>Inherited From Class {$imethods[imethods].parent_class}</h4>
+ {section name=im2 loop=$imethods[imethods].imethods}
+ <h4>
+<img src="{$subdir}media/images/{if $imethods[imethods].imethods[im2].constructor}Constructor{elseif $imethods[imethods].imethods[im2].destructor}Destructor{else}PublicMethod{/if}.gif" border="0" /><strong class="method"> {$imethods[imethods].imethods[im2].link}</strong> - {$imethods[imethods].imethods[im2].sdesc}
+ </h4>
+
+ {/section}
+ <br />
+ {/section}
+</div>
+</div>
+<script type="text/javascript">
+//<![CDATA[
+
+setupAllTabs();
+
+//]]>
+</script>
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/classtrees.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/classtrees.tpl
new file mode 100755
index 00000000..952e6d50
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/classtrees.tpl
@@ -0,0 +1,19 @@
+{include file="header.tpl" top1=true}
+
+<!-- Start of Class Data -->
+<H2>
+ {$smarty.capture.title}
+</H2>
+{if $interfaces}
+{section name=classtrees loop=$interfaces}
+<h2>Root interface {$interfaces[classtrees].class}</h2>
+{$interfaces[classtrees].class_tree}
+{/section}
+{/if}
+{if $classtrees}
+{section name=classtrees loop=$classtrees}
+<h2>Root class {$classtrees[classtrees].class}</h2>
+{$classtrees[classtrees].class_tree}
+{/section}
+{/if}
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/const.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/const.tpl
new file mode 100644
index 00000000..d9f36e58
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/const.tpl
@@ -0,0 +1,21 @@
+
+<h2 class="tab">Class Constants</h2>
+<!-- ============ VARIABLE DETAIL =========== -->
+<strong>Summary:</strong><br />
+{section name=consts loop=$consts}
+<div class="const-title">
+ <a href="#{$consts[consts].const_dest}" title="details" class="property"><strong>{$consts[consts].const_name}</strong></a>
+</div>
+{/section}
+<hr />
+{section name=consts loop=$consts}
+<a name="{$consts[consts].const_dest}" id="{$consts[consts].const_dest}"><!-- --></A>
+<div style="background='{cycle values="#ffffff,#eeeeee"}'">
+<h4>
+<img src="{$subdir}media/images/Constant.gif" border="0" /> <strong class="property">{$consts[consts].const_name} = {$consts[consts].const_value|replace:"\n":"<br />"}</strong> (line <span class="linenumber">{if $consts[consts].slink}{$consts[consts].slink}{else}{$consts[consts].line_number}{/if}</span>)
+ </h4>
+{include file="docblock.tpl" sdesc=$consts[consts].sdesc desc=$consts[consts].desc tags=$consts[consts].tags}
+</div>
+{/section}
+<script type="text/javascript">tp1.addTabPage( document.getElementById( "constantsTabpage" ) );</script>
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/define.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/define.tpl
new file mode 100755
index 00000000..68339e53
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/define.tpl
@@ -0,0 +1,24 @@
+<!-- ============ CONSTANT DETAIL =========== -->
+
+<A NAME='constant_detail'></A>
+<h2 class="tab">Constants</h2>
+
+<script type="text/javascript">tp1.addTabPage( document.getElementById( "tabPage3" ) );</script>
+
+{section name=def loop=$defines}
+<a name="{$defines[def].define_link}"><!-- --></a>
+<div style="background='{cycle values="#ffffff,#eeeeee"}'">
+<h4>
+ <img src="{$subdir}media/images/Constant.gif" border="0" /> <strong class="property">{$defines[def].define_name}</strong> (line <span class="linenumber">{if $defines[def].slink}{$defines[def].slink}{else}{$defines[def].line_number}{/if}</span>)
+ </h4>
+<h4>{$defines[def].define_name} : {$defines[def].define_value|replace:"\n":"<br />"}</h4>
+{if $defines[def].define_conflicts.conflict_type}
+ <p><span class="warning">Warning:</span> Conflicts with constants:<br />
+ {section name=me loop=$defines[def].define_conflicts.conflicts}
+ {$defines[def].define_conflicts.conflicts[me]}<br />
+ {/section}
+ </p>
+{/if}
+{include file="docblock.tpl" sdesc=$defines[def].sdesc desc=$defines[def].desc tags=$defines[def].tags}
+</div>
+{/section} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/docblock.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/docblock.tpl
new file mode 100755
index 00000000..7b1e17d7
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/docblock.tpl
@@ -0,0 +1,30 @@
+<!-- ========== Info from phpDoc block ========= -->
+{if $sdesc}
+<h5>{$sdesc}</h5>
+{/if}
+{if $desc}
+<div class="desc">{$desc}</div>
+{/if}
+{if $function}
+ {if $params}
+ <h4>Parameters</h4>
+ <ul>
+ {section name=params loop=$params}
+ <li><strong>{$params[params].datatype} {$params[params].var}</strong>: {$params[params].data}</li>
+ {/section}
+ </ul>
+ {/if}
+
+ <h4>Info</h4>
+ <ul>
+ {section name=tags loop=$tags}
+ <li><strong>{$tags[tags].keyword}</strong> - {$tags[tags].data}</li>
+ {/section}
+ </ul>
+{else}
+<ul>
+ {section name=tags loop=$tags}
+ <li><strong>{$tags[tags].keyword}:</strong> - {$tags[tags].data}</li>
+ {/section}
+</ul>
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/elementindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/elementindex.tpl
new file mode 100755
index 00000000..fcb310a8
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/elementindex.tpl
@@ -0,0 +1,13 @@
+{include file="header.tpl" noleftindex=true}
+<a name="top"></a>
+<h1>Index of All Elements</h1>
+<a name="top">&nbsp; </a>
+<strong>Indexes by package:</strong><br />
+<ul>
+{section name=p loop=$packageindex}
+<li><a href="elementindex_{$packageindex[p].title}.html">{$packageindex[p].title}</a></li>
+{/section}
+</ul>
+<br />
+{include file="basicindex.tpl" indexname="elementindex"}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/errors.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/errors.tpl
new file mode 100755
index 00000000..0f526584
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/errors.tpl
@@ -0,0 +1,21 @@
+{include file="header.tpl" noleftindex=true}
+{section name=files loop=$files}
+<a href="#{$files[files].file}">{$files[files].file}</a><br>
+{/section}
+{foreach key=file item=issues from=$all}
+<a name="{$file}"></a>
+<h1>{$file}</h1>
+{if count($issues.warnings)}
+<h2>Warnings:</h2><br>
+{section name=warnings loop=$issues.warnings}
+<b>{$issues.warnings[warnings].name}</b> - {$issues.warnings[warnings].listing}<br>
+{/section}
+{/if}
+{if count($issues.errors)}
+<h2>Errors:</h2><br>
+{section name=errors loop=$issues.errors}
+<b>{$issues.errors[errors].name}</b> - {$issues.errors[errors].listing}<br>
+{/section}
+{/if}
+{/foreach}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/examplesource.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/examplesource.tpl
new file mode 100755
index 00000000..5aef23d7
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/examplesource.tpl
@@ -0,0 +1,6 @@
+{include file="header.tpl" title=$title}
+<h1 align="center">{$title}</h1>
+<div class="src-code">
+{$source}
+</div>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/filesource.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/filesource.tpl
new file mode 100755
index 00000000..3d93199e
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/filesource.tpl
@@ -0,0 +1,8 @@
+{capture name="tutle"}File Source for {$name}{/capture}
+{include file="header.tpl" title=$smarty.capture.tutle}
+<h1 align="center">Source for file {$name}</h1>
+<p>Documentation is available at {$docs}</p>
+<div class="src-code">
+{$source}
+</div>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/footer.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/footer.tpl
new file mode 100755
index 00000000..9088c4fc
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/footer.tpl
@@ -0,0 +1,8 @@
+{if !$index}
+ <div id="credit">
+ <hr />
+ Documentation generated on {$date} by <a href="{$phpdocwebsite}" target="_blank">phpDocumentor {$phpdocversion}</a>
+ </div>
+{/if}
+</body>
+</html>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/function.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/function.tpl
new file mode 100755
index 00000000..6348dd0e
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/function.tpl
@@ -0,0 +1,29 @@
+<!-- ============ FUNCTION DETAIL =========== -->
+
+<h2 class="tab">Functions</h2>
+
+<script type="text/javascript">tp1.addTabPage( document.getElementById( "tabPage4" ) );</script>
+
+{section name=func loop=$functions}
+<a name="{$functions[func].function_dest}" id="{$functions[func].function_dest}"><!-- --></a>
+<div style="background='{cycle values="#ffffff,#eeeeee"}'">
+<h4>
+ <img src="{$subdir}media/images/PublicMethod.gif" border="0" /> <strong class="method">{$functions[func].function_name}</strong> (line <span class="linenumber">{if $functions[func].slink}{$functions[func].slink}{else}{$functions[func].line_number}{/if}</span>)
+ </h4>
+<h4><i>{$functions[func].function_return}</i> <strong>{if $functions[func].ifunction_call.returnsref}&amp;{/if}{$functions[func].function_name}(
+{if count($functions[func].ifunction_call.params)}
+{section name=params loop=$functions[func].ifunction_call.params}
+{if $smarty.section.params.iteration != 1}, {/if}{if $functions[func].ifunction_call.params[params].hasdefault}[{/if}{$functions[func].ifunction_call.params[params].type} {$functions[func].ifunction_call.params[params].name}{if $functions[func].ifunction_call.params[params].hasdefault} = {$functions[func].ifunction_call.params[params].default|escape:"html"}]{/if}
+{/section}
+{/if})</strong></h4>
+{if $functions[func].function_conflicts.conflict_type}
+<div align="left"><span class="warning">Warning:</span> Conflicts with functions:<br />
+{section name=me loop=$functions[func].function_conflicts.conflicts}
+{$functions[func].function_conflicts.conflicts[me]}<br />
+{/section}
+</div>
+{/if}
+
+{include file="docblock.tpl" sdesc=$functions[func].sdesc desc=$functions[func].desc tags=$functions[func].tags params=$functions[func].params function=true}
+</div>
+{/section}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/global.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/global.tpl
new file mode 100755
index 00000000..42303bf1
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/global.tpl
@@ -0,0 +1,24 @@
+<!-- ============ GLOBAL DETAIL =========== -->
+
+<h2 class="tab">Global Variables</h2>
+
+<script type="text/javascript">tp1.addTabPage( document.getElementById( "tabPage2" ) );</script>
+
+{section name=glob loop=$globals}
+<a name="{$globals[glob].global_link}" id="{$globals[glob].global_link}"><!-- --></a>
+<div style="background='{cycle values="#ffffff,#eeeeee"}'">
+<h4>
+ <img src="{$subdir}media/images/Constants.gif" border="0" /> <strong class="Property">{$globals[glob].global_name}</strong> (line <span class="linenumber">{if $globals[glob].slink}{$globals[glob].slink}{else}{$globals[glob].line_number}{/if}</span>)
+ </h4>
+<h4><i>{$globals[glob].global_type}</i> {$globals[glob].global_name} : {$globals[glob].global_value|replace:"\n":"<br />"}</h4>
+{if $globals[glob].global_conflicts.conflict_type}
+ <p><span class="warning">Warning:</span> Conflicts with global variables:<br />
+ {section name=me loop=$globals[glob].global_conflicts.conflicts}
+ {$globals[glob].global_conflicts.conflicts[me]}<br />
+ {/section}
+ </p>
+{/if}
+
+{include file="docblock.tpl" sdesc=$globals[glob].sdesc desc=$globals[glob].desc tags=$globals[glob].tags}
+</div>
+{/section} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/header.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/header.tpl
new file mode 100755
index 00000000..378f67e3
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/header.tpl
@@ -0,0 +1,97 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+ <html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+ <title>{$title}</title>
+ <link rel="stylesheet" href="{$subdir}media/stylesheet.css" />
+{if $top2 || $top3}
+ <script src="{$subdir}media/lib/classTree.js"></script>
+<link id="webfx-tab-style-sheet" type="text/css" rel="stylesheet" href="{$subdir}media/lib/tab.webfx.css" />
+<script type="text/javascript" src="{$subdir}media/lib/tabpane.js"></script>
+{/if}
+{if $top2}
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+{/if}
+{if $top3 || $top2}
+ <script language="javascript" type="text/javascript" src="{$subdir}media/lib/ua.js"></script>
+<script language="javascript" type="text/javascript">
+ var imgPlus = new Image();
+ var imgMinus = new Image();
+ imgPlus.src = "{$subdir}media/images/plus.gif";
+ imgMinus.src = "{$subdir}media/images/minus.gif";
+
+ function showNode(Node){ldelim}
+ switch(navigator.family){ldelim}
+ case 'nn4':
+ // Nav 4.x code fork...
+ var oTable = document.layers["span" + Node];
+ var oImg = document.layers["img" + Node];
+ break;
+ case 'ie4':
+ // IE 4/5 code fork...
+ var oTable = document.all["span" + Node];
+ var oImg = document.all["img" + Node];
+ break;
+ case 'gecko':
+ // Standards Compliant code fork...
+ var oTable = document.getElementById("span" + Node);
+ var oImg = document.getElementById("img" + Node);
+ break;
+ {rdelim}
+ oImg.src = imgMinus.src;
+ oTable.style.display = "block";
+ {rdelim}
+
+ function hideNode(Node){ldelim}
+ switch(navigator.family){ldelim}
+ case 'nn4':
+ // Nav 4.x code fork...
+ var oTable = document.layers["span" + Node];
+ var oImg = document.layers["img" + Node];
+ break;
+ case 'ie4':
+ // IE 4/5 code fork...
+ var oTable = document.all["span" + Node];
+ var oImg = document.all["img" + Node];
+ break;
+ case 'gecko':
+ // Standards Compliant code fork...
+ var oTable = document.getElementById("span" + Node);
+ var oImg = document.getElementById("img" + Node);
+ break;
+ {rdelim}
+ oImg.src = imgPlus.src;
+ oTable.style.display = "none";
+ {rdelim}
+
+ function nodeIsVisible(Node){ldelim}
+ switch(navigator.family){ldelim}
+ case 'nn4':
+ // Nav 4.x code fork...
+ var oTable = document.layers["span" + Node];
+ break;
+ case 'ie4':
+ // IE 4/5 code fork...
+ var oTable = document.all["span" + Node];
+ break;
+ case 'gecko':
+ // Standards Compliant code fork...
+ var oTable = document.getElementById("span" + Node);
+ break;
+ {rdelim}
+ return (oTable && oTable.style.display == "block");
+ {rdelim}
+
+ function toggleNodeVisibility(Node){ldelim}
+ if (nodeIsVisible(Node)){ldelim}
+ hideNode(Node);
+ {rdelim}else{ldelim}
+ showNode(Node);
+ {rdelim}
+ {rdelim}
+</script>
+{/if}
+<!-- template designed by Julien Damon based on PHPEdit's generated templates, and tweaked by Greg Beaver -->
+<body bgcolor="#ffffff" {if $top2} topmargin="3" leftmargin="3" rightmargin="2" bottommargin="3"{/if}>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/include.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/include.tpl
new file mode 100755
index 00000000..56e66a9d
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/include.tpl
@@ -0,0 +1,16 @@
+<!-- ============ Includes DETAIL =========== -->
+
+<h2 class="tab">Include/Require Statements</h2>
+<script type="text/javascript">tp1.addTabPage( document.getElementById( "tabPage1" ) );</script>
+
+
+{section name=includes loop=$includes}
+<a name="{$includes[includes].include_file}"><!-- --></a>
+<div style="background='{cycle values="#ffffff,#eeeeee"}'">
+<h4>
+ <img src="{$subdir}media/images/file.png" border="0" /> <strong class="Property">{$includes[includes].include_value}</strong> (line <span class="linenumber">{if $includes[includes].slink}{$includes[includes].slink}{else}{$includes[includes].line_number}{/if}</span>)
+ </h4>
+<h4>{$includes[includes].include_name} : {$includes[includes].include_value}</h4>
+{include file="docblock.tpl" sdesc=$includes[includes].sdesc desc=$includes[includes].desc tags=$includes[includes].tags}
+</div>
+{/section} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/index.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/index.tpl
new file mode 100755
index 00000000..a0ade4f5
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/index.tpl
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//FR"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
+ <html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+ <!-- Generated by phpDocumentor on {$date} -->
+ <title>{$title}</title>
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+</head>
+
+<FRAMESET cols='220,*'>
+ <FRAMESET rows='220,*'>
+ <FRAME src='packages.html' name='left_top'>
+ <FRAME src='{$start}' name='left_bottom'>
+ </FRAMESET>
+ <FRAME src='{$blank}.html' name='right'>
+ <NOFRAMES>
+ <H2>Frame Alert</H2>
+ <P>This document is designed to be viewed using the frames feature.
+ If you see this message, you are using a non-frame-capable web client.</P>
+ </NOFRAMES>
+</FRAMESET>
+</HTML>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/left_frame.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/left_frame.tpl
new file mode 100755
index 00000000..dd5f2607
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/left_frame.tpl
@@ -0,0 +1,166 @@
+{include file="header.tpl" top2=true}
+{if $hastodos}
+<div id="todolist">
+<p><a href="{$todolink}" target="right">Todo List</a></p>
+</div>
+{/if}
+<h3>Navigation: {$info.0.package}</h3>
+<script language="Javascript">
+if (document.getElementById) {ldelim}
+{section name=p loop=$info}
+{if $info[p].subpackage == ""}
+{if $info[p].packagetutorial}
+ var tree = new WebFXTree('Help : {$info[p].packagetutorialtitle|strip_tags}', '{$info[p].packagetutorialnoa}');
+{else}
+ var tree = new WebFXTree('Help : {$info[p].package}', '{$info[p].packagedoc}.html');
+{/if}
+ tree.setBehavior('classic');
+ tree.openIcon = 'media/images/Disk.gif';
+ tree.icon = 'media/images/Disk.gif';
+
+ var elements = new WebFXTreeItem('Index of elements', '{$elementindex}.html');
+ elements.openIcon = 'media/images/file.png';
+ elements.icon = 'media/images/file.png';
+ tree.add(elements);
+
+ var tree_function = new WebFXTreeItem('Function(s)', '{$packagedoc}');
+ tree_function.openIcon = 'media/images/Functions.gif';
+ tree_function.icon = 'media/images/Functions.gif';
+ {section name=nonclass loop=$info[p].functions}
+ var fic = new WebFXTreeItem('{$info[p].functions[nonclass].title}', '{$info[p].functions[nonclass].link}');
+ fic.openIcon = 'media/images/PublicMethod.gif';
+ fic.icon = 'media/images/PublicMethod.gif';
+ tree_function.add(fic);
+ {/section}
+ tree.add(tree_function);
+
+ var tree_interface = new WebFXTreeItem('Interface(s)', '{$classtreepage}.html');
+ tree_interface.openIcon = 'media/images/classFolder.gif';
+ tree_interface.icon = 'media/images/classFolder.gif';
+ {section name=class loop=$info[p].classes}
+ {if $info[p].classes[class].is_interface}
+ var classe = new WebFXTreeItem('{$info[p].classes[class].title}', '{$info[p].classes[class].link}');
+ classe.openIcon = 'media/images/Class.gif';
+ classe.icon = 'media/images/Class.gif';
+ tree_interface.add(classe);
+ {/if}
+ {/section}
+ tree.add(tree_interface);
+
+ var tree_classe = new WebFXTreeItem('Class(es)', '{$classtreepage}.html');
+ tree_classe.openIcon = 'media/images/classFolder.gif';
+ tree_classe.icon = 'media/images/classFolder.gif';
+ {section name=class loop=$info[p].classes}
+ {if $info[p].classes[class].is_class}
+ var classe = new WebFXTreeItem('{$info[p].classes[class].title}', '{$info[p].classes[class].link}');
+ classe.openIcon = 'media/images/Class.gif';
+ classe.icon = 'media/images/Class.gif';
+ tree_classe.add(classe);
+ {/if}
+ {/section}
+ tree.add(tree_classe);
+
+ var tree_file = new WebFXTreeItem('File(s)', '{$packagedoc}');
+ tree_file.openIcon = 'media/images/FolderOpened.gif';
+ tree_file.icon = 'media/images/foldericon.png';
+ {section name=nonclass loop=$info[p].files}
+ var file = new WebFXTreeItem('{$info[p].files[nonclass].title}', '{$info[p].files[nonclass].link}');
+ file.openIcon = 'media/images/file.png';
+ file.icon = 'media/images/file.png';
+ tree_file.add(file);
+ {/section}
+ tree.add(tree_file);
+{else}
+{if $info[p].subpackagetutorial}
+ var subpackagetree = new WebFXTreeItem('Subpackage : {$info[p].subpackagetutorialtitle|strip_tags}', '{$info[p].subpackagetutorialnoa}');
+{else}
+ var subpackagetree = new WebFXTreeItem('Subpackage : {$info[p].subpackage}', '{$packagedoc}');
+{/if}
+ subpackagetree.openIcon = 'media/images/Disk.gif';
+ subpackagetree.icon = 'media/images/Disk.gif';
+
+ var subpackagetree_function = new WebFXTreeItem('Function(s)', '{$packagedoc}');
+ subpackagetree_function.openIcon = 'media/images/Functions.gif';
+ subpackagetree_function.icon = 'media/images/Functions.gif';
+ {section name=nonclass loop=$info[p].functions}
+ var fic = new WebFXTreeItem('{$info[p].functions[nonclass].title}', '{$info[p].functions[nonclass].link}');
+ fic.openIcon = 'media/images/PublicMethod.gif';
+ fic.icon = 'media/images/PublicMethod.gif';
+ subpackagetree_function.add(fic);
+ {/section}
+ subpackagetree.add(subpackagetree_function);
+
+ var subpackagetree_classe = new WebFXTreeItem('Class(es)', '{$classtreepage}.html');
+ subpackagetree_classe.openIcon = 'media/images/classFolder.gif';
+ subpackagetree_classe.icon = 'media/images/classFolder.gif';
+ {section name=class loop=$info[p].classes}
+ var classe = new WebFXTreeItem('{$info[p].classes[class].title}', '{$info[p].classes[class].link}');
+ classe.openIcon = 'media/images/Class.gif';
+ classe.icon = 'media/images/Class.gif';
+ subpackagetree_classe.add(classe);
+ {/section}
+ subpackagetree.add(subpackagetree_classe);
+
+ var subpackagetree_file = new WebFXTreeItem('File(s)', '{$packagedoc}');
+ subpackagetree_file.openIcon = 'media/images/FolderOpened.gif';
+ subpackagetree_file.icon = 'media/images/foldericon.png';
+ {section name=nonclass loop=$info[p].files}
+ var file = new WebFXTreeItem('{$info[p].files[nonclass].title}', '{$info[p].files[nonclass].link}');
+ file.openIcon = 'media/images/file.png';
+ file.icon = 'media/images/file.png';
+ subpackagetree_file.add(file);
+ {/section}
+ subpackagetree.add(subpackagetree_file);
+
+ tree.add(subpackagetree);
+{/if}
+{/section}
+ document.write(tree);
+{rdelim}
+</script>
+<br />
+{if $hastutorials}
+<div class="tutorialist">
+{section name=p loop=$info}
+{if count($info[p].tutorials)}
+<h3>Tutorials/Manuals:{if $info[p].subpackage} {$info[p].subpackage}{/if}</h3>
+{if $info[p].tutorials.pkg}
+<strong>Package-level:</strong>
+<script language="Javascript">
+if (document.getElementById) {ldelim}
+{section name=ext loop=$info[p].tutorials.pkg}
+{$info[p].tutorials.pkg[ext]}
+{/section}
+{rdelim}
+</script>
+{/if}
+{if $info[p].tutorials.cls}
+<strong>Class-level:</strong>
+<script language="Javascript">
+if (document.getElementById) {ldelim}
+{section name=ext loop=$info[p].tutorials.cls}
+{$info[p].tutorials.cls[ext]}
+{/section}
+{rdelim}
+</script>
+{/if}
+{if $info[p].tutorials.proc}
+<strong>Procedural-level:</strong>
+<script language="Javascript">
+if (document.getElementById) {ldelim}
+{section name=ext loop=$info[p].tutorials.proc}
+{$info[p].tutorials.proc[ext]}
+{/section}
+{rdelim}
+{/if}
+</script>
+{/if}
+{/section}
+{/if}
+</div>
+<br />
+<span CLASS="small"><a href="{$phpdocwebsite}" target="_blank">phpDocumentor v <b>{$phpdocversion}</b></a><br />
+<br />
+<i>HTML layout inspired by </i><a href="http://www.phpedit.com" target="right">PHPEdit</a></span>
+</body>
+</html>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Class.gif b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Class.gif
new file mode 100755
index 00000000..ada36bbb
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Class.gif
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Constant.gif b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Constant.gif
new file mode 100755
index 00000000..d9ca9cfa
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Constant.gif
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Constants.gif b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Constants.gif
new file mode 100755
index 00000000..eba8d08f
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Constants.gif
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Constructor.gif b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Constructor.gif
new file mode 100755
index 00000000..f153cfb4
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Constructor.gif
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Destructor.gif b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Destructor.gif
new file mode 100755
index 00000000..bf3d62b3
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Destructor.gif
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Disk.gif b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Disk.gif
new file mode 100755
index 00000000..7ab08fd0
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Disk.gif
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/FolderClosed.gif b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/FolderClosed.gif
new file mode 100755
index 00000000..68c6563c
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/FolderClosed.gif
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/FolderOpened.gif b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/FolderOpened.gif
new file mode 100755
index 00000000..8b012d55
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/FolderOpened.gif
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Functions.gif b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Functions.gif
new file mode 100755
index 00000000..bc2def80
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Functions.gif
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/GhostClass.gif b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/GhostClass.gif
new file mode 100755
index 00000000..44124540
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/GhostClass.gif
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/I.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/I.png
new file mode 100755
index 00000000..e8512fb9
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/I.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/L.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/L.png
new file mode 100755
index 00000000..eb334eda
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/L.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Lminus.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Lminus.png
new file mode 100755
index 00000000..f7c43c0a
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Lminus.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Lplus.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Lplus.png
new file mode 100755
index 00000000..848ec2fc
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Lplus.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/PrivateDataMember.gif b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/PrivateDataMember.gif
new file mode 100755
index 00000000..346380de
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/PrivateDataMember.gif
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/PrivateMethod.gif b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/PrivateMethod.gif
new file mode 100755
index 00000000..dcd2b203
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/PrivateMethod.gif
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/PrivateProperty.gif b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/PrivateProperty.gif
new file mode 100755
index 00000000..a21fffa0
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/PrivateProperty.gif
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/ProtectedDataMember.gif b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/ProtectedDataMember.gif
new file mode 100755
index 00000000..882fa7db
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/ProtectedDataMember.gif
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/ProtectedMethod.gif b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/ProtectedMethod.gif
new file mode 100755
index 00000000..b25197b2
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/ProtectedMethod.gif
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/ProtectedProperty.gif b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/ProtectedProperty.gif
new file mode 100755
index 00000000..94892fe4
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/ProtectedProperty.gif
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/PublicDataMember.gif b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/PublicDataMember.gif
new file mode 100755
index 00000000..5a799e0c
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/PublicDataMember.gif
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/PublicMethod.gif b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/PublicMethod.gif
new file mode 100755
index 00000000..571fd9ce
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/PublicMethod.gif
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/PublicProperty.gif b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/PublicProperty.gif
new file mode 100755
index 00000000..634ff5cb
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/PublicProperty.gif
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/T.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/T.png
new file mode 100755
index 00000000..30173254
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/T.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Tminus.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Tminus.png
new file mode 100755
index 00000000..2260e424
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Tminus.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Tplus.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Tplus.png
new file mode 100755
index 00000000..2c8d8f4f
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Tplus.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Types.gif b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Types.gif
new file mode 100755
index 00000000..7c13fd59
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Types.gif
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Variable.gif b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Variable.gif
new file mode 100755
index 00000000..63b3f553
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Variable.gif
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Vars.gif b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Vars.gif
new file mode 100755
index 00000000..3963c3c1
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/Vars.gif
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/blank.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/blank.png
new file mode 100755
index 00000000..cee9cd37
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/blank.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/classFolder.gif b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/classFolder.gif
new file mode 100755
index 00000000..5492345f
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/classFolder.gif
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/error.gif b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/error.gif
new file mode 100755
index 00000000..e323ff06
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/error.gif
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/file.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/file.png
new file mode 100755
index 00000000..0bb2427f
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/file.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/foldericon.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/foldericon.png
new file mode 100755
index 00000000..2684748b
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/foldericon.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/minus.gif b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/minus.gif
new file mode 100755
index 00000000..9e998f1b
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/minus.gif
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/msgError.gif b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/msgError.gif
new file mode 100755
index 00000000..93c6d36a
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/msgError.gif
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/msgFatalError.gif b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/msgFatalError.gif
new file mode 100755
index 00000000..6257bbe5
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/msgFatalError.gif
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/msgHint.gif b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/msgHint.gif
new file mode 100755
index 00000000..0b23fbfe
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/msgHint.gif
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/msgInformation.gif b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/msgInformation.gif
new file mode 100755
index 00000000..1cc5c9ba
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/msgInformation.gif
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/msgWarning.gif b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/msgWarning.gif
new file mode 100755
index 00000000..e0757783
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/msgWarning.gif
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/openfoldericon.png b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/openfoldericon.png
new file mode 100755
index 00000000..15fcd567
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/openfoldericon.png
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/plus.gif b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/plus.gif
new file mode 100755
index 00000000..cade83c7
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/plus.gif
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/spacer.gif b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/spacer.gif
new file mode 100755
index 00000000..1fa6d01f
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/images/spacer.gif
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/lib/classTree.js b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/lib/classTree.js
new file mode 100755
index 00000000..7f57c474
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/lib/classTree.js
@@ -0,0 +1,454 @@
+/*----------------------------------------\
+| Cross Browser Tree Widget 1.1 |
+|-----------------------------------------|
+| Created by Emil A. Eklund (eae@eae.net) |
+| For WebFX (http://webfx.eae.net/) |
+|-----------------------------------------|
+| This script is provided as is without |
+| any warranty whatsoever. It may be used |
+| free of charge for non commerical sites |
+| For commerical use contact the author |
+| of this script for further details. |
+|-----------------------------------------|
+| Created 2000-12-11 | Updated 2001-09-06 |
+\----------------------------------------*/
+
+var webFXTreeConfig = {
+ rootIcon : 'media/images/Class.gif',
+ openRootIcon : 'media/images/Class.gif',
+ folderIcon : 'media/images/Class.gif',
+ openFolderIcon : 'media/images/Class.gif',
+ fileIcon : 'media/images/Class.gif',
+ iIcon : 'media/images/I.png',
+ lIcon : 'media/images/L.png',
+ lMinusIcon : 'media/images/Lminus.png',
+ lPlusIcon : 'media/images/Lplus.png',
+ tIcon : 'media/images/T.png',
+ tMinusIcon : 'media/images/Tminus.png',
+ tPlusIcon : 'media/images/Tplus.png',
+ blankIcon : 'media/images/blank.png',
+ defaultText : 'Tree Item',
+ defaultAction : 'javascript:void(0);',
+ defaultTarget : 'right',
+ defaultBehavior : 'classic'
+};
+
+var webFXTreeHandler = {
+ idCounter : 0,
+ idPrefix : "webfx-tree-object-",
+ all : {},
+ behavior : null,
+ selected : null,
+ getId : function() { return this.idPrefix + this.idCounter++; },
+ toggle : function (oItem) { this.all[oItem.id.replace('-plus','')].toggle(); },
+ select : function (oItem) { this.all[oItem.id.replace('-icon','')].select(); },
+ focus : function (oItem) { this.all[oItem.id.replace('-anchor','')].focus(); },
+ blur : function (oItem) { this.all[oItem.id.replace('-anchor','')].blur(); },
+ keydown : function (oItem) { return this.all[oItem.id].keydown(window.event.keyCode); },
+ cookies : new WebFXCookie()
+};
+
+/*
+ * WebFXCookie class
+ */
+
+function WebFXCookie() {
+ if (document.cookie.length) { this.cookies = ' ' + document.cookie; }
+}
+
+WebFXCookie.prototype.setCookie = function (key, value) {
+ document.cookie = key + "=" + escape(value);
+}
+
+WebFXCookie.prototype.getCookie = function (key) {
+ if (this.cookies) {
+ var start = this.cookies.indexOf(' ' + key + '=');
+ if (start == -1) { return null; }
+ var end = this.cookies.indexOf(";", start);
+ if (end == -1) { end = this.cookies.length; }
+ end -= start;
+ var cookie = this.cookies.substr(start,end);
+ return unescape(cookie.substr(cookie.indexOf('=') + 1, cookie.length - cookie.indexOf('=') + 1));
+ }
+ else { return null; }
+}
+
+/*
+ * WebFXTreeAbstractNode class
+ */
+
+function WebFXTreeAbstractNode(sText, sAction, sTarget) {
+ this.childNodes = [];
+ this.id = webFXTreeHandler.getId();
+ this.text = sText || webFXTreeConfig.defaultText;
+ this.action = sAction || webFXTreeConfig.defaultAction;
+ this.targetWindow = sTarget || webFXTreeConfig.defaultTarget;
+ this._last = false;
+ webFXTreeHandler.all[this.id] = this;
+}
+
+WebFXTreeAbstractNode.prototype.add = function (node) {
+ node.parentNode = this;
+ this.childNodes[this.childNodes.length] = node;
+ var root = this;
+ if (this.childNodes.length >=2) {
+ this.childNodes[this.childNodes.length -2]._last = false;
+ }
+ while (root.parentNode) { root = root.parentNode; }
+ if (root.rendered) {
+ if (this.childNodes.length >= 2) {
+ document.getElementById(this.childNodes[this.childNodes.length -2].id + '-plus').src = ((this.childNodes[this.childNodes.length -2].folder)?webFXTreeConfig.tMinusIcon:webFXTreeConfig.tIcon);
+ if (this.childNodes[this.childNodes.length -2].folder) {
+ this.childNodes[this.childNodes.length -2].plusIcon = webFXTreeConfig.tPlusIcon;
+ this.childNodes[this.childNodes.length -2].minusIcon = webFXTreeConfig.tMinusIcon;
+ }
+ this.childNodes[this.childNodes.length -2]._last = false;
+ }
+ this._last = true;
+ var foo = this;
+ while (foo.parentNode) {
+ for (var i = 0; i < foo.parentNode.childNodes.length; i++) {
+ if (foo.id == foo.parentNode.childNodes[i].id) { break; }
+ }
+ if (++i == foo.parentNode.childNodes.length) { foo.parentNode._last = true; }
+ else { foo.parentNode._last = false; }
+ foo = foo.parentNode;
+ }
+ document.getElementById(this.id + '-cont').insertAdjacentHTML("beforeEnd", node.toString());
+ if ((!this.folder) && (!this.openIcon)) {
+ this.icon = webFXTreeConfig.folderIcon;
+ this.openIcon = webFXTreeConfig.openFolderIcon;
+ }
+ this.folder = true;
+ this.indent();
+ this.expand();
+ }
+ return node;
+}
+
+WebFXTreeAbstractNode.prototype.toggle = function() {
+ if (this.folder) {
+ if (this.open) { this.collapse(); }
+ else { this.expand(); }
+ }
+}
+
+WebFXTreeAbstractNode.prototype.select = function() {
+ document.getElementById(this.id + '-anchor').focus();
+}
+
+WebFXTreeAbstractNode.prototype.focus = function() {
+ webFXTreeHandler.selected = this;
+ if ((this.openIcon) && (webFXTreeHandler.behavior != 'classic')) { document.getElementById(this.id + '-icon').src = this.openIcon; }
+ document.getElementById(this.id + '-anchor').style.backgroundColor = 'highlight';
+ document.getElementById(this.id + '-anchor').style.color = 'highlighttext';
+ document.getElementById(this.id + '-anchor').focus();
+}
+
+WebFXTreeAbstractNode.prototype.blur = function() {
+ if ((this.openIcon) && (webFXTreeHandler.behavior != 'classic')) { document.getElementById(this.id + '-icon').src = this.icon; }
+ document.getElementById(this.id + '-anchor').style.backgroundColor = 'transparent';
+ document.getElementById(this.id + '-anchor').style.color = 'menutext';
+}
+
+WebFXTreeAbstractNode.prototype.doExpand = function() {
+ if (webFXTreeHandler.behavior == 'classic') { document.getElementById(this.id + '-icon').src = this.openIcon; }
+ if (this.childNodes.length) { document.getElementById(this.id + '-cont').style.display = 'block'; }
+ this.open = true;
+ webFXTreeHandler.cookies.setCookie(this.id.substr(18,this.id.length - 18), '1');
+}
+
+WebFXTreeAbstractNode.prototype.doCollapse = function() {
+ if (webFXTreeHandler.behavior == 'classic') { document.getElementById(this.id + '-icon').src = this.icon; }
+ if (this.childNodes.length) { document.getElementById(this.id + '-cont').style.display = 'none'; }
+ this.open = false;
+ webFXTreeHandler.cookies.setCookie(this.id.substr(18,this.id.length - 18), '0');
+}
+
+WebFXTreeAbstractNode.prototype.expandAll = function() {
+ this.expandChildren();
+ if ((this.folder) && (!this.open)) { this.expand(); }
+}
+
+WebFXTreeAbstractNode.prototype.expandChildren = function() {
+ for (var i = 0; i < this.childNodes.length; i++) {
+ this.childNodes[i].expandAll();
+} }
+
+WebFXTreeAbstractNode.prototype.collapseAll = function() {
+ if ((this.folder) && (this.open)) { this.collapse(); }
+ this.collapseChildren();
+}
+
+WebFXTreeAbstractNode.prototype.collapseChildren = function() {
+ for (var i = 0; i < this.childNodes.length; i++) {
+ this.childNodes[i].collapseAll();
+} }
+
+WebFXTreeAbstractNode.prototype.indent = function(lvl, del, last, level) {
+ /*
+ * Since we only want to modify items one level below ourself,
+ * and since the rightmost indentation position is occupied by
+ * the plus icon we set this to -2
+ */
+ if (lvl == null) { lvl = -2; }
+ var state = 0;
+ for (var i = this.childNodes.length - 1; i >= 0 ; i--) {
+ state = this.childNodes[i].indent(lvl + 1, del, last, level);
+ if (state) { return; }
+ }
+ if (del) {
+ if (level >= this._level) {
+ if (this.folder) {
+ document.getElementById(this.id + '-plus').src = (this.open)?webFXTreeConfig.lMinusIcon:webFXTreeConfig.lPlusIcon;
+ this.plusIcon = webFXTreeConfig.lPlusIcon;
+ this.minusIcon = webFXTreeConfig.lMinusIcon;
+ }
+ else { document.getElementById(this.id + '-plus').src = webFXTreeConfig.lIcon; }
+ return 1;
+ }
+ }
+ var foo = document.getElementById(this.id + '-indent-' + lvl);
+ if (foo) {
+ if ((del) && (last)) { foo._last = true; }
+ if (foo._last) { foo.src = webFXTreeConfig.blankIcon; }
+ else { foo.src = webFXTreeConfig.iIcon; }
+ }
+ return 0;
+}
+
+/*
+ * WebFXTree class
+ */
+
+function WebFXTree(sText, sAction, sBehavior, sIcon, sOpenIcon) {
+ this.base = WebFXTreeAbstractNode;
+ this.base(sText, sAction);
+ this.icon = sIcon || webFXTreeConfig.rootIcon;
+ this.openIcon = sOpenIcon || webFXTreeConfig.openRootIcon;
+ /* Defaults to open */
+ this.open = (webFXTreeHandler.cookies.getCookie(this.id.substr(18,this.id.length - 18)) == '0')?false:true;
+ this.folder = true;
+ this.rendered = false;
+ if (!webFXTreeHandler.behavior) { webFXTreeHandler.behavior = sBehavior || webFXTreeConfig.defaultBehavior; }
+ this.targetWindow = 'right';
+}
+
+WebFXTree.prototype = new WebFXTreeAbstractNode;
+
+WebFXTree.prototype.setBehavior = function (sBehavior) {
+ webFXTreeHandler.behavior = sBehavior;
+};
+
+WebFXTree.prototype.getBehavior = function (sBehavior) {
+ return webFXTreeHandler.behavior;
+};
+
+WebFXTree.prototype.getSelected = function() {
+ if (webFXTreeHandler.selected) { return webFXTreeHandler.selected; }
+ else { return null; }
+}
+
+WebFXTree.prototype.remove = function() { }
+
+WebFXTree.prototype.expand = function() {
+ this.doExpand();
+}
+
+WebFXTree.prototype.collapse = function() {
+ this.focus();
+ this.doCollapse();
+}
+
+WebFXTree.prototype.getFirst = function() {
+ return null;
+}
+
+WebFXTree.prototype.getLast = function() {
+ return null;
+}
+
+WebFXTree.prototype.getNextSibling = function() {
+ return null;
+}
+
+WebFXTree.prototype.getPreviousSibling = function() {
+ return null;
+}
+
+WebFXTree.prototype.keydown = function(key) {
+ if (key == 39) { this.expand(); return false; }
+ if (key == 37) { this.collapse(); return false; }
+ if ((key == 40) && (this.open)) { this.childNodes[0].select(); return false; }
+ return true;
+}
+
+WebFXTree.prototype.toString = function() {
+ var str = "<div id=\"" + this.id + "\" ondblclick=\"webFXTreeHandler.toggle(this);\" class=\"webfx-tree-item\" onkeydown=\"return webFXTreeHandler.keydown(this)\">";
+ str += "<img id=\"" + this.id + "-icon\" class=\"webfx-tree-icon\" src=\"" + ((webFXTreeHandler.behavior == 'classic' && this.open)?this.openIcon:this.icon) + "\" onclick=\"webFXTreeHandler.select(this);\"><a href=\"" + this.action + "\" id=\"" + this.id + "-anchor\" target=\"" + this.targetWindow + "\" onfocus=\"webFXTreeHandler.focus(this);\" onblur=\"webFXTreeHandler.blur(this);\">" + this.text + "</a></div>";
+ str += "<div id=\"" + this.id + "-cont\" class=\"webfx-tree-container\" style=\"display: " + ((this.open)?'block':'none') + ";\">";
+ for (var i = 0; i < this.childNodes.length; i++) {
+ str += this.childNodes[i].toString(i, this.childNodes.length);
+ }
+ str += "</div>";
+ this.rendered = true;
+ return str;
+};
+
+/*
+ * WebFXTreeItem class
+ */
+
+function WebFXTreeItem(sText, sAction, eParent, sIcon, sOpenIcon) {
+ this.base = WebFXTreeAbstractNode;
+ this.base(sText, sAction);
+ /* Defaults to close */
+ this.open = (webFXTreeHandler.cookies.getCookie(this.id.substr(18,this.id.length - 18)) == '1')?true:false;
+ if (eParent) { eParent.add(this); }
+ if (sIcon) { this.icon = sIcon; }
+ if (sOpenIcon) { this.openIcon = sOpenIcon; }
+}
+
+WebFXTreeItem.prototype = new WebFXTreeAbstractNode;
+
+WebFXTreeItem.prototype.remove = function() {
+ var parentNode = this.parentNode;
+ var prevSibling = this.getPreviousSibling(true);
+ var nextSibling = this.getNextSibling(true);
+ var folder = this.parentNode.folder;
+ var last = ((nextSibling) && (nextSibling.parentNode) && (nextSibling.parentNode.id == parentNode.id))?false:true;
+ this.getPreviousSibling().focus();
+ this._remove();
+ if (parentNode.childNodes.length == 0) {
+ parentNode.folder = false;
+ parentNode.open = false;
+ }
+ if (last) {
+ if (parentNode.id == prevSibling.id) {
+ document.getElementById(parentNode.id + '-icon').src = webFXTreeConfig.fileIcon;
+ }
+ else { }
+ }
+ if ((!prevSibling.parentNode) || (prevSibling.parentNode != parentNode)) {
+ parentNode.indent(null, true, last, this._level);
+ }
+ if (document.getElementById(prevSibling.id + '-plus')) {
+ if (nextSibling) {
+ if ((parentNode == prevSibling) && (parentNode.getNextSibling)) { document.getElementById(prevSibling.id + '-plus').src = webFXTreeConfig.tIcon; }
+ else if (nextSibling.parentNode != prevSibling) { document.getElementById(prevSibling.id + '-plus').src = webFXTreeConfig.lIcon; }
+ }
+ else { document.getElementById(prevSibling.id + '-plus').src = webFXTreeConfig.lIcon; }
+ }
+}
+
+WebFXTreeItem.prototype._remove = function() {
+ for (var i = this.childNodes.length - 1; i >= 0; i--) {
+ this.childNodes[i]._remove();
+ }
+ for (var i = 0; i < this.parentNode.childNodes.length; i++) {
+ if (this.id == this.parentNode.childNodes[i].id) {
+ for (var j = i; j < this.parentNode.childNodes.length; j++) {
+ this.parentNode.childNodes[i] = this.parentNode.childNodes[i+1]
+ }
+ this.parentNode.childNodes.length = this.parentNode.childNodes.length - 1;
+ if (i + 1 == this.parentNode.childNodes.length) { this.parentNode._last = true; }
+ }
+ }
+ webFXTreeHandler.all[this.id] = null;
+ if (document.getElementById(this.id)) {
+ document.getElementById(this.id).innerHTML = "";
+ document.getElementById(this.id).removeNode();
+ }
+}
+
+WebFXTreeItem.prototype.expand = function() {
+ this.doExpand();
+ document.getElementById(this.id + '-plus').src = this.minusIcon;
+}
+
+WebFXTreeItem.prototype.collapse = function() {
+ this.focus();
+ this.doCollapse();
+ document.getElementById(this.id + '-plus').src = this.plusIcon;
+}
+
+WebFXTreeItem.prototype.getFirst = function() {
+ return this.childNodes[0];
+}
+
+WebFXTreeItem.prototype.getLast = function() {
+ if (this.childNodes[this.childNodes.length - 1].open) { return this.childNodes[this.childNodes.length - 1].getLast(); }
+ else { return this.childNodes[this.childNodes.length - 1]; }
+}
+
+WebFXTreeItem.prototype.getNextSibling = function() {
+ for (var i = 0; i < this.parentNode.childNodes.length; i++) {
+ if (this == this.parentNode.childNodes[i]) { break; }
+ }
+ if (++i == this.parentNode.childNodes.length) { return this.parentNode.getNextSibling(); }
+ else { return this.parentNode.childNodes[i]; }
+}
+
+WebFXTreeItem.prototype.getPreviousSibling = function(b) {
+ for (var i = 0; i < this.parentNode.childNodes.length; i++) {
+ if (this == this.parentNode.childNodes[i]) { break; }
+ }
+ if (i == 0) { return this.parentNode; }
+ else {
+ if ((this.parentNode.childNodes[--i].open) || (b && this.parentNode.childNodes[i].folder)) { return this.parentNode.childNodes[i].getLast(); }
+ else { return this.parentNode.childNodes[i]; }
+} }
+
+WebFXTreeItem.prototype.keydown = function(key) {
+ if ((key == 39) && (this.folder)) {
+ if (!this.open) { this.expand(); return false; }
+ else { this.getFirst().select(); return false; }
+ }
+ else if (key == 37) {
+ if (this.open) { this.collapse(); return false; }
+ else { this.parentNode.select(); return false; }
+ }
+ else if (key == 40) {
+ if (this.open) { this.getFirst().select(); return false; }
+ else {
+ var sib = this.getNextSibling();
+ if (sib) { sib.select(); return false; }
+ } }
+ else if (key == 38) { this.getPreviousSibling().select(); return false; }
+ return true;
+}
+
+WebFXTreeItem.prototype.toString = function (nItem, nItemCount) {
+ var foo = this.parentNode;
+ var indent = '';
+ if (nItem + 1 == nItemCount) { this.parentNode._last = true; }
+ var i = 0;
+ while (foo.parentNode) {
+ foo = foo.parentNode;
+ indent = "<img id=\"" + this.id + "-indent-" + i + "\" src=\"" + ((foo._last)?webFXTreeConfig.blankIcon:webFXTreeConfig.iIcon) + "\">" + indent;
+ i++;
+ }
+ this._level = i;
+ if (this.childNodes.length) { this.folder = 1; }
+ else { this.open = false; }
+ if ((this.folder) || (webFXTreeHandler.behavior != 'classic')) {
+ if (!this.icon) { this.icon = webFXTreeConfig.folderIcon; }
+ if (!this.openIcon) { this.openIcon = webFXTreeConfig.openFolderIcon; }
+ }
+ else if (!this.icon) { this.icon = webFXTreeConfig.fileIcon; }
+ var label = this.text;
+ label = label.replace('<', '<');
+ label = label.replace('>', '>');
+ var str = "<div id=\"" + this.id + "\" ondblclick=\"webFXTreeHandler.toggle(this);\" class=\"webfx-tree-item\" onkeydown=\"return webFXTreeHandler.keydown(this)\">";
+ str += indent;
+ str += "<img id=\"" + this.id + "-plus\" src=\"" + ((this.folder)?((this.open)?((this.parentNode._last)?webFXTreeConfig.lMinusIcon:webFXTreeConfig.tMinusIcon):((this.parentNode._last)?webFXTreeConfig.lPlusIcon:webFXTreeConfig.tPlusIcon)):((this.parentNode._last)?webFXTreeConfig.lIcon:webFXTreeConfig.tIcon)) + "\" onclick=\"webFXTreeHandler.toggle(this);\">"
+ str += "<img id=\"" + this.id + "-icon\" src=\"" + ((webFXTreeHandler.behavior == 'classic' && this.open)?this.openIcon:this.icon) + "\" onclick=\"webFXTreeHandler.select(this);\"><a href=\"" + this.action + "\" id=\"" + this.id + "-anchor\" target=\"" + this.targetWindow + "\" onfocus=\"webFXTreeHandler.focus(this);\" onblur=\"webFXTreeHandler.blur(this);\">" + label + "</a></div>";
+ str += "<div id=\"" + this.id + "-cont\" class=\"webfx-tree-container\" style=\"display: " + ((this.open)?'block':'none') + ";\">";
+ for (var i = 0; i < this.childNodes.length; i++) {
+ str += this.childNodes[i].toString(i,this.childNodes.length);
+ }
+ str += "</div>";
+ this.plusIcon = ((this.parentNode._last)?webFXTreeConfig.lPlusIcon:webFXTreeConfig.tPlusIcon);
+ this.minusIcon = ((this.parentNode._last)?webFXTreeConfig.lMinusIcon:webFXTreeConfig.tMinusIcon);
+ return str;
+} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/lib/tab.webfx.css b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/lib/tab.webfx.css
new file mode 100755
index 00000000..6552ea01
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/lib/tab.webfx.css
@@ -0,0 +1,86 @@
+/*
+
+bright: rgb(234,242,255);
+normal: rgb(120,172,255);
+dark: rgb(0,66,174);
+
+*/
+
+
+
+
+.dynamic-tab-pane-control.tab-pane {
+ position: relative;
+ width: 100%;
+}
+
+.dynamic-tab-pane-control .tab-row .tab {
+ font-family: Verdana, Helvetica, Arial;
+ font-size: 12px;
+ cursor: Default;
+ display: inline;
+ margin: 1px -5px 1px 5px;
+ float: left;
+ padding: 3px 6px 3px 6px;
+ background: rgb(234,242,255);
+ border: 1px solid;
+ border-color: rgb(120,172,255);
+ border-left: 0;
+ border-bottom: 0;
+ border-top: 0;
+
+ cursor: hand;
+ cursor: pointer;
+
+ z-index: 1;
+ position: relative;
+ top: 0;
+}
+
+.dynamic-tab-pane-control .tab-row .tab.selected {
+ border: 1px solid rgb(120,172,255);
+ border-bottom: 0;
+ z-index: 3;
+ padding: 2px 6px 5px 6px;
+ margin: 1px -6px -2px 0px;
+ top: -2px;
+ background: white;
+}
+
+.dynamic-tab-pane-control .tab-row .tab a {
+ font-family: Verdana, Helvetica, Arial;
+ font-size: 13px;
+ color: rgb(0,66,174);
+ text-decoration: none;
+ cursor: hand;
+ cursor: pointer;
+}
+
+.dynamic-tab-pane-control .tab-row .hover a {
+ color: rgb(0,66,174);
+}
+
+.dynamic-tab-pane-control .tab-row .tab.selected a {
+ font-weight: bold;
+}
+
+.dynamic-tab-pane-control .tab-page {
+ clear: both;
+ border: 1px solid rgb(120,172,255);
+ background: White;
+ z-index: 2;
+ position: relative;
+ top: -2px;
+ color: Black;
+ font-family: Verdana, Helvetica, Arial;
+ font-size: 13px;
+ padding: 10px;
+}
+
+.dynamic-tab-pane-control .tab-row {
+ z-index: 1;
+ white-space: nowrap;
+ background: rgb(234,242,255);
+ height: 1.85em;
+ width: 100%;
+}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/lib/tabpane.js b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/lib/tabpane.js
new file mode 100755
index 00000000..f1418bee
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/lib/tabpane.js
@@ -0,0 +1,308 @@
+/*
+ * Tab Pane
+ *
+ * This script was created by Erik Arvidsson (erik(at)eae.net)
+ * for WebFX (http://webfx.eae.net)
+ * Copyright 2002
+ *
+ * For usage see license at http://webfx.eae.net/license.html
+ *
+ * Version: 1.0
+ * Created: 2002-01-?? First working version
+ * Updated: 2002-02-17 Cleaned up for 1.0 public version
+ *
+ * Dependencies: *.css - a css file to define the layout
+ *
+ */
+
+
+// This function is used to define if the browser supports the needed
+// features
+function hasSupport() {
+
+ if (typeof hasSupport.support != "undefined")
+ return hasSupport.support;
+
+ var ie55 = /msie 5\.[56789]/i.test( navigator.userAgent );
+
+ hasSupport.support = ( typeof document.implementation != "undefined" &&
+ document.implementation.hasFeature( "html", "1.0" ) || ie55 )
+
+ // IE55 has a serious DOM1 bug... Patch it!
+ if ( ie55 ) {
+ document._getElementsByTagName = document.getElementsByTagName;
+ document.getElementsByTagName = function ( sTagName ) {
+ if ( sTagName == "*" )
+ return document.all;
+ else
+ return document._getElementsByTagName( sTagName );
+ };
+ }
+
+ return hasSupport.support;
+}
+
+///////////////////////////////////////////////////////////////////////////////////
+// The constructor for tab panes
+//
+// el : HTMLElement The html element used to represent the tab pane
+// bUseCookie : Boolean Optional. Default is true. Used to determine whether to us
+// persistance using cookies or not
+//
+function WebFXTabPane( el, bUseCookie ) {
+ if ( !hasSupport() || el == null ) return;
+
+ this.element = el;
+ this.element.tabPane = this;
+ this.pages = [];
+ this.selectedIndex = null;
+ this.useCookie = bUseCookie != null ? bUseCookie : false;
+
+ // add class name tag to class name
+ this.element.className = this.classNameTag + " " + this.element.className;
+
+ // add tab row
+ this.tabRow = document.createElement( "div" );
+ this.tabRow.className = "tab-row";
+ el.insertBefore( this.tabRow, el.firstChild );
+
+ var tabIndex = 0;
+ if ( this.useCookie ) {
+ tabIndex = Number( WebFXTabPane.getCookie( "webfxtab_" + this.element.id ) );
+ if ( isNaN( tabIndex ) )
+ tabIndex = 0;
+ }
+
+ this.selectedIndex = tabIndex;
+
+ // loop through child nodes and add them
+ var cs = el.childNodes;
+ var n;
+ for (var i = 0; i < cs.length; i++) {
+ if (cs[i].nodeType == 1 && cs[i].className == "tab-page") {
+ this.addTabPage( cs[i] );
+ }
+ }
+}
+
+WebFXTabPane.prototype = {
+
+ classNameTag: "dynamic-tab-pane-control",
+
+ setSelectedIndex: function ( n ) {
+ if (this.selectedIndex != n) {
+ if (this.selectedIndex != null && this.pages[ this.selectedIndex ] != null )
+ this.pages[ this.selectedIndex ].hide();
+ this.selectedIndex = n;
+ this.pages[ this.selectedIndex ].show();
+
+ if ( this.useCookie )
+ WebFXTabPane.setCookie( "webfxtab_" + this.element.id, n ); // session cookie
+ }
+ },
+
+ getSelectedIndex: function () {
+ return this.selectedIndex;
+ },
+
+ addTabPage: function ( oElement ) {
+ if ( !hasSupport() ) return;
+
+ if ( oElement.tabPage == this ) // already added
+ return oElement.tabPage;
+
+ var n = this.pages.length;
+ var tp = this.pages[n] = new WebFXTabPage( oElement, this, n );
+ tp.tabPane = this;
+
+ // move the tab out of the box
+ this.tabRow.appendChild( tp.tab );
+
+ if ( n == this.selectedIndex )
+ tp.show();
+ else
+ tp.hide();
+
+ return tp;
+ }
+};
+
+// Cookie handling
+WebFXTabPane.setCookie = function ( sName, sValue, nDays ) {
+ var expires = "";
+ if ( nDays ) {
+ var d = new Date();
+ d.setTime( d.getTime() + nDays * 24 * 60 * 60 * 1000 );
+ expires = "; expires=" + d.toGMTString();
+ }
+
+ document.cookie = sName + "=" + sValue + expires + "; path=/";
+};
+
+WebFXTabPane.getCookie = function (sName) {
+ var re = new RegExp( "(\;|^)[^;]*(" + sName + ")\=([^;]*)(;|$)" );
+ var res = re.exec( document.cookie );
+ return res != null ? res[3] : null;
+};
+
+WebFXTabPane.removeCookie = function ( name ) {
+ setCookie( name, "", -1 );
+};
+
+
+
+
+
+
+
+
+///////////////////////////////////////////////////////////////////////////////////
+// The constructor for tab pages. This one should not be used.
+// Use WebFXTabPage.addTabPage instead
+//
+// el : HTMLElement The html element used to represent the tab pane
+// tabPane : WebFXTabPane The parent tab pane
+// nindex : Number The index of the page in the parent pane page array
+//
+function WebFXTabPage( el, tabPane, nIndex ) {
+ if ( !hasSupport() || el == null ) return;
+
+ this.element = el;
+ this.element.tabPage = this;
+ this.index = nIndex;
+
+ var cs = el.childNodes;
+ for (var i = 0; i < cs.length; i++) {
+ if (cs[i].nodeType == 1 && cs[i].className == "tab") {
+ this.tab = cs[i];
+ break;
+ }
+ }
+
+ // insert a tag around content to support keyboard navigation
+ var a = document.createElement( "A" );
+ a.href = "javascript:void 0;";
+ while ( this.tab.hasChildNodes() )
+ a.appendChild( this.tab.firstChild );
+ this.tab.appendChild( a );
+
+
+ anchor = '';
+ if ( document.URL.indexOf( '#' ) != -1 ) {
+ anchor = document.URL.substr( document.URL.indexOf( '#' ) + 1);
+ }
+ j = 0;
+ if ( anchor.length > 0 ) {
+ finalList = new Array();
+ listOfAnchors = el.getElementsByTagName('A');
+ for (i=0; i<listOfAnchors.length; i++) {
+ if (listOfAnchors[i].name.length) {
+ finalList[j++] = listOfAnchors[i].name;
+ }
+ }
+ for(i=0; i<finalList.length; i++) {
+ if ( anchor == finalList[i] ) {
+ if (tabPane.selectedIndex != nIndex) tabPane.pages[ tabPane.selectedIndex ].hide();
+ tabPane.selectedIndex = nIndex ;
+ }
+ }
+ }
+
+ // hook up events, using DOM0
+ var oThis = this;
+ this.tab.onclick = function () { oThis.select(); };
+ this.tab.onmouseover = function () { WebFXTabPage.tabOver( oThis ); };
+ this.tab.onmouseout = function () { WebFXTabPage.tabOut( oThis ); };
+}
+
+WebFXTabPage.prototype = {
+ show: function () {
+ var el = this.tab;
+ var s = el.className + " selected";
+ s = s.replace(/ +/g, " ");
+ el.className = s;
+
+ this.element.style.display = "block";
+ },
+
+ hide: function () {
+ var el = this.tab;
+ var s = el.className;
+ s = s.replace(/ selected/g, "");
+ el.className = s;
+
+ this.element.style.display = "none";
+ },
+
+ select: function () {
+ this.tabPane.setSelectedIndex( this.index );
+ }
+};
+
+WebFXTabPage.tabOver = function ( tabpage ) {
+ var el = tabpage.tab;
+ var s = el.className + " hover";
+ s = s.replace(/ +/g, " ");
+ el.className = s;
+};
+
+WebFXTabPage.tabOut = function ( tabpage ) {
+ var el = tabpage.tab;
+ var s = el.className;
+ s = s.replace(/ hover/g, "");
+ el.className = s;
+};
+
+
+// This function initializes all uninitialized tab panes and tab pages
+function setupAllTabs() {
+ if ( !hasSupport() ) return;
+
+ var all = document.getElementsByTagName( "*" );
+ var l = all.length;
+ var tabPaneRe = /tab\-pane/;
+ var tabPageRe = /tab\-page/;
+ var cn, el;
+ var parentTabPane;
+
+ for ( var i = 0; i < l; i++ ) {
+ el = all[i]
+ cn = el.className;
+
+ // no className
+ if ( cn == "" ) continue;
+
+ // uninitiated tab pane
+ if ( tabPaneRe.test( cn ) && !el.tabPane )
+ new WebFXTabPane( el );
+
+ // unitiated tab page wit a valid tab pane parent
+ else if ( tabPageRe.test( cn ) && !el.tabPage &&
+ tabPaneRe.test( el.parentNode.className ) ) {
+ el.parentNode.tabPane.addTabPage( el );
+ }
+ }
+}
+
+
+// initialization hook up
+
+// DOM2
+if ( typeof window.addEventListener != "undefined" )
+ window.addEventListener( "load", setupAllTabs, false );
+
+// IE
+else if ( typeof window.attachEvent != "undefined" )
+ window.attachEvent( "onload", setupAllTabs );
+
+else {
+ if ( window.onload != null ) {
+ var oldOnload = window.onload;
+ window.onload = function ( e ) {
+ oldOnload( e );
+ setupAllTabs();
+ };
+ }
+ else
+ window.onload = setupAllTabs;
+} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/lib/ua.js b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/lib/ua.js
new file mode 100755
index 00000000..c06fa313
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/lib/ua.js
@@ -0,0 +1,111 @@
+/*
+ua.js revision 0.200 2001-12-03
+
+Contributor(s): Bob Clary, Netscape Communications, Copyright 2001
+
+Netscape grants you a royalty free license to use, modify and
+distribute this software provided that this copyright notice
+appears on all copies. This software is provided "AS IS,"
+without a warranty of any kind.
+*/
+
+function xbDetectBrowser()
+{
+ var oldOnError = window.onerror;
+ var element = null;
+
+ window.onerror = null;
+
+ // work around bug in xpcdom Mozilla 0.9.1
+ window.saveNavigator = window.navigator;
+
+ navigator.OS = '';
+ navigator.version = parseFloat(navigator.appVersion);
+ navigator.org = '';
+ navigator.family = '';
+
+ var platform;
+ if (typeof(window.navigator.platform) != 'undefined')
+ {
+ platform = window.navigator.platform.toLowerCase();
+ if (platform.indexOf('win') != -1)
+ navigator.OS = 'win';
+ else if (platform.indexOf('mac') != -1)
+ navigator.OS = 'mac';
+ else if (platform.indexOf('unix') != -1 || platform.indexOf('linux') != -1 || platform.indexOf('sun') != -1)
+ navigator.OS = 'nix';
+ }
+
+ var i = 0;
+ var ua = window.navigator.userAgent.toLowerCase();
+ if (ua.indexOf('opera') != -1)
+ {
+ i = ua.indexOf('opera');
+ navigator.family = 'opera';
+ navigator.org = 'opera';
+ navigator.version = parseFloat('0' + ua.substr(i+6), 10);
+ }
+ else if ((i = ua.indexOf('msie')) != -1)
+ {
+ navigator.org = 'microsoft';
+ navigator.version = parseFloat('0' + ua.substr(i+5), 10);
+
+ if (navigator.version < 4)
+ navigator.family = 'ie3';
+ else
+ navigator.family = 'ie4'
+ }
+ else if (ua.indexOf('gecko') != -1)
+ {
+ navigator.family = 'gecko';
+ var rvStart = navigator.userAgent.indexOf('rv:') + 3;
+ var rvEnd = navigator.userAgent.indexOf(')', rvStart);
+ var rv = navigator.userAgent.substring(rvStart, rvEnd);
+ var decIndex = rv.indexOf('.');
+ if (decIndex != -1)
+ {
+ rv = rv.replace(/\./g, '')
+ rv = rv.substring(0, decIndex-1) + '.' + rv.substr(decIndex)
+ }
+ navigator.version = parseFloat(rv);
+
+ if (ua.indexOf('netscape') != -1)
+ navigator.org = 'netscape';
+ else if (ua.indexOf('compuserve') != -1)
+ navigator.org = 'compuserve';
+ else
+ navigator.org = 'mozilla';
+ }
+ else if ((ua.indexOf('mozilla') !=-1) && (ua.indexOf('spoofer')==-1) && (ua.indexOf('compatible') == -1) && (ua.indexOf('opera')==-1)&& (ua.indexOf('webtv')==-1) && (ua.indexOf('hotjava')==-1))
+ {
+ var is_major = parseFloat(navigator.appVersion);
+
+ if (is_major < 4)
+ navigator.version = is_major;
+ else
+ {
+ i = ua.lastIndexOf('/')
+ navigator.version = parseFloat('0' + ua.substr(i+1), 10);
+ }
+ navigator.org = 'netscape';
+ navigator.family = 'nn' + parseInt(navigator.appVersion);
+ }
+ else if ((i = ua.indexOf('aol')) != -1 )
+ {
+ // aol
+ navigator.family = 'aol';
+ navigator.org = 'aol';
+ navigator.version = parseFloat('0' + ua.substr(i+4), 10);
+ }
+ else if ((i = ua.indexOf('hotjava')) != -1 )
+ {
+ // hotjava
+ navigator.family = 'hotjava';
+ navigator.org = 'sun';
+ navigator.version = parseFloat(navigator.appVersion);
+ }
+
+ window.onerror = oldOnError;
+}
+
+xbDetectBrowser();
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/stylesheet.css b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/stylesheet.css
new file mode 100755
index 00000000..7b1662d2
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/media/stylesheet.css
@@ -0,0 +1,230 @@
+
+body { background: #FFFFFF; }
+body, table {
+ font-family: Verdana, Arial, Helvetica, sans-serif;
+ text-align: left;
+ font-size: 11px;
+}
+
+table.none td.btCell { background-color: #fff; vertical-align: top; }
+table.none tr.highlight td.btCell { background-color: #f5f5f5; vertical-align: top; }
+table.none th.btHead { background-color: #e5e5e5; vertical-align: top; }
+table.btHeader, th.btHeader {
+ background-color: #014f9d;
+ color: #fff;
+ text-align: left;
+ vertical-align: top;
+}
+table.btHeaderProminent, th.btHeaderProminent {
+ background-color: #9d0119;
+ color: #fff;
+ text-align: left;
+ vertical-align: top;
+}
+div.showHideIndent { margin-left: 14px; }
+td.left, th.left, th.syntaxLanguage { vertical-align: top; text-align: left; border-right: 1px solid #ceced8; border-bottom: solid 1px #ceced8; }
+th.noborder { border: none; }
+th.border { border: 1px solid #ceced8; }
+td.border { border-bottom: 1px solid #ceced8; }
+th.syntaxLanguage { font-size: 11px; line-height: 13px; vertical-align: top; }
+.faq, .property { color: #000090; }
+.method { color: #009000; }
+.event { color: #900000; }
+
+table.default th.syntaxLanguage { font-size: 0.7em; vertical-align: baseline; }
+.small { font-size: 85%; line-height: 120%; }
+
+a {
+ color: #000090;
+
+}
+
+div.maintutorial {
+ border-width: thin;
+ border-color: #0066ff;
+}
+
+.source, .src-code {
+ border-width: thin;
+ border-style: dashed;
+ border-color: #8899dd;
+ margin: 1em;
+ padding: 0.5em;
+ font-family: 'Courier New', Courier, monospace; font-weight: normal;
+}
+.src-line { font-family: 'Courier New', Courier, monospace; font-weight: normal; }
+
+.var-type {
+ font-style : italic;
+}
+
+.var-title {
+ margin-left : 20px;
+}
+
+.method-summary {
+ margin-left : 20px;
+}
+
+/*------------------------------------------------------------------------------
+ Show/Hide blocks
+------------------------------------------------------------------------------*/
+
+.shown { display: inline; }
+.hidden { display: none; }
+img.showHideImg, .showHideControl { cursor: hand; }
+img.showHideImg { margin-right: 3px; }
+
+.showHideActionText
+{
+ font-size: 0.7em;
+}
+
+.showHideActionTextContent
+{
+ font-weight: bold;
+}
+
+.showHideActionTextContentHover
+{
+ text-decoration: underline;
+ font-weight: bold;
+ background-color: #ceced8;
+}
+ol {
+ margin: 0.2em 0em 0.2em 24px;
+ padding: 0em;
+}
+ul li {
+ margin: 0.2em 0em 0.2em 0em; padding: 0em;
+ list-style-position: outside;
+ list-style-type: square;
+}
+span.li {
+ color: #000000;
+}
+ul {
+ color: #014fbe;
+ margin: 3px 0em 3px 16px;
+}
+p {
+ margin: 6px 0em 6px 0em;
+}
+h1 { margin: 1em 0em 1.2em 0em; font-size: 160%; line-height: 130%;}
+h2 { font-size: 125%; line-height: 120%;}
+h1, h2, h3, h4 {
+ padding: 0em;
+ margin: 1.5em 0em .25em 0em;
+ text-align: left;
+ font-weight: normal;
+}
+h3 { margin-top: 0.5em; font-size: 110%; }
+h4 { margin: 0.25em 0em .25em 0em;; font-size: 100%; }
+
+.Headline {
+ color: #000000;
+ font-family: Verdana,Arial,Helvetica,sans-serif;
+ font-size: 9pt;
+ font-weight: bold;
+ font-style: normal;
+/* margin-left : -1.5em;*/
+ text-align : left;
+ margin-top : 1.0em;
+ margin-bottom : 0.5em;
+}
+
+.HelpContent {
+ margin-left : 1.5em;
+}
+
+table.HelpTable {
+ border: 0px;
+ padding: 0px;
+ margin: 0px;
+}
+
+tr.HelpTable {
+}
+
+th.HelpTable {
+ border: 1px dotted;
+ background-color: #F0F0F0;
+ margin: 1px;
+ padding: 5px;
+}
+
+td.HelpTable {
+ border: 1px dotted;
+ background-color: #F9F9F9;
+ margin: 1px;
+ padding: 5px;
+}
+
+pre.depreciated {
+ font-family: Verdana,Arial,Helvetica,sans-serif;
+ font-size: 9pt;
+ border: 1px dotted #909090;
+ background-color: #F0F0F0;
+ margin-left: 10px;
+ margin-right: 10px;
+ margin-top: 10px;
+ margin-bottom: 10px;
+ padding: 5px;
+}
+
+/*------------------------------------------------------------------------------
+ webfx-tree
+------------------------------------------------------------------------------*/
+.webfx-tree-container {
+ margin: 0px;
+ padding: 0px;
+ font: icon;
+ white-space: nowrap;
+}
+
+.webfx-tree-item {
+ padding: 0px;
+ margin: 0px;
+ font: icon;
+ color: black;
+ white-space: nowrap;
+}
+
+.webfx-tree-item a, .webfx-tree-item a:active, .webfx-tree-item a:hover {
+ margin-left: 3px;
+ padding: 1px 2px 1px 2px;
+}
+
+.webfx-tree-item a {
+ color: black;
+ text-decoration: none;
+}
+
+.webfx-tree-item a:hover {
+ color: blue;
+ text-decoration: underline;
+}
+
+.webfx-tree-item a:active {
+ background: highlight;
+ color: highlighttext;
+ text-decoration: none;
+}
+
+.webfx-tree-item img {
+ vertical-align: middle;
+ border: 0px;
+}
+
+.webfx-tree-icon {
+ width: 16px;
+ height: 16px;
+}
+
+
+.tute-tag { color: #009999 }
+.tute-attribute-name { color: #0000FF }
+.tute-attribute-value { color: #0099FF }
+.tute-entity { font-weight: bold; }
+.tute-comment { font-style: italic }
+.tute-inline-tag { color: #636311; font-weight: bold }
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/method.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/method.tpl
new file mode 100755
index 00000000..4c96f2f2
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/method.tpl
@@ -0,0 +1,126 @@
+<h2 class="tab">Method Detail</h2>
+<!-- ============ METHOD DETAIL =========== -->
+<strong>Summary:</strong><br />
+<div class="method-summary">
+{section name=methods loop=$methods}
+{if $methods[methods].static}
+ <div class="method-definition">
+ static {if $methods[methods].function_return}
+ <span class="method-result">{$methods[methods].function_return}</span>
+ {/if}
+ <a href="#{$methods[methods].method_dest}" title="details" class="method-name">{if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}</a>
+ {if count($methods[methods].ifunction_call.params)}
+ ({section name=params loop=$methods[methods].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$methods[methods].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$methods[methods].ifunction_call.params[params].name}</span>{if $methods[methods].ifunction_call.params[params].hasdefault} = <span class="var-default">{$methods[methods].ifunction_call.params[params].default}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+{/if}
+{/section}
+{section name=methods loop=$methods}
+{if !$methods[methods].static}
+ <div class="method-definition">
+ {if $methods[methods].function_return}
+ <span class="method-result">{$methods[methods].function_return}</span>
+ {/if}
+ <a href="#{$methods[methods].method_dest}" title="details" class="method-name">{if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}</a>
+ {if count($methods[methods].ifunction_call.params)}
+ ({section name=params loop=$methods[methods].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$methods[methods].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$methods[methods].ifunction_call.params[params].name}</span>{if $methods[methods].ifunction_call.params[params].hasdefault} = <span class="var-default">{$methods[methods].ifunction_call.params[params].default}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+{/if}
+{/section}
+</div>
+<hr />
+<A NAME='method_detail'></A>
+
+
+{section name=methods loop=$methods}
+{if $methods[methods].static}
+<a name="{$methods[methods].method_dest}" id="{$methods[methods].method_dest}"><!-- --></a>
+<div style="background='{cycle values="#ffffff,#eeeeee"}'"><h4>
+<img src="{$subdir}media/images/PublicMethod.gif" border="0" /> <strong class="method">Static Method {$methods[methods].function_name}</strong> (line <span class="linenumber">{if $methods[methods].slink}{$methods[methods].slink}{else}{$methods[methods].line_number}{/if}</span>)
+ </h4>
+<h4><i>{$methods[methods].function_return}</i> <strong>{if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}(
+{if count($methods[methods].ifunction_call.params)}
+{section name=params loop=$methods[methods].ifunction_call.params}
+{if $smarty.section.params.iteration != 1}, {/if}
+{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}{$methods[methods].ifunction_call.params[params].type}
+{$methods[methods].ifunction_call.params[params].name}{if $methods[methods].ifunction_call.params[params].hasdefault} = {$methods[methods].ifunction_call.params[params].default}]{/if}
+{/section}
+{/if})</strong></h4>
+{if $methods[methods].descmethod}
+ <p>Overridden in child classes as:<br />
+ {section name=dm loop=$methods[methods].descmethod}
+ <dl>
+ <dt>{$methods[methods].descmethod[dm].link}</dt>
+ <dd>{$methods[methods].descmethod[dm].sdesc}</dd>
+ </dl>
+ {/section}</p>
+{/if}
+
+{if $methods[methods].method_overrides}
+<p><strong>Overrides :</strong> {$methods[methods].method_overrides.link} {$methods[methods].method_overrides.sdesc|default:"parent method not documented"}</p>
+{/if}
+ {if $methods[methods].method_implements}
+ <hr class="separator" />
+ <div class="notes">Implementation of:</div>
+ {section name=imp loop=$methods[methods].method_implements}
+ <dl>
+ <dt>{$methods[methods].method_implements[imp].link}</dt>
+ {if $methods[methods].method_implements[imp].sdesc}
+ <dd>{$methods[methods].method_implements[imp].sdesc}</dd>
+ {/if}
+ </dl>
+ {/section}
+ {/if}
+{include file="docblock.tpl" sdesc=$methods[methods].sdesc desc=$methods[methods].desc tags=$methods[methods].tags params=$methods[methods].params function=true}
+</div>
+{/if}
+{/section}
+{section name=methods loop=$methods}
+{if !$methods[methods].static}
+<a name="{$methods[methods].method_dest}" id="{$methods[methods].method_dest}"><!-- --></a>
+<div style="background='{cycle values="#ffffff,#eeeeee"}'"><h4>
+<img src="{$subdir}media/images/{if $methods[methods].ifunction_call.constructor}Constructor{elseif $methods[methods].ifunction_call.destructor}Destructor{else}PublicMethod{/if}.gif" border="0" /> <strong class="method">{if $methods[methods].ifunction_call.constructor}Constructor {elseif $methods[methods].ifunction_call.destructor}Destructor {else}Method {/if}{$methods[methods].function_name}</strong> (line <span class="linenumber">{if $methods[methods].slink}{$methods[methods].slink}{else}{$methods[methods].line_number}{/if}</span>)
+ </h4>
+<h4><i>{$methods[methods].function_return}</i> <strong>{if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}(
+{if count($methods[methods].ifunction_call.params)}
+{section name=params loop=$methods[methods].ifunction_call.params}
+{if $smarty.section.params.iteration != 1}, {/if}
+{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}{$methods[methods].ifunction_call.params[params].type}
+{$methods[methods].ifunction_call.params[params].name}{if $methods[methods].ifunction_call.params[params].hasdefault} = {$methods[methods].ifunction_call.params[params].default}]{/if}
+{/section}
+{/if})</strong></h4>
+{if $methods[methods].descmethod}
+ <p>Overridden in child classes as:<br />
+ {section name=dm loop=$methods[methods].descmethod}
+ <dl>
+ <dt>{$methods[methods].descmethod[dm].link}</dt>
+ <dd>{$methods[methods].descmethod[dm].sdesc}</dd>
+ </dl>
+ {/section}</p>
+{/if}
+
+{if $methods[methods].method_overrides}
+<p><strong>Overrides :</strong> {$methods[methods].method_overrides.link} {$methods[methods].method_overrides.sdesc|default:"parent method not documented"}</p>
+{/if}
+ {if $methods[methods].method_implements}
+ <hr class="separator" />
+ <div class="notes">Implementation of:</div>
+ {section name=imp loop=$methods[methods].method_implements}
+ <dl>
+ <dt>{$methods[methods].method_implements[imp].link}</dt>
+ {if $methods[methods].method_implements[imp].sdesc}
+ <dd>{$methods[methods].method_implements[imp].sdesc}</dd>
+ {/if}
+ </dl>
+ {/section}
+ {/if}
+{include file="docblock.tpl" sdesc=$methods[methods].sdesc desc=$methods[methods].desc tags=$methods[methods].tags params=$methods[methods].params function=true}
+</div>
+{/if}
+{/section}
+<script type="text/javascript">tp1.addTabPage( document.getElementById( "tabPage2" ) );</script>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/page.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/page.tpl
new file mode 100755
index 00000000..5a9da0e4
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/page.tpl
@@ -0,0 +1,53 @@
+{include file="header.tpl" top3=true}
+<h2>File: {$source_location}</h2>
+<div class="tab-pane" id="tabPane1">
+<script type="text/javascript">
+tp1 = new WebFXTabPane( document.getElementById( "tabPane1" ) );
+</script>
+
+<div class="tab-page" id="Description">
+<h2 class="tab">Description</h2>
+{if $tutorial}
+<div class="maintutorial">Main Tutorial: {$tutorial}</div>
+{/if}
+{include file="docblock.tpl" desc=$desc sdesc=$sdesc tags=$tags}
+<!-- =========== Used Classes =========== -->
+<A NAME='classes_summary'><!-- --></A>
+<h3>Classes defined in this file</h3>
+
+<TABLE CELLPADDING='3' CELLSPACING='0' WIDTH='100%' CLASS="border">
+ <THEAD>
+ <TR><TD STYLE="width:20%"><h4>CLASS NAME</h4></TD><TD STYLE="width: 80%"><h4>DESCRIPTION</h4></TD></TR>
+ </THEAD>
+ <TBODY>
+ {section name=classes loop=$classes}
+ <TR BGCOLOR='white' CLASS='TableRowColor'>
+ <TD>{$classes[classes].link}</TD>
+ <TD>{$classes[classes].sdesc}</TD>
+ </TR>
+ {/section}
+ </TBODY>
+</TABLE>
+</div>
+<script type="text/javascript">tp1.addTabPage( document.getElementById( "Description" ) );</script>
+<div class="tab-page" id="tabPage1">
+{include file="include.tpl"}
+</div>
+<div class="tab-page" id="tabPage2">
+{include file="global.tpl"}
+</div>
+<div class="tab-page" id="tabPage3">
+{include file="define.tpl"}
+</div>
+<div class="tab-page" id="tabPage4">
+{include file="function.tpl"}
+</div>
+</div>
+<script type="text/javascript">
+//<![CDATA[
+
+setupAllTabs();
+
+//]]>
+</script>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/pkgelementindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/pkgelementindex.tpl
new file mode 100755
index 00000000..c29ea982
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/pkgelementindex.tpl
@@ -0,0 +1,17 @@
+{include file="header.tpl"}
+<a name="top"></a>
+<h2>Element Index, Package {$package}</h2>
+{if count($packageindex) > 1}
+<strong>Indexes by package:</strong><br>
+{/if}
+<ul>
+{section name=p loop=$packageindex}
+{if $packageindex[p].title != $package}
+<li><a href="elementindex_{$packageindex[p].title}.html">{$packageindex[p].title}</a></li>
+{/if}
+{/section}
+</ul>
+<a href="elementindex.html"><strong>Index of all elements</strong></a>
+<br />
+{include file="basicindex.tpl" indexname=elementindex_$package}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/ric.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/ric.tpl
new file mode 100755
index 00000000..ad792475
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/ric.tpl
@@ -0,0 +1,6 @@
+{include file="header.tpl"}
+<div align="center"><h1>{$name}</h1></div>
+<pre>
+{$contents|htmlentities}
+</pre>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/todolist.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/todolist.tpl
new file mode 100755
index 00000000..f929ccdb
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/todolist.tpl
@@ -0,0 +1,14 @@
+{include file="header.tpl" title="Todo List"}
+<div align="center"><h1>Todo List</h1></div>
+{foreach from=$todos key=todopackage item=todo}
+<h2>{$todopackage}</h2>
+{section name=todo loop=$todo}
+<h3>{$todo[todo].link}</h3>
+<ul>
+{section name=t loop=$todo[todo].todos}
+ <li>{$todo[todo].todos[t]}</li>
+{/section}
+</ul>
+{/section}
+{/foreach}
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/top_frame.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/top_frame.tpl
new file mode 100755
index 00000000..806283f4
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/top_frame.tpl
@@ -0,0 +1,16 @@
+{include file="header.tpl" top1=true}
+{if count($ric) >= 1}
+<ul>
+{section name=ric loop=$ric}
+ <li><a href="{$ric[ric].file}" target="right">{$ric[ric].name}</a></li>
+{/section}
+</ul>
+{/if}
+<h1>Packages</h1>
+<ul>
+{section name=p loop=$packages}
+ <li><a class="package" href='{$packages[p].link}' target='left_bottom'>{$packages[p].title}</a></li>
+{/section}
+</ul>
+</body>
+</html> \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/tutorial.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/tutorial.tpl
new file mode 100755
index 00000000..a943522c
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/tutorial.tpl
@@ -0,0 +1,32 @@
+{include file="header.tpl" title=$title}
+{if $nav}
+<table width="100%" border="0" cellpadding="0" cellspacing="0">
+<tr>
+<td width="10%" align="left" valign="bottom">{if $prev}<a href=
+"{$prev}">{/if}Prev{if $prev}</a>{/if}</td>
+<td width="80%" align="center" valign="bottom"></td>
+<td width="10%" align="right" valign="bottom">{if $next}<a href=
+"{$next}">{/if}Next{if $next}</a>{/if}</td>
+</tr>
+</table>
+{/if}
+{$contents}
+{if $nav}
+<table width="100%" border="0" cellpadding="0" cellspacing="0">
+<tr>
+<td width="33%" align="left" valign="top">{if $prev}<a href="{$prev}">{/if}
+Prev{if $prev}</a>{/if}</td>
+<td width="34%" align="center" valign="top">{if $up}<a href=
+"{$up}">Up</a>{else}&nbsp;{/if}</td>
+<td width="33%" align="right" valign="top">{if $next}<a href=
+"{$next}">{/if}Next{if $next}</a>{/if}</td>
+</tr>
+
+<tr>
+<td width="33%" align="left" valign="top">{if $prevtitle}{$prevtitle}{/if}</td>
+<td width="34%" align="center" valign="top">{if $uptitle}{$uptitle}{/if}</td>
+<td width="33%" align="right" valign="top">{if $nexttitle}{$nexttitle}{/if}</td>
+</tr>
+</table>
+{/if}
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/tutorial_toc.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/tutorial_toc.tpl
new file mode 100755
index 00000000..3d22d403
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/tutorial_toc.tpl
@@ -0,0 +1,29 @@
+{if count($toc)}
+<h1 align="center">Table of Contents</h1>
+<ul>
+{section name=toc loop=$toc}
+{if $toc[toc].tagname == 'refsect1'}
+{assign var="context" value="refsect1"}
+{$toc[toc].link}<br />
+{/if}
+{if $toc[toc].tagname == 'refsect2'}
+{assign var="context" value="refsect2"}
+&nbsp;&nbsp;&nbsp;{$toc[toc].link}<br />
+{/if}
+{if $toc[toc].tagname == 'refsect3'}
+{assign var="context" value="refsect3"}
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{$toc[toc].link}<br />
+{/if}
+{if $toc[toc].tagname == 'table'}
+{if $context == 'refsect2'}&nbsp;&nbsp;&nbsp;{/if}
+{if $context == 'refsect3'}&nbsp;&nbsp;&nbsp;{/if}
+Table: {$toc[toc].link}
+{/if}
+{if $toc[toc].tagname == 'example'}
+{if $context == 'refsect2'}&nbsp;&nbsp;&nbsp;{/if}
+{if $context == 'refsect3'}&nbsp;&nbsp;&nbsp;{/if}
+Table: {$toc[toc].link}
+{/if}
+{/section}
+</ul>
+{/if} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/tutorial_tree.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/tutorial_tree.tpl
new file mode 100755
index 00000000..23459a96
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/tutorial_tree.tpl
@@ -0,0 +1,13 @@
+ var {$name}tree = new WebFXTree{if $subtree}Item{/if}('{$main.title|strip_tags}','{$main.link}');
+{if !$subtree} {$name}tree.setBehavior('classic');
+{/if} {$name}tree.openIcon = 'media/images/msgInformation.gif';
+ {$name}tree.icon = 'media/images/{if $subtree}msgInformation.gif{else}FolderClosed.gif{/if}';
+{if $kids}
+{$kids}
+
+{/if}{if $subtree} {$parent}tree.add({$name}tree);
+{else}
+ document.write({$name}tree);
+{/if}
+
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/var.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/var.tpl
new file mode 100755
index 00000000..7b293351
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phpedit/templates/var.tpl
@@ -0,0 +1,49 @@
+
+<h2 class="tab">Class Variables</h2>
+<!-- ============ VARIABLE DETAIL =========== -->
+<strong>Summary:</strong><br />
+{section name=vars loop=$vars}
+{if $vars[vars].static}
+<div class="var-title">
+ static <span class="var-type">{$vars[vars].var_type}</span>
+ <a href="#{$vars[vars].var_dest}" title="details" class="property"><strong>{$vars[vars].var_name}</strong></a>
+</div>
+{/if}
+{/section}
+{section name=vars loop=$vars}
+{if !$vars[vars].static}
+<div class="var-title">
+ <span class="var-type">{$vars[vars].var_type}</span>
+ <a href="#{$vars[vars].var_dest}" title="details" class="property"><strong>{$vars[vars].var_name}</strong></a>
+</div>
+{/if}
+{/section}
+<hr />
+{section name=vars loop=$vars}
+{if $vars[vars].static}
+<a name="{$vars[vars].var_dest}" id="{$vars[vars].var_dest}"><!-- --></A>
+<div style="background='{cycle values="#ffffff,#eeeeee"}'">
+<h4>
+<img src="{$subdir}media/images/PublicProperty.gif" border="0" /> <strong class="property">static {$vars[vars].var_name}{if $vars[vars].var_default} = {$vars[vars].var_default|replace:"\n":"<br />"}{/if}</strong> (line <span class="linenumber">{if $vars[vars].slink}{$vars[vars].slink}{else}{$vars[vars].line_number}{/if}</span>)
+ </h4>
+<h4>Data type : {$vars[vars].var_type}</h4>
+{if $vars[vars].var_overrides}<p><strong>Overrides:</strong> {$vars[vars].var_overrides}<br></p>{/if}
+{include file="docblock.tpl" sdesc=$vars[vars].sdesc desc=$vars[vars].desc tags=$vars[vars].tags}
+</div>
+{/if}
+{/section}
+{section name=vars loop=$vars}
+{if !$vars[vars].static}
+<a name="{$vars[vars].var_dest}" id="{$vars[vars].var_dest}"><!-- --></A>
+<div style="background='{cycle values="#ffffff,#eeeeee"}'">
+<h4>
+<img src="{$subdir}media/images/PublicProperty.gif" border="0" /> <strong class="property">{$vars[vars].var_name}{if $vars[vars].var_default} = {$vars[vars].var_default|replace:"\n":"<br />"}{/if}</strong> (line <span class="linenumber">{if $vars[vars].slink}{$vars[vars].slink}{else}{$vars[vars].line_number}{/if}</span>)
+ </h4>
+<h4>Data type : {$vars[vars].var_type}</h4>
+{if $vars[vars].var_overrides}<p><strong>Overrides:</strong> {$vars[vars].var_overrides}<br></p>{/if}
+{include file="docblock.tpl" sdesc=$vars[vars].sdesc desc=$vars[vars].desc tags=$vars[vars].tags}
+</div>
+{/if}
+{/section}
+<script type="text/javascript">tp1.addTabPage( document.getElementById( "tabPage1" ) );</script>
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/options.ini b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/options.ini
new file mode 100755
index 00000000..084809be
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/options.ini
@@ -0,0 +1,577 @@
+preservedocbooktags = false
+
+;; used to highlight the {@source} inline tag, @filesource tag, and @example tag
+[highlightSourceTokens]
+;; format:
+;; T_CONSTANTNAME = open
+;; /T_CONSTANTNAME = close
+
+T_INCLUDE = <span class="src-inc">
+/T_INCLUDE = </span>
+T_INCLUDE_ONCE = <span class="src-inc">
+/T_INCLUDE_ONCE = </span>
+T_REQUIRE_ONCE = <span class="src-inc">
+/T_REQUIRE_ONCE = </span>
+T_REQUIRE_ONCE = <span class="src-inc">
+/T_REQUIRE_ONCE = </span>
+
+T_CONSTANT_ENCAPSED_STRING = <span class="src-str">
+/T_CONSTANT_ENCAPSED_STRING = </span>
+T_STRING_VARNAME = <span class="src-str">
+/T_STRING_VARNAME = </span>
+
+T_STRING = <span class="src-id">
+/T_STRING = </span>
+
+T_DNUMBER = <span class="src-num">
+/T_DNUMBER = </span>
+T_LNUMBER = <span class="src-num">
+/T_LNUMBER = </span>
+
+T_VARIABLE = <span class="src-var">
+/T_VARIABLE = </span>
+
+T_COMMENT = <span class="src-comm">
+/T_COMMENT = </span>
+T_ML_COMMENT = <span class="src-comm">
+/T_ML_COMMENT = </span>
+
+T_OBJECT_OPERATOR = <span class="src-sym">
+/T_OBJECT_OPERATOR = </span>
+
+T_ABSTRACT = <span class="src-key">
+/T_ABSTRACT = </span>
+T_CLONE = <span class="src-key">
+/T_CLONE = </span>
+T_HALT_COMPILER = <span class="src-key">
+/T_HALT_COMPILER = </span>
+T_ARRAY = <span class="src-key">
+/T_ARRAY = </span>
+T_AS = <span class="src-key">
+/T_AS = </span>
+T_BREAK = <span class="src-key">
+/T_BREAK = </span>
+T_CLASS = <span class="src-key">
+/T_CLASS = </span>
+T_CASE = <span class="src-key">
+/T_CASE = </span>
+T_CONST = <span class="src-key">
+/T_CONST = </span>
+T_CONTINUE = <span class="src-key">
+/T_CONTINUE = </span>
+T_DECLARE = <span class="src-key">
+/T_DECLARE = </span>
+T_DEFAULT = <span class="src-key">
+/T_DEFAULT = </span>
+T_ELSE = <span class="src-key">
+/T_ELSE = </span>
+T_ELSEIF = <span class="src-key">
+/T_ELSEIF = </span>
+T_EMPTY = <span class="src-key">
+/T_EMPTY = </span>
+T_ENDDECLARE = <span class="src-key">
+/T_ENDDECLARE = </span>
+T_ENDFOR = <span class="src-key">
+/T_ENDFOR = </span>
+T_ENDSWITCH = <span class="src-key">
+/T_ENDSWITCH = </span>
+T_ENDFOREACH = <span class="src-key">
+/T_ENDFOREACH = </span>
+T_ENDIF = <span class="src-key">
+/T_ENDIF = </span>
+T_ENDWHILE = <span class="src-key">
+/T_ENDWHILE = </span>
+T_EXIT = <span class="src-key">
+/T_EXIT = </span>
+T_EXTENDS = <span class="src-key">
+/T_EXTENDS = </span>
+T_FINAL = <span class="src-key">
+/T_FINAL = </span>
+T_FOR = <span class="src-key">
+/T_FOR = </span>
+T_FOREACH = <span class="src-key">
+/T_FOREACH = </span>
+T_FUNCTION = <span class="src-key">
+/T_FUNCTION = </span>
+T_GLOBAL = <span class="src-key">
+/T_GLOBAL = </span>
+T_IF = <span class="src-key">
+/T_IF = </span>
+T_IMPLEMENTS = <span class="src-key">
+/T_IMPLEMENTS = </span>
+T_INTERFACE = <span class="src-key">
+/T_INTERFACE = </span>
+T_LOGICAL_AND = <span class="src-key">
+/T_LOGICAL_AND = </span>
+T_LOGICAL_OR = <span class="src-key">
+/T_LOGICAL_OR = </span>
+T_LOGICAL_XOR = <span class="src-key">
+/T_LOGICAL_XOR = </span>
+T_NEW = <span class="src-key">
+/T_NEW = </span>
+T_PRIVATE = <span class="src-key">
+/T_PRIVATE = </span>
+T_PROTECTED = <span class="src-key">
+/T_PROTECTED = </span>
+T_PUBLIC = <span class="src-key">
+/T_PUBLIC = </span>
+T_RETURN = <span class="src-key">
+/T_RETURN = </span>
+T_STATIC = <span class="src-key">
+/T_STATIC = </span>
+T_SWITCH = <span class="src-key">
+/T_SWITCH = </span>
+T_VAR = <span class="src-key">
+/T_VAR = </span>
+T_WHILE = <span class="src-key">
+/T_WHILE = </span>
+
+T_DOUBLE_COLON = <span class="src-sym">
+/T_DOUBLE_COLON = </span>
+
+T_OPEN_TAG = <span class="src-php">
+/T_OPEN_TAG = </span>
+T_OPEN_TAG_WITH_ECHO = <span class="src-php">
+/T_OPEN_TAG_WITH_ECHO = </span>
+T_CLOSE_TAG = <span class="src-php">
+/T_CLOSE_TAG = </span>
+
+
+[highlightSource]
+;; this is for highlighting things that aren't tokens like "&"
+;; format:
+;; word = open
+;; /word = close
+@ = <span class="src-sym">
+/@ = </span>
+& = <span class="src-sym">
+/& = </span>
+[ = <span class="src-sym">
+/[ = </span>
+] = <span class="src-sym">
+/] = </span>
+! = <span class="src-sym">
+/! = </span>
+";" = <span class="src-sym">
+/; = </span>
+( = <span class="src-sym">
+/( = </span>
+) = <span class="src-sym">
+/) = </span>
+, = <span class="src-sym">
+/, = </span>
+{ = <span class="src-sym">
+/{ = </span>
+} = <span class="src-sym">
+/} = </span>
+""" = <span class="src-str">
+/" = </span>
+
+[highlightDocBlockSourceTokens]
+;; this is for docblock tokens, using by phpDocumentor_HighlightParser
+;; tagphptype is for "string" in @param string description, for example
+docblock = <span class="src-doc">
+/docblock = </span>
+tagphptype = <span class="src-doc-type">
+/tagphptype = </span>
+tagvarname = <span class="src-doc-var">
+/tagvarname = </span>
+coretag = <span class="src-doc-coretag">
+/coretag = </span>
+tag = <span class="src-doc-tag">
+/tag = </span>
+inlinetag = <span class="src-doc-inlinetag">
+/inlinetag = </span>
+internal = <span class="src-doc-internal">
+/internal = </span>
+closetemplate = <span class="src-doc-close-template">
+/closetemplate = </span>
+docblocktemplate = <span class="src-doc-template">
+/docblocktemplate = </span>
+
+[highlightTutorialSourceTokens]
+;; this is for XML DocBook-based tutorials, highlighted by phpDocumentor_TutorialHighlightParser
+;; <tag>
+opentag = <span class="tute-tag">
+/opentag = </span>
+;; </tag>
+closetag = <span class="tute-tag">
+/closetag = </span>
+;; <tag attribute="value">
+attribute = <span class="tute-attribute-name">
+/attribute = </span>
+;; <tag attribute="value">
+attributevalue = <span class="tute-attribute-value">
+/attributevalue = </span>
+;; &entity;
+entity = <span class="tute-entity">
+/entity = </span>
+;; <!-- comment -->
+comment = <span class="tute-comment">
+/comment = </span>
+;; {@inline tag}
+itag = <span class="tute-inline-tag">
+/itag = </span>
+
+;; used for translation of html in DocBlocks
+[desctranslate]
+ul = <ul>
+/ul = </ul>
+ol = <ol>
+/ol = </ol>
+li = <li>
+/li = </li>
+code =
+/code =
+var = <var>
+/var = </var>
+samp = <samp>
+/samp = </samp>
+kbd = <kbd>
+/kbd = </kbd>
+pre = <pre>
+/pre = </pre>
+p = <p>
+/p = </p>
+b = <strong>
+/b = </strong>
+i = <em>
+/i = </em>
+br = <br />
+
+[ppage]
+;; this is the DocBook package page translation section. All DocBook tags
+;; that have a corresponding html tag must be listed here. Entities should
+;; also be listed here
+;;
+;; examples:
+;; 1)
+;; tagname = newtagname
+;;
+;; This is the simplest case, where all attributes will be added into the
+;; starting tag and the ending tag will be html/xml style </tranlatedtagname>
+;; <tagname></tagname> becomes <newtagname></newtagname> and
+;; <tagname attr="value"></tagname> becomes
+;; <newtagname attr="value"></newtagname>
+;;
+;; 2)
+;; tagname = newtagname
+;; tagname->attr = newattrname
+;;
+;; in this case, everything will be like the first case, except tags like:
+;; <tagname attr="value"></tagname> will become
+;; <newtagname newattrname="value"></newtagname>
+;;
+;; 3)
+;; tagname = newtagname
+;; tagname->attr = newattrname
+;; tagname->attr+value = newvalue
+;;
+;; in this case, the value is also translated to another. This can be useful
+;; for instances such as focus="middle" changing to align="center" or something
+;; of that nature.
+;; <tagname attr="value"></tagname> will become
+;; <newtagname newattrname="newvalue"></newtagname>
+;;
+;; 4)
+;; tagname = newtagname
+;; tagname->attr1 = newattrname
+;; tagname->attr2 = newattrname
+;; tagname->attr1+value|attr2+value = newvalue
+;;
+;; in this case, two attributes combine to make one new attribute, and the combined
+;; value is translated into a new value
+;; <tagname attr1="value1" attr2="value2"></tagname> will become
+;; <newtagname newattrname="newvalue"></newtagname>
+;;
+;; 5)
+;; tagname = newtagname
+;; tagname!attr = dummy
+;;
+;; here, the attribute will be ignored. dummy is not used and may be any value
+;; <tagname attr="value"></tagname> will become
+;; <newtagname></newtagname>
+;;
+;; 6)
+;; tagname = newtagname
+;; tagname! = dummy
+;;
+;; here, all attributes will be ignored. dummy is not used and may be any value
+;; <tagname attr1="value" attr2="foo"></tagname> will become
+;; <newtagname></newtagname>
+;;
+;; 7)
+;; tagname = newtagname
+;; tagname/ = 1
+;;
+;; here, the tag will be translated as a single tag with no closing tag, and all
+;; attributes
+;; <tagname attr="val">{text text}</tagname> will become
+;; <newtagname attr="val" />
+;;
+;; 8)
+;; tagname = <starttaginfo />
+;; /tagname = closetagtext
+;;
+;; in this case, the text <starttaginfo> will be inserted exactly as entered for
+;; <tagname> and closetagtext for </tagname>
+;; <tagname attr="val"></tagname> will become
+;; <starttaginfo />closetagtext
+;;
+;; 9)
+;; $attr$my_attribute = newattrname
+;;
+;; tagname = newtagname
+;;
+;; in this case, all occurences of my_attribute in any tag will be changed to
+;; newattrname. This is useful for changing things like role="php" to
+;; class="php," for example. Note that the text "$attr$" MUST be on the line
+;; start for phpDocumentor to recognize it.
+;;
+;; 10)
+;; &entity; = translation text
+;; &quot; = &quot;
+;; &quot; = """
+;; &lt; = <
+;;
+;; Use this to control translation of entities to their appropriate values
+
+&nbsp; = &nbsp;
+&quot; = &quot;
+&rdquo; = &rdquo;
+&ldquo; = &ldquo;
+&amp; = &amp;
+&lt; = &lt;
+&gt; = &gt;
+&copy; = &copy;
+
+
+$attr$role = class
+
+abbrev = abbr
+
+blockquote = blockquote
+
+arg = span
+arg->choice = class
+
+author = <span class="author">
+/author = </span>
+author! = 0
+
+authorblurb = <div class="author-blurb">
+/authorblurb = </div>
+
+authorgroup = <div class="authors"><h2 class="title">Authors</h2>
+/authorgroup = </div>
+authorgroup! = 0
+
+caution = <span class="warning">
+/caution = </span>
+caution! = 0
+
+cmdsynopsis = <div class="cmd-synopsis">
+/cmdsynopsis = </div>
+
+command = <span class="cmd-title">
+/command = </span>
+
+copyright = <div class="notes">
+/copyright = </div>
+
+emphasis = em
+
+example = <div class="src-code">
+/example = </div>
+example! = 0
+
+function =
+/function = ()
+
+formalpara = p
+
+graphic = img
+graphic->fileref = src
+graphic/ =
+
+important = strong
+
+informalequation = blockquote
+
+informalexample = div
+
+inlineequation = em
+
+itemizedlist = ul
+
+listitem = li
+
+literal = code
+
+literallayout = span
+
+option = " "
+/option =
+
+orderedlist = ol
+
+para = p
+
+programlisting = <div class="src-code">
+/programlisting = </div>
+programlisting! = 0
+
+refentry = div
+
+refnamediv = <div class="ref-title-box">
+/refnamediv = </div>
+refnamediv! = 0
+
+refname = <h1 class="ref-title">
+/refname = </h1>
+
+refpurpose = <h2 class="ref-purpose">
+/refpurpose = </h2>
+
+refsynopsisdiv = <div class="ref-synopsis">
+/refsynopsisdiv = </div>
+refsynopsisdiv! = 0
+
+refsect1 = span
+
+refsect2 = span
+
+refsect3 =
+/refsect3 = <br />
+
+releaseinfo = <div class="release-info">(
+/releaseinfo = )</div>
+
+simpara =
+/simpara = <br />
+simpara! = 0
+
+subscript = sub
+
+superscript = super
+
+table = table
+
+table->colsep = rules
+table->rowsep = rules
+table->colsep+1|rowsep+1 =all
+table->colsep+1|rowsep+0 =cols
+table->colsep+0|rowsep+1 =rows
+
+table->frame =frame
+table->frame+all =border
+table->frame+none =void
+table->frame+sides =vsides
+table->frame+top =above
+table->frame+topbot =hsides
+
+thead = thead
+
+tfoot = tfoot
+
+tbody = tbody
+
+colspec = col
+
+tgroup = colgroup
+tgroup/ = 1
+tgroup->cols = span
+
+row = tr
+
+entry = td
+entry->morerows = colspan
+entry->morerows+1 =2
+entry->morerows+2 =3
+entry->morerows+3 =4
+entry->morerows+4 =5
+entry->morerows+5 =6
+entry->morerows+6 =7
+entry->morerows+7 =8
+entry->morerows+8 =9
+entry->morerows+9 =10
+entry->morerows+10 =11
+;; add more if you need more colspans
+
+warning = <span class="warning">
+/warning = </span>
+warning! = 0
+
+;; now begins the attributes that should be tags in cdata
+[$attr$id]
+open = a
+;close = /a
+cdata! = true
+quotevalues = true
+separator = "="
+;separateall = true
+$id = name
+
+;; now begins the sections that deal with <title>
+[refsynopsisdiv_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h1 class="title">
+close = </h1>
+
+[refsect1_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h2 class="title">
+close = </h2>
+
+[refsect2_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h3 class="title">
+close = </h3>
+
+[refsect3_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <h4 class="title">
+close = </h4>
+
+[para_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <div class="title">
+close = </div>
+
+[formalpara_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = <div class="title">
+close = </div>
+
+[example_title]
+;tag_attr = true
+;attr_name = title
+;cdata_start = true
+cdata_end = true
+open = </td></tr><tr><td><strong>
+close = </strong>
+
+[table_title]
+;tag_attr = true
+;attr_name = true
+cdata_start = true
+open = <caption>
+close = </caption>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/basicindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/basicindex.tpl
new file mode 100755
index 00000000..951ee264
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/basicindex.tpl
@@ -0,0 +1,47 @@
+<div class="index-letter-menu">
+{section name=letter loop=$letters}
+ <a class="index-letter" href="{$indexname}.html#{$letters[letter].letter}">{$letters[letter].letter}</a>
+{/section}
+</div>
+
+{section name=index loop=$index}
+ <a name="{$index[index].letter}"></a>
+ <div class="index-letter-section">
+ <div style="float: left" class="index-letter-title">{$index[index].letter}</div>
+ <div style="float: right"><a href="#top">top</a></div>
+ <div style="clear: both"></div>
+ </div>
+ <dl>
+ {section name=contents loop=$index[index].index}
+ <dt class="field">
+ {if ($index[index].index[contents].title == "Variable")}
+ <span class="var-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Global")}
+ <span class="var-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Method")}
+ <span class="method-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Function")}
+ <span class="method-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Constant")}
+ <span class="const-title">{$index[index].index[contents].name}</span>
+ {elseif ($index[index].index[contents].title == "Page") || ($index[index].index[contents].title == "Include")}
+ <span class="include-title">{$index[index].index[contents].name}</span>
+ {else}
+ {$index[index].index[contents].name}
+ {/if}
+ </dt>
+ <dd class="index-item-body">
+ <div class="index-item-details">{$index[index].index[contents].link} in {$index[index].index[contents].file_name}</div>
+ {if $index[index].index[contents].description}
+ <div class="index-item-description">{$index[index].index[contents].description}</div>
+ {/if}
+ </dd>
+ {/section}
+ </dl>
+{/section}
+
+<div class="index-letter-menu">
+{section name=letter loop=$letters}
+ <a class="index-letter" href="{$indexname}.html#{$letters[letter].letter}">{$letters[letter].letter}</a>
+{/section}
+</div>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/blank.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/blank.tpl
new file mode 100755
index 00000000..6a05f27e
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/blank.tpl
@@ -0,0 +1,13 @@
+<html>
+<head>
+ <title>{$maintitle}</title>
+ <link rel="stylesheet" href="{$subdir}media/stylesheet.css" />
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+</head>
+<body>
+<div align="center"><h1>{$maintitle}</h1></div>
+<b>Welcome to {$package}!</b><br />
+<br />
+This documentation was generated by <a href="{$phpdocwebsite}">phpDocumentor v{$phpdocversion}</a><br />
+</body>
+</html> \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/class.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/class.tpl
new file mode 100755
index 00000000..9ab7c455
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/class.tpl
@@ -0,0 +1,429 @@
+{include file="header.tpl" top3=true}
+
+<h2 class="class-name">{if $is_interface}Interface{else}Class{/if} {$class_name}</h2>
+
+<a name="sec-description"></a>
+<div class="info-box">
+ <div class="info-box-title">Description</div>
+ <div class="nav-bar">
+ {if $children || $vars || $ivars || $methods || $imethods || $consts || $iconsts }
+ <span class="disabled">Description</span> |
+ {/if}
+ {if $children}
+ <a href="#sec-descendents">Descendents</a>
+ {if $vars || $ivars || $methods || $imethods || $consts || $iconsts}|{/if}
+ {/if}
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ {if $methods || $imethods}|{/if}
+ {/if}
+ {if $methods || $imethods}
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {if $implements}
+ <p class="implements">
+ Implements interfaces:
+ <ul>
+ {foreach item="int" from=$implements}<li>{$int}</li>{/foreach}
+ </ul>
+ </p>
+ {/if}
+ {include file="docblock.tpl" type="class" sdesc=$sdesc desc=$desc}
+ <p class="notes">
+ Located in <a class="field" href="{$page_link}">{$source_location}</a> (line <span class="field">{if $class_slink}{$class_slink}{else}{$line_number}{/if}</span>)
+ </p>
+
+ {if $tutorial}
+ <hr class="separator" />
+ <div class="notes">Tutorial: <span class="tutorial">{$tutorial}</span></div>
+ {/if}
+
+ <pre>{section name=tree loop=$class_tree.classes}{$class_tree.classes[tree]}{$class_tree.distance[tree]}{/section}</pre>
+
+ {if $conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with classes:</span><br />
+ {section name=me loop=$conflicts.conflicts}
+ {$conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+ </div>
+</div>
+
+{if $children}
+ <a name="sec-descendents"></a>
+ <div class="info-box">
+ <div class="info-box-title">Direct descendents</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ <span class="disabled">Descendents</span>
+ {if $vars || $ivars || $methods || $imethods}|{/if}
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ {if $methods || $imethods}|{/if}
+ {/if}
+ {if $methods || $imethods}
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <table cellpadding="2" cellspacing="0" class="class-table">
+ <tr>
+ <th class="class-table-header">Class</th>
+ <th class="class-table-header">Description</th>
+ </tr>
+ {section name=kids loop=$children}
+ <tr>
+ <td style="padding-right: 2em">{$children[kids].link}</td>
+ <td>
+ {if $children[kids].sdesc}
+ {$children[kids].sdesc}
+ {else}
+ {$children[kids].desc}
+ {/if}
+ </td>
+ </tr>
+ {/section}
+ </table>
+ </div>
+ </div>
+{/if}
+
+{if $consts}
+ <a name="sec-const-summary"></a>
+ <div class="info-box">
+ <div class="info-box-title">Class Constant Summary</span></div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendants</a> |
+ {/if}
+ <span class="disabled">Constants</span> (<a href="#sec-consts">details</a>)
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ |
+ {/if}
+ {if $methods || $imethods}
+ |
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <div class="const-summary">
+ {section name=consts loop=$consts}
+ <div class="const-title">
+ <img src="{$subdir}media/images/Constant.png" alt=" " />
+ <a href="#{$consts[consts].const_name}" title="details" class="const-name">{$consts[consts].const_name}</a> = <span class="var-type">{$consts[consts].const_value}</span>
+
+ </div>
+ {/section}
+ </div>
+ </div>
+ </div>
+{/if}
+
+{if $vars}
+ <a name="sec-var-summary"></a>
+ <div class="info-box">
+ <div class="info-box-title">Variable Summary</span></div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendents</a> |
+ {/if}
+ <span class="disabled">Vars</span> (<a href="#sec-vars">details</a>)
+ {if $methods || $imethods}
+ |
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <div class="var-summary">
+ {section name=vars loop=$vars}
+ {if $vars[vars].static}
+ <div class="var-title">
+ static <span class="var-type">{$vars[vars].var_type}</span>
+ <a href="#{$vars[vars].var_name}" title="details" class="var-name">{$vars[vars].var_name}</a>
+ </div>
+ {/if}
+ {/section}
+ {section name=vars loop=$vars}
+ {if !$vars[vars].static}
+ <div class="var-title">
+ <span class="var-type">{$vars[vars].var_type}</span>
+ <a href="#{$vars[vars].var_name}" title="details" class="var-name">{$vars[vars].var_name}</a>
+ </div>
+ {/if}
+ {/section}
+ </div>
+ </div>
+ </div>
+{/if}
+
+{if $methods}
+ <a name="sec-method-summary"></a>
+ <div class="info-box">
+ <div class="info-box-title">Method Summary</span></div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendents</a> |
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ |
+ {/if}
+ <span class="disabled">Methods</span> (<a href="#sec-methods">details</a>)
+ </div>
+ <div class="info-box-body">
+ <div class="method-summary">
+ {section name=methods loop=$methods}
+ {if $methods[methods].static}
+ <div class="method-definition">
+ static {if $methods[methods].function_return}
+ <span class="method-result">{$methods[methods].function_return}</span>
+ {/if}
+ <a href="#{$methods[methods].function_name}" title="details" class="method-name">{if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}</a>
+ {if count($methods[methods].ifunction_call.params)}
+ ({section name=params loop=$methods[methods].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$methods[methods].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$methods[methods].ifunction_call.params[params].name}</span>{if $methods[methods].ifunction_call.params[params].hasdefault} = <span class="var-default">{$methods[methods].ifunction_call.params[params].default}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+ {/if}
+ {/section}
+ {section name=methods loop=$methods}
+ {if !$methods[methods].static}
+ <div class="method-definition">
+ {if $methods[methods].function_return}
+ <span class="method-result">{$methods[methods].function_return}</span>
+ {/if}
+ <a href="#{$methods[methods].function_name}" title="details" class="method-name">{if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}</a>
+ {if count($methods[methods].ifunction_call.params)}
+ ({section name=params loop=$methods[methods].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$methods[methods].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$methods[methods].ifunction_call.params[params].name}</span>{if $methods[methods].ifunction_call.params[params].hasdefault} = <span class="var-default">{$methods[methods].ifunction_call.params[params].default}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+ {/if}
+ {/section}
+ </div>
+ </div>
+ </div>
+{/if}
+
+{if $vars || $ivars}
+ <a name="sec-vars"></a>
+ <div class="info-box">
+ <div class="info-box-title">Variables</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendents</a> |
+ {/if}
+ {if $methods}
+ <a href="#sec-var-summary">Vars</a> (<span class="disabled">details</span>)
+ {else}
+ <span class="disabled">Vars</span>
+ {/if}
+
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ {if $methods || $imethods}
+ |
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="var.tpl"}
+ {if $ivars}
+ <h4>Inherited Variables</h4>
+ <A NAME='inherited_vars'><!-- --></A>
+ {section name=ivars loop=$ivars}
+ <p>Inherited from <span class="classname">{$ivars[ivars].parent_class}</span></p>
+ <blockquote>
+ {section name=ivars2 loop=$ivars[ivars].ivars}
+ <span class="var-title">
+ <span class="var-name">{$ivars[ivars].ivars[ivars2].link}</span>{if $ivars[ivars].ivars[ivars2].ivar_sdesc}: {$ivars[ivars].ivars[ivars2].ivar_sdesc}{/if}<br>
+ </span>
+ {/section}
+ </blockquote>
+ {/section}
+ {/if}
+ </div>
+ </div>
+{/if}
+
+{if $methods || $imethods}
+ <a name="sec-methods"></a>
+ <div class="info-box">
+ <div class="info-box-title">Methods</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendents</a> |
+ {/if}
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ {/if}
+ {if $consts || $iconsts}
+ {if $consts}
+ <a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
+ {else}
+ <a href="#sec-consts">Constants</a>
+ {/if}
+ {/if}
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<span class="disabled">details</span>)
+ {else}
+ <span class="disabled">Methods</span>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="method.tpl"}
+ {if $imethods}
+ <h4>Inherited Methods</h4>
+ <a name='inherited_methods'><!-- --></a>
+ {section name=imethods loop=$imethods}
+ <!-- =========== Summary =========== -->
+ <p>Inherited From <span class="classname">{$imethods[imethods].parent_class}</span></p>
+ <blockquote>
+ {section name=im2 loop=$imethods[imethods].imethods}
+ <span class="method-name">{$imethods[imethods].imethods[im2].link}</span>{if $imethods[imethods].imethods[im2].ifunction_sdesc}: {$imethods[imethods].imethods[im2].ifunction_sdesc}{/if}<br>
+ {/section}
+ </blockquote>
+ {/section}
+ {/if}
+ </div>
+ </div>
+{/if}
+
+{if $consts || $iconsts}
+ <a name="sec-consts"></a>
+ <div class="info-box">
+ <div class="info-box-title">Class Constants</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $children}
+ <a href="#sec-descendents">Descendants</a> |
+ {/if}
+ {if $methods}
+ <a href="#sec-var-summary">Constants</a> (<span class="disabled">details</span>)
+ {else}
+ <span class="disabled">Constants</span>
+ {/if}
+
+ {if $vars || $ivars}
+ {if $vars}
+ <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
+ {else}
+ <a href="#sec-vars">Vars</a>
+ {/if}
+ {/if}
+ {if $methods || $imethods}
+ |
+ {if $methods}
+ <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
+ {else}
+ <a href="#sec-methods">Methods</a>
+ {/if}
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="const.tpl"}
+ {if $iconsts}
+ <h4>Inherited Constants</h4>
+ <A NAME='inherited_vars'><!-- --></A>
+ {section name=iconsts loop=$iconsts}
+ <p>Inherited from <span class="classname">{$iconsts[iconsts].parent_class}</span></p>
+ <blockquote>
+ {section name=iconsts2 loop=$iconsts[iconsts].iconsts}
+ <img src="{$subdir}media/images/{if $iconsts[iconsts].iconsts[iconsts2].access == 'private'}PrivateVariable{else}Variable{/if}.png" />
+ <span class="const-title">
+ <span class="const-name">{$iconsts[iconsts].iconsts[iconsts2].link}</span>{if $iconsts[iconsts].iconsts[iconsts2].iconst_sdesc}: {$iconsts[iconsts].iconsts[iconsts2].iconst_sdesc}{/if}<br>
+ </span>
+ {/section}
+ </blockquote>
+ {/section}
+ {/if}
+ </div>
+ </div>
+{/if}
+
+{include file="footer.tpl" top3=true}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/classtrees.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/classtrees.tpl
new file mode 100755
index 00000000..952e6d50
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/classtrees.tpl
@@ -0,0 +1,19 @@
+{include file="header.tpl" top1=true}
+
+<!-- Start of Class Data -->
+<H2>
+ {$smarty.capture.title}
+</H2>
+{if $interfaces}
+{section name=classtrees loop=$interfaces}
+<h2>Root interface {$interfaces[classtrees].class}</h2>
+{$interfaces[classtrees].class_tree}
+{/section}
+{/if}
+{if $classtrees}
+{section name=classtrees loop=$classtrees}
+<h2>Root class {$classtrees[classtrees].class}</h2>
+{$classtrees[classtrees].class_tree}
+{/section}
+{/if}
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/const.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/const.tpl
new file mode 100644
index 00000000..c26ff92d
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/const.tpl
@@ -0,0 +1,18 @@
+{section name=consts loop=$consts}
+<a name="const{$consts[consts].const_name}" id="{$consts[consts].const_name}"><!-- --></A>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="const-header">
+ <img src="{$subdir}media/images/{if $consts[consts].access == 'private'}PrivateVariable{else}Variable{/if}.png" />
+ <span class="const-title">
+ <span class="const-name">{$consts[consts].const_name}</span>
+ = <span class="const-default">{$consts[consts].const_value|replace:"\n":"<br />"}</span>
+ (line <span class="line-number">{if $consts[consts].slink}{$consts[consts].slink}{else}{$consts[consts].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$consts[consts].sdesc desc=$consts[consts].desc tags=$consts[consts].tags}
+
+</div>
+{/section}
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/define.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/define.tpl
new file mode 100755
index 00000000..0da5d864
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/define.tpl
@@ -0,0 +1,24 @@
+{section name=def loop=$defines}
+<a name="{$defines[def].define_link}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <span class="const-title">
+ <span class="const-name">{$defines[def].define_name}</span> = {$defines[def].define_value|replace:"\n":"<br />"}
+ (line <span class="line-number">{if $defines[def].slink}{$defines[def].slink}{else}{$defines[def].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$defines[def].sdesc desc=$defines[def].desc tags=$defines[def].tags}
+
+ {if $globals[glob].global_conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with constants:</span><br />
+ {section name=me loop=$defines[def].define_conflicts.conflicts}
+ {$defines[def].define_conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+
+</div>
+{/section} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/docblock.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/docblock.tpl
new file mode 100755
index 00000000..783d5271
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/docblock.tpl
@@ -0,0 +1,14 @@
+<!-- ========== Info from phpDoc block ========= -->
+{if $sdesc}
+<p class="short-description">{$sdesc}</p>
+{/if}
+{if $desc}
+<p class="description">{$desc}</p>
+{/if}
+{if $tags}
+ <ul class="tags">
+ {section name=tags loop=$tags}
+ <li><span class="field">{$tags[tags].keyword}:</span> {$tags[tags].data}</li>
+ {/section}
+ </ul>
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/elementindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/elementindex.tpl
new file mode 100755
index 00000000..d5964f99
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/elementindex.tpl
@@ -0,0 +1,12 @@
+{include file="header.tpl" noleftindex=true}
+<a name="top"></a>
+<h2>Full index</h2>
+<h3>Package indexes</h3>
+<ul>
+{section name=p loop=$packageindex}
+ <li><a href="elementindex_{$packageindex[p].title}.html">{$packageindex[p].title}</a></li>
+{/section}
+</ul>
+<br />
+{include file="basicindex.tpl" indexname="elementindex"}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/errors.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/errors.tpl
new file mode 100755
index 00000000..0f526584
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/errors.tpl
@@ -0,0 +1,21 @@
+{include file="header.tpl" noleftindex=true}
+{section name=files loop=$files}
+<a href="#{$files[files].file}">{$files[files].file}</a><br>
+{/section}
+{foreach key=file item=issues from=$all}
+<a name="{$file}"></a>
+<h1>{$file}</h1>
+{if count($issues.warnings)}
+<h2>Warnings:</h2><br>
+{section name=warnings loop=$issues.warnings}
+<b>{$issues.warnings[warnings].name}</b> - {$issues.warnings[warnings].listing}<br>
+{/section}
+{/if}
+{if count($issues.errors)}
+<h2>Errors:</h2><br>
+{section name=errors loop=$issues.errors}
+<b>{$issues.errors[errors].name}</b> - {$issues.errors[errors].listing}<br>
+{/section}
+{/if}
+{/foreach}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/examplesource.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/examplesource.tpl
new file mode 100755
index 00000000..8abf74ce
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/examplesource.tpl
@@ -0,0 +1,6 @@
+{include file="header.tpl" title=$title}
+<h1>{$title}</h1>
+<div class="listing">
+{$source}
+</div>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/filesource.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/filesource.tpl
new file mode 100755
index 00000000..239f7b41
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/filesource.tpl
@@ -0,0 +1,8 @@
+{capture name="tutle"}File Source for {$name}{/capture}
+{include file="header.tpl" title=$smarty.capture.tutle}
+<h1>Source for file {$name}</h1>
+<p>Documentation is available at {$docs}</p>
+<div class="src-code">
+{$source}
+</div>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/footer.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/footer.tpl
new file mode 100755
index 00000000..8d0f79db
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/footer.tpl
@@ -0,0 +1,8 @@
+{if !$index}
+ <p class="notes" id="credit">
+ Documentation generated on {$date} by <a href="{$phpdocwebsite}" target="_blank">phpDocumentor {$phpdocversion}</a>
+ </p>
+{/if}
+ {if $top3}</div>{/if}
+</body>
+</html>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/function.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/function.tpl
new file mode 100755
index 00000000..b6880059
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/function.tpl
@@ -0,0 +1,44 @@
+{section name=func loop=$functions}
+<a name="{$functions[func].function_dest}" id="{$functions[func].function_dest}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <span class="method-title">{$functions[func].function_name}</span> (line <span class="line-number">{if $functions[func].slink}{$functions[func].slink}{else}{$functions[func].line_number}{/if}</span>)
+ </div>
+
+ {include file="docblock.tpl" sdesc=$functions[func].sdesc desc=$functions[func].desc tags=$functions[func].tags params=$functions[func].params function=false}
+
+ <div class="method-signature">
+ <span class="method-result">{$functions[func].function_return}</span>
+ <span class="method-name">
+ {if $functions[func].ifunction_call.returnsref}&amp;{/if}{$functions[func].function_name}
+ </span>
+ {if count($functions[func].ifunction_call.params)}
+ ({section name=params loop=$functions[func].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $functions[func].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$functions[func].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$functions[func].ifunction_call.params[params].name}</span>{if $functions[func].ifunction_call.params[params].hasdefault} = <span class="var-default">{$functions[func].ifunction_call.params[params].default|escape:"html"}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+
+ {if $functions[func].params}
+ <ul class="parameters">
+ {section name=params loop=$functions[func].params}
+ <li>
+ <span class="var-type">{$functions[func].params[params].datatype}</span>
+ <span class="var-name">{$functions[func].params[params].var}</span>{if $functions[func].params[params].data}<span class="var-description">: {$functions[func].params[params].data}</span>{/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+ {if $functions[func].function_conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with functions:</span><br />
+ {section name=me loop=$functions[func].function_conflicts.conflicts}
+ {$functions[func].function_conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+
+</div>
+{/section}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/global.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/global.tpl
new file mode 100755
index 00000000..eab7e0b0
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/global.tpl
@@ -0,0 +1,26 @@
+{section name=glob loop=$globals}
+<a name="{$globals[glob].global_link}" id="{$globals[glob].global_link}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <span class="var-title">
+ <span class="var-type">{$globals[glob].global_type}</span>
+ <span class="var-name">{$globals[glob].global_name}</span>
+ {if $vars[vars].var_default} = <span class="var-default">{$globals[glob].global_value|replace:"\n":"<br />"}</span>{/if}
+ (line <span class="line-number">{if $globals[glob].slink}{$globals[glob].slink}{else}{$globals[glob].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$globals[glob].sdesc desc=$globals[glob].desc tags=$globals[glob].tags}
+
+ {if $globals[glob].global_conflicts.conflict_type}
+ <hr class="separator" />
+ <div><span class="warning">Conflicts with global variables:</span><br />
+ {section name=me loop=$globals[glob].global_conflicts.conflicts}
+ {$globals[glob].global_conflicts.conflicts[me]}<br />
+ {/section}
+ </div>
+ {/if}
+
+</div>
+{/section} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/header.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/header.tpl
new file mode 100755
index 00000000..c22ba37d
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/header.tpl
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+ <html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <!-- template designed by Marco Von Ballmoos -->
+ <title>{$title}</title>
+ <link rel="stylesheet" href="{$subdir}media/stylesheet.css" />
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+ </head>
+ <body>
+ {if $top3}<div class="page-body">{/if}
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/include.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/include.tpl
new file mode 100755
index 00000000..c2419e5f
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/include.tpl
@@ -0,0 +1,16 @@
+{section name=includes loop=$includes}
+<a name="{$includes[includes].include_file}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div>
+ <span class="include-title">
+ <span class="include-type">{$includes[includes].include_name}</span>
+ (<span class="include-name">{$includes[includes].include_value}</span>)
+ (line <span class="line-number">{if $includes[includes].slink}{$includes[includes].slink}{else}{$includes[includes].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$includes[includes].sdesc desc=$includes[includes].desc tags=$includes[includes].tags}
+
+</div>
+{/section} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/index.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/index.tpl
new file mode 100755
index 00000000..7cd61094
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/index.tpl
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//FR"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
+ <html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+ <!-- Generated by phpDocumentor on {$date} -->
+ <title>{$title}</title>
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+</head>
+
+<FRAMESET rows='120,*'>
+ <FRAME src='packages.html' name='left_top' frameborder="1" bordercolor="#999999">
+ <FRAMESET cols='25%,*'>
+ <FRAME src='{$start}' name='left_bottom' frameborder="1" bordercolor="#999999">
+ <FRAME src='{$blank}.html' name='right' frameborder="1" bordercolor="#999999">
+ </FRAMESET>
+ <NOFRAMES>
+ <H2>Frame Alert</H2>
+ <P>This document is designed to be viewed using the frames feature.
+ If you see this message, you are using a non-frame-capable web client.</P>
+ </NOFRAMES>
+</FRAMESET>
+</HTML>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/left_frame.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/left_frame.tpl
new file mode 100755
index 00000000..0a06fba6
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/left_frame.tpl
@@ -0,0 +1,159 @@
+{include file="header.tpl" top2=true}
+<div class="package-title">{$package}</div>
+<div class="package-details">
+
+ <dl class="tree">
+
+ <dt class="folder-title">Description</dt>
+ <dd>
+ <a href='{$classtreepage}.html' target='right'>Class trees</a><br />
+ <a href='{$elementindex}.html' target='right'>Index of elements</a><br />
+ {if $hastodos}
+ <a href="{$todolink}" target="right">Todo List</a><br />
+ {/if}
+ </dd>
+
+ {section name=p loop=$info}
+
+ {if $info[p].subpackage == ""}
+
+ {if $info[p].tutorials}
+ <dt class="folder-title">Tutorials/Manuals</dt>
+ <dd>
+ {if $info[p].tutorials.pkg}
+ <dl class="tree">
+ <dt class="folder-title">Package-level</dt>
+ <dd>
+ {section name=ext loop=$info[p].tutorials.pkg}
+ {$info[p].tutorials.pkg[ext]}
+ {/section}
+ </dd>
+ </dl>
+ {/if}
+
+ {if $info[p].tutorials.cls}
+ <dl class="tree">
+ <dt class="folder-title">Class-level</dt>
+ <dd>
+ {section name=ext loop=$info[p].tutorials.cls}
+ {$info[p].tutorials.cls[ext]}
+ {/section}
+ </dd>
+ </dl>
+ {/if}
+
+ {if $info[p].tutorials.proc}
+ <dl class="tree">
+ <dt class="folder-title">Function-level</dt>
+ <dd>
+ {section name=ext loop=$info[p].tutorials.proc}
+ {$info[p].tutorials.proc[ext]}
+ {/section}
+ </dd>
+ </dl>
+ {/if}
+ </dd>
+ {/if}
+ {if $info[p].hasinterfaces}
+ <dt class="folder-title">Interfaces</dt>
+ {section name=class loop=$info[p].classes}
+ {if $info[p].classes[class].is_interface}
+ <dd><a href='{$info[p].classes[class].link}' target='right'>{$info[p].classes[class].title}</a></dd>
+ {/if}
+ {/section}
+ {/if}
+ {if $info[p].hasclasses}
+ <dt class="folder-title">Classes</dt>
+ {section name=class loop=$info[p].classes}
+ {if $info[p].classes[class].is_class}
+ <dd><a href='{$info[p].classes[class].link}' target='right'>{$info[p].classes[class].title}</a></dd>
+ {/if}
+ {/section}
+ {/if}
+ {if $info[p].functions}
+ <dt class="folder-title">Functions</dt>
+ {section name=f loop=$info[p].functions}
+ <dd><a href='{$info[p].functions[f].link}' target='right'>{$info[p].functions[f].title}</a></dd>
+ {/section}
+ {/if}
+ {if $info[p].files}
+ <dt class="folder-title">Files</dt>
+ {section name=nonclass loop=$info[p].files}
+ <dd><a href='{$info[p].files[nonclass].link}' target='right'>{$info[p].files[nonclass].title}</a></dd>
+ {/section}
+ {/if}
+
+ {else}
+ {if $info[p].tutorials}
+ <dt class="folder-title">Tutorials/Manuals</dt>
+ <dd>
+ {if $info[p].tutorials.pkg}
+ <dl class="tree">
+ <dt class="folder-title">Package-level</dt>
+ <dd>
+ {section name=ext loop=$info[p].tutorials.pkg}
+ {$info[p].tutorials.pkg[ext]}
+ {/section}
+ </dd>
+ </dl>
+ {/if}
+
+ {if $info[p].tutorials.cls}
+ <dl class="tree">
+ <dt class="folder-title">Class-level</dt>
+ <dd>
+ {section name=ext loop=$info[p].tutorials.cls}
+ {$info[p].tutorials.cls[ext]}
+ {/section}
+ </dd>
+ </dl>
+ {/if}
+
+ {if $info[p].tutorials.proc}
+ <dl class="tree">
+ <dt class="folder-title">Function-level</dt>
+ <dd>
+ {section name=ext loop=$info[p].tutorials.proc}
+ {$info[p].tutorials.proc[ext]}
+ {/section}
+ </dd>
+ </dl>
+ {/if}
+ </dd>
+ {/if}
+
+ <dt class="sub-package">{$info[p].subpackage}</dt>
+ <dd>
+ <dl class="tree">
+ {if $info[p].subpackagetutorial}
+ <div><a href="{$info.0.subpackagetutorialnoa}" target="right">{$info.0.subpackagetutorialtitle}</a></div>
+ {/if}
+ {if $info[p].classes}
+ <dt class="folder-title">Classes</dt>
+ {section name=class loop=$info[p].classes}
+ <dd><a href='{$info[p].classes[class].link}' target='right'>{$info[p].classes[class].title}</a></dd>
+ {/section}
+ {/if}
+ {if $info[p].functions}
+ <dt class="folder-title">Functions</dt>
+ {section name=f loop=$info[p].functions}
+ <dd><a href='{$info[p].functions[f].link}' target='right'>{$info[p].functions[f].title}</a></dd>
+ {/section}
+ {/if}
+ {if $info[p].files}
+ <dt class="folder-title">Files</dt>
+ {section name=nonclass loop=$info[p].files}
+ <dd><a href='{$info[p].files[nonclass].link}' target='right'>{$info[p].files[nonclass].title}</a></dd>
+ {/section}
+ {/if}
+ </dl>
+ </dd>
+
+ {/if}
+
+ {/section}
+ </dl>
+</div>
+<p class="notes"><a href="{$phpdocwebsite}" target="_blank">phpDocumentor v <span class="field">{$phpdocversion}</span></a></p>
+</BODY>
+</HTML>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/media/banner.css b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/media/banner.css
new file mode 100755
index 00000000..ba1a7ba5
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/media/banner.css
@@ -0,0 +1,32 @@
+body
+{
+ background-color: #DDDDDD;
+ margin: 0px;
+ padding: 0px;
+}
+
+/* Banner (top bar) classes */
+
+.banner { }
+
+.banner-menu
+{
+ clear: both;
+ padding: .5em;
+ border-top: 2px solid #999999;
+}
+
+.banner-title
+{
+ text-align: right;
+ font-size: 20pt;
+ font-weight: bold;
+ margin: .2em;
+}
+
+.package-selector
+{
+ background-color: #CCCCCC;
+ border: 1px solid black;
+ color: blue;
+}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/media/stylesheet.css b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/media/stylesheet.css
new file mode 100755
index 00000000..051586b3
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/media/stylesheet.css
@@ -0,0 +1,142 @@
+a { color: #0000FF; text-decoration: none; }
+a:hover { color: #FF0000; text-decoration: underline; }
+a:active { color: #FF0000; text-decoration: underline; }
+
+body { background-color: #EEEEEE; font-family: Verdana, Arial, sans-serif }
+body, table { font-size: 10pt }
+a img { border: 0px; }
+dd { margin-left: 0px; padding-left: 1em; }
+
+/* Page layout/boxes */
+
+.info-box {}
+.info-box-title { margin: 1em 0em 0em 0em; padding: .25em; font-weight: normal; font-size: 14pt; border: 2px solid #999999; background-color: #DDDDDD }
+.info-box-body { border: 1px solid #999999; padding: .5em; background-color: #F8F8F8; }
+.nav-bar { font-size: 8pt; white-space: nowrap; text-align: right; padding: .2em; margin: 0em 0em 1em 0em; }
+
+.oddrow { background-color: #DDDDDD; border: 1px solid #999999; padding: .5em; margin-bottom: 1em}
+.evenrow { background-color: #DDDDDD; border: 1px solid #999999; padding: .5em; margin-bottom: 1em}
+
+.page-body { max-width: 800px; margin: auto; }
+.tree dl { margin: 0px }
+
+/* Index formatting classes */
+
+.index-item-body { margin-top: .5em; margin-bottom: .5em}
+.index-item-description { margin-top: .25em }
+.index-item-details { font-weight: normal; font-style: italic; font-size: 8pt }
+.index-letter-section { background-color: #EEEEEE; border: 1px dotted #999999; padding: .5em; margin-bottom: 1em}
+.index-letter-title { font-size: 12pt; font-weight: bold }
+.index-letter-menu { text-align: center; margin: 1em }
+.index-letter { font-size: 12pt }
+
+/* Docbook classes */
+
+.description {}
+.short-description { font-weight: bold; color: #666666; }
+.tags { padding-left: 0em; margin-left: 3em; color: #666666; list-style-type: square; }
+.parameters { padding-left: 0em; margin-left: 3em; font-style: italic; list-style-type: square; }
+.redefinitions { font-size: 8pt; padding-left: 0em; margin-left: 2em; }
+.package { }
+.package-title { font-weight: bold; font-size: 14pt; border-bottom: 1px solid black }
+.package-details { font-size: 85%; }
+.sub-package { font-weight: bold; font-size: 120% }
+.tutorial { border-width: thin; border-color: #0066ff }
+.tutorial-nav-box { width: 100%; border: 2px solid #999999; background-color: #DDDDDD }
+.nav-button-disabled { color: #999999; }
+.nav-button:active,
+.nav-button:focus,
+.nav-button:hover { background-color: #AAAAAA; outline: 1px solid #666666; text-decoration: none }
+.folder-title { font-style: italic }
+
+/* Generic formatting */
+
+.field { font-weight: bold; }
+.detail { font-size: 8pt; }
+.notes { font-style: italic; font-size: 8pt; }
+.separator { background-color: #999999; height: 2px; }
+.warning { color: #FF6600; }
+.disabled { font-style: italic; color: #999999; }
+
+/* Code elements */
+
+.line-number { }
+
+.class-table { width: 100%; }
+.class-table-header { border-bottom: 1px dotted #666666; text-align: left}
+.class-name { color: #000000; font-weight: bold; }
+
+.method-summary { padding-left: 1em; font-size: 8pt }
+.method-header { }
+.method-definition { margin-bottom: .3em }
+.method-title { font-weight: bold; }
+.method-name { font-weight: bold; }
+.method-signature { font-size: 85%; color: #0066BB; margin: .5em 0em }
+.method-result { font-style: italic; }
+
+.var-summary { padding-left: 1em; font-size: 8pt; }
+.var-header { }
+.var-title { margin-bottom: .3em }
+.var-type { color: red; font-weight: bold }
+.var-name { font-weight: bold; }
+.var-default {}
+.var-description { font-weight: normal; color: #000000; }
+
+.include-title { }
+.include-type { font-style: italic; }
+.include-name { font-weight: bold; }
+
+.const-title { }
+.const-name { font-weight: bold; }
+
+/* Syntax highlighting */
+
+.src-code { border: 1px solid #336699; padding: 1em; background-color: #EEEEEE;
+ font-family: 'Courier New', Courier, monospace; font-weight: normal; }
+.src-line { font-family: 'Courier New', Courier, monospace; font-weight: normal; }
+
+.src-comm { color: #666666; }
+.src-id { }
+.src-inc { color: #0000FF; }
+.src-key { color: #0000FF; }
+.src-num { color: #CC0000; }
+.src-str { color: #66cccc; }
+.src-sym { font-weight: bold; }
+.src-var { }
+
+.src-php { font-weight: bold; }
+
+.src-doc { color: #009999 }
+.src-doc-close-template { color: #0000FF }
+.src-doc-coretag { color: #0099FF; font-weight: bold }
+.src-doc-inlinetag { color: #0099FF }
+.src-doc-internal { color: #6699cc }
+.src-doc-tag { color: #0080CC }
+.src-doc-template { color: #0000FF }
+.src-doc-type { font-style: italic }
+.src-doc-var { font-style: italic }
+
+.tute-tag { color: #009999 }
+.tute-attribute-name { color: #0000FF }
+.tute-attribute-value { color: #0099FF }
+.tute-entity { font-weight: bold; }
+.tute-comment { font-style: italic }
+.tute-inline-tag { color: #636311; font-weight: bold }
+
+/* tutorial */
+
+.authors { }
+.author { font-style: italic; font-weight: bold }
+.author-blurb { margin: .5em 0em .5em 2em; font-size: 85%; font-weight: normal; font-style: normal }
+.example { background-color: #DDDDDD; border: 1px solid #999999; padding: .5em; }
+.listing { background-color: #DDDDDD; border: 1px solid #999999; padding: .5em; white-space: nowrap; }
+.release-info { font-size: 85%; font-style: italic; margin: 1em 0em }
+.ref-title-box { }
+.ref-title { }
+.ref-purpose { font-style: italic; color: #666666 }
+.ref-synopsis { }
+.title { font-weight: bold; border-bottom: 1px solid #888888; color: #888888; }
+.cmd-synopsis { margin: 1em 0em }
+.cmd-title { font-weight: bold }
+.toc { margin-left: 2em; padding-left: 0em }
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/method.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/method.tpl
new file mode 100755
index 00000000..06d57a12
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/method.tpl
@@ -0,0 +1,149 @@
+<A NAME='method_detail'></A>
+{section name=methods loop=$methods}
+{if $methods[methods].static}
+<a name="method{$methods[methods].function_name}" id="{$methods[methods].function_name}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="method-header">
+ <span class="method-title">static {$methods[methods].function_name}</span> (line <span class="line-number">{if $methods[methods].slink}{$methods[methods].slink}{else}{$methods[methods].line_number}{/if}</span>)
+ </div>
+
+ {include file="docblock.tpl" sdesc=$methods[methods].sdesc desc=$methods[methods].desc tags=$methods[methods].tags params=$methods[methods].params function=false}
+
+ <div class="method-signature">
+ static <span class="method-result">{$methods[methods].function_return}</span>
+ <span class="method-name">
+ {if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}
+ </span>
+ {if count($methods[methods].ifunction_call.params)}
+ ({section name=params loop=$methods[methods].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$methods[methods].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$methods[methods].ifunction_call.params[params].name}</span>{if $methods[methods].ifunction_call.params[params].hasdefault} = <span class="var-default">{$methods[methods].ifunction_call.params[params].default}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+
+ {if $methods[methods].params}
+ <ul class="parameters">
+ {section name=params loop=$methods[methods].params}
+ <li>
+ <span class="var-type">{$methods[methods].params[params].datatype}</span>
+ <span class="var-name">{$methods[methods].params[params].var}</span>{if $methods[methods].params[params].data}<span class="var-description">: {$methods[methods].params[params].data}</span>{/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+ {if $methods[methods].method_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$methods[methods].method_overrides.link}</dt>
+ {if $methods[methods].method_overrides.sdesc}
+ <dd>{$methods[methods].method_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+ {if $methods[methods].method_implements}
+ <hr class="separator" />
+ <div class="notes">Implementation of:</div>
+ {section name=imp loop=$methods[methods].method_implements}
+ <dl>
+ <dt>{$methods[methods].method_implements[imp].link}</dt>
+ {if $methods[methods].method_implements[imp].sdesc}
+ <dd>{$methods[methods].method_implements[imp].sdesc}</dd>
+ {/if}
+ </dl>
+ {/section}
+ {/if}
+
+ {if $methods[methods].descmethod}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=dm loop=$methods[methods].descmethod}
+ <li>
+ {$methods[methods].descmethod[dm].link}
+ {if $methods[methods].descmethod[dm].sdesc}
+ : {$methods[methods].descmethod[dm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+</div>
+{/if}
+{/section}
+{section name=methods loop=$methods}
+{if !$methods[methods].static}
+<a name="method{$methods[methods].function_name}" id="{$methods[methods].function_name}"><!-- --></a>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="method-header">
+ <span class="method-title">{if $methods[methods].ifunction_call.constructor}Constructor {elseif $methods[methods].ifunction_call.destructor}Destructor {/if}{$methods[methods].function_name}</span> (line <span class="line-number">{if $methods[methods].slink}{$methods[methods].slink}{else}{$methods[methods].line_number}{/if}</span>)
+ </div>
+
+ {include file="docblock.tpl" sdesc=$methods[methods].sdesc desc=$methods[methods].desc tags=$methods[methods].tags params=$methods[methods].params function=false}
+
+ <div class="method-signature">
+ <span class="method-result">{$methods[methods].function_return}</span>
+ <span class="method-name">
+ {if $methods[methods].ifunction_call.returnsref}&amp;{/if}{$methods[methods].function_name}
+ </span>
+ {if count($methods[methods].ifunction_call.params)}
+ ({section name=params loop=$methods[methods].ifunction_call.params}{if $smarty.section.params.iteration != 1}, {/if}{if $methods[methods].ifunction_call.params[params].hasdefault}[{/if}<span class="var-type">{$methods[methods].ifunction_call.params[params].type}</span>&nbsp;<span class="var-name">{$methods[methods].ifunction_call.params[params].name}</span>{if $methods[methods].ifunction_call.params[params].hasdefault} = <span class="var-default">{$methods[methods].ifunction_call.params[params].default}</span>]{/if}{/section})
+ {else}
+ ()
+ {/if}
+ </div>
+
+ {if $methods[methods].params}
+ <ul class="parameters">
+ {section name=params loop=$methods[methods].params}
+ <li>
+ <span class="var-type">{$methods[methods].params[params].datatype}</span>
+ <span class="var-name">{$methods[methods].params[params].var}</span>{if $methods[methods].params[params].data}<span class="var-description">: {$methods[methods].params[params].data}</span>{/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+ {if $methods[methods].method_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$methods[methods].method_overrides.link}</dt>
+ {if $methods[methods].method_overrides.sdesc}
+ <dd>{$methods[methods].method_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+ {if $methods[methods].method_implements}
+ <hr class="separator" />
+ <div class="notes">Implementation of:</div>
+ {section name=imp loop=$methods[methods].method_implements}
+ <dl>
+ <dt>{$methods[methods].method_implements[imp].link}</dt>
+ {if $methods[methods].method_implements[imp].sdesc}
+ <dd>{$methods[methods].method_implements[imp].sdesc}</dd>
+ {/if}
+ </dl>
+ {/section}
+ {/if}
+
+ {if $methods[methods].descmethod}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=dm loop=$methods[methods].descmethod}
+ <li>
+ {$methods[methods].descmethod[dm].link}
+ {if $methods[methods].descmethod[dm].sdesc}
+ : {$methods[methods].descmethod[dm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+</div>
+{/if}
+{/section}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/page.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/page.tpl
new file mode 100755
index 00000000..b5980236
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/page.tpl
@@ -0,0 +1,211 @@
+{include file="header.tpl" top3=true}
+
+<h2 class="file-name">{$source_location}</h2>
+
+<a name="sec-description"></a>
+<div class="info-box">
+ <div class="info-box-title">Description</div>
+ <div class="nav-bar">
+ {if $classes || $includes || $defines || $globals || $functions}
+ <span class="disabled">Description</span> |
+ {/if}
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="docblock.tpl" desc=$desc sdesc=$sdesc tags=$tags}
+
+ {if $tutorial}
+ <hr class="separator" />
+ <div class="notes">Tutorial: <span class="tutorial">{$tutorial}</div>
+ {/if}
+ </div>
+</div>
+
+{if $classes}
+ <a name="sec-classes"></a>
+ <div class="info-box">
+ <div class="info-box-title">Classes</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ <span class="disabled">Classes</span>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ <table cellpadding="2" cellspacing="0" class="class-table">
+ <tr>
+ <th class="class-table-header">Class</th>
+ <th class="class-table-header">Description</th>
+ </tr>
+ {section name=classes loop=$classes}
+ <tr>
+ <td style="padding-right: 2em; vertical-align: top">
+ {$classes[classes].link}
+ </td>
+ <td>
+ {if $classes[classes].sdesc}
+ {$classes[classes].sdesc}
+ {else}
+ {$classes[classes].desc}
+ {/if}
+ </td>
+ </tr>
+ {/section}
+ </table>
+ </div>
+ </div>
+{/if}
+
+{if $includes}
+ <a name="sec-includes"></a>
+ <div class="info-box">
+ <div class="info-box-title">Includes</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ <span class="disabled">Includes</span>
+ {if $defines || $globals || $functions}|{/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="include.tpl"}
+ </div>
+ </div>
+{/if}
+
+{if $defines}
+ <a name="sec-constants"></a>
+ <div class="info-box">
+ <div class="info-box-title">Constants</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ <span class="disabled">Constants</span>
+ {if $globals || $functions}|{/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="define.tpl"}
+ </div>
+ </div>
+{/if}
+
+{if $globals}
+ <a name="sec-variables"></a>
+ <div class="info-box">
+ <div class="info-box-title">Variables</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ <span class="disabled">Variables</span>
+ {if $functions}|{/if}
+ {if $functions}
+ <a href="#sec-functions">Functions</a>
+ {/if}
+ </div>
+ <div class="info-box-body">
+ {include file="global.tpl"}
+ </div>
+ </div>
+{/if}
+
+{if $functions}
+ <a name="sec-functions"></a>
+ <div class="info-box">
+ <div class="info-box-title">Functions</div>
+ <div class="nav-bar">
+ <a href="#sec-description">Description</a> |
+ {if $classes}
+ <a href="#sec-classes">Classes</a>
+ {if $includes || $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $includes}
+ <a href="#sec-includes">Includes</a>
+ {if $defines || $globals || $functions}|{/if}
+ {/if}
+ {if $defines}
+ <a href="#sec-constants">Constants</a>
+ {if $globals || $functions}|{/if}
+ {/if}
+ {if $globals}
+ <a href="#sec-variables">Variables</a>
+ {if $functions}|{/if}
+ {/if}
+ <span class="disabled">Functions</span>
+ </div>
+ <div class="info-box-body">
+ {include file="function.tpl"}
+ </div>
+ </div>
+{/if}
+
+{include file="footer.tpl" top3=true}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/pkgelementindex.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/pkgelementindex.tpl
new file mode 100755
index 00000000..dc283ad0
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/pkgelementindex.tpl
@@ -0,0 +1,17 @@
+{include file="header.tpl"}
+<a name="top"></a>
+<h2>[{$package}] element index</h2>
+{if count($packageindex) > 1}
+ <h3>Package indexes</h3>
+ <ul>
+ {section name=p loop=$packageindex}
+ {if $packageindex[p].title != $package}
+ <li><a href="elementindex_{$packageindex[p].title}.html">{$packageindex[p].title}</a></li>
+ {/if}
+ {/section}
+ </ul>
+{/if}
+<a href="elementindex.html">All elements</a>
+<br />
+{include file="basicindex.tpl" indexname=elementindex_$package}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/ric.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/ric.tpl
new file mode 100755
index 00000000..eff734c1
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/ric.tpl
@@ -0,0 +1,6 @@
+{include file="header.tpl"}
+<h1 align="center">{$name}</h1>
+<pre>
+{$contents|htmlentities}
+</pre>
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/todolist.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/todolist.tpl
new file mode 100755
index 00000000..f929ccdb
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/todolist.tpl
@@ -0,0 +1,14 @@
+{include file="header.tpl" title="Todo List"}
+<div align="center"><h1>Todo List</h1></div>
+{foreach from=$todos key=todopackage item=todo}
+<h2>{$todopackage}</h2>
+{section name=todo loop=$todo}
+<h3>{$todo[todo].link}</h3>
+<ul>
+{section name=t loop=$todo[todo].todos}
+ <li>{$todo[todo].todos[t]}</li>
+{/section}
+</ul>
+{/section}
+{/foreach}
+{include file="footer.tpl"} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/top_frame.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/top_frame.tpl
new file mode 100755
index 00000000..36d1e5a1
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/top_frame.tpl
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+ <html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <!-- template designed by Marco Von Ballmoos -->
+ <title>{$title}</title>
+ <link rel="stylesheet" href="{$subdir}media/stylesheet.css" />
+ <link rel="stylesheet" href="{$subdir}media/banner.css" />
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
+ </head>
+ <body>
+ <div class="banner">
+ <div class="banner-title">{$package}</div>
+ <div class="banner-menu">
+ <form>
+ <table cellpadding="0" cellspacing="0" style="width: 100%">
+ <tr>
+ <td>
+ {if count($ric) >= 1}
+ {assign var="last_ric_name" value=""}
+ {section name=ric loop=$ric}
+ {if $last_ric_name != ""} | {/if}
+ <a href="{$ric[ric].file}" target="right">{$ric[ric].name}</a>
+ {assign var="last_ric_name" value=$ric[ric].name}
+ {/section}
+ {/if}
+ </td>
+ <td style="width: 2em">&nbsp;</td>
+ <td style="text-align: right">
+ {if count($packages) > 1}
+ <span class="field">Packages</span>
+ <select class="package-selector" onchange="window.parent.left_bottom.location=this[selectedIndex].value">
+ {section name=p loop=$packages}
+ <option value="{$packages[p].link}">{$packages[p].title}</option>
+ {/section}
+ </select>
+ {/if}
+ </td>
+ </tr>
+ </table>
+ </form>
+ </div>
+ </div>
+ </body>
+ </html>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/tutorial.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/tutorial.tpl
new file mode 100755
index 00000000..3b9109d1
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/tutorial.tpl
@@ -0,0 +1,13 @@
+{include file="header.tpl" title=$title top3=true}
+
+{if $nav}
+ {include file="tutorial_nav.tpl" prev=$prev next=$next up=$up prevtitle=$prevtitle nexttitle=$nexttitle uptitle=$uptitle}
+{/if}
+
+{$contents}
+
+{if $nav}
+ {include file="tutorial_nav.tpl" prev=$prev next=$next up=$up prevtitle=$prevtitle nexttitle=$nexttitle uptitle=$uptitle}
+{/if}
+
+{include file="footer.tpl" top3=true} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/tutorial_nav.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/tutorial_nav.tpl
new file mode 100755
index 00000000..89952301
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/tutorial_nav.tpl
@@ -0,0 +1,41 @@
+<table class="tutorial-nav-box">
+ <tr>
+ <td style="width: 30%">
+ {if $prev}
+ <a href="{$prev}" class="nav-button">Previous</a>
+ {else}
+ <span class="nav-button-disabled">Previous</span>
+ {/if}
+ </td>
+ <td style="text-align: center">
+ {if $up}
+ <a href="{$up}" class="nav-button">Up</a>
+ {/if}
+ </td>
+ <td style="text-align: right; width: 30%">
+ {if $next}
+ <a href="{$next}" class="nav-button">Next</a>
+ {else}
+ <span class="nav-button-disabled">Next</span>
+ {/if}
+ </td>
+ </tr>
+ <tr>
+ <td style="width: 30%">
+ {if $prevtitle}
+ <span class="detail">{$prevtitle}</span>
+ {/if}
+ </td>
+ <td style="text-align: center">
+ {if $uptitle}
+ <span class="detail">{$uptitle}</span>
+ {/if}
+ </td>
+ <td style="text-align: right; width: 30%">
+ {if $nexttitle}
+ <span class="detail">{$nexttitle}</span>
+ {/if}
+ </td>
+ </tr>
+</table>
+ \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/tutorial_toc.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/tutorial_toc.tpl
new file mode 100755
index 00000000..3482249b
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/tutorial_toc.tpl
@@ -0,0 +1,40 @@
+{if count($toc)}
+<h1 class="title">Table of Contents</h1>
+<ul class="toc">
+ {assign var="lastcontext" value='refsect1'}
+ {section name=toc loop=$toc}
+
+ {if $toc[toc].tagname != $lastcontext}
+ {if $lastcontext == 'refsect1'}
+ <ul class="toc">
+ <li>{$toc[toc].link}</li>
+ {else}
+ {if $lastcontext == 'refsect2'}
+ {if $toc[toc].tagname == 'refsect1'}
+ </ul>
+ <li>{$toc[toc].link}</li>
+ {/if}
+ {if $toc[toc].tagname == 'refsect3'}
+ <ul class="toc">
+ <li>{$toc[toc].link}</li>
+ {/if}
+ {else}
+ </ul>
+ </ul>
+ <li>{$toc[toc].link}</li>
+ {/if}
+ {/if}
+ {assign var="lastcontext" value=$toc[toc].tagname}
+ {else}
+ <li>{$toc[toc].link}</li>
+ {/if}
+ {/section}
+ {if $lastcontext == 'refsect2'}
+ </ul>
+ {/if}
+ {if $lastcontext == 'refsect3'}
+ </ul>
+ </ul>
+ {/if}
+</ul>
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/tutorial_tree.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/tutorial_tree.tpl
new file mode 100755
index 00000000..617b5654
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/tutorial_tree.tpl
@@ -0,0 +1,6 @@
+<div><a href="{$main.link}" target="right">{$main.title|strip_tags}</a></div>
+{if $haskids}
+<div style="margin-left: 1em">
+ {$kids}
+</div>
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/var.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/var.tpl
new file mode 100755
index 00000000..fccf6892
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/HTML/frames/templates/phphtmllib/templates/var.tpl
@@ -0,0 +1,92 @@
+{section name=vars loop=$vars}
+{if $vars[vars].static}
+<a name="var{$vars[vars].var_name}" id="{$vars[vars].var_name}"><!-- --></A>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="var-header">
+ <span class="var-title">
+ static <span class="var-type">{$vars[vars].var_type}</span>
+ <span class="var-name">{$vars[vars].var_name}</span>
+ {if $vars[vars].var_default} = <span class="var-default">{$vars[vars].var_default|replace:"\n":"<br />"}</span>{/if}
+ (line <span class="line-number">{if $vars[vars].slink}{$vars[vars].slink}{else}{$vars[vars].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$vars[vars].sdesc desc=$vars[vars].desc tags=$vars[vars].tags}
+
+ {if $vars[vars].var_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$vars[vars].var_overrides.link}</dt>
+ {if $vars[vars].var_overrides.sdesc}
+ <dd>{$vars[vars].var_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+
+ {if $vars[vars].descvar}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=vm loop=$vars[vars].descvar}
+ <li>
+ {$vars[vars].descvar[vm].link}
+ {if $vars[vars].descvar[vm].sdesc}
+ : {$vars[vars].descvar[vm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+</div>
+{/if}
+{/section}
+
+{section name=vars loop=$vars}
+{if !$vars[vars].static}
+<a name="var{$vars[vars].var_name}" id="{$vars[vars].var_name}"><!-- --></A>
+<div class="{cycle values="evenrow,oddrow"}">
+
+ <div class="var-header">
+ <span class="var-title">
+ <span class="var-type">{$vars[vars].var_type}</span>
+ <span class="var-name">{$vars[vars].var_name}</span>
+ {if $vars[vars].var_default} = <span class="var-default">{$vars[vars].var_default|replace:"\n":"<br />"}</span>{/if}
+ (line <span class="line-number">{if $vars[vars].slink}{$vars[vars].slink}{else}{$vars[vars].line_number}{/if}</span>)
+ </span>
+ </div>
+
+ {include file="docblock.tpl" sdesc=$vars[vars].sdesc desc=$vars[vars].desc tags=$vars[vars].tags}
+
+ {if $vars[vars].var_overrides}
+ <hr class="separator" />
+ <div class="notes">Redefinition of:</div>
+ <dl>
+ <dt>{$vars[vars].var_overrides.link}</dt>
+ {if $vars[vars].var_overrides.sdesc}
+ <dd>{$vars[vars].var_overrides.sdesc}</dd>
+ {/if}
+ </dl>
+ {/if}
+
+ {if $vars[vars].descvar}
+ <hr class="separator" />
+ <div class="notes">Redefined in descendants as:</div>
+ <ul class="redefinitions">
+ {section name=vm loop=$vars[vars].descvar}
+ <li>
+ {$vars[vars].descvar[vm].link}
+ {if $vars[vars].descvar[vm].sdesc}
+ : {$vars[vars].descvar[vm].sdesc}
+ {/if}
+ </li>
+ {/section}
+ </ul>
+ {/if}
+
+</div>
+{/if}
+{/section}
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/PDFdefaultConverter.inc b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/PDFdefaultConverter.inc
new file mode 100755
index 00000000..00a1726e
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/PDFdefaultConverter.inc
@@ -0,0 +1,981 @@
+<?php
+/**
+ * Outputs documentation in PDF format
+ *
+ * phpDocumentor :: automatic documentation generator
+ *
+ * PHP versions 4 and 5
+ *
+ * Copyright (c) 2002-2006 Gregory Beaver
+ *
+ * LICENSE:
+ *
+ * This library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Lesser General
+ * Public License as published by the Free Software Foundation;
+ * either version 2.1 of the License, or (at your option) any
+ * later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ * @package Converters
+ * @subpackage PDFdefault
+ * @author Greg Beaver <cellog@php.net>
+ * @copyright 2002-2006 Gregory Beaver
+ * @license http://www.opensource.org/licenses/lgpl-license.php LGPL
+ * @version CVS: $Id: PDFdefaultConverter.inc 236747 2007-05-31 02:02:42Z ashnazg $
+ * @filesource
+ * @link http://www.phpdoc.org
+ * @link http://pear.php.net/PhpDocumentor
+ * @since 1.2
+ */
+/**
+ * The Cezpdf class library
+ */
+include_once('phpDocumentor/Converters/PDF/default/class.phpdocpdf.php');
+/**
+ * PDF output converter.
+ * This Converter takes output from the {@link Parser} and converts it to PDF-ready output for use with {@link Cezpdf}.
+ * This is now beta code
+ *
+ * @package Converters
+ * @subpackage PDFdefault
+ * @author Greg Beaver <cellog@php.net>
+ * @since 1.1
+ * @version $Id: PDFdefaultConverter.inc 236747 2007-05-31 02:02:42Z ashnazg $
+ * @todo Implement links to conflicts/inheritance
+ */
+class PDFdefaultConverter extends Converter
+{
+ /**
+ * default PDF Converter wants elements sorted by type as well as alphabetically
+ * @see Converter::$sort_page_contents_by_type
+ * @var boolean
+ */
+ var $sort_absolutely_everything = true;
+ var $leftindex = array('classes' => false, 'pages' => false, 'functions' => false, 'defines' => false, 'globals' => false);
+ var $pagepackage_pagenums = array();
+ var $classpackage_pagenums = array();
+ /** @var string always PDF */
+ var $outputformat = 'PDF';
+ /** @var string always default */
+ var $name = 'default';
+ var $curpagepackage = false;
+ var $curclasspackage = false;
+ var $smarty_dir;
+ /**
+ * @var Cezpdf
+ */
+ var $pdf = false;
+ var $ric_set = array();
+ /**
+ * Source files for appendix C are stored here
+ *
+ * Format: array(array(package => packagename, code => array(highlightedsource code 1, ...)))
+ * @var array
+ */
+ var $_sourcecode;
+ /**
+ * @see Converter::Converter()
+ */
+ function PDFdefaultConverter(&$allp, &$packp, &$classes, &$procpages, $po, $pp, $qm, $targetDir, $templateDir, $title)
+ {
+ Converter::Converter($allp, $packp, $classes, $procpages, $po, $pp, $qm, $targetDir, $templateDir, $title);
+ $this->pdf =& new phpdocpdf($this, $this->getConverterDir() . PATH_DELIMITER .'templates/fonts/','letter');
+ $this->pdf->selectFont($this->getConverterDir() . PATH_DELIMITER .'templates/fonts/Helvetica.afm');
+// put a line top and bottom on all the pages
+ $this->pdf->ezSetMargins(50,70,50,50);
+ $template = &$this->newSmarty();
+ $this->pdf->ezText($template->fetch('footer.tpl'));
+ $template->assign('title',$title);
+ if (file_exists($this->templateDir . 'templates' . PATH_DELIMITER . 'media'. PATH_DELIMITER .'logo.jpg'))
+ {
+ $template->assign('logo',$this->templateDir . 'templates' . PATH_DELIMITER . 'media'. PATH_DELIMITER .'logo.jpg');
+ }
+ $this->pdf->ezText($template->fetch('title_page.tpl'));
+ unset($template);
+ }
+
+ function writeSource($path, $value)
+ {
+ $templ = &$this->newSmarty();
+ $pathinfo = $this->proceduralpages->getPathInfo($path, $this);
+ $templ->assign('source',$value);
+ $templ->assign('package',$pathinfo['package']);
+ $templ->assign('subpackage',$pathinfo['subpackage']);
+ $templ->assign('name',$pathinfo['name']);
+ $templ->assign('source_loc',$pathinfo['source_loc']);
+ $templ->assign('docs',$pathinfo['docs']);
+ $templ->assign('dest', $this->getFileSourceName($path));
+ $this->setSourcePaths($path);
+ $this->_sourcecode[$pathinfo['package']][] = $templ->fetch('filesource.tpl');
+ }
+
+ function postProcess($text)
+ {
+ return htmlspecialchars($text);
+ }
+
+ function writeExample($title, $path, $source)
+ {
+ $templ = &$this->newSmarty();
+ $templ->assign('source',$source);
+ if (empty($title))
+ {
+ $title = 'example';
+ addWarning(PDERROR_EMPTY_EXAMPLE_TITLE, $path, $title);
+ }
+ $templ->assign('title',$title);
+ $templ->assign('file',$path);
+ $this->pdf->ezText($templ->fetch('examplesource.tpl'));
+ }
+
+ function getExampleLink($path, $title)
+ {
+ return '';
+ return $this->returnLink('{$subdir}__examplesource' . PATH_DELIMITER . 'exsource_'.$path.'.html',$title);
+ }
+
+ function getSourceLink($path)
+ {
+// var_dump(htmlentities('<c:ilink:'.$this->getFileSourceName($path).'>Source Code for this file</c:ilink>'));
+ return '<c:ilink:'.$this->getFileSourceName($path).'>Source Code for this file</c:ilink>';
+ }
+
+ function getFileSourceName($path, $anchor = '')
+ {
+ return urlencode($anchor . parent::getFileSourceName($path));
+ }
+
+ /**
+ * Retrieve a Converter-specific anchor to a segment of a source code file
+ * parsed via a {@tutorial tags.filesource.pkg} tag.
+ * @param string full path to source file
+ * @param string name of anchor
+ * @param string link text, if this is a link
+ * @param boolean returns either a link or a destination based on this
+ * parameter
+ * @return string link to an anchor, or the anchor
+ */
+ function getSourceAnchor($sourcefile,$anchor,$text = '',$link = false)
+ {
+ if ($link)
+ {
+ return '<c:ilink:' . $this->getFileSourceName($sourcefile, $anchor). '>' . $text . '</c:ilink>';
+ } else
+ {
+ return '</text><pdffunction:addDestination arg="'.$this->getFileSourceName($sourcefile, $anchor).'" arg="FitH" arg=$this->y /><text size="8">';
+ }
+ }
+
+ /**
+ * Returns a bookmark using Cezpdf 009
+ *
+ * @param abstractLink a descendant of abstractlink should be passed, and never text
+ * @param string text to display in the link
+ */
+ function returnSee(&$element, $eltext = false)
+ {
+ if (!$element) return false;
+ if (!$eltext)
+ {
+ $eltext = '';
+ switch($element->type)
+ {
+ case 'tutorial' :
+ $eltext = $element->title;
+ break;
+ case 'method' :
+ case 'var' :
+ case 'const' :
+ $eltext .= $element->class.'::';
+ case 'page' :
+ case 'define' :
+ case 'class' :
+ case 'function' :
+ case 'global' :
+ default :
+ $eltext .= $element->name;
+ if ($element->type == 'function' || $element->type == 'method') $eltext .= '()';
+ break;
+ }
+ }
+ switch ($element->type)
+ {
+ case 'tutorial' :
+ return '<c:ilink:'.urlencode($element->type.$element->package.$element->subpackage.$element->name.$element->section).'>'.$eltext.'</c:ilink>';
+ case 'page' :
+ return '<c:ilink:'.urlencode($element->type.$element->package.$element->path).'>'.$eltext.'</c:ilink>';
+ case 'define' :
+ case 'global' :
+ case 'class' :
+ case 'function' :
+ return '<c:ilink:'.urlencode($element->type.$element->package.$element->name).'>'.$eltext.'</c:ilink>';
+ case 'method' :
+ case 'var' :
+ case 'const' :
+ return '<c:ilink:'.urlencode($element->type.$element->package.$element->class.'::'.$element->name).'>'.$eltext.'</c:ilink>';
+ }
+ return $element;
+ }
+
+ /**
+ * @param string
+ * @param string
+ * @return string <c:alink:$link>$text</c:alink>
+ */
+ function returnLink($link,$text)
+ {
+ return "<c:alink:$link>$text</c:alink>";
+ }
+
+ /**
+ * Convert README/INSTALL/CHANGELOG file contents to output format
+ * @param README|INSTALL|CHANGELOG
+ * @param string contents of the file
+ */
+ function Convert_RIC($name, $contents)
+ {
+ $this->ric_set[$name] = $contents;
+ }
+
+ function convertDocBlock(&$element)
+ {
+ if (!$element->docblock) return;
+ $template = &$this->newSmarty();
+
+ $nopackage = true;
+ if ($element->type == 'page' || $element->type == 'class') $nopackage = false;
+ $tagses = $element->docblock->listTags();
+ $tags = array();
+ $names = array('staticvar' => 'Static Variable','deprec' => 'Deprecated','abstract' => 'Abstract Element','todo' => 'TODO');
+ if (!$nopackage)
+ {
+ $tags[] = array('keyword' => 'Package','data' => $element->docblock->package);
+ if (!empty($element->docblock->subpackage)) $tags[] = array('keyword' => 'Sub-Package','data' => $element->docblock->subpackage);
+ }
+ if ($element->docblock->var)
+ {
+ $a = $element->docblock->var->Convert($this);
+ if (!empty($a))
+ $tags[] = array('keyword' => 'Var', 'data' => $a);
+ }
+ if ($element->docblock->funcglobals)
+ foreach($element->docblock->funcglobals as $global => $val)
+ {
+ if ($a = $this->getGlobalLink($global,$element->docblock->package))
+ {
+ $global = $a;
+ }
+ $b = Converter::getLink($val[0]);
+ if (is_object($b) && phpDocumentor_get_class($b) == 'classlink')
+ {
+ $val[0] = $this->returnSee($b);
+ }
+ $tags[] = array('keyword' => 'Global Variable Used','data' => $val[0].' '.$global.': '.$val[1]->Convert($this));
+ }
+ if ($element->docblock->statics)
+ foreach($element->docblock->statics as $static => $val)
+ {
+ $a = $val->Convert($this);
+ $tags[] = array('keyword' => 'Static Variable Used','data' => $val->converted_returnType.' '.$static.': '.$a);
+ }
+ if ($element->docblock->properties)
+ foreach($element->docblock->properties as $property => $val)
+ {
+ $a = $val->Convert($this);
+ $tags[] = array('keyword' => ucfirst($val->keyword),'data' => $val->converted_returnType.' '.$property.': '.$a);
+ }
+ foreach($tagses as $tag)
+ {
+ if (isset($names[$tag->keyword])) $tag->keyword = $names[$tag->keyword];
+ $tags[] = array("keyword" => ucfirst($tag->keyword),"data" => $tag->Convert($this));
+ }
+ $utags = array();
+ foreach($element->docblock->unknown_tags as $keyword => $t)
+ {
+ foreach($t as $tag)
+ $utags[] = array('keyword' => $keyword, 'data' => $tag->Convert($this));
+ }
+ if ($element->type == 'packagepage') return;
+ $sdesc = $element->docblock->getSDesc($this);
+ $desc = $element->docblock->getDesc($this);
+ $template->assign('utags',$utags);
+ $template->assign('tags',$tags);
+ $template->assign('sdesc',$sdesc);
+ $template->assign('desc',$desc);
+ if (false) // $element->type != 'page')
+ {
+ if ($element->type != 'var' && $element->type != 'method')
+ {
+ $this->pdf->addDestination(urlencode($element->type.$element->docblock->package.$element->name),'FitH',$this->pdf->y);
+ } else
+ {
+ $this->pdf->addDestination(urlencode($element->type.$element->docblock->package.$element->class.'::'.$element->name),'FitH',$this->pdf->y);
+ }
+ } elseif (false)
+ {
+ $this->pdf->addDestination(urlencode('page'.$element->parent->package.$element->parent->getPath()),'FitH',$this->pdf->y);
+ }
+ $this->convertParams($element);
+ $this->pdf->ezText($template->fetch('docblock.tpl'));
+ }
+
+ function convertParams(&$element)
+ {
+ if ($element->type != 'function' && $element->type != 'method') return;
+ if (count($element->docblock->params))
+ {
+ $template = &$this->newSmarty();
+ $params = array();
+ if (count($element->docblock->params))
+ foreach($element->docblock->params as $param => $val)
+ {
+ $a = $val->Convert($this);
+ $params[] = array("name" => $param,"type" => $val->converted_returnType,"description" => $a);
+ }
+ $template->assign('params',$params);
+ $this->pdf->ezText($template->fetch('params.tpl'));
+ }
+ }
+
+ function convertGlobal(&$element)
+ {
+ $sdesc = '';
+ if ($element->docblock->sdesc)
+ {
+ $sdesc = $element->docblock->sdesc->Convert($this);
+ }
+ $template = &$this->newSmarty();
+ $template->assign('linenumber',$element->getLineNumber());
+ if ($this->hasSourceCode($element->getPath()))
+ $template->assign('slink',$this->getSourceAnchor($element->getPath(),$element->getLineNumber(),$element->getLineNumber(),true));
+ else
+ $template->assign('slink', false);
+ $template->assign('dest', urlencode($element->type.$element->docblock->package.$element->name));
+ $template->assign('type',$element->getDataType($this));
+ $template->assign('name',$element->name);
+ $template->assign('value',$this->getGlobalValue($element->getValue()));
+ $template->assign('sdesc',$sdesc);
+ $this->pdf->ezText($template->fetch('global.tpl'));
+ $this->convertDocBlock($element);
+ }
+
+ function getGlobalValue($value)
+ {
+ return parent::getGlobalValue(htmlspecialchars($value));
+ }
+
+ function convertMethod(&$element)
+ {
+ $sdesc = '';
+ if ($element->docblock->sdesc)
+ {
+ $sdesc = $element->docblock->sdesc->Convert($this);
+ }
+ $params = array();
+ if (count($element->docblock->params))
+ foreach($element->docblock->params as $param => $val)
+ {
+ $a = $val->Convert($this);
+ $params[$param] = array("var" => $param,"datatype" => $val->converted_returnType,"data" => $a);
+ }
+ if ($element->docblock->return)
+ {
+ if (!$element->docblock->return->returnType) $element->docblock->return->returnType = 'void';
+ }
+ $template = &$this->newSmarty();
+ $template->assign('class',$this->class);
+ $template->assign('constructor',$element->isConstructor);
+ $template->assign('dest', urlencode($element->type.$element->docblock->package.$element->class.'::'.$element->name));
+ $template->assign('linenumber',$element->getLineNumber());
+ if ($this->hasSourceCode($element->getPath()))
+ $template->assign('slink',$this->getSourceAnchor($element->getPath(),$element->getLineNumber(),$element->getLineNumber(),true));
+ else
+ $template->assign('slink',false);
+ $ret = 'void';
+ if ($element->docblock->return)
+ {
+ $ret = $element->docblock->return->returnType;
+ }
+ $template->assign('return',$ret);
+ $template->assign('functioncall',$element->getFunctionCall());
+ $template->assign('intricatefunctioncall',$element->getIntricateFunctionCall($this,$params));
+ $template->assign('sdesc',$sdesc);
+ $this->pdf->ezText($template->fetch('method.tpl'));
+ $this->convertDocBlock($element);
+ }
+
+ function convertVar(&$element)
+ {
+ $sdesc = '';
+ if ($element->docblock->sdesc)
+ {
+ $sdesc = $element->docblock->sdesc->Convert($this);
+ }
+ $template = &$this->newSmarty();
+ $template->assign('class',$this->class);
+ $template->assign('linenumber',$element->getLineNumber());
+ if ($this->hasSourceCode($element->getPath()))
+ $template->assign('slink',$this->getSourceAnchor($element->getPath(),$element->getLineNumber(),$element->getLineNumber(),true));
+ else
+ $template->assign('slink',false);
+ $template->assign('type',$element->docblock->var->returnType);
+ $template->assign('name',$element->name);
+ $template->assign('dest', urlencode($element->type.$element->docblock->package.$element->class.'::'.$element->name));
+ $template->assign('value',$element->value);
+ $template->assign('sdesc',$sdesc);
+ $this->pdf->ezText($template->fetch('var.tpl'));
+ $this->convertDocBlock($element);
+ }
+
+ function convertConst(&$element)
+ {
+ $sdesc = '';
+ if ($element->docblock->sdesc)
+ {
+ $sdesc = $element->docblock->sdesc->Convert($this);
+ }
+ $template = &$this->newSmarty();
+ $template->assign('class',$this->class);
+ $template->assign('linenumber',$element->getLineNumber());
+ if ($this->hasSourceCode($element->getPath()))
+ $template->assign('slink',$this->getSourceAnchor($element->getPath(),$element->getLineNumber(),$element->getLineNumber(),true));
+ else
+ $template->assign('slink',false);
+ $template->assign('name',$element->name);
+ $template->assign('dest', urlencode($element->type.$element->docblock->package.$element->class.'::'.$element->name));
+ $template->assign('value',$element->value);
+ $template->assign('sdesc',$sdesc);
+ $this->pdf->ezText($template->fetch('const.tpl'));
+ $this->convertDocBlock($element);
+ }
+
+ function convertClass(&$element)
+ {
+ $template = &$this->newSmarty();
+ if ($this->curclasspackage != $element->docblock->package)
+ {
+ $template->assign('includeheader',true);
+ if (isset($this->package_pages[$element->docblock->package]))
+ {
+ $template->assign('ppage',$this->package_pages[$element->docblock->package]);
+ $template->assign('isclass',true);
+ unset($this->package_pages[$element->docblock->package]);
+ }
+ $template->assign('classeslink',rawurlencode("Package ".$element->docblock->package." Classes"));
+ }
+ $sdesc = '';
+ if ($element->docblock->sdesc)
+ {
+ $sdesc = $element->docblock->sdesc->Convert($this);
+ }
+ $this->curclasspackage = $element->docblock->package;
+ $template->assign('dest', urlencode($element->type.$element->docblock->package.$element->name));
+ $template->assign('package',$element->docblock->package);
+ $template->assign('linenumber',$element->getLineNumber());
+ if ($this->hasSourceCode($element->getPath()))
+ $template->assign('slink',$this->getSourceAnchor($element->getPath(),$element->getLineNumber(),$element->getLineNumber(),true));
+ else
+ $template->assign('slink',false);
+ $template->assign('name',$element->name);
+ $template->assign('sdesc',$sdesc);
+ $this->pdf->ezText($template->fetch('class.tpl'));
+ $this->convertDocBlock($element);
+ }
+
+ function convertInclude(&$element)
+ {
+ $template = &$this->newSmarty();
+ $template->assign('linenumber',$element->getLineNumber());
+ if ($this->hasSourceCode($element->getPath()))
+ $template->assign('slink',$this->getSourceAnchor($element->getPath(),$element->getLineNumber(),$element->getLineNumber(),true));
+ else
+ $template->assign('slink',false);
+ $template->assign('name',$element->name);
+ $template->assign('value',$this->getIncludeValue($element->getValue(), $element->getPath()));
+ $this->pdf->ezText($template->fetch('include.tpl'));
+ $this->convertDocBlock($element);
+ }
+
+ function convertFunction(&$element)
+ {
+ $sdesc = '';
+ if ($element->docblock->sdesc)
+ {
+ $sdesc = $element->docblock->sdesc->Convert($this);
+ }
+ $params = array();
+ if (count($element->docblock->params))
+ foreach($element->docblock->params as $param => $val)
+ {
+ $a = $val->Convert($this);
+ $params[$param] = array("var" => $param,"datatype" => $val->converted_returnType,"data" => $a);
+ }
+ if (!$element->docblock->return)
+ {
+ $element->docblock->return->returnType = 'void';
+ }
+ $template = &$this->newSmarty();
+ $template->assign('dest', urlencode($element->type.$element->docblock->package.$element->name));
+ $template->assign('linenumber',$element->getLineNumber());
+ if ($this->hasSourceCode($element->getPath()))
+ $template->assign('slink',$this->getSourceAnchor($element->getPath(),$element->getLineNumber(),$element->getLineNumber(),true));
+ else
+ $template->assign('slink',false);
+ $template->assign('return',$element->docblock->return->returnType);
+ $template->assign('functioncall',$element->getFunctionCall());
+ $template->assign('intricatefunctioncall',$element->getIntricateFunctionCall($this,$params));
+ $template->assign('sdesc',$sdesc);
+ $this->pdf->ezText($template->fetch('function.tpl'));
+ $this->convertDocBlock($element);
+ }
+
+ function convertDefine(&$element)
+ {
+ $sdesc = '';
+ if ($element->docblock->sdesc)
+ {
+ $sdesc = $element->docblock->sdesc->Convert($this);
+ }
+ $template = &$this->newSmarty();
+ $template->assign('linenumber',$element->getLineNumber());
+ if ($this->hasSourceCode($element->getPath()))
+ $template->assign('slink',$this->getSourceAnchor($element->getPath(),$element->getLineNumber(),$element->getLineNumber(),true));
+ else
+ $template->assign('slink',false);
+ $template->assign('name',$element->name);
+ $template->assign('dest', urlencode($element->type.$element->docblock->package.$element->name));
+ $template->assign('value',$element->value);
+ $template->assign('sdesc',$sdesc);
+ $this->pdf->ezText($template->fetch('define.tpl'));
+ $this->convertDocBlock($element);
+ }
+
+ function convertPage(&$element)
+ {
+ $template = &$this->newSmarty();
+ $template->assign('includeheader',false);
+ $sdesc = '';
+ if ($element->docblock->sdesc)
+ {
+ $sdesc = $element->docblock->sdesc->Convert($this);
+ }
+ if (count($element->elements) || ($sdesc) || count($element->docblock->tags))
+ {
+ if ($this->curpagepackage != $element->parent->package)
+ {
+ $template->assign('includeheader',true);
+ if (isset($this->package_pages[$element->parent->package]))
+ {
+ $template->assign('ppage',$this->package_pages[$element->parent->package]);
+ unset($this->package_pages[$element->parent->package]);
+ }
+ }
+ $this->curpagepackage = $element->parent->package;
+ $template->assign('dest', urlencode('page'.$element->parent->package.$element->parent->getPath()));
+ $template->assign('sdesc',$sdesc);
+ $template->assign('package',$element->parent->package);
+ $template->assign('name',$element->parent->file);
+ $this->pdf->ezText($template->fetch('page.tpl'));
+ $this->convertDocBlock($element);
+ }
+ }
+
+
+ /**
+ * Used to translate an XML DocBook tag from a tutorial by reading the
+ * options.ini file for the template.
+ * @param string tag name
+ * @param string any attributes Format: array(name => value)
+ * @param string the tag contents, if any
+ * @param string the tag contents, if any, unpost-processed
+ * @return string
+ */
+ function TranslateTag($name,$attr,$cdata,$unconvertedcdata)
+ {
+ if ($name == 'example' && @$attr['role'] == 'html')
+ {
+ $cdata = htmlspecialchars($cdata);
+ $unconvertedcdata = htmlspecialchars($unconvertedcdata);
+ }
+ if ($name == 'programlisting' && @$attr['role'] == 'php')
+ {
+ $unconvertedcdata = strtr($unconvertedcdata, array_flip(get_html_translation_table(HTML_SPECIALCHARS)));
+ $a = parent::TranslateTag($name, $attr, $cdata, $unconvertedcdata);
+// var_dump(htmlspecialchars($cdata), htmlspecialchars($unconvertedcdata), htmlspecialchars($a));
+ return $a;
+ }
+ return parent::TranslateTag($name, $attr, $cdata, $unconvertedcdata);
+ }
+
+ function getPageName(&$element)
+ {
+ if (phpDocumentor_get_class($element) == 'parserpage') return $element->getName();
+ return $element->parent->getName();
+ }
+
+ function getTutorialId($package,$subpackage,$tutorial,$id)
+ {
+ return 'tutorial'.$package.$subpackage.$tutorial.$id;
+ }
+
+ function getCData($value)
+ {
+ return str_replace(array('<c:','<C:'),array("&lt;c:","&lt;C:"),$value);
+ }
+
+ /**
+ * @deprecated html package pages just don't work with PDF, use {@tutorial tutorials.pkg}
+ */
+ function convertPackagepage(&$element)
+ {
+ $x = $element->Convert($this);
+ $x = substr($x,strpos($x,'<body'));
+ $this->package_pages[$element->package] = trim(substr($x,strpos($x,'>') + 1,strpos($x,'</body>') - 6));
+ }
+
+ function convertTutorial(&$element)
+ {
+ $x = $element->Convert($this, true);
+ $template = &$this->newSmarty();
+ $template->assign('package',$element->package);
+ $template->assign('subpackage',$element->subpackage);
+ $template->assign('contents',$x);
+ $template->assign('title',$element->getTitle($this));
+ $template->assign('child',$element->parent);
+ if (isset($element->parent->parent)) $template->assign('hasparent',$element->parent->parent);
+ $template->assign('element',$element);
+ $this->pdf->ezText($template->fetch('tutorial.tpl'));
+ }
+
+ /**
+ * returns a template-enabled array of class trees
+ *
+ * @param string $package package to generate a class tree for
+ * @see $roots, getRootTree()
+ */
+ function generateFormattedClassTrees($package)
+ {
+ if (!isset($this->roots[$package])) return array();
+ $roots = $trees = array();
+ $roots = $this->roots[$package];
+ for($i=0;$i<count($roots);$i++)
+ {
+ $trees[] = array('class' => $roots[$i],'class_tree' => "<ul>\n".$this->getRootTree($this->getSortedClassTreeFromClass($roots[$i],$package,''),$package)."</ul>\n");
+ }
+ return $trees;
+ }
+
+ /**
+ * return formatted class tree for the Class Trees page
+ *
+ * @param array $tree output from {@link getSortedClassTreeFromClass()}
+ * @see Classes::$definitechild, generateFormattedClassTrees()
+ * @return string
+ */
+ function getRootTree($tree,$package)
+ {
+ if (!$tree) return '';
+ $my_tree = '';
+ $cur = '#root';
+ $lastcur = array(false);
+ $kids = array();
+ $dopar = false;
+ if ($tree[$cur]['parent'])
+ {
+ $dopar = true;
+ if (!is_object($tree[$cur]['parent']))
+ {
+// debug("parent ".$tree[$cur]['parent']." not found");
+ $my_tree .= '<li>' . $tree[$cur]['parent'] .'<ul>';
+ }
+ else
+ {
+// debug("parent ".$this->returnSee($tree[$cur]['parent'], false, false)." in other package");
+ $my_tree .= '<li>' . $this->returnSee($tree[$cur]['parent'], false, false);
+ if ($tree[$cur]['parent']->package != $package) $my_tree .= ' <b>(Different package)</b><ul>';
+ }
+ }
+ do
+ {
+// fancy_debug($cur,$lastcur,$kids);
+ if (count($tree[$cur]['children']))
+ {
+// debug("$cur has children");
+ if (!isset($kids[$cur]))
+ {
+// debug("set $cur kids");
+ $kids[$cur] = 1;
+ $my_tree .= '<li>'.$this->returnSee($tree[$cur]['link'], false, false);
+ $my_tree .= '<ul>'."\n";
+ }
+ array_push($lastcur,$cur);
+ list(,$cur) = each($tree[$cur]['children']);
+// var_dump('listed',$cur);
+ if ($cur)
+ {
+ $cur = $cur['package'] . '#' . $cur['class'];
+// debug("set cur to child $cur");
+// $my_tree .= '<li>'.$this->returnSee($tree[$cur]['link'], false, false);
+ continue;
+ } else
+ {
+// debug("end of children for $cur");
+ $cur = array_pop($lastcur);
+ $cur = array_pop($lastcur);
+ $my_tree .= '</ul></li>'."\n";
+ if ($dopar && ($cur == '#root' || !$cur)) $my_tree .= '</ul></li>';
+ }
+ } else
+ {
+// debug("$cur has no children");
+ $my_tree .= '<li>'.$this->returnSee($tree[$cur]['link'], false, false)."</li>";
+ if ($dopar && $cur == '#root') $my_tree .= '</ul></li>';
+ $cur = array_pop($lastcur);
+ }
+ } while ($cur);
+ return $my_tree;
+ }
+
+ /**
+ * calls {@link Cezpdf::ezOutput()} and writes documentation.pdf to targetDir
+ */
+ function Output($title = 'Generated Documentation')
+ {
+ phpDocumentor_out("Generating PDF file..");
+ flush();
+ $template = &$this->newSmarty();
+ $this->pdf->ezText($template->fetch('appendix_title_page.tpl'));
+ $trees = array();
+ foreach($this->all_packages as $package => $rest)
+ {
+ if (!isset($this->pkg_elements[$package])) continue;
+ $a = array();
+ phpDocumentor_out('.');
+ flush();
+ $a['package'] = $package;
+ $a["trees"] = $this->generateFormattedClassTrees($package);
+ $trees[] = $a;
+ }
+ $template->assign('trees',$trees);
+ $this->pdf->ezText($template->fetch('classtree.tpl'));
+ phpDocumentor_out('.');
+ if (count($this->ric_set))
+ $this->pdf->ezText($template->fetch('ric_title_page.tpl'));
+ foreach($this->ric_set as $name => $contents)
+ {
+ $template->assign('contents',$contents);
+ $template->assign('name',$name);
+ $this->pdf->ezText($template->fetch('ric.tpl'));
+ }
+ if (count($this->_sourcecode))
+ {
+ $this->pdf->ezText($template->fetch('source_title_page.tpl'));
+ $template->assign('source',$this->_sourcecode);
+ $this->pdf->ezText($template->fetch('source_loop.tpl'));
+ }
+ flush();
+ if (count($this->todoList))
+ {
+ $todolist = array();
+ foreach($this->todoList as $package => $alltodos)
+ {
+ foreach($alltodos as $todos)
+ {
+ $converted = array();
+ $converted['link'] = $this->returnSee($todos[0]);
+ if (!is_array($todos[1]))
+ {
+ $converted['todos'][] = $todos[1]->Convert($this);
+ } else
+ {
+ foreach($todos[1] as $todo)
+ {
+ $converted['todos'][] = $todo->Convert($this);
+ }
+ }
+ $todolist[$package][] = $converted;
+ }
+ }
+ $template->assign('todos',$todolist);
+
+ $this->pdf->ezText($template->fetch('todolist.tpl'));
+ }
+ if (false) {
+ $fp = @fopen("C:/Documents and Settings/Owner/Desktop/pdfsourceorig.txt",'w');
+ if ($fp)
+ {
+ $a = $this->pdf->ezOutput(true); // debug
+ fwrite($fp, $a, strlen($a));
+ fclose($fp);
+ }
+ }
+ $this->pdf->setupTOC();
+ $template->assign('contents',$this->pdf->reportContents);
+ $this->pdf->ezText($template->fetch('toc.tpl'));
+ $x = $this->pdf->ezOutput(false, $template);
+ phpDocumentor_out("done\n");
+ flush();
+ $this->writeFile("documentation.pdf", $x, true);
+ }
+
+ function mystrnatcasecmp($a,$b)
+ {
+ return strnatcasecmp($a[0],$b[0]);
+ }
+
+
+ /**
+ * @param string name of class
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @return mixed false if not found, or an html a link to the class's documentation
+ * @see parent::getClassLink()
+ */
+ function getClassLink($expr,$package, $file = false,$text = false)
+ {
+ $a = Converter::getClassLink($expr,$package,$file);
+ if (!$a) return false;
+ return $this->returnSee($a, $text);
+ }
+
+ /**
+ * @param string name of function
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @return mixed false if not found, or an html a link to the function's documentation
+ * @see parent::getFunctionLink()
+ */
+ function getFunctionLink($expr,$package, $file = false,$text = false)
+ {
+ $a = Converter::getFunctionLink($expr,$package,$file);
+ if (!$a) return false;
+ return $this->returnSee($a, $text);
+ }
+
+ /**
+ * @param string name of define
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @return mixed false if not found, or an html a link to the define's documentation
+ * @see parent::getDefineLink()
+ */
+ function getDefineLink($expr,$package, $file = false,$text = false)
+ {
+ $a = Converter::getDefineLink($expr,$package,$file);
+ if (!$a) return false;
+ return $this->returnSee($a, $text);
+ }
+
+ /**
+ * @param string name of global variable
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @return mixed false if not found, or an html a link to the global variable's documentation
+ * @see parent::getGlobalLink()
+ */
+ function getGlobalLink($expr,$package, $file = false,$text = false)
+ {
+ $a = Converter::getGlobalLink($expr,$package,$file);
+ if (!$a) return false;
+ return $this->returnSee($a, $text);
+ }
+
+ /**
+ * @param string name of procedural page
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @return mixed false if not found, or an html a link to the procedural page's documentation
+ * @see parent::getPageLink()
+ */
+ function getPageLink($expr,$package, $path = false,$text = false)
+ {
+ $a = Converter::getPageLink($expr,$package,$path);
+ if (!$a) return false;
+ return $this->returnSee($a, $text);
+ }
+
+ /**
+ * @param string name of method
+ * @param string class containing method
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @return mixed false if not found, or an html a link to the method's documentation
+ * @see parent::getMethodLink()
+ */
+ function getMethodLink($expr,$class,$package, $file = false,$text = false)
+ {
+ $a = Converter::getMethodLink($expr,$class,$package,$file);
+ if (!$a) return false;
+ return $this->returnSee($a, $text);
+ }
+
+ /**
+ * @param string name of var
+ * @param string class containing var
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @param boolean return just the URL, or enclose it in an html a tag
+ * @return mixed false if not found, or an html a link to the var's documentation
+ * @see parent::getVarLink()
+ */
+ function getVarLink($expr,$class,$package, $file = false,$text = false)
+ {
+ $a = Converter::getVarLink($expr,$class,$package,$file);
+ if (!$a) return false;
+ return $this->returnSee($a, $text);
+ }
+
+ /**
+ * @param string name of class constant
+ * @param string class containing class constant
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @param boolean return just the URL, or enclose it in an html a tag
+ * @return mixed false if not found, or an html a link to the var's documentation
+ * @see parent::getConstLink()
+ */
+ function getConstLink($expr,$class,$package, $file = false,$text = false)
+ {
+ $a = Converter::getConstLink($expr,$class,$package,$file);
+ if (!$a) return false;
+ return $this->returnSee($a, $text);
+ }
+
+ function setTemplateDir($dir)
+ {
+ Converter::setTemplateDir($dir);
+ $this->smarty_dir = $this->templateDir;
+ }
+
+ /** @return 1 always the same */
+ function getState()
+ {
+ return 1;
+ }
+
+ /**
+ * @see parent::unmangle()
+ */
+ function unmangle($notused,$source)
+ {
+// $source = str_replace("\n","<mybr>",$source);
+ return $source;
+ }
+}
+?> \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/ParserPDF.inc b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/ParserPDF.inc
new file mode 100755
index 00000000..1339b65a
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/ParserPDF.inc
@@ -0,0 +1,564 @@
+<?php
+/**
+ * This class handles the XML-based CezPDF markup language created to allow
+ * templates for the PDFdefaultConverter
+ *
+ * phpDocumentor :: automatic documentation generator
+ *
+ * PHP versions 4 and 5
+ *
+ * Copyright (c) 2002-2006 Gregory Beaver
+ *
+ * LICENSE:
+ *
+ * This library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Lesser General
+ * Public License as published by the Free Software Foundation;
+ * either version 2.1 of the License, or (at your option) any
+ * later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ * @package Converters
+ * @subpackage PDFdefault
+ * @author Greg Beaver <cellog@php.net>
+ * @copyright 2002-2006 Gregory Beaver
+ * @license http://www.opensource.org/licenses/lgpl-license.php LGPL
+ * @version CVS: $Id: ParserPDF.inc 238276 2007-06-22 14:58:30Z ashnazg $
+ * @filesource
+ * @link http://www.phpdoc.org
+ * @link http://pear.php.net/PhpDocumentor
+ * @since 1.2
+ */
+/** when <text> is found in an ezText input */
+define('PHPDOCUMENTOR_PDF_EVENT_TEXT', 600);
+/** when <text> is found in an ezText input */
+define('PHPDOCUMENTOR_PDF_STATE_TEXT', 700);
+/** used for parsing stuff between <text> */
+define('PHPDOCUMENTOR_PDF_EVENT_CONTENT', 601);
+/** used for parsing stuff between <text> */
+define('PHPDOCUMENTOR_PDF_STATE_CONTENT', 701);
+/** when <font> is found in an ezText input */
+define('PHPDOCUMENTOR_PDF_EVENT_FONT', 602);
+/** when <font> is found in an ezText input */
+define('PHPDOCUMENTOR_PDF_STATE_FONT', 702);
+/** when <newpage/> is found in an ezText input */
+define('PHPDOCUMENTOR_PDF_EVENT_NEWPAGE', 603);
+/** when <newpage/> is found in an ezText input */
+define('PHPDOCUMENTOR_PDF_STATE_NEWPAGE', 703);
+/** when <pdffunction> is found in an ezText input */
+define('PHPDOCUMENTOR_PDF_EVENT_PDFFUNCTION', 604);
+/** when <pdffunction> is found in an ezText input */
+define('PHPDOCUMENTOR_PDF_STATE_PDFFUNCTION', 704);
+
+
+/**
+ * @package Converters
+ * @subpackage PDFdefault
+ * @author Greg Beaver <cellog@php.net>
+ * @since 1.2
+ */
+class PDFParser extends Parser
+{
+ /**
+ * Mapping of event constants to events handler function names
+ * @var array
+ * @access private
+ */
+ var $eventHandlers
+ = array(
+ PHPDOCUMENTOR_PDF_EVENT_TEXT => 'handleText',
+ PHPDOCUMENTOR_PDF_EVENT_FONT => 'handleFont',
+ PHPDOCUMENTOR_PDF_EVENT_NEWPAGE => 'handleNewPage',
+ PARSER_EVENT_QUOTE => 'handleQuote',
+ PARSER_EVENT_NOEVENTS => 'defaultHandler',
+ PHPDOCUMENTOR_PDF_EVENT_CONTENT => 'handleContent',
+ PHPDOCUMENTOR_PDF_EVENT_PDFFUNCTION => 'handlePDFfunction',
+ );
+
+ /**
+ * Sets up the wordparser for this class
+ */
+ function PDFParser()
+ {
+ $this->wp = new WordParser;
+ $this->setupStates();
+ }
+ /**
+ * Parse text for PDFParser XML tags, and add the text to the PDF file
+ *
+ * @param string text to parse for PDFParser XML tags
+ * @param string full path to the font directory
+ * @param phpdocpdf
+ * @param boolean determines whether output is saved in a variable or
+ * added directly to the output
+ * @staticvar integer used for recursion limiting if a handler for an event is not found
+ * @return bool
+ */
+ function parse ($parse_data,$fontdir,&$pdf,$debug=false)
+ {
+ static $endrecur = 0;
+ $this->_debug = $debug;
+
+ // initialize variables so E_ALL error_reporting doesn't complain
+ $pevent = 0;
+ $word = 0;
+ $this->p_vars['event_stack'] = new EventStack;
+ $this->p_flags['reset_quote_data'] = true;
+ $this->p_vars['options'] = false;
+ $this->p_vars['font_dir'] = $fontdir;
+ $this->p_vars['text_size'] = false;
+ $this->p_vars['pdf'] = &$pdf;
+
+ $this->wp->setup($parse_data);
+ $this->wp->setWhitespace(true);
+
+ do
+ {
+ $lpevent = $pevent;
+ $pevent = $this->p_vars['event_stack']->getEvent();
+ if ($lpevent != $pevent)
+ {
+ $this->p_vars['last_pevent'] = $lpevent;
+ }
+
+ if ($this->p_vars['last_pevent'] != $pevent)
+ {
+ // its a new event so the word parser needs to be reconfigured
+ $this->configWordParser($pevent);
+ }
+
+
+ $this->p_vars['last_word'] = $word;
+ $word = $this->wp->getWord();
+
+ if (PHPDOCUMENTOR_DEBUG == true)
+ {
+ echo "----------------\n";
+ echo "LAST: |" . $this->p_vars['last_word'] . "|\n";
+// echo "INDEX: ".$this->p_vars['curpar']."\n";
+ echo "PEVENT: " . $this->getParserEventName($pevent) . "\n";
+ echo "LASTPEVENT: " . $this->getParserEventName($this->p_vars['last_pevent']) . "\n";
+ echo $this->wp->getPos() . " WORD: |".$word."|\n\n";
+ }
+ if (isset($this->eventHandlers[$pevent]))
+ {
+ $handle = $this->eventHandlers[$pevent];
+ $this->$handle($word, $pevent);
+ } else
+ {
+ debug('WARNING: possible error, no ParserPDFParser handler for event number '.$pevent);
+ if ($endrecur++ == 25)
+ {
+ die("FATAL ERROR, recursion limit reached");
+ }
+ }
+ } while (!($word === false));
+ if (false) {
+ $fp = fopen("C:/Documents and Settings/Owner/Desktop/pdfsource.txt", "a");
+ fwrite($fp, $this->wp->data);
+ fclose($fp);
+ }
+ }
+
+ /**#@+
+ * Event Handlers
+ * @param string token
+ * @param integer event constant
+ * @access private
+ */
+ function defaultHandler($word, $pevent)
+ {
+ if ($this->checkEventPush($word, $pevent)) return;
+ }
+
+ /**
+ * Handles <newpage />
+ * @tutorial ParserPDF.cls#tags.newpage
+ */
+ function handleNewPage($word, $pevent)
+ {
+ $this->p_vars['event_stack']->popEvent();
+ $this->p_vars['pdf']->ezNewPage($this->_debug);
+ }
+
+ /**
+ * Handles <text></text>
+ * @tutorial ParserPDF.cls#tags.text
+ */
+ function handleText($word, $pevent)
+ {
+ $e = $this->checkEventPush($word, $pevent);
+ $e1 = $this->checkEventPop($word, $pevent);
+ if ($e == PARSER_EVENT_QUOTE) return;
+ if ($e1)
+ {
+ $this->p_flags['textcolor'] = false;
+ if (($a = $this->p_vars['savecolor']) != $this->p_vars['pdf']->getColor())
+ {
+ $this->p_vars['pdf']->setColor($a['r'],$a['g'],$a['b']);
+ }
+ }
+ if ($this->p_vars['last_word'] == '<text')
+ {
+ // set up flags
+ $this->p_flags['paramval'] = false;
+ $this->p_flags['textcolor'] = false;
+ $this->p_vars['curparam'] = false;
+ $this->p_vars['savecolor'] = $this->p_vars['pdf']->getColor();
+ $this->p_vars['options'] = array();
+ unset($this->p_vars['quote_data']);
+ }
+ if (!$this->p_flags['paramval'])
+ {
+ if ($e || $e1) return;
+ if ($word == '=')
+ {
+// debug('set paramval '.$this->p_vars['curparam']);
+ $this->p_flags['paramval'] = true;
+ return;
+ }
+ $this->p_vars['curparam'] = trim($word);
+ } else
+ {
+ if ($this->p_vars['last_pevent'] == PARSER_EVENT_QUOTE)
+ {
+ if ($this->p_vars['curparam'] == 'size')
+ {
+ $this->p_vars['text_size'] = (int)$this->p_vars['quote_data'];
+ $this->p_flags['paramval'] = false;
+ $this->p_vars['curparam'] = false;
+ if (!$e && !$e1)
+ {
+ $this->p_vars['curparam'] = trim($word);
+ }
+ unset($this->p_vars['quote_data']);
+ } elseif ($this->p_vars['curparam'] == 'color')
+ {
+ if ($a = $this->p_vars['pdf']->validHTMLColor($this->p_vars['quote_data']))
+ {
+ $this->p_flags['textcolor'] = true;
+ $this->p_vars['pdf']->setHTMLColor($a);
+ }
+ } else
+ {
+ if ($this->p_vars['quote_data'] === (string)(int)$this->p_vars['quote_data']) $this->p_vars['quote_data'] = (int)$this->p_vars['quote_data'];
+// debug('added '.$this->p_vars['curparam'].' = '.$this->p_vars['quote_data']);
+ $this->p_vars['options'][$this->p_vars['curparam']] = $this->p_vars['quote_data'];
+ $this->p_flags['paramval'] = false;
+ $this->p_vars['curparam'] = false;
+ if (!$e && !$e1)
+ {
+ $this->p_vars['curparam'] = trim($word);
+ }
+ unset($this->p_vars['quote_data']);
+ }
+ }
+ }
+ }
+
+ /**
+ * handles <font></font>
+ * @tutorial ParserPDF.cls#tags.font
+ */
+ function handleFont($word, $pevent)
+ {
+ $e = $this->checkEventPush($word, $pevent);
+ $e1 = $this->checkEventPop($word, $pevent);
+ if ($e == PARSER_EVENT_QUOTE) return;
+ if ($this->p_vars['last_word'] == '<font')
+ {
+ // set up flags
+ $this->p_flags['paramval'] = false;
+ $this->p_vars['curparam'] = false;
+ unset($this->p_vars['quote_data']);
+ }
+ if (!$this->p_flags['paramval'])
+ {
+ if ($e || $e1) return;
+ if ($word == '=')
+ {
+ //debug('set paramval '.$this->p_vars['curparam']);
+ $this->p_flags['paramval'] = true;
+ return;
+ }
+ $this->p_vars['curparam'] = trim($word);
+ } else
+ {
+ if ($this->p_vars['last_pevent'] == PARSER_EVENT_QUOTE)
+ {
+ if ($this->p_vars['curparam'] == 'face')
+ {
+ //debug('set face to '.$this->p_vars['font_dir'] . $this->p_vars['quote_data'] . '.afm');
+ $this->p_vars['pdf']->selectFont($this->p_vars['font_dir'] . $this->p_vars['quote_data'] . '.afm');
+ $this->p_flags['paramval'] = false;
+ $this->p_vars['curparam'] = false;
+ unset($this->p_vars['quote_data']);
+ }
+ }
+ }
+ }
+
+ /**
+ * handles <pdffunction>
+ * @tutorial ParserPDF.cls#tags.pdffunction
+ */
+ function handlePDFFunction($word, $pevent)
+ {
+ $e = $this->checkEventPush($word, $pevent);
+ $e1 = $this->checkEventPop($word, $pevent);
+ if ($e == PARSER_EVENT_QUOTE) return;
+ if ($this->p_vars['last_word'] == '<pdffunction:')
+ {
+ // set up flags
+ $this->p_flags['paramval'] = $this->p_flags['curparam'] = false;
+ $this->p_flags['returnval'] = false;
+ $this->p_vars['funcname'] = trim($word);
+// debug("funcname is $word");
+ $this->p_vars['options'] = array();
+ unset($this->p_vars['quote_data']);
+ if ($e1) addErrorDie(PDERROR_PDFFUNCTION_NO_FUNC);
+ }
+ if (!$this->p_flags['paramval'])
+ {
+ if ($e1)
+ { // call function, no parameters
+ $func = $this->p_vars['funcname'];
+ if (!$func) addErrorDie(PDERROR_PDFFUNCTION_NO_FUNC);
+ if (method_exists($this->p_vars['pdf'],$func))
+ {
+ if (count($this->p_vars['options']))
+ {
+// fancy_debug("calling function $func",$this->p_vars['options']);
+ $a = call_user_func_array(array(&$this->p_vars['pdf'],$func), $this->p_vars['options']);
+ } else
+ {
+// debug("calling function $func");
+ $a = $this->p_vars['pdf']->$func();
+ }
+ if ($this->p_flags['returnval'])
+ {
+// debug("setting returnvar ".$this->p_vars['return_varname']);
+ $this->tempvars[$this->p_vars['return_varname']] = $a;
+ }
+ } else
+ {
+ addWarning(PDERROR_PDF_METHOD_DOESNT_EXIST,$func);
+ }
+ return;
+ }
+ if ($e) return;
+ if ($word == '=')
+ {
+// debug('set paramval '.$this->p_vars['curparam']);
+ $this->p_flags['paramval'] = true;
+ return;
+ }
+ $this->p_vars['curparam'] = trim($word);
+ } else
+ {
+ if ($this->p_vars['last_word'] == '=')
+ { // check to see if we should use a tempvar from a previous return
+ if (substr(trim($word),0,1) == '$')
+ {
+ if (substr(trim($word),0,7) == '$this->')
+ { // this is a pdf var
+ $a = substr(trim($word),7);
+ $a = $this->p_vars['pdf']->$a;
+ // debug("set option to $word");
+ $this->p_vars['options'][] = $a;
+ $this->p_flags['paramval'] = false;
+ unset($this->p_vars['quote_data']);
+ } else
+ { // this is a tempvar
+ if (!isset($this->tempvars[substr(trim($word),1)]))
+ {
+ addErrorDie(PDERROR_PDF_TEMPVAR_DOESNT_EXIST,$this->p_vars['funcname'],trim($word),trim($word));
+ }
+ $a = $this->tempvars[substr(trim($word),1)];
+ // debug("set option to $word");
+ $this->p_vars['options'][] = $a;
+ $this->p_flags['paramval'] = false;
+ unset($this->p_vars['quote_data']);
+ }
+ }
+ } else
+ {
+ if ($this->p_vars['last_pevent'] == PARSER_EVENT_QUOTE)
+ {
+ if ($this->p_vars['quote_data'] === (string)(int)$this->p_vars['quote_data'])
+ {
+ $this->p_vars['quote_data'] = (int)$this->p_vars['quote_data'];
+ }
+ if ($this->p_vars['curparam'] == 'return')
+ {
+// debug("param is return");
+ $this->p_vars['return_varname'] = $this->p_vars['quote_data'];
+ $this->p_flags['returnval'] = true;
+ } else
+ {
+// fancy_debug("set option to arg",$this->p_vars['quote_data']);
+ $this->p_vars['options'][] = $this->p_vars['quote_data'];
+ }
+ $this->p_flags['paramval'] = false;
+ unset($this->p_vars['quote_data']);
+ }
+ }
+ if ($e1)
+ { // call function, with parameters
+ $func = $this->p_vars['funcname'];
+ if (method_exists($this->p_vars['pdf'],$func))
+ {
+ if (count($this->p_vars['options']))
+ {
+// fancy_debug("calling function $func",$this->p_vars['options']);
+ if ($func == 'ezImage') {
+ // set padding to 5, width to 0, resize to none
+ $this->p_vars['options'][] = 5;
+ $this->p_vars['options'][] = 0;
+ $this->p_vars['options'][] = 'none';
+ }
+ $a = call_user_func_array(array(&$this->p_vars['pdf'],$func), $this->p_vars['options']);
+ } else
+ {
+// debug("calling function $func");
+ $a = $this->p_vars['pdf']->$func();
+ }
+ if ($this->p_flags['returnval'])
+ {
+// debug("setting returnvar ".$this->p_vars['return_varname']);
+ $this->tempvars[$this->p_vars['return_varname']] = $a;
+ }
+ } else
+ {
+ addWarning(PDERROR_PDF_METHOD_DOESNT_EXIST,$func);
+ }
+ }
+ }
+ }
+
+ /**
+ * Adds content to the <text> tag
+ */
+ function handleContent($word, $pevent)
+ {
+ if ($e = $this->checkEventPush($word, $pevent))
+ {
+ if ($e == PHPDOCUMENTOR_PDF_EVENT_FONT)
+ { // flush content
+ if (!isset($this->p_vars['content'])) return;
+ $this->p_vars['pdf']->_ezText($this->p_vars['content'],$this->p_vars['text_size'],$this->p_vars['options']);
+ unset($this->p_vars['content']);
+ }
+ return;
+ }
+ if ($this->checkEventPop($word, $pevent))
+ {
+ $this->wp->backupPos($word);
+ if (!isset($this->p_vars['content'])) return;
+ $this->p_vars['pdf']->_ezText($this->p_vars['content'],$this->p_vars['text_size'],$this->p_vars['options']);
+ unset($this->p_vars['content']);
+ } else
+ {
+ if (!isset($this->p_vars['content'])) $this->p_vars['content'] = '';
+ if (isset($this->p_vars['quote_data']))
+ {
+ $this->p_vars['content'] .= $this->p_vars['quote_data'];
+ unset($this->p_vars['quote_data']);
+ }
+ $this->p_vars['content'] .= $word;
+ }
+ }
+ /**#@-*/
+ /**
+ * setup the parser tokens, and the pushEvent/popEvent arrays
+ * @see $tokens, $pushEvent, $popEvent
+ */
+
+ function setupStates()
+ {
+ $this->tokens[STATE_NOEVENTS] = array("<text","<font","<newpage />","<newpage/>",'<pdffunction:','"');
+ $this->tokens[PHPDOCUMENTOR_PDF_STATE_TEXT] = array(">","=",'"',"</text>");
+ $this->tokens[PHPDOCUMENTOR_PDF_STATE_FONT] = array("/>","=",'"');
+ $this->tokens[PHPDOCUMENTOR_PDF_STATE_CONTENT] = array("<font",'<pdffunction:',"</text>");
+ $this->tokens[PHPDOCUMENTOR_PDF_STATE_PDFFUNCTION] = array('"',"/>","="," ");
+ $this->tokens[STATE_QUOTE] = array("\\\"","\\\\","\"");
+ $this->tokens[STATE_ESCAPE] = false;// this tells the word parser to just cycle
+
+ // For each event word to event mapings
+ $this->pushEvent[PARSER_EVENT_QUOTE] =
+ array(
+ "\\" => PARSER_EVENT_ESCAPE
+ );
+ $this->popEvent[PARSER_EVENT_QUOTE] = array("\"");
+##########################
+ $this->pushEvent[PARSER_EVENT_NOEVENTS] =
+ array(
+ "<text" => PHPDOCUMENTOR_PDF_EVENT_TEXT,
+ "<font" => PHPDOCUMENTOR_PDF_EVENT_FONT,
+ "<newpage />" => PHPDOCUMENTOR_PDF_EVENT_NEWPAGE,
+ "<newpage/>" => PHPDOCUMENTOR_PDF_EVENT_NEWPAGE,
+ "<pdffunction:" => PHPDOCUMENTOR_PDF_EVENT_PDFFUNCTION,
+ '"' => PARSER_EVENT_QUOTE,
+ );
+##########################
+ $this->pushEvent[PHPDOCUMENTOR_PDF_EVENT_TEXT] =
+ array(
+ '"' => PARSER_EVENT_QUOTE,
+ '>' => PHPDOCUMENTOR_PDF_EVENT_CONTENT,
+ );
+
+ $this->popEvent[PHPDOCUMENTOR_PDF_EVENT_TEXT] = array("</text>");
+##########################
+ $this->pushEvent[PHPDOCUMENTOR_PDF_EVENT_FONT] =
+ array(
+ '"' => PARSER_EVENT_QUOTE,
+ );
+
+ $this->popEvent[PHPDOCUMENTOR_PDF_EVENT_FONT] = array("/>");
+##########################
+ $this->pushEvent[PHPDOCUMENTOR_PDF_EVENT_PDFFUNCTION] =
+ array(
+ '"' => PARSER_EVENT_QUOTE,
+ );
+
+ $this->popEvent[PHPDOCUMENTOR_PDF_EVENT_PDFFUNCTION] = array("/>");
+##########################
+ $this->pushEvent[PHPDOCUMENTOR_PDF_EVENT_CONTENT] =
+ array(
+ "<font" => PHPDOCUMENTOR_PDF_EVENT_FONT,
+ "<newpage />" => PHPDOCUMENTOR_PDF_EVENT_NEWPAGE,
+ "<newpage/>" => PHPDOCUMENTOR_PDF_EVENT_NEWPAGE,
+ "<pdffunction:" => PHPDOCUMENTOR_PDF_EVENT_PDFFUNCTION,
+ );
+
+ $this->popEvent[PHPDOCUMENTOR_PDF_EVENT_CONTENT] = array("</text>");
+ }
+
+ /**
+ * Return the name of the parser event
+ * @param integer
+ */
+ function getParserEventName ($value)
+ {
+ $lookup = array(
+ PARSER_EVENT_NOEVENTS => "PARSER_EVENT_NOEVENTS",
+ PARSER_EVENT_QUOTE => "PARSER_EVENT_QUOTE",
+ PHPDOCUMENTOR_PDF_EVENT_TEXT => "PHPDOCUMENTOR_PDF_EVENT_TEXT",
+ PHPDOCUMENTOR_PDF_EVENT_CONTENT => "PHPDOCUMENTOR_PDF_EVENT_CONTENT",
+ PHPDOCUMENTOR_PDF_EVENT_FONT => "PHPDOCUMENTOR_PDF_EVENT_FONT",
+ PHPDOCUMENTOR_PDF_EVENT_PDFFUNCTION => "PHPDOCUMENTOR_PDF_EVENT_PDFFUNCTION",
+ );
+ if (isset($lookup[$value]))
+ return $lookup[$value];
+ else return $value;
+ }
+}
+?> \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/class.ezpdf.php b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/class.ezpdf.php
new file mode 100755
index 00000000..f94fe330
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/class.ezpdf.php
@@ -0,0 +1,1571 @@
+<?php
+/**
+ * @package Cpdf
+ */
+/**
+ * Cpdf class
+ */
+include_once('phpDocumentor/Converters/PDF/default/class.pdf.php');
+
+/**
+ * This class will take the basic interaction facilities of the Cpdf class
+ * and make more useful functions so that the user does not have to
+ * know all the ins and outs of pdf presentation to produce something pretty.
+ *
+ * IMPORTANT NOTE
+ * there is no warranty, implied or otherwise with this software.
+ *
+ * @version 009 (versioning is linked to class.pdf.php)
+ * released under a public domain licence.
+ * @author Wayne Munro, R&OS Ltd, {@link http://www.ros.co.nz/pdf}
+ * @package Cpdf
+ */
+class Cezpdf extends Cpdf {
+//==============================================================================
+// this class will take the basic interaction facilities of the Cpdf class
+// and make more useful functions so that the user does not have to
+// know all the ins and outs of pdf presentation to produce something pretty.
+//
+// IMPORTANT NOTE
+// there is no warranty, implied or otherwise with this software.
+//
+// version 009 (versioning is linked to class.pdf.php)
+//
+// released under a public domain licence.
+//
+// Wayne Munro, R&OS Ltd, http://www.ros.co.nz/pdf
+//==============================================================================
+
+var $ez=array('fontSize'=>10); // used for storing most of the page configuration parameters
+var $y; // this is the current vertical positon on the page of the writing point, very important
+var $ezPages=array(); // keep an array of the ids of the pages, making it easy to go back and add page numbers etc.
+var $ezPageCount=0;
+
+// ------------------------------------------------------------------------------
+
+function Cezpdf($paper='a4',$orientation='portrait'){
+ // Assuming that people don't want to specify the paper size using the absolute coordinates
+ // allow a couple of options:
+ // orientation can be 'portrait' or 'landscape'
+ // or, to actually set the coordinates, then pass an array in as the first parameter.
+ // the defaults are as shown.
+ //
+ // -------------------------
+ // 2002-07-24 - Nicola Asuni (info@tecnick.com):
+ // Added new page formats (45 standard ISO paper formats and 4 american common formats)
+ // paper cordinates are calculated in this way: (inches * 72) where 1 inch = 2.54 cm
+ //
+ // Now you may also pass a 2 values array containing the page width and height in centimeters
+ // -------------------------
+
+ if (!is_array($paper)){
+ switch (strtoupper($paper)){
+ case '4A0': {$size = array(0,0,4767.87,6740.79); break;}
+ case '2A0': {$size = array(0,0,3370.39,4767.87); break;}
+ case 'A0': {$size = array(0,0,2383.94,3370.39); break;}
+ case 'A1': {$size = array(0,0,1683.78,2383.94); break;}
+ case 'A2': {$size = array(0,0,1190.55,1683.78); break;}
+ case 'A3': {$size = array(0,0,841.89,1190.55); break;}
+ case 'A4': default: {$size = array(0,0,595.28,841.89); break;}
+ case 'A5': {$size = array(0,0,419.53,595.28); break;}
+ case 'A6': {$size = array(0,0,297.64,419.53); break;}
+ case 'A7': {$size = array(0,0,209.76,297.64); break;}
+ case 'A8': {$size = array(0,0,147.40,209.76); break;}
+ case 'A9': {$size = array(0,0,104.88,147.40); break;}
+ case 'A10': {$size = array(0,0,73.70,104.88); break;}
+ case 'B0': {$size = array(0,0,2834.65,4008.19); break;}
+ case 'B1': {$size = array(0,0,2004.09,2834.65); break;}
+ case 'B2': {$size = array(0,0,1417.32,2004.09); break;}
+ case 'B3': {$size = array(0,0,1000.63,1417.32); break;}
+ case 'B4': {$size = array(0,0,708.66,1000.63); break;}
+ case 'B5': {$size = array(0,0,498.90,708.66); break;}
+ case 'B6': {$size = array(0,0,354.33,498.90); break;}
+ case 'B7': {$size = array(0,0,249.45,354.33); break;}
+ case 'B8': {$size = array(0,0,175.75,249.45); break;}
+ case 'B9': {$size = array(0,0,124.72,175.75); break;}
+ case 'B10': {$size = array(0,0,87.87,124.72); break;}
+ case 'C0': {$size = array(0,0,2599.37,3676.54); break;}
+ case 'C1': {$size = array(0,0,1836.85,2599.37); break;}
+ case 'C2': {$size = array(0,0,1298.27,1836.85); break;}
+ case 'C3': {$size = array(0,0,918.43,1298.27); break;}
+ case 'C4': {$size = array(0,0,649.13,918.43); break;}
+ case 'C5': {$size = array(0,0,459.21,649.13); break;}
+ case 'C6': {$size = array(0,0,323.15,459.21); break;}
+ case 'C7': {$size = array(0,0,229.61,323.15); break;}
+ case 'C8': {$size = array(0,0,161.57,229.61); break;}
+ case 'C9': {$size = array(0,0,113.39,161.57); break;}
+ case 'C10': {$size = array(0,0,79.37,113.39); break;}
+ case 'RA0': {$size = array(0,0,2437.80,3458.27); break;}
+ case 'RA1': {$size = array(0,0,1729.13,2437.80); break;}
+ case 'RA2': {$size = array(0,0,1218.90,1729.13); break;}
+ case 'RA3': {$size = array(0,0,864.57,1218.90); break;}
+ case 'RA4': {$size = array(0,0,609.45,864.57); break;}
+ case 'SRA0': {$size = array(0,0,2551.18,3628.35); break;}
+ case 'SRA1': {$size = array(0,0,1814.17,2551.18); break;}
+ case 'SRA2': {$size = array(0,0,1275.59,1814.17); break;}
+ case 'SRA3': {$size = array(0,0,907.09,1275.59); break;}
+ case 'SRA4': {$size = array(0,0,637.80,907.09); break;}
+ case 'LETTER': {$size = array(0,0,612.00,792.00); break;}
+ case 'LEGAL': {$size = array(0,0,612.00,1008.00); break;}
+ case 'EXECUTIVE': {$size = array(0,0,521.86,756.00); break;}
+ case 'FOLIO': {$size = array(0,0,612.00,936.00); break;}
+ }
+ switch (strtolower($orientation)){
+ case 'landscape':
+ $a=$size[3];
+ $size[3]=$size[2];
+ $size[2]=$a;
+ break;
+ }
+ } else {
+ if (count($paper)>2) {
+ // then an array was sent it to set the size
+ $size = $paper;
+ }
+ else { //size in centimeters has been passed
+ $size[0] = 0;
+ $size[1] = 0;
+ $size[2] = ( $paper[0] / 2.54 ) * 72;
+ $size[3] = ( $paper[1] / 2.54 ) * 72;
+ }
+ }
+ $this->Cpdf($size);
+ $this->ez['pageWidth']=$size[2];
+ $this->ez['pageHeight']=$size[3];
+
+ // also set the margins to some reasonable defaults
+ $this->ez['topMargin']=30;
+ $this->ez['bottomMargin']=30;
+ $this->ez['leftMargin']=30;
+ $this->ez['rightMargin']=30;
+
+ // set the current writing position to the top of the first page
+ $this->y = $this->ez['pageHeight']-$this->ez['topMargin'];
+ // and get the ID of the page that was created during the instancing process.
+ $this->ezPages[1]=$this->getFirstPageId();
+ $this->ezPageCount=1;
+}
+
+// ------------------------------------------------------------------------------
+// 2002-07-24: Nicola Asuni (info@tecnick.com)
+// Set Margins in centimeters
+function ezSetCmMargins($top,$bottom,$left,$right){
+ $top = ( $top / 2.54 ) * 72;
+ $bottom = ( $bottom / 2.54 ) * 72;
+ $left = ( $left / 2.54 ) * 72;
+ $right = ( $right / 2.54 ) * 72;
+ $this->ezSetMargins($top,$bottom,$left,$right);
+}
+// ------------------------------------------------------------------------------
+
+
+function ezColumnsStart($options=array()){
+ // start from the current y-position, make the set number of columne
+ if (isset($this->ez['columns']) && $this->ez['columns']==1){
+ // if we are already in a column mode then just return.
+ return;
+ }
+ $def=array('gap'=>10,'num'=>2);
+ foreach($def as $k=>$v){
+ if (!isset($options[$k])){
+ $options[$k]=$v;
+ }
+ }
+ // setup the columns
+ $this->ez['columns']=array('on'=>1,'colNum'=>1);
+
+ // store the current margins
+ $this->ez['columns']['margins']=array(
+ $this->ez['leftMargin']
+ ,$this->ez['rightMargin']
+ ,$this->ez['topMargin']
+ ,$this->ez['bottomMargin']
+ );
+ // and store the settings for the columns
+ $this->ez['columns']['options']=$options;
+ // then reset the margins to suit the new columns
+ // safe enough to assume the first column here, but start from the current y-position
+ $this->ez['topMargin']=$this->ez['pageHeight']-$this->y;
+ $width=($this->ez['pageWidth']-$this->ez['leftMargin']-$this->ez['rightMargin']-($options['num']-1)*$options['gap'])/$options['num'];
+ $this->ez['columns']['width']=$width;
+ $this->ez['rightMargin']=$this->ez['pageWidth']-$this->ez['leftMargin']-$width;
+
+}
+// ------------------------------------------------------------------------------
+function ezColumnsStop(){
+ if (isset($this->ez['columns']) && $this->ez['columns']['on']==1){
+ $this->ez['columns']['on']=0;
+ $this->ez['leftMargin']=$this->ez['columns']['margins'][0];
+ $this->ez['rightMargin']=$this->ez['columns']['margins'][1];
+ $this->ez['topMargin']=$this->ez['columns']['margins'][2];
+ $this->ez['bottomMargin']=$this->ez['columns']['margins'][3];
+ }
+}
+// ------------------------------------------------------------------------------
+function ezInsertMode($status=1,$pageNum=1,$pos='before'){
+ // puts the document into insert mode. new pages are inserted until this is re-called with status=0
+ // by default pages wil be inserted at the start of the document
+ switch($status){
+ case '1':
+ if (isset($this->ezPages[$pageNum])){
+ $this->ez['insertMode']=1;
+ $this->ez['insertOptions']=array('id'=>$this->ezPages[$pageNum],'pos'=>$pos);
+ }
+ break;
+ case '0':
+ $this->ez['insertMode']=0;
+ break;
+ }
+}
+// ------------------------------------------------------------------------------
+
+function ezNewPage(){
+ $pageRequired=1;
+ if (isset($this->ez['columns']) && $this->ez['columns']['on']==1){
+ // check if this is just going to a new column
+ // increment the column number
+//echo 'HERE<br>';
+ $this->ez['columns']['colNum']++;
+//echo $this->ez['columns']['colNum'].'<br>';
+ if ($this->ez['columns']['colNum'] <= $this->ez['columns']['options']['num']){
+ // then just reset to the top of the next column
+ $pageRequired=0;
+ } else {
+ $this->ez['columns']['colNum']=1;
+ $this->ez['topMargin']=$this->ez['columns']['margins'][2];
+ }
+
+ $width = $this->ez['columns']['width'];
+ $this->ez['leftMargin']=$this->ez['columns']['margins'][0]+($this->ez['columns']['colNum']-1)*($this->ez['columns']['options']['gap']+$width);
+ $this->ez['rightMargin']=$this->ez['pageWidth']-$this->ez['leftMargin']-$width;
+ }
+//echo 'left='.$this->ez['leftMargin'].' right='.$this->ez['rightMargin'].'<br>';
+
+ if ($pageRequired){
+ // make a new page, setting the writing point back to the top
+ $this->y = $this->ez['pageHeight']-$this->ez['topMargin'];
+ // make the new page with a call to the basic class.
+ $this->ezPageCount++;
+ if (isset($this->ez['insertMode']) && $this->ez['insertMode']==1){
+ $id = $this->ezPages[$this->ezPageCount] = $this->newPage(1,$this->ez['insertOptions']['id'],$this->ez['insertOptions']['pos']);
+ // then manipulate the insert options so that inserted pages follow each other
+ $this->ez['insertOptions']['id']=$id;
+ $this->ez['insertOptions']['pos']='after';
+ } else {
+ $this->ezPages[$this->ezPageCount] = $this->newPage();
+ }
+ } else {
+ $this->y = $this->ez['pageHeight']-$this->ez['topMargin'];
+ }
+}
+
+// ------------------------------------------------------------------------------
+
+function ezSetMargins($top,$bottom,$left,$right){
+ // sets the margins to new values
+ $this->ez['topMargin']=$top;
+ $this->ez['bottomMargin']=$bottom;
+ $this->ez['leftMargin']=$left;
+ $this->ez['rightMargin']=$right;
+ // check to see if this means that the current writing position is outside the
+ // writable area
+ if ($this->y > $this->ez['pageHeight']-$top){
+ // then move y down
+ $this->y = $this->ez['pageHeight']-$top;
+ }
+ if ( $this->y < $bottom){
+ // then make a new page
+ $this->ezNewPage();
+ }
+}
+
+// ------------------------------------------------------------------------------
+
+function ezGetCurrentPageNumber(){
+ // return the strict numbering (1,2,3,4..) number of the current page
+ return $this->ezPageCount;
+}
+
+// ------------------------------------------------------------------------------
+
+function ezStartPageNumbers($x,$y,$size,$pos='left',$pattern='{PAGENUM} of {TOTALPAGENUM}',$num=''){
+ // put page numbers on the pages from here.
+ // place then on the 'pos' side of the coordinates (x,y).
+ // pos can be 'left' or 'right'
+ // use the given 'pattern' for display, where (PAGENUM} and {TOTALPAGENUM} are replaced
+ // as required.
+ // if $num is set, then make the first page this number, the number of total pages will
+ // be adjusted to account for this.
+ // Adjust this function so that each time you 'start' page numbers then you effectively start a different batch
+ // return the number of the batch, so that they can be stopped in a different order if required.
+ if (!$pos || !strlen($pos)){
+ $pos='left';
+ }
+ if (!$pattern || !strlen($pattern)){
+ $pattern='{PAGENUM} of {TOTALPAGENUM}';
+ }
+ if (!isset($this->ez['pageNumbering'])){
+ $this->ez['pageNumbering']=array();
+ }
+ $i = count($this->ez['pageNumbering']);
+ $this->ez['pageNumbering'][$i][$this->ezPageCount]=array('x'=>$x,'y'=>$y,'pos'=>$pos,'pattern'=>$pattern,'num'=>$num,'size'=>$size);
+ return $i;
+}
+
+// ------------------------------------------------------------------------------
+
+function ezWhatPageNumber($pageNum,$i=0){
+ // given a particular generic page number (ie, document numbered sequentially from beginning),
+ // return the page number under a particular page numbering scheme ($i)
+ $num=0;
+ $start=1;
+ $startNum=1;
+ if (!isset($this->ez['pageNumbering']))
+ {
+ $this->addMessage('WARNING: page numbering called for and wasn\'t started with ezStartPageNumbers');
+ return 0;
+ }
+ foreach($this->ez['pageNumbering'][$i] as $k=>$v){
+ if ($k<=$pageNum){
+ if (is_array($v)){
+ // start block
+ if (strlen($v['num'])){
+ // a start was specified
+ $start=$v['num'];
+ $startNum=$k;
+ $num=$pageNum-$startNum+$start;
+ }
+ } else {
+ // stop block
+ $num=0;
+ }
+ }
+ }
+ return $num;
+}
+
+// ------------------------------------------------------------------------------
+
+function ezStopPageNumbers($stopTotal=0,$next=0,$i=0){
+ // if stopTotal=1 then the totalling of pages for this number will stop too
+ // if $next=1, then do this page, but not the next, else do not do this page either
+ // if $i is set, then stop that particular pagenumbering sequence.
+ if (!isset($this->ez['pageNumbering'])){
+ $this->ez['pageNumbering']=array();
+ }
+ if ($next && isset($this->ez['pageNumbering'][$i][$this->ezPageCount]) && is_array($this->ez['pageNumbering'][$i][$this->ezPageCount])){
+ // then this has only just been started, this will over-write the start, and nothing will appear
+ // add a special command to the start block, telling it to stop as well
+ if ($stopTotal){
+ $this->ez['pageNumbering'][$i][$this->ezPageCount]['stoptn']=1;
+ } else {
+ $this->ez['pageNumbering'][$i][$this->ezPageCount]['stopn']=1;
+ }
+ } else {
+ if ($stopTotal){
+ $this->ez['pageNumbering'][$i][$this->ezPageCount]='stopt';
+ } else {
+ $this->ez['pageNumbering'][$i][$this->ezPageCount]='stop';
+ }
+ if ($next){
+ $this->ez['pageNumbering'][$i][$this->ezPageCount].='n';
+ }
+ }
+}
+
+// ------------------------------------------------------------------------------
+
+function ezPRVTpageNumberSearch($lbl,&$tmp){
+ foreach($tmp as $i=>$v){
+ if (is_array($v)){
+ if (isset($v[$lbl])){
+ return $i;
+ }
+ } else {
+ if ($v==$lbl){
+ return $i;
+ }
+ }
+ }
+ return 0;
+}
+
+// ------------------------------------------------------------------------------
+
+function ezPRVTaddPageNumbers(){
+ // this will go through the pageNumbering array and add the page numbers are required
+ if (isset($this->ez['pageNumbering'])){
+ $totalPages1 = $this->ezPageCount;
+ $tmp1=$this->ez['pageNumbering'];
+ $status=0;
+ foreach($tmp1 as $i=>$tmp){
+ // do each of the page numbering systems
+ // firstly, find the total pages for this one
+ $k = $this->ezPRVTpageNumberSearch('stopt',$tmp);
+ if ($k && $k>0){
+ $totalPages = $k-1;
+ } else {
+ $l = $this->ezPRVTpageNumberSearch('stoptn',$tmp);
+ if ($l && $l>0){
+ $totalPages = $l;
+ } else {
+ $totalPages = $totalPages1;
+ }
+ }
+ foreach ($this->ezPages as $pageNum=>$id){
+ if (isset($tmp[$pageNum])){
+ if (is_array($tmp[$pageNum])){
+ // then this must be starting page numbers
+ $status=1;
+ $info = $tmp[$pageNum];
+ $info['dnum']=$info['num']-$pageNum;
+ // also check for the special case of the numbering stopping and starting on the same page
+ if (isset($info['stopn']) || isset($info['stoptn']) ){
+ $status=2;
+ }
+ } else if ($tmp[$pageNum]=='stop' || $tmp[$pageNum]=='stopt'){
+ // then we are stopping page numbers
+ $status=0;
+ } else if ($status==1 && ($tmp[$pageNum]=='stoptn' || $tmp[$pageNum]=='stopn')){
+ // then we are stopping page numbers
+ $status=2;
+ }
+ }
+ if ($status){
+ // then add the page numbering to this page
+ if (strlen($info['num'])){
+ $num=$pageNum+$info['dnum'];
+ } else {
+ $num=$pageNum;
+ }
+ $total = $totalPages+$num-$pageNum;
+ $pat = str_replace('{PAGENUM}',$num,$info['pattern']);
+ $pat = str_replace('{TOTALPAGENUM}',$total,$pat);
+ $this->reopenObject($id);
+ switch($info['pos']){
+ case 'right':
+ $this->addText($info['x'],$info['y'],$info['size'],$pat);
+ break;
+ default:
+ $w=$this->getTextWidth($info['size'],$pat);
+ $this->addText($info['x']-$w,$info['y'],$info['size'],$pat);
+ break;
+ }
+ $this->closeObject();
+ }
+ if ($status==2){
+ $status=0;
+ }
+ }
+ }
+ }
+}
+
+// ------------------------------------------------------------------------------
+
+function ezPRVTcleanUp(){
+ $this->ezPRVTaddPageNumbers();
+}
+
+// ------------------------------------------------------------------------------
+
+function ezStream($options=''){
+ $this->ezPRVTcleanUp();
+ $this->stream($options);
+}
+
+// ------------------------------------------------------------------------------
+
+function ezOutput($options=0){
+ $this->ezPRVTcleanUp();
+ return $this->output($options);
+}
+
+// ------------------------------------------------------------------------------
+
+function ezSetY($y){
+ // used to change the vertical position of the writing point.
+ $this->y = $y;
+ if ( $this->y < $this->ez['bottomMargin']){
+ // then make a new page
+ $this->ezNewPage();
+ }
+}
+
+// ------------------------------------------------------------------------------
+
+function ezSetDy($dy,$mod=''){
+ // used to change the vertical position of the writing point.
+ // changes up by a positive increment, so enter a negative number to go
+ // down the page
+ // if $mod is set to 'makeSpace' and a new page is forced, then the pointed will be moved
+ // down on the new page, this will allow space to be reserved for graphics etc.
+ $this->y += $dy;
+ if ( $this->y < $this->ez['bottomMargin']){
+ // then make a new page
+ $this->ezNewPage();
+ if ($mod=='makeSpace'){
+ $this->y += $dy;
+ }
+ }
+}
+
+// ------------------------------------------------------------------------------
+
+function ezPrvtTableDrawLines($pos,$gap,$x0,$x1,$y0,$y1,$y2,$col,$inner,$outer,$opt=1){
+ $x0=1000;
+ $x1=0;
+ $this->setStrokeColor($col[0],$col[1],$col[2]);
+ $cnt=0;
+ $n = count($pos);
+ foreach($pos as $x){
+ $cnt++;
+ if ($cnt==1 || $cnt==$n){
+ $this->setLineStyle($outer);
+ } else {
+ $this->setLineStyle($inner);
+ }
+ $this->line($x-$gap/2,$y0,$x-$gap/2,$y2);
+ if ($x>$x1){ $x1=$x; };
+ if ($x<$x0){ $x0=$x; };
+ }
+ $this->setLineStyle($outer);
+ $this->line($x0-$gap/2-$outer/2,$y0,$x1-$gap/2+$outer/2,$y0);
+ // only do the second line if it is different to the first, AND each row does not have
+ // a line on it.
+ if ($y0!=$y1 && $opt<2){
+ $this->line($x0-$gap/2,$y1,$x1-$gap/2,$y1);
+ }
+ $this->line($x0-$gap/2-$outer/2,$y2,$x1-$gap/2+$outer/2,$y2);
+}
+
+// ------------------------------------------------------------------------------
+
+function ezPrvtTableColumnHeadings($cols,$pos,$maxWidth,$height,$decender,$gap,$size,&$y,$optionsAll=array()){
+ // uses ezText to add the text, and returns the height taken by the largest heading
+ // this page will move the headings to a new page if they will not fit completely on this one
+ // transaction support will be used to implement this
+
+ if (isset($optionsAll['cols'])){
+ $options = $optionsAll['cols'];
+ } else {
+ $options = array();
+ }
+
+ $mx=0;
+ $startPage = $this->ezPageCount;
+ $secondGo=0;
+
+ // $y is the position at which the top of the table should start, so the base
+ // of the first text, is $y-$height-$gap-$decender, but ezText starts by dropping $height
+
+ // the return from this function is the total cell height, including gaps, and $y is adjusted
+ // to be the postion of the bottom line
+
+ // begin the transaction
+ $this->transaction('start');
+ $ok=0;
+// $y-=$gap-$decender;
+ $y-=$gap;
+ while ($ok==0){
+ foreach($cols as $colName=>$colHeading){
+ $this->ezSetY($y);
+ if (isset($options[$colName]) && isset($options[$colName]['justification'])){
+ $justification = $options[$colName]['justification'];
+ } else {
+ $justification = 'left';
+ }
+ $this->ezText($colHeading,$size,array('aleft'=> $pos[$colName],'aright'=>($maxWidth[$colName]+$pos[$colName]),'justification'=>$justification));
+ $dy = $y-$this->y;
+ if ($dy>$mx){
+ $mx=$dy;
+ }
+ }
+ $y = $y - $mx - $gap + $decender;
+// $y -= $mx-$gap+$decender;
+
+ // now, if this has moved to a new page, then abort the transaction, move to a new page, and put it there
+ // do not check on the second time around, to avoid an infinite loop
+ if ($this->ezPageCount != $startPage && $secondGo==0){
+ $this->transaction('rewind');
+ $this->ezNewPage();
+ $y = $this->y - $gap-$decender;
+ $ok=0;
+ $secondGo=1;
+// $y = $store_y;
+ $mx=0;
+
+ } else {
+ $this->transaction('commit');
+ $ok=1;
+ }
+ }
+
+ return $mx+$gap*2-$decender;
+}
+
+// ------------------------------------------------------------------------------
+
+function ezPrvtGetTextWidth($size,$text){
+ // will calculate the maximum width, taking into account that the text may be broken
+ // by line breaks.
+ $mx=0;
+ $lines = explode("\n",$text);
+ foreach ($lines as $line){
+ $w = $this->getTextWidth($size,$line);
+ if ($w>$mx){
+ $mx=$w;
+ }
+ }
+ return $mx;
+}
+
+// ------------------------------------------------------------------------------
+
+function ezTable(&$data,$cols='',$title='',$options=''){
+ // add a table of information to the pdf document
+ // $data is a two dimensional array
+ // $cols (optional) is an associative array, the keys are the names of the columns from $data
+ // to be presented (and in that order), the values are the titles to be given to the columns
+ // $title (optional) is the title to be put on the top of the table
+ //
+ // $options is an associative array which can contain:
+ // 'showLines'=> 0,1,2, default is 1 (show outside and top lines only), 2=> lines on each row
+ // 'showHeadings' => 0 or 1
+ // 'shaded'=> 0,1,2,3 default is 1 (1->alternate lines are shaded, 0->no shading, 2-> both shaded, second uses shadeCol2)
+ // 'shadeCol' => (r,g,b) array, defining the colour of the shading, default is (0.8,0.8,0.8)
+ // 'shadeCol2' => (r,g,b) array, defining the colour of the shading of the other blocks, default is (0.7,0.7,0.7)
+ // 'fontSize' => 10
+ // 'textCol' => (r,g,b) array, text colour
+ // 'titleFontSize' => 12
+ // 'rowGap' => 2 , the space added at the top and bottom of each row, between the text and the lines
+ // 'colGap' => 5 , the space on the left and right sides of each cell
+ // 'lineCol' => (r,g,b) array, defining the colour of the lines, default, black.
+ // 'xPos' => 'left','right','center','centre',or coordinate, reference coordinate in the x-direction
+ // 'xOrientation' => 'left','right','center','centre', position of the table w.r.t 'xPos'
+ // 'width'=> <number> which will specify the width of the table, if it turns out to not be this
+ // wide, then it will stretch the table to fit, if it is wider then each cell will be made
+ // proportionalty smaller, and the content may have to wrap.
+ // 'maxWidth'=> <number> similar to 'width', but will only make table smaller than it wants to be
+ // 'options' => array(<colname>=>array('justification'=>'left','width'=>100,'link'=>linkDataName),<colname>=>....)
+ // allow the setting of other paramaters for the individual columns
+ // 'minRowSpace'=> the minimum space between the bottom of each row and the bottom margin, in which a new row will be started
+ // if it is less, then a new page would be started, default=-100
+ // 'innerLineThickness'=>1
+ // 'outerLineThickness'=>1
+ // 'splitRows'=>0, 0 or 1, whether or not to allow the rows to be split across page boundaries
+ // 'protectRows'=>number, the number of rows to hold with the heading on page, ie, if there less than this number of
+ // rows on the page, then move the whole lot onto the next page, default=1
+ //
+ // note that the user will have had to make a font selection already or this will not
+ // produce a valid pdf file.
+
+ if (!is_array($data)){
+ return;
+ }
+
+ if (!is_array($cols)){
+ // take the columns from the first row of the data set
+ reset($data);
+ list($k,$v)=each($data);
+ if (!is_array($v)){
+ return;
+ }
+ $cols=array();
+ foreach($v as $k1=>$v1){
+ $cols[$k1]=$k1;
+ }
+ }
+
+ if (!is_array($options)){
+ $options=array();
+ }
+
+ $defaults = array(
+ 'shaded'=>1,'showLines'=>1,'shadeCol'=>array(0.8,0.8,0.8),'shadeCol2'=>array(0.7,0.7,0.7),'fontSize'=>10,'titleFontSize'=>12
+ ,'titleGap'=>5,'lineCol'=>array(0,0,0),'gap'=>5,'xPos'=>'centre','xOrientation'=>'centre'
+ ,'showHeadings'=>1,'textCol'=>array(0,0,0),'width'=>0,'maxWidth'=>0,'cols'=>array(),'minRowSpace'=>-100,'rowGap'=>2,'colGap'=>5
+ ,'innerLineThickness'=>1,'outerLineThickness'=>1,'splitRows'=>0,'protectRows'=>1
+ );
+
+ foreach($defaults as $key=>$value){
+ if (is_array($value)){
+ if (!isset($options[$key]) || !is_array($options[$key])){
+ $options[$key]=$value;
+ }
+ } else {
+ if (!isset($options[$key])){
+ $options[$key]=$value;
+ }
+ }
+ }
+ $options['gap']=2*$options['colGap'];
+
+ $middle = ($this->ez['pageWidth']-$this->ez['rightMargin'])/2+($this->ez['leftMargin'])/2;
+ // figure out the maximum widths of the text within each column
+ $maxWidth=array();
+ foreach($cols as $colName=>$colHeading){
+ $maxWidth[$colName]=0;
+ }
+ // find the maximum cell widths based on the data
+ foreach($data as $row){
+ foreach($cols as $colName=>$colHeading){
+ $w = $this->ezPrvtGetTextWidth($options['fontSize'],(string)$row[$colName])*1.01;
+ if ($w > $maxWidth[$colName]){
+ $maxWidth[$colName]=$w;
+ }
+ }
+ }
+ // and the maximum widths to fit in the headings
+ foreach($cols as $colName=>$colTitle){
+ $w = $this->ezPrvtGetTextWidth($options['fontSize'],(string)$colTitle)*1.01;
+ if ($w > $maxWidth[$colName]){
+ $maxWidth[$colName]=$w;
+ }
+ }
+
+ // calculate the start positions of each of the columns
+ $pos=array();
+ $x=0;
+ $t=$x;
+ $adjustmentWidth=0;
+ $setWidth=0;
+ foreach($maxWidth as $colName => $w){
+ $pos[$colName]=$t;
+ // if the column width has been specified then set that here, also total the
+ // width avaliable for adjustment
+ if (isset($options['cols'][$colName]) && isset($options['cols'][$colName]['width']) && $options['cols'][$colName]['width']>0){
+ $t=$t+$options['cols'][$colName]['width'];
+ $maxWidth[$colName] = $options['cols'][$colName]['width']-$options['gap'];
+ $setWidth += $options['cols'][$colName]['width'];
+ } else {
+ $t=$t+$w+$options['gap'];
+ $adjustmentWidth += $w;
+ $setWidth += $options['gap'];
+ }
+ }
+ $pos['_end_']=$t;
+
+ // if maxWidth is specified, and the table is too wide, and the width has not been set,
+ // then set the width.
+ if ($options['width']==0 && $options['maxWidth'] && ($t-$x)>$options['maxWidth']){
+ // then need to make this one smaller
+ $options['width']=$options['maxWidth'];
+ }
+
+ if ($options['width'] && $adjustmentWidth>0 && $setWidth<$options['width']){
+ // first find the current widths of the columns involved in this mystery
+ $cols0 = array();
+ $cols1 = array();
+ $xq=0;
+ $presentWidth=0;
+ $last='';
+ foreach($pos as $colName=>$p){
+ if (!isset($options['cols'][$last]) || !isset($options['cols'][$last]['width']) || $options['cols'][$last]['width']<=0){
+ if (strlen($last)){
+ $cols0[$last]=$p-$xq -$options['gap'];
+ $presentWidth += ($p-$xq - $options['gap']);
+ }
+ } else {
+ $cols1[$last]=$p-$xq;
+ }
+ $last=$colName;
+ $xq=$p;
+ }
+ // $cols0 contains the widths of all the columns which are not set
+ $neededWidth = $options['width']-$setWidth;
+ // if needed width is negative then add it equally to each column, else get more tricky
+ if ($presentWidth<$neededWidth){
+ foreach($cols0 as $colName=>$w){
+ $cols0[$colName]+= ($neededWidth-$presentWidth)/count($cols0);
+ }
+ } else {
+
+ $cnt=0;
+ while ($presentWidth>$neededWidth && $cnt<100){
+ $cnt++; // insurance policy
+ // find the widest columns, and the next to widest width
+ $aWidest = array();
+ $nWidest=0;
+ $widest=0;
+ foreach($cols0 as $colName=>$w){
+ if ($w>$widest){
+ $aWidest=array($colName);
+ $nWidest = $widest;
+ $widest=$w;
+ } else if ($w==$widest){
+ $aWidest[]=$colName;
+ }
+ }
+ // then figure out what the width of the widest columns would have to be to take up all the slack
+ $newWidestWidth = $widest - ($presentWidth-$neededWidth)/count($aWidest);
+ if ($newWidestWidth > $nWidest){
+ // then there is space to set them to this
+ foreach($aWidest as $colName){
+ $cols0[$colName] = $newWidestWidth;
+ }
+ $presentWidth=$neededWidth;
+ } else {
+ // there is not space, reduce the size of the widest ones down to the next size down, and we
+ // will go round again
+ foreach($aWidest as $colName){
+ $cols0[$colName] = $nWidest;
+ }
+ $presentWidth=$presentWidth-($widest-$nWidest)*count($aWidest);
+ }
+ }
+ }
+ // $cols0 now contains the new widths of the constrained columns.
+ // now need to update the $pos and $maxWidth arrays
+ $xq=0;
+ foreach($pos as $colName=>$p){
+ $pos[$colName]=$xq;
+ if (!isset($options['cols'][$colName]) || !isset($options['cols'][$colName]['width']) || $options['cols'][$colName]['width']<=0){
+ if (isset($cols0[$colName])){
+ $xq += $cols0[$colName] + $options['gap'];
+ $maxWidth[$colName]=$cols0[$colName];
+ }
+ } else {
+ if (isset($cols1[$colName])){
+ $xq += $cols1[$colName];
+ }
+ }
+ }
+
+ $t=$x+$options['width'];
+ $pos['_end_']=$t;
+ }
+
+ // now adjust the table to the correct location across the page
+ switch ($options['xPos']){
+ case 'left':
+ $xref = $this->ez['leftMargin'];
+ break;
+ case 'right':
+ $xref = $this->ez['pageWidth'] - $this->ez['rightMargin'];
+ break;
+ case 'centre':
+ case 'center':
+ $xref = $middle;
+ break;
+ default:
+ $xref = $options['xPos'];
+ break;
+ }
+ switch ($options['xOrientation']){
+ case 'left':
+ $dx = $xref-$t;
+ break;
+ case 'right':
+ $dx = $xref;
+ break;
+ case 'centre':
+ case 'center':
+ $dx = $xref-$t/2;
+ break;
+ }
+
+
+ foreach($pos as $k=>$v){
+ $pos[$k]=$v+$dx;
+ }
+ $x0=$x+$dx;
+ $x1=$t+$dx;
+
+ $baseLeftMargin = $this->ez['leftMargin'];
+ $basePos = $pos;
+ $baseX0 = $x0;
+ $baseX1 = $x1;
+
+ // ok, just about ready to make me a table
+ $this->setColor($options['textCol'][0],$options['textCol'][1],$options['textCol'][2]);
+ $this->setStrokeColor($options['shadeCol'][0],$options['shadeCol'][1],$options['shadeCol'][2]);
+
+ $middle = ($x1+$x0)/2;
+
+ // start a transaction which will be used to regress the table, if there are not enough rows protected
+ if ($options['protectRows']>0){
+ $this->transaction('start');
+ $movedOnce=0;
+ }
+ $abortTable = 1;
+ while ($abortTable){
+ $abortTable=0;
+
+ $dm = $this->ez['leftMargin']-$baseLeftMargin;
+ foreach($basePos as $k=>$v){
+ $pos[$k]=$v+$dm;
+ }
+ $x0=$baseX0+$dm;
+ $x1=$baseX1+$dm;
+ $middle = ($x1+$x0)/2;
+
+
+ // if the title is set, then do that
+ if (strlen($title)){
+ $w = $this->getTextWidth($options['titleFontSize'],$title);
+ $this->y -= $this->getFontHeight($options['titleFontSize']);
+ if ($this->y < $this->ez['bottomMargin']){
+ $this->ezNewPage();
+ // margins may have changed on the newpage
+ $dm = $this->ez['leftMargin']-$baseLeftMargin;
+ foreach($basePos as $k=>$v){
+ $pos[$k]=$v+$dm;
+ }
+ $x0=$baseX0+$dm;
+ $x1=$baseX1+$dm;
+ $middle = ($x1+$x0)/2;
+ $this->y -= $this->getFontHeight($options['titleFontSize']);
+ }
+ $this->addText($middle-$w/2,$this->y,$options['titleFontSize'],$title);
+ $this->y -= $options['titleGap'];
+ }
+
+ // margins may have changed on the newpage
+ $dm = $this->ez['leftMargin']-$baseLeftMargin;
+ foreach($basePos as $k=>$v){
+ $pos[$k]=$v+$dm;
+ }
+ $x0=$baseX0+$dm;
+ $x1=$baseX1+$dm;
+
+ $y=$this->y; // to simplify the code a bit
+
+ // make the table
+ $height = $this->getFontHeight($options['fontSize']);
+ $decender = $this->getFontDecender($options['fontSize']);
+
+
+
+ $y0=$y+$decender;
+ $dy=0;
+ if ($options['showHeadings']){
+ // this function will move the start of the table to a new page if it does not fit on this one
+ $headingHeight = $this->ezPrvtTableColumnHeadings($cols,$pos,$maxWidth,$height,$decender,$options['rowGap'],$options['fontSize'],$y,$options);
+ $y0 = $y+$headingHeight;
+ $y1 = $y;
+
+
+ $dm = $this->ez['leftMargin']-$baseLeftMargin;
+ foreach($basePos as $k=>$v){
+ $pos[$k]=$v+$dm;
+ }
+ $x0=$baseX0+$dm;
+ $x1=$baseX1+$dm;
+
+ } else {
+ $y1 = $y0;
+ }
+ $firstLine=1;
+
+
+ // open an object here so that the text can be put in over the shading
+ if ($options['shaded']){
+ $this->saveState();
+ $textObjectId = $this->openObject();
+ $this->closeObject();
+ $this->addObject($textObjectId);
+ $this->reopenObject($textObjectId);
+ }
+
+ $cnt=0;
+ $newPage=0;
+ foreach($data as $row){
+ $cnt++;
+ // the transaction support will be used to prevent rows being split
+ if ($options['splitRows']==0){
+ $pageStart = $this->ezPageCount;
+ if (isset($this->ez['columns']) && $this->ez['columns']['on']==1){
+ $columnStart = $this->ez['columns']['colNum'];
+ }
+ $this->transaction('start');
+ $row_orig = $row;
+ $y_orig = $y;
+ $y0_orig = $y0;
+ $y1_orig = $y1;
+ }
+ $ok=0;
+ $secondTurn=0;
+ while(!$abortTable && $ok == 0){
+
+ $mx=0;
+ $newRow=1;
+ while(!$abortTable && ($newPage || $newRow)){
+
+ $y-=$height;
+ if ($newPage || $y<$this->ez['bottomMargin'] || (isset($options['minRowSpace']) && $y<($this->ez['bottomMargin']+$options['minRowSpace'])) ){
+ // check that enough rows are with the heading
+ if ($options['protectRows']>0 && $movedOnce==0 && $cnt<=$options['protectRows']){
+ // then we need to move the whole table onto the next page
+ $movedOnce = 1;
+ $abortTable = 1;
+ }
+
+ $y2=$y-$mx+2*$height+$decender-$newRow*$height;
+ if ($options['showLines']){
+ if (!$options['showHeadings']){
+ $y0=$y1;
+ }
+ $this->ezPrvtTableDrawLines($pos,$options['gap'],$x0,$x1,$y0,$y1,$y2,$options['lineCol'],$options['innerLineThickness'],$options['outerLineThickness'],$options['showLines']);
+ }
+ if ($options['shaded']){
+ $this->closeObject();
+ $this->restoreState();
+ }
+ $this->ezNewPage();
+ // and the margins may have changed, this is due to the possibility of the columns being turned on
+ // as the columns are managed by manipulating the margins
+
+ $dm = $this->ez['leftMargin']-$baseLeftMargin;
+ foreach($basePos as $k=>$v){
+ $pos[$k]=$v+$dm;
+ }
+// $x0=$x0+$dm;
+// $x1=$x1+$dm;
+ $x0=$baseX0+$dm;
+ $x1=$baseX1+$dm;
+
+ if ($options['shaded']){
+ $this->saveState();
+ $textObjectId = $this->openObject();
+ $this->closeObject();
+ $this->addObject($textObjectId);
+ $this->reopenObject($textObjectId);
+ }
+ $this->setColor($options['textCol'][0],$options['textCol'][1],$options['textCol'][2],1);
+ $y = $this->ez['pageHeight']-$this->ez['topMargin'];
+ $y0=$y+$decender;
+ $mx=0;
+ if ($options['showHeadings']){
+ $this->ezPrvtTableColumnHeadings($cols,$pos,$maxWidth,$height,$decender,$options['rowGap'],$options['fontSize'],$y,$options);
+ $y1=$y;
+ } else {
+ $y1=$y0;
+ }
+ $firstLine=1;
+ $y -= $height;
+ }
+ $newRow=0;
+ // write the actual data
+ // if these cells need to be split over a page, then $newPage will be set, and the remaining
+ // text will be placed in $leftOvers
+ $newPage=0;
+ $leftOvers=array();
+
+ foreach($cols as $colName=>$colTitle){
+ $this->ezSetY($y+$height);
+ $colNewPage=0;
+ if (isset($row[$colName])){
+ if (isset($options['cols'][$colName]) && isset($options['cols'][$colName]['link']) && strlen($options['cols'][$colName]['link'])){
+
+ $lines = explode("\n",$row[$colName]);
+ if (isset($row[$options['cols'][$colName]['link']]) && strlen($row[$options['cols'][$colName]['link']])){
+ foreach($lines as $k=>$v){
+ $lines[$k]='<c:alink:'.$row[$options['cols'][$colName]['link']].'>'.$v.'</c:alink>';
+ }
+ }
+ } else {
+ $lines = explode("\n",$row[$colName]);
+ }
+ } else {
+ $lines = array();
+ }
+ $this->y -= $options['rowGap'];
+ foreach ($lines as $line){
+ $line = $this->ezProcessText($line);
+ $start=1;
+
+ while (strlen($line) || $start){
+ $start=0;
+ if (!$colNewPage){
+ $this->y=$this->y-$height;
+ }
+ if ($this->y < $this->ez['bottomMargin']){
+ // $this->ezNewPage();
+ $newPage=1; // whether a new page is required for any of the columns
+ $colNewPage=1; // whether a new page is required for this column
+ }
+ if ($colNewPage){
+ if (isset($leftOvers[$colName])){
+ $leftOvers[$colName].="\n".$line;
+ } else {
+ $leftOvers[$colName] = $line;
+ }
+ $line='';
+ } else {
+ if (isset($options['cols'][$colName]) && isset($options['cols'][$colName]['justification']) ){
+ $just = $options['cols'][$colName]['justification'];
+ } else {
+ $just='left';
+ }
+
+ $line=$this->addTextWrap($pos[$colName],$this->y,$maxWidth[$colName],$options['fontSize'],$line,$just);
+ }
+ }
+ }
+
+ $dy=$y+$height-$this->y+$options['rowGap'];
+ if ($dy-$height*$newPage>$mx){
+ $mx=$dy-$height*$newPage;
+ }
+ }
+ // set $row to $leftOvers so that they will be processed onto the new page
+ $row = $leftOvers;
+ // now add the shading underneath
+ if ($options['shaded'] && $cnt%2==0){
+ $this->closeObject();
+ $this->setColor($options['shadeCol'][0],$options['shadeCol'][1],$options['shadeCol'][2],1);
+ $this->filledRectangle($x0-$options['gap']/2,$y+$decender+$height-$mx,$x1-$x0,$mx);
+ $this->reopenObject($textObjectId);
+ }
+
+ if ($options['shaded']==2 && $cnt%2==1){
+ $this->closeObject();
+ $this->setColor($options['shadeCol2'][0],$options['shadeCol2'][1],$options['shadeCol2'][2],1);
+ $this->filledRectangle($x0-$options['gap']/2,$y+$decender+$height-$mx,$x1-$x0,$mx);
+ $this->reopenObject($textObjectId);
+ }
+
+ if ($options['showLines']>1){
+ // then draw a line on the top of each block
+// $this->closeObject();
+ $this->saveState();
+ $this->setStrokeColor($options['lineCol'][0],$options['lineCol'][1],$options['lineCol'][2],1);
+// $this->line($x0-$options['gap']/2,$y+$decender+$height-$mx,$x1-$x0,$mx);
+ if ($firstLine){
+ $this->setLineStyle($options['outerLineThickness']);
+ $firstLine=0;
+ } else {
+ $this->setLineStyle($options['innerLineThickness']);
+ }
+ $this->line($x0-$options['gap']/2,$y+$decender+$height,$x1-$options['gap']/2,$y+$decender+$height);
+ $this->restoreState();
+// $this->reopenObject($textObjectId);
+ }
+ } // end of while
+ $y=$y-$mx+$height;
+
+ // checking row split over pages
+ if ($options['splitRows']==0){
+ if ( ( ($this->ezPageCount != $pageStart) || (isset($this->ez['columns']) && $this->ez['columns']['on']==1 && $columnStart != $this->ez['columns']['colNum'] )) && $secondTurn==0){
+ // then we need to go back and try that again !
+ $newPage=1;
+ $secondTurn=1;
+ $this->transaction('rewind');
+ $row = $row_orig;
+ $y = $y_orig;
+ $y0 = $y0_orig;
+ $y1 = $y1_orig;
+ $ok=0;
+
+ $dm = $this->ez['leftMargin']-$baseLeftMargin;
+ foreach($basePos as $k=>$v){
+ $pos[$k]=$v+$dm;
+ }
+ $x0=$baseX0+$dm;
+ $x1=$baseX1+$dm;
+
+ } else {
+ $this->transaction('commit');
+ $ok=1;
+ }
+ } else {
+ $ok=1; // don't go round the loop if splitting rows is allowed
+ }
+
+ } // end of while to check for row splitting
+ if ($abortTable){
+ if ($ok==0){
+ $this->transaction('abort');
+ }
+ // only the outer transaction should be operational
+ $this->transaction('rewind');
+ $this->ezNewPage();
+ break;
+ }
+
+ } // end of foreach ($data as $row)
+
+ } // end of while ($abortTable)
+
+ // table has been put on the page, the rows guarded as required, commit.
+ $this->transaction('commit');
+
+ $y2=$y+$decender;
+ if ($options['showLines']){
+ if (!$options['showHeadings']){
+ $y0=$y1;
+ }
+ $this->ezPrvtTableDrawLines($pos,$options['gap'],$x0,$x1,$y0,$y1,$y2,$options['lineCol'],$options['innerLineThickness'],$options['outerLineThickness'],$options['showLines']);
+ }
+
+ // close the object for drawing the text on top
+ if ($options['shaded']){
+ $this->closeObject();
+ $this->restoreState();
+ }
+
+ $this->y=$y;
+ return $y;
+}
+
+// ------------------------------------------------------------------------------
+function ezProcessText($text){
+ // this function will intially be used to implement underlining support, but could be used for a range of other
+ // purposes
+ $search = array('<u>','<U>','</u>','</U>');
+ $replace = array('<c:uline>','<c:uline>','</c:uline>','</c:uline>');
+ return str_replace($search,$replace,$text);
+}
+
+// ------------------------------------------------------------------------------
+
+function ezText($text,$size=0,$options=array(),$test=0){
+ // this will add a string of text to the document, starting at the current drawing
+ // position.
+ // it will wrap to keep within the margins, including optional offsets from the left
+ // and the right, if $size is not specified, then it will be the last one used, or
+ // the default value (12 I think).
+ // the text will go to the start of the next line when a return code "\n" is found.
+ // possible options are:
+ // 'left'=> number, gap to leave from the left margin
+ // 'right'=> number, gap to leave from the right margin
+ // 'aleft'=> number, absolute left position (overrides 'left')
+ // 'aright'=> number, absolute right position (overrides 'right')
+ // 'justification' => 'left','right','center','centre','full'
+
+ // only set one of the next two items (leading overrides spacing)
+ // 'leading' => number, defines the total height taken by the line, independent of the font height.
+ // 'spacing' => a real number, though usually set to one of 1, 1.5, 2 (line spacing as used in word processing)
+
+ // if $test is set then this should just check if the text is going to flow onto a new page or not, returning true or false
+
+ // apply the filtering which will make the underlining function.
+ $text = $this->ezProcessText($text);
+
+ $newPage=false;
+ $store_y = $this->y;
+
+ if (is_array($options) && isset($options['aleft'])){
+ $left=$options['aleft'];
+ } else {
+ $left = $this->ez['leftMargin'] + ((is_array($options) && isset($options['left']))?$options['left']:0);
+ }
+ if (is_array($options) && isset($options['aright'])){
+ $right=$options['aright'];
+ } else {
+ $right = $this->ez['pageWidth'] - $this->ez['rightMargin'] - ((is_array($options) && isset($options['right']))?$options['right']:0);
+ }
+ if ($size<=0){
+ $size = $this->ez['fontSize'];
+ } else {
+ $this->ez['fontSize']=$size;
+ }
+
+ if (is_array($options) && isset($options['justification'])){
+ $just = $options['justification'];
+ } else {
+ $just = 'left';
+ }
+
+ // modifications to give leading and spacing based on those given by Craig Heydenburg 1/1/02
+ if (is_array($options) && isset($options['leading'])) { ## use leading instead of spacing
+ $height = $options['leading'];
+ } else if (is_array($options) && isset($options['spacing'])) {
+ $height = $this->getFontHeight($size) * $options['spacing'];
+ } else {
+ $height = $this->getFontHeight($size);
+ }
+
+
+ $lines = explode("\n",$text);
+ foreach ($lines as $line){
+ $start=1;
+ while (strlen($line) || $start){
+ $start=0;
+ $this->y=$this->y-$height;
+ if ($this->y < $this->ez['bottomMargin']){
+ if ($test){
+ $newPage=true;
+ } else {
+ $this->ezNewPage();
+ // and then re-calc the left and right, in case they have changed due to columns
+ }
+ }
+ if (is_array($options) && isset($options['aleft'])){
+ $left=$options['aleft'];
+ } else {
+ $left = $this->ez['leftMargin'] + ((is_array($options) && isset($options['left']))?$options['left']:0);
+ }
+ if (is_array($options) && isset($options['aright'])){
+ $right=$options['aright'];
+ } else {
+ $right = $this->ez['pageWidth'] - $this->ez['rightMargin'] - ((is_array($options) && isset($options['right']))?$options['right']:0);
+ }
+ $line=$this->addTextWrap($left,$this->y,$right-$left,$size,$line,$just,0,$test);
+ }
+ }
+
+ if ($test){
+ $this->y=$store_y;
+ return $newPage;
+ } else {
+ return $this->y;
+ }
+}
+
+// ------------------------------------------------------------------------------
+
+function ezImage($image,$pad = 5,$width = 0,$resize = 'full',$just = 'center',$border = ''){
+ //beta ezimage function
+ if (stristr($image,'://'))//copy to temp file
+ {
+ $fp = @fopen($image,"rb");
+ while(!feof($fp))
+ {
+ $cont.= fread($fp,1024);
+ }
+ fclose($fp);
+ $image = tempnam ("/tmp", "php-pdf");
+ $fp2 = @fopen($image,"w");
+ fwrite($fp2,$cont);
+ fclose($fp2);
+ $temp = true;
+ }
+
+ if (!(file_exists($image))) return false; //return immediately if image file does not exist
+ $imageInfo = getimagesize($image);
+ switch ($imageInfo[2]){
+ case 2:
+ $type = "jpeg";
+ break;
+ case 3:
+ $type = "png";
+ break;
+ default:
+ return false; //return if file is not jpg or png
+ }
+ if ($width == 0) $width = $imageInfo[0]; //set width
+ $ratio = $imageInfo[0]/$imageInfo[1];
+
+ //get maximum width of image
+ if (isset($this->ez['columns']) && $this->ez['columns']['on'] == 1)
+ {
+ $bigwidth = $this->ez['columns']['width'] - ($pad * 2);
+ }
+ else
+ {
+ $bigwidth = $this->ez['pageWidth'] - ($pad * 2);
+ }
+ //fix width if larger than maximum or if $resize=full
+ if ($resize == 'full' || $resize == 'width' || $width > $bigwidth)
+ {
+ $width = $bigwidth;
+
+ }
+
+ $height = ($width/$ratio); //set height
+
+ //fix size if runs off page
+ if ($height > ($this->y - $this->ez['bottomMargin'] - ($pad * 2)))
+ {
+ if ($resize != 'full')
+ {
+ $this->ezNewPage();
+ }
+ else
+ {
+ $height = ($this->y - $this->ez['bottomMargin'] - ($pad * 2)); //shrink height
+ $width = ($height*$ratio); //fix width
+ }
+ }
+
+ //fix x-offset if image smaller than bigwidth
+ if ($width < $bigwidth)
+ {
+ //center if justification=center
+ if ($just == 'center')
+ {
+ $offset = ($bigwidth - $width) / 2;
+ }
+ //move to right if justification=right
+ if ($just == 'right')
+ {
+ $offset = ($bigwidth - $width);
+ }
+ //leave at left if justification=left
+ if ($just == 'left')
+ {
+ $offset = 0;
+ }
+ }
+
+
+ //call appropriate function
+ if ($type == "jpeg"){
+ $this->addJpegFromFile($image,$this->ez['leftMargin'] + $pad + $offset, $this->y + $this->getFontHeight($this->ez['fontSize']) - $pad - $height,$width);
+ }
+
+ if ($type == "png"){
+ $this->addPngFromFile($image,$this->ez['leftMargin'] + $pad + $offset, $this->y + $this->getFontHeight($this->ez['fontSize']) - $pad - $height,$width);
+ }
+ //draw border
+ if ($border != '')
+ {
+ if (!(isset($border['color'])))
+ {
+ $border['color']['red'] = .5;
+ $border['color']['blue'] = .5;
+ $border['color']['green'] = .5;
+ }
+ if (!(isset($border['width']))) $border['width'] = 1;
+ if (!(isset($border['cap']))) $border['cap'] = 'round';
+ if (!(isset($border['join']))) $border['join'] = 'round';
+
+
+ $this->setStrokeColor($border['color']['red'],$border['color']['green'],$border['color']['blue']);
+ $this->setLineStyle($border['width'],$border['cap'],$border['join']);
+ $this->rectangle($this->ez['leftMargin'] + $pad + $offset, $this->y + $this->getFontHeight($this->ez['fontSize']) - $pad - $height,$width,$height);
+
+ }
+ // move y below image
+ $this->y = $this->y - $pad - $height;
+ //remove tempfile for remote images
+ if ($temp == true) unlink($image);
+
+}
+// ------------------------------------------------------------------------------
+
+// note that templating code is still considered developmental - have not really figured
+// out a good way of doing this yet.
+function loadTemplate($templateFile){
+ // this function will load the requested template ($file includes full or relative pathname)
+ // the code for the template will be modified to make it name safe, and then stored in
+ // an array for later use
+ // The id of the template will be returned for the user to operate on it later
+ if (!file_exists($templateFile)){
+ return -1;
+ }
+
+ $code = implode('',file($templateFile));
+ if (!strlen($code)){
+ return;
+ }
+
+ $code = trim($code);
+ if (substr($code,0,5)=='<?php'){
+ $code = substr($code,5);
+ }
+ if (substr($code,-2)=='?>'){
+ $code = substr($code,0,strlen($code)-2);
+ }
+ if (isset($this->ez['numTemplates'])){
+ $newNum = $this->ez['numTemplates'];
+ $this->ez['numTemplates']++;
+ } else {
+ $newNum=0;
+ $this->ez['numTemplates']=1;
+ $this->ez['templates']=array();
+ }
+
+ $this->ez['templates'][$newNum]['code']=$code;
+
+ return $newNum;
+}
+
+// ------------------------------------------------------------------------------
+
+function execTemplate($id,$data=array(),$options=array()){
+ // execute the given template on the current document.
+ if (!isset($this->ez['templates'][$id])){
+ return;
+ }
+ eval($this->ez['templates'][$id]['code']);
+}
+
+// ------------------------------------------------------------------------------
+function ilink($info){
+ $this->alink($info,1);
+}
+
+function alink($info,$internal=0){
+ // a callback function to support the formation of clickable links within the document
+ $lineFactor=0.05; // the thickness of the line as a proportion of the height. also the drop of the line.
+ switch($info['status']){
+ case 'start':
+ case 'sol':
+ // the beginning of the link
+ // this should contain the URl for the link as the 'p' entry, and will also contain the value of 'nCallback'
+ if (!isset($this->ez['links'])){
+ $this->ez['links']=array();
+ }
+ $i = $info['nCallback'];
+ $this->ez['links'][$i] = array('x'=>$info['x'],'y'=>$info['y'],'angle'=>$info['angle'],'decender'=>$info['decender'],'height'=>$info['height'],'url'=>$info['p']);
+ $this->saveState();
+ $this->setColor(0,0,1);
+ $this->setStrokeColor(0,0,1);
+ $thick = $info['height']*$lineFactor;
+ $this->setLineStyle($thick);
+ break;
+ case 'end':
+ case 'eol':
+ // the end of the link
+ // assume that it is the most recent opening which has closed
+ $i = $info['nCallback'];
+ $start = $this->ez['links'][$i];
+ // add underlining
+ $a = deg2rad((float)$start['angle']-90.0);
+ $drop = $start['height']*$lineFactor*1.5;
+ $dropx = cos($a)*$drop;
+ $dropy = -sin($a)*$drop;
+ $this->line($start['x']-$dropx,$start['y']-$dropy,$info['x']-$dropx,$info['y']-$dropy);
+ if ($internal) {
+ $this->addInternalLink($start['url'],$start['x'],$start['y']+$start['decender'],$info['x'],$start['y']+$start['decender']+$start['height']);
+ } else {
+ $this->addLink($start['url'],$start['x'],$start['y']+$start['decender'],$info['x'],$start['y']+$start['decender']+$start['height']);
+ }
+ $this->restoreState();
+ break;
+ }
+}
+
+// ------------------------------------------------------------------------------
+
+function uline($info){
+ // a callback function to support underlining
+ $lineFactor=0.05; // the thickness of the line as a proportion of the height. also the drop of the line.
+ switch($info['status']){
+ case 'start':
+ case 'sol':
+
+ // the beginning of the underline zone
+ if (!isset($this->ez['links'])){
+ $this->ez['links']=array();
+ }
+ $i = $info['nCallback'];
+ $this->ez['links'][$i] = array('x'=>$info['x'],'y'=>$info['y'],'angle'=>$info['angle'],'decender'=>$info['decender'],'height'=>$info['height']);
+ $this->saveState();
+ $thick = $info['height']*$lineFactor;
+ $this->setLineStyle($thick);
+ break;
+ case 'end':
+ case 'eol':
+ // the end of the link
+ // assume that it is the most recent opening which has closed
+ $i = $info['nCallback'];
+ $start = $this->ez['links'][$i];
+ // add underlining
+ $a = deg2rad((float)$start['angle']-90.0);
+ $drop = $start['height']*$lineFactor*1.5;
+ $dropx = cos($a)*$drop;
+ $dropy = -sin($a)*$drop;
+ $this->line($start['x']-$dropx,$start['y']-$dropy,$info['x']-$dropx,$info['y']-$dropy);
+ $this->restoreState();
+ break;
+ }
+}
+
+// ------------------------------------------------------------------------------
+
+}
+?> \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/class.pdf.php b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/class.pdf.php
new file mode 100755
index 00000000..8b9f3c09
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/class.pdf.php
@@ -0,0 +1,3078 @@
+<?php
+/**
+ * @package Cpdf
+ */
+/**
+* Cpdf
+*
+*
+* A PHP class to provide the basic functionality to create a pdf document without
+* any requirement for additional modules.
+*
+* Note that they companion class CezPdf can be used to extend this class and dramatically
+* simplify the creation of documents.
+*
+* IMPORTANT NOTE
+* there is no warranty, implied or otherwise with this software.
+*
+* LICENCE
+* This code has been placed in the Public Domain for all to enjoy.
+*
+* @author Wayne Munro <pdf@ros.co.nz>
+* @version 009
+* @package Cpdf
+* @link http://www.ros.co.nz/pdf
+*/
+class Cpdf {
+
+/**
+* the current number of pdf objects in the document
+*/
+var $numObj=0;
+/**
+* this array contains all of the pdf objects, ready for final assembly
+*/
+var $objects = array();
+/**
+* the objectId (number within the objects array) of the document catalog
+*/
+var $catalogId;
+/**
+* array carrying information about the fonts that the system currently knows about
+* used to ensure that a font is not loaded twice, among other things
+*/
+var $fonts=array();
+/**
+* a record of the current font
+*/
+var $currentFont='';
+/**
+* the current base font
+*/
+var $currentBaseFont='';
+/**
+* the number of the current font within the font array
+*/
+var $currentFontNum=0;
+/**
+*
+*/
+var $currentNode;
+/**
+* object number of the current page
+*/
+var $currentPage;
+/**
+* object number of the currently active contents block
+*/
+var $currentContents;
+/**
+* number of fonts within the system
+*/
+var $numFonts=0;
+/**
+* current colour for fill operations, defaults to inactive value, all three components should be between 0 and 1 inclusive when active
+*/
+var $currentColour=array('r'=>-1,'g'=>-1,'b'=>-1);
+/**
+* current colour for stroke operations (lines etc.)
+*/
+var $currentStrokeColour=array('r'=>-1,'g'=>-1,'b'=>-1);
+/**
+* current style that lines are drawn in
+*/
+var $currentLineStyle='';
+/**
+* an array which is used to save the state of the document, mainly the colours and styles
+* it is used to temporarily change to another state, the change back to what it was before
+*/
+var $stateStack = array();
+/**
+* number of elements within the state stack
+*/
+var $nStateStack = 0;
+/**
+* number of page objects within the document
+*/
+var $numPages=0;
+/**
+* object Id storage stack
+*/
+var $stack=array();
+/**
+* number of elements within the object Id storage stack
+*/
+var $nStack=0;
+/**
+* an array which contains information about the objects which are not firmly attached to pages
+* these have been added with the addObject function
+*/
+var $looseObjects=array();
+/**
+* array contains infomation about how the loose objects are to be added to the document
+*/
+var $addLooseObjects=array();
+/**
+* the objectId of the information object for the document
+* this contains authorship, title etc.
+*/
+var $infoObject=0;
+/**
+* number of images being tracked within the document
+*/
+var $numImages=0;
+/**
+* an array containing options about the document
+* it defaults to turning on the compression of the objects
+*/
+var $options=array('compression'=>1);
+/**
+* the objectId of the first page of the document
+*/
+var $firstPageId;
+/**
+* used to track the last used value of the inter-word spacing, this is so that it is known
+* when the spacing is changed.
+*/
+var $wordSpaceAdjust=0;
+/**
+* the object Id of the procset object
+*/
+var $procsetObjectId;
+/**
+* store the information about the relationship between font families
+* this used so that the code knows which font is the bold version of another font, etc.
+* the value of this array is initialised in the constuctor function.
+*/
+var $fontFamilies = array();
+/**
+* track if the current font is bolded or italicised
+*/
+var $currentTextState = '';
+/**
+* messages are stored here during processing, these can be selected afterwards to give some useful debug information
+*/
+var $messages='';
+/**
+* the ancryption array for the document encryption is stored here
+*/
+var $arc4='';
+/**
+* the object Id of the encryption information
+*/
+var $arc4_objnum=0;
+/**
+* the file identifier, used to uniquely identify a pdf document
+*/
+var $fileIdentifier='';
+/**
+* a flag to say if a document is to be encrypted or not
+*/
+var $encrypted=0;
+/**
+* the ancryption key for the encryption of all the document content (structure is not encrypted)
+*/
+var $encryptionKey='';
+/**
+* array which forms a stack to keep track of nested callback functions
+*/
+var $callback = array();
+/**
+* the number of callback functions in the callback array
+*/
+var $nCallback = 0;
+/**
+* store label->id pairs for named destinations, these will be used to replace internal links
+* done this way so that destinations can be defined after the location that links to them
+*/
+var $destinations = array();
+/**
+* store the stack for the transaction commands, each item in here is a record of the values of all the
+* variables within the class, so that the user can rollback at will (from each 'start' command)
+* note that this includes the objects array, so these can be large.
+*/
+var $checkpoint = '';
+/**
+* class constructor
+* this will start a new document
+* @var array array of 4 numbers, defining the bottom left and upper right corner of the page. first two are normally zero.
+*/
+function Cpdf ($pageSize=array(0,0,612,792)){
+ $this->newDocument($pageSize);
+
+ // also initialize the font families that are known about already
+ $this->setFontFamily('init');
+// $this->fileIdentifier = md5('xxxxxxxx'.time());
+
+}
+
+/**
+* Document object methods (internal use only)
+*
+* There is about one object method for each type of object in the pdf document
+* Each function has the same call list ($id,$action,$options).
+* $id = the object ID of the object, or what it is to be if it is being created
+* $action = a string specifying the action to be performed, though ALL must support:
+* 'new' - create the object with the id $id
+* 'out' - produce the output for the pdf object
+* $options = optional, a string or array containing the various parameters for the object
+*
+* These, in conjunction with the output function are the ONLY way for output to be produced
+* within the pdf 'file'.
+*/
+
+/**
+*destination object, used to specify the location for the user to jump to, presently on opening
+*/
+function o_destination($id,$action,$options=''){
+ if ($action!='new'){
+ $o =& $this->objects[$id];
+ }
+ switch($action){
+ case 'new':
+ $this->objects[$id]=array('t'=>'destination','info'=>array());
+ $tmp = '';
+ switch ($options['type']){
+ case 'XYZ':
+ case 'FitR':
+ $tmp = ' '.$options['p3'].$tmp;
+ case 'FitH':
+ case 'FitV':
+ case 'FitBH':
+ case 'FitBV':
+ $tmp = ' '.$options['p1'].' '.$options['p2'].$tmp;
+ case 'Fit':
+ case 'FitB':
+ $tmp = $options['type'].$tmp;
+ $this->objects[$id]['info']['string']=$tmp;
+ $this->objects[$id]['info']['page']=$options['page'];
+ }
+ break;
+ case 'out':
+ $tmp = $o['info'];
+ $res="\n".$id." 0 obj\n".'['.$tmp['page'].' 0 R /'.$tmp['string']."]\nendobj\n";
+ return $res;
+ break;
+ }
+}
+
+/**
+* set the viewer preferences
+*/
+function o_viewerPreferences($id,$action,$options=''){
+ if ($action!='new'){
+ $o =& $this->objects[$id];
+ }
+ switch ($action){
+ case 'new':
+ $this->objects[$id]=array('t'=>'viewerPreferences','info'=>array());
+ break;
+ case 'add':
+ foreach($options as $k=>$v){
+ switch ($k){
+ case 'HideToolbar':
+ case 'HideMenubar':
+ case 'HideWindowUI':
+ case 'FitWindow':
+ case 'CenterWindow':
+ case 'NonFullScreenPageMode':
+ case 'Direction':
+ $o['info'][$k]=$v;
+ break;
+ }
+ }
+ break;
+ case 'out':
+
+ $res="\n".$id." 0 obj\n".'<< ';
+ foreach($o['info'] as $k=>$v){
+ $res.="\n/".$k.' '.$v;
+ }
+ $res.="\n>>\n";
+ return $res;
+ break;
+ }
+}
+
+/**
+* define the document catalog, the overall controller for the document
+*/
+function o_catalog($id,$action,$options=''){
+ if ($action!='new'){
+ $o =& $this->objects[$id];
+ }
+ switch ($action){
+ case 'new':
+ $this->objects[$id]=array('t'=>'catalog','info'=>array());
+ $this->catalogId=$id;
+ break;
+ case 'outlines':
+ case 'pages':
+ case 'openHere':
+ $o['info'][$action]=$options;
+ break;
+ case 'viewerPreferences':
+ if (!isset($o['info']['viewerPreferences'])){
+ $this->numObj++;
+ $this->o_viewerPreferences($this->numObj,'new');
+ $o['info']['viewerPreferences']=$this->numObj;
+ }
+ $vp = $o['info']['viewerPreferences'];
+ $this->o_viewerPreferences($vp,'add',$options);
+ break;
+ case 'out':
+ $res="\n".$id." 0 obj\n".'<< /Type /Catalog';
+ foreach($o['info'] as $k=>$v){
+ switch($k){
+ case 'outlines':
+ $res.="\n".'/Outlines '.$v.' 0 R';
+ break;
+ case 'pages':
+ $res.="\n".'/Pages '.$v.' 0 R';
+ break;
+ case 'viewerPreferences':
+ $res.="\n".'/ViewerPreferences '.$o['info']['viewerPreferences'].' 0 R';
+ break;
+ case 'openHere':
+ $res.="\n".'/OpenAction '.$o['info']['openHere'].' 0 R';
+ break;
+ }
+ }
+ $res.=" >>\nendobj";
+ return $res;
+ break;
+ }
+}
+
+/**
+* object which is a parent to the pages in the document
+*/
+function o_pages($id,$action,$options=''){
+ if ($action!='new'){
+ $o =& $this->objects[$id];
+ }
+ switch ($action){
+ case 'new':
+ $this->objects[$id]=array('t'=>'pages','info'=>array());
+ $this->o_catalog($this->catalogId,'pages',$id);
+ break;
+ case 'page':
+ if (!is_array($options)){
+ // then it will just be the id of the new page
+ $o['info']['pages'][]=$options;
+ } else {
+ // then it should be an array having 'id','rid','pos', where rid=the page to which this one will be placed relative
+ // and pos is either 'before' or 'after', saying where this page will fit.
+ if (isset($options['id']) && isset($options['rid']) && isset($options['pos'])){
+ $i = array_search($options['rid'],$o['info']['pages']);
+ if (isset($o['info']['pages'][$i]) && $o['info']['pages'][$i]==$options['rid']){
+ // then there is a match
+ // make a space
+ switch ($options['pos']){
+ case 'before':
+ $k = $i;
+ break;
+ case 'after':
+ $k=$i+1;
+ break;
+ default:
+ $k=-1;
+ break;
+ }
+ if ($k>=0){
+ for ($j=count($o['info']['pages'])-1;$j>=$k;$j--){
+ $o['info']['pages'][$j+1]=$o['info']['pages'][$j];
+ }
+ $o['info']['pages'][$k]=$options['id'];
+ }
+ }
+ }
+ }
+ break;
+ case 'procset':
+ $o['info']['procset']=$options;
+ break;
+ case 'mediaBox':
+ $o['info']['mediaBox']=$options; // which should be an array of 4 numbers
+ break;
+ case 'font':
+ $o['info']['fonts'][]=array('objNum'=>$options['objNum'],'fontNum'=>$options['fontNum']);
+ break;
+ case 'xObject':
+ $o['info']['xObjects'][]=array('objNum'=>$options['objNum'],'label'=>$options['label']);
+ break;
+ case 'out':
+ if (count($o['info']['pages'])){
+ $res="\n".$id." 0 obj\n<< /Type /Pages\n/Kids [";
+ foreach($o['info']['pages'] as $k=>$v){
+ $res.=$v." 0 R\n";
+ }
+ $res.="]\n/Count ".count($this->objects[$id]['info']['pages']);
+ if ((isset($o['info']['fonts']) && count($o['info']['fonts'])) || isset($o['info']['procset'])){
+ $res.="\n/Resources <<";
+ if (isset($o['info']['procset'])){
+ $res.="\n/ProcSet ".$o['info']['procset']." 0 R";
+ }
+ if (isset($o['info']['fonts']) && count($o['info']['fonts'])){
+ $res.="\n/Font << ";
+ foreach($o['info']['fonts'] as $finfo){
+ $res.="\n/F".$finfo['fontNum']." ".$finfo['objNum']." 0 R";
+ }
+ $res.=" >>";
+ }
+ if (isset($o['info']['xObjects']) && count($o['info']['xObjects'])){
+ $res.="\n/XObject << ";
+ foreach($o['info']['xObjects'] as $finfo){
+ $res.="\n/".$finfo['label']." ".$finfo['objNum']." 0 R";
+ }
+ $res.=" >>";
+ }
+ $res.="\n>>";
+ if (isset($o['info']['mediaBox'])){
+ $tmp=$o['info']['mediaBox'];
+ $res.="\n/MediaBox [".sprintf('%.3f',$tmp[0]).' '.sprintf('%.3f',$tmp[1]).' '.sprintf('%.3f',$tmp[2]).' '.sprintf('%.3f',$tmp[3]).']';
+ }
+ }
+ $res.="\n >>\nendobj";
+ } else {
+ $res="\n".$id." 0 obj\n<< /Type /Pages\n/Count 0\n>>\nendobj";
+ }
+ return $res;
+ break;
+ }
+}
+
+/**
+* define the outlines in the doc, empty for now
+*/
+function o_outlines($id,$action,$options=''){
+ if ($action!='new'){
+ $o =& $this->objects[$id];
+ }
+ switch ($action){
+ case 'new':
+ $this->objects[$id]=array('t'=>'outlines','info'=>array('outlines'=>array()));
+ $this->o_catalog($this->catalogId,'outlines',$id);
+ break;
+ case 'outline':
+ $o['info']['outlines'][]=$options;
+ break;
+ case 'out':
+ if (count($o['info']['outlines'])){
+ $res="\n".$id." 0 obj\n<< /Type /Outlines /Kids [";
+ foreach($o['info']['outlines'] as $k=>$v){
+ $res.=$v." 0 R ";
+ }
+ $res.="] /Count ".count($o['info']['outlines'])." >>\nendobj";
+ } else {
+ $res="\n".$id." 0 obj\n<< /Type /Outlines /Count 0 >>\nendobj";
+ }
+ return $res;
+ break;
+ }
+}
+
+/**
+* an object to hold the font description
+*/
+function o_font($id,$action,$options=''){
+ if ($action!='new'){
+ $o =& $this->objects[$id];
+ }
+ switch ($action){
+ case 'new':
+ $this->objects[$id]=array('t'=>'font','info'=>array('name'=>$options['name'],'SubType'=>'Type1'));
+ $fontNum=$this->numFonts;
+ $this->objects[$id]['info']['fontNum']=$fontNum;
+ // deal with the encoding and the differences
+ if (isset($options['differences'])){
+ // then we'll need an encoding dictionary
+ $this->numObj++;
+ $this->o_fontEncoding($this->numObj,'new',$options);
+ $this->objects[$id]['info']['encodingDictionary']=$this->numObj;
+ } else if (isset($options['encoding'])){
+ // we can specify encoding here
+ switch($options['encoding']){
+ case 'WinAnsiEncoding':
+ case 'MacRomanEncoding':
+ case 'MacExpertEncoding':
+ $this->objects[$id]['info']['encoding']=$options['encoding'];
+ break;
+ case 'none':
+ break;
+ default:
+ $this->objects[$id]['info']['encoding']='WinAnsiEncoding';
+ break;
+ }
+ } else {
+ $this->objects[$id]['info']['encoding']='WinAnsiEncoding';
+ }
+ // also tell the pages node about the new font
+ $this->o_pages($this->currentNode,'font',array('fontNum'=>$fontNum,'objNum'=>$id));
+ break;
+ case 'add':
+ foreach ($options as $k=>$v){
+ switch ($k){
+ case 'BaseFont':
+ $o['info']['name'] = $v;
+ break;
+ case 'FirstChar':
+ case 'LastChar':
+ case 'Widths':
+ case 'FontDescriptor':
+ case 'SubType':
+ $this->addMessage('o_font '.$k." : ".$v);
+ $o['info'][$k] = $v;
+ break;
+ }
+ }
+ break;
+ case 'out':
+ $res="\n".$id." 0 obj\n<< /Type /Font\n/Subtype /".$o['info']['SubType']."\n";
+ $res.="/Name /F".$o['info']['fontNum']."\n";
+ $res.="/BaseFont /".$o['info']['name']."\n";
+ if (isset($o['info']['encodingDictionary'])){
+ // then place a reference to the dictionary
+ $res.="/Encoding ".$o['info']['encodingDictionary']." 0 R\n";
+ } else if (isset($o['info']['encoding'])){
+ // use the specified encoding
+ $res.="/Encoding /".$o['info']['encoding']."\n";
+ }
+ if (isset($o['info']['FirstChar'])){
+ $res.="/FirstChar ".$o['info']['FirstChar']."\n";
+ }
+ if (isset($o['info']['LastChar'])){
+ $res.="/LastChar ".$o['info']['LastChar']."\n";
+ }
+ if (isset($o['info']['Widths'])){
+ $res.="/Widths ".$o['info']['Widths']." 0 R\n";
+ }
+ if (isset($o['info']['FontDescriptor'])){
+ $res.="/FontDescriptor ".$o['info']['FontDescriptor']." 0 R\n";
+ }
+ $res.=">>\nendobj";
+ return $res;
+ break;
+ }
+}
+
+/**
+* a font descriptor, needed for including additional fonts
+*/
+function o_fontDescriptor($id,$action,$options=''){
+ if ($action!='new'){
+ $o =& $this->objects[$id];
+ }
+ switch ($action){
+ case 'new':
+ $this->objects[$id]=array('t'=>'fontDescriptor','info'=>$options);
+ break;
+ case 'out':
+ $res="\n".$id." 0 obj\n<< /Type /FontDescriptor\n";
+ foreach ($o['info'] as $label => $value){
+ switch ($label){
+ case 'Ascent':
+ case 'CapHeight':
+ case 'Descent':
+ case 'Flags':
+ case 'ItalicAngle':
+ case 'StemV':
+ case 'AvgWidth':
+ case 'Leading':
+ case 'MaxWidth':
+ case 'MissingWidth':
+ case 'StemH':
+ case 'XHeight':
+ case 'CharSet':
+ if (strlen($value)){
+ $res.='/'.$label.' '.$value."\n";
+ }
+ break;
+ case 'FontFile':
+ case 'FontFile2':
+ case 'FontFile3':
+ $res.='/'.$label.' '.$value." 0 R\n";
+ break;
+ case 'FontBBox':
+ $res.='/'.$label.' ['.$value[0].' '.$value[1].' '.$value[2].' '.$value[3]."]\n";
+ break;
+ case 'FontName':
+ $res.='/'.$label.' /'.$value."\n";
+ break;
+ }
+ }
+ $res.=">>\nendobj";
+ return $res;
+ break;
+ }
+}
+
+/**
+* the font encoding
+*/
+function o_fontEncoding($id,$action,$options=''){
+ if ($action!='new'){
+ $o =& $this->objects[$id];
+ }
+ switch ($action){
+ case 'new':
+ // the options array should contain 'differences' and maybe 'encoding'
+ $this->objects[$id]=array('t'=>'fontEncoding','info'=>$options);
+ break;
+ case 'out':
+ $res="\n".$id." 0 obj\n<< /Type /Encoding\n";
+ if (!isset($o['info']['encoding'])){
+ $o['info']['encoding']='WinAnsiEncoding';
+ }
+ if ($o['info']['encoding']!='none'){
+ $res.="/BaseEncoding /".$o['info']['encoding']."\n";
+ }
+ $res.="/Differences \n[";
+ $onum=-100;
+ foreach($o['info']['differences'] as $num=>$label){
+ if ($num!=$onum+1){
+ // we cannot make use of consecutive numbering
+ $res.= "\n".$num." /".$label;
+ } else {
+ $res.= " /".$label;
+ }
+ $onum=$num;
+ }
+ $res.="\n]\n>>\nendobj";
+ return $res;
+ break;
+ }
+}
+
+/**
+* the document procset, solves some problems with printing to old PS printers
+*/
+function o_procset($id,$action,$options=''){
+ if ($action!='new'){
+ $o =& $this->objects[$id];
+ }
+ switch ($action){
+ case 'new':
+ $this->objects[$id]=array('t'=>'procset','info'=>array('PDF'=>1,'Text'=>1));
+ $this->o_pages($this->currentNode,'procset',$id);
+ $this->procsetObjectId=$id;
+ break;
+ case 'add':
+ // this is to add new items to the procset list, despite the fact that this is considered
+ // obselete, the items are required for printing to some postscript printers
+ switch ($options) {
+ case 'ImageB':
+ case 'ImageC':
+ case 'ImageI':
+ $o['info'][$options]=1;
+ break;
+ }
+ break;
+ case 'out':
+ $res="\n".$id." 0 obj\n[";
+ foreach ($o['info'] as $label=>$val){
+ $res.='/'.$label.' ';
+ }
+ $res.="]\nendobj";
+ return $res;
+ break;
+ }
+}
+
+/**
+* define the document information
+*/
+function o_info($id,$action,$options=''){
+ if ($action!='new'){
+ $o =& $this->objects[$id];
+ }
+ switch ($action){
+ case 'new':
+ $this->infoObject=$id;
+ $date='D:'.date('Ymd');
+ $this->objects[$id]=array('t'=>'info','info'=>array('Creator'=>'R and OS php pdf writer, http://www.ros.co.nz','CreationDate'=>$date));
+ break;
+ case 'Title':
+ case 'Author':
+ case 'Subject':
+ case 'Keywords':
+ case 'Creator':
+ case 'Producer':
+ case 'CreationDate':
+ case 'ModDate':
+ case 'Trapped':
+ $o['info'][$action]=$options;
+ break;
+ case 'out':
+ if ($this->encrypted){
+ $this->encryptInit($id);
+ }
+ $res="\n".$id." 0 obj\n<<\n";
+ foreach ($o['info'] as $k=>$v){
+ $res.='/'.$k.' (';
+ if ($this->encrypted){
+ $res.=$this->filterText($this->ARC4($v));
+ } else {
+ $res.=$this->filterText($v);
+ }
+ $res.=")\n";
+ }
+ $res.=">>\nendobj";
+ return $res;
+ break;
+ }
+}
+
+/**
+* an action object, used to link to URLS initially
+*/
+function o_action($id,$action,$options=''){
+ if ($action!='new'){
+ $o =& $this->objects[$id];
+ }
+ switch ($action){
+ case 'new':
+ if (is_array($options)){
+ $this->objects[$id]=array('t'=>'action','info'=>$options,'type'=>$options['type']);
+ } else {
+ // then assume a URI action
+ $this->objects[$id]=array('t'=>'action','info'=>$options,'type'=>'URI');
+ }
+ break;
+ case 'out':
+ if ($this->encrypted){
+ $this->encryptInit($id);
+ }
+ $res="\n".$id." 0 obj\n<< /Type /Action";
+ switch($o['type']){
+ case 'ilink':
+ // there will be an 'label' setting, this is the name of the destination
+ $res.="\n/S /GoTo\n/D ".$this->destinations[(string)$o['info']['label']]." 0 R";
+ break;
+ case 'URI':
+ $res.="\n/S /URI\n/URI (";
+ if ($this->encrypted){
+ $res.=$this->filterText($this->ARC4($o['info']));
+ } else {
+ $res.=$this->filterText($o['info']);
+ }
+ $res.=")";
+ break;
+ }
+ $res.="\n>>\nendobj";
+ return $res;
+ break;
+ }
+}
+
+/**
+* an annotation object, this will add an annotation to the current page.
+* initially will support just link annotations
+*/
+function o_annotation($id,$action,$options=''){
+ if ($action!='new'){
+ $o =& $this->objects[$id];
+ }
+ switch ($action){
+ case 'new':
+ // add the annotation to the current page
+ $pageId = $this->currentPage;
+ $this->o_page($pageId,'annot',$id);
+ // and add the action object which is going to be required
+ switch($options['type']){
+ case 'link':
+ $this->objects[$id]=array('t'=>'annotation','info'=>$options);
+ $this->numObj++;
+ $this->o_action($this->numObj,'new',$options['url']);
+ $this->objects[$id]['info']['actionId']=$this->numObj;
+ break;
+ case 'ilink':
+ // this is to a named internal link
+ $label = $options['label'];
+ $this->objects[$id]=array('t'=>'annotation','info'=>$options);
+ $this->numObj++;
+ $this->o_action($this->numObj,'new',array('type'=>'ilink','label'=>$label));
+ $this->objects[$id]['info']['actionId']=$this->numObj;
+ break;
+ }
+ break;
+ case 'out':
+ $res="\n".$id." 0 obj\n<< /Type /Annot";
+ switch($o['info']['type']){
+ case 'link':
+ case 'ilink':
+ $res.= "\n/Subtype /Link";
+ break;
+ }
+ $res.="\n/A ".$o['info']['actionId']." 0 R";
+ $res.="\n/Border [0 0 0]";
+ $res.="\n/H /I";
+ $res.="\n/Rect [ ";
+ foreach($o['info']['rect'] as $v){
+ $res.= sprintf("%.4f ",$v);
+ }
+ $res.="]";
+ $res.="\n>>\nendobj";
+ return $res;
+ break;
+ }
+}
+
+/**
+* a page object, it also creates a contents object to hold its contents
+*/
+function o_page($id,$action,$options=''){
+ if ($action!='new'){
+ $o =& $this->objects[$id];
+ }
+ switch ($action){
+ case 'new':
+ $this->numPages++;
+ $this->objects[$id]=array('t'=>'page','info'=>array('parent'=>$this->currentNode,'pageNum'=>$this->numPages));
+ if (is_array($options)){
+ // then this must be a page insertion, array shoudl contain 'rid','pos'=[before|after]
+ $options['id']=$id;
+ $this->o_pages($this->currentNode,'page',$options);
+ } else {
+ $this->o_pages($this->currentNode,'page',$id);
+ }
+ $this->currentPage=$id;
+ //make a contents object to go with this page
+ $this->numObj++;
+ $this->o_contents($this->numObj,'new',$id);
+ $this->currentContents=$this->numObj;
+ $this->objects[$id]['info']['contents']=array();
+ $this->objects[$id]['info']['contents'][]=$this->numObj;
+ $match = ($this->numPages%2 ? 'odd' : 'even');
+ foreach($this->addLooseObjects as $oId=>$target){
+ if ($target=='all' || $match==$target){
+ $this->objects[$id]['info']['contents'][]=$oId;
+ }
+ }
+ break;
+ case 'content':
+ $o['info']['contents'][]=$options;
+ break;
+ case 'annot':
+ // add an annotation to this page
+ if (!isset($o['info']['annot'])){
+ $o['info']['annot']=array();
+ }
+ // $options should contain the id of the annotation dictionary
+ $o['info']['annot'][]=$options;
+ break;
+ case 'out':
+ $res="\n".$id." 0 obj\n<< /Type /Page";
+ $res.="\n/Parent ".$o['info']['parent']." 0 R";
+ if (isset($o['info']['annot'])){
+ $res.="\n/Annots [";
+ foreach($o['info']['annot'] as $aId){
+ $res.=" ".$aId." 0 R";
+ }
+ $res.=" ]";
+ }
+ $count = count($o['info']['contents']);
+ if ($count==1){
+ $res.="\n/Contents ".$o['info']['contents'][0]." 0 R";
+ } else if ($count>1){
+ $res.="\n/Contents [\n";
+ foreach ($o['info']['contents'] as $cId){
+ $res.=$cId." 0 R\n";
+ }
+ $res.="]";
+ }
+ $res.="\n>>\nendobj";
+ return $res;
+ break;
+ }
+}
+
+/**
+* the contents objects hold all of the content which appears on pages
+*/
+function o_contents($id,$action,$options=''){
+ if ($action!='new'){
+ $o =& $this->objects[$id];
+ }
+ switch ($action){
+ case 'new':
+ $this->objects[$id]=array('t'=>'contents','c'=>'','info'=>array());
+ if (strlen($options) && intval($options)){
+ // then this contents is the primary for a page
+ $this->objects[$id]['onPage']=$options;
+ } else if ($options=='raw'){
+ // then this page contains some other type of system object
+ $this->objects[$id]['raw']=1;
+ }
+ break;
+ case 'add':
+ // add more options to the decleration
+ foreach ($options as $k=>$v){
+ $o['info'][$k]=$v;
+ }
+ case 'out':
+ $tmp=$o['c'];
+ $res= "\n".$id." 0 obj\n";
+ if (isset($this->objects[$id]['raw'])){
+ $res.=$tmp;
+ } else {
+ $res.= "<<";
+ if (function_exists('gzcompress') && $this->options['compression']){
+ // then implement ZLIB based compression on this content stream
+ $res.=" /Filter /FlateDecode";
+ $tmp = gzcompress($tmp);
+ }
+ if ($this->encrypted){
+ $this->encryptInit($id);
+ $tmp = $this->ARC4($tmp);
+ }
+ foreach($o['info'] as $k=>$v){
+ $res .= "\n/".$k.' '.$v;
+ }
+ $res.="\n/Length ".strlen($tmp)." >>\nstream\n".$tmp."\nendstream";
+ }
+ $res.="\nendobj\n";
+ return $res;
+ break;
+ }
+}
+
+/**
+* an image object, will be an XObject in the document, includes description and data
+*/
+function o_image($id,$action,$options=''){
+ if ($action!='new'){
+ $o =& $this->objects[$id];
+ }
+ switch($action){
+ case 'new':
+ // make the new object
+ $this->objects[$id]=array('t'=>'image','data'=>$options['data'],'info'=>array());
+ $this->objects[$id]['info']['Type']='/XObject';
+ $this->objects[$id]['info']['Subtype']='/Image';
+ $this->objects[$id]['info']['Width']=$options['iw'];
+ $this->objects[$id]['info']['Height']=$options['ih'];
+ if (!isset($options['type']) || $options['type']=='jpg'){
+ if (!isset($options['channels'])){
+ $options['channels']=3;
+ }
+ switch($options['channels']){
+ case 1:
+ $this->objects[$id]['info']['ColorSpace']='/DeviceGray';
+ break;
+ default:
+ $this->objects[$id]['info']['ColorSpace']='/DeviceRGB';
+ break;
+ }
+ $this->objects[$id]['info']['Filter']='/DCTDecode';
+ $this->objects[$id]['info']['BitsPerComponent']=8;
+ } else if ($options['type']=='png'){
+ $this->objects[$id]['info']['Filter']='/FlateDecode';
+ $this->objects[$id]['info']['DecodeParms']='<< /Predictor 15 /Colors '.$options['ncolor'].' /Columns '.$options['iw'].' /BitsPerComponent '.$options['bitsPerComponent'].'>>';
+ if (strlen($options['pdata'])){
+ $tmp = ' [ /Indexed /DeviceRGB '.(strlen($options['pdata'])/3-1).' ';
+ $this->numObj++;
+ $this->o_contents($this->numObj,'new');
+ $this->objects[$this->numObj]['c']=$options['pdata'];
+ $tmp.=$this->numObj.' 0 R';
+ $tmp .=' ]';
+ $this->objects[$id]['info']['ColorSpace'] = $tmp;
+ if (isset($options['transparency'])){
+ switch($options['transparency']['type']){
+ case 'indexed':
+ $tmp=' [ '.$options['transparency']['data'].' '.$options['transparency']['data'].'] ';
+ $this->objects[$id]['info']['Mask'] = $tmp;
+ break;
+ }
+ }
+ } else {
+ $this->objects[$id]['info']['ColorSpace']='/'.$options['color'];
+ }
+ $this->objects[$id]['info']['BitsPerComponent']=$options['bitsPerComponent'];
+ }
+ // assign it a place in the named resource dictionary as an external object, according to
+ // the label passed in with it.
+ $this->o_pages($this->currentNode,'xObject',array('label'=>$options['label'],'objNum'=>$id));
+ // also make sure that we have the right procset object for it.
+ $this->o_procset($this->procsetObjectId,'add','ImageC');
+ break;
+ case 'out':
+ $tmp=$o['data'];
+ $res= "\n".$id." 0 obj\n<<";
+ foreach($o['info'] as $k=>$v){
+ $res.="\n/".$k.' '.$v;
+ }
+ if ($this->encrypted){
+ $this->encryptInit($id);
+ $tmp = $this->ARC4($tmp);
+ }
+ $res.="\n/Length ".strlen($tmp)." >>\nstream\n".$tmp."\nendstream\nendobj\n";
+ return $res;
+ break;
+ }
+}
+
+/**
+* encryption object.
+*/
+function o_encryption($id,$action,$options=''){
+ if ($action!='new'){
+ $o =& $this->objects[$id];
+ }
+ switch($action){
+ case 'new':
+ // make the new object
+ $this->objects[$id]=array('t'=>'encryption','info'=>$options);
+ $this->arc4_objnum=$id;
+ // figure out the additional paramaters required
+ $pad = chr(0x28).chr(0xBF).chr(0x4E).chr(0x5E).chr(0x4E).chr(0x75).chr(0x8A).chr(0x41).chr(0x64).chr(0x00).chr(0x4E).chr(0x56).chr(0xFF).chr(0xFA).chr(0x01).chr(0x08).chr(0x2E).chr(0x2E).chr(0x00).chr(0xB6).chr(0xD0).chr(0x68).chr(0x3E).chr(0x80).chr(0x2F).chr(0x0C).chr(0xA9).chr(0xFE).chr(0x64).chr(0x53).chr(0x69).chr(0x7A);
+ $len = strlen($options['owner']);
+ if ($len>32){
+ $owner = substr($options['owner'],0,32);
+ } else if ($len<32){
+ $owner = $options['owner'].substr($pad,0,32-$len);
+ } else {
+ $owner = $options['owner'];
+ }
+ $len = strlen($options['user']);
+ if ($len>32){
+ $user = substr($options['user'],0,32);
+ } else if ($len<32){
+ $user = $options['user'].substr($pad,0,32-$len);
+ } else {
+ $user = $options['user'];
+ }
+ $tmp = $this->md5_16($owner);
+ $okey = substr($tmp,0,5);
+ $this->ARC4_init($okey);
+ $ovalue=$this->ARC4($user);
+ $this->objects[$id]['info']['O']=$ovalue;
+ // now make the u value, phew.
+ $tmp = $this->md5_16($user.$ovalue.chr($options['p']).chr(255).chr(255).chr(255).$this->fileIdentifier);
+ $ukey = substr($tmp,0,5);
+
+ $this->ARC4_init($ukey);
+ $this->encryptionKey = $ukey;
+ $this->encrypted=1;
+ $uvalue=$this->ARC4($pad);
+
+ $this->objects[$id]['info']['U']=$uvalue;
+ $this->encryptionKey=$ukey;
+
+ // initialize the arc4 array
+ break;
+ case 'out':
+ $res= "\n".$id." 0 obj\n<<";
+ $res.="\n/Filter /Standard";
+ $res.="\n/V 1";
+ $res.="\n/R 2";
+ $res.="\n/O (".$this->filterText($o['info']['O']).')';
+ $res.="\n/U (".$this->filterText($o['info']['U']).')';
+ // and the p-value needs to be converted to account for the twos-complement approach
+ $o['info']['p'] = (($o['info']['p']^255)+1)*-1;
+ $res.="\n/P ".($o['info']['p']);
+ $res.="\n>>\nendobj\n";
+
+ return $res;
+ break;
+ }
+}
+
+/**
+* ARC4 functions
+* A series of function to implement ARC4 encoding in PHP
+*/
+
+/**
+* calculate the 16 byte version of the 128 bit md5 digest of the string
+*/
+function md5_16($string){
+ $tmp = md5($string);
+ $out='';
+ for ($i=0;$i<=30;$i=$i+2){
+ $out.=chr(hexdec(substr($tmp,$i,2)));
+ }
+ return $out;
+}
+
+/**
+* initialize the encryption for processing a particular object
+*/
+function encryptInit($id){
+ $tmp = $this->encryptionKey;
+ $hex = dechex($id);
+ if (strlen($hex)<6){
+ $hex = substr('000000',0,6-strlen($hex)).$hex;
+ }
+ $tmp.= chr(hexdec(substr($hex,4,2))).chr(hexdec(substr($hex,2,2))).chr(hexdec(substr($hex,0,2))).chr(0).chr(0);
+ $key = $this->md5_16($tmp);
+ $this->ARC4_init(substr($key,0,10));
+}
+
+/**
+* initialize the ARC4 encryption
+*/
+function ARC4_init($key=''){
+ $this->arc4 = '';
+ // setup the control array
+ if (strlen($key)==0){
+ return;
+ }
+ $k = '';
+ while(strlen($k)<256){
+ $k.=$key;
+ }
+ $k=substr($k,0,256);
+ for ($i=0;$i<256;$i++){
+ $this->arc4 .= chr($i);
+ }
+ $j=0;
+ for ($i=0;$i<256;$i++){
+ $t = $this->arc4[$i];
+ $j = ($j + ord($t) + ord($k[$i]))%256;
+ $this->arc4[$i]=$this->arc4[$j];
+ $this->arc4[$j]=$t;
+ }
+}
+
+/**
+* ARC4 encrypt a text string
+*/
+function ARC4($text){
+ $len=strlen($text);
+ $a=0;
+ $b=0;
+ $c = $this->arc4;
+ $out='';
+ for ($i=0;$i<$len;$i++){
+ $a = ($a+1)%256;
+ $t= $c[$a];
+ $b = ($b+ord($t))%256;
+ $c[$a]=$c[$b];
+ $c[$b]=$t;
+ $k = ord($c[(ord($c[$a])+ord($c[$b]))%256]);
+ $out.=chr(ord($text[$i]) ^ $k);
+ }
+
+ return $out;
+}
+
+/**
+* functions which can be called to adjust or add to the document
+*/
+
+/**
+* add a link in the document to an external URL
+*/
+function addLink($url,$x0,$y0,$x1,$y1){
+ $this->numObj++;
+ $info = array('type'=>'link','url'=>$url,'rect'=>array($x0,$y0,$x1,$y1));
+ $this->o_annotation($this->numObj,'new',$info);
+}
+
+/**
+* add a link in the document to an internal destination (ie. within the document)
+*/
+function addInternalLink($label,$x0,$y0,$x1,$y1){
+ $this->numObj++;
+ $info = array('type'=>'ilink','label'=>$label,'rect'=>array($x0,$y0,$x1,$y1));
+ $this->o_annotation($this->numObj,'new',$info);
+}
+
+/**
+* set the encryption of the document
+* can be used to turn it on and/or set the passwords which it will have.
+* also the functions that the user will have are set here, such as print, modify, add
+*/
+function setEncryption($userPass='',$ownerPass='',$pc=array()){
+ $p=bindec(11000000);
+
+ $options = array(
+ 'print'=>4
+ ,'modify'=>8
+ ,'copy'=>16
+ ,'add'=>32
+ );
+ foreach($pc as $k=>$v){
+ if ($v && isset($options[$k])){
+ $p+=$options[$k];
+ } else if (isset($options[$v])){
+ $p+=$options[$v];
+ }
+ }
+ // implement encryption on the document
+ if ($this->arc4_objnum == 0){
+ // then the block does not exist already, add it.
+ $this->numObj++;
+ if (strlen($ownerPass)==0){
+ $ownerPass=$userPass;
+ }
+ $this->o_encryption($this->numObj,'new',array('user'=>$userPass,'owner'=>$ownerPass,'p'=>$p));
+ }
+}
+
+/**
+* should be used for internal checks, not implemented as yet
+*/
+function checkAllHere(){
+}
+
+/**
+* return the pdf stream as a string returned from the function
+*/
+function output($debug=0){
+
+ if ($debug){
+ // turn compression off
+ $this->options['compression']=0;
+ }
+
+ if ($this->arc4_objnum){
+ $this->ARC4_init($this->encryptionKey);
+ }
+
+ $this->checkAllHere();
+
+ $xref=array();
+ $content="%PDF-1.3\n%âãÏÓ\n";
+// $content="%PDF-1.3\n";
+ $pos=strlen($content);
+ foreach($this->objects as $k=>$v){
+ $tmp='o_'.$v['t'];
+ $cont=$this->$tmp($k,'out');
+ $content.=$cont;
+ $xref[]=$pos;
+ $pos+=strlen($cont);
+ }
+ $content.="\nxref\n0 ".(count($xref)+1)."\n0000000000 65535 f \n";
+ foreach($xref as $p){
+ $content.=substr('0000000000',0,10-strlen($p)).$p." 00000 n \n";
+ }
+ $content.="\ntrailer\n << /Size ".(count($xref)+1)."\n /Root 1 0 R\n /Info ".$this->infoObject." 0 R\n";
+ // if encryption has been applied to this document then add the marker for this dictionary
+ if ($this->arc4_objnum > 0){
+ $content .= "/Encrypt ".$this->arc4_objnum." 0 R\n";
+ }
+ if (strlen($this->fileIdentifier)){
+ $content .= "/ID[<".$this->fileIdentifier."><".$this->fileIdentifier.">]\n";
+ }
+ $content .= " >>\nstartxref\n".$pos."\n%%EOF\n";
+ return $content;
+}
+
+/**
+* intialize a new document
+* if this is called on an existing document results may be unpredictable, but the existing document would be lost at minimum
+* this function is called automatically by the constructor function
+*
+* @access private
+*/
+function newDocument($pageSize=array(0,0,612,792)){
+ $this->numObj=0;
+ $this->objects = array();
+
+ $this->numObj++;
+ $this->o_catalog($this->numObj,'new');
+
+ $this->numObj++;
+ $this->o_outlines($this->numObj,'new');
+
+ $this->numObj++;
+ $this->o_pages($this->numObj,'new');
+
+ $this->o_pages($this->numObj,'mediaBox',$pageSize);
+ $this->currentNode = 3;
+
+ $this->numObj++;
+ $this->o_procset($this->numObj,'new');
+
+ $this->numObj++;
+ $this->o_info($this->numObj,'new');
+
+ $this->numObj++;
+ $this->o_page($this->numObj,'new');
+
+ // need to store the first page id as there is no way to get it to the user during
+ // startup
+ $this->firstPageId = $this->currentContents;
+}
+
+/**
+* open the font file and return a php structure containing it.
+* first check if this one has been done before and saved in a form more suited to php
+* note that if a php serialized version does not exist it will try and make one, but will
+* require write access to the directory to do it... it is MUCH faster to have these serialized
+* files.
+*
+* @access private
+*/
+function openFont($font){
+ // assume that $font contains both the path and perhaps the extension to the file, split them
+ $pos=strrpos($font,'/');
+ if ($pos===false){
+ $dir = './';
+ $name = $font;
+ } else {
+ $dir=substr($font,0,$pos+1);
+ $name=substr($font,$pos+1);
+ }
+
+ if (substr($name,-4)=='.afm'){
+ $name=substr($name,0,strlen($name)-4);
+ }
+ $this->addMessage('openFont: '.$font.' - '.$name);
+ if (file_exists($dir.'php_'.$name.'.afm')){
+ $this->addMessage('openFont: php file exists '.$dir.'php_'.$name.'.afm');
+ $tmp = file($dir.'php_'.$name.'.afm');
+ $this->fonts[$font]=unserialize($tmp[0]);
+ if (!isset($this->fonts[$font]['_version_']) || $this->fonts[$font]['_version_']<1){
+ // if the font file is old, then clear it out and prepare for re-creation
+ $this->addMessage('openFont: clear out, make way for new version.');
+ unset($this->fonts[$font]);
+ }
+ }
+ if (!isset($this->fonts[$font]) && file_exists($dir.$name.'.afm')){
+ // then rebuild the php_<font>.afm file from the <font>.afm file
+ $this->addMessage('openFont: build php file from '.$dir.$name.'.afm');
+ $data = array();
+ $file = file($dir.$name.'.afm');
+ foreach ($file as $rowA){
+ $row=trim($rowA);
+ $pos=strpos($row,' ');
+ if ($pos){
+ // then there must be some keyword
+ $key = substr($row,0,$pos);
+ switch ($key){
+ case 'FontName':
+ case 'FullName':
+ case 'FamilyName':
+ case 'Weight':
+ case 'ItalicAngle':
+ case 'IsFixedPitch':
+ case 'CharacterSet':
+ case 'UnderlinePosition':
+ case 'UnderlineThickness':
+ case 'Version':
+ case 'EncodingScheme':
+ case 'CapHeight':
+ case 'XHeight':
+ case 'Ascender':
+ case 'Descender':
+ case 'StdHW':
+ case 'StdVW':
+ case 'StartCharMetrics':
+ $data[$key]=trim(substr($row,$pos));
+ break;
+ case 'FontBBox':
+ $data[$key]=explode(' ',trim(substr($row,$pos)));
+ break;
+ case 'C':
+ //C 39 ; WX 222 ; N quoteright ; B 53 463 157 718 ;
+ $bits=explode(';',trim($row));
+ $dtmp=array();
+ foreach($bits as $bit){
+ $bits2 = explode(' ',trim($bit));
+ if (strlen($bits2[0])){
+ if (count($bits2)>2){
+ $dtmp[$bits2[0]]=array();
+ for ($i=1;$i<count($bits2);$i++){
+ $dtmp[$bits2[0]][]=$bits2[$i];
+ }
+ } else if (count($bits2)==2){
+ $dtmp[$bits2[0]]=$bits2[1];
+ }
+ }
+ }
+ if ($dtmp['C']>=0){
+ $data['C'][$dtmp['C']]=$dtmp;
+ $data['C'][$dtmp['N']]=$dtmp;
+ } else {
+ $data['C'][$dtmp['N']]=$dtmp;
+ }
+ break;
+ case 'KPX':
+ //KPX Adieresis yacute -40
+ $bits=explode(' ',trim($row));
+ $data['KPX'][$bits[1]][$bits[2]]=$bits[3];
+ break;
+ }
+ }
+ }
+ $data['_version_']=1;
+ $this->fonts[$font]=$data;
+ $fp = fopen($dir.'php_'.$name.'.afm','w');
+ fwrite($fp,serialize($data));
+ fclose($fp);
+ } else if (!isset($this->fonts[$font])){
+ $this->addMessage('openFont: no font file found');
+// echo 'Font not Found '.$font;
+ }
+}
+
+/**
+* if the font is not loaded then load it and make the required object
+* else just make it the current font
+* the encoding array can contain 'encoding'=> 'none','WinAnsiEncoding','MacRomanEncoding' or 'MacExpertEncoding'
+* note that encoding='none' will need to be used for symbolic fonts
+* and 'differences' => an array of mappings between numbers 0->255 and character names.
+*
+*/
+function selectFont($fontName,$encoding='',$set=1){
+ if (!isset($this->fonts[$fontName])){
+ // load the file
+ $this->openFont($fontName);
+ if (isset($this->fonts[$fontName])){
+ $this->numObj++;
+ $this->numFonts++;
+ $pos=strrpos($fontName,'/');
+// $dir=substr($fontName,0,$pos+1);
+ $name=substr($fontName,$pos+1);
+ if (substr($name,-4)=='.afm'){
+ $name=substr($name,0,strlen($name)-4);
+ }
+ $options=array('name'=>$name);
+ if (is_array($encoding)){
+ // then encoding and differences might be set
+ if (isset($encoding['encoding'])){
+ $options['encoding']=$encoding['encoding'];
+ }
+ if (isset($encoding['differences'])){
+ $options['differences']=$encoding['differences'];
+ }
+ } else if (strlen($encoding)){
+ // then perhaps only the encoding has been set
+ $options['encoding']=$encoding;
+ }
+ $fontObj = $this->numObj;
+ $this->o_font($this->numObj,'new',$options);
+ $this->fonts[$fontName]['fontNum']=$this->numFonts;
+ // if this is a '.afm' font, and there is a '.pfa' file to go with it ( as there
+ // should be for all non-basic fonts), then load it into an object and put the
+ // references into the font object
+ $basefile = substr($fontName,0,strlen($fontName)-4);
+ if (file_exists($basefile.'.pfb')){
+ $fbtype = 'pfb';
+ } else if (file_exists($basefile.'.ttf')){
+ $fbtype = 'ttf';
+ } else {
+ $fbtype='';
+ }
+ $fbfile = $basefile.'.'.$fbtype;
+
+// $pfbfile = substr($fontName,0,strlen($fontName)-4).'.pfb';
+// $ttffile = substr($fontName,0,strlen($fontName)-4).'.ttf';
+ $this->addMessage('selectFont: checking for - '.$fbfile);
+ if (substr($fontName,-4)=='.afm' && strlen($fbtype) ){
+ $adobeFontName = $this->fonts[$fontName]['FontName'];
+// $fontObj = $this->numObj;
+ $this->addMessage('selectFont: adding font file - '.$fbfile.' - '.$adobeFontName);
+ // find the array of fond widths, and put that into an object.
+ $firstChar = -1;
+ $lastChar = 0;
+ $widths = array();
+ foreach ($this->fonts[$fontName]['C'] as $num=>$d){
+ if (intval($num)>0 || $num=='0'){
+ if ($lastChar>0 && $num>$lastChar+1){
+ for($i=$lastChar+1;$i<$num;$i++){
+ $widths[] = 0;
+ }
+ }
+ $widths[] = $d['WX'];
+ if ($firstChar==-1){
+ $firstChar = $num;
+ }
+ $lastChar = $num;
+ }
+ }
+ // also need to adjust the widths for the differences array
+ if (isset($options['differences'])){
+ foreach($options['differences'] as $charNum=>$charName){
+ if ($charNum>$lastChar){
+ for($i=$lastChar+1;$i<=$charNum;$i++){
+ $widths[]=0;
+ }
+ $lastChar=$charNum;
+ }
+ if (isset($this->fonts[$fontName]['C'][$charName])){
+ $widths[$charNum-$firstChar]=$this->fonts[$fontName]['C'][$charName]['WX'];
+ }
+ }
+ }
+ $this->addMessage('selectFont: FirstChar='.$firstChar);
+ $this->addMessage('selectFont: LastChar='.$lastChar);
+ $this->numObj++;
+ $this->o_contents($this->numObj,'new','raw');
+ $this->objects[$this->numObj]['c'].='[';
+ foreach($widths as $width){
+ $this->objects[$this->numObj]['c'].=' '.$width;
+ }
+ $this->objects[$this->numObj]['c'].=' ]';
+ $widthid = $this->numObj;
+
+ // load the pfb file, and put that into an object too.
+ // note that pdf supports only binary format type 1 font files, though there is a
+ // simple utility to convert them from pfa to pfb.
+ $fp = fopen($fbfile,'rb');
+ $tmp = get_magic_quotes_runtime();
+ set_magic_quotes_runtime(0);
+ $data = fread($fp,filesize($fbfile));
+ set_magic_quotes_runtime($tmp);
+ fclose($fp);
+
+ // create the font descriptor
+ $this->numObj++;
+ $fontDescriptorId = $this->numObj;
+ $this->numObj++;
+ $pfbid = $this->numObj;
+ // determine flags (more than a little flakey, hopefully will not matter much)
+ $flags=0;
+ if ($this->fonts[$fontName]['ItalicAngle']!=0){ $flags+=pow(2,6); }
+ if ($this->fonts[$fontName]['IsFixedPitch']=='true'){ $flags+=1; }
+ $flags+=pow(2,5); // assume non-sybolic
+
+ $list = array('Ascent'=>'Ascender','CapHeight'=>'CapHeight','Descent'=>'Descender','FontBBox'=>'FontBBox','ItalicAngle'=>'ItalicAngle');
+ $fdopt = array(
+ 'Flags'=>$flags
+ ,'FontName'=>$adobeFontName
+ ,'StemV'=>100 // don't know what the value for this should be!
+ );
+ foreach($list as $k=>$v){
+ if (isset($this->fonts[$fontName][$v])){
+ $fdopt[$k]=$this->fonts[$fontName][$v];
+ }
+ }
+
+ if ($fbtype=='pfb'){
+ $fdopt['FontFile']=$pfbid;
+ } else if ($fbtype=='ttf'){
+ $fdopt['FontFile2']=$pfbid;
+ }
+ $this->o_fontDescriptor($fontDescriptorId,'new',$fdopt);
+
+ // embed the font program
+ $this->o_contents($this->numObj,'new');
+ $this->objects[$pfbid]['c'].=$data;
+ // determine the cruicial lengths within this file
+ if ($fbtype=='pfb'){
+ $l1 = strpos($data,'eexec')+6;
+ $l2 = strpos($data,'00000000')-$l1;
+ $l3 = strlen($data)-$l2-$l1;
+ $this->o_contents($this->numObj,'add',array('Length1'=>$l1,'Length2'=>$l2,'Length3'=>$l3));
+ } else if ($fbtype=='ttf'){
+ $l1 = strlen($data);
+ $this->o_contents($this->numObj,'add',array('Length1'=>$l1));
+ }
+
+
+ // tell the font object about all this new stuff
+ $tmp = array('BaseFont'=>$adobeFontName,'Widths'=>$widthid
+ ,'FirstChar'=>$firstChar,'LastChar'=>$lastChar
+ ,'FontDescriptor'=>$fontDescriptorId);
+ if ($fbtype=='ttf'){
+ $tmp['SubType']='TrueType';
+ }
+ $this->addMessage('adding extra info to font.('.$fontObj.')');
+ foreach($tmp as $fk=>$fv){
+ $this->addMessage($fk." : ".$fv);
+ }
+ $this->o_font($fontObj,'add',$tmp);
+
+ } else {
+ $this->addMessage('selectFont: pfb or ttf file not found, ok if this is one of the 14 standard fonts');
+ }
+
+
+ // also set the differences here, note that this means that these will take effect only the
+ //first time that a font is selected, else they are ignored
+ if (isset($options['differences'])){
+ $this->fonts[$fontName]['differences']=$options['differences'];
+ }
+ }
+ }
+ if ($set && isset($this->fonts[$fontName])){
+ // so if for some reason the font was not set in the last one then it will not be selected
+ $this->currentBaseFont=$fontName;
+ // the next line means that if a new font is selected, then the current text state will be
+ // applied to it as well.
+ $this->setCurrentFont();
+ }
+ return $this->currentFontNum;
+}
+
+/**
+* sets up the current font, based on the font families, and the current text state
+* note that this system is quite flexible, a <<b>><<i>> font can be completely different to a
+* <<i>><<b>> font, and even <<b>><<b>> will have to be defined within the family to have meaning
+* This function is to be called whenever the currentTextState is changed, it will update
+* the currentFont setting to whatever the appropriatte family one is.
+* If the user calls selectFont themselves then that will reset the currentBaseFont, and the currentFont
+* This function will change the currentFont to whatever it should be, but will not change the
+* currentBaseFont.
+*
+* @access private
+*/
+function setCurrentFont(){
+ if (strlen($this->currentBaseFont)==0){
+ // then assume an initial font
+ $this->selectFont('./fonts/Helvetica.afm');
+ }
+ $cf = substr($this->currentBaseFont,strrpos($this->currentBaseFont,'/')+1);
+ if (strlen($this->currentTextState)
+ && isset($this->fontFamilies[$cf])
+ && isset($this->fontFamilies[$cf][$this->currentTextState])){
+ // then we are in some state or another
+ // and this font has a family, and the current setting exists within it
+ // select the font, then return it
+ $nf = substr($this->currentBaseFont,0,strrpos($this->currentBaseFont,'/')+1).$this->fontFamilies[$cf][$this->currentTextState];
+ $this->selectFont($nf,'',0);
+ $this->currentFont = $nf;
+ $this->currentFontNum = $this->fonts[$nf]['fontNum'];
+ } else {
+ // the this font must not have the right family member for the current state
+ // simply assume the base font
+ $this->currentFont = $this->currentBaseFont;
+ $this->currentFontNum = $this->fonts[$this->currentFont]['fontNum'];
+ }
+}
+
+/**
+* function for the user to find out what the ID is of the first page that was created during
+* startup - useful if they wish to add something to it later.
+*/
+function getFirstPageId(){
+ return $this->firstPageId;
+}
+
+/**
+* add content to the currently active object
+*
+* @access private
+*/
+function addContent($content){
+ $this->objects[$this->currentContents]['c'].=$content;
+}
+
+/**
+* sets the colour for fill operations
+*/
+function setColor($r,$g,$b,$force=0){
+ if ($r>=0 && ($force || $r!=$this->currentColour['r'] || $g!=$this->currentColour['g'] || $b!=$this->currentColour['b'])){
+ $this->objects[$this->currentContents]['c'].="\n".sprintf('%.3f',$r).' '.sprintf('%.3f',$g).' '.sprintf('%.3f',$b).' rg';
+ $this->currentColour=array('r'=>$r,'g'=>$g,'b'=>$b);
+ }
+}
+
+/**
+* sets the colour for stroke operations
+*/
+function setStrokeColor($r,$g,$b,$force=0){
+ if ($r>=0 && ($force || $r!=$this->currentStrokeColour['r'] || $g!=$this->currentStrokeColour['g'] || $b!=$this->currentStrokeColour['b'])){
+ $this->objects[$this->currentContents]['c'].="\n".sprintf('%.3f',$r).' '.sprintf('%.3f',$g).' '.sprintf('%.3f',$b).' RG';
+ $this->currentStrokeColour=array('r'=>$r,'g'=>$g,'b'=>$b);
+ }
+}
+
+/**
+* draw a line from one set of coordinates to another
+*/
+function line($x1,$y1,$x2,$y2){
+ $this->objects[$this->currentContents]['c'].="\n".sprintf('%.3f',$x1).' '.sprintf('%.3f',$y1).' m '.sprintf('%.3f',$x2).' '.sprintf('%.3f',$y2).' l S';
+}
+
+/**
+* draw a bezier curve based on 4 control points
+*/
+function curve($x0,$y0,$x1,$y1,$x2,$y2,$x3,$y3){
+ // in the current line style, draw a bezier curve from (x0,y0) to (x3,y3) using the other two points
+ // as the control points for the curve.
+ $this->objects[$this->currentContents]['c'].="\n".sprintf('%.3f',$x0).' '.sprintf('%.3f',$y0).' m '.sprintf('%.3f',$x1).' '.sprintf('%.3f',$y1);
+ $this->objects[$this->currentContents]['c'].= ' '.sprintf('%.3f',$x2).' '.sprintf('%.3f',$y2).' '.sprintf('%.3f',$x3).' '.sprintf('%.3f',$y3).' c S';
+}
+
+/**
+* draw a part of an ellipse
+*/
+function partEllipse($x0,$y0,$astart,$afinish,$r1,$r2=0,$angle=0,$nSeg=8){
+ $this->ellipse($x0,$y0,$r1,$r2,$angle,$nSeg,$astart,$afinish,0);
+}
+
+/**
+* draw a filled ellipse
+*/
+function filledEllipse($x0,$y0,$r1,$r2=0,$angle=0,$nSeg=8,$astart=0,$afinish=360){
+ return $this->ellipse($x0,$y0,$r1,$r2=0,$angle,$nSeg,$astart,$afinish,1,1);
+}
+
+/**
+* draw an ellipse
+* note that the part and filled ellipse are just special cases of this function
+*
+* draws an ellipse in the current line style
+* centered at $x0,$y0, radii $r1,$r2
+* if $r2 is not set, then a circle is drawn
+* nSeg is not allowed to be less than 2, as this will simply draw a line (and will even draw a
+* pretty crappy shape at 2, as we are approximating with bezier curves.
+*/
+function ellipse($x0,$y0,$r1,$r2=0,$angle=0,$nSeg=8,$astart=0,$afinish=360,$close=1,$fill=0){
+ if ($r1==0){
+ return;
+ }
+ if ($r2==0){
+ $r2=$r1;
+ }
+ if ($nSeg<2){
+ $nSeg=2;
+ }
+
+ $astart = deg2rad((float)$astart);
+ $afinish = deg2rad((float)$afinish);
+ $totalAngle =$afinish-$astart;
+
+ $dt = $totalAngle/$nSeg;
+ $dtm = $dt/3;
+
+ if ($angle != 0){
+ $a = -1*deg2rad((float)$angle);
+ $tmp = "\n q ";
+ $tmp .= sprintf('%.3f',cos($a)).' '.sprintf('%.3f',(-1.0*sin($a))).' '.sprintf('%.3f',sin($a)).' '.sprintf('%.3f',cos($a)).' ';
+ $tmp .= sprintf('%.3f',$x0).' '.sprintf('%.3f',$y0).' cm';
+ $this->objects[$this->currentContents]['c'].= $tmp;
+ $x0=0;
+ $y0=0;
+ }
+
+ $t1 = $astart;
+ $a0 = $x0+$r1*cos($t1);
+ $b0 = $y0+$r2*sin($t1);
+ $c0 = -$r1*sin($t1);
+ $d0 = $r2*cos($t1);
+
+ $this->objects[$this->currentContents]['c'].="\n".sprintf('%.3f',$a0).' '.sprintf('%.3f',$b0).' m ';
+ for ($i=1;$i<=$nSeg;$i++){
+ // draw this bit of the total curve
+ $t1 = $i*$dt+$astart;
+ $a1 = $x0+$r1*cos($t1);
+ $b1 = $y0+$r2*sin($t1);
+ $c1 = -$r1*sin($t1);
+ $d1 = $r2*cos($t1);
+ $this->objects[$this->currentContents]['c'].="\n".sprintf('%.3f',($a0+$c0*$dtm)).' '.sprintf('%.3f',($b0+$d0*$dtm));
+ $this->objects[$this->currentContents]['c'].= ' '.sprintf('%.3f',($a1-$c1*$dtm)).' '.sprintf('%.3f',($b1-$d1*$dtm)).' '.sprintf('%.3f',$a1).' '.sprintf('%.3f',$b1).' c';
+ $a0=$a1;
+ $b0=$b1;
+ $c0=$c1;
+ $d0=$d1;
+ }
+ if ($fill){
+ $this->objects[$this->currentContents]['c'].=' f';
+ } else {
+ if ($close){
+ $this->objects[$this->currentContents]['c'].=' s'; // small 's' signifies closing the path as well
+ } else {
+ $this->objects[$this->currentContents]['c'].=' S';
+ }
+ }
+ if ($angle !=0){
+ $this->objects[$this->currentContents]['c'].=' Q';
+ }
+}
+
+/**
+* this sets the line drawing style.
+* width, is the thickness of the line in user units
+* cap is the type of cap to put on the line, values can be 'butt','round','square'
+* where the diffference between 'square' and 'butt' is that 'square' projects a flat end past the
+* end of the line.
+* join can be 'miter', 'round', 'bevel'
+* dash is an array which sets the dash pattern, is a series of length values, which are the lengths of the
+* on and off dashes.
+* (2) represents 2 on, 2 off, 2 on , 2 off ...
+* (2,1) is 2 on, 1 off, 2 on, 1 off.. etc
+* phase is a modifier on the dash pattern which is used to shift the point at which the pattern starts.
+*/
+function setLineStyle($width=1,$cap='',$join='',$dash='',$phase=0){
+
+ // this is quite inefficient in that it sets all the parameters whenever 1 is changed, but will fix another day
+ $string = '';
+ if ($width>0){
+ $string.= $width.' w';
+ }
+ $ca = array('butt'=>0,'round'=>1,'square'=>2);
+ if (isset($ca[$cap])){
+ $string.= ' '.$ca[$cap].' J';
+ }
+ $ja = array('miter'=>0,'round'=>1,'bevel'=>2);
+ if (isset($ja[$join])){
+ $string.= ' '.$ja[$join].' j';
+ }
+ if (is_array($dash)){
+ $string.= ' [';
+ foreach ($dash as $len){
+ $string.=' '.$len;
+ }
+ $string.= ' ] '.$phase.' d';
+ }
+ $this->currentLineStyle = $string;
+ $this->objects[$this->currentContents]['c'].="\n".$string;
+}
+
+/**
+* draw a polygon, the syntax for this is similar to the GD polygon command
+*/
+function polygon($p,$np,$f=0){
+ $this->objects[$this->currentContents]['c'].="\n";
+ $this->objects[$this->currentContents]['c'].=sprintf('%.3f',$p[0]).' '.sprintf('%.3f',$p[1]).' m ';
+ for ($i=2;$i<$np*2;$i=$i+2){
+ $this->objects[$this->currentContents]['c'].= sprintf('%.3f',$p[$i]).' '.sprintf('%.3f',$p[$i+1]).' l ';
+ }
+ if ($f==1){
+ $this->objects[$this->currentContents]['c'].=' f';
+ } else {
+ $this->objects[$this->currentContents]['c'].=' S';
+ }
+}
+
+/**
+* a filled rectangle, note that it is the width and height of the rectangle which are the secondary paramaters, not
+* the coordinates of the upper-right corner
+*/
+function filledRectangle($x1,$y1,$width,$height){
+ $this->objects[$this->currentContents]['c'].="\n".sprintf('%.3f',$x1).' '.sprintf('%.3f',$y1).' '.sprintf('%.3f',$width).' '.sprintf('%.3f',$height).' re f';
+}
+
+/**
+* draw a rectangle, note that it is the width and height of the rectangle which are the secondary paramaters, not
+* the coordinates of the upper-right corner
+*/
+function rectangle($x1,$y1,$width,$height){
+ $this->objects[$this->currentContents]['c'].="\n".sprintf('%.3f',$x1).' '.sprintf('%.3f',$y1).' '.sprintf('%.3f',$width).' '.sprintf('%.3f',$height).' re S';
+}
+
+/**
+* add a new page to the document
+* this also makes the new page the current active object
+*/
+function newPage($insert=0,$id=0,$pos='after'){
+
+ // if there is a state saved, then go up the stack closing them
+ // then on the new page, re-open them with the right setings
+
+ if ($this->nStateStack){
+ for ($i=$this->nStateStack;$i>=1;$i--){
+ $this->restoreState($i);
+ }
+ }
+
+ $this->numObj++;
+ if ($insert){
+ // the id from the ezPdf class is the od of the contents of the page, not the page object itself
+ // query that object to find the parent
+ $rid = $this->objects[$id]['onPage'];
+ $opt= array('rid'=>$rid,'pos'=>$pos);
+ $this->o_page($this->numObj,'new',$opt);
+ } else {
+ $this->o_page($this->numObj,'new');
+ }
+ // if there is a stack saved, then put that onto the page
+ if ($this->nStateStack){
+ for ($i=1;$i<=$this->nStateStack;$i++){
+ $this->saveState($i);
+ }
+ }
+ // and if there has been a stroke or fill colour set, then transfer them
+ if ($this->currentColour['r']>=0){
+ $this->setColor($this->currentColour['r'],$this->currentColour['g'],$this->currentColour['b'],1);
+ }
+ if ($this->currentStrokeColour['r']>=0){
+ $this->setStrokeColor($this->currentStrokeColour['r'],$this->currentStrokeColour['g'],$this->currentStrokeColour['b'],1);
+ }
+
+ // if there is a line style set, then put this in too
+ if (strlen($this->currentLineStyle)){
+ $this->objects[$this->currentContents]['c'].="\n".$this->currentLineStyle;
+ }
+
+ // the call to the o_page object set currentContents to the present page, so this can be returned as the page id
+ return $this->currentContents;
+}
+
+/**
+* output the pdf code, streaming it to the browser
+* the relevant headers are set so that hopefully the browser will recognise it
+*/
+function stream($options=''){
+ // setting the options allows the adjustment of the headers
+ // values at the moment are:
+ // 'Content-Disposition'=>'filename' - sets the filename, though not too sure how well this will
+ // work as in my trial the browser seems to use the filename of the php file with .pdf on the end
+ // 'Accept-Ranges'=>1 or 0 - if this is not set to 1, then this header is not included, off by default
+ // this header seems to have caused some problems despite tha fact that it is supposed to solve
+ // them, so I am leaving it off by default.
+ // 'compress'=> 1 or 0 - apply content stream compression, this is on (1) by default
+ if (!is_array($options)){
+ $options=array();
+ }
+ if ( isset($options['compress']) && $options['compress']==0){
+ $tmp = $this->output(1);
+ } else {
+ $tmp = $this->output();
+ }
+ header("Content-type: application/pdf");
+ header("Content-Length: ".strlen(ltrim($tmp)));
+ $fileName = (isset($options['Content-Disposition'])?$options['Content-Disposition']:'file.pdf');
+ header("Content-Disposition: inline; filename=".$fileName);
+ if (isset($options['Accept-Ranges']) && $options['Accept-Ranges']==1){
+ header("Accept-Ranges: ".strlen(ltrim($tmp)));
+ }
+ echo ltrim($tmp);
+}
+
+/**
+* return the height in units of the current font in the given size
+*/
+function getFontHeight($size){
+ if (!$this->numFonts){
+ $this->selectFont('./fonts/Helvetica');
+ }
+ // for the current font, and the given size, what is the height of the font in user units
+ $h = $this->fonts[$this->currentFont]['FontBBox'][3]-$this->fonts[$this->currentFont]['FontBBox'][1];
+ return $size*$h/1000;
+}
+
+/**
+* return the font decender, this will normally return a negative number
+* if you add this number to the baseline, you get the level of the bottom of the font
+* it is in the pdf user units
+*/
+function getFontDecender($size){
+ // note that this will most likely return a negative value
+ if (!$this->numFonts){
+ $this->selectFont('./fonts/Helvetica');
+ }
+ $h = $this->fonts[$this->currentFont]['FontBBox'][1];
+ return $size*$h/1000;
+}
+
+/**
+* filter the text, this is applied to all text just before being inserted into the pdf document
+* it escapes the various things that need to be escaped, and so on
+*
+* @access private
+*/
+function filterText($text){
+ $text = str_replace('\\','\\\\',$text);
+ $text = str_replace('(','\(',$text);
+ $text = str_replace(')','\)',$text);
+ $text = str_replace('&lt;','<',$text);
+ $text = str_replace('&gt;','>',$text);
+ $text = str_replace('&#039;','\'',$text);
+ $text = str_replace('&quot;','"',$text);
+ $text = str_replace('&amp;','&',$text);
+
+ return $text;
+}
+
+/**
+* given a start position and information about how text is to be laid out, calculate where
+* on the page the text will end
+*
+* @access private
+*/
+function PRVTgetTextPosition($x,$y,$angle,$size,$wa,$text){
+ // given this information return an array containing x and y for the end position as elements 0 and 1
+ $w = $this->getTextWidth($size,$text);
+ // need to adjust for the number of spaces in this text
+ $words = explode(' ',$text);
+ $nspaces=count($words)-1;
+ $w += $wa*$nspaces;
+ $a = deg2rad((float)$angle);
+ return array(cos($a)*$w+$x,-sin($a)*$w+$y);
+}
+
+/**
+* wrapper function for PRVTcheckTextDirective1
+*
+* @access private
+*/
+function PRVTcheckTextDirective(&$text,$i,&$f){
+ $x=0;
+ $y=0;
+ return $this->PRVTcheckTextDirective1($text,$i,$f,0,$x,$y);
+}
+
+/**
+* checks if the text stream contains a control directive
+* if so then makes some changes and returns the number of characters involved in the directive
+* this has been re-worked to include everything neccesary to fins the current writing point, so that
+* the location can be sent to the callback function if required
+* if the directive does not require a font change, then $f should be set to 0
+*
+* @access private
+*/
+function PRVTcheckTextDirective1(&$text,$i,&$f,$final,&$x,&$y,$size=0,$angle=0,$wordSpaceAdjust=0){
+ $directive = 0;
+ $j=$i;
+ if ($text[$j]=='<'){
+ $j++;
+ switch($text[$j]){
+ case '/':
+ $j++;
+ if (strlen($text) <= $j){
+ return $directive;
+ }
+ switch($text[$j]){
+ case 'b':
+ case 'i':
+ $j++;
+ if ($text[$j]=='>'){
+ $p = strrpos($this->currentTextState,$text[$j-1]);
+ if ($p !== false){
+ // then there is one to remove
+ $this->currentTextState = substr($this->currentTextState,0,$p).substr($this->currentTextState,$p+1);
+ }
+ $directive=$j-$i+1;
+ }
+ break;
+ case 'c':
+ // this this might be a callback function
+ $j++;
+ $k = strpos($text,'>',$j);
+ if ($k!==false && $text[$j]==':'){
+ // then this will be treated as a callback directive
+ $directive = $k-$i+1;
+ $f=0;
+ // split the remainder on colons to get the function name and the paramater
+ $tmp = substr($text,$j+1,$k-$j-1);
+ $b1 = strpos($tmp,':');
+ if ($b1!==false){
+ $func = substr($tmp,0,$b1);
+ $parm = substr($tmp,$b1+1);
+ } else {
+ $func=$tmp;
+ $parm='';
+ }
+ if (!isset($func) || !strlen(trim($func))){
+ $directive=0;
+ } else {
+ // only call the function if this is the final call
+ if ($final){
+ // need to assess the text position, calculate the text width to this point
+ // can use getTextWidth to find the text width I think
+ $tmp = $this->PRVTgetTextPosition($x,$y,$angle,$size,$wordSpaceAdjust,substr($text,0,$i));
+ $info = array('x'=>$tmp[0],'y'=>$tmp[1],'angle'=>$angle,'status'=>'end','p'=>$parm,'nCallback'=>$this->nCallback);
+ $x=$tmp[0];
+ $y=$tmp[1];
+ $ret = $this->$func($info);
+ if (is_array($ret)){
+ // then the return from the callback function could set the position, to start with, later will do font colour, and font
+ foreach($ret as $rk=>$rv){
+ switch($rk){
+ case 'x':
+ case 'y':
+ $$rk=$rv;
+ break;
+ }
+ }
+ }
+ // also remove from to the stack
+ // for simplicity, just take from the end, fix this another day
+ $this->nCallback--;
+ if ($this->nCallback<0){
+ $this->nCallBack=0;
+ }
+ }
+ }
+ }
+ break;
+ }
+ break;
+ case 'b':
+ case 'i':
+ $j++;
+ if ($text[$j]=='>'){
+ $this->currentTextState.=$text[$j-1];
+ $directive=$j-$i+1;
+ }
+ break;
+ case 'C':
+ $noClose=1;
+ case 'c':
+ // this this might be a callback function
+ $j++;
+ $k = strpos($text,'>',$j);
+ if ($k!==false && $text[$j]==':'){
+ // then this will be treated as a callback directive
+ $directive = $k-$i+1;
+ $f=0;
+ // split the remainder on colons to get the function name and the paramater
+// $bits = explode(':',substr($text,$j+1,$k-$j-1));
+ $tmp = substr($text,$j+1,$k-$j-1);
+ $b1 = strpos($tmp,':');
+ if ($b1!==false){
+ $func = substr($tmp,0,$b1);
+ $parm = substr($tmp,$b1+1);
+ } else {
+ $func=$tmp;
+ $parm='';
+ }
+ if (!isset($func) || !strlen(trim($func))){
+ $directive=0;
+ } else {
+ // only call the function if this is the final call, ie, the one actually doing printing, not measurement
+ if ($final){
+ // need to assess the text position, calculate the text width to this point
+ // can use getTextWidth to find the text width I think
+ // also add the text height and decender
+ $tmp = $this->PRVTgetTextPosition($x,$y,$angle,$size,$wordSpaceAdjust,substr($text,0,$i));
+ $info = array('x'=>$tmp[0],'y'=>$tmp[1],'angle'=>$angle,'status'=>'start','p'=>$parm,'f'=>$func,'height'=>$this->getFontHeight($size),'decender'=>$this->getFontDecender($size));
+ $x=$tmp[0];
+ $y=$tmp[1];
+ if (!isset($noClose) || !$noClose){
+ // only add to the stack if this is a small 'c', therefore is a start-stop pair
+ $this->nCallback++;
+ $info['nCallback']=$this->nCallback;
+ $this->callback[$this->nCallback]=$info;
+ }
+ $ret = $this->$func($info);
+ if (is_array($ret)){
+ // then the return from the callback function could set the position, to start with, later will do font colour, and font
+ foreach($ret as $rk=>$rv){
+ switch($rk){
+ case 'x':
+ case 'y':
+ $$rk=$rv;
+ break;
+ }
+ }
+ }
+ }
+ }
+ }
+ break;
+ }
+ }
+ return $directive;
+}
+
+/**
+* add text to the document, at a specified location, size and angle on the page
+*/
+function addText($x,$y,$size,$text,$angle=0,$wordSpaceAdjust=0){
+ if (!$this->numFonts){$this->selectFont('./fonts/Helvetica');}
+
+ // if there are any open callbacks, then they should be called, to show the start of the line
+ if ($this->nCallback>0){
+ for ($i=$this->nCallback;$i>0;$i--){
+ // call each function
+ $info = array('x'=>$x,'y'=>$y,'angle'=>$angle,'status'=>'sol','p'=>$this->callback[$i]['p'],'nCallback'=>$this->callback[$i]['nCallback'],'height'=>$this->callback[$i]['height'],'decender'=>$this->callback[$i]['decender']);
+ $func = $this->callback[$i]['f'];
+ $this->$func($info);
+ }
+ }
+ if ($angle==0){
+ $this->objects[$this->currentContents]['c'].="\n".'BT '.sprintf('%.3f',$x).' '.sprintf('%.3f',$y).' Td';
+ } else {
+ $a = deg2rad((float)$angle);
+ $tmp = "\n".'BT ';
+ $tmp .= sprintf('%.3f',cos($a)).' '.sprintf('%.3f',(-1.0*sin($a))).' '.sprintf('%.3f',sin($a)).' '.sprintf('%.3f',cos($a)).' ';
+ $tmp .= sprintf('%.3f',$x).' '.sprintf('%.3f',$y).' Tm';
+ $this->objects[$this->currentContents]['c'] .= $tmp;
+ }
+ if ($wordSpaceAdjust!=0 || $wordSpaceAdjust != $this->wordSpaceAdjust){
+ $this->wordSpaceAdjust=$wordSpaceAdjust;
+ $this->objects[$this->currentContents]['c'].=' '.sprintf('%.3f',$wordSpaceAdjust).' Tw';
+ }
+ $len=strlen($text);
+ $start=0;
+ for ($i=0;$i<$len;$i++){
+ $f=1;
+ $directive = $this->PRVTcheckTextDirective($text,$i,$f);
+ if ($directive){
+ // then we should write what we need to
+ if ($i>$start){
+ $part = substr($text,$start,$i-$start);
+ $this->objects[$this->currentContents]['c'].=' /F'.$this->currentFontNum.' '.sprintf('%.1f',$size).' Tf ';
+ $this->objects[$this->currentContents]['c'].=' ('.$this->filterText($part).') Tj';
+ }
+ if ($f){
+ // then there was nothing drastic done here, restore the contents
+ $this->setCurrentFont();
+ } else {
+ $this->objects[$this->currentContents]['c'] .= ' ET';
+ $f=1;
+ $xp=$x;
+ $yp=$y;
+ $directive = $this->PRVTcheckTextDirective1($text,$i,$f,1,$xp,$yp,$size,$angle,$wordSpaceAdjust);
+
+ // restart the text object
+ if ($angle==0){
+ $this->objects[$this->currentContents]['c'].="\n".'BT '.sprintf('%.3f',$xp).' '.sprintf('%.3f',$yp).' Td';
+ } else {
+ $a = deg2rad((float)$angle);
+ $tmp = "\n".'BT ';
+ $tmp .= sprintf('%.3f',cos($a)).' '.sprintf('%.3f',(-1.0*sin($a))).' '.sprintf('%.3f',sin($a)).' '.sprintf('%.3f',cos($a)).' ';
+ $tmp .= sprintf('%.3f',$xp).' '.sprintf('%.3f',$yp).' Tm';
+ $this->objects[$this->currentContents]['c'] .= $tmp;
+ }
+ if ($wordSpaceAdjust!=0 || $wordSpaceAdjust != $this->wordSpaceAdjust){
+ $this->wordSpaceAdjust=$wordSpaceAdjust;
+ $this->objects[$this->currentContents]['c'].=' '.sprintf('%.3f',$wordSpaceAdjust).' Tw';
+ }
+ }
+ // and move the writing point to the next piece of text
+ $i=$i+$directive-1;
+ $start=$i+1;
+ }
+
+ }
+ if ($start<$len){
+ $part = substr($text,$start);
+ $this->objects[$this->currentContents]['c'].=' /F'.$this->currentFontNum.' '.sprintf('%.1f',$size).' Tf ';
+ $this->objects[$this->currentContents]['c'].=' ('.$this->filterText($part).') Tj';
+ }
+ $this->objects[$this->currentContents]['c'].=' ET';
+
+ // if there are any open callbacks, then they should be called, to show the end of the line
+ if ($this->nCallback>0){
+ for ($i=$this->nCallback;$i>0;$i--){
+ // call each function
+ $tmp = $this->PRVTgetTextPosition($x,$y,$angle,$size,$wordSpaceAdjust,$text);
+ $info = array('x'=>$tmp[0],'y'=>$tmp[1],'angle'=>$angle,'status'=>'eol','p'=>$this->callback[$i]['p'],'nCallback'=>$this->callback[$i]['nCallback'],'height'=>$this->callback[$i]['height'],'decender'=>$this->callback[$i]['decender']);
+ $func = $this->callback[$i]['f'];
+ $this->$func($info);
+ }
+ }
+
+}
+
+/**
+* calculate how wide a given text string will be on a page, at a given size.
+* this can be called externally, but is alse used by the other class functions
+*/
+function getTextWidth($size,$text){
+ // this function should not change any of the settings, though it will need to
+ // track any directives which change during calculation, so copy them at the start
+ // and put them back at the end.
+ $store_currentTextState = $this->currentTextState;
+
+ if (!$this->numFonts){
+ $this->selectFont('./fonts/Helvetica');
+ }
+
+ // converts a number or a float to a string so it can get the width
+ $text = "$text";
+
+ // hmm, this is where it all starts to get tricky - use the font information to
+ // calculate the width of each character, add them up and convert to user units
+ $w=0;
+ $len=strlen($text);
+ $cf = $this->currentFont;
+ for ($i=0;$i<$len;$i++){
+ $f=1;
+ $directive = $this->PRVTcheckTextDirective($text,$i,$f);
+ if ($directive){
+ if ($f){
+ $this->setCurrentFont();
+ $cf = $this->currentFont;
+ }
+ $i=$i+$directive-1;
+ } else {
+ $char=ord($text[$i]);
+ if (isset($this->fonts[$cf]['differences'][$char])){
+ // then this character is being replaced by another
+ $name = $this->fonts[$cf]['differences'][$char];
+ if (isset($this->fonts[$cf]['C'][$name]['WX'])){
+ $w+=$this->fonts[$cf]['C'][$name]['WX'];
+ }
+ } else if (isset($this->fonts[$cf]['C'][$char]['WX'])){
+ $w+=$this->fonts[$cf]['C'][$char]['WX'];
+ }
+ }
+ }
+
+ $this->currentTextState = $store_currentTextState;
+ $this->setCurrentFont();
+
+ return $w*$size/1000;
+}
+
+/**
+* do a part of the calculation for sorting out the justification of the text
+*
+* @access private
+*/
+function PRVTadjustWrapText($text,$actual,$width,&$x,&$adjust,$justification){
+ switch ($justification){
+ case 'left':
+ return;
+ break;
+ case 'right':
+ $x+=$width-$actual;
+ break;
+ case 'center':
+ case 'centre':
+ $x+=($width-$actual)/2;
+ break;
+ case 'full':
+ // count the number of words
+ $words = explode(' ',$text);
+ $nspaces=count($words)-1;
+ if ($nspaces>0){
+ $adjust = ($width-$actual)/$nspaces;
+ } else {
+ $adjust=0;
+ }
+ break;
+ }
+}
+
+/**
+* add text to the page, but ensure that it fits within a certain width
+* if it does not fit then put in as much as possible, splitting at word boundaries
+* and return the remainder.
+* justification and angle can also be specified for the text
+*/
+function addTextWrap($x,$y,$width,$size,$text,$justification='left',$angle=0,$test=0){
+ // this will display the text, and if it goes beyond the width $width, will backtrack to the
+ // previous space or hyphen, and return the remainder of the text.
+
+ // $justification can be set to 'left','right','center','centre','full'
+
+ // need to store the initial text state, as this will change during the width calculation
+ // but will need to be re-set before printing, so that the chars work out right
+ $store_currentTextState = $this->currentTextState;
+
+ if (!$this->numFonts){$this->selectFont('./fonts/Helvetica');}
+ if ($width<=0){
+ // error, pretend it printed ok, otherwise risking a loop
+ return '';
+ }
+ $w=0;
+ $break=0;
+ $breakWidth=0;
+ $len=strlen($text);
+ $cf = $this->currentFont;
+ $tw = $width/$size*1000;
+ for ($i=0;$i<$len;$i++){
+ $f=1;
+ $directive = $this->PRVTcheckTextDirective($text,$i,$f);
+ if ($directive){
+ if ($f){
+ $this->setCurrentFont();
+ $cf = $this->currentFont;
+ }
+ $i=$i+$directive-1;
+ } else {
+ $cOrd = ord($text[$i]);
+ if (isset($this->fonts[$cf]['differences'][$cOrd])){
+ // then this character is being replaced by another
+ $cOrd2 = $this->fonts[$cf]['differences'][$cOrd];
+ } else {
+ $cOrd2 = $cOrd;
+ }
+
+ if (isset($this->fonts[$cf]['C'][$cOrd2]['WX'])){
+ $w+=$this->fonts[$cf]['C'][$cOrd2]['WX'];
+ }
+ if ($w>$tw){
+ // then we need to truncate this line
+ if ($break>0){
+ // then we have somewhere that we can split :)
+ if ($text[$break]==' '){
+ $tmp = substr($text,0,$break);
+ } else {
+ $tmp = substr($text,0,$break+1);
+ }
+ $adjust=0;
+ $this->PRVTadjustWrapText($tmp,$breakWidth,$width,$x,$adjust,$justification);
+
+ // reset the text state
+ $this->currentTextState = $store_currentTextState;
+ $this->setCurrentFont();
+ if (!$test){
+ $this->addText($x,$y,$size,$tmp,$angle,$adjust);
+ }
+ return substr($text,$break+1);
+ } else {
+ // just split before the current character
+ $tmp = substr($text,0,$i);
+ $adjust=0;
+ $ctmp=ord($text[$i]);
+ if (isset($this->fonts[$cf]['differences'][$ctmp])){
+ $ctmp=$this->fonts[$cf]['differences'][$ctmp];
+ }
+ $tmpw=($w-$this->fonts[$cf]['C'][$ctmp]['WX'])*$size/1000;
+ $this->PRVTadjustWrapText($tmp,$tmpw,$width,$x,$adjust,$justification);
+ // reset the text state
+ $this->currentTextState = $store_currentTextState;
+ $this->setCurrentFont();
+ if (!$test){
+ $this->addText($x,$y,$size,$tmp,$angle,$adjust);
+ }
+ return substr($text,$i);
+ }
+ }
+ if ($text[$i]=='-'){
+ $break=$i;
+ $breakWidth = $w*$size/1000;
+ }
+ if ($text[$i]==' '){
+ $break=$i;
+ $ctmp=ord($text[$i]);
+ if (isset($this->fonts[$cf]['differences'][$ctmp])){
+ $ctmp=$this->fonts[$cf]['differences'][$ctmp];
+ }
+ $breakWidth = ($w-$this->fonts[$cf]['C'][$ctmp]['WX'])*$size/1000;
+ }
+ }
+ }
+ // then there was no need to break this line
+ if ($justification=='full'){
+ $justification='left';
+ }
+ $adjust=0;
+ $tmpw=$w*$size/1000;
+ $this->PRVTadjustWrapText($text,$tmpw,$width,$x,$adjust,$justification);
+ // reset the text state
+ $this->currentTextState = $store_currentTextState;
+ $this->setCurrentFont();
+ if (!$test){
+ $this->addText($x,$y,$size,$text,$angle,$adjust,$angle);
+ }
+ return '';
+}
+
+/**
+* this will be called at a new page to return the state to what it was on the
+* end of the previous page, before the stack was closed down
+* This is to get around not being able to have open 'q' across pages
+*
+*/
+function saveState($pageEnd=0){
+ if ($pageEnd){
+ // this will be called at a new page to return the state to what it was on the
+ // end of the previous page, before the stack was closed down
+ // This is to get around not being able to have open 'q' across pages
+ $opt = $this->stateStack[$pageEnd]; // ok to use this as stack starts numbering at 1
+ $this->setColor($opt['col']['r'],$opt['col']['g'],$opt['col']['b'],1);
+ $this->setStrokeColor($opt['str']['r'],$opt['str']['g'],$opt['str']['b'],1);
+ $this->objects[$this->currentContents]['c'].="\n".$opt['lin'];
+// $this->currentLineStyle = $opt['lin'];
+ } else {
+ $this->nStateStack++;
+ $this->stateStack[$this->nStateStack]=array(
+ 'col'=>$this->currentColour
+ ,'str'=>$this->currentStrokeColour
+ ,'lin'=>$this->currentLineStyle
+ );
+ }
+ $this->objects[$this->currentContents]['c'].="\nq";
+}
+
+/**
+* restore a previously saved state
+*/
+function restoreState($pageEnd=0){
+ if (!$pageEnd){
+ $n = $this->nStateStack;
+ $this->currentColour = $this->stateStack[$n]['col'];
+ $this->currentStrokeColour = $this->stateStack[$n]['str'];
+ $this->objects[$this->currentContents]['c'].="\n".$this->stateStack[$n]['lin'];
+ $this->currentLineStyle = $this->stateStack[$n]['lin'];
+ unset($this->stateStack[$n]);
+ $this->nStateStack--;
+ }
+ $this->objects[$this->currentContents]['c'].="\nQ";
+}
+
+/**
+* make a loose object, the output will go into this object, until it is closed, then will revert to
+* the current one.
+* this object will not appear until it is included within a page.
+* the function will return the object number
+*/
+function openObject(){
+ $this->nStack++;
+ $this->stack[$this->nStack]=array('c'=>$this->currentContents,'p'=>$this->currentPage);
+ // add a new object of the content type, to hold the data flow
+ $this->numObj++;
+ $this->o_contents($this->numObj,'new');
+ $this->currentContents=$this->numObj;
+ $this->looseObjects[$this->numObj]=1;
+
+ return $this->numObj;
+}
+
+/**
+* open an existing object for editing
+*/
+function reopenObject($id){
+ $this->nStack++;
+ $this->stack[$this->nStack]=array('c'=>$this->currentContents,'p'=>$this->currentPage);
+ $this->currentContents=$id;
+ // also if this object is the primary contents for a page, then set the current page to its parent
+ if (isset($this->objects[$id]['onPage'])){
+ $this->currentPage = $this->objects[$id]['onPage'];
+ }
+}
+
+/**
+* close an object
+*/
+function closeObject(){
+ // close the object, as long as there was one open in the first place, which will be indicated by
+ // an objectId on the stack.
+ if ($this->nStack>0){
+ $this->currentContents=$this->stack[$this->nStack]['c'];
+ $this->currentPage=$this->stack[$this->nStack]['p'];
+ $this->nStack--;
+ // easier to probably not worry about removing the old entries, they will be overwritten
+ // if there are new ones.
+ }
+}
+
+/**
+* stop an object from appearing on pages from this point on
+*/
+function stopObject($id){
+ // if an object has been appearing on pages up to now, then stop it, this page will
+ // be the last one that could contian it.
+ if (isset($this->addLooseObjects[$id])){
+ $this->addLooseObjects[$id]='';
+ }
+}
+
+/**
+* after an object has been created, it wil only show if it has been added, using this function.
+*/
+function addObject($id,$options='add'){
+ // add the specified object to the page
+ if (isset($this->looseObjects[$id]) && $this->currentContents!=$id){
+ // then it is a valid object, and it is not being added to itself
+ switch($options){
+ case 'all':
+ // then this object is to be added to this page (done in the next block) and
+ // all future new pages.
+ $this->addLooseObjects[$id]='all';
+ case 'add':
+ if (isset($this->objects[$this->currentContents]['onPage'])){
+ // then the destination contents is the primary for the page
+ // (though this object is actually added to that page)
+ $this->o_page($this->objects[$this->currentContents]['onPage'],'content',$id);
+ }
+ break;
+ case 'even':
+ $this->addLooseObjects[$id]='even';
+ $pageObjectId=$this->objects[$this->currentContents]['onPage'];
+ if ($this->objects[$pageObjectId]['info']['pageNum']%2==0){
+ $this->addObject($id); // hacky huh :)
+ }
+ break;
+ case 'odd':
+ $this->addLooseObjects[$id]='odd';
+ $pageObjectId=$this->objects[$this->currentContents]['onPage'];
+ if ($this->objects[$pageObjectId]['info']['pageNum']%2==1){
+ $this->addObject($id); // hacky huh :)
+ }
+ break;
+ case 'next':
+ $this->addLooseObjects[$id]='all';
+ break;
+ case 'nexteven':
+ $this->addLooseObjects[$id]='even';
+ break;
+ case 'nextodd':
+ $this->addLooseObjects[$id]='odd';
+ break;
+ }
+ }
+}
+
+/**
+* add content to the documents info object
+*/
+function addInfo($label,$value=0){
+ // this will only work if the label is one of the valid ones.
+ // modify this so that arrays can be passed as well.
+ // if $label is an array then assume that it is key=>value pairs
+ // else assume that they are both scalar, anything else will probably error
+ if (is_array($label)){
+ foreach ($label as $l=>$v){
+ $this->o_info($this->infoObject,$l,$v);
+ }
+ } else {
+ $this->o_info($this->infoObject,$label,$value);
+ }
+}
+
+/**
+* set the viewer preferences of the document, it is up to the browser to obey these.
+*/
+function setPreferences($label,$value=0){
+ // this will only work if the label is one of the valid ones.
+ if (is_array($label)){
+ foreach ($label as $l=>$v){
+ $this->o_catalog($this->catalogId,'viewerPreferences',array($l=>$v));
+ }
+ } else {
+ $this->o_catalog($this->catalogId,'viewerPreferences',array($label=>$value));
+ }
+}
+
+/**
+* extract an integer from a position in a byte stream
+*
+* @access private
+*/
+function PRVT_getBytes(&$data,$pos,$num){
+ // return the integer represented by $num bytes from $pos within $data
+ $ret=0;
+ for ($i=0;$i<$num;$i++){
+ $ret=$ret*256;
+ $ret+=ord($data[$pos+$i]);
+ }
+ return $ret;
+}
+
+/**
+* add a PNG image into the document, from a file
+* this should work with remote files
+*/
+function addPngFromFile($file,$x,$y,$w=0,$h=0){
+ // read in a png file, interpret it, then add to the system
+ $error=0;
+ $tmp = get_magic_quotes_runtime();
+ set_magic_quotes_runtime(0);
+ $fp = @fopen($file,'rb');
+ if ($fp){
+ $data='';
+ while(!feof($fp)){
+ $data .= fread($fp,1024);
+ }
+ fclose($fp);
+ } else {
+ $error = 1;
+ $errormsg = 'trouble opening file: '.$file;
+ }
+ set_magic_quotes_runtime($tmp);
+
+ if (!$error){
+ $header = chr(137).chr(80).chr(78).chr(71).chr(13).chr(10).chr(26).chr(10);
+ if (substr($data,0,8)!=$header){
+ $error=1;
+ $errormsg = 'this file does not have a valid header';
+ }
+ }
+
+ if (!$error){
+ // set pointer
+ $p = 8;
+ $len = strlen($data);
+ // cycle through the file, identifying chunks
+ $haveHeader=0;
+ $info=array();
+ $idata='';
+ $pdata='';
+ while ($p<$len){
+ $chunkLen = $this->PRVT_getBytes($data,$p,4);
+ $chunkType = substr($data,$p+4,4);
+// echo $chunkType.' - '.$chunkLen.'<br>';
+
+ switch($chunkType){
+ case 'IHDR':
+ // this is where all the file information comes from
+ $info['width']=$this->PRVT_getBytes($data,$p+8,4);
+ $info['height']=$this->PRVT_getBytes($data,$p+12,4);
+ $info['bitDepth']=ord($data[$p+16]);
+ $info['colorType']=ord($data[$p+17]);
+ $info['compressionMethod']=ord($data[$p+18]);
+ $info['filterMethod']=ord($data[$p+19]);
+ $info['interlaceMethod']=ord($data[$p+20]);
+//print_r($info);
+ $haveHeader=1;
+ if ($info['compressionMethod']!=0){
+ $error=1;
+ $errormsg = 'unsupported compression method';
+ }
+ if ($info['filterMethod']!=0){
+ $error=1;
+ $errormsg = 'unsupported filter method';
+ }
+ break;
+ case 'PLTE':
+ $pdata.=substr($data,$p+8,$chunkLen);
+ break;
+ case 'IDAT':
+ $idata.=substr($data,$p+8,$chunkLen);
+ break;
+ case 'tRNS':
+ //this chunk can only occur once and it must occur after the PLTE chunk and before IDAT chunk
+ //print "tRNS found, color type = ".$info['colorType']."<BR>";
+ $transparency = array();
+ if ($info['colorType'] == 3) { // indexed color, rbg
+ /* corresponding to entries in the plte chunk
+ Alpha for palette index 0: 1 byte
+ Alpha for palette index 1: 1 byte
+ ...etc...
+ */
+ // there will be one entry for each palette entry. up until the last non-opaque entry.
+ // set up an array, stretching over all palette entries which will be o (opaque) or 1 (transparent)
+ $transparency['type']='indexed';
+ $numPalette = strlen($pdata)/3;
+ $trans=0;
+ for ($i=$chunkLen;$i>=0;$i--){
+ if (ord($data[$p+8+$i])==0){
+ $trans=$i;
+ }
+ }
+ $transparency['data'] = $trans;
+
+ } elseif($info['colorType'] == 0) { // grayscale
+ /* corresponding to entries in the plte chunk
+ Gray: 2 bytes, range 0 .. (2^bitdepth)-1
+ */
+// $transparency['grayscale']=$this->PRVT_getBytes($data,$p+8,2); // g = grayscale
+ $transparency['type']='indexed';
+ $transparency['data'] = ord($data[$p+8+1]);
+
+ } elseif($info['colorType'] == 2) { // truecolor
+ /* corresponding to entries in the plte chunk
+ Red: 2 bytes, range 0 .. (2^bitdepth)-1
+ Green: 2 bytes, range 0 .. (2^bitdepth)-1
+ Blue: 2 bytes, range 0 .. (2^bitdepth)-1
+ */
+ $transparency['r']=$this->PRVT_getBytes($data,$p+8,2); // r from truecolor
+ $transparency['g']=$this->PRVT_getBytes($data,$p+10,2); // g from truecolor
+ $transparency['b']=$this->PRVT_getBytes($data,$p+12,2); // b from truecolor
+
+ } else {
+ //unsupported transparency type
+ }
+ // KS End new code
+ break;
+ default:
+ break;
+ }
+
+ $p += $chunkLen+12;
+ }
+
+ if(!$haveHeader){
+ $error = 1;
+ $errormsg = 'information header is missing';
+ }
+ if (isset($info['interlaceMethod']) && $info['interlaceMethod']){
+ $error = 1;
+ $errormsg = 'There appears to be no support for interlaced images in pdf.';
+ }
+ }
+
+ if (!$error && $info['bitDepth'] > 8){
+ $error = 1;
+ $errormsg = 'only bit depth of 8 or less is supported';
+ }
+
+ if (!$error){
+ if ($info['colorType']!=2 && $info['colorType']!=0 && $info['colorType']!=3){
+ $error = 1;
+ $errormsg = 'transparancey alpha channel not supported, transparency only supported for palette images.';
+ } else {
+ switch ($info['colorType']){
+ case 3:
+ $color = 'DeviceRGB';
+ $ncolor=1;
+ break;
+ case 2:
+ $color = 'DeviceRGB';
+ $ncolor=3;
+ break;
+ case 0:
+ $color = 'DeviceGray';
+ $ncolor=1;
+ break;
+ }
+ }
+ }
+ if ($error){
+ $this->addMessage('PNG error - ('.$file.') '.$errormsg);
+ return;
+ }
+ if ($w==0){
+ $w=$h/$info['height']*$info['width'];
+ }
+ if ($h==0){
+ $h=$w*$info['height']/$info['width'];
+ }
+//print_r($info);
+ // so this image is ok... add it in.
+ $this->numImages++;
+ $im=$this->numImages;
+ $label='I'.$im;
+ $this->numObj++;
+// $this->o_image($this->numObj,'new',array('label'=>$label,'data'=>$idata,'iw'=>$w,'ih'=>$h,'type'=>'png','ic'=>$info['width']));
+ $options = array('label'=>$label,'data'=>$idata,'bitsPerComponent'=>$info['bitDepth'],'pdata'=>$pdata
+ ,'iw'=>$info['width'],'ih'=>$info['height'],'type'=>'png','color'=>$color,'ncolor'=>$ncolor);
+ if (isset($transparency)){
+ $options['transparency']=$transparency;
+ }
+ $this->o_image($this->numObj,'new',$options);
+
+ $this->objects[$this->currentContents]['c'].="\nq";
+ $this->objects[$this->currentContents]['c'].="\n".sprintf('%.3f',$w)." 0 0 ".sprintf('%.3f',$h)." ".sprintf('%.3f',$x)." ".sprintf('%.3f',$y)." cm";
+ $this->objects[$this->currentContents]['c'].="\n/".$label.' Do';
+ $this->objects[$this->currentContents]['c'].="\nQ";
+}
+
+/**
+* add a JPEG image into the document, from a file
+*/
+function addJpegFromFile($img,$x,$y,$w=0,$h=0){
+ // attempt to add a jpeg image straight from a file, using no GD commands
+ // note that this function is unable to operate on a remote file.
+
+ if (!file_exists($img)){
+ return;
+ }
+
+ $tmp=getimagesize($img);
+ $imageWidth=$tmp[0];
+ $imageHeight=$tmp[1];
+
+ if (isset($tmp['channels'])){
+ $channels = $tmp['channels'];
+ } else {
+ $channels = 3;
+ }
+
+ if ($w<=0 && $h<=0){
+ $w=$imageWidth;
+ }
+ if ($w==0){
+ $w=$h/$imageHeight*$imageWidth;
+ }
+ if ($h==0){
+ $h=$w*$imageHeight/$imageWidth;
+ }
+
+ $fp=fopen($img,'rb');
+
+ $tmp = get_magic_quotes_runtime();
+ set_magic_quotes_runtime(0);
+ $data = fread($fp,filesize($img));
+ set_magic_quotes_runtime($tmp);
+
+ fclose($fp);
+
+ $this->addJpegImage_common($data,$x,$y,$w,$h,$imageWidth,$imageHeight,$channels);
+}
+
+/**
+* add an image into the document, from a GD object
+* this function is not all that reliable, and I would probably encourage people to use
+* the file based functions
+*/
+function addImage(&$img,$x,$y,$w=0,$h=0,$quality=75){
+ // add a new image into the current location, as an external object
+ // add the image at $x,$y, and with width and height as defined by $w & $h
+
+ // note that this will only work with full colour images and makes them jpg images for display
+ // later versions could present lossless image formats if there is interest.
+
+ // there seems to be some problem here in that images that have quality set above 75 do not appear
+ // not too sure why this is, but in the meantime I have restricted this to 75.
+ if ($quality>75){
+ $quality=75;
+ }
+
+ // if the width or height are set to zero, then set the other one based on keeping the image
+ // height/width ratio the same, if they are both zero, then give up :)
+ $imageWidth=imagesx($img);
+ $imageHeight=imagesy($img);
+
+ if ($w<=0 && $h<=0){
+ return;
+ }
+ if ($w==0){
+ $w=$h/$imageHeight*$imageWidth;
+ }
+ if ($h==0){
+ $h=$w*$imageHeight/$imageWidth;
+ }
+
+ // gotta get the data out of the img..
+
+ // so I write to a temp file, and then read it back.. soo ugly, my apologies.
+ $tmpDir='/tmp';
+ $tmpName=tempnam($tmpDir,'img');
+ imagejpeg($img,$tmpName,$quality);
+ $fp=fopen($tmpName,'rb');
+
+ $tmp = get_magic_quotes_runtime();
+ set_magic_quotes_runtime(0);
+ $fp = @fopen($tmpName,'rb');
+ if ($fp){
+ $data='';
+ while(!feof($fp)){
+ $data .= fread($fp,1024);
+ }
+ fclose($fp);
+ } else {
+ $error = 1;
+ $errormsg = 'trouble opening file';
+ }
+// $data = fread($fp,filesize($tmpName));
+ set_magic_quotes_runtime($tmp);
+// fclose($fp);
+ unlink($tmpName);
+ $this->addJpegImage_common($data,$x,$y,$w,$h,$imageWidth,$imageHeight);
+}
+
+/**
+* common code used by the two JPEG adding functions
+*
+* @access private
+*/
+function addJpegImage_common(&$data,$x,$y,$w=0,$h=0,$imageWidth,$imageHeight,$channels=3){
+ // note that this function is not to be called externally
+ // it is just the common code between the GD and the file options
+ $this->numImages++;
+ $im=$this->numImages;
+ $label='I'.$im;
+ $this->numObj++;
+ $this->o_image($this->numObj,'new',array('label'=>$label,'data'=>$data,'iw'=>$imageWidth,'ih'=>$imageHeight,'channels'=>$channels));
+
+ $this->objects[$this->currentContents]['c'].="\nq";
+ $this->objects[$this->currentContents]['c'].="\n".sprintf('%.3f',$w)." 0 0 ".sprintf('%.3f',$h)." ".sprintf('%.3f',$x)." ".sprintf('%.3f',$y)." cm";
+ $this->objects[$this->currentContents]['c'].="\n/".$label.' Do';
+ $this->objects[$this->currentContents]['c'].="\nQ";
+}
+
+/**
+* specify where the document should open when it first starts
+*/
+function openHere($style,$a=0,$b=0,$c=0){
+ // this function will open the document at a specified page, in a specified style
+ // the values for style, and the required paramters are:
+ // 'XYZ' left, top, zoom
+ // 'Fit'
+ // 'FitH' top
+ // 'FitV' left
+ // 'FitR' left,bottom,right
+ // 'FitB'
+ // 'FitBH' top
+ // 'FitBV' left
+ $this->numObj++;
+ $this->o_destination($this->numObj,'new',array('page'=>$this->currentPage,'type'=>$style,'p1'=>$a,'p2'=>$b,'p3'=>$c));
+ $id = $this->catalogId;
+ $this->o_catalog($id,'openHere',$this->numObj);
+}
+
+/**
+* create a labelled destination within the document
+*/
+function addDestination($label,$style,$a=0,$b=0,$c=0){
+ // associates the given label with the destination, it is done this way so that a destination can be specified after
+ // it has been linked to
+ // styles are the same as the 'openHere' function
+ $this->numObj++;
+ $this->o_destination($this->numObj,'new',array('page'=>$this->currentPage,'type'=>$style,'p1'=>$a,'p2'=>$b,'p3'=>$c));
+ $id = $this->numObj;
+ // store the label->idf relationship, note that this means that labels can be used only once
+ $this->destinations["$label"]=$id;
+}
+
+/**
+* define font families, this is used to initialize the font families for the default fonts
+* and for the user to add new ones for their fonts. The default bahavious can be overridden should
+* that be desired.
+*/
+function setFontFamily($family,$options=''){
+ if (!is_array($options)){
+ if ($family=='init'){
+ // set the known family groups
+ // these font families will be used to enable bold and italic markers to be included
+ // within text streams. html forms will be used... <b></b> <i></i>
+ $this->fontFamilies['Helvetica.afm']=array(
+ 'b'=>'Helvetica-Bold.afm'
+ ,'i'=>'Helvetica-Oblique.afm'
+ ,'bi'=>'Helvetica-BoldOblique.afm'
+ ,'ib'=>'Helvetica-BoldOblique.afm'
+ );
+ $this->fontFamilies['Courier.afm']=array(
+ 'b'=>'Courier-Bold.afm'
+ ,'i'=>'Courier-Oblique.afm'
+ ,'bi'=>'Courier-BoldOblique.afm'
+ ,'ib'=>'Courier-BoldOblique.afm'
+ );
+ $this->fontFamilies['Times-Roman.afm']=array(
+ 'b'=>'Times-Bold.afm'
+ ,'i'=>'Times-Italic.afm'
+ ,'bi'=>'Times-BoldItalic.afm'
+ ,'ib'=>'Times-BoldItalic.afm'
+ );
+ }
+ } else {
+ // the user is trying to set a font family
+ // note that this can also be used to set the base ones to something else
+ if (strlen($family)){
+ $this->fontFamilies[$family] = $options;
+ }
+ }
+}
+
+/**
+* used to add messages for use in debugging
+*/
+function addMessage($message){
+ $this->messages.=$message."\n";
+}
+
+/**
+* a few functions which should allow the document to be treated transactionally.
+*/
+function transaction($action){
+ switch ($action){
+ case 'start':
+ // store all the data away into the checkpoint variable
+ $data = get_object_vars($this);
+ $this->checkpoint = $data;
+ unset($data);
+ break;
+ case 'commit':
+ if (is_array($this->checkpoint) && isset($this->checkpoint['checkpoint'])){
+ $tmp = $this->checkpoint['checkpoint'];
+ $this->checkpoint = $tmp;
+ unset($tmp);
+ } else {
+ $this->checkpoint='';
+ }
+ break;
+ case 'rewind':
+ // do not destroy the current checkpoint, but move us back to the state then, so that we can try again
+ if (is_array($this->checkpoint)){
+ // can only abort if were inside a checkpoint
+ $tmp = $this->checkpoint;
+ foreach ($tmp as $k=>$v){
+ if ($k != 'checkpoint'){
+ $this->$k=$v;
+ }
+ }
+ unset($tmp);
+ }
+ break;
+ case 'abort':
+ if (is_array($this->checkpoint)){
+ // can only abort if were inside a checkpoint
+ $tmp = $this->checkpoint;
+ foreach ($tmp as $k=>$v){
+ $this->$k=$v;
+ }
+ unset($tmp);
+ }
+ break;
+ }
+
+}
+
+} // end of class
+
+?> \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/class.phpdocpdf.php b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/class.phpdocpdf.php
new file mode 100755
index 00000000..ea3b2fdf
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/class.phpdocpdf.php
@@ -0,0 +1,353 @@
+<?php
+/**
+ * Cezpdf callback class customized for phpDocumentor
+ *
+ * phpDocumentor :: automatic documentation generator
+ *
+ * PHP versions 4 and 5
+ *
+ * Copyright (c) 2000-2006 Joshua Eichorn, Gregory Beaver
+ *
+ * LICENSE:
+ *
+ * This library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Lesser General
+ * Public License as published by the Free Software Foundation;
+ * either version 2.1 of the License, or (at your option) any
+ * later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ * @package Converters
+ * @subpackage PDFdefault
+ * @author Greg Beaver <cellog@php.net>
+ * @copyright 2000-2006 Joshua Eichorn, Gregory Beaver
+ * @license http://www.opensource.org/licenses/lgpl-license.php LGPL
+ * @version CVS: $Id: class.phpdocpdf.php 212211 2006-04-30 22:18:14Z cellog $
+ * @filesource
+ * @link http://www.phpdoc.org
+ * @link http://pear.php.net/PhpDocumentor
+ * @since 1.2
+ */
+
+/** ezPdf libraries */
+include_once 'phpDocumentor/Converters/PDF/default/class.ezpdf.php';
+include_once 'phpDocumentor/Converters/PDF/default/ParserPDF.inc';
+
+// define a class extension to allow the use of a callback to get the table of
+// contents, and to put the dots in the toc
+/**
+ * @package Converters
+ * @subpackage PDFdefault
+ */
+class phpdocpdf extends Cezpdf
+{
+ var $reportContents = array();
+ var $indexContents = array();
+ var $indents = array();
+ var $font_dir = false;
+ var $set_pageNumbering = false;
+ var $converter;
+ var $_save = '';
+ var $listType = 'ordered';
+ var $_colorStack = array();
+
+ function phpdocpdf(&$pdfconverter,$fontdir,$paper='a4',$orientation='portrait')
+ {
+ Cezpdf::Cezpdf($paper,$orientation);
+ $this->converter = $pdfconverter;
+ $this->font_dir = $fontdir;
+ }
+
+ /**
+ * This really should be in the parent class
+ */
+ function getColor()
+ {
+ return $this->currentColour;
+ }
+
+ function setColorArray($color)
+ {
+ $this->setColor($color['r'], $color['g'], $color['b']);
+ }
+
+ /**
+ * Extract Pdfphp-format color from html-format color
+ * @return array
+ * @access private
+ */
+ function _extractColor($htmlcolor)
+ {
+ preg_match('/#([a-fA-F0-9][a-fA-F0-9])([a-fA-F0-9][a-fA-F0-9])([a-fA-F0-9][a-fA-F0-9])/', $htmlcolor, $color);
+ if (count($color) != 4)
+ {
+ return false;
+ }
+ $red = hexdec($color[1]) / hexdec('FF');
+ $green = hexdec($color[2]) / hexdec('FF');
+ $blue = hexdec($color[3]) / hexdec('FF');
+ return array('r' => $red, 'g' => $green, 'b' => $blue);
+ }
+
+ function validHTMLColor($color)
+ {
+ return $this->_extractColor($htmlcolor);
+ }
+
+ function setHTMLColor($color)
+ {
+ fancy_debug('toplevel setting to', $color);
+ $this->setColor($color['r'], $color['g'], $color['b']);
+ }
+
+ function textcolor($info)
+ {
+ if ($info['status'] == 'start')
+ {
+ array_push($this->_colorStack, $this->getColor());
+ $color = $this->_extractColor($info['p']);
+ if ($color)
+ {
+// fancy_debug('set color to ',$info['p'],$color, $this->_colorStack);
+ $this->setColorArray($color);
+ } else
+ {
+ array_pop($this->_colorStack);
+ }
+ } elseif ($info['status'] == 'end')
+ {
+// debug('unsetting');
+ $this->setColorArray(array_pop($this->_colorStack));
+ }
+ }
+
+ function rf($info)
+ {
+ $tmp = $info['p'];
+ $lvl = $tmp[0];
+ $lbl = rawurldecode(substr($tmp,1));
+ $num=$this->ezWhatPageNumber($this->ezGetCurrentPageNumber());
+ $this->reportContents[] = array($lbl,$num,$lvl );
+ $this->addDestination('toc'.(count($this->reportContents)-1),'FitH',$info['y']+$info['height']);
+ }
+
+ function index($info)
+ {
+ $res = explode('|||',rawurldecode($info['p']));
+ $name = $res[0];
+ $descrip = $res[1];
+ $letter = $name[0];
+ if ($letter == '$') $letter = $name[1];
+ $this->indexContents[strtoupper($letter)][] = array($name,$descrip,$this->ezWhatPageNumber($this->ezGetCurrentPageNumber()),count($this->reportContents) - 1);
+ }
+
+ function IndexLetter($info)
+ {
+ $letter = $info['p'];
+ $this->transaction('start');
+ $ok=0;
+ while (!$ok){
+ $thisPageNum = $this->ezPageCount;
+ $this->saveState();
+ $this->setColor(0.9,0.9,0.9);
+ $this->filledRectangle($this->ez['leftMargin'],$this->y-$this->getFontHeight(18)+$this->getFontDecender(18),$this->ez['pageWidth']-$this->ez['leftMargin']-$this->ez['rightMargin'],$this->getFontHeight(18));
+ $this->restoreState();
+ $this->_ezText($letter,18,array('justification'=>'left'));
+ if ($this->ezPageCount==$thisPageNum){
+ $this->transaction('commit');
+ $ok=1;
+ } else {
+ // then we have moved onto a new page, bad bad, as the background colour will be on the old one
+ $this->transaction('rewind');
+ $this->ezNewPage();
+ }
+ }
+ }
+
+ function dots($info)
+ {
+ // draw a dotted line over to the right and put on a page number
+ $tmp = $info['p'];
+ $lvl = $tmp[0];
+ $lbl = substr($tmp,1);
+ $xpos = 520;
+
+ switch($lvl)
+ {
+ case '1':
+ $size=16;
+ $thick=1;
+ break;
+ case '2':
+ $size=14;
+ $thick=1;
+ break;
+ case '3':
+ $size=12;
+ $thick=1;
+ break;
+ case '4':
+ $size=11;
+ $thick=1;
+ break;
+ }
+
+ $adjust = 0;
+ if ($size != 16) $adjust = 1;
+ $this->saveState();
+ $this->setLineStyle($thick,'round','',array(0,10));
+ $this->line($xpos - (5*$adjust),$info['y'],$info['x']+5,$info['y']);
+ $this->restoreState();
+ $this->addText($xpos - (5*$adjust)+5,$info['y'],$size,$lbl);
+ }
+
+ /**
+ * @uses PDFParser extracts all meta-tags and processes text for output
+ */
+ function ezText($text,$size=0,$options=array(),$test=0)
+ {
+ $text = str_replace("\t"," ",$text);
+ // paragraph breaks
+ $text = str_replace("<##P##>","\n ",$text);
+ $text = str_replace("<<c:i",'< <c:i',$text);
+ $text = str_replace("ilink>>","ilink> >",$text);
+ $this->_save .= $text;
+ }
+
+ function setupTOC()
+ {
+ $parser = new PDFParser;
+ $parser->parse($this->_save,$this->font_dir,$this);
+ $this->_save = '';
+ }
+
+ function ezOutput($debug = false, $template)
+ {
+ if ($debug) return $this->_save;
+ $this->setupTOC();
+ if ($template)
+ {
+ uksort($this->indexContents,'strnatcasecmp');
+ $xpos = 520;
+ $z = 0;
+ foreach($this->indexContents as $letter => $contents)
+ {
+ if ($z++/50 == 0) {phpDocumentor_out('.');flush();}
+ uksort($this->indexContents[$letter],array($this->converter,'mystrnatcasecmp'));
+ }
+ $template->assign('indexcontents',$this->indexContents);
+ $this->ezText($template->fetch('index.tpl'));
+ $this->setupTOC();
+ }
+ return parent::ezOutput();
+ }
+
+ function _ezText($text,$size=0,$options=array(),$test=0)
+ {
+ return parent::ezText($text,$size,$options,$test);
+ }
+
+ function getYPlusOffset($offset)
+ {
+ return $this->y + $offset;
+ }
+
+ function addMessage($message)
+ {
+ return parent::addMessage($message);
+ phpDocumentor_out($message."\n");
+ flush();
+ }
+
+ function ezProcessText($text){
+ // this function will intially be used to implement underlining support, but could be used for a range of other
+ // purposes
+ $text = parent::ezProcessText($text);
+ $text = str_replace(array('<UL>','</UL>','<LI>','</LI>','<OL>','</OL>','</ol>','<blockquote>','</blockquote>'),
+ array('<ul>','</ul>','<li>','</li>','<ol>','</ul>','</ul>',"<C:indent:20>\n","<C:indent:-20>"),$text);
+// $text = str_replace("<ul>\n","<ul>",$text);
+ $text = preg_replace("/\n+\s*(<ul>|<ol>)/", "\n\\1", $text);
+ // some problemos fixed here - hack
+ $text = preg_replace('/<text [^]]+>/', '', $text);
+ $text = str_replace("<li>\n","<li>",$text);
+ $text = preg_replace("/\n+\s*<li>/", "<li>", $text);
+ $text = str_replace("<mybr>","\n",$text);
+ $text = str_replace('</li></ul>','</ul>',$text);
+ $text = preg_replace("/^\n(\d+\s+.*)/", '\\1', $text);
+ $search = array('<ul>','</ul>','<ol>','<li>','</li>');
+ $replace = array("<C:indent:20>\n","\n<C:indent:-20>","\n<C:indent:20:ordered>\n",'<C:bullet>',"\n");
+ $text = str_replace($search,$replace,$text);
+ $text = preg_replace("/([^\n])<C:bullet/", "\\1\n<C:bullet", $text);
+ if (false) {
+ $fp = @fopen("C:/Documents and Settings/Owner/Desktop/pdfsourceorig.txt",'a');
+ if ($fp)
+ {
+ fwrite($fp, $text);
+ fclose($fp);
+ }
+ }
+ return $text;
+ }
+
+ function indent($info)
+ {
+ $stuff = explode(':', $info['p']);
+ $margin = $stuff[0];
+ if (count($stuff) - 1)
+ {
+ $this->listType = 'ordered';
+ $this->listIndex = 1;
+ } else
+ {
+ if ($margin > 0)
+ {
+ $this->listIndex = 1;
+ }
+ $this->listType = 'unordered';
+ }
+ $this->ez['leftMargin'] += $margin;
+ }
+
+ /**
+ * @author Murray Shields
+ */
+ function bullet($Data)
+ {
+ if ($this->listType == 'ordered')
+ {
+ return $this->orderedBullet($Data);
+ }
+ $D = abs($Data["decender"]);
+ $X = $Data["x"] - ($D * 2) - 10;
+ $Y = $Data["y"] + ($D * 1.5);
+ $this->setLineStyle($D, "butt", "miter", array());
+ $this->setColor(0,0,0);
+ $this->ellipse($X, $Y, 1);
+ }
+
+ function orderedBullet($info)
+ {
+ $this->addText($info['x']-20, $info['y']-1, 10, $this->listIndex++ . '.');
+ }
+
+ function ezNewPage($debug=false)
+ {
+ parent::ezNewPage();
+ if (!$this->set_pageNumbering)
+ {
+ $template = $this->converter->newSmarty();
+ $parser = new PDFParser;
+ $parser->parse($template->fetch('pagenumbering.tpl'),$this->font_dir,$this);
+ }
+ $this->set_pageNumbering = true;
+ }
+}
+?>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/options.ini b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/options.ini
new file mode 100755
index 00000000..fd9c6414
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/options.ini
@@ -0,0 +1,431 @@
+preservedocbooktags = false
+
+;; used to highlight the {@source} inline tag
+[highlightSourceTokens]
+;; format:
+;; T_CONSTANTNAME = open
+;; /T_CONSTANTNAME = close
+T_FUNCTION = <b><c:textcolor:#0000FF>
+/T_FUNCTION = </c:textcolor></b>
+T_CLONE = <b><c:textcolor:#0000FF>
+/T_CLONE = </c:textcolor></b>
+T_HALT_COMPILER = <b><c:textcolor:#0000FF>
+/T_HALT_COMPILER = </c:textcolor></b>
+T_VARIABLE = <b><i><c:textcolor:#000080>
+/T_VARIABLE = </c:textcolor></i></b>
+T_CONSTANT_ENCAPSED_STRING = <i>
+/T_CONSTANT_ENCAPSED_STRING = </i>
+T_COMMENT = <i><c:textcolor:#339999>
+/T_COMMENT = </c:textcolor></i>
+T_OBJECT_OPERATOR = <b>
+/T_OBJECT_OPERATOR = </b>
+T_RETURN = <b><c:textcolor:#0000FF>
+/T_RETURN = </c:textcolor></b>
+T_SWITCH = <b><c:textcolor:#0000FF>
+/T_SWITCH = </c:textcolor></b>
+T_STATIC = <b><c:textcolor:#0000FF>
+/T_STATIC = </c:textcolor></b>
+T_IF = <b><c:textcolor:#0000FF>
+/T_IF = </c:textcolor></b>
+T_FOREACH = <b><c:textcolor:#0000FF>
+/T_FOREACH = </c:textcolor></b>
+T_FOR = <b><c:textcolor:#0000FF>
+/T_FOR = </c:textcolor></b>
+T_WHILE = <b><c:textcolor:#0000FF>
+/T_WHILE = </c:textcolor></b>
+T_DO = <b><c:textcolor:#0000FF>
+/T_DO = </c:textcolor></b>
+T_CLASS = <b><c:textcolor:#0000FF>
+/T_CLASS = </c:textcolor></b>
+T_EXTENDS = <b><c:textcolor:#0000FF>
+/T_EXTENDS = </c:textcolor></b>
+T_VAR = <b><c:textcolor:#0000FF>
+/T_VAR = </c:textcolor></b>
+T_GLOBAL = <b><c:textcolor:#0000FF>
+/T_GLOBAL = </c:textcolor></b>
+T_ELSE = <b><c:textcolor:#0000FF>
+/T_ELSE = </c:textcolor></b>
+T_ELSEIF = <b><c:textcolor:#0000FF>
+/T_ELSEIF = </c:textcolor></b>
+T_NEW = <b><c:textcolor:#0000FF>
+/T_NEW = </c:textcolor></b>
+T_CONSTANT_ENCAPSED_STRING = <c:textcolor:#339999>
+/T_CONSTANT_ENCAPSED_STRING = </c:textcolor>
+T_STRING_VARNAME = <c:textcolor:#339999>
+/T_STRING_VARNAME = </c:textcolor>
+T_INCLUDE = <b><c:textcolor:#0000FF>
+/T_INCLUDE = </c:textcolor></b>
+T_INCLUDE_ONCE = <b><c:textcolor:#0000FF>
+/T_INCLUDE_ONCE = </c:textcolor></b>
+T_REQUIRE = <b><c:textcolor:#0000FF>
+/T_REQUIRE = </c:textcolor></b>
+T_REQUIRE_ONCE = <b><c:textcolor:#0000FF>
+/T_REQUIRE_ONCE = </c:textcolor></b>
+T_DNUMBER = <c:textcolor:#53AC46>
+/T_DNUMBER = </c:textcolor>
+T_LNUMBER = <c:textcolor:#53AC46>
+/T_LNUMBER = </c:textcolor>
+T_AS = <b><c:textcolor:#0000FF>
+/T_AS = </c:textcolor></b>
+T_BREAK = <b><c:textcolor:#0000FF>
+/T_BREAK = </c:textcolor></b>
+T_CASE = <b><c:textcolor:#0000FF>
+/T_CASE = </c:textcolor></b>
+T_CONTINUE = <b><c:textcolor:#0000FF>
+/T_CONTINUE = </c:textcolor></b>
+T_DECLARE = <b><c:textcolor:#0000FF>
+/T_DECLARE = </c:textcolor></b>
+T_DEFAULT = <b><c:textcolor:#0000FF>
+/T_DEFAULT = </c:textcolor></b>
+T_ENDDECLARE = <b><c:textcolor:#0000FF>
+/T_ENDDECLARE = </c:textcolor></b>
+T_ENDFOR = <b><c:textcolor:#0000FF>
+/T_ENDFOR = </c:textcolor></b>
+T_ENDFOREACH = <b><c:textcolor:#0000FF>
+/T_ENDFOREACH = </c:textcolor></b>
+T_ENDSWITCH = <b><c:textcolor:#0000FF>
+/T_ENDSWITCH = </c:textcolor></b>
+T_ENDWHILE = <b><c:textcolor:#0000FF>
+/T_ENDWHILE = </c:textcolor></b>
+T_EXIT = <b><c:textcolor:#0000FF>
+/T_EXIT = </c:textcolor></b>
+T_STRING = <c:textcolor:#FF8000>
+/T_STRING = </c:textcolor>
+
+[highlightDocBlockSourceTokens]
+;; this is for docblock tokens, using by phpDocumentor_HighlightParser
+;; tagphptype is for "string" in @param string description, for example
+docblock = <i><c:textcolor:#8080FF>
+/docblock = </c:textcolor></i>
+tagphptype = <i><c:textcolor:#A428CC>
+/tagphptype = </c:textcolor></i>
+tagvarname = <b><c:textcolor:#A428CC>
+/tagvarname = </c:textcolor></b>
+coretag = <c:textcolor:#A428CC>
+/coretag = </c:textcolor>
+tag = <c:textcolor:#A428CC>
+/tag = </c:textcolor>
+inlinetag = <i><c:textcolor:#A428CC>
+/inlinetag = </c:textcolor></i>
+internal = <i><c:textcolor:#808080>
+/internal = </c:textcolor></i>
+closetemplate = <c:textcolor:#5BACEE>
+/closetemplate = </c:textcolor>
+docblocktemplate = <c:textcolor:#5BACEE>
+/docblocktemplate = </c:textcolor>
+
+[highlightSource]
+;; this is for highlighting things that aren't tokens like "&"
+;; format:
+;; word = open
+;; /word = close
+& = <b>
+/& = </b>
+[ = <b>
+/[ = </b>
+] = <b>
+/] = </b>
+! = <b>
+/! = </b>
+";" = <b>
+/; = </b>
+( = <b>
+/( = </b>
+) = <b>
+/) = </b>
+, = <b>
+/, = </b>
+{ = <b>
+/{ = </b>
+} = <b>
+/} = </b>
+""" = <c:textcolor:#339999>
+/" = </c:textcolor>
+
+[highlightTutorialSourceTokens]
+;; this is for XML DocBook-based tutorials, highlighted by phpDocumentor_TutorialHighlightParser
+;; <tag>
+opentag = <c:textcolor:#8080FF>
+/opentag = </c:textcolor>
+;; </tag>
+closetag = <c:textcolor:#8080FF>
+/closetag = </c:textcolor>
+;; <tag attribute="value">
+attribute = <c:textcolor:#A428CC>
+/attribute = </c:textcolor>
+;; <tag attribute="value">
+attributevalue = <c:textcolor:#5BACEE>
+/attributevalue = </c:textcolor>
+;; &entity;
+entity = <b>
+/entity = </b>
+;; <!-- comment -->
+comment = <i>
+/comment = </i>
+;; {@inline tag}
+itag = <b><i>
+/itag = </b></i>
+
+[desctranslate]
+ul = <ul>
+/ul = </ul>
+ol = <ol>
+/ol = </ol>
+li = <li>
+/li = </li>
+code = </text><text size="8"><font face="Courier" />
+/code = </text><text size="10"><font face="Helvetica" />
+var = <i>
+/var = </i>
+samp = <font face="Courier" /><i>
+/samp = </i><font face="Helvetica" />
+kbd = <font face="Courier" /><b>
+/kbd = </b><font face="Helvetica" />
+pre =
+/pre =
+p =
+/p = "\n\n"
+b = <b>
+/b = </b>
+i = <i>
+/i = </i>
+br = "\n"
+
+[ppage]
+;; this is the DocBook package page translation section. All DocBook tags
+;; that have a corresponding html tag must be listed here
+;;
+;; examples:
+;; 1)
+;; tagname = newtagname
+;;
+;; This is the simplest case, where all attributes will be added into the
+;; starting tag and the ending tag will be html/xml style </tranlatedtagname>
+;; <tagname></tagname> becomes <newtagname></newtagname> and
+;; <tagname attr="value"></tagname> becomes
+;; <newtagname attr="value"></newtagname>
+;;
+;; 2)
+;; tagname = newtagname
+;; tagname->attr = newattrname
+;;
+;; in this case, everything will be like the first case, except tags like:
+;; <tagname attr="value"></tagname> will become
+;; <newtagname newattrname="value"></newtagname>
+;;
+;; 3)
+;; tagname = newtagname
+;; tagname->attr = newattrname
+;; tagname->attr+value = newvalue
+;;
+;; in this case, the value is also translated to another. This can be useful
+;; for instances such as focus="middle" changing to align="center" or something
+;; of that nature.
+;; <tagname attr="value"></tagname> will become
+;; <newtagname newattrname="newvalue"></newtagname>
+;;
+;; 4)
+;; tagname = newtagname
+;; tagname!attr = dummy
+;;
+;; here, the attribute will be ignored. dummy is not used and may be any value
+;; <tagname attr="value"></tagname> will become
+;; <newtagname></newtagname>
+;;
+;; 5)
+;; tagname = newtagname
+;; tagname! = dummy
+;;
+;; here, all attributes will be ignored. dummy is not used and may be any value
+;; <tagname attr1="value" attr2="foo"></tagname> will become
+;; <newtagname></newtagname>
+;;
+;; 6)
+;; $attr$my_attribute = newattrname
+;;
+;; tagname = newtagname
+;;
+;; in this case, all occurences of my_attribute in any tag will be changed to
+;; newattrname. This is useful for changing things like role="php" to
+;; class="php," for example. Note that the text "$attr$" MUST be on the line
+;; start for phpDocumentor to recognize it.
+;;
+;; 7)
+;; &entity; = translation text
+;; &quot; = &quot;
+;; &quot; = """
+;; &lt; = <
+;;
+;; Use this to control translation of entities to their appropriate values
+
+&nbsp; = " "
+&quot; = """
+&rdquo; = """
+&ldquo; = """
+&amp; = &
+&lt; = &lt;
+&gt; = &gt;
+&copy; = &copy;
+
+author = <i>
+author!
+/author = "</i>\n"
+
+authorgroup = <text size="10"><b>Authors:</b>
+/authorgroup = </text>
+authorgroup!
+
+blockquote = blockquote
+blockquote!
+
+authorblurb = blockquote
+authorblurb!
+
+caution = "\n<b>Caution</b>\n<blockquote>"
+/caution = "</blockquote>\n"
+caution!
+
+command = b
+command!
+
+copyright = i
+copyright!
+
+emphasis = b
+emphasis!
+
+example = "<b>Example:</b>\n<C:indent:20>\n"
+/example = "\n<C:indent:-20>\n"
+example!
+
+formalpara = " "
+/formalpara = "\n\n"
+formalpara!
+
+graphic = pdffunction:ezImage
+graphic/ = 1
+
+important = u
+important!
+
+informalequation = blockquote
+informalequation!
+
+inlineequation = i
+inlineequation!
+
+itemizedlist = ul
+itemizedlist!
+
+literal = <font face="Courier" />
+/literal = <font face="Helvetica" />
+literal!
+
+option = " "
+/option =
+option!
+
+listitem = li
+listitem!
+
+orderedlist = ol
+orderedlist!
+
+para =
+/para = "\n\n"
+para!
+
+programlisting = "\n</text><text size="8"><font face="Courier" />"
+/programlisting = "</text><text size="10">\n<font face="Helvetica" />"
+programlisting!
+
+refsect1 = "<text size="10" justification="left">"
+/refsect1 = "\n</text>"
+refsect1!
+
+refsect2 = "<text size="10" justification="left">"
+/refsect2 = "\n</text>"
+refsect2!
+
+refsect3 = "<text size="10" justification="left">"
+/refsect3 = "\n</text>"
+refsect3!
+
+refpurpose = <text size="13" justification="center"><i>
+/refpurpose = "</i>\n</text>"
+refpurpose!
+
+simpara = "<text size="10" justification="left"> "
+/simpara = "</text>"
+simpara!
+
+warning = "<b>Warning:</b>\n<blockquote>"
+/warning = "</blockquote>\n"
+warning!
+
+;; now begins the attributes that should be tags in cdata
+[$attr$id]
+open = <pdffunction:addDestination arg="
+close = " arg="FitH" arg=$this->y />
+cdata! = true
+quotevalues = true
+separator = "="
+;separateall = true
+$id = id
+
+;; now begins the sections that deal with <title>
+[refentry_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = </text><text size="20" justification="centre"><b>
+close = "\n</b></text><text size="10" justification="left">"
+
+[refsect1_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = </text><text size="15" justification="centre"><b>
+close = "\n</b></text><text size="10" justification="left">"
+
+[refsect2_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = </text><text size="13" justification="centre"><b>
+close = "\n</b></text><text size="10" justification="left">"
+
+[refsect3_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = </text><text size="11" justification="centre"><i>
+close = "\n</i></text><text size="10" justification="left">"
+
+[para_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = </text><text size="11" justification="left"><b>
+close = "\n</b></text><text size="10" justification="left">"
+
+[formalpara_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = </text><text size="11" justification="centre"><b>
+close = "\n</b></text><text size="10" justification="left">"
+
+[example_title]
+;tag_attr = true
+;attr_name = title
+cdata_start = true
+;cdata_end = true
+open = </text><text size="11" justification="centre">
+close = "\n</text><text size="10" justification="left">"
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/appendix_title_page.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/appendix_title_page.tpl
new file mode 100755
index 00000000..a18b32b6
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/appendix_title_page.tpl
@@ -0,0 +1,4 @@
+<newpage />
+<text size="26" justification="centre"><C:rf:1Appendices><b>Appendices</b>
+</text>
+<newpage />
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/class.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/class.tpl
new file mode 100755
index 00000000..17db4f0a
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/class.tpl
@@ -0,0 +1,12 @@
+{capture name="clink"}{if $is_interface}Interface{else}Class{/if} {$name}{/capture}
+{capture name="cindex"}{$name}|||{$sdesc}{/capture}
+{capture name="classeslink"}Package {$package} Classes{/capture}
+{if $plink}{capture name="plink"}Package {$package}{/capture}{/if}
+{if $includeheader}{include file="newpackage_header.tpl" isclass=true}{/if}
+<text size="11">
+
+
+
+</text>
+<pdffunction:addDestination arg="{$dest}" arg="FitH" arg=$this->y />
+<text size="20" justification="centre">{if $is_interface}Interface{else}Class{/if} {$name} <i></text><text size="11" justification="centre">[line {if $slink}{$slink}{else}{$linenumber}{/if}]</i><C:rf:2{$smarty.capture.clink|rawurlencode}><C:index:{$smarty.capture.cindex|rawurlencode}></text>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/classtree.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/classtree.tpl
new file mode 100755
index 00000000..42063dc2
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/classtree.tpl
@@ -0,0 +1,11 @@
+{* Class Trees template for the PDF Converter *}
+<text size="26" justification="centre"><C:rf:2Appendix A - Class Trees>Appendix A - Class Trees
+</text>
+{section name=classtrees loop=$trees}
+<text size="16" justification="centre"><C:rf:3{$trees[classtrees].package}>Package {$trees[classtrees].package}
+</text>
+{section name=trees loop=$trees[classtrees].trees}
+<text size="12"><C:IndexLetter:{$trees[classtrees].trees[trees].class}>
+{$trees[classtrees].trees[trees].class_tree}</text>
+{/section}
+{/section} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/const.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/const.tpl
new file mode 100644
index 00000000..0236dfd0
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/const.tpl
@@ -0,0 +1,7 @@
+{capture name="vlink"}Class Constant {$name}{/capture}
+{capture name="vindex"}{$class}::{$name}|||{$sdesc}{/capture}
+<pdffunction:addDestination arg="{$dest}" arg="FitH" arg=$this->y />
+<text size="10" justification="left"><b>{$class}::{$name}</b>
+<C:indent:25>
+ = {$value} <i>[line {if $slink}{$slink}{else}{$linenumber}{/if}]</i><C:rf:3{$smarty.capture.vlink|rawurlencode}><C:index:{$smarty.capture.vindex|rawurlencode}>
+<C:indent:-25></text>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/define.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/define.tpl
new file mode 100755
index 00000000..8ae570cb
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/define.tpl
@@ -0,0 +1,4 @@
+{capture name="dlink"}Define {$name}{/capture}
+{capture name="dindex"}{$name}|||{$sdesc}{/capture}
+<pdffunction:addDestination arg="{$dest}" arg="FitH" arg=$this->y />
+<text size="10" justification="left">{$name} = {$value} <i>[line {if $slink}{$slink}{else}{$linenumber}{/if}]</i><C:rf:3{$smarty.capture.dlink|rawurlencode}><C:index:{$smarty.capture.dindex|rawurlencode}></text>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/docblock.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/docblock.tpl
new file mode 100755
index 00000000..8cc8d004
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/docblock.tpl
@@ -0,0 +1,10 @@
+{if $sdesc}<text size="12" justification="full" left="10"><C:indent:25><b>{$sdesc}</b>
+<C:indent:-25>{$desc}
+</text>{/if}
+{if $tags}
+<text size="10" left="15">
+<C:indent:40>
+<ul>{section name=tags loop=$tags}<li><b>{$tags[tags].keyword}</b> {$tags[tags].data}</li>
+{/section}</ul>
+<C:indent:-40></text>
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/examplesource.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/examplesource.tpl
new file mode 100755
index 00000000..8da4c782
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/examplesource.tpl
@@ -0,0 +1,5 @@
+<text size="15" justification="centre"><C:rf:3example: {$title}>{$title}
+</text>
+<font face="Courier" />
+<text size="8">{$source}</text>
+<font face="Helvetica" />
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/filesource.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/filesource.tpl
new file mode 100755
index 00000000..bbe40d41
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/filesource.tpl
@@ -0,0 +1,11 @@
+{capture name="gindex"}{$name}|||Source code{/capture}
+<newpage />
+<pdffunction:addDestination arg="{$dest}" arg="FitH" arg=$this->y />
+<text size="26" justification="centre"><C:index:{$smarty.capture.gindex|rawurlencode}><C:rf:3source code: {$name}>File Source for {$name}
+</text>
+<text size="12"><i>Documentation for this file is available at {$docs}</i>
+
+</text>
+<font face="Courier" />
+<text size="8">{$source}</text>
+<font face="Helvetica" />
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/footer.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/footer.tpl
new file mode 100755
index 00000000..56994872
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/footer.tpl
@@ -0,0 +1,11 @@
+<pdffunction:openObject return="all" />
+<pdffunction:saveState />
+<pdffunction:setStrokeColor arg="0" arg="0" arg="0" arg="1" />
+<pdffunction:line arg="20" arg="40" arg="578" arg="40" />
+<pdffunction:line arg="20" arg="822" arg="578" arg="822" />
+<pdffunction:addText arg="50" arg="34" arg="6" arg="Generated by phpDocumentor v{$phpdocversion} http://www.phpdoc.org - http://pear.php.net/package/PhpDocumentor - http://www.sourceforge.net/projects/phpdocu" />
+<pdffunction:restoreState />
+<pdffunction:closeObject />
+{* note that object can be told to appear on just odd or even pages by changing
+'all' to 'odd' or 'even'. *}
+<pdffunction:addObject arg=$all arg="all" /> \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/function.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/function.tpl
new file mode 100755
index 00000000..a5595dff
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/function.tpl
@@ -0,0 +1,4 @@
+{capture name="flink"}Function {$intricatefunctioncall.name}{/capture}
+{capture name="findex"}{$intricatefunctioncall.name}()|||{$sdesc}{/capture}
+<pdffunction:addDestination arg="{$dest}" arg="FitH" arg=$this->y />
+<text size="10" justification="left"><i>{$return}</i> function {$intricatefunctioncall.name}({section name=params loop=$intricatefunctioncall.params}{if $smarty.section.params.index > 0}, {/if}{if $intricatefunctioncall.params[params].hasdefault}[{/if}{$intricatefunctioncall.params[params].name}{if $intricatefunctioncall.params[params].hasdefault} = {$intricatefunctioncall.params[params].default}]{/if}{/section}) <i>[line {if $slink}{$slink}{else}{$linenumber}{/if}]</i><C:rf:3{$smarty.capture.flink|rawurlencode}><C:index:{$smarty.capture.findex|rawurlencode}></text>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/global.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/global.tpl
new file mode 100755
index 00000000..61852043
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/global.tpl
@@ -0,0 +1,7 @@
+{capture name="glink"}Global Variable {$name}{/capture}
+{capture name="gindex"}global {$name}|||{$sdesc}{/capture}
+<pdffunction:addDestination arg="{$dest}" arg="FitH" arg=$this->y />
+<text size="10" justification="left"><b>{$name}</b>
+<C:indent:25>
+<i>{$type}</i> = {$value} <i>[line {if $slink}{$slink}{else}{$linenumber}{/if}]</i><C:rf:3{$smarty.capture.glink|rawurlencode}><C:index:{$smarty.capture.gindex|rawurlencode}>
+<C:indent:-25></text>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/include.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/include.tpl
new file mode 100755
index 00000000..399f04d8
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/include.tpl
@@ -0,0 +1,3 @@
+<text size="10" justification="left">{$name} <b>{$value}</b> <i>[line {if $slink}{$slink}{else}{$linenumber}{/if}]</i>
+
+</text> \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/index.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/index.tpl
new file mode 100755
index 00000000..03961713
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/index.tpl
@@ -0,0 +1,14 @@
+<pdffunction:ezInsertMode arg="0" />
+<newpage />
+<text size="26" justification="centre"><C:rf:1Index>Index
+</text>
+{foreach item="contents" key="letter" from=$indexcontents}
+<text size="26"><C:IndexLetter:{$letter}></text>
+{foreach item="arr" from=$contents}
+<text size="11" aright="520"><c:ilink:toc{$arr[3]}>{$arr[0]}</c:ilink><C:dots:4{$arr[2]}></text>
+{if $arr[1]}
+<text size="11" left="50"><i>{$arr[1]}</i></text>
+{/if}
+{/foreach}
+{/foreach}
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/media/logo.jpg b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/media/logo.jpg
new file mode 100644
index 00000000..c9924091
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/media/logo.jpg
Binary files differ
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/method.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/method.tpl
new file mode 100755
index 00000000..dcc72f9f
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/method.tpl
@@ -0,0 +1,4 @@
+{capture name="mlink"}{if $constructor}Constructor {else}Method {/if}{$intricatefunctioncall.name}{/capture}
+{capture name="mindex"}{if $constructor}constructor {/if}{$class}::{$intricatefunctioncall.name}()|||{$sdesc}{/capture}
+<pdffunction:addDestination arg="{$dest}" arg="FitH" arg=$this->y />
+<text size="10" justification="left">{if $constructor}Constructor {else}{/if}<i>{$return}</i> function {$class}::{$intricatefunctioncall.name}({section name=params loop=$intricatefunctioncall.params}{if $smarty.section.params.index > 0}, {/if}{if $intricatefunctioncall.params[params].hasdefault}[{/if}{$intricatefunctioncall.params[params].name}{if $intricatefunctioncall.params[params].hasdefault} = {$intricatefunctioncall.params[params].default}]{/if}{/section}) <i>[line {if $slink}{$slink}{else}{$linenumber}{/if}]</i><C:rf:3{$smarty.capture.mlink|rawurlencode}><C:index:{$smarty.capture.mindex|rawurlencode}></text>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/newpackage_header.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/newpackage_header.tpl
new file mode 100755
index 00000000..c12c3e5d
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/newpackage_header.tpl
@@ -0,0 +1,6 @@
+<newpage />
+{if $ppage}{include file="packagepage.tpl" package=$package plink=$smarty.capture.plink ppage=$ppage}{/if}
+<text size="26" justification="centre">Package {$package} {if $isclass}Classes{else}Procedural Elements{/if}<C:rf:1{$smarty.capture.classeslink|rawurlencode}>
+
+
+</text>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/packagepage.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/packagepage.tpl
new file mode 100755
index 00000000..94accf30
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/packagepage.tpl
@@ -0,0 +1,5 @@
+<text size="26" justification="centre">Package {$package}<C:rf:1{$plink|rawurlencode}>
+
+
+</text>
+<text size="12">{$ppage}</text> \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/page.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/page.tpl
new file mode 100755
index 00000000..73d33c1c
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/page.tpl
@@ -0,0 +1,7 @@
+{capture name="pagelink"}{$name}{/capture}
+{capture name="pageindex"}{$name}|||{$sdesc}{/capture}
+{capture name="classeslink"}Package {$package} Procedural Elements{/capture}
+<newpage />
+{if $includeheader}{include file="newpackage_header.tpl" isclass=false}{/if}
+<pdffunction:addDestination arg="{$dest}" arg="FitH" arg=$this->y />
+<text size="18" justification="center">{$name}<C:rf:2{$smarty.capture.pagelink|rawurlencode}><C:index:{$smarty.capture.pageindex|rawurlencode}></text> \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/pagenumbering.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/pagenumbering.tpl
new file mode 100755
index 00000000..bb260c38
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/pagenumbering.tpl
@@ -0,0 +1 @@
+<pdffunction:ezStartPageNumbers x="500" y="28" size="10" pos="" pattern="Page {ldelim}PAGENUM{rdelim} of {ldelim}TOTALPAGENUM{rdelim}" num="1" />
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/params.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/params.tpl
new file mode 100755
index 00000000..64be39c3
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/params.tpl
@@ -0,0 +1,4 @@
+{if count($params)}<text size="10" left="15"><b><i>Function Parameters:</i></b>
+</text><text size="11" left="20"><ul>{section name=params loop=$params}
+<li><i>{$params[params].type}</i> <b>{$params[params].name}</b> {$params[params].description}</li>
+{/section}</ul></text>{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/ric.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/ric.tpl
new file mode 100755
index 00000000..427e0afb
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/ric.tpl
@@ -0,0 +1,7 @@
+{capture name="tlink"}{$name}{/capture}
+{capture name="tindex"}{$name}|||{/capture}
+<text size="20" justification="centre"><C:rf:3{$smarty.capture.tlink|rawurlencode}><C:index:{$smarty.capture.tindex|rawurlencode}>{$name}
+
+</text>
+<text size="10" justification="left">
+{$contents|htmlentities}</text> \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/ric_title_page.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/ric_title_page.tpl
new file mode 100755
index 00000000..5a604b7f
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/ric_title_page.tpl
@@ -0,0 +1,5 @@
+<newpage />
+{* Class Trees template for the PDF Converter *}
+<text size="26" justification="centre"><C:rf:2Appendix B - README/CHANGELOG/INSTALL>Appendix B - README/CHANGELOG/INSTALL
+</text>
+<newpage />
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/source_loop.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/source_loop.tpl
new file mode 100755
index 00000000..7d85c2e3
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/source_loop.tpl
@@ -0,0 +1,8 @@
+{* Source Code template for the PDF Converter *}
+{foreach from=$source item=code id=$package}
+<text size="16" justification="centre"><C:rf:3Package {$package}>Package {$package}
+</text>
+{section name=code loop=$code}
+{$code[code]}
+{/section}
+{/foreach} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/source_title_page.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/source_title_page.tpl
new file mode 100755
index 00000000..42f868f7
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/source_title_page.tpl
@@ -0,0 +1,5 @@
+<newpage />
+{* Class Trees template for the PDF Converter *}
+<text size="26" justification="centre"><C:rf:2Appendix C - Source Code>Appendix C - Source Code
+</text>
+<newpage />
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/title_page.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/title_page.tpl
new file mode 100755
index 00000000..91d50cfc
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/title_page.tpl
@@ -0,0 +1,7 @@
+<pdffunction:ezSetDy arg="-100" />
+<text size="30" justification="centre"><b>{$title}</b></text>
+<pdffunction:ezSetDy arg="-150" />
+{if $logo}
+<pdffunction:getYPlusOffset return="newy" offset="0" />
+<pdffunction:addJpegFromFile arg="{$logo}" x="250" y=$newy />
+{/if} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/toc.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/toc.tpl
new file mode 100755
index 00000000..e632ad16
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/toc.tpl
@@ -0,0 +1,15 @@
+<pdffunction:ezStopPageNumbers arg="1" arg="1" />
+<pdffunction:ezInsertMode arg="1" arg="1" arg="after" />
+<newpage />
+<text size="26" justification="centre">Contents
+</text>
+{assign var="xpos" value="520"}
+{foreach item=v key=k from=$contents}
+{if $v[2] == '1'}
+<text size="16" aright="{$xpos}"><c:ilink:toc{$k}>{$v[0]}</c:ilink><C:dots:3{$v[1]}></text>
+{elseif $v[2] == '2'}
+<text size="12" aright="{$xpos}" left="30"><c:ilink:toc{$k}>{$v[0]}</c:ilink><C:dots:3{$v[1]}></text>
+{elseif $v[2] == '3'}
+<text size="12" aright="{$xpos}" left="40"><c:ilink:toc{$k}>{$v[0]}</c:ilink><C:dots:3{$v[1]}></text>
+{/if}
+{/foreach}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/todolist.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/todolist.tpl
new file mode 100755
index 00000000..2652c1c6
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/todolist.tpl
@@ -0,0 +1,17 @@
+<newpage />
+{* Todo List template for the PDF Converter *}
+<text size="26" justification="centre"><C:rf:2Appendix D - Todo List>Appendix D - Todo List
+</text>
+{foreach from=$todos key=todopackage item=todo}
+<text size="16" justification="centre">In Package {$todopackage}
+
+</text>
+{section name=todo loop=$todo}
+<text size="12">In <b>{$todo[todo].link}</b>:
+</text>
+<text size="11"><ul>{section name=t loop=$todo[todo].todos}
+ <li>{$todo[todo].todos[t]}</li>{/section}
+</ul>
+</text>
+{/section}
+{/foreach} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/tutorial.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/tutorial.tpl
new file mode 100755
index 00000000..c5f8a2dc
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/tutorial.tpl
@@ -0,0 +1,7 @@
+{capture name="tlink"}{$title|strip_tags}{/capture}
+{capture name="tindex"}{$title|strip_tags}|||{/capture}
+{capture name="dest"}tutorial{$package}{$subpackage}{$element->name}{/capture}
+<newpage />
+<pdffunction:addDestination arg="{$smarty.capture.dest|urlencode}" arg="FitH" arg=$this->y />
+<text size="26" justification="centre">{$title}<C:rf:{if $hasparent}3{elseif $child}2{else}1{/if}{$smarty.capture.tlink|rawurlencode}><C:index:{$smarty.capture.tindex|rawurlencode}>
+</text>{$contents} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/var.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/var.tpl
new file mode 100755
index 00000000..0a9fe927
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/default/templates/var.tpl
@@ -0,0 +1,7 @@
+{capture name="vlink"}Var {$name}{/capture}
+{capture name="vindex"}{$class}::{$name}|||{$sdesc}{/capture}
+<pdffunction:addDestination arg="{$dest}" arg="FitH" arg=$this->y />
+<text size="10" justification="left"><b>{$class}::{$name}</b>
+<C:indent:25>
+<i>{$type}</i> = {$value} <i>[line {if $slink}{$slink}{else}{$linenumber}{/if}]</i><C:rf:3{$smarty.capture.vlink|rawurlencode}><C:index:{$smarty.capture.vindex|rawurlencode}>
+<C:indent:-25></text>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Courier-Bold.afm b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Courier-Bold.afm
new file mode 100755
index 00000000..eb80542b
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Courier-Bold.afm
@@ -0,0 +1,342 @@
+StartFontMetrics 4.1
+Comment Copyright (c) 1989, 1990, 1991, 1993, 1997 Adobe Systems Incorporated. All Rights Reserved.
+Comment Creation Date: Mon Jun 23 16:28:00 1997
+Comment UniqueID 43048
+Comment VMusage 41139 52164
+FontName Courier-Bold
+FullName Courier Bold
+FamilyName Courier
+Weight Bold
+ItalicAngle 0
+IsFixedPitch true
+CharacterSet ExtendedRoman
+FontBBox -113 -250 749 801
+UnderlinePosition -100
+UnderlineThickness 50
+Version 003.000
+Notice Copyright (c) 1989, 1990, 1991, 1993, 1997 Adobe Systems Incorporated. All Rights Reserved.
+EncodingScheme AdobeStandardEncoding
+CapHeight 562
+XHeight 439
+Ascender 629
+Descender -157
+StdHW 84
+StdVW 106
+StartCharMetrics 315
+C 32 ; WX 600 ; N space ; B 0 0 0 0 ;
+C 33 ; WX 600 ; N exclam ; B 202 -15 398 572 ;
+C 34 ; WX 600 ; N quotedbl ; B 135 277 465 562 ;
+C 35 ; WX 600 ; N numbersign ; B 56 -45 544 651 ;
+C 36 ; WX 600 ; N dollar ; B 82 -126 519 666 ;
+C 37 ; WX 600 ; N percent ; B 5 -15 595 616 ;
+C 38 ; WX 600 ; N ampersand ; B 36 -15 546 543 ;
+C 39 ; WX 600 ; N quoteright ; B 171 277 423 562 ;
+C 40 ; WX 600 ; N parenleft ; B 219 -102 461 616 ;
+C 41 ; WX 600 ; N parenright ; B 139 -102 381 616 ;
+C 42 ; WX 600 ; N asterisk ; B 91 219 509 601 ;
+C 43 ; WX 600 ; N plus ; B 71 39 529 478 ;
+C 44 ; WX 600 ; N comma ; B 123 -111 393 174 ;
+C 45 ; WX 600 ; N hyphen ; B 100 203 500 313 ;
+C 46 ; WX 600 ; N period ; B 192 -15 408 171 ;
+C 47 ; WX 600 ; N slash ; B 98 -77 502 626 ;
+C 48 ; WX 600 ; N zero ; B 87 -15 513 616 ;
+C 49 ; WX 600 ; N one ; B 81 0 539 616 ;
+C 50 ; WX 600 ; N two ; B 61 0 499 616 ;
+C 51 ; WX 600 ; N three ; B 63 -15 501 616 ;
+C 52 ; WX 600 ; N four ; B 53 0 507 616 ;
+C 53 ; WX 600 ; N five ; B 70 -15 521 601 ;
+C 54 ; WX 600 ; N six ; B 90 -15 521 616 ;
+C 55 ; WX 600 ; N seven ; B 55 0 494 601 ;
+C 56 ; WX 600 ; N eight ; B 83 -15 517 616 ;
+C 57 ; WX 600 ; N nine ; B 79 -15 510 616 ;
+C 58 ; WX 600 ; N colon ; B 191 -15 407 425 ;
+C 59 ; WX 600 ; N semicolon ; B 123 -111 408 425 ;
+C 60 ; WX 600 ; N less ; B 66 15 523 501 ;
+C 61 ; WX 600 ; N equal ; B 71 118 529 398 ;
+C 62 ; WX 600 ; N greater ; B 77 15 534 501 ;
+C 63 ; WX 600 ; N question ; B 98 -14 501 580 ;
+C 64 ; WX 600 ; N at ; B 16 -15 584 616 ;
+C 65 ; WX 600 ; N A ; B -9 0 609 562 ;
+C 66 ; WX 600 ; N B ; B 30 0 573 562 ;
+C 67 ; WX 600 ; N C ; B 22 -18 560 580 ;
+C 68 ; WX 600 ; N D ; B 30 0 594 562 ;
+C 69 ; WX 600 ; N E ; B 25 0 560 562 ;
+C 70 ; WX 600 ; N F ; B 39 0 570 562 ;
+C 71 ; WX 600 ; N G ; B 22 -18 594 580 ;
+C 72 ; WX 600 ; N H ; B 20 0 580 562 ;
+C 73 ; WX 600 ; N I ; B 77 0 523 562 ;
+C 74 ; WX 600 ; N J ; B 37 -18 601 562 ;
+C 75 ; WX 600 ; N K ; B 21 0 599 562 ;
+C 76 ; WX 600 ; N L ; B 39 0 578 562 ;
+C 77 ; WX 600 ; N M ; B -2 0 602 562 ;
+C 78 ; WX 600 ; N N ; B 8 -12 610 562 ;
+C 79 ; WX 600 ; N O ; B 22 -18 578 580 ;
+C 80 ; WX 600 ; N P ; B 48 0 559 562 ;
+C 81 ; WX 600 ; N Q ; B 32 -138 578 580 ;
+C 82 ; WX 600 ; N R ; B 24 0 599 562 ;
+C 83 ; WX 600 ; N S ; B 47 -22 553 582 ;
+C 84 ; WX 600 ; N T ; B 21 0 579 562 ;
+C 85 ; WX 600 ; N U ; B 4 -18 596 562 ;
+C 86 ; WX 600 ; N V ; B -13 0 613 562 ;
+C 87 ; WX 600 ; N W ; B -18 0 618 562 ;
+C 88 ; WX 600 ; N X ; B 12 0 588 562 ;
+C 89 ; WX 600 ; N Y ; B 12 0 589 562 ;
+C 90 ; WX 600 ; N Z ; B 62 0 539 562 ;
+C 91 ; WX 600 ; N bracketleft ; B 245 -102 475 616 ;
+C 92 ; WX 600 ; N backslash ; B 99 -77 503 626 ;
+C 93 ; WX 600 ; N bracketright ; B 125 -102 355 616 ;
+C 94 ; WX 600 ; N asciicircum ; B 108 250 492 616 ;
+C 95 ; WX 600 ; N underscore ; B 0 -125 600 -75 ;
+C 96 ; WX 600 ; N quoteleft ; B 178 277 428 562 ;
+C 97 ; WX 600 ; N a ; B 35 -15 570 454 ;
+C 98 ; WX 600 ; N b ; B 0 -15 584 626 ;
+C 99 ; WX 600 ; N c ; B 40 -15 545 459 ;
+C 100 ; WX 600 ; N d ; B 20 -15 591 626 ;
+C 101 ; WX 600 ; N e ; B 40 -15 563 454 ;
+C 102 ; WX 600 ; N f ; B 83 0 547 626 ; L i fi ; L l fl ;
+C 103 ; WX 600 ; N g ; B 30 -146 580 454 ;
+C 104 ; WX 600 ; N h ; B 5 0 592 626 ;
+C 105 ; WX 600 ; N i ; B 77 0 523 658 ;
+C 106 ; WX 600 ; N j ; B 63 -146 440 658 ;
+C 107 ; WX 600 ; N k ; B 20 0 585 626 ;
+C 108 ; WX 600 ; N l ; B 77 0 523 626 ;
+C 109 ; WX 600 ; N m ; B -22 0 626 454 ;
+C 110 ; WX 600 ; N n ; B 18 0 592 454 ;
+C 111 ; WX 600 ; N o ; B 30 -15 570 454 ;
+C 112 ; WX 600 ; N p ; B -1 -142 570 454 ;
+C 113 ; WX 600 ; N q ; B 20 -142 591 454 ;
+C 114 ; WX 600 ; N r ; B 47 0 580 454 ;
+C 115 ; WX 600 ; N s ; B 68 -17 535 459 ;
+C 116 ; WX 600 ; N t ; B 47 -15 532 562 ;
+C 117 ; WX 600 ; N u ; B -1 -15 569 439 ;
+C 118 ; WX 600 ; N v ; B -1 0 601 439 ;
+C 119 ; WX 600 ; N w ; B -18 0 618 439 ;
+C 120 ; WX 600 ; N x ; B 6 0 594 439 ;
+C 121 ; WX 600 ; N y ; B -4 -142 601 439 ;
+C 122 ; WX 600 ; N z ; B 81 0 520 439 ;
+C 123 ; WX 600 ; N braceleft ; B 160 -102 464 616 ;
+C 124 ; WX 600 ; N bar ; B 255 -250 345 750 ;
+C 125 ; WX 600 ; N braceright ; B 136 -102 440 616 ;
+C 126 ; WX 600 ; N asciitilde ; B 71 153 530 356 ;
+C 161 ; WX 600 ; N exclamdown ; B 202 -146 398 449 ;
+C 162 ; WX 600 ; N cent ; B 66 -49 518 614 ;
+C 163 ; WX 600 ; N sterling ; B 72 -28 558 611 ;
+C 164 ; WX 600 ; N fraction ; B 25 -60 576 661 ;
+C 165 ; WX 600 ; N yen ; B 10 0 590 562 ;
+C 166 ; WX 600 ; N florin ; B -30 -131 572 616 ;
+C 167 ; WX 600 ; N section ; B 83 -70 517 580 ;
+C 168 ; WX 600 ; N currency ; B 54 49 546 517 ;
+C 169 ; WX 600 ; N quotesingle ; B 227 277 373 562 ;
+C 170 ; WX 600 ; N quotedblleft ; B 71 277 535 562 ;
+C 171 ; WX 600 ; N guillemotleft ; B 8 70 553 446 ;
+C 172 ; WX 600 ; N guilsinglleft ; B 141 70 459 446 ;
+C 173 ; WX 600 ; N guilsinglright ; B 141 70 459 446 ;
+C 174 ; WX 600 ; N fi ; B 12 0 593 626 ;
+C 175 ; WX 600 ; N fl ; B 12 0 593 626 ;
+C 177 ; WX 600 ; N endash ; B 65 203 535 313 ;
+C 178 ; WX 600 ; N dagger ; B 106 -70 494 580 ;
+C 179 ; WX 600 ; N daggerdbl ; B 106 -70 494 580 ;
+C 180 ; WX 600 ; N periodcentered ; B 196 165 404 351 ;
+C 182 ; WX 600 ; N paragraph ; B 6 -70 576 580 ;
+C 183 ; WX 600 ; N bullet ; B 140 132 460 430 ;
+C 184 ; WX 600 ; N quotesinglbase ; B 175 -142 427 143 ;
+C 185 ; WX 600 ; N quotedblbase ; B 65 -142 529 143 ;
+C 186 ; WX 600 ; N quotedblright ; B 61 277 525 562 ;
+C 187 ; WX 600 ; N guillemotright ; B 47 70 592 446 ;
+C 188 ; WX 600 ; N ellipsis ; B 26 -15 574 116 ;
+C 189 ; WX 600 ; N perthousand ; B -113 -15 713 616 ;
+C 191 ; WX 600 ; N questiondown ; B 99 -146 502 449 ;
+C 193 ; WX 600 ; N grave ; B 132 508 395 661 ;
+C 194 ; WX 600 ; N acute ; B 205 508 468 661 ;
+C 195 ; WX 600 ; N circumflex ; B 103 483 497 657 ;
+C 196 ; WX 600 ; N tilde ; B 89 493 512 636 ;
+C 197 ; WX 600 ; N macron ; B 88 505 512 585 ;
+C 198 ; WX 600 ; N breve ; B 83 468 517 631 ;
+C 199 ; WX 600 ; N dotaccent ; B 230 498 370 638 ;
+C 200 ; WX 600 ; N dieresis ; B 128 498 472 638 ;
+C 202 ; WX 600 ; N ring ; B 198 481 402 678 ;
+C 203 ; WX 600 ; N cedilla ; B 205 -206 387 0 ;
+C 205 ; WX 600 ; N hungarumlaut ; B 68 488 588 661 ;
+C 206 ; WX 600 ; N ogonek ; B 169 -199 400 0 ;
+C 207 ; WX 600 ; N caron ; B 103 493 497 667 ;
+C 208 ; WX 600 ; N emdash ; B -10 203 610 313 ;
+C 225 ; WX 600 ; N AE ; B -29 0 602 562 ;
+C 227 ; WX 600 ; N ordfeminine ; B 147 196 453 580 ;
+C 232 ; WX 600 ; N Lslash ; B 39 0 578 562 ;
+C 233 ; WX 600 ; N Oslash ; B 22 -22 578 584 ;
+C 234 ; WX 600 ; N OE ; B -25 0 595 562 ;
+C 235 ; WX 600 ; N ordmasculine ; B 147 196 453 580 ;
+C 241 ; WX 600 ; N ae ; B -4 -15 601 454 ;
+C 245 ; WX 600 ; N dotlessi ; B 77 0 523 439 ;
+C 248 ; WX 600 ; N lslash ; B 77 0 523 626 ;
+C 249 ; WX 600 ; N oslash ; B 30 -24 570 463 ;
+C 250 ; WX 600 ; N oe ; B -18 -15 611 454 ;
+C 251 ; WX 600 ; N germandbls ; B 22 -15 596 626 ;
+C -1 ; WX 600 ; N Idieresis ; B 77 0 523 761 ;
+C -1 ; WX 600 ; N eacute ; B 40 -15 563 661 ;
+C -1 ; WX 600 ; N abreve ; B 35 -15 570 661 ;
+C -1 ; WX 600 ; N uhungarumlaut ; B -1 -15 628 661 ;
+C -1 ; WX 600 ; N ecaron ; B 40 -15 563 667 ;
+C -1 ; WX 600 ; N Ydieresis ; B 12 0 589 761 ;
+C -1 ; WX 600 ; N divide ; B 71 16 529 500 ;
+C -1 ; WX 600 ; N Yacute ; B 12 0 589 784 ;
+C -1 ; WX 600 ; N Acircumflex ; B -9 0 609 780 ;
+C -1 ; WX 600 ; N aacute ; B 35 -15 570 661 ;
+C -1 ; WX 600 ; N Ucircumflex ; B 4 -18 596 780 ;
+C -1 ; WX 600 ; N yacute ; B -4 -142 601 661 ;
+C -1 ; WX 600 ; N scommaaccent ; B 68 -250 535 459 ;
+C -1 ; WX 600 ; N ecircumflex ; B 40 -15 563 657 ;
+C -1 ; WX 600 ; N Uring ; B 4 -18 596 801 ;
+C -1 ; WX 600 ; N Udieresis ; B 4 -18 596 761 ;
+C -1 ; WX 600 ; N aogonek ; B 35 -199 586 454 ;
+C -1 ; WX 600 ; N Uacute ; B 4 -18 596 784 ;
+C -1 ; WX 600 ; N uogonek ; B -1 -199 585 439 ;
+C -1 ; WX 600 ; N Edieresis ; B 25 0 560 761 ;
+C -1 ; WX 600 ; N Dcroat ; B 30 0 594 562 ;
+C -1 ; WX 600 ; N commaaccent ; B 205 -250 397 -57 ;
+C -1 ; WX 600 ; N copyright ; B 0 -18 600 580 ;
+C -1 ; WX 600 ; N Emacron ; B 25 0 560 708 ;
+C -1 ; WX 600 ; N ccaron ; B 40 -15 545 667 ;
+C -1 ; WX 600 ; N aring ; B 35 -15 570 678 ;
+C -1 ; WX 600 ; N Ncommaaccent ; B 8 -250 610 562 ;
+C -1 ; WX 600 ; N lacute ; B 77 0 523 801 ;
+C -1 ; WX 600 ; N agrave ; B 35 -15 570 661 ;
+C -1 ; WX 600 ; N Tcommaaccent ; B 21 -250 579 562 ;
+C -1 ; WX 600 ; N Cacute ; B 22 -18 560 784 ;
+C -1 ; WX 600 ; N atilde ; B 35 -15 570 636 ;
+C -1 ; WX 600 ; N Edotaccent ; B 25 0 560 761 ;
+C -1 ; WX 600 ; N scaron ; B 68 -17 535 667 ;
+C -1 ; WX 600 ; N scedilla ; B 68 -206 535 459 ;
+C -1 ; WX 600 ; N iacute ; B 77 0 523 661 ;
+C -1 ; WX 600 ; N lozenge ; B 66 0 534 740 ;
+C -1 ; WX 600 ; N Rcaron ; B 24 0 599 790 ;
+C -1 ; WX 600 ; N Gcommaaccent ; B 22 -250 594 580 ;
+C -1 ; WX 600 ; N ucircumflex ; B -1 -15 569 657 ;
+C -1 ; WX 600 ; N acircumflex ; B 35 -15 570 657 ;
+C -1 ; WX 600 ; N Amacron ; B -9 0 609 708 ;
+C -1 ; WX 600 ; N rcaron ; B 47 0 580 667 ;
+C -1 ; WX 600 ; N ccedilla ; B 40 -206 545 459 ;
+C -1 ; WX 600 ; N Zdotaccent ; B 62 0 539 761 ;
+C -1 ; WX 600 ; N Thorn ; B 48 0 557 562 ;
+C -1 ; WX 600 ; N Omacron ; B 22 -18 578 708 ;
+C -1 ; WX 600 ; N Racute ; B 24 0 599 784 ;
+C -1 ; WX 600 ; N Sacute ; B 47 -22 553 784 ;
+C -1 ; WX 600 ; N dcaron ; B 20 -15 727 626 ;
+C -1 ; WX 600 ; N Umacron ; B 4 -18 596 708 ;
+C -1 ; WX 600 ; N uring ; B -1 -15 569 678 ;
+C -1 ; WX 600 ; N threesuperior ; B 138 222 433 616 ;
+C -1 ; WX 600 ; N Ograve ; B 22 -18 578 784 ;
+C -1 ; WX 600 ; N Agrave ; B -9 0 609 784 ;
+C -1 ; WX 600 ; N Abreve ; B -9 0 609 784 ;
+C -1 ; WX 600 ; N multiply ; B 81 39 520 478 ;
+C -1 ; WX 600 ; N uacute ; B -1 -15 569 661 ;
+C -1 ; WX 600 ; N Tcaron ; B 21 0 579 790 ;
+C -1 ; WX 600 ; N partialdiff ; B 63 -38 537 728 ;
+C -1 ; WX 600 ; N ydieresis ; B -4 -142 601 638 ;
+C -1 ; WX 600 ; N Nacute ; B 8 -12 610 784 ;
+C -1 ; WX 600 ; N icircumflex ; B 73 0 523 657 ;
+C -1 ; WX 600 ; N Ecircumflex ; B 25 0 560 780 ;
+C -1 ; WX 600 ; N adieresis ; B 35 -15 570 638 ;
+C -1 ; WX 600 ; N edieresis ; B 40 -15 563 638 ;
+C -1 ; WX 600 ; N cacute ; B 40 -15 545 661 ;
+C -1 ; WX 600 ; N nacute ; B 18 0 592 661 ;
+C -1 ; WX 600 ; N umacron ; B -1 -15 569 585 ;
+C -1 ; WX 600 ; N Ncaron ; B 8 -12 610 790 ;
+C -1 ; WX 600 ; N Iacute ; B 77 0 523 784 ;
+C -1 ; WX 600 ; N plusminus ; B 71 24 529 515 ;
+C -1 ; WX 600 ; N brokenbar ; B 255 -175 345 675 ;
+C -1 ; WX 600 ; N registered ; B 0 -18 600 580 ;
+C -1 ; WX 600 ; N Gbreve ; B 22 -18 594 784 ;
+C -1 ; WX 600 ; N Idotaccent ; B 77 0 523 761 ;
+C -1 ; WX 600 ; N summation ; B 15 -10 586 706 ;
+C -1 ; WX 600 ; N Egrave ; B 25 0 560 784 ;
+C -1 ; WX 600 ; N racute ; B 47 0 580 661 ;
+C -1 ; WX 600 ; N omacron ; B 30 -15 570 585 ;
+C -1 ; WX 600 ; N Zacute ; B 62 0 539 784 ;
+C -1 ; WX 600 ; N Zcaron ; B 62 0 539 790 ;
+C -1 ; WX 600 ; N greaterequal ; B 26 0 523 696 ;
+C -1 ; WX 600 ; N Eth ; B 30 0 594 562 ;
+C -1 ; WX 600 ; N Ccedilla ; B 22 -206 560 580 ;
+C -1 ; WX 600 ; N lcommaaccent ; B 77 -250 523 626 ;
+C -1 ; WX 600 ; N tcaron ; B 47 -15 532 703 ;
+C -1 ; WX 600 ; N eogonek ; B 40 -199 563 454 ;
+C -1 ; WX 600 ; N Uogonek ; B 4 -199 596 562 ;
+C -1 ; WX 600 ; N Aacute ; B -9 0 609 784 ;
+C -1 ; WX 600 ; N Adieresis ; B -9 0 609 761 ;
+C -1 ; WX 600 ; N egrave ; B 40 -15 563 661 ;
+C -1 ; WX 600 ; N zacute ; B 81 0 520 661 ;
+C -1 ; WX 600 ; N iogonek ; B 77 -199 523 658 ;
+C -1 ; WX 600 ; N Oacute ; B 22 -18 578 784 ;
+C -1 ; WX 600 ; N oacute ; B 30 -15 570 661 ;
+C -1 ; WX 600 ; N amacron ; B 35 -15 570 585 ;
+C -1 ; WX 600 ; N sacute ; B 68 -17 535 661 ;
+C -1 ; WX 600 ; N idieresis ; B 77 0 523 618 ;
+C -1 ; WX 600 ; N Ocircumflex ; B 22 -18 578 780 ;
+C -1 ; WX 600 ; N Ugrave ; B 4 -18 596 784 ;
+C -1 ; WX 600 ; N Delta ; B 6 0 594 688 ;
+C -1 ; WX 600 ; N thorn ; B -14 -142 570 626 ;
+C -1 ; WX 600 ; N twosuperior ; B 143 230 436 616 ;
+C -1 ; WX 600 ; N Odieresis ; B 22 -18 578 761 ;
+C -1 ; WX 600 ; N mu ; B -1 -142 569 439 ;
+C -1 ; WX 600 ; N igrave ; B 77 0 523 661 ;
+C -1 ; WX 600 ; N ohungarumlaut ; B 30 -15 668 661 ;
+C -1 ; WX 600 ; N Eogonek ; B 25 -199 576 562 ;
+C -1 ; WX 600 ; N dcroat ; B 20 -15 591 626 ;
+C -1 ; WX 600 ; N threequarters ; B -47 -60 648 661 ;
+C -1 ; WX 600 ; N Scedilla ; B 47 -206 553 582 ;
+C -1 ; WX 600 ; N lcaron ; B 77 0 597 626 ;
+C -1 ; WX 600 ; N Kcommaaccent ; B 21 -250 599 562 ;
+C -1 ; WX 600 ; N Lacute ; B 39 0 578 784 ;
+C -1 ; WX 600 ; N trademark ; B -9 230 749 562 ;
+C -1 ; WX 600 ; N edotaccent ; B 40 -15 563 638 ;
+C -1 ; WX 600 ; N Igrave ; B 77 0 523 784 ;
+C -1 ; WX 600 ; N Imacron ; B 77 0 523 708 ;
+C -1 ; WX 600 ; N Lcaron ; B 39 0 637 562 ;
+C -1 ; WX 600 ; N onehalf ; B -47 -60 648 661 ;
+C -1 ; WX 600 ; N lessequal ; B 26 0 523 696 ;
+C -1 ; WX 600 ; N ocircumflex ; B 30 -15 570 657 ;
+C -1 ; WX 600 ; N ntilde ; B 18 0 592 636 ;
+C -1 ; WX 600 ; N Uhungarumlaut ; B 4 -18 638 784 ;
+C -1 ; WX 600 ; N Eacute ; B 25 0 560 784 ;
+C -1 ; WX 600 ; N emacron ; B 40 -15 563 585 ;
+C -1 ; WX 600 ; N gbreve ; B 30 -146 580 661 ;
+C -1 ; WX 600 ; N onequarter ; B -56 -60 656 661 ;
+C -1 ; WX 600 ; N Scaron ; B 47 -22 553 790 ;
+C -1 ; WX 600 ; N Scommaaccent ; B 47 -250 553 582 ;
+C -1 ; WX 600 ; N Ohungarumlaut ; B 22 -18 628 784 ;
+C -1 ; WX 600 ; N degree ; B 86 243 474 616 ;
+C -1 ; WX 600 ; N ograve ; B 30 -15 570 661 ;
+C -1 ; WX 600 ; N Ccaron ; B 22 -18 560 790 ;
+C -1 ; WX 600 ; N ugrave ; B -1 -15 569 661 ;
+C -1 ; WX 600 ; N radical ; B -19 -104 473 778 ;
+C -1 ; WX 600 ; N Dcaron ; B 30 0 594 790 ;
+C -1 ; WX 600 ; N rcommaaccent ; B 47 -250 580 454 ;
+C -1 ; WX 600 ; N Ntilde ; B 8 -12 610 759 ;
+C -1 ; WX 600 ; N otilde ; B 30 -15 570 636 ;
+C -1 ; WX 600 ; N Rcommaaccent ; B 24 -250 599 562 ;
+C -1 ; WX 600 ; N Lcommaaccent ; B 39 -250 578 562 ;
+C -1 ; WX 600 ; N Atilde ; B -9 0 609 759 ;
+C -1 ; WX 600 ; N Aogonek ; B -9 -199 625 562 ;
+C -1 ; WX 600 ; N Aring ; B -9 0 609 801 ;
+C -1 ; WX 600 ; N Otilde ; B 22 -18 578 759 ;
+C -1 ; WX 600 ; N zdotaccent ; B 81 0 520 638 ;
+C -1 ; WX 600 ; N Ecaron ; B 25 0 560 790 ;
+C -1 ; WX 600 ; N Iogonek ; B 77 -199 523 562 ;
+C -1 ; WX 600 ; N kcommaaccent ; B 20 -250 585 626 ;
+C -1 ; WX 600 ; N minus ; B 71 203 529 313 ;
+C -1 ; WX 600 ; N Icircumflex ; B 77 0 523 780 ;
+C -1 ; WX 600 ; N ncaron ; B 18 0 592 667 ;
+C -1 ; WX 600 ; N tcommaaccent ; B 47 -250 532 562 ;
+C -1 ; WX 600 ; N logicalnot ; B 71 103 529 413 ;
+C -1 ; WX 600 ; N odieresis ; B 30 -15 570 638 ;
+C -1 ; WX 600 ; N udieresis ; B -1 -15 569 638 ;
+C -1 ; WX 600 ; N notequal ; B 12 -47 537 563 ;
+C -1 ; WX 600 ; N gcommaaccent ; B 30 -146 580 714 ;
+C -1 ; WX 600 ; N eth ; B 58 -27 543 626 ;
+C -1 ; WX 600 ; N zcaron ; B 81 0 520 667 ;
+C -1 ; WX 600 ; N ncommaaccent ; B 18 -250 592 454 ;
+C -1 ; WX 600 ; N onesuperior ; B 153 230 447 616 ;
+C -1 ; WX 600 ; N imacron ; B 77 0 523 585 ;
+C -1 ; WX 600 ; N Euro ; B 0 0 0 0 ;
+EndCharMetrics
+EndFontMetrics
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Courier-BoldOblique.afm b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Courier-BoldOblique.afm
new file mode 100755
index 00000000..29d3b8b1
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Courier-BoldOblique.afm
@@ -0,0 +1,342 @@
+StartFontMetrics 4.1
+Comment Copyright (c) 1989, 1990, 1991, 1993, 1997 Adobe Systems Incorporated. All Rights Reserved.
+Comment Creation Date: Mon Jun 23 16:28:46 1997
+Comment UniqueID 43049
+Comment VMusage 17529 79244
+FontName Courier-BoldOblique
+FullName Courier Bold Oblique
+FamilyName Courier
+Weight Bold
+ItalicAngle -12
+IsFixedPitch true
+CharacterSet ExtendedRoman
+FontBBox -57 -250 869 801
+UnderlinePosition -100
+UnderlineThickness 50
+Version 003.000
+Notice Copyright (c) 1989, 1990, 1991, 1993, 1997 Adobe Systems Incorporated. All Rights Reserved.
+EncodingScheme AdobeStandardEncoding
+CapHeight 562
+XHeight 439
+Ascender 629
+Descender -157
+StdHW 84
+StdVW 106
+StartCharMetrics 315
+C 32 ; WX 600 ; N space ; B 0 0 0 0 ;
+C 33 ; WX 600 ; N exclam ; B 215 -15 495 572 ;
+C 34 ; WX 600 ; N quotedbl ; B 211 277 585 562 ;
+C 35 ; WX 600 ; N numbersign ; B 88 -45 641 651 ;
+C 36 ; WX 600 ; N dollar ; B 87 -126 630 666 ;
+C 37 ; WX 600 ; N percent ; B 101 -15 625 616 ;
+C 38 ; WX 600 ; N ampersand ; B 61 -15 595 543 ;
+C 39 ; WX 600 ; N quoteright ; B 229 277 543 562 ;
+C 40 ; WX 600 ; N parenleft ; B 265 -102 592 616 ;
+C 41 ; WX 600 ; N parenright ; B 117 -102 444 616 ;
+C 42 ; WX 600 ; N asterisk ; B 179 219 598 601 ;
+C 43 ; WX 600 ; N plus ; B 114 39 596 478 ;
+C 44 ; WX 600 ; N comma ; B 99 -111 430 174 ;
+C 45 ; WX 600 ; N hyphen ; B 143 203 567 313 ;
+C 46 ; WX 600 ; N period ; B 206 -15 427 171 ;
+C 47 ; WX 600 ; N slash ; B 90 -77 626 626 ;
+C 48 ; WX 600 ; N zero ; B 135 -15 593 616 ;
+C 49 ; WX 600 ; N one ; B 93 0 562 616 ;
+C 50 ; WX 600 ; N two ; B 61 0 594 616 ;
+C 51 ; WX 600 ; N three ; B 71 -15 571 616 ;
+C 52 ; WX 600 ; N four ; B 81 0 559 616 ;
+C 53 ; WX 600 ; N five ; B 77 -15 621 601 ;
+C 54 ; WX 600 ; N six ; B 135 -15 652 616 ;
+C 55 ; WX 600 ; N seven ; B 147 0 622 601 ;
+C 56 ; WX 600 ; N eight ; B 115 -15 604 616 ;
+C 57 ; WX 600 ; N nine ; B 75 -15 592 616 ;
+C 58 ; WX 600 ; N colon ; B 205 -15 480 425 ;
+C 59 ; WX 600 ; N semicolon ; B 99 -111 481 425 ;
+C 60 ; WX 600 ; N less ; B 120 15 613 501 ;
+C 61 ; WX 600 ; N equal ; B 96 118 614 398 ;
+C 62 ; WX 600 ; N greater ; B 97 15 589 501 ;
+C 63 ; WX 600 ; N question ; B 183 -14 592 580 ;
+C 64 ; WX 600 ; N at ; B 65 -15 642 616 ;
+C 65 ; WX 600 ; N A ; B -9 0 632 562 ;
+C 66 ; WX 600 ; N B ; B 30 0 630 562 ;
+C 67 ; WX 600 ; N C ; B 74 -18 675 580 ;
+C 68 ; WX 600 ; N D ; B 30 0 664 562 ;
+C 69 ; WX 600 ; N E ; B 25 0 670 562 ;
+C 70 ; WX 600 ; N F ; B 39 0 684 562 ;
+C 71 ; WX 600 ; N G ; B 74 -18 675 580 ;
+C 72 ; WX 600 ; N H ; B 20 0 700 562 ;
+C 73 ; WX 600 ; N I ; B 77 0 643 562 ;
+C 74 ; WX 600 ; N J ; B 58 -18 721 562 ;
+C 75 ; WX 600 ; N K ; B 21 0 692 562 ;
+C 76 ; WX 600 ; N L ; B 39 0 636 562 ;
+C 77 ; WX 600 ; N M ; B -2 0 722 562 ;
+C 78 ; WX 600 ; N N ; B 8 -12 730 562 ;
+C 79 ; WX 600 ; N O ; B 74 -18 645 580 ;
+C 80 ; WX 600 ; N P ; B 48 0 643 562 ;
+C 81 ; WX 600 ; N Q ; B 83 -138 636 580 ;
+C 82 ; WX 600 ; N R ; B 24 0 617 562 ;
+C 83 ; WX 600 ; N S ; B 54 -22 673 582 ;
+C 84 ; WX 600 ; N T ; B 86 0 679 562 ;
+C 85 ; WX 600 ; N U ; B 101 -18 716 562 ;
+C 86 ; WX 600 ; N V ; B 84 0 733 562 ;
+C 87 ; WX 600 ; N W ; B 79 0 738 562 ;
+C 88 ; WX 600 ; N X ; B 12 0 690 562 ;
+C 89 ; WX 600 ; N Y ; B 109 0 709 562 ;
+C 90 ; WX 600 ; N Z ; B 62 0 637 562 ;
+C 91 ; WX 600 ; N bracketleft ; B 223 -102 606 616 ;
+C 92 ; WX 600 ; N backslash ; B 222 -77 496 626 ;
+C 93 ; WX 600 ; N bracketright ; B 103 -102 486 616 ;
+C 94 ; WX 600 ; N asciicircum ; B 171 250 556 616 ;
+C 95 ; WX 600 ; N underscore ; B -27 -125 585 -75 ;
+C 96 ; WX 600 ; N quoteleft ; B 297 277 487 562 ;
+C 97 ; WX 600 ; N a ; B 61 -15 593 454 ;
+C 98 ; WX 600 ; N b ; B 13 -15 636 626 ;
+C 99 ; WX 600 ; N c ; B 81 -15 631 459 ;
+C 100 ; WX 600 ; N d ; B 60 -15 645 626 ;
+C 101 ; WX 600 ; N e ; B 81 -15 605 454 ;
+C 102 ; WX 600 ; N f ; B 83 0 677 626 ; L i fi ; L l fl ;
+C 103 ; WX 600 ; N g ; B 40 -146 674 454 ;
+C 104 ; WX 600 ; N h ; B 18 0 615 626 ;
+C 105 ; WX 600 ; N i ; B 77 0 546 658 ;
+C 106 ; WX 600 ; N j ; B 36 -146 580 658 ;
+C 107 ; WX 600 ; N k ; B 33 0 643 626 ;
+C 108 ; WX 600 ; N l ; B 77 0 546 626 ;
+C 109 ; WX 600 ; N m ; B -22 0 649 454 ;
+C 110 ; WX 600 ; N n ; B 18 0 615 454 ;
+C 111 ; WX 600 ; N o ; B 71 -15 622 454 ;
+C 112 ; WX 600 ; N p ; B -32 -142 622 454 ;
+C 113 ; WX 600 ; N q ; B 60 -142 685 454 ;
+C 114 ; WX 600 ; N r ; B 47 0 655 454 ;
+C 115 ; WX 600 ; N s ; B 66 -17 608 459 ;
+C 116 ; WX 600 ; N t ; B 118 -15 567 562 ;
+C 117 ; WX 600 ; N u ; B 70 -15 592 439 ;
+C 118 ; WX 600 ; N v ; B 70 0 695 439 ;
+C 119 ; WX 600 ; N w ; B 53 0 712 439 ;
+C 120 ; WX 600 ; N x ; B 6 0 671 439 ;
+C 121 ; WX 600 ; N y ; B -21 -142 695 439 ;
+C 122 ; WX 600 ; N z ; B 81 0 614 439 ;
+C 123 ; WX 600 ; N braceleft ; B 203 -102 595 616 ;
+C 124 ; WX 600 ; N bar ; B 201 -250 505 750 ;
+C 125 ; WX 600 ; N braceright ; B 114 -102 506 616 ;
+C 126 ; WX 600 ; N asciitilde ; B 120 153 590 356 ;
+C 161 ; WX 600 ; N exclamdown ; B 196 -146 477 449 ;
+C 162 ; WX 600 ; N cent ; B 121 -49 605 614 ;
+C 163 ; WX 600 ; N sterling ; B 106 -28 650 611 ;
+C 164 ; WX 600 ; N fraction ; B 22 -60 708 661 ;
+C 165 ; WX 600 ; N yen ; B 98 0 710 562 ;
+C 166 ; WX 600 ; N florin ; B -57 -131 702 616 ;
+C 167 ; WX 600 ; N section ; B 74 -70 620 580 ;
+C 168 ; WX 600 ; N currency ; B 77 49 644 517 ;
+C 169 ; WX 600 ; N quotesingle ; B 303 277 493 562 ;
+C 170 ; WX 600 ; N quotedblleft ; B 190 277 594 562 ;
+C 171 ; WX 600 ; N guillemotleft ; B 62 70 639 446 ;
+C 172 ; WX 600 ; N guilsinglleft ; B 195 70 545 446 ;
+C 173 ; WX 600 ; N guilsinglright ; B 165 70 514 446 ;
+C 174 ; WX 600 ; N fi ; B 12 0 644 626 ;
+C 175 ; WX 600 ; N fl ; B 12 0 644 626 ;
+C 177 ; WX 600 ; N endash ; B 108 203 602 313 ;
+C 178 ; WX 600 ; N dagger ; B 175 -70 586 580 ;
+C 179 ; WX 600 ; N daggerdbl ; B 121 -70 587 580 ;
+C 180 ; WX 600 ; N periodcentered ; B 248 165 461 351 ;
+C 182 ; WX 600 ; N paragraph ; B 61 -70 700 580 ;
+C 183 ; WX 600 ; N bullet ; B 196 132 523 430 ;
+C 184 ; WX 600 ; N quotesinglbase ; B 144 -142 458 143 ;
+C 185 ; WX 600 ; N quotedblbase ; B 34 -142 560 143 ;
+C 186 ; WX 600 ; N quotedblright ; B 119 277 645 562 ;
+C 187 ; WX 600 ; N guillemotright ; B 71 70 647 446 ;
+C 188 ; WX 600 ; N ellipsis ; B 35 -15 587 116 ;
+C 189 ; WX 600 ; N perthousand ; B -45 -15 743 616 ;
+C 191 ; WX 600 ; N questiondown ; B 100 -146 509 449 ;
+C 193 ; WX 600 ; N grave ; B 272 508 503 661 ;
+C 194 ; WX 600 ; N acute ; B 312 508 609 661 ;
+C 195 ; WX 600 ; N circumflex ; B 212 483 607 657 ;
+C 196 ; WX 600 ; N tilde ; B 199 493 643 636 ;
+C 197 ; WX 600 ; N macron ; B 195 505 637 585 ;
+C 198 ; WX 600 ; N breve ; B 217 468 652 631 ;
+C 199 ; WX 600 ; N dotaccent ; B 348 498 493 638 ;
+C 200 ; WX 600 ; N dieresis ; B 246 498 595 638 ;
+C 202 ; WX 600 ; N ring ; B 319 481 528 678 ;
+C 203 ; WX 600 ; N cedilla ; B 168 -206 368 0 ;
+C 205 ; WX 600 ; N hungarumlaut ; B 171 488 729 661 ;
+C 206 ; WX 600 ; N ogonek ; B 143 -199 367 0 ;
+C 207 ; WX 600 ; N caron ; B 238 493 633 667 ;
+C 208 ; WX 600 ; N emdash ; B 33 203 677 313 ;
+C 225 ; WX 600 ; N AE ; B -29 0 708 562 ;
+C 227 ; WX 600 ; N ordfeminine ; B 188 196 526 580 ;
+C 232 ; WX 600 ; N Lslash ; B 39 0 636 562 ;
+C 233 ; WX 600 ; N Oslash ; B 48 -22 673 584 ;
+C 234 ; WX 600 ; N OE ; B 26 0 701 562 ;
+C 235 ; WX 600 ; N ordmasculine ; B 188 196 543 580 ;
+C 241 ; WX 600 ; N ae ; B 21 -15 652 454 ;
+C 245 ; WX 600 ; N dotlessi ; B 77 0 546 439 ;
+C 248 ; WX 600 ; N lslash ; B 77 0 587 626 ;
+C 249 ; WX 600 ; N oslash ; B 54 -24 638 463 ;
+C 250 ; WX 600 ; N oe ; B 18 -15 662 454 ;
+C 251 ; WX 600 ; N germandbls ; B 22 -15 629 626 ;
+C -1 ; WX 600 ; N Idieresis ; B 77 0 643 761 ;
+C -1 ; WX 600 ; N eacute ; B 81 -15 609 661 ;
+C -1 ; WX 600 ; N abreve ; B 61 -15 658 661 ;
+C -1 ; WX 600 ; N uhungarumlaut ; B 70 -15 769 661 ;
+C -1 ; WX 600 ; N ecaron ; B 81 -15 633 667 ;
+C -1 ; WX 600 ; N Ydieresis ; B 109 0 709 761 ;
+C -1 ; WX 600 ; N divide ; B 114 16 596 500 ;
+C -1 ; WX 600 ; N Yacute ; B 109 0 709 784 ;
+C -1 ; WX 600 ; N Acircumflex ; B -9 0 632 780 ;
+C -1 ; WX 600 ; N aacute ; B 61 -15 609 661 ;
+C -1 ; WX 600 ; N Ucircumflex ; B 101 -18 716 780 ;
+C -1 ; WX 600 ; N yacute ; B -21 -142 695 661 ;
+C -1 ; WX 600 ; N scommaaccent ; B 66 -250 608 459 ;
+C -1 ; WX 600 ; N ecircumflex ; B 81 -15 607 657 ;
+C -1 ; WX 600 ; N Uring ; B 101 -18 716 801 ;
+C -1 ; WX 600 ; N Udieresis ; B 101 -18 716 761 ;
+C -1 ; WX 600 ; N aogonek ; B 61 -199 593 454 ;
+C -1 ; WX 600 ; N Uacute ; B 101 -18 716 784 ;
+C -1 ; WX 600 ; N uogonek ; B 70 -199 592 439 ;
+C -1 ; WX 600 ; N Edieresis ; B 25 0 670 761 ;
+C -1 ; WX 600 ; N Dcroat ; B 30 0 664 562 ;
+C -1 ; WX 600 ; N commaaccent ; B 151 -250 385 -57 ;
+C -1 ; WX 600 ; N copyright ; B 53 -18 667 580 ;
+C -1 ; WX 600 ; N Emacron ; B 25 0 670 708 ;
+C -1 ; WX 600 ; N ccaron ; B 81 -15 633 667 ;
+C -1 ; WX 600 ; N aring ; B 61 -15 593 678 ;
+C -1 ; WX 600 ; N Ncommaaccent ; B 8 -250 730 562 ;
+C -1 ; WX 600 ; N lacute ; B 77 0 639 801 ;
+C -1 ; WX 600 ; N agrave ; B 61 -15 593 661 ;
+C -1 ; WX 600 ; N Tcommaaccent ; B 86 -250 679 562 ;
+C -1 ; WX 600 ; N Cacute ; B 74 -18 675 784 ;
+C -1 ; WX 600 ; N atilde ; B 61 -15 643 636 ;
+C -1 ; WX 600 ; N Edotaccent ; B 25 0 670 761 ;
+C -1 ; WX 600 ; N scaron ; B 66 -17 633 667 ;
+C -1 ; WX 600 ; N scedilla ; B 66 -206 608 459 ;
+C -1 ; WX 600 ; N iacute ; B 77 0 609 661 ;
+C -1 ; WX 600 ; N lozenge ; B 145 0 614 740 ;
+C -1 ; WX 600 ; N Rcaron ; B 24 0 659 790 ;
+C -1 ; WX 600 ; N Gcommaaccent ; B 74 -250 675 580 ;
+C -1 ; WX 600 ; N ucircumflex ; B 70 -15 597 657 ;
+C -1 ; WX 600 ; N acircumflex ; B 61 -15 607 657 ;
+C -1 ; WX 600 ; N Amacron ; B -9 0 633 708 ;
+C -1 ; WX 600 ; N rcaron ; B 47 0 655 667 ;
+C -1 ; WX 600 ; N ccedilla ; B 81 -206 631 459 ;
+C -1 ; WX 600 ; N Zdotaccent ; B 62 0 637 761 ;
+C -1 ; WX 600 ; N Thorn ; B 48 0 620 562 ;
+C -1 ; WX 600 ; N Omacron ; B 74 -18 663 708 ;
+C -1 ; WX 600 ; N Racute ; B 24 0 665 784 ;
+C -1 ; WX 600 ; N Sacute ; B 54 -22 673 784 ;
+C -1 ; WX 600 ; N dcaron ; B 60 -15 861 626 ;
+C -1 ; WX 600 ; N Umacron ; B 101 -18 716 708 ;
+C -1 ; WX 600 ; N uring ; B 70 -15 592 678 ;
+C -1 ; WX 600 ; N threesuperior ; B 193 222 526 616 ;
+C -1 ; WX 600 ; N Ograve ; B 74 -18 645 784 ;
+C -1 ; WX 600 ; N Agrave ; B -9 0 632 784 ;
+C -1 ; WX 600 ; N Abreve ; B -9 0 684 784 ;
+C -1 ; WX 600 ; N multiply ; B 104 39 606 478 ;
+C -1 ; WX 600 ; N uacute ; B 70 -15 599 661 ;
+C -1 ; WX 600 ; N Tcaron ; B 86 0 679 790 ;
+C -1 ; WX 600 ; N partialdiff ; B 91 -38 627 728 ;
+C -1 ; WX 600 ; N ydieresis ; B -21 -142 695 638 ;
+C -1 ; WX 600 ; N Nacute ; B 8 -12 730 784 ;
+C -1 ; WX 600 ; N icircumflex ; B 77 0 577 657 ;
+C -1 ; WX 600 ; N Ecircumflex ; B 25 0 670 780 ;
+C -1 ; WX 600 ; N adieresis ; B 61 -15 595 638 ;
+C -1 ; WX 600 ; N edieresis ; B 81 -15 605 638 ;
+C -1 ; WX 600 ; N cacute ; B 81 -15 649 661 ;
+C -1 ; WX 600 ; N nacute ; B 18 0 639 661 ;
+C -1 ; WX 600 ; N umacron ; B 70 -15 637 585 ;
+C -1 ; WX 600 ; N Ncaron ; B 8 -12 730 790 ;
+C -1 ; WX 600 ; N Iacute ; B 77 0 643 784 ;
+C -1 ; WX 600 ; N plusminus ; B 76 24 614 515 ;
+C -1 ; WX 600 ; N brokenbar ; B 217 -175 489 675 ;
+C -1 ; WX 600 ; N registered ; B 53 -18 667 580 ;
+C -1 ; WX 600 ; N Gbreve ; B 74 -18 684 784 ;
+C -1 ; WX 600 ; N Idotaccent ; B 77 0 643 761 ;
+C -1 ; WX 600 ; N summation ; B 15 -10 672 706 ;
+C -1 ; WX 600 ; N Egrave ; B 25 0 670 784 ;
+C -1 ; WX 600 ; N racute ; B 47 0 655 661 ;
+C -1 ; WX 600 ; N omacron ; B 71 -15 637 585 ;
+C -1 ; WX 600 ; N Zacute ; B 62 0 665 784 ;
+C -1 ; WX 600 ; N Zcaron ; B 62 0 659 790 ;
+C -1 ; WX 600 ; N greaterequal ; B 26 0 627 696 ;
+C -1 ; WX 600 ; N Eth ; B 30 0 664 562 ;
+C -1 ; WX 600 ; N Ccedilla ; B 74 -206 675 580 ;
+C -1 ; WX 600 ; N lcommaaccent ; B 77 -250 546 626 ;
+C -1 ; WX 600 ; N tcaron ; B 118 -15 627 703 ;
+C -1 ; WX 600 ; N eogonek ; B 81 -199 605 454 ;
+C -1 ; WX 600 ; N Uogonek ; B 101 -199 716 562 ;
+C -1 ; WX 600 ; N Aacute ; B -9 0 655 784 ;
+C -1 ; WX 600 ; N Adieresis ; B -9 0 632 761 ;
+C -1 ; WX 600 ; N egrave ; B 81 -15 605 661 ;
+C -1 ; WX 600 ; N zacute ; B 81 0 614 661 ;
+C -1 ; WX 600 ; N iogonek ; B 77 -199 546 658 ;
+C -1 ; WX 600 ; N Oacute ; B 74 -18 645 784 ;
+C -1 ; WX 600 ; N oacute ; B 71 -15 649 661 ;
+C -1 ; WX 600 ; N amacron ; B 61 -15 637 585 ;
+C -1 ; WX 600 ; N sacute ; B 66 -17 609 661 ;
+C -1 ; WX 600 ; N idieresis ; B 77 0 561 618 ;
+C -1 ; WX 600 ; N Ocircumflex ; B 74 -18 645 780 ;
+C -1 ; WX 600 ; N Ugrave ; B 101 -18 716 784 ;
+C -1 ; WX 600 ; N Delta ; B 6 0 594 688 ;
+C -1 ; WX 600 ; N thorn ; B -32 -142 622 626 ;
+C -1 ; WX 600 ; N twosuperior ; B 191 230 542 616 ;
+C -1 ; WX 600 ; N Odieresis ; B 74 -18 645 761 ;
+C -1 ; WX 600 ; N mu ; B 49 -142 592 439 ;
+C -1 ; WX 600 ; N igrave ; B 77 0 546 661 ;
+C -1 ; WX 600 ; N ohungarumlaut ; B 71 -15 809 661 ;
+C -1 ; WX 600 ; N Eogonek ; B 25 -199 670 562 ;
+C -1 ; WX 600 ; N dcroat ; B 60 -15 712 626 ;
+C -1 ; WX 600 ; N threequarters ; B 8 -60 699 661 ;
+C -1 ; WX 600 ; N Scedilla ; B 54 -206 673 582 ;
+C -1 ; WX 600 ; N lcaron ; B 77 0 731 626 ;
+C -1 ; WX 600 ; N Kcommaaccent ; B 21 -250 692 562 ;
+C -1 ; WX 600 ; N Lacute ; B 39 0 636 784 ;
+C -1 ; WX 600 ; N trademark ; B 86 230 869 562 ;
+C -1 ; WX 600 ; N edotaccent ; B 81 -15 605 638 ;
+C -1 ; WX 600 ; N Igrave ; B 77 0 643 784 ;
+C -1 ; WX 600 ; N Imacron ; B 77 0 663 708 ;
+C -1 ; WX 600 ; N Lcaron ; B 39 0 757 562 ;
+C -1 ; WX 600 ; N onehalf ; B 22 -60 716 661 ;
+C -1 ; WX 600 ; N lessequal ; B 26 0 671 696 ;
+C -1 ; WX 600 ; N ocircumflex ; B 71 -15 622 657 ;
+C -1 ; WX 600 ; N ntilde ; B 18 0 643 636 ;
+C -1 ; WX 600 ; N Uhungarumlaut ; B 101 -18 805 784 ;
+C -1 ; WX 600 ; N Eacute ; B 25 0 670 784 ;
+C -1 ; WX 600 ; N emacron ; B 81 -15 637 585 ;
+C -1 ; WX 600 ; N gbreve ; B 40 -146 674 661 ;
+C -1 ; WX 600 ; N onequarter ; B 13 -60 707 661 ;
+C -1 ; WX 600 ; N Scaron ; B 54 -22 689 790 ;
+C -1 ; WX 600 ; N Scommaaccent ; B 54 -250 673 582 ;
+C -1 ; WX 600 ; N Ohungarumlaut ; B 74 -18 795 784 ;
+C -1 ; WX 600 ; N degree ; B 173 243 570 616 ;
+C -1 ; WX 600 ; N ograve ; B 71 -15 622 661 ;
+C -1 ; WX 600 ; N Ccaron ; B 74 -18 689 790 ;
+C -1 ; WX 600 ; N ugrave ; B 70 -15 592 661 ;
+C -1 ; WX 600 ; N radical ; B 67 -104 635 778 ;
+C -1 ; WX 600 ; N Dcaron ; B 30 0 664 790 ;
+C -1 ; WX 600 ; N rcommaaccent ; B 47 -250 655 454 ;
+C -1 ; WX 600 ; N Ntilde ; B 8 -12 730 759 ;
+C -1 ; WX 600 ; N otilde ; B 71 -15 643 636 ;
+C -1 ; WX 600 ; N Rcommaaccent ; B 24 -250 617 562 ;
+C -1 ; WX 600 ; N Lcommaaccent ; B 39 -250 636 562 ;
+C -1 ; WX 600 ; N Atilde ; B -9 0 669 759 ;
+C -1 ; WX 600 ; N Aogonek ; B -9 -199 632 562 ;
+C -1 ; WX 600 ; N Aring ; B -9 0 632 801 ;
+C -1 ; WX 600 ; N Otilde ; B 74 -18 669 759 ;
+C -1 ; WX 600 ; N zdotaccent ; B 81 0 614 638 ;
+C -1 ; WX 600 ; N Ecaron ; B 25 0 670 790 ;
+C -1 ; WX 600 ; N Iogonek ; B 77 -199 643 562 ;
+C -1 ; WX 600 ; N kcommaaccent ; B 33 -250 643 626 ;
+C -1 ; WX 600 ; N minus ; B 114 203 596 313 ;
+C -1 ; WX 600 ; N Icircumflex ; B 77 0 643 780 ;
+C -1 ; WX 600 ; N ncaron ; B 18 0 633 667 ;
+C -1 ; WX 600 ; N tcommaaccent ; B 118 -250 567 562 ;
+C -1 ; WX 600 ; N logicalnot ; B 135 103 617 413 ;
+C -1 ; WX 600 ; N odieresis ; B 71 -15 622 638 ;
+C -1 ; WX 600 ; N udieresis ; B 70 -15 595 638 ;
+C -1 ; WX 600 ; N notequal ; B 30 -47 626 563 ;
+C -1 ; WX 600 ; N gcommaaccent ; B 40 -146 674 714 ;
+C -1 ; WX 600 ; N eth ; B 93 -27 661 626 ;
+C -1 ; WX 600 ; N zcaron ; B 81 0 643 667 ;
+C -1 ; WX 600 ; N ncommaaccent ; B 18 -250 615 454 ;
+C -1 ; WX 600 ; N onesuperior ; B 212 230 514 616 ;
+C -1 ; WX 600 ; N imacron ; B 77 0 575 585 ;
+C -1 ; WX 600 ; N Euro ; B 0 0 0 0 ;
+EndCharMetrics
+EndFontMetrics
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Courier-Oblique.afm b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Courier-Oblique.afm
new file mode 100755
index 00000000..3dc163f7
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Courier-Oblique.afm
@@ -0,0 +1,342 @@
+StartFontMetrics 4.1
+Comment Copyright (c) 1989, 1990, 1991, 1992, 1993, 1997 Adobe Systems Incorporated. All Rights Reserved.
+Comment Creation Date: Thu May 1 17:37:52 1997
+Comment UniqueID 43051
+Comment VMusage 16248 75829
+FontName Courier-Oblique
+FullName Courier Oblique
+FamilyName Courier
+Weight Medium
+ItalicAngle -12
+IsFixedPitch true
+CharacterSet ExtendedRoman
+FontBBox -27 -250 849 805
+UnderlinePosition -100
+UnderlineThickness 50
+Version 003.000
+Notice Copyright (c) 1989, 1990, 1991, 1992, 1993, 1997 Adobe Systems Incorporated. All Rights Reserved.
+EncodingScheme AdobeStandardEncoding
+CapHeight 562
+XHeight 426
+Ascender 629
+Descender -157
+StdHW 51
+StdVW 51
+StartCharMetrics 315
+C 32 ; WX 600 ; N space ; B 0 0 0 0 ;
+C 33 ; WX 600 ; N exclam ; B 243 -15 464 572 ;
+C 34 ; WX 600 ; N quotedbl ; B 273 328 532 562 ;
+C 35 ; WX 600 ; N numbersign ; B 133 -32 596 639 ;
+C 36 ; WX 600 ; N dollar ; B 108 -126 596 662 ;
+C 37 ; WX 600 ; N percent ; B 134 -15 599 622 ;
+C 38 ; WX 600 ; N ampersand ; B 87 -15 580 543 ;
+C 39 ; WX 600 ; N quoteright ; B 283 328 495 562 ;
+C 40 ; WX 600 ; N parenleft ; B 313 -108 572 622 ;
+C 41 ; WX 600 ; N parenright ; B 137 -108 396 622 ;
+C 42 ; WX 600 ; N asterisk ; B 212 257 580 607 ;
+C 43 ; WX 600 ; N plus ; B 129 44 580 470 ;
+C 44 ; WX 600 ; N comma ; B 157 -112 370 122 ;
+C 45 ; WX 600 ; N hyphen ; B 152 231 558 285 ;
+C 46 ; WX 600 ; N period ; B 238 -15 382 109 ;
+C 47 ; WX 600 ; N slash ; B 112 -80 604 629 ;
+C 48 ; WX 600 ; N zero ; B 154 -15 575 622 ;
+C 49 ; WX 600 ; N one ; B 98 0 515 622 ;
+C 50 ; WX 600 ; N two ; B 70 0 568 622 ;
+C 51 ; WX 600 ; N three ; B 82 -15 538 622 ;
+C 52 ; WX 600 ; N four ; B 108 0 541 622 ;
+C 53 ; WX 600 ; N five ; B 99 -15 589 607 ;
+C 54 ; WX 600 ; N six ; B 155 -15 629 622 ;
+C 55 ; WX 600 ; N seven ; B 182 0 612 607 ;
+C 56 ; WX 600 ; N eight ; B 132 -15 588 622 ;
+C 57 ; WX 600 ; N nine ; B 93 -15 574 622 ;
+C 58 ; WX 600 ; N colon ; B 238 -15 441 385 ;
+C 59 ; WX 600 ; N semicolon ; B 157 -112 441 385 ;
+C 60 ; WX 600 ; N less ; B 96 42 610 472 ;
+C 61 ; WX 600 ; N equal ; B 109 138 600 376 ;
+C 62 ; WX 600 ; N greater ; B 85 42 599 472 ;
+C 63 ; WX 600 ; N question ; B 222 -15 583 572 ;
+C 64 ; WX 600 ; N at ; B 127 -15 582 622 ;
+C 65 ; WX 600 ; N A ; B 3 0 607 562 ;
+C 66 ; WX 600 ; N B ; B 43 0 616 562 ;
+C 67 ; WX 600 ; N C ; B 93 -18 655 580 ;
+C 68 ; WX 600 ; N D ; B 43 0 645 562 ;
+C 69 ; WX 600 ; N E ; B 53 0 660 562 ;
+C 70 ; WX 600 ; N F ; B 53 0 660 562 ;
+C 71 ; WX 600 ; N G ; B 83 -18 645 580 ;
+C 72 ; WX 600 ; N H ; B 32 0 687 562 ;
+C 73 ; WX 600 ; N I ; B 96 0 623 562 ;
+C 74 ; WX 600 ; N J ; B 52 -18 685 562 ;
+C 75 ; WX 600 ; N K ; B 38 0 671 562 ;
+C 76 ; WX 600 ; N L ; B 47 0 607 562 ;
+C 77 ; WX 600 ; N M ; B 4 0 715 562 ;
+C 78 ; WX 600 ; N N ; B 7 -13 712 562 ;
+C 79 ; WX 600 ; N O ; B 94 -18 625 580 ;
+C 80 ; WX 600 ; N P ; B 79 0 644 562 ;
+C 81 ; WX 600 ; N Q ; B 95 -138 625 580 ;
+C 82 ; WX 600 ; N R ; B 38 0 598 562 ;
+C 83 ; WX 600 ; N S ; B 76 -20 650 580 ;
+C 84 ; WX 600 ; N T ; B 108 0 665 562 ;
+C 85 ; WX 600 ; N U ; B 125 -18 702 562 ;
+C 86 ; WX 600 ; N V ; B 105 -13 723 562 ;
+C 87 ; WX 600 ; N W ; B 106 -13 722 562 ;
+C 88 ; WX 600 ; N X ; B 23 0 675 562 ;
+C 89 ; WX 600 ; N Y ; B 133 0 695 562 ;
+C 90 ; WX 600 ; N Z ; B 86 0 610 562 ;
+C 91 ; WX 600 ; N bracketleft ; B 246 -108 574 622 ;
+C 92 ; WX 600 ; N backslash ; B 249 -80 468 629 ;
+C 93 ; WX 600 ; N bracketright ; B 135 -108 463 622 ;
+C 94 ; WX 600 ; N asciicircum ; B 175 354 587 622 ;
+C 95 ; WX 600 ; N underscore ; B -27 -125 584 -75 ;
+C 96 ; WX 600 ; N quoteleft ; B 343 328 457 562 ;
+C 97 ; WX 600 ; N a ; B 76 -15 569 441 ;
+C 98 ; WX 600 ; N b ; B 29 -15 625 629 ;
+C 99 ; WX 600 ; N c ; B 106 -15 608 441 ;
+C 100 ; WX 600 ; N d ; B 85 -15 640 629 ;
+C 101 ; WX 600 ; N e ; B 106 -15 598 441 ;
+C 102 ; WX 600 ; N f ; B 114 0 662 629 ; L i fi ; L l fl ;
+C 103 ; WX 600 ; N g ; B 61 -157 657 441 ;
+C 104 ; WX 600 ; N h ; B 33 0 592 629 ;
+C 105 ; WX 600 ; N i ; B 95 0 515 657 ;
+C 106 ; WX 600 ; N j ; B 52 -157 550 657 ;
+C 107 ; WX 600 ; N k ; B 58 0 633 629 ;
+C 108 ; WX 600 ; N l ; B 95 0 515 629 ;
+C 109 ; WX 600 ; N m ; B -5 0 615 441 ;
+C 110 ; WX 600 ; N n ; B 26 0 585 441 ;
+C 111 ; WX 600 ; N o ; B 102 -15 588 441 ;
+C 112 ; WX 600 ; N p ; B -24 -157 605 441 ;
+C 113 ; WX 600 ; N q ; B 85 -157 682 441 ;
+C 114 ; WX 600 ; N r ; B 60 0 636 441 ;
+C 115 ; WX 600 ; N s ; B 78 -15 584 441 ;
+C 116 ; WX 600 ; N t ; B 167 -15 561 561 ;
+C 117 ; WX 600 ; N u ; B 101 -15 572 426 ;
+C 118 ; WX 600 ; N v ; B 90 -10 681 426 ;
+C 119 ; WX 600 ; N w ; B 76 -10 695 426 ;
+C 120 ; WX 600 ; N x ; B 20 0 655 426 ;
+C 121 ; WX 600 ; N y ; B -4 -157 683 426 ;
+C 122 ; WX 600 ; N z ; B 99 0 593 426 ;
+C 123 ; WX 600 ; N braceleft ; B 233 -108 569 622 ;
+C 124 ; WX 600 ; N bar ; B 222 -250 485 750 ;
+C 125 ; WX 600 ; N braceright ; B 140 -108 477 622 ;
+C 126 ; WX 600 ; N asciitilde ; B 116 197 600 320 ;
+C 161 ; WX 600 ; N exclamdown ; B 225 -157 445 430 ;
+C 162 ; WX 600 ; N cent ; B 151 -49 588 614 ;
+C 163 ; WX 600 ; N sterling ; B 124 -21 621 611 ;
+C 164 ; WX 600 ; N fraction ; B 84 -57 646 665 ;
+C 165 ; WX 600 ; N yen ; B 120 0 693 562 ;
+C 166 ; WX 600 ; N florin ; B -26 -143 671 622 ;
+C 167 ; WX 600 ; N section ; B 104 -78 590 580 ;
+C 168 ; WX 600 ; N currency ; B 94 58 628 506 ;
+C 169 ; WX 600 ; N quotesingle ; B 345 328 460 562 ;
+C 170 ; WX 600 ; N quotedblleft ; B 262 328 541 562 ;
+C 171 ; WX 600 ; N guillemotleft ; B 92 70 652 446 ;
+C 172 ; WX 600 ; N guilsinglleft ; B 204 70 540 446 ;
+C 173 ; WX 600 ; N guilsinglright ; B 170 70 506 446 ;
+C 174 ; WX 600 ; N fi ; B 3 0 619 629 ;
+C 175 ; WX 600 ; N fl ; B 3 0 619 629 ;
+C 177 ; WX 600 ; N endash ; B 124 231 586 285 ;
+C 178 ; WX 600 ; N dagger ; B 217 -78 546 580 ;
+C 179 ; WX 600 ; N daggerdbl ; B 163 -78 546 580 ;
+C 180 ; WX 600 ; N periodcentered ; B 275 189 434 327 ;
+C 182 ; WX 600 ; N paragraph ; B 100 -78 630 562 ;
+C 183 ; WX 600 ; N bullet ; B 224 130 485 383 ;
+C 184 ; WX 600 ; N quotesinglbase ; B 185 -134 397 100 ;
+C 185 ; WX 600 ; N quotedblbase ; B 115 -134 478 100 ;
+C 186 ; WX 600 ; N quotedblright ; B 213 328 576 562 ;
+C 187 ; WX 600 ; N guillemotright ; B 58 70 618 446 ;
+C 188 ; WX 600 ; N ellipsis ; B 46 -15 575 111 ;
+C 189 ; WX 600 ; N perthousand ; B 59 -15 627 622 ;
+C 191 ; WX 600 ; N questiondown ; B 105 -157 466 430 ;
+C 193 ; WX 600 ; N grave ; B 294 497 484 672 ;
+C 194 ; WX 600 ; N acute ; B 348 497 612 672 ;
+C 195 ; WX 600 ; N circumflex ; B 229 477 581 654 ;
+C 196 ; WX 600 ; N tilde ; B 212 489 629 606 ;
+C 197 ; WX 600 ; N macron ; B 232 525 600 565 ;
+C 198 ; WX 600 ; N breve ; B 279 501 576 609 ;
+C 199 ; WX 600 ; N dotaccent ; B 373 537 478 640 ;
+C 200 ; WX 600 ; N dieresis ; B 272 537 579 640 ;
+C 202 ; WX 600 ; N ring ; B 332 463 500 627 ;
+C 203 ; WX 600 ; N cedilla ; B 197 -151 344 10 ;
+C 205 ; WX 600 ; N hungarumlaut ; B 239 497 683 672 ;
+C 206 ; WX 600 ; N ogonek ; B 189 -172 377 4 ;
+C 207 ; WX 600 ; N caron ; B 262 492 614 669 ;
+C 208 ; WX 600 ; N emdash ; B 49 231 661 285 ;
+C 225 ; WX 600 ; N AE ; B 3 0 655 562 ;
+C 227 ; WX 600 ; N ordfeminine ; B 209 249 512 580 ;
+C 232 ; WX 600 ; N Lslash ; B 47 0 607 562 ;
+C 233 ; WX 600 ; N Oslash ; B 94 -80 625 629 ;
+C 234 ; WX 600 ; N OE ; B 59 0 672 562 ;
+C 235 ; WX 600 ; N ordmasculine ; B 210 249 535 580 ;
+C 241 ; WX 600 ; N ae ; B 41 -15 626 441 ;
+C 245 ; WX 600 ; N dotlessi ; B 95 0 515 426 ;
+C 248 ; WX 600 ; N lslash ; B 95 0 587 629 ;
+C 249 ; WX 600 ; N oslash ; B 102 -80 588 506 ;
+C 250 ; WX 600 ; N oe ; B 54 -15 615 441 ;
+C 251 ; WX 600 ; N germandbls ; B 48 -15 617 629 ;
+C -1 ; WX 600 ; N Idieresis ; B 96 0 623 753 ;
+C -1 ; WX 600 ; N eacute ; B 106 -15 612 672 ;
+C -1 ; WX 600 ; N abreve ; B 76 -15 576 609 ;
+C -1 ; WX 600 ; N uhungarumlaut ; B 101 -15 723 672 ;
+C -1 ; WX 600 ; N ecaron ; B 106 -15 614 669 ;
+C -1 ; WX 600 ; N Ydieresis ; B 133 0 695 753 ;
+C -1 ; WX 600 ; N divide ; B 136 48 573 467 ;
+C -1 ; WX 600 ; N Yacute ; B 133 0 695 805 ;
+C -1 ; WX 600 ; N Acircumflex ; B 3 0 607 787 ;
+C -1 ; WX 600 ; N aacute ; B 76 -15 612 672 ;
+C -1 ; WX 600 ; N Ucircumflex ; B 125 -18 702 787 ;
+C -1 ; WX 600 ; N yacute ; B -4 -157 683 672 ;
+C -1 ; WX 600 ; N scommaaccent ; B 78 -250 584 441 ;
+C -1 ; WX 600 ; N ecircumflex ; B 106 -15 598 654 ;
+C -1 ; WX 600 ; N Uring ; B 125 -18 702 760 ;
+C -1 ; WX 600 ; N Udieresis ; B 125 -18 702 753 ;
+C -1 ; WX 600 ; N aogonek ; B 76 -172 569 441 ;
+C -1 ; WX 600 ; N Uacute ; B 125 -18 702 805 ;
+C -1 ; WX 600 ; N uogonek ; B 101 -172 572 426 ;
+C -1 ; WX 600 ; N Edieresis ; B 53 0 660 753 ;
+C -1 ; WX 600 ; N Dcroat ; B 43 0 645 562 ;
+C -1 ; WX 600 ; N commaaccent ; B 145 -250 323 -58 ;
+C -1 ; WX 600 ; N copyright ; B 53 -18 667 580 ;
+C -1 ; WX 600 ; N Emacron ; B 53 0 660 698 ;
+C -1 ; WX 600 ; N ccaron ; B 106 -15 614 669 ;
+C -1 ; WX 600 ; N aring ; B 76 -15 569 627 ;
+C -1 ; WX 600 ; N Ncommaaccent ; B 7 -250 712 562 ;
+C -1 ; WX 600 ; N lacute ; B 95 0 640 805 ;
+C -1 ; WX 600 ; N agrave ; B 76 -15 569 672 ;
+C -1 ; WX 600 ; N Tcommaaccent ; B 108 -250 665 562 ;
+C -1 ; WX 600 ; N Cacute ; B 93 -18 655 805 ;
+C -1 ; WX 600 ; N atilde ; B 76 -15 629 606 ;
+C -1 ; WX 600 ; N Edotaccent ; B 53 0 660 753 ;
+C -1 ; WX 600 ; N scaron ; B 78 -15 614 669 ;
+C -1 ; WX 600 ; N scedilla ; B 78 -151 584 441 ;
+C -1 ; WX 600 ; N iacute ; B 95 0 612 672 ;
+C -1 ; WX 600 ; N lozenge ; B 94 0 519 706 ;
+C -1 ; WX 600 ; N Rcaron ; B 38 0 642 802 ;
+C -1 ; WX 600 ; N Gcommaaccent ; B 83 -250 645 580 ;
+C -1 ; WX 600 ; N ucircumflex ; B 101 -15 572 654 ;
+C -1 ; WX 600 ; N acircumflex ; B 76 -15 581 654 ;
+C -1 ; WX 600 ; N Amacron ; B 3 0 607 698 ;
+C -1 ; WX 600 ; N rcaron ; B 60 0 636 669 ;
+C -1 ; WX 600 ; N ccedilla ; B 106 -151 614 441 ;
+C -1 ; WX 600 ; N Zdotaccent ; B 86 0 610 753 ;
+C -1 ; WX 600 ; N Thorn ; B 79 0 606 562 ;
+C -1 ; WX 600 ; N Omacron ; B 94 -18 628 698 ;
+C -1 ; WX 600 ; N Racute ; B 38 0 670 805 ;
+C -1 ; WX 600 ; N Sacute ; B 76 -20 650 805 ;
+C -1 ; WX 600 ; N dcaron ; B 85 -15 849 629 ;
+C -1 ; WX 600 ; N Umacron ; B 125 -18 702 698 ;
+C -1 ; WX 600 ; N uring ; B 101 -15 572 627 ;
+C -1 ; WX 600 ; N threesuperior ; B 213 240 501 622 ;
+C -1 ; WX 600 ; N Ograve ; B 94 -18 625 805 ;
+C -1 ; WX 600 ; N Agrave ; B 3 0 607 805 ;
+C -1 ; WX 600 ; N Abreve ; B 3 0 607 732 ;
+C -1 ; WX 600 ; N multiply ; B 103 43 607 470 ;
+C -1 ; WX 600 ; N uacute ; B 101 -15 602 672 ;
+C -1 ; WX 600 ; N Tcaron ; B 108 0 665 802 ;
+C -1 ; WX 600 ; N partialdiff ; B 45 -38 546 710 ;
+C -1 ; WX 600 ; N ydieresis ; B -4 -157 683 620 ;
+C -1 ; WX 600 ; N Nacute ; B 7 -13 712 805 ;
+C -1 ; WX 600 ; N icircumflex ; B 95 0 551 654 ;
+C -1 ; WX 600 ; N Ecircumflex ; B 53 0 660 787 ;
+C -1 ; WX 600 ; N adieresis ; B 76 -15 575 620 ;
+C -1 ; WX 600 ; N edieresis ; B 106 -15 598 620 ;
+C -1 ; WX 600 ; N cacute ; B 106 -15 612 672 ;
+C -1 ; WX 600 ; N nacute ; B 26 0 602 672 ;
+C -1 ; WX 600 ; N umacron ; B 101 -15 600 565 ;
+C -1 ; WX 600 ; N Ncaron ; B 7 -13 712 802 ;
+C -1 ; WX 600 ; N Iacute ; B 96 0 640 805 ;
+C -1 ; WX 600 ; N plusminus ; B 96 44 594 558 ;
+C -1 ; WX 600 ; N brokenbar ; B 238 -175 469 675 ;
+C -1 ; WX 600 ; N registered ; B 53 -18 667 580 ;
+C -1 ; WX 600 ; N Gbreve ; B 83 -18 645 732 ;
+C -1 ; WX 600 ; N Idotaccent ; B 96 0 623 753 ;
+C -1 ; WX 600 ; N summation ; B 15 -10 670 706 ;
+C -1 ; WX 600 ; N Egrave ; B 53 0 660 805 ;
+C -1 ; WX 600 ; N racute ; B 60 0 636 672 ;
+C -1 ; WX 600 ; N omacron ; B 102 -15 600 565 ;
+C -1 ; WX 600 ; N Zacute ; B 86 0 670 805 ;
+C -1 ; WX 600 ; N Zcaron ; B 86 0 642 802 ;
+C -1 ; WX 600 ; N greaterequal ; B 98 0 594 710 ;
+C -1 ; WX 600 ; N Eth ; B 43 0 645 562 ;
+C -1 ; WX 600 ; N Ccedilla ; B 93 -151 658 580 ;
+C -1 ; WX 600 ; N lcommaaccent ; B 95 -250 515 629 ;
+C -1 ; WX 600 ; N tcaron ; B 167 -15 587 717 ;
+C -1 ; WX 600 ; N eogonek ; B 106 -172 598 441 ;
+C -1 ; WX 600 ; N Uogonek ; B 124 -172 702 562 ;
+C -1 ; WX 600 ; N Aacute ; B 3 0 660 805 ;
+C -1 ; WX 600 ; N Adieresis ; B 3 0 607 753 ;
+C -1 ; WX 600 ; N egrave ; B 106 -15 598 672 ;
+C -1 ; WX 600 ; N zacute ; B 99 0 612 672 ;
+C -1 ; WX 600 ; N iogonek ; B 95 -172 515 657 ;
+C -1 ; WX 600 ; N Oacute ; B 94 -18 640 805 ;
+C -1 ; WX 600 ; N oacute ; B 102 -15 612 672 ;
+C -1 ; WX 600 ; N amacron ; B 76 -15 600 565 ;
+C -1 ; WX 600 ; N sacute ; B 78 -15 612 672 ;
+C -1 ; WX 600 ; N idieresis ; B 95 0 545 620 ;
+C -1 ; WX 600 ; N Ocircumflex ; B 94 -18 625 787 ;
+C -1 ; WX 600 ; N Ugrave ; B 125 -18 702 805 ;
+C -1 ; WX 600 ; N Delta ; B 6 0 598 688 ;
+C -1 ; WX 600 ; N thorn ; B -24 -157 605 629 ;
+C -1 ; WX 600 ; N twosuperior ; B 230 249 535 622 ;
+C -1 ; WX 600 ; N Odieresis ; B 94 -18 625 753 ;
+C -1 ; WX 600 ; N mu ; B 72 -157 572 426 ;
+C -1 ; WX 600 ; N igrave ; B 95 0 515 672 ;
+C -1 ; WX 600 ; N ohungarumlaut ; B 102 -15 723 672 ;
+C -1 ; WX 600 ; N Eogonek ; B 53 -172 660 562 ;
+C -1 ; WX 600 ; N dcroat ; B 85 -15 704 629 ;
+C -1 ; WX 600 ; N threequarters ; B 73 -56 659 666 ;
+C -1 ; WX 600 ; N Scedilla ; B 76 -151 650 580 ;
+C -1 ; WX 600 ; N lcaron ; B 95 0 667 629 ;
+C -1 ; WX 600 ; N Kcommaaccent ; B 38 -250 671 562 ;
+C -1 ; WX 600 ; N Lacute ; B 47 0 607 805 ;
+C -1 ; WX 600 ; N trademark ; B 75 263 742 562 ;
+C -1 ; WX 600 ; N edotaccent ; B 106 -15 598 620 ;
+C -1 ; WX 600 ; N Igrave ; B 96 0 623 805 ;
+C -1 ; WX 600 ; N Imacron ; B 96 0 628 698 ;
+C -1 ; WX 600 ; N Lcaron ; B 47 0 632 562 ;
+C -1 ; WX 600 ; N onehalf ; B 65 -57 669 665 ;
+C -1 ; WX 600 ; N lessequal ; B 98 0 645 710 ;
+C -1 ; WX 600 ; N ocircumflex ; B 102 -15 588 654 ;
+C -1 ; WX 600 ; N ntilde ; B 26 0 629 606 ;
+C -1 ; WX 600 ; N Uhungarumlaut ; B 125 -18 761 805 ;
+C -1 ; WX 600 ; N Eacute ; B 53 0 670 805 ;
+C -1 ; WX 600 ; N emacron ; B 106 -15 600 565 ;
+C -1 ; WX 600 ; N gbreve ; B 61 -157 657 609 ;
+C -1 ; WX 600 ; N onequarter ; B 65 -57 674 665 ;
+C -1 ; WX 600 ; N Scaron ; B 76 -20 672 802 ;
+C -1 ; WX 600 ; N Scommaaccent ; B 76 -250 650 580 ;
+C -1 ; WX 600 ; N Ohungarumlaut ; B 94 -18 751 805 ;
+C -1 ; WX 600 ; N degree ; B 214 269 576 622 ;
+C -1 ; WX 600 ; N ograve ; B 102 -15 588 672 ;
+C -1 ; WX 600 ; N Ccaron ; B 93 -18 672 802 ;
+C -1 ; WX 600 ; N ugrave ; B 101 -15 572 672 ;
+C -1 ; WX 600 ; N radical ; B 85 -15 765 792 ;
+C -1 ; WX 600 ; N Dcaron ; B 43 0 645 802 ;
+C -1 ; WX 600 ; N rcommaaccent ; B 60 -250 636 441 ;
+C -1 ; WX 600 ; N Ntilde ; B 7 -13 712 729 ;
+C -1 ; WX 600 ; N otilde ; B 102 -15 629 606 ;
+C -1 ; WX 600 ; N Rcommaaccent ; B 38 -250 598 562 ;
+C -1 ; WX 600 ; N Lcommaaccent ; B 47 -250 607 562 ;
+C -1 ; WX 600 ; N Atilde ; B 3 0 655 729 ;
+C -1 ; WX 600 ; N Aogonek ; B 3 -172 607 562 ;
+C -1 ; WX 600 ; N Aring ; B 3 0 607 750 ;
+C -1 ; WX 600 ; N Otilde ; B 94 -18 655 729 ;
+C -1 ; WX 600 ; N zdotaccent ; B 99 0 593 620 ;
+C -1 ; WX 600 ; N Ecaron ; B 53 0 660 802 ;
+C -1 ; WX 600 ; N Iogonek ; B 96 -172 623 562 ;
+C -1 ; WX 600 ; N kcommaaccent ; B 58 -250 633 629 ;
+C -1 ; WX 600 ; N minus ; B 129 232 580 283 ;
+C -1 ; WX 600 ; N Icircumflex ; B 96 0 623 787 ;
+C -1 ; WX 600 ; N ncaron ; B 26 0 614 669 ;
+C -1 ; WX 600 ; N tcommaaccent ; B 165 -250 561 561 ;
+C -1 ; WX 600 ; N logicalnot ; B 155 108 591 369 ;
+C -1 ; WX 600 ; N odieresis ; B 102 -15 588 620 ;
+C -1 ; WX 600 ; N udieresis ; B 101 -15 575 620 ;
+C -1 ; WX 600 ; N notequal ; B 43 -16 621 529 ;
+C -1 ; WX 600 ; N gcommaaccent ; B 61 -157 657 708 ;
+C -1 ; WX 600 ; N eth ; B 102 -15 639 629 ;
+C -1 ; WX 600 ; N zcaron ; B 99 0 624 669 ;
+C -1 ; WX 600 ; N ncommaaccent ; B 26 -250 585 441 ;
+C -1 ; WX 600 ; N onesuperior ; B 231 249 491 622 ;
+C -1 ; WX 600 ; N imacron ; B 95 0 543 565 ;
+C -1 ; WX 600 ; N Euro ; B 0 0 0 0 ;
+EndCharMetrics
+EndFontMetrics
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Courier.afm b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Courier.afm
new file mode 100755
index 00000000..2f7be81d
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Courier.afm
@@ -0,0 +1,342 @@
+StartFontMetrics 4.1
+Comment Copyright (c) 1989, 1990, 1991, 1992, 1993, 1997 Adobe Systems Incorporated. All Rights Reserved.
+Comment Creation Date: Thu May 1 17:27:09 1997
+Comment UniqueID 43050
+Comment VMusage 39754 50779
+FontName Courier
+FullName Courier
+FamilyName Courier
+Weight Medium
+ItalicAngle 0
+IsFixedPitch true
+CharacterSet ExtendedRoman
+FontBBox -23 -250 715 805
+UnderlinePosition -100
+UnderlineThickness 50
+Version 003.000
+Notice Copyright (c) 1989, 1990, 1991, 1992, 1993, 1997 Adobe Systems Incorporated. All Rights Reserved.
+EncodingScheme AdobeStandardEncoding
+CapHeight 562
+XHeight 426
+Ascender 629
+Descender -157
+StdHW 51
+StdVW 51
+StartCharMetrics 315
+C 32 ; WX 600 ; N space ; B 0 0 0 0 ;
+C 33 ; WX 600 ; N exclam ; B 236 -15 364 572 ;
+C 34 ; WX 600 ; N quotedbl ; B 187 328 413 562 ;
+C 35 ; WX 600 ; N numbersign ; B 93 -32 507 639 ;
+C 36 ; WX 600 ; N dollar ; B 105 -126 496 662 ;
+C 37 ; WX 600 ; N percent ; B 81 -15 518 622 ;
+C 38 ; WX 600 ; N ampersand ; B 63 -15 538 543 ;
+C 39 ; WX 600 ; N quoteright ; B 213 328 376 562 ;
+C 40 ; WX 600 ; N parenleft ; B 269 -108 440 622 ;
+C 41 ; WX 600 ; N parenright ; B 160 -108 331 622 ;
+C 42 ; WX 600 ; N asterisk ; B 116 257 484 607 ;
+C 43 ; WX 600 ; N plus ; B 80 44 520 470 ;
+C 44 ; WX 600 ; N comma ; B 181 -112 344 122 ;
+C 45 ; WX 600 ; N hyphen ; B 103 231 497 285 ;
+C 46 ; WX 600 ; N period ; B 229 -15 371 109 ;
+C 47 ; WX 600 ; N slash ; B 125 -80 475 629 ;
+C 48 ; WX 600 ; N zero ; B 106 -15 494 622 ;
+C 49 ; WX 600 ; N one ; B 96 0 505 622 ;
+C 50 ; WX 600 ; N two ; B 70 0 471 622 ;
+C 51 ; WX 600 ; N three ; B 75 -15 466 622 ;
+C 52 ; WX 600 ; N four ; B 78 0 500 622 ;
+C 53 ; WX 600 ; N five ; B 92 -15 497 607 ;
+C 54 ; WX 600 ; N six ; B 111 -15 497 622 ;
+C 55 ; WX 600 ; N seven ; B 82 0 483 607 ;
+C 56 ; WX 600 ; N eight ; B 102 -15 498 622 ;
+C 57 ; WX 600 ; N nine ; B 96 -15 489 622 ;
+C 58 ; WX 600 ; N colon ; B 229 -15 371 385 ;
+C 59 ; WX 600 ; N semicolon ; B 181 -112 371 385 ;
+C 60 ; WX 600 ; N less ; B 41 42 519 472 ;
+C 61 ; WX 600 ; N equal ; B 80 138 520 376 ;
+C 62 ; WX 600 ; N greater ; B 66 42 544 472 ;
+C 63 ; WX 600 ; N question ; B 129 -15 492 572 ;
+C 64 ; WX 600 ; N at ; B 77 -15 533 622 ;
+C 65 ; WX 600 ; N A ; B 3 0 597 562 ;
+C 66 ; WX 600 ; N B ; B 43 0 559 562 ;
+C 67 ; WX 600 ; N C ; B 41 -18 540 580 ;
+C 68 ; WX 600 ; N D ; B 43 0 574 562 ;
+C 69 ; WX 600 ; N E ; B 53 0 550 562 ;
+C 70 ; WX 600 ; N F ; B 53 0 545 562 ;
+C 71 ; WX 600 ; N G ; B 31 -18 575 580 ;
+C 72 ; WX 600 ; N H ; B 32 0 568 562 ;
+C 73 ; WX 600 ; N I ; B 96 0 504 562 ;
+C 74 ; WX 600 ; N J ; B 34 -18 566 562 ;
+C 75 ; WX 600 ; N K ; B 38 0 582 562 ;
+C 76 ; WX 600 ; N L ; B 47 0 554 562 ;
+C 77 ; WX 600 ; N M ; B 4 0 596 562 ;
+C 78 ; WX 600 ; N N ; B 7 -13 593 562 ;
+C 79 ; WX 600 ; N O ; B 43 -18 557 580 ;
+C 80 ; WX 600 ; N P ; B 79 0 558 562 ;
+C 81 ; WX 600 ; N Q ; B 43 -138 557 580 ;
+C 82 ; WX 600 ; N R ; B 38 0 588 562 ;
+C 83 ; WX 600 ; N S ; B 72 -20 529 580 ;
+C 84 ; WX 600 ; N T ; B 38 0 563 562 ;
+C 85 ; WX 600 ; N U ; B 17 -18 583 562 ;
+C 86 ; WX 600 ; N V ; B -4 -13 604 562 ;
+C 87 ; WX 600 ; N W ; B -3 -13 603 562 ;
+C 88 ; WX 600 ; N X ; B 23 0 577 562 ;
+C 89 ; WX 600 ; N Y ; B 24 0 576 562 ;
+C 90 ; WX 600 ; N Z ; B 86 0 514 562 ;
+C 91 ; WX 600 ; N bracketleft ; B 269 -108 442 622 ;
+C 92 ; WX 600 ; N backslash ; B 118 -80 482 629 ;
+C 93 ; WX 600 ; N bracketright ; B 158 -108 331 622 ;
+C 94 ; WX 600 ; N asciicircum ; B 94 354 506 622 ;
+C 95 ; WX 600 ; N underscore ; B 0 -125 600 -75 ;
+C 96 ; WX 600 ; N quoteleft ; B 224 328 387 562 ;
+C 97 ; WX 600 ; N a ; B 53 -15 559 441 ;
+C 98 ; WX 600 ; N b ; B 14 -15 575 629 ;
+C 99 ; WX 600 ; N c ; B 66 -15 529 441 ;
+C 100 ; WX 600 ; N d ; B 45 -15 591 629 ;
+C 101 ; WX 600 ; N e ; B 66 -15 548 441 ;
+C 102 ; WX 600 ; N f ; B 114 0 531 629 ; L i fi ; L l fl ;
+C 103 ; WX 600 ; N g ; B 45 -157 566 441 ;
+C 104 ; WX 600 ; N h ; B 18 0 582 629 ;
+C 105 ; WX 600 ; N i ; B 95 0 505 657 ;
+C 106 ; WX 600 ; N j ; B 82 -157 410 657 ;
+C 107 ; WX 600 ; N k ; B 43 0 580 629 ;
+C 108 ; WX 600 ; N l ; B 95 0 505 629 ;
+C 109 ; WX 600 ; N m ; B -5 0 605 441 ;
+C 110 ; WX 600 ; N n ; B 26 0 575 441 ;
+C 111 ; WX 600 ; N o ; B 62 -15 538 441 ;
+C 112 ; WX 600 ; N p ; B 9 -157 555 441 ;
+C 113 ; WX 600 ; N q ; B 45 -157 591 441 ;
+C 114 ; WX 600 ; N r ; B 60 0 559 441 ;
+C 115 ; WX 600 ; N s ; B 80 -15 513 441 ;
+C 116 ; WX 600 ; N t ; B 87 -15 530 561 ;
+C 117 ; WX 600 ; N u ; B 21 -15 562 426 ;
+C 118 ; WX 600 ; N v ; B 10 -10 590 426 ;
+C 119 ; WX 600 ; N w ; B -4 -10 604 426 ;
+C 120 ; WX 600 ; N x ; B 20 0 580 426 ;
+C 121 ; WX 600 ; N y ; B 7 -157 592 426 ;
+C 122 ; WX 600 ; N z ; B 99 0 502 426 ;
+C 123 ; WX 600 ; N braceleft ; B 182 -108 437 622 ;
+C 124 ; WX 600 ; N bar ; B 275 -250 326 750 ;
+C 125 ; WX 600 ; N braceright ; B 163 -108 418 622 ;
+C 126 ; WX 600 ; N asciitilde ; B 63 197 540 320 ;
+C 161 ; WX 600 ; N exclamdown ; B 236 -157 364 430 ;
+C 162 ; WX 600 ; N cent ; B 96 -49 500 614 ;
+C 163 ; WX 600 ; N sterling ; B 84 -21 521 611 ;
+C 164 ; WX 600 ; N fraction ; B 92 -57 509 665 ;
+C 165 ; WX 600 ; N yen ; B 26 0 574 562 ;
+C 166 ; WX 600 ; N florin ; B 4 -143 539 622 ;
+C 167 ; WX 600 ; N section ; B 113 -78 488 580 ;
+C 168 ; WX 600 ; N currency ; B 73 58 527 506 ;
+C 169 ; WX 600 ; N quotesingle ; B 259 328 341 562 ;
+C 170 ; WX 600 ; N quotedblleft ; B 143 328 471 562 ;
+C 171 ; WX 600 ; N guillemotleft ; B 37 70 563 446 ;
+C 172 ; WX 600 ; N guilsinglleft ; B 149 70 451 446 ;
+C 173 ; WX 600 ; N guilsinglright ; B 149 70 451 446 ;
+C 174 ; WX 600 ; N fi ; B 3 0 597 629 ;
+C 175 ; WX 600 ; N fl ; B 3 0 597 629 ;
+C 177 ; WX 600 ; N endash ; B 75 231 525 285 ;
+C 178 ; WX 600 ; N dagger ; B 141 -78 459 580 ;
+C 179 ; WX 600 ; N daggerdbl ; B 141 -78 459 580 ;
+C 180 ; WX 600 ; N periodcentered ; B 222 189 378 327 ;
+C 182 ; WX 600 ; N paragraph ; B 50 -78 511 562 ;
+C 183 ; WX 600 ; N bullet ; B 172 130 428 383 ;
+C 184 ; WX 600 ; N quotesinglbase ; B 213 -134 376 100 ;
+C 185 ; WX 600 ; N quotedblbase ; B 143 -134 457 100 ;
+C 186 ; WX 600 ; N quotedblright ; B 143 328 457 562 ;
+C 187 ; WX 600 ; N guillemotright ; B 37 70 563 446 ;
+C 188 ; WX 600 ; N ellipsis ; B 37 -15 563 111 ;
+C 189 ; WX 600 ; N perthousand ; B 3 -15 600 622 ;
+C 191 ; WX 600 ; N questiondown ; B 108 -157 471 430 ;
+C 193 ; WX 600 ; N grave ; B 151 497 378 672 ;
+C 194 ; WX 600 ; N acute ; B 242 497 469 672 ;
+C 195 ; WX 600 ; N circumflex ; B 124 477 476 654 ;
+C 196 ; WX 600 ; N tilde ; B 105 489 503 606 ;
+C 197 ; WX 600 ; N macron ; B 120 525 480 565 ;
+C 198 ; WX 600 ; N breve ; B 153 501 447 609 ;
+C 199 ; WX 600 ; N dotaccent ; B 249 537 352 640 ;
+C 200 ; WX 600 ; N dieresis ; B 148 537 453 640 ;
+C 202 ; WX 600 ; N ring ; B 218 463 382 627 ;
+C 203 ; WX 600 ; N cedilla ; B 224 -151 362 10 ;
+C 205 ; WX 600 ; N hungarumlaut ; B 133 497 540 672 ;
+C 206 ; WX 600 ; N ogonek ; B 211 -172 407 4 ;
+C 207 ; WX 600 ; N caron ; B 124 492 476 669 ;
+C 208 ; WX 600 ; N emdash ; B 0 231 600 285 ;
+C 225 ; WX 600 ; N AE ; B 3 0 550 562 ;
+C 227 ; WX 600 ; N ordfeminine ; B 156 249 442 580 ;
+C 232 ; WX 600 ; N Lslash ; B 47 0 554 562 ;
+C 233 ; WX 600 ; N Oslash ; B 43 -80 557 629 ;
+C 234 ; WX 600 ; N OE ; B 7 0 567 562 ;
+C 235 ; WX 600 ; N ordmasculine ; B 157 249 443 580 ;
+C 241 ; WX 600 ; N ae ; B 19 -15 570 441 ;
+C 245 ; WX 600 ; N dotlessi ; B 95 0 505 426 ;
+C 248 ; WX 600 ; N lslash ; B 95 0 505 629 ;
+C 249 ; WX 600 ; N oslash ; B 62 -80 538 506 ;
+C 250 ; WX 600 ; N oe ; B 19 -15 559 441 ;
+C 251 ; WX 600 ; N germandbls ; B 48 -15 588 629 ;
+C -1 ; WX 600 ; N Idieresis ; B 96 0 504 753 ;
+C -1 ; WX 600 ; N eacute ; B 66 -15 548 672 ;
+C -1 ; WX 600 ; N abreve ; B 53 -15 559 609 ;
+C -1 ; WX 600 ; N uhungarumlaut ; B 21 -15 580 672 ;
+C -1 ; WX 600 ; N ecaron ; B 66 -15 548 669 ;
+C -1 ; WX 600 ; N Ydieresis ; B 24 0 576 753 ;
+C -1 ; WX 600 ; N divide ; B 87 48 513 467 ;
+C -1 ; WX 600 ; N Yacute ; B 24 0 576 805 ;
+C -1 ; WX 600 ; N Acircumflex ; B 3 0 597 787 ;
+C -1 ; WX 600 ; N aacute ; B 53 -15 559 672 ;
+C -1 ; WX 600 ; N Ucircumflex ; B 17 -18 583 787 ;
+C -1 ; WX 600 ; N yacute ; B 7 -157 592 672 ;
+C -1 ; WX 600 ; N scommaaccent ; B 80 -250 513 441 ;
+C -1 ; WX 600 ; N ecircumflex ; B 66 -15 548 654 ;
+C -1 ; WX 600 ; N Uring ; B 17 -18 583 760 ;
+C -1 ; WX 600 ; N Udieresis ; B 17 -18 583 753 ;
+C -1 ; WX 600 ; N aogonek ; B 53 -172 587 441 ;
+C -1 ; WX 600 ; N Uacute ; B 17 -18 583 805 ;
+C -1 ; WX 600 ; N uogonek ; B 21 -172 590 426 ;
+C -1 ; WX 600 ; N Edieresis ; B 53 0 550 753 ;
+C -1 ; WX 600 ; N Dcroat ; B 30 0 574 562 ;
+C -1 ; WX 600 ; N commaaccent ; B 198 -250 335 -58 ;
+C -1 ; WX 600 ; N copyright ; B 0 -18 600 580 ;
+C -1 ; WX 600 ; N Emacron ; B 53 0 550 698 ;
+C -1 ; WX 600 ; N ccaron ; B 66 -15 529 669 ;
+C -1 ; WX 600 ; N aring ; B 53 -15 559 627 ;
+C -1 ; WX 600 ; N Ncommaaccent ; B 7 -250 593 562 ;
+C -1 ; WX 600 ; N lacute ; B 95 0 505 805 ;
+C -1 ; WX 600 ; N agrave ; B 53 -15 559 672 ;
+C -1 ; WX 600 ; N Tcommaaccent ; B 38 -250 563 562 ;
+C -1 ; WX 600 ; N Cacute ; B 41 -18 540 805 ;
+C -1 ; WX 600 ; N atilde ; B 53 -15 559 606 ;
+C -1 ; WX 600 ; N Edotaccent ; B 53 0 550 753 ;
+C -1 ; WX 600 ; N scaron ; B 80 -15 513 669 ;
+C -1 ; WX 600 ; N scedilla ; B 80 -151 513 441 ;
+C -1 ; WX 600 ; N iacute ; B 95 0 505 672 ;
+C -1 ; WX 600 ; N lozenge ; B 18 0 443 706 ;
+C -1 ; WX 600 ; N Rcaron ; B 38 0 588 802 ;
+C -1 ; WX 600 ; N Gcommaaccent ; B 31 -250 575 580 ;
+C -1 ; WX 600 ; N ucircumflex ; B 21 -15 562 654 ;
+C -1 ; WX 600 ; N acircumflex ; B 53 -15 559 654 ;
+C -1 ; WX 600 ; N Amacron ; B 3 0 597 698 ;
+C -1 ; WX 600 ; N rcaron ; B 60 0 559 669 ;
+C -1 ; WX 600 ; N ccedilla ; B 66 -151 529 441 ;
+C -1 ; WX 600 ; N Zdotaccent ; B 86 0 514 753 ;
+C -1 ; WX 600 ; N Thorn ; B 79 0 538 562 ;
+C -1 ; WX 600 ; N Omacron ; B 43 -18 557 698 ;
+C -1 ; WX 600 ; N Racute ; B 38 0 588 805 ;
+C -1 ; WX 600 ; N Sacute ; B 72 -20 529 805 ;
+C -1 ; WX 600 ; N dcaron ; B 45 -15 715 629 ;
+C -1 ; WX 600 ; N Umacron ; B 17 -18 583 698 ;
+C -1 ; WX 600 ; N uring ; B 21 -15 562 627 ;
+C -1 ; WX 600 ; N threesuperior ; B 155 240 406 622 ;
+C -1 ; WX 600 ; N Ograve ; B 43 -18 557 805 ;
+C -1 ; WX 600 ; N Agrave ; B 3 0 597 805 ;
+C -1 ; WX 600 ; N Abreve ; B 3 0 597 732 ;
+C -1 ; WX 600 ; N multiply ; B 87 43 515 470 ;
+C -1 ; WX 600 ; N uacute ; B 21 -15 562 672 ;
+C -1 ; WX 600 ; N Tcaron ; B 38 0 563 802 ;
+C -1 ; WX 600 ; N partialdiff ; B 17 -38 459 710 ;
+C -1 ; WX 600 ; N ydieresis ; B 7 -157 592 620 ;
+C -1 ; WX 600 ; N Nacute ; B 7 -13 593 805 ;
+C -1 ; WX 600 ; N icircumflex ; B 94 0 505 654 ;
+C -1 ; WX 600 ; N Ecircumflex ; B 53 0 550 787 ;
+C -1 ; WX 600 ; N adieresis ; B 53 -15 559 620 ;
+C -1 ; WX 600 ; N edieresis ; B 66 -15 548 620 ;
+C -1 ; WX 600 ; N cacute ; B 66 -15 529 672 ;
+C -1 ; WX 600 ; N nacute ; B 26 0 575 672 ;
+C -1 ; WX 600 ; N umacron ; B 21 -15 562 565 ;
+C -1 ; WX 600 ; N Ncaron ; B 7 -13 593 802 ;
+C -1 ; WX 600 ; N Iacute ; B 96 0 504 805 ;
+C -1 ; WX 600 ; N plusminus ; B 87 44 513 558 ;
+C -1 ; WX 600 ; N brokenbar ; B 275 -175 326 675 ;
+C -1 ; WX 600 ; N registered ; B 0 -18 600 580 ;
+C -1 ; WX 600 ; N Gbreve ; B 31 -18 575 732 ;
+C -1 ; WX 600 ; N Idotaccent ; B 96 0 504 753 ;
+C -1 ; WX 600 ; N summation ; B 15 -10 585 706 ;
+C -1 ; WX 600 ; N Egrave ; B 53 0 550 805 ;
+C -1 ; WX 600 ; N racute ; B 60 0 559 672 ;
+C -1 ; WX 600 ; N omacron ; B 62 -15 538 565 ;
+C -1 ; WX 600 ; N Zacute ; B 86 0 514 805 ;
+C -1 ; WX 600 ; N Zcaron ; B 86 0 514 802 ;
+C -1 ; WX 600 ; N greaterequal ; B 98 0 502 710 ;
+C -1 ; WX 600 ; N Eth ; B 30 0 574 562 ;
+C -1 ; WX 600 ; N Ccedilla ; B 41 -151 540 580 ;
+C -1 ; WX 600 ; N lcommaaccent ; B 95 -250 505 629 ;
+C -1 ; WX 600 ; N tcaron ; B 87 -15 530 717 ;
+C -1 ; WX 600 ; N eogonek ; B 66 -172 548 441 ;
+C -1 ; WX 600 ; N Uogonek ; B 17 -172 583 562 ;
+C -1 ; WX 600 ; N Aacute ; B 3 0 597 805 ;
+C -1 ; WX 600 ; N Adieresis ; B 3 0 597 753 ;
+C -1 ; WX 600 ; N egrave ; B 66 -15 548 672 ;
+C -1 ; WX 600 ; N zacute ; B 99 0 502 672 ;
+C -1 ; WX 600 ; N iogonek ; B 95 -172 505 657 ;
+C -1 ; WX 600 ; N Oacute ; B 43 -18 557 805 ;
+C -1 ; WX 600 ; N oacute ; B 62 -15 538 672 ;
+C -1 ; WX 600 ; N amacron ; B 53 -15 559 565 ;
+C -1 ; WX 600 ; N sacute ; B 80 -15 513 672 ;
+C -1 ; WX 600 ; N idieresis ; B 95 0 505 620 ;
+C -1 ; WX 600 ; N Ocircumflex ; B 43 -18 557 787 ;
+C -1 ; WX 600 ; N Ugrave ; B 17 -18 583 805 ;
+C -1 ; WX 600 ; N Delta ; B 6 0 598 688 ;
+C -1 ; WX 600 ; N thorn ; B -6 -157 555 629 ;
+C -1 ; WX 600 ; N twosuperior ; B 177 249 424 622 ;
+C -1 ; WX 600 ; N Odieresis ; B 43 -18 557 753 ;
+C -1 ; WX 600 ; N mu ; B 21 -157 562 426 ;
+C -1 ; WX 600 ; N igrave ; B 95 0 505 672 ;
+C -1 ; WX 600 ; N ohungarumlaut ; B 62 -15 580 672 ;
+C -1 ; WX 600 ; N Eogonek ; B 53 -172 561 562 ;
+C -1 ; WX 600 ; N dcroat ; B 45 -15 591 629 ;
+C -1 ; WX 600 ; N threequarters ; B 8 -56 593 666 ;
+C -1 ; WX 600 ; N Scedilla ; B 72 -151 529 580 ;
+C -1 ; WX 600 ; N lcaron ; B 95 0 533 629 ;
+C -1 ; WX 600 ; N Kcommaaccent ; B 38 -250 582 562 ;
+C -1 ; WX 600 ; N Lacute ; B 47 0 554 805 ;
+C -1 ; WX 600 ; N trademark ; B -23 263 623 562 ;
+C -1 ; WX 600 ; N edotaccent ; B 66 -15 548 620 ;
+C -1 ; WX 600 ; N Igrave ; B 96 0 504 805 ;
+C -1 ; WX 600 ; N Imacron ; B 96 0 504 698 ;
+C -1 ; WX 600 ; N Lcaron ; B 47 0 554 562 ;
+C -1 ; WX 600 ; N onehalf ; B 0 -57 611 665 ;
+C -1 ; WX 600 ; N lessequal ; B 98 0 502 710 ;
+C -1 ; WX 600 ; N ocircumflex ; B 62 -15 538 654 ;
+C -1 ; WX 600 ; N ntilde ; B 26 0 575 606 ;
+C -1 ; WX 600 ; N Uhungarumlaut ; B 17 -18 590 805 ;
+C -1 ; WX 600 ; N Eacute ; B 53 0 550 805 ;
+C -1 ; WX 600 ; N emacron ; B 66 -15 548 565 ;
+C -1 ; WX 600 ; N gbreve ; B 45 -157 566 609 ;
+C -1 ; WX 600 ; N onequarter ; B 0 -57 600 665 ;
+C -1 ; WX 600 ; N Scaron ; B 72 -20 529 802 ;
+C -1 ; WX 600 ; N Scommaaccent ; B 72 -250 529 580 ;
+C -1 ; WX 600 ; N Ohungarumlaut ; B 43 -18 580 805 ;
+C -1 ; WX 600 ; N degree ; B 123 269 477 622 ;
+C -1 ; WX 600 ; N ograve ; B 62 -15 538 672 ;
+C -1 ; WX 600 ; N Ccaron ; B 41 -18 540 802 ;
+C -1 ; WX 600 ; N ugrave ; B 21 -15 562 672 ;
+C -1 ; WX 600 ; N radical ; B 3 -15 597 792 ;
+C -1 ; WX 600 ; N Dcaron ; B 43 0 574 802 ;
+C -1 ; WX 600 ; N rcommaaccent ; B 60 -250 559 441 ;
+C -1 ; WX 600 ; N Ntilde ; B 7 -13 593 729 ;
+C -1 ; WX 600 ; N otilde ; B 62 -15 538 606 ;
+C -1 ; WX 600 ; N Rcommaaccent ; B 38 -250 588 562 ;
+C -1 ; WX 600 ; N Lcommaaccent ; B 47 -250 554 562 ;
+C -1 ; WX 600 ; N Atilde ; B 3 0 597 729 ;
+C -1 ; WX 600 ; N Aogonek ; B 3 -172 608 562 ;
+C -1 ; WX 600 ; N Aring ; B 3 0 597 750 ;
+C -1 ; WX 600 ; N Otilde ; B 43 -18 557 729 ;
+C -1 ; WX 600 ; N zdotaccent ; B 99 0 502 620 ;
+C -1 ; WX 600 ; N Ecaron ; B 53 0 550 802 ;
+C -1 ; WX 600 ; N Iogonek ; B 96 -172 504 562 ;
+C -1 ; WX 600 ; N kcommaaccent ; B 43 -250 580 629 ;
+C -1 ; WX 600 ; N minus ; B 80 232 520 283 ;
+C -1 ; WX 600 ; N Icircumflex ; B 96 0 504 787 ;
+C -1 ; WX 600 ; N ncaron ; B 26 0 575 669 ;
+C -1 ; WX 600 ; N tcommaaccent ; B 87 -250 530 561 ;
+C -1 ; WX 600 ; N logicalnot ; B 87 108 513 369 ;
+C -1 ; WX 600 ; N odieresis ; B 62 -15 538 620 ;
+C -1 ; WX 600 ; N udieresis ; B 21 -15 562 620 ;
+C -1 ; WX 600 ; N notequal ; B 15 -16 540 529 ;
+C -1 ; WX 600 ; N gcommaaccent ; B 45 -157 566 708 ;
+C -1 ; WX 600 ; N eth ; B 62 -15 538 629 ;
+C -1 ; WX 600 ; N zcaron ; B 99 0 502 669 ;
+C -1 ; WX 600 ; N ncommaaccent ; B 26 -250 575 441 ;
+C -1 ; WX 600 ; N onesuperior ; B 172 249 428 622 ;
+C -1 ; WX 600 ; N imacron ; B 95 0 505 565 ;
+C -1 ; WX 600 ; N Euro ; B 0 0 0 0 ;
+EndCharMetrics
+EndFontMetrics
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Helvetica-Bold.afm b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Helvetica-Bold.afm
new file mode 100755
index 00000000..837c594e
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Helvetica-Bold.afm
@@ -0,0 +1,2827 @@
+StartFontMetrics 4.1
+Comment Copyright (c) 1985, 1987, 1989, 1990, 1997 Adobe Systems Incorporated. All Rights Reserved.
+Comment Creation Date: Thu May 1 12:43:52 1997
+Comment UniqueID 43052
+Comment VMusage 37169 48194
+FontName Helvetica-Bold
+FullName Helvetica Bold
+FamilyName Helvetica
+Weight Bold
+ItalicAngle 0
+IsFixedPitch false
+CharacterSet ExtendedRoman
+FontBBox -170 -228 1003 962
+UnderlinePosition -100
+UnderlineThickness 50
+Version 002.000
+Notice Copyright (c) 1985, 1987, 1989, 1990, 1997 Adobe Systems Incorporated. All Rights Reserved.Helvetica is a trademark of Linotype-Hell AG and/or its subsidiaries.
+EncodingScheme AdobeStandardEncoding
+CapHeight 718
+XHeight 532
+Ascender 718
+Descender -207
+StdHW 118
+StdVW 140
+StartCharMetrics 315
+C 32 ; WX 278 ; N space ; B 0 0 0 0 ;
+C 33 ; WX 333 ; N exclam ; B 90 0 244 718 ;
+C 34 ; WX 474 ; N quotedbl ; B 98 447 376 718 ;
+C 35 ; WX 556 ; N numbersign ; B 18 0 538 698 ;
+C 36 ; WX 556 ; N dollar ; B 30 -115 523 775 ;
+C 37 ; WX 889 ; N percent ; B 28 -19 861 710 ;
+C 38 ; WX 722 ; N ampersand ; B 54 -19 701 718 ;
+C 39 ; WX 278 ; N quoteright ; B 69 445 209 718 ;
+C 40 ; WX 333 ; N parenleft ; B 35 -208 314 734 ;
+C 41 ; WX 333 ; N parenright ; B 19 -208 298 734 ;
+C 42 ; WX 389 ; N asterisk ; B 27 387 362 718 ;
+C 43 ; WX 584 ; N plus ; B 40 0 544 506 ;
+C 44 ; WX 278 ; N comma ; B 64 -168 214 146 ;
+C 45 ; WX 333 ; N hyphen ; B 27 215 306 345 ;
+C 46 ; WX 278 ; N period ; B 64 0 214 146 ;
+C 47 ; WX 278 ; N slash ; B -33 -19 311 737 ;
+C 48 ; WX 556 ; N zero ; B 32 -19 524 710 ;
+C 49 ; WX 556 ; N one ; B 69 0 378 710 ;
+C 50 ; WX 556 ; N two ; B 26 0 511 710 ;
+C 51 ; WX 556 ; N three ; B 27 -19 516 710 ;
+C 52 ; WX 556 ; N four ; B 27 0 526 710 ;
+C 53 ; WX 556 ; N five ; B 27 -19 516 698 ;
+C 54 ; WX 556 ; N six ; B 31 -19 520 710 ;
+C 55 ; WX 556 ; N seven ; B 25 0 528 698 ;
+C 56 ; WX 556 ; N eight ; B 32 -19 524 710 ;
+C 57 ; WX 556 ; N nine ; B 30 -19 522 710 ;
+C 58 ; WX 333 ; N colon ; B 92 0 242 512 ;
+C 59 ; WX 333 ; N semicolon ; B 92 -168 242 512 ;
+C 60 ; WX 584 ; N less ; B 38 -8 546 514 ;
+C 61 ; WX 584 ; N equal ; B 40 87 544 419 ;
+C 62 ; WX 584 ; N greater ; B 38 -8 546 514 ;
+C 63 ; WX 611 ; N question ; B 60 0 556 727 ;
+C 64 ; WX 975 ; N at ; B 118 -19 856 737 ;
+C 65 ; WX 722 ; N A ; B 20 0 702 718 ;
+C 66 ; WX 722 ; N B ; B 76 0 669 718 ;
+C 67 ; WX 722 ; N C ; B 44 -19 684 737 ;
+C 68 ; WX 722 ; N D ; B 76 0 685 718 ;
+C 69 ; WX 667 ; N E ; B 76 0 621 718 ;
+C 70 ; WX 611 ; N F ; B 76 0 587 718 ;
+C 71 ; WX 778 ; N G ; B 44 -19 713 737 ;
+C 72 ; WX 722 ; N H ; B 71 0 651 718 ;
+C 73 ; WX 278 ; N I ; B 64 0 214 718 ;
+C 74 ; WX 556 ; N J ; B 22 -18 484 718 ;
+C 75 ; WX 722 ; N K ; B 87 0 722 718 ;
+C 76 ; WX 611 ; N L ; B 76 0 583 718 ;
+C 77 ; WX 833 ; N M ; B 69 0 765 718 ;
+C 78 ; WX 722 ; N N ; B 69 0 654 718 ;
+C 79 ; WX 778 ; N O ; B 44 -19 734 737 ;
+C 80 ; WX 667 ; N P ; B 76 0 627 718 ;
+C 81 ; WX 778 ; N Q ; B 44 -52 737 737 ;
+C 82 ; WX 722 ; N R ; B 76 0 677 718 ;
+C 83 ; WX 667 ; N S ; B 39 -19 629 737 ;
+C 84 ; WX 611 ; N T ; B 14 0 598 718 ;
+C 85 ; WX 722 ; N U ; B 72 -19 651 718 ;
+C 86 ; WX 667 ; N V ; B 19 0 648 718 ;
+C 87 ; WX 944 ; N W ; B 16 0 929 718 ;
+C 88 ; WX 667 ; N X ; B 14 0 653 718 ;
+C 89 ; WX 667 ; N Y ; B 15 0 653 718 ;
+C 90 ; WX 611 ; N Z ; B 25 0 586 718 ;
+C 91 ; WX 333 ; N bracketleft ; B 63 -196 309 722 ;
+C 92 ; WX 278 ; N backslash ; B -33 -19 311 737 ;
+C 93 ; WX 333 ; N bracketright ; B 24 -196 270 722 ;
+C 94 ; WX 584 ; N asciicircum ; B 62 323 522 698 ;
+C 95 ; WX 556 ; N underscore ; B 0 -125 556 -75 ;
+C 96 ; WX 278 ; N quoteleft ; B 69 454 209 727 ;
+C 97 ; WX 556 ; N a ; B 29 -14 527 546 ;
+C 98 ; WX 611 ; N b ; B 61 -14 578 718 ;
+C 99 ; WX 556 ; N c ; B 34 -14 524 546 ;
+C 100 ; WX 611 ; N d ; B 34 -14 551 718 ;
+C 101 ; WX 556 ; N e ; B 23 -14 528 546 ;
+C 102 ; WX 333 ; N f ; B 10 0 318 727 ; L i fi ; L l fl ;
+C 103 ; WX 611 ; N g ; B 40 -217 553 546 ;
+C 104 ; WX 611 ; N h ; B 65 0 546 718 ;
+C 105 ; WX 278 ; N i ; B 69 0 209 725 ;
+C 106 ; WX 278 ; N j ; B 3 -214 209 725 ;
+C 107 ; WX 556 ; N k ; B 69 0 562 718 ;
+C 108 ; WX 278 ; N l ; B 69 0 209 718 ;
+C 109 ; WX 889 ; N m ; B 64 0 826 546 ;
+C 110 ; WX 611 ; N n ; B 65 0 546 546 ;
+C 111 ; WX 611 ; N o ; B 34 -14 578 546 ;
+C 112 ; WX 611 ; N p ; B 62 -207 578 546 ;
+C 113 ; WX 611 ; N q ; B 34 -207 552 546 ;
+C 114 ; WX 389 ; N r ; B 64 0 373 546 ;
+C 115 ; WX 556 ; N s ; B 30 -14 519 546 ;
+C 116 ; WX 333 ; N t ; B 10 -6 309 676 ;
+C 117 ; WX 611 ; N u ; B 66 -14 545 532 ;
+C 118 ; WX 556 ; N v ; B 13 0 543 532 ;
+C 119 ; WX 778 ; N w ; B 10 0 769 532 ;
+C 120 ; WX 556 ; N x ; B 15 0 541 532 ;
+C 121 ; WX 556 ; N y ; B 10 -214 539 532 ;
+C 122 ; WX 500 ; N z ; B 20 0 480 532 ;
+C 123 ; WX 389 ; N braceleft ; B 48 -196 365 722 ;
+C 124 ; WX 280 ; N bar ; B 84 -225 196 775 ;
+C 125 ; WX 389 ; N braceright ; B 24 -196 341 722 ;
+C 126 ; WX 584 ; N asciitilde ; B 61 163 523 343 ;
+C 161 ; WX 333 ; N exclamdown ; B 90 -186 244 532 ;
+C 162 ; WX 556 ; N cent ; B 34 -118 524 628 ;
+C 163 ; WX 556 ; N sterling ; B 28 -16 541 718 ;
+C 164 ; WX 167 ; N fraction ; B -170 -19 336 710 ;
+C 165 ; WX 556 ; N yen ; B -9 0 565 698 ;
+C 166 ; WX 556 ; N florin ; B -10 -210 516 737 ;
+C 167 ; WX 556 ; N section ; B 34 -184 522 727 ;
+C 168 ; WX 556 ; N currency ; B -3 76 559 636 ;
+C 169 ; WX 238 ; N quotesingle ; B 70 447 168 718 ;
+C 170 ; WX 500 ; N quotedblleft ; B 64 454 436 727 ;
+C 171 ; WX 556 ; N guillemotleft ; B 88 76 468 484 ;
+C 172 ; WX 333 ; N guilsinglleft ; B 83 76 250 484 ;
+C 173 ; WX 333 ; N guilsinglright ; B 83 76 250 484 ;
+C 174 ; WX 611 ; N fi ; B 10 0 542 727 ;
+C 175 ; WX 611 ; N fl ; B 10 0 542 727 ;
+C 177 ; WX 556 ; N endash ; B 0 227 556 333 ;
+C 178 ; WX 556 ; N dagger ; B 36 -171 520 718 ;
+C 179 ; WX 556 ; N daggerdbl ; B 36 -171 520 718 ;
+C 180 ; WX 278 ; N periodcentered ; B 58 172 220 334 ;
+C 182 ; WX 556 ; N paragraph ; B -8 -191 539 700 ;
+C 183 ; WX 350 ; N bullet ; B 10 194 340 524 ;
+C 184 ; WX 278 ; N quotesinglbase ; B 69 -146 209 127 ;
+C 185 ; WX 500 ; N quotedblbase ; B 64 -146 436 127 ;
+C 186 ; WX 500 ; N quotedblright ; B 64 445 436 718 ;
+C 187 ; WX 556 ; N guillemotright ; B 88 76 468 484 ;
+C 188 ; WX 1000 ; N ellipsis ; B 92 0 908 146 ;
+C 189 ; WX 1000 ; N perthousand ; B -3 -19 1003 710 ;
+C 191 ; WX 611 ; N questiondown ; B 55 -195 551 532 ;
+C 193 ; WX 333 ; N grave ; B -23 604 225 750 ;
+C 194 ; WX 333 ; N acute ; B 108 604 356 750 ;
+C 195 ; WX 333 ; N circumflex ; B -10 604 343 750 ;
+C 196 ; WX 333 ; N tilde ; B -17 610 350 737 ;
+C 197 ; WX 333 ; N macron ; B -6 604 339 678 ;
+C 198 ; WX 333 ; N breve ; B -2 604 335 750 ;
+C 199 ; WX 333 ; N dotaccent ; B 104 614 230 729 ;
+C 200 ; WX 333 ; N dieresis ; B 6 614 327 729 ;
+C 202 ; WX 333 ; N ring ; B 59 568 275 776 ;
+C 203 ; WX 333 ; N cedilla ; B 6 -228 245 0 ;
+C 205 ; WX 333 ; N hungarumlaut ; B 9 604 486 750 ;
+C 206 ; WX 333 ; N ogonek ; B 71 -228 304 0 ;
+C 207 ; WX 333 ; N caron ; B -10 604 343 750 ;
+C 208 ; WX 1000 ; N emdash ; B 0 227 1000 333 ;
+C 225 ; WX 1000 ; N AE ; B 5 0 954 718 ;
+C 227 ; WX 370 ; N ordfeminine ; B 22 401 347 737 ;
+C 232 ; WX 611 ; N Lslash ; B -20 0 583 718 ;
+C 233 ; WX 778 ; N Oslash ; B 33 -27 744 745 ;
+C 234 ; WX 1000 ; N OE ; B 37 -19 961 737 ;
+C 235 ; WX 365 ; N ordmasculine ; B 6 401 360 737 ;
+C 241 ; WX 889 ; N ae ; B 29 -14 858 546 ;
+C 245 ; WX 278 ; N dotlessi ; B 69 0 209 532 ;
+C 248 ; WX 278 ; N lslash ; B -18 0 296 718 ;
+C 249 ; WX 611 ; N oslash ; B 22 -29 589 560 ;
+C 250 ; WX 944 ; N oe ; B 34 -14 912 546 ;
+C 251 ; WX 611 ; N germandbls ; B 69 -14 579 731 ;
+C -1 ; WX 278 ; N Idieresis ; B -21 0 300 915 ;
+C -1 ; WX 556 ; N eacute ; B 23 -14 528 750 ;
+C -1 ; WX 556 ; N abreve ; B 29 -14 527 750 ;
+C -1 ; WX 611 ; N uhungarumlaut ; B 66 -14 625 750 ;
+C -1 ; WX 556 ; N ecaron ; B 23 -14 528 750 ;
+C -1 ; WX 667 ; N Ydieresis ; B 15 0 653 915 ;
+C -1 ; WX 584 ; N divide ; B 40 -42 544 548 ;
+C -1 ; WX 667 ; N Yacute ; B 15 0 653 936 ;
+C -1 ; WX 722 ; N Acircumflex ; B 20 0 702 936 ;
+C -1 ; WX 556 ; N aacute ; B 29 -14 527 750 ;
+C -1 ; WX 722 ; N Ucircumflex ; B 72 -19 651 936 ;
+C -1 ; WX 556 ; N yacute ; B 10 -214 539 750 ;
+C -1 ; WX 556 ; N scommaaccent ; B 30 -228 519 546 ;
+C -1 ; WX 556 ; N ecircumflex ; B 23 -14 528 750 ;
+C -1 ; WX 722 ; N Uring ; B 72 -19 651 962 ;
+C -1 ; WX 722 ; N Udieresis ; B 72 -19 651 915 ;
+C -1 ; WX 556 ; N aogonek ; B 29 -224 545 546 ;
+C -1 ; WX 722 ; N Uacute ; B 72 -19 651 936 ;
+C -1 ; WX 611 ; N uogonek ; B 66 -228 545 532 ;
+C -1 ; WX 667 ; N Edieresis ; B 76 0 621 915 ;
+C -1 ; WX 722 ; N Dcroat ; B -5 0 685 718 ;
+C -1 ; WX 250 ; N commaaccent ; B 64 -228 199 -50 ;
+C -1 ; WX 737 ; N copyright ; B -11 -19 749 737 ;
+C -1 ; WX 667 ; N Emacron ; B 76 0 621 864 ;
+C -1 ; WX 556 ; N ccaron ; B 34 -14 524 750 ;
+C -1 ; WX 556 ; N aring ; B 29 -14 527 776 ;
+C -1 ; WX 722 ; N Ncommaaccent ; B 69 -228 654 718 ;
+C -1 ; WX 278 ; N lacute ; B 69 0 329 936 ;
+C -1 ; WX 556 ; N agrave ; B 29 -14 527 750 ;
+C -1 ; WX 611 ; N Tcommaaccent ; B 14 -228 598 718 ;
+C -1 ; WX 722 ; N Cacute ; B 44 -19 684 936 ;
+C -1 ; WX 556 ; N atilde ; B 29 -14 527 737 ;
+C -1 ; WX 667 ; N Edotaccent ; B 76 0 621 915 ;
+C -1 ; WX 556 ; N scaron ; B 30 -14 519 750 ;
+C -1 ; WX 556 ; N scedilla ; B 30 -228 519 546 ;
+C -1 ; WX 278 ; N iacute ; B 69 0 329 750 ;
+C -1 ; WX 494 ; N lozenge ; B 10 0 484 745 ;
+C -1 ; WX 722 ; N Rcaron ; B 76 0 677 936 ;
+C -1 ; WX 778 ; N Gcommaaccent ; B 44 -228 713 737 ;
+C -1 ; WX 611 ; N ucircumflex ; B 66 -14 545 750 ;
+C -1 ; WX 556 ; N acircumflex ; B 29 -14 527 750 ;
+C -1 ; WX 722 ; N Amacron ; B 20 0 702 864 ;
+C -1 ; WX 389 ; N rcaron ; B 18 0 373 750 ;
+C -1 ; WX 556 ; N ccedilla ; B 34 -228 524 546 ;
+C -1 ; WX 611 ; N Zdotaccent ; B 25 0 586 915 ;
+C -1 ; WX 667 ; N Thorn ; B 76 0 627 718 ;
+C -1 ; WX 778 ; N Omacron ; B 44 -19 734 864 ;
+C -1 ; WX 722 ; N Racute ; B 76 0 677 936 ;
+C -1 ; WX 667 ; N Sacute ; B 39 -19 629 936 ;
+C -1 ; WX 743 ; N dcaron ; B 34 -14 750 718 ;
+C -1 ; WX 722 ; N Umacron ; B 72 -19 651 864 ;
+C -1 ; WX 611 ; N uring ; B 66 -14 545 776 ;
+C -1 ; WX 333 ; N threesuperior ; B 8 271 326 710 ;
+C -1 ; WX 778 ; N Ograve ; B 44 -19 734 936 ;
+C -1 ; WX 722 ; N Agrave ; B 20 0 702 936 ;
+C -1 ; WX 722 ; N Abreve ; B 20 0 702 936 ;
+C -1 ; WX 584 ; N multiply ; B 40 1 545 505 ;
+C -1 ; WX 611 ; N uacute ; B 66 -14 545 750 ;
+C -1 ; WX 611 ; N Tcaron ; B 14 0 598 936 ;
+C -1 ; WX 494 ; N partialdiff ; B 11 -21 494 750 ;
+C -1 ; WX 556 ; N ydieresis ; B 10 -214 539 729 ;
+C -1 ; WX 722 ; N Nacute ; B 69 0 654 936 ;
+C -1 ; WX 278 ; N icircumflex ; B -37 0 316 750 ;
+C -1 ; WX 667 ; N Ecircumflex ; B 76 0 621 936 ;
+C -1 ; WX 556 ; N adieresis ; B 29 -14 527 729 ;
+C -1 ; WX 556 ; N edieresis ; B 23 -14 528 729 ;
+C -1 ; WX 556 ; N cacute ; B 34 -14 524 750 ;
+C -1 ; WX 611 ; N nacute ; B 65 0 546 750 ;
+C -1 ; WX 611 ; N umacron ; B 66 -14 545 678 ;
+C -1 ; WX 722 ; N Ncaron ; B 69 0 654 936 ;
+C -1 ; WX 278 ; N Iacute ; B 64 0 329 936 ;
+C -1 ; WX 584 ; N plusminus ; B 40 0 544 506 ;
+C -1 ; WX 280 ; N brokenbar ; B 84 -150 196 700 ;
+C -1 ; WX 737 ; N registered ; B -11 -19 748 737 ;
+C -1 ; WX 778 ; N Gbreve ; B 44 -19 713 936 ;
+C -1 ; WX 278 ; N Idotaccent ; B 64 0 214 915 ;
+C -1 ; WX 600 ; N summation ; B 14 -10 585 706 ;
+C -1 ; WX 667 ; N Egrave ; B 76 0 621 936 ;
+C -1 ; WX 389 ; N racute ; B 64 0 384 750 ;
+C -1 ; WX 611 ; N omacron ; B 34 -14 578 678 ;
+C -1 ; WX 611 ; N Zacute ; B 25 0 586 936 ;
+C -1 ; WX 611 ; N Zcaron ; B 25 0 586 936 ;
+C -1 ; WX 549 ; N greaterequal ; B 26 0 523 704 ;
+C -1 ; WX 722 ; N Eth ; B -5 0 685 718 ;
+C -1 ; WX 722 ; N Ccedilla ; B 44 -228 684 737 ;
+C -1 ; WX 278 ; N lcommaaccent ; B 69 -228 213 718 ;
+C -1 ; WX 389 ; N tcaron ; B 10 -6 421 878 ;
+C -1 ; WX 556 ; N eogonek ; B 23 -228 528 546 ;
+C -1 ; WX 722 ; N Uogonek ; B 72 -228 651 718 ;
+C -1 ; WX 722 ; N Aacute ; B 20 0 702 936 ;
+C -1 ; WX 722 ; N Adieresis ; B 20 0 702 915 ;
+C -1 ; WX 556 ; N egrave ; B 23 -14 528 750 ;
+C -1 ; WX 500 ; N zacute ; B 20 0 480 750 ;
+C -1 ; WX 278 ; N iogonek ; B 16 -224 249 725 ;
+C -1 ; WX 778 ; N Oacute ; B 44 -19 734 936 ;
+C -1 ; WX 611 ; N oacute ; B 34 -14 578 750 ;
+C -1 ; WX 556 ; N amacron ; B 29 -14 527 678 ;
+C -1 ; WX 556 ; N sacute ; B 30 -14 519 750 ;
+C -1 ; WX 278 ; N idieresis ; B -21 0 300 729 ;
+C -1 ; WX 778 ; N Ocircumflex ; B 44 -19 734 936 ;
+C -1 ; WX 722 ; N Ugrave ; B 72 -19 651 936 ;
+C -1 ; WX 612 ; N Delta ; B 6 0 608 688 ;
+C -1 ; WX 611 ; N thorn ; B 62 -208 578 718 ;
+C -1 ; WX 333 ; N twosuperior ; B 9 283 324 710 ;
+C -1 ; WX 778 ; N Odieresis ; B 44 -19 734 915 ;
+C -1 ; WX 611 ; N mu ; B 66 -207 545 532 ;
+C -1 ; WX 278 ; N igrave ; B -50 0 209 750 ;
+C -1 ; WX 611 ; N ohungarumlaut ; B 34 -14 625 750 ;
+C -1 ; WX 667 ; N Eogonek ; B 76 -224 639 718 ;
+C -1 ; WX 611 ; N dcroat ; B 34 -14 650 718 ;
+C -1 ; WX 834 ; N threequarters ; B 16 -19 799 710 ;
+C -1 ; WX 667 ; N Scedilla ; B 39 -228 629 737 ;
+C -1 ; WX 400 ; N lcaron ; B 69 0 408 718 ;
+C -1 ; WX 722 ; N Kcommaaccent ; B 87 -228 722 718 ;
+C -1 ; WX 611 ; N Lacute ; B 76 0 583 936 ;
+C -1 ; WX 1000 ; N trademark ; B 44 306 956 718 ;
+C -1 ; WX 556 ; N edotaccent ; B 23 -14 528 729 ;
+C -1 ; WX 278 ; N Igrave ; B -50 0 214 936 ;
+C -1 ; WX 278 ; N Imacron ; B -33 0 312 864 ;
+C -1 ; WX 611 ; N Lcaron ; B 76 0 583 718 ;
+C -1 ; WX 834 ; N onehalf ; B 26 -19 794 710 ;
+C -1 ; WX 549 ; N lessequal ; B 29 0 526 704 ;
+C -1 ; WX 611 ; N ocircumflex ; B 34 -14 578 750 ;
+C -1 ; WX 611 ; N ntilde ; B 65 0 546 737 ;
+C -1 ; WX 722 ; N Uhungarumlaut ; B 72 -19 681 936 ;
+C -1 ; WX 667 ; N Eacute ; B 76 0 621 936 ;
+C -1 ; WX 556 ; N emacron ; B 23 -14 528 678 ;
+C -1 ; WX 611 ; N gbreve ; B 40 -217 553 750 ;
+C -1 ; WX 834 ; N onequarter ; B 26 -19 766 710 ;
+C -1 ; WX 667 ; N Scaron ; B 39 -19 629 936 ;
+C -1 ; WX 667 ; N Scommaaccent ; B 39 -228 629 737 ;
+C -1 ; WX 778 ; N Ohungarumlaut ; B 44 -19 734 936 ;
+C -1 ; WX 400 ; N degree ; B 57 426 343 712 ;
+C -1 ; WX 611 ; N ograve ; B 34 -14 578 750 ;
+C -1 ; WX 722 ; N Ccaron ; B 44 -19 684 936 ;
+C -1 ; WX 611 ; N ugrave ; B 66 -14 545 750 ;
+C -1 ; WX 549 ; N radical ; B 10 -46 512 850 ;
+C -1 ; WX 722 ; N Dcaron ; B 76 0 685 936 ;
+C -1 ; WX 389 ; N rcommaaccent ; B 64 -228 373 546 ;
+C -1 ; WX 722 ; N Ntilde ; B 69 0 654 923 ;
+C -1 ; WX 611 ; N otilde ; B 34 -14 578 737 ;
+C -1 ; WX 722 ; N Rcommaaccent ; B 76 -228 677 718 ;
+C -1 ; WX 611 ; N Lcommaaccent ; B 76 -228 583 718 ;
+C -1 ; WX 722 ; N Atilde ; B 20 0 702 923 ;
+C -1 ; WX 722 ; N Aogonek ; B 20 -224 742 718 ;
+C -1 ; WX 722 ; N Aring ; B 20 0 702 962 ;
+C -1 ; WX 778 ; N Otilde ; B 44 -19 734 923 ;
+C -1 ; WX 500 ; N zdotaccent ; B 20 0 480 729 ;
+C -1 ; WX 667 ; N Ecaron ; B 76 0 621 936 ;
+C -1 ; WX 278 ; N Iogonek ; B -11 -228 222 718 ;
+C -1 ; WX 556 ; N kcommaaccent ; B 69 -228 562 718 ;
+C -1 ; WX 584 ; N minus ; B 40 197 544 309 ;
+C -1 ; WX 278 ; N Icircumflex ; B -37 0 316 936 ;
+C -1 ; WX 611 ; N ncaron ; B 65 0 546 750 ;
+C -1 ; WX 333 ; N tcommaaccent ; B 10 -228 309 676 ;
+C -1 ; WX 584 ; N logicalnot ; B 40 108 544 419 ;
+C -1 ; WX 611 ; N odieresis ; B 34 -14 578 729 ;
+C -1 ; WX 611 ; N udieresis ; B 66 -14 545 729 ;
+C -1 ; WX 549 ; N notequal ; B 15 -49 540 570 ;
+C -1 ; WX 611 ; N gcommaaccent ; B 40 -217 553 850 ;
+C -1 ; WX 611 ; N eth ; B 34 -14 578 737 ;
+C -1 ; WX 500 ; N zcaron ; B 20 0 480 750 ;
+C -1 ; WX 611 ; N ncommaaccent ; B 65 -228 546 546 ;
+C -1 ; WX 333 ; N onesuperior ; B 26 283 237 710 ;
+C -1 ; WX 278 ; N imacron ; B -8 0 285 678 ;
+C -1 ; WX 556 ; N Euro ; B 0 0 0 0 ;
+EndCharMetrics
+StartKernData
+StartKernPairs 2481
+KPX A C -40
+KPX A Cacute -40
+KPX A Ccaron -40
+KPX A Ccedilla -40
+KPX A G -50
+KPX A Gbreve -50
+KPX A Gcommaaccent -50
+KPX A O -40
+KPX A Oacute -40
+KPX A Ocircumflex -40
+KPX A Odieresis -40
+KPX A Ograve -40
+KPX A Ohungarumlaut -40
+KPX A Omacron -40
+KPX A Oslash -40
+KPX A Otilde -40
+KPX A Q -40
+KPX A T -90
+KPX A Tcaron -90
+KPX A Tcommaaccent -90
+KPX A U -50
+KPX A Uacute -50
+KPX A Ucircumflex -50
+KPX A Udieresis -50
+KPX A Ugrave -50
+KPX A Uhungarumlaut -50
+KPX A Umacron -50
+KPX A Uogonek -50
+KPX A Uring -50
+KPX A V -80
+KPX A W -60
+KPX A Y -110
+KPX A Yacute -110
+KPX A Ydieresis -110
+KPX A u -30
+KPX A uacute -30
+KPX A ucircumflex -30
+KPX A udieresis -30
+KPX A ugrave -30
+KPX A uhungarumlaut -30
+KPX A umacron -30
+KPX A uogonek -30
+KPX A uring -30
+KPX A v -40
+KPX A w -30
+KPX A y -30
+KPX A yacute -30
+KPX A ydieresis -30
+KPX Aacute C -40
+KPX Aacute Cacute -40
+KPX Aacute Ccaron -40
+KPX Aacute Ccedilla -40
+KPX Aacute G -50
+KPX Aacute Gbreve -50
+KPX Aacute Gcommaaccent -50
+KPX Aacute O -40
+KPX Aacute Oacute -40
+KPX Aacute Ocircumflex -40
+KPX Aacute Odieresis -40
+KPX Aacute Ograve -40
+KPX Aacute Ohungarumlaut -40
+KPX Aacute Omacron -40
+KPX Aacute Oslash -40
+KPX Aacute Otilde -40
+KPX Aacute Q -40
+KPX Aacute T -90
+KPX Aacute Tcaron -90
+KPX Aacute Tcommaaccent -90
+KPX Aacute U -50
+KPX Aacute Uacute -50
+KPX Aacute Ucircumflex -50
+KPX Aacute Udieresis -50
+KPX Aacute Ugrave -50
+KPX Aacute Uhungarumlaut -50
+KPX Aacute Umacron -50
+KPX Aacute Uogonek -50
+KPX Aacute Uring -50
+KPX Aacute V -80
+KPX Aacute W -60
+KPX Aacute Y -110
+KPX Aacute Yacute -110
+KPX Aacute Ydieresis -110
+KPX Aacute u -30
+KPX Aacute uacute -30
+KPX Aacute ucircumflex -30
+KPX Aacute udieresis -30
+KPX Aacute ugrave -30
+KPX Aacute uhungarumlaut -30
+KPX Aacute umacron -30
+KPX Aacute uogonek -30
+KPX Aacute uring -30
+KPX Aacute v -40
+KPX Aacute w -30
+KPX Aacute y -30
+KPX Aacute yacute -30
+KPX Aacute ydieresis -30
+KPX Abreve C -40
+KPX Abreve Cacute -40
+KPX Abreve Ccaron -40
+KPX Abreve Ccedilla -40
+KPX Abreve G -50
+KPX Abreve Gbreve -50
+KPX Abreve Gcommaaccent -50
+KPX Abreve O -40
+KPX Abreve Oacute -40
+KPX Abreve Ocircumflex -40
+KPX Abreve Odieresis -40
+KPX Abreve Ograve -40
+KPX Abreve Ohungarumlaut -40
+KPX Abreve Omacron -40
+KPX Abreve Oslash -40
+KPX Abreve Otilde -40
+KPX Abreve Q -40
+KPX Abreve T -90
+KPX Abreve Tcaron -90
+KPX Abreve Tcommaaccent -90
+KPX Abreve U -50
+KPX Abreve Uacute -50
+KPX Abreve Ucircumflex -50
+KPX Abreve Udieresis -50
+KPX Abreve Ugrave -50
+KPX Abreve Uhungarumlaut -50
+KPX Abreve Umacron -50
+KPX Abreve Uogonek -50
+KPX Abreve Uring -50
+KPX Abreve V -80
+KPX Abreve W -60
+KPX Abreve Y -110
+KPX Abreve Yacute -110
+KPX Abreve Ydieresis -110
+KPX Abreve u -30
+KPX Abreve uacute -30
+KPX Abreve ucircumflex -30
+KPX Abreve udieresis -30
+KPX Abreve ugrave -30
+KPX Abreve uhungarumlaut -30
+KPX Abreve umacron -30
+KPX Abreve uogonek -30
+KPX Abreve uring -30
+KPX Abreve v -40
+KPX Abreve w -30
+KPX Abreve y -30
+KPX Abreve yacute -30
+KPX Abreve ydieresis -30
+KPX Acircumflex C -40
+KPX Acircumflex Cacute -40
+KPX Acircumflex Ccaron -40
+KPX Acircumflex Ccedilla -40
+KPX Acircumflex G -50
+KPX Acircumflex Gbreve -50
+KPX Acircumflex Gcommaaccent -50
+KPX Acircumflex O -40
+KPX Acircumflex Oacute -40
+KPX Acircumflex Ocircumflex -40
+KPX Acircumflex Odieresis -40
+KPX Acircumflex Ograve -40
+KPX Acircumflex Ohungarumlaut -40
+KPX Acircumflex Omacron -40
+KPX Acircumflex Oslash -40
+KPX Acircumflex Otilde -40
+KPX Acircumflex Q -40
+KPX Acircumflex T -90
+KPX Acircumflex Tcaron -90
+KPX Acircumflex Tcommaaccent -90
+KPX Acircumflex U -50
+KPX Acircumflex Uacute -50
+KPX Acircumflex Ucircumflex -50
+KPX Acircumflex Udieresis -50
+KPX Acircumflex Ugrave -50
+KPX Acircumflex Uhungarumlaut -50
+KPX Acircumflex Umacron -50
+KPX Acircumflex Uogonek -50
+KPX Acircumflex Uring -50
+KPX Acircumflex V -80
+KPX Acircumflex W -60
+KPX Acircumflex Y -110
+KPX Acircumflex Yacute -110
+KPX Acircumflex Ydieresis -110
+KPX Acircumflex u -30
+KPX Acircumflex uacute -30
+KPX Acircumflex ucircumflex -30
+KPX Acircumflex udieresis -30
+KPX Acircumflex ugrave -30
+KPX Acircumflex uhungarumlaut -30
+KPX Acircumflex umacron -30
+KPX Acircumflex uogonek -30
+KPX Acircumflex uring -30
+KPX Acircumflex v -40
+KPX Acircumflex w -30
+KPX Acircumflex y -30
+KPX Acircumflex yacute -30
+KPX Acircumflex ydieresis -30
+KPX Adieresis C -40
+KPX Adieresis Cacute -40
+KPX Adieresis Ccaron -40
+KPX Adieresis Ccedilla -40
+KPX Adieresis G -50
+KPX Adieresis Gbreve -50
+KPX Adieresis Gcommaaccent -50
+KPX Adieresis O -40
+KPX Adieresis Oacute -40
+KPX Adieresis Ocircumflex -40
+KPX Adieresis Odieresis -40
+KPX Adieresis Ograve -40
+KPX Adieresis Ohungarumlaut -40
+KPX Adieresis Omacron -40
+KPX Adieresis Oslash -40
+KPX Adieresis Otilde -40
+KPX Adieresis Q -40
+KPX Adieresis T -90
+KPX Adieresis Tcaron -90
+KPX Adieresis Tcommaaccent -90
+KPX Adieresis U -50
+KPX Adieresis Uacute -50
+KPX Adieresis Ucircumflex -50
+KPX Adieresis Udieresis -50
+KPX Adieresis Ugrave -50
+KPX Adieresis Uhungarumlaut -50
+KPX Adieresis Umacron -50
+KPX Adieresis Uogonek -50
+KPX Adieresis Uring -50
+KPX Adieresis V -80
+KPX Adieresis W -60
+KPX Adieresis Y -110
+KPX Adieresis Yacute -110
+KPX Adieresis Ydieresis -110
+KPX Adieresis u -30
+KPX Adieresis uacute -30
+KPX Adieresis ucircumflex -30
+KPX Adieresis udieresis -30
+KPX Adieresis ugrave -30
+KPX Adieresis uhungarumlaut -30
+KPX Adieresis umacron -30
+KPX Adieresis uogonek -30
+KPX Adieresis uring -30
+KPX Adieresis v -40
+KPX Adieresis w -30
+KPX Adieresis y -30
+KPX Adieresis yacute -30
+KPX Adieresis ydieresis -30
+KPX Agrave C -40
+KPX Agrave Cacute -40
+KPX Agrave Ccaron -40
+KPX Agrave Ccedilla -40
+KPX Agrave G -50
+KPX Agrave Gbreve -50
+KPX Agrave Gcommaaccent -50
+KPX Agrave O -40
+KPX Agrave Oacute -40
+KPX Agrave Ocircumflex -40
+KPX Agrave Odieresis -40
+KPX Agrave Ograve -40
+KPX Agrave Ohungarumlaut -40
+KPX Agrave Omacron -40
+KPX Agrave Oslash -40
+KPX Agrave Otilde -40
+KPX Agrave Q -40
+KPX Agrave T -90
+KPX Agrave Tcaron -90
+KPX Agrave Tcommaaccent -90
+KPX Agrave U -50
+KPX Agrave Uacute -50
+KPX Agrave Ucircumflex -50
+KPX Agrave Udieresis -50
+KPX Agrave Ugrave -50
+KPX Agrave Uhungarumlaut -50
+KPX Agrave Umacron -50
+KPX Agrave Uogonek -50
+KPX Agrave Uring -50
+KPX Agrave V -80
+KPX Agrave W -60
+KPX Agrave Y -110
+KPX Agrave Yacute -110
+KPX Agrave Ydieresis -110
+KPX Agrave u -30
+KPX Agrave uacute -30
+KPX Agrave ucircumflex -30
+KPX Agrave udieresis -30
+KPX Agrave ugrave -30
+KPX Agrave uhungarumlaut -30
+KPX Agrave umacron -30
+KPX Agrave uogonek -30
+KPX Agrave uring -30
+KPX Agrave v -40
+KPX Agrave w -30
+KPX Agrave y -30
+KPX Agrave yacute -30
+KPX Agrave ydieresis -30
+KPX Amacron C -40
+KPX Amacron Cacute -40
+KPX Amacron Ccaron -40
+KPX Amacron Ccedilla -40
+KPX Amacron G -50
+KPX Amacron Gbreve -50
+KPX Amacron Gcommaaccent -50
+KPX Amacron O -40
+KPX Amacron Oacute -40
+KPX Amacron Ocircumflex -40
+KPX Amacron Odieresis -40
+KPX Amacron Ograve -40
+KPX Amacron Ohungarumlaut -40
+KPX Amacron Omacron -40
+KPX Amacron Oslash -40
+KPX Amacron Otilde -40
+KPX Amacron Q -40
+KPX Amacron T -90
+KPX Amacron Tcaron -90
+KPX Amacron Tcommaaccent -90
+KPX Amacron U -50
+KPX Amacron Uacute -50
+KPX Amacron Ucircumflex -50
+KPX Amacron Udieresis -50
+KPX Amacron Ugrave -50
+KPX Amacron Uhungarumlaut -50
+KPX Amacron Umacron -50
+KPX Amacron Uogonek -50
+KPX Amacron Uring -50
+KPX Amacron V -80
+KPX Amacron W -60
+KPX Amacron Y -110
+KPX Amacron Yacute -110
+KPX Amacron Ydieresis -110
+KPX Amacron u -30
+KPX Amacron uacute -30
+KPX Amacron ucircumflex -30
+KPX Amacron udieresis -30
+KPX Amacron ugrave -30
+KPX Amacron uhungarumlaut -30
+KPX Amacron umacron -30
+KPX Amacron uogonek -30
+KPX Amacron uring -30
+KPX Amacron v -40
+KPX Amacron w -30
+KPX Amacron y -30
+KPX Amacron yacute -30
+KPX Amacron ydieresis -30
+KPX Aogonek C -40
+KPX Aogonek Cacute -40
+KPX Aogonek Ccaron -40
+KPX Aogonek Ccedilla -40
+KPX Aogonek G -50
+KPX Aogonek Gbreve -50
+KPX Aogonek Gcommaaccent -50
+KPX Aogonek O -40
+KPX Aogonek Oacute -40
+KPX Aogonek Ocircumflex -40
+KPX Aogonek Odieresis -40
+KPX Aogonek Ograve -40
+KPX Aogonek Ohungarumlaut -40
+KPX Aogonek Omacron -40
+KPX Aogonek Oslash -40
+KPX Aogonek Otilde -40
+KPX Aogonek Q -40
+KPX Aogonek T -90
+KPX Aogonek Tcaron -90
+KPX Aogonek Tcommaaccent -90
+KPX Aogonek U -50
+KPX Aogonek Uacute -50
+KPX Aogonek Ucircumflex -50
+KPX Aogonek Udieresis -50
+KPX Aogonek Ugrave -50
+KPX Aogonek Uhungarumlaut -50
+KPX Aogonek Umacron -50
+KPX Aogonek Uogonek -50
+KPX Aogonek Uring -50
+KPX Aogonek V -80
+KPX Aogonek W -60
+KPX Aogonek Y -110
+KPX Aogonek Yacute -110
+KPX Aogonek Ydieresis -110
+KPX Aogonek u -30
+KPX Aogonek uacute -30
+KPX Aogonek ucircumflex -30
+KPX Aogonek udieresis -30
+KPX Aogonek ugrave -30
+KPX Aogonek uhungarumlaut -30
+KPX Aogonek umacron -30
+KPX Aogonek uogonek -30
+KPX Aogonek uring -30
+KPX Aogonek v -40
+KPX Aogonek w -30
+KPX Aogonek y -30
+KPX Aogonek yacute -30
+KPX Aogonek ydieresis -30
+KPX Aring C -40
+KPX Aring Cacute -40
+KPX Aring Ccaron -40
+KPX Aring Ccedilla -40
+KPX Aring G -50
+KPX Aring Gbreve -50
+KPX Aring Gcommaaccent -50
+KPX Aring O -40
+KPX Aring Oacute -40
+KPX Aring Ocircumflex -40
+KPX Aring Odieresis -40
+KPX Aring Ograve -40
+KPX Aring Ohungarumlaut -40
+KPX Aring Omacron -40
+KPX Aring Oslash -40
+KPX Aring Otilde -40
+KPX Aring Q -40
+KPX Aring T -90
+KPX Aring Tcaron -90
+KPX Aring Tcommaaccent -90
+KPX Aring U -50
+KPX Aring Uacute -50
+KPX Aring Ucircumflex -50
+KPX Aring Udieresis -50
+KPX Aring Ugrave -50
+KPX Aring Uhungarumlaut -50
+KPX Aring Umacron -50
+KPX Aring Uogonek -50
+KPX Aring Uring -50
+KPX Aring V -80
+KPX Aring W -60
+KPX Aring Y -110
+KPX Aring Yacute -110
+KPX Aring Ydieresis -110
+KPX Aring u -30
+KPX Aring uacute -30
+KPX Aring ucircumflex -30
+KPX Aring udieresis -30
+KPX Aring ugrave -30
+KPX Aring uhungarumlaut -30
+KPX Aring umacron -30
+KPX Aring uogonek -30
+KPX Aring uring -30
+KPX Aring v -40
+KPX Aring w -30
+KPX Aring y -30
+KPX Aring yacute -30
+KPX Aring ydieresis -30
+KPX Atilde C -40
+KPX Atilde Cacute -40
+KPX Atilde Ccaron -40
+KPX Atilde Ccedilla -40
+KPX Atilde G -50
+KPX Atilde Gbreve -50
+KPX Atilde Gcommaaccent -50
+KPX Atilde O -40
+KPX Atilde Oacute -40
+KPX Atilde Ocircumflex -40
+KPX Atilde Odieresis -40
+KPX Atilde Ograve -40
+KPX Atilde Ohungarumlaut -40
+KPX Atilde Omacron -40
+KPX Atilde Oslash -40
+KPX Atilde Otilde -40
+KPX Atilde Q -40
+KPX Atilde T -90
+KPX Atilde Tcaron -90
+KPX Atilde Tcommaaccent -90
+KPX Atilde U -50
+KPX Atilde Uacute -50
+KPX Atilde Ucircumflex -50
+KPX Atilde Udieresis -50
+KPX Atilde Ugrave -50
+KPX Atilde Uhungarumlaut -50
+KPX Atilde Umacron -50
+KPX Atilde Uogonek -50
+KPX Atilde Uring -50
+KPX Atilde V -80
+KPX Atilde W -60
+KPX Atilde Y -110
+KPX Atilde Yacute -110
+KPX Atilde Ydieresis -110
+KPX Atilde u -30
+KPX Atilde uacute -30
+KPX Atilde ucircumflex -30
+KPX Atilde udieresis -30
+KPX Atilde ugrave -30
+KPX Atilde uhungarumlaut -30
+KPX Atilde umacron -30
+KPX Atilde uogonek -30
+KPX Atilde uring -30
+KPX Atilde v -40
+KPX Atilde w -30
+KPX Atilde y -30
+KPX Atilde yacute -30
+KPX Atilde ydieresis -30
+KPX B A -30
+KPX B Aacute -30
+KPX B Abreve -30
+KPX B Acircumflex -30
+KPX B Adieresis -30
+KPX B Agrave -30
+KPX B Amacron -30
+KPX B Aogonek -30
+KPX B Aring -30
+KPX B Atilde -30
+KPX B U -10
+KPX B Uacute -10
+KPX B Ucircumflex -10
+KPX B Udieresis -10
+KPX B Ugrave -10
+KPX B Uhungarumlaut -10
+KPX B Umacron -10
+KPX B Uogonek -10
+KPX B Uring -10
+KPX D A -40
+KPX D Aacute -40
+KPX D Abreve -40
+KPX D Acircumflex -40
+KPX D Adieresis -40
+KPX D Agrave -40
+KPX D Amacron -40
+KPX D Aogonek -40
+KPX D Aring -40
+KPX D Atilde -40
+KPX D V -40
+KPX D W -40
+KPX D Y -70
+KPX D Yacute -70
+KPX D Ydieresis -70
+KPX D comma -30
+KPX D period -30
+KPX Dcaron A -40
+KPX Dcaron Aacute -40
+KPX Dcaron Abreve -40
+KPX Dcaron Acircumflex -40
+KPX Dcaron Adieresis -40
+KPX Dcaron Agrave -40
+KPX Dcaron Amacron -40
+KPX Dcaron Aogonek -40
+KPX Dcaron Aring -40
+KPX Dcaron Atilde -40
+KPX Dcaron V -40
+KPX Dcaron W -40
+KPX Dcaron Y -70
+KPX Dcaron Yacute -70
+KPX Dcaron Ydieresis -70
+KPX Dcaron comma -30
+KPX Dcaron period -30
+KPX Dcroat A -40
+KPX Dcroat Aacute -40
+KPX Dcroat Abreve -40
+KPX Dcroat Acircumflex -40
+KPX Dcroat Adieresis -40
+KPX Dcroat Agrave -40
+KPX Dcroat Amacron -40
+KPX Dcroat Aogonek -40
+KPX Dcroat Aring -40
+KPX Dcroat Atilde -40
+KPX Dcroat V -40
+KPX Dcroat W -40
+KPX Dcroat Y -70
+KPX Dcroat Yacute -70
+KPX Dcroat Ydieresis -70
+KPX Dcroat comma -30
+KPX Dcroat period -30
+KPX F A -80
+KPX F Aacute -80
+KPX F Abreve -80
+KPX F Acircumflex -80
+KPX F Adieresis -80
+KPX F Agrave -80
+KPX F Amacron -80
+KPX F Aogonek -80
+KPX F Aring -80
+KPX F Atilde -80
+KPX F a -20
+KPX F aacute -20
+KPX F abreve -20
+KPX F acircumflex -20
+KPX F adieresis -20
+KPX F agrave -20
+KPX F amacron -20
+KPX F aogonek -20
+KPX F aring -20
+KPX F atilde -20
+KPX F comma -100
+KPX F period -100
+KPX J A -20
+KPX J Aacute -20
+KPX J Abreve -20
+KPX J Acircumflex -20
+KPX J Adieresis -20
+KPX J Agrave -20
+KPX J Amacron -20
+KPX J Aogonek -20
+KPX J Aring -20
+KPX J Atilde -20
+KPX J comma -20
+KPX J period -20
+KPX J u -20
+KPX J uacute -20
+KPX J ucircumflex -20
+KPX J udieresis -20
+KPX J ugrave -20
+KPX J uhungarumlaut -20
+KPX J umacron -20
+KPX J uogonek -20
+KPX J uring -20
+KPX K O -30
+KPX K Oacute -30
+KPX K Ocircumflex -30
+KPX K Odieresis -30
+KPX K Ograve -30
+KPX K Ohungarumlaut -30
+KPX K Omacron -30
+KPX K Oslash -30
+KPX K Otilde -30
+KPX K e -15
+KPX K eacute -15
+KPX K ecaron -15
+KPX K ecircumflex -15
+KPX K edieresis -15
+KPX K edotaccent -15
+KPX K egrave -15
+KPX K emacron -15
+KPX K eogonek -15
+KPX K o -35
+KPX K oacute -35
+KPX K ocircumflex -35
+KPX K odieresis -35
+KPX K ograve -35
+KPX K ohungarumlaut -35
+KPX K omacron -35
+KPX K oslash -35
+KPX K otilde -35
+KPX K u -30
+KPX K uacute -30
+KPX K ucircumflex -30
+KPX K udieresis -30
+KPX K ugrave -30
+KPX K uhungarumlaut -30
+KPX K umacron -30
+KPX K uogonek -30
+KPX K uring -30
+KPX K y -40
+KPX K yacute -40
+KPX K ydieresis -40
+KPX Kcommaaccent O -30
+KPX Kcommaaccent Oacute -30
+KPX Kcommaaccent Ocircumflex -30
+KPX Kcommaaccent Odieresis -30
+KPX Kcommaaccent Ograve -30
+KPX Kcommaaccent Ohungarumlaut -30
+KPX Kcommaaccent Omacron -30
+KPX Kcommaaccent Oslash -30
+KPX Kcommaaccent Otilde -30
+KPX Kcommaaccent e -15
+KPX Kcommaaccent eacute -15
+KPX Kcommaaccent ecaron -15
+KPX Kcommaaccent ecircumflex -15
+KPX Kcommaaccent edieresis -15
+KPX Kcommaaccent edotaccent -15
+KPX Kcommaaccent egrave -15
+KPX Kcommaaccent emacron -15
+KPX Kcommaaccent eogonek -15
+KPX Kcommaaccent o -35
+KPX Kcommaaccent oacute -35
+KPX Kcommaaccent ocircumflex -35
+KPX Kcommaaccent odieresis -35
+KPX Kcommaaccent ograve -35
+KPX Kcommaaccent ohungarumlaut -35
+KPX Kcommaaccent omacron -35
+KPX Kcommaaccent oslash -35
+KPX Kcommaaccent otilde -35
+KPX Kcommaaccent u -30
+KPX Kcommaaccent uacute -30
+KPX Kcommaaccent ucircumflex -30
+KPX Kcommaaccent udieresis -30
+KPX Kcommaaccent ugrave -30
+KPX Kcommaaccent uhungarumlaut -30
+KPX Kcommaaccent umacron -30
+KPX Kcommaaccent uogonek -30
+KPX Kcommaaccent uring -30
+KPX Kcommaaccent y -40
+KPX Kcommaaccent yacute -40
+KPX Kcommaaccent ydieresis -40
+KPX L T -90
+KPX L Tcaron -90
+KPX L Tcommaaccent -90
+KPX L V -110
+KPX L W -80
+KPX L Y -120
+KPX L Yacute -120
+KPX L Ydieresis -120
+KPX L quotedblright -140
+KPX L quoteright -140
+KPX L y -30
+KPX L yacute -30
+KPX L ydieresis -30
+KPX Lacute T -90
+KPX Lacute Tcaron -90
+KPX Lacute Tcommaaccent -90
+KPX Lacute V -110
+KPX Lacute W -80
+KPX Lacute Y -120
+KPX Lacute Yacute -120
+KPX Lacute Ydieresis -120
+KPX Lacute quotedblright -140
+KPX Lacute quoteright -140
+KPX Lacute y -30
+KPX Lacute yacute -30
+KPX Lacute ydieresis -30
+KPX Lcommaaccent T -90
+KPX Lcommaaccent Tcaron -90
+KPX Lcommaaccent Tcommaaccent -90
+KPX Lcommaaccent V -110
+KPX Lcommaaccent W -80
+KPX Lcommaaccent Y -120
+KPX Lcommaaccent Yacute -120
+KPX Lcommaaccent Ydieresis -120
+KPX Lcommaaccent quotedblright -140
+KPX Lcommaaccent quoteright -140
+KPX Lcommaaccent y -30
+KPX Lcommaaccent yacute -30
+KPX Lcommaaccent ydieresis -30
+KPX Lslash T -90
+KPX Lslash Tcaron -90
+KPX Lslash Tcommaaccent -90
+KPX Lslash V -110
+KPX Lslash W -80
+KPX Lslash Y -120
+KPX Lslash Yacute -120
+KPX Lslash Ydieresis -120
+KPX Lslash quotedblright -140
+KPX Lslash quoteright -140
+KPX Lslash y -30
+KPX Lslash yacute -30
+KPX Lslash ydieresis -30
+KPX O A -50
+KPX O Aacute -50
+KPX O Abreve -50
+KPX O Acircumflex -50
+KPX O Adieresis -50
+KPX O Agrave -50
+KPX O Amacron -50
+KPX O Aogonek -50
+KPX O Aring -50
+KPX O Atilde -50
+KPX O T -40
+KPX O Tcaron -40
+KPX O Tcommaaccent -40
+KPX O V -50
+KPX O W -50
+KPX O X -50
+KPX O Y -70
+KPX O Yacute -70
+KPX O Ydieresis -70
+KPX O comma -40
+KPX O period -40
+KPX Oacute A -50
+KPX Oacute Aacute -50
+KPX Oacute Abreve -50
+KPX Oacute Acircumflex -50
+KPX Oacute Adieresis -50
+KPX Oacute Agrave -50
+KPX Oacute Amacron -50
+KPX Oacute Aogonek -50
+KPX Oacute Aring -50
+KPX Oacute Atilde -50
+KPX Oacute T -40
+KPX Oacute Tcaron -40
+KPX Oacute Tcommaaccent -40
+KPX Oacute V -50
+KPX Oacute W -50
+KPX Oacute X -50
+KPX Oacute Y -70
+KPX Oacute Yacute -70
+KPX Oacute Ydieresis -70
+KPX Oacute comma -40
+KPX Oacute period -40
+KPX Ocircumflex A -50
+KPX Ocircumflex Aacute -50
+KPX Ocircumflex Abreve -50
+KPX Ocircumflex Acircumflex -50
+KPX Ocircumflex Adieresis -50
+KPX Ocircumflex Agrave -50
+KPX Ocircumflex Amacron -50
+KPX Ocircumflex Aogonek -50
+KPX Ocircumflex Aring -50
+KPX Ocircumflex Atilde -50
+KPX Ocircumflex T -40
+KPX Ocircumflex Tcaron -40
+KPX Ocircumflex Tcommaaccent -40
+KPX Ocircumflex V -50
+KPX Ocircumflex W -50
+KPX Ocircumflex X -50
+KPX Ocircumflex Y -70
+KPX Ocircumflex Yacute -70
+KPX Ocircumflex Ydieresis -70
+KPX Ocircumflex comma -40
+KPX Ocircumflex period -40
+KPX Odieresis A -50
+KPX Odieresis Aacute -50
+KPX Odieresis Abreve -50
+KPX Odieresis Acircumflex -50
+KPX Odieresis Adieresis -50
+KPX Odieresis Agrave -50
+KPX Odieresis Amacron -50
+KPX Odieresis Aogonek -50
+KPX Odieresis Aring -50
+KPX Odieresis Atilde -50
+KPX Odieresis T -40
+KPX Odieresis Tcaron -40
+KPX Odieresis Tcommaaccent -40
+KPX Odieresis V -50
+KPX Odieresis W -50
+KPX Odieresis X -50
+KPX Odieresis Y -70
+KPX Odieresis Yacute -70
+KPX Odieresis Ydieresis -70
+KPX Odieresis comma -40
+KPX Odieresis period -40
+KPX Ograve A -50
+KPX Ograve Aacute -50
+KPX Ograve Abreve -50
+KPX Ograve Acircumflex -50
+KPX Ograve Adieresis -50
+KPX Ograve Agrave -50
+KPX Ograve Amacron -50
+KPX Ograve Aogonek -50
+KPX Ograve Aring -50
+KPX Ograve Atilde -50
+KPX Ograve T -40
+KPX Ograve Tcaron -40
+KPX Ograve Tcommaaccent -40
+KPX Ograve V -50
+KPX Ograve W -50
+KPX Ograve X -50
+KPX Ograve Y -70
+KPX Ograve Yacute -70
+KPX Ograve Ydieresis -70
+KPX Ograve comma -40
+KPX Ograve period -40
+KPX Ohungarumlaut A -50
+KPX Ohungarumlaut Aacute -50
+KPX Ohungarumlaut Abreve -50
+KPX Ohungarumlaut Acircumflex -50
+KPX Ohungarumlaut Adieresis -50
+KPX Ohungarumlaut Agrave -50
+KPX Ohungarumlaut Amacron -50
+KPX Ohungarumlaut Aogonek -50
+KPX Ohungarumlaut Aring -50
+KPX Ohungarumlaut Atilde -50
+KPX Ohungarumlaut T -40
+KPX Ohungarumlaut Tcaron -40
+KPX Ohungarumlaut Tcommaaccent -40
+KPX Ohungarumlaut V -50
+KPX Ohungarumlaut W -50
+KPX Ohungarumlaut X -50
+KPX Ohungarumlaut Y -70
+KPX Ohungarumlaut Yacute -70
+KPX Ohungarumlaut Ydieresis -70
+KPX Ohungarumlaut comma -40
+KPX Ohungarumlaut period -40
+KPX Omacron A -50
+KPX Omacron Aacute -50
+KPX Omacron Abreve -50
+KPX Omacron Acircumflex -50
+KPX Omacron Adieresis -50
+KPX Omacron Agrave -50
+KPX Omacron Amacron -50
+KPX Omacron Aogonek -50
+KPX Omacron Aring -50
+KPX Omacron Atilde -50
+KPX Omacron T -40
+KPX Omacron Tcaron -40
+KPX Omacron Tcommaaccent -40
+KPX Omacron V -50
+KPX Omacron W -50
+KPX Omacron X -50
+KPX Omacron Y -70
+KPX Omacron Yacute -70
+KPX Omacron Ydieresis -70
+KPX Omacron comma -40
+KPX Omacron period -40
+KPX Oslash A -50
+KPX Oslash Aacute -50
+KPX Oslash Abreve -50
+KPX Oslash Acircumflex -50
+KPX Oslash Adieresis -50
+KPX Oslash Agrave -50
+KPX Oslash Amacron -50
+KPX Oslash Aogonek -50
+KPX Oslash Aring -50
+KPX Oslash Atilde -50
+KPX Oslash T -40
+KPX Oslash Tcaron -40
+KPX Oslash Tcommaaccent -40
+KPX Oslash V -50
+KPX Oslash W -50
+KPX Oslash X -50
+KPX Oslash Y -70
+KPX Oslash Yacute -70
+KPX Oslash Ydieresis -70
+KPX Oslash comma -40
+KPX Oslash period -40
+KPX Otilde A -50
+KPX Otilde Aacute -50
+KPX Otilde Abreve -50
+KPX Otilde Acircumflex -50
+KPX Otilde Adieresis -50
+KPX Otilde Agrave -50
+KPX Otilde Amacron -50
+KPX Otilde Aogonek -50
+KPX Otilde Aring -50
+KPX Otilde Atilde -50
+KPX Otilde T -40
+KPX Otilde Tcaron -40
+KPX Otilde Tcommaaccent -40
+KPX Otilde V -50
+KPX Otilde W -50
+KPX Otilde X -50
+KPX Otilde Y -70
+KPX Otilde Yacute -70
+KPX Otilde Ydieresis -70
+KPX Otilde comma -40
+KPX Otilde period -40
+KPX P A -100
+KPX P Aacute -100
+KPX P Abreve -100
+KPX P Acircumflex -100
+KPX P Adieresis -100
+KPX P Agrave -100
+KPX P Amacron -100
+KPX P Aogonek -100
+KPX P Aring -100
+KPX P Atilde -100
+KPX P a -30
+KPX P aacute -30
+KPX P abreve -30
+KPX P acircumflex -30
+KPX P adieresis -30
+KPX P agrave -30
+KPX P amacron -30
+KPX P aogonek -30
+KPX P aring -30
+KPX P atilde -30
+KPX P comma -120
+KPX P e -30
+KPX P eacute -30
+KPX P ecaron -30
+KPX P ecircumflex -30
+KPX P edieresis -30
+KPX P edotaccent -30
+KPX P egrave -30
+KPX P emacron -30
+KPX P eogonek -30
+KPX P o -40
+KPX P oacute -40
+KPX P ocircumflex -40
+KPX P odieresis -40
+KPX P ograve -40
+KPX P ohungarumlaut -40
+KPX P omacron -40
+KPX P oslash -40
+KPX P otilde -40
+KPX P period -120
+KPX Q U -10
+KPX Q Uacute -10
+KPX Q Ucircumflex -10
+KPX Q Udieresis -10
+KPX Q Ugrave -10
+KPX Q Uhungarumlaut -10
+KPX Q Umacron -10
+KPX Q Uogonek -10
+KPX Q Uring -10
+KPX Q comma 20
+KPX Q period 20
+KPX R O -20
+KPX R Oacute -20
+KPX R Ocircumflex -20
+KPX R Odieresis -20
+KPX R Ograve -20
+KPX R Ohungarumlaut -20
+KPX R Omacron -20
+KPX R Oslash -20
+KPX R Otilde -20
+KPX R T -20
+KPX R Tcaron -20
+KPX R Tcommaaccent -20
+KPX R U -20
+KPX R Uacute -20
+KPX R Ucircumflex -20
+KPX R Udieresis -20
+KPX R Ugrave -20
+KPX R Uhungarumlaut -20
+KPX R Umacron -20
+KPX R Uogonek -20
+KPX R Uring -20
+KPX R V -50
+KPX R W -40
+KPX R Y -50
+KPX R Yacute -50
+KPX R Ydieresis -50
+KPX Racute O -20
+KPX Racute Oacute -20
+KPX Racute Ocircumflex -20
+KPX Racute Odieresis -20
+KPX Racute Ograve -20
+KPX Racute Ohungarumlaut -20
+KPX Racute Omacron -20
+KPX Racute Oslash -20
+KPX Racute Otilde -20
+KPX Racute T -20
+KPX Racute Tcaron -20
+KPX Racute Tcommaaccent -20
+KPX Racute U -20
+KPX Racute Uacute -20
+KPX Racute Ucircumflex -20
+KPX Racute Udieresis -20
+KPX Racute Ugrave -20
+KPX Racute Uhungarumlaut -20
+KPX Racute Umacron -20
+KPX Racute Uogonek -20
+KPX Racute Uring -20
+KPX Racute V -50
+KPX Racute W -40
+KPX Racute Y -50
+KPX Racute Yacute -50
+KPX Racute Ydieresis -50
+KPX Rcaron O -20
+KPX Rcaron Oacute -20
+KPX Rcaron Ocircumflex -20
+KPX Rcaron Odieresis -20
+KPX Rcaron Ograve -20
+KPX Rcaron Ohungarumlaut -20
+KPX Rcaron Omacron -20
+KPX Rcaron Oslash -20
+KPX Rcaron Otilde -20
+KPX Rcaron T -20
+KPX Rcaron Tcaron -20
+KPX Rcaron Tcommaaccent -20
+KPX Rcaron U -20
+KPX Rcaron Uacute -20
+KPX Rcaron Ucircumflex -20
+KPX Rcaron Udieresis -20
+KPX Rcaron Ugrave -20
+KPX Rcaron Uhungarumlaut -20
+KPX Rcaron Umacron -20
+KPX Rcaron Uogonek -20
+KPX Rcaron Uring -20
+KPX Rcaron V -50
+KPX Rcaron W -40
+KPX Rcaron Y -50
+KPX Rcaron Yacute -50
+KPX Rcaron Ydieresis -50
+KPX Rcommaaccent O -20
+KPX Rcommaaccent Oacute -20
+KPX Rcommaaccent Ocircumflex -20
+KPX Rcommaaccent Odieresis -20
+KPX Rcommaaccent Ograve -20
+KPX Rcommaaccent Ohungarumlaut -20
+KPX Rcommaaccent Omacron -20
+KPX Rcommaaccent Oslash -20
+KPX Rcommaaccent Otilde -20
+KPX Rcommaaccent T -20
+KPX Rcommaaccent Tcaron -20
+KPX Rcommaaccent Tcommaaccent -20
+KPX Rcommaaccent U -20
+KPX Rcommaaccent Uacute -20
+KPX Rcommaaccent Ucircumflex -20
+KPX Rcommaaccent Udieresis -20
+KPX Rcommaaccent Ugrave -20
+KPX Rcommaaccent Uhungarumlaut -20
+KPX Rcommaaccent Umacron -20
+KPX Rcommaaccent Uogonek -20
+KPX Rcommaaccent Uring -20
+KPX Rcommaaccent V -50
+KPX Rcommaaccent W -40
+KPX Rcommaaccent Y -50
+KPX Rcommaaccent Yacute -50
+KPX Rcommaaccent Ydieresis -50
+KPX T A -90
+KPX T Aacute -90
+KPX T Abreve -90
+KPX T Acircumflex -90
+KPX T Adieresis -90
+KPX T Agrave -90
+KPX T Amacron -90
+KPX T Aogonek -90
+KPX T Aring -90
+KPX T Atilde -90
+KPX T O -40
+KPX T Oacute -40
+KPX T Ocircumflex -40
+KPX T Odieresis -40
+KPX T Ograve -40
+KPX T Ohungarumlaut -40
+KPX T Omacron -40
+KPX T Oslash -40
+KPX T Otilde -40
+KPX T a -80
+KPX T aacute -80
+KPX T abreve -80
+KPX T acircumflex -80
+KPX T adieresis -80
+KPX T agrave -80
+KPX T amacron -80
+KPX T aogonek -80
+KPX T aring -80
+KPX T atilde -80
+KPX T colon -40
+KPX T comma -80
+KPX T e -60
+KPX T eacute -60
+KPX T ecaron -60
+KPX T ecircumflex -60
+KPX T edieresis -60
+KPX T edotaccent -60
+KPX T egrave -60
+KPX T emacron -60
+KPX T eogonek -60
+KPX T hyphen -120
+KPX T o -80
+KPX T oacute -80
+KPX T ocircumflex -80
+KPX T odieresis -80
+KPX T ograve -80
+KPX T ohungarumlaut -80
+KPX T omacron -80
+KPX T oslash -80
+KPX T otilde -80
+KPX T period -80
+KPX T r -80
+KPX T racute -80
+KPX T rcommaaccent -80
+KPX T semicolon -40
+KPX T u -90
+KPX T uacute -90
+KPX T ucircumflex -90
+KPX T udieresis -90
+KPX T ugrave -90
+KPX T uhungarumlaut -90
+KPX T umacron -90
+KPX T uogonek -90
+KPX T uring -90
+KPX T w -60
+KPX T y -60
+KPX T yacute -60
+KPX T ydieresis -60
+KPX Tcaron A -90
+KPX Tcaron Aacute -90
+KPX Tcaron Abreve -90
+KPX Tcaron Acircumflex -90
+KPX Tcaron Adieresis -90
+KPX Tcaron Agrave -90
+KPX Tcaron Amacron -90
+KPX Tcaron Aogonek -90
+KPX Tcaron Aring -90
+KPX Tcaron Atilde -90
+KPX Tcaron O -40
+KPX Tcaron Oacute -40
+KPX Tcaron Ocircumflex -40
+KPX Tcaron Odieresis -40
+KPX Tcaron Ograve -40
+KPX Tcaron Ohungarumlaut -40
+KPX Tcaron Omacron -40
+KPX Tcaron Oslash -40
+KPX Tcaron Otilde -40
+KPX Tcaron a -80
+KPX Tcaron aacute -80
+KPX Tcaron abreve -80
+KPX Tcaron acircumflex -80
+KPX Tcaron adieresis -80
+KPX Tcaron agrave -80
+KPX Tcaron amacron -80
+KPX Tcaron aogonek -80
+KPX Tcaron aring -80
+KPX Tcaron atilde -80
+KPX Tcaron colon -40
+KPX Tcaron comma -80
+KPX Tcaron e -60
+KPX Tcaron eacute -60
+KPX Tcaron ecaron -60
+KPX Tcaron ecircumflex -60
+KPX Tcaron edieresis -60
+KPX Tcaron edotaccent -60
+KPX Tcaron egrave -60
+KPX Tcaron emacron -60
+KPX Tcaron eogonek -60
+KPX Tcaron hyphen -120
+KPX Tcaron o -80
+KPX Tcaron oacute -80
+KPX Tcaron ocircumflex -80
+KPX Tcaron odieresis -80
+KPX Tcaron ograve -80
+KPX Tcaron ohungarumlaut -80
+KPX Tcaron omacron -80
+KPX Tcaron oslash -80
+KPX Tcaron otilde -80
+KPX Tcaron period -80
+KPX Tcaron r -80
+KPX Tcaron racute -80
+KPX Tcaron rcommaaccent -80
+KPX Tcaron semicolon -40
+KPX Tcaron u -90
+KPX Tcaron uacute -90
+KPX Tcaron ucircumflex -90
+KPX Tcaron udieresis -90
+KPX Tcaron ugrave -90
+KPX Tcaron uhungarumlaut -90
+KPX Tcaron umacron -90
+KPX Tcaron uogonek -90
+KPX Tcaron uring -90
+KPX Tcaron w -60
+KPX Tcaron y -60
+KPX Tcaron yacute -60
+KPX Tcaron ydieresis -60
+KPX Tcommaaccent A -90
+KPX Tcommaaccent Aacute -90
+KPX Tcommaaccent Abreve -90
+KPX Tcommaaccent Acircumflex -90
+KPX Tcommaaccent Adieresis -90
+KPX Tcommaaccent Agrave -90
+KPX Tcommaaccent Amacron -90
+KPX Tcommaaccent Aogonek -90
+KPX Tcommaaccent Aring -90
+KPX Tcommaaccent Atilde -90
+KPX Tcommaaccent O -40
+KPX Tcommaaccent Oacute -40
+KPX Tcommaaccent Ocircumflex -40
+KPX Tcommaaccent Odieresis -40
+KPX Tcommaaccent Ograve -40
+KPX Tcommaaccent Ohungarumlaut -40
+KPX Tcommaaccent Omacron -40
+KPX Tcommaaccent Oslash -40
+KPX Tcommaaccent Otilde -40
+KPX Tcommaaccent a -80
+KPX Tcommaaccent aacute -80
+KPX Tcommaaccent abreve -80
+KPX Tcommaaccent acircumflex -80
+KPX Tcommaaccent adieresis -80
+KPX Tcommaaccent agrave -80
+KPX Tcommaaccent amacron -80
+KPX Tcommaaccent aogonek -80
+KPX Tcommaaccent aring -80
+KPX Tcommaaccent atilde -80
+KPX Tcommaaccent colon -40
+KPX Tcommaaccent comma -80
+KPX Tcommaaccent e -60
+KPX Tcommaaccent eacute -60
+KPX Tcommaaccent ecaron -60
+KPX Tcommaaccent ecircumflex -60
+KPX Tcommaaccent edieresis -60
+KPX Tcommaaccent edotaccent -60
+KPX Tcommaaccent egrave -60
+KPX Tcommaaccent emacron -60
+KPX Tcommaaccent eogonek -60
+KPX Tcommaaccent hyphen -120
+KPX Tcommaaccent o -80
+KPX Tcommaaccent oacute -80
+KPX Tcommaaccent ocircumflex -80
+KPX Tcommaaccent odieresis -80
+KPX Tcommaaccent ograve -80
+KPX Tcommaaccent ohungarumlaut -80
+KPX Tcommaaccent omacron -80
+KPX Tcommaaccent oslash -80
+KPX Tcommaaccent otilde -80
+KPX Tcommaaccent period -80
+KPX Tcommaaccent r -80
+KPX Tcommaaccent racute -80
+KPX Tcommaaccent rcommaaccent -80
+KPX Tcommaaccent semicolon -40
+KPX Tcommaaccent u -90
+KPX Tcommaaccent uacute -90
+KPX Tcommaaccent ucircumflex -90
+KPX Tcommaaccent udieresis -90
+KPX Tcommaaccent ugrave -90
+KPX Tcommaaccent uhungarumlaut -90
+KPX Tcommaaccent umacron -90
+KPX Tcommaaccent uogonek -90
+KPX Tcommaaccent uring -90
+KPX Tcommaaccent w -60
+KPX Tcommaaccent y -60
+KPX Tcommaaccent yacute -60
+KPX Tcommaaccent ydieresis -60
+KPX U A -50
+KPX U Aacute -50
+KPX U Abreve -50
+KPX U Acircumflex -50
+KPX U Adieresis -50
+KPX U Agrave -50
+KPX U Amacron -50
+KPX U Aogonek -50
+KPX U Aring -50
+KPX U Atilde -50
+KPX U comma -30
+KPX U period -30
+KPX Uacute A -50
+KPX Uacute Aacute -50
+KPX Uacute Abreve -50
+KPX Uacute Acircumflex -50
+KPX Uacute Adieresis -50
+KPX Uacute Agrave -50
+KPX Uacute Amacron -50
+KPX Uacute Aogonek -50
+KPX Uacute Aring -50
+KPX Uacute Atilde -50
+KPX Uacute comma -30
+KPX Uacute period -30
+KPX Ucircumflex A -50
+KPX Ucircumflex Aacute -50
+KPX Ucircumflex Abreve -50
+KPX Ucircumflex Acircumflex -50
+KPX Ucircumflex Adieresis -50
+KPX Ucircumflex Agrave -50
+KPX Ucircumflex Amacron -50
+KPX Ucircumflex Aogonek -50
+KPX Ucircumflex Aring -50
+KPX Ucircumflex Atilde -50
+KPX Ucircumflex comma -30
+KPX Ucircumflex period -30
+KPX Udieresis A -50
+KPX Udieresis Aacute -50
+KPX Udieresis Abreve -50
+KPX Udieresis Acircumflex -50
+KPX Udieresis Adieresis -50
+KPX Udieresis Agrave -50
+KPX Udieresis Amacron -50
+KPX Udieresis Aogonek -50
+KPX Udieresis Aring -50
+KPX Udieresis Atilde -50
+KPX Udieresis comma -30
+KPX Udieresis period -30
+KPX Ugrave A -50
+KPX Ugrave Aacute -50
+KPX Ugrave Abreve -50
+KPX Ugrave Acircumflex -50
+KPX Ugrave Adieresis -50
+KPX Ugrave Agrave -50
+KPX Ugrave Amacron -50
+KPX Ugrave Aogonek -50
+KPX Ugrave Aring -50
+KPX Ugrave Atilde -50
+KPX Ugrave comma -30
+KPX Ugrave period -30
+KPX Uhungarumlaut A -50
+KPX Uhungarumlaut Aacute -50
+KPX Uhungarumlaut Abreve -50
+KPX Uhungarumlaut Acircumflex -50
+KPX Uhungarumlaut Adieresis -50
+KPX Uhungarumlaut Agrave -50
+KPX Uhungarumlaut Amacron -50
+KPX Uhungarumlaut Aogonek -50
+KPX Uhungarumlaut Aring -50
+KPX Uhungarumlaut Atilde -50
+KPX Uhungarumlaut comma -30
+KPX Uhungarumlaut period -30
+KPX Umacron A -50
+KPX Umacron Aacute -50
+KPX Umacron Abreve -50
+KPX Umacron Acircumflex -50
+KPX Umacron Adieresis -50
+KPX Umacron Agrave -50
+KPX Umacron Amacron -50
+KPX Umacron Aogonek -50
+KPX Umacron Aring -50
+KPX Umacron Atilde -50
+KPX Umacron comma -30
+KPX Umacron period -30
+KPX Uogonek A -50
+KPX Uogonek Aacute -50
+KPX Uogonek Abreve -50
+KPX Uogonek Acircumflex -50
+KPX Uogonek Adieresis -50
+KPX Uogonek Agrave -50
+KPX Uogonek Amacron -50
+KPX Uogonek Aogonek -50
+KPX Uogonek Aring -50
+KPX Uogonek Atilde -50
+KPX Uogonek comma -30
+KPX Uogonek period -30
+KPX Uring A -50
+KPX Uring Aacute -50
+KPX Uring Abreve -50
+KPX Uring Acircumflex -50
+KPX Uring Adieresis -50
+KPX Uring Agrave -50
+KPX Uring Amacron -50
+KPX Uring Aogonek -50
+KPX Uring Aring -50
+KPX Uring Atilde -50
+KPX Uring comma -30
+KPX Uring period -30
+KPX V A -80
+KPX V Aacute -80
+KPX V Abreve -80
+KPX V Acircumflex -80
+KPX V Adieresis -80
+KPX V Agrave -80
+KPX V Amacron -80
+KPX V Aogonek -80
+KPX V Aring -80
+KPX V Atilde -80
+KPX V G -50
+KPX V Gbreve -50
+KPX V Gcommaaccent -50
+KPX V O -50
+KPX V Oacute -50
+KPX V Ocircumflex -50
+KPX V Odieresis -50
+KPX V Ograve -50
+KPX V Ohungarumlaut -50
+KPX V Omacron -50
+KPX V Oslash -50
+KPX V Otilde -50
+KPX V a -60
+KPX V aacute -60
+KPX V abreve -60
+KPX V acircumflex -60
+KPX V adieresis -60
+KPX V agrave -60
+KPX V amacron -60
+KPX V aogonek -60
+KPX V aring -60
+KPX V atilde -60
+KPX V colon -40
+KPX V comma -120
+KPX V e -50
+KPX V eacute -50
+KPX V ecaron -50
+KPX V ecircumflex -50
+KPX V edieresis -50
+KPX V edotaccent -50
+KPX V egrave -50
+KPX V emacron -50
+KPX V eogonek -50
+KPX V hyphen -80
+KPX V o -90
+KPX V oacute -90
+KPX V ocircumflex -90
+KPX V odieresis -90
+KPX V ograve -90
+KPX V ohungarumlaut -90
+KPX V omacron -90
+KPX V oslash -90
+KPX V otilde -90
+KPX V period -120
+KPX V semicolon -40
+KPX V u -60
+KPX V uacute -60
+KPX V ucircumflex -60
+KPX V udieresis -60
+KPX V ugrave -60
+KPX V uhungarumlaut -60
+KPX V umacron -60
+KPX V uogonek -60
+KPX V uring -60
+KPX W A -60
+KPX W Aacute -60
+KPX W Abreve -60
+KPX W Acircumflex -60
+KPX W Adieresis -60
+KPX W Agrave -60
+KPX W Amacron -60
+KPX W Aogonek -60
+KPX W Aring -60
+KPX W Atilde -60
+KPX W O -20
+KPX W Oacute -20
+KPX W Ocircumflex -20
+KPX W Odieresis -20
+KPX W Ograve -20
+KPX W Ohungarumlaut -20
+KPX W Omacron -20
+KPX W Oslash -20
+KPX W Otilde -20
+KPX W a -40
+KPX W aacute -40
+KPX W abreve -40
+KPX W acircumflex -40
+KPX W adieresis -40
+KPX W agrave -40
+KPX W amacron -40
+KPX W aogonek -40
+KPX W aring -40
+KPX W atilde -40
+KPX W colon -10
+KPX W comma -80
+KPX W e -35
+KPX W eacute -35
+KPX W ecaron -35
+KPX W ecircumflex -35
+KPX W edieresis -35
+KPX W edotaccent -35
+KPX W egrave -35
+KPX W emacron -35
+KPX W eogonek -35
+KPX W hyphen -40
+KPX W o -60
+KPX W oacute -60
+KPX W ocircumflex -60
+KPX W odieresis -60
+KPX W ograve -60
+KPX W ohungarumlaut -60
+KPX W omacron -60
+KPX W oslash -60
+KPX W otilde -60
+KPX W period -80
+KPX W semicolon -10
+KPX W u -45
+KPX W uacute -45
+KPX W ucircumflex -45
+KPX W udieresis -45
+KPX W ugrave -45
+KPX W uhungarumlaut -45
+KPX W umacron -45
+KPX W uogonek -45
+KPX W uring -45
+KPX W y -20
+KPX W yacute -20
+KPX W ydieresis -20
+KPX Y A -110
+KPX Y Aacute -110
+KPX Y Abreve -110
+KPX Y Acircumflex -110
+KPX Y Adieresis -110
+KPX Y Agrave -110
+KPX Y Amacron -110
+KPX Y Aogonek -110
+KPX Y Aring -110
+KPX Y Atilde -110
+KPX Y O -70
+KPX Y Oacute -70
+KPX Y Ocircumflex -70
+KPX Y Odieresis -70
+KPX Y Ograve -70
+KPX Y Ohungarumlaut -70
+KPX Y Omacron -70
+KPX Y Oslash -70
+KPX Y Otilde -70
+KPX Y a -90
+KPX Y aacute -90
+KPX Y abreve -90
+KPX Y acircumflex -90
+KPX Y adieresis -90
+KPX Y agrave -90
+KPX Y amacron -90
+KPX Y aogonek -90
+KPX Y aring -90
+KPX Y atilde -90
+KPX Y colon -50
+KPX Y comma -100
+KPX Y e -80
+KPX Y eacute -80
+KPX Y ecaron -80
+KPX Y ecircumflex -80
+KPX Y edieresis -80
+KPX Y edotaccent -80
+KPX Y egrave -80
+KPX Y emacron -80
+KPX Y eogonek -80
+KPX Y o -100
+KPX Y oacute -100
+KPX Y ocircumflex -100
+KPX Y odieresis -100
+KPX Y ograve -100
+KPX Y ohungarumlaut -100
+KPX Y omacron -100
+KPX Y oslash -100
+KPX Y otilde -100
+KPX Y period -100
+KPX Y semicolon -50
+KPX Y u -100
+KPX Y uacute -100
+KPX Y ucircumflex -100
+KPX Y udieresis -100
+KPX Y ugrave -100
+KPX Y uhungarumlaut -100
+KPX Y umacron -100
+KPX Y uogonek -100
+KPX Y uring -100
+KPX Yacute A -110
+KPX Yacute Aacute -110
+KPX Yacute Abreve -110
+KPX Yacute Acircumflex -110
+KPX Yacute Adieresis -110
+KPX Yacute Agrave -110
+KPX Yacute Amacron -110
+KPX Yacute Aogonek -110
+KPX Yacute Aring -110
+KPX Yacute Atilde -110
+KPX Yacute O -70
+KPX Yacute Oacute -70
+KPX Yacute Ocircumflex -70
+KPX Yacute Odieresis -70
+KPX Yacute Ograve -70
+KPX Yacute Ohungarumlaut -70
+KPX Yacute Omacron -70
+KPX Yacute Oslash -70
+KPX Yacute Otilde -70
+KPX Yacute a -90
+KPX Yacute aacute -90
+KPX Yacute abreve -90
+KPX Yacute acircumflex -90
+KPX Yacute adieresis -90
+KPX Yacute agrave -90
+KPX Yacute amacron -90
+KPX Yacute aogonek -90
+KPX Yacute aring -90
+KPX Yacute atilde -90
+KPX Yacute colon -50
+KPX Yacute comma -100
+KPX Yacute e -80
+KPX Yacute eacute -80
+KPX Yacute ecaron -80
+KPX Yacute ecircumflex -80
+KPX Yacute edieresis -80
+KPX Yacute edotaccent -80
+KPX Yacute egrave -80
+KPX Yacute emacron -80
+KPX Yacute eogonek -80
+KPX Yacute o -100
+KPX Yacute oacute -100
+KPX Yacute ocircumflex -100
+KPX Yacute odieresis -100
+KPX Yacute ograve -100
+KPX Yacute ohungarumlaut -100
+KPX Yacute omacron -100
+KPX Yacute oslash -100
+KPX Yacute otilde -100
+KPX Yacute period -100
+KPX Yacute semicolon -50
+KPX Yacute u -100
+KPX Yacute uacute -100
+KPX Yacute ucircumflex -100
+KPX Yacute udieresis -100
+KPX Yacute ugrave -100
+KPX Yacute uhungarumlaut -100
+KPX Yacute umacron -100
+KPX Yacute uogonek -100
+KPX Yacute uring -100
+KPX Ydieresis A -110
+KPX Ydieresis Aacute -110
+KPX Ydieresis Abreve -110
+KPX Ydieresis Acircumflex -110
+KPX Ydieresis Adieresis -110
+KPX Ydieresis Agrave -110
+KPX Ydieresis Amacron -110
+KPX Ydieresis Aogonek -110
+KPX Ydieresis Aring -110
+KPX Ydieresis Atilde -110
+KPX Ydieresis O -70
+KPX Ydieresis Oacute -70
+KPX Ydieresis Ocircumflex -70
+KPX Ydieresis Odieresis -70
+KPX Ydieresis Ograve -70
+KPX Ydieresis Ohungarumlaut -70
+KPX Ydieresis Omacron -70
+KPX Ydieresis Oslash -70
+KPX Ydieresis Otilde -70
+KPX Ydieresis a -90
+KPX Ydieresis aacute -90
+KPX Ydieresis abreve -90
+KPX Ydieresis acircumflex -90
+KPX Ydieresis adieresis -90
+KPX Ydieresis agrave -90
+KPX Ydieresis amacron -90
+KPX Ydieresis aogonek -90
+KPX Ydieresis aring -90
+KPX Ydieresis atilde -90
+KPX Ydieresis colon -50
+KPX Ydieresis comma -100
+KPX Ydieresis e -80
+KPX Ydieresis eacute -80
+KPX Ydieresis ecaron -80
+KPX Ydieresis ecircumflex -80
+KPX Ydieresis edieresis -80
+KPX Ydieresis edotaccent -80
+KPX Ydieresis egrave -80
+KPX Ydieresis emacron -80
+KPX Ydieresis eogonek -80
+KPX Ydieresis o -100
+KPX Ydieresis oacute -100
+KPX Ydieresis ocircumflex -100
+KPX Ydieresis odieresis -100
+KPX Ydieresis ograve -100
+KPX Ydieresis ohungarumlaut -100
+KPX Ydieresis omacron -100
+KPX Ydieresis oslash -100
+KPX Ydieresis otilde -100
+KPX Ydieresis period -100
+KPX Ydieresis semicolon -50
+KPX Ydieresis u -100
+KPX Ydieresis uacute -100
+KPX Ydieresis ucircumflex -100
+KPX Ydieresis udieresis -100
+KPX Ydieresis ugrave -100
+KPX Ydieresis uhungarumlaut -100
+KPX Ydieresis umacron -100
+KPX Ydieresis uogonek -100
+KPX Ydieresis uring -100
+KPX a g -10
+KPX a gbreve -10
+KPX a gcommaaccent -10
+KPX a v -15
+KPX a w -15
+KPX a y -20
+KPX a yacute -20
+KPX a ydieresis -20
+KPX aacute g -10
+KPX aacute gbreve -10
+KPX aacute gcommaaccent -10
+KPX aacute v -15
+KPX aacute w -15
+KPX aacute y -20
+KPX aacute yacute -20
+KPX aacute ydieresis -20
+KPX abreve g -10
+KPX abreve gbreve -10
+KPX abreve gcommaaccent -10
+KPX abreve v -15
+KPX abreve w -15
+KPX abreve y -20
+KPX abreve yacute -20
+KPX abreve ydieresis -20
+KPX acircumflex g -10
+KPX acircumflex gbreve -10
+KPX acircumflex gcommaaccent -10
+KPX acircumflex v -15
+KPX acircumflex w -15
+KPX acircumflex y -20
+KPX acircumflex yacute -20
+KPX acircumflex ydieresis -20
+KPX adieresis g -10
+KPX adieresis gbreve -10
+KPX adieresis gcommaaccent -10
+KPX adieresis v -15
+KPX adieresis w -15
+KPX adieresis y -20
+KPX adieresis yacute -20
+KPX adieresis ydieresis -20
+KPX agrave g -10
+KPX agrave gbreve -10
+KPX agrave gcommaaccent -10
+KPX agrave v -15
+KPX agrave w -15
+KPX agrave y -20
+KPX agrave yacute -20
+KPX agrave ydieresis -20
+KPX amacron g -10
+KPX amacron gbreve -10
+KPX amacron gcommaaccent -10
+KPX amacron v -15
+KPX amacron w -15
+KPX amacron y -20
+KPX amacron yacute -20
+KPX amacron ydieresis -20
+KPX aogonek g -10
+KPX aogonek gbreve -10
+KPX aogonek gcommaaccent -10
+KPX aogonek v -15
+KPX aogonek w -15
+KPX aogonek y -20
+KPX aogonek yacute -20
+KPX aogonek ydieresis -20
+KPX aring g -10
+KPX aring gbreve -10
+KPX aring gcommaaccent -10
+KPX aring v -15
+KPX aring w -15
+KPX aring y -20
+KPX aring yacute -20
+KPX aring ydieresis -20
+KPX atilde g -10
+KPX atilde gbreve -10
+KPX atilde gcommaaccent -10
+KPX atilde v -15
+KPX atilde w -15
+KPX atilde y -20
+KPX atilde yacute -20
+KPX atilde ydieresis -20
+KPX b l -10
+KPX b lacute -10
+KPX b lcommaaccent -10
+KPX b lslash -10
+KPX b u -20
+KPX b uacute -20
+KPX b ucircumflex -20
+KPX b udieresis -20
+KPX b ugrave -20
+KPX b uhungarumlaut -20
+KPX b umacron -20
+KPX b uogonek -20
+KPX b uring -20
+KPX b v -20
+KPX b y -20
+KPX b yacute -20
+KPX b ydieresis -20
+KPX c h -10
+KPX c k -20
+KPX c kcommaaccent -20
+KPX c l -20
+KPX c lacute -20
+KPX c lcommaaccent -20
+KPX c lslash -20
+KPX c y -10
+KPX c yacute -10
+KPX c ydieresis -10
+KPX cacute h -10
+KPX cacute k -20
+KPX cacute kcommaaccent -20
+KPX cacute l -20
+KPX cacute lacute -20
+KPX cacute lcommaaccent -20
+KPX cacute lslash -20
+KPX cacute y -10
+KPX cacute yacute -10
+KPX cacute ydieresis -10
+KPX ccaron h -10
+KPX ccaron k -20
+KPX ccaron kcommaaccent -20
+KPX ccaron l -20
+KPX ccaron lacute -20
+KPX ccaron lcommaaccent -20
+KPX ccaron lslash -20
+KPX ccaron y -10
+KPX ccaron yacute -10
+KPX ccaron ydieresis -10
+KPX ccedilla h -10
+KPX ccedilla k -20
+KPX ccedilla kcommaaccent -20
+KPX ccedilla l -20
+KPX ccedilla lacute -20
+KPX ccedilla lcommaaccent -20
+KPX ccedilla lslash -20
+KPX ccedilla y -10
+KPX ccedilla yacute -10
+KPX ccedilla ydieresis -10
+KPX colon space -40
+KPX comma quotedblright -120
+KPX comma quoteright -120
+KPX comma space -40
+KPX d d -10
+KPX d dcroat -10
+KPX d v -15
+KPX d w -15
+KPX d y -15
+KPX d yacute -15
+KPX d ydieresis -15
+KPX dcroat d -10
+KPX dcroat dcroat -10
+KPX dcroat v -15
+KPX dcroat w -15
+KPX dcroat y -15
+KPX dcroat yacute -15
+KPX dcroat ydieresis -15
+KPX e comma 10
+KPX e period 20
+KPX e v -15
+KPX e w -15
+KPX e x -15
+KPX e y -15
+KPX e yacute -15
+KPX e ydieresis -15
+KPX eacute comma 10
+KPX eacute period 20
+KPX eacute v -15
+KPX eacute w -15
+KPX eacute x -15
+KPX eacute y -15
+KPX eacute yacute -15
+KPX eacute ydieresis -15
+KPX ecaron comma 10
+KPX ecaron period 20
+KPX ecaron v -15
+KPX ecaron w -15
+KPX ecaron x -15
+KPX ecaron y -15
+KPX ecaron yacute -15
+KPX ecaron ydieresis -15
+KPX ecircumflex comma 10
+KPX ecircumflex period 20
+KPX ecircumflex v -15
+KPX ecircumflex w -15
+KPX ecircumflex x -15
+KPX ecircumflex y -15
+KPX ecircumflex yacute -15
+KPX ecircumflex ydieresis -15
+KPX edieresis comma 10
+KPX edieresis period 20
+KPX edieresis v -15
+KPX edieresis w -15
+KPX edieresis x -15
+KPX edieresis y -15
+KPX edieresis yacute -15
+KPX edieresis ydieresis -15
+KPX edotaccent comma 10
+KPX edotaccent period 20
+KPX edotaccent v -15
+KPX edotaccent w -15
+KPX edotaccent x -15
+KPX edotaccent y -15
+KPX edotaccent yacute -15
+KPX edotaccent ydieresis -15
+KPX egrave comma 10
+KPX egrave period 20
+KPX egrave v -15
+KPX egrave w -15
+KPX egrave x -15
+KPX egrave y -15
+KPX egrave yacute -15
+KPX egrave ydieresis -15
+KPX emacron comma 10
+KPX emacron period 20
+KPX emacron v -15
+KPX emacron w -15
+KPX emacron x -15
+KPX emacron y -15
+KPX emacron yacute -15
+KPX emacron ydieresis -15
+KPX eogonek comma 10
+KPX eogonek period 20
+KPX eogonek v -15
+KPX eogonek w -15
+KPX eogonek x -15
+KPX eogonek y -15
+KPX eogonek yacute -15
+KPX eogonek ydieresis -15
+KPX f comma -10
+KPX f e -10
+KPX f eacute -10
+KPX f ecaron -10
+KPX f ecircumflex -10
+KPX f edieresis -10
+KPX f edotaccent -10
+KPX f egrave -10
+KPX f emacron -10
+KPX f eogonek -10
+KPX f o -20
+KPX f oacute -20
+KPX f ocircumflex -20
+KPX f odieresis -20
+KPX f ograve -20
+KPX f ohungarumlaut -20
+KPX f omacron -20
+KPX f oslash -20
+KPX f otilde -20
+KPX f period -10
+KPX f quotedblright 30
+KPX f quoteright 30
+KPX g e 10
+KPX g eacute 10
+KPX g ecaron 10
+KPX g ecircumflex 10
+KPX g edieresis 10
+KPX g edotaccent 10
+KPX g egrave 10
+KPX g emacron 10
+KPX g eogonek 10
+KPX g g -10
+KPX g gbreve -10
+KPX g gcommaaccent -10
+KPX gbreve e 10
+KPX gbreve eacute 10
+KPX gbreve ecaron 10
+KPX gbreve ecircumflex 10
+KPX gbreve edieresis 10
+KPX gbreve edotaccent 10
+KPX gbreve egrave 10
+KPX gbreve emacron 10
+KPX gbreve eogonek 10
+KPX gbreve g -10
+KPX gbreve gbreve -10
+KPX gbreve gcommaaccent -10
+KPX gcommaaccent e 10
+KPX gcommaaccent eacute 10
+KPX gcommaaccent ecaron 10
+KPX gcommaaccent ecircumflex 10
+KPX gcommaaccent edieresis 10
+KPX gcommaaccent edotaccent 10
+KPX gcommaaccent egrave 10
+KPX gcommaaccent emacron 10
+KPX gcommaaccent eogonek 10
+KPX gcommaaccent g -10
+KPX gcommaaccent gbreve -10
+KPX gcommaaccent gcommaaccent -10
+KPX h y -20
+KPX h yacute -20
+KPX h ydieresis -20
+KPX k o -15
+KPX k oacute -15
+KPX k ocircumflex -15
+KPX k odieresis -15
+KPX k ograve -15
+KPX k ohungarumlaut -15
+KPX k omacron -15
+KPX k oslash -15
+KPX k otilde -15
+KPX kcommaaccent o -15
+KPX kcommaaccent oacute -15
+KPX kcommaaccent ocircumflex -15
+KPX kcommaaccent odieresis -15
+KPX kcommaaccent ograve -15
+KPX kcommaaccent ohungarumlaut -15
+KPX kcommaaccent omacron -15
+KPX kcommaaccent oslash -15
+KPX kcommaaccent otilde -15
+KPX l w -15
+KPX l y -15
+KPX l yacute -15
+KPX l ydieresis -15
+KPX lacute w -15
+KPX lacute y -15
+KPX lacute yacute -15
+KPX lacute ydieresis -15
+KPX lcommaaccent w -15
+KPX lcommaaccent y -15
+KPX lcommaaccent yacute -15
+KPX lcommaaccent ydieresis -15
+KPX lslash w -15
+KPX lslash y -15
+KPX lslash yacute -15
+KPX lslash ydieresis -15
+KPX m u -20
+KPX m uacute -20
+KPX m ucircumflex -20
+KPX m udieresis -20
+KPX m ugrave -20
+KPX m uhungarumlaut -20
+KPX m umacron -20
+KPX m uogonek -20
+KPX m uring -20
+KPX m y -30
+KPX m yacute -30
+KPX m ydieresis -30
+KPX n u -10
+KPX n uacute -10
+KPX n ucircumflex -10
+KPX n udieresis -10
+KPX n ugrave -10
+KPX n uhungarumlaut -10
+KPX n umacron -10
+KPX n uogonek -10
+KPX n uring -10
+KPX n v -40
+KPX n y -20
+KPX n yacute -20
+KPX n ydieresis -20
+KPX nacute u -10
+KPX nacute uacute -10
+KPX nacute ucircumflex -10
+KPX nacute udieresis -10
+KPX nacute ugrave -10
+KPX nacute uhungarumlaut -10
+KPX nacute umacron -10
+KPX nacute uogonek -10
+KPX nacute uring -10
+KPX nacute v -40
+KPX nacute y -20
+KPX nacute yacute -20
+KPX nacute ydieresis -20
+KPX ncaron u -10
+KPX ncaron uacute -10
+KPX ncaron ucircumflex -10
+KPX ncaron udieresis -10
+KPX ncaron ugrave -10
+KPX ncaron uhungarumlaut -10
+KPX ncaron umacron -10
+KPX ncaron uogonek -10
+KPX ncaron uring -10
+KPX ncaron v -40
+KPX ncaron y -20
+KPX ncaron yacute -20
+KPX ncaron ydieresis -20
+KPX ncommaaccent u -10
+KPX ncommaaccent uacute -10
+KPX ncommaaccent ucircumflex -10
+KPX ncommaaccent udieresis -10
+KPX ncommaaccent ugrave -10
+KPX ncommaaccent uhungarumlaut -10
+KPX ncommaaccent umacron -10
+KPX ncommaaccent uogonek -10
+KPX ncommaaccent uring -10
+KPX ncommaaccent v -40
+KPX ncommaaccent y -20
+KPX ncommaaccent yacute -20
+KPX ncommaaccent ydieresis -20
+KPX ntilde u -10
+KPX ntilde uacute -10
+KPX ntilde ucircumflex -10
+KPX ntilde udieresis -10
+KPX ntilde ugrave -10
+KPX ntilde uhungarumlaut -10
+KPX ntilde umacron -10
+KPX ntilde uogonek -10
+KPX ntilde uring -10
+KPX ntilde v -40
+KPX ntilde y -20
+KPX ntilde yacute -20
+KPX ntilde ydieresis -20
+KPX o v -20
+KPX o w -15
+KPX o x -30
+KPX o y -20
+KPX o yacute -20
+KPX o ydieresis -20
+KPX oacute v -20
+KPX oacute w -15
+KPX oacute x -30
+KPX oacute y -20
+KPX oacute yacute -20
+KPX oacute ydieresis -20
+KPX ocircumflex v -20
+KPX ocircumflex w -15
+KPX ocircumflex x -30
+KPX ocircumflex y -20
+KPX ocircumflex yacute -20
+KPX ocircumflex ydieresis -20
+KPX odieresis v -20
+KPX odieresis w -15
+KPX odieresis x -30
+KPX odieresis y -20
+KPX odieresis yacute -20
+KPX odieresis ydieresis -20
+KPX ograve v -20
+KPX ograve w -15
+KPX ograve x -30
+KPX ograve y -20
+KPX ograve yacute -20
+KPX ograve ydieresis -20
+KPX ohungarumlaut v -20
+KPX ohungarumlaut w -15
+KPX ohungarumlaut x -30
+KPX ohungarumlaut y -20
+KPX ohungarumlaut yacute -20
+KPX ohungarumlaut ydieresis -20
+KPX omacron v -20
+KPX omacron w -15
+KPX omacron x -30
+KPX omacron y -20
+KPX omacron yacute -20
+KPX omacron ydieresis -20
+KPX oslash v -20
+KPX oslash w -15
+KPX oslash x -30
+KPX oslash y -20
+KPX oslash yacute -20
+KPX oslash ydieresis -20
+KPX otilde v -20
+KPX otilde w -15
+KPX otilde x -30
+KPX otilde y -20
+KPX otilde yacute -20
+KPX otilde ydieresis -20
+KPX p y -15
+KPX p yacute -15
+KPX p ydieresis -15
+KPX period quotedblright -120
+KPX period quoteright -120
+KPX period space -40
+KPX quotedblright space -80
+KPX quoteleft quoteleft -46
+KPX quoteright d -80
+KPX quoteright dcroat -80
+KPX quoteright l -20
+KPX quoteright lacute -20
+KPX quoteright lcommaaccent -20
+KPX quoteright lslash -20
+KPX quoteright quoteright -46
+KPX quoteright r -40
+KPX quoteright racute -40
+KPX quoteright rcaron -40
+KPX quoteright rcommaaccent -40
+KPX quoteright s -60
+KPX quoteright sacute -60
+KPX quoteright scaron -60
+KPX quoteright scedilla -60
+KPX quoteright scommaaccent -60
+KPX quoteright space -80
+KPX quoteright v -20
+KPX r c -20
+KPX r cacute -20
+KPX r ccaron -20
+KPX r ccedilla -20
+KPX r comma -60
+KPX r d -20
+KPX r dcroat -20
+KPX r g -15
+KPX r gbreve -15
+KPX r gcommaaccent -15
+KPX r hyphen -20
+KPX r o -20
+KPX r oacute -20
+KPX r ocircumflex -20
+KPX r odieresis -20
+KPX r ograve -20
+KPX r ohungarumlaut -20
+KPX r omacron -20
+KPX r oslash -20
+KPX r otilde -20
+KPX r period -60
+KPX r q -20
+KPX r s -15
+KPX r sacute -15
+KPX r scaron -15
+KPX r scedilla -15
+KPX r scommaaccent -15
+KPX r t 20
+KPX r tcommaaccent 20
+KPX r v 10
+KPX r y 10
+KPX r yacute 10
+KPX r ydieresis 10
+KPX racute c -20
+KPX racute cacute -20
+KPX racute ccaron -20
+KPX racute ccedilla -20
+KPX racute comma -60
+KPX racute d -20
+KPX racute dcroat -20
+KPX racute g -15
+KPX racute gbreve -15
+KPX racute gcommaaccent -15
+KPX racute hyphen -20
+KPX racute o -20
+KPX racute oacute -20
+KPX racute ocircumflex -20
+KPX racute odieresis -20
+KPX racute ograve -20
+KPX racute ohungarumlaut -20
+KPX racute omacron -20
+KPX racute oslash -20
+KPX racute otilde -20
+KPX racute period -60
+KPX racute q -20
+KPX racute s -15
+KPX racute sacute -15
+KPX racute scaron -15
+KPX racute scedilla -15
+KPX racute scommaaccent -15
+KPX racute t 20
+KPX racute tcommaaccent 20
+KPX racute v 10
+KPX racute y 10
+KPX racute yacute 10
+KPX racute ydieresis 10
+KPX rcaron c -20
+KPX rcaron cacute -20
+KPX rcaron ccaron -20
+KPX rcaron ccedilla -20
+KPX rcaron comma -60
+KPX rcaron d -20
+KPX rcaron dcroat -20
+KPX rcaron g -15
+KPX rcaron gbreve -15
+KPX rcaron gcommaaccent -15
+KPX rcaron hyphen -20
+KPX rcaron o -20
+KPX rcaron oacute -20
+KPX rcaron ocircumflex -20
+KPX rcaron odieresis -20
+KPX rcaron ograve -20
+KPX rcaron ohungarumlaut -20
+KPX rcaron omacron -20
+KPX rcaron oslash -20
+KPX rcaron otilde -20
+KPX rcaron period -60
+KPX rcaron q -20
+KPX rcaron s -15
+KPX rcaron sacute -15
+KPX rcaron scaron -15
+KPX rcaron scedilla -15
+KPX rcaron scommaaccent -15
+KPX rcaron t 20
+KPX rcaron tcommaaccent 20
+KPX rcaron v 10
+KPX rcaron y 10
+KPX rcaron yacute 10
+KPX rcaron ydieresis 10
+KPX rcommaaccent c -20
+KPX rcommaaccent cacute -20
+KPX rcommaaccent ccaron -20
+KPX rcommaaccent ccedilla -20
+KPX rcommaaccent comma -60
+KPX rcommaaccent d -20
+KPX rcommaaccent dcroat -20
+KPX rcommaaccent g -15
+KPX rcommaaccent gbreve -15
+KPX rcommaaccent gcommaaccent -15
+KPX rcommaaccent hyphen -20
+KPX rcommaaccent o -20
+KPX rcommaaccent oacute -20
+KPX rcommaaccent ocircumflex -20
+KPX rcommaaccent odieresis -20
+KPX rcommaaccent ograve -20
+KPX rcommaaccent ohungarumlaut -20
+KPX rcommaaccent omacron -20
+KPX rcommaaccent oslash -20
+KPX rcommaaccent otilde -20
+KPX rcommaaccent period -60
+KPX rcommaaccent q -20
+KPX rcommaaccent s -15
+KPX rcommaaccent sacute -15
+KPX rcommaaccent scaron -15
+KPX rcommaaccent scedilla -15
+KPX rcommaaccent scommaaccent -15
+KPX rcommaaccent t 20
+KPX rcommaaccent tcommaaccent 20
+KPX rcommaaccent v 10
+KPX rcommaaccent y 10
+KPX rcommaaccent yacute 10
+KPX rcommaaccent ydieresis 10
+KPX s w -15
+KPX sacute w -15
+KPX scaron w -15
+KPX scedilla w -15
+KPX scommaaccent w -15
+KPX semicolon space -40
+KPX space T -100
+KPX space Tcaron -100
+KPX space Tcommaaccent -100
+KPX space V -80
+KPX space W -80
+KPX space Y -120
+KPX space Yacute -120
+KPX space Ydieresis -120
+KPX space quotedblleft -80
+KPX space quoteleft -60
+KPX v a -20
+KPX v aacute -20
+KPX v abreve -20
+KPX v acircumflex -20
+KPX v adieresis -20
+KPX v agrave -20
+KPX v amacron -20
+KPX v aogonek -20
+KPX v aring -20
+KPX v atilde -20
+KPX v comma -80
+KPX v o -30
+KPX v oacute -30
+KPX v ocircumflex -30
+KPX v odieresis -30
+KPX v ograve -30
+KPX v ohungarumlaut -30
+KPX v omacron -30
+KPX v oslash -30
+KPX v otilde -30
+KPX v period -80
+KPX w comma -40
+KPX w o -20
+KPX w oacute -20
+KPX w ocircumflex -20
+KPX w odieresis -20
+KPX w ograve -20
+KPX w ohungarumlaut -20
+KPX w omacron -20
+KPX w oslash -20
+KPX w otilde -20
+KPX w period -40
+KPX x e -10
+KPX x eacute -10
+KPX x ecaron -10
+KPX x ecircumflex -10
+KPX x edieresis -10
+KPX x edotaccent -10
+KPX x egrave -10
+KPX x emacron -10
+KPX x eogonek -10
+KPX y a -30
+KPX y aacute -30
+KPX y abreve -30
+KPX y acircumflex -30
+KPX y adieresis -30
+KPX y agrave -30
+KPX y amacron -30
+KPX y aogonek -30
+KPX y aring -30
+KPX y atilde -30
+KPX y comma -80
+KPX y e -10
+KPX y eacute -10
+KPX y ecaron -10
+KPX y ecircumflex -10
+KPX y edieresis -10
+KPX y edotaccent -10
+KPX y egrave -10
+KPX y emacron -10
+KPX y eogonek -10
+KPX y o -25
+KPX y oacute -25
+KPX y ocircumflex -25
+KPX y odieresis -25
+KPX y ograve -25
+KPX y ohungarumlaut -25
+KPX y omacron -25
+KPX y oslash -25
+KPX y otilde -25
+KPX y period -80
+KPX yacute a -30
+KPX yacute aacute -30
+KPX yacute abreve -30
+KPX yacute acircumflex -30
+KPX yacute adieresis -30
+KPX yacute agrave -30
+KPX yacute amacron -30
+KPX yacute aogonek -30
+KPX yacute aring -30
+KPX yacute atilde -30
+KPX yacute comma -80
+KPX yacute e -10
+KPX yacute eacute -10
+KPX yacute ecaron -10
+KPX yacute ecircumflex -10
+KPX yacute edieresis -10
+KPX yacute edotaccent -10
+KPX yacute egrave -10
+KPX yacute emacron -10
+KPX yacute eogonek -10
+KPX yacute o -25
+KPX yacute oacute -25
+KPX yacute ocircumflex -25
+KPX yacute odieresis -25
+KPX yacute ograve -25
+KPX yacute ohungarumlaut -25
+KPX yacute omacron -25
+KPX yacute oslash -25
+KPX yacute otilde -25
+KPX yacute period -80
+KPX ydieresis a -30
+KPX ydieresis aacute -30
+KPX ydieresis abreve -30
+KPX ydieresis acircumflex -30
+KPX ydieresis adieresis -30
+KPX ydieresis agrave -30
+KPX ydieresis amacron -30
+KPX ydieresis aogonek -30
+KPX ydieresis aring -30
+KPX ydieresis atilde -30
+KPX ydieresis comma -80
+KPX ydieresis e -10
+KPX ydieresis eacute -10
+KPX ydieresis ecaron -10
+KPX ydieresis ecircumflex -10
+KPX ydieresis edieresis -10
+KPX ydieresis edotaccent -10
+KPX ydieresis egrave -10
+KPX ydieresis emacron -10
+KPX ydieresis eogonek -10
+KPX ydieresis o -25
+KPX ydieresis oacute -25
+KPX ydieresis ocircumflex -25
+KPX ydieresis odieresis -25
+KPX ydieresis ograve -25
+KPX ydieresis ohungarumlaut -25
+KPX ydieresis omacron -25
+KPX ydieresis oslash -25
+KPX ydieresis otilde -25
+KPX ydieresis period -80
+KPX z e 10
+KPX z eacute 10
+KPX z ecaron 10
+KPX z ecircumflex 10
+KPX z edieresis 10
+KPX z edotaccent 10
+KPX z egrave 10
+KPX z emacron 10
+KPX z eogonek 10
+KPX zacute e 10
+KPX zacute eacute 10
+KPX zacute ecaron 10
+KPX zacute ecircumflex 10
+KPX zacute edieresis 10
+KPX zacute edotaccent 10
+KPX zacute egrave 10
+KPX zacute emacron 10
+KPX zacute eogonek 10
+KPX zcaron e 10
+KPX zcaron eacute 10
+KPX zcaron ecaron 10
+KPX zcaron ecircumflex 10
+KPX zcaron edieresis 10
+KPX zcaron edotaccent 10
+KPX zcaron egrave 10
+KPX zcaron emacron 10
+KPX zcaron eogonek 10
+KPX zdotaccent e 10
+KPX zdotaccent eacute 10
+KPX zdotaccent ecaron 10
+KPX zdotaccent ecircumflex 10
+KPX zdotaccent edieresis 10
+KPX zdotaccent edotaccent 10
+KPX zdotaccent egrave 10
+KPX zdotaccent emacron 10
+KPX zdotaccent eogonek 10
+EndKernPairs
+EndKernData
+EndFontMetrics
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Helvetica-BoldOblique.afm b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Helvetica-BoldOblique.afm
new file mode 100755
index 00000000..1715b210
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Helvetica-BoldOblique.afm
@@ -0,0 +1,2827 @@
+StartFontMetrics 4.1
+Comment Copyright (c) 1985, 1987, 1989, 1990, 1997 Adobe Systems Incorporated. All Rights Reserved.
+Comment Creation Date: Thu May 1 12:45:12 1997
+Comment UniqueID 43053
+Comment VMusage 14482 68586
+FontName Helvetica-BoldOblique
+FullName Helvetica Bold Oblique
+FamilyName Helvetica
+Weight Bold
+ItalicAngle -12
+IsFixedPitch false
+CharacterSet ExtendedRoman
+FontBBox -174 -228 1114 962
+UnderlinePosition -100
+UnderlineThickness 50
+Version 002.000
+Notice Copyright (c) 1985, 1987, 1989, 1990, 1997 Adobe Systems Incorporated. All Rights Reserved.Helvetica is a trademark of Linotype-Hell AG and/or its subsidiaries.
+EncodingScheme AdobeStandardEncoding
+CapHeight 718
+XHeight 532
+Ascender 718
+Descender -207
+StdHW 118
+StdVW 140
+StartCharMetrics 315
+C 32 ; WX 278 ; N space ; B 0 0 0 0 ;
+C 33 ; WX 333 ; N exclam ; B 94 0 397 718 ;
+C 34 ; WX 474 ; N quotedbl ; B 193 447 529 718 ;
+C 35 ; WX 556 ; N numbersign ; B 60 0 644 698 ;
+C 36 ; WX 556 ; N dollar ; B 67 -115 622 775 ;
+C 37 ; WX 889 ; N percent ; B 136 -19 901 710 ;
+C 38 ; WX 722 ; N ampersand ; B 89 -19 732 718 ;
+C 39 ; WX 278 ; N quoteright ; B 167 445 362 718 ;
+C 40 ; WX 333 ; N parenleft ; B 76 -208 470 734 ;
+C 41 ; WX 333 ; N parenright ; B -25 -208 369 734 ;
+C 42 ; WX 389 ; N asterisk ; B 146 387 481 718 ;
+C 43 ; WX 584 ; N plus ; B 82 0 610 506 ;
+C 44 ; WX 278 ; N comma ; B 28 -168 245 146 ;
+C 45 ; WX 333 ; N hyphen ; B 73 215 379 345 ;
+C 46 ; WX 278 ; N period ; B 64 0 245 146 ;
+C 47 ; WX 278 ; N slash ; B -37 -19 468 737 ;
+C 48 ; WX 556 ; N zero ; B 86 -19 617 710 ;
+C 49 ; WX 556 ; N one ; B 173 0 529 710 ;
+C 50 ; WX 556 ; N two ; B 26 0 619 710 ;
+C 51 ; WX 556 ; N three ; B 65 -19 608 710 ;
+C 52 ; WX 556 ; N four ; B 60 0 598 710 ;
+C 53 ; WX 556 ; N five ; B 64 -19 636 698 ;
+C 54 ; WX 556 ; N six ; B 85 -19 619 710 ;
+C 55 ; WX 556 ; N seven ; B 125 0 676 698 ;
+C 56 ; WX 556 ; N eight ; B 69 -19 616 710 ;
+C 57 ; WX 556 ; N nine ; B 78 -19 615 710 ;
+C 58 ; WX 333 ; N colon ; B 92 0 351 512 ;
+C 59 ; WX 333 ; N semicolon ; B 56 -168 351 512 ;
+C 60 ; WX 584 ; N less ; B 82 -8 655 514 ;
+C 61 ; WX 584 ; N equal ; B 58 87 633 419 ;
+C 62 ; WX 584 ; N greater ; B 36 -8 609 514 ;
+C 63 ; WX 611 ; N question ; B 165 0 671 727 ;
+C 64 ; WX 975 ; N at ; B 186 -19 954 737 ;
+C 65 ; WX 722 ; N A ; B 20 0 702 718 ;
+C 66 ; WX 722 ; N B ; B 76 0 764 718 ;
+C 67 ; WX 722 ; N C ; B 107 -19 789 737 ;
+C 68 ; WX 722 ; N D ; B 76 0 777 718 ;
+C 69 ; WX 667 ; N E ; B 76 0 757 718 ;
+C 70 ; WX 611 ; N F ; B 76 0 740 718 ;
+C 71 ; WX 778 ; N G ; B 108 -19 817 737 ;
+C 72 ; WX 722 ; N H ; B 71 0 804 718 ;
+C 73 ; WX 278 ; N I ; B 64 0 367 718 ;
+C 74 ; WX 556 ; N J ; B 60 -18 637 718 ;
+C 75 ; WX 722 ; N K ; B 87 0 858 718 ;
+C 76 ; WX 611 ; N L ; B 76 0 611 718 ;
+C 77 ; WX 833 ; N M ; B 69 0 918 718 ;
+C 78 ; WX 722 ; N N ; B 69 0 807 718 ;
+C 79 ; WX 778 ; N O ; B 107 -19 823 737 ;
+C 80 ; WX 667 ; N P ; B 76 0 738 718 ;
+C 81 ; WX 778 ; N Q ; B 107 -52 823 737 ;
+C 82 ; WX 722 ; N R ; B 76 0 778 718 ;
+C 83 ; WX 667 ; N S ; B 81 -19 718 737 ;
+C 84 ; WX 611 ; N T ; B 140 0 751 718 ;
+C 85 ; WX 722 ; N U ; B 116 -19 804 718 ;
+C 86 ; WX 667 ; N V ; B 172 0 801 718 ;
+C 87 ; WX 944 ; N W ; B 169 0 1082 718 ;
+C 88 ; WX 667 ; N X ; B 14 0 791 718 ;
+C 89 ; WX 667 ; N Y ; B 168 0 806 718 ;
+C 90 ; WX 611 ; N Z ; B 25 0 737 718 ;
+C 91 ; WX 333 ; N bracketleft ; B 21 -196 462 722 ;
+C 92 ; WX 278 ; N backslash ; B 124 -19 307 737 ;
+C 93 ; WX 333 ; N bracketright ; B -18 -196 423 722 ;
+C 94 ; WX 584 ; N asciicircum ; B 131 323 591 698 ;
+C 95 ; WX 556 ; N underscore ; B -27 -125 540 -75 ;
+C 96 ; WX 278 ; N quoteleft ; B 165 454 361 727 ;
+C 97 ; WX 556 ; N a ; B 55 -14 583 546 ;
+C 98 ; WX 611 ; N b ; B 61 -14 645 718 ;
+C 99 ; WX 556 ; N c ; B 79 -14 599 546 ;
+C 100 ; WX 611 ; N d ; B 82 -14 704 718 ;
+C 101 ; WX 556 ; N e ; B 70 -14 593 546 ;
+C 102 ; WX 333 ; N f ; B 87 0 469 727 ; L i fi ; L l fl ;
+C 103 ; WX 611 ; N g ; B 38 -217 666 546 ;
+C 104 ; WX 611 ; N h ; B 65 0 629 718 ;
+C 105 ; WX 278 ; N i ; B 69 0 363 725 ;
+C 106 ; WX 278 ; N j ; B -42 -214 363 725 ;
+C 107 ; WX 556 ; N k ; B 69 0 670 718 ;
+C 108 ; WX 278 ; N l ; B 69 0 362 718 ;
+C 109 ; WX 889 ; N m ; B 64 0 909 546 ;
+C 110 ; WX 611 ; N n ; B 65 0 629 546 ;
+C 111 ; WX 611 ; N o ; B 82 -14 643 546 ;
+C 112 ; WX 611 ; N p ; B 18 -207 645 546 ;
+C 113 ; WX 611 ; N q ; B 80 -207 665 546 ;
+C 114 ; WX 389 ; N r ; B 64 0 489 546 ;
+C 115 ; WX 556 ; N s ; B 63 -14 584 546 ;
+C 116 ; WX 333 ; N t ; B 100 -6 422 676 ;
+C 117 ; WX 611 ; N u ; B 98 -14 658 532 ;
+C 118 ; WX 556 ; N v ; B 126 0 656 532 ;
+C 119 ; WX 778 ; N w ; B 123 0 882 532 ;
+C 120 ; WX 556 ; N x ; B 15 0 648 532 ;
+C 121 ; WX 556 ; N y ; B 42 -214 652 532 ;
+C 122 ; WX 500 ; N z ; B 20 0 583 532 ;
+C 123 ; WX 389 ; N braceleft ; B 94 -196 518 722 ;
+C 124 ; WX 280 ; N bar ; B 36 -225 361 775 ;
+C 125 ; WX 389 ; N braceright ; B -18 -196 407 722 ;
+C 126 ; WX 584 ; N asciitilde ; B 115 163 577 343 ;
+C 161 ; WX 333 ; N exclamdown ; B 50 -186 353 532 ;
+C 162 ; WX 556 ; N cent ; B 79 -118 599 628 ;
+C 163 ; WX 556 ; N sterling ; B 50 -16 635 718 ;
+C 164 ; WX 167 ; N fraction ; B -174 -19 487 710 ;
+C 165 ; WX 556 ; N yen ; B 60 0 713 698 ;
+C 166 ; WX 556 ; N florin ; B -50 -210 669 737 ;
+C 167 ; WX 556 ; N section ; B 61 -184 598 727 ;
+C 168 ; WX 556 ; N currency ; B 27 76 680 636 ;
+C 169 ; WX 238 ; N quotesingle ; B 165 447 321 718 ;
+C 170 ; WX 500 ; N quotedblleft ; B 160 454 588 727 ;
+C 171 ; WX 556 ; N guillemotleft ; B 135 76 571 484 ;
+C 172 ; WX 333 ; N guilsinglleft ; B 130 76 353 484 ;
+C 173 ; WX 333 ; N guilsinglright ; B 99 76 322 484 ;
+C 174 ; WX 611 ; N fi ; B 87 0 696 727 ;
+C 175 ; WX 611 ; N fl ; B 87 0 695 727 ;
+C 177 ; WX 556 ; N endash ; B 48 227 627 333 ;
+C 178 ; WX 556 ; N dagger ; B 118 -171 626 718 ;
+C 179 ; WX 556 ; N daggerdbl ; B 46 -171 628 718 ;
+C 180 ; WX 278 ; N periodcentered ; B 110 172 276 334 ;
+C 182 ; WX 556 ; N paragraph ; B 98 -191 688 700 ;
+C 183 ; WX 350 ; N bullet ; B 83 194 420 524 ;
+C 184 ; WX 278 ; N quotesinglbase ; B 41 -146 236 127 ;
+C 185 ; WX 500 ; N quotedblbase ; B 36 -146 463 127 ;
+C 186 ; WX 500 ; N quotedblright ; B 162 445 589 718 ;
+C 187 ; WX 556 ; N guillemotright ; B 104 76 540 484 ;
+C 188 ; WX 1000 ; N ellipsis ; B 92 0 939 146 ;
+C 189 ; WX 1000 ; N perthousand ; B 76 -19 1038 710 ;
+C 191 ; WX 611 ; N questiondown ; B 53 -195 559 532 ;
+C 193 ; WX 333 ; N grave ; B 136 604 353 750 ;
+C 194 ; WX 333 ; N acute ; B 236 604 515 750 ;
+C 195 ; WX 333 ; N circumflex ; B 118 604 471 750 ;
+C 196 ; WX 333 ; N tilde ; B 113 610 507 737 ;
+C 197 ; WX 333 ; N macron ; B 122 604 483 678 ;
+C 198 ; WX 333 ; N breve ; B 156 604 494 750 ;
+C 199 ; WX 333 ; N dotaccent ; B 235 614 385 729 ;
+C 200 ; WX 333 ; N dieresis ; B 137 614 482 729 ;
+C 202 ; WX 333 ; N ring ; B 200 568 420 776 ;
+C 203 ; WX 333 ; N cedilla ; B -37 -228 220 0 ;
+C 205 ; WX 333 ; N hungarumlaut ; B 137 604 645 750 ;
+C 206 ; WX 333 ; N ogonek ; B 41 -228 264 0 ;
+C 207 ; WX 333 ; N caron ; B 149 604 502 750 ;
+C 208 ; WX 1000 ; N emdash ; B 48 227 1071 333 ;
+C 225 ; WX 1000 ; N AE ; B 5 0 1100 718 ;
+C 227 ; WX 370 ; N ordfeminine ; B 125 401 465 737 ;
+C 232 ; WX 611 ; N Lslash ; B 34 0 611 718 ;
+C 233 ; WX 778 ; N Oslash ; B 35 -27 894 745 ;
+C 234 ; WX 1000 ; N OE ; B 99 -19 1114 737 ;
+C 235 ; WX 365 ; N ordmasculine ; B 123 401 485 737 ;
+C 241 ; WX 889 ; N ae ; B 56 -14 923 546 ;
+C 245 ; WX 278 ; N dotlessi ; B 69 0 322 532 ;
+C 248 ; WX 278 ; N lslash ; B 40 0 407 718 ;
+C 249 ; WX 611 ; N oslash ; B 22 -29 701 560 ;
+C 250 ; WX 944 ; N oe ; B 82 -14 977 546 ;
+C 251 ; WX 611 ; N germandbls ; B 69 -14 657 731 ;
+C -1 ; WX 278 ; N Idieresis ; B 64 0 494 915 ;
+C -1 ; WX 556 ; N eacute ; B 70 -14 627 750 ;
+C -1 ; WX 556 ; N abreve ; B 55 -14 606 750 ;
+C -1 ; WX 611 ; N uhungarumlaut ; B 98 -14 784 750 ;
+C -1 ; WX 556 ; N ecaron ; B 70 -14 614 750 ;
+C -1 ; WX 667 ; N Ydieresis ; B 168 0 806 915 ;
+C -1 ; WX 584 ; N divide ; B 82 -42 610 548 ;
+C -1 ; WX 667 ; N Yacute ; B 168 0 806 936 ;
+C -1 ; WX 722 ; N Acircumflex ; B 20 0 706 936 ;
+C -1 ; WX 556 ; N aacute ; B 55 -14 627 750 ;
+C -1 ; WX 722 ; N Ucircumflex ; B 116 -19 804 936 ;
+C -1 ; WX 556 ; N yacute ; B 42 -214 652 750 ;
+C -1 ; WX 556 ; N scommaaccent ; B 63 -228 584 546 ;
+C -1 ; WX 556 ; N ecircumflex ; B 70 -14 593 750 ;
+C -1 ; WX 722 ; N Uring ; B 116 -19 804 962 ;
+C -1 ; WX 722 ; N Udieresis ; B 116 -19 804 915 ;
+C -1 ; WX 556 ; N aogonek ; B 55 -224 583 546 ;
+C -1 ; WX 722 ; N Uacute ; B 116 -19 804 936 ;
+C -1 ; WX 611 ; N uogonek ; B 98 -228 658 532 ;
+C -1 ; WX 667 ; N Edieresis ; B 76 0 757 915 ;
+C -1 ; WX 722 ; N Dcroat ; B 62 0 777 718 ;
+C -1 ; WX 250 ; N commaaccent ; B 16 -228 188 -50 ;
+C -1 ; WX 737 ; N copyright ; B 56 -19 835 737 ;
+C -1 ; WX 667 ; N Emacron ; B 76 0 757 864 ;
+C -1 ; WX 556 ; N ccaron ; B 79 -14 614 750 ;
+C -1 ; WX 556 ; N aring ; B 55 -14 583 776 ;
+C -1 ; WX 722 ; N Ncommaaccent ; B 69 -228 807 718 ;
+C -1 ; WX 278 ; N lacute ; B 69 0 528 936 ;
+C -1 ; WX 556 ; N agrave ; B 55 -14 583 750 ;
+C -1 ; WX 611 ; N Tcommaaccent ; B 140 -228 751 718 ;
+C -1 ; WX 722 ; N Cacute ; B 107 -19 789 936 ;
+C -1 ; WX 556 ; N atilde ; B 55 -14 619 737 ;
+C -1 ; WX 667 ; N Edotaccent ; B 76 0 757 915 ;
+C -1 ; WX 556 ; N scaron ; B 63 -14 614 750 ;
+C -1 ; WX 556 ; N scedilla ; B 63 -228 584 546 ;
+C -1 ; WX 278 ; N iacute ; B 69 0 488 750 ;
+C -1 ; WX 494 ; N lozenge ; B 90 0 564 745 ;
+C -1 ; WX 722 ; N Rcaron ; B 76 0 778 936 ;
+C -1 ; WX 778 ; N Gcommaaccent ; B 108 -228 817 737 ;
+C -1 ; WX 611 ; N ucircumflex ; B 98 -14 658 750 ;
+C -1 ; WX 556 ; N acircumflex ; B 55 -14 583 750 ;
+C -1 ; WX 722 ; N Amacron ; B 20 0 718 864 ;
+C -1 ; WX 389 ; N rcaron ; B 64 0 530 750 ;
+C -1 ; WX 556 ; N ccedilla ; B 79 -228 599 546 ;
+C -1 ; WX 611 ; N Zdotaccent ; B 25 0 737 915 ;
+C -1 ; WX 667 ; N Thorn ; B 76 0 716 718 ;
+C -1 ; WX 778 ; N Omacron ; B 107 -19 823 864 ;
+C -1 ; WX 722 ; N Racute ; B 76 0 778 936 ;
+C -1 ; WX 667 ; N Sacute ; B 81 -19 722 936 ;
+C -1 ; WX 743 ; N dcaron ; B 82 -14 903 718 ;
+C -1 ; WX 722 ; N Umacron ; B 116 -19 804 864 ;
+C -1 ; WX 611 ; N uring ; B 98 -14 658 776 ;
+C -1 ; WX 333 ; N threesuperior ; B 91 271 441 710 ;
+C -1 ; WX 778 ; N Ograve ; B 107 -19 823 936 ;
+C -1 ; WX 722 ; N Agrave ; B 20 0 702 936 ;
+C -1 ; WX 722 ; N Abreve ; B 20 0 729 936 ;
+C -1 ; WX 584 ; N multiply ; B 57 1 635 505 ;
+C -1 ; WX 611 ; N uacute ; B 98 -14 658 750 ;
+C -1 ; WX 611 ; N Tcaron ; B 140 0 751 936 ;
+C -1 ; WX 494 ; N partialdiff ; B 43 -21 585 750 ;
+C -1 ; WX 556 ; N ydieresis ; B 42 -214 652 729 ;
+C -1 ; WX 722 ; N Nacute ; B 69 0 807 936 ;
+C -1 ; WX 278 ; N icircumflex ; B 69 0 444 750 ;
+C -1 ; WX 667 ; N Ecircumflex ; B 76 0 757 936 ;
+C -1 ; WX 556 ; N adieresis ; B 55 -14 594 729 ;
+C -1 ; WX 556 ; N edieresis ; B 70 -14 594 729 ;
+C -1 ; WX 556 ; N cacute ; B 79 -14 627 750 ;
+C -1 ; WX 611 ; N nacute ; B 65 0 654 750 ;
+C -1 ; WX 611 ; N umacron ; B 98 -14 658 678 ;
+C -1 ; WX 722 ; N Ncaron ; B 69 0 807 936 ;
+C -1 ; WX 278 ; N Iacute ; B 64 0 528 936 ;
+C -1 ; WX 584 ; N plusminus ; B 40 0 625 506 ;
+C -1 ; WX 280 ; N brokenbar ; B 52 -150 345 700 ;
+C -1 ; WX 737 ; N registered ; B 55 -19 834 737 ;
+C -1 ; WX 778 ; N Gbreve ; B 108 -19 817 936 ;
+C -1 ; WX 278 ; N Idotaccent ; B 64 0 397 915 ;
+C -1 ; WX 600 ; N summation ; B 14 -10 670 706 ;
+C -1 ; WX 667 ; N Egrave ; B 76 0 757 936 ;
+C -1 ; WX 389 ; N racute ; B 64 0 543 750 ;
+C -1 ; WX 611 ; N omacron ; B 82 -14 643 678 ;
+C -1 ; WX 611 ; N Zacute ; B 25 0 737 936 ;
+C -1 ; WX 611 ; N Zcaron ; B 25 0 737 936 ;
+C -1 ; WX 549 ; N greaterequal ; B 26 0 629 704 ;
+C -1 ; WX 722 ; N Eth ; B 62 0 777 718 ;
+C -1 ; WX 722 ; N Ccedilla ; B 107 -228 789 737 ;
+C -1 ; WX 278 ; N lcommaaccent ; B 30 -228 362 718 ;
+C -1 ; WX 389 ; N tcaron ; B 100 -6 608 878 ;
+C -1 ; WX 556 ; N eogonek ; B 70 -228 593 546 ;
+C -1 ; WX 722 ; N Uogonek ; B 116 -228 804 718 ;
+C -1 ; WX 722 ; N Aacute ; B 20 0 750 936 ;
+C -1 ; WX 722 ; N Adieresis ; B 20 0 716 915 ;
+C -1 ; WX 556 ; N egrave ; B 70 -14 593 750 ;
+C -1 ; WX 500 ; N zacute ; B 20 0 599 750 ;
+C -1 ; WX 278 ; N iogonek ; B -14 -224 363 725 ;
+C -1 ; WX 778 ; N Oacute ; B 107 -19 823 936 ;
+C -1 ; WX 611 ; N oacute ; B 82 -14 654 750 ;
+C -1 ; WX 556 ; N amacron ; B 55 -14 595 678 ;
+C -1 ; WX 556 ; N sacute ; B 63 -14 627 750 ;
+C -1 ; WX 278 ; N idieresis ; B 69 0 455 729 ;
+C -1 ; WX 778 ; N Ocircumflex ; B 107 -19 823 936 ;
+C -1 ; WX 722 ; N Ugrave ; B 116 -19 804 936 ;
+C -1 ; WX 612 ; N Delta ; B 6 0 608 688 ;
+C -1 ; WX 611 ; N thorn ; B 18 -208 645 718 ;
+C -1 ; WX 333 ; N twosuperior ; B 69 283 449 710 ;
+C -1 ; WX 778 ; N Odieresis ; B 107 -19 823 915 ;
+C -1 ; WX 611 ; N mu ; B 22 -207 658 532 ;
+C -1 ; WX 278 ; N igrave ; B 69 0 326 750 ;
+C -1 ; WX 611 ; N ohungarumlaut ; B 82 -14 784 750 ;
+C -1 ; WX 667 ; N Eogonek ; B 76 -224 757 718 ;
+C -1 ; WX 611 ; N dcroat ; B 82 -14 789 718 ;
+C -1 ; WX 834 ; N threequarters ; B 99 -19 839 710 ;
+C -1 ; WX 667 ; N Scedilla ; B 81 -228 718 737 ;
+C -1 ; WX 400 ; N lcaron ; B 69 0 561 718 ;
+C -1 ; WX 722 ; N Kcommaaccent ; B 87 -228 858 718 ;
+C -1 ; WX 611 ; N Lacute ; B 76 0 611 936 ;
+C -1 ; WX 1000 ; N trademark ; B 179 306 1109 718 ;
+C -1 ; WX 556 ; N edotaccent ; B 70 -14 593 729 ;
+C -1 ; WX 278 ; N Igrave ; B 64 0 367 936 ;
+C -1 ; WX 278 ; N Imacron ; B 64 0 496 864 ;
+C -1 ; WX 611 ; N Lcaron ; B 76 0 643 718 ;
+C -1 ; WX 834 ; N onehalf ; B 132 -19 858 710 ;
+C -1 ; WX 549 ; N lessequal ; B 29 0 676 704 ;
+C -1 ; WX 611 ; N ocircumflex ; B 82 -14 643 750 ;
+C -1 ; WX 611 ; N ntilde ; B 65 0 646 737 ;
+C -1 ; WX 722 ; N Uhungarumlaut ; B 116 -19 880 936 ;
+C -1 ; WX 667 ; N Eacute ; B 76 0 757 936 ;
+C -1 ; WX 556 ; N emacron ; B 70 -14 595 678 ;
+C -1 ; WX 611 ; N gbreve ; B 38 -217 666 750 ;
+C -1 ; WX 834 ; N onequarter ; B 132 -19 806 710 ;
+C -1 ; WX 667 ; N Scaron ; B 81 -19 718 936 ;
+C -1 ; WX 667 ; N Scommaaccent ; B 81 -228 718 737 ;
+C -1 ; WX 778 ; N Ohungarumlaut ; B 107 -19 908 936 ;
+C -1 ; WX 400 ; N degree ; B 175 426 467 712 ;
+C -1 ; WX 611 ; N ograve ; B 82 -14 643 750 ;
+C -1 ; WX 722 ; N Ccaron ; B 107 -19 789 936 ;
+C -1 ; WX 611 ; N ugrave ; B 98 -14 658 750 ;
+C -1 ; WX 549 ; N radical ; B 112 -46 689 850 ;
+C -1 ; WX 722 ; N Dcaron ; B 76 0 777 936 ;
+C -1 ; WX 389 ; N rcommaaccent ; B 26 -228 489 546 ;
+C -1 ; WX 722 ; N Ntilde ; B 69 0 807 923 ;
+C -1 ; WX 611 ; N otilde ; B 82 -14 646 737 ;
+C -1 ; WX 722 ; N Rcommaaccent ; B 76 -228 778 718 ;
+C -1 ; WX 611 ; N Lcommaaccent ; B 76 -228 611 718 ;
+C -1 ; WX 722 ; N Atilde ; B 20 0 741 923 ;
+C -1 ; WX 722 ; N Aogonek ; B 20 -224 702 718 ;
+C -1 ; WX 722 ; N Aring ; B 20 0 702 962 ;
+C -1 ; WX 778 ; N Otilde ; B 107 -19 823 923 ;
+C -1 ; WX 500 ; N zdotaccent ; B 20 0 583 729 ;
+C -1 ; WX 667 ; N Ecaron ; B 76 0 757 936 ;
+C -1 ; WX 278 ; N Iogonek ; B -41 -228 367 718 ;
+C -1 ; WX 556 ; N kcommaaccent ; B 69 -228 670 718 ;
+C -1 ; WX 584 ; N minus ; B 82 197 610 309 ;
+C -1 ; WX 278 ; N Icircumflex ; B 64 0 484 936 ;
+C -1 ; WX 611 ; N ncaron ; B 65 0 641 750 ;
+C -1 ; WX 333 ; N tcommaaccent ; B 58 -228 422 676 ;
+C -1 ; WX 584 ; N logicalnot ; B 105 108 633 419 ;
+C -1 ; WX 611 ; N odieresis ; B 82 -14 643 729 ;
+C -1 ; WX 611 ; N udieresis ; B 98 -14 658 729 ;
+C -1 ; WX 549 ; N notequal ; B 32 -49 630 570 ;
+C -1 ; WX 611 ; N gcommaaccent ; B 38 -217 666 850 ;
+C -1 ; WX 611 ; N eth ; B 82 -14 670 737 ;
+C -1 ; WX 500 ; N zcaron ; B 20 0 586 750 ;
+C -1 ; WX 611 ; N ncommaaccent ; B 65 -228 629 546 ;
+C -1 ; WX 333 ; N onesuperior ; B 148 283 388 710 ;
+C -1 ; WX 278 ; N imacron ; B 69 0 429 678 ;
+C -1 ; WX 556 ; N Euro ; B 0 0 0 0 ;
+EndCharMetrics
+StartKernData
+StartKernPairs 2481
+KPX A C -40
+KPX A Cacute -40
+KPX A Ccaron -40
+KPX A Ccedilla -40
+KPX A G -50
+KPX A Gbreve -50
+KPX A Gcommaaccent -50
+KPX A O -40
+KPX A Oacute -40
+KPX A Ocircumflex -40
+KPX A Odieresis -40
+KPX A Ograve -40
+KPX A Ohungarumlaut -40
+KPX A Omacron -40
+KPX A Oslash -40
+KPX A Otilde -40
+KPX A Q -40
+KPX A T -90
+KPX A Tcaron -90
+KPX A Tcommaaccent -90
+KPX A U -50
+KPX A Uacute -50
+KPX A Ucircumflex -50
+KPX A Udieresis -50
+KPX A Ugrave -50
+KPX A Uhungarumlaut -50
+KPX A Umacron -50
+KPX A Uogonek -50
+KPX A Uring -50
+KPX A V -80
+KPX A W -60
+KPX A Y -110
+KPX A Yacute -110
+KPX A Ydieresis -110
+KPX A u -30
+KPX A uacute -30
+KPX A ucircumflex -30
+KPX A udieresis -30
+KPX A ugrave -30
+KPX A uhungarumlaut -30
+KPX A umacron -30
+KPX A uogonek -30
+KPX A uring -30
+KPX A v -40
+KPX A w -30
+KPX A y -30
+KPX A yacute -30
+KPX A ydieresis -30
+KPX Aacute C -40
+KPX Aacute Cacute -40
+KPX Aacute Ccaron -40
+KPX Aacute Ccedilla -40
+KPX Aacute G -50
+KPX Aacute Gbreve -50
+KPX Aacute Gcommaaccent -50
+KPX Aacute O -40
+KPX Aacute Oacute -40
+KPX Aacute Ocircumflex -40
+KPX Aacute Odieresis -40
+KPX Aacute Ograve -40
+KPX Aacute Ohungarumlaut -40
+KPX Aacute Omacron -40
+KPX Aacute Oslash -40
+KPX Aacute Otilde -40
+KPX Aacute Q -40
+KPX Aacute T -90
+KPX Aacute Tcaron -90
+KPX Aacute Tcommaaccent -90
+KPX Aacute U -50
+KPX Aacute Uacute -50
+KPX Aacute Ucircumflex -50
+KPX Aacute Udieresis -50
+KPX Aacute Ugrave -50
+KPX Aacute Uhungarumlaut -50
+KPX Aacute Umacron -50
+KPX Aacute Uogonek -50
+KPX Aacute Uring -50
+KPX Aacute V -80
+KPX Aacute W -60
+KPX Aacute Y -110
+KPX Aacute Yacute -110
+KPX Aacute Ydieresis -110
+KPX Aacute u -30
+KPX Aacute uacute -30
+KPX Aacute ucircumflex -30
+KPX Aacute udieresis -30
+KPX Aacute ugrave -30
+KPX Aacute uhungarumlaut -30
+KPX Aacute umacron -30
+KPX Aacute uogonek -30
+KPX Aacute uring -30
+KPX Aacute v -40
+KPX Aacute w -30
+KPX Aacute y -30
+KPX Aacute yacute -30
+KPX Aacute ydieresis -30
+KPX Abreve C -40
+KPX Abreve Cacute -40
+KPX Abreve Ccaron -40
+KPX Abreve Ccedilla -40
+KPX Abreve G -50
+KPX Abreve Gbreve -50
+KPX Abreve Gcommaaccent -50
+KPX Abreve O -40
+KPX Abreve Oacute -40
+KPX Abreve Ocircumflex -40
+KPX Abreve Odieresis -40
+KPX Abreve Ograve -40
+KPX Abreve Ohungarumlaut -40
+KPX Abreve Omacron -40
+KPX Abreve Oslash -40
+KPX Abreve Otilde -40
+KPX Abreve Q -40
+KPX Abreve T -90
+KPX Abreve Tcaron -90
+KPX Abreve Tcommaaccent -90
+KPX Abreve U -50
+KPX Abreve Uacute -50
+KPX Abreve Ucircumflex -50
+KPX Abreve Udieresis -50
+KPX Abreve Ugrave -50
+KPX Abreve Uhungarumlaut -50
+KPX Abreve Umacron -50
+KPX Abreve Uogonek -50
+KPX Abreve Uring -50
+KPX Abreve V -80
+KPX Abreve W -60
+KPX Abreve Y -110
+KPX Abreve Yacute -110
+KPX Abreve Ydieresis -110
+KPX Abreve u -30
+KPX Abreve uacute -30
+KPX Abreve ucircumflex -30
+KPX Abreve udieresis -30
+KPX Abreve ugrave -30
+KPX Abreve uhungarumlaut -30
+KPX Abreve umacron -30
+KPX Abreve uogonek -30
+KPX Abreve uring -30
+KPX Abreve v -40
+KPX Abreve w -30
+KPX Abreve y -30
+KPX Abreve yacute -30
+KPX Abreve ydieresis -30
+KPX Acircumflex C -40
+KPX Acircumflex Cacute -40
+KPX Acircumflex Ccaron -40
+KPX Acircumflex Ccedilla -40
+KPX Acircumflex G -50
+KPX Acircumflex Gbreve -50
+KPX Acircumflex Gcommaaccent -50
+KPX Acircumflex O -40
+KPX Acircumflex Oacute -40
+KPX Acircumflex Ocircumflex -40
+KPX Acircumflex Odieresis -40
+KPX Acircumflex Ograve -40
+KPX Acircumflex Ohungarumlaut -40
+KPX Acircumflex Omacron -40
+KPX Acircumflex Oslash -40
+KPX Acircumflex Otilde -40
+KPX Acircumflex Q -40
+KPX Acircumflex T -90
+KPX Acircumflex Tcaron -90
+KPX Acircumflex Tcommaaccent -90
+KPX Acircumflex U -50
+KPX Acircumflex Uacute -50
+KPX Acircumflex Ucircumflex -50
+KPX Acircumflex Udieresis -50
+KPX Acircumflex Ugrave -50
+KPX Acircumflex Uhungarumlaut -50
+KPX Acircumflex Umacron -50
+KPX Acircumflex Uogonek -50
+KPX Acircumflex Uring -50
+KPX Acircumflex V -80
+KPX Acircumflex W -60
+KPX Acircumflex Y -110
+KPX Acircumflex Yacute -110
+KPX Acircumflex Ydieresis -110
+KPX Acircumflex u -30
+KPX Acircumflex uacute -30
+KPX Acircumflex ucircumflex -30
+KPX Acircumflex udieresis -30
+KPX Acircumflex ugrave -30
+KPX Acircumflex uhungarumlaut -30
+KPX Acircumflex umacron -30
+KPX Acircumflex uogonek -30
+KPX Acircumflex uring -30
+KPX Acircumflex v -40
+KPX Acircumflex w -30
+KPX Acircumflex y -30
+KPX Acircumflex yacute -30
+KPX Acircumflex ydieresis -30
+KPX Adieresis C -40
+KPX Adieresis Cacute -40
+KPX Adieresis Ccaron -40
+KPX Adieresis Ccedilla -40
+KPX Adieresis G -50
+KPX Adieresis Gbreve -50
+KPX Adieresis Gcommaaccent -50
+KPX Adieresis O -40
+KPX Adieresis Oacute -40
+KPX Adieresis Ocircumflex -40
+KPX Adieresis Odieresis -40
+KPX Adieresis Ograve -40
+KPX Adieresis Ohungarumlaut -40
+KPX Adieresis Omacron -40
+KPX Adieresis Oslash -40
+KPX Adieresis Otilde -40
+KPX Adieresis Q -40
+KPX Adieresis T -90
+KPX Adieresis Tcaron -90
+KPX Adieresis Tcommaaccent -90
+KPX Adieresis U -50
+KPX Adieresis Uacute -50
+KPX Adieresis Ucircumflex -50
+KPX Adieresis Udieresis -50
+KPX Adieresis Ugrave -50
+KPX Adieresis Uhungarumlaut -50
+KPX Adieresis Umacron -50
+KPX Adieresis Uogonek -50
+KPX Adieresis Uring -50
+KPX Adieresis V -80
+KPX Adieresis W -60
+KPX Adieresis Y -110
+KPX Adieresis Yacute -110
+KPX Adieresis Ydieresis -110
+KPX Adieresis u -30
+KPX Adieresis uacute -30
+KPX Adieresis ucircumflex -30
+KPX Adieresis udieresis -30
+KPX Adieresis ugrave -30
+KPX Adieresis uhungarumlaut -30
+KPX Adieresis umacron -30
+KPX Adieresis uogonek -30
+KPX Adieresis uring -30
+KPX Adieresis v -40
+KPX Adieresis w -30
+KPX Adieresis y -30
+KPX Adieresis yacute -30
+KPX Adieresis ydieresis -30
+KPX Agrave C -40
+KPX Agrave Cacute -40
+KPX Agrave Ccaron -40
+KPX Agrave Ccedilla -40
+KPX Agrave G -50
+KPX Agrave Gbreve -50
+KPX Agrave Gcommaaccent -50
+KPX Agrave O -40
+KPX Agrave Oacute -40
+KPX Agrave Ocircumflex -40
+KPX Agrave Odieresis -40
+KPX Agrave Ograve -40
+KPX Agrave Ohungarumlaut -40
+KPX Agrave Omacron -40
+KPX Agrave Oslash -40
+KPX Agrave Otilde -40
+KPX Agrave Q -40
+KPX Agrave T -90
+KPX Agrave Tcaron -90
+KPX Agrave Tcommaaccent -90
+KPX Agrave U -50
+KPX Agrave Uacute -50
+KPX Agrave Ucircumflex -50
+KPX Agrave Udieresis -50
+KPX Agrave Ugrave -50
+KPX Agrave Uhungarumlaut -50
+KPX Agrave Umacron -50
+KPX Agrave Uogonek -50
+KPX Agrave Uring -50
+KPX Agrave V -80
+KPX Agrave W -60
+KPX Agrave Y -110
+KPX Agrave Yacute -110
+KPX Agrave Ydieresis -110
+KPX Agrave u -30
+KPX Agrave uacute -30
+KPX Agrave ucircumflex -30
+KPX Agrave udieresis -30
+KPX Agrave ugrave -30
+KPX Agrave uhungarumlaut -30
+KPX Agrave umacron -30
+KPX Agrave uogonek -30
+KPX Agrave uring -30
+KPX Agrave v -40
+KPX Agrave w -30
+KPX Agrave y -30
+KPX Agrave yacute -30
+KPX Agrave ydieresis -30
+KPX Amacron C -40
+KPX Amacron Cacute -40
+KPX Amacron Ccaron -40
+KPX Amacron Ccedilla -40
+KPX Amacron G -50
+KPX Amacron Gbreve -50
+KPX Amacron Gcommaaccent -50
+KPX Amacron O -40
+KPX Amacron Oacute -40
+KPX Amacron Ocircumflex -40
+KPX Amacron Odieresis -40
+KPX Amacron Ograve -40
+KPX Amacron Ohungarumlaut -40
+KPX Amacron Omacron -40
+KPX Amacron Oslash -40
+KPX Amacron Otilde -40
+KPX Amacron Q -40
+KPX Amacron T -90
+KPX Amacron Tcaron -90
+KPX Amacron Tcommaaccent -90
+KPX Amacron U -50
+KPX Amacron Uacute -50
+KPX Amacron Ucircumflex -50
+KPX Amacron Udieresis -50
+KPX Amacron Ugrave -50
+KPX Amacron Uhungarumlaut -50
+KPX Amacron Umacron -50
+KPX Amacron Uogonek -50
+KPX Amacron Uring -50
+KPX Amacron V -80
+KPX Amacron W -60
+KPX Amacron Y -110
+KPX Amacron Yacute -110
+KPX Amacron Ydieresis -110
+KPX Amacron u -30
+KPX Amacron uacute -30
+KPX Amacron ucircumflex -30
+KPX Amacron udieresis -30
+KPX Amacron ugrave -30
+KPX Amacron uhungarumlaut -30
+KPX Amacron umacron -30
+KPX Amacron uogonek -30
+KPX Amacron uring -30
+KPX Amacron v -40
+KPX Amacron w -30
+KPX Amacron y -30
+KPX Amacron yacute -30
+KPX Amacron ydieresis -30
+KPX Aogonek C -40
+KPX Aogonek Cacute -40
+KPX Aogonek Ccaron -40
+KPX Aogonek Ccedilla -40
+KPX Aogonek G -50
+KPX Aogonek Gbreve -50
+KPX Aogonek Gcommaaccent -50
+KPX Aogonek O -40
+KPX Aogonek Oacute -40
+KPX Aogonek Ocircumflex -40
+KPX Aogonek Odieresis -40
+KPX Aogonek Ograve -40
+KPX Aogonek Ohungarumlaut -40
+KPX Aogonek Omacron -40
+KPX Aogonek Oslash -40
+KPX Aogonek Otilde -40
+KPX Aogonek Q -40
+KPX Aogonek T -90
+KPX Aogonek Tcaron -90
+KPX Aogonek Tcommaaccent -90
+KPX Aogonek U -50
+KPX Aogonek Uacute -50
+KPX Aogonek Ucircumflex -50
+KPX Aogonek Udieresis -50
+KPX Aogonek Ugrave -50
+KPX Aogonek Uhungarumlaut -50
+KPX Aogonek Umacron -50
+KPX Aogonek Uogonek -50
+KPX Aogonek Uring -50
+KPX Aogonek V -80
+KPX Aogonek W -60
+KPX Aogonek Y -110
+KPX Aogonek Yacute -110
+KPX Aogonek Ydieresis -110
+KPX Aogonek u -30
+KPX Aogonek uacute -30
+KPX Aogonek ucircumflex -30
+KPX Aogonek udieresis -30
+KPX Aogonek ugrave -30
+KPX Aogonek uhungarumlaut -30
+KPX Aogonek umacron -30
+KPX Aogonek uogonek -30
+KPX Aogonek uring -30
+KPX Aogonek v -40
+KPX Aogonek w -30
+KPX Aogonek y -30
+KPX Aogonek yacute -30
+KPX Aogonek ydieresis -30
+KPX Aring C -40
+KPX Aring Cacute -40
+KPX Aring Ccaron -40
+KPX Aring Ccedilla -40
+KPX Aring G -50
+KPX Aring Gbreve -50
+KPX Aring Gcommaaccent -50
+KPX Aring O -40
+KPX Aring Oacute -40
+KPX Aring Ocircumflex -40
+KPX Aring Odieresis -40
+KPX Aring Ograve -40
+KPX Aring Ohungarumlaut -40
+KPX Aring Omacron -40
+KPX Aring Oslash -40
+KPX Aring Otilde -40
+KPX Aring Q -40
+KPX Aring T -90
+KPX Aring Tcaron -90
+KPX Aring Tcommaaccent -90
+KPX Aring U -50
+KPX Aring Uacute -50
+KPX Aring Ucircumflex -50
+KPX Aring Udieresis -50
+KPX Aring Ugrave -50
+KPX Aring Uhungarumlaut -50
+KPX Aring Umacron -50
+KPX Aring Uogonek -50
+KPX Aring Uring -50
+KPX Aring V -80
+KPX Aring W -60
+KPX Aring Y -110
+KPX Aring Yacute -110
+KPX Aring Ydieresis -110
+KPX Aring u -30
+KPX Aring uacute -30
+KPX Aring ucircumflex -30
+KPX Aring udieresis -30
+KPX Aring ugrave -30
+KPX Aring uhungarumlaut -30
+KPX Aring umacron -30
+KPX Aring uogonek -30
+KPX Aring uring -30
+KPX Aring v -40
+KPX Aring w -30
+KPX Aring y -30
+KPX Aring yacute -30
+KPX Aring ydieresis -30
+KPX Atilde C -40
+KPX Atilde Cacute -40
+KPX Atilde Ccaron -40
+KPX Atilde Ccedilla -40
+KPX Atilde G -50
+KPX Atilde Gbreve -50
+KPX Atilde Gcommaaccent -50
+KPX Atilde O -40
+KPX Atilde Oacute -40
+KPX Atilde Ocircumflex -40
+KPX Atilde Odieresis -40
+KPX Atilde Ograve -40
+KPX Atilde Ohungarumlaut -40
+KPX Atilde Omacron -40
+KPX Atilde Oslash -40
+KPX Atilde Otilde -40
+KPX Atilde Q -40
+KPX Atilde T -90
+KPX Atilde Tcaron -90
+KPX Atilde Tcommaaccent -90
+KPX Atilde U -50
+KPX Atilde Uacute -50
+KPX Atilde Ucircumflex -50
+KPX Atilde Udieresis -50
+KPX Atilde Ugrave -50
+KPX Atilde Uhungarumlaut -50
+KPX Atilde Umacron -50
+KPX Atilde Uogonek -50
+KPX Atilde Uring -50
+KPX Atilde V -80
+KPX Atilde W -60
+KPX Atilde Y -110
+KPX Atilde Yacute -110
+KPX Atilde Ydieresis -110
+KPX Atilde u -30
+KPX Atilde uacute -30
+KPX Atilde ucircumflex -30
+KPX Atilde udieresis -30
+KPX Atilde ugrave -30
+KPX Atilde uhungarumlaut -30
+KPX Atilde umacron -30
+KPX Atilde uogonek -30
+KPX Atilde uring -30
+KPX Atilde v -40
+KPX Atilde w -30
+KPX Atilde y -30
+KPX Atilde yacute -30
+KPX Atilde ydieresis -30
+KPX B A -30
+KPX B Aacute -30
+KPX B Abreve -30
+KPX B Acircumflex -30
+KPX B Adieresis -30
+KPX B Agrave -30
+KPX B Amacron -30
+KPX B Aogonek -30
+KPX B Aring -30
+KPX B Atilde -30
+KPX B U -10
+KPX B Uacute -10
+KPX B Ucircumflex -10
+KPX B Udieresis -10
+KPX B Ugrave -10
+KPX B Uhungarumlaut -10
+KPX B Umacron -10
+KPX B Uogonek -10
+KPX B Uring -10
+KPX D A -40
+KPX D Aacute -40
+KPX D Abreve -40
+KPX D Acircumflex -40
+KPX D Adieresis -40
+KPX D Agrave -40
+KPX D Amacron -40
+KPX D Aogonek -40
+KPX D Aring -40
+KPX D Atilde -40
+KPX D V -40
+KPX D W -40
+KPX D Y -70
+KPX D Yacute -70
+KPX D Ydieresis -70
+KPX D comma -30
+KPX D period -30
+KPX Dcaron A -40
+KPX Dcaron Aacute -40
+KPX Dcaron Abreve -40
+KPX Dcaron Acircumflex -40
+KPX Dcaron Adieresis -40
+KPX Dcaron Agrave -40
+KPX Dcaron Amacron -40
+KPX Dcaron Aogonek -40
+KPX Dcaron Aring -40
+KPX Dcaron Atilde -40
+KPX Dcaron V -40
+KPX Dcaron W -40
+KPX Dcaron Y -70
+KPX Dcaron Yacute -70
+KPX Dcaron Ydieresis -70
+KPX Dcaron comma -30
+KPX Dcaron period -30
+KPX Dcroat A -40
+KPX Dcroat Aacute -40
+KPX Dcroat Abreve -40
+KPX Dcroat Acircumflex -40
+KPX Dcroat Adieresis -40
+KPX Dcroat Agrave -40
+KPX Dcroat Amacron -40
+KPX Dcroat Aogonek -40
+KPX Dcroat Aring -40
+KPX Dcroat Atilde -40
+KPX Dcroat V -40
+KPX Dcroat W -40
+KPX Dcroat Y -70
+KPX Dcroat Yacute -70
+KPX Dcroat Ydieresis -70
+KPX Dcroat comma -30
+KPX Dcroat period -30
+KPX F A -80
+KPX F Aacute -80
+KPX F Abreve -80
+KPX F Acircumflex -80
+KPX F Adieresis -80
+KPX F Agrave -80
+KPX F Amacron -80
+KPX F Aogonek -80
+KPX F Aring -80
+KPX F Atilde -80
+KPX F a -20
+KPX F aacute -20
+KPX F abreve -20
+KPX F acircumflex -20
+KPX F adieresis -20
+KPX F agrave -20
+KPX F amacron -20
+KPX F aogonek -20
+KPX F aring -20
+KPX F atilde -20
+KPX F comma -100
+KPX F period -100
+KPX J A -20
+KPX J Aacute -20
+KPX J Abreve -20
+KPX J Acircumflex -20
+KPX J Adieresis -20
+KPX J Agrave -20
+KPX J Amacron -20
+KPX J Aogonek -20
+KPX J Aring -20
+KPX J Atilde -20
+KPX J comma -20
+KPX J period -20
+KPX J u -20
+KPX J uacute -20
+KPX J ucircumflex -20
+KPX J udieresis -20
+KPX J ugrave -20
+KPX J uhungarumlaut -20
+KPX J umacron -20
+KPX J uogonek -20
+KPX J uring -20
+KPX K O -30
+KPX K Oacute -30
+KPX K Ocircumflex -30
+KPX K Odieresis -30
+KPX K Ograve -30
+KPX K Ohungarumlaut -30
+KPX K Omacron -30
+KPX K Oslash -30
+KPX K Otilde -30
+KPX K e -15
+KPX K eacute -15
+KPX K ecaron -15
+KPX K ecircumflex -15
+KPX K edieresis -15
+KPX K edotaccent -15
+KPX K egrave -15
+KPX K emacron -15
+KPX K eogonek -15
+KPX K o -35
+KPX K oacute -35
+KPX K ocircumflex -35
+KPX K odieresis -35
+KPX K ograve -35
+KPX K ohungarumlaut -35
+KPX K omacron -35
+KPX K oslash -35
+KPX K otilde -35
+KPX K u -30
+KPX K uacute -30
+KPX K ucircumflex -30
+KPX K udieresis -30
+KPX K ugrave -30
+KPX K uhungarumlaut -30
+KPX K umacron -30
+KPX K uogonek -30
+KPX K uring -30
+KPX K y -40
+KPX K yacute -40
+KPX K ydieresis -40
+KPX Kcommaaccent O -30
+KPX Kcommaaccent Oacute -30
+KPX Kcommaaccent Ocircumflex -30
+KPX Kcommaaccent Odieresis -30
+KPX Kcommaaccent Ograve -30
+KPX Kcommaaccent Ohungarumlaut -30
+KPX Kcommaaccent Omacron -30
+KPX Kcommaaccent Oslash -30
+KPX Kcommaaccent Otilde -30
+KPX Kcommaaccent e -15
+KPX Kcommaaccent eacute -15
+KPX Kcommaaccent ecaron -15
+KPX Kcommaaccent ecircumflex -15
+KPX Kcommaaccent edieresis -15
+KPX Kcommaaccent edotaccent -15
+KPX Kcommaaccent egrave -15
+KPX Kcommaaccent emacron -15
+KPX Kcommaaccent eogonek -15
+KPX Kcommaaccent o -35
+KPX Kcommaaccent oacute -35
+KPX Kcommaaccent ocircumflex -35
+KPX Kcommaaccent odieresis -35
+KPX Kcommaaccent ograve -35
+KPX Kcommaaccent ohungarumlaut -35
+KPX Kcommaaccent omacron -35
+KPX Kcommaaccent oslash -35
+KPX Kcommaaccent otilde -35
+KPX Kcommaaccent u -30
+KPX Kcommaaccent uacute -30
+KPX Kcommaaccent ucircumflex -30
+KPX Kcommaaccent udieresis -30
+KPX Kcommaaccent ugrave -30
+KPX Kcommaaccent uhungarumlaut -30
+KPX Kcommaaccent umacron -30
+KPX Kcommaaccent uogonek -30
+KPX Kcommaaccent uring -30
+KPX Kcommaaccent y -40
+KPX Kcommaaccent yacute -40
+KPX Kcommaaccent ydieresis -40
+KPX L T -90
+KPX L Tcaron -90
+KPX L Tcommaaccent -90
+KPX L V -110
+KPX L W -80
+KPX L Y -120
+KPX L Yacute -120
+KPX L Ydieresis -120
+KPX L quotedblright -140
+KPX L quoteright -140
+KPX L y -30
+KPX L yacute -30
+KPX L ydieresis -30
+KPX Lacute T -90
+KPX Lacute Tcaron -90
+KPX Lacute Tcommaaccent -90
+KPX Lacute V -110
+KPX Lacute W -80
+KPX Lacute Y -120
+KPX Lacute Yacute -120
+KPX Lacute Ydieresis -120
+KPX Lacute quotedblright -140
+KPX Lacute quoteright -140
+KPX Lacute y -30
+KPX Lacute yacute -30
+KPX Lacute ydieresis -30
+KPX Lcommaaccent T -90
+KPX Lcommaaccent Tcaron -90
+KPX Lcommaaccent Tcommaaccent -90
+KPX Lcommaaccent V -110
+KPX Lcommaaccent W -80
+KPX Lcommaaccent Y -120
+KPX Lcommaaccent Yacute -120
+KPX Lcommaaccent Ydieresis -120
+KPX Lcommaaccent quotedblright -140
+KPX Lcommaaccent quoteright -140
+KPX Lcommaaccent y -30
+KPX Lcommaaccent yacute -30
+KPX Lcommaaccent ydieresis -30
+KPX Lslash T -90
+KPX Lslash Tcaron -90
+KPX Lslash Tcommaaccent -90
+KPX Lslash V -110
+KPX Lslash W -80
+KPX Lslash Y -120
+KPX Lslash Yacute -120
+KPX Lslash Ydieresis -120
+KPX Lslash quotedblright -140
+KPX Lslash quoteright -140
+KPX Lslash y -30
+KPX Lslash yacute -30
+KPX Lslash ydieresis -30
+KPX O A -50
+KPX O Aacute -50
+KPX O Abreve -50
+KPX O Acircumflex -50
+KPX O Adieresis -50
+KPX O Agrave -50
+KPX O Amacron -50
+KPX O Aogonek -50
+KPX O Aring -50
+KPX O Atilde -50
+KPX O T -40
+KPX O Tcaron -40
+KPX O Tcommaaccent -40
+KPX O V -50
+KPX O W -50
+KPX O X -50
+KPX O Y -70
+KPX O Yacute -70
+KPX O Ydieresis -70
+KPX O comma -40
+KPX O period -40
+KPX Oacute A -50
+KPX Oacute Aacute -50
+KPX Oacute Abreve -50
+KPX Oacute Acircumflex -50
+KPX Oacute Adieresis -50
+KPX Oacute Agrave -50
+KPX Oacute Amacron -50
+KPX Oacute Aogonek -50
+KPX Oacute Aring -50
+KPX Oacute Atilde -50
+KPX Oacute T -40
+KPX Oacute Tcaron -40
+KPX Oacute Tcommaaccent -40
+KPX Oacute V -50
+KPX Oacute W -50
+KPX Oacute X -50
+KPX Oacute Y -70
+KPX Oacute Yacute -70
+KPX Oacute Ydieresis -70
+KPX Oacute comma -40
+KPX Oacute period -40
+KPX Ocircumflex A -50
+KPX Ocircumflex Aacute -50
+KPX Ocircumflex Abreve -50
+KPX Ocircumflex Acircumflex -50
+KPX Ocircumflex Adieresis -50
+KPX Ocircumflex Agrave -50
+KPX Ocircumflex Amacron -50
+KPX Ocircumflex Aogonek -50
+KPX Ocircumflex Aring -50
+KPX Ocircumflex Atilde -50
+KPX Ocircumflex T -40
+KPX Ocircumflex Tcaron -40
+KPX Ocircumflex Tcommaaccent -40
+KPX Ocircumflex V -50
+KPX Ocircumflex W -50
+KPX Ocircumflex X -50
+KPX Ocircumflex Y -70
+KPX Ocircumflex Yacute -70
+KPX Ocircumflex Ydieresis -70
+KPX Ocircumflex comma -40
+KPX Ocircumflex period -40
+KPX Odieresis A -50
+KPX Odieresis Aacute -50
+KPX Odieresis Abreve -50
+KPX Odieresis Acircumflex -50
+KPX Odieresis Adieresis -50
+KPX Odieresis Agrave -50
+KPX Odieresis Amacron -50
+KPX Odieresis Aogonek -50
+KPX Odieresis Aring -50
+KPX Odieresis Atilde -50
+KPX Odieresis T -40
+KPX Odieresis Tcaron -40
+KPX Odieresis Tcommaaccent -40
+KPX Odieresis V -50
+KPX Odieresis W -50
+KPX Odieresis X -50
+KPX Odieresis Y -70
+KPX Odieresis Yacute -70
+KPX Odieresis Ydieresis -70
+KPX Odieresis comma -40
+KPX Odieresis period -40
+KPX Ograve A -50
+KPX Ograve Aacute -50
+KPX Ograve Abreve -50
+KPX Ograve Acircumflex -50
+KPX Ograve Adieresis -50
+KPX Ograve Agrave -50
+KPX Ograve Amacron -50
+KPX Ograve Aogonek -50
+KPX Ograve Aring -50
+KPX Ograve Atilde -50
+KPX Ograve T -40
+KPX Ograve Tcaron -40
+KPX Ograve Tcommaaccent -40
+KPX Ograve V -50
+KPX Ograve W -50
+KPX Ograve X -50
+KPX Ograve Y -70
+KPX Ograve Yacute -70
+KPX Ograve Ydieresis -70
+KPX Ograve comma -40
+KPX Ograve period -40
+KPX Ohungarumlaut A -50
+KPX Ohungarumlaut Aacute -50
+KPX Ohungarumlaut Abreve -50
+KPX Ohungarumlaut Acircumflex -50
+KPX Ohungarumlaut Adieresis -50
+KPX Ohungarumlaut Agrave -50
+KPX Ohungarumlaut Amacron -50
+KPX Ohungarumlaut Aogonek -50
+KPX Ohungarumlaut Aring -50
+KPX Ohungarumlaut Atilde -50
+KPX Ohungarumlaut T -40
+KPX Ohungarumlaut Tcaron -40
+KPX Ohungarumlaut Tcommaaccent -40
+KPX Ohungarumlaut V -50
+KPX Ohungarumlaut W -50
+KPX Ohungarumlaut X -50
+KPX Ohungarumlaut Y -70
+KPX Ohungarumlaut Yacute -70
+KPX Ohungarumlaut Ydieresis -70
+KPX Ohungarumlaut comma -40
+KPX Ohungarumlaut period -40
+KPX Omacron A -50
+KPX Omacron Aacute -50
+KPX Omacron Abreve -50
+KPX Omacron Acircumflex -50
+KPX Omacron Adieresis -50
+KPX Omacron Agrave -50
+KPX Omacron Amacron -50
+KPX Omacron Aogonek -50
+KPX Omacron Aring -50
+KPX Omacron Atilde -50
+KPX Omacron T -40
+KPX Omacron Tcaron -40
+KPX Omacron Tcommaaccent -40
+KPX Omacron V -50
+KPX Omacron W -50
+KPX Omacron X -50
+KPX Omacron Y -70
+KPX Omacron Yacute -70
+KPX Omacron Ydieresis -70
+KPX Omacron comma -40
+KPX Omacron period -40
+KPX Oslash A -50
+KPX Oslash Aacute -50
+KPX Oslash Abreve -50
+KPX Oslash Acircumflex -50
+KPX Oslash Adieresis -50
+KPX Oslash Agrave -50
+KPX Oslash Amacron -50
+KPX Oslash Aogonek -50
+KPX Oslash Aring -50
+KPX Oslash Atilde -50
+KPX Oslash T -40
+KPX Oslash Tcaron -40
+KPX Oslash Tcommaaccent -40
+KPX Oslash V -50
+KPX Oslash W -50
+KPX Oslash X -50
+KPX Oslash Y -70
+KPX Oslash Yacute -70
+KPX Oslash Ydieresis -70
+KPX Oslash comma -40
+KPX Oslash period -40
+KPX Otilde A -50
+KPX Otilde Aacute -50
+KPX Otilde Abreve -50
+KPX Otilde Acircumflex -50
+KPX Otilde Adieresis -50
+KPX Otilde Agrave -50
+KPX Otilde Amacron -50
+KPX Otilde Aogonek -50
+KPX Otilde Aring -50
+KPX Otilde Atilde -50
+KPX Otilde T -40
+KPX Otilde Tcaron -40
+KPX Otilde Tcommaaccent -40
+KPX Otilde V -50
+KPX Otilde W -50
+KPX Otilde X -50
+KPX Otilde Y -70
+KPX Otilde Yacute -70
+KPX Otilde Ydieresis -70
+KPX Otilde comma -40
+KPX Otilde period -40
+KPX P A -100
+KPX P Aacute -100
+KPX P Abreve -100
+KPX P Acircumflex -100
+KPX P Adieresis -100
+KPX P Agrave -100
+KPX P Amacron -100
+KPX P Aogonek -100
+KPX P Aring -100
+KPX P Atilde -100
+KPX P a -30
+KPX P aacute -30
+KPX P abreve -30
+KPX P acircumflex -30
+KPX P adieresis -30
+KPX P agrave -30
+KPX P amacron -30
+KPX P aogonek -30
+KPX P aring -30
+KPX P atilde -30
+KPX P comma -120
+KPX P e -30
+KPX P eacute -30
+KPX P ecaron -30
+KPX P ecircumflex -30
+KPX P edieresis -30
+KPX P edotaccent -30
+KPX P egrave -30
+KPX P emacron -30
+KPX P eogonek -30
+KPX P o -40
+KPX P oacute -40
+KPX P ocircumflex -40
+KPX P odieresis -40
+KPX P ograve -40
+KPX P ohungarumlaut -40
+KPX P omacron -40
+KPX P oslash -40
+KPX P otilde -40
+KPX P period -120
+KPX Q U -10
+KPX Q Uacute -10
+KPX Q Ucircumflex -10
+KPX Q Udieresis -10
+KPX Q Ugrave -10
+KPX Q Uhungarumlaut -10
+KPX Q Umacron -10
+KPX Q Uogonek -10
+KPX Q Uring -10
+KPX Q comma 20
+KPX Q period 20
+KPX R O -20
+KPX R Oacute -20
+KPX R Ocircumflex -20
+KPX R Odieresis -20
+KPX R Ograve -20
+KPX R Ohungarumlaut -20
+KPX R Omacron -20
+KPX R Oslash -20
+KPX R Otilde -20
+KPX R T -20
+KPX R Tcaron -20
+KPX R Tcommaaccent -20
+KPX R U -20
+KPX R Uacute -20
+KPX R Ucircumflex -20
+KPX R Udieresis -20
+KPX R Ugrave -20
+KPX R Uhungarumlaut -20
+KPX R Umacron -20
+KPX R Uogonek -20
+KPX R Uring -20
+KPX R V -50
+KPX R W -40
+KPX R Y -50
+KPX R Yacute -50
+KPX R Ydieresis -50
+KPX Racute O -20
+KPX Racute Oacute -20
+KPX Racute Ocircumflex -20
+KPX Racute Odieresis -20
+KPX Racute Ograve -20
+KPX Racute Ohungarumlaut -20
+KPX Racute Omacron -20
+KPX Racute Oslash -20
+KPX Racute Otilde -20
+KPX Racute T -20
+KPX Racute Tcaron -20
+KPX Racute Tcommaaccent -20
+KPX Racute U -20
+KPX Racute Uacute -20
+KPX Racute Ucircumflex -20
+KPX Racute Udieresis -20
+KPX Racute Ugrave -20
+KPX Racute Uhungarumlaut -20
+KPX Racute Umacron -20
+KPX Racute Uogonek -20
+KPX Racute Uring -20
+KPX Racute V -50
+KPX Racute W -40
+KPX Racute Y -50
+KPX Racute Yacute -50
+KPX Racute Ydieresis -50
+KPX Rcaron O -20
+KPX Rcaron Oacute -20
+KPX Rcaron Ocircumflex -20
+KPX Rcaron Odieresis -20
+KPX Rcaron Ograve -20
+KPX Rcaron Ohungarumlaut -20
+KPX Rcaron Omacron -20
+KPX Rcaron Oslash -20
+KPX Rcaron Otilde -20
+KPX Rcaron T -20
+KPX Rcaron Tcaron -20
+KPX Rcaron Tcommaaccent -20
+KPX Rcaron U -20
+KPX Rcaron Uacute -20
+KPX Rcaron Ucircumflex -20
+KPX Rcaron Udieresis -20
+KPX Rcaron Ugrave -20
+KPX Rcaron Uhungarumlaut -20
+KPX Rcaron Umacron -20
+KPX Rcaron Uogonek -20
+KPX Rcaron Uring -20
+KPX Rcaron V -50
+KPX Rcaron W -40
+KPX Rcaron Y -50
+KPX Rcaron Yacute -50
+KPX Rcaron Ydieresis -50
+KPX Rcommaaccent O -20
+KPX Rcommaaccent Oacute -20
+KPX Rcommaaccent Ocircumflex -20
+KPX Rcommaaccent Odieresis -20
+KPX Rcommaaccent Ograve -20
+KPX Rcommaaccent Ohungarumlaut -20
+KPX Rcommaaccent Omacron -20
+KPX Rcommaaccent Oslash -20
+KPX Rcommaaccent Otilde -20
+KPX Rcommaaccent T -20
+KPX Rcommaaccent Tcaron -20
+KPX Rcommaaccent Tcommaaccent -20
+KPX Rcommaaccent U -20
+KPX Rcommaaccent Uacute -20
+KPX Rcommaaccent Ucircumflex -20
+KPX Rcommaaccent Udieresis -20
+KPX Rcommaaccent Ugrave -20
+KPX Rcommaaccent Uhungarumlaut -20
+KPX Rcommaaccent Umacron -20
+KPX Rcommaaccent Uogonek -20
+KPX Rcommaaccent Uring -20
+KPX Rcommaaccent V -50
+KPX Rcommaaccent W -40
+KPX Rcommaaccent Y -50
+KPX Rcommaaccent Yacute -50
+KPX Rcommaaccent Ydieresis -50
+KPX T A -90
+KPX T Aacute -90
+KPX T Abreve -90
+KPX T Acircumflex -90
+KPX T Adieresis -90
+KPX T Agrave -90
+KPX T Amacron -90
+KPX T Aogonek -90
+KPX T Aring -90
+KPX T Atilde -90
+KPX T O -40
+KPX T Oacute -40
+KPX T Ocircumflex -40
+KPX T Odieresis -40
+KPX T Ograve -40
+KPX T Ohungarumlaut -40
+KPX T Omacron -40
+KPX T Oslash -40
+KPX T Otilde -40
+KPX T a -80
+KPX T aacute -80
+KPX T abreve -80
+KPX T acircumflex -80
+KPX T adieresis -80
+KPX T agrave -80
+KPX T amacron -80
+KPX T aogonek -80
+KPX T aring -80
+KPX T atilde -80
+KPX T colon -40
+KPX T comma -80
+KPX T e -60
+KPX T eacute -60
+KPX T ecaron -60
+KPX T ecircumflex -60
+KPX T edieresis -60
+KPX T edotaccent -60
+KPX T egrave -60
+KPX T emacron -60
+KPX T eogonek -60
+KPX T hyphen -120
+KPX T o -80
+KPX T oacute -80
+KPX T ocircumflex -80
+KPX T odieresis -80
+KPX T ograve -80
+KPX T ohungarumlaut -80
+KPX T omacron -80
+KPX T oslash -80
+KPX T otilde -80
+KPX T period -80
+KPX T r -80
+KPX T racute -80
+KPX T rcommaaccent -80
+KPX T semicolon -40
+KPX T u -90
+KPX T uacute -90
+KPX T ucircumflex -90
+KPX T udieresis -90
+KPX T ugrave -90
+KPX T uhungarumlaut -90
+KPX T umacron -90
+KPX T uogonek -90
+KPX T uring -90
+KPX T w -60
+KPX T y -60
+KPX T yacute -60
+KPX T ydieresis -60
+KPX Tcaron A -90
+KPX Tcaron Aacute -90
+KPX Tcaron Abreve -90
+KPX Tcaron Acircumflex -90
+KPX Tcaron Adieresis -90
+KPX Tcaron Agrave -90
+KPX Tcaron Amacron -90
+KPX Tcaron Aogonek -90
+KPX Tcaron Aring -90
+KPX Tcaron Atilde -90
+KPX Tcaron O -40
+KPX Tcaron Oacute -40
+KPX Tcaron Ocircumflex -40
+KPX Tcaron Odieresis -40
+KPX Tcaron Ograve -40
+KPX Tcaron Ohungarumlaut -40
+KPX Tcaron Omacron -40
+KPX Tcaron Oslash -40
+KPX Tcaron Otilde -40
+KPX Tcaron a -80
+KPX Tcaron aacute -80
+KPX Tcaron abreve -80
+KPX Tcaron acircumflex -80
+KPX Tcaron adieresis -80
+KPX Tcaron agrave -80
+KPX Tcaron amacron -80
+KPX Tcaron aogonek -80
+KPX Tcaron aring -80
+KPX Tcaron atilde -80
+KPX Tcaron colon -40
+KPX Tcaron comma -80
+KPX Tcaron e -60
+KPX Tcaron eacute -60
+KPX Tcaron ecaron -60
+KPX Tcaron ecircumflex -60
+KPX Tcaron edieresis -60
+KPX Tcaron edotaccent -60
+KPX Tcaron egrave -60
+KPX Tcaron emacron -60
+KPX Tcaron eogonek -60
+KPX Tcaron hyphen -120
+KPX Tcaron o -80
+KPX Tcaron oacute -80
+KPX Tcaron ocircumflex -80
+KPX Tcaron odieresis -80
+KPX Tcaron ograve -80
+KPX Tcaron ohungarumlaut -80
+KPX Tcaron omacron -80
+KPX Tcaron oslash -80
+KPX Tcaron otilde -80
+KPX Tcaron period -80
+KPX Tcaron r -80
+KPX Tcaron racute -80
+KPX Tcaron rcommaaccent -80
+KPX Tcaron semicolon -40
+KPX Tcaron u -90
+KPX Tcaron uacute -90
+KPX Tcaron ucircumflex -90
+KPX Tcaron udieresis -90
+KPX Tcaron ugrave -90
+KPX Tcaron uhungarumlaut -90
+KPX Tcaron umacron -90
+KPX Tcaron uogonek -90
+KPX Tcaron uring -90
+KPX Tcaron w -60
+KPX Tcaron y -60
+KPX Tcaron yacute -60
+KPX Tcaron ydieresis -60
+KPX Tcommaaccent A -90
+KPX Tcommaaccent Aacute -90
+KPX Tcommaaccent Abreve -90
+KPX Tcommaaccent Acircumflex -90
+KPX Tcommaaccent Adieresis -90
+KPX Tcommaaccent Agrave -90
+KPX Tcommaaccent Amacron -90
+KPX Tcommaaccent Aogonek -90
+KPX Tcommaaccent Aring -90
+KPX Tcommaaccent Atilde -90
+KPX Tcommaaccent O -40
+KPX Tcommaaccent Oacute -40
+KPX Tcommaaccent Ocircumflex -40
+KPX Tcommaaccent Odieresis -40
+KPX Tcommaaccent Ograve -40
+KPX Tcommaaccent Ohungarumlaut -40
+KPX Tcommaaccent Omacron -40
+KPX Tcommaaccent Oslash -40
+KPX Tcommaaccent Otilde -40
+KPX Tcommaaccent a -80
+KPX Tcommaaccent aacute -80
+KPX Tcommaaccent abreve -80
+KPX Tcommaaccent acircumflex -80
+KPX Tcommaaccent adieresis -80
+KPX Tcommaaccent agrave -80
+KPX Tcommaaccent amacron -80
+KPX Tcommaaccent aogonek -80
+KPX Tcommaaccent aring -80
+KPX Tcommaaccent atilde -80
+KPX Tcommaaccent colon -40
+KPX Tcommaaccent comma -80
+KPX Tcommaaccent e -60
+KPX Tcommaaccent eacute -60
+KPX Tcommaaccent ecaron -60
+KPX Tcommaaccent ecircumflex -60
+KPX Tcommaaccent edieresis -60
+KPX Tcommaaccent edotaccent -60
+KPX Tcommaaccent egrave -60
+KPX Tcommaaccent emacron -60
+KPX Tcommaaccent eogonek -60
+KPX Tcommaaccent hyphen -120
+KPX Tcommaaccent o -80
+KPX Tcommaaccent oacute -80
+KPX Tcommaaccent ocircumflex -80
+KPX Tcommaaccent odieresis -80
+KPX Tcommaaccent ograve -80
+KPX Tcommaaccent ohungarumlaut -80
+KPX Tcommaaccent omacron -80
+KPX Tcommaaccent oslash -80
+KPX Tcommaaccent otilde -80
+KPX Tcommaaccent period -80
+KPX Tcommaaccent r -80
+KPX Tcommaaccent racute -80
+KPX Tcommaaccent rcommaaccent -80
+KPX Tcommaaccent semicolon -40
+KPX Tcommaaccent u -90
+KPX Tcommaaccent uacute -90
+KPX Tcommaaccent ucircumflex -90
+KPX Tcommaaccent udieresis -90
+KPX Tcommaaccent ugrave -90
+KPX Tcommaaccent uhungarumlaut -90
+KPX Tcommaaccent umacron -90
+KPX Tcommaaccent uogonek -90
+KPX Tcommaaccent uring -90
+KPX Tcommaaccent w -60
+KPX Tcommaaccent y -60
+KPX Tcommaaccent yacute -60
+KPX Tcommaaccent ydieresis -60
+KPX U A -50
+KPX U Aacute -50
+KPX U Abreve -50
+KPX U Acircumflex -50
+KPX U Adieresis -50
+KPX U Agrave -50
+KPX U Amacron -50
+KPX U Aogonek -50
+KPX U Aring -50
+KPX U Atilde -50
+KPX U comma -30
+KPX U period -30
+KPX Uacute A -50
+KPX Uacute Aacute -50
+KPX Uacute Abreve -50
+KPX Uacute Acircumflex -50
+KPX Uacute Adieresis -50
+KPX Uacute Agrave -50
+KPX Uacute Amacron -50
+KPX Uacute Aogonek -50
+KPX Uacute Aring -50
+KPX Uacute Atilde -50
+KPX Uacute comma -30
+KPX Uacute period -30
+KPX Ucircumflex A -50
+KPX Ucircumflex Aacute -50
+KPX Ucircumflex Abreve -50
+KPX Ucircumflex Acircumflex -50
+KPX Ucircumflex Adieresis -50
+KPX Ucircumflex Agrave -50
+KPX Ucircumflex Amacron -50
+KPX Ucircumflex Aogonek -50
+KPX Ucircumflex Aring -50
+KPX Ucircumflex Atilde -50
+KPX Ucircumflex comma -30
+KPX Ucircumflex period -30
+KPX Udieresis A -50
+KPX Udieresis Aacute -50
+KPX Udieresis Abreve -50
+KPX Udieresis Acircumflex -50
+KPX Udieresis Adieresis -50
+KPX Udieresis Agrave -50
+KPX Udieresis Amacron -50
+KPX Udieresis Aogonek -50
+KPX Udieresis Aring -50
+KPX Udieresis Atilde -50
+KPX Udieresis comma -30
+KPX Udieresis period -30
+KPX Ugrave A -50
+KPX Ugrave Aacute -50
+KPX Ugrave Abreve -50
+KPX Ugrave Acircumflex -50
+KPX Ugrave Adieresis -50
+KPX Ugrave Agrave -50
+KPX Ugrave Amacron -50
+KPX Ugrave Aogonek -50
+KPX Ugrave Aring -50
+KPX Ugrave Atilde -50
+KPX Ugrave comma -30
+KPX Ugrave period -30
+KPX Uhungarumlaut A -50
+KPX Uhungarumlaut Aacute -50
+KPX Uhungarumlaut Abreve -50
+KPX Uhungarumlaut Acircumflex -50
+KPX Uhungarumlaut Adieresis -50
+KPX Uhungarumlaut Agrave -50
+KPX Uhungarumlaut Amacron -50
+KPX Uhungarumlaut Aogonek -50
+KPX Uhungarumlaut Aring -50
+KPX Uhungarumlaut Atilde -50
+KPX Uhungarumlaut comma -30
+KPX Uhungarumlaut period -30
+KPX Umacron A -50
+KPX Umacron Aacute -50
+KPX Umacron Abreve -50
+KPX Umacron Acircumflex -50
+KPX Umacron Adieresis -50
+KPX Umacron Agrave -50
+KPX Umacron Amacron -50
+KPX Umacron Aogonek -50
+KPX Umacron Aring -50
+KPX Umacron Atilde -50
+KPX Umacron comma -30
+KPX Umacron period -30
+KPX Uogonek A -50
+KPX Uogonek Aacute -50
+KPX Uogonek Abreve -50
+KPX Uogonek Acircumflex -50
+KPX Uogonek Adieresis -50
+KPX Uogonek Agrave -50
+KPX Uogonek Amacron -50
+KPX Uogonek Aogonek -50
+KPX Uogonek Aring -50
+KPX Uogonek Atilde -50
+KPX Uogonek comma -30
+KPX Uogonek period -30
+KPX Uring A -50
+KPX Uring Aacute -50
+KPX Uring Abreve -50
+KPX Uring Acircumflex -50
+KPX Uring Adieresis -50
+KPX Uring Agrave -50
+KPX Uring Amacron -50
+KPX Uring Aogonek -50
+KPX Uring Aring -50
+KPX Uring Atilde -50
+KPX Uring comma -30
+KPX Uring period -30
+KPX V A -80
+KPX V Aacute -80
+KPX V Abreve -80
+KPX V Acircumflex -80
+KPX V Adieresis -80
+KPX V Agrave -80
+KPX V Amacron -80
+KPX V Aogonek -80
+KPX V Aring -80
+KPX V Atilde -80
+KPX V G -50
+KPX V Gbreve -50
+KPX V Gcommaaccent -50
+KPX V O -50
+KPX V Oacute -50
+KPX V Ocircumflex -50
+KPX V Odieresis -50
+KPX V Ograve -50
+KPX V Ohungarumlaut -50
+KPX V Omacron -50
+KPX V Oslash -50
+KPX V Otilde -50
+KPX V a -60
+KPX V aacute -60
+KPX V abreve -60
+KPX V acircumflex -60
+KPX V adieresis -60
+KPX V agrave -60
+KPX V amacron -60
+KPX V aogonek -60
+KPX V aring -60
+KPX V atilde -60
+KPX V colon -40
+KPX V comma -120
+KPX V e -50
+KPX V eacute -50
+KPX V ecaron -50
+KPX V ecircumflex -50
+KPX V edieresis -50
+KPX V edotaccent -50
+KPX V egrave -50
+KPX V emacron -50
+KPX V eogonek -50
+KPX V hyphen -80
+KPX V o -90
+KPX V oacute -90
+KPX V ocircumflex -90
+KPX V odieresis -90
+KPX V ograve -90
+KPX V ohungarumlaut -90
+KPX V omacron -90
+KPX V oslash -90
+KPX V otilde -90
+KPX V period -120
+KPX V semicolon -40
+KPX V u -60
+KPX V uacute -60
+KPX V ucircumflex -60
+KPX V udieresis -60
+KPX V ugrave -60
+KPX V uhungarumlaut -60
+KPX V umacron -60
+KPX V uogonek -60
+KPX V uring -60
+KPX W A -60
+KPX W Aacute -60
+KPX W Abreve -60
+KPX W Acircumflex -60
+KPX W Adieresis -60
+KPX W Agrave -60
+KPX W Amacron -60
+KPX W Aogonek -60
+KPX W Aring -60
+KPX W Atilde -60
+KPX W O -20
+KPX W Oacute -20
+KPX W Ocircumflex -20
+KPX W Odieresis -20
+KPX W Ograve -20
+KPX W Ohungarumlaut -20
+KPX W Omacron -20
+KPX W Oslash -20
+KPX W Otilde -20
+KPX W a -40
+KPX W aacute -40
+KPX W abreve -40
+KPX W acircumflex -40
+KPX W adieresis -40
+KPX W agrave -40
+KPX W amacron -40
+KPX W aogonek -40
+KPX W aring -40
+KPX W atilde -40
+KPX W colon -10
+KPX W comma -80
+KPX W e -35
+KPX W eacute -35
+KPX W ecaron -35
+KPX W ecircumflex -35
+KPX W edieresis -35
+KPX W edotaccent -35
+KPX W egrave -35
+KPX W emacron -35
+KPX W eogonek -35
+KPX W hyphen -40
+KPX W o -60
+KPX W oacute -60
+KPX W ocircumflex -60
+KPX W odieresis -60
+KPX W ograve -60
+KPX W ohungarumlaut -60
+KPX W omacron -60
+KPX W oslash -60
+KPX W otilde -60
+KPX W period -80
+KPX W semicolon -10
+KPX W u -45
+KPX W uacute -45
+KPX W ucircumflex -45
+KPX W udieresis -45
+KPX W ugrave -45
+KPX W uhungarumlaut -45
+KPX W umacron -45
+KPX W uogonek -45
+KPX W uring -45
+KPX W y -20
+KPX W yacute -20
+KPX W ydieresis -20
+KPX Y A -110
+KPX Y Aacute -110
+KPX Y Abreve -110
+KPX Y Acircumflex -110
+KPX Y Adieresis -110
+KPX Y Agrave -110
+KPX Y Amacron -110
+KPX Y Aogonek -110
+KPX Y Aring -110
+KPX Y Atilde -110
+KPX Y O -70
+KPX Y Oacute -70
+KPX Y Ocircumflex -70
+KPX Y Odieresis -70
+KPX Y Ograve -70
+KPX Y Ohungarumlaut -70
+KPX Y Omacron -70
+KPX Y Oslash -70
+KPX Y Otilde -70
+KPX Y a -90
+KPX Y aacute -90
+KPX Y abreve -90
+KPX Y acircumflex -90
+KPX Y adieresis -90
+KPX Y agrave -90
+KPX Y amacron -90
+KPX Y aogonek -90
+KPX Y aring -90
+KPX Y atilde -90
+KPX Y colon -50
+KPX Y comma -100
+KPX Y e -80
+KPX Y eacute -80
+KPX Y ecaron -80
+KPX Y ecircumflex -80
+KPX Y edieresis -80
+KPX Y edotaccent -80
+KPX Y egrave -80
+KPX Y emacron -80
+KPX Y eogonek -80
+KPX Y o -100
+KPX Y oacute -100
+KPX Y ocircumflex -100
+KPX Y odieresis -100
+KPX Y ograve -100
+KPX Y ohungarumlaut -100
+KPX Y omacron -100
+KPX Y oslash -100
+KPX Y otilde -100
+KPX Y period -100
+KPX Y semicolon -50
+KPX Y u -100
+KPX Y uacute -100
+KPX Y ucircumflex -100
+KPX Y udieresis -100
+KPX Y ugrave -100
+KPX Y uhungarumlaut -100
+KPX Y umacron -100
+KPX Y uogonek -100
+KPX Y uring -100
+KPX Yacute A -110
+KPX Yacute Aacute -110
+KPX Yacute Abreve -110
+KPX Yacute Acircumflex -110
+KPX Yacute Adieresis -110
+KPX Yacute Agrave -110
+KPX Yacute Amacron -110
+KPX Yacute Aogonek -110
+KPX Yacute Aring -110
+KPX Yacute Atilde -110
+KPX Yacute O -70
+KPX Yacute Oacute -70
+KPX Yacute Ocircumflex -70
+KPX Yacute Odieresis -70
+KPX Yacute Ograve -70
+KPX Yacute Ohungarumlaut -70
+KPX Yacute Omacron -70
+KPX Yacute Oslash -70
+KPX Yacute Otilde -70
+KPX Yacute a -90
+KPX Yacute aacute -90
+KPX Yacute abreve -90
+KPX Yacute acircumflex -90
+KPX Yacute adieresis -90
+KPX Yacute agrave -90
+KPX Yacute amacron -90
+KPX Yacute aogonek -90
+KPX Yacute aring -90
+KPX Yacute atilde -90
+KPX Yacute colon -50
+KPX Yacute comma -100
+KPX Yacute e -80
+KPX Yacute eacute -80
+KPX Yacute ecaron -80
+KPX Yacute ecircumflex -80
+KPX Yacute edieresis -80
+KPX Yacute edotaccent -80
+KPX Yacute egrave -80
+KPX Yacute emacron -80
+KPX Yacute eogonek -80
+KPX Yacute o -100
+KPX Yacute oacute -100
+KPX Yacute ocircumflex -100
+KPX Yacute odieresis -100
+KPX Yacute ograve -100
+KPX Yacute ohungarumlaut -100
+KPX Yacute omacron -100
+KPX Yacute oslash -100
+KPX Yacute otilde -100
+KPX Yacute period -100
+KPX Yacute semicolon -50
+KPX Yacute u -100
+KPX Yacute uacute -100
+KPX Yacute ucircumflex -100
+KPX Yacute udieresis -100
+KPX Yacute ugrave -100
+KPX Yacute uhungarumlaut -100
+KPX Yacute umacron -100
+KPX Yacute uogonek -100
+KPX Yacute uring -100
+KPX Ydieresis A -110
+KPX Ydieresis Aacute -110
+KPX Ydieresis Abreve -110
+KPX Ydieresis Acircumflex -110
+KPX Ydieresis Adieresis -110
+KPX Ydieresis Agrave -110
+KPX Ydieresis Amacron -110
+KPX Ydieresis Aogonek -110
+KPX Ydieresis Aring -110
+KPX Ydieresis Atilde -110
+KPX Ydieresis O -70
+KPX Ydieresis Oacute -70
+KPX Ydieresis Ocircumflex -70
+KPX Ydieresis Odieresis -70
+KPX Ydieresis Ograve -70
+KPX Ydieresis Ohungarumlaut -70
+KPX Ydieresis Omacron -70
+KPX Ydieresis Oslash -70
+KPX Ydieresis Otilde -70
+KPX Ydieresis a -90
+KPX Ydieresis aacute -90
+KPX Ydieresis abreve -90
+KPX Ydieresis acircumflex -90
+KPX Ydieresis adieresis -90
+KPX Ydieresis agrave -90
+KPX Ydieresis amacron -90
+KPX Ydieresis aogonek -90
+KPX Ydieresis aring -90
+KPX Ydieresis atilde -90
+KPX Ydieresis colon -50
+KPX Ydieresis comma -100
+KPX Ydieresis e -80
+KPX Ydieresis eacute -80
+KPX Ydieresis ecaron -80
+KPX Ydieresis ecircumflex -80
+KPX Ydieresis edieresis -80
+KPX Ydieresis edotaccent -80
+KPX Ydieresis egrave -80
+KPX Ydieresis emacron -80
+KPX Ydieresis eogonek -80
+KPX Ydieresis o -100
+KPX Ydieresis oacute -100
+KPX Ydieresis ocircumflex -100
+KPX Ydieresis odieresis -100
+KPX Ydieresis ograve -100
+KPX Ydieresis ohungarumlaut -100
+KPX Ydieresis omacron -100
+KPX Ydieresis oslash -100
+KPX Ydieresis otilde -100
+KPX Ydieresis period -100
+KPX Ydieresis semicolon -50
+KPX Ydieresis u -100
+KPX Ydieresis uacute -100
+KPX Ydieresis ucircumflex -100
+KPX Ydieresis udieresis -100
+KPX Ydieresis ugrave -100
+KPX Ydieresis uhungarumlaut -100
+KPX Ydieresis umacron -100
+KPX Ydieresis uogonek -100
+KPX Ydieresis uring -100
+KPX a g -10
+KPX a gbreve -10
+KPX a gcommaaccent -10
+KPX a v -15
+KPX a w -15
+KPX a y -20
+KPX a yacute -20
+KPX a ydieresis -20
+KPX aacute g -10
+KPX aacute gbreve -10
+KPX aacute gcommaaccent -10
+KPX aacute v -15
+KPX aacute w -15
+KPX aacute y -20
+KPX aacute yacute -20
+KPX aacute ydieresis -20
+KPX abreve g -10
+KPX abreve gbreve -10
+KPX abreve gcommaaccent -10
+KPX abreve v -15
+KPX abreve w -15
+KPX abreve y -20
+KPX abreve yacute -20
+KPX abreve ydieresis -20
+KPX acircumflex g -10
+KPX acircumflex gbreve -10
+KPX acircumflex gcommaaccent -10
+KPX acircumflex v -15
+KPX acircumflex w -15
+KPX acircumflex y -20
+KPX acircumflex yacute -20
+KPX acircumflex ydieresis -20
+KPX adieresis g -10
+KPX adieresis gbreve -10
+KPX adieresis gcommaaccent -10
+KPX adieresis v -15
+KPX adieresis w -15
+KPX adieresis y -20
+KPX adieresis yacute -20
+KPX adieresis ydieresis -20
+KPX agrave g -10
+KPX agrave gbreve -10
+KPX agrave gcommaaccent -10
+KPX agrave v -15
+KPX agrave w -15
+KPX agrave y -20
+KPX agrave yacute -20
+KPX agrave ydieresis -20
+KPX amacron g -10
+KPX amacron gbreve -10
+KPX amacron gcommaaccent -10
+KPX amacron v -15
+KPX amacron w -15
+KPX amacron y -20
+KPX amacron yacute -20
+KPX amacron ydieresis -20
+KPX aogonek g -10
+KPX aogonek gbreve -10
+KPX aogonek gcommaaccent -10
+KPX aogonek v -15
+KPX aogonek w -15
+KPX aogonek y -20
+KPX aogonek yacute -20
+KPX aogonek ydieresis -20
+KPX aring g -10
+KPX aring gbreve -10
+KPX aring gcommaaccent -10
+KPX aring v -15
+KPX aring w -15
+KPX aring y -20
+KPX aring yacute -20
+KPX aring ydieresis -20
+KPX atilde g -10
+KPX atilde gbreve -10
+KPX atilde gcommaaccent -10
+KPX atilde v -15
+KPX atilde w -15
+KPX atilde y -20
+KPX atilde yacute -20
+KPX atilde ydieresis -20
+KPX b l -10
+KPX b lacute -10
+KPX b lcommaaccent -10
+KPX b lslash -10
+KPX b u -20
+KPX b uacute -20
+KPX b ucircumflex -20
+KPX b udieresis -20
+KPX b ugrave -20
+KPX b uhungarumlaut -20
+KPX b umacron -20
+KPX b uogonek -20
+KPX b uring -20
+KPX b v -20
+KPX b y -20
+KPX b yacute -20
+KPX b ydieresis -20
+KPX c h -10
+KPX c k -20
+KPX c kcommaaccent -20
+KPX c l -20
+KPX c lacute -20
+KPX c lcommaaccent -20
+KPX c lslash -20
+KPX c y -10
+KPX c yacute -10
+KPX c ydieresis -10
+KPX cacute h -10
+KPX cacute k -20
+KPX cacute kcommaaccent -20
+KPX cacute l -20
+KPX cacute lacute -20
+KPX cacute lcommaaccent -20
+KPX cacute lslash -20
+KPX cacute y -10
+KPX cacute yacute -10
+KPX cacute ydieresis -10
+KPX ccaron h -10
+KPX ccaron k -20
+KPX ccaron kcommaaccent -20
+KPX ccaron l -20
+KPX ccaron lacute -20
+KPX ccaron lcommaaccent -20
+KPX ccaron lslash -20
+KPX ccaron y -10
+KPX ccaron yacute -10
+KPX ccaron ydieresis -10
+KPX ccedilla h -10
+KPX ccedilla k -20
+KPX ccedilla kcommaaccent -20
+KPX ccedilla l -20
+KPX ccedilla lacute -20
+KPX ccedilla lcommaaccent -20
+KPX ccedilla lslash -20
+KPX ccedilla y -10
+KPX ccedilla yacute -10
+KPX ccedilla ydieresis -10
+KPX colon space -40
+KPX comma quotedblright -120
+KPX comma quoteright -120
+KPX comma space -40
+KPX d d -10
+KPX d dcroat -10
+KPX d v -15
+KPX d w -15
+KPX d y -15
+KPX d yacute -15
+KPX d ydieresis -15
+KPX dcroat d -10
+KPX dcroat dcroat -10
+KPX dcroat v -15
+KPX dcroat w -15
+KPX dcroat y -15
+KPX dcroat yacute -15
+KPX dcroat ydieresis -15
+KPX e comma 10
+KPX e period 20
+KPX e v -15
+KPX e w -15
+KPX e x -15
+KPX e y -15
+KPX e yacute -15
+KPX e ydieresis -15
+KPX eacute comma 10
+KPX eacute period 20
+KPX eacute v -15
+KPX eacute w -15
+KPX eacute x -15
+KPX eacute y -15
+KPX eacute yacute -15
+KPX eacute ydieresis -15
+KPX ecaron comma 10
+KPX ecaron period 20
+KPX ecaron v -15
+KPX ecaron w -15
+KPX ecaron x -15
+KPX ecaron y -15
+KPX ecaron yacute -15
+KPX ecaron ydieresis -15
+KPX ecircumflex comma 10
+KPX ecircumflex period 20
+KPX ecircumflex v -15
+KPX ecircumflex w -15
+KPX ecircumflex x -15
+KPX ecircumflex y -15
+KPX ecircumflex yacute -15
+KPX ecircumflex ydieresis -15
+KPX edieresis comma 10
+KPX edieresis period 20
+KPX edieresis v -15
+KPX edieresis w -15
+KPX edieresis x -15
+KPX edieresis y -15
+KPX edieresis yacute -15
+KPX edieresis ydieresis -15
+KPX edotaccent comma 10
+KPX edotaccent period 20
+KPX edotaccent v -15
+KPX edotaccent w -15
+KPX edotaccent x -15
+KPX edotaccent y -15
+KPX edotaccent yacute -15
+KPX edotaccent ydieresis -15
+KPX egrave comma 10
+KPX egrave period 20
+KPX egrave v -15
+KPX egrave w -15
+KPX egrave x -15
+KPX egrave y -15
+KPX egrave yacute -15
+KPX egrave ydieresis -15
+KPX emacron comma 10
+KPX emacron period 20
+KPX emacron v -15
+KPX emacron w -15
+KPX emacron x -15
+KPX emacron y -15
+KPX emacron yacute -15
+KPX emacron ydieresis -15
+KPX eogonek comma 10
+KPX eogonek period 20
+KPX eogonek v -15
+KPX eogonek w -15
+KPX eogonek x -15
+KPX eogonek y -15
+KPX eogonek yacute -15
+KPX eogonek ydieresis -15
+KPX f comma -10
+KPX f e -10
+KPX f eacute -10
+KPX f ecaron -10
+KPX f ecircumflex -10
+KPX f edieresis -10
+KPX f edotaccent -10
+KPX f egrave -10
+KPX f emacron -10
+KPX f eogonek -10
+KPX f o -20
+KPX f oacute -20
+KPX f ocircumflex -20
+KPX f odieresis -20
+KPX f ograve -20
+KPX f ohungarumlaut -20
+KPX f omacron -20
+KPX f oslash -20
+KPX f otilde -20
+KPX f period -10
+KPX f quotedblright 30
+KPX f quoteright 30
+KPX g e 10
+KPX g eacute 10
+KPX g ecaron 10
+KPX g ecircumflex 10
+KPX g edieresis 10
+KPX g edotaccent 10
+KPX g egrave 10
+KPX g emacron 10
+KPX g eogonek 10
+KPX g g -10
+KPX g gbreve -10
+KPX g gcommaaccent -10
+KPX gbreve e 10
+KPX gbreve eacute 10
+KPX gbreve ecaron 10
+KPX gbreve ecircumflex 10
+KPX gbreve edieresis 10
+KPX gbreve edotaccent 10
+KPX gbreve egrave 10
+KPX gbreve emacron 10
+KPX gbreve eogonek 10
+KPX gbreve g -10
+KPX gbreve gbreve -10
+KPX gbreve gcommaaccent -10
+KPX gcommaaccent e 10
+KPX gcommaaccent eacute 10
+KPX gcommaaccent ecaron 10
+KPX gcommaaccent ecircumflex 10
+KPX gcommaaccent edieresis 10
+KPX gcommaaccent edotaccent 10
+KPX gcommaaccent egrave 10
+KPX gcommaaccent emacron 10
+KPX gcommaaccent eogonek 10
+KPX gcommaaccent g -10
+KPX gcommaaccent gbreve -10
+KPX gcommaaccent gcommaaccent -10
+KPX h y -20
+KPX h yacute -20
+KPX h ydieresis -20
+KPX k o -15
+KPX k oacute -15
+KPX k ocircumflex -15
+KPX k odieresis -15
+KPX k ograve -15
+KPX k ohungarumlaut -15
+KPX k omacron -15
+KPX k oslash -15
+KPX k otilde -15
+KPX kcommaaccent o -15
+KPX kcommaaccent oacute -15
+KPX kcommaaccent ocircumflex -15
+KPX kcommaaccent odieresis -15
+KPX kcommaaccent ograve -15
+KPX kcommaaccent ohungarumlaut -15
+KPX kcommaaccent omacron -15
+KPX kcommaaccent oslash -15
+KPX kcommaaccent otilde -15
+KPX l w -15
+KPX l y -15
+KPX l yacute -15
+KPX l ydieresis -15
+KPX lacute w -15
+KPX lacute y -15
+KPX lacute yacute -15
+KPX lacute ydieresis -15
+KPX lcommaaccent w -15
+KPX lcommaaccent y -15
+KPX lcommaaccent yacute -15
+KPX lcommaaccent ydieresis -15
+KPX lslash w -15
+KPX lslash y -15
+KPX lslash yacute -15
+KPX lslash ydieresis -15
+KPX m u -20
+KPX m uacute -20
+KPX m ucircumflex -20
+KPX m udieresis -20
+KPX m ugrave -20
+KPX m uhungarumlaut -20
+KPX m umacron -20
+KPX m uogonek -20
+KPX m uring -20
+KPX m y -30
+KPX m yacute -30
+KPX m ydieresis -30
+KPX n u -10
+KPX n uacute -10
+KPX n ucircumflex -10
+KPX n udieresis -10
+KPX n ugrave -10
+KPX n uhungarumlaut -10
+KPX n umacron -10
+KPX n uogonek -10
+KPX n uring -10
+KPX n v -40
+KPX n y -20
+KPX n yacute -20
+KPX n ydieresis -20
+KPX nacute u -10
+KPX nacute uacute -10
+KPX nacute ucircumflex -10
+KPX nacute udieresis -10
+KPX nacute ugrave -10
+KPX nacute uhungarumlaut -10
+KPX nacute umacron -10
+KPX nacute uogonek -10
+KPX nacute uring -10
+KPX nacute v -40
+KPX nacute y -20
+KPX nacute yacute -20
+KPX nacute ydieresis -20
+KPX ncaron u -10
+KPX ncaron uacute -10
+KPX ncaron ucircumflex -10
+KPX ncaron udieresis -10
+KPX ncaron ugrave -10
+KPX ncaron uhungarumlaut -10
+KPX ncaron umacron -10
+KPX ncaron uogonek -10
+KPX ncaron uring -10
+KPX ncaron v -40
+KPX ncaron y -20
+KPX ncaron yacute -20
+KPX ncaron ydieresis -20
+KPX ncommaaccent u -10
+KPX ncommaaccent uacute -10
+KPX ncommaaccent ucircumflex -10
+KPX ncommaaccent udieresis -10
+KPX ncommaaccent ugrave -10
+KPX ncommaaccent uhungarumlaut -10
+KPX ncommaaccent umacron -10
+KPX ncommaaccent uogonek -10
+KPX ncommaaccent uring -10
+KPX ncommaaccent v -40
+KPX ncommaaccent y -20
+KPX ncommaaccent yacute -20
+KPX ncommaaccent ydieresis -20
+KPX ntilde u -10
+KPX ntilde uacute -10
+KPX ntilde ucircumflex -10
+KPX ntilde udieresis -10
+KPX ntilde ugrave -10
+KPX ntilde uhungarumlaut -10
+KPX ntilde umacron -10
+KPX ntilde uogonek -10
+KPX ntilde uring -10
+KPX ntilde v -40
+KPX ntilde y -20
+KPX ntilde yacute -20
+KPX ntilde ydieresis -20
+KPX o v -20
+KPX o w -15
+KPX o x -30
+KPX o y -20
+KPX o yacute -20
+KPX o ydieresis -20
+KPX oacute v -20
+KPX oacute w -15
+KPX oacute x -30
+KPX oacute y -20
+KPX oacute yacute -20
+KPX oacute ydieresis -20
+KPX ocircumflex v -20
+KPX ocircumflex w -15
+KPX ocircumflex x -30
+KPX ocircumflex y -20
+KPX ocircumflex yacute -20
+KPX ocircumflex ydieresis -20
+KPX odieresis v -20
+KPX odieresis w -15
+KPX odieresis x -30
+KPX odieresis y -20
+KPX odieresis yacute -20
+KPX odieresis ydieresis -20
+KPX ograve v -20
+KPX ograve w -15
+KPX ograve x -30
+KPX ograve y -20
+KPX ograve yacute -20
+KPX ograve ydieresis -20
+KPX ohungarumlaut v -20
+KPX ohungarumlaut w -15
+KPX ohungarumlaut x -30
+KPX ohungarumlaut y -20
+KPX ohungarumlaut yacute -20
+KPX ohungarumlaut ydieresis -20
+KPX omacron v -20
+KPX omacron w -15
+KPX omacron x -30
+KPX omacron y -20
+KPX omacron yacute -20
+KPX omacron ydieresis -20
+KPX oslash v -20
+KPX oslash w -15
+KPX oslash x -30
+KPX oslash y -20
+KPX oslash yacute -20
+KPX oslash ydieresis -20
+KPX otilde v -20
+KPX otilde w -15
+KPX otilde x -30
+KPX otilde y -20
+KPX otilde yacute -20
+KPX otilde ydieresis -20
+KPX p y -15
+KPX p yacute -15
+KPX p ydieresis -15
+KPX period quotedblright -120
+KPX period quoteright -120
+KPX period space -40
+KPX quotedblright space -80
+KPX quoteleft quoteleft -46
+KPX quoteright d -80
+KPX quoteright dcroat -80
+KPX quoteright l -20
+KPX quoteright lacute -20
+KPX quoteright lcommaaccent -20
+KPX quoteright lslash -20
+KPX quoteright quoteright -46
+KPX quoteright r -40
+KPX quoteright racute -40
+KPX quoteright rcaron -40
+KPX quoteright rcommaaccent -40
+KPX quoteright s -60
+KPX quoteright sacute -60
+KPX quoteright scaron -60
+KPX quoteright scedilla -60
+KPX quoteright scommaaccent -60
+KPX quoteright space -80
+KPX quoteright v -20
+KPX r c -20
+KPX r cacute -20
+KPX r ccaron -20
+KPX r ccedilla -20
+KPX r comma -60
+KPX r d -20
+KPX r dcroat -20
+KPX r g -15
+KPX r gbreve -15
+KPX r gcommaaccent -15
+KPX r hyphen -20
+KPX r o -20
+KPX r oacute -20
+KPX r ocircumflex -20
+KPX r odieresis -20
+KPX r ograve -20
+KPX r ohungarumlaut -20
+KPX r omacron -20
+KPX r oslash -20
+KPX r otilde -20
+KPX r period -60
+KPX r q -20
+KPX r s -15
+KPX r sacute -15
+KPX r scaron -15
+KPX r scedilla -15
+KPX r scommaaccent -15
+KPX r t 20
+KPX r tcommaaccent 20
+KPX r v 10
+KPX r y 10
+KPX r yacute 10
+KPX r ydieresis 10
+KPX racute c -20
+KPX racute cacute -20
+KPX racute ccaron -20
+KPX racute ccedilla -20
+KPX racute comma -60
+KPX racute d -20
+KPX racute dcroat -20
+KPX racute g -15
+KPX racute gbreve -15
+KPX racute gcommaaccent -15
+KPX racute hyphen -20
+KPX racute o -20
+KPX racute oacute -20
+KPX racute ocircumflex -20
+KPX racute odieresis -20
+KPX racute ograve -20
+KPX racute ohungarumlaut -20
+KPX racute omacron -20
+KPX racute oslash -20
+KPX racute otilde -20
+KPX racute period -60
+KPX racute q -20
+KPX racute s -15
+KPX racute sacute -15
+KPX racute scaron -15
+KPX racute scedilla -15
+KPX racute scommaaccent -15
+KPX racute t 20
+KPX racute tcommaaccent 20
+KPX racute v 10
+KPX racute y 10
+KPX racute yacute 10
+KPX racute ydieresis 10
+KPX rcaron c -20
+KPX rcaron cacute -20
+KPX rcaron ccaron -20
+KPX rcaron ccedilla -20
+KPX rcaron comma -60
+KPX rcaron d -20
+KPX rcaron dcroat -20
+KPX rcaron g -15
+KPX rcaron gbreve -15
+KPX rcaron gcommaaccent -15
+KPX rcaron hyphen -20
+KPX rcaron o -20
+KPX rcaron oacute -20
+KPX rcaron ocircumflex -20
+KPX rcaron odieresis -20
+KPX rcaron ograve -20
+KPX rcaron ohungarumlaut -20
+KPX rcaron omacron -20
+KPX rcaron oslash -20
+KPX rcaron otilde -20
+KPX rcaron period -60
+KPX rcaron q -20
+KPX rcaron s -15
+KPX rcaron sacute -15
+KPX rcaron scaron -15
+KPX rcaron scedilla -15
+KPX rcaron scommaaccent -15
+KPX rcaron t 20
+KPX rcaron tcommaaccent 20
+KPX rcaron v 10
+KPX rcaron y 10
+KPX rcaron yacute 10
+KPX rcaron ydieresis 10
+KPX rcommaaccent c -20
+KPX rcommaaccent cacute -20
+KPX rcommaaccent ccaron -20
+KPX rcommaaccent ccedilla -20
+KPX rcommaaccent comma -60
+KPX rcommaaccent d -20
+KPX rcommaaccent dcroat -20
+KPX rcommaaccent g -15
+KPX rcommaaccent gbreve -15
+KPX rcommaaccent gcommaaccent -15
+KPX rcommaaccent hyphen -20
+KPX rcommaaccent o -20
+KPX rcommaaccent oacute -20
+KPX rcommaaccent ocircumflex -20
+KPX rcommaaccent odieresis -20
+KPX rcommaaccent ograve -20
+KPX rcommaaccent ohungarumlaut -20
+KPX rcommaaccent omacron -20
+KPX rcommaaccent oslash -20
+KPX rcommaaccent otilde -20
+KPX rcommaaccent period -60
+KPX rcommaaccent q -20
+KPX rcommaaccent s -15
+KPX rcommaaccent sacute -15
+KPX rcommaaccent scaron -15
+KPX rcommaaccent scedilla -15
+KPX rcommaaccent scommaaccent -15
+KPX rcommaaccent t 20
+KPX rcommaaccent tcommaaccent 20
+KPX rcommaaccent v 10
+KPX rcommaaccent y 10
+KPX rcommaaccent yacute 10
+KPX rcommaaccent ydieresis 10
+KPX s w -15
+KPX sacute w -15
+KPX scaron w -15
+KPX scedilla w -15
+KPX scommaaccent w -15
+KPX semicolon space -40
+KPX space T -100
+KPX space Tcaron -100
+KPX space Tcommaaccent -100
+KPX space V -80
+KPX space W -80
+KPX space Y -120
+KPX space Yacute -120
+KPX space Ydieresis -120
+KPX space quotedblleft -80
+KPX space quoteleft -60
+KPX v a -20
+KPX v aacute -20
+KPX v abreve -20
+KPX v acircumflex -20
+KPX v adieresis -20
+KPX v agrave -20
+KPX v amacron -20
+KPX v aogonek -20
+KPX v aring -20
+KPX v atilde -20
+KPX v comma -80
+KPX v o -30
+KPX v oacute -30
+KPX v ocircumflex -30
+KPX v odieresis -30
+KPX v ograve -30
+KPX v ohungarumlaut -30
+KPX v omacron -30
+KPX v oslash -30
+KPX v otilde -30
+KPX v period -80
+KPX w comma -40
+KPX w o -20
+KPX w oacute -20
+KPX w ocircumflex -20
+KPX w odieresis -20
+KPX w ograve -20
+KPX w ohungarumlaut -20
+KPX w omacron -20
+KPX w oslash -20
+KPX w otilde -20
+KPX w period -40
+KPX x e -10
+KPX x eacute -10
+KPX x ecaron -10
+KPX x ecircumflex -10
+KPX x edieresis -10
+KPX x edotaccent -10
+KPX x egrave -10
+KPX x emacron -10
+KPX x eogonek -10
+KPX y a -30
+KPX y aacute -30
+KPX y abreve -30
+KPX y acircumflex -30
+KPX y adieresis -30
+KPX y agrave -30
+KPX y amacron -30
+KPX y aogonek -30
+KPX y aring -30
+KPX y atilde -30
+KPX y comma -80
+KPX y e -10
+KPX y eacute -10
+KPX y ecaron -10
+KPX y ecircumflex -10
+KPX y edieresis -10
+KPX y edotaccent -10
+KPX y egrave -10
+KPX y emacron -10
+KPX y eogonek -10
+KPX y o -25
+KPX y oacute -25
+KPX y ocircumflex -25
+KPX y odieresis -25
+KPX y ograve -25
+KPX y ohungarumlaut -25
+KPX y omacron -25
+KPX y oslash -25
+KPX y otilde -25
+KPX y period -80
+KPX yacute a -30
+KPX yacute aacute -30
+KPX yacute abreve -30
+KPX yacute acircumflex -30
+KPX yacute adieresis -30
+KPX yacute agrave -30
+KPX yacute amacron -30
+KPX yacute aogonek -30
+KPX yacute aring -30
+KPX yacute atilde -30
+KPX yacute comma -80
+KPX yacute e -10
+KPX yacute eacute -10
+KPX yacute ecaron -10
+KPX yacute ecircumflex -10
+KPX yacute edieresis -10
+KPX yacute edotaccent -10
+KPX yacute egrave -10
+KPX yacute emacron -10
+KPX yacute eogonek -10
+KPX yacute o -25
+KPX yacute oacute -25
+KPX yacute ocircumflex -25
+KPX yacute odieresis -25
+KPX yacute ograve -25
+KPX yacute ohungarumlaut -25
+KPX yacute omacron -25
+KPX yacute oslash -25
+KPX yacute otilde -25
+KPX yacute period -80
+KPX ydieresis a -30
+KPX ydieresis aacute -30
+KPX ydieresis abreve -30
+KPX ydieresis acircumflex -30
+KPX ydieresis adieresis -30
+KPX ydieresis agrave -30
+KPX ydieresis amacron -30
+KPX ydieresis aogonek -30
+KPX ydieresis aring -30
+KPX ydieresis atilde -30
+KPX ydieresis comma -80
+KPX ydieresis e -10
+KPX ydieresis eacute -10
+KPX ydieresis ecaron -10
+KPX ydieresis ecircumflex -10
+KPX ydieresis edieresis -10
+KPX ydieresis edotaccent -10
+KPX ydieresis egrave -10
+KPX ydieresis emacron -10
+KPX ydieresis eogonek -10
+KPX ydieresis o -25
+KPX ydieresis oacute -25
+KPX ydieresis ocircumflex -25
+KPX ydieresis odieresis -25
+KPX ydieresis ograve -25
+KPX ydieresis ohungarumlaut -25
+KPX ydieresis omacron -25
+KPX ydieresis oslash -25
+KPX ydieresis otilde -25
+KPX ydieresis period -80
+KPX z e 10
+KPX z eacute 10
+KPX z ecaron 10
+KPX z ecircumflex 10
+KPX z edieresis 10
+KPX z edotaccent 10
+KPX z egrave 10
+KPX z emacron 10
+KPX z eogonek 10
+KPX zacute e 10
+KPX zacute eacute 10
+KPX zacute ecaron 10
+KPX zacute ecircumflex 10
+KPX zacute edieresis 10
+KPX zacute edotaccent 10
+KPX zacute egrave 10
+KPX zacute emacron 10
+KPX zacute eogonek 10
+KPX zcaron e 10
+KPX zcaron eacute 10
+KPX zcaron ecaron 10
+KPX zcaron ecircumflex 10
+KPX zcaron edieresis 10
+KPX zcaron edotaccent 10
+KPX zcaron egrave 10
+KPX zcaron emacron 10
+KPX zcaron eogonek 10
+KPX zdotaccent e 10
+KPX zdotaccent eacute 10
+KPX zdotaccent ecaron 10
+KPX zdotaccent ecircumflex 10
+KPX zdotaccent edieresis 10
+KPX zdotaccent edotaccent 10
+KPX zdotaccent egrave 10
+KPX zdotaccent emacron 10
+KPX zdotaccent eogonek 10
+EndKernPairs
+EndKernData
+EndFontMetrics
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Helvetica-Oblique.afm b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Helvetica-Oblique.afm
new file mode 100755
index 00000000..7a7af001
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Helvetica-Oblique.afm
@@ -0,0 +1,3051 @@
+StartFontMetrics 4.1
+Comment Copyright (c) 1985, 1987, 1989, 1990, 1997 Adobe Systems Incorporated. All Rights Reserved.
+Comment Creation Date: Thu May 1 12:44:31 1997
+Comment UniqueID 43055
+Comment VMusage 14960 69346
+FontName Helvetica-Oblique
+FullName Helvetica Oblique
+FamilyName Helvetica
+Weight Medium
+ItalicAngle -12
+IsFixedPitch false
+CharacterSet ExtendedRoman
+FontBBox -170 -225 1116 931
+UnderlinePosition -100
+UnderlineThickness 50
+Version 002.000
+Notice Copyright (c) 1985, 1987, 1989, 1990, 1997 Adobe Systems Incorporated. All Rights Reserved.Helvetica is a trademark of Linotype-Hell AG and/or its subsidiaries.
+EncodingScheme AdobeStandardEncoding
+CapHeight 718
+XHeight 523
+Ascender 718
+Descender -207
+StdHW 76
+StdVW 88
+StartCharMetrics 315
+C 32 ; WX 278 ; N space ; B 0 0 0 0 ;
+C 33 ; WX 278 ; N exclam ; B 90 0 340 718 ;
+C 34 ; WX 355 ; N quotedbl ; B 168 463 438 718 ;
+C 35 ; WX 556 ; N numbersign ; B 73 0 631 688 ;
+C 36 ; WX 556 ; N dollar ; B 69 -115 617 775 ;
+C 37 ; WX 889 ; N percent ; B 147 -19 889 703 ;
+C 38 ; WX 667 ; N ampersand ; B 77 -15 647 718 ;
+C 39 ; WX 222 ; N quoteright ; B 151 463 310 718 ;
+C 40 ; WX 333 ; N parenleft ; B 108 -207 454 733 ;
+C 41 ; WX 333 ; N parenright ; B -9 -207 337 733 ;
+C 42 ; WX 389 ; N asterisk ; B 165 431 475 718 ;
+C 43 ; WX 584 ; N plus ; B 85 0 606 505 ;
+C 44 ; WX 278 ; N comma ; B 56 -147 214 106 ;
+C 45 ; WX 333 ; N hyphen ; B 93 232 357 322 ;
+C 46 ; WX 278 ; N period ; B 87 0 214 106 ;
+C 47 ; WX 278 ; N slash ; B -21 -19 452 737 ;
+C 48 ; WX 556 ; N zero ; B 93 -19 608 703 ;
+C 49 ; WX 556 ; N one ; B 207 0 508 703 ;
+C 50 ; WX 556 ; N two ; B 26 0 617 703 ;
+C 51 ; WX 556 ; N three ; B 75 -19 610 703 ;
+C 52 ; WX 556 ; N four ; B 61 0 576 703 ;
+C 53 ; WX 556 ; N five ; B 68 -19 621 688 ;
+C 54 ; WX 556 ; N six ; B 91 -19 615 703 ;
+C 55 ; WX 556 ; N seven ; B 137 0 669 688 ;
+C 56 ; WX 556 ; N eight ; B 74 -19 607 703 ;
+C 57 ; WX 556 ; N nine ; B 82 -19 609 703 ;
+C 58 ; WX 278 ; N colon ; B 87 0 301 516 ;
+C 59 ; WX 278 ; N semicolon ; B 56 -147 301 516 ;
+C 60 ; WX 584 ; N less ; B 94 11 641 495 ;
+C 61 ; WX 584 ; N equal ; B 63 115 628 390 ;
+C 62 ; WX 584 ; N greater ; B 50 11 597 495 ;
+C 63 ; WX 556 ; N question ; B 161 0 610 727 ;
+C 64 ; WX 1015 ; N at ; B 215 -19 965 737 ;
+C 65 ; WX 667 ; N A ; B 14 0 654 718 ;
+C 66 ; WX 667 ; N B ; B 74 0 712 718 ;
+C 67 ; WX 722 ; N C ; B 108 -19 782 737 ;
+C 68 ; WX 722 ; N D ; B 81 0 764 718 ;
+C 69 ; WX 667 ; N E ; B 86 0 762 718 ;
+C 70 ; WX 611 ; N F ; B 86 0 736 718 ;
+C 71 ; WX 778 ; N G ; B 111 -19 799 737 ;
+C 72 ; WX 722 ; N H ; B 77 0 799 718 ;
+C 73 ; WX 278 ; N I ; B 91 0 341 718 ;
+C 74 ; WX 500 ; N J ; B 47 -19 581 718 ;
+C 75 ; WX 667 ; N K ; B 76 0 808 718 ;
+C 76 ; WX 556 ; N L ; B 76 0 555 718 ;
+C 77 ; WX 833 ; N M ; B 73 0 914 718 ;
+C 78 ; WX 722 ; N N ; B 76 0 799 718 ;
+C 79 ; WX 778 ; N O ; B 105 -19 826 737 ;
+C 80 ; WX 667 ; N P ; B 86 0 737 718 ;
+C 81 ; WX 778 ; N Q ; B 105 -56 826 737 ;
+C 82 ; WX 722 ; N R ; B 88 0 773 718 ;
+C 83 ; WX 667 ; N S ; B 90 -19 713 737 ;
+C 84 ; WX 611 ; N T ; B 148 0 750 718 ;
+C 85 ; WX 722 ; N U ; B 123 -19 797 718 ;
+C 86 ; WX 667 ; N V ; B 173 0 800 718 ;
+C 87 ; WX 944 ; N W ; B 169 0 1081 718 ;
+C 88 ; WX 667 ; N X ; B 19 0 790 718 ;
+C 89 ; WX 667 ; N Y ; B 167 0 806 718 ;
+C 90 ; WX 611 ; N Z ; B 23 0 741 718 ;
+C 91 ; WX 278 ; N bracketleft ; B 21 -196 403 722 ;
+C 92 ; WX 278 ; N backslash ; B 140 -19 291 737 ;
+C 93 ; WX 278 ; N bracketright ; B -14 -196 368 722 ;
+C 94 ; WX 469 ; N asciicircum ; B 42 264 539 688 ;
+C 95 ; WX 556 ; N underscore ; B -27 -125 540 -75 ;
+C 96 ; WX 222 ; N quoteleft ; B 165 470 323 725 ;
+C 97 ; WX 556 ; N a ; B 61 -15 559 538 ;
+C 98 ; WX 556 ; N b ; B 58 -15 584 718 ;
+C 99 ; WX 500 ; N c ; B 74 -15 553 538 ;
+C 100 ; WX 556 ; N d ; B 84 -15 652 718 ;
+C 101 ; WX 556 ; N e ; B 84 -15 578 538 ;
+C 102 ; WX 278 ; N f ; B 86 0 416 728 ; L i fi ; L l fl ;
+C 103 ; WX 556 ; N g ; B 42 -220 610 538 ;
+C 104 ; WX 556 ; N h ; B 65 0 573 718 ;
+C 105 ; WX 222 ; N i ; B 67 0 308 718 ;
+C 106 ; WX 222 ; N j ; B -60 -210 308 718 ;
+C 107 ; WX 500 ; N k ; B 67 0 600 718 ;
+C 108 ; WX 222 ; N l ; B 67 0 308 718 ;
+C 109 ; WX 833 ; N m ; B 65 0 852 538 ;
+C 110 ; WX 556 ; N n ; B 65 0 573 538 ;
+C 111 ; WX 556 ; N o ; B 83 -14 585 538 ;
+C 112 ; WX 556 ; N p ; B 14 -207 584 538 ;
+C 113 ; WX 556 ; N q ; B 84 -207 605 538 ;
+C 114 ; WX 333 ; N r ; B 77 0 446 538 ;
+C 115 ; WX 500 ; N s ; B 63 -15 529 538 ;
+C 116 ; WX 278 ; N t ; B 102 -7 368 669 ;
+C 117 ; WX 556 ; N u ; B 94 -15 600 523 ;
+C 118 ; WX 500 ; N v ; B 119 0 603 523 ;
+C 119 ; WX 722 ; N w ; B 125 0 820 523 ;
+C 120 ; WX 500 ; N x ; B 11 0 594 523 ;
+C 121 ; WX 500 ; N y ; B 15 -214 600 523 ;
+C 122 ; WX 500 ; N z ; B 31 0 571 523 ;
+C 123 ; WX 334 ; N braceleft ; B 92 -196 445 722 ;
+C 124 ; WX 260 ; N bar ; B 46 -225 332 775 ;
+C 125 ; WX 334 ; N braceright ; B 0 -196 354 722 ;
+C 126 ; WX 584 ; N asciitilde ; B 111 180 580 326 ;
+C 161 ; WX 333 ; N exclamdown ; B 77 -195 326 523 ;
+C 162 ; WX 556 ; N cent ; B 95 -115 584 623 ;
+C 163 ; WX 556 ; N sterling ; B 49 -16 634 718 ;
+C 164 ; WX 167 ; N fraction ; B -170 -19 482 703 ;
+C 165 ; WX 556 ; N yen ; B 81 0 699 688 ;
+C 166 ; WX 556 ; N florin ; B -52 -207 654 737 ;
+C 167 ; WX 556 ; N section ; B 76 -191 584 737 ;
+C 168 ; WX 556 ; N currency ; B 60 99 646 603 ;
+C 169 ; WX 191 ; N quotesingle ; B 157 463 285 718 ;
+C 170 ; WX 333 ; N quotedblleft ; B 138 470 461 725 ;
+C 171 ; WX 556 ; N guillemotleft ; B 146 108 554 446 ;
+C 172 ; WX 333 ; N guilsinglleft ; B 137 108 340 446 ;
+C 173 ; WX 333 ; N guilsinglright ; B 111 108 314 446 ;
+C 174 ; WX 500 ; N fi ; B 86 0 587 728 ;
+C 175 ; WX 500 ; N fl ; B 86 0 585 728 ;
+C 177 ; WX 556 ; N endash ; B 51 240 623 313 ;
+C 178 ; WX 556 ; N dagger ; B 135 -159 622 718 ;
+C 179 ; WX 556 ; N daggerdbl ; B 52 -159 623 718 ;
+C 180 ; WX 278 ; N periodcentered ; B 129 190 257 315 ;
+C 182 ; WX 537 ; N paragraph ; B 126 -173 650 718 ;
+C 183 ; WX 350 ; N bullet ; B 91 202 413 517 ;
+C 184 ; WX 222 ; N quotesinglbase ; B 21 -149 180 106 ;
+C 185 ; WX 333 ; N quotedblbase ; B -6 -149 318 106 ;
+C 186 ; WX 333 ; N quotedblright ; B 124 463 448 718 ;
+C 187 ; WX 556 ; N guillemotright ; B 120 108 528 446 ;
+C 188 ; WX 1000 ; N ellipsis ; B 115 0 908 106 ;
+C 189 ; WX 1000 ; N perthousand ; B 88 -19 1029 703 ;
+C 191 ; WX 611 ; N questiondown ; B 85 -201 534 525 ;
+C 193 ; WX 333 ; N grave ; B 170 593 337 734 ;
+C 194 ; WX 333 ; N acute ; B 248 593 475 734 ;
+C 195 ; WX 333 ; N circumflex ; B 147 593 438 734 ;
+C 196 ; WX 333 ; N tilde ; B 125 606 490 722 ;
+C 197 ; WX 333 ; N macron ; B 143 627 468 684 ;
+C 198 ; WX 333 ; N breve ; B 167 595 476 731 ;
+C 199 ; WX 333 ; N dotaccent ; B 249 604 362 706 ;
+C 200 ; WX 333 ; N dieresis ; B 168 604 443 706 ;
+C 202 ; WX 333 ; N ring ; B 214 572 402 756 ;
+C 203 ; WX 333 ; N cedilla ; B 2 -225 232 0 ;
+C 205 ; WX 333 ; N hungarumlaut ; B 157 593 565 734 ;
+C 206 ; WX 333 ; N ogonek ; B 43 -225 249 0 ;
+C 207 ; WX 333 ; N caron ; B 177 593 468 734 ;
+C 208 ; WX 1000 ; N emdash ; B 51 240 1067 313 ;
+C 225 ; WX 1000 ; N AE ; B 8 0 1097 718 ;
+C 227 ; WX 370 ; N ordfeminine ; B 127 405 449 737 ;
+C 232 ; WX 556 ; N Lslash ; B 41 0 555 718 ;
+C 233 ; WX 778 ; N Oslash ; B 43 -19 890 737 ;
+C 234 ; WX 1000 ; N OE ; B 98 -19 1116 737 ;
+C 235 ; WX 365 ; N ordmasculine ; B 141 405 468 737 ;
+C 241 ; WX 889 ; N ae ; B 61 -15 909 538 ;
+C 245 ; WX 278 ; N dotlessi ; B 95 0 294 523 ;
+C 248 ; WX 222 ; N lslash ; B 41 0 347 718 ;
+C 249 ; WX 611 ; N oslash ; B 29 -22 647 545 ;
+C 250 ; WX 944 ; N oe ; B 83 -15 964 538 ;
+C 251 ; WX 611 ; N germandbls ; B 67 -15 658 728 ;
+C -1 ; WX 278 ; N Idieresis ; B 91 0 458 901 ;
+C -1 ; WX 556 ; N eacute ; B 84 -15 587 734 ;
+C -1 ; WX 556 ; N abreve ; B 61 -15 578 731 ;
+C -1 ; WX 556 ; N uhungarumlaut ; B 94 -15 677 734 ;
+C -1 ; WX 556 ; N ecaron ; B 84 -15 580 734 ;
+C -1 ; WX 667 ; N Ydieresis ; B 167 0 806 901 ;
+C -1 ; WX 584 ; N divide ; B 85 -19 606 524 ;
+C -1 ; WX 667 ; N Yacute ; B 167 0 806 929 ;
+C -1 ; WX 667 ; N Acircumflex ; B 14 0 654 929 ;
+C -1 ; WX 556 ; N aacute ; B 61 -15 587 734 ;
+C -1 ; WX 722 ; N Ucircumflex ; B 123 -19 797 929 ;
+C -1 ; WX 500 ; N yacute ; B 15 -214 600 734 ;
+C -1 ; WX 500 ; N scommaaccent ; B 63 -225 529 538 ;
+C -1 ; WX 556 ; N ecircumflex ; B 84 -15 578 734 ;
+C -1 ; WX 722 ; N Uring ; B 123 -19 797 931 ;
+C -1 ; WX 722 ; N Udieresis ; B 123 -19 797 901 ;
+C -1 ; WX 556 ; N aogonek ; B 61 -220 559 538 ;
+C -1 ; WX 722 ; N Uacute ; B 123 -19 797 929 ;
+C -1 ; WX 556 ; N uogonek ; B 94 -225 600 523 ;
+C -1 ; WX 667 ; N Edieresis ; B 86 0 762 901 ;
+C -1 ; WX 722 ; N Dcroat ; B 69 0 764 718 ;
+C -1 ; WX 250 ; N commaaccent ; B 39 -225 172 -40 ;
+C -1 ; WX 737 ; N copyright ; B 54 -19 837 737 ;
+C -1 ; WX 667 ; N Emacron ; B 86 0 762 879 ;
+C -1 ; WX 500 ; N ccaron ; B 74 -15 553 734 ;
+C -1 ; WX 556 ; N aring ; B 61 -15 559 756 ;
+C -1 ; WX 722 ; N Ncommaaccent ; B 76 -225 799 718 ;
+C -1 ; WX 222 ; N lacute ; B 67 0 461 929 ;
+C -1 ; WX 556 ; N agrave ; B 61 -15 559 734 ;
+C -1 ; WX 611 ; N Tcommaaccent ; B 148 -225 750 718 ;
+C -1 ; WX 722 ; N Cacute ; B 108 -19 782 929 ;
+C -1 ; WX 556 ; N atilde ; B 61 -15 592 722 ;
+C -1 ; WX 667 ; N Edotaccent ; B 86 0 762 901 ;
+C -1 ; WX 500 ; N scaron ; B 63 -15 552 734 ;
+C -1 ; WX 500 ; N scedilla ; B 63 -225 529 538 ;
+C -1 ; WX 278 ; N iacute ; B 95 0 448 734 ;
+C -1 ; WX 471 ; N lozenge ; B 88 0 540 728 ;
+C -1 ; WX 722 ; N Rcaron ; B 88 0 773 929 ;
+C -1 ; WX 778 ; N Gcommaaccent ; B 111 -225 799 737 ;
+C -1 ; WX 556 ; N ucircumflex ; B 94 -15 600 734 ;
+C -1 ; WX 556 ; N acircumflex ; B 61 -15 559 734 ;
+C -1 ; WX 667 ; N Amacron ; B 14 0 677 879 ;
+C -1 ; WX 333 ; N rcaron ; B 77 0 508 734 ;
+C -1 ; WX 500 ; N ccedilla ; B 74 -225 553 538 ;
+C -1 ; WX 611 ; N Zdotaccent ; B 23 0 741 901 ;
+C -1 ; WX 667 ; N Thorn ; B 86 0 712 718 ;
+C -1 ; WX 778 ; N Omacron ; B 105 -19 826 879 ;
+C -1 ; WX 722 ; N Racute ; B 88 0 773 929 ;
+C -1 ; WX 667 ; N Sacute ; B 90 -19 713 929 ;
+C -1 ; WX 643 ; N dcaron ; B 84 -15 808 718 ;
+C -1 ; WX 722 ; N Umacron ; B 123 -19 797 879 ;
+C -1 ; WX 556 ; N uring ; B 94 -15 600 756 ;
+C -1 ; WX 333 ; N threesuperior ; B 90 270 436 703 ;
+C -1 ; WX 778 ; N Ograve ; B 105 -19 826 929 ;
+C -1 ; WX 667 ; N Agrave ; B 14 0 654 929 ;
+C -1 ; WX 667 ; N Abreve ; B 14 0 685 926 ;
+C -1 ; WX 584 ; N multiply ; B 50 0 642 506 ;
+C -1 ; WX 556 ; N uacute ; B 94 -15 600 734 ;
+C -1 ; WX 611 ; N Tcaron ; B 148 0 750 929 ;
+C -1 ; WX 476 ; N partialdiff ; B 41 -38 550 714 ;
+C -1 ; WX 500 ; N ydieresis ; B 15 -214 600 706 ;
+C -1 ; WX 722 ; N Nacute ; B 76 0 799 929 ;
+C -1 ; WX 278 ; N icircumflex ; B 95 0 411 734 ;
+C -1 ; WX 667 ; N Ecircumflex ; B 86 0 762 929 ;
+C -1 ; WX 556 ; N adieresis ; B 61 -15 559 706 ;
+C -1 ; WX 556 ; N edieresis ; B 84 -15 578 706 ;
+C -1 ; WX 500 ; N cacute ; B 74 -15 559 734 ;
+C -1 ; WX 556 ; N nacute ; B 65 0 587 734 ;
+C -1 ; WX 556 ; N umacron ; B 94 -15 600 684 ;
+C -1 ; WX 722 ; N Ncaron ; B 76 0 799 929 ;
+C -1 ; WX 278 ; N Iacute ; B 91 0 489 929 ;
+C -1 ; WX 584 ; N plusminus ; B 39 0 618 506 ;
+C -1 ; WX 260 ; N brokenbar ; B 62 -150 316 700 ;
+C -1 ; WX 737 ; N registered ; B 54 -19 837 737 ;
+C -1 ; WX 778 ; N Gbreve ; B 111 -19 799 926 ;
+C -1 ; WX 278 ; N Idotaccent ; B 91 0 377 901 ;
+C -1 ; WX 600 ; N summation ; B 15 -10 671 706 ;
+C -1 ; WX 667 ; N Egrave ; B 86 0 762 929 ;
+C -1 ; WX 333 ; N racute ; B 77 0 475 734 ;
+C -1 ; WX 556 ; N omacron ; B 83 -14 585 684 ;
+C -1 ; WX 611 ; N Zacute ; B 23 0 741 929 ;
+C -1 ; WX 611 ; N Zcaron ; B 23 0 741 929 ;
+C -1 ; WX 549 ; N greaterequal ; B 26 0 620 674 ;
+C -1 ; WX 722 ; N Eth ; B 69 0 764 718 ;
+C -1 ; WX 722 ; N Ccedilla ; B 108 -225 782 737 ;
+C -1 ; WX 222 ; N lcommaaccent ; B 25 -225 308 718 ;
+C -1 ; WX 317 ; N tcaron ; B 102 -7 501 808 ;
+C -1 ; WX 556 ; N eogonek ; B 84 -225 578 538 ;
+C -1 ; WX 722 ; N Uogonek ; B 123 -225 797 718 ;
+C -1 ; WX 667 ; N Aacute ; B 14 0 683 929 ;
+C -1 ; WX 667 ; N Adieresis ; B 14 0 654 901 ;
+C -1 ; WX 556 ; N egrave ; B 84 -15 578 734 ;
+C -1 ; WX 500 ; N zacute ; B 31 0 571 734 ;
+C -1 ; WX 222 ; N iogonek ; B -61 -225 308 718 ;
+C -1 ; WX 778 ; N Oacute ; B 105 -19 826 929 ;
+C -1 ; WX 556 ; N oacute ; B 83 -14 587 734 ;
+C -1 ; WX 556 ; N amacron ; B 61 -15 580 684 ;
+C -1 ; WX 500 ; N sacute ; B 63 -15 559 734 ;
+C -1 ; WX 278 ; N idieresis ; B 95 0 416 706 ;
+C -1 ; WX 778 ; N Ocircumflex ; B 105 -19 826 929 ;
+C -1 ; WX 722 ; N Ugrave ; B 123 -19 797 929 ;
+C -1 ; WX 612 ; N Delta ; B 6 0 608 688 ;
+C -1 ; WX 556 ; N thorn ; B 14 -207 584 718 ;
+C -1 ; WX 333 ; N twosuperior ; B 64 281 449 703 ;
+C -1 ; WX 778 ; N Odieresis ; B 105 -19 826 901 ;
+C -1 ; WX 556 ; N mu ; B 24 -207 600 523 ;
+C -1 ; WX 278 ; N igrave ; B 95 0 310 734 ;
+C -1 ; WX 556 ; N ohungarumlaut ; B 83 -14 677 734 ;
+C -1 ; WX 667 ; N Eogonek ; B 86 -220 762 718 ;
+C -1 ; WX 556 ; N dcroat ; B 84 -15 689 718 ;
+C -1 ; WX 834 ; N threequarters ; B 130 -19 861 703 ;
+C -1 ; WX 667 ; N Scedilla ; B 90 -225 713 737 ;
+C -1 ; WX 299 ; N lcaron ; B 67 0 464 718 ;
+C -1 ; WX 667 ; N Kcommaaccent ; B 76 -225 808 718 ;
+C -1 ; WX 556 ; N Lacute ; B 76 0 555 929 ;
+C -1 ; WX 1000 ; N trademark ; B 186 306 1056 718 ;
+C -1 ; WX 556 ; N edotaccent ; B 84 -15 578 706 ;
+C -1 ; WX 278 ; N Igrave ; B 91 0 351 929 ;
+C -1 ; WX 278 ; N Imacron ; B 91 0 483 879 ;
+C -1 ; WX 556 ; N Lcaron ; B 76 0 570 718 ;
+C -1 ; WX 834 ; N onehalf ; B 114 -19 839 703 ;
+C -1 ; WX 549 ; N lessequal ; B 26 0 666 674 ;
+C -1 ; WX 556 ; N ocircumflex ; B 83 -14 585 734 ;
+C -1 ; WX 556 ; N ntilde ; B 65 0 592 722 ;
+C -1 ; WX 722 ; N Uhungarumlaut ; B 123 -19 801 929 ;
+C -1 ; WX 667 ; N Eacute ; B 86 0 762 929 ;
+C -1 ; WX 556 ; N emacron ; B 84 -15 580 684 ;
+C -1 ; WX 556 ; N gbreve ; B 42 -220 610 731 ;
+C -1 ; WX 834 ; N onequarter ; B 150 -19 802 703 ;
+C -1 ; WX 667 ; N Scaron ; B 90 -19 713 929 ;
+C -1 ; WX 667 ; N Scommaaccent ; B 90 -225 713 737 ;
+C -1 ; WX 778 ; N Ohungarumlaut ; B 105 -19 829 929 ;
+C -1 ; WX 400 ; N degree ; B 169 411 468 703 ;
+C -1 ; WX 556 ; N ograve ; B 83 -14 585 734 ;
+C -1 ; WX 722 ; N Ccaron ; B 108 -19 782 929 ;
+C -1 ; WX 556 ; N ugrave ; B 94 -15 600 734 ;
+C -1 ; WX 453 ; N radical ; B 79 -80 617 762 ;
+C -1 ; WX 722 ; N Dcaron ; B 81 0 764 929 ;
+C -1 ; WX 333 ; N rcommaaccent ; B 30 -225 446 538 ;
+C -1 ; WX 722 ; N Ntilde ; B 76 0 799 917 ;
+C -1 ; WX 556 ; N otilde ; B 83 -14 602 722 ;
+C -1 ; WX 722 ; N Rcommaaccent ; B 88 -225 773 718 ;
+C -1 ; WX 556 ; N Lcommaaccent ; B 76 -225 555 718 ;
+C -1 ; WX 667 ; N Atilde ; B 14 0 699 917 ;
+C -1 ; WX 667 ; N Aogonek ; B 14 -225 654 718 ;
+C -1 ; WX 667 ; N Aring ; B 14 0 654 931 ;
+C -1 ; WX 778 ; N Otilde ; B 105 -19 826 917 ;
+C -1 ; WX 500 ; N zdotaccent ; B 31 0 571 706 ;
+C -1 ; WX 667 ; N Ecaron ; B 86 0 762 929 ;
+C -1 ; WX 278 ; N Iogonek ; B -33 -225 341 718 ;
+C -1 ; WX 500 ; N kcommaaccent ; B 67 -225 600 718 ;
+C -1 ; WX 584 ; N minus ; B 85 216 606 289 ;
+C -1 ; WX 278 ; N Icircumflex ; B 91 0 452 929 ;
+C -1 ; WX 556 ; N ncaron ; B 65 0 580 734 ;
+C -1 ; WX 278 ; N tcommaaccent ; B 63 -225 368 669 ;
+C -1 ; WX 584 ; N logicalnot ; B 106 108 628 390 ;
+C -1 ; WX 556 ; N odieresis ; B 83 -14 585 706 ;
+C -1 ; WX 556 ; N udieresis ; B 94 -15 600 706 ;
+C -1 ; WX 549 ; N notequal ; B 34 -35 623 551 ;
+C -1 ; WX 556 ; N gcommaaccent ; B 42 -220 610 822 ;
+C -1 ; WX 556 ; N eth ; B 81 -15 617 737 ;
+C -1 ; WX 500 ; N zcaron ; B 31 0 571 734 ;
+C -1 ; WX 556 ; N ncommaaccent ; B 65 -225 573 538 ;
+C -1 ; WX 333 ; N onesuperior ; B 166 281 371 703 ;
+C -1 ; WX 278 ; N imacron ; B 95 0 417 684 ;
+C -1 ; WX 556 ; N Euro ; B 0 0 0 0 ;
+EndCharMetrics
+StartKernData
+StartKernPairs 2705
+KPX A C -30
+KPX A Cacute -30
+KPX A Ccaron -30
+KPX A Ccedilla -30
+KPX A G -30
+KPX A Gbreve -30
+KPX A Gcommaaccent -30
+KPX A O -30
+KPX A Oacute -30
+KPX A Ocircumflex -30
+KPX A Odieresis -30
+KPX A Ograve -30
+KPX A Ohungarumlaut -30
+KPX A Omacron -30
+KPX A Oslash -30
+KPX A Otilde -30
+KPX A Q -30
+KPX A T -120
+KPX A Tcaron -120
+KPX A Tcommaaccent -120
+KPX A U -50
+KPX A Uacute -50
+KPX A Ucircumflex -50
+KPX A Udieresis -50
+KPX A Ugrave -50
+KPX A Uhungarumlaut -50
+KPX A Umacron -50
+KPX A Uogonek -50
+KPX A Uring -50
+KPX A V -70
+KPX A W -50
+KPX A Y -100
+KPX A Yacute -100
+KPX A Ydieresis -100
+KPX A u -30
+KPX A uacute -30
+KPX A ucircumflex -30
+KPX A udieresis -30
+KPX A ugrave -30
+KPX A uhungarumlaut -30
+KPX A umacron -30
+KPX A uogonek -30
+KPX A uring -30
+KPX A v -40
+KPX A w -40
+KPX A y -40
+KPX A yacute -40
+KPX A ydieresis -40
+KPX Aacute C -30
+KPX Aacute Cacute -30
+KPX Aacute Ccaron -30
+KPX Aacute Ccedilla -30
+KPX Aacute G -30
+KPX Aacute Gbreve -30
+KPX Aacute Gcommaaccent -30
+KPX Aacute O -30
+KPX Aacute Oacute -30
+KPX Aacute Ocircumflex -30
+KPX Aacute Odieresis -30
+KPX Aacute Ograve -30
+KPX Aacute Ohungarumlaut -30
+KPX Aacute Omacron -30
+KPX Aacute Oslash -30
+KPX Aacute Otilde -30
+KPX Aacute Q -30
+KPX Aacute T -120
+KPX Aacute Tcaron -120
+KPX Aacute Tcommaaccent -120
+KPX Aacute U -50
+KPX Aacute Uacute -50
+KPX Aacute Ucircumflex -50
+KPX Aacute Udieresis -50
+KPX Aacute Ugrave -50
+KPX Aacute Uhungarumlaut -50
+KPX Aacute Umacron -50
+KPX Aacute Uogonek -50
+KPX Aacute Uring -50
+KPX Aacute V -70
+KPX Aacute W -50
+KPX Aacute Y -100
+KPX Aacute Yacute -100
+KPX Aacute Ydieresis -100
+KPX Aacute u -30
+KPX Aacute uacute -30
+KPX Aacute ucircumflex -30
+KPX Aacute udieresis -30
+KPX Aacute ugrave -30
+KPX Aacute uhungarumlaut -30
+KPX Aacute umacron -30
+KPX Aacute uogonek -30
+KPX Aacute uring -30
+KPX Aacute v -40
+KPX Aacute w -40
+KPX Aacute y -40
+KPX Aacute yacute -40
+KPX Aacute ydieresis -40
+KPX Abreve C -30
+KPX Abreve Cacute -30
+KPX Abreve Ccaron -30
+KPX Abreve Ccedilla -30
+KPX Abreve G -30
+KPX Abreve Gbreve -30
+KPX Abreve Gcommaaccent -30
+KPX Abreve O -30
+KPX Abreve Oacute -30
+KPX Abreve Ocircumflex -30
+KPX Abreve Odieresis -30
+KPX Abreve Ograve -30
+KPX Abreve Ohungarumlaut -30
+KPX Abreve Omacron -30
+KPX Abreve Oslash -30
+KPX Abreve Otilde -30
+KPX Abreve Q -30
+KPX Abreve T -120
+KPX Abreve Tcaron -120
+KPX Abreve Tcommaaccent -120
+KPX Abreve U -50
+KPX Abreve Uacute -50
+KPX Abreve Ucircumflex -50
+KPX Abreve Udieresis -50
+KPX Abreve Ugrave -50
+KPX Abreve Uhungarumlaut -50
+KPX Abreve Umacron -50
+KPX Abreve Uogonek -50
+KPX Abreve Uring -50
+KPX Abreve V -70
+KPX Abreve W -50
+KPX Abreve Y -100
+KPX Abreve Yacute -100
+KPX Abreve Ydieresis -100
+KPX Abreve u -30
+KPX Abreve uacute -30
+KPX Abreve ucircumflex -30
+KPX Abreve udieresis -30
+KPX Abreve ugrave -30
+KPX Abreve uhungarumlaut -30
+KPX Abreve umacron -30
+KPX Abreve uogonek -30
+KPX Abreve uring -30
+KPX Abreve v -40
+KPX Abreve w -40
+KPX Abreve y -40
+KPX Abreve yacute -40
+KPX Abreve ydieresis -40
+KPX Acircumflex C -30
+KPX Acircumflex Cacute -30
+KPX Acircumflex Ccaron -30
+KPX Acircumflex Ccedilla -30
+KPX Acircumflex G -30
+KPX Acircumflex Gbreve -30
+KPX Acircumflex Gcommaaccent -30
+KPX Acircumflex O -30
+KPX Acircumflex Oacute -30
+KPX Acircumflex Ocircumflex -30
+KPX Acircumflex Odieresis -30
+KPX Acircumflex Ograve -30
+KPX Acircumflex Ohungarumlaut -30
+KPX Acircumflex Omacron -30
+KPX Acircumflex Oslash -30
+KPX Acircumflex Otilde -30
+KPX Acircumflex Q -30
+KPX Acircumflex T -120
+KPX Acircumflex Tcaron -120
+KPX Acircumflex Tcommaaccent -120
+KPX Acircumflex U -50
+KPX Acircumflex Uacute -50
+KPX Acircumflex Ucircumflex -50
+KPX Acircumflex Udieresis -50
+KPX Acircumflex Ugrave -50
+KPX Acircumflex Uhungarumlaut -50
+KPX Acircumflex Umacron -50
+KPX Acircumflex Uogonek -50
+KPX Acircumflex Uring -50
+KPX Acircumflex V -70
+KPX Acircumflex W -50
+KPX Acircumflex Y -100
+KPX Acircumflex Yacute -100
+KPX Acircumflex Ydieresis -100
+KPX Acircumflex u -30
+KPX Acircumflex uacute -30
+KPX Acircumflex ucircumflex -30
+KPX Acircumflex udieresis -30
+KPX Acircumflex ugrave -30
+KPX Acircumflex uhungarumlaut -30
+KPX Acircumflex umacron -30
+KPX Acircumflex uogonek -30
+KPX Acircumflex uring -30
+KPX Acircumflex v -40
+KPX Acircumflex w -40
+KPX Acircumflex y -40
+KPX Acircumflex yacute -40
+KPX Acircumflex ydieresis -40
+KPX Adieresis C -30
+KPX Adieresis Cacute -30
+KPX Adieresis Ccaron -30
+KPX Adieresis Ccedilla -30
+KPX Adieresis G -30
+KPX Adieresis Gbreve -30
+KPX Adieresis Gcommaaccent -30
+KPX Adieresis O -30
+KPX Adieresis Oacute -30
+KPX Adieresis Ocircumflex -30
+KPX Adieresis Odieresis -30
+KPX Adieresis Ograve -30
+KPX Adieresis Ohungarumlaut -30
+KPX Adieresis Omacron -30
+KPX Adieresis Oslash -30
+KPX Adieresis Otilde -30
+KPX Adieresis Q -30
+KPX Adieresis T -120
+KPX Adieresis Tcaron -120
+KPX Adieresis Tcommaaccent -120
+KPX Adieresis U -50
+KPX Adieresis Uacute -50
+KPX Adieresis Ucircumflex -50
+KPX Adieresis Udieresis -50
+KPX Adieresis Ugrave -50
+KPX Adieresis Uhungarumlaut -50
+KPX Adieresis Umacron -50
+KPX Adieresis Uogonek -50
+KPX Adieresis Uring -50
+KPX Adieresis V -70
+KPX Adieresis W -50
+KPX Adieresis Y -100
+KPX Adieresis Yacute -100
+KPX Adieresis Ydieresis -100
+KPX Adieresis u -30
+KPX Adieresis uacute -30
+KPX Adieresis ucircumflex -30
+KPX Adieresis udieresis -30
+KPX Adieresis ugrave -30
+KPX Adieresis uhungarumlaut -30
+KPX Adieresis umacron -30
+KPX Adieresis uogonek -30
+KPX Adieresis uring -30
+KPX Adieresis v -40
+KPX Adieresis w -40
+KPX Adieresis y -40
+KPX Adieresis yacute -40
+KPX Adieresis ydieresis -40
+KPX Agrave C -30
+KPX Agrave Cacute -30
+KPX Agrave Ccaron -30
+KPX Agrave Ccedilla -30
+KPX Agrave G -30
+KPX Agrave Gbreve -30
+KPX Agrave Gcommaaccent -30
+KPX Agrave O -30
+KPX Agrave Oacute -30
+KPX Agrave Ocircumflex -30
+KPX Agrave Odieresis -30
+KPX Agrave Ograve -30
+KPX Agrave Ohungarumlaut -30
+KPX Agrave Omacron -30
+KPX Agrave Oslash -30
+KPX Agrave Otilde -30
+KPX Agrave Q -30
+KPX Agrave T -120
+KPX Agrave Tcaron -120
+KPX Agrave Tcommaaccent -120
+KPX Agrave U -50
+KPX Agrave Uacute -50
+KPX Agrave Ucircumflex -50
+KPX Agrave Udieresis -50
+KPX Agrave Ugrave -50
+KPX Agrave Uhungarumlaut -50
+KPX Agrave Umacron -50
+KPX Agrave Uogonek -50
+KPX Agrave Uring -50
+KPX Agrave V -70
+KPX Agrave W -50
+KPX Agrave Y -100
+KPX Agrave Yacute -100
+KPX Agrave Ydieresis -100
+KPX Agrave u -30
+KPX Agrave uacute -30
+KPX Agrave ucircumflex -30
+KPX Agrave udieresis -30
+KPX Agrave ugrave -30
+KPX Agrave uhungarumlaut -30
+KPX Agrave umacron -30
+KPX Agrave uogonek -30
+KPX Agrave uring -30
+KPX Agrave v -40
+KPX Agrave w -40
+KPX Agrave y -40
+KPX Agrave yacute -40
+KPX Agrave ydieresis -40
+KPX Amacron C -30
+KPX Amacron Cacute -30
+KPX Amacron Ccaron -30
+KPX Amacron Ccedilla -30
+KPX Amacron G -30
+KPX Amacron Gbreve -30
+KPX Amacron Gcommaaccent -30
+KPX Amacron O -30
+KPX Amacron Oacute -30
+KPX Amacron Ocircumflex -30
+KPX Amacron Odieresis -30
+KPX Amacron Ograve -30
+KPX Amacron Ohungarumlaut -30
+KPX Amacron Omacron -30
+KPX Amacron Oslash -30
+KPX Amacron Otilde -30
+KPX Amacron Q -30
+KPX Amacron T -120
+KPX Amacron Tcaron -120
+KPX Amacron Tcommaaccent -120
+KPX Amacron U -50
+KPX Amacron Uacute -50
+KPX Amacron Ucircumflex -50
+KPX Amacron Udieresis -50
+KPX Amacron Ugrave -50
+KPX Amacron Uhungarumlaut -50
+KPX Amacron Umacron -50
+KPX Amacron Uogonek -50
+KPX Amacron Uring -50
+KPX Amacron V -70
+KPX Amacron W -50
+KPX Amacron Y -100
+KPX Amacron Yacute -100
+KPX Amacron Ydieresis -100
+KPX Amacron u -30
+KPX Amacron uacute -30
+KPX Amacron ucircumflex -30
+KPX Amacron udieresis -30
+KPX Amacron ugrave -30
+KPX Amacron uhungarumlaut -30
+KPX Amacron umacron -30
+KPX Amacron uogonek -30
+KPX Amacron uring -30
+KPX Amacron v -40
+KPX Amacron w -40
+KPX Amacron y -40
+KPX Amacron yacute -40
+KPX Amacron ydieresis -40
+KPX Aogonek C -30
+KPX Aogonek Cacute -30
+KPX Aogonek Ccaron -30
+KPX Aogonek Ccedilla -30
+KPX Aogonek G -30
+KPX Aogonek Gbreve -30
+KPX Aogonek Gcommaaccent -30
+KPX Aogonek O -30
+KPX Aogonek Oacute -30
+KPX Aogonek Ocircumflex -30
+KPX Aogonek Odieresis -30
+KPX Aogonek Ograve -30
+KPX Aogonek Ohungarumlaut -30
+KPX Aogonek Omacron -30
+KPX Aogonek Oslash -30
+KPX Aogonek Otilde -30
+KPX Aogonek Q -30
+KPX Aogonek T -120
+KPX Aogonek Tcaron -120
+KPX Aogonek Tcommaaccent -120
+KPX Aogonek U -50
+KPX Aogonek Uacute -50
+KPX Aogonek Ucircumflex -50
+KPX Aogonek Udieresis -50
+KPX Aogonek Ugrave -50
+KPX Aogonek Uhungarumlaut -50
+KPX Aogonek Umacron -50
+KPX Aogonek Uogonek -50
+KPX Aogonek Uring -50
+KPX Aogonek V -70
+KPX Aogonek W -50
+KPX Aogonek Y -100
+KPX Aogonek Yacute -100
+KPX Aogonek Ydieresis -100
+KPX Aogonek u -30
+KPX Aogonek uacute -30
+KPX Aogonek ucircumflex -30
+KPX Aogonek udieresis -30
+KPX Aogonek ugrave -30
+KPX Aogonek uhungarumlaut -30
+KPX Aogonek umacron -30
+KPX Aogonek uogonek -30
+KPX Aogonek uring -30
+KPX Aogonek v -40
+KPX Aogonek w -40
+KPX Aogonek y -40
+KPX Aogonek yacute -40
+KPX Aogonek ydieresis -40
+KPX Aring C -30
+KPX Aring Cacute -30
+KPX Aring Ccaron -30
+KPX Aring Ccedilla -30
+KPX Aring G -30
+KPX Aring Gbreve -30
+KPX Aring Gcommaaccent -30
+KPX Aring O -30
+KPX Aring Oacute -30
+KPX Aring Ocircumflex -30
+KPX Aring Odieresis -30
+KPX Aring Ograve -30
+KPX Aring Ohungarumlaut -30
+KPX Aring Omacron -30
+KPX Aring Oslash -30
+KPX Aring Otilde -30
+KPX Aring Q -30
+KPX Aring T -120
+KPX Aring Tcaron -120
+KPX Aring Tcommaaccent -120
+KPX Aring U -50
+KPX Aring Uacute -50
+KPX Aring Ucircumflex -50
+KPX Aring Udieresis -50
+KPX Aring Ugrave -50
+KPX Aring Uhungarumlaut -50
+KPX Aring Umacron -50
+KPX Aring Uogonek -50
+KPX Aring Uring -50
+KPX Aring V -70
+KPX Aring W -50
+KPX Aring Y -100
+KPX Aring Yacute -100
+KPX Aring Ydieresis -100
+KPX Aring u -30
+KPX Aring uacute -30
+KPX Aring ucircumflex -30
+KPX Aring udieresis -30
+KPX Aring ugrave -30
+KPX Aring uhungarumlaut -30
+KPX Aring umacron -30
+KPX Aring uogonek -30
+KPX Aring uring -30
+KPX Aring v -40
+KPX Aring w -40
+KPX Aring y -40
+KPX Aring yacute -40
+KPX Aring ydieresis -40
+KPX Atilde C -30
+KPX Atilde Cacute -30
+KPX Atilde Ccaron -30
+KPX Atilde Ccedilla -30
+KPX Atilde G -30
+KPX Atilde Gbreve -30
+KPX Atilde Gcommaaccent -30
+KPX Atilde O -30
+KPX Atilde Oacute -30
+KPX Atilde Ocircumflex -30
+KPX Atilde Odieresis -30
+KPX Atilde Ograve -30
+KPX Atilde Ohungarumlaut -30
+KPX Atilde Omacron -30
+KPX Atilde Oslash -30
+KPX Atilde Otilde -30
+KPX Atilde Q -30
+KPX Atilde T -120
+KPX Atilde Tcaron -120
+KPX Atilde Tcommaaccent -120
+KPX Atilde U -50
+KPX Atilde Uacute -50
+KPX Atilde Ucircumflex -50
+KPX Atilde Udieresis -50
+KPX Atilde Ugrave -50
+KPX Atilde Uhungarumlaut -50
+KPX Atilde Umacron -50
+KPX Atilde Uogonek -50
+KPX Atilde Uring -50
+KPX Atilde V -70
+KPX Atilde W -50
+KPX Atilde Y -100
+KPX Atilde Yacute -100
+KPX Atilde Ydieresis -100
+KPX Atilde u -30
+KPX Atilde uacute -30
+KPX Atilde ucircumflex -30
+KPX Atilde udieresis -30
+KPX Atilde ugrave -30
+KPX Atilde uhungarumlaut -30
+KPX Atilde umacron -30
+KPX Atilde uogonek -30
+KPX Atilde uring -30
+KPX Atilde v -40
+KPX Atilde w -40
+KPX Atilde y -40
+KPX Atilde yacute -40
+KPX Atilde ydieresis -40
+KPX B U -10
+KPX B Uacute -10
+KPX B Ucircumflex -10
+KPX B Udieresis -10
+KPX B Ugrave -10
+KPX B Uhungarumlaut -10
+KPX B Umacron -10
+KPX B Uogonek -10
+KPX B Uring -10
+KPX B comma -20
+KPX B period -20
+KPX C comma -30
+KPX C period -30
+KPX Cacute comma -30
+KPX Cacute period -30
+KPX Ccaron comma -30
+KPX Ccaron period -30
+KPX Ccedilla comma -30
+KPX Ccedilla period -30
+KPX D A -40
+KPX D Aacute -40
+KPX D Abreve -40
+KPX D Acircumflex -40
+KPX D Adieresis -40
+KPX D Agrave -40
+KPX D Amacron -40
+KPX D Aogonek -40
+KPX D Aring -40
+KPX D Atilde -40
+KPX D V -70
+KPX D W -40
+KPX D Y -90
+KPX D Yacute -90
+KPX D Ydieresis -90
+KPX D comma -70
+KPX D period -70
+KPX Dcaron A -40
+KPX Dcaron Aacute -40
+KPX Dcaron Abreve -40
+KPX Dcaron Acircumflex -40
+KPX Dcaron Adieresis -40
+KPX Dcaron Agrave -40
+KPX Dcaron Amacron -40
+KPX Dcaron Aogonek -40
+KPX Dcaron Aring -40
+KPX Dcaron Atilde -40
+KPX Dcaron V -70
+KPX Dcaron W -40
+KPX Dcaron Y -90
+KPX Dcaron Yacute -90
+KPX Dcaron Ydieresis -90
+KPX Dcaron comma -70
+KPX Dcaron period -70
+KPX Dcroat A -40
+KPX Dcroat Aacute -40
+KPX Dcroat Abreve -40
+KPX Dcroat Acircumflex -40
+KPX Dcroat Adieresis -40
+KPX Dcroat Agrave -40
+KPX Dcroat Amacron -40
+KPX Dcroat Aogonek -40
+KPX Dcroat Aring -40
+KPX Dcroat Atilde -40
+KPX Dcroat V -70
+KPX Dcroat W -40
+KPX Dcroat Y -90
+KPX Dcroat Yacute -90
+KPX Dcroat Ydieresis -90
+KPX Dcroat comma -70
+KPX Dcroat period -70
+KPX F A -80
+KPX F Aacute -80
+KPX F Abreve -80
+KPX F Acircumflex -80
+KPX F Adieresis -80
+KPX F Agrave -80
+KPX F Amacron -80
+KPX F Aogonek -80
+KPX F Aring -80
+KPX F Atilde -80
+KPX F a -50
+KPX F aacute -50
+KPX F abreve -50
+KPX F acircumflex -50
+KPX F adieresis -50
+KPX F agrave -50
+KPX F amacron -50
+KPX F aogonek -50
+KPX F aring -50
+KPX F atilde -50
+KPX F comma -150
+KPX F e -30
+KPX F eacute -30
+KPX F ecaron -30
+KPX F ecircumflex -30
+KPX F edieresis -30
+KPX F edotaccent -30
+KPX F egrave -30
+KPX F emacron -30
+KPX F eogonek -30
+KPX F o -30
+KPX F oacute -30
+KPX F ocircumflex -30
+KPX F odieresis -30
+KPX F ograve -30
+KPX F ohungarumlaut -30
+KPX F omacron -30
+KPX F oslash -30
+KPX F otilde -30
+KPX F period -150
+KPX F r -45
+KPX F racute -45
+KPX F rcaron -45
+KPX F rcommaaccent -45
+KPX J A -20
+KPX J Aacute -20
+KPX J Abreve -20
+KPX J Acircumflex -20
+KPX J Adieresis -20
+KPX J Agrave -20
+KPX J Amacron -20
+KPX J Aogonek -20
+KPX J Aring -20
+KPX J Atilde -20
+KPX J a -20
+KPX J aacute -20
+KPX J abreve -20
+KPX J acircumflex -20
+KPX J adieresis -20
+KPX J agrave -20
+KPX J amacron -20
+KPX J aogonek -20
+KPX J aring -20
+KPX J atilde -20
+KPX J comma -30
+KPX J period -30
+KPX J u -20
+KPX J uacute -20
+KPX J ucircumflex -20
+KPX J udieresis -20
+KPX J ugrave -20
+KPX J uhungarumlaut -20
+KPX J umacron -20
+KPX J uogonek -20
+KPX J uring -20
+KPX K O -50
+KPX K Oacute -50
+KPX K Ocircumflex -50
+KPX K Odieresis -50
+KPX K Ograve -50
+KPX K Ohungarumlaut -50
+KPX K Omacron -50
+KPX K Oslash -50
+KPX K Otilde -50
+KPX K e -40
+KPX K eacute -40
+KPX K ecaron -40
+KPX K ecircumflex -40
+KPX K edieresis -40
+KPX K edotaccent -40
+KPX K egrave -40
+KPX K emacron -40
+KPX K eogonek -40
+KPX K o -40
+KPX K oacute -40
+KPX K ocircumflex -40
+KPX K odieresis -40
+KPX K ograve -40
+KPX K ohungarumlaut -40
+KPX K omacron -40
+KPX K oslash -40
+KPX K otilde -40
+KPX K u -30
+KPX K uacute -30
+KPX K ucircumflex -30
+KPX K udieresis -30
+KPX K ugrave -30
+KPX K uhungarumlaut -30
+KPX K umacron -30
+KPX K uogonek -30
+KPX K uring -30
+KPX K y -50
+KPX K yacute -50
+KPX K ydieresis -50
+KPX Kcommaaccent O -50
+KPX Kcommaaccent Oacute -50
+KPX Kcommaaccent Ocircumflex -50
+KPX Kcommaaccent Odieresis -50
+KPX Kcommaaccent Ograve -50
+KPX Kcommaaccent Ohungarumlaut -50
+KPX Kcommaaccent Omacron -50
+KPX Kcommaaccent Oslash -50
+KPX Kcommaaccent Otilde -50
+KPX Kcommaaccent e -40
+KPX Kcommaaccent eacute -40
+KPX Kcommaaccent ecaron -40
+KPX Kcommaaccent ecircumflex -40
+KPX Kcommaaccent edieresis -40
+KPX Kcommaaccent edotaccent -40
+KPX Kcommaaccent egrave -40
+KPX Kcommaaccent emacron -40
+KPX Kcommaaccent eogonek -40
+KPX Kcommaaccent o -40
+KPX Kcommaaccent oacute -40
+KPX Kcommaaccent ocircumflex -40
+KPX Kcommaaccent odieresis -40
+KPX Kcommaaccent ograve -40
+KPX Kcommaaccent ohungarumlaut -40
+KPX Kcommaaccent omacron -40
+KPX Kcommaaccent oslash -40
+KPX Kcommaaccent otilde -40
+KPX Kcommaaccent u -30
+KPX Kcommaaccent uacute -30
+KPX Kcommaaccent ucircumflex -30
+KPX Kcommaaccent udieresis -30
+KPX Kcommaaccent ugrave -30
+KPX Kcommaaccent uhungarumlaut -30
+KPX Kcommaaccent umacron -30
+KPX Kcommaaccent uogonek -30
+KPX Kcommaaccent uring -30
+KPX Kcommaaccent y -50
+KPX Kcommaaccent yacute -50
+KPX Kcommaaccent ydieresis -50
+KPX L T -110
+KPX L Tcaron -110
+KPX L Tcommaaccent -110
+KPX L V -110
+KPX L W -70
+KPX L Y -140
+KPX L Yacute -140
+KPX L Ydieresis -140
+KPX L quotedblright -140
+KPX L quoteright -160
+KPX L y -30
+KPX L yacute -30
+KPX L ydieresis -30
+KPX Lacute T -110
+KPX Lacute Tcaron -110
+KPX Lacute Tcommaaccent -110
+KPX Lacute V -110
+KPX Lacute W -70
+KPX Lacute Y -140
+KPX Lacute Yacute -140
+KPX Lacute Ydieresis -140
+KPX Lacute quotedblright -140
+KPX Lacute quoteright -160
+KPX Lacute y -30
+KPX Lacute yacute -30
+KPX Lacute ydieresis -30
+KPX Lcaron T -110
+KPX Lcaron Tcaron -110
+KPX Lcaron Tcommaaccent -110
+KPX Lcaron V -110
+KPX Lcaron W -70
+KPX Lcaron Y -140
+KPX Lcaron Yacute -140
+KPX Lcaron Ydieresis -140
+KPX Lcaron quotedblright -140
+KPX Lcaron quoteright -160
+KPX Lcaron y -30
+KPX Lcaron yacute -30
+KPX Lcaron ydieresis -30
+KPX Lcommaaccent T -110
+KPX Lcommaaccent Tcaron -110
+KPX Lcommaaccent Tcommaaccent -110
+KPX Lcommaaccent V -110
+KPX Lcommaaccent W -70
+KPX Lcommaaccent Y -140
+KPX Lcommaaccent Yacute -140
+KPX Lcommaaccent Ydieresis -140
+KPX Lcommaaccent quotedblright -140
+KPX Lcommaaccent quoteright -160
+KPX Lcommaaccent y -30
+KPX Lcommaaccent yacute -30
+KPX Lcommaaccent ydieresis -30
+KPX Lslash T -110
+KPX Lslash Tcaron -110
+KPX Lslash Tcommaaccent -110
+KPX Lslash V -110
+KPX Lslash W -70
+KPX Lslash Y -140
+KPX Lslash Yacute -140
+KPX Lslash Ydieresis -140
+KPX Lslash quotedblright -140
+KPX Lslash quoteright -160
+KPX Lslash y -30
+KPX Lslash yacute -30
+KPX Lslash ydieresis -30
+KPX O A -20
+KPX O Aacute -20
+KPX O Abreve -20
+KPX O Acircumflex -20
+KPX O Adieresis -20
+KPX O Agrave -20
+KPX O Amacron -20
+KPX O Aogonek -20
+KPX O Aring -20
+KPX O Atilde -20
+KPX O T -40
+KPX O Tcaron -40
+KPX O Tcommaaccent -40
+KPX O V -50
+KPX O W -30
+KPX O X -60
+KPX O Y -70
+KPX O Yacute -70
+KPX O Ydieresis -70
+KPX O comma -40
+KPX O period -40
+KPX Oacute A -20
+KPX Oacute Aacute -20
+KPX Oacute Abreve -20
+KPX Oacute Acircumflex -20
+KPX Oacute Adieresis -20
+KPX Oacute Agrave -20
+KPX Oacute Amacron -20
+KPX Oacute Aogonek -20
+KPX Oacute Aring -20
+KPX Oacute Atilde -20
+KPX Oacute T -40
+KPX Oacute Tcaron -40
+KPX Oacute Tcommaaccent -40
+KPX Oacute V -50
+KPX Oacute W -30
+KPX Oacute X -60
+KPX Oacute Y -70
+KPX Oacute Yacute -70
+KPX Oacute Ydieresis -70
+KPX Oacute comma -40
+KPX Oacute period -40
+KPX Ocircumflex A -20
+KPX Ocircumflex Aacute -20
+KPX Ocircumflex Abreve -20
+KPX Ocircumflex Acircumflex -20
+KPX Ocircumflex Adieresis -20
+KPX Ocircumflex Agrave -20
+KPX Ocircumflex Amacron -20
+KPX Ocircumflex Aogonek -20
+KPX Ocircumflex Aring -20
+KPX Ocircumflex Atilde -20
+KPX Ocircumflex T -40
+KPX Ocircumflex Tcaron -40
+KPX Ocircumflex Tcommaaccent -40
+KPX Ocircumflex V -50
+KPX Ocircumflex W -30
+KPX Ocircumflex X -60
+KPX Ocircumflex Y -70
+KPX Ocircumflex Yacute -70
+KPX Ocircumflex Ydieresis -70
+KPX Ocircumflex comma -40
+KPX Ocircumflex period -40
+KPX Odieresis A -20
+KPX Odieresis Aacute -20
+KPX Odieresis Abreve -20
+KPX Odieresis Acircumflex -20
+KPX Odieresis Adieresis -20
+KPX Odieresis Agrave -20
+KPX Odieresis Amacron -20
+KPX Odieresis Aogonek -20
+KPX Odieresis Aring -20
+KPX Odieresis Atilde -20
+KPX Odieresis T -40
+KPX Odieresis Tcaron -40
+KPX Odieresis Tcommaaccent -40
+KPX Odieresis V -50
+KPX Odieresis W -30
+KPX Odieresis X -60
+KPX Odieresis Y -70
+KPX Odieresis Yacute -70
+KPX Odieresis Ydieresis -70
+KPX Odieresis comma -40
+KPX Odieresis period -40
+KPX Ograve A -20
+KPX Ograve Aacute -20
+KPX Ograve Abreve -20
+KPX Ograve Acircumflex -20
+KPX Ograve Adieresis -20
+KPX Ograve Agrave -20
+KPX Ograve Amacron -20
+KPX Ograve Aogonek -20
+KPX Ograve Aring -20
+KPX Ograve Atilde -20
+KPX Ograve T -40
+KPX Ograve Tcaron -40
+KPX Ograve Tcommaaccent -40
+KPX Ograve V -50
+KPX Ograve W -30
+KPX Ograve X -60
+KPX Ograve Y -70
+KPX Ograve Yacute -70
+KPX Ograve Ydieresis -70
+KPX Ograve comma -40
+KPX Ograve period -40
+KPX Ohungarumlaut A -20
+KPX Ohungarumlaut Aacute -20
+KPX Ohungarumlaut Abreve -20
+KPX Ohungarumlaut Acircumflex -20
+KPX Ohungarumlaut Adieresis -20
+KPX Ohungarumlaut Agrave -20
+KPX Ohungarumlaut Amacron -20
+KPX Ohungarumlaut Aogonek -20
+KPX Ohungarumlaut Aring -20
+KPX Ohungarumlaut Atilde -20
+KPX Ohungarumlaut T -40
+KPX Ohungarumlaut Tcaron -40
+KPX Ohungarumlaut Tcommaaccent -40
+KPX Ohungarumlaut V -50
+KPX Ohungarumlaut W -30
+KPX Ohungarumlaut X -60
+KPX Ohungarumlaut Y -70
+KPX Ohungarumlaut Yacute -70
+KPX Ohungarumlaut Ydieresis -70
+KPX Ohungarumlaut comma -40
+KPX Ohungarumlaut period -40
+KPX Omacron A -20
+KPX Omacron Aacute -20
+KPX Omacron Abreve -20
+KPX Omacron Acircumflex -20
+KPX Omacron Adieresis -20
+KPX Omacron Agrave -20
+KPX Omacron Amacron -20
+KPX Omacron Aogonek -20
+KPX Omacron Aring -20
+KPX Omacron Atilde -20
+KPX Omacron T -40
+KPX Omacron Tcaron -40
+KPX Omacron Tcommaaccent -40
+KPX Omacron V -50
+KPX Omacron W -30
+KPX Omacron X -60
+KPX Omacron Y -70
+KPX Omacron Yacute -70
+KPX Omacron Ydieresis -70
+KPX Omacron comma -40
+KPX Omacron period -40
+KPX Oslash A -20
+KPX Oslash Aacute -20
+KPX Oslash Abreve -20
+KPX Oslash Acircumflex -20
+KPX Oslash Adieresis -20
+KPX Oslash Agrave -20
+KPX Oslash Amacron -20
+KPX Oslash Aogonek -20
+KPX Oslash Aring -20
+KPX Oslash Atilde -20
+KPX Oslash T -40
+KPX Oslash Tcaron -40
+KPX Oslash Tcommaaccent -40
+KPX Oslash V -50
+KPX Oslash W -30
+KPX Oslash X -60
+KPX Oslash Y -70
+KPX Oslash Yacute -70
+KPX Oslash Ydieresis -70
+KPX Oslash comma -40
+KPX Oslash period -40
+KPX Otilde A -20
+KPX Otilde Aacute -20
+KPX Otilde Abreve -20
+KPX Otilde Acircumflex -20
+KPX Otilde Adieresis -20
+KPX Otilde Agrave -20
+KPX Otilde Amacron -20
+KPX Otilde Aogonek -20
+KPX Otilde Aring -20
+KPX Otilde Atilde -20
+KPX Otilde T -40
+KPX Otilde Tcaron -40
+KPX Otilde Tcommaaccent -40
+KPX Otilde V -50
+KPX Otilde W -30
+KPX Otilde X -60
+KPX Otilde Y -70
+KPX Otilde Yacute -70
+KPX Otilde Ydieresis -70
+KPX Otilde comma -40
+KPX Otilde period -40
+KPX P A -120
+KPX P Aacute -120
+KPX P Abreve -120
+KPX P Acircumflex -120
+KPX P Adieresis -120
+KPX P Agrave -120
+KPX P Amacron -120
+KPX P Aogonek -120
+KPX P Aring -120
+KPX P Atilde -120
+KPX P a -40
+KPX P aacute -40
+KPX P abreve -40
+KPX P acircumflex -40
+KPX P adieresis -40
+KPX P agrave -40
+KPX P amacron -40
+KPX P aogonek -40
+KPX P aring -40
+KPX P atilde -40
+KPX P comma -180
+KPX P e -50
+KPX P eacute -50
+KPX P ecaron -50
+KPX P ecircumflex -50
+KPX P edieresis -50
+KPX P edotaccent -50
+KPX P egrave -50
+KPX P emacron -50
+KPX P eogonek -50
+KPX P o -50
+KPX P oacute -50
+KPX P ocircumflex -50
+KPX P odieresis -50
+KPX P ograve -50
+KPX P ohungarumlaut -50
+KPX P omacron -50
+KPX P oslash -50
+KPX P otilde -50
+KPX P period -180
+KPX Q U -10
+KPX Q Uacute -10
+KPX Q Ucircumflex -10
+KPX Q Udieresis -10
+KPX Q Ugrave -10
+KPX Q Uhungarumlaut -10
+KPX Q Umacron -10
+KPX Q Uogonek -10
+KPX Q Uring -10
+KPX R O -20
+KPX R Oacute -20
+KPX R Ocircumflex -20
+KPX R Odieresis -20
+KPX R Ograve -20
+KPX R Ohungarumlaut -20
+KPX R Omacron -20
+KPX R Oslash -20
+KPX R Otilde -20
+KPX R T -30
+KPX R Tcaron -30
+KPX R Tcommaaccent -30
+KPX R U -40
+KPX R Uacute -40
+KPX R Ucircumflex -40
+KPX R Udieresis -40
+KPX R Ugrave -40
+KPX R Uhungarumlaut -40
+KPX R Umacron -40
+KPX R Uogonek -40
+KPX R Uring -40
+KPX R V -50
+KPX R W -30
+KPX R Y -50
+KPX R Yacute -50
+KPX R Ydieresis -50
+KPX Racute O -20
+KPX Racute Oacute -20
+KPX Racute Ocircumflex -20
+KPX Racute Odieresis -20
+KPX Racute Ograve -20
+KPX Racute Ohungarumlaut -20
+KPX Racute Omacron -20
+KPX Racute Oslash -20
+KPX Racute Otilde -20
+KPX Racute T -30
+KPX Racute Tcaron -30
+KPX Racute Tcommaaccent -30
+KPX Racute U -40
+KPX Racute Uacute -40
+KPX Racute Ucircumflex -40
+KPX Racute Udieresis -40
+KPX Racute Ugrave -40
+KPX Racute Uhungarumlaut -40
+KPX Racute Umacron -40
+KPX Racute Uogonek -40
+KPX Racute Uring -40
+KPX Racute V -50
+KPX Racute W -30
+KPX Racute Y -50
+KPX Racute Yacute -50
+KPX Racute Ydieresis -50
+KPX Rcaron O -20
+KPX Rcaron Oacute -20
+KPX Rcaron Ocircumflex -20
+KPX Rcaron Odieresis -20
+KPX Rcaron Ograve -20
+KPX Rcaron Ohungarumlaut -20
+KPX Rcaron Omacron -20
+KPX Rcaron Oslash -20
+KPX Rcaron Otilde -20
+KPX Rcaron T -30
+KPX Rcaron Tcaron -30
+KPX Rcaron Tcommaaccent -30
+KPX Rcaron U -40
+KPX Rcaron Uacute -40
+KPX Rcaron Ucircumflex -40
+KPX Rcaron Udieresis -40
+KPX Rcaron Ugrave -40
+KPX Rcaron Uhungarumlaut -40
+KPX Rcaron Umacron -40
+KPX Rcaron Uogonek -40
+KPX Rcaron Uring -40
+KPX Rcaron V -50
+KPX Rcaron W -30
+KPX Rcaron Y -50
+KPX Rcaron Yacute -50
+KPX Rcaron Ydieresis -50
+KPX Rcommaaccent O -20
+KPX Rcommaaccent Oacute -20
+KPX Rcommaaccent Ocircumflex -20
+KPX Rcommaaccent Odieresis -20
+KPX Rcommaaccent Ograve -20
+KPX Rcommaaccent Ohungarumlaut -20
+KPX Rcommaaccent Omacron -20
+KPX Rcommaaccent Oslash -20
+KPX Rcommaaccent Otilde -20
+KPX Rcommaaccent T -30
+KPX Rcommaaccent Tcaron -30
+KPX Rcommaaccent Tcommaaccent -30
+KPX Rcommaaccent U -40
+KPX Rcommaaccent Uacute -40
+KPX Rcommaaccent Ucircumflex -40
+KPX Rcommaaccent Udieresis -40
+KPX Rcommaaccent Ugrave -40
+KPX Rcommaaccent Uhungarumlaut -40
+KPX Rcommaaccent Umacron -40
+KPX Rcommaaccent Uogonek -40
+KPX Rcommaaccent Uring -40
+KPX Rcommaaccent V -50
+KPX Rcommaaccent W -30
+KPX Rcommaaccent Y -50
+KPX Rcommaaccent Yacute -50
+KPX Rcommaaccent Ydieresis -50
+KPX S comma -20
+KPX S period -20
+KPX Sacute comma -20
+KPX Sacute period -20
+KPX Scaron comma -20
+KPX Scaron period -20
+KPX Scedilla comma -20
+KPX Scedilla period -20
+KPX Scommaaccent comma -20
+KPX Scommaaccent period -20
+KPX T A -120
+KPX T Aacute -120
+KPX T Abreve -120
+KPX T Acircumflex -120
+KPX T Adieresis -120
+KPX T Agrave -120
+KPX T Amacron -120
+KPX T Aogonek -120
+KPX T Aring -120
+KPX T Atilde -120
+KPX T O -40
+KPX T Oacute -40
+KPX T Ocircumflex -40
+KPX T Odieresis -40
+KPX T Ograve -40
+KPX T Ohungarumlaut -40
+KPX T Omacron -40
+KPX T Oslash -40
+KPX T Otilde -40
+KPX T a -120
+KPX T aacute -120
+KPX T abreve -60
+KPX T acircumflex -120
+KPX T adieresis -120
+KPX T agrave -120
+KPX T amacron -60
+KPX T aogonek -120
+KPX T aring -120
+KPX T atilde -60
+KPX T colon -20
+KPX T comma -120
+KPX T e -120
+KPX T eacute -120
+KPX T ecaron -120
+KPX T ecircumflex -120
+KPX T edieresis -120
+KPX T edotaccent -120
+KPX T egrave -60
+KPX T emacron -60
+KPX T eogonek -120
+KPX T hyphen -140
+KPX T o -120
+KPX T oacute -120
+KPX T ocircumflex -120
+KPX T odieresis -120
+KPX T ograve -120
+KPX T ohungarumlaut -120
+KPX T omacron -60
+KPX T oslash -120
+KPX T otilde -60
+KPX T period -120
+KPX T r -120
+KPX T racute -120
+KPX T rcaron -120
+KPX T rcommaaccent -120
+KPX T semicolon -20
+KPX T u -120
+KPX T uacute -120
+KPX T ucircumflex -120
+KPX T udieresis -120
+KPX T ugrave -120
+KPX T uhungarumlaut -120
+KPX T umacron -60
+KPX T uogonek -120
+KPX T uring -120
+KPX T w -120
+KPX T y -120
+KPX T yacute -120
+KPX T ydieresis -60
+KPX Tcaron A -120
+KPX Tcaron Aacute -120
+KPX Tcaron Abreve -120
+KPX Tcaron Acircumflex -120
+KPX Tcaron Adieresis -120
+KPX Tcaron Agrave -120
+KPX Tcaron Amacron -120
+KPX Tcaron Aogonek -120
+KPX Tcaron Aring -120
+KPX Tcaron Atilde -120
+KPX Tcaron O -40
+KPX Tcaron Oacute -40
+KPX Tcaron Ocircumflex -40
+KPX Tcaron Odieresis -40
+KPX Tcaron Ograve -40
+KPX Tcaron Ohungarumlaut -40
+KPX Tcaron Omacron -40
+KPX Tcaron Oslash -40
+KPX Tcaron Otilde -40
+KPX Tcaron a -120
+KPX Tcaron aacute -120
+KPX Tcaron abreve -60
+KPX Tcaron acircumflex -120
+KPX Tcaron adieresis -120
+KPX Tcaron agrave -120
+KPX Tcaron amacron -60
+KPX Tcaron aogonek -120
+KPX Tcaron aring -120
+KPX Tcaron atilde -60
+KPX Tcaron colon -20
+KPX Tcaron comma -120
+KPX Tcaron e -120
+KPX Tcaron eacute -120
+KPX Tcaron ecaron -120
+KPX Tcaron ecircumflex -120
+KPX Tcaron edieresis -120
+KPX Tcaron edotaccent -120
+KPX Tcaron egrave -60
+KPX Tcaron emacron -60
+KPX Tcaron eogonek -120
+KPX Tcaron hyphen -140
+KPX Tcaron o -120
+KPX Tcaron oacute -120
+KPX Tcaron ocircumflex -120
+KPX Tcaron odieresis -120
+KPX Tcaron ograve -120
+KPX Tcaron ohungarumlaut -120
+KPX Tcaron omacron -60
+KPX Tcaron oslash -120
+KPX Tcaron otilde -60
+KPX Tcaron period -120
+KPX Tcaron r -120
+KPX Tcaron racute -120
+KPX Tcaron rcaron -120
+KPX Tcaron rcommaaccent -120
+KPX Tcaron semicolon -20
+KPX Tcaron u -120
+KPX Tcaron uacute -120
+KPX Tcaron ucircumflex -120
+KPX Tcaron udieresis -120
+KPX Tcaron ugrave -120
+KPX Tcaron uhungarumlaut -120
+KPX Tcaron umacron -60
+KPX Tcaron uogonek -120
+KPX Tcaron uring -120
+KPX Tcaron w -120
+KPX Tcaron y -120
+KPX Tcaron yacute -120
+KPX Tcaron ydieresis -60
+KPX Tcommaaccent A -120
+KPX Tcommaaccent Aacute -120
+KPX Tcommaaccent Abreve -120
+KPX Tcommaaccent Acircumflex -120
+KPX Tcommaaccent Adieresis -120
+KPX Tcommaaccent Agrave -120
+KPX Tcommaaccent Amacron -120
+KPX Tcommaaccent Aogonek -120
+KPX Tcommaaccent Aring -120
+KPX Tcommaaccent Atilde -120
+KPX Tcommaaccent O -40
+KPX Tcommaaccent Oacute -40
+KPX Tcommaaccent Ocircumflex -40
+KPX Tcommaaccent Odieresis -40
+KPX Tcommaaccent Ograve -40
+KPX Tcommaaccent Ohungarumlaut -40
+KPX Tcommaaccent Omacron -40
+KPX Tcommaaccent Oslash -40
+KPX Tcommaaccent Otilde -40
+KPX Tcommaaccent a -120
+KPX Tcommaaccent aacute -120
+KPX Tcommaaccent abreve -60
+KPX Tcommaaccent acircumflex -120
+KPX Tcommaaccent adieresis -120
+KPX Tcommaaccent agrave -120
+KPX Tcommaaccent amacron -60
+KPX Tcommaaccent aogonek -120
+KPX Tcommaaccent aring -120
+KPX Tcommaaccent atilde -60
+KPX Tcommaaccent colon -20
+KPX Tcommaaccent comma -120
+KPX Tcommaaccent e -120
+KPX Tcommaaccent eacute -120
+KPX Tcommaaccent ecaron -120
+KPX Tcommaaccent ecircumflex -120
+KPX Tcommaaccent edieresis -120
+KPX Tcommaaccent edotaccent -120
+KPX Tcommaaccent egrave -60
+KPX Tcommaaccent emacron -60
+KPX Tcommaaccent eogonek -120
+KPX Tcommaaccent hyphen -140
+KPX Tcommaaccent o -120
+KPX Tcommaaccent oacute -120
+KPX Tcommaaccent ocircumflex -120
+KPX Tcommaaccent odieresis -120
+KPX Tcommaaccent ograve -120
+KPX Tcommaaccent ohungarumlaut -120
+KPX Tcommaaccent omacron -60
+KPX Tcommaaccent oslash -120
+KPX Tcommaaccent otilde -60
+KPX Tcommaaccent period -120
+KPX Tcommaaccent r -120
+KPX Tcommaaccent racute -120
+KPX Tcommaaccent rcaron -120
+KPX Tcommaaccent rcommaaccent -120
+KPX Tcommaaccent semicolon -20
+KPX Tcommaaccent u -120
+KPX Tcommaaccent uacute -120
+KPX Tcommaaccent ucircumflex -120
+KPX Tcommaaccent udieresis -120
+KPX Tcommaaccent ugrave -120
+KPX Tcommaaccent uhungarumlaut -120
+KPX Tcommaaccent umacron -60
+KPX Tcommaaccent uogonek -120
+KPX Tcommaaccent uring -120
+KPX Tcommaaccent w -120
+KPX Tcommaaccent y -120
+KPX Tcommaaccent yacute -120
+KPX Tcommaaccent ydieresis -60
+KPX U A -40
+KPX U Aacute -40
+KPX U Abreve -40
+KPX U Acircumflex -40
+KPX U Adieresis -40
+KPX U Agrave -40
+KPX U Amacron -40
+KPX U Aogonek -40
+KPX U Aring -40
+KPX U Atilde -40
+KPX U comma -40
+KPX U period -40
+KPX Uacute A -40
+KPX Uacute Aacute -40
+KPX Uacute Abreve -40
+KPX Uacute Acircumflex -40
+KPX Uacute Adieresis -40
+KPX Uacute Agrave -40
+KPX Uacute Amacron -40
+KPX Uacute Aogonek -40
+KPX Uacute Aring -40
+KPX Uacute Atilde -40
+KPX Uacute comma -40
+KPX Uacute period -40
+KPX Ucircumflex A -40
+KPX Ucircumflex Aacute -40
+KPX Ucircumflex Abreve -40
+KPX Ucircumflex Acircumflex -40
+KPX Ucircumflex Adieresis -40
+KPX Ucircumflex Agrave -40
+KPX Ucircumflex Amacron -40
+KPX Ucircumflex Aogonek -40
+KPX Ucircumflex Aring -40
+KPX Ucircumflex Atilde -40
+KPX Ucircumflex comma -40
+KPX Ucircumflex period -40
+KPX Udieresis A -40
+KPX Udieresis Aacute -40
+KPX Udieresis Abreve -40
+KPX Udieresis Acircumflex -40
+KPX Udieresis Adieresis -40
+KPX Udieresis Agrave -40
+KPX Udieresis Amacron -40
+KPX Udieresis Aogonek -40
+KPX Udieresis Aring -40
+KPX Udieresis Atilde -40
+KPX Udieresis comma -40
+KPX Udieresis period -40
+KPX Ugrave A -40
+KPX Ugrave Aacute -40
+KPX Ugrave Abreve -40
+KPX Ugrave Acircumflex -40
+KPX Ugrave Adieresis -40
+KPX Ugrave Agrave -40
+KPX Ugrave Amacron -40
+KPX Ugrave Aogonek -40
+KPX Ugrave Aring -40
+KPX Ugrave Atilde -40
+KPX Ugrave comma -40
+KPX Ugrave period -40
+KPX Uhungarumlaut A -40
+KPX Uhungarumlaut Aacute -40
+KPX Uhungarumlaut Abreve -40
+KPX Uhungarumlaut Acircumflex -40
+KPX Uhungarumlaut Adieresis -40
+KPX Uhungarumlaut Agrave -40
+KPX Uhungarumlaut Amacron -40
+KPX Uhungarumlaut Aogonek -40
+KPX Uhungarumlaut Aring -40
+KPX Uhungarumlaut Atilde -40
+KPX Uhungarumlaut comma -40
+KPX Uhungarumlaut period -40
+KPX Umacron A -40
+KPX Umacron Aacute -40
+KPX Umacron Abreve -40
+KPX Umacron Acircumflex -40
+KPX Umacron Adieresis -40
+KPX Umacron Agrave -40
+KPX Umacron Amacron -40
+KPX Umacron Aogonek -40
+KPX Umacron Aring -40
+KPX Umacron Atilde -40
+KPX Umacron comma -40
+KPX Umacron period -40
+KPX Uogonek A -40
+KPX Uogonek Aacute -40
+KPX Uogonek Abreve -40
+KPX Uogonek Acircumflex -40
+KPX Uogonek Adieresis -40
+KPX Uogonek Agrave -40
+KPX Uogonek Amacron -40
+KPX Uogonek Aogonek -40
+KPX Uogonek Aring -40
+KPX Uogonek Atilde -40
+KPX Uogonek comma -40
+KPX Uogonek period -40
+KPX Uring A -40
+KPX Uring Aacute -40
+KPX Uring Abreve -40
+KPX Uring Acircumflex -40
+KPX Uring Adieresis -40
+KPX Uring Agrave -40
+KPX Uring Amacron -40
+KPX Uring Aogonek -40
+KPX Uring Aring -40
+KPX Uring Atilde -40
+KPX Uring comma -40
+KPX Uring period -40
+KPX V A -80
+KPX V Aacute -80
+KPX V Abreve -80
+KPX V Acircumflex -80
+KPX V Adieresis -80
+KPX V Agrave -80
+KPX V Amacron -80
+KPX V Aogonek -80
+KPX V Aring -80
+KPX V Atilde -80
+KPX V G -40
+KPX V Gbreve -40
+KPX V Gcommaaccent -40
+KPX V O -40
+KPX V Oacute -40
+KPX V Ocircumflex -40
+KPX V Odieresis -40
+KPX V Ograve -40
+KPX V Ohungarumlaut -40
+KPX V Omacron -40
+KPX V Oslash -40
+KPX V Otilde -40
+KPX V a -70
+KPX V aacute -70
+KPX V abreve -70
+KPX V acircumflex -70
+KPX V adieresis -70
+KPX V agrave -70
+KPX V amacron -70
+KPX V aogonek -70
+KPX V aring -70
+KPX V atilde -70
+KPX V colon -40
+KPX V comma -125
+KPX V e -80
+KPX V eacute -80
+KPX V ecaron -80
+KPX V ecircumflex -80
+KPX V edieresis -80
+KPX V edotaccent -80
+KPX V egrave -80
+KPX V emacron -80
+KPX V eogonek -80
+KPX V hyphen -80
+KPX V o -80
+KPX V oacute -80
+KPX V ocircumflex -80
+KPX V odieresis -80
+KPX V ograve -80
+KPX V ohungarumlaut -80
+KPX V omacron -80
+KPX V oslash -80
+KPX V otilde -80
+KPX V period -125
+KPX V semicolon -40
+KPX V u -70
+KPX V uacute -70
+KPX V ucircumflex -70
+KPX V udieresis -70
+KPX V ugrave -70
+KPX V uhungarumlaut -70
+KPX V umacron -70
+KPX V uogonek -70
+KPX V uring -70
+KPX W A -50
+KPX W Aacute -50
+KPX W Abreve -50
+KPX W Acircumflex -50
+KPX W Adieresis -50
+KPX W Agrave -50
+KPX W Amacron -50
+KPX W Aogonek -50
+KPX W Aring -50
+KPX W Atilde -50
+KPX W O -20
+KPX W Oacute -20
+KPX W Ocircumflex -20
+KPX W Odieresis -20
+KPX W Ograve -20
+KPX W Ohungarumlaut -20
+KPX W Omacron -20
+KPX W Oslash -20
+KPX W Otilde -20
+KPX W a -40
+KPX W aacute -40
+KPX W abreve -40
+KPX W acircumflex -40
+KPX W adieresis -40
+KPX W agrave -40
+KPX W amacron -40
+KPX W aogonek -40
+KPX W aring -40
+KPX W atilde -40
+KPX W comma -80
+KPX W e -30
+KPX W eacute -30
+KPX W ecaron -30
+KPX W ecircumflex -30
+KPX W edieresis -30
+KPX W edotaccent -30
+KPX W egrave -30
+KPX W emacron -30
+KPX W eogonek -30
+KPX W hyphen -40
+KPX W o -30
+KPX W oacute -30
+KPX W ocircumflex -30
+KPX W odieresis -30
+KPX W ograve -30
+KPX W ohungarumlaut -30
+KPX W omacron -30
+KPX W oslash -30
+KPX W otilde -30
+KPX W period -80
+KPX W u -30
+KPX W uacute -30
+KPX W ucircumflex -30
+KPX W udieresis -30
+KPX W ugrave -30
+KPX W uhungarumlaut -30
+KPX W umacron -30
+KPX W uogonek -30
+KPX W uring -30
+KPX W y -20
+KPX W yacute -20
+KPX W ydieresis -20
+KPX Y A -110
+KPX Y Aacute -110
+KPX Y Abreve -110
+KPX Y Acircumflex -110
+KPX Y Adieresis -110
+KPX Y Agrave -110
+KPX Y Amacron -110
+KPX Y Aogonek -110
+KPX Y Aring -110
+KPX Y Atilde -110
+KPX Y O -85
+KPX Y Oacute -85
+KPX Y Ocircumflex -85
+KPX Y Odieresis -85
+KPX Y Ograve -85
+KPX Y Ohungarumlaut -85
+KPX Y Omacron -85
+KPX Y Oslash -85
+KPX Y Otilde -85
+KPX Y a -140
+KPX Y aacute -140
+KPX Y abreve -70
+KPX Y acircumflex -140
+KPX Y adieresis -140
+KPX Y agrave -140
+KPX Y amacron -70
+KPX Y aogonek -140
+KPX Y aring -140
+KPX Y atilde -140
+KPX Y colon -60
+KPX Y comma -140
+KPX Y e -140
+KPX Y eacute -140
+KPX Y ecaron -140
+KPX Y ecircumflex -140
+KPX Y edieresis -140
+KPX Y edotaccent -140
+KPX Y egrave -140
+KPX Y emacron -70
+KPX Y eogonek -140
+KPX Y hyphen -140
+KPX Y i -20
+KPX Y iacute -20
+KPX Y iogonek -20
+KPX Y o -140
+KPX Y oacute -140
+KPX Y ocircumflex -140
+KPX Y odieresis -140
+KPX Y ograve -140
+KPX Y ohungarumlaut -140
+KPX Y omacron -140
+KPX Y oslash -140
+KPX Y otilde -140
+KPX Y period -140
+KPX Y semicolon -60
+KPX Y u -110
+KPX Y uacute -110
+KPX Y ucircumflex -110
+KPX Y udieresis -110
+KPX Y ugrave -110
+KPX Y uhungarumlaut -110
+KPX Y umacron -110
+KPX Y uogonek -110
+KPX Y uring -110
+KPX Yacute A -110
+KPX Yacute Aacute -110
+KPX Yacute Abreve -110
+KPX Yacute Acircumflex -110
+KPX Yacute Adieresis -110
+KPX Yacute Agrave -110
+KPX Yacute Amacron -110
+KPX Yacute Aogonek -110
+KPX Yacute Aring -110
+KPX Yacute Atilde -110
+KPX Yacute O -85
+KPX Yacute Oacute -85
+KPX Yacute Ocircumflex -85
+KPX Yacute Odieresis -85
+KPX Yacute Ograve -85
+KPX Yacute Ohungarumlaut -85
+KPX Yacute Omacron -85
+KPX Yacute Oslash -85
+KPX Yacute Otilde -85
+KPX Yacute a -140
+KPX Yacute aacute -140
+KPX Yacute abreve -70
+KPX Yacute acircumflex -140
+KPX Yacute adieresis -140
+KPX Yacute agrave -140
+KPX Yacute amacron -70
+KPX Yacute aogonek -140
+KPX Yacute aring -140
+KPX Yacute atilde -70
+KPX Yacute colon -60
+KPX Yacute comma -140
+KPX Yacute e -140
+KPX Yacute eacute -140
+KPX Yacute ecaron -140
+KPX Yacute ecircumflex -140
+KPX Yacute edieresis -140
+KPX Yacute edotaccent -140
+KPX Yacute egrave -140
+KPX Yacute emacron -70
+KPX Yacute eogonek -140
+KPX Yacute hyphen -140
+KPX Yacute i -20
+KPX Yacute iacute -20
+KPX Yacute iogonek -20
+KPX Yacute o -140
+KPX Yacute oacute -140
+KPX Yacute ocircumflex -140
+KPX Yacute odieresis -140
+KPX Yacute ograve -140
+KPX Yacute ohungarumlaut -140
+KPX Yacute omacron -70
+KPX Yacute oslash -140
+KPX Yacute otilde -140
+KPX Yacute period -140
+KPX Yacute semicolon -60
+KPX Yacute u -110
+KPX Yacute uacute -110
+KPX Yacute ucircumflex -110
+KPX Yacute udieresis -110
+KPX Yacute ugrave -110
+KPX Yacute uhungarumlaut -110
+KPX Yacute umacron -110
+KPX Yacute uogonek -110
+KPX Yacute uring -110
+KPX Ydieresis A -110
+KPX Ydieresis Aacute -110
+KPX Ydieresis Abreve -110
+KPX Ydieresis Acircumflex -110
+KPX Ydieresis Adieresis -110
+KPX Ydieresis Agrave -110
+KPX Ydieresis Amacron -110
+KPX Ydieresis Aogonek -110
+KPX Ydieresis Aring -110
+KPX Ydieresis Atilde -110
+KPX Ydieresis O -85
+KPX Ydieresis Oacute -85
+KPX Ydieresis Ocircumflex -85
+KPX Ydieresis Odieresis -85
+KPX Ydieresis Ograve -85
+KPX Ydieresis Ohungarumlaut -85
+KPX Ydieresis Omacron -85
+KPX Ydieresis Oslash -85
+KPX Ydieresis Otilde -85
+KPX Ydieresis a -140
+KPX Ydieresis aacute -140
+KPX Ydieresis abreve -70
+KPX Ydieresis acircumflex -140
+KPX Ydieresis adieresis -140
+KPX Ydieresis agrave -140
+KPX Ydieresis amacron -70
+KPX Ydieresis aogonek -140
+KPX Ydieresis aring -140
+KPX Ydieresis atilde -70
+KPX Ydieresis colon -60
+KPX Ydieresis comma -140
+KPX Ydieresis e -140
+KPX Ydieresis eacute -140
+KPX Ydieresis ecaron -140
+KPX Ydieresis ecircumflex -140
+KPX Ydieresis edieresis -140
+KPX Ydieresis edotaccent -140
+KPX Ydieresis egrave -140
+KPX Ydieresis emacron -70
+KPX Ydieresis eogonek -140
+KPX Ydieresis hyphen -140
+KPX Ydieresis i -20
+KPX Ydieresis iacute -20
+KPX Ydieresis iogonek -20
+KPX Ydieresis o -140
+KPX Ydieresis oacute -140
+KPX Ydieresis ocircumflex -140
+KPX Ydieresis odieresis -140
+KPX Ydieresis ograve -140
+KPX Ydieresis ohungarumlaut -140
+KPX Ydieresis omacron -140
+KPX Ydieresis oslash -140
+KPX Ydieresis otilde -140
+KPX Ydieresis period -140
+KPX Ydieresis semicolon -60
+KPX Ydieresis u -110
+KPX Ydieresis uacute -110
+KPX Ydieresis ucircumflex -110
+KPX Ydieresis udieresis -110
+KPX Ydieresis ugrave -110
+KPX Ydieresis uhungarumlaut -110
+KPX Ydieresis umacron -110
+KPX Ydieresis uogonek -110
+KPX Ydieresis uring -110
+KPX a v -20
+KPX a w -20
+KPX a y -30
+KPX a yacute -30
+KPX a ydieresis -30
+KPX aacute v -20
+KPX aacute w -20
+KPX aacute y -30
+KPX aacute yacute -30
+KPX aacute ydieresis -30
+KPX abreve v -20
+KPX abreve w -20
+KPX abreve y -30
+KPX abreve yacute -30
+KPX abreve ydieresis -30
+KPX acircumflex v -20
+KPX acircumflex w -20
+KPX acircumflex y -30
+KPX acircumflex yacute -30
+KPX acircumflex ydieresis -30
+KPX adieresis v -20
+KPX adieresis w -20
+KPX adieresis y -30
+KPX adieresis yacute -30
+KPX adieresis ydieresis -30
+KPX agrave v -20
+KPX agrave w -20
+KPX agrave y -30
+KPX agrave yacute -30
+KPX agrave ydieresis -30
+KPX amacron v -20
+KPX amacron w -20
+KPX amacron y -30
+KPX amacron yacute -30
+KPX amacron ydieresis -30
+KPX aogonek v -20
+KPX aogonek w -20
+KPX aogonek y -30
+KPX aogonek yacute -30
+KPX aogonek ydieresis -30
+KPX aring v -20
+KPX aring w -20
+KPX aring y -30
+KPX aring yacute -30
+KPX aring ydieresis -30
+KPX atilde v -20
+KPX atilde w -20
+KPX atilde y -30
+KPX atilde yacute -30
+KPX atilde ydieresis -30
+KPX b b -10
+KPX b comma -40
+KPX b l -20
+KPX b lacute -20
+KPX b lcommaaccent -20
+KPX b lslash -20
+KPX b period -40
+KPX b u -20
+KPX b uacute -20
+KPX b ucircumflex -20
+KPX b udieresis -20
+KPX b ugrave -20
+KPX b uhungarumlaut -20
+KPX b umacron -20
+KPX b uogonek -20
+KPX b uring -20
+KPX b v -20
+KPX b y -20
+KPX b yacute -20
+KPX b ydieresis -20
+KPX c comma -15
+KPX c k -20
+KPX c kcommaaccent -20
+KPX cacute comma -15
+KPX cacute k -20
+KPX cacute kcommaaccent -20
+KPX ccaron comma -15
+KPX ccaron k -20
+KPX ccaron kcommaaccent -20
+KPX ccedilla comma -15
+KPX ccedilla k -20
+KPX ccedilla kcommaaccent -20
+KPX colon space -50
+KPX comma quotedblright -100
+KPX comma quoteright -100
+KPX e comma -15
+KPX e period -15
+KPX e v -30
+KPX e w -20
+KPX e x -30
+KPX e y -20
+KPX e yacute -20
+KPX e ydieresis -20
+KPX eacute comma -15
+KPX eacute period -15
+KPX eacute v -30
+KPX eacute w -20
+KPX eacute x -30
+KPX eacute y -20
+KPX eacute yacute -20
+KPX eacute ydieresis -20
+KPX ecaron comma -15
+KPX ecaron period -15
+KPX ecaron v -30
+KPX ecaron w -20
+KPX ecaron x -30
+KPX ecaron y -20
+KPX ecaron yacute -20
+KPX ecaron ydieresis -20
+KPX ecircumflex comma -15
+KPX ecircumflex period -15
+KPX ecircumflex v -30
+KPX ecircumflex w -20
+KPX ecircumflex x -30
+KPX ecircumflex y -20
+KPX ecircumflex yacute -20
+KPX ecircumflex ydieresis -20
+KPX edieresis comma -15
+KPX edieresis period -15
+KPX edieresis v -30
+KPX edieresis w -20
+KPX edieresis x -30
+KPX edieresis y -20
+KPX edieresis yacute -20
+KPX edieresis ydieresis -20
+KPX edotaccent comma -15
+KPX edotaccent period -15
+KPX edotaccent v -30
+KPX edotaccent w -20
+KPX edotaccent x -30
+KPX edotaccent y -20
+KPX edotaccent yacute -20
+KPX edotaccent ydieresis -20
+KPX egrave comma -15
+KPX egrave period -15
+KPX egrave v -30
+KPX egrave w -20
+KPX egrave x -30
+KPX egrave y -20
+KPX egrave yacute -20
+KPX egrave ydieresis -20
+KPX emacron comma -15
+KPX emacron period -15
+KPX emacron v -30
+KPX emacron w -20
+KPX emacron x -30
+KPX emacron y -20
+KPX emacron yacute -20
+KPX emacron ydieresis -20
+KPX eogonek comma -15
+KPX eogonek period -15
+KPX eogonek v -30
+KPX eogonek w -20
+KPX eogonek x -30
+KPX eogonek y -20
+KPX eogonek yacute -20
+KPX eogonek ydieresis -20
+KPX f a -30
+KPX f aacute -30
+KPX f abreve -30
+KPX f acircumflex -30
+KPX f adieresis -30
+KPX f agrave -30
+KPX f amacron -30
+KPX f aogonek -30
+KPX f aring -30
+KPX f atilde -30
+KPX f comma -30
+KPX f dotlessi -28
+KPX f e -30
+KPX f eacute -30
+KPX f ecaron -30
+KPX f ecircumflex -30
+KPX f edieresis -30
+KPX f edotaccent -30
+KPX f egrave -30
+KPX f emacron -30
+KPX f eogonek -30
+KPX f o -30
+KPX f oacute -30
+KPX f ocircumflex -30
+KPX f odieresis -30
+KPX f ograve -30
+KPX f ohungarumlaut -30
+KPX f omacron -30
+KPX f oslash -30
+KPX f otilde -30
+KPX f period -30
+KPX f quotedblright 60
+KPX f quoteright 50
+KPX g r -10
+KPX g racute -10
+KPX g rcaron -10
+KPX g rcommaaccent -10
+KPX gbreve r -10
+KPX gbreve racute -10
+KPX gbreve rcaron -10
+KPX gbreve rcommaaccent -10
+KPX gcommaaccent r -10
+KPX gcommaaccent racute -10
+KPX gcommaaccent rcaron -10
+KPX gcommaaccent rcommaaccent -10
+KPX h y -30
+KPX h yacute -30
+KPX h ydieresis -30
+KPX k e -20
+KPX k eacute -20
+KPX k ecaron -20
+KPX k ecircumflex -20
+KPX k edieresis -20
+KPX k edotaccent -20
+KPX k egrave -20
+KPX k emacron -20
+KPX k eogonek -20
+KPX k o -20
+KPX k oacute -20
+KPX k ocircumflex -20
+KPX k odieresis -20
+KPX k ograve -20
+KPX k ohungarumlaut -20
+KPX k omacron -20
+KPX k oslash -20
+KPX k otilde -20
+KPX kcommaaccent e -20
+KPX kcommaaccent eacute -20
+KPX kcommaaccent ecaron -20
+KPX kcommaaccent ecircumflex -20
+KPX kcommaaccent edieresis -20
+KPX kcommaaccent edotaccent -20
+KPX kcommaaccent egrave -20
+KPX kcommaaccent emacron -20
+KPX kcommaaccent eogonek -20
+KPX kcommaaccent o -20
+KPX kcommaaccent oacute -20
+KPX kcommaaccent ocircumflex -20
+KPX kcommaaccent odieresis -20
+KPX kcommaaccent ograve -20
+KPX kcommaaccent ohungarumlaut -20
+KPX kcommaaccent omacron -20
+KPX kcommaaccent oslash -20
+KPX kcommaaccent otilde -20
+KPX m u -10
+KPX m uacute -10
+KPX m ucircumflex -10
+KPX m udieresis -10
+KPX m ugrave -10
+KPX m uhungarumlaut -10
+KPX m umacron -10
+KPX m uogonek -10
+KPX m uring -10
+KPX m y -15
+KPX m yacute -15
+KPX m ydieresis -15
+KPX n u -10
+KPX n uacute -10
+KPX n ucircumflex -10
+KPX n udieresis -10
+KPX n ugrave -10
+KPX n uhungarumlaut -10
+KPX n umacron -10
+KPX n uogonek -10
+KPX n uring -10
+KPX n v -20
+KPX n y -15
+KPX n yacute -15
+KPX n ydieresis -15
+KPX nacute u -10
+KPX nacute uacute -10
+KPX nacute ucircumflex -10
+KPX nacute udieresis -10
+KPX nacute ugrave -10
+KPX nacute uhungarumlaut -10
+KPX nacute umacron -10
+KPX nacute uogonek -10
+KPX nacute uring -10
+KPX nacute v -20
+KPX nacute y -15
+KPX nacute yacute -15
+KPX nacute ydieresis -15
+KPX ncaron u -10
+KPX ncaron uacute -10
+KPX ncaron ucircumflex -10
+KPX ncaron udieresis -10
+KPX ncaron ugrave -10
+KPX ncaron uhungarumlaut -10
+KPX ncaron umacron -10
+KPX ncaron uogonek -10
+KPX ncaron uring -10
+KPX ncaron v -20
+KPX ncaron y -15
+KPX ncaron yacute -15
+KPX ncaron ydieresis -15
+KPX ncommaaccent u -10
+KPX ncommaaccent uacute -10
+KPX ncommaaccent ucircumflex -10
+KPX ncommaaccent udieresis -10
+KPX ncommaaccent ugrave -10
+KPX ncommaaccent uhungarumlaut -10
+KPX ncommaaccent umacron -10
+KPX ncommaaccent uogonek -10
+KPX ncommaaccent uring -10
+KPX ncommaaccent v -20
+KPX ncommaaccent y -15
+KPX ncommaaccent yacute -15
+KPX ncommaaccent ydieresis -15
+KPX ntilde u -10
+KPX ntilde uacute -10
+KPX ntilde ucircumflex -10
+KPX ntilde udieresis -10
+KPX ntilde ugrave -10
+KPX ntilde uhungarumlaut -10
+KPX ntilde umacron -10
+KPX ntilde uogonek -10
+KPX ntilde uring -10
+KPX ntilde v -20
+KPX ntilde y -15
+KPX ntilde yacute -15
+KPX ntilde ydieresis -15
+KPX o comma -40
+KPX o period -40
+KPX o v -15
+KPX o w -15
+KPX o x -30
+KPX o y -30
+KPX o yacute -30
+KPX o ydieresis -30
+KPX oacute comma -40
+KPX oacute period -40
+KPX oacute v -15
+KPX oacute w -15
+KPX oacute x -30
+KPX oacute y -30
+KPX oacute yacute -30
+KPX oacute ydieresis -30
+KPX ocircumflex comma -40
+KPX ocircumflex period -40
+KPX ocircumflex v -15
+KPX ocircumflex w -15
+KPX ocircumflex x -30
+KPX ocircumflex y -30
+KPX ocircumflex yacute -30
+KPX ocircumflex ydieresis -30
+KPX odieresis comma -40
+KPX odieresis period -40
+KPX odieresis v -15
+KPX odieresis w -15
+KPX odieresis x -30
+KPX odieresis y -30
+KPX odieresis yacute -30
+KPX odieresis ydieresis -30
+KPX ograve comma -40
+KPX ograve period -40
+KPX ograve v -15
+KPX ograve w -15
+KPX ograve x -30
+KPX ograve y -30
+KPX ograve yacute -30
+KPX ograve ydieresis -30
+KPX ohungarumlaut comma -40
+KPX ohungarumlaut period -40
+KPX ohungarumlaut v -15
+KPX ohungarumlaut w -15
+KPX ohungarumlaut x -30
+KPX ohungarumlaut y -30
+KPX ohungarumlaut yacute -30
+KPX ohungarumlaut ydieresis -30
+KPX omacron comma -40
+KPX omacron period -40
+KPX omacron v -15
+KPX omacron w -15
+KPX omacron x -30
+KPX omacron y -30
+KPX omacron yacute -30
+KPX omacron ydieresis -30
+KPX oslash a -55
+KPX oslash aacute -55
+KPX oslash abreve -55
+KPX oslash acircumflex -55
+KPX oslash adieresis -55
+KPX oslash agrave -55
+KPX oslash amacron -55
+KPX oslash aogonek -55
+KPX oslash aring -55
+KPX oslash atilde -55
+KPX oslash b -55
+KPX oslash c -55
+KPX oslash cacute -55
+KPX oslash ccaron -55
+KPX oslash ccedilla -55
+KPX oslash comma -95
+KPX oslash d -55
+KPX oslash dcroat -55
+KPX oslash e -55
+KPX oslash eacute -55
+KPX oslash ecaron -55
+KPX oslash ecircumflex -55
+KPX oslash edieresis -55
+KPX oslash edotaccent -55
+KPX oslash egrave -55
+KPX oslash emacron -55
+KPX oslash eogonek -55
+KPX oslash f -55
+KPX oslash g -55
+KPX oslash gbreve -55
+KPX oslash gcommaaccent -55
+KPX oslash h -55
+KPX oslash i -55
+KPX oslash iacute -55
+KPX oslash icircumflex -55
+KPX oslash idieresis -55
+KPX oslash igrave -55
+KPX oslash imacron -55
+KPX oslash iogonek -55
+KPX oslash j -55
+KPX oslash k -55
+KPX oslash kcommaaccent -55
+KPX oslash l -55
+KPX oslash lacute -55
+KPX oslash lcommaaccent -55
+KPX oslash lslash -55
+KPX oslash m -55
+KPX oslash n -55
+KPX oslash nacute -55
+KPX oslash ncaron -55
+KPX oslash ncommaaccent -55
+KPX oslash ntilde -55
+KPX oslash o -55
+KPX oslash oacute -55
+KPX oslash ocircumflex -55
+KPX oslash odieresis -55
+KPX oslash ograve -55
+KPX oslash ohungarumlaut -55
+KPX oslash omacron -55
+KPX oslash oslash -55
+KPX oslash otilde -55
+KPX oslash p -55
+KPX oslash period -95
+KPX oslash q -55
+KPX oslash r -55
+KPX oslash racute -55
+KPX oslash rcaron -55
+KPX oslash rcommaaccent -55
+KPX oslash s -55
+KPX oslash sacute -55
+KPX oslash scaron -55
+KPX oslash scedilla -55
+KPX oslash scommaaccent -55
+KPX oslash t -55
+KPX oslash tcommaaccent -55
+KPX oslash u -55
+KPX oslash uacute -55
+KPX oslash ucircumflex -55
+KPX oslash udieresis -55
+KPX oslash ugrave -55
+KPX oslash uhungarumlaut -55
+KPX oslash umacron -55
+KPX oslash uogonek -55
+KPX oslash uring -55
+KPX oslash v -70
+KPX oslash w -70
+KPX oslash x -85
+KPX oslash y -70
+KPX oslash yacute -70
+KPX oslash ydieresis -70
+KPX oslash z -55
+KPX oslash zacute -55
+KPX oslash zcaron -55
+KPX oslash zdotaccent -55
+KPX otilde comma -40
+KPX otilde period -40
+KPX otilde v -15
+KPX otilde w -15
+KPX otilde x -30
+KPX otilde y -30
+KPX otilde yacute -30
+KPX otilde ydieresis -30
+KPX p comma -35
+KPX p period -35
+KPX p y -30
+KPX p yacute -30
+KPX p ydieresis -30
+KPX period quotedblright -100
+KPX period quoteright -100
+KPX period space -60
+KPX quotedblright space -40
+KPX quoteleft quoteleft -57
+KPX quoteright d -50
+KPX quoteright dcroat -50
+KPX quoteright quoteright -57
+KPX quoteright r -50
+KPX quoteright racute -50
+KPX quoteright rcaron -50
+KPX quoteright rcommaaccent -50
+KPX quoteright s -50
+KPX quoteright sacute -50
+KPX quoteright scaron -50
+KPX quoteright scedilla -50
+KPX quoteright scommaaccent -50
+KPX quoteright space -70
+KPX r a -10
+KPX r aacute -10
+KPX r abreve -10
+KPX r acircumflex -10
+KPX r adieresis -10
+KPX r agrave -10
+KPX r amacron -10
+KPX r aogonek -10
+KPX r aring -10
+KPX r atilde -10
+KPX r colon 30
+KPX r comma -50
+KPX r i 15
+KPX r iacute 15
+KPX r icircumflex 15
+KPX r idieresis 15
+KPX r igrave 15
+KPX r imacron 15
+KPX r iogonek 15
+KPX r k 15
+KPX r kcommaaccent 15
+KPX r l 15
+KPX r lacute 15
+KPX r lcommaaccent 15
+KPX r lslash 15
+KPX r m 25
+KPX r n 25
+KPX r nacute 25
+KPX r ncaron 25
+KPX r ncommaaccent 25
+KPX r ntilde 25
+KPX r p 30
+KPX r period -50
+KPX r semicolon 30
+KPX r t 40
+KPX r tcommaaccent 40
+KPX r u 15
+KPX r uacute 15
+KPX r ucircumflex 15
+KPX r udieresis 15
+KPX r ugrave 15
+KPX r uhungarumlaut 15
+KPX r umacron 15
+KPX r uogonek 15
+KPX r uring 15
+KPX r v 30
+KPX r y 30
+KPX r yacute 30
+KPX r ydieresis 30
+KPX racute a -10
+KPX racute aacute -10
+KPX racute abreve -10
+KPX racute acircumflex -10
+KPX racute adieresis -10
+KPX racute agrave -10
+KPX racute amacron -10
+KPX racute aogonek -10
+KPX racute aring -10
+KPX racute atilde -10
+KPX racute colon 30
+KPX racute comma -50
+KPX racute i 15
+KPX racute iacute 15
+KPX racute icircumflex 15
+KPX racute idieresis 15
+KPX racute igrave 15
+KPX racute imacron 15
+KPX racute iogonek 15
+KPX racute k 15
+KPX racute kcommaaccent 15
+KPX racute l 15
+KPX racute lacute 15
+KPX racute lcommaaccent 15
+KPX racute lslash 15
+KPX racute m 25
+KPX racute n 25
+KPX racute nacute 25
+KPX racute ncaron 25
+KPX racute ncommaaccent 25
+KPX racute ntilde 25
+KPX racute p 30
+KPX racute period -50
+KPX racute semicolon 30
+KPX racute t 40
+KPX racute tcommaaccent 40
+KPX racute u 15
+KPX racute uacute 15
+KPX racute ucircumflex 15
+KPX racute udieresis 15
+KPX racute ugrave 15
+KPX racute uhungarumlaut 15
+KPX racute umacron 15
+KPX racute uogonek 15
+KPX racute uring 15
+KPX racute v 30
+KPX racute y 30
+KPX racute yacute 30
+KPX racute ydieresis 30
+KPX rcaron a -10
+KPX rcaron aacute -10
+KPX rcaron abreve -10
+KPX rcaron acircumflex -10
+KPX rcaron adieresis -10
+KPX rcaron agrave -10
+KPX rcaron amacron -10
+KPX rcaron aogonek -10
+KPX rcaron aring -10
+KPX rcaron atilde -10
+KPX rcaron colon 30
+KPX rcaron comma -50
+KPX rcaron i 15
+KPX rcaron iacute 15
+KPX rcaron icircumflex 15
+KPX rcaron idieresis 15
+KPX rcaron igrave 15
+KPX rcaron imacron 15
+KPX rcaron iogonek 15
+KPX rcaron k 15
+KPX rcaron kcommaaccent 15
+KPX rcaron l 15
+KPX rcaron lacute 15
+KPX rcaron lcommaaccent 15
+KPX rcaron lslash 15
+KPX rcaron m 25
+KPX rcaron n 25
+KPX rcaron nacute 25
+KPX rcaron ncaron 25
+KPX rcaron ncommaaccent 25
+KPX rcaron ntilde 25
+KPX rcaron p 30
+KPX rcaron period -50
+KPX rcaron semicolon 30
+KPX rcaron t 40
+KPX rcaron tcommaaccent 40
+KPX rcaron u 15
+KPX rcaron uacute 15
+KPX rcaron ucircumflex 15
+KPX rcaron udieresis 15
+KPX rcaron ugrave 15
+KPX rcaron uhungarumlaut 15
+KPX rcaron umacron 15
+KPX rcaron uogonek 15
+KPX rcaron uring 15
+KPX rcaron v 30
+KPX rcaron y 30
+KPX rcaron yacute 30
+KPX rcaron ydieresis 30
+KPX rcommaaccent a -10
+KPX rcommaaccent aacute -10
+KPX rcommaaccent abreve -10
+KPX rcommaaccent acircumflex -10
+KPX rcommaaccent adieresis -10
+KPX rcommaaccent agrave -10
+KPX rcommaaccent amacron -10
+KPX rcommaaccent aogonek -10
+KPX rcommaaccent aring -10
+KPX rcommaaccent atilde -10
+KPX rcommaaccent colon 30
+KPX rcommaaccent comma -50
+KPX rcommaaccent i 15
+KPX rcommaaccent iacute 15
+KPX rcommaaccent icircumflex 15
+KPX rcommaaccent idieresis 15
+KPX rcommaaccent igrave 15
+KPX rcommaaccent imacron 15
+KPX rcommaaccent iogonek 15
+KPX rcommaaccent k 15
+KPX rcommaaccent kcommaaccent 15
+KPX rcommaaccent l 15
+KPX rcommaaccent lacute 15
+KPX rcommaaccent lcommaaccent 15
+KPX rcommaaccent lslash 15
+KPX rcommaaccent m 25
+KPX rcommaaccent n 25
+KPX rcommaaccent nacute 25
+KPX rcommaaccent ncaron 25
+KPX rcommaaccent ncommaaccent 25
+KPX rcommaaccent ntilde 25
+KPX rcommaaccent p 30
+KPX rcommaaccent period -50
+KPX rcommaaccent semicolon 30
+KPX rcommaaccent t 40
+KPX rcommaaccent tcommaaccent 40
+KPX rcommaaccent u 15
+KPX rcommaaccent uacute 15
+KPX rcommaaccent ucircumflex 15
+KPX rcommaaccent udieresis 15
+KPX rcommaaccent ugrave 15
+KPX rcommaaccent uhungarumlaut 15
+KPX rcommaaccent umacron 15
+KPX rcommaaccent uogonek 15
+KPX rcommaaccent uring 15
+KPX rcommaaccent v 30
+KPX rcommaaccent y 30
+KPX rcommaaccent yacute 30
+KPX rcommaaccent ydieresis 30
+KPX s comma -15
+KPX s period -15
+KPX s w -30
+KPX sacute comma -15
+KPX sacute period -15
+KPX sacute w -30
+KPX scaron comma -15
+KPX scaron period -15
+KPX scaron w -30
+KPX scedilla comma -15
+KPX scedilla period -15
+KPX scedilla w -30
+KPX scommaaccent comma -15
+KPX scommaaccent period -15
+KPX scommaaccent w -30
+KPX semicolon space -50
+KPX space T -50
+KPX space Tcaron -50
+KPX space Tcommaaccent -50
+KPX space V -50
+KPX space W -40
+KPX space Y -90
+KPX space Yacute -90
+KPX space Ydieresis -90
+KPX space quotedblleft -30
+KPX space quoteleft -60
+KPX v a -25
+KPX v aacute -25
+KPX v abreve -25
+KPX v acircumflex -25
+KPX v adieresis -25
+KPX v agrave -25
+KPX v amacron -25
+KPX v aogonek -25
+KPX v aring -25
+KPX v atilde -25
+KPX v comma -80
+KPX v e -25
+KPX v eacute -25
+KPX v ecaron -25
+KPX v ecircumflex -25
+KPX v edieresis -25
+KPX v edotaccent -25
+KPX v egrave -25
+KPX v emacron -25
+KPX v eogonek -25
+KPX v o -25
+KPX v oacute -25
+KPX v ocircumflex -25
+KPX v odieresis -25
+KPX v ograve -25
+KPX v ohungarumlaut -25
+KPX v omacron -25
+KPX v oslash -25
+KPX v otilde -25
+KPX v period -80
+KPX w a -15
+KPX w aacute -15
+KPX w abreve -15
+KPX w acircumflex -15
+KPX w adieresis -15
+KPX w agrave -15
+KPX w amacron -15
+KPX w aogonek -15
+KPX w aring -15
+KPX w atilde -15
+KPX w comma -60
+KPX w e -10
+KPX w eacute -10
+KPX w ecaron -10
+KPX w ecircumflex -10
+KPX w edieresis -10
+KPX w edotaccent -10
+KPX w egrave -10
+KPX w emacron -10
+KPX w eogonek -10
+KPX w o -10
+KPX w oacute -10
+KPX w ocircumflex -10
+KPX w odieresis -10
+KPX w ograve -10
+KPX w ohungarumlaut -10
+KPX w omacron -10
+KPX w oslash -10
+KPX w otilde -10
+KPX w period -60
+KPX x e -30
+KPX x eacute -30
+KPX x ecaron -30
+KPX x ecircumflex -30
+KPX x edieresis -30
+KPX x edotaccent -30
+KPX x egrave -30
+KPX x emacron -30
+KPX x eogonek -30
+KPX y a -20
+KPX y aacute -20
+KPX y abreve -20
+KPX y acircumflex -20
+KPX y adieresis -20
+KPX y agrave -20
+KPX y amacron -20
+KPX y aogonek -20
+KPX y aring -20
+KPX y atilde -20
+KPX y comma -100
+KPX y e -20
+KPX y eacute -20
+KPX y ecaron -20
+KPX y ecircumflex -20
+KPX y edieresis -20
+KPX y edotaccent -20
+KPX y egrave -20
+KPX y emacron -20
+KPX y eogonek -20
+KPX y o -20
+KPX y oacute -20
+KPX y ocircumflex -20
+KPX y odieresis -20
+KPX y ograve -20
+KPX y ohungarumlaut -20
+KPX y omacron -20
+KPX y oslash -20
+KPX y otilde -20
+KPX y period -100
+KPX yacute a -20
+KPX yacute aacute -20
+KPX yacute abreve -20
+KPX yacute acircumflex -20
+KPX yacute adieresis -20
+KPX yacute agrave -20
+KPX yacute amacron -20
+KPX yacute aogonek -20
+KPX yacute aring -20
+KPX yacute atilde -20
+KPX yacute comma -100
+KPX yacute e -20
+KPX yacute eacute -20
+KPX yacute ecaron -20
+KPX yacute ecircumflex -20
+KPX yacute edieresis -20
+KPX yacute edotaccent -20
+KPX yacute egrave -20
+KPX yacute emacron -20
+KPX yacute eogonek -20
+KPX yacute o -20
+KPX yacute oacute -20
+KPX yacute ocircumflex -20
+KPX yacute odieresis -20
+KPX yacute ograve -20
+KPX yacute ohungarumlaut -20
+KPX yacute omacron -20
+KPX yacute oslash -20
+KPX yacute otilde -20
+KPX yacute period -100
+KPX ydieresis a -20
+KPX ydieresis aacute -20
+KPX ydieresis abreve -20
+KPX ydieresis acircumflex -20
+KPX ydieresis adieresis -20
+KPX ydieresis agrave -20
+KPX ydieresis amacron -20
+KPX ydieresis aogonek -20
+KPX ydieresis aring -20
+KPX ydieresis atilde -20
+KPX ydieresis comma -100
+KPX ydieresis e -20
+KPX ydieresis eacute -20
+KPX ydieresis ecaron -20
+KPX ydieresis ecircumflex -20
+KPX ydieresis edieresis -20
+KPX ydieresis edotaccent -20
+KPX ydieresis egrave -20
+KPX ydieresis emacron -20
+KPX ydieresis eogonek -20
+KPX ydieresis o -20
+KPX ydieresis oacute -20
+KPX ydieresis ocircumflex -20
+KPX ydieresis odieresis -20
+KPX ydieresis ograve -20
+KPX ydieresis ohungarumlaut -20
+KPX ydieresis omacron -20
+KPX ydieresis oslash -20
+KPX ydieresis otilde -20
+KPX ydieresis period -100
+KPX z e -15
+KPX z eacute -15
+KPX z ecaron -15
+KPX z ecircumflex -15
+KPX z edieresis -15
+KPX z edotaccent -15
+KPX z egrave -15
+KPX z emacron -15
+KPX z eogonek -15
+KPX z o -15
+KPX z oacute -15
+KPX z ocircumflex -15
+KPX z odieresis -15
+KPX z ograve -15
+KPX z ohungarumlaut -15
+KPX z omacron -15
+KPX z oslash -15
+KPX z otilde -15
+KPX zacute e -15
+KPX zacute eacute -15
+KPX zacute ecaron -15
+KPX zacute ecircumflex -15
+KPX zacute edieresis -15
+KPX zacute edotaccent -15
+KPX zacute egrave -15
+KPX zacute emacron -15
+KPX zacute eogonek -15
+KPX zacute o -15
+KPX zacute oacute -15
+KPX zacute ocircumflex -15
+KPX zacute odieresis -15
+KPX zacute ograve -15
+KPX zacute ohungarumlaut -15
+KPX zacute omacron -15
+KPX zacute oslash -15
+KPX zacute otilde -15
+KPX zcaron e -15
+KPX zcaron eacute -15
+KPX zcaron ecaron -15
+KPX zcaron ecircumflex -15
+KPX zcaron edieresis -15
+KPX zcaron edotaccent -15
+KPX zcaron egrave -15
+KPX zcaron emacron -15
+KPX zcaron eogonek -15
+KPX zcaron o -15
+KPX zcaron oacute -15
+KPX zcaron ocircumflex -15
+KPX zcaron odieresis -15
+KPX zcaron ograve -15
+KPX zcaron ohungarumlaut -15
+KPX zcaron omacron -15
+KPX zcaron oslash -15
+KPX zcaron otilde -15
+KPX zdotaccent e -15
+KPX zdotaccent eacute -15
+KPX zdotaccent ecaron -15
+KPX zdotaccent ecircumflex -15
+KPX zdotaccent edieresis -15
+KPX zdotaccent edotaccent -15
+KPX zdotaccent egrave -15
+KPX zdotaccent emacron -15
+KPX zdotaccent eogonek -15
+KPX zdotaccent o -15
+KPX zdotaccent oacute -15
+KPX zdotaccent ocircumflex -15
+KPX zdotaccent odieresis -15
+KPX zdotaccent ograve -15
+KPX zdotaccent ohungarumlaut -15
+KPX zdotaccent omacron -15
+KPX zdotaccent oslash -15
+KPX zdotaccent otilde -15
+EndKernPairs
+EndKernData
+EndFontMetrics
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Helvetica.afm b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Helvetica.afm
new file mode 100755
index 00000000..bd32af54
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Helvetica.afm
@@ -0,0 +1,3051 @@
+StartFontMetrics 4.1
+Comment Copyright (c) 1985, 1987, 1989, 1990, 1997 Adobe Systems Incorporated. All Rights Reserved.
+Comment Creation Date: Thu May 1 12:38:23 1997
+Comment UniqueID 43054
+Comment VMusage 37069 48094
+FontName Helvetica
+FullName Helvetica
+FamilyName Helvetica
+Weight Medium
+ItalicAngle 0
+IsFixedPitch false
+CharacterSet ExtendedRoman
+FontBBox -166 -225 1000 931
+UnderlinePosition -100
+UnderlineThickness 50
+Version 002.000
+Notice Copyright (c) 1985, 1987, 1989, 1990, 1997 Adobe Systems Incorporated. All Rights Reserved.Helvetica is a trademark of Linotype-Hell AG and/or its subsidiaries.
+EncodingScheme AdobeStandardEncoding
+CapHeight 718
+XHeight 523
+Ascender 718
+Descender -207
+StdHW 76
+StdVW 88
+StartCharMetrics 315
+C 32 ; WX 278 ; N space ; B 0 0 0 0 ;
+C 33 ; WX 278 ; N exclam ; B 90 0 187 718 ;
+C 34 ; WX 355 ; N quotedbl ; B 70 463 285 718 ;
+C 35 ; WX 556 ; N numbersign ; B 28 0 529 688 ;
+C 36 ; WX 556 ; N dollar ; B 32 -115 520 775 ;
+C 37 ; WX 889 ; N percent ; B 39 -19 850 703 ;
+C 38 ; WX 667 ; N ampersand ; B 44 -15 645 718 ;
+C 39 ; WX 222 ; N quoteright ; B 53 463 157 718 ;
+C 40 ; WX 333 ; N parenleft ; B 68 -207 299 733 ;
+C 41 ; WX 333 ; N parenright ; B 34 -207 265 733 ;
+C 42 ; WX 389 ; N asterisk ; B 39 431 349 718 ;
+C 43 ; WX 584 ; N plus ; B 39 0 545 505 ;
+C 44 ; WX 278 ; N comma ; B 87 -147 191 106 ;
+C 45 ; WX 333 ; N hyphen ; B 44 232 289 322 ;
+C 46 ; WX 278 ; N period ; B 87 0 191 106 ;
+C 47 ; WX 278 ; N slash ; B -17 -19 295 737 ;
+C 48 ; WX 556 ; N zero ; B 37 -19 519 703 ;
+C 49 ; WX 556 ; N one ; B 101 0 359 703 ;
+C 50 ; WX 556 ; N two ; B 26 0 507 703 ;
+C 51 ; WX 556 ; N three ; B 34 -19 522 703 ;
+C 52 ; WX 556 ; N four ; B 25 0 523 703 ;
+C 53 ; WX 556 ; N five ; B 32 -19 514 688 ;
+C 54 ; WX 556 ; N six ; B 38 -19 518 703 ;
+C 55 ; WX 556 ; N seven ; B 37 0 523 688 ;
+C 56 ; WX 556 ; N eight ; B 38 -19 517 703 ;
+C 57 ; WX 556 ; N nine ; B 42 -19 514 703 ;
+C 58 ; WX 278 ; N colon ; B 87 0 191 516 ;
+C 59 ; WX 278 ; N semicolon ; B 87 -147 191 516 ;
+C 60 ; WX 584 ; N less ; B 48 11 536 495 ;
+C 61 ; WX 584 ; N equal ; B 39 115 545 390 ;
+C 62 ; WX 584 ; N greater ; B 48 11 536 495 ;
+C 63 ; WX 556 ; N question ; B 56 0 492 727 ;
+C 64 ; WX 1015 ; N at ; B 147 -19 868 737 ;
+C 65 ; WX 667 ; N A ; B 14 0 654 718 ;
+C 66 ; WX 667 ; N B ; B 74 0 627 718 ;
+C 67 ; WX 722 ; N C ; B 44 -19 681 737 ;
+C 68 ; WX 722 ; N D ; B 81 0 674 718 ;
+C 69 ; WX 667 ; N E ; B 86 0 616 718 ;
+C 70 ; WX 611 ; N F ; B 86 0 583 718 ;
+C 71 ; WX 778 ; N G ; B 48 -19 704 737 ;
+C 72 ; WX 722 ; N H ; B 77 0 646 718 ;
+C 73 ; WX 278 ; N I ; B 91 0 188 718 ;
+C 74 ; WX 500 ; N J ; B 17 -19 428 718 ;
+C 75 ; WX 667 ; N K ; B 76 0 663 718 ;
+C 76 ; WX 556 ; N L ; B 76 0 537 718 ;
+C 77 ; WX 833 ; N M ; B 73 0 761 718 ;
+C 78 ; WX 722 ; N N ; B 76 0 646 718 ;
+C 79 ; WX 778 ; N O ; B 39 -19 739 737 ;
+C 80 ; WX 667 ; N P ; B 86 0 622 718 ;
+C 81 ; WX 778 ; N Q ; B 39 -56 739 737 ;
+C 82 ; WX 722 ; N R ; B 88 0 684 718 ;
+C 83 ; WX 667 ; N S ; B 49 -19 620 737 ;
+C 84 ; WX 611 ; N T ; B 14 0 597 718 ;
+C 85 ; WX 722 ; N U ; B 79 -19 644 718 ;
+C 86 ; WX 667 ; N V ; B 20 0 647 718 ;
+C 87 ; WX 944 ; N W ; B 16 0 928 718 ;
+C 88 ; WX 667 ; N X ; B 19 0 648 718 ;
+C 89 ; WX 667 ; N Y ; B 14 0 653 718 ;
+C 90 ; WX 611 ; N Z ; B 23 0 588 718 ;
+C 91 ; WX 278 ; N bracketleft ; B 63 -196 250 722 ;
+C 92 ; WX 278 ; N backslash ; B -17 -19 295 737 ;
+C 93 ; WX 278 ; N bracketright ; B 28 -196 215 722 ;
+C 94 ; WX 469 ; N asciicircum ; B -14 264 483 688 ;
+C 95 ; WX 556 ; N underscore ; B 0 -125 556 -75 ;
+C 96 ; WX 222 ; N quoteleft ; B 65 470 169 725 ;
+C 97 ; WX 556 ; N a ; B 36 -15 530 538 ;
+C 98 ; WX 556 ; N b ; B 58 -15 517 718 ;
+C 99 ; WX 500 ; N c ; B 30 -15 477 538 ;
+C 100 ; WX 556 ; N d ; B 35 -15 499 718 ;
+C 101 ; WX 556 ; N e ; B 40 -15 516 538 ;
+C 102 ; WX 278 ; N f ; B 14 0 262 728 ; L i fi ; L l fl ;
+C 103 ; WX 556 ; N g ; B 40 -220 499 538 ;
+C 104 ; WX 556 ; N h ; B 65 0 491 718 ;
+C 105 ; WX 222 ; N i ; B 67 0 155 718 ;
+C 106 ; WX 222 ; N j ; B -16 -210 155 718 ;
+C 107 ; WX 500 ; N k ; B 67 0 501 718 ;
+C 108 ; WX 222 ; N l ; B 67 0 155 718 ;
+C 109 ; WX 833 ; N m ; B 65 0 769 538 ;
+C 110 ; WX 556 ; N n ; B 65 0 491 538 ;
+C 111 ; WX 556 ; N o ; B 35 -14 521 538 ;
+C 112 ; WX 556 ; N p ; B 58 -207 517 538 ;
+C 113 ; WX 556 ; N q ; B 35 -207 494 538 ;
+C 114 ; WX 333 ; N r ; B 77 0 332 538 ;
+C 115 ; WX 500 ; N s ; B 32 -15 464 538 ;
+C 116 ; WX 278 ; N t ; B 14 -7 257 669 ;
+C 117 ; WX 556 ; N u ; B 68 -15 489 523 ;
+C 118 ; WX 500 ; N v ; B 8 0 492 523 ;
+C 119 ; WX 722 ; N w ; B 14 0 709 523 ;
+C 120 ; WX 500 ; N x ; B 11 0 490 523 ;
+C 121 ; WX 500 ; N y ; B 11 -214 489 523 ;
+C 122 ; WX 500 ; N z ; B 31 0 469 523 ;
+C 123 ; WX 334 ; N braceleft ; B 42 -196 292 722 ;
+C 124 ; WX 260 ; N bar ; B 94 -225 167 775 ;
+C 125 ; WX 334 ; N braceright ; B 42 -196 292 722 ;
+C 126 ; WX 584 ; N asciitilde ; B 61 180 523 326 ;
+C 161 ; WX 333 ; N exclamdown ; B 118 -195 215 523 ;
+C 162 ; WX 556 ; N cent ; B 51 -115 513 623 ;
+C 163 ; WX 556 ; N sterling ; B 33 -16 539 718 ;
+C 164 ; WX 167 ; N fraction ; B -166 -19 333 703 ;
+C 165 ; WX 556 ; N yen ; B 3 0 553 688 ;
+C 166 ; WX 556 ; N florin ; B -11 -207 501 737 ;
+C 167 ; WX 556 ; N section ; B 43 -191 512 737 ;
+C 168 ; WX 556 ; N currency ; B 28 99 528 603 ;
+C 169 ; WX 191 ; N quotesingle ; B 59 463 132 718 ;
+C 170 ; WX 333 ; N quotedblleft ; B 38 470 307 725 ;
+C 171 ; WX 556 ; N guillemotleft ; B 97 108 459 446 ;
+C 172 ; WX 333 ; N guilsinglleft ; B 88 108 245 446 ;
+C 173 ; WX 333 ; N guilsinglright ; B 88 108 245 446 ;
+C 174 ; WX 500 ; N fi ; B 14 0 434 728 ;
+C 175 ; WX 500 ; N fl ; B 14 0 432 728 ;
+C 177 ; WX 556 ; N endash ; B 0 240 556 313 ;
+C 178 ; WX 556 ; N dagger ; B 43 -159 514 718 ;
+C 179 ; WX 556 ; N daggerdbl ; B 43 -159 514 718 ;
+C 180 ; WX 278 ; N periodcentered ; B 77 190 202 315 ;
+C 182 ; WX 537 ; N paragraph ; B 18 -173 497 718 ;
+C 183 ; WX 350 ; N bullet ; B 18 202 333 517 ;
+C 184 ; WX 222 ; N quotesinglbase ; B 53 -149 157 106 ;
+C 185 ; WX 333 ; N quotedblbase ; B 26 -149 295 106 ;
+C 186 ; WX 333 ; N quotedblright ; B 26 463 295 718 ;
+C 187 ; WX 556 ; N guillemotright ; B 97 108 459 446 ;
+C 188 ; WX 1000 ; N ellipsis ; B 115 0 885 106 ;
+C 189 ; WX 1000 ; N perthousand ; B 7 -19 994 703 ;
+C 191 ; WX 611 ; N questiondown ; B 91 -201 527 525 ;
+C 193 ; WX 333 ; N grave ; B 14 593 211 734 ;
+C 194 ; WX 333 ; N acute ; B 122 593 319 734 ;
+C 195 ; WX 333 ; N circumflex ; B 21 593 312 734 ;
+C 196 ; WX 333 ; N tilde ; B -4 606 337 722 ;
+C 197 ; WX 333 ; N macron ; B 10 627 323 684 ;
+C 198 ; WX 333 ; N breve ; B 13 595 321 731 ;
+C 199 ; WX 333 ; N dotaccent ; B 121 604 212 706 ;
+C 200 ; WX 333 ; N dieresis ; B 40 604 293 706 ;
+C 202 ; WX 333 ; N ring ; B 75 572 259 756 ;
+C 203 ; WX 333 ; N cedilla ; B 45 -225 259 0 ;
+C 205 ; WX 333 ; N hungarumlaut ; B 31 593 409 734 ;
+C 206 ; WX 333 ; N ogonek ; B 73 -225 287 0 ;
+C 207 ; WX 333 ; N caron ; B 21 593 312 734 ;
+C 208 ; WX 1000 ; N emdash ; B 0 240 1000 313 ;
+C 225 ; WX 1000 ; N AE ; B 8 0 951 718 ;
+C 227 ; WX 370 ; N ordfeminine ; B 24 405 346 737 ;
+C 232 ; WX 556 ; N Lslash ; B -20 0 537 718 ;
+C 233 ; WX 778 ; N Oslash ; B 39 -19 740 737 ;
+C 234 ; WX 1000 ; N OE ; B 36 -19 965 737 ;
+C 235 ; WX 365 ; N ordmasculine ; B 25 405 341 737 ;
+C 241 ; WX 889 ; N ae ; B 36 -15 847 538 ;
+C 245 ; WX 278 ; N dotlessi ; B 95 0 183 523 ;
+C 248 ; WX 222 ; N lslash ; B -20 0 242 718 ;
+C 249 ; WX 611 ; N oslash ; B 28 -22 537 545 ;
+C 250 ; WX 944 ; N oe ; B 35 -15 902 538 ;
+C 251 ; WX 611 ; N germandbls ; B 67 -15 571 728 ;
+C -1 ; WX 278 ; N Idieresis ; B 13 0 266 901 ;
+C -1 ; WX 556 ; N eacute ; B 40 -15 516 734 ;
+C -1 ; WX 556 ; N abreve ; B 36 -15 530 731 ;
+C -1 ; WX 556 ; N uhungarumlaut ; B 68 -15 521 734 ;
+C -1 ; WX 556 ; N ecaron ; B 40 -15 516 734 ;
+C -1 ; WX 667 ; N Ydieresis ; B 14 0 653 901 ;
+C -1 ; WX 584 ; N divide ; B 39 -19 545 524 ;
+C -1 ; WX 667 ; N Yacute ; B 14 0 653 929 ;
+C -1 ; WX 667 ; N Acircumflex ; B 14 0 654 929 ;
+C -1 ; WX 556 ; N aacute ; B 36 -15 530 734 ;
+C -1 ; WX 722 ; N Ucircumflex ; B 79 -19 644 929 ;
+C -1 ; WX 500 ; N yacute ; B 11 -214 489 734 ;
+C -1 ; WX 500 ; N scommaaccent ; B 32 -225 464 538 ;
+C -1 ; WX 556 ; N ecircumflex ; B 40 -15 516 734 ;
+C -1 ; WX 722 ; N Uring ; B 79 -19 644 931 ;
+C -1 ; WX 722 ; N Udieresis ; B 79 -19 644 901 ;
+C -1 ; WX 556 ; N aogonek ; B 36 -220 547 538 ;
+C -1 ; WX 722 ; N Uacute ; B 79 -19 644 929 ;
+C -1 ; WX 556 ; N uogonek ; B 68 -225 519 523 ;
+C -1 ; WX 667 ; N Edieresis ; B 86 0 616 901 ;
+C -1 ; WX 722 ; N Dcroat ; B 0 0 674 718 ;
+C -1 ; WX 250 ; N commaaccent ; B 87 -225 181 -40 ;
+C -1 ; WX 737 ; N copyright ; B -14 -19 752 737 ;
+C -1 ; WX 667 ; N Emacron ; B 86 0 616 879 ;
+C -1 ; WX 500 ; N ccaron ; B 30 -15 477 734 ;
+C -1 ; WX 556 ; N aring ; B 36 -15 530 756 ;
+C -1 ; WX 722 ; N Ncommaaccent ; B 76 -225 646 718 ;
+C -1 ; WX 222 ; N lacute ; B 67 0 264 929 ;
+C -1 ; WX 556 ; N agrave ; B 36 -15 530 734 ;
+C -1 ; WX 611 ; N Tcommaaccent ; B 14 -225 597 718 ;
+C -1 ; WX 722 ; N Cacute ; B 44 -19 681 929 ;
+C -1 ; WX 556 ; N atilde ; B 36 -15 530 722 ;
+C -1 ; WX 667 ; N Edotaccent ; B 86 0 616 901 ;
+C -1 ; WX 500 ; N scaron ; B 32 -15 464 734 ;
+C -1 ; WX 500 ; N scedilla ; B 32 -225 464 538 ;
+C -1 ; WX 278 ; N iacute ; B 95 0 292 734 ;
+C -1 ; WX 471 ; N lozenge ; B 10 0 462 728 ;
+C -1 ; WX 722 ; N Rcaron ; B 88 0 684 929 ;
+C -1 ; WX 778 ; N Gcommaaccent ; B 48 -225 704 737 ;
+C -1 ; WX 556 ; N ucircumflex ; B 68 -15 489 734 ;
+C -1 ; WX 556 ; N acircumflex ; B 36 -15 530 734 ;
+C -1 ; WX 667 ; N Amacron ; B 14 0 654 879 ;
+C -1 ; WX 333 ; N rcaron ; B 61 0 352 734 ;
+C -1 ; WX 500 ; N ccedilla ; B 30 -225 477 538 ;
+C -1 ; WX 611 ; N Zdotaccent ; B 23 0 588 901 ;
+C -1 ; WX 667 ; N Thorn ; B 86 0 622 718 ;
+C -1 ; WX 778 ; N Omacron ; B 39 -19 739 879 ;
+C -1 ; WX 722 ; N Racute ; B 88 0 684 929 ;
+C -1 ; WX 667 ; N Sacute ; B 49 -19 620 929 ;
+C -1 ; WX 643 ; N dcaron ; B 35 -15 655 718 ;
+C -1 ; WX 722 ; N Umacron ; B 79 -19 644 879 ;
+C -1 ; WX 556 ; N uring ; B 68 -15 489 756 ;
+C -1 ; WX 333 ; N threesuperior ; B 5 270 325 703 ;
+C -1 ; WX 778 ; N Ograve ; B 39 -19 739 929 ;
+C -1 ; WX 667 ; N Agrave ; B 14 0 654 929 ;
+C -1 ; WX 667 ; N Abreve ; B 14 0 654 926 ;
+C -1 ; WX 584 ; N multiply ; B 39 0 545 506 ;
+C -1 ; WX 556 ; N uacute ; B 68 -15 489 734 ;
+C -1 ; WX 611 ; N Tcaron ; B 14 0 597 929 ;
+C -1 ; WX 476 ; N partialdiff ; B 13 -38 463 714 ;
+C -1 ; WX 500 ; N ydieresis ; B 11 -214 489 706 ;
+C -1 ; WX 722 ; N Nacute ; B 76 0 646 929 ;
+C -1 ; WX 278 ; N icircumflex ; B -6 0 285 734 ;
+C -1 ; WX 667 ; N Ecircumflex ; B 86 0 616 929 ;
+C -1 ; WX 556 ; N adieresis ; B 36 -15 530 706 ;
+C -1 ; WX 556 ; N edieresis ; B 40 -15 516 706 ;
+C -1 ; WX 500 ; N cacute ; B 30 -15 477 734 ;
+C -1 ; WX 556 ; N nacute ; B 65 0 491 734 ;
+C -1 ; WX 556 ; N umacron ; B 68 -15 489 684 ;
+C -1 ; WX 722 ; N Ncaron ; B 76 0 646 929 ;
+C -1 ; WX 278 ; N Iacute ; B 91 0 292 929 ;
+C -1 ; WX 584 ; N plusminus ; B 39 0 545 506 ;
+C -1 ; WX 260 ; N brokenbar ; B 94 -150 167 700 ;
+C -1 ; WX 737 ; N registered ; B -14 -19 752 737 ;
+C -1 ; WX 778 ; N Gbreve ; B 48 -19 704 926 ;
+C -1 ; WX 278 ; N Idotaccent ; B 91 0 188 901 ;
+C -1 ; WX 600 ; N summation ; B 15 -10 586 706 ;
+C -1 ; WX 667 ; N Egrave ; B 86 0 616 929 ;
+C -1 ; WX 333 ; N racute ; B 77 0 332 734 ;
+C -1 ; WX 556 ; N omacron ; B 35 -14 521 684 ;
+C -1 ; WX 611 ; N Zacute ; B 23 0 588 929 ;
+C -1 ; WX 611 ; N Zcaron ; B 23 0 588 929 ;
+C -1 ; WX 549 ; N greaterequal ; B 26 0 523 674 ;
+C -1 ; WX 722 ; N Eth ; B 0 0 674 718 ;
+C -1 ; WX 722 ; N Ccedilla ; B 44 -225 681 737 ;
+C -1 ; WX 222 ; N lcommaaccent ; B 67 -225 167 718 ;
+C -1 ; WX 317 ; N tcaron ; B 14 -7 329 808 ;
+C -1 ; WX 556 ; N eogonek ; B 40 -225 516 538 ;
+C -1 ; WX 722 ; N Uogonek ; B 79 -225 644 718 ;
+C -1 ; WX 667 ; N Aacute ; B 14 0 654 929 ;
+C -1 ; WX 667 ; N Adieresis ; B 14 0 654 901 ;
+C -1 ; WX 556 ; N egrave ; B 40 -15 516 734 ;
+C -1 ; WX 500 ; N zacute ; B 31 0 469 734 ;
+C -1 ; WX 222 ; N iogonek ; B -31 -225 183 718 ;
+C -1 ; WX 778 ; N Oacute ; B 39 -19 739 929 ;
+C -1 ; WX 556 ; N oacute ; B 35 -14 521 734 ;
+C -1 ; WX 556 ; N amacron ; B 36 -15 530 684 ;
+C -1 ; WX 500 ; N sacute ; B 32 -15 464 734 ;
+C -1 ; WX 278 ; N idieresis ; B 13 0 266 706 ;
+C -1 ; WX 778 ; N Ocircumflex ; B 39 -19 739 929 ;
+C -1 ; WX 722 ; N Ugrave ; B 79 -19 644 929 ;
+C -1 ; WX 612 ; N Delta ; B 6 0 608 688 ;
+C -1 ; WX 556 ; N thorn ; B 58 -207 517 718 ;
+C -1 ; WX 333 ; N twosuperior ; B 4 281 323 703 ;
+C -1 ; WX 778 ; N Odieresis ; B 39 -19 739 901 ;
+C -1 ; WX 556 ; N mu ; B 68 -207 489 523 ;
+C -1 ; WX 278 ; N igrave ; B -13 0 184 734 ;
+C -1 ; WX 556 ; N ohungarumlaut ; B 35 -14 521 734 ;
+C -1 ; WX 667 ; N Eogonek ; B 86 -220 633 718 ;
+C -1 ; WX 556 ; N dcroat ; B 35 -15 550 718 ;
+C -1 ; WX 834 ; N threequarters ; B 45 -19 810 703 ;
+C -1 ; WX 667 ; N Scedilla ; B 49 -225 620 737 ;
+C -1 ; WX 299 ; N lcaron ; B 67 0 311 718 ;
+C -1 ; WX 667 ; N Kcommaaccent ; B 76 -225 663 718 ;
+C -1 ; WX 556 ; N Lacute ; B 76 0 537 929 ;
+C -1 ; WX 1000 ; N trademark ; B 46 306 903 718 ;
+C -1 ; WX 556 ; N edotaccent ; B 40 -15 516 706 ;
+C -1 ; WX 278 ; N Igrave ; B -13 0 188 929 ;
+C -1 ; WX 278 ; N Imacron ; B -17 0 296 879 ;
+C -1 ; WX 556 ; N Lcaron ; B 76 0 537 718 ;
+C -1 ; WX 834 ; N onehalf ; B 43 -19 773 703 ;
+C -1 ; WX 549 ; N lessequal ; B 26 0 523 674 ;
+C -1 ; WX 556 ; N ocircumflex ; B 35 -14 521 734 ;
+C -1 ; WX 556 ; N ntilde ; B 65 0 491 722 ;
+C -1 ; WX 722 ; N Uhungarumlaut ; B 79 -19 644 929 ;
+C -1 ; WX 667 ; N Eacute ; B 86 0 616 929 ;
+C -1 ; WX 556 ; N emacron ; B 40 -15 516 684 ;
+C -1 ; WX 556 ; N gbreve ; B 40 -220 499 731 ;
+C -1 ; WX 834 ; N onequarter ; B 73 -19 756 703 ;
+C -1 ; WX 667 ; N Scaron ; B 49 -19 620 929 ;
+C -1 ; WX 667 ; N Scommaaccent ; B 49 -225 620 737 ;
+C -1 ; WX 778 ; N Ohungarumlaut ; B 39 -19 739 929 ;
+C -1 ; WX 400 ; N degree ; B 54 411 346 703 ;
+C -1 ; WX 556 ; N ograve ; B 35 -14 521 734 ;
+C -1 ; WX 722 ; N Ccaron ; B 44 -19 681 929 ;
+C -1 ; WX 556 ; N ugrave ; B 68 -15 489 734 ;
+C -1 ; WX 453 ; N radical ; B -4 -80 458 762 ;
+C -1 ; WX 722 ; N Dcaron ; B 81 0 674 929 ;
+C -1 ; WX 333 ; N rcommaaccent ; B 77 -225 332 538 ;
+C -1 ; WX 722 ; N Ntilde ; B 76 0 646 917 ;
+C -1 ; WX 556 ; N otilde ; B 35 -14 521 722 ;
+C -1 ; WX 722 ; N Rcommaaccent ; B 88 -225 684 718 ;
+C -1 ; WX 556 ; N Lcommaaccent ; B 76 -225 537 718 ;
+C -1 ; WX 667 ; N Atilde ; B 14 0 654 917 ;
+C -1 ; WX 667 ; N Aogonek ; B 14 -225 654 718 ;
+C -1 ; WX 667 ; N Aring ; B 14 0 654 931 ;
+C -1 ; WX 778 ; N Otilde ; B 39 -19 739 917 ;
+C -1 ; WX 500 ; N zdotaccent ; B 31 0 469 706 ;
+C -1 ; WX 667 ; N Ecaron ; B 86 0 616 929 ;
+C -1 ; WX 278 ; N Iogonek ; B -3 -225 211 718 ;
+C -1 ; WX 500 ; N kcommaaccent ; B 67 -225 501 718 ;
+C -1 ; WX 584 ; N minus ; B 39 216 545 289 ;
+C -1 ; WX 278 ; N Icircumflex ; B -6 0 285 929 ;
+C -1 ; WX 556 ; N ncaron ; B 65 0 491 734 ;
+C -1 ; WX 278 ; N tcommaaccent ; B 14 -225 257 669 ;
+C -1 ; WX 584 ; N logicalnot ; B 39 108 545 390 ;
+C -1 ; WX 556 ; N odieresis ; B 35 -14 521 706 ;
+C -1 ; WX 556 ; N udieresis ; B 68 -15 489 706 ;
+C -1 ; WX 549 ; N notequal ; B 12 -35 537 551 ;
+C -1 ; WX 556 ; N gcommaaccent ; B 40 -220 499 822 ;
+C -1 ; WX 556 ; N eth ; B 35 -15 522 737 ;
+C -1 ; WX 500 ; N zcaron ; B 31 0 469 734 ;
+C -1 ; WX 556 ; N ncommaaccent ; B 65 -225 491 538 ;
+C -1 ; WX 333 ; N onesuperior ; B 43 281 222 703 ;
+C -1 ; WX 278 ; N imacron ; B 5 0 272 684 ;
+C -1 ; WX 556 ; N Euro ; B 0 0 0 0 ;
+EndCharMetrics
+StartKernData
+StartKernPairs 2705
+KPX A C -30
+KPX A Cacute -30
+KPX A Ccaron -30
+KPX A Ccedilla -30
+KPX A G -30
+KPX A Gbreve -30
+KPX A Gcommaaccent -30
+KPX A O -30
+KPX A Oacute -30
+KPX A Ocircumflex -30
+KPX A Odieresis -30
+KPX A Ograve -30
+KPX A Ohungarumlaut -30
+KPX A Omacron -30
+KPX A Oslash -30
+KPX A Otilde -30
+KPX A Q -30
+KPX A T -120
+KPX A Tcaron -120
+KPX A Tcommaaccent -120
+KPX A U -50
+KPX A Uacute -50
+KPX A Ucircumflex -50
+KPX A Udieresis -50
+KPX A Ugrave -50
+KPX A Uhungarumlaut -50
+KPX A Umacron -50
+KPX A Uogonek -50
+KPX A Uring -50
+KPX A V -70
+KPX A W -50
+KPX A Y -100
+KPX A Yacute -100
+KPX A Ydieresis -100
+KPX A u -30
+KPX A uacute -30
+KPX A ucircumflex -30
+KPX A udieresis -30
+KPX A ugrave -30
+KPX A uhungarumlaut -30
+KPX A umacron -30
+KPX A uogonek -30
+KPX A uring -30
+KPX A v -40
+KPX A w -40
+KPX A y -40
+KPX A yacute -40
+KPX A ydieresis -40
+KPX Aacute C -30
+KPX Aacute Cacute -30
+KPX Aacute Ccaron -30
+KPX Aacute Ccedilla -30
+KPX Aacute G -30
+KPX Aacute Gbreve -30
+KPX Aacute Gcommaaccent -30
+KPX Aacute O -30
+KPX Aacute Oacute -30
+KPX Aacute Ocircumflex -30
+KPX Aacute Odieresis -30
+KPX Aacute Ograve -30
+KPX Aacute Ohungarumlaut -30
+KPX Aacute Omacron -30
+KPX Aacute Oslash -30
+KPX Aacute Otilde -30
+KPX Aacute Q -30
+KPX Aacute T -120
+KPX Aacute Tcaron -120
+KPX Aacute Tcommaaccent -120
+KPX Aacute U -50
+KPX Aacute Uacute -50
+KPX Aacute Ucircumflex -50
+KPX Aacute Udieresis -50
+KPX Aacute Ugrave -50
+KPX Aacute Uhungarumlaut -50
+KPX Aacute Umacron -50
+KPX Aacute Uogonek -50
+KPX Aacute Uring -50
+KPX Aacute V -70
+KPX Aacute W -50
+KPX Aacute Y -100
+KPX Aacute Yacute -100
+KPX Aacute Ydieresis -100
+KPX Aacute u -30
+KPX Aacute uacute -30
+KPX Aacute ucircumflex -30
+KPX Aacute udieresis -30
+KPX Aacute ugrave -30
+KPX Aacute uhungarumlaut -30
+KPX Aacute umacron -30
+KPX Aacute uogonek -30
+KPX Aacute uring -30
+KPX Aacute v -40
+KPX Aacute w -40
+KPX Aacute y -40
+KPX Aacute yacute -40
+KPX Aacute ydieresis -40
+KPX Abreve C -30
+KPX Abreve Cacute -30
+KPX Abreve Ccaron -30
+KPX Abreve Ccedilla -30
+KPX Abreve G -30
+KPX Abreve Gbreve -30
+KPX Abreve Gcommaaccent -30
+KPX Abreve O -30
+KPX Abreve Oacute -30
+KPX Abreve Ocircumflex -30
+KPX Abreve Odieresis -30
+KPX Abreve Ograve -30
+KPX Abreve Ohungarumlaut -30
+KPX Abreve Omacron -30
+KPX Abreve Oslash -30
+KPX Abreve Otilde -30
+KPX Abreve Q -30
+KPX Abreve T -120
+KPX Abreve Tcaron -120
+KPX Abreve Tcommaaccent -120
+KPX Abreve U -50
+KPX Abreve Uacute -50
+KPX Abreve Ucircumflex -50
+KPX Abreve Udieresis -50
+KPX Abreve Ugrave -50
+KPX Abreve Uhungarumlaut -50
+KPX Abreve Umacron -50
+KPX Abreve Uogonek -50
+KPX Abreve Uring -50
+KPX Abreve V -70
+KPX Abreve W -50
+KPX Abreve Y -100
+KPX Abreve Yacute -100
+KPX Abreve Ydieresis -100
+KPX Abreve u -30
+KPX Abreve uacute -30
+KPX Abreve ucircumflex -30
+KPX Abreve udieresis -30
+KPX Abreve ugrave -30
+KPX Abreve uhungarumlaut -30
+KPX Abreve umacron -30
+KPX Abreve uogonek -30
+KPX Abreve uring -30
+KPX Abreve v -40
+KPX Abreve w -40
+KPX Abreve y -40
+KPX Abreve yacute -40
+KPX Abreve ydieresis -40
+KPX Acircumflex C -30
+KPX Acircumflex Cacute -30
+KPX Acircumflex Ccaron -30
+KPX Acircumflex Ccedilla -30
+KPX Acircumflex G -30
+KPX Acircumflex Gbreve -30
+KPX Acircumflex Gcommaaccent -30
+KPX Acircumflex O -30
+KPX Acircumflex Oacute -30
+KPX Acircumflex Ocircumflex -30
+KPX Acircumflex Odieresis -30
+KPX Acircumflex Ograve -30
+KPX Acircumflex Ohungarumlaut -30
+KPX Acircumflex Omacron -30
+KPX Acircumflex Oslash -30
+KPX Acircumflex Otilde -30
+KPX Acircumflex Q -30
+KPX Acircumflex T -120
+KPX Acircumflex Tcaron -120
+KPX Acircumflex Tcommaaccent -120
+KPX Acircumflex U -50
+KPX Acircumflex Uacute -50
+KPX Acircumflex Ucircumflex -50
+KPX Acircumflex Udieresis -50
+KPX Acircumflex Ugrave -50
+KPX Acircumflex Uhungarumlaut -50
+KPX Acircumflex Umacron -50
+KPX Acircumflex Uogonek -50
+KPX Acircumflex Uring -50
+KPX Acircumflex V -70
+KPX Acircumflex W -50
+KPX Acircumflex Y -100
+KPX Acircumflex Yacute -100
+KPX Acircumflex Ydieresis -100
+KPX Acircumflex u -30
+KPX Acircumflex uacute -30
+KPX Acircumflex ucircumflex -30
+KPX Acircumflex udieresis -30
+KPX Acircumflex ugrave -30
+KPX Acircumflex uhungarumlaut -30
+KPX Acircumflex umacron -30
+KPX Acircumflex uogonek -30
+KPX Acircumflex uring -30
+KPX Acircumflex v -40
+KPX Acircumflex w -40
+KPX Acircumflex y -40
+KPX Acircumflex yacute -40
+KPX Acircumflex ydieresis -40
+KPX Adieresis C -30
+KPX Adieresis Cacute -30
+KPX Adieresis Ccaron -30
+KPX Adieresis Ccedilla -30
+KPX Adieresis G -30
+KPX Adieresis Gbreve -30
+KPX Adieresis Gcommaaccent -30
+KPX Adieresis O -30
+KPX Adieresis Oacute -30
+KPX Adieresis Ocircumflex -30
+KPX Adieresis Odieresis -30
+KPX Adieresis Ograve -30
+KPX Adieresis Ohungarumlaut -30
+KPX Adieresis Omacron -30
+KPX Adieresis Oslash -30
+KPX Adieresis Otilde -30
+KPX Adieresis Q -30
+KPX Adieresis T -120
+KPX Adieresis Tcaron -120
+KPX Adieresis Tcommaaccent -120
+KPX Adieresis U -50
+KPX Adieresis Uacute -50
+KPX Adieresis Ucircumflex -50
+KPX Adieresis Udieresis -50
+KPX Adieresis Ugrave -50
+KPX Adieresis Uhungarumlaut -50
+KPX Adieresis Umacron -50
+KPX Adieresis Uogonek -50
+KPX Adieresis Uring -50
+KPX Adieresis V -70
+KPX Adieresis W -50
+KPX Adieresis Y -100
+KPX Adieresis Yacute -100
+KPX Adieresis Ydieresis -100
+KPX Adieresis u -30
+KPX Adieresis uacute -30
+KPX Adieresis ucircumflex -30
+KPX Adieresis udieresis -30
+KPX Adieresis ugrave -30
+KPX Adieresis uhungarumlaut -30
+KPX Adieresis umacron -30
+KPX Adieresis uogonek -30
+KPX Adieresis uring -30
+KPX Adieresis v -40
+KPX Adieresis w -40
+KPX Adieresis y -40
+KPX Adieresis yacute -40
+KPX Adieresis ydieresis -40
+KPX Agrave C -30
+KPX Agrave Cacute -30
+KPX Agrave Ccaron -30
+KPX Agrave Ccedilla -30
+KPX Agrave G -30
+KPX Agrave Gbreve -30
+KPX Agrave Gcommaaccent -30
+KPX Agrave O -30
+KPX Agrave Oacute -30
+KPX Agrave Ocircumflex -30
+KPX Agrave Odieresis -30
+KPX Agrave Ograve -30
+KPX Agrave Ohungarumlaut -30
+KPX Agrave Omacron -30
+KPX Agrave Oslash -30
+KPX Agrave Otilde -30
+KPX Agrave Q -30
+KPX Agrave T -120
+KPX Agrave Tcaron -120
+KPX Agrave Tcommaaccent -120
+KPX Agrave U -50
+KPX Agrave Uacute -50
+KPX Agrave Ucircumflex -50
+KPX Agrave Udieresis -50
+KPX Agrave Ugrave -50
+KPX Agrave Uhungarumlaut -50
+KPX Agrave Umacron -50
+KPX Agrave Uogonek -50
+KPX Agrave Uring -50
+KPX Agrave V -70
+KPX Agrave W -50
+KPX Agrave Y -100
+KPX Agrave Yacute -100
+KPX Agrave Ydieresis -100
+KPX Agrave u -30
+KPX Agrave uacute -30
+KPX Agrave ucircumflex -30
+KPX Agrave udieresis -30
+KPX Agrave ugrave -30
+KPX Agrave uhungarumlaut -30
+KPX Agrave umacron -30
+KPX Agrave uogonek -30
+KPX Agrave uring -30
+KPX Agrave v -40
+KPX Agrave w -40
+KPX Agrave y -40
+KPX Agrave yacute -40
+KPX Agrave ydieresis -40
+KPX Amacron C -30
+KPX Amacron Cacute -30
+KPX Amacron Ccaron -30
+KPX Amacron Ccedilla -30
+KPX Amacron G -30
+KPX Amacron Gbreve -30
+KPX Amacron Gcommaaccent -30
+KPX Amacron O -30
+KPX Amacron Oacute -30
+KPX Amacron Ocircumflex -30
+KPX Amacron Odieresis -30
+KPX Amacron Ograve -30
+KPX Amacron Ohungarumlaut -30
+KPX Amacron Omacron -30
+KPX Amacron Oslash -30
+KPX Amacron Otilde -30
+KPX Amacron Q -30
+KPX Amacron T -120
+KPX Amacron Tcaron -120
+KPX Amacron Tcommaaccent -120
+KPX Amacron U -50
+KPX Amacron Uacute -50
+KPX Amacron Ucircumflex -50
+KPX Amacron Udieresis -50
+KPX Amacron Ugrave -50
+KPX Amacron Uhungarumlaut -50
+KPX Amacron Umacron -50
+KPX Amacron Uogonek -50
+KPX Amacron Uring -50
+KPX Amacron V -70
+KPX Amacron W -50
+KPX Amacron Y -100
+KPX Amacron Yacute -100
+KPX Amacron Ydieresis -100
+KPX Amacron u -30
+KPX Amacron uacute -30
+KPX Amacron ucircumflex -30
+KPX Amacron udieresis -30
+KPX Amacron ugrave -30
+KPX Amacron uhungarumlaut -30
+KPX Amacron umacron -30
+KPX Amacron uogonek -30
+KPX Amacron uring -30
+KPX Amacron v -40
+KPX Amacron w -40
+KPX Amacron y -40
+KPX Amacron yacute -40
+KPX Amacron ydieresis -40
+KPX Aogonek C -30
+KPX Aogonek Cacute -30
+KPX Aogonek Ccaron -30
+KPX Aogonek Ccedilla -30
+KPX Aogonek G -30
+KPX Aogonek Gbreve -30
+KPX Aogonek Gcommaaccent -30
+KPX Aogonek O -30
+KPX Aogonek Oacute -30
+KPX Aogonek Ocircumflex -30
+KPX Aogonek Odieresis -30
+KPX Aogonek Ograve -30
+KPX Aogonek Ohungarumlaut -30
+KPX Aogonek Omacron -30
+KPX Aogonek Oslash -30
+KPX Aogonek Otilde -30
+KPX Aogonek Q -30
+KPX Aogonek T -120
+KPX Aogonek Tcaron -120
+KPX Aogonek Tcommaaccent -120
+KPX Aogonek U -50
+KPX Aogonek Uacute -50
+KPX Aogonek Ucircumflex -50
+KPX Aogonek Udieresis -50
+KPX Aogonek Ugrave -50
+KPX Aogonek Uhungarumlaut -50
+KPX Aogonek Umacron -50
+KPX Aogonek Uogonek -50
+KPX Aogonek Uring -50
+KPX Aogonek V -70
+KPX Aogonek W -50
+KPX Aogonek Y -100
+KPX Aogonek Yacute -100
+KPX Aogonek Ydieresis -100
+KPX Aogonek u -30
+KPX Aogonek uacute -30
+KPX Aogonek ucircumflex -30
+KPX Aogonek udieresis -30
+KPX Aogonek ugrave -30
+KPX Aogonek uhungarumlaut -30
+KPX Aogonek umacron -30
+KPX Aogonek uogonek -30
+KPX Aogonek uring -30
+KPX Aogonek v -40
+KPX Aogonek w -40
+KPX Aogonek y -40
+KPX Aogonek yacute -40
+KPX Aogonek ydieresis -40
+KPX Aring C -30
+KPX Aring Cacute -30
+KPX Aring Ccaron -30
+KPX Aring Ccedilla -30
+KPX Aring G -30
+KPX Aring Gbreve -30
+KPX Aring Gcommaaccent -30
+KPX Aring O -30
+KPX Aring Oacute -30
+KPX Aring Ocircumflex -30
+KPX Aring Odieresis -30
+KPX Aring Ograve -30
+KPX Aring Ohungarumlaut -30
+KPX Aring Omacron -30
+KPX Aring Oslash -30
+KPX Aring Otilde -30
+KPX Aring Q -30
+KPX Aring T -120
+KPX Aring Tcaron -120
+KPX Aring Tcommaaccent -120
+KPX Aring U -50
+KPX Aring Uacute -50
+KPX Aring Ucircumflex -50
+KPX Aring Udieresis -50
+KPX Aring Ugrave -50
+KPX Aring Uhungarumlaut -50
+KPX Aring Umacron -50
+KPX Aring Uogonek -50
+KPX Aring Uring -50
+KPX Aring V -70
+KPX Aring W -50
+KPX Aring Y -100
+KPX Aring Yacute -100
+KPX Aring Ydieresis -100
+KPX Aring u -30
+KPX Aring uacute -30
+KPX Aring ucircumflex -30
+KPX Aring udieresis -30
+KPX Aring ugrave -30
+KPX Aring uhungarumlaut -30
+KPX Aring umacron -30
+KPX Aring uogonek -30
+KPX Aring uring -30
+KPX Aring v -40
+KPX Aring w -40
+KPX Aring y -40
+KPX Aring yacute -40
+KPX Aring ydieresis -40
+KPX Atilde C -30
+KPX Atilde Cacute -30
+KPX Atilde Ccaron -30
+KPX Atilde Ccedilla -30
+KPX Atilde G -30
+KPX Atilde Gbreve -30
+KPX Atilde Gcommaaccent -30
+KPX Atilde O -30
+KPX Atilde Oacute -30
+KPX Atilde Ocircumflex -30
+KPX Atilde Odieresis -30
+KPX Atilde Ograve -30
+KPX Atilde Ohungarumlaut -30
+KPX Atilde Omacron -30
+KPX Atilde Oslash -30
+KPX Atilde Otilde -30
+KPX Atilde Q -30
+KPX Atilde T -120
+KPX Atilde Tcaron -120
+KPX Atilde Tcommaaccent -120
+KPX Atilde U -50
+KPX Atilde Uacute -50
+KPX Atilde Ucircumflex -50
+KPX Atilde Udieresis -50
+KPX Atilde Ugrave -50
+KPX Atilde Uhungarumlaut -50
+KPX Atilde Umacron -50
+KPX Atilde Uogonek -50
+KPX Atilde Uring -50
+KPX Atilde V -70
+KPX Atilde W -50
+KPX Atilde Y -100
+KPX Atilde Yacute -100
+KPX Atilde Ydieresis -100
+KPX Atilde u -30
+KPX Atilde uacute -30
+KPX Atilde ucircumflex -30
+KPX Atilde udieresis -30
+KPX Atilde ugrave -30
+KPX Atilde uhungarumlaut -30
+KPX Atilde umacron -30
+KPX Atilde uogonek -30
+KPX Atilde uring -30
+KPX Atilde v -40
+KPX Atilde w -40
+KPX Atilde y -40
+KPX Atilde yacute -40
+KPX Atilde ydieresis -40
+KPX B U -10
+KPX B Uacute -10
+KPX B Ucircumflex -10
+KPX B Udieresis -10
+KPX B Ugrave -10
+KPX B Uhungarumlaut -10
+KPX B Umacron -10
+KPX B Uogonek -10
+KPX B Uring -10
+KPX B comma -20
+KPX B period -20
+KPX C comma -30
+KPX C period -30
+KPX Cacute comma -30
+KPX Cacute period -30
+KPX Ccaron comma -30
+KPX Ccaron period -30
+KPX Ccedilla comma -30
+KPX Ccedilla period -30
+KPX D A -40
+KPX D Aacute -40
+KPX D Abreve -40
+KPX D Acircumflex -40
+KPX D Adieresis -40
+KPX D Agrave -40
+KPX D Amacron -40
+KPX D Aogonek -40
+KPX D Aring -40
+KPX D Atilde -40
+KPX D V -70
+KPX D W -40
+KPX D Y -90
+KPX D Yacute -90
+KPX D Ydieresis -90
+KPX D comma -70
+KPX D period -70
+KPX Dcaron A -40
+KPX Dcaron Aacute -40
+KPX Dcaron Abreve -40
+KPX Dcaron Acircumflex -40
+KPX Dcaron Adieresis -40
+KPX Dcaron Agrave -40
+KPX Dcaron Amacron -40
+KPX Dcaron Aogonek -40
+KPX Dcaron Aring -40
+KPX Dcaron Atilde -40
+KPX Dcaron V -70
+KPX Dcaron W -40
+KPX Dcaron Y -90
+KPX Dcaron Yacute -90
+KPX Dcaron Ydieresis -90
+KPX Dcaron comma -70
+KPX Dcaron period -70
+KPX Dcroat A -40
+KPX Dcroat Aacute -40
+KPX Dcroat Abreve -40
+KPX Dcroat Acircumflex -40
+KPX Dcroat Adieresis -40
+KPX Dcroat Agrave -40
+KPX Dcroat Amacron -40
+KPX Dcroat Aogonek -40
+KPX Dcroat Aring -40
+KPX Dcroat Atilde -40
+KPX Dcroat V -70
+KPX Dcroat W -40
+KPX Dcroat Y -90
+KPX Dcroat Yacute -90
+KPX Dcroat Ydieresis -90
+KPX Dcroat comma -70
+KPX Dcroat period -70
+KPX F A -80
+KPX F Aacute -80
+KPX F Abreve -80
+KPX F Acircumflex -80
+KPX F Adieresis -80
+KPX F Agrave -80
+KPX F Amacron -80
+KPX F Aogonek -80
+KPX F Aring -80
+KPX F Atilde -80
+KPX F a -50
+KPX F aacute -50
+KPX F abreve -50
+KPX F acircumflex -50
+KPX F adieresis -50
+KPX F agrave -50
+KPX F amacron -50
+KPX F aogonek -50
+KPX F aring -50
+KPX F atilde -50
+KPX F comma -150
+KPX F e -30
+KPX F eacute -30
+KPX F ecaron -30
+KPX F ecircumflex -30
+KPX F edieresis -30
+KPX F edotaccent -30
+KPX F egrave -30
+KPX F emacron -30
+KPX F eogonek -30
+KPX F o -30
+KPX F oacute -30
+KPX F ocircumflex -30
+KPX F odieresis -30
+KPX F ograve -30
+KPX F ohungarumlaut -30
+KPX F omacron -30
+KPX F oslash -30
+KPX F otilde -30
+KPX F period -150
+KPX F r -45
+KPX F racute -45
+KPX F rcaron -45
+KPX F rcommaaccent -45
+KPX J A -20
+KPX J Aacute -20
+KPX J Abreve -20
+KPX J Acircumflex -20
+KPX J Adieresis -20
+KPX J Agrave -20
+KPX J Amacron -20
+KPX J Aogonek -20
+KPX J Aring -20
+KPX J Atilde -20
+KPX J a -20
+KPX J aacute -20
+KPX J abreve -20
+KPX J acircumflex -20
+KPX J adieresis -20
+KPX J agrave -20
+KPX J amacron -20
+KPX J aogonek -20
+KPX J aring -20
+KPX J atilde -20
+KPX J comma -30
+KPX J period -30
+KPX J u -20
+KPX J uacute -20
+KPX J ucircumflex -20
+KPX J udieresis -20
+KPX J ugrave -20
+KPX J uhungarumlaut -20
+KPX J umacron -20
+KPX J uogonek -20
+KPX J uring -20
+KPX K O -50
+KPX K Oacute -50
+KPX K Ocircumflex -50
+KPX K Odieresis -50
+KPX K Ograve -50
+KPX K Ohungarumlaut -50
+KPX K Omacron -50
+KPX K Oslash -50
+KPX K Otilde -50
+KPX K e -40
+KPX K eacute -40
+KPX K ecaron -40
+KPX K ecircumflex -40
+KPX K edieresis -40
+KPX K edotaccent -40
+KPX K egrave -40
+KPX K emacron -40
+KPX K eogonek -40
+KPX K o -40
+KPX K oacute -40
+KPX K ocircumflex -40
+KPX K odieresis -40
+KPX K ograve -40
+KPX K ohungarumlaut -40
+KPX K omacron -40
+KPX K oslash -40
+KPX K otilde -40
+KPX K u -30
+KPX K uacute -30
+KPX K ucircumflex -30
+KPX K udieresis -30
+KPX K ugrave -30
+KPX K uhungarumlaut -30
+KPX K umacron -30
+KPX K uogonek -30
+KPX K uring -30
+KPX K y -50
+KPX K yacute -50
+KPX K ydieresis -50
+KPX Kcommaaccent O -50
+KPX Kcommaaccent Oacute -50
+KPX Kcommaaccent Ocircumflex -50
+KPX Kcommaaccent Odieresis -50
+KPX Kcommaaccent Ograve -50
+KPX Kcommaaccent Ohungarumlaut -50
+KPX Kcommaaccent Omacron -50
+KPX Kcommaaccent Oslash -50
+KPX Kcommaaccent Otilde -50
+KPX Kcommaaccent e -40
+KPX Kcommaaccent eacute -40
+KPX Kcommaaccent ecaron -40
+KPX Kcommaaccent ecircumflex -40
+KPX Kcommaaccent edieresis -40
+KPX Kcommaaccent edotaccent -40
+KPX Kcommaaccent egrave -40
+KPX Kcommaaccent emacron -40
+KPX Kcommaaccent eogonek -40
+KPX Kcommaaccent o -40
+KPX Kcommaaccent oacute -40
+KPX Kcommaaccent ocircumflex -40
+KPX Kcommaaccent odieresis -40
+KPX Kcommaaccent ograve -40
+KPX Kcommaaccent ohungarumlaut -40
+KPX Kcommaaccent omacron -40
+KPX Kcommaaccent oslash -40
+KPX Kcommaaccent otilde -40
+KPX Kcommaaccent u -30
+KPX Kcommaaccent uacute -30
+KPX Kcommaaccent ucircumflex -30
+KPX Kcommaaccent udieresis -30
+KPX Kcommaaccent ugrave -30
+KPX Kcommaaccent uhungarumlaut -30
+KPX Kcommaaccent umacron -30
+KPX Kcommaaccent uogonek -30
+KPX Kcommaaccent uring -30
+KPX Kcommaaccent y -50
+KPX Kcommaaccent yacute -50
+KPX Kcommaaccent ydieresis -50
+KPX L T -110
+KPX L Tcaron -110
+KPX L Tcommaaccent -110
+KPX L V -110
+KPX L W -70
+KPX L Y -140
+KPX L Yacute -140
+KPX L Ydieresis -140
+KPX L quotedblright -140
+KPX L quoteright -160
+KPX L y -30
+KPX L yacute -30
+KPX L ydieresis -30
+KPX Lacute T -110
+KPX Lacute Tcaron -110
+KPX Lacute Tcommaaccent -110
+KPX Lacute V -110
+KPX Lacute W -70
+KPX Lacute Y -140
+KPX Lacute Yacute -140
+KPX Lacute Ydieresis -140
+KPX Lacute quotedblright -140
+KPX Lacute quoteright -160
+KPX Lacute y -30
+KPX Lacute yacute -30
+KPX Lacute ydieresis -30
+KPX Lcaron T -110
+KPX Lcaron Tcaron -110
+KPX Lcaron Tcommaaccent -110
+KPX Lcaron V -110
+KPX Lcaron W -70
+KPX Lcaron Y -140
+KPX Lcaron Yacute -140
+KPX Lcaron Ydieresis -140
+KPX Lcaron quotedblright -140
+KPX Lcaron quoteright -160
+KPX Lcaron y -30
+KPX Lcaron yacute -30
+KPX Lcaron ydieresis -30
+KPX Lcommaaccent T -110
+KPX Lcommaaccent Tcaron -110
+KPX Lcommaaccent Tcommaaccent -110
+KPX Lcommaaccent V -110
+KPX Lcommaaccent W -70
+KPX Lcommaaccent Y -140
+KPX Lcommaaccent Yacute -140
+KPX Lcommaaccent Ydieresis -140
+KPX Lcommaaccent quotedblright -140
+KPX Lcommaaccent quoteright -160
+KPX Lcommaaccent y -30
+KPX Lcommaaccent yacute -30
+KPX Lcommaaccent ydieresis -30
+KPX Lslash T -110
+KPX Lslash Tcaron -110
+KPX Lslash Tcommaaccent -110
+KPX Lslash V -110
+KPX Lslash W -70
+KPX Lslash Y -140
+KPX Lslash Yacute -140
+KPX Lslash Ydieresis -140
+KPX Lslash quotedblright -140
+KPX Lslash quoteright -160
+KPX Lslash y -30
+KPX Lslash yacute -30
+KPX Lslash ydieresis -30
+KPX O A -20
+KPX O Aacute -20
+KPX O Abreve -20
+KPX O Acircumflex -20
+KPX O Adieresis -20
+KPX O Agrave -20
+KPX O Amacron -20
+KPX O Aogonek -20
+KPX O Aring -20
+KPX O Atilde -20
+KPX O T -40
+KPX O Tcaron -40
+KPX O Tcommaaccent -40
+KPX O V -50
+KPX O W -30
+KPX O X -60
+KPX O Y -70
+KPX O Yacute -70
+KPX O Ydieresis -70
+KPX O comma -40
+KPX O period -40
+KPX Oacute A -20
+KPX Oacute Aacute -20
+KPX Oacute Abreve -20
+KPX Oacute Acircumflex -20
+KPX Oacute Adieresis -20
+KPX Oacute Agrave -20
+KPX Oacute Amacron -20
+KPX Oacute Aogonek -20
+KPX Oacute Aring -20
+KPX Oacute Atilde -20
+KPX Oacute T -40
+KPX Oacute Tcaron -40
+KPX Oacute Tcommaaccent -40
+KPX Oacute V -50
+KPX Oacute W -30
+KPX Oacute X -60
+KPX Oacute Y -70
+KPX Oacute Yacute -70
+KPX Oacute Ydieresis -70
+KPX Oacute comma -40
+KPX Oacute period -40
+KPX Ocircumflex A -20
+KPX Ocircumflex Aacute -20
+KPX Ocircumflex Abreve -20
+KPX Ocircumflex Acircumflex -20
+KPX Ocircumflex Adieresis -20
+KPX Ocircumflex Agrave -20
+KPX Ocircumflex Amacron -20
+KPX Ocircumflex Aogonek -20
+KPX Ocircumflex Aring -20
+KPX Ocircumflex Atilde -20
+KPX Ocircumflex T -40
+KPX Ocircumflex Tcaron -40
+KPX Ocircumflex Tcommaaccent -40
+KPX Ocircumflex V -50
+KPX Ocircumflex W -30
+KPX Ocircumflex X -60
+KPX Ocircumflex Y -70
+KPX Ocircumflex Yacute -70
+KPX Ocircumflex Ydieresis -70
+KPX Ocircumflex comma -40
+KPX Ocircumflex period -40
+KPX Odieresis A -20
+KPX Odieresis Aacute -20
+KPX Odieresis Abreve -20
+KPX Odieresis Acircumflex -20
+KPX Odieresis Adieresis -20
+KPX Odieresis Agrave -20
+KPX Odieresis Amacron -20
+KPX Odieresis Aogonek -20
+KPX Odieresis Aring -20
+KPX Odieresis Atilde -20
+KPX Odieresis T -40
+KPX Odieresis Tcaron -40
+KPX Odieresis Tcommaaccent -40
+KPX Odieresis V -50
+KPX Odieresis W -30
+KPX Odieresis X -60
+KPX Odieresis Y -70
+KPX Odieresis Yacute -70
+KPX Odieresis Ydieresis -70
+KPX Odieresis comma -40
+KPX Odieresis period -40
+KPX Ograve A -20
+KPX Ograve Aacute -20
+KPX Ograve Abreve -20
+KPX Ograve Acircumflex -20
+KPX Ograve Adieresis -20
+KPX Ograve Agrave -20
+KPX Ograve Amacron -20
+KPX Ograve Aogonek -20
+KPX Ograve Aring -20
+KPX Ograve Atilde -20
+KPX Ograve T -40
+KPX Ograve Tcaron -40
+KPX Ograve Tcommaaccent -40
+KPX Ograve V -50
+KPX Ograve W -30
+KPX Ograve X -60
+KPX Ograve Y -70
+KPX Ograve Yacute -70
+KPX Ograve Ydieresis -70
+KPX Ograve comma -40
+KPX Ograve period -40
+KPX Ohungarumlaut A -20
+KPX Ohungarumlaut Aacute -20
+KPX Ohungarumlaut Abreve -20
+KPX Ohungarumlaut Acircumflex -20
+KPX Ohungarumlaut Adieresis -20
+KPX Ohungarumlaut Agrave -20
+KPX Ohungarumlaut Amacron -20
+KPX Ohungarumlaut Aogonek -20
+KPX Ohungarumlaut Aring -20
+KPX Ohungarumlaut Atilde -20
+KPX Ohungarumlaut T -40
+KPX Ohungarumlaut Tcaron -40
+KPX Ohungarumlaut Tcommaaccent -40
+KPX Ohungarumlaut V -50
+KPX Ohungarumlaut W -30
+KPX Ohungarumlaut X -60
+KPX Ohungarumlaut Y -70
+KPX Ohungarumlaut Yacute -70
+KPX Ohungarumlaut Ydieresis -70
+KPX Ohungarumlaut comma -40
+KPX Ohungarumlaut period -40
+KPX Omacron A -20
+KPX Omacron Aacute -20
+KPX Omacron Abreve -20
+KPX Omacron Acircumflex -20
+KPX Omacron Adieresis -20
+KPX Omacron Agrave -20
+KPX Omacron Amacron -20
+KPX Omacron Aogonek -20
+KPX Omacron Aring -20
+KPX Omacron Atilde -20
+KPX Omacron T -40
+KPX Omacron Tcaron -40
+KPX Omacron Tcommaaccent -40
+KPX Omacron V -50
+KPX Omacron W -30
+KPX Omacron X -60
+KPX Omacron Y -70
+KPX Omacron Yacute -70
+KPX Omacron Ydieresis -70
+KPX Omacron comma -40
+KPX Omacron period -40
+KPX Oslash A -20
+KPX Oslash Aacute -20
+KPX Oslash Abreve -20
+KPX Oslash Acircumflex -20
+KPX Oslash Adieresis -20
+KPX Oslash Agrave -20
+KPX Oslash Amacron -20
+KPX Oslash Aogonek -20
+KPX Oslash Aring -20
+KPX Oslash Atilde -20
+KPX Oslash T -40
+KPX Oslash Tcaron -40
+KPX Oslash Tcommaaccent -40
+KPX Oslash V -50
+KPX Oslash W -30
+KPX Oslash X -60
+KPX Oslash Y -70
+KPX Oslash Yacute -70
+KPX Oslash Ydieresis -70
+KPX Oslash comma -40
+KPX Oslash period -40
+KPX Otilde A -20
+KPX Otilde Aacute -20
+KPX Otilde Abreve -20
+KPX Otilde Acircumflex -20
+KPX Otilde Adieresis -20
+KPX Otilde Agrave -20
+KPX Otilde Amacron -20
+KPX Otilde Aogonek -20
+KPX Otilde Aring -20
+KPX Otilde Atilde -20
+KPX Otilde T -40
+KPX Otilde Tcaron -40
+KPX Otilde Tcommaaccent -40
+KPX Otilde V -50
+KPX Otilde W -30
+KPX Otilde X -60
+KPX Otilde Y -70
+KPX Otilde Yacute -70
+KPX Otilde Ydieresis -70
+KPX Otilde comma -40
+KPX Otilde period -40
+KPX P A -120
+KPX P Aacute -120
+KPX P Abreve -120
+KPX P Acircumflex -120
+KPX P Adieresis -120
+KPX P Agrave -120
+KPX P Amacron -120
+KPX P Aogonek -120
+KPX P Aring -120
+KPX P Atilde -120
+KPX P a -40
+KPX P aacute -40
+KPX P abreve -40
+KPX P acircumflex -40
+KPX P adieresis -40
+KPX P agrave -40
+KPX P amacron -40
+KPX P aogonek -40
+KPX P aring -40
+KPX P atilde -40
+KPX P comma -180
+KPX P e -50
+KPX P eacute -50
+KPX P ecaron -50
+KPX P ecircumflex -50
+KPX P edieresis -50
+KPX P edotaccent -50
+KPX P egrave -50
+KPX P emacron -50
+KPX P eogonek -50
+KPX P o -50
+KPX P oacute -50
+KPX P ocircumflex -50
+KPX P odieresis -50
+KPX P ograve -50
+KPX P ohungarumlaut -50
+KPX P omacron -50
+KPX P oslash -50
+KPX P otilde -50
+KPX P period -180
+KPX Q U -10
+KPX Q Uacute -10
+KPX Q Ucircumflex -10
+KPX Q Udieresis -10
+KPX Q Ugrave -10
+KPX Q Uhungarumlaut -10
+KPX Q Umacron -10
+KPX Q Uogonek -10
+KPX Q Uring -10
+KPX R O -20
+KPX R Oacute -20
+KPX R Ocircumflex -20
+KPX R Odieresis -20
+KPX R Ograve -20
+KPX R Ohungarumlaut -20
+KPX R Omacron -20
+KPX R Oslash -20
+KPX R Otilde -20
+KPX R T -30
+KPX R Tcaron -30
+KPX R Tcommaaccent -30
+KPX R U -40
+KPX R Uacute -40
+KPX R Ucircumflex -40
+KPX R Udieresis -40
+KPX R Ugrave -40
+KPX R Uhungarumlaut -40
+KPX R Umacron -40
+KPX R Uogonek -40
+KPX R Uring -40
+KPX R V -50
+KPX R W -30
+KPX R Y -50
+KPX R Yacute -50
+KPX R Ydieresis -50
+KPX Racute O -20
+KPX Racute Oacute -20
+KPX Racute Ocircumflex -20
+KPX Racute Odieresis -20
+KPX Racute Ograve -20
+KPX Racute Ohungarumlaut -20
+KPX Racute Omacron -20
+KPX Racute Oslash -20
+KPX Racute Otilde -20
+KPX Racute T -30
+KPX Racute Tcaron -30
+KPX Racute Tcommaaccent -30
+KPX Racute U -40
+KPX Racute Uacute -40
+KPX Racute Ucircumflex -40
+KPX Racute Udieresis -40
+KPX Racute Ugrave -40
+KPX Racute Uhungarumlaut -40
+KPX Racute Umacron -40
+KPX Racute Uogonek -40
+KPX Racute Uring -40
+KPX Racute V -50
+KPX Racute W -30
+KPX Racute Y -50
+KPX Racute Yacute -50
+KPX Racute Ydieresis -50
+KPX Rcaron O -20
+KPX Rcaron Oacute -20
+KPX Rcaron Ocircumflex -20
+KPX Rcaron Odieresis -20
+KPX Rcaron Ograve -20
+KPX Rcaron Ohungarumlaut -20
+KPX Rcaron Omacron -20
+KPX Rcaron Oslash -20
+KPX Rcaron Otilde -20
+KPX Rcaron T -30
+KPX Rcaron Tcaron -30
+KPX Rcaron Tcommaaccent -30
+KPX Rcaron U -40
+KPX Rcaron Uacute -40
+KPX Rcaron Ucircumflex -40
+KPX Rcaron Udieresis -40
+KPX Rcaron Ugrave -40
+KPX Rcaron Uhungarumlaut -40
+KPX Rcaron Umacron -40
+KPX Rcaron Uogonek -40
+KPX Rcaron Uring -40
+KPX Rcaron V -50
+KPX Rcaron W -30
+KPX Rcaron Y -50
+KPX Rcaron Yacute -50
+KPX Rcaron Ydieresis -50
+KPX Rcommaaccent O -20
+KPX Rcommaaccent Oacute -20
+KPX Rcommaaccent Ocircumflex -20
+KPX Rcommaaccent Odieresis -20
+KPX Rcommaaccent Ograve -20
+KPX Rcommaaccent Ohungarumlaut -20
+KPX Rcommaaccent Omacron -20
+KPX Rcommaaccent Oslash -20
+KPX Rcommaaccent Otilde -20
+KPX Rcommaaccent T -30
+KPX Rcommaaccent Tcaron -30
+KPX Rcommaaccent Tcommaaccent -30
+KPX Rcommaaccent U -40
+KPX Rcommaaccent Uacute -40
+KPX Rcommaaccent Ucircumflex -40
+KPX Rcommaaccent Udieresis -40
+KPX Rcommaaccent Ugrave -40
+KPX Rcommaaccent Uhungarumlaut -40
+KPX Rcommaaccent Umacron -40
+KPX Rcommaaccent Uogonek -40
+KPX Rcommaaccent Uring -40
+KPX Rcommaaccent V -50
+KPX Rcommaaccent W -30
+KPX Rcommaaccent Y -50
+KPX Rcommaaccent Yacute -50
+KPX Rcommaaccent Ydieresis -50
+KPX S comma -20
+KPX S period -20
+KPX Sacute comma -20
+KPX Sacute period -20
+KPX Scaron comma -20
+KPX Scaron period -20
+KPX Scedilla comma -20
+KPX Scedilla period -20
+KPX Scommaaccent comma -20
+KPX Scommaaccent period -20
+KPX T A -120
+KPX T Aacute -120
+KPX T Abreve -120
+KPX T Acircumflex -120
+KPX T Adieresis -120
+KPX T Agrave -120
+KPX T Amacron -120
+KPX T Aogonek -120
+KPX T Aring -120
+KPX T Atilde -120
+KPX T O -40
+KPX T Oacute -40
+KPX T Ocircumflex -40
+KPX T Odieresis -40
+KPX T Ograve -40
+KPX T Ohungarumlaut -40
+KPX T Omacron -40
+KPX T Oslash -40
+KPX T Otilde -40
+KPX T a -120
+KPX T aacute -120
+KPX T abreve -60
+KPX T acircumflex -120
+KPX T adieresis -120
+KPX T agrave -120
+KPX T amacron -60
+KPX T aogonek -120
+KPX T aring -120
+KPX T atilde -60
+KPX T colon -20
+KPX T comma -120
+KPX T e -120
+KPX T eacute -120
+KPX T ecaron -120
+KPX T ecircumflex -120
+KPX T edieresis -120
+KPX T edotaccent -120
+KPX T egrave -60
+KPX T emacron -60
+KPX T eogonek -120
+KPX T hyphen -140
+KPX T o -120
+KPX T oacute -120
+KPX T ocircumflex -120
+KPX T odieresis -120
+KPX T ograve -120
+KPX T ohungarumlaut -120
+KPX T omacron -60
+KPX T oslash -120
+KPX T otilde -60
+KPX T period -120
+KPX T r -120
+KPX T racute -120
+KPX T rcaron -120
+KPX T rcommaaccent -120
+KPX T semicolon -20
+KPX T u -120
+KPX T uacute -120
+KPX T ucircumflex -120
+KPX T udieresis -120
+KPX T ugrave -120
+KPX T uhungarumlaut -120
+KPX T umacron -60
+KPX T uogonek -120
+KPX T uring -120
+KPX T w -120
+KPX T y -120
+KPX T yacute -120
+KPX T ydieresis -60
+KPX Tcaron A -120
+KPX Tcaron Aacute -120
+KPX Tcaron Abreve -120
+KPX Tcaron Acircumflex -120
+KPX Tcaron Adieresis -120
+KPX Tcaron Agrave -120
+KPX Tcaron Amacron -120
+KPX Tcaron Aogonek -120
+KPX Tcaron Aring -120
+KPX Tcaron Atilde -120
+KPX Tcaron O -40
+KPX Tcaron Oacute -40
+KPX Tcaron Ocircumflex -40
+KPX Tcaron Odieresis -40
+KPX Tcaron Ograve -40
+KPX Tcaron Ohungarumlaut -40
+KPX Tcaron Omacron -40
+KPX Tcaron Oslash -40
+KPX Tcaron Otilde -40
+KPX Tcaron a -120
+KPX Tcaron aacute -120
+KPX Tcaron abreve -60
+KPX Tcaron acircumflex -120
+KPX Tcaron adieresis -120
+KPX Tcaron agrave -120
+KPX Tcaron amacron -60
+KPX Tcaron aogonek -120
+KPX Tcaron aring -120
+KPX Tcaron atilde -60
+KPX Tcaron colon -20
+KPX Tcaron comma -120
+KPX Tcaron e -120
+KPX Tcaron eacute -120
+KPX Tcaron ecaron -120
+KPX Tcaron ecircumflex -120
+KPX Tcaron edieresis -120
+KPX Tcaron edotaccent -120
+KPX Tcaron egrave -60
+KPX Tcaron emacron -60
+KPX Tcaron eogonek -120
+KPX Tcaron hyphen -140
+KPX Tcaron o -120
+KPX Tcaron oacute -120
+KPX Tcaron ocircumflex -120
+KPX Tcaron odieresis -120
+KPX Tcaron ograve -120
+KPX Tcaron ohungarumlaut -120
+KPX Tcaron omacron -60
+KPX Tcaron oslash -120
+KPX Tcaron otilde -60
+KPX Tcaron period -120
+KPX Tcaron r -120
+KPX Tcaron racute -120
+KPX Tcaron rcaron -120
+KPX Tcaron rcommaaccent -120
+KPX Tcaron semicolon -20
+KPX Tcaron u -120
+KPX Tcaron uacute -120
+KPX Tcaron ucircumflex -120
+KPX Tcaron udieresis -120
+KPX Tcaron ugrave -120
+KPX Tcaron uhungarumlaut -120
+KPX Tcaron umacron -60
+KPX Tcaron uogonek -120
+KPX Tcaron uring -120
+KPX Tcaron w -120
+KPX Tcaron y -120
+KPX Tcaron yacute -120
+KPX Tcaron ydieresis -60
+KPX Tcommaaccent A -120
+KPX Tcommaaccent Aacute -120
+KPX Tcommaaccent Abreve -120
+KPX Tcommaaccent Acircumflex -120
+KPX Tcommaaccent Adieresis -120
+KPX Tcommaaccent Agrave -120
+KPX Tcommaaccent Amacron -120
+KPX Tcommaaccent Aogonek -120
+KPX Tcommaaccent Aring -120
+KPX Tcommaaccent Atilde -120
+KPX Tcommaaccent O -40
+KPX Tcommaaccent Oacute -40
+KPX Tcommaaccent Ocircumflex -40
+KPX Tcommaaccent Odieresis -40
+KPX Tcommaaccent Ograve -40
+KPX Tcommaaccent Ohungarumlaut -40
+KPX Tcommaaccent Omacron -40
+KPX Tcommaaccent Oslash -40
+KPX Tcommaaccent Otilde -40
+KPX Tcommaaccent a -120
+KPX Tcommaaccent aacute -120
+KPX Tcommaaccent abreve -60
+KPX Tcommaaccent acircumflex -120
+KPX Tcommaaccent adieresis -120
+KPX Tcommaaccent agrave -120
+KPX Tcommaaccent amacron -60
+KPX Tcommaaccent aogonek -120
+KPX Tcommaaccent aring -120
+KPX Tcommaaccent atilde -60
+KPX Tcommaaccent colon -20
+KPX Tcommaaccent comma -120
+KPX Tcommaaccent e -120
+KPX Tcommaaccent eacute -120
+KPX Tcommaaccent ecaron -120
+KPX Tcommaaccent ecircumflex -120
+KPX Tcommaaccent edieresis -120
+KPX Tcommaaccent edotaccent -120
+KPX Tcommaaccent egrave -60
+KPX Tcommaaccent emacron -60
+KPX Tcommaaccent eogonek -120
+KPX Tcommaaccent hyphen -140
+KPX Tcommaaccent o -120
+KPX Tcommaaccent oacute -120
+KPX Tcommaaccent ocircumflex -120
+KPX Tcommaaccent odieresis -120
+KPX Tcommaaccent ograve -120
+KPX Tcommaaccent ohungarumlaut -120
+KPX Tcommaaccent omacron -60
+KPX Tcommaaccent oslash -120
+KPX Tcommaaccent otilde -60
+KPX Tcommaaccent period -120
+KPX Tcommaaccent r -120
+KPX Tcommaaccent racute -120
+KPX Tcommaaccent rcaron -120
+KPX Tcommaaccent rcommaaccent -120
+KPX Tcommaaccent semicolon -20
+KPX Tcommaaccent u -120
+KPX Tcommaaccent uacute -120
+KPX Tcommaaccent ucircumflex -120
+KPX Tcommaaccent udieresis -120
+KPX Tcommaaccent ugrave -120
+KPX Tcommaaccent uhungarumlaut -120
+KPX Tcommaaccent umacron -60
+KPX Tcommaaccent uogonek -120
+KPX Tcommaaccent uring -120
+KPX Tcommaaccent w -120
+KPX Tcommaaccent y -120
+KPX Tcommaaccent yacute -120
+KPX Tcommaaccent ydieresis -60
+KPX U A -40
+KPX U Aacute -40
+KPX U Abreve -40
+KPX U Acircumflex -40
+KPX U Adieresis -40
+KPX U Agrave -40
+KPX U Amacron -40
+KPX U Aogonek -40
+KPX U Aring -40
+KPX U Atilde -40
+KPX U comma -40
+KPX U period -40
+KPX Uacute A -40
+KPX Uacute Aacute -40
+KPX Uacute Abreve -40
+KPX Uacute Acircumflex -40
+KPX Uacute Adieresis -40
+KPX Uacute Agrave -40
+KPX Uacute Amacron -40
+KPX Uacute Aogonek -40
+KPX Uacute Aring -40
+KPX Uacute Atilde -40
+KPX Uacute comma -40
+KPX Uacute period -40
+KPX Ucircumflex A -40
+KPX Ucircumflex Aacute -40
+KPX Ucircumflex Abreve -40
+KPX Ucircumflex Acircumflex -40
+KPX Ucircumflex Adieresis -40
+KPX Ucircumflex Agrave -40
+KPX Ucircumflex Amacron -40
+KPX Ucircumflex Aogonek -40
+KPX Ucircumflex Aring -40
+KPX Ucircumflex Atilde -40
+KPX Ucircumflex comma -40
+KPX Ucircumflex period -40
+KPX Udieresis A -40
+KPX Udieresis Aacute -40
+KPX Udieresis Abreve -40
+KPX Udieresis Acircumflex -40
+KPX Udieresis Adieresis -40
+KPX Udieresis Agrave -40
+KPX Udieresis Amacron -40
+KPX Udieresis Aogonek -40
+KPX Udieresis Aring -40
+KPX Udieresis Atilde -40
+KPX Udieresis comma -40
+KPX Udieresis period -40
+KPX Ugrave A -40
+KPX Ugrave Aacute -40
+KPX Ugrave Abreve -40
+KPX Ugrave Acircumflex -40
+KPX Ugrave Adieresis -40
+KPX Ugrave Agrave -40
+KPX Ugrave Amacron -40
+KPX Ugrave Aogonek -40
+KPX Ugrave Aring -40
+KPX Ugrave Atilde -40
+KPX Ugrave comma -40
+KPX Ugrave period -40
+KPX Uhungarumlaut A -40
+KPX Uhungarumlaut Aacute -40
+KPX Uhungarumlaut Abreve -40
+KPX Uhungarumlaut Acircumflex -40
+KPX Uhungarumlaut Adieresis -40
+KPX Uhungarumlaut Agrave -40
+KPX Uhungarumlaut Amacron -40
+KPX Uhungarumlaut Aogonek -40
+KPX Uhungarumlaut Aring -40
+KPX Uhungarumlaut Atilde -40
+KPX Uhungarumlaut comma -40
+KPX Uhungarumlaut period -40
+KPX Umacron A -40
+KPX Umacron Aacute -40
+KPX Umacron Abreve -40
+KPX Umacron Acircumflex -40
+KPX Umacron Adieresis -40
+KPX Umacron Agrave -40
+KPX Umacron Amacron -40
+KPX Umacron Aogonek -40
+KPX Umacron Aring -40
+KPX Umacron Atilde -40
+KPX Umacron comma -40
+KPX Umacron period -40
+KPX Uogonek A -40
+KPX Uogonek Aacute -40
+KPX Uogonek Abreve -40
+KPX Uogonek Acircumflex -40
+KPX Uogonek Adieresis -40
+KPX Uogonek Agrave -40
+KPX Uogonek Amacron -40
+KPX Uogonek Aogonek -40
+KPX Uogonek Aring -40
+KPX Uogonek Atilde -40
+KPX Uogonek comma -40
+KPX Uogonek period -40
+KPX Uring A -40
+KPX Uring Aacute -40
+KPX Uring Abreve -40
+KPX Uring Acircumflex -40
+KPX Uring Adieresis -40
+KPX Uring Agrave -40
+KPX Uring Amacron -40
+KPX Uring Aogonek -40
+KPX Uring Aring -40
+KPX Uring Atilde -40
+KPX Uring comma -40
+KPX Uring period -40
+KPX V A -80
+KPX V Aacute -80
+KPX V Abreve -80
+KPX V Acircumflex -80
+KPX V Adieresis -80
+KPX V Agrave -80
+KPX V Amacron -80
+KPX V Aogonek -80
+KPX V Aring -80
+KPX V Atilde -80
+KPX V G -40
+KPX V Gbreve -40
+KPX V Gcommaaccent -40
+KPX V O -40
+KPX V Oacute -40
+KPX V Ocircumflex -40
+KPX V Odieresis -40
+KPX V Ograve -40
+KPX V Ohungarumlaut -40
+KPX V Omacron -40
+KPX V Oslash -40
+KPX V Otilde -40
+KPX V a -70
+KPX V aacute -70
+KPX V abreve -70
+KPX V acircumflex -70
+KPX V adieresis -70
+KPX V agrave -70
+KPX V amacron -70
+KPX V aogonek -70
+KPX V aring -70
+KPX V atilde -70
+KPX V colon -40
+KPX V comma -125
+KPX V e -80
+KPX V eacute -80
+KPX V ecaron -80
+KPX V ecircumflex -80
+KPX V edieresis -80
+KPX V edotaccent -80
+KPX V egrave -80
+KPX V emacron -80
+KPX V eogonek -80
+KPX V hyphen -80
+KPX V o -80
+KPX V oacute -80
+KPX V ocircumflex -80
+KPX V odieresis -80
+KPX V ograve -80
+KPX V ohungarumlaut -80
+KPX V omacron -80
+KPX V oslash -80
+KPX V otilde -80
+KPX V period -125
+KPX V semicolon -40
+KPX V u -70
+KPX V uacute -70
+KPX V ucircumflex -70
+KPX V udieresis -70
+KPX V ugrave -70
+KPX V uhungarumlaut -70
+KPX V umacron -70
+KPX V uogonek -70
+KPX V uring -70
+KPX W A -50
+KPX W Aacute -50
+KPX W Abreve -50
+KPX W Acircumflex -50
+KPX W Adieresis -50
+KPX W Agrave -50
+KPX W Amacron -50
+KPX W Aogonek -50
+KPX W Aring -50
+KPX W Atilde -50
+KPX W O -20
+KPX W Oacute -20
+KPX W Ocircumflex -20
+KPX W Odieresis -20
+KPX W Ograve -20
+KPX W Ohungarumlaut -20
+KPX W Omacron -20
+KPX W Oslash -20
+KPX W Otilde -20
+KPX W a -40
+KPX W aacute -40
+KPX W abreve -40
+KPX W acircumflex -40
+KPX W adieresis -40
+KPX W agrave -40
+KPX W amacron -40
+KPX W aogonek -40
+KPX W aring -40
+KPX W atilde -40
+KPX W comma -80
+KPX W e -30
+KPX W eacute -30
+KPX W ecaron -30
+KPX W ecircumflex -30
+KPX W edieresis -30
+KPX W edotaccent -30
+KPX W egrave -30
+KPX W emacron -30
+KPX W eogonek -30
+KPX W hyphen -40
+KPX W o -30
+KPX W oacute -30
+KPX W ocircumflex -30
+KPX W odieresis -30
+KPX W ograve -30
+KPX W ohungarumlaut -30
+KPX W omacron -30
+KPX W oslash -30
+KPX W otilde -30
+KPX W period -80
+KPX W u -30
+KPX W uacute -30
+KPX W ucircumflex -30
+KPX W udieresis -30
+KPX W ugrave -30
+KPX W uhungarumlaut -30
+KPX W umacron -30
+KPX W uogonek -30
+KPX W uring -30
+KPX W y -20
+KPX W yacute -20
+KPX W ydieresis -20
+KPX Y A -110
+KPX Y Aacute -110
+KPX Y Abreve -110
+KPX Y Acircumflex -110
+KPX Y Adieresis -110
+KPX Y Agrave -110
+KPX Y Amacron -110
+KPX Y Aogonek -110
+KPX Y Aring -110
+KPX Y Atilde -110
+KPX Y O -85
+KPX Y Oacute -85
+KPX Y Ocircumflex -85
+KPX Y Odieresis -85
+KPX Y Ograve -85
+KPX Y Ohungarumlaut -85
+KPX Y Omacron -85
+KPX Y Oslash -85
+KPX Y Otilde -85
+KPX Y a -140
+KPX Y aacute -140
+KPX Y abreve -70
+KPX Y acircumflex -140
+KPX Y adieresis -140
+KPX Y agrave -140
+KPX Y amacron -70
+KPX Y aogonek -140
+KPX Y aring -140
+KPX Y atilde -140
+KPX Y colon -60
+KPX Y comma -140
+KPX Y e -140
+KPX Y eacute -140
+KPX Y ecaron -140
+KPX Y ecircumflex -140
+KPX Y edieresis -140
+KPX Y edotaccent -140
+KPX Y egrave -140
+KPX Y emacron -70
+KPX Y eogonek -140
+KPX Y hyphen -140
+KPX Y i -20
+KPX Y iacute -20
+KPX Y iogonek -20
+KPX Y o -140
+KPX Y oacute -140
+KPX Y ocircumflex -140
+KPX Y odieresis -140
+KPX Y ograve -140
+KPX Y ohungarumlaut -140
+KPX Y omacron -140
+KPX Y oslash -140
+KPX Y otilde -140
+KPX Y period -140
+KPX Y semicolon -60
+KPX Y u -110
+KPX Y uacute -110
+KPX Y ucircumflex -110
+KPX Y udieresis -110
+KPX Y ugrave -110
+KPX Y uhungarumlaut -110
+KPX Y umacron -110
+KPX Y uogonek -110
+KPX Y uring -110
+KPX Yacute A -110
+KPX Yacute Aacute -110
+KPX Yacute Abreve -110
+KPX Yacute Acircumflex -110
+KPX Yacute Adieresis -110
+KPX Yacute Agrave -110
+KPX Yacute Amacron -110
+KPX Yacute Aogonek -110
+KPX Yacute Aring -110
+KPX Yacute Atilde -110
+KPX Yacute O -85
+KPX Yacute Oacute -85
+KPX Yacute Ocircumflex -85
+KPX Yacute Odieresis -85
+KPX Yacute Ograve -85
+KPX Yacute Ohungarumlaut -85
+KPX Yacute Omacron -85
+KPX Yacute Oslash -85
+KPX Yacute Otilde -85
+KPX Yacute a -140
+KPX Yacute aacute -140
+KPX Yacute abreve -70
+KPX Yacute acircumflex -140
+KPX Yacute adieresis -140
+KPX Yacute agrave -140
+KPX Yacute amacron -70
+KPX Yacute aogonek -140
+KPX Yacute aring -140
+KPX Yacute atilde -70
+KPX Yacute colon -60
+KPX Yacute comma -140
+KPX Yacute e -140
+KPX Yacute eacute -140
+KPX Yacute ecaron -140
+KPX Yacute ecircumflex -140
+KPX Yacute edieresis -140
+KPX Yacute edotaccent -140
+KPX Yacute egrave -140
+KPX Yacute emacron -70
+KPX Yacute eogonek -140
+KPX Yacute hyphen -140
+KPX Yacute i -20
+KPX Yacute iacute -20
+KPX Yacute iogonek -20
+KPX Yacute o -140
+KPX Yacute oacute -140
+KPX Yacute ocircumflex -140
+KPX Yacute odieresis -140
+KPX Yacute ograve -140
+KPX Yacute ohungarumlaut -140
+KPX Yacute omacron -70
+KPX Yacute oslash -140
+KPX Yacute otilde -140
+KPX Yacute period -140
+KPX Yacute semicolon -60
+KPX Yacute u -110
+KPX Yacute uacute -110
+KPX Yacute ucircumflex -110
+KPX Yacute udieresis -110
+KPX Yacute ugrave -110
+KPX Yacute uhungarumlaut -110
+KPX Yacute umacron -110
+KPX Yacute uogonek -110
+KPX Yacute uring -110
+KPX Ydieresis A -110
+KPX Ydieresis Aacute -110
+KPX Ydieresis Abreve -110
+KPX Ydieresis Acircumflex -110
+KPX Ydieresis Adieresis -110
+KPX Ydieresis Agrave -110
+KPX Ydieresis Amacron -110
+KPX Ydieresis Aogonek -110
+KPX Ydieresis Aring -110
+KPX Ydieresis Atilde -110
+KPX Ydieresis O -85
+KPX Ydieresis Oacute -85
+KPX Ydieresis Ocircumflex -85
+KPX Ydieresis Odieresis -85
+KPX Ydieresis Ograve -85
+KPX Ydieresis Ohungarumlaut -85
+KPX Ydieresis Omacron -85
+KPX Ydieresis Oslash -85
+KPX Ydieresis Otilde -85
+KPX Ydieresis a -140
+KPX Ydieresis aacute -140
+KPX Ydieresis abreve -70
+KPX Ydieresis acircumflex -140
+KPX Ydieresis adieresis -140
+KPX Ydieresis agrave -140
+KPX Ydieresis amacron -70
+KPX Ydieresis aogonek -140
+KPX Ydieresis aring -140
+KPX Ydieresis atilde -70
+KPX Ydieresis colon -60
+KPX Ydieresis comma -140
+KPX Ydieresis e -140
+KPX Ydieresis eacute -140
+KPX Ydieresis ecaron -140
+KPX Ydieresis ecircumflex -140
+KPX Ydieresis edieresis -140
+KPX Ydieresis edotaccent -140
+KPX Ydieresis egrave -140
+KPX Ydieresis emacron -70
+KPX Ydieresis eogonek -140
+KPX Ydieresis hyphen -140
+KPX Ydieresis i -20
+KPX Ydieresis iacute -20
+KPX Ydieresis iogonek -20
+KPX Ydieresis o -140
+KPX Ydieresis oacute -140
+KPX Ydieresis ocircumflex -140
+KPX Ydieresis odieresis -140
+KPX Ydieresis ograve -140
+KPX Ydieresis ohungarumlaut -140
+KPX Ydieresis omacron -140
+KPX Ydieresis oslash -140
+KPX Ydieresis otilde -140
+KPX Ydieresis period -140
+KPX Ydieresis semicolon -60
+KPX Ydieresis u -110
+KPX Ydieresis uacute -110
+KPX Ydieresis ucircumflex -110
+KPX Ydieresis udieresis -110
+KPX Ydieresis ugrave -110
+KPX Ydieresis uhungarumlaut -110
+KPX Ydieresis umacron -110
+KPX Ydieresis uogonek -110
+KPX Ydieresis uring -110
+KPX a v -20
+KPX a w -20
+KPX a y -30
+KPX a yacute -30
+KPX a ydieresis -30
+KPX aacute v -20
+KPX aacute w -20
+KPX aacute y -30
+KPX aacute yacute -30
+KPX aacute ydieresis -30
+KPX abreve v -20
+KPX abreve w -20
+KPX abreve y -30
+KPX abreve yacute -30
+KPX abreve ydieresis -30
+KPX acircumflex v -20
+KPX acircumflex w -20
+KPX acircumflex y -30
+KPX acircumflex yacute -30
+KPX acircumflex ydieresis -30
+KPX adieresis v -20
+KPX adieresis w -20
+KPX adieresis y -30
+KPX adieresis yacute -30
+KPX adieresis ydieresis -30
+KPX agrave v -20
+KPX agrave w -20
+KPX agrave y -30
+KPX agrave yacute -30
+KPX agrave ydieresis -30
+KPX amacron v -20
+KPX amacron w -20
+KPX amacron y -30
+KPX amacron yacute -30
+KPX amacron ydieresis -30
+KPX aogonek v -20
+KPX aogonek w -20
+KPX aogonek y -30
+KPX aogonek yacute -30
+KPX aogonek ydieresis -30
+KPX aring v -20
+KPX aring w -20
+KPX aring y -30
+KPX aring yacute -30
+KPX aring ydieresis -30
+KPX atilde v -20
+KPX atilde w -20
+KPX atilde y -30
+KPX atilde yacute -30
+KPX atilde ydieresis -30
+KPX b b -10
+KPX b comma -40
+KPX b l -20
+KPX b lacute -20
+KPX b lcommaaccent -20
+KPX b lslash -20
+KPX b period -40
+KPX b u -20
+KPX b uacute -20
+KPX b ucircumflex -20
+KPX b udieresis -20
+KPX b ugrave -20
+KPX b uhungarumlaut -20
+KPX b umacron -20
+KPX b uogonek -20
+KPX b uring -20
+KPX b v -20
+KPX b y -20
+KPX b yacute -20
+KPX b ydieresis -20
+KPX c comma -15
+KPX c k -20
+KPX c kcommaaccent -20
+KPX cacute comma -15
+KPX cacute k -20
+KPX cacute kcommaaccent -20
+KPX ccaron comma -15
+KPX ccaron k -20
+KPX ccaron kcommaaccent -20
+KPX ccedilla comma -15
+KPX ccedilla k -20
+KPX ccedilla kcommaaccent -20
+KPX colon space -50
+KPX comma quotedblright -100
+KPX comma quoteright -100
+KPX e comma -15
+KPX e period -15
+KPX e v -30
+KPX e w -20
+KPX e x -30
+KPX e y -20
+KPX e yacute -20
+KPX e ydieresis -20
+KPX eacute comma -15
+KPX eacute period -15
+KPX eacute v -30
+KPX eacute w -20
+KPX eacute x -30
+KPX eacute y -20
+KPX eacute yacute -20
+KPX eacute ydieresis -20
+KPX ecaron comma -15
+KPX ecaron period -15
+KPX ecaron v -30
+KPX ecaron w -20
+KPX ecaron x -30
+KPX ecaron y -20
+KPX ecaron yacute -20
+KPX ecaron ydieresis -20
+KPX ecircumflex comma -15
+KPX ecircumflex period -15
+KPX ecircumflex v -30
+KPX ecircumflex w -20
+KPX ecircumflex x -30
+KPX ecircumflex y -20
+KPX ecircumflex yacute -20
+KPX ecircumflex ydieresis -20
+KPX edieresis comma -15
+KPX edieresis period -15
+KPX edieresis v -30
+KPX edieresis w -20
+KPX edieresis x -30
+KPX edieresis y -20
+KPX edieresis yacute -20
+KPX edieresis ydieresis -20
+KPX edotaccent comma -15
+KPX edotaccent period -15
+KPX edotaccent v -30
+KPX edotaccent w -20
+KPX edotaccent x -30
+KPX edotaccent y -20
+KPX edotaccent yacute -20
+KPX edotaccent ydieresis -20
+KPX egrave comma -15
+KPX egrave period -15
+KPX egrave v -30
+KPX egrave w -20
+KPX egrave x -30
+KPX egrave y -20
+KPX egrave yacute -20
+KPX egrave ydieresis -20
+KPX emacron comma -15
+KPX emacron period -15
+KPX emacron v -30
+KPX emacron w -20
+KPX emacron x -30
+KPX emacron y -20
+KPX emacron yacute -20
+KPX emacron ydieresis -20
+KPX eogonek comma -15
+KPX eogonek period -15
+KPX eogonek v -30
+KPX eogonek w -20
+KPX eogonek x -30
+KPX eogonek y -20
+KPX eogonek yacute -20
+KPX eogonek ydieresis -20
+KPX f a -30
+KPX f aacute -30
+KPX f abreve -30
+KPX f acircumflex -30
+KPX f adieresis -30
+KPX f agrave -30
+KPX f amacron -30
+KPX f aogonek -30
+KPX f aring -30
+KPX f atilde -30
+KPX f comma -30
+KPX f dotlessi -28
+KPX f e -30
+KPX f eacute -30
+KPX f ecaron -30
+KPX f ecircumflex -30
+KPX f edieresis -30
+KPX f edotaccent -30
+KPX f egrave -30
+KPX f emacron -30
+KPX f eogonek -30
+KPX f o -30
+KPX f oacute -30
+KPX f ocircumflex -30
+KPX f odieresis -30
+KPX f ograve -30
+KPX f ohungarumlaut -30
+KPX f omacron -30
+KPX f oslash -30
+KPX f otilde -30
+KPX f period -30
+KPX f quotedblright 60
+KPX f quoteright 50
+KPX g r -10
+KPX g racute -10
+KPX g rcaron -10
+KPX g rcommaaccent -10
+KPX gbreve r -10
+KPX gbreve racute -10
+KPX gbreve rcaron -10
+KPX gbreve rcommaaccent -10
+KPX gcommaaccent r -10
+KPX gcommaaccent racute -10
+KPX gcommaaccent rcaron -10
+KPX gcommaaccent rcommaaccent -10
+KPX h y -30
+KPX h yacute -30
+KPX h ydieresis -30
+KPX k e -20
+KPX k eacute -20
+KPX k ecaron -20
+KPX k ecircumflex -20
+KPX k edieresis -20
+KPX k edotaccent -20
+KPX k egrave -20
+KPX k emacron -20
+KPX k eogonek -20
+KPX k o -20
+KPX k oacute -20
+KPX k ocircumflex -20
+KPX k odieresis -20
+KPX k ograve -20
+KPX k ohungarumlaut -20
+KPX k omacron -20
+KPX k oslash -20
+KPX k otilde -20
+KPX kcommaaccent e -20
+KPX kcommaaccent eacute -20
+KPX kcommaaccent ecaron -20
+KPX kcommaaccent ecircumflex -20
+KPX kcommaaccent edieresis -20
+KPX kcommaaccent edotaccent -20
+KPX kcommaaccent egrave -20
+KPX kcommaaccent emacron -20
+KPX kcommaaccent eogonek -20
+KPX kcommaaccent o -20
+KPX kcommaaccent oacute -20
+KPX kcommaaccent ocircumflex -20
+KPX kcommaaccent odieresis -20
+KPX kcommaaccent ograve -20
+KPX kcommaaccent ohungarumlaut -20
+KPX kcommaaccent omacron -20
+KPX kcommaaccent oslash -20
+KPX kcommaaccent otilde -20
+KPX m u -10
+KPX m uacute -10
+KPX m ucircumflex -10
+KPX m udieresis -10
+KPX m ugrave -10
+KPX m uhungarumlaut -10
+KPX m umacron -10
+KPX m uogonek -10
+KPX m uring -10
+KPX m y -15
+KPX m yacute -15
+KPX m ydieresis -15
+KPX n u -10
+KPX n uacute -10
+KPX n ucircumflex -10
+KPX n udieresis -10
+KPX n ugrave -10
+KPX n uhungarumlaut -10
+KPX n umacron -10
+KPX n uogonek -10
+KPX n uring -10
+KPX n v -20
+KPX n y -15
+KPX n yacute -15
+KPX n ydieresis -15
+KPX nacute u -10
+KPX nacute uacute -10
+KPX nacute ucircumflex -10
+KPX nacute udieresis -10
+KPX nacute ugrave -10
+KPX nacute uhungarumlaut -10
+KPX nacute umacron -10
+KPX nacute uogonek -10
+KPX nacute uring -10
+KPX nacute v -20
+KPX nacute y -15
+KPX nacute yacute -15
+KPX nacute ydieresis -15
+KPX ncaron u -10
+KPX ncaron uacute -10
+KPX ncaron ucircumflex -10
+KPX ncaron udieresis -10
+KPX ncaron ugrave -10
+KPX ncaron uhungarumlaut -10
+KPX ncaron umacron -10
+KPX ncaron uogonek -10
+KPX ncaron uring -10
+KPX ncaron v -20
+KPX ncaron y -15
+KPX ncaron yacute -15
+KPX ncaron ydieresis -15
+KPX ncommaaccent u -10
+KPX ncommaaccent uacute -10
+KPX ncommaaccent ucircumflex -10
+KPX ncommaaccent udieresis -10
+KPX ncommaaccent ugrave -10
+KPX ncommaaccent uhungarumlaut -10
+KPX ncommaaccent umacron -10
+KPX ncommaaccent uogonek -10
+KPX ncommaaccent uring -10
+KPX ncommaaccent v -20
+KPX ncommaaccent y -15
+KPX ncommaaccent yacute -15
+KPX ncommaaccent ydieresis -15
+KPX ntilde u -10
+KPX ntilde uacute -10
+KPX ntilde ucircumflex -10
+KPX ntilde udieresis -10
+KPX ntilde ugrave -10
+KPX ntilde uhungarumlaut -10
+KPX ntilde umacron -10
+KPX ntilde uogonek -10
+KPX ntilde uring -10
+KPX ntilde v -20
+KPX ntilde y -15
+KPX ntilde yacute -15
+KPX ntilde ydieresis -15
+KPX o comma -40
+KPX o period -40
+KPX o v -15
+KPX o w -15
+KPX o x -30
+KPX o y -30
+KPX o yacute -30
+KPX o ydieresis -30
+KPX oacute comma -40
+KPX oacute period -40
+KPX oacute v -15
+KPX oacute w -15
+KPX oacute x -30
+KPX oacute y -30
+KPX oacute yacute -30
+KPX oacute ydieresis -30
+KPX ocircumflex comma -40
+KPX ocircumflex period -40
+KPX ocircumflex v -15
+KPX ocircumflex w -15
+KPX ocircumflex x -30
+KPX ocircumflex y -30
+KPX ocircumflex yacute -30
+KPX ocircumflex ydieresis -30
+KPX odieresis comma -40
+KPX odieresis period -40
+KPX odieresis v -15
+KPX odieresis w -15
+KPX odieresis x -30
+KPX odieresis y -30
+KPX odieresis yacute -30
+KPX odieresis ydieresis -30
+KPX ograve comma -40
+KPX ograve period -40
+KPX ograve v -15
+KPX ograve w -15
+KPX ograve x -30
+KPX ograve y -30
+KPX ograve yacute -30
+KPX ograve ydieresis -30
+KPX ohungarumlaut comma -40
+KPX ohungarumlaut period -40
+KPX ohungarumlaut v -15
+KPX ohungarumlaut w -15
+KPX ohungarumlaut x -30
+KPX ohungarumlaut y -30
+KPX ohungarumlaut yacute -30
+KPX ohungarumlaut ydieresis -30
+KPX omacron comma -40
+KPX omacron period -40
+KPX omacron v -15
+KPX omacron w -15
+KPX omacron x -30
+KPX omacron y -30
+KPX omacron yacute -30
+KPX omacron ydieresis -30
+KPX oslash a -55
+KPX oslash aacute -55
+KPX oslash abreve -55
+KPX oslash acircumflex -55
+KPX oslash adieresis -55
+KPX oslash agrave -55
+KPX oslash amacron -55
+KPX oslash aogonek -55
+KPX oslash aring -55
+KPX oslash atilde -55
+KPX oslash b -55
+KPX oslash c -55
+KPX oslash cacute -55
+KPX oslash ccaron -55
+KPX oslash ccedilla -55
+KPX oslash comma -95
+KPX oslash d -55
+KPX oslash dcroat -55
+KPX oslash e -55
+KPX oslash eacute -55
+KPX oslash ecaron -55
+KPX oslash ecircumflex -55
+KPX oslash edieresis -55
+KPX oslash edotaccent -55
+KPX oslash egrave -55
+KPX oslash emacron -55
+KPX oslash eogonek -55
+KPX oslash f -55
+KPX oslash g -55
+KPX oslash gbreve -55
+KPX oslash gcommaaccent -55
+KPX oslash h -55
+KPX oslash i -55
+KPX oslash iacute -55
+KPX oslash icircumflex -55
+KPX oslash idieresis -55
+KPX oslash igrave -55
+KPX oslash imacron -55
+KPX oslash iogonek -55
+KPX oslash j -55
+KPX oslash k -55
+KPX oslash kcommaaccent -55
+KPX oslash l -55
+KPX oslash lacute -55
+KPX oslash lcommaaccent -55
+KPX oslash lslash -55
+KPX oslash m -55
+KPX oslash n -55
+KPX oslash nacute -55
+KPX oslash ncaron -55
+KPX oslash ncommaaccent -55
+KPX oslash ntilde -55
+KPX oslash o -55
+KPX oslash oacute -55
+KPX oslash ocircumflex -55
+KPX oslash odieresis -55
+KPX oslash ograve -55
+KPX oslash ohungarumlaut -55
+KPX oslash omacron -55
+KPX oslash oslash -55
+KPX oslash otilde -55
+KPX oslash p -55
+KPX oslash period -95
+KPX oslash q -55
+KPX oslash r -55
+KPX oslash racute -55
+KPX oslash rcaron -55
+KPX oslash rcommaaccent -55
+KPX oslash s -55
+KPX oslash sacute -55
+KPX oslash scaron -55
+KPX oslash scedilla -55
+KPX oslash scommaaccent -55
+KPX oslash t -55
+KPX oslash tcommaaccent -55
+KPX oslash u -55
+KPX oslash uacute -55
+KPX oslash ucircumflex -55
+KPX oslash udieresis -55
+KPX oslash ugrave -55
+KPX oslash uhungarumlaut -55
+KPX oslash umacron -55
+KPX oslash uogonek -55
+KPX oslash uring -55
+KPX oslash v -70
+KPX oslash w -70
+KPX oslash x -85
+KPX oslash y -70
+KPX oslash yacute -70
+KPX oslash ydieresis -70
+KPX oslash z -55
+KPX oslash zacute -55
+KPX oslash zcaron -55
+KPX oslash zdotaccent -55
+KPX otilde comma -40
+KPX otilde period -40
+KPX otilde v -15
+KPX otilde w -15
+KPX otilde x -30
+KPX otilde y -30
+KPX otilde yacute -30
+KPX otilde ydieresis -30
+KPX p comma -35
+KPX p period -35
+KPX p y -30
+KPX p yacute -30
+KPX p ydieresis -30
+KPX period quotedblright -100
+KPX period quoteright -100
+KPX period space -60
+KPX quotedblright space -40
+KPX quoteleft quoteleft -57
+KPX quoteright d -50
+KPX quoteright dcroat -50
+KPX quoteright quoteright -57
+KPX quoteright r -50
+KPX quoteright racute -50
+KPX quoteright rcaron -50
+KPX quoteright rcommaaccent -50
+KPX quoteright s -50
+KPX quoteright sacute -50
+KPX quoteright scaron -50
+KPX quoteright scedilla -50
+KPX quoteright scommaaccent -50
+KPX quoteright space -70
+KPX r a -10
+KPX r aacute -10
+KPX r abreve -10
+KPX r acircumflex -10
+KPX r adieresis -10
+KPX r agrave -10
+KPX r amacron -10
+KPX r aogonek -10
+KPX r aring -10
+KPX r atilde -10
+KPX r colon 30
+KPX r comma -50
+KPX r i 15
+KPX r iacute 15
+KPX r icircumflex 15
+KPX r idieresis 15
+KPX r igrave 15
+KPX r imacron 15
+KPX r iogonek 15
+KPX r k 15
+KPX r kcommaaccent 15
+KPX r l 15
+KPX r lacute 15
+KPX r lcommaaccent 15
+KPX r lslash 15
+KPX r m 25
+KPX r n 25
+KPX r nacute 25
+KPX r ncaron 25
+KPX r ncommaaccent 25
+KPX r ntilde 25
+KPX r p 30
+KPX r period -50
+KPX r semicolon 30
+KPX r t 40
+KPX r tcommaaccent 40
+KPX r u 15
+KPX r uacute 15
+KPX r ucircumflex 15
+KPX r udieresis 15
+KPX r ugrave 15
+KPX r uhungarumlaut 15
+KPX r umacron 15
+KPX r uogonek 15
+KPX r uring 15
+KPX r v 30
+KPX r y 30
+KPX r yacute 30
+KPX r ydieresis 30
+KPX racute a -10
+KPX racute aacute -10
+KPX racute abreve -10
+KPX racute acircumflex -10
+KPX racute adieresis -10
+KPX racute agrave -10
+KPX racute amacron -10
+KPX racute aogonek -10
+KPX racute aring -10
+KPX racute atilde -10
+KPX racute colon 30
+KPX racute comma -50
+KPX racute i 15
+KPX racute iacute 15
+KPX racute icircumflex 15
+KPX racute idieresis 15
+KPX racute igrave 15
+KPX racute imacron 15
+KPX racute iogonek 15
+KPX racute k 15
+KPX racute kcommaaccent 15
+KPX racute l 15
+KPX racute lacute 15
+KPX racute lcommaaccent 15
+KPX racute lslash 15
+KPX racute m 25
+KPX racute n 25
+KPX racute nacute 25
+KPX racute ncaron 25
+KPX racute ncommaaccent 25
+KPX racute ntilde 25
+KPX racute p 30
+KPX racute period -50
+KPX racute semicolon 30
+KPX racute t 40
+KPX racute tcommaaccent 40
+KPX racute u 15
+KPX racute uacute 15
+KPX racute ucircumflex 15
+KPX racute udieresis 15
+KPX racute ugrave 15
+KPX racute uhungarumlaut 15
+KPX racute umacron 15
+KPX racute uogonek 15
+KPX racute uring 15
+KPX racute v 30
+KPX racute y 30
+KPX racute yacute 30
+KPX racute ydieresis 30
+KPX rcaron a -10
+KPX rcaron aacute -10
+KPX rcaron abreve -10
+KPX rcaron acircumflex -10
+KPX rcaron adieresis -10
+KPX rcaron agrave -10
+KPX rcaron amacron -10
+KPX rcaron aogonek -10
+KPX rcaron aring -10
+KPX rcaron atilde -10
+KPX rcaron colon 30
+KPX rcaron comma -50
+KPX rcaron i 15
+KPX rcaron iacute 15
+KPX rcaron icircumflex 15
+KPX rcaron idieresis 15
+KPX rcaron igrave 15
+KPX rcaron imacron 15
+KPX rcaron iogonek 15
+KPX rcaron k 15
+KPX rcaron kcommaaccent 15
+KPX rcaron l 15
+KPX rcaron lacute 15
+KPX rcaron lcommaaccent 15
+KPX rcaron lslash 15
+KPX rcaron m 25
+KPX rcaron n 25
+KPX rcaron nacute 25
+KPX rcaron ncaron 25
+KPX rcaron ncommaaccent 25
+KPX rcaron ntilde 25
+KPX rcaron p 30
+KPX rcaron period -50
+KPX rcaron semicolon 30
+KPX rcaron t 40
+KPX rcaron tcommaaccent 40
+KPX rcaron u 15
+KPX rcaron uacute 15
+KPX rcaron ucircumflex 15
+KPX rcaron udieresis 15
+KPX rcaron ugrave 15
+KPX rcaron uhungarumlaut 15
+KPX rcaron umacron 15
+KPX rcaron uogonek 15
+KPX rcaron uring 15
+KPX rcaron v 30
+KPX rcaron y 30
+KPX rcaron yacute 30
+KPX rcaron ydieresis 30
+KPX rcommaaccent a -10
+KPX rcommaaccent aacute -10
+KPX rcommaaccent abreve -10
+KPX rcommaaccent acircumflex -10
+KPX rcommaaccent adieresis -10
+KPX rcommaaccent agrave -10
+KPX rcommaaccent amacron -10
+KPX rcommaaccent aogonek -10
+KPX rcommaaccent aring -10
+KPX rcommaaccent atilde -10
+KPX rcommaaccent colon 30
+KPX rcommaaccent comma -50
+KPX rcommaaccent i 15
+KPX rcommaaccent iacute 15
+KPX rcommaaccent icircumflex 15
+KPX rcommaaccent idieresis 15
+KPX rcommaaccent igrave 15
+KPX rcommaaccent imacron 15
+KPX rcommaaccent iogonek 15
+KPX rcommaaccent k 15
+KPX rcommaaccent kcommaaccent 15
+KPX rcommaaccent l 15
+KPX rcommaaccent lacute 15
+KPX rcommaaccent lcommaaccent 15
+KPX rcommaaccent lslash 15
+KPX rcommaaccent m 25
+KPX rcommaaccent n 25
+KPX rcommaaccent nacute 25
+KPX rcommaaccent ncaron 25
+KPX rcommaaccent ncommaaccent 25
+KPX rcommaaccent ntilde 25
+KPX rcommaaccent p 30
+KPX rcommaaccent period -50
+KPX rcommaaccent semicolon 30
+KPX rcommaaccent t 40
+KPX rcommaaccent tcommaaccent 40
+KPX rcommaaccent u 15
+KPX rcommaaccent uacute 15
+KPX rcommaaccent ucircumflex 15
+KPX rcommaaccent udieresis 15
+KPX rcommaaccent ugrave 15
+KPX rcommaaccent uhungarumlaut 15
+KPX rcommaaccent umacron 15
+KPX rcommaaccent uogonek 15
+KPX rcommaaccent uring 15
+KPX rcommaaccent v 30
+KPX rcommaaccent y 30
+KPX rcommaaccent yacute 30
+KPX rcommaaccent ydieresis 30
+KPX s comma -15
+KPX s period -15
+KPX s w -30
+KPX sacute comma -15
+KPX sacute period -15
+KPX sacute w -30
+KPX scaron comma -15
+KPX scaron period -15
+KPX scaron w -30
+KPX scedilla comma -15
+KPX scedilla period -15
+KPX scedilla w -30
+KPX scommaaccent comma -15
+KPX scommaaccent period -15
+KPX scommaaccent w -30
+KPX semicolon space -50
+KPX space T -50
+KPX space Tcaron -50
+KPX space Tcommaaccent -50
+KPX space V -50
+KPX space W -40
+KPX space Y -90
+KPX space Yacute -90
+KPX space Ydieresis -90
+KPX space quotedblleft -30
+KPX space quoteleft -60
+KPX v a -25
+KPX v aacute -25
+KPX v abreve -25
+KPX v acircumflex -25
+KPX v adieresis -25
+KPX v agrave -25
+KPX v amacron -25
+KPX v aogonek -25
+KPX v aring -25
+KPX v atilde -25
+KPX v comma -80
+KPX v e -25
+KPX v eacute -25
+KPX v ecaron -25
+KPX v ecircumflex -25
+KPX v edieresis -25
+KPX v edotaccent -25
+KPX v egrave -25
+KPX v emacron -25
+KPX v eogonek -25
+KPX v o -25
+KPX v oacute -25
+KPX v ocircumflex -25
+KPX v odieresis -25
+KPX v ograve -25
+KPX v ohungarumlaut -25
+KPX v omacron -25
+KPX v oslash -25
+KPX v otilde -25
+KPX v period -80
+KPX w a -15
+KPX w aacute -15
+KPX w abreve -15
+KPX w acircumflex -15
+KPX w adieresis -15
+KPX w agrave -15
+KPX w amacron -15
+KPX w aogonek -15
+KPX w aring -15
+KPX w atilde -15
+KPX w comma -60
+KPX w e -10
+KPX w eacute -10
+KPX w ecaron -10
+KPX w ecircumflex -10
+KPX w edieresis -10
+KPX w edotaccent -10
+KPX w egrave -10
+KPX w emacron -10
+KPX w eogonek -10
+KPX w o -10
+KPX w oacute -10
+KPX w ocircumflex -10
+KPX w odieresis -10
+KPX w ograve -10
+KPX w ohungarumlaut -10
+KPX w omacron -10
+KPX w oslash -10
+KPX w otilde -10
+KPX w period -60
+KPX x e -30
+KPX x eacute -30
+KPX x ecaron -30
+KPX x ecircumflex -30
+KPX x edieresis -30
+KPX x edotaccent -30
+KPX x egrave -30
+KPX x emacron -30
+KPX x eogonek -30
+KPX y a -20
+KPX y aacute -20
+KPX y abreve -20
+KPX y acircumflex -20
+KPX y adieresis -20
+KPX y agrave -20
+KPX y amacron -20
+KPX y aogonek -20
+KPX y aring -20
+KPX y atilde -20
+KPX y comma -100
+KPX y e -20
+KPX y eacute -20
+KPX y ecaron -20
+KPX y ecircumflex -20
+KPX y edieresis -20
+KPX y edotaccent -20
+KPX y egrave -20
+KPX y emacron -20
+KPX y eogonek -20
+KPX y o -20
+KPX y oacute -20
+KPX y ocircumflex -20
+KPX y odieresis -20
+KPX y ograve -20
+KPX y ohungarumlaut -20
+KPX y omacron -20
+KPX y oslash -20
+KPX y otilde -20
+KPX y period -100
+KPX yacute a -20
+KPX yacute aacute -20
+KPX yacute abreve -20
+KPX yacute acircumflex -20
+KPX yacute adieresis -20
+KPX yacute agrave -20
+KPX yacute amacron -20
+KPX yacute aogonek -20
+KPX yacute aring -20
+KPX yacute atilde -20
+KPX yacute comma -100
+KPX yacute e -20
+KPX yacute eacute -20
+KPX yacute ecaron -20
+KPX yacute ecircumflex -20
+KPX yacute edieresis -20
+KPX yacute edotaccent -20
+KPX yacute egrave -20
+KPX yacute emacron -20
+KPX yacute eogonek -20
+KPX yacute o -20
+KPX yacute oacute -20
+KPX yacute ocircumflex -20
+KPX yacute odieresis -20
+KPX yacute ograve -20
+KPX yacute ohungarumlaut -20
+KPX yacute omacron -20
+KPX yacute oslash -20
+KPX yacute otilde -20
+KPX yacute period -100
+KPX ydieresis a -20
+KPX ydieresis aacute -20
+KPX ydieresis abreve -20
+KPX ydieresis acircumflex -20
+KPX ydieresis adieresis -20
+KPX ydieresis agrave -20
+KPX ydieresis amacron -20
+KPX ydieresis aogonek -20
+KPX ydieresis aring -20
+KPX ydieresis atilde -20
+KPX ydieresis comma -100
+KPX ydieresis e -20
+KPX ydieresis eacute -20
+KPX ydieresis ecaron -20
+KPX ydieresis ecircumflex -20
+KPX ydieresis edieresis -20
+KPX ydieresis edotaccent -20
+KPX ydieresis egrave -20
+KPX ydieresis emacron -20
+KPX ydieresis eogonek -20
+KPX ydieresis o -20
+KPX ydieresis oacute -20
+KPX ydieresis ocircumflex -20
+KPX ydieresis odieresis -20
+KPX ydieresis ograve -20
+KPX ydieresis ohungarumlaut -20
+KPX ydieresis omacron -20
+KPX ydieresis oslash -20
+KPX ydieresis otilde -20
+KPX ydieresis period -100
+KPX z e -15
+KPX z eacute -15
+KPX z ecaron -15
+KPX z ecircumflex -15
+KPX z edieresis -15
+KPX z edotaccent -15
+KPX z egrave -15
+KPX z emacron -15
+KPX z eogonek -15
+KPX z o -15
+KPX z oacute -15
+KPX z ocircumflex -15
+KPX z odieresis -15
+KPX z ograve -15
+KPX z ohungarumlaut -15
+KPX z omacron -15
+KPX z oslash -15
+KPX z otilde -15
+KPX zacute e -15
+KPX zacute eacute -15
+KPX zacute ecaron -15
+KPX zacute ecircumflex -15
+KPX zacute edieresis -15
+KPX zacute edotaccent -15
+KPX zacute egrave -15
+KPX zacute emacron -15
+KPX zacute eogonek -15
+KPX zacute o -15
+KPX zacute oacute -15
+KPX zacute ocircumflex -15
+KPX zacute odieresis -15
+KPX zacute ograve -15
+KPX zacute ohungarumlaut -15
+KPX zacute omacron -15
+KPX zacute oslash -15
+KPX zacute otilde -15
+KPX zcaron e -15
+KPX zcaron eacute -15
+KPX zcaron ecaron -15
+KPX zcaron ecircumflex -15
+KPX zcaron edieresis -15
+KPX zcaron edotaccent -15
+KPX zcaron egrave -15
+KPX zcaron emacron -15
+KPX zcaron eogonek -15
+KPX zcaron o -15
+KPX zcaron oacute -15
+KPX zcaron ocircumflex -15
+KPX zcaron odieresis -15
+KPX zcaron ograve -15
+KPX zcaron ohungarumlaut -15
+KPX zcaron omacron -15
+KPX zcaron oslash -15
+KPX zcaron otilde -15
+KPX zdotaccent e -15
+KPX zdotaccent eacute -15
+KPX zdotaccent ecaron -15
+KPX zdotaccent ecircumflex -15
+KPX zdotaccent edieresis -15
+KPX zdotaccent edotaccent -15
+KPX zdotaccent egrave -15
+KPX zdotaccent emacron -15
+KPX zdotaccent eogonek -15
+KPX zdotaccent o -15
+KPX zdotaccent oacute -15
+KPX zdotaccent ocircumflex -15
+KPX zdotaccent odieresis -15
+KPX zdotaccent ograve -15
+KPX zdotaccent ohungarumlaut -15
+KPX zdotaccent omacron -15
+KPX zdotaccent oslash -15
+KPX zdotaccent otilde -15
+EndKernPairs
+EndKernData
+EndFontMetrics
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Symbol.afm b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Symbol.afm
new file mode 100755
index 00000000..6a5386a9
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Symbol.afm
@@ -0,0 +1,213 @@
+StartFontMetrics 4.1
+Comment Copyright (c) 1985, 1987, 1989, 1990, 1997 Adobe Systems Incorporated. All rights reserved.
+Comment Creation Date: Thu May 1 15:12:25 1997
+Comment UniqueID 43064
+Comment VMusage 30820 39997
+FontName Symbol
+FullName Symbol
+FamilyName Symbol
+Weight Medium
+ItalicAngle 0
+IsFixedPitch false
+CharacterSet Special
+FontBBox -180 -293 1090 1010
+UnderlinePosition -100
+UnderlineThickness 50
+Version 001.008
+Notice Copyright (c) 1985, 1987, 1989, 1990, 1997 Adobe Systems Incorporated. All rights reserved.
+EncodingScheme FontSpecific
+StdHW 92
+StdVW 85
+StartCharMetrics 190
+C 32 ; WX 250 ; N space ; B 0 0 0 0 ;
+C 33 ; WX 333 ; N exclam ; B 128 -17 240 672 ;
+C 34 ; WX 713 ; N universal ; B 31 0 681 705 ;
+C 35 ; WX 500 ; N numbersign ; B 20 -16 481 673 ;
+C 36 ; WX 549 ; N existential ; B 25 0 478 707 ;
+C 37 ; WX 833 ; N percent ; B 63 -36 771 655 ;
+C 38 ; WX 778 ; N ampersand ; B 41 -18 750 661 ;
+C 39 ; WX 439 ; N suchthat ; B 48 -17 414 500 ;
+C 40 ; WX 333 ; N parenleft ; B 53 -191 300 673 ;
+C 41 ; WX 333 ; N parenright ; B 30 -191 277 673 ;
+C 42 ; WX 500 ; N asteriskmath ; B 65 134 427 551 ;
+C 43 ; WX 549 ; N plus ; B 10 0 539 533 ;
+C 44 ; WX 250 ; N comma ; B 56 -152 194 104 ;
+C 45 ; WX 549 ; N minus ; B 11 233 535 288 ;
+C 46 ; WX 250 ; N period ; B 69 -17 181 95 ;
+C 47 ; WX 278 ; N slash ; B 0 -18 254 646 ;
+C 48 ; WX 500 ; N zero ; B 24 -14 476 685 ;
+C 49 ; WX 500 ; N one ; B 117 0 390 673 ;
+C 50 ; WX 500 ; N two ; B 25 0 475 685 ;
+C 51 ; WX 500 ; N three ; B 43 -14 435 685 ;
+C 52 ; WX 500 ; N four ; B 15 0 469 685 ;
+C 53 ; WX 500 ; N five ; B 32 -14 445 690 ;
+C 54 ; WX 500 ; N six ; B 34 -14 468 685 ;
+C 55 ; WX 500 ; N seven ; B 24 -16 448 673 ;
+C 56 ; WX 500 ; N eight ; B 56 -14 445 685 ;
+C 57 ; WX 500 ; N nine ; B 30 -18 459 685 ;
+C 58 ; WX 278 ; N colon ; B 81 -17 193 460 ;
+C 59 ; WX 278 ; N semicolon ; B 83 -152 221 460 ;
+C 60 ; WX 549 ; N less ; B 26 0 523 522 ;
+C 61 ; WX 549 ; N equal ; B 11 141 537 390 ;
+C 62 ; WX 549 ; N greater ; B 26 0 523 522 ;
+C 63 ; WX 444 ; N question ; B 70 -17 412 686 ;
+C 64 ; WX 549 ; N congruent ; B 11 0 537 475 ;
+C 65 ; WX 722 ; N Alpha ; B 4 0 684 673 ;
+C 66 ; WX 667 ; N Beta ; B 29 0 592 673 ;
+C 67 ; WX 722 ; N Chi ; B -9 0 704 673 ;
+C 68 ; WX 612 ; N Delta ; B 6 0 608 688 ;
+C 69 ; WX 611 ; N Epsilon ; B 32 0 617 673 ;
+C 70 ; WX 763 ; N Phi ; B 26 0 741 673 ;
+C 71 ; WX 603 ; N Gamma ; B 24 0 609 673 ;
+C 72 ; WX 722 ; N Eta ; B 39 0 729 673 ;
+C 73 ; WX 333 ; N Iota ; B 32 0 316 673 ;
+C 74 ; WX 631 ; N theta1 ; B 18 -18 623 689 ;
+C 75 ; WX 722 ; N Kappa ; B 35 0 722 673 ;
+C 76 ; WX 686 ; N Lambda ; B 6 0 680 688 ;
+C 77 ; WX 889 ; N Mu ; B 28 0 887 673 ;
+C 78 ; WX 722 ; N Nu ; B 29 -8 720 673 ;
+C 79 ; WX 722 ; N Omicron ; B 41 -17 715 685 ;
+C 80 ; WX 768 ; N Pi ; B 25 0 745 673 ;
+C 81 ; WX 741 ; N Theta ; B 41 -17 715 685 ;
+C 82 ; WX 556 ; N Rho ; B 28 0 563 673 ;
+C 83 ; WX 592 ; N Sigma ; B 5 0 589 673 ;
+C 84 ; WX 611 ; N Tau ; B 33 0 607 673 ;
+C 85 ; WX 690 ; N Upsilon ; B -8 0 694 673 ;
+C 86 ; WX 439 ; N sigma1 ; B 40 -233 436 500 ;
+C 87 ; WX 768 ; N Omega ; B 34 0 736 688 ;
+C 88 ; WX 645 ; N Xi ; B 40 0 599 673 ;
+C 89 ; WX 795 ; N Psi ; B 15 0 781 684 ;
+C 90 ; WX 611 ; N Zeta ; B 44 0 636 673 ;
+C 91 ; WX 333 ; N bracketleft ; B 86 -155 299 674 ;
+C 92 ; WX 863 ; N therefore ; B 163 0 701 487 ;
+C 93 ; WX 333 ; N bracketright ; B 33 -155 246 674 ;
+C 94 ; WX 658 ; N perpendicular ; B 15 0 652 674 ;
+C 95 ; WX 500 ; N underscore ; B -2 -125 502 -75 ;
+C 96 ; WX 500 ; N radicalex ; B 480 881 1090 917 ;
+C 97 ; WX 631 ; N alpha ; B 41 -18 622 500 ;
+C 98 ; WX 549 ; N beta ; B 61 -223 515 741 ;
+C 99 ; WX 549 ; N chi ; B 12 -231 522 499 ;
+C 100 ; WX 494 ; N delta ; B 40 -19 481 740 ;
+C 101 ; WX 439 ; N epsilon ; B 22 -19 427 502 ;
+C 102 ; WX 521 ; N phi ; B 28 -224 492 673 ;
+C 103 ; WX 411 ; N gamma ; B 5 -225 484 499 ;
+C 104 ; WX 603 ; N eta ; B 0 -202 527 514 ;
+C 105 ; WX 329 ; N iota ; B 0 -17 301 503 ;
+C 106 ; WX 603 ; N phi1 ; B 36 -224 587 499 ;
+C 107 ; WX 549 ; N kappa ; B 33 0 558 501 ;
+C 108 ; WX 549 ; N lambda ; B 24 -17 548 739 ;
+C 109 ; WX 576 ; N mu ; B 33 -223 567 500 ;
+C 110 ; WX 521 ; N nu ; B -9 -16 475 507 ;
+C 111 ; WX 549 ; N omicron ; B 35 -19 501 499 ;
+C 112 ; WX 549 ; N pi ; B 10 -19 530 487 ;
+C 113 ; WX 521 ; N theta ; B 43 -17 485 690 ;
+C 114 ; WX 549 ; N rho ; B 50 -230 490 499 ;
+C 115 ; WX 603 ; N sigma ; B 30 -21 588 500 ;
+C 116 ; WX 439 ; N tau ; B 10 -19 418 500 ;
+C 117 ; WX 576 ; N upsilon ; B 7 -18 535 507 ;
+C 118 ; WX 713 ; N omega1 ; B 12 -18 671 583 ;
+C 119 ; WX 686 ; N omega ; B 42 -17 684 500 ;
+C 120 ; WX 493 ; N xi ; B 27 -224 469 766 ;
+C 121 ; WX 686 ; N psi ; B 12 -228 701 500 ;
+C 122 ; WX 494 ; N zeta ; B 60 -225 467 756 ;
+C 123 ; WX 480 ; N braceleft ; B 58 -183 397 673 ;
+C 124 ; WX 200 ; N bar ; B 65 -293 135 707 ;
+C 125 ; WX 480 ; N braceright ; B 79 -183 418 673 ;
+C 126 ; WX 549 ; N similar ; B 17 203 529 307 ;
+C 160 ; WX 750 ; N Euro ; B 20 -12 714 685 ;
+C 161 ; WX 620 ; N Upsilon1 ; B -2 0 610 685 ;
+C 162 ; WX 247 ; N minute ; B 27 459 228 735 ;
+C 163 ; WX 549 ; N lessequal ; B 29 0 526 639 ;
+C 164 ; WX 167 ; N fraction ; B -180 -12 340 677 ;
+C 165 ; WX 713 ; N infinity ; B 26 124 688 404 ;
+C 166 ; WX 500 ; N florin ; B 2 -193 494 686 ;
+C 167 ; WX 753 ; N club ; B 86 -26 660 533 ;
+C 168 ; WX 753 ; N diamond ; B 142 -36 600 550 ;
+C 169 ; WX 753 ; N heart ; B 117 -33 631 532 ;
+C 170 ; WX 753 ; N spade ; B 113 -36 629 548 ;
+C 171 ; WX 1042 ; N arrowboth ; B 24 -15 1024 511 ;
+C 172 ; WX 987 ; N arrowleft ; B 32 -15 942 511 ;
+C 173 ; WX 603 ; N arrowup ; B 45 0 571 910 ;
+C 174 ; WX 987 ; N arrowright ; B 49 -15 959 511 ;
+C 175 ; WX 603 ; N arrowdown ; B 45 -22 571 888 ;
+C 176 ; WX 400 ; N degree ; B 50 385 350 685 ;
+C 177 ; WX 549 ; N plusminus ; B 10 0 539 645 ;
+C 178 ; WX 411 ; N second ; B 20 459 413 737 ;
+C 179 ; WX 549 ; N greaterequal ; B 29 0 526 639 ;
+C 180 ; WX 549 ; N multiply ; B 17 8 533 524 ;
+C 181 ; WX 713 ; N proportional ; B 27 123 639 404 ;
+C 182 ; WX 494 ; N partialdiff ; B 26 -20 462 746 ;
+C 183 ; WX 460 ; N bullet ; B 50 113 410 473 ;
+C 184 ; WX 549 ; N divide ; B 10 71 536 456 ;
+C 185 ; WX 549 ; N notequal ; B 15 -25 540 549 ;
+C 186 ; WX 549 ; N equivalence ; B 14 82 538 443 ;
+C 187 ; WX 549 ; N approxequal ; B 14 135 527 394 ;
+C 188 ; WX 1000 ; N ellipsis ; B 111 -17 889 95 ;
+C 189 ; WX 603 ; N arrowvertex ; B 280 -120 336 1010 ;
+C 190 ; WX 1000 ; N arrowhorizex ; B -60 220 1050 276 ;
+C 191 ; WX 658 ; N carriagereturn ; B 15 -16 602 629 ;
+C 192 ; WX 823 ; N aleph ; B 175 -18 661 658 ;
+C 193 ; WX 686 ; N Ifraktur ; B 10 -53 578 740 ;
+C 194 ; WX 795 ; N Rfraktur ; B 26 -15 759 734 ;
+C 195 ; WX 987 ; N weierstrass ; B 159 -211 870 573 ;
+C 196 ; WX 768 ; N circlemultiply ; B 43 -17 733 673 ;
+C 197 ; WX 768 ; N circleplus ; B 43 -15 733 675 ;
+C 198 ; WX 823 ; N emptyset ; B 39 -24 781 719 ;
+C 199 ; WX 768 ; N intersection ; B 40 0 732 509 ;
+C 200 ; WX 768 ; N union ; B 40 -17 732 492 ;
+C 201 ; WX 713 ; N propersuperset ; B 20 0 673 470 ;
+C 202 ; WX 713 ; N reflexsuperset ; B 20 -125 673 470 ;
+C 203 ; WX 713 ; N notsubset ; B 36 -70 690 540 ;
+C 204 ; WX 713 ; N propersubset ; B 37 0 690 470 ;
+C 205 ; WX 713 ; N reflexsubset ; B 37 -125 690 470 ;
+C 206 ; WX 713 ; N element ; B 45 0 505 468 ;
+C 207 ; WX 713 ; N notelement ; B 45 -58 505 555 ;
+C 208 ; WX 768 ; N angle ; B 26 0 738 673 ;
+C 209 ; WX 713 ; N gradient ; B 36 -19 681 718 ;
+C 210 ; WX 790 ; N registerserif ; B 50 -17 740 673 ;
+C 211 ; WX 790 ; N copyrightserif ; B 51 -15 741 675 ;
+C 212 ; WX 890 ; N trademarkserif ; B 18 293 855 673 ;
+C 213 ; WX 823 ; N product ; B 25 -101 803 751 ;
+C 214 ; WX 549 ; N radical ; B 10 -38 515 917 ;
+C 215 ; WX 250 ; N dotmath ; B 69 210 169 310 ;
+C 216 ; WX 713 ; N logicalnot ; B 15 0 680 288 ;
+C 217 ; WX 603 ; N logicaland ; B 23 0 583 454 ;
+C 218 ; WX 603 ; N logicalor ; B 30 0 578 477 ;
+C 219 ; WX 1042 ; N arrowdblboth ; B 27 -20 1023 510 ;
+C 220 ; WX 987 ; N arrowdblleft ; B 30 -15 939 513 ;
+C 221 ; WX 603 ; N arrowdblup ; B 39 2 567 911 ;
+C 222 ; WX 987 ; N arrowdblright ; B 45 -20 954 508 ;
+C 223 ; WX 603 ; N arrowdbldown ; B 44 -19 572 890 ;
+C 224 ; WX 494 ; N lozenge ; B 18 0 466 745 ;
+C 225 ; WX 329 ; N angleleft ; B 25 -198 306 746 ;
+C 226 ; WX 790 ; N registersans ; B 50 -20 740 670 ;
+C 227 ; WX 790 ; N copyrightsans ; B 49 -15 739 675 ;
+C 228 ; WX 786 ; N trademarksans ; B 5 293 725 673 ;
+C 229 ; WX 713 ; N summation ; B 14 -108 695 752 ;
+C 230 ; WX 384 ; N parenlefttp ; B 24 -293 436 926 ;
+C 231 ; WX 384 ; N parenleftex ; B 24 -85 108 925 ;
+C 232 ; WX 384 ; N parenleftbt ; B 24 -293 436 926 ;
+C 233 ; WX 384 ; N bracketlefttp ; B 0 -80 349 926 ;
+C 234 ; WX 384 ; N bracketleftex ; B 0 -79 77 925 ;
+C 235 ; WX 384 ; N bracketleftbt ; B 0 -80 349 926 ;
+C 236 ; WX 494 ; N bracelefttp ; B 209 -85 445 925 ;
+C 237 ; WX 494 ; N braceleftmid ; B 20 -85 284 935 ;
+C 238 ; WX 494 ; N braceleftbt ; B 209 -75 445 935 ;
+C 239 ; WX 494 ; N braceex ; B 209 -85 284 935 ;
+C 241 ; WX 329 ; N angleright ; B 21 -198 302 746 ;
+C 242 ; WX 274 ; N integral ; B 2 -107 291 916 ;
+C 243 ; WX 686 ; N integraltp ; B 308 -88 675 920 ;
+C 244 ; WX 686 ; N integralex ; B 308 -88 378 975 ;
+C 245 ; WX 686 ; N integralbt ; B 11 -87 378 921 ;
+C 246 ; WX 384 ; N parenrighttp ; B 54 -293 466 926 ;
+C 247 ; WX 384 ; N parenrightex ; B 382 -85 466 925 ;
+C 248 ; WX 384 ; N parenrightbt ; B 54 -293 466 926 ;
+C 249 ; WX 384 ; N bracketrighttp ; B 22 -80 371 926 ;
+C 250 ; WX 384 ; N bracketrightex ; B 294 -79 371 925 ;
+C 251 ; WX 384 ; N bracketrightbt ; B 22 -80 371 926 ;
+C 252 ; WX 494 ; N bracerighttp ; B 48 -85 284 925 ;
+C 253 ; WX 494 ; N bracerightmid ; B 209 -85 473 935 ;
+C 254 ; WX 494 ; N bracerightbt ; B 48 -75 284 935 ;
+C -1 ; WX 790 ; N apple ; B 56 -3 733 808 ;
+EndCharMetrics
+EndFontMetrics
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Times-Bold.afm b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Times-Bold.afm
new file mode 100755
index 00000000..559ebaeb
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Times-Bold.afm
@@ -0,0 +1,2588 @@
+StartFontMetrics 4.1
+Comment Copyright (c) 1985, 1987, 1989, 1990, 1993, 1997 Adobe Systems Incorporated. All Rights Reserved.
+Comment Creation Date: Thu May 1 12:52:56 1997
+Comment UniqueID 43065
+Comment VMusage 41636 52661
+FontName Times-Bold
+FullName Times Bold
+FamilyName Times
+Weight Bold
+ItalicAngle 0
+IsFixedPitch false
+CharacterSet ExtendedRoman
+FontBBox -168 -218 1000 935
+UnderlinePosition -100
+UnderlineThickness 50
+Version 002.000
+Notice Copyright (c) 1985, 1987, 1989, 1990, 1993, 1997 Adobe Systems Incorporated. All Rights Reserved.Times is a trademark of Linotype-Hell AG and/or its subsidiaries.
+EncodingScheme AdobeStandardEncoding
+CapHeight 676
+XHeight 461
+Ascender 683
+Descender -217
+StdHW 44
+StdVW 139
+StartCharMetrics 315
+C 32 ; WX 250 ; N space ; B 0 0 0 0 ;
+C 33 ; WX 333 ; N exclam ; B 81 -13 251 691 ;
+C 34 ; WX 555 ; N quotedbl ; B 83 404 472 691 ;
+C 35 ; WX 500 ; N numbersign ; B 4 0 496 700 ;
+C 36 ; WX 500 ; N dollar ; B 29 -99 472 750 ;
+C 37 ; WX 1000 ; N percent ; B 124 -14 877 692 ;
+C 38 ; WX 833 ; N ampersand ; B 62 -16 787 691 ;
+C 39 ; WX 333 ; N quoteright ; B 79 356 263 691 ;
+C 40 ; WX 333 ; N parenleft ; B 46 -168 306 694 ;
+C 41 ; WX 333 ; N parenright ; B 27 -168 287 694 ;
+C 42 ; WX 500 ; N asterisk ; B 56 255 447 691 ;
+C 43 ; WX 570 ; N plus ; B 33 0 537 506 ;
+C 44 ; WX 250 ; N comma ; B 39 -180 223 155 ;
+C 45 ; WX 333 ; N hyphen ; B 44 171 287 287 ;
+C 46 ; WX 250 ; N period ; B 41 -13 210 156 ;
+C 47 ; WX 278 ; N slash ; B -24 -19 302 691 ;
+C 48 ; WX 500 ; N zero ; B 24 -13 476 688 ;
+C 49 ; WX 500 ; N one ; B 65 0 442 688 ;
+C 50 ; WX 500 ; N two ; B 17 0 478 688 ;
+C 51 ; WX 500 ; N three ; B 16 -14 468 688 ;
+C 52 ; WX 500 ; N four ; B 19 0 475 688 ;
+C 53 ; WX 500 ; N five ; B 22 -8 470 676 ;
+C 54 ; WX 500 ; N six ; B 28 -13 475 688 ;
+C 55 ; WX 500 ; N seven ; B 17 0 477 676 ;
+C 56 ; WX 500 ; N eight ; B 28 -13 472 688 ;
+C 57 ; WX 500 ; N nine ; B 26 -13 473 688 ;
+C 58 ; WX 333 ; N colon ; B 82 -13 251 472 ;
+C 59 ; WX 333 ; N semicolon ; B 82 -180 266 472 ;
+C 60 ; WX 570 ; N less ; B 31 -8 539 514 ;
+C 61 ; WX 570 ; N equal ; B 33 107 537 399 ;
+C 62 ; WX 570 ; N greater ; B 31 -8 539 514 ;
+C 63 ; WX 500 ; N question ; B 57 -13 445 689 ;
+C 64 ; WX 930 ; N at ; B 108 -19 822 691 ;
+C 65 ; WX 722 ; N A ; B 9 0 689 690 ;
+C 66 ; WX 667 ; N B ; B 16 0 619 676 ;
+C 67 ; WX 722 ; N C ; B 49 -19 687 691 ;
+C 68 ; WX 722 ; N D ; B 14 0 690 676 ;
+C 69 ; WX 667 ; N E ; B 16 0 641 676 ;
+C 70 ; WX 611 ; N F ; B 16 0 583 676 ;
+C 71 ; WX 778 ; N G ; B 37 -19 755 691 ;
+C 72 ; WX 778 ; N H ; B 21 0 759 676 ;
+C 73 ; WX 389 ; N I ; B 20 0 370 676 ;
+C 74 ; WX 500 ; N J ; B 3 -96 479 676 ;
+C 75 ; WX 778 ; N K ; B 30 0 769 676 ;
+C 76 ; WX 667 ; N L ; B 19 0 638 676 ;
+C 77 ; WX 944 ; N M ; B 14 0 921 676 ;
+C 78 ; WX 722 ; N N ; B 16 -18 701 676 ;
+C 79 ; WX 778 ; N O ; B 35 -19 743 691 ;
+C 80 ; WX 611 ; N P ; B 16 0 600 676 ;
+C 81 ; WX 778 ; N Q ; B 35 -176 743 691 ;
+C 82 ; WX 722 ; N R ; B 26 0 715 676 ;
+C 83 ; WX 556 ; N S ; B 35 -19 513 692 ;
+C 84 ; WX 667 ; N T ; B 31 0 636 676 ;
+C 85 ; WX 722 ; N U ; B 16 -19 701 676 ;
+C 86 ; WX 722 ; N V ; B 16 -18 701 676 ;
+C 87 ; WX 1000 ; N W ; B 19 -15 981 676 ;
+C 88 ; WX 722 ; N X ; B 16 0 699 676 ;
+C 89 ; WX 722 ; N Y ; B 15 0 699 676 ;
+C 90 ; WX 667 ; N Z ; B 28 0 634 676 ;
+C 91 ; WX 333 ; N bracketleft ; B 67 -149 301 678 ;
+C 92 ; WX 278 ; N backslash ; B -25 -19 303 691 ;
+C 93 ; WX 333 ; N bracketright ; B 32 -149 266 678 ;
+C 94 ; WX 581 ; N asciicircum ; B 73 311 509 676 ;
+C 95 ; WX 500 ; N underscore ; B 0 -125 500 -75 ;
+C 96 ; WX 333 ; N quoteleft ; B 70 356 254 691 ;
+C 97 ; WX 500 ; N a ; B 25 -14 488 473 ;
+C 98 ; WX 556 ; N b ; B 17 -14 521 676 ;
+C 99 ; WX 444 ; N c ; B 25 -14 430 473 ;
+C 100 ; WX 556 ; N d ; B 25 -14 534 676 ;
+C 101 ; WX 444 ; N e ; B 25 -14 426 473 ;
+C 102 ; WX 333 ; N f ; B 14 0 389 691 ; L i fi ; L l fl ;
+C 103 ; WX 500 ; N g ; B 28 -206 483 473 ;
+C 104 ; WX 556 ; N h ; B 16 0 534 676 ;
+C 105 ; WX 278 ; N i ; B 16 0 255 691 ;
+C 106 ; WX 333 ; N j ; B -57 -203 263 691 ;
+C 107 ; WX 556 ; N k ; B 22 0 543 676 ;
+C 108 ; WX 278 ; N l ; B 16 0 255 676 ;
+C 109 ; WX 833 ; N m ; B 16 0 814 473 ;
+C 110 ; WX 556 ; N n ; B 21 0 539 473 ;
+C 111 ; WX 500 ; N o ; B 25 -14 476 473 ;
+C 112 ; WX 556 ; N p ; B 19 -205 524 473 ;
+C 113 ; WX 556 ; N q ; B 34 -205 536 473 ;
+C 114 ; WX 444 ; N r ; B 29 0 434 473 ;
+C 115 ; WX 389 ; N s ; B 25 -14 361 473 ;
+C 116 ; WX 333 ; N t ; B 20 -12 332 630 ;
+C 117 ; WX 556 ; N u ; B 16 -14 537 461 ;
+C 118 ; WX 500 ; N v ; B 21 -14 485 461 ;
+C 119 ; WX 722 ; N w ; B 23 -14 707 461 ;
+C 120 ; WX 500 ; N x ; B 12 0 484 461 ;
+C 121 ; WX 500 ; N y ; B 16 -205 480 461 ;
+C 122 ; WX 444 ; N z ; B 21 0 420 461 ;
+C 123 ; WX 394 ; N braceleft ; B 22 -175 340 698 ;
+C 124 ; WX 220 ; N bar ; B 66 -218 154 782 ;
+C 125 ; WX 394 ; N braceright ; B 54 -175 372 698 ;
+C 126 ; WX 520 ; N asciitilde ; B 29 173 491 333 ;
+C 161 ; WX 333 ; N exclamdown ; B 82 -203 252 501 ;
+C 162 ; WX 500 ; N cent ; B 53 -140 458 588 ;
+C 163 ; WX 500 ; N sterling ; B 21 -14 477 684 ;
+C 164 ; WX 167 ; N fraction ; B -168 -12 329 688 ;
+C 165 ; WX 500 ; N yen ; B -64 0 547 676 ;
+C 166 ; WX 500 ; N florin ; B 0 -155 498 706 ;
+C 167 ; WX 500 ; N section ; B 57 -132 443 691 ;
+C 168 ; WX 500 ; N currency ; B -26 61 526 613 ;
+C 169 ; WX 278 ; N quotesingle ; B 75 404 204 691 ;
+C 170 ; WX 500 ; N quotedblleft ; B 32 356 486 691 ;
+C 171 ; WX 500 ; N guillemotleft ; B 23 36 473 415 ;
+C 172 ; WX 333 ; N guilsinglleft ; B 51 36 305 415 ;
+C 173 ; WX 333 ; N guilsinglright ; B 28 36 282 415 ;
+C 174 ; WX 556 ; N fi ; B 14 0 536 691 ;
+C 175 ; WX 556 ; N fl ; B 14 0 536 691 ;
+C 177 ; WX 500 ; N endash ; B 0 181 500 271 ;
+C 178 ; WX 500 ; N dagger ; B 47 -134 453 691 ;
+C 179 ; WX 500 ; N daggerdbl ; B 45 -132 456 691 ;
+C 180 ; WX 250 ; N periodcentered ; B 41 248 210 417 ;
+C 182 ; WX 540 ; N paragraph ; B 0 -186 519 676 ;
+C 183 ; WX 350 ; N bullet ; B 35 198 315 478 ;
+C 184 ; WX 333 ; N quotesinglbase ; B 79 -180 263 155 ;
+C 185 ; WX 500 ; N quotedblbase ; B 14 -180 468 155 ;
+C 186 ; WX 500 ; N quotedblright ; B 14 356 468 691 ;
+C 187 ; WX 500 ; N guillemotright ; B 27 36 477 415 ;
+C 188 ; WX 1000 ; N ellipsis ; B 82 -13 917 156 ;
+C 189 ; WX 1000 ; N perthousand ; B 7 -29 995 706 ;
+C 191 ; WX 500 ; N questiondown ; B 55 -201 443 501 ;
+C 193 ; WX 333 ; N grave ; B 8 528 246 713 ;
+C 194 ; WX 333 ; N acute ; B 86 528 324 713 ;
+C 195 ; WX 333 ; N circumflex ; B -2 528 335 704 ;
+C 196 ; WX 333 ; N tilde ; B -16 547 349 674 ;
+C 197 ; WX 333 ; N macron ; B 1 565 331 637 ;
+C 198 ; WX 333 ; N breve ; B 15 528 318 691 ;
+C 199 ; WX 333 ; N dotaccent ; B 103 536 258 691 ;
+C 200 ; WX 333 ; N dieresis ; B -2 537 335 667 ;
+C 202 ; WX 333 ; N ring ; B 60 527 273 740 ;
+C 203 ; WX 333 ; N cedilla ; B 68 -218 294 0 ;
+C 205 ; WX 333 ; N hungarumlaut ; B -13 528 425 713 ;
+C 206 ; WX 333 ; N ogonek ; B 90 -193 319 24 ;
+C 207 ; WX 333 ; N caron ; B -2 528 335 704 ;
+C 208 ; WX 1000 ; N emdash ; B 0 181 1000 271 ;
+C 225 ; WX 1000 ; N AE ; B 4 0 951 676 ;
+C 227 ; WX 300 ; N ordfeminine ; B -1 397 301 688 ;
+C 232 ; WX 667 ; N Lslash ; B 19 0 638 676 ;
+C 233 ; WX 778 ; N Oslash ; B 35 -74 743 737 ;
+C 234 ; WX 1000 ; N OE ; B 22 -5 981 684 ;
+C 235 ; WX 330 ; N ordmasculine ; B 18 397 312 688 ;
+C 241 ; WX 722 ; N ae ; B 33 -14 693 473 ;
+C 245 ; WX 278 ; N dotlessi ; B 16 0 255 461 ;
+C 248 ; WX 278 ; N lslash ; B -22 0 303 676 ;
+C 249 ; WX 500 ; N oslash ; B 25 -92 476 549 ;
+C 250 ; WX 722 ; N oe ; B 22 -14 696 473 ;
+C 251 ; WX 556 ; N germandbls ; B 19 -12 517 691 ;
+C -1 ; WX 389 ; N Idieresis ; B 20 0 370 877 ;
+C -1 ; WX 444 ; N eacute ; B 25 -14 426 713 ;
+C -1 ; WX 500 ; N abreve ; B 25 -14 488 691 ;
+C -1 ; WX 556 ; N uhungarumlaut ; B 16 -14 557 713 ;
+C -1 ; WX 444 ; N ecaron ; B 25 -14 426 704 ;
+C -1 ; WX 722 ; N Ydieresis ; B 15 0 699 877 ;
+C -1 ; WX 570 ; N divide ; B 33 -31 537 537 ;
+C -1 ; WX 722 ; N Yacute ; B 15 0 699 923 ;
+C -1 ; WX 722 ; N Acircumflex ; B 9 0 689 914 ;
+C -1 ; WX 500 ; N aacute ; B 25 -14 488 713 ;
+C -1 ; WX 722 ; N Ucircumflex ; B 16 -19 701 914 ;
+C -1 ; WX 500 ; N yacute ; B 16 -205 480 713 ;
+C -1 ; WX 389 ; N scommaaccent ; B 25 -218 361 473 ;
+C -1 ; WX 444 ; N ecircumflex ; B 25 -14 426 704 ;
+C -1 ; WX 722 ; N Uring ; B 16 -19 701 935 ;
+C -1 ; WX 722 ; N Udieresis ; B 16 -19 701 877 ;
+C -1 ; WX 500 ; N aogonek ; B 25 -193 504 473 ;
+C -1 ; WX 722 ; N Uacute ; B 16 -19 701 923 ;
+C -1 ; WX 556 ; N uogonek ; B 16 -193 539 461 ;
+C -1 ; WX 667 ; N Edieresis ; B 16 0 641 877 ;
+C -1 ; WX 722 ; N Dcroat ; B 6 0 690 676 ;
+C -1 ; WX 250 ; N commaaccent ; B 47 -218 203 -50 ;
+C -1 ; WX 747 ; N copyright ; B 26 -19 721 691 ;
+C -1 ; WX 667 ; N Emacron ; B 16 0 641 847 ;
+C -1 ; WX 444 ; N ccaron ; B 25 -14 430 704 ;
+C -1 ; WX 500 ; N aring ; B 25 -14 488 740 ;
+C -1 ; WX 722 ; N Ncommaaccent ; B 16 -188 701 676 ;
+C -1 ; WX 278 ; N lacute ; B 16 0 297 923 ;
+C -1 ; WX 500 ; N agrave ; B 25 -14 488 713 ;
+C -1 ; WX 667 ; N Tcommaaccent ; B 31 -218 636 676 ;
+C -1 ; WX 722 ; N Cacute ; B 49 -19 687 923 ;
+C -1 ; WX 500 ; N atilde ; B 25 -14 488 674 ;
+C -1 ; WX 667 ; N Edotaccent ; B 16 0 641 901 ;
+C -1 ; WX 389 ; N scaron ; B 25 -14 363 704 ;
+C -1 ; WX 389 ; N scedilla ; B 25 -218 361 473 ;
+C -1 ; WX 278 ; N iacute ; B 16 0 289 713 ;
+C -1 ; WX 494 ; N lozenge ; B 10 0 484 745 ;
+C -1 ; WX 722 ; N Rcaron ; B 26 0 715 914 ;
+C -1 ; WX 778 ; N Gcommaaccent ; B 37 -218 755 691 ;
+C -1 ; WX 556 ; N ucircumflex ; B 16 -14 537 704 ;
+C -1 ; WX 500 ; N acircumflex ; B 25 -14 488 704 ;
+C -1 ; WX 722 ; N Amacron ; B 9 0 689 847 ;
+C -1 ; WX 444 ; N rcaron ; B 29 0 434 704 ;
+C -1 ; WX 444 ; N ccedilla ; B 25 -218 430 473 ;
+C -1 ; WX 667 ; N Zdotaccent ; B 28 0 634 901 ;
+C -1 ; WX 611 ; N Thorn ; B 16 0 600 676 ;
+C -1 ; WX 778 ; N Omacron ; B 35 -19 743 847 ;
+C -1 ; WX 722 ; N Racute ; B 26 0 715 923 ;
+C -1 ; WX 556 ; N Sacute ; B 35 -19 513 923 ;
+C -1 ; WX 672 ; N dcaron ; B 25 -14 681 682 ;
+C -1 ; WX 722 ; N Umacron ; B 16 -19 701 847 ;
+C -1 ; WX 556 ; N uring ; B 16 -14 537 740 ;
+C -1 ; WX 300 ; N threesuperior ; B 3 268 297 688 ;
+C -1 ; WX 778 ; N Ograve ; B 35 -19 743 923 ;
+C -1 ; WX 722 ; N Agrave ; B 9 0 689 923 ;
+C -1 ; WX 722 ; N Abreve ; B 9 0 689 901 ;
+C -1 ; WX 570 ; N multiply ; B 48 16 522 490 ;
+C -1 ; WX 556 ; N uacute ; B 16 -14 537 713 ;
+C -1 ; WX 667 ; N Tcaron ; B 31 0 636 914 ;
+C -1 ; WX 494 ; N partialdiff ; B 11 -21 494 750 ;
+C -1 ; WX 500 ; N ydieresis ; B 16 -205 480 667 ;
+C -1 ; WX 722 ; N Nacute ; B 16 -18 701 923 ;
+C -1 ; WX 278 ; N icircumflex ; B -37 0 300 704 ;
+C -1 ; WX 667 ; N Ecircumflex ; B 16 0 641 914 ;
+C -1 ; WX 500 ; N adieresis ; B 25 -14 488 667 ;
+C -1 ; WX 444 ; N edieresis ; B 25 -14 426 667 ;
+C -1 ; WX 444 ; N cacute ; B 25 -14 430 713 ;
+C -1 ; WX 556 ; N nacute ; B 21 0 539 713 ;
+C -1 ; WX 556 ; N umacron ; B 16 -14 537 637 ;
+C -1 ; WX 722 ; N Ncaron ; B 16 -18 701 914 ;
+C -1 ; WX 389 ; N Iacute ; B 20 0 370 923 ;
+C -1 ; WX 570 ; N plusminus ; B 33 0 537 506 ;
+C -1 ; WX 220 ; N brokenbar ; B 66 -143 154 707 ;
+C -1 ; WX 747 ; N registered ; B 26 -19 721 691 ;
+C -1 ; WX 778 ; N Gbreve ; B 37 -19 755 901 ;
+C -1 ; WX 389 ; N Idotaccent ; B 20 0 370 901 ;
+C -1 ; WX 600 ; N summation ; B 14 -10 585 706 ;
+C -1 ; WX 667 ; N Egrave ; B 16 0 641 923 ;
+C -1 ; WX 444 ; N racute ; B 29 0 434 713 ;
+C -1 ; WX 500 ; N omacron ; B 25 -14 476 637 ;
+C -1 ; WX 667 ; N Zacute ; B 28 0 634 923 ;
+C -1 ; WX 667 ; N Zcaron ; B 28 0 634 914 ;
+C -1 ; WX 549 ; N greaterequal ; B 26 0 523 704 ;
+C -1 ; WX 722 ; N Eth ; B 6 0 690 676 ;
+C -1 ; WX 722 ; N Ccedilla ; B 49 -218 687 691 ;
+C -1 ; WX 278 ; N lcommaaccent ; B 16 -218 255 676 ;
+C -1 ; WX 416 ; N tcaron ; B 20 -12 425 815 ;
+C -1 ; WX 444 ; N eogonek ; B 25 -193 426 473 ;
+C -1 ; WX 722 ; N Uogonek ; B 16 -193 701 676 ;
+C -1 ; WX 722 ; N Aacute ; B 9 0 689 923 ;
+C -1 ; WX 722 ; N Adieresis ; B 9 0 689 877 ;
+C -1 ; WX 444 ; N egrave ; B 25 -14 426 713 ;
+C -1 ; WX 444 ; N zacute ; B 21 0 420 713 ;
+C -1 ; WX 278 ; N iogonek ; B 16 -193 274 691 ;
+C -1 ; WX 778 ; N Oacute ; B 35 -19 743 923 ;
+C -1 ; WX 500 ; N oacute ; B 25 -14 476 713 ;
+C -1 ; WX 500 ; N amacron ; B 25 -14 488 637 ;
+C -1 ; WX 389 ; N sacute ; B 25 -14 361 713 ;
+C -1 ; WX 278 ; N idieresis ; B -37 0 300 667 ;
+C -1 ; WX 778 ; N Ocircumflex ; B 35 -19 743 914 ;
+C -1 ; WX 722 ; N Ugrave ; B 16 -19 701 923 ;
+C -1 ; WX 612 ; N Delta ; B 6 0 608 688 ;
+C -1 ; WX 556 ; N thorn ; B 19 -205 524 676 ;
+C -1 ; WX 300 ; N twosuperior ; B 0 275 300 688 ;
+C -1 ; WX 778 ; N Odieresis ; B 35 -19 743 877 ;
+C -1 ; WX 556 ; N mu ; B 33 -206 536 461 ;
+C -1 ; WX 278 ; N igrave ; B -27 0 255 713 ;
+C -1 ; WX 500 ; N ohungarumlaut ; B 25 -14 529 713 ;
+C -1 ; WX 667 ; N Eogonek ; B 16 -193 644 676 ;
+C -1 ; WX 556 ; N dcroat ; B 25 -14 534 676 ;
+C -1 ; WX 750 ; N threequarters ; B 23 -12 733 688 ;
+C -1 ; WX 556 ; N Scedilla ; B 35 -218 513 692 ;
+C -1 ; WX 394 ; N lcaron ; B 16 0 412 682 ;
+C -1 ; WX 778 ; N Kcommaaccent ; B 30 -218 769 676 ;
+C -1 ; WX 667 ; N Lacute ; B 19 0 638 923 ;
+C -1 ; WX 1000 ; N trademark ; B 24 271 977 676 ;
+C -1 ; WX 444 ; N edotaccent ; B 25 -14 426 691 ;
+C -1 ; WX 389 ; N Igrave ; B 20 0 370 923 ;
+C -1 ; WX 389 ; N Imacron ; B 20 0 370 847 ;
+C -1 ; WX 667 ; N Lcaron ; B 19 0 652 682 ;
+C -1 ; WX 750 ; N onehalf ; B -7 -12 775 688 ;
+C -1 ; WX 549 ; N lessequal ; B 29 0 526 704 ;
+C -1 ; WX 500 ; N ocircumflex ; B 25 -14 476 704 ;
+C -1 ; WX 556 ; N ntilde ; B 21 0 539 674 ;
+C -1 ; WX 722 ; N Uhungarumlaut ; B 16 -19 701 923 ;
+C -1 ; WX 667 ; N Eacute ; B 16 0 641 923 ;
+C -1 ; WX 444 ; N emacron ; B 25 -14 426 637 ;
+C -1 ; WX 500 ; N gbreve ; B 28 -206 483 691 ;
+C -1 ; WX 750 ; N onequarter ; B 28 -12 743 688 ;
+C -1 ; WX 556 ; N Scaron ; B 35 -19 513 914 ;
+C -1 ; WX 556 ; N Scommaaccent ; B 35 -218 513 692 ;
+C -1 ; WX 778 ; N Ohungarumlaut ; B 35 -19 743 923 ;
+C -1 ; WX 400 ; N degree ; B 57 402 343 688 ;
+C -1 ; WX 500 ; N ograve ; B 25 -14 476 713 ;
+C -1 ; WX 722 ; N Ccaron ; B 49 -19 687 914 ;
+C -1 ; WX 556 ; N ugrave ; B 16 -14 537 713 ;
+C -1 ; WX 549 ; N radical ; B 10 -46 512 850 ;
+C -1 ; WX 722 ; N Dcaron ; B 14 0 690 914 ;
+C -1 ; WX 444 ; N rcommaaccent ; B 29 -218 434 473 ;
+C -1 ; WX 722 ; N Ntilde ; B 16 -18 701 884 ;
+C -1 ; WX 500 ; N otilde ; B 25 -14 476 674 ;
+C -1 ; WX 722 ; N Rcommaaccent ; B 26 -218 715 676 ;
+C -1 ; WX 667 ; N Lcommaaccent ; B 19 -218 638 676 ;
+C -1 ; WX 722 ; N Atilde ; B 9 0 689 884 ;
+C -1 ; WX 722 ; N Aogonek ; B 9 -193 699 690 ;
+C -1 ; WX 722 ; N Aring ; B 9 0 689 935 ;
+C -1 ; WX 778 ; N Otilde ; B 35 -19 743 884 ;
+C -1 ; WX 444 ; N zdotaccent ; B 21 0 420 691 ;
+C -1 ; WX 667 ; N Ecaron ; B 16 0 641 914 ;
+C -1 ; WX 389 ; N Iogonek ; B 20 -193 370 676 ;
+C -1 ; WX 556 ; N kcommaaccent ; B 22 -218 543 676 ;
+C -1 ; WX 570 ; N minus ; B 33 209 537 297 ;
+C -1 ; WX 389 ; N Icircumflex ; B 20 0 370 914 ;
+C -1 ; WX 556 ; N ncaron ; B 21 0 539 704 ;
+C -1 ; WX 333 ; N tcommaaccent ; B 20 -218 332 630 ;
+C -1 ; WX 570 ; N logicalnot ; B 33 108 537 399 ;
+C -1 ; WX 500 ; N odieresis ; B 25 -14 476 667 ;
+C -1 ; WX 556 ; N udieresis ; B 16 -14 537 667 ;
+C -1 ; WX 549 ; N notequal ; B 15 -49 540 570 ;
+C -1 ; WX 500 ; N gcommaaccent ; B 28 -206 483 829 ;
+C -1 ; WX 500 ; N eth ; B 25 -14 476 691 ;
+C -1 ; WX 444 ; N zcaron ; B 21 0 420 704 ;
+C -1 ; WX 556 ; N ncommaaccent ; B 21 -218 539 473 ;
+C -1 ; WX 300 ; N onesuperior ; B 28 275 273 688 ;
+C -1 ; WX 278 ; N imacron ; B -8 0 272 637 ;
+C -1 ; WX 500 ; N Euro ; B 0 0 0 0 ;
+EndCharMetrics
+StartKernData
+StartKernPairs 2242
+KPX A C -55
+KPX A Cacute -55
+KPX A Ccaron -55
+KPX A Ccedilla -55
+KPX A G -55
+KPX A Gbreve -55
+KPX A Gcommaaccent -55
+KPX A O -45
+KPX A Oacute -45
+KPX A Ocircumflex -45
+KPX A Odieresis -45
+KPX A Ograve -45
+KPX A Ohungarumlaut -45
+KPX A Omacron -45
+KPX A Oslash -45
+KPX A Otilde -45
+KPX A Q -45
+KPX A T -95
+KPX A Tcaron -95
+KPX A Tcommaaccent -95
+KPX A U -50
+KPX A Uacute -50
+KPX A Ucircumflex -50
+KPX A Udieresis -50
+KPX A Ugrave -50
+KPX A Uhungarumlaut -50
+KPX A Umacron -50
+KPX A Uogonek -50
+KPX A Uring -50
+KPX A V -145
+KPX A W -130
+KPX A Y -100
+KPX A Yacute -100
+KPX A Ydieresis -100
+KPX A p -25
+KPX A quoteright -74
+KPX A u -50
+KPX A uacute -50
+KPX A ucircumflex -50
+KPX A udieresis -50
+KPX A ugrave -50
+KPX A uhungarumlaut -50
+KPX A umacron -50
+KPX A uogonek -50
+KPX A uring -50
+KPX A v -100
+KPX A w -90
+KPX A y -74
+KPX A yacute -74
+KPX A ydieresis -74
+KPX Aacute C -55
+KPX Aacute Cacute -55
+KPX Aacute Ccaron -55
+KPX Aacute Ccedilla -55
+KPX Aacute G -55
+KPX Aacute Gbreve -55
+KPX Aacute Gcommaaccent -55
+KPX Aacute O -45
+KPX Aacute Oacute -45
+KPX Aacute Ocircumflex -45
+KPX Aacute Odieresis -45
+KPX Aacute Ograve -45
+KPX Aacute Ohungarumlaut -45
+KPX Aacute Omacron -45
+KPX Aacute Oslash -45
+KPX Aacute Otilde -45
+KPX Aacute Q -45
+KPX Aacute T -95
+KPX Aacute Tcaron -95
+KPX Aacute Tcommaaccent -95
+KPX Aacute U -50
+KPX Aacute Uacute -50
+KPX Aacute Ucircumflex -50
+KPX Aacute Udieresis -50
+KPX Aacute Ugrave -50
+KPX Aacute Uhungarumlaut -50
+KPX Aacute Umacron -50
+KPX Aacute Uogonek -50
+KPX Aacute Uring -50
+KPX Aacute V -145
+KPX Aacute W -130
+KPX Aacute Y -100
+KPX Aacute Yacute -100
+KPX Aacute Ydieresis -100
+KPX Aacute p -25
+KPX Aacute quoteright -74
+KPX Aacute u -50
+KPX Aacute uacute -50
+KPX Aacute ucircumflex -50
+KPX Aacute udieresis -50
+KPX Aacute ugrave -50
+KPX Aacute uhungarumlaut -50
+KPX Aacute umacron -50
+KPX Aacute uogonek -50
+KPX Aacute uring -50
+KPX Aacute v -100
+KPX Aacute w -90
+KPX Aacute y -74
+KPX Aacute yacute -74
+KPX Aacute ydieresis -74
+KPX Abreve C -55
+KPX Abreve Cacute -55
+KPX Abreve Ccaron -55
+KPX Abreve Ccedilla -55
+KPX Abreve G -55
+KPX Abreve Gbreve -55
+KPX Abreve Gcommaaccent -55
+KPX Abreve O -45
+KPX Abreve Oacute -45
+KPX Abreve Ocircumflex -45
+KPX Abreve Odieresis -45
+KPX Abreve Ograve -45
+KPX Abreve Ohungarumlaut -45
+KPX Abreve Omacron -45
+KPX Abreve Oslash -45
+KPX Abreve Otilde -45
+KPX Abreve Q -45
+KPX Abreve T -95
+KPX Abreve Tcaron -95
+KPX Abreve Tcommaaccent -95
+KPX Abreve U -50
+KPX Abreve Uacute -50
+KPX Abreve Ucircumflex -50
+KPX Abreve Udieresis -50
+KPX Abreve Ugrave -50
+KPX Abreve Uhungarumlaut -50
+KPX Abreve Umacron -50
+KPX Abreve Uogonek -50
+KPX Abreve Uring -50
+KPX Abreve V -145
+KPX Abreve W -130
+KPX Abreve Y -100
+KPX Abreve Yacute -100
+KPX Abreve Ydieresis -100
+KPX Abreve p -25
+KPX Abreve quoteright -74
+KPX Abreve u -50
+KPX Abreve uacute -50
+KPX Abreve ucircumflex -50
+KPX Abreve udieresis -50
+KPX Abreve ugrave -50
+KPX Abreve uhungarumlaut -50
+KPX Abreve umacron -50
+KPX Abreve uogonek -50
+KPX Abreve uring -50
+KPX Abreve v -100
+KPX Abreve w -90
+KPX Abreve y -74
+KPX Abreve yacute -74
+KPX Abreve ydieresis -74
+KPX Acircumflex C -55
+KPX Acircumflex Cacute -55
+KPX Acircumflex Ccaron -55
+KPX Acircumflex Ccedilla -55
+KPX Acircumflex G -55
+KPX Acircumflex Gbreve -55
+KPX Acircumflex Gcommaaccent -55
+KPX Acircumflex O -45
+KPX Acircumflex Oacute -45
+KPX Acircumflex Ocircumflex -45
+KPX Acircumflex Odieresis -45
+KPX Acircumflex Ograve -45
+KPX Acircumflex Ohungarumlaut -45
+KPX Acircumflex Omacron -45
+KPX Acircumflex Oslash -45
+KPX Acircumflex Otilde -45
+KPX Acircumflex Q -45
+KPX Acircumflex T -95
+KPX Acircumflex Tcaron -95
+KPX Acircumflex Tcommaaccent -95
+KPX Acircumflex U -50
+KPX Acircumflex Uacute -50
+KPX Acircumflex Ucircumflex -50
+KPX Acircumflex Udieresis -50
+KPX Acircumflex Ugrave -50
+KPX Acircumflex Uhungarumlaut -50
+KPX Acircumflex Umacron -50
+KPX Acircumflex Uogonek -50
+KPX Acircumflex Uring -50
+KPX Acircumflex V -145
+KPX Acircumflex W -130
+KPX Acircumflex Y -100
+KPX Acircumflex Yacute -100
+KPX Acircumflex Ydieresis -100
+KPX Acircumflex p -25
+KPX Acircumflex quoteright -74
+KPX Acircumflex u -50
+KPX Acircumflex uacute -50
+KPX Acircumflex ucircumflex -50
+KPX Acircumflex udieresis -50
+KPX Acircumflex ugrave -50
+KPX Acircumflex uhungarumlaut -50
+KPX Acircumflex umacron -50
+KPX Acircumflex uogonek -50
+KPX Acircumflex uring -50
+KPX Acircumflex v -100
+KPX Acircumflex w -90
+KPX Acircumflex y -74
+KPX Acircumflex yacute -74
+KPX Acircumflex ydieresis -74
+KPX Adieresis C -55
+KPX Adieresis Cacute -55
+KPX Adieresis Ccaron -55
+KPX Adieresis Ccedilla -55
+KPX Adieresis G -55
+KPX Adieresis Gbreve -55
+KPX Adieresis Gcommaaccent -55
+KPX Adieresis O -45
+KPX Adieresis Oacute -45
+KPX Adieresis Ocircumflex -45
+KPX Adieresis Odieresis -45
+KPX Adieresis Ograve -45
+KPX Adieresis Ohungarumlaut -45
+KPX Adieresis Omacron -45
+KPX Adieresis Oslash -45
+KPX Adieresis Otilde -45
+KPX Adieresis Q -45
+KPX Adieresis T -95
+KPX Adieresis Tcaron -95
+KPX Adieresis Tcommaaccent -95
+KPX Adieresis U -50
+KPX Adieresis Uacute -50
+KPX Adieresis Ucircumflex -50
+KPX Adieresis Udieresis -50
+KPX Adieresis Ugrave -50
+KPX Adieresis Uhungarumlaut -50
+KPX Adieresis Umacron -50
+KPX Adieresis Uogonek -50
+KPX Adieresis Uring -50
+KPX Adieresis V -145
+KPX Adieresis W -130
+KPX Adieresis Y -100
+KPX Adieresis Yacute -100
+KPX Adieresis Ydieresis -100
+KPX Adieresis p -25
+KPX Adieresis quoteright -74
+KPX Adieresis u -50
+KPX Adieresis uacute -50
+KPX Adieresis ucircumflex -50
+KPX Adieresis udieresis -50
+KPX Adieresis ugrave -50
+KPX Adieresis uhungarumlaut -50
+KPX Adieresis umacron -50
+KPX Adieresis uogonek -50
+KPX Adieresis uring -50
+KPX Adieresis v -100
+KPX Adieresis w -90
+KPX Adieresis y -74
+KPX Adieresis yacute -74
+KPX Adieresis ydieresis -74
+KPX Agrave C -55
+KPX Agrave Cacute -55
+KPX Agrave Ccaron -55
+KPX Agrave Ccedilla -55
+KPX Agrave G -55
+KPX Agrave Gbreve -55
+KPX Agrave Gcommaaccent -55
+KPX Agrave O -45
+KPX Agrave Oacute -45
+KPX Agrave Ocircumflex -45
+KPX Agrave Odieresis -45
+KPX Agrave Ograve -45
+KPX Agrave Ohungarumlaut -45
+KPX Agrave Omacron -45
+KPX Agrave Oslash -45
+KPX Agrave Otilde -45
+KPX Agrave Q -45
+KPX Agrave T -95
+KPX Agrave Tcaron -95
+KPX Agrave Tcommaaccent -95
+KPX Agrave U -50
+KPX Agrave Uacute -50
+KPX Agrave Ucircumflex -50
+KPX Agrave Udieresis -50
+KPX Agrave Ugrave -50
+KPX Agrave Uhungarumlaut -50
+KPX Agrave Umacron -50
+KPX Agrave Uogonek -50
+KPX Agrave Uring -50
+KPX Agrave V -145
+KPX Agrave W -130
+KPX Agrave Y -100
+KPX Agrave Yacute -100
+KPX Agrave Ydieresis -100
+KPX Agrave p -25
+KPX Agrave quoteright -74
+KPX Agrave u -50
+KPX Agrave uacute -50
+KPX Agrave ucircumflex -50
+KPX Agrave udieresis -50
+KPX Agrave ugrave -50
+KPX Agrave uhungarumlaut -50
+KPX Agrave umacron -50
+KPX Agrave uogonek -50
+KPX Agrave uring -50
+KPX Agrave v -100
+KPX Agrave w -90
+KPX Agrave y -74
+KPX Agrave yacute -74
+KPX Agrave ydieresis -74
+KPX Amacron C -55
+KPX Amacron Cacute -55
+KPX Amacron Ccaron -55
+KPX Amacron Ccedilla -55
+KPX Amacron G -55
+KPX Amacron Gbreve -55
+KPX Amacron Gcommaaccent -55
+KPX Amacron O -45
+KPX Amacron Oacute -45
+KPX Amacron Ocircumflex -45
+KPX Amacron Odieresis -45
+KPX Amacron Ograve -45
+KPX Amacron Ohungarumlaut -45
+KPX Amacron Omacron -45
+KPX Amacron Oslash -45
+KPX Amacron Otilde -45
+KPX Amacron Q -45
+KPX Amacron T -95
+KPX Amacron Tcaron -95
+KPX Amacron Tcommaaccent -95
+KPX Amacron U -50
+KPX Amacron Uacute -50
+KPX Amacron Ucircumflex -50
+KPX Amacron Udieresis -50
+KPX Amacron Ugrave -50
+KPX Amacron Uhungarumlaut -50
+KPX Amacron Umacron -50
+KPX Amacron Uogonek -50
+KPX Amacron Uring -50
+KPX Amacron V -145
+KPX Amacron W -130
+KPX Amacron Y -100
+KPX Amacron Yacute -100
+KPX Amacron Ydieresis -100
+KPX Amacron p -25
+KPX Amacron quoteright -74
+KPX Amacron u -50
+KPX Amacron uacute -50
+KPX Amacron ucircumflex -50
+KPX Amacron udieresis -50
+KPX Amacron ugrave -50
+KPX Amacron uhungarumlaut -50
+KPX Amacron umacron -50
+KPX Amacron uogonek -50
+KPX Amacron uring -50
+KPX Amacron v -100
+KPX Amacron w -90
+KPX Amacron y -74
+KPX Amacron yacute -74
+KPX Amacron ydieresis -74
+KPX Aogonek C -55
+KPX Aogonek Cacute -55
+KPX Aogonek Ccaron -55
+KPX Aogonek Ccedilla -55
+KPX Aogonek G -55
+KPX Aogonek Gbreve -55
+KPX Aogonek Gcommaaccent -55
+KPX Aogonek O -45
+KPX Aogonek Oacute -45
+KPX Aogonek Ocircumflex -45
+KPX Aogonek Odieresis -45
+KPX Aogonek Ograve -45
+KPX Aogonek Ohungarumlaut -45
+KPX Aogonek Omacron -45
+KPX Aogonek Oslash -45
+KPX Aogonek Otilde -45
+KPX Aogonek Q -45
+KPX Aogonek T -95
+KPX Aogonek Tcaron -95
+KPX Aogonek Tcommaaccent -95
+KPX Aogonek U -50
+KPX Aogonek Uacute -50
+KPX Aogonek Ucircumflex -50
+KPX Aogonek Udieresis -50
+KPX Aogonek Ugrave -50
+KPX Aogonek Uhungarumlaut -50
+KPX Aogonek Umacron -50
+KPX Aogonek Uogonek -50
+KPX Aogonek Uring -50
+KPX Aogonek V -145
+KPX Aogonek W -130
+KPX Aogonek Y -100
+KPX Aogonek Yacute -100
+KPX Aogonek Ydieresis -100
+KPX Aogonek p -25
+KPX Aogonek quoteright -74
+KPX Aogonek u -50
+KPX Aogonek uacute -50
+KPX Aogonek ucircumflex -50
+KPX Aogonek udieresis -50
+KPX Aogonek ugrave -50
+KPX Aogonek uhungarumlaut -50
+KPX Aogonek umacron -50
+KPX Aogonek uogonek -50
+KPX Aogonek uring -50
+KPX Aogonek v -100
+KPX Aogonek w -90
+KPX Aogonek y -34
+KPX Aogonek yacute -34
+KPX Aogonek ydieresis -34
+KPX Aring C -55
+KPX Aring Cacute -55
+KPX Aring Ccaron -55
+KPX Aring Ccedilla -55
+KPX Aring G -55
+KPX Aring Gbreve -55
+KPX Aring Gcommaaccent -55
+KPX Aring O -45
+KPX Aring Oacute -45
+KPX Aring Ocircumflex -45
+KPX Aring Odieresis -45
+KPX Aring Ograve -45
+KPX Aring Ohungarumlaut -45
+KPX Aring Omacron -45
+KPX Aring Oslash -45
+KPX Aring Otilde -45
+KPX Aring Q -45
+KPX Aring T -95
+KPX Aring Tcaron -95
+KPX Aring Tcommaaccent -95
+KPX Aring U -50
+KPX Aring Uacute -50
+KPX Aring Ucircumflex -50
+KPX Aring Udieresis -50
+KPX Aring Ugrave -50
+KPX Aring Uhungarumlaut -50
+KPX Aring Umacron -50
+KPX Aring Uogonek -50
+KPX Aring Uring -50
+KPX Aring V -145
+KPX Aring W -130
+KPX Aring Y -100
+KPX Aring Yacute -100
+KPX Aring Ydieresis -100
+KPX Aring p -25
+KPX Aring quoteright -74
+KPX Aring u -50
+KPX Aring uacute -50
+KPX Aring ucircumflex -50
+KPX Aring udieresis -50
+KPX Aring ugrave -50
+KPX Aring uhungarumlaut -50
+KPX Aring umacron -50
+KPX Aring uogonek -50
+KPX Aring uring -50
+KPX Aring v -100
+KPX Aring w -90
+KPX Aring y -74
+KPX Aring yacute -74
+KPX Aring ydieresis -74
+KPX Atilde C -55
+KPX Atilde Cacute -55
+KPX Atilde Ccaron -55
+KPX Atilde Ccedilla -55
+KPX Atilde G -55
+KPX Atilde Gbreve -55
+KPX Atilde Gcommaaccent -55
+KPX Atilde O -45
+KPX Atilde Oacute -45
+KPX Atilde Ocircumflex -45
+KPX Atilde Odieresis -45
+KPX Atilde Ograve -45
+KPX Atilde Ohungarumlaut -45
+KPX Atilde Omacron -45
+KPX Atilde Oslash -45
+KPX Atilde Otilde -45
+KPX Atilde Q -45
+KPX Atilde T -95
+KPX Atilde Tcaron -95
+KPX Atilde Tcommaaccent -95
+KPX Atilde U -50
+KPX Atilde Uacute -50
+KPX Atilde Ucircumflex -50
+KPX Atilde Udieresis -50
+KPX Atilde Ugrave -50
+KPX Atilde Uhungarumlaut -50
+KPX Atilde Umacron -50
+KPX Atilde Uogonek -50
+KPX Atilde Uring -50
+KPX Atilde V -145
+KPX Atilde W -130
+KPX Atilde Y -100
+KPX Atilde Yacute -100
+KPX Atilde Ydieresis -100
+KPX Atilde p -25
+KPX Atilde quoteright -74
+KPX Atilde u -50
+KPX Atilde uacute -50
+KPX Atilde ucircumflex -50
+KPX Atilde udieresis -50
+KPX Atilde ugrave -50
+KPX Atilde uhungarumlaut -50
+KPX Atilde umacron -50
+KPX Atilde uogonek -50
+KPX Atilde uring -50
+KPX Atilde v -100
+KPX Atilde w -90
+KPX Atilde y -74
+KPX Atilde yacute -74
+KPX Atilde ydieresis -74
+KPX B A -30
+KPX B Aacute -30
+KPX B Abreve -30
+KPX B Acircumflex -30
+KPX B Adieresis -30
+KPX B Agrave -30
+KPX B Amacron -30
+KPX B Aogonek -30
+KPX B Aring -30
+KPX B Atilde -30
+KPX B U -10
+KPX B Uacute -10
+KPX B Ucircumflex -10
+KPX B Udieresis -10
+KPX B Ugrave -10
+KPX B Uhungarumlaut -10
+KPX B Umacron -10
+KPX B Uogonek -10
+KPX B Uring -10
+KPX D A -35
+KPX D Aacute -35
+KPX D Abreve -35
+KPX D Acircumflex -35
+KPX D Adieresis -35
+KPX D Agrave -35
+KPX D Amacron -35
+KPX D Aogonek -35
+KPX D Aring -35
+KPX D Atilde -35
+KPX D V -40
+KPX D W -40
+KPX D Y -40
+KPX D Yacute -40
+KPX D Ydieresis -40
+KPX D period -20
+KPX Dcaron A -35
+KPX Dcaron Aacute -35
+KPX Dcaron Abreve -35
+KPX Dcaron Acircumflex -35
+KPX Dcaron Adieresis -35
+KPX Dcaron Agrave -35
+KPX Dcaron Amacron -35
+KPX Dcaron Aogonek -35
+KPX Dcaron Aring -35
+KPX Dcaron Atilde -35
+KPX Dcaron V -40
+KPX Dcaron W -40
+KPX Dcaron Y -40
+KPX Dcaron Yacute -40
+KPX Dcaron Ydieresis -40
+KPX Dcaron period -20
+KPX Dcroat A -35
+KPX Dcroat Aacute -35
+KPX Dcroat Abreve -35
+KPX Dcroat Acircumflex -35
+KPX Dcroat Adieresis -35
+KPX Dcroat Agrave -35
+KPX Dcroat Amacron -35
+KPX Dcroat Aogonek -35
+KPX Dcroat Aring -35
+KPX Dcroat Atilde -35
+KPX Dcroat V -40
+KPX Dcroat W -40
+KPX Dcroat Y -40
+KPX Dcroat Yacute -40
+KPX Dcroat Ydieresis -40
+KPX Dcroat period -20
+KPX F A -90
+KPX F Aacute -90
+KPX F Abreve -90
+KPX F Acircumflex -90
+KPX F Adieresis -90
+KPX F Agrave -90
+KPX F Amacron -90
+KPX F Aogonek -90
+KPX F Aring -90
+KPX F Atilde -90
+KPX F a -25
+KPX F aacute -25
+KPX F abreve -25
+KPX F acircumflex -25
+KPX F adieresis -25
+KPX F agrave -25
+KPX F amacron -25
+KPX F aogonek -25
+KPX F aring -25
+KPX F atilde -25
+KPX F comma -92
+KPX F e -25
+KPX F eacute -25
+KPX F ecaron -25
+KPX F ecircumflex -25
+KPX F edieresis -25
+KPX F edotaccent -25
+KPX F egrave -25
+KPX F emacron -25
+KPX F eogonek -25
+KPX F o -25
+KPX F oacute -25
+KPX F ocircumflex -25
+KPX F odieresis -25
+KPX F ograve -25
+KPX F ohungarumlaut -25
+KPX F omacron -25
+KPX F oslash -25
+KPX F otilde -25
+KPX F period -110
+KPX J A -30
+KPX J Aacute -30
+KPX J Abreve -30
+KPX J Acircumflex -30
+KPX J Adieresis -30
+KPX J Agrave -30
+KPX J Amacron -30
+KPX J Aogonek -30
+KPX J Aring -30
+KPX J Atilde -30
+KPX J a -15
+KPX J aacute -15
+KPX J abreve -15
+KPX J acircumflex -15
+KPX J adieresis -15
+KPX J agrave -15
+KPX J amacron -15
+KPX J aogonek -15
+KPX J aring -15
+KPX J atilde -15
+KPX J e -15
+KPX J eacute -15
+KPX J ecaron -15
+KPX J ecircumflex -15
+KPX J edieresis -15
+KPX J edotaccent -15
+KPX J egrave -15
+KPX J emacron -15
+KPX J eogonek -15
+KPX J o -15
+KPX J oacute -15
+KPX J ocircumflex -15
+KPX J odieresis -15
+KPX J ograve -15
+KPX J ohungarumlaut -15
+KPX J omacron -15
+KPX J oslash -15
+KPX J otilde -15
+KPX J period -20
+KPX J u -15
+KPX J uacute -15
+KPX J ucircumflex -15
+KPX J udieresis -15
+KPX J ugrave -15
+KPX J uhungarumlaut -15
+KPX J umacron -15
+KPX J uogonek -15
+KPX J uring -15
+KPX K O -30
+KPX K Oacute -30
+KPX K Ocircumflex -30
+KPX K Odieresis -30
+KPX K Ograve -30
+KPX K Ohungarumlaut -30
+KPX K Omacron -30
+KPX K Oslash -30
+KPX K Otilde -30
+KPX K e -25
+KPX K eacute -25
+KPX K ecaron -25
+KPX K ecircumflex -25
+KPX K edieresis -25
+KPX K edotaccent -25
+KPX K egrave -25
+KPX K emacron -25
+KPX K eogonek -25
+KPX K o -25
+KPX K oacute -25
+KPX K ocircumflex -25
+KPX K odieresis -25
+KPX K ograve -25
+KPX K ohungarumlaut -25
+KPX K omacron -25
+KPX K oslash -25
+KPX K otilde -25
+KPX K u -15
+KPX K uacute -15
+KPX K ucircumflex -15
+KPX K udieresis -15
+KPX K ugrave -15
+KPX K uhungarumlaut -15
+KPX K umacron -15
+KPX K uogonek -15
+KPX K uring -15
+KPX K y -45
+KPX K yacute -45
+KPX K ydieresis -45
+KPX Kcommaaccent O -30
+KPX Kcommaaccent Oacute -30
+KPX Kcommaaccent Ocircumflex -30
+KPX Kcommaaccent Odieresis -30
+KPX Kcommaaccent Ograve -30
+KPX Kcommaaccent Ohungarumlaut -30
+KPX Kcommaaccent Omacron -30
+KPX Kcommaaccent Oslash -30
+KPX Kcommaaccent Otilde -30
+KPX Kcommaaccent e -25
+KPX Kcommaaccent eacute -25
+KPX Kcommaaccent ecaron -25
+KPX Kcommaaccent ecircumflex -25
+KPX Kcommaaccent edieresis -25
+KPX Kcommaaccent edotaccent -25
+KPX Kcommaaccent egrave -25
+KPX Kcommaaccent emacron -25
+KPX Kcommaaccent eogonek -25
+KPX Kcommaaccent o -25
+KPX Kcommaaccent oacute -25
+KPX Kcommaaccent ocircumflex -25
+KPX Kcommaaccent odieresis -25
+KPX Kcommaaccent ograve -25
+KPX Kcommaaccent ohungarumlaut -25
+KPX Kcommaaccent omacron -25
+KPX Kcommaaccent oslash -25
+KPX Kcommaaccent otilde -25
+KPX Kcommaaccent u -15
+KPX Kcommaaccent uacute -15
+KPX Kcommaaccent ucircumflex -15
+KPX Kcommaaccent udieresis -15
+KPX Kcommaaccent ugrave -15
+KPX Kcommaaccent uhungarumlaut -15
+KPX Kcommaaccent umacron -15
+KPX Kcommaaccent uogonek -15
+KPX Kcommaaccent uring -15
+KPX Kcommaaccent y -45
+KPX Kcommaaccent yacute -45
+KPX Kcommaaccent ydieresis -45
+KPX L T -92
+KPX L Tcaron -92
+KPX L Tcommaaccent -92
+KPX L V -92
+KPX L W -92
+KPX L Y -92
+KPX L Yacute -92
+KPX L Ydieresis -92
+KPX L quotedblright -20
+KPX L quoteright -110
+KPX L y -55
+KPX L yacute -55
+KPX L ydieresis -55
+KPX Lacute T -92
+KPX Lacute Tcaron -92
+KPX Lacute Tcommaaccent -92
+KPX Lacute V -92
+KPX Lacute W -92
+KPX Lacute Y -92
+KPX Lacute Yacute -92
+KPX Lacute Ydieresis -92
+KPX Lacute quotedblright -20
+KPX Lacute quoteright -110
+KPX Lacute y -55
+KPX Lacute yacute -55
+KPX Lacute ydieresis -55
+KPX Lcommaaccent T -92
+KPX Lcommaaccent Tcaron -92
+KPX Lcommaaccent Tcommaaccent -92
+KPX Lcommaaccent V -92
+KPX Lcommaaccent W -92
+KPX Lcommaaccent Y -92
+KPX Lcommaaccent Yacute -92
+KPX Lcommaaccent Ydieresis -92
+KPX Lcommaaccent quotedblright -20
+KPX Lcommaaccent quoteright -110
+KPX Lcommaaccent y -55
+KPX Lcommaaccent yacute -55
+KPX Lcommaaccent ydieresis -55
+KPX Lslash T -92
+KPX Lslash Tcaron -92
+KPX Lslash Tcommaaccent -92
+KPX Lslash V -92
+KPX Lslash W -92
+KPX Lslash Y -92
+KPX Lslash Yacute -92
+KPX Lslash Ydieresis -92
+KPX Lslash quotedblright -20
+KPX Lslash quoteright -110
+KPX Lslash y -55
+KPX Lslash yacute -55
+KPX Lslash ydieresis -55
+KPX N A -20
+KPX N Aacute -20
+KPX N Abreve -20
+KPX N Acircumflex -20
+KPX N Adieresis -20
+KPX N Agrave -20
+KPX N Amacron -20
+KPX N Aogonek -20
+KPX N Aring -20
+KPX N Atilde -20
+KPX Nacute A -20
+KPX Nacute Aacute -20
+KPX Nacute Abreve -20
+KPX Nacute Acircumflex -20
+KPX Nacute Adieresis -20
+KPX Nacute Agrave -20
+KPX Nacute Amacron -20
+KPX Nacute Aogonek -20
+KPX Nacute Aring -20
+KPX Nacute Atilde -20
+KPX Ncaron A -20
+KPX Ncaron Aacute -20
+KPX Ncaron Abreve -20
+KPX Ncaron Acircumflex -20
+KPX Ncaron Adieresis -20
+KPX Ncaron Agrave -20
+KPX Ncaron Amacron -20
+KPX Ncaron Aogonek -20
+KPX Ncaron Aring -20
+KPX Ncaron Atilde -20
+KPX Ncommaaccent A -20
+KPX Ncommaaccent Aacute -20
+KPX Ncommaaccent Abreve -20
+KPX Ncommaaccent Acircumflex -20
+KPX Ncommaaccent Adieresis -20
+KPX Ncommaaccent Agrave -20
+KPX Ncommaaccent Amacron -20
+KPX Ncommaaccent Aogonek -20
+KPX Ncommaaccent Aring -20
+KPX Ncommaaccent Atilde -20
+KPX Ntilde A -20
+KPX Ntilde Aacute -20
+KPX Ntilde Abreve -20
+KPX Ntilde Acircumflex -20
+KPX Ntilde Adieresis -20
+KPX Ntilde Agrave -20
+KPX Ntilde Amacron -20
+KPX Ntilde Aogonek -20
+KPX Ntilde Aring -20
+KPX Ntilde Atilde -20
+KPX O A -40
+KPX O Aacute -40
+KPX O Abreve -40
+KPX O Acircumflex -40
+KPX O Adieresis -40
+KPX O Agrave -40
+KPX O Amacron -40
+KPX O Aogonek -40
+KPX O Aring -40
+KPX O Atilde -40
+KPX O T -40
+KPX O Tcaron -40
+KPX O Tcommaaccent -40
+KPX O V -50
+KPX O W -50
+KPX O X -40
+KPX O Y -50
+KPX O Yacute -50
+KPX O Ydieresis -50
+KPX Oacute A -40
+KPX Oacute Aacute -40
+KPX Oacute Abreve -40
+KPX Oacute Acircumflex -40
+KPX Oacute Adieresis -40
+KPX Oacute Agrave -40
+KPX Oacute Amacron -40
+KPX Oacute Aogonek -40
+KPX Oacute Aring -40
+KPX Oacute Atilde -40
+KPX Oacute T -40
+KPX Oacute Tcaron -40
+KPX Oacute Tcommaaccent -40
+KPX Oacute V -50
+KPX Oacute W -50
+KPX Oacute X -40
+KPX Oacute Y -50
+KPX Oacute Yacute -50
+KPX Oacute Ydieresis -50
+KPX Ocircumflex A -40
+KPX Ocircumflex Aacute -40
+KPX Ocircumflex Abreve -40
+KPX Ocircumflex Acircumflex -40
+KPX Ocircumflex Adieresis -40
+KPX Ocircumflex Agrave -40
+KPX Ocircumflex Amacron -40
+KPX Ocircumflex Aogonek -40
+KPX Ocircumflex Aring -40
+KPX Ocircumflex Atilde -40
+KPX Ocircumflex T -40
+KPX Ocircumflex Tcaron -40
+KPX Ocircumflex Tcommaaccent -40
+KPX Ocircumflex V -50
+KPX Ocircumflex W -50
+KPX Ocircumflex X -40
+KPX Ocircumflex Y -50
+KPX Ocircumflex Yacute -50
+KPX Ocircumflex Ydieresis -50
+KPX Odieresis A -40
+KPX Odieresis Aacute -40
+KPX Odieresis Abreve -40
+KPX Odieresis Acircumflex -40
+KPX Odieresis Adieresis -40
+KPX Odieresis Agrave -40
+KPX Odieresis Amacron -40
+KPX Odieresis Aogonek -40
+KPX Odieresis Aring -40
+KPX Odieresis Atilde -40
+KPX Odieresis T -40
+KPX Odieresis Tcaron -40
+KPX Odieresis Tcommaaccent -40
+KPX Odieresis V -50
+KPX Odieresis W -50
+KPX Odieresis X -40
+KPX Odieresis Y -50
+KPX Odieresis Yacute -50
+KPX Odieresis Ydieresis -50
+KPX Ograve A -40
+KPX Ograve Aacute -40
+KPX Ograve Abreve -40
+KPX Ograve Acircumflex -40
+KPX Ograve Adieresis -40
+KPX Ograve Agrave -40
+KPX Ograve Amacron -40
+KPX Ograve Aogonek -40
+KPX Ograve Aring -40
+KPX Ograve Atilde -40
+KPX Ograve T -40
+KPX Ograve Tcaron -40
+KPX Ograve Tcommaaccent -40
+KPX Ograve V -50
+KPX Ograve W -50
+KPX Ograve X -40
+KPX Ograve Y -50
+KPX Ograve Yacute -50
+KPX Ograve Ydieresis -50
+KPX Ohungarumlaut A -40
+KPX Ohungarumlaut Aacute -40
+KPX Ohungarumlaut Abreve -40
+KPX Ohungarumlaut Acircumflex -40
+KPX Ohungarumlaut Adieresis -40
+KPX Ohungarumlaut Agrave -40
+KPX Ohungarumlaut Amacron -40
+KPX Ohungarumlaut Aogonek -40
+KPX Ohungarumlaut Aring -40
+KPX Ohungarumlaut Atilde -40
+KPX Ohungarumlaut T -40
+KPX Ohungarumlaut Tcaron -40
+KPX Ohungarumlaut Tcommaaccent -40
+KPX Ohungarumlaut V -50
+KPX Ohungarumlaut W -50
+KPX Ohungarumlaut X -40
+KPX Ohungarumlaut Y -50
+KPX Ohungarumlaut Yacute -50
+KPX Ohungarumlaut Ydieresis -50
+KPX Omacron A -40
+KPX Omacron Aacute -40
+KPX Omacron Abreve -40
+KPX Omacron Acircumflex -40
+KPX Omacron Adieresis -40
+KPX Omacron Agrave -40
+KPX Omacron Amacron -40
+KPX Omacron Aogonek -40
+KPX Omacron Aring -40
+KPX Omacron Atilde -40
+KPX Omacron T -40
+KPX Omacron Tcaron -40
+KPX Omacron Tcommaaccent -40
+KPX Omacron V -50
+KPX Omacron W -50
+KPX Omacron X -40
+KPX Omacron Y -50
+KPX Omacron Yacute -50
+KPX Omacron Ydieresis -50
+KPX Oslash A -40
+KPX Oslash Aacute -40
+KPX Oslash Abreve -40
+KPX Oslash Acircumflex -40
+KPX Oslash Adieresis -40
+KPX Oslash Agrave -40
+KPX Oslash Amacron -40
+KPX Oslash Aogonek -40
+KPX Oslash Aring -40
+KPX Oslash Atilde -40
+KPX Oslash T -40
+KPX Oslash Tcaron -40
+KPX Oslash Tcommaaccent -40
+KPX Oslash V -50
+KPX Oslash W -50
+KPX Oslash X -40
+KPX Oslash Y -50
+KPX Oslash Yacute -50
+KPX Oslash Ydieresis -50
+KPX Otilde A -40
+KPX Otilde Aacute -40
+KPX Otilde Abreve -40
+KPX Otilde Acircumflex -40
+KPX Otilde Adieresis -40
+KPX Otilde Agrave -40
+KPX Otilde Amacron -40
+KPX Otilde Aogonek -40
+KPX Otilde Aring -40
+KPX Otilde Atilde -40
+KPX Otilde T -40
+KPX Otilde Tcaron -40
+KPX Otilde Tcommaaccent -40
+KPX Otilde V -50
+KPX Otilde W -50
+KPX Otilde X -40
+KPX Otilde Y -50
+KPX Otilde Yacute -50
+KPX Otilde Ydieresis -50
+KPX P A -74
+KPX P Aacute -74
+KPX P Abreve -74
+KPX P Acircumflex -74
+KPX P Adieresis -74
+KPX P Agrave -74
+KPX P Amacron -74
+KPX P Aogonek -74
+KPX P Aring -74
+KPX P Atilde -74
+KPX P a -10
+KPX P aacute -10
+KPX P abreve -10
+KPX P acircumflex -10
+KPX P adieresis -10
+KPX P agrave -10
+KPX P amacron -10
+KPX P aogonek -10
+KPX P aring -10
+KPX P atilde -10
+KPX P comma -92
+KPX P e -20
+KPX P eacute -20
+KPX P ecaron -20
+KPX P ecircumflex -20
+KPX P edieresis -20
+KPX P edotaccent -20
+KPX P egrave -20
+KPX P emacron -20
+KPX P eogonek -20
+KPX P o -20
+KPX P oacute -20
+KPX P ocircumflex -20
+KPX P odieresis -20
+KPX P ograve -20
+KPX P ohungarumlaut -20
+KPX P omacron -20
+KPX P oslash -20
+KPX P otilde -20
+KPX P period -110
+KPX Q U -10
+KPX Q Uacute -10
+KPX Q Ucircumflex -10
+KPX Q Udieresis -10
+KPX Q Ugrave -10
+KPX Q Uhungarumlaut -10
+KPX Q Umacron -10
+KPX Q Uogonek -10
+KPX Q Uring -10
+KPX Q period -20
+KPX R O -30
+KPX R Oacute -30
+KPX R Ocircumflex -30
+KPX R Odieresis -30
+KPX R Ograve -30
+KPX R Ohungarumlaut -30
+KPX R Omacron -30
+KPX R Oslash -30
+KPX R Otilde -30
+KPX R T -40
+KPX R Tcaron -40
+KPX R Tcommaaccent -40
+KPX R U -30
+KPX R Uacute -30
+KPX R Ucircumflex -30
+KPX R Udieresis -30
+KPX R Ugrave -30
+KPX R Uhungarumlaut -30
+KPX R Umacron -30
+KPX R Uogonek -30
+KPX R Uring -30
+KPX R V -55
+KPX R W -35
+KPX R Y -35
+KPX R Yacute -35
+KPX R Ydieresis -35
+KPX Racute O -30
+KPX Racute Oacute -30
+KPX Racute Ocircumflex -30
+KPX Racute Odieresis -30
+KPX Racute Ograve -30
+KPX Racute Ohungarumlaut -30
+KPX Racute Omacron -30
+KPX Racute Oslash -30
+KPX Racute Otilde -30
+KPX Racute T -40
+KPX Racute Tcaron -40
+KPX Racute Tcommaaccent -40
+KPX Racute U -30
+KPX Racute Uacute -30
+KPX Racute Ucircumflex -30
+KPX Racute Udieresis -30
+KPX Racute Ugrave -30
+KPX Racute Uhungarumlaut -30
+KPX Racute Umacron -30
+KPX Racute Uogonek -30
+KPX Racute Uring -30
+KPX Racute V -55
+KPX Racute W -35
+KPX Racute Y -35
+KPX Racute Yacute -35
+KPX Racute Ydieresis -35
+KPX Rcaron O -30
+KPX Rcaron Oacute -30
+KPX Rcaron Ocircumflex -30
+KPX Rcaron Odieresis -30
+KPX Rcaron Ograve -30
+KPX Rcaron Ohungarumlaut -30
+KPX Rcaron Omacron -30
+KPX Rcaron Oslash -30
+KPX Rcaron Otilde -30
+KPX Rcaron T -40
+KPX Rcaron Tcaron -40
+KPX Rcaron Tcommaaccent -40
+KPX Rcaron U -30
+KPX Rcaron Uacute -30
+KPX Rcaron Ucircumflex -30
+KPX Rcaron Udieresis -30
+KPX Rcaron Ugrave -30
+KPX Rcaron Uhungarumlaut -30
+KPX Rcaron Umacron -30
+KPX Rcaron Uogonek -30
+KPX Rcaron Uring -30
+KPX Rcaron V -55
+KPX Rcaron W -35
+KPX Rcaron Y -35
+KPX Rcaron Yacute -35
+KPX Rcaron Ydieresis -35
+KPX Rcommaaccent O -30
+KPX Rcommaaccent Oacute -30
+KPX Rcommaaccent Ocircumflex -30
+KPX Rcommaaccent Odieresis -30
+KPX Rcommaaccent Ograve -30
+KPX Rcommaaccent Ohungarumlaut -30
+KPX Rcommaaccent Omacron -30
+KPX Rcommaaccent Oslash -30
+KPX Rcommaaccent Otilde -30
+KPX Rcommaaccent T -40
+KPX Rcommaaccent Tcaron -40
+KPX Rcommaaccent Tcommaaccent -40
+KPX Rcommaaccent U -30
+KPX Rcommaaccent Uacute -30
+KPX Rcommaaccent Ucircumflex -30
+KPX Rcommaaccent Udieresis -30
+KPX Rcommaaccent Ugrave -30
+KPX Rcommaaccent Uhungarumlaut -30
+KPX Rcommaaccent Umacron -30
+KPX Rcommaaccent Uogonek -30
+KPX Rcommaaccent Uring -30
+KPX Rcommaaccent V -55
+KPX Rcommaaccent W -35
+KPX Rcommaaccent Y -35
+KPX Rcommaaccent Yacute -35
+KPX Rcommaaccent Ydieresis -35
+KPX T A -90
+KPX T Aacute -90
+KPX T Abreve -90
+KPX T Acircumflex -90
+KPX T Adieresis -90
+KPX T Agrave -90
+KPX T Amacron -90
+KPX T Aogonek -90
+KPX T Aring -90
+KPX T Atilde -90
+KPX T O -18
+KPX T Oacute -18
+KPX T Ocircumflex -18
+KPX T Odieresis -18
+KPX T Ograve -18
+KPX T Ohungarumlaut -18
+KPX T Omacron -18
+KPX T Oslash -18
+KPX T Otilde -18
+KPX T a -92
+KPX T aacute -92
+KPX T abreve -52
+KPX T acircumflex -52
+KPX T adieresis -52
+KPX T agrave -52
+KPX T amacron -52
+KPX T aogonek -92
+KPX T aring -92
+KPX T atilde -52
+KPX T colon -74
+KPX T comma -74
+KPX T e -92
+KPX T eacute -92
+KPX T ecaron -92
+KPX T ecircumflex -92
+KPX T edieresis -52
+KPX T edotaccent -92
+KPX T egrave -52
+KPX T emacron -52
+KPX T eogonek -92
+KPX T hyphen -92
+KPX T i -18
+KPX T iacute -18
+KPX T iogonek -18
+KPX T o -92
+KPX T oacute -92
+KPX T ocircumflex -92
+KPX T odieresis -92
+KPX T ograve -92
+KPX T ohungarumlaut -92
+KPX T omacron -92
+KPX T oslash -92
+KPX T otilde -92
+KPX T period -90
+KPX T r -74
+KPX T racute -74
+KPX T rcaron -74
+KPX T rcommaaccent -74
+KPX T semicolon -74
+KPX T u -92
+KPX T uacute -92
+KPX T ucircumflex -92
+KPX T udieresis -92
+KPX T ugrave -92
+KPX T uhungarumlaut -92
+KPX T umacron -92
+KPX T uogonek -92
+KPX T uring -92
+KPX T w -74
+KPX T y -34
+KPX T yacute -34
+KPX T ydieresis -34
+KPX Tcaron A -90
+KPX Tcaron Aacute -90
+KPX Tcaron Abreve -90
+KPX Tcaron Acircumflex -90
+KPX Tcaron Adieresis -90
+KPX Tcaron Agrave -90
+KPX Tcaron Amacron -90
+KPX Tcaron Aogonek -90
+KPX Tcaron Aring -90
+KPX Tcaron Atilde -90
+KPX Tcaron O -18
+KPX Tcaron Oacute -18
+KPX Tcaron Ocircumflex -18
+KPX Tcaron Odieresis -18
+KPX Tcaron Ograve -18
+KPX Tcaron Ohungarumlaut -18
+KPX Tcaron Omacron -18
+KPX Tcaron Oslash -18
+KPX Tcaron Otilde -18
+KPX Tcaron a -92
+KPX Tcaron aacute -92
+KPX Tcaron abreve -52
+KPX Tcaron acircumflex -52
+KPX Tcaron adieresis -52
+KPX Tcaron agrave -52
+KPX Tcaron amacron -52
+KPX Tcaron aogonek -92
+KPX Tcaron aring -92
+KPX Tcaron atilde -52
+KPX Tcaron colon -74
+KPX Tcaron comma -74
+KPX Tcaron e -92
+KPX Tcaron eacute -92
+KPX Tcaron ecaron -92
+KPX Tcaron ecircumflex -92
+KPX Tcaron edieresis -52
+KPX Tcaron edotaccent -92
+KPX Tcaron egrave -52
+KPX Tcaron emacron -52
+KPX Tcaron eogonek -92
+KPX Tcaron hyphen -92
+KPX Tcaron i -18
+KPX Tcaron iacute -18
+KPX Tcaron iogonek -18
+KPX Tcaron o -92
+KPX Tcaron oacute -92
+KPX Tcaron ocircumflex -92
+KPX Tcaron odieresis -92
+KPX Tcaron ograve -92
+KPX Tcaron ohungarumlaut -92
+KPX Tcaron omacron -92
+KPX Tcaron oslash -92
+KPX Tcaron otilde -92
+KPX Tcaron period -90
+KPX Tcaron r -74
+KPX Tcaron racute -74
+KPX Tcaron rcaron -74
+KPX Tcaron rcommaaccent -74
+KPX Tcaron semicolon -74
+KPX Tcaron u -92
+KPX Tcaron uacute -92
+KPX Tcaron ucircumflex -92
+KPX Tcaron udieresis -92
+KPX Tcaron ugrave -92
+KPX Tcaron uhungarumlaut -92
+KPX Tcaron umacron -92
+KPX Tcaron uogonek -92
+KPX Tcaron uring -92
+KPX Tcaron w -74
+KPX Tcaron y -34
+KPX Tcaron yacute -34
+KPX Tcaron ydieresis -34
+KPX Tcommaaccent A -90
+KPX Tcommaaccent Aacute -90
+KPX Tcommaaccent Abreve -90
+KPX Tcommaaccent Acircumflex -90
+KPX Tcommaaccent Adieresis -90
+KPX Tcommaaccent Agrave -90
+KPX Tcommaaccent Amacron -90
+KPX Tcommaaccent Aogonek -90
+KPX Tcommaaccent Aring -90
+KPX Tcommaaccent Atilde -90
+KPX Tcommaaccent O -18
+KPX Tcommaaccent Oacute -18
+KPX Tcommaaccent Ocircumflex -18
+KPX Tcommaaccent Odieresis -18
+KPX Tcommaaccent Ograve -18
+KPX Tcommaaccent Ohungarumlaut -18
+KPX Tcommaaccent Omacron -18
+KPX Tcommaaccent Oslash -18
+KPX Tcommaaccent Otilde -18
+KPX Tcommaaccent a -92
+KPX Tcommaaccent aacute -92
+KPX Tcommaaccent abreve -52
+KPX Tcommaaccent acircumflex -52
+KPX Tcommaaccent adieresis -52
+KPX Tcommaaccent agrave -52
+KPX Tcommaaccent amacron -52
+KPX Tcommaaccent aogonek -92
+KPX Tcommaaccent aring -92
+KPX Tcommaaccent atilde -52
+KPX Tcommaaccent colon -74
+KPX Tcommaaccent comma -74
+KPX Tcommaaccent e -92
+KPX Tcommaaccent eacute -92
+KPX Tcommaaccent ecaron -92
+KPX Tcommaaccent ecircumflex -92
+KPX Tcommaaccent edieresis -52
+KPX Tcommaaccent edotaccent -92
+KPX Tcommaaccent egrave -52
+KPX Tcommaaccent emacron -52
+KPX Tcommaaccent eogonek -92
+KPX Tcommaaccent hyphen -92
+KPX Tcommaaccent i -18
+KPX Tcommaaccent iacute -18
+KPX Tcommaaccent iogonek -18
+KPX Tcommaaccent o -92
+KPX Tcommaaccent oacute -92
+KPX Tcommaaccent ocircumflex -92
+KPX Tcommaaccent odieresis -92
+KPX Tcommaaccent ograve -92
+KPX Tcommaaccent ohungarumlaut -92
+KPX Tcommaaccent omacron -92
+KPX Tcommaaccent oslash -92
+KPX Tcommaaccent otilde -92
+KPX Tcommaaccent period -90
+KPX Tcommaaccent r -74
+KPX Tcommaaccent racute -74
+KPX Tcommaaccent rcaron -74
+KPX Tcommaaccent rcommaaccent -74
+KPX Tcommaaccent semicolon -74
+KPX Tcommaaccent u -92
+KPX Tcommaaccent uacute -92
+KPX Tcommaaccent ucircumflex -92
+KPX Tcommaaccent udieresis -92
+KPX Tcommaaccent ugrave -92
+KPX Tcommaaccent uhungarumlaut -92
+KPX Tcommaaccent umacron -92
+KPX Tcommaaccent uogonek -92
+KPX Tcommaaccent uring -92
+KPX Tcommaaccent w -74
+KPX Tcommaaccent y -34
+KPX Tcommaaccent yacute -34
+KPX Tcommaaccent ydieresis -34
+KPX U A -60
+KPX U Aacute -60
+KPX U Abreve -60
+KPX U Acircumflex -60
+KPX U Adieresis -60
+KPX U Agrave -60
+KPX U Amacron -60
+KPX U Aogonek -60
+KPX U Aring -60
+KPX U Atilde -60
+KPX U comma -50
+KPX U period -50
+KPX Uacute A -60
+KPX Uacute Aacute -60
+KPX Uacute Abreve -60
+KPX Uacute Acircumflex -60
+KPX Uacute Adieresis -60
+KPX Uacute Agrave -60
+KPX Uacute Amacron -60
+KPX Uacute Aogonek -60
+KPX Uacute Aring -60
+KPX Uacute Atilde -60
+KPX Uacute comma -50
+KPX Uacute period -50
+KPX Ucircumflex A -60
+KPX Ucircumflex Aacute -60
+KPX Ucircumflex Abreve -60
+KPX Ucircumflex Acircumflex -60
+KPX Ucircumflex Adieresis -60
+KPX Ucircumflex Agrave -60
+KPX Ucircumflex Amacron -60
+KPX Ucircumflex Aogonek -60
+KPX Ucircumflex Aring -60
+KPX Ucircumflex Atilde -60
+KPX Ucircumflex comma -50
+KPX Ucircumflex period -50
+KPX Udieresis A -60
+KPX Udieresis Aacute -60
+KPX Udieresis Abreve -60
+KPX Udieresis Acircumflex -60
+KPX Udieresis Adieresis -60
+KPX Udieresis Agrave -60
+KPX Udieresis Amacron -60
+KPX Udieresis Aogonek -60
+KPX Udieresis Aring -60
+KPX Udieresis Atilde -60
+KPX Udieresis comma -50
+KPX Udieresis period -50
+KPX Ugrave A -60
+KPX Ugrave Aacute -60
+KPX Ugrave Abreve -60
+KPX Ugrave Acircumflex -60
+KPX Ugrave Adieresis -60
+KPX Ugrave Agrave -60
+KPX Ugrave Amacron -60
+KPX Ugrave Aogonek -60
+KPX Ugrave Aring -60
+KPX Ugrave Atilde -60
+KPX Ugrave comma -50
+KPX Ugrave period -50
+KPX Uhungarumlaut A -60
+KPX Uhungarumlaut Aacute -60
+KPX Uhungarumlaut Abreve -60
+KPX Uhungarumlaut Acircumflex -60
+KPX Uhungarumlaut Adieresis -60
+KPX Uhungarumlaut Agrave -60
+KPX Uhungarumlaut Amacron -60
+KPX Uhungarumlaut Aogonek -60
+KPX Uhungarumlaut Aring -60
+KPX Uhungarumlaut Atilde -60
+KPX Uhungarumlaut comma -50
+KPX Uhungarumlaut period -50
+KPX Umacron A -60
+KPX Umacron Aacute -60
+KPX Umacron Abreve -60
+KPX Umacron Acircumflex -60
+KPX Umacron Adieresis -60
+KPX Umacron Agrave -60
+KPX Umacron Amacron -60
+KPX Umacron Aogonek -60
+KPX Umacron Aring -60
+KPX Umacron Atilde -60
+KPX Umacron comma -50
+KPX Umacron period -50
+KPX Uogonek A -60
+KPX Uogonek Aacute -60
+KPX Uogonek Abreve -60
+KPX Uogonek Acircumflex -60
+KPX Uogonek Adieresis -60
+KPX Uogonek Agrave -60
+KPX Uogonek Amacron -60
+KPX Uogonek Aogonek -60
+KPX Uogonek Aring -60
+KPX Uogonek Atilde -60
+KPX Uogonek comma -50
+KPX Uogonek period -50
+KPX Uring A -60
+KPX Uring Aacute -60
+KPX Uring Abreve -60
+KPX Uring Acircumflex -60
+KPX Uring Adieresis -60
+KPX Uring Agrave -60
+KPX Uring Amacron -60
+KPX Uring Aogonek -60
+KPX Uring Aring -60
+KPX Uring Atilde -60
+KPX Uring comma -50
+KPX Uring period -50
+KPX V A -135
+KPX V Aacute -135
+KPX V Abreve -135
+KPX V Acircumflex -135
+KPX V Adieresis -135
+KPX V Agrave -135
+KPX V Amacron -135
+KPX V Aogonek -135
+KPX V Aring -135
+KPX V Atilde -135
+KPX V G -30
+KPX V Gbreve -30
+KPX V Gcommaaccent -30
+KPX V O -45
+KPX V Oacute -45
+KPX V Ocircumflex -45
+KPX V Odieresis -45
+KPX V Ograve -45
+KPX V Ohungarumlaut -45
+KPX V Omacron -45
+KPX V Oslash -45
+KPX V Otilde -45
+KPX V a -92
+KPX V aacute -92
+KPX V abreve -92
+KPX V acircumflex -92
+KPX V adieresis -92
+KPX V agrave -92
+KPX V amacron -92
+KPX V aogonek -92
+KPX V aring -92
+KPX V atilde -92
+KPX V colon -92
+KPX V comma -129
+KPX V e -100
+KPX V eacute -100
+KPX V ecaron -100
+KPX V ecircumflex -100
+KPX V edieresis -100
+KPX V edotaccent -100
+KPX V egrave -100
+KPX V emacron -100
+KPX V eogonek -100
+KPX V hyphen -74
+KPX V i -37
+KPX V iacute -37
+KPX V icircumflex -37
+KPX V idieresis -37
+KPX V igrave -37
+KPX V imacron -37
+KPX V iogonek -37
+KPX V o -100
+KPX V oacute -100
+KPX V ocircumflex -100
+KPX V odieresis -100
+KPX V ograve -100
+KPX V ohungarumlaut -100
+KPX V omacron -100
+KPX V oslash -100
+KPX V otilde -100
+KPX V period -145
+KPX V semicolon -92
+KPX V u -92
+KPX V uacute -92
+KPX V ucircumflex -92
+KPX V udieresis -92
+KPX V ugrave -92
+KPX V uhungarumlaut -92
+KPX V umacron -92
+KPX V uogonek -92
+KPX V uring -92
+KPX W A -120
+KPX W Aacute -120
+KPX W Abreve -120
+KPX W Acircumflex -120
+KPX W Adieresis -120
+KPX W Agrave -120
+KPX W Amacron -120
+KPX W Aogonek -120
+KPX W Aring -120
+KPX W Atilde -120
+KPX W O -10
+KPX W Oacute -10
+KPX W Ocircumflex -10
+KPX W Odieresis -10
+KPX W Ograve -10
+KPX W Ohungarumlaut -10
+KPX W Omacron -10
+KPX W Oslash -10
+KPX W Otilde -10
+KPX W a -65
+KPX W aacute -65
+KPX W abreve -65
+KPX W acircumflex -65
+KPX W adieresis -65
+KPX W agrave -65
+KPX W amacron -65
+KPX W aogonek -65
+KPX W aring -65
+KPX W atilde -65
+KPX W colon -55
+KPX W comma -92
+KPX W e -65
+KPX W eacute -65
+KPX W ecaron -65
+KPX W ecircumflex -65
+KPX W edieresis -65
+KPX W edotaccent -65
+KPX W egrave -65
+KPX W emacron -65
+KPX W eogonek -65
+KPX W hyphen -37
+KPX W i -18
+KPX W iacute -18
+KPX W iogonek -18
+KPX W o -75
+KPX W oacute -75
+KPX W ocircumflex -75
+KPX W odieresis -75
+KPX W ograve -75
+KPX W ohungarumlaut -75
+KPX W omacron -75
+KPX W oslash -75
+KPX W otilde -75
+KPX W period -92
+KPX W semicolon -55
+KPX W u -50
+KPX W uacute -50
+KPX W ucircumflex -50
+KPX W udieresis -50
+KPX W ugrave -50
+KPX W uhungarumlaut -50
+KPX W umacron -50
+KPX W uogonek -50
+KPX W uring -50
+KPX W y -60
+KPX W yacute -60
+KPX W ydieresis -60
+KPX Y A -110
+KPX Y Aacute -110
+KPX Y Abreve -110
+KPX Y Acircumflex -110
+KPX Y Adieresis -110
+KPX Y Agrave -110
+KPX Y Amacron -110
+KPX Y Aogonek -110
+KPX Y Aring -110
+KPX Y Atilde -110
+KPX Y O -35
+KPX Y Oacute -35
+KPX Y Ocircumflex -35
+KPX Y Odieresis -35
+KPX Y Ograve -35
+KPX Y Ohungarumlaut -35
+KPX Y Omacron -35
+KPX Y Oslash -35
+KPX Y Otilde -35
+KPX Y a -85
+KPX Y aacute -85
+KPX Y abreve -85
+KPX Y acircumflex -85
+KPX Y adieresis -85
+KPX Y agrave -85
+KPX Y amacron -85
+KPX Y aogonek -85
+KPX Y aring -85
+KPX Y atilde -85
+KPX Y colon -92
+KPX Y comma -92
+KPX Y e -111
+KPX Y eacute -111
+KPX Y ecaron -111
+KPX Y ecircumflex -111
+KPX Y edieresis -71
+KPX Y edotaccent -111
+KPX Y egrave -71
+KPX Y emacron -71
+KPX Y eogonek -111
+KPX Y hyphen -92
+KPX Y i -37
+KPX Y iacute -37
+KPX Y iogonek -37
+KPX Y o -111
+KPX Y oacute -111
+KPX Y ocircumflex -111
+KPX Y odieresis -111
+KPX Y ograve -111
+KPX Y ohungarumlaut -111
+KPX Y omacron -111
+KPX Y oslash -111
+KPX Y otilde -111
+KPX Y period -92
+KPX Y semicolon -92
+KPX Y u -92
+KPX Y uacute -92
+KPX Y ucircumflex -92
+KPX Y udieresis -92
+KPX Y ugrave -92
+KPX Y uhungarumlaut -92
+KPX Y umacron -92
+KPX Y uogonek -92
+KPX Y uring -92
+KPX Yacute A -110
+KPX Yacute Aacute -110
+KPX Yacute Abreve -110
+KPX Yacute Acircumflex -110
+KPX Yacute Adieresis -110
+KPX Yacute Agrave -110
+KPX Yacute Amacron -110
+KPX Yacute Aogonek -110
+KPX Yacute Aring -110
+KPX Yacute Atilde -110
+KPX Yacute O -35
+KPX Yacute Oacute -35
+KPX Yacute Ocircumflex -35
+KPX Yacute Odieresis -35
+KPX Yacute Ograve -35
+KPX Yacute Ohungarumlaut -35
+KPX Yacute Omacron -35
+KPX Yacute Oslash -35
+KPX Yacute Otilde -35
+KPX Yacute a -85
+KPX Yacute aacute -85
+KPX Yacute abreve -85
+KPX Yacute acircumflex -85
+KPX Yacute adieresis -85
+KPX Yacute agrave -85
+KPX Yacute amacron -85
+KPX Yacute aogonek -85
+KPX Yacute aring -85
+KPX Yacute atilde -85
+KPX Yacute colon -92
+KPX Yacute comma -92
+KPX Yacute e -111
+KPX Yacute eacute -111
+KPX Yacute ecaron -111
+KPX Yacute ecircumflex -111
+KPX Yacute edieresis -71
+KPX Yacute edotaccent -111
+KPX Yacute egrave -71
+KPX Yacute emacron -71
+KPX Yacute eogonek -111
+KPX Yacute hyphen -92
+KPX Yacute i -37
+KPX Yacute iacute -37
+KPX Yacute iogonek -37
+KPX Yacute o -111
+KPX Yacute oacute -111
+KPX Yacute ocircumflex -111
+KPX Yacute odieresis -111
+KPX Yacute ograve -111
+KPX Yacute ohungarumlaut -111
+KPX Yacute omacron -111
+KPX Yacute oslash -111
+KPX Yacute otilde -111
+KPX Yacute period -92
+KPX Yacute semicolon -92
+KPX Yacute u -92
+KPX Yacute uacute -92
+KPX Yacute ucircumflex -92
+KPX Yacute udieresis -92
+KPX Yacute ugrave -92
+KPX Yacute uhungarumlaut -92
+KPX Yacute umacron -92
+KPX Yacute uogonek -92
+KPX Yacute uring -92
+KPX Ydieresis A -110
+KPX Ydieresis Aacute -110
+KPX Ydieresis Abreve -110
+KPX Ydieresis Acircumflex -110
+KPX Ydieresis Adieresis -110
+KPX Ydieresis Agrave -110
+KPX Ydieresis Amacron -110
+KPX Ydieresis Aogonek -110
+KPX Ydieresis Aring -110
+KPX Ydieresis Atilde -110
+KPX Ydieresis O -35
+KPX Ydieresis Oacute -35
+KPX Ydieresis Ocircumflex -35
+KPX Ydieresis Odieresis -35
+KPX Ydieresis Ograve -35
+KPX Ydieresis Ohungarumlaut -35
+KPX Ydieresis Omacron -35
+KPX Ydieresis Oslash -35
+KPX Ydieresis Otilde -35
+KPX Ydieresis a -85
+KPX Ydieresis aacute -85
+KPX Ydieresis abreve -85
+KPX Ydieresis acircumflex -85
+KPX Ydieresis adieresis -85
+KPX Ydieresis agrave -85
+KPX Ydieresis amacron -85
+KPX Ydieresis aogonek -85
+KPX Ydieresis aring -85
+KPX Ydieresis atilde -85
+KPX Ydieresis colon -92
+KPX Ydieresis comma -92
+KPX Ydieresis e -111
+KPX Ydieresis eacute -111
+KPX Ydieresis ecaron -111
+KPX Ydieresis ecircumflex -111
+KPX Ydieresis edieresis -71
+KPX Ydieresis edotaccent -111
+KPX Ydieresis egrave -71
+KPX Ydieresis emacron -71
+KPX Ydieresis eogonek -111
+KPX Ydieresis hyphen -92
+KPX Ydieresis i -37
+KPX Ydieresis iacute -37
+KPX Ydieresis iogonek -37
+KPX Ydieresis o -111
+KPX Ydieresis oacute -111
+KPX Ydieresis ocircumflex -111
+KPX Ydieresis odieresis -111
+KPX Ydieresis ograve -111
+KPX Ydieresis ohungarumlaut -111
+KPX Ydieresis omacron -111
+KPX Ydieresis oslash -111
+KPX Ydieresis otilde -111
+KPX Ydieresis period -92
+KPX Ydieresis semicolon -92
+KPX Ydieresis u -92
+KPX Ydieresis uacute -92
+KPX Ydieresis ucircumflex -92
+KPX Ydieresis udieresis -92
+KPX Ydieresis ugrave -92
+KPX Ydieresis uhungarumlaut -92
+KPX Ydieresis umacron -92
+KPX Ydieresis uogonek -92
+KPX Ydieresis uring -92
+KPX a v -25
+KPX aacute v -25
+KPX abreve v -25
+KPX acircumflex v -25
+KPX adieresis v -25
+KPX agrave v -25
+KPX amacron v -25
+KPX aogonek v -25
+KPX aring v -25
+KPX atilde v -25
+KPX b b -10
+KPX b period -40
+KPX b u -20
+KPX b uacute -20
+KPX b ucircumflex -20
+KPX b udieresis -20
+KPX b ugrave -20
+KPX b uhungarumlaut -20
+KPX b umacron -20
+KPX b uogonek -20
+KPX b uring -20
+KPX b v -15
+KPX comma quotedblright -45
+KPX comma quoteright -55
+KPX d w -15
+KPX dcroat w -15
+KPX e v -15
+KPX eacute v -15
+KPX ecaron v -15
+KPX ecircumflex v -15
+KPX edieresis v -15
+KPX edotaccent v -15
+KPX egrave v -15
+KPX emacron v -15
+KPX eogonek v -15
+KPX f comma -15
+KPX f dotlessi -35
+KPX f i -25
+KPX f o -25
+KPX f oacute -25
+KPX f ocircumflex -25
+KPX f odieresis -25
+KPX f ograve -25
+KPX f ohungarumlaut -25
+KPX f omacron -25
+KPX f oslash -25
+KPX f otilde -25
+KPX f period -15
+KPX f quotedblright 50
+KPX f quoteright 55
+KPX g period -15
+KPX gbreve period -15
+KPX gcommaaccent period -15
+KPX h y -15
+KPX h yacute -15
+KPX h ydieresis -15
+KPX i v -10
+KPX iacute v -10
+KPX icircumflex v -10
+KPX idieresis v -10
+KPX igrave v -10
+KPX imacron v -10
+KPX iogonek v -10
+KPX k e -10
+KPX k eacute -10
+KPX k ecaron -10
+KPX k ecircumflex -10
+KPX k edieresis -10
+KPX k edotaccent -10
+KPX k egrave -10
+KPX k emacron -10
+KPX k eogonek -10
+KPX k o -15
+KPX k oacute -15
+KPX k ocircumflex -15
+KPX k odieresis -15
+KPX k ograve -15
+KPX k ohungarumlaut -15
+KPX k omacron -15
+KPX k oslash -15
+KPX k otilde -15
+KPX k y -15
+KPX k yacute -15
+KPX k ydieresis -15
+KPX kcommaaccent e -10
+KPX kcommaaccent eacute -10
+KPX kcommaaccent ecaron -10
+KPX kcommaaccent ecircumflex -10
+KPX kcommaaccent edieresis -10
+KPX kcommaaccent edotaccent -10
+KPX kcommaaccent egrave -10
+KPX kcommaaccent emacron -10
+KPX kcommaaccent eogonek -10
+KPX kcommaaccent o -15
+KPX kcommaaccent oacute -15
+KPX kcommaaccent ocircumflex -15
+KPX kcommaaccent odieresis -15
+KPX kcommaaccent ograve -15
+KPX kcommaaccent ohungarumlaut -15
+KPX kcommaaccent omacron -15
+KPX kcommaaccent oslash -15
+KPX kcommaaccent otilde -15
+KPX kcommaaccent y -15
+KPX kcommaaccent yacute -15
+KPX kcommaaccent ydieresis -15
+KPX n v -40
+KPX nacute v -40
+KPX ncaron v -40
+KPX ncommaaccent v -40
+KPX ntilde v -40
+KPX o v -10
+KPX o w -10
+KPX oacute v -10
+KPX oacute w -10
+KPX ocircumflex v -10
+KPX ocircumflex w -10
+KPX odieresis v -10
+KPX odieresis w -10
+KPX ograve v -10
+KPX ograve w -10
+KPX ohungarumlaut v -10
+KPX ohungarumlaut w -10
+KPX omacron v -10
+KPX omacron w -10
+KPX oslash v -10
+KPX oslash w -10
+KPX otilde v -10
+KPX otilde w -10
+KPX period quotedblright -55
+KPX period quoteright -55
+KPX quotedblleft A -10
+KPX quotedblleft Aacute -10
+KPX quotedblleft Abreve -10
+KPX quotedblleft Acircumflex -10
+KPX quotedblleft Adieresis -10
+KPX quotedblleft Agrave -10
+KPX quotedblleft Amacron -10
+KPX quotedblleft Aogonek -10
+KPX quotedblleft Aring -10
+KPX quotedblleft Atilde -10
+KPX quoteleft A -10
+KPX quoteleft Aacute -10
+KPX quoteleft Abreve -10
+KPX quoteleft Acircumflex -10
+KPX quoteleft Adieresis -10
+KPX quoteleft Agrave -10
+KPX quoteleft Amacron -10
+KPX quoteleft Aogonek -10
+KPX quoteleft Aring -10
+KPX quoteleft Atilde -10
+KPX quoteleft quoteleft -63
+KPX quoteright d -20
+KPX quoteright dcroat -20
+KPX quoteright quoteright -63
+KPX quoteright r -20
+KPX quoteright racute -20
+KPX quoteright rcaron -20
+KPX quoteright rcommaaccent -20
+KPX quoteright s -37
+KPX quoteright sacute -37
+KPX quoteright scaron -37
+KPX quoteright scedilla -37
+KPX quoteright scommaaccent -37
+KPX quoteright space -74
+KPX quoteright v -20
+KPX r c -18
+KPX r cacute -18
+KPX r ccaron -18
+KPX r ccedilla -18
+KPX r comma -92
+KPX r e -18
+KPX r eacute -18
+KPX r ecaron -18
+KPX r ecircumflex -18
+KPX r edieresis -18
+KPX r edotaccent -18
+KPX r egrave -18
+KPX r emacron -18
+KPX r eogonek -18
+KPX r g -10
+KPX r gbreve -10
+KPX r gcommaaccent -10
+KPX r hyphen -37
+KPX r n -15
+KPX r nacute -15
+KPX r ncaron -15
+KPX r ncommaaccent -15
+KPX r ntilde -15
+KPX r o -18
+KPX r oacute -18
+KPX r ocircumflex -18
+KPX r odieresis -18
+KPX r ograve -18
+KPX r ohungarumlaut -18
+KPX r omacron -18
+KPX r oslash -18
+KPX r otilde -18
+KPX r p -10
+KPX r period -100
+KPX r q -18
+KPX r v -10
+KPX racute c -18
+KPX racute cacute -18
+KPX racute ccaron -18
+KPX racute ccedilla -18
+KPX racute comma -92
+KPX racute e -18
+KPX racute eacute -18
+KPX racute ecaron -18
+KPX racute ecircumflex -18
+KPX racute edieresis -18
+KPX racute edotaccent -18
+KPX racute egrave -18
+KPX racute emacron -18
+KPX racute eogonek -18
+KPX racute g -10
+KPX racute gbreve -10
+KPX racute gcommaaccent -10
+KPX racute hyphen -37
+KPX racute n -15
+KPX racute nacute -15
+KPX racute ncaron -15
+KPX racute ncommaaccent -15
+KPX racute ntilde -15
+KPX racute o -18
+KPX racute oacute -18
+KPX racute ocircumflex -18
+KPX racute odieresis -18
+KPX racute ograve -18
+KPX racute ohungarumlaut -18
+KPX racute omacron -18
+KPX racute oslash -18
+KPX racute otilde -18
+KPX racute p -10
+KPX racute period -100
+KPX racute q -18
+KPX racute v -10
+KPX rcaron c -18
+KPX rcaron cacute -18
+KPX rcaron ccaron -18
+KPX rcaron ccedilla -18
+KPX rcaron comma -92
+KPX rcaron e -18
+KPX rcaron eacute -18
+KPX rcaron ecaron -18
+KPX rcaron ecircumflex -18
+KPX rcaron edieresis -18
+KPX rcaron edotaccent -18
+KPX rcaron egrave -18
+KPX rcaron emacron -18
+KPX rcaron eogonek -18
+KPX rcaron g -10
+KPX rcaron gbreve -10
+KPX rcaron gcommaaccent -10
+KPX rcaron hyphen -37
+KPX rcaron n -15
+KPX rcaron nacute -15
+KPX rcaron ncaron -15
+KPX rcaron ncommaaccent -15
+KPX rcaron ntilde -15
+KPX rcaron o -18
+KPX rcaron oacute -18
+KPX rcaron ocircumflex -18
+KPX rcaron odieresis -18
+KPX rcaron ograve -18
+KPX rcaron ohungarumlaut -18
+KPX rcaron omacron -18
+KPX rcaron oslash -18
+KPX rcaron otilde -18
+KPX rcaron p -10
+KPX rcaron period -100
+KPX rcaron q -18
+KPX rcaron v -10
+KPX rcommaaccent c -18
+KPX rcommaaccent cacute -18
+KPX rcommaaccent ccaron -18
+KPX rcommaaccent ccedilla -18
+KPX rcommaaccent comma -92
+KPX rcommaaccent e -18
+KPX rcommaaccent eacute -18
+KPX rcommaaccent ecaron -18
+KPX rcommaaccent ecircumflex -18
+KPX rcommaaccent edieresis -18
+KPX rcommaaccent edotaccent -18
+KPX rcommaaccent egrave -18
+KPX rcommaaccent emacron -18
+KPX rcommaaccent eogonek -18
+KPX rcommaaccent g -10
+KPX rcommaaccent gbreve -10
+KPX rcommaaccent gcommaaccent -10
+KPX rcommaaccent hyphen -37
+KPX rcommaaccent n -15
+KPX rcommaaccent nacute -15
+KPX rcommaaccent ncaron -15
+KPX rcommaaccent ncommaaccent -15
+KPX rcommaaccent ntilde -15
+KPX rcommaaccent o -18
+KPX rcommaaccent oacute -18
+KPX rcommaaccent ocircumflex -18
+KPX rcommaaccent odieresis -18
+KPX rcommaaccent ograve -18
+KPX rcommaaccent ohungarumlaut -18
+KPX rcommaaccent omacron -18
+KPX rcommaaccent oslash -18
+KPX rcommaaccent otilde -18
+KPX rcommaaccent p -10
+KPX rcommaaccent period -100
+KPX rcommaaccent q -18
+KPX rcommaaccent v -10
+KPX space A -55
+KPX space Aacute -55
+KPX space Abreve -55
+KPX space Acircumflex -55
+KPX space Adieresis -55
+KPX space Agrave -55
+KPX space Amacron -55
+KPX space Aogonek -55
+KPX space Aring -55
+KPX space Atilde -55
+KPX space T -30
+KPX space Tcaron -30
+KPX space Tcommaaccent -30
+KPX space V -45
+KPX space W -30
+KPX space Y -55
+KPX space Yacute -55
+KPX space Ydieresis -55
+KPX v a -10
+KPX v aacute -10
+KPX v abreve -10
+KPX v acircumflex -10
+KPX v adieresis -10
+KPX v agrave -10
+KPX v amacron -10
+KPX v aogonek -10
+KPX v aring -10
+KPX v atilde -10
+KPX v comma -55
+KPX v e -10
+KPX v eacute -10
+KPX v ecaron -10
+KPX v ecircumflex -10
+KPX v edieresis -10
+KPX v edotaccent -10
+KPX v egrave -10
+KPX v emacron -10
+KPX v eogonek -10
+KPX v o -10
+KPX v oacute -10
+KPX v ocircumflex -10
+KPX v odieresis -10
+KPX v ograve -10
+KPX v ohungarumlaut -10
+KPX v omacron -10
+KPX v oslash -10
+KPX v otilde -10
+KPX v period -70
+KPX w comma -55
+KPX w o -10
+KPX w oacute -10
+KPX w ocircumflex -10
+KPX w odieresis -10
+KPX w ograve -10
+KPX w ohungarumlaut -10
+KPX w omacron -10
+KPX w oslash -10
+KPX w otilde -10
+KPX w period -70
+KPX y comma -55
+KPX y e -10
+KPX y eacute -10
+KPX y ecaron -10
+KPX y ecircumflex -10
+KPX y edieresis -10
+KPX y edotaccent -10
+KPX y egrave -10
+KPX y emacron -10
+KPX y eogonek -10
+KPX y o -25
+KPX y oacute -25
+KPX y ocircumflex -25
+KPX y odieresis -25
+KPX y ograve -25
+KPX y ohungarumlaut -25
+KPX y omacron -25
+KPX y oslash -25
+KPX y otilde -25
+KPX y period -70
+KPX yacute comma -55
+KPX yacute e -10
+KPX yacute eacute -10
+KPX yacute ecaron -10
+KPX yacute ecircumflex -10
+KPX yacute edieresis -10
+KPX yacute edotaccent -10
+KPX yacute egrave -10
+KPX yacute emacron -10
+KPX yacute eogonek -10
+KPX yacute o -25
+KPX yacute oacute -25
+KPX yacute ocircumflex -25
+KPX yacute odieresis -25
+KPX yacute ograve -25
+KPX yacute ohungarumlaut -25
+KPX yacute omacron -25
+KPX yacute oslash -25
+KPX yacute otilde -25
+KPX yacute period -70
+KPX ydieresis comma -55
+KPX ydieresis e -10
+KPX ydieresis eacute -10
+KPX ydieresis ecaron -10
+KPX ydieresis ecircumflex -10
+KPX ydieresis edieresis -10
+KPX ydieresis edotaccent -10
+KPX ydieresis egrave -10
+KPX ydieresis emacron -10
+KPX ydieresis eogonek -10
+KPX ydieresis o -25
+KPX ydieresis oacute -25
+KPX ydieresis ocircumflex -25
+KPX ydieresis odieresis -25
+KPX ydieresis ograve -25
+KPX ydieresis ohungarumlaut -25
+KPX ydieresis omacron -25
+KPX ydieresis oslash -25
+KPX ydieresis otilde -25
+KPX ydieresis period -70
+EndKernPairs
+EndKernData
+EndFontMetrics
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Times-BoldItalic.afm b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Times-BoldItalic.afm
new file mode 100755
index 00000000..2301dfd2
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Times-BoldItalic.afm
@@ -0,0 +1,2384 @@
+StartFontMetrics 4.1
+Comment Copyright (c) 1985, 1987, 1989, 1990, 1993, 1997 Adobe Systems Incorporated. All Rights Reserved.
+Comment Creation Date: Thu May 1 13:04:06 1997
+Comment UniqueID 43066
+Comment VMusage 45874 56899
+FontName Times-BoldItalic
+FullName Times Bold Italic
+FamilyName Times
+Weight Bold
+ItalicAngle -15
+IsFixedPitch false
+CharacterSet ExtendedRoman
+FontBBox -200 -218 996 921
+UnderlinePosition -100
+UnderlineThickness 50
+Version 002.000
+Notice Copyright (c) 1985, 1987, 1989, 1990, 1993, 1997 Adobe Systems Incorporated. All Rights Reserved.Times is a trademark of Linotype-Hell AG and/or its subsidiaries.
+EncodingScheme AdobeStandardEncoding
+CapHeight 669
+XHeight 462
+Ascender 683
+Descender -217
+StdHW 42
+StdVW 121
+StartCharMetrics 315
+C 32 ; WX 250 ; N space ; B 0 0 0 0 ;
+C 33 ; WX 389 ; N exclam ; B 67 -13 370 684 ;
+C 34 ; WX 555 ; N quotedbl ; B 136 398 536 685 ;
+C 35 ; WX 500 ; N numbersign ; B -33 0 533 700 ;
+C 36 ; WX 500 ; N dollar ; B -20 -100 497 733 ;
+C 37 ; WX 833 ; N percent ; B 39 -10 793 692 ;
+C 38 ; WX 778 ; N ampersand ; B 5 -19 699 682 ;
+C 39 ; WX 333 ; N quoteright ; B 98 369 302 685 ;
+C 40 ; WX 333 ; N parenleft ; B 28 -179 344 685 ;
+C 41 ; WX 333 ; N parenright ; B -44 -179 271 685 ;
+C 42 ; WX 500 ; N asterisk ; B 65 249 456 685 ;
+C 43 ; WX 570 ; N plus ; B 33 0 537 506 ;
+C 44 ; WX 250 ; N comma ; B -60 -182 144 134 ;
+C 45 ; WX 333 ; N hyphen ; B 2 166 271 282 ;
+C 46 ; WX 250 ; N period ; B -9 -13 139 135 ;
+C 47 ; WX 278 ; N slash ; B -64 -18 342 685 ;
+C 48 ; WX 500 ; N zero ; B 17 -14 477 683 ;
+C 49 ; WX 500 ; N one ; B 5 0 419 683 ;
+C 50 ; WX 500 ; N two ; B -27 0 446 683 ;
+C 51 ; WX 500 ; N three ; B -15 -13 450 683 ;
+C 52 ; WX 500 ; N four ; B -15 0 503 683 ;
+C 53 ; WX 500 ; N five ; B -11 -13 487 669 ;
+C 54 ; WX 500 ; N six ; B 23 -15 509 679 ;
+C 55 ; WX 500 ; N seven ; B 52 0 525 669 ;
+C 56 ; WX 500 ; N eight ; B 3 -13 476 683 ;
+C 57 ; WX 500 ; N nine ; B -12 -10 475 683 ;
+C 58 ; WX 333 ; N colon ; B 23 -13 264 459 ;
+C 59 ; WX 333 ; N semicolon ; B -25 -183 264 459 ;
+C 60 ; WX 570 ; N less ; B 31 -8 539 514 ;
+C 61 ; WX 570 ; N equal ; B 33 107 537 399 ;
+C 62 ; WX 570 ; N greater ; B 31 -8 539 514 ;
+C 63 ; WX 500 ; N question ; B 79 -13 470 684 ;
+C 64 ; WX 832 ; N at ; B 63 -18 770 685 ;
+C 65 ; WX 667 ; N A ; B -67 0 593 683 ;
+C 66 ; WX 667 ; N B ; B -24 0 624 669 ;
+C 67 ; WX 667 ; N C ; B 32 -18 677 685 ;
+C 68 ; WX 722 ; N D ; B -46 0 685 669 ;
+C 69 ; WX 667 ; N E ; B -27 0 653 669 ;
+C 70 ; WX 667 ; N F ; B -13 0 660 669 ;
+C 71 ; WX 722 ; N G ; B 21 -18 706 685 ;
+C 72 ; WX 778 ; N H ; B -24 0 799 669 ;
+C 73 ; WX 389 ; N I ; B -32 0 406 669 ;
+C 74 ; WX 500 ; N J ; B -46 -99 524 669 ;
+C 75 ; WX 667 ; N K ; B -21 0 702 669 ;
+C 76 ; WX 611 ; N L ; B -22 0 590 669 ;
+C 77 ; WX 889 ; N M ; B -29 -12 917 669 ;
+C 78 ; WX 722 ; N N ; B -27 -15 748 669 ;
+C 79 ; WX 722 ; N O ; B 27 -18 691 685 ;
+C 80 ; WX 611 ; N P ; B -27 0 613 669 ;
+C 81 ; WX 722 ; N Q ; B 27 -208 691 685 ;
+C 82 ; WX 667 ; N R ; B -29 0 623 669 ;
+C 83 ; WX 556 ; N S ; B 2 -18 526 685 ;
+C 84 ; WX 611 ; N T ; B 50 0 650 669 ;
+C 85 ; WX 722 ; N U ; B 67 -18 744 669 ;
+C 86 ; WX 667 ; N V ; B 65 -18 715 669 ;
+C 87 ; WX 889 ; N W ; B 65 -18 940 669 ;
+C 88 ; WX 667 ; N X ; B -24 0 694 669 ;
+C 89 ; WX 611 ; N Y ; B 73 0 659 669 ;
+C 90 ; WX 611 ; N Z ; B -11 0 590 669 ;
+C 91 ; WX 333 ; N bracketleft ; B -37 -159 362 674 ;
+C 92 ; WX 278 ; N backslash ; B -1 -18 279 685 ;
+C 93 ; WX 333 ; N bracketright ; B -56 -157 343 674 ;
+C 94 ; WX 570 ; N asciicircum ; B 67 304 503 669 ;
+C 95 ; WX 500 ; N underscore ; B 0 -125 500 -75 ;
+C 96 ; WX 333 ; N quoteleft ; B 128 369 332 685 ;
+C 97 ; WX 500 ; N a ; B -21 -14 455 462 ;
+C 98 ; WX 500 ; N b ; B -14 -13 444 699 ;
+C 99 ; WX 444 ; N c ; B -5 -13 392 462 ;
+C 100 ; WX 500 ; N d ; B -21 -13 517 699 ;
+C 101 ; WX 444 ; N e ; B 5 -13 398 462 ;
+C 102 ; WX 333 ; N f ; B -169 -205 446 698 ; L i fi ; L l fl ;
+C 103 ; WX 500 ; N g ; B -52 -203 478 462 ;
+C 104 ; WX 556 ; N h ; B -13 -9 498 699 ;
+C 105 ; WX 278 ; N i ; B 2 -9 263 684 ;
+C 106 ; WX 278 ; N j ; B -189 -207 279 684 ;
+C 107 ; WX 500 ; N k ; B -23 -8 483 699 ;
+C 108 ; WX 278 ; N l ; B 2 -9 290 699 ;
+C 109 ; WX 778 ; N m ; B -14 -9 722 462 ;
+C 110 ; WX 556 ; N n ; B -6 -9 493 462 ;
+C 111 ; WX 500 ; N o ; B -3 -13 441 462 ;
+C 112 ; WX 500 ; N p ; B -120 -205 446 462 ;
+C 113 ; WX 500 ; N q ; B 1 -205 471 462 ;
+C 114 ; WX 389 ; N r ; B -21 0 389 462 ;
+C 115 ; WX 389 ; N s ; B -19 -13 333 462 ;
+C 116 ; WX 278 ; N t ; B -11 -9 281 594 ;
+C 117 ; WX 556 ; N u ; B 15 -9 492 462 ;
+C 118 ; WX 444 ; N v ; B 16 -13 401 462 ;
+C 119 ; WX 667 ; N w ; B 16 -13 614 462 ;
+C 120 ; WX 500 ; N x ; B -46 -13 469 462 ;
+C 121 ; WX 444 ; N y ; B -94 -205 392 462 ;
+C 122 ; WX 389 ; N z ; B -43 -78 368 449 ;
+C 123 ; WX 348 ; N braceleft ; B 5 -187 436 686 ;
+C 124 ; WX 220 ; N bar ; B 66 -218 154 782 ;
+C 125 ; WX 348 ; N braceright ; B -129 -187 302 686 ;
+C 126 ; WX 570 ; N asciitilde ; B 54 173 516 333 ;
+C 161 ; WX 389 ; N exclamdown ; B 19 -205 322 492 ;
+C 162 ; WX 500 ; N cent ; B 42 -143 439 576 ;
+C 163 ; WX 500 ; N sterling ; B -32 -12 510 683 ;
+C 164 ; WX 167 ; N fraction ; B -169 -14 324 683 ;
+C 165 ; WX 500 ; N yen ; B 33 0 628 669 ;
+C 166 ; WX 500 ; N florin ; B -87 -156 537 707 ;
+C 167 ; WX 500 ; N section ; B 36 -143 459 685 ;
+C 168 ; WX 500 ; N currency ; B -26 34 526 586 ;
+C 169 ; WX 278 ; N quotesingle ; B 128 398 268 685 ;
+C 170 ; WX 500 ; N quotedblleft ; B 53 369 513 685 ;
+C 171 ; WX 500 ; N guillemotleft ; B 12 32 468 415 ;
+C 172 ; WX 333 ; N guilsinglleft ; B 32 32 303 415 ;
+C 173 ; WX 333 ; N guilsinglright ; B 10 32 281 415 ;
+C 174 ; WX 556 ; N fi ; B -188 -205 514 703 ;
+C 175 ; WX 556 ; N fl ; B -186 -205 553 704 ;
+C 177 ; WX 500 ; N endash ; B -40 178 477 269 ;
+C 178 ; WX 500 ; N dagger ; B 91 -145 494 685 ;
+C 179 ; WX 500 ; N daggerdbl ; B 10 -139 493 685 ;
+C 180 ; WX 250 ; N periodcentered ; B 51 257 199 405 ;
+C 182 ; WX 500 ; N paragraph ; B -57 -193 562 669 ;
+C 183 ; WX 350 ; N bullet ; B 0 175 350 525 ;
+C 184 ; WX 333 ; N quotesinglbase ; B -5 -182 199 134 ;
+C 185 ; WX 500 ; N quotedblbase ; B -57 -182 403 134 ;
+C 186 ; WX 500 ; N quotedblright ; B 53 369 513 685 ;
+C 187 ; WX 500 ; N guillemotright ; B 12 32 468 415 ;
+C 188 ; WX 1000 ; N ellipsis ; B 40 -13 852 135 ;
+C 189 ; WX 1000 ; N perthousand ; B 7 -29 996 706 ;
+C 191 ; WX 500 ; N questiondown ; B 30 -205 421 492 ;
+C 193 ; WX 333 ; N grave ; B 85 516 297 697 ;
+C 194 ; WX 333 ; N acute ; B 139 516 379 697 ;
+C 195 ; WX 333 ; N circumflex ; B 40 516 367 690 ;
+C 196 ; WX 333 ; N tilde ; B 48 536 407 655 ;
+C 197 ; WX 333 ; N macron ; B 51 553 393 623 ;
+C 198 ; WX 333 ; N breve ; B 71 516 387 678 ;
+C 199 ; WX 333 ; N dotaccent ; B 163 550 298 684 ;
+C 200 ; WX 333 ; N dieresis ; B 55 550 402 684 ;
+C 202 ; WX 333 ; N ring ; B 127 516 340 729 ;
+C 203 ; WX 333 ; N cedilla ; B -80 -218 156 5 ;
+C 205 ; WX 333 ; N hungarumlaut ; B 69 516 498 697 ;
+C 206 ; WX 333 ; N ogonek ; B 15 -183 244 34 ;
+C 207 ; WX 333 ; N caron ; B 79 516 411 690 ;
+C 208 ; WX 1000 ; N emdash ; B -40 178 977 269 ;
+C 225 ; WX 944 ; N AE ; B -64 0 918 669 ;
+C 227 ; WX 266 ; N ordfeminine ; B 16 399 330 685 ;
+C 232 ; WX 611 ; N Lslash ; B -22 0 590 669 ;
+C 233 ; WX 722 ; N Oslash ; B 27 -125 691 764 ;
+C 234 ; WX 944 ; N OE ; B 23 -8 946 677 ;
+C 235 ; WX 300 ; N ordmasculine ; B 56 400 347 685 ;
+C 241 ; WX 722 ; N ae ; B -5 -13 673 462 ;
+C 245 ; WX 278 ; N dotlessi ; B 2 -9 238 462 ;
+C 248 ; WX 278 ; N lslash ; B -7 -9 307 699 ;
+C 249 ; WX 500 ; N oslash ; B -3 -119 441 560 ;
+C 250 ; WX 722 ; N oe ; B 6 -13 674 462 ;
+C 251 ; WX 500 ; N germandbls ; B -200 -200 473 705 ;
+C -1 ; WX 389 ; N Idieresis ; B -32 0 450 862 ;
+C -1 ; WX 444 ; N eacute ; B 5 -13 435 697 ;
+C -1 ; WX 500 ; N abreve ; B -21 -14 471 678 ;
+C -1 ; WX 556 ; N uhungarumlaut ; B 15 -9 610 697 ;
+C -1 ; WX 444 ; N ecaron ; B 5 -13 467 690 ;
+C -1 ; WX 611 ; N Ydieresis ; B 73 0 659 862 ;
+C -1 ; WX 570 ; N divide ; B 33 -29 537 535 ;
+C -1 ; WX 611 ; N Yacute ; B 73 0 659 904 ;
+C -1 ; WX 667 ; N Acircumflex ; B -67 0 593 897 ;
+C -1 ; WX 500 ; N aacute ; B -21 -14 463 697 ;
+C -1 ; WX 722 ; N Ucircumflex ; B 67 -18 744 897 ;
+C -1 ; WX 444 ; N yacute ; B -94 -205 435 697 ;
+C -1 ; WX 389 ; N scommaaccent ; B -19 -218 333 462 ;
+C -1 ; WX 444 ; N ecircumflex ; B 5 -13 423 690 ;
+C -1 ; WX 722 ; N Uring ; B 67 -18 744 921 ;
+C -1 ; WX 722 ; N Udieresis ; B 67 -18 744 862 ;
+C -1 ; WX 500 ; N aogonek ; B -21 -183 455 462 ;
+C -1 ; WX 722 ; N Uacute ; B 67 -18 744 904 ;
+C -1 ; WX 556 ; N uogonek ; B 15 -183 492 462 ;
+C -1 ; WX 667 ; N Edieresis ; B -27 0 653 862 ;
+C -1 ; WX 722 ; N Dcroat ; B -31 0 700 669 ;
+C -1 ; WX 250 ; N commaaccent ; B -36 -218 131 -50 ;
+C -1 ; WX 747 ; N copyright ; B 30 -18 718 685 ;
+C -1 ; WX 667 ; N Emacron ; B -27 0 653 830 ;
+C -1 ; WX 444 ; N ccaron ; B -5 -13 467 690 ;
+C -1 ; WX 500 ; N aring ; B -21 -14 455 729 ;
+C -1 ; WX 722 ; N Ncommaaccent ; B -27 -218 748 669 ;
+C -1 ; WX 278 ; N lacute ; B 2 -9 392 904 ;
+C -1 ; WX 500 ; N agrave ; B -21 -14 455 697 ;
+C -1 ; WX 611 ; N Tcommaaccent ; B 50 -218 650 669 ;
+C -1 ; WX 667 ; N Cacute ; B 32 -18 677 904 ;
+C -1 ; WX 500 ; N atilde ; B -21 -14 491 655 ;
+C -1 ; WX 667 ; N Edotaccent ; B -27 0 653 862 ;
+C -1 ; WX 389 ; N scaron ; B -19 -13 424 690 ;
+C -1 ; WX 389 ; N scedilla ; B -19 -218 333 462 ;
+C -1 ; WX 278 ; N iacute ; B 2 -9 352 697 ;
+C -1 ; WX 494 ; N lozenge ; B 10 0 484 745 ;
+C -1 ; WX 667 ; N Rcaron ; B -29 0 623 897 ;
+C -1 ; WX 722 ; N Gcommaaccent ; B 21 -218 706 685 ;
+C -1 ; WX 556 ; N ucircumflex ; B 15 -9 492 690 ;
+C -1 ; WX 500 ; N acircumflex ; B -21 -14 455 690 ;
+C -1 ; WX 667 ; N Amacron ; B -67 0 593 830 ;
+C -1 ; WX 389 ; N rcaron ; B -21 0 424 690 ;
+C -1 ; WX 444 ; N ccedilla ; B -5 -218 392 462 ;
+C -1 ; WX 611 ; N Zdotaccent ; B -11 0 590 862 ;
+C -1 ; WX 611 ; N Thorn ; B -27 0 573 669 ;
+C -1 ; WX 722 ; N Omacron ; B 27 -18 691 830 ;
+C -1 ; WX 667 ; N Racute ; B -29 0 623 904 ;
+C -1 ; WX 556 ; N Sacute ; B 2 -18 531 904 ;
+C -1 ; WX 608 ; N dcaron ; B -21 -13 675 708 ;
+C -1 ; WX 722 ; N Umacron ; B 67 -18 744 830 ;
+C -1 ; WX 556 ; N uring ; B 15 -9 492 729 ;
+C -1 ; WX 300 ; N threesuperior ; B 17 265 321 683 ;
+C -1 ; WX 722 ; N Ograve ; B 27 -18 691 904 ;
+C -1 ; WX 667 ; N Agrave ; B -67 0 593 904 ;
+C -1 ; WX 667 ; N Abreve ; B -67 0 593 885 ;
+C -1 ; WX 570 ; N multiply ; B 48 16 522 490 ;
+C -1 ; WX 556 ; N uacute ; B 15 -9 492 697 ;
+C -1 ; WX 611 ; N Tcaron ; B 50 0 650 897 ;
+C -1 ; WX 494 ; N partialdiff ; B 11 -21 494 750 ;
+C -1 ; WX 444 ; N ydieresis ; B -94 -205 443 655 ;
+C -1 ; WX 722 ; N Nacute ; B -27 -15 748 904 ;
+C -1 ; WX 278 ; N icircumflex ; B -3 -9 324 690 ;
+C -1 ; WX 667 ; N Ecircumflex ; B -27 0 653 897 ;
+C -1 ; WX 500 ; N adieresis ; B -21 -14 476 655 ;
+C -1 ; WX 444 ; N edieresis ; B 5 -13 448 655 ;
+C -1 ; WX 444 ; N cacute ; B -5 -13 435 697 ;
+C -1 ; WX 556 ; N nacute ; B -6 -9 493 697 ;
+C -1 ; WX 556 ; N umacron ; B 15 -9 492 623 ;
+C -1 ; WX 722 ; N Ncaron ; B -27 -15 748 897 ;
+C -1 ; WX 389 ; N Iacute ; B -32 0 432 904 ;
+C -1 ; WX 570 ; N plusminus ; B 33 0 537 506 ;
+C -1 ; WX 220 ; N brokenbar ; B 66 -143 154 707 ;
+C -1 ; WX 747 ; N registered ; B 30 -18 718 685 ;
+C -1 ; WX 722 ; N Gbreve ; B 21 -18 706 885 ;
+C -1 ; WX 389 ; N Idotaccent ; B -32 0 406 862 ;
+C -1 ; WX 600 ; N summation ; B 14 -10 585 706 ;
+C -1 ; WX 667 ; N Egrave ; B -27 0 653 904 ;
+C -1 ; WX 389 ; N racute ; B -21 0 407 697 ;
+C -1 ; WX 500 ; N omacron ; B -3 -13 462 623 ;
+C -1 ; WX 611 ; N Zacute ; B -11 0 590 904 ;
+C -1 ; WX 611 ; N Zcaron ; B -11 0 590 897 ;
+C -1 ; WX 549 ; N greaterequal ; B 26 0 523 704 ;
+C -1 ; WX 722 ; N Eth ; B -31 0 700 669 ;
+C -1 ; WX 667 ; N Ccedilla ; B 32 -218 677 685 ;
+C -1 ; WX 278 ; N lcommaaccent ; B -42 -218 290 699 ;
+C -1 ; WX 366 ; N tcaron ; B -11 -9 434 754 ;
+C -1 ; WX 444 ; N eogonek ; B 5 -183 398 462 ;
+C -1 ; WX 722 ; N Uogonek ; B 67 -183 744 669 ;
+C -1 ; WX 667 ; N Aacute ; B -67 0 593 904 ;
+C -1 ; WX 667 ; N Adieresis ; B -67 0 593 862 ;
+C -1 ; WX 444 ; N egrave ; B 5 -13 398 697 ;
+C -1 ; WX 389 ; N zacute ; B -43 -78 407 697 ;
+C -1 ; WX 278 ; N iogonek ; B -20 -183 263 684 ;
+C -1 ; WX 722 ; N Oacute ; B 27 -18 691 904 ;
+C -1 ; WX 500 ; N oacute ; B -3 -13 463 697 ;
+C -1 ; WX 500 ; N amacron ; B -21 -14 467 623 ;
+C -1 ; WX 389 ; N sacute ; B -19 -13 407 697 ;
+C -1 ; WX 278 ; N idieresis ; B 2 -9 364 655 ;
+C -1 ; WX 722 ; N Ocircumflex ; B 27 -18 691 897 ;
+C -1 ; WX 722 ; N Ugrave ; B 67 -18 744 904 ;
+C -1 ; WX 612 ; N Delta ; B 6 0 608 688 ;
+C -1 ; WX 500 ; N thorn ; B -120 -205 446 699 ;
+C -1 ; WX 300 ; N twosuperior ; B 2 274 313 683 ;
+C -1 ; WX 722 ; N Odieresis ; B 27 -18 691 862 ;
+C -1 ; WX 576 ; N mu ; B -60 -207 516 449 ;
+C -1 ; WX 278 ; N igrave ; B 2 -9 259 697 ;
+C -1 ; WX 500 ; N ohungarumlaut ; B -3 -13 582 697 ;
+C -1 ; WX 667 ; N Eogonek ; B -27 -183 653 669 ;
+C -1 ; WX 500 ; N dcroat ; B -21 -13 552 699 ;
+C -1 ; WX 750 ; N threequarters ; B 7 -14 726 683 ;
+C -1 ; WX 556 ; N Scedilla ; B 2 -218 526 685 ;
+C -1 ; WX 382 ; N lcaron ; B 2 -9 448 708 ;
+C -1 ; WX 667 ; N Kcommaaccent ; B -21 -218 702 669 ;
+C -1 ; WX 611 ; N Lacute ; B -22 0 590 904 ;
+C -1 ; WX 1000 ; N trademark ; B 32 263 968 669 ;
+C -1 ; WX 444 ; N edotaccent ; B 5 -13 398 655 ;
+C -1 ; WX 389 ; N Igrave ; B -32 0 406 904 ;
+C -1 ; WX 389 ; N Imacron ; B -32 0 461 830 ;
+C -1 ; WX 611 ; N Lcaron ; B -22 0 671 718 ;
+C -1 ; WX 750 ; N onehalf ; B -9 -14 723 683 ;
+C -1 ; WX 549 ; N lessequal ; B 29 0 526 704 ;
+C -1 ; WX 500 ; N ocircumflex ; B -3 -13 451 690 ;
+C -1 ; WX 556 ; N ntilde ; B -6 -9 504 655 ;
+C -1 ; WX 722 ; N Uhungarumlaut ; B 67 -18 744 904 ;
+C -1 ; WX 667 ; N Eacute ; B -27 0 653 904 ;
+C -1 ; WX 444 ; N emacron ; B 5 -13 439 623 ;
+C -1 ; WX 500 ; N gbreve ; B -52 -203 478 678 ;
+C -1 ; WX 750 ; N onequarter ; B 7 -14 721 683 ;
+C -1 ; WX 556 ; N Scaron ; B 2 -18 553 897 ;
+C -1 ; WX 556 ; N Scommaaccent ; B 2 -218 526 685 ;
+C -1 ; WX 722 ; N Ohungarumlaut ; B 27 -18 723 904 ;
+C -1 ; WX 400 ; N degree ; B 83 397 369 683 ;
+C -1 ; WX 500 ; N ograve ; B -3 -13 441 697 ;
+C -1 ; WX 667 ; N Ccaron ; B 32 -18 677 897 ;
+C -1 ; WX 556 ; N ugrave ; B 15 -9 492 697 ;
+C -1 ; WX 549 ; N radical ; B 10 -46 512 850 ;
+C -1 ; WX 722 ; N Dcaron ; B -46 0 685 897 ;
+C -1 ; WX 389 ; N rcommaaccent ; B -67 -218 389 462 ;
+C -1 ; WX 722 ; N Ntilde ; B -27 -15 748 862 ;
+C -1 ; WX 500 ; N otilde ; B -3 -13 491 655 ;
+C -1 ; WX 667 ; N Rcommaaccent ; B -29 -218 623 669 ;
+C -1 ; WX 611 ; N Lcommaaccent ; B -22 -218 590 669 ;
+C -1 ; WX 667 ; N Atilde ; B -67 0 593 862 ;
+C -1 ; WX 667 ; N Aogonek ; B -67 -183 604 683 ;
+C -1 ; WX 667 ; N Aring ; B -67 0 593 921 ;
+C -1 ; WX 722 ; N Otilde ; B 27 -18 691 862 ;
+C -1 ; WX 389 ; N zdotaccent ; B -43 -78 368 655 ;
+C -1 ; WX 667 ; N Ecaron ; B -27 0 653 897 ;
+C -1 ; WX 389 ; N Iogonek ; B -32 -183 406 669 ;
+C -1 ; WX 500 ; N kcommaaccent ; B -23 -218 483 699 ;
+C -1 ; WX 606 ; N minus ; B 51 209 555 297 ;
+C -1 ; WX 389 ; N Icircumflex ; B -32 0 450 897 ;
+C -1 ; WX 556 ; N ncaron ; B -6 -9 523 690 ;
+C -1 ; WX 278 ; N tcommaaccent ; B -62 -218 281 594 ;
+C -1 ; WX 606 ; N logicalnot ; B 51 108 555 399 ;
+C -1 ; WX 500 ; N odieresis ; B -3 -13 471 655 ;
+C -1 ; WX 556 ; N udieresis ; B 15 -9 499 655 ;
+C -1 ; WX 549 ; N notequal ; B 15 -49 540 570 ;
+C -1 ; WX 500 ; N gcommaaccent ; B -52 -203 478 767 ;
+C -1 ; WX 500 ; N eth ; B -3 -13 454 699 ;
+C -1 ; WX 389 ; N zcaron ; B -43 -78 424 690 ;
+C -1 ; WX 556 ; N ncommaaccent ; B -6 -218 493 462 ;
+C -1 ; WX 300 ; N onesuperior ; B 30 274 301 683 ;
+C -1 ; WX 278 ; N imacron ; B 2 -9 294 623 ;
+C -1 ; WX 500 ; N Euro ; B 0 0 0 0 ;
+EndCharMetrics
+StartKernData
+StartKernPairs 2038
+KPX A C -65
+KPX A Cacute -65
+KPX A Ccaron -65
+KPX A Ccedilla -65
+KPX A G -60
+KPX A Gbreve -60
+KPX A Gcommaaccent -60
+KPX A O -50
+KPX A Oacute -50
+KPX A Ocircumflex -50
+KPX A Odieresis -50
+KPX A Ograve -50
+KPX A Ohungarumlaut -50
+KPX A Omacron -50
+KPX A Oslash -50
+KPX A Otilde -50
+KPX A Q -55
+KPX A T -55
+KPX A Tcaron -55
+KPX A Tcommaaccent -55
+KPX A U -50
+KPX A Uacute -50
+KPX A Ucircumflex -50
+KPX A Udieresis -50
+KPX A Ugrave -50
+KPX A Uhungarumlaut -50
+KPX A Umacron -50
+KPX A Uogonek -50
+KPX A Uring -50
+KPX A V -95
+KPX A W -100
+KPX A Y -70
+KPX A Yacute -70
+KPX A Ydieresis -70
+KPX A quoteright -74
+KPX A u -30
+KPX A uacute -30
+KPX A ucircumflex -30
+KPX A udieresis -30
+KPX A ugrave -30
+KPX A uhungarumlaut -30
+KPX A umacron -30
+KPX A uogonek -30
+KPX A uring -30
+KPX A v -74
+KPX A w -74
+KPX A y -74
+KPX A yacute -74
+KPX A ydieresis -74
+KPX Aacute C -65
+KPX Aacute Cacute -65
+KPX Aacute Ccaron -65
+KPX Aacute Ccedilla -65
+KPX Aacute G -60
+KPX Aacute Gbreve -60
+KPX Aacute Gcommaaccent -60
+KPX Aacute O -50
+KPX Aacute Oacute -50
+KPX Aacute Ocircumflex -50
+KPX Aacute Odieresis -50
+KPX Aacute Ograve -50
+KPX Aacute Ohungarumlaut -50
+KPX Aacute Omacron -50
+KPX Aacute Oslash -50
+KPX Aacute Otilde -50
+KPX Aacute Q -55
+KPX Aacute T -55
+KPX Aacute Tcaron -55
+KPX Aacute Tcommaaccent -55
+KPX Aacute U -50
+KPX Aacute Uacute -50
+KPX Aacute Ucircumflex -50
+KPX Aacute Udieresis -50
+KPX Aacute Ugrave -50
+KPX Aacute Uhungarumlaut -50
+KPX Aacute Umacron -50
+KPX Aacute Uogonek -50
+KPX Aacute Uring -50
+KPX Aacute V -95
+KPX Aacute W -100
+KPX Aacute Y -70
+KPX Aacute Yacute -70
+KPX Aacute Ydieresis -70
+KPX Aacute quoteright -74
+KPX Aacute u -30
+KPX Aacute uacute -30
+KPX Aacute ucircumflex -30
+KPX Aacute udieresis -30
+KPX Aacute ugrave -30
+KPX Aacute uhungarumlaut -30
+KPX Aacute umacron -30
+KPX Aacute uogonek -30
+KPX Aacute uring -30
+KPX Aacute v -74
+KPX Aacute w -74
+KPX Aacute y -74
+KPX Aacute yacute -74
+KPX Aacute ydieresis -74
+KPX Abreve C -65
+KPX Abreve Cacute -65
+KPX Abreve Ccaron -65
+KPX Abreve Ccedilla -65
+KPX Abreve G -60
+KPX Abreve Gbreve -60
+KPX Abreve Gcommaaccent -60
+KPX Abreve O -50
+KPX Abreve Oacute -50
+KPX Abreve Ocircumflex -50
+KPX Abreve Odieresis -50
+KPX Abreve Ograve -50
+KPX Abreve Ohungarumlaut -50
+KPX Abreve Omacron -50
+KPX Abreve Oslash -50
+KPX Abreve Otilde -50
+KPX Abreve Q -55
+KPX Abreve T -55
+KPX Abreve Tcaron -55
+KPX Abreve Tcommaaccent -55
+KPX Abreve U -50
+KPX Abreve Uacute -50
+KPX Abreve Ucircumflex -50
+KPX Abreve Udieresis -50
+KPX Abreve Ugrave -50
+KPX Abreve Uhungarumlaut -50
+KPX Abreve Umacron -50
+KPX Abreve Uogonek -50
+KPX Abreve Uring -50
+KPX Abreve V -95
+KPX Abreve W -100
+KPX Abreve Y -70
+KPX Abreve Yacute -70
+KPX Abreve Ydieresis -70
+KPX Abreve quoteright -74
+KPX Abreve u -30
+KPX Abreve uacute -30
+KPX Abreve ucircumflex -30
+KPX Abreve udieresis -30
+KPX Abreve ugrave -30
+KPX Abreve uhungarumlaut -30
+KPX Abreve umacron -30
+KPX Abreve uogonek -30
+KPX Abreve uring -30
+KPX Abreve v -74
+KPX Abreve w -74
+KPX Abreve y -74
+KPX Abreve yacute -74
+KPX Abreve ydieresis -74
+KPX Acircumflex C -65
+KPX Acircumflex Cacute -65
+KPX Acircumflex Ccaron -65
+KPX Acircumflex Ccedilla -65
+KPX Acircumflex G -60
+KPX Acircumflex Gbreve -60
+KPX Acircumflex Gcommaaccent -60
+KPX Acircumflex O -50
+KPX Acircumflex Oacute -50
+KPX Acircumflex Ocircumflex -50
+KPX Acircumflex Odieresis -50
+KPX Acircumflex Ograve -50
+KPX Acircumflex Ohungarumlaut -50
+KPX Acircumflex Omacron -50
+KPX Acircumflex Oslash -50
+KPX Acircumflex Otilde -50
+KPX Acircumflex Q -55
+KPX Acircumflex T -55
+KPX Acircumflex Tcaron -55
+KPX Acircumflex Tcommaaccent -55
+KPX Acircumflex U -50
+KPX Acircumflex Uacute -50
+KPX Acircumflex Ucircumflex -50
+KPX Acircumflex Udieresis -50
+KPX Acircumflex Ugrave -50
+KPX Acircumflex Uhungarumlaut -50
+KPX Acircumflex Umacron -50
+KPX Acircumflex Uogonek -50
+KPX Acircumflex Uring -50
+KPX Acircumflex V -95
+KPX Acircumflex W -100
+KPX Acircumflex Y -70
+KPX Acircumflex Yacute -70
+KPX Acircumflex Ydieresis -70
+KPX Acircumflex quoteright -74
+KPX Acircumflex u -30
+KPX Acircumflex uacute -30
+KPX Acircumflex ucircumflex -30
+KPX Acircumflex udieresis -30
+KPX Acircumflex ugrave -30
+KPX Acircumflex uhungarumlaut -30
+KPX Acircumflex umacron -30
+KPX Acircumflex uogonek -30
+KPX Acircumflex uring -30
+KPX Acircumflex v -74
+KPX Acircumflex w -74
+KPX Acircumflex y -74
+KPX Acircumflex yacute -74
+KPX Acircumflex ydieresis -74
+KPX Adieresis C -65
+KPX Adieresis Cacute -65
+KPX Adieresis Ccaron -65
+KPX Adieresis Ccedilla -65
+KPX Adieresis G -60
+KPX Adieresis Gbreve -60
+KPX Adieresis Gcommaaccent -60
+KPX Adieresis O -50
+KPX Adieresis Oacute -50
+KPX Adieresis Ocircumflex -50
+KPX Adieresis Odieresis -50
+KPX Adieresis Ograve -50
+KPX Adieresis Ohungarumlaut -50
+KPX Adieresis Omacron -50
+KPX Adieresis Oslash -50
+KPX Adieresis Otilde -50
+KPX Adieresis Q -55
+KPX Adieresis T -55
+KPX Adieresis Tcaron -55
+KPX Adieresis Tcommaaccent -55
+KPX Adieresis U -50
+KPX Adieresis Uacute -50
+KPX Adieresis Ucircumflex -50
+KPX Adieresis Udieresis -50
+KPX Adieresis Ugrave -50
+KPX Adieresis Uhungarumlaut -50
+KPX Adieresis Umacron -50
+KPX Adieresis Uogonek -50
+KPX Adieresis Uring -50
+KPX Adieresis V -95
+KPX Adieresis W -100
+KPX Adieresis Y -70
+KPX Adieresis Yacute -70
+KPX Adieresis Ydieresis -70
+KPX Adieresis quoteright -74
+KPX Adieresis u -30
+KPX Adieresis uacute -30
+KPX Adieresis ucircumflex -30
+KPX Adieresis udieresis -30
+KPX Adieresis ugrave -30
+KPX Adieresis uhungarumlaut -30
+KPX Adieresis umacron -30
+KPX Adieresis uogonek -30
+KPX Adieresis uring -30
+KPX Adieresis v -74
+KPX Adieresis w -74
+KPX Adieresis y -74
+KPX Adieresis yacute -74
+KPX Adieresis ydieresis -74
+KPX Agrave C -65
+KPX Agrave Cacute -65
+KPX Agrave Ccaron -65
+KPX Agrave Ccedilla -65
+KPX Agrave G -60
+KPX Agrave Gbreve -60
+KPX Agrave Gcommaaccent -60
+KPX Agrave O -50
+KPX Agrave Oacute -50
+KPX Agrave Ocircumflex -50
+KPX Agrave Odieresis -50
+KPX Agrave Ograve -50
+KPX Agrave Ohungarumlaut -50
+KPX Agrave Omacron -50
+KPX Agrave Oslash -50
+KPX Agrave Otilde -50
+KPX Agrave Q -55
+KPX Agrave T -55
+KPX Agrave Tcaron -55
+KPX Agrave Tcommaaccent -55
+KPX Agrave U -50
+KPX Agrave Uacute -50
+KPX Agrave Ucircumflex -50
+KPX Agrave Udieresis -50
+KPX Agrave Ugrave -50
+KPX Agrave Uhungarumlaut -50
+KPX Agrave Umacron -50
+KPX Agrave Uogonek -50
+KPX Agrave Uring -50
+KPX Agrave V -95
+KPX Agrave W -100
+KPX Agrave Y -70
+KPX Agrave Yacute -70
+KPX Agrave Ydieresis -70
+KPX Agrave quoteright -74
+KPX Agrave u -30
+KPX Agrave uacute -30
+KPX Agrave ucircumflex -30
+KPX Agrave udieresis -30
+KPX Agrave ugrave -30
+KPX Agrave uhungarumlaut -30
+KPX Agrave umacron -30
+KPX Agrave uogonek -30
+KPX Agrave uring -30
+KPX Agrave v -74
+KPX Agrave w -74
+KPX Agrave y -74
+KPX Agrave yacute -74
+KPX Agrave ydieresis -74
+KPX Amacron C -65
+KPX Amacron Cacute -65
+KPX Amacron Ccaron -65
+KPX Amacron Ccedilla -65
+KPX Amacron G -60
+KPX Amacron Gbreve -60
+KPX Amacron Gcommaaccent -60
+KPX Amacron O -50
+KPX Amacron Oacute -50
+KPX Amacron Ocircumflex -50
+KPX Amacron Odieresis -50
+KPX Amacron Ograve -50
+KPX Amacron Ohungarumlaut -50
+KPX Amacron Omacron -50
+KPX Amacron Oslash -50
+KPX Amacron Otilde -50
+KPX Amacron Q -55
+KPX Amacron T -55
+KPX Amacron Tcaron -55
+KPX Amacron Tcommaaccent -55
+KPX Amacron U -50
+KPX Amacron Uacute -50
+KPX Amacron Ucircumflex -50
+KPX Amacron Udieresis -50
+KPX Amacron Ugrave -50
+KPX Amacron Uhungarumlaut -50
+KPX Amacron Umacron -50
+KPX Amacron Uogonek -50
+KPX Amacron Uring -50
+KPX Amacron V -95
+KPX Amacron W -100
+KPX Amacron Y -70
+KPX Amacron Yacute -70
+KPX Amacron Ydieresis -70
+KPX Amacron quoteright -74
+KPX Amacron u -30
+KPX Amacron uacute -30
+KPX Amacron ucircumflex -30
+KPX Amacron udieresis -30
+KPX Amacron ugrave -30
+KPX Amacron uhungarumlaut -30
+KPX Amacron umacron -30
+KPX Amacron uogonek -30
+KPX Amacron uring -30
+KPX Amacron v -74
+KPX Amacron w -74
+KPX Amacron y -74
+KPX Amacron yacute -74
+KPX Amacron ydieresis -74
+KPX Aogonek C -65
+KPX Aogonek Cacute -65
+KPX Aogonek Ccaron -65
+KPX Aogonek Ccedilla -65
+KPX Aogonek G -60
+KPX Aogonek Gbreve -60
+KPX Aogonek Gcommaaccent -60
+KPX Aogonek O -50
+KPX Aogonek Oacute -50
+KPX Aogonek Ocircumflex -50
+KPX Aogonek Odieresis -50
+KPX Aogonek Ograve -50
+KPX Aogonek Ohungarumlaut -50
+KPX Aogonek Omacron -50
+KPX Aogonek Oslash -50
+KPX Aogonek Otilde -50
+KPX Aogonek Q -55
+KPX Aogonek T -55
+KPX Aogonek Tcaron -55
+KPX Aogonek Tcommaaccent -55
+KPX Aogonek U -50
+KPX Aogonek Uacute -50
+KPX Aogonek Ucircumflex -50
+KPX Aogonek Udieresis -50
+KPX Aogonek Ugrave -50
+KPX Aogonek Uhungarumlaut -50
+KPX Aogonek Umacron -50
+KPX Aogonek Uogonek -50
+KPX Aogonek Uring -50
+KPX Aogonek V -95
+KPX Aogonek W -100
+KPX Aogonek Y -70
+KPX Aogonek Yacute -70
+KPX Aogonek Ydieresis -70
+KPX Aogonek quoteright -74
+KPX Aogonek u -30
+KPX Aogonek uacute -30
+KPX Aogonek ucircumflex -30
+KPX Aogonek udieresis -30
+KPX Aogonek ugrave -30
+KPX Aogonek uhungarumlaut -30
+KPX Aogonek umacron -30
+KPX Aogonek uogonek -30
+KPX Aogonek uring -30
+KPX Aogonek v -74
+KPX Aogonek w -74
+KPX Aogonek y -34
+KPX Aogonek yacute -34
+KPX Aogonek ydieresis -34
+KPX Aring C -65
+KPX Aring Cacute -65
+KPX Aring Ccaron -65
+KPX Aring Ccedilla -65
+KPX Aring G -60
+KPX Aring Gbreve -60
+KPX Aring Gcommaaccent -60
+KPX Aring O -50
+KPX Aring Oacute -50
+KPX Aring Ocircumflex -50
+KPX Aring Odieresis -50
+KPX Aring Ograve -50
+KPX Aring Ohungarumlaut -50
+KPX Aring Omacron -50
+KPX Aring Oslash -50
+KPX Aring Otilde -50
+KPX Aring Q -55
+KPX Aring T -55
+KPX Aring Tcaron -55
+KPX Aring Tcommaaccent -55
+KPX Aring U -50
+KPX Aring Uacute -50
+KPX Aring Ucircumflex -50
+KPX Aring Udieresis -50
+KPX Aring Ugrave -50
+KPX Aring Uhungarumlaut -50
+KPX Aring Umacron -50
+KPX Aring Uogonek -50
+KPX Aring Uring -50
+KPX Aring V -95
+KPX Aring W -100
+KPX Aring Y -70
+KPX Aring Yacute -70
+KPX Aring Ydieresis -70
+KPX Aring quoteright -74
+KPX Aring u -30
+KPX Aring uacute -30
+KPX Aring ucircumflex -30
+KPX Aring udieresis -30
+KPX Aring ugrave -30
+KPX Aring uhungarumlaut -30
+KPX Aring umacron -30
+KPX Aring uogonek -30
+KPX Aring uring -30
+KPX Aring v -74
+KPX Aring w -74
+KPX Aring y -74
+KPX Aring yacute -74
+KPX Aring ydieresis -74
+KPX Atilde C -65
+KPX Atilde Cacute -65
+KPX Atilde Ccaron -65
+KPX Atilde Ccedilla -65
+KPX Atilde G -60
+KPX Atilde Gbreve -60
+KPX Atilde Gcommaaccent -60
+KPX Atilde O -50
+KPX Atilde Oacute -50
+KPX Atilde Ocircumflex -50
+KPX Atilde Odieresis -50
+KPX Atilde Ograve -50
+KPX Atilde Ohungarumlaut -50
+KPX Atilde Omacron -50
+KPX Atilde Oslash -50
+KPX Atilde Otilde -50
+KPX Atilde Q -55
+KPX Atilde T -55
+KPX Atilde Tcaron -55
+KPX Atilde Tcommaaccent -55
+KPX Atilde U -50
+KPX Atilde Uacute -50
+KPX Atilde Ucircumflex -50
+KPX Atilde Udieresis -50
+KPX Atilde Ugrave -50
+KPX Atilde Uhungarumlaut -50
+KPX Atilde Umacron -50
+KPX Atilde Uogonek -50
+KPX Atilde Uring -50
+KPX Atilde V -95
+KPX Atilde W -100
+KPX Atilde Y -70
+KPX Atilde Yacute -70
+KPX Atilde Ydieresis -70
+KPX Atilde quoteright -74
+KPX Atilde u -30
+KPX Atilde uacute -30
+KPX Atilde ucircumflex -30
+KPX Atilde udieresis -30
+KPX Atilde ugrave -30
+KPX Atilde uhungarumlaut -30
+KPX Atilde umacron -30
+KPX Atilde uogonek -30
+KPX Atilde uring -30
+KPX Atilde v -74
+KPX Atilde w -74
+KPX Atilde y -74
+KPX Atilde yacute -74
+KPX Atilde ydieresis -74
+KPX B A -25
+KPX B Aacute -25
+KPX B Abreve -25
+KPX B Acircumflex -25
+KPX B Adieresis -25
+KPX B Agrave -25
+KPX B Amacron -25
+KPX B Aogonek -25
+KPX B Aring -25
+KPX B Atilde -25
+KPX B U -10
+KPX B Uacute -10
+KPX B Ucircumflex -10
+KPX B Udieresis -10
+KPX B Ugrave -10
+KPX B Uhungarumlaut -10
+KPX B Umacron -10
+KPX B Uogonek -10
+KPX B Uring -10
+KPX D A -25
+KPX D Aacute -25
+KPX D Abreve -25
+KPX D Acircumflex -25
+KPX D Adieresis -25
+KPX D Agrave -25
+KPX D Amacron -25
+KPX D Aogonek -25
+KPX D Aring -25
+KPX D Atilde -25
+KPX D V -50
+KPX D W -40
+KPX D Y -50
+KPX D Yacute -50
+KPX D Ydieresis -50
+KPX Dcaron A -25
+KPX Dcaron Aacute -25
+KPX Dcaron Abreve -25
+KPX Dcaron Acircumflex -25
+KPX Dcaron Adieresis -25
+KPX Dcaron Agrave -25
+KPX Dcaron Amacron -25
+KPX Dcaron Aogonek -25
+KPX Dcaron Aring -25
+KPX Dcaron Atilde -25
+KPX Dcaron V -50
+KPX Dcaron W -40
+KPX Dcaron Y -50
+KPX Dcaron Yacute -50
+KPX Dcaron Ydieresis -50
+KPX Dcroat A -25
+KPX Dcroat Aacute -25
+KPX Dcroat Abreve -25
+KPX Dcroat Acircumflex -25
+KPX Dcroat Adieresis -25
+KPX Dcroat Agrave -25
+KPX Dcroat Amacron -25
+KPX Dcroat Aogonek -25
+KPX Dcroat Aring -25
+KPX Dcroat Atilde -25
+KPX Dcroat V -50
+KPX Dcroat W -40
+KPX Dcroat Y -50
+KPX Dcroat Yacute -50
+KPX Dcroat Ydieresis -50
+KPX F A -100
+KPX F Aacute -100
+KPX F Abreve -100
+KPX F Acircumflex -100
+KPX F Adieresis -100
+KPX F Agrave -100
+KPX F Amacron -100
+KPX F Aogonek -100
+KPX F Aring -100
+KPX F Atilde -100
+KPX F a -95
+KPX F aacute -95
+KPX F abreve -95
+KPX F acircumflex -95
+KPX F adieresis -95
+KPX F agrave -95
+KPX F amacron -95
+KPX F aogonek -95
+KPX F aring -95
+KPX F atilde -95
+KPX F comma -129
+KPX F e -100
+KPX F eacute -100
+KPX F ecaron -100
+KPX F ecircumflex -100
+KPX F edieresis -100
+KPX F edotaccent -100
+KPX F egrave -100
+KPX F emacron -100
+KPX F eogonek -100
+KPX F i -40
+KPX F iacute -40
+KPX F icircumflex -40
+KPX F idieresis -40
+KPX F igrave -40
+KPX F imacron -40
+KPX F iogonek -40
+KPX F o -70
+KPX F oacute -70
+KPX F ocircumflex -70
+KPX F odieresis -70
+KPX F ograve -70
+KPX F ohungarumlaut -70
+KPX F omacron -70
+KPX F oslash -70
+KPX F otilde -70
+KPX F period -129
+KPX F r -50
+KPX F racute -50
+KPX F rcaron -50
+KPX F rcommaaccent -50
+KPX J A -25
+KPX J Aacute -25
+KPX J Abreve -25
+KPX J Acircumflex -25
+KPX J Adieresis -25
+KPX J Agrave -25
+KPX J Amacron -25
+KPX J Aogonek -25
+KPX J Aring -25
+KPX J Atilde -25
+KPX J a -40
+KPX J aacute -40
+KPX J abreve -40
+KPX J acircumflex -40
+KPX J adieresis -40
+KPX J agrave -40
+KPX J amacron -40
+KPX J aogonek -40
+KPX J aring -40
+KPX J atilde -40
+KPX J comma -10
+KPX J e -40
+KPX J eacute -40
+KPX J ecaron -40
+KPX J ecircumflex -40
+KPX J edieresis -40
+KPX J edotaccent -40
+KPX J egrave -40
+KPX J emacron -40
+KPX J eogonek -40
+KPX J o -40
+KPX J oacute -40
+KPX J ocircumflex -40
+KPX J odieresis -40
+KPX J ograve -40
+KPX J ohungarumlaut -40
+KPX J omacron -40
+KPX J oslash -40
+KPX J otilde -40
+KPX J period -10
+KPX J u -40
+KPX J uacute -40
+KPX J ucircumflex -40
+KPX J udieresis -40
+KPX J ugrave -40
+KPX J uhungarumlaut -40
+KPX J umacron -40
+KPX J uogonek -40
+KPX J uring -40
+KPX K O -30
+KPX K Oacute -30
+KPX K Ocircumflex -30
+KPX K Odieresis -30
+KPX K Ograve -30
+KPX K Ohungarumlaut -30
+KPX K Omacron -30
+KPX K Oslash -30
+KPX K Otilde -30
+KPX K e -25
+KPX K eacute -25
+KPX K ecaron -25
+KPX K ecircumflex -25
+KPX K edieresis -25
+KPX K edotaccent -25
+KPX K egrave -25
+KPX K emacron -25
+KPX K eogonek -25
+KPX K o -25
+KPX K oacute -25
+KPX K ocircumflex -25
+KPX K odieresis -25
+KPX K ograve -25
+KPX K ohungarumlaut -25
+KPX K omacron -25
+KPX K oslash -25
+KPX K otilde -25
+KPX K u -20
+KPX K uacute -20
+KPX K ucircumflex -20
+KPX K udieresis -20
+KPX K ugrave -20
+KPX K uhungarumlaut -20
+KPX K umacron -20
+KPX K uogonek -20
+KPX K uring -20
+KPX K y -20
+KPX K yacute -20
+KPX K ydieresis -20
+KPX Kcommaaccent O -30
+KPX Kcommaaccent Oacute -30
+KPX Kcommaaccent Ocircumflex -30
+KPX Kcommaaccent Odieresis -30
+KPX Kcommaaccent Ograve -30
+KPX Kcommaaccent Ohungarumlaut -30
+KPX Kcommaaccent Omacron -30
+KPX Kcommaaccent Oslash -30
+KPX Kcommaaccent Otilde -30
+KPX Kcommaaccent e -25
+KPX Kcommaaccent eacute -25
+KPX Kcommaaccent ecaron -25
+KPX Kcommaaccent ecircumflex -25
+KPX Kcommaaccent edieresis -25
+KPX Kcommaaccent edotaccent -25
+KPX Kcommaaccent egrave -25
+KPX Kcommaaccent emacron -25
+KPX Kcommaaccent eogonek -25
+KPX Kcommaaccent o -25
+KPX Kcommaaccent oacute -25
+KPX Kcommaaccent ocircumflex -25
+KPX Kcommaaccent odieresis -25
+KPX Kcommaaccent ograve -25
+KPX Kcommaaccent ohungarumlaut -25
+KPX Kcommaaccent omacron -25
+KPX Kcommaaccent oslash -25
+KPX Kcommaaccent otilde -25
+KPX Kcommaaccent u -20
+KPX Kcommaaccent uacute -20
+KPX Kcommaaccent ucircumflex -20
+KPX Kcommaaccent udieresis -20
+KPX Kcommaaccent ugrave -20
+KPX Kcommaaccent uhungarumlaut -20
+KPX Kcommaaccent umacron -20
+KPX Kcommaaccent uogonek -20
+KPX Kcommaaccent uring -20
+KPX Kcommaaccent y -20
+KPX Kcommaaccent yacute -20
+KPX Kcommaaccent ydieresis -20
+KPX L T -18
+KPX L Tcaron -18
+KPX L Tcommaaccent -18
+KPX L V -37
+KPX L W -37
+KPX L Y -37
+KPX L Yacute -37
+KPX L Ydieresis -37
+KPX L quoteright -55
+KPX L y -37
+KPX L yacute -37
+KPX L ydieresis -37
+KPX Lacute T -18
+KPX Lacute Tcaron -18
+KPX Lacute Tcommaaccent -18
+KPX Lacute V -37
+KPX Lacute W -37
+KPX Lacute Y -37
+KPX Lacute Yacute -37
+KPX Lacute Ydieresis -37
+KPX Lacute quoteright -55
+KPX Lacute y -37
+KPX Lacute yacute -37
+KPX Lacute ydieresis -37
+KPX Lcommaaccent T -18
+KPX Lcommaaccent Tcaron -18
+KPX Lcommaaccent Tcommaaccent -18
+KPX Lcommaaccent V -37
+KPX Lcommaaccent W -37
+KPX Lcommaaccent Y -37
+KPX Lcommaaccent Yacute -37
+KPX Lcommaaccent Ydieresis -37
+KPX Lcommaaccent quoteright -55
+KPX Lcommaaccent y -37
+KPX Lcommaaccent yacute -37
+KPX Lcommaaccent ydieresis -37
+KPX Lslash T -18
+KPX Lslash Tcaron -18
+KPX Lslash Tcommaaccent -18
+KPX Lslash V -37
+KPX Lslash W -37
+KPX Lslash Y -37
+KPX Lslash Yacute -37
+KPX Lslash Ydieresis -37
+KPX Lslash quoteright -55
+KPX Lslash y -37
+KPX Lslash yacute -37
+KPX Lslash ydieresis -37
+KPX N A -30
+KPX N Aacute -30
+KPX N Abreve -30
+KPX N Acircumflex -30
+KPX N Adieresis -30
+KPX N Agrave -30
+KPX N Amacron -30
+KPX N Aogonek -30
+KPX N Aring -30
+KPX N Atilde -30
+KPX Nacute A -30
+KPX Nacute Aacute -30
+KPX Nacute Abreve -30
+KPX Nacute Acircumflex -30
+KPX Nacute Adieresis -30
+KPX Nacute Agrave -30
+KPX Nacute Amacron -30
+KPX Nacute Aogonek -30
+KPX Nacute Aring -30
+KPX Nacute Atilde -30
+KPX Ncaron A -30
+KPX Ncaron Aacute -30
+KPX Ncaron Abreve -30
+KPX Ncaron Acircumflex -30
+KPX Ncaron Adieresis -30
+KPX Ncaron Agrave -30
+KPX Ncaron Amacron -30
+KPX Ncaron Aogonek -30
+KPX Ncaron Aring -30
+KPX Ncaron Atilde -30
+KPX Ncommaaccent A -30
+KPX Ncommaaccent Aacute -30
+KPX Ncommaaccent Abreve -30
+KPX Ncommaaccent Acircumflex -30
+KPX Ncommaaccent Adieresis -30
+KPX Ncommaaccent Agrave -30
+KPX Ncommaaccent Amacron -30
+KPX Ncommaaccent Aogonek -30
+KPX Ncommaaccent Aring -30
+KPX Ncommaaccent Atilde -30
+KPX Ntilde A -30
+KPX Ntilde Aacute -30
+KPX Ntilde Abreve -30
+KPX Ntilde Acircumflex -30
+KPX Ntilde Adieresis -30
+KPX Ntilde Agrave -30
+KPX Ntilde Amacron -30
+KPX Ntilde Aogonek -30
+KPX Ntilde Aring -30
+KPX Ntilde Atilde -30
+KPX O A -40
+KPX O Aacute -40
+KPX O Abreve -40
+KPX O Acircumflex -40
+KPX O Adieresis -40
+KPX O Agrave -40
+KPX O Amacron -40
+KPX O Aogonek -40
+KPX O Aring -40
+KPX O Atilde -40
+KPX O T -40
+KPX O Tcaron -40
+KPX O Tcommaaccent -40
+KPX O V -50
+KPX O W -50
+KPX O X -40
+KPX O Y -50
+KPX O Yacute -50
+KPX O Ydieresis -50
+KPX Oacute A -40
+KPX Oacute Aacute -40
+KPX Oacute Abreve -40
+KPX Oacute Acircumflex -40
+KPX Oacute Adieresis -40
+KPX Oacute Agrave -40
+KPX Oacute Amacron -40
+KPX Oacute Aogonek -40
+KPX Oacute Aring -40
+KPX Oacute Atilde -40
+KPX Oacute T -40
+KPX Oacute Tcaron -40
+KPX Oacute Tcommaaccent -40
+KPX Oacute V -50
+KPX Oacute W -50
+KPX Oacute X -40
+KPX Oacute Y -50
+KPX Oacute Yacute -50
+KPX Oacute Ydieresis -50
+KPX Ocircumflex A -40
+KPX Ocircumflex Aacute -40
+KPX Ocircumflex Abreve -40
+KPX Ocircumflex Acircumflex -40
+KPX Ocircumflex Adieresis -40
+KPX Ocircumflex Agrave -40
+KPX Ocircumflex Amacron -40
+KPX Ocircumflex Aogonek -40
+KPX Ocircumflex Aring -40
+KPX Ocircumflex Atilde -40
+KPX Ocircumflex T -40
+KPX Ocircumflex Tcaron -40
+KPX Ocircumflex Tcommaaccent -40
+KPX Ocircumflex V -50
+KPX Ocircumflex W -50
+KPX Ocircumflex X -40
+KPX Ocircumflex Y -50
+KPX Ocircumflex Yacute -50
+KPX Ocircumflex Ydieresis -50
+KPX Odieresis A -40
+KPX Odieresis Aacute -40
+KPX Odieresis Abreve -40
+KPX Odieresis Acircumflex -40
+KPX Odieresis Adieresis -40
+KPX Odieresis Agrave -40
+KPX Odieresis Amacron -40
+KPX Odieresis Aogonek -40
+KPX Odieresis Aring -40
+KPX Odieresis Atilde -40
+KPX Odieresis T -40
+KPX Odieresis Tcaron -40
+KPX Odieresis Tcommaaccent -40
+KPX Odieresis V -50
+KPX Odieresis W -50
+KPX Odieresis X -40
+KPX Odieresis Y -50
+KPX Odieresis Yacute -50
+KPX Odieresis Ydieresis -50
+KPX Ograve A -40
+KPX Ograve Aacute -40
+KPX Ograve Abreve -40
+KPX Ograve Acircumflex -40
+KPX Ograve Adieresis -40
+KPX Ograve Agrave -40
+KPX Ograve Amacron -40
+KPX Ograve Aogonek -40
+KPX Ograve Aring -40
+KPX Ograve Atilde -40
+KPX Ograve T -40
+KPX Ograve Tcaron -40
+KPX Ograve Tcommaaccent -40
+KPX Ograve V -50
+KPX Ograve W -50
+KPX Ograve X -40
+KPX Ograve Y -50
+KPX Ograve Yacute -50
+KPX Ograve Ydieresis -50
+KPX Ohungarumlaut A -40
+KPX Ohungarumlaut Aacute -40
+KPX Ohungarumlaut Abreve -40
+KPX Ohungarumlaut Acircumflex -40
+KPX Ohungarumlaut Adieresis -40
+KPX Ohungarumlaut Agrave -40
+KPX Ohungarumlaut Amacron -40
+KPX Ohungarumlaut Aogonek -40
+KPX Ohungarumlaut Aring -40
+KPX Ohungarumlaut Atilde -40
+KPX Ohungarumlaut T -40
+KPX Ohungarumlaut Tcaron -40
+KPX Ohungarumlaut Tcommaaccent -40
+KPX Ohungarumlaut V -50
+KPX Ohungarumlaut W -50
+KPX Ohungarumlaut X -40
+KPX Ohungarumlaut Y -50
+KPX Ohungarumlaut Yacute -50
+KPX Ohungarumlaut Ydieresis -50
+KPX Omacron A -40
+KPX Omacron Aacute -40
+KPX Omacron Abreve -40
+KPX Omacron Acircumflex -40
+KPX Omacron Adieresis -40
+KPX Omacron Agrave -40
+KPX Omacron Amacron -40
+KPX Omacron Aogonek -40
+KPX Omacron Aring -40
+KPX Omacron Atilde -40
+KPX Omacron T -40
+KPX Omacron Tcaron -40
+KPX Omacron Tcommaaccent -40
+KPX Omacron V -50
+KPX Omacron W -50
+KPX Omacron X -40
+KPX Omacron Y -50
+KPX Omacron Yacute -50
+KPX Omacron Ydieresis -50
+KPX Oslash A -40
+KPX Oslash Aacute -40
+KPX Oslash Abreve -40
+KPX Oslash Acircumflex -40
+KPX Oslash Adieresis -40
+KPX Oslash Agrave -40
+KPX Oslash Amacron -40
+KPX Oslash Aogonek -40
+KPX Oslash Aring -40
+KPX Oslash Atilde -40
+KPX Oslash T -40
+KPX Oslash Tcaron -40
+KPX Oslash Tcommaaccent -40
+KPX Oslash V -50
+KPX Oslash W -50
+KPX Oslash X -40
+KPX Oslash Y -50
+KPX Oslash Yacute -50
+KPX Oslash Ydieresis -50
+KPX Otilde A -40
+KPX Otilde Aacute -40
+KPX Otilde Abreve -40
+KPX Otilde Acircumflex -40
+KPX Otilde Adieresis -40
+KPX Otilde Agrave -40
+KPX Otilde Amacron -40
+KPX Otilde Aogonek -40
+KPX Otilde Aring -40
+KPX Otilde Atilde -40
+KPX Otilde T -40
+KPX Otilde Tcaron -40
+KPX Otilde Tcommaaccent -40
+KPX Otilde V -50
+KPX Otilde W -50
+KPX Otilde X -40
+KPX Otilde Y -50
+KPX Otilde Yacute -50
+KPX Otilde Ydieresis -50
+KPX P A -85
+KPX P Aacute -85
+KPX P Abreve -85
+KPX P Acircumflex -85
+KPX P Adieresis -85
+KPX P Agrave -85
+KPX P Amacron -85
+KPX P Aogonek -85
+KPX P Aring -85
+KPX P Atilde -85
+KPX P a -40
+KPX P aacute -40
+KPX P abreve -40
+KPX P acircumflex -40
+KPX P adieresis -40
+KPX P agrave -40
+KPX P amacron -40
+KPX P aogonek -40
+KPX P aring -40
+KPX P atilde -40
+KPX P comma -129
+KPX P e -50
+KPX P eacute -50
+KPX P ecaron -50
+KPX P ecircumflex -50
+KPX P edieresis -50
+KPX P edotaccent -50
+KPX P egrave -50
+KPX P emacron -50
+KPX P eogonek -50
+KPX P o -55
+KPX P oacute -55
+KPX P ocircumflex -55
+KPX P odieresis -55
+KPX P ograve -55
+KPX P ohungarumlaut -55
+KPX P omacron -55
+KPX P oslash -55
+KPX P otilde -55
+KPX P period -129
+KPX Q U -10
+KPX Q Uacute -10
+KPX Q Ucircumflex -10
+KPX Q Udieresis -10
+KPX Q Ugrave -10
+KPX Q Uhungarumlaut -10
+KPX Q Umacron -10
+KPX Q Uogonek -10
+KPX Q Uring -10
+KPX R O -40
+KPX R Oacute -40
+KPX R Ocircumflex -40
+KPX R Odieresis -40
+KPX R Ograve -40
+KPX R Ohungarumlaut -40
+KPX R Omacron -40
+KPX R Oslash -40
+KPX R Otilde -40
+KPX R T -30
+KPX R Tcaron -30
+KPX R Tcommaaccent -30
+KPX R U -40
+KPX R Uacute -40
+KPX R Ucircumflex -40
+KPX R Udieresis -40
+KPX R Ugrave -40
+KPX R Uhungarumlaut -40
+KPX R Umacron -40
+KPX R Uogonek -40
+KPX R Uring -40
+KPX R V -18
+KPX R W -18
+KPX R Y -18
+KPX R Yacute -18
+KPX R Ydieresis -18
+KPX Racute O -40
+KPX Racute Oacute -40
+KPX Racute Ocircumflex -40
+KPX Racute Odieresis -40
+KPX Racute Ograve -40
+KPX Racute Ohungarumlaut -40
+KPX Racute Omacron -40
+KPX Racute Oslash -40
+KPX Racute Otilde -40
+KPX Racute T -30
+KPX Racute Tcaron -30
+KPX Racute Tcommaaccent -30
+KPX Racute U -40
+KPX Racute Uacute -40
+KPX Racute Ucircumflex -40
+KPX Racute Udieresis -40
+KPX Racute Ugrave -40
+KPX Racute Uhungarumlaut -40
+KPX Racute Umacron -40
+KPX Racute Uogonek -40
+KPX Racute Uring -40
+KPX Racute V -18
+KPX Racute W -18
+KPX Racute Y -18
+KPX Racute Yacute -18
+KPX Racute Ydieresis -18
+KPX Rcaron O -40
+KPX Rcaron Oacute -40
+KPX Rcaron Ocircumflex -40
+KPX Rcaron Odieresis -40
+KPX Rcaron Ograve -40
+KPX Rcaron Ohungarumlaut -40
+KPX Rcaron Omacron -40
+KPX Rcaron Oslash -40
+KPX Rcaron Otilde -40
+KPX Rcaron T -30
+KPX Rcaron Tcaron -30
+KPX Rcaron Tcommaaccent -30
+KPX Rcaron U -40
+KPX Rcaron Uacute -40
+KPX Rcaron Ucircumflex -40
+KPX Rcaron Udieresis -40
+KPX Rcaron Ugrave -40
+KPX Rcaron Uhungarumlaut -40
+KPX Rcaron Umacron -40
+KPX Rcaron Uogonek -40
+KPX Rcaron Uring -40
+KPX Rcaron V -18
+KPX Rcaron W -18
+KPX Rcaron Y -18
+KPX Rcaron Yacute -18
+KPX Rcaron Ydieresis -18
+KPX Rcommaaccent O -40
+KPX Rcommaaccent Oacute -40
+KPX Rcommaaccent Ocircumflex -40
+KPX Rcommaaccent Odieresis -40
+KPX Rcommaaccent Ograve -40
+KPX Rcommaaccent Ohungarumlaut -40
+KPX Rcommaaccent Omacron -40
+KPX Rcommaaccent Oslash -40
+KPX Rcommaaccent Otilde -40
+KPX Rcommaaccent T -30
+KPX Rcommaaccent Tcaron -30
+KPX Rcommaaccent Tcommaaccent -30
+KPX Rcommaaccent U -40
+KPX Rcommaaccent Uacute -40
+KPX Rcommaaccent Ucircumflex -40
+KPX Rcommaaccent Udieresis -40
+KPX Rcommaaccent Ugrave -40
+KPX Rcommaaccent Uhungarumlaut -40
+KPX Rcommaaccent Umacron -40
+KPX Rcommaaccent Uogonek -40
+KPX Rcommaaccent Uring -40
+KPX Rcommaaccent V -18
+KPX Rcommaaccent W -18
+KPX Rcommaaccent Y -18
+KPX Rcommaaccent Yacute -18
+KPX Rcommaaccent Ydieresis -18
+KPX T A -55
+KPX T Aacute -55
+KPX T Abreve -55
+KPX T Acircumflex -55
+KPX T Adieresis -55
+KPX T Agrave -55
+KPX T Amacron -55
+KPX T Aogonek -55
+KPX T Aring -55
+KPX T Atilde -55
+KPX T O -18
+KPX T Oacute -18
+KPX T Ocircumflex -18
+KPX T Odieresis -18
+KPX T Ograve -18
+KPX T Ohungarumlaut -18
+KPX T Omacron -18
+KPX T Oslash -18
+KPX T Otilde -18
+KPX T a -92
+KPX T aacute -92
+KPX T abreve -92
+KPX T acircumflex -92
+KPX T adieresis -92
+KPX T agrave -92
+KPX T amacron -92
+KPX T aogonek -92
+KPX T aring -92
+KPX T atilde -92
+KPX T colon -74
+KPX T comma -92
+KPX T e -92
+KPX T eacute -92
+KPX T ecaron -92
+KPX T ecircumflex -92
+KPX T edieresis -52
+KPX T edotaccent -92
+KPX T egrave -52
+KPX T emacron -52
+KPX T eogonek -92
+KPX T hyphen -92
+KPX T i -37
+KPX T iacute -37
+KPX T iogonek -37
+KPX T o -95
+KPX T oacute -95
+KPX T ocircumflex -95
+KPX T odieresis -95
+KPX T ograve -95
+KPX T ohungarumlaut -95
+KPX T omacron -95
+KPX T oslash -95
+KPX T otilde -95
+KPX T period -92
+KPX T r -37
+KPX T racute -37
+KPX T rcaron -37
+KPX T rcommaaccent -37
+KPX T semicolon -74
+KPX T u -37
+KPX T uacute -37
+KPX T ucircumflex -37
+KPX T udieresis -37
+KPX T ugrave -37
+KPX T uhungarumlaut -37
+KPX T umacron -37
+KPX T uogonek -37
+KPX T uring -37
+KPX T w -37
+KPX T y -37
+KPX T yacute -37
+KPX T ydieresis -37
+KPX Tcaron A -55
+KPX Tcaron Aacute -55
+KPX Tcaron Abreve -55
+KPX Tcaron Acircumflex -55
+KPX Tcaron Adieresis -55
+KPX Tcaron Agrave -55
+KPX Tcaron Amacron -55
+KPX Tcaron Aogonek -55
+KPX Tcaron Aring -55
+KPX Tcaron Atilde -55
+KPX Tcaron O -18
+KPX Tcaron Oacute -18
+KPX Tcaron Ocircumflex -18
+KPX Tcaron Odieresis -18
+KPX Tcaron Ograve -18
+KPX Tcaron Ohungarumlaut -18
+KPX Tcaron Omacron -18
+KPX Tcaron Oslash -18
+KPX Tcaron Otilde -18
+KPX Tcaron a -92
+KPX Tcaron aacute -92
+KPX Tcaron abreve -92
+KPX Tcaron acircumflex -92
+KPX Tcaron adieresis -92
+KPX Tcaron agrave -92
+KPX Tcaron amacron -92
+KPX Tcaron aogonek -92
+KPX Tcaron aring -92
+KPX Tcaron atilde -92
+KPX Tcaron colon -74
+KPX Tcaron comma -92
+KPX Tcaron e -92
+KPX Tcaron eacute -92
+KPX Tcaron ecaron -92
+KPX Tcaron ecircumflex -92
+KPX Tcaron edieresis -52
+KPX Tcaron edotaccent -92
+KPX Tcaron egrave -52
+KPX Tcaron emacron -52
+KPX Tcaron eogonek -92
+KPX Tcaron hyphen -92
+KPX Tcaron i -37
+KPX Tcaron iacute -37
+KPX Tcaron iogonek -37
+KPX Tcaron o -95
+KPX Tcaron oacute -95
+KPX Tcaron ocircumflex -95
+KPX Tcaron odieresis -95
+KPX Tcaron ograve -95
+KPX Tcaron ohungarumlaut -95
+KPX Tcaron omacron -95
+KPX Tcaron oslash -95
+KPX Tcaron otilde -95
+KPX Tcaron period -92
+KPX Tcaron r -37
+KPX Tcaron racute -37
+KPX Tcaron rcaron -37
+KPX Tcaron rcommaaccent -37
+KPX Tcaron semicolon -74
+KPX Tcaron u -37
+KPX Tcaron uacute -37
+KPX Tcaron ucircumflex -37
+KPX Tcaron udieresis -37
+KPX Tcaron ugrave -37
+KPX Tcaron uhungarumlaut -37
+KPX Tcaron umacron -37
+KPX Tcaron uogonek -37
+KPX Tcaron uring -37
+KPX Tcaron w -37
+KPX Tcaron y -37
+KPX Tcaron yacute -37
+KPX Tcaron ydieresis -37
+KPX Tcommaaccent A -55
+KPX Tcommaaccent Aacute -55
+KPX Tcommaaccent Abreve -55
+KPX Tcommaaccent Acircumflex -55
+KPX Tcommaaccent Adieresis -55
+KPX Tcommaaccent Agrave -55
+KPX Tcommaaccent Amacron -55
+KPX Tcommaaccent Aogonek -55
+KPX Tcommaaccent Aring -55
+KPX Tcommaaccent Atilde -55
+KPX Tcommaaccent O -18
+KPX Tcommaaccent Oacute -18
+KPX Tcommaaccent Ocircumflex -18
+KPX Tcommaaccent Odieresis -18
+KPX Tcommaaccent Ograve -18
+KPX Tcommaaccent Ohungarumlaut -18
+KPX Tcommaaccent Omacron -18
+KPX Tcommaaccent Oslash -18
+KPX Tcommaaccent Otilde -18
+KPX Tcommaaccent a -92
+KPX Tcommaaccent aacute -92
+KPX Tcommaaccent abreve -92
+KPX Tcommaaccent acircumflex -92
+KPX Tcommaaccent adieresis -92
+KPX Tcommaaccent agrave -92
+KPX Tcommaaccent amacron -92
+KPX Tcommaaccent aogonek -92
+KPX Tcommaaccent aring -92
+KPX Tcommaaccent atilde -92
+KPX Tcommaaccent colon -74
+KPX Tcommaaccent comma -92
+KPX Tcommaaccent e -92
+KPX Tcommaaccent eacute -92
+KPX Tcommaaccent ecaron -92
+KPX Tcommaaccent ecircumflex -92
+KPX Tcommaaccent edieresis -52
+KPX Tcommaaccent edotaccent -92
+KPX Tcommaaccent egrave -52
+KPX Tcommaaccent emacron -52
+KPX Tcommaaccent eogonek -92
+KPX Tcommaaccent hyphen -92
+KPX Tcommaaccent i -37
+KPX Tcommaaccent iacute -37
+KPX Tcommaaccent iogonek -37
+KPX Tcommaaccent o -95
+KPX Tcommaaccent oacute -95
+KPX Tcommaaccent ocircumflex -95
+KPX Tcommaaccent odieresis -95
+KPX Tcommaaccent ograve -95
+KPX Tcommaaccent ohungarumlaut -95
+KPX Tcommaaccent omacron -95
+KPX Tcommaaccent oslash -95
+KPX Tcommaaccent otilde -95
+KPX Tcommaaccent period -92
+KPX Tcommaaccent r -37
+KPX Tcommaaccent racute -37
+KPX Tcommaaccent rcaron -37
+KPX Tcommaaccent rcommaaccent -37
+KPX Tcommaaccent semicolon -74
+KPX Tcommaaccent u -37
+KPX Tcommaaccent uacute -37
+KPX Tcommaaccent ucircumflex -37
+KPX Tcommaaccent udieresis -37
+KPX Tcommaaccent ugrave -37
+KPX Tcommaaccent uhungarumlaut -37
+KPX Tcommaaccent umacron -37
+KPX Tcommaaccent uogonek -37
+KPX Tcommaaccent uring -37
+KPX Tcommaaccent w -37
+KPX Tcommaaccent y -37
+KPX Tcommaaccent yacute -37
+KPX Tcommaaccent ydieresis -37
+KPX U A -45
+KPX U Aacute -45
+KPX U Abreve -45
+KPX U Acircumflex -45
+KPX U Adieresis -45
+KPX U Agrave -45
+KPX U Amacron -45
+KPX U Aogonek -45
+KPX U Aring -45
+KPX U Atilde -45
+KPX Uacute A -45
+KPX Uacute Aacute -45
+KPX Uacute Abreve -45
+KPX Uacute Acircumflex -45
+KPX Uacute Adieresis -45
+KPX Uacute Agrave -45
+KPX Uacute Amacron -45
+KPX Uacute Aogonek -45
+KPX Uacute Aring -45
+KPX Uacute Atilde -45
+KPX Ucircumflex A -45
+KPX Ucircumflex Aacute -45
+KPX Ucircumflex Abreve -45
+KPX Ucircumflex Acircumflex -45
+KPX Ucircumflex Adieresis -45
+KPX Ucircumflex Agrave -45
+KPX Ucircumflex Amacron -45
+KPX Ucircumflex Aogonek -45
+KPX Ucircumflex Aring -45
+KPX Ucircumflex Atilde -45
+KPX Udieresis A -45
+KPX Udieresis Aacute -45
+KPX Udieresis Abreve -45
+KPX Udieresis Acircumflex -45
+KPX Udieresis Adieresis -45
+KPX Udieresis Agrave -45
+KPX Udieresis Amacron -45
+KPX Udieresis Aogonek -45
+KPX Udieresis Aring -45
+KPX Udieresis Atilde -45
+KPX Ugrave A -45
+KPX Ugrave Aacute -45
+KPX Ugrave Abreve -45
+KPX Ugrave Acircumflex -45
+KPX Ugrave Adieresis -45
+KPX Ugrave Agrave -45
+KPX Ugrave Amacron -45
+KPX Ugrave Aogonek -45
+KPX Ugrave Aring -45
+KPX Ugrave Atilde -45
+KPX Uhungarumlaut A -45
+KPX Uhungarumlaut Aacute -45
+KPX Uhungarumlaut Abreve -45
+KPX Uhungarumlaut Acircumflex -45
+KPX Uhungarumlaut Adieresis -45
+KPX Uhungarumlaut Agrave -45
+KPX Uhungarumlaut Amacron -45
+KPX Uhungarumlaut Aogonek -45
+KPX Uhungarumlaut Aring -45
+KPX Uhungarumlaut Atilde -45
+KPX Umacron A -45
+KPX Umacron Aacute -45
+KPX Umacron Abreve -45
+KPX Umacron Acircumflex -45
+KPX Umacron Adieresis -45
+KPX Umacron Agrave -45
+KPX Umacron Amacron -45
+KPX Umacron Aogonek -45
+KPX Umacron Aring -45
+KPX Umacron Atilde -45
+KPX Uogonek A -45
+KPX Uogonek Aacute -45
+KPX Uogonek Abreve -45
+KPX Uogonek Acircumflex -45
+KPX Uogonek Adieresis -45
+KPX Uogonek Agrave -45
+KPX Uogonek Amacron -45
+KPX Uogonek Aogonek -45
+KPX Uogonek Aring -45
+KPX Uogonek Atilde -45
+KPX Uring A -45
+KPX Uring Aacute -45
+KPX Uring Abreve -45
+KPX Uring Acircumflex -45
+KPX Uring Adieresis -45
+KPX Uring Agrave -45
+KPX Uring Amacron -45
+KPX Uring Aogonek -45
+KPX Uring Aring -45
+KPX Uring Atilde -45
+KPX V A -85
+KPX V Aacute -85
+KPX V Abreve -85
+KPX V Acircumflex -85
+KPX V Adieresis -85
+KPX V Agrave -85
+KPX V Amacron -85
+KPX V Aogonek -85
+KPX V Aring -85
+KPX V Atilde -85
+KPX V G -10
+KPX V Gbreve -10
+KPX V Gcommaaccent -10
+KPX V O -30
+KPX V Oacute -30
+KPX V Ocircumflex -30
+KPX V Odieresis -30
+KPX V Ograve -30
+KPX V Ohungarumlaut -30
+KPX V Omacron -30
+KPX V Oslash -30
+KPX V Otilde -30
+KPX V a -111
+KPX V aacute -111
+KPX V abreve -111
+KPX V acircumflex -111
+KPX V adieresis -111
+KPX V agrave -111
+KPX V amacron -111
+KPX V aogonek -111
+KPX V aring -111
+KPX V atilde -111
+KPX V colon -74
+KPX V comma -129
+KPX V e -111
+KPX V eacute -111
+KPX V ecaron -111
+KPX V ecircumflex -111
+KPX V edieresis -71
+KPX V edotaccent -111
+KPX V egrave -71
+KPX V emacron -71
+KPX V eogonek -111
+KPX V hyphen -70
+KPX V i -55
+KPX V iacute -55
+KPX V iogonek -55
+KPX V o -111
+KPX V oacute -111
+KPX V ocircumflex -111
+KPX V odieresis -111
+KPX V ograve -111
+KPX V ohungarumlaut -111
+KPX V omacron -111
+KPX V oslash -111
+KPX V otilde -111
+KPX V period -129
+KPX V semicolon -74
+KPX V u -55
+KPX V uacute -55
+KPX V ucircumflex -55
+KPX V udieresis -55
+KPX V ugrave -55
+KPX V uhungarumlaut -55
+KPX V umacron -55
+KPX V uogonek -55
+KPX V uring -55
+KPX W A -74
+KPX W Aacute -74
+KPX W Abreve -74
+KPX W Acircumflex -74
+KPX W Adieresis -74
+KPX W Agrave -74
+KPX W Amacron -74
+KPX W Aogonek -74
+KPX W Aring -74
+KPX W Atilde -74
+KPX W O -15
+KPX W Oacute -15
+KPX W Ocircumflex -15
+KPX W Odieresis -15
+KPX W Ograve -15
+KPX W Ohungarumlaut -15
+KPX W Omacron -15
+KPX W Oslash -15
+KPX W Otilde -15
+KPX W a -85
+KPX W aacute -85
+KPX W abreve -85
+KPX W acircumflex -85
+KPX W adieresis -85
+KPX W agrave -85
+KPX W amacron -85
+KPX W aogonek -85
+KPX W aring -85
+KPX W atilde -85
+KPX W colon -55
+KPX W comma -74
+KPX W e -90
+KPX W eacute -90
+KPX W ecaron -90
+KPX W ecircumflex -90
+KPX W edieresis -50
+KPX W edotaccent -90
+KPX W egrave -50
+KPX W emacron -50
+KPX W eogonek -90
+KPX W hyphen -50
+KPX W i -37
+KPX W iacute -37
+KPX W iogonek -37
+KPX W o -80
+KPX W oacute -80
+KPX W ocircumflex -80
+KPX W odieresis -80
+KPX W ograve -80
+KPX W ohungarumlaut -80
+KPX W omacron -80
+KPX W oslash -80
+KPX W otilde -80
+KPX W period -74
+KPX W semicolon -55
+KPX W u -55
+KPX W uacute -55
+KPX W ucircumflex -55
+KPX W udieresis -55
+KPX W ugrave -55
+KPX W uhungarumlaut -55
+KPX W umacron -55
+KPX W uogonek -55
+KPX W uring -55
+KPX W y -55
+KPX W yacute -55
+KPX W ydieresis -55
+KPX Y A -74
+KPX Y Aacute -74
+KPX Y Abreve -74
+KPX Y Acircumflex -74
+KPX Y Adieresis -74
+KPX Y Agrave -74
+KPX Y Amacron -74
+KPX Y Aogonek -74
+KPX Y Aring -74
+KPX Y Atilde -74
+KPX Y O -25
+KPX Y Oacute -25
+KPX Y Ocircumflex -25
+KPX Y Odieresis -25
+KPX Y Ograve -25
+KPX Y Ohungarumlaut -25
+KPX Y Omacron -25
+KPX Y Oslash -25
+KPX Y Otilde -25
+KPX Y a -92
+KPX Y aacute -92
+KPX Y abreve -92
+KPX Y acircumflex -92
+KPX Y adieresis -92
+KPX Y agrave -92
+KPX Y amacron -92
+KPX Y aogonek -92
+KPX Y aring -92
+KPX Y atilde -92
+KPX Y colon -92
+KPX Y comma -92
+KPX Y e -111
+KPX Y eacute -111
+KPX Y ecaron -111
+KPX Y ecircumflex -71
+KPX Y edieresis -71
+KPX Y edotaccent -111
+KPX Y egrave -71
+KPX Y emacron -71
+KPX Y eogonek -111
+KPX Y hyphen -92
+KPX Y i -55
+KPX Y iacute -55
+KPX Y iogonek -55
+KPX Y o -111
+KPX Y oacute -111
+KPX Y ocircumflex -111
+KPX Y odieresis -111
+KPX Y ograve -111
+KPX Y ohungarumlaut -111
+KPX Y omacron -111
+KPX Y oslash -111
+KPX Y otilde -111
+KPX Y period -74
+KPX Y semicolon -92
+KPX Y u -92
+KPX Y uacute -92
+KPX Y ucircumflex -92
+KPX Y udieresis -92
+KPX Y ugrave -92
+KPX Y uhungarumlaut -92
+KPX Y umacron -92
+KPX Y uogonek -92
+KPX Y uring -92
+KPX Yacute A -74
+KPX Yacute Aacute -74
+KPX Yacute Abreve -74
+KPX Yacute Acircumflex -74
+KPX Yacute Adieresis -74
+KPX Yacute Agrave -74
+KPX Yacute Amacron -74
+KPX Yacute Aogonek -74
+KPX Yacute Aring -74
+KPX Yacute Atilde -74
+KPX Yacute O -25
+KPX Yacute Oacute -25
+KPX Yacute Ocircumflex -25
+KPX Yacute Odieresis -25
+KPX Yacute Ograve -25
+KPX Yacute Ohungarumlaut -25
+KPX Yacute Omacron -25
+KPX Yacute Oslash -25
+KPX Yacute Otilde -25
+KPX Yacute a -92
+KPX Yacute aacute -92
+KPX Yacute abreve -92
+KPX Yacute acircumflex -92
+KPX Yacute adieresis -92
+KPX Yacute agrave -92
+KPX Yacute amacron -92
+KPX Yacute aogonek -92
+KPX Yacute aring -92
+KPX Yacute atilde -92
+KPX Yacute colon -92
+KPX Yacute comma -92
+KPX Yacute e -111
+KPX Yacute eacute -111
+KPX Yacute ecaron -111
+KPX Yacute ecircumflex -71
+KPX Yacute edieresis -71
+KPX Yacute edotaccent -111
+KPX Yacute egrave -71
+KPX Yacute emacron -71
+KPX Yacute eogonek -111
+KPX Yacute hyphen -92
+KPX Yacute i -55
+KPX Yacute iacute -55
+KPX Yacute iogonek -55
+KPX Yacute o -111
+KPX Yacute oacute -111
+KPX Yacute ocircumflex -111
+KPX Yacute odieresis -111
+KPX Yacute ograve -111
+KPX Yacute ohungarumlaut -111
+KPX Yacute omacron -111
+KPX Yacute oslash -111
+KPX Yacute otilde -111
+KPX Yacute period -74
+KPX Yacute semicolon -92
+KPX Yacute u -92
+KPX Yacute uacute -92
+KPX Yacute ucircumflex -92
+KPX Yacute udieresis -92
+KPX Yacute ugrave -92
+KPX Yacute uhungarumlaut -92
+KPX Yacute umacron -92
+KPX Yacute uogonek -92
+KPX Yacute uring -92
+KPX Ydieresis A -74
+KPX Ydieresis Aacute -74
+KPX Ydieresis Abreve -74
+KPX Ydieresis Acircumflex -74
+KPX Ydieresis Adieresis -74
+KPX Ydieresis Agrave -74
+KPX Ydieresis Amacron -74
+KPX Ydieresis Aogonek -74
+KPX Ydieresis Aring -74
+KPX Ydieresis Atilde -74
+KPX Ydieresis O -25
+KPX Ydieresis Oacute -25
+KPX Ydieresis Ocircumflex -25
+KPX Ydieresis Odieresis -25
+KPX Ydieresis Ograve -25
+KPX Ydieresis Ohungarumlaut -25
+KPX Ydieresis Omacron -25
+KPX Ydieresis Oslash -25
+KPX Ydieresis Otilde -25
+KPX Ydieresis a -92
+KPX Ydieresis aacute -92
+KPX Ydieresis abreve -92
+KPX Ydieresis acircumflex -92
+KPX Ydieresis adieresis -92
+KPX Ydieresis agrave -92
+KPX Ydieresis amacron -92
+KPX Ydieresis aogonek -92
+KPX Ydieresis aring -92
+KPX Ydieresis atilde -92
+KPX Ydieresis colon -92
+KPX Ydieresis comma -92
+KPX Ydieresis e -111
+KPX Ydieresis eacute -111
+KPX Ydieresis ecaron -111
+KPX Ydieresis ecircumflex -71
+KPX Ydieresis edieresis -71
+KPX Ydieresis edotaccent -111
+KPX Ydieresis egrave -71
+KPX Ydieresis emacron -71
+KPX Ydieresis eogonek -111
+KPX Ydieresis hyphen -92
+KPX Ydieresis i -55
+KPX Ydieresis iacute -55
+KPX Ydieresis iogonek -55
+KPX Ydieresis o -111
+KPX Ydieresis oacute -111
+KPX Ydieresis ocircumflex -111
+KPX Ydieresis odieresis -111
+KPX Ydieresis ograve -111
+KPX Ydieresis ohungarumlaut -111
+KPX Ydieresis omacron -111
+KPX Ydieresis oslash -111
+KPX Ydieresis otilde -111
+KPX Ydieresis period -74
+KPX Ydieresis semicolon -92
+KPX Ydieresis u -92
+KPX Ydieresis uacute -92
+KPX Ydieresis ucircumflex -92
+KPX Ydieresis udieresis -92
+KPX Ydieresis ugrave -92
+KPX Ydieresis uhungarumlaut -92
+KPX Ydieresis umacron -92
+KPX Ydieresis uogonek -92
+KPX Ydieresis uring -92
+KPX b b -10
+KPX b period -40
+KPX b u -20
+KPX b uacute -20
+KPX b ucircumflex -20
+KPX b udieresis -20
+KPX b ugrave -20
+KPX b uhungarumlaut -20
+KPX b umacron -20
+KPX b uogonek -20
+KPX b uring -20
+KPX c h -10
+KPX c k -10
+KPX c kcommaaccent -10
+KPX cacute h -10
+KPX cacute k -10
+KPX cacute kcommaaccent -10
+KPX ccaron h -10
+KPX ccaron k -10
+KPX ccaron kcommaaccent -10
+KPX ccedilla h -10
+KPX ccedilla k -10
+KPX ccedilla kcommaaccent -10
+KPX comma quotedblright -95
+KPX comma quoteright -95
+KPX e b -10
+KPX eacute b -10
+KPX ecaron b -10
+KPX ecircumflex b -10
+KPX edieresis b -10
+KPX edotaccent b -10
+KPX egrave b -10
+KPX emacron b -10
+KPX eogonek b -10
+KPX f comma -10
+KPX f dotlessi -30
+KPX f e -10
+KPX f eacute -10
+KPX f edotaccent -10
+KPX f eogonek -10
+KPX f f -18
+KPX f o -10
+KPX f oacute -10
+KPX f ocircumflex -10
+KPX f ograve -10
+KPX f ohungarumlaut -10
+KPX f oslash -10
+KPX f otilde -10
+KPX f period -10
+KPX f quoteright 55
+KPX k e -30
+KPX k eacute -30
+KPX k ecaron -30
+KPX k ecircumflex -30
+KPX k edieresis -30
+KPX k edotaccent -30
+KPX k egrave -30
+KPX k emacron -30
+KPX k eogonek -30
+KPX k o -10
+KPX k oacute -10
+KPX k ocircumflex -10
+KPX k odieresis -10
+KPX k ograve -10
+KPX k ohungarumlaut -10
+KPX k omacron -10
+KPX k oslash -10
+KPX k otilde -10
+KPX kcommaaccent e -30
+KPX kcommaaccent eacute -30
+KPX kcommaaccent ecaron -30
+KPX kcommaaccent ecircumflex -30
+KPX kcommaaccent edieresis -30
+KPX kcommaaccent edotaccent -30
+KPX kcommaaccent egrave -30
+KPX kcommaaccent emacron -30
+KPX kcommaaccent eogonek -30
+KPX kcommaaccent o -10
+KPX kcommaaccent oacute -10
+KPX kcommaaccent ocircumflex -10
+KPX kcommaaccent odieresis -10
+KPX kcommaaccent ograve -10
+KPX kcommaaccent ohungarumlaut -10
+KPX kcommaaccent omacron -10
+KPX kcommaaccent oslash -10
+KPX kcommaaccent otilde -10
+KPX n v -40
+KPX nacute v -40
+KPX ncaron v -40
+KPX ncommaaccent v -40
+KPX ntilde v -40
+KPX o v -15
+KPX o w -25
+KPX o x -10
+KPX o y -10
+KPX o yacute -10
+KPX o ydieresis -10
+KPX oacute v -15
+KPX oacute w -25
+KPX oacute x -10
+KPX oacute y -10
+KPX oacute yacute -10
+KPX oacute ydieresis -10
+KPX ocircumflex v -15
+KPX ocircumflex w -25
+KPX ocircumflex x -10
+KPX ocircumflex y -10
+KPX ocircumflex yacute -10
+KPX ocircumflex ydieresis -10
+KPX odieresis v -15
+KPX odieresis w -25
+KPX odieresis x -10
+KPX odieresis y -10
+KPX odieresis yacute -10
+KPX odieresis ydieresis -10
+KPX ograve v -15
+KPX ograve w -25
+KPX ograve x -10
+KPX ograve y -10
+KPX ograve yacute -10
+KPX ograve ydieresis -10
+KPX ohungarumlaut v -15
+KPX ohungarumlaut w -25
+KPX ohungarumlaut x -10
+KPX ohungarumlaut y -10
+KPX ohungarumlaut yacute -10
+KPX ohungarumlaut ydieresis -10
+KPX omacron v -15
+KPX omacron w -25
+KPX omacron x -10
+KPX omacron y -10
+KPX omacron yacute -10
+KPX omacron ydieresis -10
+KPX oslash v -15
+KPX oslash w -25
+KPX oslash x -10
+KPX oslash y -10
+KPX oslash yacute -10
+KPX oslash ydieresis -10
+KPX otilde v -15
+KPX otilde w -25
+KPX otilde x -10
+KPX otilde y -10
+KPX otilde yacute -10
+KPX otilde ydieresis -10
+KPX period quotedblright -95
+KPX period quoteright -95
+KPX quoteleft quoteleft -74
+KPX quoteright d -15
+KPX quoteright dcroat -15
+KPX quoteright quoteright -74
+KPX quoteright r -15
+KPX quoteright racute -15
+KPX quoteright rcaron -15
+KPX quoteright rcommaaccent -15
+KPX quoteright s -74
+KPX quoteright sacute -74
+KPX quoteright scaron -74
+KPX quoteright scedilla -74
+KPX quoteright scommaaccent -74
+KPX quoteright space -74
+KPX quoteright t -37
+KPX quoteright tcommaaccent -37
+KPX quoteright v -15
+KPX r comma -65
+KPX r period -65
+KPX racute comma -65
+KPX racute period -65
+KPX rcaron comma -65
+KPX rcaron period -65
+KPX rcommaaccent comma -65
+KPX rcommaaccent period -65
+KPX space A -37
+KPX space Aacute -37
+KPX space Abreve -37
+KPX space Acircumflex -37
+KPX space Adieresis -37
+KPX space Agrave -37
+KPX space Amacron -37
+KPX space Aogonek -37
+KPX space Aring -37
+KPX space Atilde -37
+KPX space V -70
+KPX space W -70
+KPX space Y -70
+KPX space Yacute -70
+KPX space Ydieresis -70
+KPX v comma -37
+KPX v e -15
+KPX v eacute -15
+KPX v ecaron -15
+KPX v ecircumflex -15
+KPX v edieresis -15
+KPX v edotaccent -15
+KPX v egrave -15
+KPX v emacron -15
+KPX v eogonek -15
+KPX v o -15
+KPX v oacute -15
+KPX v ocircumflex -15
+KPX v odieresis -15
+KPX v ograve -15
+KPX v ohungarumlaut -15
+KPX v omacron -15
+KPX v oslash -15
+KPX v otilde -15
+KPX v period -37
+KPX w a -10
+KPX w aacute -10
+KPX w abreve -10
+KPX w acircumflex -10
+KPX w adieresis -10
+KPX w agrave -10
+KPX w amacron -10
+KPX w aogonek -10
+KPX w aring -10
+KPX w atilde -10
+KPX w comma -37
+KPX w e -10
+KPX w eacute -10
+KPX w ecaron -10
+KPX w ecircumflex -10
+KPX w edieresis -10
+KPX w edotaccent -10
+KPX w egrave -10
+KPX w emacron -10
+KPX w eogonek -10
+KPX w o -15
+KPX w oacute -15
+KPX w ocircumflex -15
+KPX w odieresis -15
+KPX w ograve -15
+KPX w ohungarumlaut -15
+KPX w omacron -15
+KPX w oslash -15
+KPX w otilde -15
+KPX w period -37
+KPX x e -10
+KPX x eacute -10
+KPX x ecaron -10
+KPX x ecircumflex -10
+KPX x edieresis -10
+KPX x edotaccent -10
+KPX x egrave -10
+KPX x emacron -10
+KPX x eogonek -10
+KPX y comma -37
+KPX y period -37
+KPX yacute comma -37
+KPX yacute period -37
+KPX ydieresis comma -37
+KPX ydieresis period -37
+EndKernPairs
+EndKernData
+EndFontMetrics
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Times-Italic.afm b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Times-Italic.afm
new file mode 100755
index 00000000..b0eaee40
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Times-Italic.afm
@@ -0,0 +1,2667 @@
+StartFontMetrics 4.1
+Comment Copyright (c) 1985, 1987, 1989, 1990, 1993, 1997 Adobe Systems Incorporated. All Rights Reserved.
+Comment Creation Date: Thu May 1 12:56:55 1997
+Comment UniqueID 43067
+Comment VMusage 47727 58752
+FontName Times-Italic
+FullName Times Italic
+FamilyName Times
+Weight Medium
+ItalicAngle -15.5
+IsFixedPitch false
+CharacterSet ExtendedRoman
+FontBBox -169 -217 1010 883
+UnderlinePosition -100
+UnderlineThickness 50
+Version 002.000
+Notice Copyright (c) 1985, 1987, 1989, 1990, 1993, 1997 Adobe Systems Incorporated. All Rights Reserved.Times is a trademark of Linotype-Hell AG and/or its subsidiaries.
+EncodingScheme AdobeStandardEncoding
+CapHeight 653
+XHeight 441
+Ascender 683
+Descender -217
+StdHW 32
+StdVW 76
+StartCharMetrics 315
+C 32 ; WX 250 ; N space ; B 0 0 0 0 ;
+C 33 ; WX 333 ; N exclam ; B 39 -11 302 667 ;
+C 34 ; WX 420 ; N quotedbl ; B 144 421 432 666 ;
+C 35 ; WX 500 ; N numbersign ; B 2 0 540 676 ;
+C 36 ; WX 500 ; N dollar ; B 31 -89 497 731 ;
+C 37 ; WX 833 ; N percent ; B 79 -13 790 676 ;
+C 38 ; WX 778 ; N ampersand ; B 76 -18 723 666 ;
+C 39 ; WX 333 ; N quoteright ; B 151 436 290 666 ;
+C 40 ; WX 333 ; N parenleft ; B 42 -181 315 669 ;
+C 41 ; WX 333 ; N parenright ; B 16 -180 289 669 ;
+C 42 ; WX 500 ; N asterisk ; B 128 255 492 666 ;
+C 43 ; WX 675 ; N plus ; B 86 0 590 506 ;
+C 44 ; WX 250 ; N comma ; B -4 -129 135 101 ;
+C 45 ; WX 333 ; N hyphen ; B 49 192 282 255 ;
+C 46 ; WX 250 ; N period ; B 27 -11 138 100 ;
+C 47 ; WX 278 ; N slash ; B -65 -18 386 666 ;
+C 48 ; WX 500 ; N zero ; B 32 -7 497 676 ;
+C 49 ; WX 500 ; N one ; B 49 0 409 676 ;
+C 50 ; WX 500 ; N two ; B 12 0 452 676 ;
+C 51 ; WX 500 ; N three ; B 15 -7 465 676 ;
+C 52 ; WX 500 ; N four ; B 1 0 479 676 ;
+C 53 ; WX 500 ; N five ; B 15 -7 491 666 ;
+C 54 ; WX 500 ; N six ; B 30 -7 521 686 ;
+C 55 ; WX 500 ; N seven ; B 75 -8 537 666 ;
+C 56 ; WX 500 ; N eight ; B 30 -7 493 676 ;
+C 57 ; WX 500 ; N nine ; B 23 -17 492 676 ;
+C 58 ; WX 333 ; N colon ; B 50 -11 261 441 ;
+C 59 ; WX 333 ; N semicolon ; B 27 -129 261 441 ;
+C 60 ; WX 675 ; N less ; B 84 -8 592 514 ;
+C 61 ; WX 675 ; N equal ; B 86 120 590 386 ;
+C 62 ; WX 675 ; N greater ; B 84 -8 592 514 ;
+C 63 ; WX 500 ; N question ; B 132 -12 472 664 ;
+C 64 ; WX 920 ; N at ; B 118 -18 806 666 ;
+C 65 ; WX 611 ; N A ; B -51 0 564 668 ;
+C 66 ; WX 611 ; N B ; B -8 0 588 653 ;
+C 67 ; WX 667 ; N C ; B 66 -18 689 666 ;
+C 68 ; WX 722 ; N D ; B -8 0 700 653 ;
+C 69 ; WX 611 ; N E ; B -1 0 634 653 ;
+C 70 ; WX 611 ; N F ; B 8 0 645 653 ;
+C 71 ; WX 722 ; N G ; B 52 -18 722 666 ;
+C 72 ; WX 722 ; N H ; B -8 0 767 653 ;
+C 73 ; WX 333 ; N I ; B -8 0 384 653 ;
+C 74 ; WX 444 ; N J ; B -6 -18 491 653 ;
+C 75 ; WX 667 ; N K ; B 7 0 722 653 ;
+C 76 ; WX 556 ; N L ; B -8 0 559 653 ;
+C 77 ; WX 833 ; N M ; B -18 0 873 653 ;
+C 78 ; WX 667 ; N N ; B -20 -15 727 653 ;
+C 79 ; WX 722 ; N O ; B 60 -18 699 666 ;
+C 80 ; WX 611 ; N P ; B 0 0 605 653 ;
+C 81 ; WX 722 ; N Q ; B 59 -182 699 666 ;
+C 82 ; WX 611 ; N R ; B -13 0 588 653 ;
+C 83 ; WX 500 ; N S ; B 17 -18 508 667 ;
+C 84 ; WX 556 ; N T ; B 59 0 633 653 ;
+C 85 ; WX 722 ; N U ; B 102 -18 765 653 ;
+C 86 ; WX 611 ; N V ; B 76 -18 688 653 ;
+C 87 ; WX 833 ; N W ; B 71 -18 906 653 ;
+C 88 ; WX 611 ; N X ; B -29 0 655 653 ;
+C 89 ; WX 556 ; N Y ; B 78 0 633 653 ;
+C 90 ; WX 556 ; N Z ; B -6 0 606 653 ;
+C 91 ; WX 389 ; N bracketleft ; B 21 -153 391 663 ;
+C 92 ; WX 278 ; N backslash ; B -41 -18 319 666 ;
+C 93 ; WX 389 ; N bracketright ; B 12 -153 382 663 ;
+C 94 ; WX 422 ; N asciicircum ; B 0 301 422 666 ;
+C 95 ; WX 500 ; N underscore ; B 0 -125 500 -75 ;
+C 96 ; WX 333 ; N quoteleft ; B 171 436 310 666 ;
+C 97 ; WX 500 ; N a ; B 17 -11 476 441 ;
+C 98 ; WX 500 ; N b ; B 23 -11 473 683 ;
+C 99 ; WX 444 ; N c ; B 30 -11 425 441 ;
+C 100 ; WX 500 ; N d ; B 15 -13 527 683 ;
+C 101 ; WX 444 ; N e ; B 31 -11 412 441 ;
+C 102 ; WX 278 ; N f ; B -147 -207 424 678 ; L i fi ; L l fl ;
+C 103 ; WX 500 ; N g ; B 8 -206 472 441 ;
+C 104 ; WX 500 ; N h ; B 19 -9 478 683 ;
+C 105 ; WX 278 ; N i ; B 49 -11 264 654 ;
+C 106 ; WX 278 ; N j ; B -124 -207 276 654 ;
+C 107 ; WX 444 ; N k ; B 14 -11 461 683 ;
+C 108 ; WX 278 ; N l ; B 41 -11 279 683 ;
+C 109 ; WX 722 ; N m ; B 12 -9 704 441 ;
+C 110 ; WX 500 ; N n ; B 14 -9 474 441 ;
+C 111 ; WX 500 ; N o ; B 27 -11 468 441 ;
+C 112 ; WX 500 ; N p ; B -75 -205 469 441 ;
+C 113 ; WX 500 ; N q ; B 25 -209 483 441 ;
+C 114 ; WX 389 ; N r ; B 45 0 412 441 ;
+C 115 ; WX 389 ; N s ; B 16 -13 366 442 ;
+C 116 ; WX 278 ; N t ; B 37 -11 296 546 ;
+C 117 ; WX 500 ; N u ; B 42 -11 475 441 ;
+C 118 ; WX 444 ; N v ; B 21 -18 426 441 ;
+C 119 ; WX 667 ; N w ; B 16 -18 648 441 ;
+C 120 ; WX 444 ; N x ; B -27 -11 447 441 ;
+C 121 ; WX 444 ; N y ; B -24 -206 426 441 ;
+C 122 ; WX 389 ; N z ; B -2 -81 380 428 ;
+C 123 ; WX 400 ; N braceleft ; B 51 -177 407 687 ;
+C 124 ; WX 275 ; N bar ; B 105 -217 171 783 ;
+C 125 ; WX 400 ; N braceright ; B -7 -177 349 687 ;
+C 126 ; WX 541 ; N asciitilde ; B 40 183 502 323 ;
+C 161 ; WX 389 ; N exclamdown ; B 59 -205 322 473 ;
+C 162 ; WX 500 ; N cent ; B 77 -143 472 560 ;
+C 163 ; WX 500 ; N sterling ; B 10 -6 517 670 ;
+C 164 ; WX 167 ; N fraction ; B -169 -10 337 676 ;
+C 165 ; WX 500 ; N yen ; B 27 0 603 653 ;
+C 166 ; WX 500 ; N florin ; B 25 -182 507 682 ;
+C 167 ; WX 500 ; N section ; B 53 -162 461 666 ;
+C 168 ; WX 500 ; N currency ; B -22 53 522 597 ;
+C 169 ; WX 214 ; N quotesingle ; B 132 421 241 666 ;
+C 170 ; WX 556 ; N quotedblleft ; B 166 436 514 666 ;
+C 171 ; WX 500 ; N guillemotleft ; B 53 37 445 403 ;
+C 172 ; WX 333 ; N guilsinglleft ; B 51 37 281 403 ;
+C 173 ; WX 333 ; N guilsinglright ; B 52 37 282 403 ;
+C 174 ; WX 500 ; N fi ; B -141 -207 481 681 ;
+C 175 ; WX 500 ; N fl ; B -141 -204 518 682 ;
+C 177 ; WX 500 ; N endash ; B -6 197 505 243 ;
+C 178 ; WX 500 ; N dagger ; B 101 -159 488 666 ;
+C 179 ; WX 500 ; N daggerdbl ; B 22 -143 491 666 ;
+C 180 ; WX 250 ; N periodcentered ; B 70 199 181 310 ;
+C 182 ; WX 523 ; N paragraph ; B 55 -123 616 653 ;
+C 183 ; WX 350 ; N bullet ; B 40 191 310 461 ;
+C 184 ; WX 333 ; N quotesinglbase ; B 44 -129 183 101 ;
+C 185 ; WX 556 ; N quotedblbase ; B 57 -129 405 101 ;
+C 186 ; WX 556 ; N quotedblright ; B 151 436 499 666 ;
+C 187 ; WX 500 ; N guillemotright ; B 55 37 447 403 ;
+C 188 ; WX 889 ; N ellipsis ; B 57 -11 762 100 ;
+C 189 ; WX 1000 ; N perthousand ; B 25 -19 1010 706 ;
+C 191 ; WX 500 ; N questiondown ; B 28 -205 368 471 ;
+C 193 ; WX 333 ; N grave ; B 121 492 311 664 ;
+C 194 ; WX 333 ; N acute ; B 180 494 403 664 ;
+C 195 ; WX 333 ; N circumflex ; B 91 492 385 661 ;
+C 196 ; WX 333 ; N tilde ; B 100 517 427 624 ;
+C 197 ; WX 333 ; N macron ; B 99 532 411 583 ;
+C 198 ; WX 333 ; N breve ; B 117 492 418 650 ;
+C 199 ; WX 333 ; N dotaccent ; B 207 548 305 646 ;
+C 200 ; WX 333 ; N dieresis ; B 107 548 405 646 ;
+C 202 ; WX 333 ; N ring ; B 155 492 355 691 ;
+C 203 ; WX 333 ; N cedilla ; B -30 -217 182 0 ;
+C 205 ; WX 333 ; N hungarumlaut ; B 93 494 486 664 ;
+C 206 ; WX 333 ; N ogonek ; B 20 -169 203 40 ;
+C 207 ; WX 333 ; N caron ; B 121 492 426 661 ;
+C 208 ; WX 889 ; N emdash ; B -6 197 894 243 ;
+C 225 ; WX 889 ; N AE ; B -27 0 911 653 ;
+C 227 ; WX 276 ; N ordfeminine ; B 42 406 352 676 ;
+C 232 ; WX 556 ; N Lslash ; B -8 0 559 653 ;
+C 233 ; WX 722 ; N Oslash ; B 60 -105 699 722 ;
+C 234 ; WX 944 ; N OE ; B 49 -8 964 666 ;
+C 235 ; WX 310 ; N ordmasculine ; B 67 406 362 676 ;
+C 241 ; WX 667 ; N ae ; B 23 -11 640 441 ;
+C 245 ; WX 278 ; N dotlessi ; B 49 -11 235 441 ;
+C 248 ; WX 278 ; N lslash ; B 41 -11 312 683 ;
+C 249 ; WX 500 ; N oslash ; B 28 -135 469 554 ;
+C 250 ; WX 667 ; N oe ; B 20 -12 646 441 ;
+C 251 ; WX 500 ; N germandbls ; B -168 -207 493 679 ;
+C -1 ; WX 333 ; N Idieresis ; B -8 0 435 818 ;
+C -1 ; WX 444 ; N eacute ; B 31 -11 459 664 ;
+C -1 ; WX 500 ; N abreve ; B 17 -11 502 650 ;
+C -1 ; WX 500 ; N uhungarumlaut ; B 42 -11 580 664 ;
+C -1 ; WX 444 ; N ecaron ; B 31 -11 482 661 ;
+C -1 ; WX 556 ; N Ydieresis ; B 78 0 633 818 ;
+C -1 ; WX 675 ; N divide ; B 86 -11 590 517 ;
+C -1 ; WX 556 ; N Yacute ; B 78 0 633 876 ;
+C -1 ; WX 611 ; N Acircumflex ; B -51 0 564 873 ;
+C -1 ; WX 500 ; N aacute ; B 17 -11 487 664 ;
+C -1 ; WX 722 ; N Ucircumflex ; B 102 -18 765 873 ;
+C -1 ; WX 444 ; N yacute ; B -24 -206 459 664 ;
+C -1 ; WX 389 ; N scommaaccent ; B 16 -217 366 442 ;
+C -1 ; WX 444 ; N ecircumflex ; B 31 -11 441 661 ;
+C -1 ; WX 722 ; N Uring ; B 102 -18 765 883 ;
+C -1 ; WX 722 ; N Udieresis ; B 102 -18 765 818 ;
+C -1 ; WX 500 ; N aogonek ; B 17 -169 476 441 ;
+C -1 ; WX 722 ; N Uacute ; B 102 -18 765 876 ;
+C -1 ; WX 500 ; N uogonek ; B 42 -169 477 441 ;
+C -1 ; WX 611 ; N Edieresis ; B -1 0 634 818 ;
+C -1 ; WX 722 ; N Dcroat ; B -8 0 700 653 ;
+C -1 ; WX 250 ; N commaaccent ; B 8 -217 133 -50 ;
+C -1 ; WX 760 ; N copyright ; B 41 -18 719 666 ;
+C -1 ; WX 611 ; N Emacron ; B -1 0 634 795 ;
+C -1 ; WX 444 ; N ccaron ; B 30 -11 482 661 ;
+C -1 ; WX 500 ; N aring ; B 17 -11 476 691 ;
+C -1 ; WX 667 ; N Ncommaaccent ; B -20 -187 727 653 ;
+C -1 ; WX 278 ; N lacute ; B 41 -11 395 876 ;
+C -1 ; WX 500 ; N agrave ; B 17 -11 476 664 ;
+C -1 ; WX 556 ; N Tcommaaccent ; B 59 -217 633 653 ;
+C -1 ; WX 667 ; N Cacute ; B 66 -18 690 876 ;
+C -1 ; WX 500 ; N atilde ; B 17 -11 511 624 ;
+C -1 ; WX 611 ; N Edotaccent ; B -1 0 634 818 ;
+C -1 ; WX 389 ; N scaron ; B 16 -13 454 661 ;
+C -1 ; WX 389 ; N scedilla ; B 16 -217 366 442 ;
+C -1 ; WX 278 ; N iacute ; B 49 -11 355 664 ;
+C -1 ; WX 471 ; N lozenge ; B 13 0 459 724 ;
+C -1 ; WX 611 ; N Rcaron ; B -13 0 588 873 ;
+C -1 ; WX 722 ; N Gcommaaccent ; B 52 -217 722 666 ;
+C -1 ; WX 500 ; N ucircumflex ; B 42 -11 475 661 ;
+C -1 ; WX 500 ; N acircumflex ; B 17 -11 476 661 ;
+C -1 ; WX 611 ; N Amacron ; B -51 0 564 795 ;
+C -1 ; WX 389 ; N rcaron ; B 45 0 434 661 ;
+C -1 ; WX 444 ; N ccedilla ; B 30 -217 425 441 ;
+C -1 ; WX 556 ; N Zdotaccent ; B -6 0 606 818 ;
+C -1 ; WX 611 ; N Thorn ; B 0 0 569 653 ;
+C -1 ; WX 722 ; N Omacron ; B 60 -18 699 795 ;
+C -1 ; WX 611 ; N Racute ; B -13 0 588 876 ;
+C -1 ; WX 500 ; N Sacute ; B 17 -18 508 876 ;
+C -1 ; WX 544 ; N dcaron ; B 15 -13 658 683 ;
+C -1 ; WX 722 ; N Umacron ; B 102 -18 765 795 ;
+C -1 ; WX 500 ; N uring ; B 42 -11 475 691 ;
+C -1 ; WX 300 ; N threesuperior ; B 43 268 339 676 ;
+C -1 ; WX 722 ; N Ograve ; B 60 -18 699 876 ;
+C -1 ; WX 611 ; N Agrave ; B -51 0 564 876 ;
+C -1 ; WX 611 ; N Abreve ; B -51 0 564 862 ;
+C -1 ; WX 675 ; N multiply ; B 93 8 582 497 ;
+C -1 ; WX 500 ; N uacute ; B 42 -11 477 664 ;
+C -1 ; WX 556 ; N Tcaron ; B 59 0 633 873 ;
+C -1 ; WX 476 ; N partialdiff ; B 17 -38 459 710 ;
+C -1 ; WX 444 ; N ydieresis ; B -24 -206 441 606 ;
+C -1 ; WX 667 ; N Nacute ; B -20 -15 727 876 ;
+C -1 ; WX 278 ; N icircumflex ; B 33 -11 327 661 ;
+C -1 ; WX 611 ; N Ecircumflex ; B -1 0 634 873 ;
+C -1 ; WX 500 ; N adieresis ; B 17 -11 489 606 ;
+C -1 ; WX 444 ; N edieresis ; B 31 -11 451 606 ;
+C -1 ; WX 444 ; N cacute ; B 30 -11 459 664 ;
+C -1 ; WX 500 ; N nacute ; B 14 -9 477 664 ;
+C -1 ; WX 500 ; N umacron ; B 42 -11 485 583 ;
+C -1 ; WX 667 ; N Ncaron ; B -20 -15 727 873 ;
+C -1 ; WX 333 ; N Iacute ; B -8 0 433 876 ;
+C -1 ; WX 675 ; N plusminus ; B 86 0 590 506 ;
+C -1 ; WX 275 ; N brokenbar ; B 105 -142 171 708 ;
+C -1 ; WX 760 ; N registered ; B 41 -18 719 666 ;
+C -1 ; WX 722 ; N Gbreve ; B 52 -18 722 862 ;
+C -1 ; WX 333 ; N Idotaccent ; B -8 0 384 818 ;
+C -1 ; WX 600 ; N summation ; B 15 -10 585 706 ;
+C -1 ; WX 611 ; N Egrave ; B -1 0 634 876 ;
+C -1 ; WX 389 ; N racute ; B 45 0 431 664 ;
+C -1 ; WX 500 ; N omacron ; B 27 -11 495 583 ;
+C -1 ; WX 556 ; N Zacute ; B -6 0 606 876 ;
+C -1 ; WX 556 ; N Zcaron ; B -6 0 606 873 ;
+C -1 ; WX 549 ; N greaterequal ; B 26 0 523 658 ;
+C -1 ; WX 722 ; N Eth ; B -8 0 700 653 ;
+C -1 ; WX 667 ; N Ccedilla ; B 66 -217 689 666 ;
+C -1 ; WX 278 ; N lcommaaccent ; B 22 -217 279 683 ;
+C -1 ; WX 300 ; N tcaron ; B 37 -11 407 681 ;
+C -1 ; WX 444 ; N eogonek ; B 31 -169 412 441 ;
+C -1 ; WX 722 ; N Uogonek ; B 102 -184 765 653 ;
+C -1 ; WX 611 ; N Aacute ; B -51 0 564 876 ;
+C -1 ; WX 611 ; N Adieresis ; B -51 0 564 818 ;
+C -1 ; WX 444 ; N egrave ; B 31 -11 412 664 ;
+C -1 ; WX 389 ; N zacute ; B -2 -81 431 664 ;
+C -1 ; WX 278 ; N iogonek ; B 49 -169 264 654 ;
+C -1 ; WX 722 ; N Oacute ; B 60 -18 699 876 ;
+C -1 ; WX 500 ; N oacute ; B 27 -11 487 664 ;
+C -1 ; WX 500 ; N amacron ; B 17 -11 495 583 ;
+C -1 ; WX 389 ; N sacute ; B 16 -13 431 664 ;
+C -1 ; WX 278 ; N idieresis ; B 49 -11 352 606 ;
+C -1 ; WX 722 ; N Ocircumflex ; B 60 -18 699 873 ;
+C -1 ; WX 722 ; N Ugrave ; B 102 -18 765 876 ;
+C -1 ; WX 612 ; N Delta ; B 6 0 608 688 ;
+C -1 ; WX 500 ; N thorn ; B -75 -205 469 683 ;
+C -1 ; WX 300 ; N twosuperior ; B 33 271 324 676 ;
+C -1 ; WX 722 ; N Odieresis ; B 60 -18 699 818 ;
+C -1 ; WX 500 ; N mu ; B -30 -209 497 428 ;
+C -1 ; WX 278 ; N igrave ; B 49 -11 284 664 ;
+C -1 ; WX 500 ; N ohungarumlaut ; B 27 -11 590 664 ;
+C -1 ; WX 611 ; N Eogonek ; B -1 -169 634 653 ;
+C -1 ; WX 500 ; N dcroat ; B 15 -13 572 683 ;
+C -1 ; WX 750 ; N threequarters ; B 23 -10 736 676 ;
+C -1 ; WX 500 ; N Scedilla ; B 17 -217 508 667 ;
+C -1 ; WX 300 ; N lcaron ; B 41 -11 407 683 ;
+C -1 ; WX 667 ; N Kcommaaccent ; B 7 -217 722 653 ;
+C -1 ; WX 556 ; N Lacute ; B -8 0 559 876 ;
+C -1 ; WX 980 ; N trademark ; B 30 247 957 653 ;
+C -1 ; WX 444 ; N edotaccent ; B 31 -11 412 606 ;
+C -1 ; WX 333 ; N Igrave ; B -8 0 384 876 ;
+C -1 ; WX 333 ; N Imacron ; B -8 0 441 795 ;
+C -1 ; WX 611 ; N Lcaron ; B -8 0 586 653 ;
+C -1 ; WX 750 ; N onehalf ; B 34 -10 749 676 ;
+C -1 ; WX 549 ; N lessequal ; B 26 0 523 658 ;
+C -1 ; WX 500 ; N ocircumflex ; B 27 -11 468 661 ;
+C -1 ; WX 500 ; N ntilde ; B 14 -9 476 624 ;
+C -1 ; WX 722 ; N Uhungarumlaut ; B 102 -18 765 876 ;
+C -1 ; WX 611 ; N Eacute ; B -1 0 634 876 ;
+C -1 ; WX 444 ; N emacron ; B 31 -11 457 583 ;
+C -1 ; WX 500 ; N gbreve ; B 8 -206 487 650 ;
+C -1 ; WX 750 ; N onequarter ; B 33 -10 736 676 ;
+C -1 ; WX 500 ; N Scaron ; B 17 -18 520 873 ;
+C -1 ; WX 500 ; N Scommaaccent ; B 17 -217 508 667 ;
+C -1 ; WX 722 ; N Ohungarumlaut ; B 60 -18 699 876 ;
+C -1 ; WX 400 ; N degree ; B 101 390 387 676 ;
+C -1 ; WX 500 ; N ograve ; B 27 -11 468 664 ;
+C -1 ; WX 667 ; N Ccaron ; B 66 -18 689 873 ;
+C -1 ; WX 500 ; N ugrave ; B 42 -11 475 664 ;
+C -1 ; WX 453 ; N radical ; B 2 -60 452 768 ;
+C -1 ; WX 722 ; N Dcaron ; B -8 0 700 873 ;
+C -1 ; WX 389 ; N rcommaaccent ; B -3 -217 412 441 ;
+C -1 ; WX 667 ; N Ntilde ; B -20 -15 727 836 ;
+C -1 ; WX 500 ; N otilde ; B 27 -11 496 624 ;
+C -1 ; WX 611 ; N Rcommaaccent ; B -13 -187 588 653 ;
+C -1 ; WX 556 ; N Lcommaaccent ; B -8 -217 559 653 ;
+C -1 ; WX 611 ; N Atilde ; B -51 0 566 836 ;
+C -1 ; WX 611 ; N Aogonek ; B -51 -169 566 668 ;
+C -1 ; WX 611 ; N Aring ; B -51 0 564 883 ;
+C -1 ; WX 722 ; N Otilde ; B 60 -18 699 836 ;
+C -1 ; WX 389 ; N zdotaccent ; B -2 -81 380 606 ;
+C -1 ; WX 611 ; N Ecaron ; B -1 0 634 873 ;
+C -1 ; WX 333 ; N Iogonek ; B -8 -169 384 653 ;
+C -1 ; WX 444 ; N kcommaaccent ; B 14 -187 461 683 ;
+C -1 ; WX 675 ; N minus ; B 86 220 590 286 ;
+C -1 ; WX 333 ; N Icircumflex ; B -8 0 425 873 ;
+C -1 ; WX 500 ; N ncaron ; B 14 -9 510 661 ;
+C -1 ; WX 278 ; N tcommaaccent ; B 2 -217 296 546 ;
+C -1 ; WX 675 ; N logicalnot ; B 86 108 590 386 ;
+C -1 ; WX 500 ; N odieresis ; B 27 -11 489 606 ;
+C -1 ; WX 500 ; N udieresis ; B 42 -11 479 606 ;
+C -1 ; WX 549 ; N notequal ; B 12 -29 537 541 ;
+C -1 ; WX 500 ; N gcommaaccent ; B 8 -206 472 706 ;
+C -1 ; WX 500 ; N eth ; B 27 -11 482 683 ;
+C -1 ; WX 389 ; N zcaron ; B -2 -81 434 661 ;
+C -1 ; WX 500 ; N ncommaaccent ; B 14 -187 474 441 ;
+C -1 ; WX 300 ; N onesuperior ; B 43 271 284 676 ;
+C -1 ; WX 278 ; N imacron ; B 46 -11 311 583 ;
+C -1 ; WX 500 ; N Euro ; B 0 0 0 0 ;
+EndCharMetrics
+StartKernData
+StartKernPairs 2321
+KPX A C -30
+KPX A Cacute -30
+KPX A Ccaron -30
+KPX A Ccedilla -30
+KPX A G -35
+KPX A Gbreve -35
+KPX A Gcommaaccent -35
+KPX A O -40
+KPX A Oacute -40
+KPX A Ocircumflex -40
+KPX A Odieresis -40
+KPX A Ograve -40
+KPX A Ohungarumlaut -40
+KPX A Omacron -40
+KPX A Oslash -40
+KPX A Otilde -40
+KPX A Q -40
+KPX A T -37
+KPX A Tcaron -37
+KPX A Tcommaaccent -37
+KPX A U -50
+KPX A Uacute -50
+KPX A Ucircumflex -50
+KPX A Udieresis -50
+KPX A Ugrave -50
+KPX A Uhungarumlaut -50
+KPX A Umacron -50
+KPX A Uogonek -50
+KPX A Uring -50
+KPX A V -105
+KPX A W -95
+KPX A Y -55
+KPX A Yacute -55
+KPX A Ydieresis -55
+KPX A quoteright -37
+KPX A u -20
+KPX A uacute -20
+KPX A ucircumflex -20
+KPX A udieresis -20
+KPX A ugrave -20
+KPX A uhungarumlaut -20
+KPX A umacron -20
+KPX A uogonek -20
+KPX A uring -20
+KPX A v -55
+KPX A w -55
+KPX A y -55
+KPX A yacute -55
+KPX A ydieresis -55
+KPX Aacute C -30
+KPX Aacute Cacute -30
+KPX Aacute Ccaron -30
+KPX Aacute Ccedilla -30
+KPX Aacute G -35
+KPX Aacute Gbreve -35
+KPX Aacute Gcommaaccent -35
+KPX Aacute O -40
+KPX Aacute Oacute -40
+KPX Aacute Ocircumflex -40
+KPX Aacute Odieresis -40
+KPX Aacute Ograve -40
+KPX Aacute Ohungarumlaut -40
+KPX Aacute Omacron -40
+KPX Aacute Oslash -40
+KPX Aacute Otilde -40
+KPX Aacute Q -40
+KPX Aacute T -37
+KPX Aacute Tcaron -37
+KPX Aacute Tcommaaccent -37
+KPX Aacute U -50
+KPX Aacute Uacute -50
+KPX Aacute Ucircumflex -50
+KPX Aacute Udieresis -50
+KPX Aacute Ugrave -50
+KPX Aacute Uhungarumlaut -50
+KPX Aacute Umacron -50
+KPX Aacute Uogonek -50
+KPX Aacute Uring -50
+KPX Aacute V -105
+KPX Aacute W -95
+KPX Aacute Y -55
+KPX Aacute Yacute -55
+KPX Aacute Ydieresis -55
+KPX Aacute quoteright -37
+KPX Aacute u -20
+KPX Aacute uacute -20
+KPX Aacute ucircumflex -20
+KPX Aacute udieresis -20
+KPX Aacute ugrave -20
+KPX Aacute uhungarumlaut -20
+KPX Aacute umacron -20
+KPX Aacute uogonek -20
+KPX Aacute uring -20
+KPX Aacute v -55
+KPX Aacute w -55
+KPX Aacute y -55
+KPX Aacute yacute -55
+KPX Aacute ydieresis -55
+KPX Abreve C -30
+KPX Abreve Cacute -30
+KPX Abreve Ccaron -30
+KPX Abreve Ccedilla -30
+KPX Abreve G -35
+KPX Abreve Gbreve -35
+KPX Abreve Gcommaaccent -35
+KPX Abreve O -40
+KPX Abreve Oacute -40
+KPX Abreve Ocircumflex -40
+KPX Abreve Odieresis -40
+KPX Abreve Ograve -40
+KPX Abreve Ohungarumlaut -40
+KPX Abreve Omacron -40
+KPX Abreve Oslash -40
+KPX Abreve Otilde -40
+KPX Abreve Q -40
+KPX Abreve T -37
+KPX Abreve Tcaron -37
+KPX Abreve Tcommaaccent -37
+KPX Abreve U -50
+KPX Abreve Uacute -50
+KPX Abreve Ucircumflex -50
+KPX Abreve Udieresis -50
+KPX Abreve Ugrave -50
+KPX Abreve Uhungarumlaut -50
+KPX Abreve Umacron -50
+KPX Abreve Uogonek -50
+KPX Abreve Uring -50
+KPX Abreve V -105
+KPX Abreve W -95
+KPX Abreve Y -55
+KPX Abreve Yacute -55
+KPX Abreve Ydieresis -55
+KPX Abreve quoteright -37
+KPX Abreve u -20
+KPX Abreve uacute -20
+KPX Abreve ucircumflex -20
+KPX Abreve udieresis -20
+KPX Abreve ugrave -20
+KPX Abreve uhungarumlaut -20
+KPX Abreve umacron -20
+KPX Abreve uogonek -20
+KPX Abreve uring -20
+KPX Abreve v -55
+KPX Abreve w -55
+KPX Abreve y -55
+KPX Abreve yacute -55
+KPX Abreve ydieresis -55
+KPX Acircumflex C -30
+KPX Acircumflex Cacute -30
+KPX Acircumflex Ccaron -30
+KPX Acircumflex Ccedilla -30
+KPX Acircumflex G -35
+KPX Acircumflex Gbreve -35
+KPX Acircumflex Gcommaaccent -35
+KPX Acircumflex O -40
+KPX Acircumflex Oacute -40
+KPX Acircumflex Ocircumflex -40
+KPX Acircumflex Odieresis -40
+KPX Acircumflex Ograve -40
+KPX Acircumflex Ohungarumlaut -40
+KPX Acircumflex Omacron -40
+KPX Acircumflex Oslash -40
+KPX Acircumflex Otilde -40
+KPX Acircumflex Q -40
+KPX Acircumflex T -37
+KPX Acircumflex Tcaron -37
+KPX Acircumflex Tcommaaccent -37
+KPX Acircumflex U -50
+KPX Acircumflex Uacute -50
+KPX Acircumflex Ucircumflex -50
+KPX Acircumflex Udieresis -50
+KPX Acircumflex Ugrave -50
+KPX Acircumflex Uhungarumlaut -50
+KPX Acircumflex Umacron -50
+KPX Acircumflex Uogonek -50
+KPX Acircumflex Uring -50
+KPX Acircumflex V -105
+KPX Acircumflex W -95
+KPX Acircumflex Y -55
+KPX Acircumflex Yacute -55
+KPX Acircumflex Ydieresis -55
+KPX Acircumflex quoteright -37
+KPX Acircumflex u -20
+KPX Acircumflex uacute -20
+KPX Acircumflex ucircumflex -20
+KPX Acircumflex udieresis -20
+KPX Acircumflex ugrave -20
+KPX Acircumflex uhungarumlaut -20
+KPX Acircumflex umacron -20
+KPX Acircumflex uogonek -20
+KPX Acircumflex uring -20
+KPX Acircumflex v -55
+KPX Acircumflex w -55
+KPX Acircumflex y -55
+KPX Acircumflex yacute -55
+KPX Acircumflex ydieresis -55
+KPX Adieresis C -30
+KPX Adieresis Cacute -30
+KPX Adieresis Ccaron -30
+KPX Adieresis Ccedilla -30
+KPX Adieresis G -35
+KPX Adieresis Gbreve -35
+KPX Adieresis Gcommaaccent -35
+KPX Adieresis O -40
+KPX Adieresis Oacute -40
+KPX Adieresis Ocircumflex -40
+KPX Adieresis Odieresis -40
+KPX Adieresis Ograve -40
+KPX Adieresis Ohungarumlaut -40
+KPX Adieresis Omacron -40
+KPX Adieresis Oslash -40
+KPX Adieresis Otilde -40
+KPX Adieresis Q -40
+KPX Adieresis T -37
+KPX Adieresis Tcaron -37
+KPX Adieresis Tcommaaccent -37
+KPX Adieresis U -50
+KPX Adieresis Uacute -50
+KPX Adieresis Ucircumflex -50
+KPX Adieresis Udieresis -50
+KPX Adieresis Ugrave -50
+KPX Adieresis Uhungarumlaut -50
+KPX Adieresis Umacron -50
+KPX Adieresis Uogonek -50
+KPX Adieresis Uring -50
+KPX Adieresis V -105
+KPX Adieresis W -95
+KPX Adieresis Y -55
+KPX Adieresis Yacute -55
+KPX Adieresis Ydieresis -55
+KPX Adieresis quoteright -37
+KPX Adieresis u -20
+KPX Adieresis uacute -20
+KPX Adieresis ucircumflex -20
+KPX Adieresis udieresis -20
+KPX Adieresis ugrave -20
+KPX Adieresis uhungarumlaut -20
+KPX Adieresis umacron -20
+KPX Adieresis uogonek -20
+KPX Adieresis uring -20
+KPX Adieresis v -55
+KPX Adieresis w -55
+KPX Adieresis y -55
+KPX Adieresis yacute -55
+KPX Adieresis ydieresis -55
+KPX Agrave C -30
+KPX Agrave Cacute -30
+KPX Agrave Ccaron -30
+KPX Agrave Ccedilla -30
+KPX Agrave G -35
+KPX Agrave Gbreve -35
+KPX Agrave Gcommaaccent -35
+KPX Agrave O -40
+KPX Agrave Oacute -40
+KPX Agrave Ocircumflex -40
+KPX Agrave Odieresis -40
+KPX Agrave Ograve -40
+KPX Agrave Ohungarumlaut -40
+KPX Agrave Omacron -40
+KPX Agrave Oslash -40
+KPX Agrave Otilde -40
+KPX Agrave Q -40
+KPX Agrave T -37
+KPX Agrave Tcaron -37
+KPX Agrave Tcommaaccent -37
+KPX Agrave U -50
+KPX Agrave Uacute -50
+KPX Agrave Ucircumflex -50
+KPX Agrave Udieresis -50
+KPX Agrave Ugrave -50
+KPX Agrave Uhungarumlaut -50
+KPX Agrave Umacron -50
+KPX Agrave Uogonek -50
+KPX Agrave Uring -50
+KPX Agrave V -105
+KPX Agrave W -95
+KPX Agrave Y -55
+KPX Agrave Yacute -55
+KPX Agrave Ydieresis -55
+KPX Agrave quoteright -37
+KPX Agrave u -20
+KPX Agrave uacute -20
+KPX Agrave ucircumflex -20
+KPX Agrave udieresis -20
+KPX Agrave ugrave -20
+KPX Agrave uhungarumlaut -20
+KPX Agrave umacron -20
+KPX Agrave uogonek -20
+KPX Agrave uring -20
+KPX Agrave v -55
+KPX Agrave w -55
+KPX Agrave y -55
+KPX Agrave yacute -55
+KPX Agrave ydieresis -55
+KPX Amacron C -30
+KPX Amacron Cacute -30
+KPX Amacron Ccaron -30
+KPX Amacron Ccedilla -30
+KPX Amacron G -35
+KPX Amacron Gbreve -35
+KPX Amacron Gcommaaccent -35
+KPX Amacron O -40
+KPX Amacron Oacute -40
+KPX Amacron Ocircumflex -40
+KPX Amacron Odieresis -40
+KPX Amacron Ograve -40
+KPX Amacron Ohungarumlaut -40
+KPX Amacron Omacron -40
+KPX Amacron Oslash -40
+KPX Amacron Otilde -40
+KPX Amacron Q -40
+KPX Amacron T -37
+KPX Amacron Tcaron -37
+KPX Amacron Tcommaaccent -37
+KPX Amacron U -50
+KPX Amacron Uacute -50
+KPX Amacron Ucircumflex -50
+KPX Amacron Udieresis -50
+KPX Amacron Ugrave -50
+KPX Amacron Uhungarumlaut -50
+KPX Amacron Umacron -50
+KPX Amacron Uogonek -50
+KPX Amacron Uring -50
+KPX Amacron V -105
+KPX Amacron W -95
+KPX Amacron Y -55
+KPX Amacron Yacute -55
+KPX Amacron Ydieresis -55
+KPX Amacron quoteright -37
+KPX Amacron u -20
+KPX Amacron uacute -20
+KPX Amacron ucircumflex -20
+KPX Amacron udieresis -20
+KPX Amacron ugrave -20
+KPX Amacron uhungarumlaut -20
+KPX Amacron umacron -20
+KPX Amacron uogonek -20
+KPX Amacron uring -20
+KPX Amacron v -55
+KPX Amacron w -55
+KPX Amacron y -55
+KPX Amacron yacute -55
+KPX Amacron ydieresis -55
+KPX Aogonek C -30
+KPX Aogonek Cacute -30
+KPX Aogonek Ccaron -30
+KPX Aogonek Ccedilla -30
+KPX Aogonek G -35
+KPX Aogonek Gbreve -35
+KPX Aogonek Gcommaaccent -35
+KPX Aogonek O -40
+KPX Aogonek Oacute -40
+KPX Aogonek Ocircumflex -40
+KPX Aogonek Odieresis -40
+KPX Aogonek Ograve -40
+KPX Aogonek Ohungarumlaut -40
+KPX Aogonek Omacron -40
+KPX Aogonek Oslash -40
+KPX Aogonek Otilde -40
+KPX Aogonek Q -40
+KPX Aogonek T -37
+KPX Aogonek Tcaron -37
+KPX Aogonek Tcommaaccent -37
+KPX Aogonek U -50
+KPX Aogonek Uacute -50
+KPX Aogonek Ucircumflex -50
+KPX Aogonek Udieresis -50
+KPX Aogonek Ugrave -50
+KPX Aogonek Uhungarumlaut -50
+KPX Aogonek Umacron -50
+KPX Aogonek Uogonek -50
+KPX Aogonek Uring -50
+KPX Aogonek V -105
+KPX Aogonek W -95
+KPX Aogonek Y -55
+KPX Aogonek Yacute -55
+KPX Aogonek Ydieresis -55
+KPX Aogonek quoteright -37
+KPX Aogonek u -20
+KPX Aogonek uacute -20
+KPX Aogonek ucircumflex -20
+KPX Aogonek udieresis -20
+KPX Aogonek ugrave -20
+KPX Aogonek uhungarumlaut -20
+KPX Aogonek umacron -20
+KPX Aogonek uogonek -20
+KPX Aogonek uring -20
+KPX Aogonek v -55
+KPX Aogonek w -55
+KPX Aogonek y -55
+KPX Aogonek yacute -55
+KPX Aogonek ydieresis -55
+KPX Aring C -30
+KPX Aring Cacute -30
+KPX Aring Ccaron -30
+KPX Aring Ccedilla -30
+KPX Aring G -35
+KPX Aring Gbreve -35
+KPX Aring Gcommaaccent -35
+KPX Aring O -40
+KPX Aring Oacute -40
+KPX Aring Ocircumflex -40
+KPX Aring Odieresis -40
+KPX Aring Ograve -40
+KPX Aring Ohungarumlaut -40
+KPX Aring Omacron -40
+KPX Aring Oslash -40
+KPX Aring Otilde -40
+KPX Aring Q -40
+KPX Aring T -37
+KPX Aring Tcaron -37
+KPX Aring Tcommaaccent -37
+KPX Aring U -50
+KPX Aring Uacute -50
+KPX Aring Ucircumflex -50
+KPX Aring Udieresis -50
+KPX Aring Ugrave -50
+KPX Aring Uhungarumlaut -50
+KPX Aring Umacron -50
+KPX Aring Uogonek -50
+KPX Aring Uring -50
+KPX Aring V -105
+KPX Aring W -95
+KPX Aring Y -55
+KPX Aring Yacute -55
+KPX Aring Ydieresis -55
+KPX Aring quoteright -37
+KPX Aring u -20
+KPX Aring uacute -20
+KPX Aring ucircumflex -20
+KPX Aring udieresis -20
+KPX Aring ugrave -20
+KPX Aring uhungarumlaut -20
+KPX Aring umacron -20
+KPX Aring uogonek -20
+KPX Aring uring -20
+KPX Aring v -55
+KPX Aring w -55
+KPX Aring y -55
+KPX Aring yacute -55
+KPX Aring ydieresis -55
+KPX Atilde C -30
+KPX Atilde Cacute -30
+KPX Atilde Ccaron -30
+KPX Atilde Ccedilla -30
+KPX Atilde G -35
+KPX Atilde Gbreve -35
+KPX Atilde Gcommaaccent -35
+KPX Atilde O -40
+KPX Atilde Oacute -40
+KPX Atilde Ocircumflex -40
+KPX Atilde Odieresis -40
+KPX Atilde Ograve -40
+KPX Atilde Ohungarumlaut -40
+KPX Atilde Omacron -40
+KPX Atilde Oslash -40
+KPX Atilde Otilde -40
+KPX Atilde Q -40
+KPX Atilde T -37
+KPX Atilde Tcaron -37
+KPX Atilde Tcommaaccent -37
+KPX Atilde U -50
+KPX Atilde Uacute -50
+KPX Atilde Ucircumflex -50
+KPX Atilde Udieresis -50
+KPX Atilde Ugrave -50
+KPX Atilde Uhungarumlaut -50
+KPX Atilde Umacron -50
+KPX Atilde Uogonek -50
+KPX Atilde Uring -50
+KPX Atilde V -105
+KPX Atilde W -95
+KPX Atilde Y -55
+KPX Atilde Yacute -55
+KPX Atilde Ydieresis -55
+KPX Atilde quoteright -37
+KPX Atilde u -20
+KPX Atilde uacute -20
+KPX Atilde ucircumflex -20
+KPX Atilde udieresis -20
+KPX Atilde ugrave -20
+KPX Atilde uhungarumlaut -20
+KPX Atilde umacron -20
+KPX Atilde uogonek -20
+KPX Atilde uring -20
+KPX Atilde v -55
+KPX Atilde w -55
+KPX Atilde y -55
+KPX Atilde yacute -55
+KPX Atilde ydieresis -55
+KPX B A -25
+KPX B Aacute -25
+KPX B Abreve -25
+KPX B Acircumflex -25
+KPX B Adieresis -25
+KPX B Agrave -25
+KPX B Amacron -25
+KPX B Aogonek -25
+KPX B Aring -25
+KPX B Atilde -25
+KPX B U -10
+KPX B Uacute -10
+KPX B Ucircumflex -10
+KPX B Udieresis -10
+KPX B Ugrave -10
+KPX B Uhungarumlaut -10
+KPX B Umacron -10
+KPX B Uogonek -10
+KPX B Uring -10
+KPX D A -35
+KPX D Aacute -35
+KPX D Abreve -35
+KPX D Acircumflex -35
+KPX D Adieresis -35
+KPX D Agrave -35
+KPX D Amacron -35
+KPX D Aogonek -35
+KPX D Aring -35
+KPX D Atilde -35
+KPX D V -40
+KPX D W -40
+KPX D Y -40
+KPX D Yacute -40
+KPX D Ydieresis -40
+KPX Dcaron A -35
+KPX Dcaron Aacute -35
+KPX Dcaron Abreve -35
+KPX Dcaron Acircumflex -35
+KPX Dcaron Adieresis -35
+KPX Dcaron Agrave -35
+KPX Dcaron Amacron -35
+KPX Dcaron Aogonek -35
+KPX Dcaron Aring -35
+KPX Dcaron Atilde -35
+KPX Dcaron V -40
+KPX Dcaron W -40
+KPX Dcaron Y -40
+KPX Dcaron Yacute -40
+KPX Dcaron Ydieresis -40
+KPX Dcroat A -35
+KPX Dcroat Aacute -35
+KPX Dcroat Abreve -35
+KPX Dcroat Acircumflex -35
+KPX Dcroat Adieresis -35
+KPX Dcroat Agrave -35
+KPX Dcroat Amacron -35
+KPX Dcroat Aogonek -35
+KPX Dcroat Aring -35
+KPX Dcroat Atilde -35
+KPX Dcroat V -40
+KPX Dcroat W -40
+KPX Dcroat Y -40
+KPX Dcroat Yacute -40
+KPX Dcroat Ydieresis -40
+KPX F A -115
+KPX F Aacute -115
+KPX F Abreve -115
+KPX F Acircumflex -115
+KPX F Adieresis -115
+KPX F Agrave -115
+KPX F Amacron -115
+KPX F Aogonek -115
+KPX F Aring -115
+KPX F Atilde -115
+KPX F a -75
+KPX F aacute -75
+KPX F abreve -75
+KPX F acircumflex -75
+KPX F adieresis -75
+KPX F agrave -75
+KPX F amacron -75
+KPX F aogonek -75
+KPX F aring -75
+KPX F atilde -75
+KPX F comma -135
+KPX F e -75
+KPX F eacute -75
+KPX F ecaron -75
+KPX F ecircumflex -75
+KPX F edieresis -75
+KPX F edotaccent -75
+KPX F egrave -75
+KPX F emacron -75
+KPX F eogonek -75
+KPX F i -45
+KPX F iacute -45
+KPX F icircumflex -45
+KPX F idieresis -45
+KPX F igrave -45
+KPX F imacron -45
+KPX F iogonek -45
+KPX F o -105
+KPX F oacute -105
+KPX F ocircumflex -105
+KPX F odieresis -105
+KPX F ograve -105
+KPX F ohungarumlaut -105
+KPX F omacron -105
+KPX F oslash -105
+KPX F otilde -105
+KPX F period -135
+KPX F r -55
+KPX F racute -55
+KPX F rcaron -55
+KPX F rcommaaccent -55
+KPX J A -40
+KPX J Aacute -40
+KPX J Abreve -40
+KPX J Acircumflex -40
+KPX J Adieresis -40
+KPX J Agrave -40
+KPX J Amacron -40
+KPX J Aogonek -40
+KPX J Aring -40
+KPX J Atilde -40
+KPX J a -35
+KPX J aacute -35
+KPX J abreve -35
+KPX J acircumflex -35
+KPX J adieresis -35
+KPX J agrave -35
+KPX J amacron -35
+KPX J aogonek -35
+KPX J aring -35
+KPX J atilde -35
+KPX J comma -25
+KPX J e -25
+KPX J eacute -25
+KPX J ecaron -25
+KPX J ecircumflex -25
+KPX J edieresis -25
+KPX J edotaccent -25
+KPX J egrave -25
+KPX J emacron -25
+KPX J eogonek -25
+KPX J o -25
+KPX J oacute -25
+KPX J ocircumflex -25
+KPX J odieresis -25
+KPX J ograve -25
+KPX J ohungarumlaut -25
+KPX J omacron -25
+KPX J oslash -25
+KPX J otilde -25
+KPX J period -25
+KPX J u -35
+KPX J uacute -35
+KPX J ucircumflex -35
+KPX J udieresis -35
+KPX J ugrave -35
+KPX J uhungarumlaut -35
+KPX J umacron -35
+KPX J uogonek -35
+KPX J uring -35
+KPX K O -50
+KPX K Oacute -50
+KPX K Ocircumflex -50
+KPX K Odieresis -50
+KPX K Ograve -50
+KPX K Ohungarumlaut -50
+KPX K Omacron -50
+KPX K Oslash -50
+KPX K Otilde -50
+KPX K e -35
+KPX K eacute -35
+KPX K ecaron -35
+KPX K ecircumflex -35
+KPX K edieresis -35
+KPX K edotaccent -35
+KPX K egrave -35
+KPX K emacron -35
+KPX K eogonek -35
+KPX K o -40
+KPX K oacute -40
+KPX K ocircumflex -40
+KPX K odieresis -40
+KPX K ograve -40
+KPX K ohungarumlaut -40
+KPX K omacron -40
+KPX K oslash -40
+KPX K otilde -40
+KPX K u -40
+KPX K uacute -40
+KPX K ucircumflex -40
+KPX K udieresis -40
+KPX K ugrave -40
+KPX K uhungarumlaut -40
+KPX K umacron -40
+KPX K uogonek -40
+KPX K uring -40
+KPX K y -40
+KPX K yacute -40
+KPX K ydieresis -40
+KPX Kcommaaccent O -50
+KPX Kcommaaccent Oacute -50
+KPX Kcommaaccent Ocircumflex -50
+KPX Kcommaaccent Odieresis -50
+KPX Kcommaaccent Ograve -50
+KPX Kcommaaccent Ohungarumlaut -50
+KPX Kcommaaccent Omacron -50
+KPX Kcommaaccent Oslash -50
+KPX Kcommaaccent Otilde -50
+KPX Kcommaaccent e -35
+KPX Kcommaaccent eacute -35
+KPX Kcommaaccent ecaron -35
+KPX Kcommaaccent ecircumflex -35
+KPX Kcommaaccent edieresis -35
+KPX Kcommaaccent edotaccent -35
+KPX Kcommaaccent egrave -35
+KPX Kcommaaccent emacron -35
+KPX Kcommaaccent eogonek -35
+KPX Kcommaaccent o -40
+KPX Kcommaaccent oacute -40
+KPX Kcommaaccent ocircumflex -40
+KPX Kcommaaccent odieresis -40
+KPX Kcommaaccent ograve -40
+KPX Kcommaaccent ohungarumlaut -40
+KPX Kcommaaccent omacron -40
+KPX Kcommaaccent oslash -40
+KPX Kcommaaccent otilde -40
+KPX Kcommaaccent u -40
+KPX Kcommaaccent uacute -40
+KPX Kcommaaccent ucircumflex -40
+KPX Kcommaaccent udieresis -40
+KPX Kcommaaccent ugrave -40
+KPX Kcommaaccent uhungarumlaut -40
+KPX Kcommaaccent umacron -40
+KPX Kcommaaccent uogonek -40
+KPX Kcommaaccent uring -40
+KPX Kcommaaccent y -40
+KPX Kcommaaccent yacute -40
+KPX Kcommaaccent ydieresis -40
+KPX L T -20
+KPX L Tcaron -20
+KPX L Tcommaaccent -20
+KPX L V -55
+KPX L W -55
+KPX L Y -20
+KPX L Yacute -20
+KPX L Ydieresis -20
+KPX L quoteright -37
+KPX L y -30
+KPX L yacute -30
+KPX L ydieresis -30
+KPX Lacute T -20
+KPX Lacute Tcaron -20
+KPX Lacute Tcommaaccent -20
+KPX Lacute V -55
+KPX Lacute W -55
+KPX Lacute Y -20
+KPX Lacute Yacute -20
+KPX Lacute Ydieresis -20
+KPX Lacute quoteright -37
+KPX Lacute y -30
+KPX Lacute yacute -30
+KPX Lacute ydieresis -30
+KPX Lcommaaccent T -20
+KPX Lcommaaccent Tcaron -20
+KPX Lcommaaccent Tcommaaccent -20
+KPX Lcommaaccent V -55
+KPX Lcommaaccent W -55
+KPX Lcommaaccent Y -20
+KPX Lcommaaccent Yacute -20
+KPX Lcommaaccent Ydieresis -20
+KPX Lcommaaccent quoteright -37
+KPX Lcommaaccent y -30
+KPX Lcommaaccent yacute -30
+KPX Lcommaaccent ydieresis -30
+KPX Lslash T -20
+KPX Lslash Tcaron -20
+KPX Lslash Tcommaaccent -20
+KPX Lslash V -55
+KPX Lslash W -55
+KPX Lslash Y -20
+KPX Lslash Yacute -20
+KPX Lslash Ydieresis -20
+KPX Lslash quoteright -37
+KPX Lslash y -30
+KPX Lslash yacute -30
+KPX Lslash ydieresis -30
+KPX N A -27
+KPX N Aacute -27
+KPX N Abreve -27
+KPX N Acircumflex -27
+KPX N Adieresis -27
+KPX N Agrave -27
+KPX N Amacron -27
+KPX N Aogonek -27
+KPX N Aring -27
+KPX N Atilde -27
+KPX Nacute A -27
+KPX Nacute Aacute -27
+KPX Nacute Abreve -27
+KPX Nacute Acircumflex -27
+KPX Nacute Adieresis -27
+KPX Nacute Agrave -27
+KPX Nacute Amacron -27
+KPX Nacute Aogonek -27
+KPX Nacute Aring -27
+KPX Nacute Atilde -27
+KPX Ncaron A -27
+KPX Ncaron Aacute -27
+KPX Ncaron Abreve -27
+KPX Ncaron Acircumflex -27
+KPX Ncaron Adieresis -27
+KPX Ncaron Agrave -27
+KPX Ncaron Amacron -27
+KPX Ncaron Aogonek -27
+KPX Ncaron Aring -27
+KPX Ncaron Atilde -27
+KPX Ncommaaccent A -27
+KPX Ncommaaccent Aacute -27
+KPX Ncommaaccent Abreve -27
+KPX Ncommaaccent Acircumflex -27
+KPX Ncommaaccent Adieresis -27
+KPX Ncommaaccent Agrave -27
+KPX Ncommaaccent Amacron -27
+KPX Ncommaaccent Aogonek -27
+KPX Ncommaaccent Aring -27
+KPX Ncommaaccent Atilde -27
+KPX Ntilde A -27
+KPX Ntilde Aacute -27
+KPX Ntilde Abreve -27
+KPX Ntilde Acircumflex -27
+KPX Ntilde Adieresis -27
+KPX Ntilde Agrave -27
+KPX Ntilde Amacron -27
+KPX Ntilde Aogonek -27
+KPX Ntilde Aring -27
+KPX Ntilde Atilde -27
+KPX O A -55
+KPX O Aacute -55
+KPX O Abreve -55
+KPX O Acircumflex -55
+KPX O Adieresis -55
+KPX O Agrave -55
+KPX O Amacron -55
+KPX O Aogonek -55
+KPX O Aring -55
+KPX O Atilde -55
+KPX O T -40
+KPX O Tcaron -40
+KPX O Tcommaaccent -40
+KPX O V -50
+KPX O W -50
+KPX O X -40
+KPX O Y -50
+KPX O Yacute -50
+KPX O Ydieresis -50
+KPX Oacute A -55
+KPX Oacute Aacute -55
+KPX Oacute Abreve -55
+KPX Oacute Acircumflex -55
+KPX Oacute Adieresis -55
+KPX Oacute Agrave -55
+KPX Oacute Amacron -55
+KPX Oacute Aogonek -55
+KPX Oacute Aring -55
+KPX Oacute Atilde -55
+KPX Oacute T -40
+KPX Oacute Tcaron -40
+KPX Oacute Tcommaaccent -40
+KPX Oacute V -50
+KPX Oacute W -50
+KPX Oacute X -40
+KPX Oacute Y -50
+KPX Oacute Yacute -50
+KPX Oacute Ydieresis -50
+KPX Ocircumflex A -55
+KPX Ocircumflex Aacute -55
+KPX Ocircumflex Abreve -55
+KPX Ocircumflex Acircumflex -55
+KPX Ocircumflex Adieresis -55
+KPX Ocircumflex Agrave -55
+KPX Ocircumflex Amacron -55
+KPX Ocircumflex Aogonek -55
+KPX Ocircumflex Aring -55
+KPX Ocircumflex Atilde -55
+KPX Ocircumflex T -40
+KPX Ocircumflex Tcaron -40
+KPX Ocircumflex Tcommaaccent -40
+KPX Ocircumflex V -50
+KPX Ocircumflex W -50
+KPX Ocircumflex X -40
+KPX Ocircumflex Y -50
+KPX Ocircumflex Yacute -50
+KPX Ocircumflex Ydieresis -50
+KPX Odieresis A -55
+KPX Odieresis Aacute -55
+KPX Odieresis Abreve -55
+KPX Odieresis Acircumflex -55
+KPX Odieresis Adieresis -55
+KPX Odieresis Agrave -55
+KPX Odieresis Amacron -55
+KPX Odieresis Aogonek -55
+KPX Odieresis Aring -55
+KPX Odieresis Atilde -55
+KPX Odieresis T -40
+KPX Odieresis Tcaron -40
+KPX Odieresis Tcommaaccent -40
+KPX Odieresis V -50
+KPX Odieresis W -50
+KPX Odieresis X -40
+KPX Odieresis Y -50
+KPX Odieresis Yacute -50
+KPX Odieresis Ydieresis -50
+KPX Ograve A -55
+KPX Ograve Aacute -55
+KPX Ograve Abreve -55
+KPX Ograve Acircumflex -55
+KPX Ograve Adieresis -55
+KPX Ograve Agrave -55
+KPX Ograve Amacron -55
+KPX Ograve Aogonek -55
+KPX Ograve Aring -55
+KPX Ograve Atilde -55
+KPX Ograve T -40
+KPX Ograve Tcaron -40
+KPX Ograve Tcommaaccent -40
+KPX Ograve V -50
+KPX Ograve W -50
+KPX Ograve X -40
+KPX Ograve Y -50
+KPX Ograve Yacute -50
+KPX Ograve Ydieresis -50
+KPX Ohungarumlaut A -55
+KPX Ohungarumlaut Aacute -55
+KPX Ohungarumlaut Abreve -55
+KPX Ohungarumlaut Acircumflex -55
+KPX Ohungarumlaut Adieresis -55
+KPX Ohungarumlaut Agrave -55
+KPX Ohungarumlaut Amacron -55
+KPX Ohungarumlaut Aogonek -55
+KPX Ohungarumlaut Aring -55
+KPX Ohungarumlaut Atilde -55
+KPX Ohungarumlaut T -40
+KPX Ohungarumlaut Tcaron -40
+KPX Ohungarumlaut Tcommaaccent -40
+KPX Ohungarumlaut V -50
+KPX Ohungarumlaut W -50
+KPX Ohungarumlaut X -40
+KPX Ohungarumlaut Y -50
+KPX Ohungarumlaut Yacute -50
+KPX Ohungarumlaut Ydieresis -50
+KPX Omacron A -55
+KPX Omacron Aacute -55
+KPX Omacron Abreve -55
+KPX Omacron Acircumflex -55
+KPX Omacron Adieresis -55
+KPX Omacron Agrave -55
+KPX Omacron Amacron -55
+KPX Omacron Aogonek -55
+KPX Omacron Aring -55
+KPX Omacron Atilde -55
+KPX Omacron T -40
+KPX Omacron Tcaron -40
+KPX Omacron Tcommaaccent -40
+KPX Omacron V -50
+KPX Omacron W -50
+KPX Omacron X -40
+KPX Omacron Y -50
+KPX Omacron Yacute -50
+KPX Omacron Ydieresis -50
+KPX Oslash A -55
+KPX Oslash Aacute -55
+KPX Oslash Abreve -55
+KPX Oslash Acircumflex -55
+KPX Oslash Adieresis -55
+KPX Oslash Agrave -55
+KPX Oslash Amacron -55
+KPX Oslash Aogonek -55
+KPX Oslash Aring -55
+KPX Oslash Atilde -55
+KPX Oslash T -40
+KPX Oslash Tcaron -40
+KPX Oslash Tcommaaccent -40
+KPX Oslash V -50
+KPX Oslash W -50
+KPX Oslash X -40
+KPX Oslash Y -50
+KPX Oslash Yacute -50
+KPX Oslash Ydieresis -50
+KPX Otilde A -55
+KPX Otilde Aacute -55
+KPX Otilde Abreve -55
+KPX Otilde Acircumflex -55
+KPX Otilde Adieresis -55
+KPX Otilde Agrave -55
+KPX Otilde Amacron -55
+KPX Otilde Aogonek -55
+KPX Otilde Aring -55
+KPX Otilde Atilde -55
+KPX Otilde T -40
+KPX Otilde Tcaron -40
+KPX Otilde Tcommaaccent -40
+KPX Otilde V -50
+KPX Otilde W -50
+KPX Otilde X -40
+KPX Otilde Y -50
+KPX Otilde Yacute -50
+KPX Otilde Ydieresis -50
+KPX P A -90
+KPX P Aacute -90
+KPX P Abreve -90
+KPX P Acircumflex -90
+KPX P Adieresis -90
+KPX P Agrave -90
+KPX P Amacron -90
+KPX P Aogonek -90
+KPX P Aring -90
+KPX P Atilde -90
+KPX P a -80
+KPX P aacute -80
+KPX P abreve -80
+KPX P acircumflex -80
+KPX P adieresis -80
+KPX P agrave -80
+KPX P amacron -80
+KPX P aogonek -80
+KPX P aring -80
+KPX P atilde -80
+KPX P comma -135
+KPX P e -80
+KPX P eacute -80
+KPX P ecaron -80
+KPX P ecircumflex -80
+KPX P edieresis -80
+KPX P edotaccent -80
+KPX P egrave -80
+KPX P emacron -80
+KPX P eogonek -80
+KPX P o -80
+KPX P oacute -80
+KPX P ocircumflex -80
+KPX P odieresis -80
+KPX P ograve -80
+KPX P ohungarumlaut -80
+KPX P omacron -80
+KPX P oslash -80
+KPX P otilde -80
+KPX P period -135
+KPX Q U -10
+KPX Q Uacute -10
+KPX Q Ucircumflex -10
+KPX Q Udieresis -10
+KPX Q Ugrave -10
+KPX Q Uhungarumlaut -10
+KPX Q Umacron -10
+KPX Q Uogonek -10
+KPX Q Uring -10
+KPX R O -40
+KPX R Oacute -40
+KPX R Ocircumflex -40
+KPX R Odieresis -40
+KPX R Ograve -40
+KPX R Ohungarumlaut -40
+KPX R Omacron -40
+KPX R Oslash -40
+KPX R Otilde -40
+KPX R U -40
+KPX R Uacute -40
+KPX R Ucircumflex -40
+KPX R Udieresis -40
+KPX R Ugrave -40
+KPX R Uhungarumlaut -40
+KPX R Umacron -40
+KPX R Uogonek -40
+KPX R Uring -40
+KPX R V -18
+KPX R W -18
+KPX R Y -18
+KPX R Yacute -18
+KPX R Ydieresis -18
+KPX Racute O -40
+KPX Racute Oacute -40
+KPX Racute Ocircumflex -40
+KPX Racute Odieresis -40
+KPX Racute Ograve -40
+KPX Racute Ohungarumlaut -40
+KPX Racute Omacron -40
+KPX Racute Oslash -40
+KPX Racute Otilde -40
+KPX Racute U -40
+KPX Racute Uacute -40
+KPX Racute Ucircumflex -40
+KPX Racute Udieresis -40
+KPX Racute Ugrave -40
+KPX Racute Uhungarumlaut -40
+KPX Racute Umacron -40
+KPX Racute Uogonek -40
+KPX Racute Uring -40
+KPX Racute V -18
+KPX Racute W -18
+KPX Racute Y -18
+KPX Racute Yacute -18
+KPX Racute Ydieresis -18
+KPX Rcaron O -40
+KPX Rcaron Oacute -40
+KPX Rcaron Ocircumflex -40
+KPX Rcaron Odieresis -40
+KPX Rcaron Ograve -40
+KPX Rcaron Ohungarumlaut -40
+KPX Rcaron Omacron -40
+KPX Rcaron Oslash -40
+KPX Rcaron Otilde -40
+KPX Rcaron U -40
+KPX Rcaron Uacute -40
+KPX Rcaron Ucircumflex -40
+KPX Rcaron Udieresis -40
+KPX Rcaron Ugrave -40
+KPX Rcaron Uhungarumlaut -40
+KPX Rcaron Umacron -40
+KPX Rcaron Uogonek -40
+KPX Rcaron Uring -40
+KPX Rcaron V -18
+KPX Rcaron W -18
+KPX Rcaron Y -18
+KPX Rcaron Yacute -18
+KPX Rcaron Ydieresis -18
+KPX Rcommaaccent O -40
+KPX Rcommaaccent Oacute -40
+KPX Rcommaaccent Ocircumflex -40
+KPX Rcommaaccent Odieresis -40
+KPX Rcommaaccent Ograve -40
+KPX Rcommaaccent Ohungarumlaut -40
+KPX Rcommaaccent Omacron -40
+KPX Rcommaaccent Oslash -40
+KPX Rcommaaccent Otilde -40
+KPX Rcommaaccent U -40
+KPX Rcommaaccent Uacute -40
+KPX Rcommaaccent Ucircumflex -40
+KPX Rcommaaccent Udieresis -40
+KPX Rcommaaccent Ugrave -40
+KPX Rcommaaccent Uhungarumlaut -40
+KPX Rcommaaccent Umacron -40
+KPX Rcommaaccent Uogonek -40
+KPX Rcommaaccent Uring -40
+KPX Rcommaaccent V -18
+KPX Rcommaaccent W -18
+KPX Rcommaaccent Y -18
+KPX Rcommaaccent Yacute -18
+KPX Rcommaaccent Ydieresis -18
+KPX T A -50
+KPX T Aacute -50
+KPX T Abreve -50
+KPX T Acircumflex -50
+KPX T Adieresis -50
+KPX T Agrave -50
+KPX T Amacron -50
+KPX T Aogonek -50
+KPX T Aring -50
+KPX T Atilde -50
+KPX T O -18
+KPX T Oacute -18
+KPX T Ocircumflex -18
+KPX T Odieresis -18
+KPX T Ograve -18
+KPX T Ohungarumlaut -18
+KPX T Omacron -18
+KPX T Oslash -18
+KPX T Otilde -18
+KPX T a -92
+KPX T aacute -92
+KPX T abreve -92
+KPX T acircumflex -92
+KPX T adieresis -92
+KPX T agrave -92
+KPX T amacron -92
+KPX T aogonek -92
+KPX T aring -92
+KPX T atilde -92
+KPX T colon -55
+KPX T comma -74
+KPX T e -92
+KPX T eacute -92
+KPX T ecaron -92
+KPX T ecircumflex -52
+KPX T edieresis -52
+KPX T edotaccent -92
+KPX T egrave -52
+KPX T emacron -52
+KPX T eogonek -92
+KPX T hyphen -74
+KPX T i -55
+KPX T iacute -55
+KPX T iogonek -55
+KPX T o -92
+KPX T oacute -92
+KPX T ocircumflex -92
+KPX T odieresis -92
+KPX T ograve -92
+KPX T ohungarumlaut -92
+KPX T omacron -92
+KPX T oslash -92
+KPX T otilde -92
+KPX T period -74
+KPX T r -55
+KPX T racute -55
+KPX T rcaron -55
+KPX T rcommaaccent -55
+KPX T semicolon -65
+KPX T u -55
+KPX T uacute -55
+KPX T ucircumflex -55
+KPX T udieresis -55
+KPX T ugrave -55
+KPX T uhungarumlaut -55
+KPX T umacron -55
+KPX T uogonek -55
+KPX T uring -55
+KPX T w -74
+KPX T y -74
+KPX T yacute -74
+KPX T ydieresis -34
+KPX Tcaron A -50
+KPX Tcaron Aacute -50
+KPX Tcaron Abreve -50
+KPX Tcaron Acircumflex -50
+KPX Tcaron Adieresis -50
+KPX Tcaron Agrave -50
+KPX Tcaron Amacron -50
+KPX Tcaron Aogonek -50
+KPX Tcaron Aring -50
+KPX Tcaron Atilde -50
+KPX Tcaron O -18
+KPX Tcaron Oacute -18
+KPX Tcaron Ocircumflex -18
+KPX Tcaron Odieresis -18
+KPX Tcaron Ograve -18
+KPX Tcaron Ohungarumlaut -18
+KPX Tcaron Omacron -18
+KPX Tcaron Oslash -18
+KPX Tcaron Otilde -18
+KPX Tcaron a -92
+KPX Tcaron aacute -92
+KPX Tcaron abreve -92
+KPX Tcaron acircumflex -92
+KPX Tcaron adieresis -92
+KPX Tcaron agrave -92
+KPX Tcaron amacron -92
+KPX Tcaron aogonek -92
+KPX Tcaron aring -92
+KPX Tcaron atilde -92
+KPX Tcaron colon -55
+KPX Tcaron comma -74
+KPX Tcaron e -92
+KPX Tcaron eacute -92
+KPX Tcaron ecaron -92
+KPX Tcaron ecircumflex -52
+KPX Tcaron edieresis -52
+KPX Tcaron edotaccent -92
+KPX Tcaron egrave -52
+KPX Tcaron emacron -52
+KPX Tcaron eogonek -92
+KPX Tcaron hyphen -74
+KPX Tcaron i -55
+KPX Tcaron iacute -55
+KPX Tcaron iogonek -55
+KPX Tcaron o -92
+KPX Tcaron oacute -92
+KPX Tcaron ocircumflex -92
+KPX Tcaron odieresis -92
+KPX Tcaron ograve -92
+KPX Tcaron ohungarumlaut -92
+KPX Tcaron omacron -92
+KPX Tcaron oslash -92
+KPX Tcaron otilde -92
+KPX Tcaron period -74
+KPX Tcaron r -55
+KPX Tcaron racute -55
+KPX Tcaron rcaron -55
+KPX Tcaron rcommaaccent -55
+KPX Tcaron semicolon -65
+KPX Tcaron u -55
+KPX Tcaron uacute -55
+KPX Tcaron ucircumflex -55
+KPX Tcaron udieresis -55
+KPX Tcaron ugrave -55
+KPX Tcaron uhungarumlaut -55
+KPX Tcaron umacron -55
+KPX Tcaron uogonek -55
+KPX Tcaron uring -55
+KPX Tcaron w -74
+KPX Tcaron y -74
+KPX Tcaron yacute -74
+KPX Tcaron ydieresis -34
+KPX Tcommaaccent A -50
+KPX Tcommaaccent Aacute -50
+KPX Tcommaaccent Abreve -50
+KPX Tcommaaccent Acircumflex -50
+KPX Tcommaaccent Adieresis -50
+KPX Tcommaaccent Agrave -50
+KPX Tcommaaccent Amacron -50
+KPX Tcommaaccent Aogonek -50
+KPX Tcommaaccent Aring -50
+KPX Tcommaaccent Atilde -50
+KPX Tcommaaccent O -18
+KPX Tcommaaccent Oacute -18
+KPX Tcommaaccent Ocircumflex -18
+KPX Tcommaaccent Odieresis -18
+KPX Tcommaaccent Ograve -18
+KPX Tcommaaccent Ohungarumlaut -18
+KPX Tcommaaccent Omacron -18
+KPX Tcommaaccent Oslash -18
+KPX Tcommaaccent Otilde -18
+KPX Tcommaaccent a -92
+KPX Tcommaaccent aacute -92
+KPX Tcommaaccent abreve -92
+KPX Tcommaaccent acircumflex -92
+KPX Tcommaaccent adieresis -92
+KPX Tcommaaccent agrave -92
+KPX Tcommaaccent amacron -92
+KPX Tcommaaccent aogonek -92
+KPX Tcommaaccent aring -92
+KPX Tcommaaccent atilde -92
+KPX Tcommaaccent colon -55
+KPX Tcommaaccent comma -74
+KPX Tcommaaccent e -92
+KPX Tcommaaccent eacute -92
+KPX Tcommaaccent ecaron -92
+KPX Tcommaaccent ecircumflex -52
+KPX Tcommaaccent edieresis -52
+KPX Tcommaaccent edotaccent -92
+KPX Tcommaaccent egrave -52
+KPX Tcommaaccent emacron -52
+KPX Tcommaaccent eogonek -92
+KPX Tcommaaccent hyphen -74
+KPX Tcommaaccent i -55
+KPX Tcommaaccent iacute -55
+KPX Tcommaaccent iogonek -55
+KPX Tcommaaccent o -92
+KPX Tcommaaccent oacute -92
+KPX Tcommaaccent ocircumflex -92
+KPX Tcommaaccent odieresis -92
+KPX Tcommaaccent ograve -92
+KPX Tcommaaccent ohungarumlaut -92
+KPX Tcommaaccent omacron -92
+KPX Tcommaaccent oslash -92
+KPX Tcommaaccent otilde -92
+KPX Tcommaaccent period -74
+KPX Tcommaaccent r -55
+KPX Tcommaaccent racute -55
+KPX Tcommaaccent rcaron -55
+KPX Tcommaaccent rcommaaccent -55
+KPX Tcommaaccent semicolon -65
+KPX Tcommaaccent u -55
+KPX Tcommaaccent uacute -55
+KPX Tcommaaccent ucircumflex -55
+KPX Tcommaaccent udieresis -55
+KPX Tcommaaccent ugrave -55
+KPX Tcommaaccent uhungarumlaut -55
+KPX Tcommaaccent umacron -55
+KPX Tcommaaccent uogonek -55
+KPX Tcommaaccent uring -55
+KPX Tcommaaccent w -74
+KPX Tcommaaccent y -74
+KPX Tcommaaccent yacute -74
+KPX Tcommaaccent ydieresis -34
+KPX U A -40
+KPX U Aacute -40
+KPX U Abreve -40
+KPX U Acircumflex -40
+KPX U Adieresis -40
+KPX U Agrave -40
+KPX U Amacron -40
+KPX U Aogonek -40
+KPX U Aring -40
+KPX U Atilde -40
+KPX U comma -25
+KPX U period -25
+KPX Uacute A -40
+KPX Uacute Aacute -40
+KPX Uacute Abreve -40
+KPX Uacute Acircumflex -40
+KPX Uacute Adieresis -40
+KPX Uacute Agrave -40
+KPX Uacute Amacron -40
+KPX Uacute Aogonek -40
+KPX Uacute Aring -40
+KPX Uacute Atilde -40
+KPX Uacute comma -25
+KPX Uacute period -25
+KPX Ucircumflex A -40
+KPX Ucircumflex Aacute -40
+KPX Ucircumflex Abreve -40
+KPX Ucircumflex Acircumflex -40
+KPX Ucircumflex Adieresis -40
+KPX Ucircumflex Agrave -40
+KPX Ucircumflex Amacron -40
+KPX Ucircumflex Aogonek -40
+KPX Ucircumflex Aring -40
+KPX Ucircumflex Atilde -40
+KPX Ucircumflex comma -25
+KPX Ucircumflex period -25
+KPX Udieresis A -40
+KPX Udieresis Aacute -40
+KPX Udieresis Abreve -40
+KPX Udieresis Acircumflex -40
+KPX Udieresis Adieresis -40
+KPX Udieresis Agrave -40
+KPX Udieresis Amacron -40
+KPX Udieresis Aogonek -40
+KPX Udieresis Aring -40
+KPX Udieresis Atilde -40
+KPX Udieresis comma -25
+KPX Udieresis period -25
+KPX Ugrave A -40
+KPX Ugrave Aacute -40
+KPX Ugrave Abreve -40
+KPX Ugrave Acircumflex -40
+KPX Ugrave Adieresis -40
+KPX Ugrave Agrave -40
+KPX Ugrave Amacron -40
+KPX Ugrave Aogonek -40
+KPX Ugrave Aring -40
+KPX Ugrave Atilde -40
+KPX Ugrave comma -25
+KPX Ugrave period -25
+KPX Uhungarumlaut A -40
+KPX Uhungarumlaut Aacute -40
+KPX Uhungarumlaut Abreve -40
+KPX Uhungarumlaut Acircumflex -40
+KPX Uhungarumlaut Adieresis -40
+KPX Uhungarumlaut Agrave -40
+KPX Uhungarumlaut Amacron -40
+KPX Uhungarumlaut Aogonek -40
+KPX Uhungarumlaut Aring -40
+KPX Uhungarumlaut Atilde -40
+KPX Uhungarumlaut comma -25
+KPX Uhungarumlaut period -25
+KPX Umacron A -40
+KPX Umacron Aacute -40
+KPX Umacron Abreve -40
+KPX Umacron Acircumflex -40
+KPX Umacron Adieresis -40
+KPX Umacron Agrave -40
+KPX Umacron Amacron -40
+KPX Umacron Aogonek -40
+KPX Umacron Aring -40
+KPX Umacron Atilde -40
+KPX Umacron comma -25
+KPX Umacron period -25
+KPX Uogonek A -40
+KPX Uogonek Aacute -40
+KPX Uogonek Abreve -40
+KPX Uogonek Acircumflex -40
+KPX Uogonek Adieresis -40
+KPX Uogonek Agrave -40
+KPX Uogonek Amacron -40
+KPX Uogonek Aogonek -40
+KPX Uogonek Aring -40
+KPX Uogonek Atilde -40
+KPX Uogonek comma -25
+KPX Uogonek period -25
+KPX Uring A -40
+KPX Uring Aacute -40
+KPX Uring Abreve -40
+KPX Uring Acircumflex -40
+KPX Uring Adieresis -40
+KPX Uring Agrave -40
+KPX Uring Amacron -40
+KPX Uring Aogonek -40
+KPX Uring Aring -40
+KPX Uring Atilde -40
+KPX Uring comma -25
+KPX Uring period -25
+KPX V A -60
+KPX V Aacute -60
+KPX V Abreve -60
+KPX V Acircumflex -60
+KPX V Adieresis -60
+KPX V Agrave -60
+KPX V Amacron -60
+KPX V Aogonek -60
+KPX V Aring -60
+KPX V Atilde -60
+KPX V O -30
+KPX V Oacute -30
+KPX V Ocircumflex -30
+KPX V Odieresis -30
+KPX V Ograve -30
+KPX V Ohungarumlaut -30
+KPX V Omacron -30
+KPX V Oslash -30
+KPX V Otilde -30
+KPX V a -111
+KPX V aacute -111
+KPX V abreve -111
+KPX V acircumflex -111
+KPX V adieresis -111
+KPX V agrave -111
+KPX V amacron -111
+KPX V aogonek -111
+KPX V aring -111
+KPX V atilde -111
+KPX V colon -65
+KPX V comma -129
+KPX V e -111
+KPX V eacute -111
+KPX V ecaron -111
+KPX V ecircumflex -111
+KPX V edieresis -71
+KPX V edotaccent -111
+KPX V egrave -71
+KPX V emacron -71
+KPX V eogonek -111
+KPX V hyphen -55
+KPX V i -74
+KPX V iacute -74
+KPX V icircumflex -34
+KPX V idieresis -34
+KPX V igrave -34
+KPX V imacron -34
+KPX V iogonek -74
+KPX V o -111
+KPX V oacute -111
+KPX V ocircumflex -111
+KPX V odieresis -111
+KPX V ograve -111
+KPX V ohungarumlaut -111
+KPX V omacron -111
+KPX V oslash -111
+KPX V otilde -111
+KPX V period -129
+KPX V semicolon -74
+KPX V u -74
+KPX V uacute -74
+KPX V ucircumflex -74
+KPX V udieresis -74
+KPX V ugrave -74
+KPX V uhungarumlaut -74
+KPX V umacron -74
+KPX V uogonek -74
+KPX V uring -74
+KPX W A -60
+KPX W Aacute -60
+KPX W Abreve -60
+KPX W Acircumflex -60
+KPX W Adieresis -60
+KPX W Agrave -60
+KPX W Amacron -60
+KPX W Aogonek -60
+KPX W Aring -60
+KPX W Atilde -60
+KPX W O -25
+KPX W Oacute -25
+KPX W Ocircumflex -25
+KPX W Odieresis -25
+KPX W Ograve -25
+KPX W Ohungarumlaut -25
+KPX W Omacron -25
+KPX W Oslash -25
+KPX W Otilde -25
+KPX W a -92
+KPX W aacute -92
+KPX W abreve -92
+KPX W acircumflex -92
+KPX W adieresis -92
+KPX W agrave -92
+KPX W amacron -92
+KPX W aogonek -92
+KPX W aring -92
+KPX W atilde -92
+KPX W colon -65
+KPX W comma -92
+KPX W e -92
+KPX W eacute -92
+KPX W ecaron -92
+KPX W ecircumflex -92
+KPX W edieresis -52
+KPX W edotaccent -92
+KPX W egrave -52
+KPX W emacron -52
+KPX W eogonek -92
+KPX W hyphen -37
+KPX W i -55
+KPX W iacute -55
+KPX W iogonek -55
+KPX W o -92
+KPX W oacute -92
+KPX W ocircumflex -92
+KPX W odieresis -92
+KPX W ograve -92
+KPX W ohungarumlaut -92
+KPX W omacron -92
+KPX W oslash -92
+KPX W otilde -92
+KPX W period -92
+KPX W semicolon -65
+KPX W u -55
+KPX W uacute -55
+KPX W ucircumflex -55
+KPX W udieresis -55
+KPX W ugrave -55
+KPX W uhungarumlaut -55
+KPX W umacron -55
+KPX W uogonek -55
+KPX W uring -55
+KPX W y -70
+KPX W yacute -70
+KPX W ydieresis -70
+KPX Y A -50
+KPX Y Aacute -50
+KPX Y Abreve -50
+KPX Y Acircumflex -50
+KPX Y Adieresis -50
+KPX Y Agrave -50
+KPX Y Amacron -50
+KPX Y Aogonek -50
+KPX Y Aring -50
+KPX Y Atilde -50
+KPX Y O -15
+KPX Y Oacute -15
+KPX Y Ocircumflex -15
+KPX Y Odieresis -15
+KPX Y Ograve -15
+KPX Y Ohungarumlaut -15
+KPX Y Omacron -15
+KPX Y Oslash -15
+KPX Y Otilde -15
+KPX Y a -92
+KPX Y aacute -92
+KPX Y abreve -92
+KPX Y acircumflex -92
+KPX Y adieresis -92
+KPX Y agrave -92
+KPX Y amacron -92
+KPX Y aogonek -92
+KPX Y aring -92
+KPX Y atilde -92
+KPX Y colon -65
+KPX Y comma -92
+KPX Y e -92
+KPX Y eacute -92
+KPX Y ecaron -92
+KPX Y ecircumflex -92
+KPX Y edieresis -52
+KPX Y edotaccent -92
+KPX Y egrave -52
+KPX Y emacron -52
+KPX Y eogonek -92
+KPX Y hyphen -74
+KPX Y i -74
+KPX Y iacute -74
+KPX Y icircumflex -34
+KPX Y idieresis -34
+KPX Y igrave -34
+KPX Y imacron -34
+KPX Y iogonek -74
+KPX Y o -92
+KPX Y oacute -92
+KPX Y ocircumflex -92
+KPX Y odieresis -92
+KPX Y ograve -92
+KPX Y ohungarumlaut -92
+KPX Y omacron -92
+KPX Y oslash -92
+KPX Y otilde -92
+KPX Y period -92
+KPX Y semicolon -65
+KPX Y u -92
+KPX Y uacute -92
+KPX Y ucircumflex -92
+KPX Y udieresis -92
+KPX Y ugrave -92
+KPX Y uhungarumlaut -92
+KPX Y umacron -92
+KPX Y uogonek -92
+KPX Y uring -92
+KPX Yacute A -50
+KPX Yacute Aacute -50
+KPX Yacute Abreve -50
+KPX Yacute Acircumflex -50
+KPX Yacute Adieresis -50
+KPX Yacute Agrave -50
+KPX Yacute Amacron -50
+KPX Yacute Aogonek -50
+KPX Yacute Aring -50
+KPX Yacute Atilde -50
+KPX Yacute O -15
+KPX Yacute Oacute -15
+KPX Yacute Ocircumflex -15
+KPX Yacute Odieresis -15
+KPX Yacute Ograve -15
+KPX Yacute Ohungarumlaut -15
+KPX Yacute Omacron -15
+KPX Yacute Oslash -15
+KPX Yacute Otilde -15
+KPX Yacute a -92
+KPX Yacute aacute -92
+KPX Yacute abreve -92
+KPX Yacute acircumflex -92
+KPX Yacute adieresis -92
+KPX Yacute agrave -92
+KPX Yacute amacron -92
+KPX Yacute aogonek -92
+KPX Yacute aring -92
+KPX Yacute atilde -92
+KPX Yacute colon -65
+KPX Yacute comma -92
+KPX Yacute e -92
+KPX Yacute eacute -92
+KPX Yacute ecaron -92
+KPX Yacute ecircumflex -92
+KPX Yacute edieresis -52
+KPX Yacute edotaccent -92
+KPX Yacute egrave -52
+KPX Yacute emacron -52
+KPX Yacute eogonek -92
+KPX Yacute hyphen -74
+KPX Yacute i -74
+KPX Yacute iacute -74
+KPX Yacute icircumflex -34
+KPX Yacute idieresis -34
+KPX Yacute igrave -34
+KPX Yacute imacron -34
+KPX Yacute iogonek -74
+KPX Yacute o -92
+KPX Yacute oacute -92
+KPX Yacute ocircumflex -92
+KPX Yacute odieresis -92
+KPX Yacute ograve -92
+KPX Yacute ohungarumlaut -92
+KPX Yacute omacron -92
+KPX Yacute oslash -92
+KPX Yacute otilde -92
+KPX Yacute period -92
+KPX Yacute semicolon -65
+KPX Yacute u -92
+KPX Yacute uacute -92
+KPX Yacute ucircumflex -92
+KPX Yacute udieresis -92
+KPX Yacute ugrave -92
+KPX Yacute uhungarumlaut -92
+KPX Yacute umacron -92
+KPX Yacute uogonek -92
+KPX Yacute uring -92
+KPX Ydieresis A -50
+KPX Ydieresis Aacute -50
+KPX Ydieresis Abreve -50
+KPX Ydieresis Acircumflex -50
+KPX Ydieresis Adieresis -50
+KPX Ydieresis Agrave -50
+KPX Ydieresis Amacron -50
+KPX Ydieresis Aogonek -50
+KPX Ydieresis Aring -50
+KPX Ydieresis Atilde -50
+KPX Ydieresis O -15
+KPX Ydieresis Oacute -15
+KPX Ydieresis Ocircumflex -15
+KPX Ydieresis Odieresis -15
+KPX Ydieresis Ograve -15
+KPX Ydieresis Ohungarumlaut -15
+KPX Ydieresis Omacron -15
+KPX Ydieresis Oslash -15
+KPX Ydieresis Otilde -15
+KPX Ydieresis a -92
+KPX Ydieresis aacute -92
+KPX Ydieresis abreve -92
+KPX Ydieresis acircumflex -92
+KPX Ydieresis adieresis -92
+KPX Ydieresis agrave -92
+KPX Ydieresis amacron -92
+KPX Ydieresis aogonek -92
+KPX Ydieresis aring -92
+KPX Ydieresis atilde -92
+KPX Ydieresis colon -65
+KPX Ydieresis comma -92
+KPX Ydieresis e -92
+KPX Ydieresis eacute -92
+KPX Ydieresis ecaron -92
+KPX Ydieresis ecircumflex -92
+KPX Ydieresis edieresis -52
+KPX Ydieresis edotaccent -92
+KPX Ydieresis egrave -52
+KPX Ydieresis emacron -52
+KPX Ydieresis eogonek -92
+KPX Ydieresis hyphen -74
+KPX Ydieresis i -74
+KPX Ydieresis iacute -74
+KPX Ydieresis icircumflex -34
+KPX Ydieresis idieresis -34
+KPX Ydieresis igrave -34
+KPX Ydieresis imacron -34
+KPX Ydieresis iogonek -74
+KPX Ydieresis o -92
+KPX Ydieresis oacute -92
+KPX Ydieresis ocircumflex -92
+KPX Ydieresis odieresis -92
+KPX Ydieresis ograve -92
+KPX Ydieresis ohungarumlaut -92
+KPX Ydieresis omacron -92
+KPX Ydieresis oslash -92
+KPX Ydieresis otilde -92
+KPX Ydieresis period -92
+KPX Ydieresis semicolon -65
+KPX Ydieresis u -92
+KPX Ydieresis uacute -92
+KPX Ydieresis ucircumflex -92
+KPX Ydieresis udieresis -92
+KPX Ydieresis ugrave -92
+KPX Ydieresis uhungarumlaut -92
+KPX Ydieresis umacron -92
+KPX Ydieresis uogonek -92
+KPX Ydieresis uring -92
+KPX a g -10
+KPX a gbreve -10
+KPX a gcommaaccent -10
+KPX aacute g -10
+KPX aacute gbreve -10
+KPX aacute gcommaaccent -10
+KPX abreve g -10
+KPX abreve gbreve -10
+KPX abreve gcommaaccent -10
+KPX acircumflex g -10
+KPX acircumflex gbreve -10
+KPX acircumflex gcommaaccent -10
+KPX adieresis g -10
+KPX adieresis gbreve -10
+KPX adieresis gcommaaccent -10
+KPX agrave g -10
+KPX agrave gbreve -10
+KPX agrave gcommaaccent -10
+KPX amacron g -10
+KPX amacron gbreve -10
+KPX amacron gcommaaccent -10
+KPX aogonek g -10
+KPX aogonek gbreve -10
+KPX aogonek gcommaaccent -10
+KPX aring g -10
+KPX aring gbreve -10
+KPX aring gcommaaccent -10
+KPX atilde g -10
+KPX atilde gbreve -10
+KPX atilde gcommaaccent -10
+KPX b period -40
+KPX b u -20
+KPX b uacute -20
+KPX b ucircumflex -20
+KPX b udieresis -20
+KPX b ugrave -20
+KPX b uhungarumlaut -20
+KPX b umacron -20
+KPX b uogonek -20
+KPX b uring -20
+KPX c h -15
+KPX c k -20
+KPX c kcommaaccent -20
+KPX cacute h -15
+KPX cacute k -20
+KPX cacute kcommaaccent -20
+KPX ccaron h -15
+KPX ccaron k -20
+KPX ccaron kcommaaccent -20
+KPX ccedilla h -15
+KPX ccedilla k -20
+KPX ccedilla kcommaaccent -20
+KPX comma quotedblright -140
+KPX comma quoteright -140
+KPX e comma -10
+KPX e g -40
+KPX e gbreve -40
+KPX e gcommaaccent -40
+KPX e period -15
+KPX e v -15
+KPX e w -15
+KPX e x -20
+KPX e y -30
+KPX e yacute -30
+KPX e ydieresis -30
+KPX eacute comma -10
+KPX eacute g -40
+KPX eacute gbreve -40
+KPX eacute gcommaaccent -40
+KPX eacute period -15
+KPX eacute v -15
+KPX eacute w -15
+KPX eacute x -20
+KPX eacute y -30
+KPX eacute yacute -30
+KPX eacute ydieresis -30
+KPX ecaron comma -10
+KPX ecaron g -40
+KPX ecaron gbreve -40
+KPX ecaron gcommaaccent -40
+KPX ecaron period -15
+KPX ecaron v -15
+KPX ecaron w -15
+KPX ecaron x -20
+KPX ecaron y -30
+KPX ecaron yacute -30
+KPX ecaron ydieresis -30
+KPX ecircumflex comma -10
+KPX ecircumflex g -40
+KPX ecircumflex gbreve -40
+KPX ecircumflex gcommaaccent -40
+KPX ecircumflex period -15
+KPX ecircumflex v -15
+KPX ecircumflex w -15
+KPX ecircumflex x -20
+KPX ecircumflex y -30
+KPX ecircumflex yacute -30
+KPX ecircumflex ydieresis -30
+KPX edieresis comma -10
+KPX edieresis g -40
+KPX edieresis gbreve -40
+KPX edieresis gcommaaccent -40
+KPX edieresis period -15
+KPX edieresis v -15
+KPX edieresis w -15
+KPX edieresis x -20
+KPX edieresis y -30
+KPX edieresis yacute -30
+KPX edieresis ydieresis -30
+KPX edotaccent comma -10
+KPX edotaccent g -40
+KPX edotaccent gbreve -40
+KPX edotaccent gcommaaccent -40
+KPX edotaccent period -15
+KPX edotaccent v -15
+KPX edotaccent w -15
+KPX edotaccent x -20
+KPX edotaccent y -30
+KPX edotaccent yacute -30
+KPX edotaccent ydieresis -30
+KPX egrave comma -10
+KPX egrave g -40
+KPX egrave gbreve -40
+KPX egrave gcommaaccent -40
+KPX egrave period -15
+KPX egrave v -15
+KPX egrave w -15
+KPX egrave x -20
+KPX egrave y -30
+KPX egrave yacute -30
+KPX egrave ydieresis -30
+KPX emacron comma -10
+KPX emacron g -40
+KPX emacron gbreve -40
+KPX emacron gcommaaccent -40
+KPX emacron period -15
+KPX emacron v -15
+KPX emacron w -15
+KPX emacron x -20
+KPX emacron y -30
+KPX emacron yacute -30
+KPX emacron ydieresis -30
+KPX eogonek comma -10
+KPX eogonek g -40
+KPX eogonek gbreve -40
+KPX eogonek gcommaaccent -40
+KPX eogonek period -15
+KPX eogonek v -15
+KPX eogonek w -15
+KPX eogonek x -20
+KPX eogonek y -30
+KPX eogonek yacute -30
+KPX eogonek ydieresis -30
+KPX f comma -10
+KPX f dotlessi -60
+KPX f f -18
+KPX f i -20
+KPX f iogonek -20
+KPX f period -15
+KPX f quoteright 92
+KPX g comma -10
+KPX g e -10
+KPX g eacute -10
+KPX g ecaron -10
+KPX g ecircumflex -10
+KPX g edieresis -10
+KPX g edotaccent -10
+KPX g egrave -10
+KPX g emacron -10
+KPX g eogonek -10
+KPX g g -10
+KPX g gbreve -10
+KPX g gcommaaccent -10
+KPX g period -15
+KPX gbreve comma -10
+KPX gbreve e -10
+KPX gbreve eacute -10
+KPX gbreve ecaron -10
+KPX gbreve ecircumflex -10
+KPX gbreve edieresis -10
+KPX gbreve edotaccent -10
+KPX gbreve egrave -10
+KPX gbreve emacron -10
+KPX gbreve eogonek -10
+KPX gbreve g -10
+KPX gbreve gbreve -10
+KPX gbreve gcommaaccent -10
+KPX gbreve period -15
+KPX gcommaaccent comma -10
+KPX gcommaaccent e -10
+KPX gcommaaccent eacute -10
+KPX gcommaaccent ecaron -10
+KPX gcommaaccent ecircumflex -10
+KPX gcommaaccent edieresis -10
+KPX gcommaaccent edotaccent -10
+KPX gcommaaccent egrave -10
+KPX gcommaaccent emacron -10
+KPX gcommaaccent eogonek -10
+KPX gcommaaccent g -10
+KPX gcommaaccent gbreve -10
+KPX gcommaaccent gcommaaccent -10
+KPX gcommaaccent period -15
+KPX k e -10
+KPX k eacute -10
+KPX k ecaron -10
+KPX k ecircumflex -10
+KPX k edieresis -10
+KPX k edotaccent -10
+KPX k egrave -10
+KPX k emacron -10
+KPX k eogonek -10
+KPX k o -10
+KPX k oacute -10
+KPX k ocircumflex -10
+KPX k odieresis -10
+KPX k ograve -10
+KPX k ohungarumlaut -10
+KPX k omacron -10
+KPX k oslash -10
+KPX k otilde -10
+KPX k y -10
+KPX k yacute -10
+KPX k ydieresis -10
+KPX kcommaaccent e -10
+KPX kcommaaccent eacute -10
+KPX kcommaaccent ecaron -10
+KPX kcommaaccent ecircumflex -10
+KPX kcommaaccent edieresis -10
+KPX kcommaaccent edotaccent -10
+KPX kcommaaccent egrave -10
+KPX kcommaaccent emacron -10
+KPX kcommaaccent eogonek -10
+KPX kcommaaccent o -10
+KPX kcommaaccent oacute -10
+KPX kcommaaccent ocircumflex -10
+KPX kcommaaccent odieresis -10
+KPX kcommaaccent ograve -10
+KPX kcommaaccent ohungarumlaut -10
+KPX kcommaaccent omacron -10
+KPX kcommaaccent oslash -10
+KPX kcommaaccent otilde -10
+KPX kcommaaccent y -10
+KPX kcommaaccent yacute -10
+KPX kcommaaccent ydieresis -10
+KPX n v -40
+KPX nacute v -40
+KPX ncaron v -40
+KPX ncommaaccent v -40
+KPX ntilde v -40
+KPX o g -10
+KPX o gbreve -10
+KPX o gcommaaccent -10
+KPX o v -10
+KPX oacute g -10
+KPX oacute gbreve -10
+KPX oacute gcommaaccent -10
+KPX oacute v -10
+KPX ocircumflex g -10
+KPX ocircumflex gbreve -10
+KPX ocircumflex gcommaaccent -10
+KPX ocircumflex v -10
+KPX odieresis g -10
+KPX odieresis gbreve -10
+KPX odieresis gcommaaccent -10
+KPX odieresis v -10
+KPX ograve g -10
+KPX ograve gbreve -10
+KPX ograve gcommaaccent -10
+KPX ograve v -10
+KPX ohungarumlaut g -10
+KPX ohungarumlaut gbreve -10
+KPX ohungarumlaut gcommaaccent -10
+KPX ohungarumlaut v -10
+KPX omacron g -10
+KPX omacron gbreve -10
+KPX omacron gcommaaccent -10
+KPX omacron v -10
+KPX oslash g -10
+KPX oslash gbreve -10
+KPX oslash gcommaaccent -10
+KPX oslash v -10
+KPX otilde g -10
+KPX otilde gbreve -10
+KPX otilde gcommaaccent -10
+KPX otilde v -10
+KPX period quotedblright -140
+KPX period quoteright -140
+KPX quoteleft quoteleft -111
+KPX quoteright d -25
+KPX quoteright dcroat -25
+KPX quoteright quoteright -111
+KPX quoteright r -25
+KPX quoteright racute -25
+KPX quoteright rcaron -25
+KPX quoteright rcommaaccent -25
+KPX quoteright s -40
+KPX quoteright sacute -40
+KPX quoteright scaron -40
+KPX quoteright scedilla -40
+KPX quoteright scommaaccent -40
+KPX quoteright space -111
+KPX quoteright t -30
+KPX quoteright tcommaaccent -30
+KPX quoteright v -10
+KPX r a -15
+KPX r aacute -15
+KPX r abreve -15
+KPX r acircumflex -15
+KPX r adieresis -15
+KPX r agrave -15
+KPX r amacron -15
+KPX r aogonek -15
+KPX r aring -15
+KPX r atilde -15
+KPX r c -37
+KPX r cacute -37
+KPX r ccaron -37
+KPX r ccedilla -37
+KPX r comma -111
+KPX r d -37
+KPX r dcroat -37
+KPX r e -37
+KPX r eacute -37
+KPX r ecaron -37
+KPX r ecircumflex -37
+KPX r edieresis -37
+KPX r edotaccent -37
+KPX r egrave -37
+KPX r emacron -37
+KPX r eogonek -37
+KPX r g -37
+KPX r gbreve -37
+KPX r gcommaaccent -37
+KPX r hyphen -20
+KPX r o -45
+KPX r oacute -45
+KPX r ocircumflex -45
+KPX r odieresis -45
+KPX r ograve -45
+KPX r ohungarumlaut -45
+KPX r omacron -45
+KPX r oslash -45
+KPX r otilde -45
+KPX r period -111
+KPX r q -37
+KPX r s -10
+KPX r sacute -10
+KPX r scaron -10
+KPX r scedilla -10
+KPX r scommaaccent -10
+KPX racute a -15
+KPX racute aacute -15
+KPX racute abreve -15
+KPX racute acircumflex -15
+KPX racute adieresis -15
+KPX racute agrave -15
+KPX racute amacron -15
+KPX racute aogonek -15
+KPX racute aring -15
+KPX racute atilde -15
+KPX racute c -37
+KPX racute cacute -37
+KPX racute ccaron -37
+KPX racute ccedilla -37
+KPX racute comma -111
+KPX racute d -37
+KPX racute dcroat -37
+KPX racute e -37
+KPX racute eacute -37
+KPX racute ecaron -37
+KPX racute ecircumflex -37
+KPX racute edieresis -37
+KPX racute edotaccent -37
+KPX racute egrave -37
+KPX racute emacron -37
+KPX racute eogonek -37
+KPX racute g -37
+KPX racute gbreve -37
+KPX racute gcommaaccent -37
+KPX racute hyphen -20
+KPX racute o -45
+KPX racute oacute -45
+KPX racute ocircumflex -45
+KPX racute odieresis -45
+KPX racute ograve -45
+KPX racute ohungarumlaut -45
+KPX racute omacron -45
+KPX racute oslash -45
+KPX racute otilde -45
+KPX racute period -111
+KPX racute q -37
+KPX racute s -10
+KPX racute sacute -10
+KPX racute scaron -10
+KPX racute scedilla -10
+KPX racute scommaaccent -10
+KPX rcaron a -15
+KPX rcaron aacute -15
+KPX rcaron abreve -15
+KPX rcaron acircumflex -15
+KPX rcaron adieresis -15
+KPX rcaron agrave -15
+KPX rcaron amacron -15
+KPX rcaron aogonek -15
+KPX rcaron aring -15
+KPX rcaron atilde -15
+KPX rcaron c -37
+KPX rcaron cacute -37
+KPX rcaron ccaron -37
+KPX rcaron ccedilla -37
+KPX rcaron comma -111
+KPX rcaron d -37
+KPX rcaron dcroat -37
+KPX rcaron e -37
+KPX rcaron eacute -37
+KPX rcaron ecaron -37
+KPX rcaron ecircumflex -37
+KPX rcaron edieresis -37
+KPX rcaron edotaccent -37
+KPX rcaron egrave -37
+KPX rcaron emacron -37
+KPX rcaron eogonek -37
+KPX rcaron g -37
+KPX rcaron gbreve -37
+KPX rcaron gcommaaccent -37
+KPX rcaron hyphen -20
+KPX rcaron o -45
+KPX rcaron oacute -45
+KPX rcaron ocircumflex -45
+KPX rcaron odieresis -45
+KPX rcaron ograve -45
+KPX rcaron ohungarumlaut -45
+KPX rcaron omacron -45
+KPX rcaron oslash -45
+KPX rcaron otilde -45
+KPX rcaron period -111
+KPX rcaron q -37
+KPX rcaron s -10
+KPX rcaron sacute -10
+KPX rcaron scaron -10
+KPX rcaron scedilla -10
+KPX rcaron scommaaccent -10
+KPX rcommaaccent a -15
+KPX rcommaaccent aacute -15
+KPX rcommaaccent abreve -15
+KPX rcommaaccent acircumflex -15
+KPX rcommaaccent adieresis -15
+KPX rcommaaccent agrave -15
+KPX rcommaaccent amacron -15
+KPX rcommaaccent aogonek -15
+KPX rcommaaccent aring -15
+KPX rcommaaccent atilde -15
+KPX rcommaaccent c -37
+KPX rcommaaccent cacute -37
+KPX rcommaaccent ccaron -37
+KPX rcommaaccent ccedilla -37
+KPX rcommaaccent comma -111
+KPX rcommaaccent d -37
+KPX rcommaaccent dcroat -37
+KPX rcommaaccent e -37
+KPX rcommaaccent eacute -37
+KPX rcommaaccent ecaron -37
+KPX rcommaaccent ecircumflex -37
+KPX rcommaaccent edieresis -37
+KPX rcommaaccent edotaccent -37
+KPX rcommaaccent egrave -37
+KPX rcommaaccent emacron -37
+KPX rcommaaccent eogonek -37
+KPX rcommaaccent g -37
+KPX rcommaaccent gbreve -37
+KPX rcommaaccent gcommaaccent -37
+KPX rcommaaccent hyphen -20
+KPX rcommaaccent o -45
+KPX rcommaaccent oacute -45
+KPX rcommaaccent ocircumflex -45
+KPX rcommaaccent odieresis -45
+KPX rcommaaccent ograve -45
+KPX rcommaaccent ohungarumlaut -45
+KPX rcommaaccent omacron -45
+KPX rcommaaccent oslash -45
+KPX rcommaaccent otilde -45
+KPX rcommaaccent period -111
+KPX rcommaaccent q -37
+KPX rcommaaccent s -10
+KPX rcommaaccent sacute -10
+KPX rcommaaccent scaron -10
+KPX rcommaaccent scedilla -10
+KPX rcommaaccent scommaaccent -10
+KPX space A -18
+KPX space Aacute -18
+KPX space Abreve -18
+KPX space Acircumflex -18
+KPX space Adieresis -18
+KPX space Agrave -18
+KPX space Amacron -18
+KPX space Aogonek -18
+KPX space Aring -18
+KPX space Atilde -18
+KPX space T -18
+KPX space Tcaron -18
+KPX space Tcommaaccent -18
+KPX space V -35
+KPX space W -40
+KPX space Y -75
+KPX space Yacute -75
+KPX space Ydieresis -75
+KPX v comma -74
+KPX v period -74
+KPX w comma -74
+KPX w period -74
+KPX y comma -55
+KPX y period -55
+KPX yacute comma -55
+KPX yacute period -55
+KPX ydieresis comma -55
+KPX ydieresis period -55
+EndKernPairs
+EndKernData
+EndFontMetrics
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Times-Roman.afm b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Times-Roman.afm
new file mode 100755
index 00000000..a0953f28
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/Times-Roman.afm
@@ -0,0 +1,2419 @@
+StartFontMetrics 4.1
+Comment Copyright (c) 1985, 1987, 1989, 1990, 1993, 1997 Adobe Systems Incorporated. All Rights Reserved.
+Comment Creation Date: Thu May 1 12:49:17 1997
+Comment UniqueID 43068
+Comment VMusage 43909 54934
+FontName Times-Roman
+FullName Times Roman
+FamilyName Times
+Weight Roman
+ItalicAngle 0
+IsFixedPitch false
+CharacterSet ExtendedRoman
+FontBBox -168 -218 1000 898
+UnderlinePosition -100
+UnderlineThickness 50
+Version 002.000
+Notice Copyright (c) 1985, 1987, 1989, 1990, 1993, 1997 Adobe Systems Incorporated. All Rights Reserved.Times is a trademark of Linotype-Hell AG and/or its subsidiaries.
+EncodingScheme AdobeStandardEncoding
+CapHeight 662
+XHeight 450
+Ascender 683
+Descender -217
+StdHW 28
+StdVW 84
+StartCharMetrics 315
+C 32 ; WX 250 ; N space ; B 0 0 0 0 ;
+C 33 ; WX 333 ; N exclam ; B 130 -9 238 676 ;
+C 34 ; WX 408 ; N quotedbl ; B 77 431 331 676 ;
+C 35 ; WX 500 ; N numbersign ; B 5 0 496 662 ;
+C 36 ; WX 500 ; N dollar ; B 44 -87 457 727 ;
+C 37 ; WX 833 ; N percent ; B 61 -13 772 676 ;
+C 38 ; WX 778 ; N ampersand ; B 42 -13 750 676 ;
+C 39 ; WX 333 ; N quoteright ; B 79 433 218 676 ;
+C 40 ; WX 333 ; N parenleft ; B 48 -177 304 676 ;
+C 41 ; WX 333 ; N parenright ; B 29 -177 285 676 ;
+C 42 ; WX 500 ; N asterisk ; B 69 265 432 676 ;
+C 43 ; WX 564 ; N plus ; B 30 0 534 506 ;
+C 44 ; WX 250 ; N comma ; B 56 -141 195 102 ;
+C 45 ; WX 333 ; N hyphen ; B 39 194 285 257 ;
+C 46 ; WX 250 ; N period ; B 70 -11 181 100 ;
+C 47 ; WX 278 ; N slash ; B -9 -14 287 676 ;
+C 48 ; WX 500 ; N zero ; B 24 -14 476 676 ;
+C 49 ; WX 500 ; N one ; B 111 0 394 676 ;
+C 50 ; WX 500 ; N two ; B 30 0 475 676 ;
+C 51 ; WX 500 ; N three ; B 43 -14 431 676 ;
+C 52 ; WX 500 ; N four ; B 12 0 472 676 ;
+C 53 ; WX 500 ; N five ; B 32 -14 438 688 ;
+C 54 ; WX 500 ; N six ; B 34 -14 468 684 ;
+C 55 ; WX 500 ; N seven ; B 20 -8 449 662 ;
+C 56 ; WX 500 ; N eight ; B 56 -14 445 676 ;
+C 57 ; WX 500 ; N nine ; B 30 -22 459 676 ;
+C 58 ; WX 278 ; N colon ; B 81 -11 192 459 ;
+C 59 ; WX 278 ; N semicolon ; B 80 -141 219 459 ;
+C 60 ; WX 564 ; N less ; B 28 -8 536 514 ;
+C 61 ; WX 564 ; N equal ; B 30 120 534 386 ;
+C 62 ; WX 564 ; N greater ; B 28 -8 536 514 ;
+C 63 ; WX 444 ; N question ; B 68 -8 414 676 ;
+C 64 ; WX 921 ; N at ; B 116 -14 809 676 ;
+C 65 ; WX 722 ; N A ; B 15 0 706 674 ;
+C 66 ; WX 667 ; N B ; B 17 0 593 662 ;
+C 67 ; WX 667 ; N C ; B 28 -14 633 676 ;
+C 68 ; WX 722 ; N D ; B 16 0 685 662 ;
+C 69 ; WX 611 ; N E ; B 12 0 597 662 ;
+C 70 ; WX 556 ; N F ; B 12 0 546 662 ;
+C 71 ; WX 722 ; N G ; B 32 -14 709 676 ;
+C 72 ; WX 722 ; N H ; B 19 0 702 662 ;
+C 73 ; WX 333 ; N I ; B 18 0 315 662 ;
+C 74 ; WX 389 ; N J ; B 10 -14 370 662 ;
+C 75 ; WX 722 ; N K ; B 34 0 723 662 ;
+C 76 ; WX 611 ; N L ; B 12 0 598 662 ;
+C 77 ; WX 889 ; N M ; B 12 0 863 662 ;
+C 78 ; WX 722 ; N N ; B 12 -11 707 662 ;
+C 79 ; WX 722 ; N O ; B 34 -14 688 676 ;
+C 80 ; WX 556 ; N P ; B 16 0 542 662 ;
+C 81 ; WX 722 ; N Q ; B 34 -178 701 676 ;
+C 82 ; WX 667 ; N R ; B 17 0 659 662 ;
+C 83 ; WX 556 ; N S ; B 42 -14 491 676 ;
+C 84 ; WX 611 ; N T ; B 17 0 593 662 ;
+C 85 ; WX 722 ; N U ; B 14 -14 705 662 ;
+C 86 ; WX 722 ; N V ; B 16 -11 697 662 ;
+C 87 ; WX 944 ; N W ; B 5 -11 932 662 ;
+C 88 ; WX 722 ; N X ; B 10 0 704 662 ;
+C 89 ; WX 722 ; N Y ; B 22 0 703 662 ;
+C 90 ; WX 611 ; N Z ; B 9 0 597 662 ;
+C 91 ; WX 333 ; N bracketleft ; B 88 -156 299 662 ;
+C 92 ; WX 278 ; N backslash ; B -9 -14 287 676 ;
+C 93 ; WX 333 ; N bracketright ; B 34 -156 245 662 ;
+C 94 ; WX 469 ; N asciicircum ; B 24 297 446 662 ;
+C 95 ; WX 500 ; N underscore ; B 0 -125 500 -75 ;
+C 96 ; WX 333 ; N quoteleft ; B 115 433 254 676 ;
+C 97 ; WX 444 ; N a ; B 37 -10 442 460 ;
+C 98 ; WX 500 ; N b ; B 3 -10 468 683 ;
+C 99 ; WX 444 ; N c ; B 25 -10 412 460 ;
+C 100 ; WX 500 ; N d ; B 27 -10 491 683 ;
+C 101 ; WX 444 ; N e ; B 25 -10 424 460 ;
+C 102 ; WX 333 ; N f ; B 20 0 383 683 ; L i fi ; L l fl ;
+C 103 ; WX 500 ; N g ; B 28 -218 470 460 ;
+C 104 ; WX 500 ; N h ; B 9 0 487 683 ;
+C 105 ; WX 278 ; N i ; B 16 0 253 683 ;
+C 106 ; WX 278 ; N j ; B -70 -218 194 683 ;
+C 107 ; WX 500 ; N k ; B 7 0 505 683 ;
+C 108 ; WX 278 ; N l ; B 19 0 257 683 ;
+C 109 ; WX 778 ; N m ; B 16 0 775 460 ;
+C 110 ; WX 500 ; N n ; B 16 0 485 460 ;
+C 111 ; WX 500 ; N o ; B 29 -10 470 460 ;
+C 112 ; WX 500 ; N p ; B 5 -217 470 460 ;
+C 113 ; WX 500 ; N q ; B 24 -217 488 460 ;
+C 114 ; WX 333 ; N r ; B 5 0 335 460 ;
+C 115 ; WX 389 ; N s ; B 51 -10 348 460 ;
+C 116 ; WX 278 ; N t ; B 13 -10 279 579 ;
+C 117 ; WX 500 ; N u ; B 9 -10 479 450 ;
+C 118 ; WX 500 ; N v ; B 19 -14 477 450 ;
+C 119 ; WX 722 ; N w ; B 21 -14 694 450 ;
+C 120 ; WX 500 ; N x ; B 17 0 479 450 ;
+C 121 ; WX 500 ; N y ; B 14 -218 475 450 ;
+C 122 ; WX 444 ; N z ; B 27 0 418 450 ;
+C 123 ; WX 480 ; N braceleft ; B 100 -181 350 680 ;
+C 124 ; WX 200 ; N bar ; B 67 -218 133 782 ;
+C 125 ; WX 480 ; N braceright ; B 130 -181 380 680 ;
+C 126 ; WX 541 ; N asciitilde ; B 40 183 502 323 ;
+C 161 ; WX 333 ; N exclamdown ; B 97 -218 205 467 ;
+C 162 ; WX 500 ; N cent ; B 53 -138 448 579 ;
+C 163 ; WX 500 ; N sterling ; B 12 -8 490 676 ;
+C 164 ; WX 167 ; N fraction ; B -168 -14 331 676 ;
+C 165 ; WX 500 ; N yen ; B -53 0 512 662 ;
+C 166 ; WX 500 ; N florin ; B 7 -189 490 676 ;
+C 167 ; WX 500 ; N section ; B 70 -148 426 676 ;
+C 168 ; WX 500 ; N currency ; B -22 58 522 602 ;
+C 169 ; WX 180 ; N quotesingle ; B 48 431 133 676 ;
+C 170 ; WX 444 ; N quotedblleft ; B 43 433 414 676 ;
+C 171 ; WX 500 ; N guillemotleft ; B 42 33 456 416 ;
+C 172 ; WX 333 ; N guilsinglleft ; B 63 33 285 416 ;
+C 173 ; WX 333 ; N guilsinglright ; B 48 33 270 416 ;
+C 174 ; WX 556 ; N fi ; B 31 0 521 683 ;
+C 175 ; WX 556 ; N fl ; B 32 0 521 683 ;
+C 177 ; WX 500 ; N endash ; B 0 201 500 250 ;
+C 178 ; WX 500 ; N dagger ; B 59 -149 442 676 ;
+C 179 ; WX 500 ; N daggerdbl ; B 58 -153 442 676 ;
+C 180 ; WX 250 ; N periodcentered ; B 70 199 181 310 ;
+C 182 ; WX 453 ; N paragraph ; B -22 -154 450 662 ;
+C 183 ; WX 350 ; N bullet ; B 40 196 310 466 ;
+C 184 ; WX 333 ; N quotesinglbase ; B 79 -141 218 102 ;
+C 185 ; WX 444 ; N quotedblbase ; B 45 -141 416 102 ;
+C 186 ; WX 444 ; N quotedblright ; B 30 433 401 676 ;
+C 187 ; WX 500 ; N guillemotright ; B 44 33 458 416 ;
+C 188 ; WX 1000 ; N ellipsis ; B 111 -11 888 100 ;
+C 189 ; WX 1000 ; N perthousand ; B 7 -19 994 706 ;
+C 191 ; WX 444 ; N questiondown ; B 30 -218 376 466 ;
+C 193 ; WX 333 ; N grave ; B 19 507 242 678 ;
+C 194 ; WX 333 ; N acute ; B 93 507 317 678 ;
+C 195 ; WX 333 ; N circumflex ; B 11 507 322 674 ;
+C 196 ; WX 333 ; N tilde ; B 1 532 331 638 ;
+C 197 ; WX 333 ; N macron ; B 11 547 322 601 ;
+C 198 ; WX 333 ; N breve ; B 26 507 307 664 ;
+C 199 ; WX 333 ; N dotaccent ; B 118 581 216 681 ;
+C 200 ; WX 333 ; N dieresis ; B 18 581 315 681 ;
+C 202 ; WX 333 ; N ring ; B 67 512 266 711 ;
+C 203 ; WX 333 ; N cedilla ; B 52 -215 261 0 ;
+C 205 ; WX 333 ; N hungarumlaut ; B -3 507 377 678 ;
+C 206 ; WX 333 ; N ogonek ; B 62 -165 243 0 ;
+C 207 ; WX 333 ; N caron ; B 11 507 322 674 ;
+C 208 ; WX 1000 ; N emdash ; B 0 201 1000 250 ;
+C 225 ; WX 889 ; N AE ; B 0 0 863 662 ;
+C 227 ; WX 276 ; N ordfeminine ; B 4 394 270 676 ;
+C 232 ; WX 611 ; N Lslash ; B 12 0 598 662 ;
+C 233 ; WX 722 ; N Oslash ; B 34 -80 688 734 ;
+C 234 ; WX 889 ; N OE ; B 30 -6 885 668 ;
+C 235 ; WX 310 ; N ordmasculine ; B 6 394 304 676 ;
+C 241 ; WX 667 ; N ae ; B 38 -10 632 460 ;
+C 245 ; WX 278 ; N dotlessi ; B 16 0 253 460 ;
+C 248 ; WX 278 ; N lslash ; B 19 0 259 683 ;
+C 249 ; WX 500 ; N oslash ; B 29 -112 470 551 ;
+C 250 ; WX 722 ; N oe ; B 30 -10 690 460 ;
+C 251 ; WX 500 ; N germandbls ; B 12 -9 468 683 ;
+C -1 ; WX 333 ; N Idieresis ; B 18 0 315 835 ;
+C -1 ; WX 444 ; N eacute ; B 25 -10 424 678 ;
+C -1 ; WX 444 ; N abreve ; B 37 -10 442 664 ;
+C -1 ; WX 500 ; N uhungarumlaut ; B 9 -10 501 678 ;
+C -1 ; WX 444 ; N ecaron ; B 25 -10 424 674 ;
+C -1 ; WX 722 ; N Ydieresis ; B 22 0 703 835 ;
+C -1 ; WX 564 ; N divide ; B 30 -10 534 516 ;
+C -1 ; WX 722 ; N Yacute ; B 22 0 703 890 ;
+C -1 ; WX 722 ; N Acircumflex ; B 15 0 706 886 ;
+C -1 ; WX 444 ; N aacute ; B 37 -10 442 678 ;
+C -1 ; WX 722 ; N Ucircumflex ; B 14 -14 705 886 ;
+C -1 ; WX 500 ; N yacute ; B 14 -218 475 678 ;
+C -1 ; WX 389 ; N scommaaccent ; B 51 -218 348 460 ;
+C -1 ; WX 444 ; N ecircumflex ; B 25 -10 424 674 ;
+C -1 ; WX 722 ; N Uring ; B 14 -14 705 898 ;
+C -1 ; WX 722 ; N Udieresis ; B 14 -14 705 835 ;
+C -1 ; WX 444 ; N aogonek ; B 37 -165 469 460 ;
+C -1 ; WX 722 ; N Uacute ; B 14 -14 705 890 ;
+C -1 ; WX 500 ; N uogonek ; B 9 -155 487 450 ;
+C -1 ; WX 611 ; N Edieresis ; B 12 0 597 835 ;
+C -1 ; WX 722 ; N Dcroat ; B 16 0 685 662 ;
+C -1 ; WX 250 ; N commaaccent ; B 59 -218 184 -50 ;
+C -1 ; WX 760 ; N copyright ; B 38 -14 722 676 ;
+C -1 ; WX 611 ; N Emacron ; B 12 0 597 813 ;
+C -1 ; WX 444 ; N ccaron ; B 25 -10 412 674 ;
+C -1 ; WX 444 ; N aring ; B 37 -10 442 711 ;
+C -1 ; WX 722 ; N Ncommaaccent ; B 12 -198 707 662 ;
+C -1 ; WX 278 ; N lacute ; B 19 0 290 890 ;
+C -1 ; WX 444 ; N agrave ; B 37 -10 442 678 ;
+C -1 ; WX 611 ; N Tcommaaccent ; B 17 -218 593 662 ;
+C -1 ; WX 667 ; N Cacute ; B 28 -14 633 890 ;
+C -1 ; WX 444 ; N atilde ; B 37 -10 442 638 ;
+C -1 ; WX 611 ; N Edotaccent ; B 12 0 597 835 ;
+C -1 ; WX 389 ; N scaron ; B 39 -10 350 674 ;
+C -1 ; WX 389 ; N scedilla ; B 51 -215 348 460 ;
+C -1 ; WX 278 ; N iacute ; B 16 0 290 678 ;
+C -1 ; WX 471 ; N lozenge ; B 13 0 459 724 ;
+C -1 ; WX 667 ; N Rcaron ; B 17 0 659 886 ;
+C -1 ; WX 722 ; N Gcommaaccent ; B 32 -218 709 676 ;
+C -1 ; WX 500 ; N ucircumflex ; B 9 -10 479 674 ;
+C -1 ; WX 444 ; N acircumflex ; B 37 -10 442 674 ;
+C -1 ; WX 722 ; N Amacron ; B 15 0 706 813 ;
+C -1 ; WX 333 ; N rcaron ; B 5 0 335 674 ;
+C -1 ; WX 444 ; N ccedilla ; B 25 -215 412 460 ;
+C -1 ; WX 611 ; N Zdotaccent ; B 9 0 597 835 ;
+C -1 ; WX 556 ; N Thorn ; B 16 0 542 662 ;
+C -1 ; WX 722 ; N Omacron ; B 34 -14 688 813 ;
+C -1 ; WX 667 ; N Racute ; B 17 0 659 890 ;
+C -1 ; WX 556 ; N Sacute ; B 42 -14 491 890 ;
+C -1 ; WX 588 ; N dcaron ; B 27 -10 589 695 ;
+C -1 ; WX 722 ; N Umacron ; B 14 -14 705 813 ;
+C -1 ; WX 500 ; N uring ; B 9 -10 479 711 ;
+C -1 ; WX 300 ; N threesuperior ; B 15 262 291 676 ;
+C -1 ; WX 722 ; N Ograve ; B 34 -14 688 890 ;
+C -1 ; WX 722 ; N Agrave ; B 15 0 706 890 ;
+C -1 ; WX 722 ; N Abreve ; B 15 0 706 876 ;
+C -1 ; WX 564 ; N multiply ; B 38 8 527 497 ;
+C -1 ; WX 500 ; N uacute ; B 9 -10 479 678 ;
+C -1 ; WX 611 ; N Tcaron ; B 17 0 593 886 ;
+C -1 ; WX 476 ; N partialdiff ; B 17 -38 459 710 ;
+C -1 ; WX 500 ; N ydieresis ; B 14 -218 475 623 ;
+C -1 ; WX 722 ; N Nacute ; B 12 -11 707 890 ;
+C -1 ; WX 278 ; N icircumflex ; B -16 0 295 674 ;
+C -1 ; WX 611 ; N Ecircumflex ; B 12 0 597 886 ;
+C -1 ; WX 444 ; N adieresis ; B 37 -10 442 623 ;
+C -1 ; WX 444 ; N edieresis ; B 25 -10 424 623 ;
+C -1 ; WX 444 ; N cacute ; B 25 -10 413 678 ;
+C -1 ; WX 500 ; N nacute ; B 16 0 485 678 ;
+C -1 ; WX 500 ; N umacron ; B 9 -10 479 601 ;
+C -1 ; WX 722 ; N Ncaron ; B 12 -11 707 886 ;
+C -1 ; WX 333 ; N Iacute ; B 18 0 317 890 ;
+C -1 ; WX 564 ; N plusminus ; B 30 0 534 506 ;
+C -1 ; WX 200 ; N brokenbar ; B 67 -143 133 707 ;
+C -1 ; WX 760 ; N registered ; B 38 -14 722 676 ;
+C -1 ; WX 722 ; N Gbreve ; B 32 -14 709 876 ;
+C -1 ; WX 333 ; N Idotaccent ; B 18 0 315 835 ;
+C -1 ; WX 600 ; N summation ; B 15 -10 585 706 ;
+C -1 ; WX 611 ; N Egrave ; B 12 0 597 890 ;
+C -1 ; WX 333 ; N racute ; B 5 0 335 678 ;
+C -1 ; WX 500 ; N omacron ; B 29 -10 470 601 ;
+C -1 ; WX 611 ; N Zacute ; B 9 0 597 890 ;
+C -1 ; WX 611 ; N Zcaron ; B 9 0 597 886 ;
+C -1 ; WX 549 ; N greaterequal ; B 26 0 523 666 ;
+C -1 ; WX 722 ; N Eth ; B 16 0 685 662 ;
+C -1 ; WX 667 ; N Ccedilla ; B 28 -215 633 676 ;
+C -1 ; WX 278 ; N lcommaaccent ; B 19 -218 257 683 ;
+C -1 ; WX 326 ; N tcaron ; B 13 -10 318 722 ;
+C -1 ; WX 444 ; N eogonek ; B 25 -165 424 460 ;
+C -1 ; WX 722 ; N Uogonek ; B 14 -165 705 662 ;
+C -1 ; WX 722 ; N Aacute ; B 15 0 706 890 ;
+C -1 ; WX 722 ; N Adieresis ; B 15 0 706 835 ;
+C -1 ; WX 444 ; N egrave ; B 25 -10 424 678 ;
+C -1 ; WX 444 ; N zacute ; B 27 0 418 678 ;
+C -1 ; WX 278 ; N iogonek ; B 16 -165 265 683 ;
+C -1 ; WX 722 ; N Oacute ; B 34 -14 688 890 ;
+C -1 ; WX 500 ; N oacute ; B 29 -10 470 678 ;
+C -1 ; WX 444 ; N amacron ; B 37 -10 442 601 ;
+C -1 ; WX 389 ; N sacute ; B 51 -10 348 678 ;
+C -1 ; WX 278 ; N idieresis ; B -9 0 288 623 ;
+C -1 ; WX 722 ; N Ocircumflex ; B 34 -14 688 886 ;
+C -1 ; WX 722 ; N Ugrave ; B 14 -14 705 890 ;
+C -1 ; WX 612 ; N Delta ; B 6 0 608 688 ;
+C -1 ; WX 500 ; N thorn ; B 5 -217 470 683 ;
+C -1 ; WX 300 ; N twosuperior ; B 1 270 296 676 ;
+C -1 ; WX 722 ; N Odieresis ; B 34 -14 688 835 ;
+C -1 ; WX 500 ; N mu ; B 36 -218 512 450 ;
+C -1 ; WX 278 ; N igrave ; B -8 0 253 678 ;
+C -1 ; WX 500 ; N ohungarumlaut ; B 29 -10 491 678 ;
+C -1 ; WX 611 ; N Eogonek ; B 12 -165 597 662 ;
+C -1 ; WX 500 ; N dcroat ; B 27 -10 500 683 ;
+C -1 ; WX 750 ; N threequarters ; B 15 -14 718 676 ;
+C -1 ; WX 556 ; N Scedilla ; B 42 -215 491 676 ;
+C -1 ; WX 344 ; N lcaron ; B 19 0 347 695 ;
+C -1 ; WX 722 ; N Kcommaaccent ; B 34 -198 723 662 ;
+C -1 ; WX 611 ; N Lacute ; B 12 0 598 890 ;
+C -1 ; WX 980 ; N trademark ; B 30 256 957 662 ;
+C -1 ; WX 444 ; N edotaccent ; B 25 -10 424 623 ;
+C -1 ; WX 333 ; N Igrave ; B 18 0 315 890 ;
+C -1 ; WX 333 ; N Imacron ; B 11 0 322 813 ;
+C -1 ; WX 611 ; N Lcaron ; B 12 0 598 676 ;
+C -1 ; WX 750 ; N onehalf ; B 31 -14 746 676 ;
+C -1 ; WX 549 ; N lessequal ; B 26 0 523 666 ;
+C -1 ; WX 500 ; N ocircumflex ; B 29 -10 470 674 ;
+C -1 ; WX 500 ; N ntilde ; B 16 0 485 638 ;
+C -1 ; WX 722 ; N Uhungarumlaut ; B 14 -14 705 890 ;
+C -1 ; WX 611 ; N Eacute ; B 12 0 597 890 ;
+C -1 ; WX 444 ; N emacron ; B 25 -10 424 601 ;
+C -1 ; WX 500 ; N gbreve ; B 28 -218 470 664 ;
+C -1 ; WX 750 ; N onequarter ; B 37 -14 718 676 ;
+C -1 ; WX 556 ; N Scaron ; B 42 -14 491 886 ;
+C -1 ; WX 556 ; N Scommaaccent ; B 42 -218 491 676 ;
+C -1 ; WX 722 ; N Ohungarumlaut ; B 34 -14 688 890 ;
+C -1 ; WX 400 ; N degree ; B 57 390 343 676 ;
+C -1 ; WX 500 ; N ograve ; B 29 -10 470 678 ;
+C -1 ; WX 667 ; N Ccaron ; B 28 -14 633 886 ;
+C -1 ; WX 500 ; N ugrave ; B 9 -10 479 678 ;
+C -1 ; WX 453 ; N radical ; B 2 -60 452 768 ;
+C -1 ; WX 722 ; N Dcaron ; B 16 0 685 886 ;
+C -1 ; WX 333 ; N rcommaaccent ; B 5 -218 335 460 ;
+C -1 ; WX 722 ; N Ntilde ; B 12 -11 707 850 ;
+C -1 ; WX 500 ; N otilde ; B 29 -10 470 638 ;
+C -1 ; WX 667 ; N Rcommaaccent ; B 17 -198 659 662 ;
+C -1 ; WX 611 ; N Lcommaaccent ; B 12 -218 598 662 ;
+C -1 ; WX 722 ; N Atilde ; B 15 0 706 850 ;
+C -1 ; WX 722 ; N Aogonek ; B 15 -165 738 674 ;
+C -1 ; WX 722 ; N Aring ; B 15 0 706 898 ;
+C -1 ; WX 722 ; N Otilde ; B 34 -14 688 850 ;
+C -1 ; WX 444 ; N zdotaccent ; B 27 0 418 623 ;
+C -1 ; WX 611 ; N Ecaron ; B 12 0 597 886 ;
+C -1 ; WX 333 ; N Iogonek ; B 18 -165 315 662 ;
+C -1 ; WX 500 ; N kcommaaccent ; B 7 -218 505 683 ;
+C -1 ; WX 564 ; N minus ; B 30 220 534 286 ;
+C -1 ; WX 333 ; N Icircumflex ; B 11 0 322 886 ;
+C -1 ; WX 500 ; N ncaron ; B 16 0 485 674 ;
+C -1 ; WX 278 ; N tcommaaccent ; B 13 -218 279 579 ;
+C -1 ; WX 564 ; N logicalnot ; B 30 108 534 386 ;
+C -1 ; WX 500 ; N odieresis ; B 29 -10 470 623 ;
+C -1 ; WX 500 ; N udieresis ; B 9 -10 479 623 ;
+C -1 ; WX 549 ; N notequal ; B 12 -31 537 547 ;
+C -1 ; WX 500 ; N gcommaaccent ; B 28 -218 470 749 ;
+C -1 ; WX 500 ; N eth ; B 29 -10 471 686 ;
+C -1 ; WX 444 ; N zcaron ; B 27 0 418 674 ;
+C -1 ; WX 500 ; N ncommaaccent ; B 16 -218 485 460 ;
+C -1 ; WX 300 ; N onesuperior ; B 57 270 248 676 ;
+C -1 ; WX 278 ; N imacron ; B 6 0 271 601 ;
+C -1 ; WX 500 ; N Euro ; B 0 0 0 0 ;
+EndCharMetrics
+StartKernData
+StartKernPairs 2073
+KPX A C -40
+KPX A Cacute -40
+KPX A Ccaron -40
+KPX A Ccedilla -40
+KPX A G -40
+KPX A Gbreve -40
+KPX A Gcommaaccent -40
+KPX A O -55
+KPX A Oacute -55
+KPX A Ocircumflex -55
+KPX A Odieresis -55
+KPX A Ograve -55
+KPX A Ohungarumlaut -55
+KPX A Omacron -55
+KPX A Oslash -55
+KPX A Otilde -55
+KPX A Q -55
+KPX A T -111
+KPX A Tcaron -111
+KPX A Tcommaaccent -111
+KPX A U -55
+KPX A Uacute -55
+KPX A Ucircumflex -55
+KPX A Udieresis -55
+KPX A Ugrave -55
+KPX A Uhungarumlaut -55
+KPX A Umacron -55
+KPX A Uogonek -55
+KPX A Uring -55
+KPX A V -135
+KPX A W -90
+KPX A Y -105
+KPX A Yacute -105
+KPX A Ydieresis -105
+KPX A quoteright -111
+KPX A v -74
+KPX A w -92
+KPX A y -92
+KPX A yacute -92
+KPX A ydieresis -92
+KPX Aacute C -40
+KPX Aacute Cacute -40
+KPX Aacute Ccaron -40
+KPX Aacute Ccedilla -40
+KPX Aacute G -40
+KPX Aacute Gbreve -40
+KPX Aacute Gcommaaccent -40
+KPX Aacute O -55
+KPX Aacute Oacute -55
+KPX Aacute Ocircumflex -55
+KPX Aacute Odieresis -55
+KPX Aacute Ograve -55
+KPX Aacute Ohungarumlaut -55
+KPX Aacute Omacron -55
+KPX Aacute Oslash -55
+KPX Aacute Otilde -55
+KPX Aacute Q -55
+KPX Aacute T -111
+KPX Aacute Tcaron -111
+KPX Aacute Tcommaaccent -111
+KPX Aacute U -55
+KPX Aacute Uacute -55
+KPX Aacute Ucircumflex -55
+KPX Aacute Udieresis -55
+KPX Aacute Ugrave -55
+KPX Aacute Uhungarumlaut -55
+KPX Aacute Umacron -55
+KPX Aacute Uogonek -55
+KPX Aacute Uring -55
+KPX Aacute V -135
+KPX Aacute W -90
+KPX Aacute Y -105
+KPX Aacute Yacute -105
+KPX Aacute Ydieresis -105
+KPX Aacute quoteright -111
+KPX Aacute v -74
+KPX Aacute w -92
+KPX Aacute y -92
+KPX Aacute yacute -92
+KPX Aacute ydieresis -92
+KPX Abreve C -40
+KPX Abreve Cacute -40
+KPX Abreve Ccaron -40
+KPX Abreve Ccedilla -40
+KPX Abreve G -40
+KPX Abreve Gbreve -40
+KPX Abreve Gcommaaccent -40
+KPX Abreve O -55
+KPX Abreve Oacute -55
+KPX Abreve Ocircumflex -55
+KPX Abreve Odieresis -55
+KPX Abreve Ograve -55
+KPX Abreve Ohungarumlaut -55
+KPX Abreve Omacron -55
+KPX Abreve Oslash -55
+KPX Abreve Otilde -55
+KPX Abreve Q -55
+KPX Abreve T -111
+KPX Abreve Tcaron -111
+KPX Abreve Tcommaaccent -111
+KPX Abreve U -55
+KPX Abreve Uacute -55
+KPX Abreve Ucircumflex -55
+KPX Abreve Udieresis -55
+KPX Abreve Ugrave -55
+KPX Abreve Uhungarumlaut -55
+KPX Abreve Umacron -55
+KPX Abreve Uogonek -55
+KPX Abreve Uring -55
+KPX Abreve V -135
+KPX Abreve W -90
+KPX Abreve Y -105
+KPX Abreve Yacute -105
+KPX Abreve Ydieresis -105
+KPX Abreve quoteright -111
+KPX Abreve v -74
+KPX Abreve w -92
+KPX Abreve y -92
+KPX Abreve yacute -92
+KPX Abreve ydieresis -92
+KPX Acircumflex C -40
+KPX Acircumflex Cacute -40
+KPX Acircumflex Ccaron -40
+KPX Acircumflex Ccedilla -40
+KPX Acircumflex G -40
+KPX Acircumflex Gbreve -40
+KPX Acircumflex Gcommaaccent -40
+KPX Acircumflex O -55
+KPX Acircumflex Oacute -55
+KPX Acircumflex Ocircumflex -55
+KPX Acircumflex Odieresis -55
+KPX Acircumflex Ograve -55
+KPX Acircumflex Ohungarumlaut -55
+KPX Acircumflex Omacron -55
+KPX Acircumflex Oslash -55
+KPX Acircumflex Otilde -55
+KPX Acircumflex Q -55
+KPX Acircumflex T -111
+KPX Acircumflex Tcaron -111
+KPX Acircumflex Tcommaaccent -111
+KPX Acircumflex U -55
+KPX Acircumflex Uacute -55
+KPX Acircumflex Ucircumflex -55
+KPX Acircumflex Udieresis -55
+KPX Acircumflex Ugrave -55
+KPX Acircumflex Uhungarumlaut -55
+KPX Acircumflex Umacron -55
+KPX Acircumflex Uogonek -55
+KPX Acircumflex Uring -55
+KPX Acircumflex V -135
+KPX Acircumflex W -90
+KPX Acircumflex Y -105
+KPX Acircumflex Yacute -105
+KPX Acircumflex Ydieresis -105
+KPX Acircumflex quoteright -111
+KPX Acircumflex v -74
+KPX Acircumflex w -92
+KPX Acircumflex y -92
+KPX Acircumflex yacute -92
+KPX Acircumflex ydieresis -92
+KPX Adieresis C -40
+KPX Adieresis Cacute -40
+KPX Adieresis Ccaron -40
+KPX Adieresis Ccedilla -40
+KPX Adieresis G -40
+KPX Adieresis Gbreve -40
+KPX Adieresis Gcommaaccent -40
+KPX Adieresis O -55
+KPX Adieresis Oacute -55
+KPX Adieresis Ocircumflex -55
+KPX Adieresis Odieresis -55
+KPX Adieresis Ograve -55
+KPX Adieresis Ohungarumlaut -55
+KPX Adieresis Omacron -55
+KPX Adieresis Oslash -55
+KPX Adieresis Otilde -55
+KPX Adieresis Q -55
+KPX Adieresis T -111
+KPX Adieresis Tcaron -111
+KPX Adieresis Tcommaaccent -111
+KPX Adieresis U -55
+KPX Adieresis Uacute -55
+KPX Adieresis Ucircumflex -55
+KPX Adieresis Udieresis -55
+KPX Adieresis Ugrave -55
+KPX Adieresis Uhungarumlaut -55
+KPX Adieresis Umacron -55
+KPX Adieresis Uogonek -55
+KPX Adieresis Uring -55
+KPX Adieresis V -135
+KPX Adieresis W -90
+KPX Adieresis Y -105
+KPX Adieresis Yacute -105
+KPX Adieresis Ydieresis -105
+KPX Adieresis quoteright -111
+KPX Adieresis v -74
+KPX Adieresis w -92
+KPX Adieresis y -92
+KPX Adieresis yacute -92
+KPX Adieresis ydieresis -92
+KPX Agrave C -40
+KPX Agrave Cacute -40
+KPX Agrave Ccaron -40
+KPX Agrave Ccedilla -40
+KPX Agrave G -40
+KPX Agrave Gbreve -40
+KPX Agrave Gcommaaccent -40
+KPX Agrave O -55
+KPX Agrave Oacute -55
+KPX Agrave Ocircumflex -55
+KPX Agrave Odieresis -55
+KPX Agrave Ograve -55
+KPX Agrave Ohungarumlaut -55
+KPX Agrave Omacron -55
+KPX Agrave Oslash -55
+KPX Agrave Otilde -55
+KPX Agrave Q -55
+KPX Agrave T -111
+KPX Agrave Tcaron -111
+KPX Agrave Tcommaaccent -111
+KPX Agrave U -55
+KPX Agrave Uacute -55
+KPX Agrave Ucircumflex -55
+KPX Agrave Udieresis -55
+KPX Agrave Ugrave -55
+KPX Agrave Uhungarumlaut -55
+KPX Agrave Umacron -55
+KPX Agrave Uogonek -55
+KPX Agrave Uring -55
+KPX Agrave V -135
+KPX Agrave W -90
+KPX Agrave Y -105
+KPX Agrave Yacute -105
+KPX Agrave Ydieresis -105
+KPX Agrave quoteright -111
+KPX Agrave v -74
+KPX Agrave w -92
+KPX Agrave y -92
+KPX Agrave yacute -92
+KPX Agrave ydieresis -92
+KPX Amacron C -40
+KPX Amacron Cacute -40
+KPX Amacron Ccaron -40
+KPX Amacron Ccedilla -40
+KPX Amacron G -40
+KPX Amacron Gbreve -40
+KPX Amacron Gcommaaccent -40
+KPX Amacron O -55
+KPX Amacron Oacute -55
+KPX Amacron Ocircumflex -55
+KPX Amacron Odieresis -55
+KPX Amacron Ograve -55
+KPX Amacron Ohungarumlaut -55
+KPX Amacron Omacron -55
+KPX Amacron Oslash -55
+KPX Amacron Otilde -55
+KPX Amacron Q -55
+KPX Amacron T -111
+KPX Amacron Tcaron -111
+KPX Amacron Tcommaaccent -111
+KPX Amacron U -55
+KPX Amacron Uacute -55
+KPX Amacron Ucircumflex -55
+KPX Amacron Udieresis -55
+KPX Amacron Ugrave -55
+KPX Amacron Uhungarumlaut -55
+KPX Amacron Umacron -55
+KPX Amacron Uogonek -55
+KPX Amacron Uring -55
+KPX Amacron V -135
+KPX Amacron W -90
+KPX Amacron Y -105
+KPX Amacron Yacute -105
+KPX Amacron Ydieresis -105
+KPX Amacron quoteright -111
+KPX Amacron v -74
+KPX Amacron w -92
+KPX Amacron y -92
+KPX Amacron yacute -92
+KPX Amacron ydieresis -92
+KPX Aogonek C -40
+KPX Aogonek Cacute -40
+KPX Aogonek Ccaron -40
+KPX Aogonek Ccedilla -40
+KPX Aogonek G -40
+KPX Aogonek Gbreve -40
+KPX Aogonek Gcommaaccent -40
+KPX Aogonek O -55
+KPX Aogonek Oacute -55
+KPX Aogonek Ocircumflex -55
+KPX Aogonek Odieresis -55
+KPX Aogonek Ograve -55
+KPX Aogonek Ohungarumlaut -55
+KPX Aogonek Omacron -55
+KPX Aogonek Oslash -55
+KPX Aogonek Otilde -55
+KPX Aogonek Q -55
+KPX Aogonek T -111
+KPX Aogonek Tcaron -111
+KPX Aogonek Tcommaaccent -111
+KPX Aogonek U -55
+KPX Aogonek Uacute -55
+KPX Aogonek Ucircumflex -55
+KPX Aogonek Udieresis -55
+KPX Aogonek Ugrave -55
+KPX Aogonek Uhungarumlaut -55
+KPX Aogonek Umacron -55
+KPX Aogonek Uogonek -55
+KPX Aogonek Uring -55
+KPX Aogonek V -135
+KPX Aogonek W -90
+KPX Aogonek Y -105
+KPX Aogonek Yacute -105
+KPX Aogonek Ydieresis -105
+KPX Aogonek quoteright -111
+KPX Aogonek v -74
+KPX Aogonek w -52
+KPX Aogonek y -52
+KPX Aogonek yacute -52
+KPX Aogonek ydieresis -52
+KPX Aring C -40
+KPX Aring Cacute -40
+KPX Aring Ccaron -40
+KPX Aring Ccedilla -40
+KPX Aring G -40
+KPX Aring Gbreve -40
+KPX Aring Gcommaaccent -40
+KPX Aring O -55
+KPX Aring Oacute -55
+KPX Aring Ocircumflex -55
+KPX Aring Odieresis -55
+KPX Aring Ograve -55
+KPX Aring Ohungarumlaut -55
+KPX Aring Omacron -55
+KPX Aring Oslash -55
+KPX Aring Otilde -55
+KPX Aring Q -55
+KPX Aring T -111
+KPX Aring Tcaron -111
+KPX Aring Tcommaaccent -111
+KPX Aring U -55
+KPX Aring Uacute -55
+KPX Aring Ucircumflex -55
+KPX Aring Udieresis -55
+KPX Aring Ugrave -55
+KPX Aring Uhungarumlaut -55
+KPX Aring Umacron -55
+KPX Aring Uogonek -55
+KPX Aring Uring -55
+KPX Aring V -135
+KPX Aring W -90
+KPX Aring Y -105
+KPX Aring Yacute -105
+KPX Aring Ydieresis -105
+KPX Aring quoteright -111
+KPX Aring v -74
+KPX Aring w -92
+KPX Aring y -92
+KPX Aring yacute -92
+KPX Aring ydieresis -92
+KPX Atilde C -40
+KPX Atilde Cacute -40
+KPX Atilde Ccaron -40
+KPX Atilde Ccedilla -40
+KPX Atilde G -40
+KPX Atilde Gbreve -40
+KPX Atilde Gcommaaccent -40
+KPX Atilde O -55
+KPX Atilde Oacute -55
+KPX Atilde Ocircumflex -55
+KPX Atilde Odieresis -55
+KPX Atilde Ograve -55
+KPX Atilde Ohungarumlaut -55
+KPX Atilde Omacron -55
+KPX Atilde Oslash -55
+KPX Atilde Otilde -55
+KPX Atilde Q -55
+KPX Atilde T -111
+KPX Atilde Tcaron -111
+KPX Atilde Tcommaaccent -111
+KPX Atilde U -55
+KPX Atilde Uacute -55
+KPX Atilde Ucircumflex -55
+KPX Atilde Udieresis -55
+KPX Atilde Ugrave -55
+KPX Atilde Uhungarumlaut -55
+KPX Atilde Umacron -55
+KPX Atilde Uogonek -55
+KPX Atilde Uring -55
+KPX Atilde V -135
+KPX Atilde W -90
+KPX Atilde Y -105
+KPX Atilde Yacute -105
+KPX Atilde Ydieresis -105
+KPX Atilde quoteright -111
+KPX Atilde v -74
+KPX Atilde w -92
+KPX Atilde y -92
+KPX Atilde yacute -92
+KPX Atilde ydieresis -92
+KPX B A -35
+KPX B Aacute -35
+KPX B Abreve -35
+KPX B Acircumflex -35
+KPX B Adieresis -35
+KPX B Agrave -35
+KPX B Amacron -35
+KPX B Aogonek -35
+KPX B Aring -35
+KPX B Atilde -35
+KPX B U -10
+KPX B Uacute -10
+KPX B Ucircumflex -10
+KPX B Udieresis -10
+KPX B Ugrave -10
+KPX B Uhungarumlaut -10
+KPX B Umacron -10
+KPX B Uogonek -10
+KPX B Uring -10
+KPX D A -40
+KPX D Aacute -40
+KPX D Abreve -40
+KPX D Acircumflex -40
+KPX D Adieresis -40
+KPX D Agrave -40
+KPX D Amacron -40
+KPX D Aogonek -40
+KPX D Aring -40
+KPX D Atilde -40
+KPX D V -40
+KPX D W -30
+KPX D Y -55
+KPX D Yacute -55
+KPX D Ydieresis -55
+KPX Dcaron A -40
+KPX Dcaron Aacute -40
+KPX Dcaron Abreve -40
+KPX Dcaron Acircumflex -40
+KPX Dcaron Adieresis -40
+KPX Dcaron Agrave -40
+KPX Dcaron Amacron -40
+KPX Dcaron Aogonek -40
+KPX Dcaron Aring -40
+KPX Dcaron Atilde -40
+KPX Dcaron V -40
+KPX Dcaron W -30
+KPX Dcaron Y -55
+KPX Dcaron Yacute -55
+KPX Dcaron Ydieresis -55
+KPX Dcroat A -40
+KPX Dcroat Aacute -40
+KPX Dcroat Abreve -40
+KPX Dcroat Acircumflex -40
+KPX Dcroat Adieresis -40
+KPX Dcroat Agrave -40
+KPX Dcroat Amacron -40
+KPX Dcroat Aogonek -40
+KPX Dcroat Aring -40
+KPX Dcroat Atilde -40
+KPX Dcroat V -40
+KPX Dcroat W -30
+KPX Dcroat Y -55
+KPX Dcroat Yacute -55
+KPX Dcroat Ydieresis -55
+KPX F A -74
+KPX F Aacute -74
+KPX F Abreve -74
+KPX F Acircumflex -74
+KPX F Adieresis -74
+KPX F Agrave -74
+KPX F Amacron -74
+KPX F Aogonek -74
+KPX F Aring -74
+KPX F Atilde -74
+KPX F a -15
+KPX F aacute -15
+KPX F abreve -15
+KPX F acircumflex -15
+KPX F adieresis -15
+KPX F agrave -15
+KPX F amacron -15
+KPX F aogonek -15
+KPX F aring -15
+KPX F atilde -15
+KPX F comma -80
+KPX F o -15
+KPX F oacute -15
+KPX F ocircumflex -15
+KPX F odieresis -15
+KPX F ograve -15
+KPX F ohungarumlaut -15
+KPX F omacron -15
+KPX F oslash -15
+KPX F otilde -15
+KPX F period -80
+KPX J A -60
+KPX J Aacute -60
+KPX J Abreve -60
+KPX J Acircumflex -60
+KPX J Adieresis -60
+KPX J Agrave -60
+KPX J Amacron -60
+KPX J Aogonek -60
+KPX J Aring -60
+KPX J Atilde -60
+KPX K O -30
+KPX K Oacute -30
+KPX K Ocircumflex -30
+KPX K Odieresis -30
+KPX K Ograve -30
+KPX K Ohungarumlaut -30
+KPX K Omacron -30
+KPX K Oslash -30
+KPX K Otilde -30
+KPX K e -25
+KPX K eacute -25
+KPX K ecaron -25
+KPX K ecircumflex -25
+KPX K edieresis -25
+KPX K edotaccent -25
+KPX K egrave -25
+KPX K emacron -25
+KPX K eogonek -25
+KPX K o -35
+KPX K oacute -35
+KPX K ocircumflex -35
+KPX K odieresis -35
+KPX K ograve -35
+KPX K ohungarumlaut -35
+KPX K omacron -35
+KPX K oslash -35
+KPX K otilde -35
+KPX K u -15
+KPX K uacute -15
+KPX K ucircumflex -15
+KPX K udieresis -15
+KPX K ugrave -15
+KPX K uhungarumlaut -15
+KPX K umacron -15
+KPX K uogonek -15
+KPX K uring -15
+KPX K y -25
+KPX K yacute -25
+KPX K ydieresis -25
+KPX Kcommaaccent O -30
+KPX Kcommaaccent Oacute -30
+KPX Kcommaaccent Ocircumflex -30
+KPX Kcommaaccent Odieresis -30
+KPX Kcommaaccent Ograve -30
+KPX Kcommaaccent Ohungarumlaut -30
+KPX Kcommaaccent Omacron -30
+KPX Kcommaaccent Oslash -30
+KPX Kcommaaccent Otilde -30
+KPX Kcommaaccent e -25
+KPX Kcommaaccent eacute -25
+KPX Kcommaaccent ecaron -25
+KPX Kcommaaccent ecircumflex -25
+KPX Kcommaaccent edieresis -25
+KPX Kcommaaccent edotaccent -25
+KPX Kcommaaccent egrave -25
+KPX Kcommaaccent emacron -25
+KPX Kcommaaccent eogonek -25
+KPX Kcommaaccent o -35
+KPX Kcommaaccent oacute -35
+KPX Kcommaaccent ocircumflex -35
+KPX Kcommaaccent odieresis -35
+KPX Kcommaaccent ograve -35
+KPX Kcommaaccent ohungarumlaut -35
+KPX Kcommaaccent omacron -35
+KPX Kcommaaccent oslash -35
+KPX Kcommaaccent otilde -35
+KPX Kcommaaccent u -15
+KPX Kcommaaccent uacute -15
+KPX Kcommaaccent ucircumflex -15
+KPX Kcommaaccent udieresis -15
+KPX Kcommaaccent ugrave -15
+KPX Kcommaaccent uhungarumlaut -15
+KPX Kcommaaccent umacron -15
+KPX Kcommaaccent uogonek -15
+KPX Kcommaaccent uring -15
+KPX Kcommaaccent y -25
+KPX Kcommaaccent yacute -25
+KPX Kcommaaccent ydieresis -25
+KPX L T -92
+KPX L Tcaron -92
+KPX L Tcommaaccent -92
+KPX L V -100
+KPX L W -74
+KPX L Y -100
+KPX L Yacute -100
+KPX L Ydieresis -100
+KPX L quoteright -92
+KPX L y -55
+KPX L yacute -55
+KPX L ydieresis -55
+KPX Lacute T -92
+KPX Lacute Tcaron -92
+KPX Lacute Tcommaaccent -92
+KPX Lacute V -100
+KPX Lacute W -74
+KPX Lacute Y -100
+KPX Lacute Yacute -100
+KPX Lacute Ydieresis -100
+KPX Lacute quoteright -92
+KPX Lacute y -55
+KPX Lacute yacute -55
+KPX Lacute ydieresis -55
+KPX Lcaron quoteright -92
+KPX Lcaron y -55
+KPX Lcaron yacute -55
+KPX Lcaron ydieresis -55
+KPX Lcommaaccent T -92
+KPX Lcommaaccent Tcaron -92
+KPX Lcommaaccent Tcommaaccent -92
+KPX Lcommaaccent V -100
+KPX Lcommaaccent W -74
+KPX Lcommaaccent Y -100
+KPX Lcommaaccent Yacute -100
+KPX Lcommaaccent Ydieresis -100
+KPX Lcommaaccent quoteright -92
+KPX Lcommaaccent y -55
+KPX Lcommaaccent yacute -55
+KPX Lcommaaccent ydieresis -55
+KPX Lslash T -92
+KPX Lslash Tcaron -92
+KPX Lslash Tcommaaccent -92
+KPX Lslash V -100
+KPX Lslash W -74
+KPX Lslash Y -100
+KPX Lslash Yacute -100
+KPX Lslash Ydieresis -100
+KPX Lslash quoteright -92
+KPX Lslash y -55
+KPX Lslash yacute -55
+KPX Lslash ydieresis -55
+KPX N A -35
+KPX N Aacute -35
+KPX N Abreve -35
+KPX N Acircumflex -35
+KPX N Adieresis -35
+KPX N Agrave -35
+KPX N Amacron -35
+KPX N Aogonek -35
+KPX N Aring -35
+KPX N Atilde -35
+KPX Nacute A -35
+KPX Nacute Aacute -35
+KPX Nacute Abreve -35
+KPX Nacute Acircumflex -35
+KPX Nacute Adieresis -35
+KPX Nacute Agrave -35
+KPX Nacute Amacron -35
+KPX Nacute Aogonek -35
+KPX Nacute Aring -35
+KPX Nacute Atilde -35
+KPX Ncaron A -35
+KPX Ncaron Aacute -35
+KPX Ncaron Abreve -35
+KPX Ncaron Acircumflex -35
+KPX Ncaron Adieresis -35
+KPX Ncaron Agrave -35
+KPX Ncaron Amacron -35
+KPX Ncaron Aogonek -35
+KPX Ncaron Aring -35
+KPX Ncaron Atilde -35
+KPX Ncommaaccent A -35
+KPX Ncommaaccent Aacute -35
+KPX Ncommaaccent Abreve -35
+KPX Ncommaaccent Acircumflex -35
+KPX Ncommaaccent Adieresis -35
+KPX Ncommaaccent Agrave -35
+KPX Ncommaaccent Amacron -35
+KPX Ncommaaccent Aogonek -35
+KPX Ncommaaccent Aring -35
+KPX Ncommaaccent Atilde -35
+KPX Ntilde A -35
+KPX Ntilde Aacute -35
+KPX Ntilde Abreve -35
+KPX Ntilde Acircumflex -35
+KPX Ntilde Adieresis -35
+KPX Ntilde Agrave -35
+KPX Ntilde Amacron -35
+KPX Ntilde Aogonek -35
+KPX Ntilde Aring -35
+KPX Ntilde Atilde -35
+KPX O A -35
+KPX O Aacute -35
+KPX O Abreve -35
+KPX O Acircumflex -35
+KPX O Adieresis -35
+KPX O Agrave -35
+KPX O Amacron -35
+KPX O Aogonek -35
+KPX O Aring -35
+KPX O Atilde -35
+KPX O T -40
+KPX O Tcaron -40
+KPX O Tcommaaccent -40
+KPX O V -50
+KPX O W -35
+KPX O X -40
+KPX O Y -50
+KPX O Yacute -50
+KPX O Ydieresis -50
+KPX Oacute A -35
+KPX Oacute Aacute -35
+KPX Oacute Abreve -35
+KPX Oacute Acircumflex -35
+KPX Oacute Adieresis -35
+KPX Oacute Agrave -35
+KPX Oacute Amacron -35
+KPX Oacute Aogonek -35
+KPX Oacute Aring -35
+KPX Oacute Atilde -35
+KPX Oacute T -40
+KPX Oacute Tcaron -40
+KPX Oacute Tcommaaccent -40
+KPX Oacute V -50
+KPX Oacute W -35
+KPX Oacute X -40
+KPX Oacute Y -50
+KPX Oacute Yacute -50
+KPX Oacute Ydieresis -50
+KPX Ocircumflex A -35
+KPX Ocircumflex Aacute -35
+KPX Ocircumflex Abreve -35
+KPX Ocircumflex Acircumflex -35
+KPX Ocircumflex Adieresis -35
+KPX Ocircumflex Agrave -35
+KPX Ocircumflex Amacron -35
+KPX Ocircumflex Aogonek -35
+KPX Ocircumflex Aring -35
+KPX Ocircumflex Atilde -35
+KPX Ocircumflex T -40
+KPX Ocircumflex Tcaron -40
+KPX Ocircumflex Tcommaaccent -40
+KPX Ocircumflex V -50
+KPX Ocircumflex W -35
+KPX Ocircumflex X -40
+KPX Ocircumflex Y -50
+KPX Ocircumflex Yacute -50
+KPX Ocircumflex Ydieresis -50
+KPX Odieresis A -35
+KPX Odieresis Aacute -35
+KPX Odieresis Abreve -35
+KPX Odieresis Acircumflex -35
+KPX Odieresis Adieresis -35
+KPX Odieresis Agrave -35
+KPX Odieresis Amacron -35
+KPX Odieresis Aogonek -35
+KPX Odieresis Aring -35
+KPX Odieresis Atilde -35
+KPX Odieresis T -40
+KPX Odieresis Tcaron -40
+KPX Odieresis Tcommaaccent -40
+KPX Odieresis V -50
+KPX Odieresis W -35
+KPX Odieresis X -40
+KPX Odieresis Y -50
+KPX Odieresis Yacute -50
+KPX Odieresis Ydieresis -50
+KPX Ograve A -35
+KPX Ograve Aacute -35
+KPX Ograve Abreve -35
+KPX Ograve Acircumflex -35
+KPX Ograve Adieresis -35
+KPX Ograve Agrave -35
+KPX Ograve Amacron -35
+KPX Ograve Aogonek -35
+KPX Ograve Aring -35
+KPX Ograve Atilde -35
+KPX Ograve T -40
+KPX Ograve Tcaron -40
+KPX Ograve Tcommaaccent -40
+KPX Ograve V -50
+KPX Ograve W -35
+KPX Ograve X -40
+KPX Ograve Y -50
+KPX Ograve Yacute -50
+KPX Ograve Ydieresis -50
+KPX Ohungarumlaut A -35
+KPX Ohungarumlaut Aacute -35
+KPX Ohungarumlaut Abreve -35
+KPX Ohungarumlaut Acircumflex -35
+KPX Ohungarumlaut Adieresis -35
+KPX Ohungarumlaut Agrave -35
+KPX Ohungarumlaut Amacron -35
+KPX Ohungarumlaut Aogonek -35
+KPX Ohungarumlaut Aring -35
+KPX Ohungarumlaut Atilde -35
+KPX Ohungarumlaut T -40
+KPX Ohungarumlaut Tcaron -40
+KPX Ohungarumlaut Tcommaaccent -40
+KPX Ohungarumlaut V -50
+KPX Ohungarumlaut W -35
+KPX Ohungarumlaut X -40
+KPX Ohungarumlaut Y -50
+KPX Ohungarumlaut Yacute -50
+KPX Ohungarumlaut Ydieresis -50
+KPX Omacron A -35
+KPX Omacron Aacute -35
+KPX Omacron Abreve -35
+KPX Omacron Acircumflex -35
+KPX Omacron Adieresis -35
+KPX Omacron Agrave -35
+KPX Omacron Amacron -35
+KPX Omacron Aogonek -35
+KPX Omacron Aring -35
+KPX Omacron Atilde -35
+KPX Omacron T -40
+KPX Omacron Tcaron -40
+KPX Omacron Tcommaaccent -40
+KPX Omacron V -50
+KPX Omacron W -35
+KPX Omacron X -40
+KPX Omacron Y -50
+KPX Omacron Yacute -50
+KPX Omacron Ydieresis -50
+KPX Oslash A -35
+KPX Oslash Aacute -35
+KPX Oslash Abreve -35
+KPX Oslash Acircumflex -35
+KPX Oslash Adieresis -35
+KPX Oslash Agrave -35
+KPX Oslash Amacron -35
+KPX Oslash Aogonek -35
+KPX Oslash Aring -35
+KPX Oslash Atilde -35
+KPX Oslash T -40
+KPX Oslash Tcaron -40
+KPX Oslash Tcommaaccent -40
+KPX Oslash V -50
+KPX Oslash W -35
+KPX Oslash X -40
+KPX Oslash Y -50
+KPX Oslash Yacute -50
+KPX Oslash Ydieresis -50
+KPX Otilde A -35
+KPX Otilde Aacute -35
+KPX Otilde Abreve -35
+KPX Otilde Acircumflex -35
+KPX Otilde Adieresis -35
+KPX Otilde Agrave -35
+KPX Otilde Amacron -35
+KPX Otilde Aogonek -35
+KPX Otilde Aring -35
+KPX Otilde Atilde -35
+KPX Otilde T -40
+KPX Otilde Tcaron -40
+KPX Otilde Tcommaaccent -40
+KPX Otilde V -50
+KPX Otilde W -35
+KPX Otilde X -40
+KPX Otilde Y -50
+KPX Otilde Yacute -50
+KPX Otilde Ydieresis -50
+KPX P A -92
+KPX P Aacute -92
+KPX P Abreve -92
+KPX P Acircumflex -92
+KPX P Adieresis -92
+KPX P Agrave -92
+KPX P Amacron -92
+KPX P Aogonek -92
+KPX P Aring -92
+KPX P Atilde -92
+KPX P a -15
+KPX P aacute -15
+KPX P abreve -15
+KPX P acircumflex -15
+KPX P adieresis -15
+KPX P agrave -15
+KPX P amacron -15
+KPX P aogonek -15
+KPX P aring -15
+KPX P atilde -15
+KPX P comma -111
+KPX P period -111
+KPX Q U -10
+KPX Q Uacute -10
+KPX Q Ucircumflex -10
+KPX Q Udieresis -10
+KPX Q Ugrave -10
+KPX Q Uhungarumlaut -10
+KPX Q Umacron -10
+KPX Q Uogonek -10
+KPX Q Uring -10
+KPX R O -40
+KPX R Oacute -40
+KPX R Ocircumflex -40
+KPX R Odieresis -40
+KPX R Ograve -40
+KPX R Ohungarumlaut -40
+KPX R Omacron -40
+KPX R Oslash -40
+KPX R Otilde -40
+KPX R T -60
+KPX R Tcaron -60
+KPX R Tcommaaccent -60
+KPX R U -40
+KPX R Uacute -40
+KPX R Ucircumflex -40
+KPX R Udieresis -40
+KPX R Ugrave -40
+KPX R Uhungarumlaut -40
+KPX R Umacron -40
+KPX R Uogonek -40
+KPX R Uring -40
+KPX R V -80
+KPX R W -55
+KPX R Y -65
+KPX R Yacute -65
+KPX R Ydieresis -65
+KPX Racute O -40
+KPX Racute Oacute -40
+KPX Racute Ocircumflex -40
+KPX Racute Odieresis -40
+KPX Racute Ograve -40
+KPX Racute Ohungarumlaut -40
+KPX Racute Omacron -40
+KPX Racute Oslash -40
+KPX Racute Otilde -40
+KPX Racute T -60
+KPX Racute Tcaron -60
+KPX Racute Tcommaaccent -60
+KPX Racute U -40
+KPX Racute Uacute -40
+KPX Racute Ucircumflex -40
+KPX Racute Udieresis -40
+KPX Racute Ugrave -40
+KPX Racute Uhungarumlaut -40
+KPX Racute Umacron -40
+KPX Racute Uogonek -40
+KPX Racute Uring -40
+KPX Racute V -80
+KPX Racute W -55
+KPX Racute Y -65
+KPX Racute Yacute -65
+KPX Racute Ydieresis -65
+KPX Rcaron O -40
+KPX Rcaron Oacute -40
+KPX Rcaron Ocircumflex -40
+KPX Rcaron Odieresis -40
+KPX Rcaron Ograve -40
+KPX Rcaron Ohungarumlaut -40
+KPX Rcaron Omacron -40
+KPX Rcaron Oslash -40
+KPX Rcaron Otilde -40
+KPX Rcaron T -60
+KPX Rcaron Tcaron -60
+KPX Rcaron Tcommaaccent -60
+KPX Rcaron U -40
+KPX Rcaron Uacute -40
+KPX Rcaron Ucircumflex -40
+KPX Rcaron Udieresis -40
+KPX Rcaron Ugrave -40
+KPX Rcaron Uhungarumlaut -40
+KPX Rcaron Umacron -40
+KPX Rcaron Uogonek -40
+KPX Rcaron Uring -40
+KPX Rcaron V -80
+KPX Rcaron W -55
+KPX Rcaron Y -65
+KPX Rcaron Yacute -65
+KPX Rcaron Ydieresis -65
+KPX Rcommaaccent O -40
+KPX Rcommaaccent Oacute -40
+KPX Rcommaaccent Ocircumflex -40
+KPX Rcommaaccent Odieresis -40
+KPX Rcommaaccent Ograve -40
+KPX Rcommaaccent Ohungarumlaut -40
+KPX Rcommaaccent Omacron -40
+KPX Rcommaaccent Oslash -40
+KPX Rcommaaccent Otilde -40
+KPX Rcommaaccent T -60
+KPX Rcommaaccent Tcaron -60
+KPX Rcommaaccent Tcommaaccent -60
+KPX Rcommaaccent U -40
+KPX Rcommaaccent Uacute -40
+KPX Rcommaaccent Ucircumflex -40
+KPX Rcommaaccent Udieresis -40
+KPX Rcommaaccent Ugrave -40
+KPX Rcommaaccent Uhungarumlaut -40
+KPX Rcommaaccent Umacron -40
+KPX Rcommaaccent Uogonek -40
+KPX Rcommaaccent Uring -40
+KPX Rcommaaccent V -80
+KPX Rcommaaccent W -55
+KPX Rcommaaccent Y -65
+KPX Rcommaaccent Yacute -65
+KPX Rcommaaccent Ydieresis -65
+KPX T A -93
+KPX T Aacute -93
+KPX T Abreve -93
+KPX T Acircumflex -93
+KPX T Adieresis -93
+KPX T Agrave -93
+KPX T Amacron -93
+KPX T Aogonek -93
+KPX T Aring -93
+KPX T Atilde -93
+KPX T O -18
+KPX T Oacute -18
+KPX T Ocircumflex -18
+KPX T Odieresis -18
+KPX T Ograve -18
+KPX T Ohungarumlaut -18
+KPX T Omacron -18
+KPX T Oslash -18
+KPX T Otilde -18
+KPX T a -80
+KPX T aacute -80
+KPX T abreve -80
+KPX T acircumflex -80
+KPX T adieresis -40
+KPX T agrave -40
+KPX T amacron -40
+KPX T aogonek -80
+KPX T aring -80
+KPX T atilde -40
+KPX T colon -50
+KPX T comma -74
+KPX T e -70
+KPX T eacute -70
+KPX T ecaron -70
+KPX T ecircumflex -70
+KPX T edieresis -30
+KPX T edotaccent -70
+KPX T egrave -70
+KPX T emacron -30
+KPX T eogonek -70
+KPX T hyphen -92
+KPX T i -35
+KPX T iacute -35
+KPX T iogonek -35
+KPX T o -80
+KPX T oacute -80
+KPX T ocircumflex -80
+KPX T odieresis -80
+KPX T ograve -80
+KPX T ohungarumlaut -80
+KPX T omacron -80
+KPX T oslash -80
+KPX T otilde -80
+KPX T period -74
+KPX T r -35
+KPX T racute -35
+KPX T rcaron -35
+KPX T rcommaaccent -35
+KPX T semicolon -55
+KPX T u -45
+KPX T uacute -45
+KPX T ucircumflex -45
+KPX T udieresis -45
+KPX T ugrave -45
+KPX T uhungarumlaut -45
+KPX T umacron -45
+KPX T uogonek -45
+KPX T uring -45
+KPX T w -80
+KPX T y -80
+KPX T yacute -80
+KPX T ydieresis -80
+KPX Tcaron A -93
+KPX Tcaron Aacute -93
+KPX Tcaron Abreve -93
+KPX Tcaron Acircumflex -93
+KPX Tcaron Adieresis -93
+KPX Tcaron Agrave -93
+KPX Tcaron Amacron -93
+KPX Tcaron Aogonek -93
+KPX Tcaron Aring -93
+KPX Tcaron Atilde -93
+KPX Tcaron O -18
+KPX Tcaron Oacute -18
+KPX Tcaron Ocircumflex -18
+KPX Tcaron Odieresis -18
+KPX Tcaron Ograve -18
+KPX Tcaron Ohungarumlaut -18
+KPX Tcaron Omacron -18
+KPX Tcaron Oslash -18
+KPX Tcaron Otilde -18
+KPX Tcaron a -80
+KPX Tcaron aacute -80
+KPX Tcaron abreve -80
+KPX Tcaron acircumflex -80
+KPX Tcaron adieresis -40
+KPX Tcaron agrave -40
+KPX Tcaron amacron -40
+KPX Tcaron aogonek -80
+KPX Tcaron aring -80
+KPX Tcaron atilde -40
+KPX Tcaron colon -50
+KPX Tcaron comma -74
+KPX Tcaron e -70
+KPX Tcaron eacute -70
+KPX Tcaron ecaron -70
+KPX Tcaron ecircumflex -30
+KPX Tcaron edieresis -30
+KPX Tcaron edotaccent -70
+KPX Tcaron egrave -70
+KPX Tcaron emacron -30
+KPX Tcaron eogonek -70
+KPX Tcaron hyphen -92
+KPX Tcaron i -35
+KPX Tcaron iacute -35
+KPX Tcaron iogonek -35
+KPX Tcaron o -80
+KPX Tcaron oacute -80
+KPX Tcaron ocircumflex -80
+KPX Tcaron odieresis -80
+KPX Tcaron ograve -80
+KPX Tcaron ohungarumlaut -80
+KPX Tcaron omacron -80
+KPX Tcaron oslash -80
+KPX Tcaron otilde -80
+KPX Tcaron period -74
+KPX Tcaron r -35
+KPX Tcaron racute -35
+KPX Tcaron rcaron -35
+KPX Tcaron rcommaaccent -35
+KPX Tcaron semicolon -55
+KPX Tcaron u -45
+KPX Tcaron uacute -45
+KPX Tcaron ucircumflex -45
+KPX Tcaron udieresis -45
+KPX Tcaron ugrave -45
+KPX Tcaron uhungarumlaut -45
+KPX Tcaron umacron -45
+KPX Tcaron uogonek -45
+KPX Tcaron uring -45
+KPX Tcaron w -80
+KPX Tcaron y -80
+KPX Tcaron yacute -80
+KPX Tcaron ydieresis -80
+KPX Tcommaaccent A -93
+KPX Tcommaaccent Aacute -93
+KPX Tcommaaccent Abreve -93
+KPX Tcommaaccent Acircumflex -93
+KPX Tcommaaccent Adieresis -93
+KPX Tcommaaccent Agrave -93
+KPX Tcommaaccent Amacron -93
+KPX Tcommaaccent Aogonek -93
+KPX Tcommaaccent Aring -93
+KPX Tcommaaccent Atilde -93
+KPX Tcommaaccent O -18
+KPX Tcommaaccent Oacute -18
+KPX Tcommaaccent Ocircumflex -18
+KPX Tcommaaccent Odieresis -18
+KPX Tcommaaccent Ograve -18
+KPX Tcommaaccent Ohungarumlaut -18
+KPX Tcommaaccent Omacron -18
+KPX Tcommaaccent Oslash -18
+KPX Tcommaaccent Otilde -18
+KPX Tcommaaccent a -80
+KPX Tcommaaccent aacute -80
+KPX Tcommaaccent abreve -80
+KPX Tcommaaccent acircumflex -80
+KPX Tcommaaccent adieresis -40
+KPX Tcommaaccent agrave -40
+KPX Tcommaaccent amacron -40
+KPX Tcommaaccent aogonek -80
+KPX Tcommaaccent aring -80
+KPX Tcommaaccent atilde -40
+KPX Tcommaaccent colon -50
+KPX Tcommaaccent comma -74
+KPX Tcommaaccent e -70
+KPX Tcommaaccent eacute -70
+KPX Tcommaaccent ecaron -70
+KPX Tcommaaccent ecircumflex -30
+KPX Tcommaaccent edieresis -30
+KPX Tcommaaccent edotaccent -70
+KPX Tcommaaccent egrave -30
+KPX Tcommaaccent emacron -70
+KPX Tcommaaccent eogonek -70
+KPX Tcommaaccent hyphen -92
+KPX Tcommaaccent i -35
+KPX Tcommaaccent iacute -35
+KPX Tcommaaccent iogonek -35
+KPX Tcommaaccent o -80
+KPX Tcommaaccent oacute -80
+KPX Tcommaaccent ocircumflex -80
+KPX Tcommaaccent odieresis -80
+KPX Tcommaaccent ograve -80
+KPX Tcommaaccent ohungarumlaut -80
+KPX Tcommaaccent omacron -80
+KPX Tcommaaccent oslash -80
+KPX Tcommaaccent otilde -80
+KPX Tcommaaccent period -74
+KPX Tcommaaccent r -35
+KPX Tcommaaccent racute -35
+KPX Tcommaaccent rcaron -35
+KPX Tcommaaccent rcommaaccent -35
+KPX Tcommaaccent semicolon -55
+KPX Tcommaaccent u -45
+KPX Tcommaaccent uacute -45
+KPX Tcommaaccent ucircumflex -45
+KPX Tcommaaccent udieresis -45
+KPX Tcommaaccent ugrave -45
+KPX Tcommaaccent uhungarumlaut -45
+KPX Tcommaaccent umacron -45
+KPX Tcommaaccent uogonek -45
+KPX Tcommaaccent uring -45
+KPX Tcommaaccent w -80
+KPX Tcommaaccent y -80
+KPX Tcommaaccent yacute -80
+KPX Tcommaaccent ydieresis -80
+KPX U A -40
+KPX U Aacute -40
+KPX U Abreve -40
+KPX U Acircumflex -40
+KPX U Adieresis -40
+KPX U Agrave -40
+KPX U Amacron -40
+KPX U Aogonek -40
+KPX U Aring -40
+KPX U Atilde -40
+KPX Uacute A -40
+KPX Uacute Aacute -40
+KPX Uacute Abreve -40
+KPX Uacute Acircumflex -40
+KPX Uacute Adieresis -40
+KPX Uacute Agrave -40
+KPX Uacute Amacron -40
+KPX Uacute Aogonek -40
+KPX Uacute Aring -40
+KPX Uacute Atilde -40
+KPX Ucircumflex A -40
+KPX Ucircumflex Aacute -40
+KPX Ucircumflex Abreve -40
+KPX Ucircumflex Acircumflex -40
+KPX Ucircumflex Adieresis -40
+KPX Ucircumflex Agrave -40
+KPX Ucircumflex Amacron -40
+KPX Ucircumflex Aogonek -40
+KPX Ucircumflex Aring -40
+KPX Ucircumflex Atilde -40
+KPX Udieresis A -40
+KPX Udieresis Aacute -40
+KPX Udieresis Abreve -40
+KPX Udieresis Acircumflex -40
+KPX Udieresis Adieresis -40
+KPX Udieresis Agrave -40
+KPX Udieresis Amacron -40
+KPX Udieresis Aogonek -40
+KPX Udieresis Aring -40
+KPX Udieresis Atilde -40
+KPX Ugrave A -40
+KPX Ugrave Aacute -40
+KPX Ugrave Abreve -40
+KPX Ugrave Acircumflex -40
+KPX Ugrave Adieresis -40
+KPX Ugrave Agrave -40
+KPX Ugrave Amacron -40
+KPX Ugrave Aogonek -40
+KPX Ugrave Aring -40
+KPX Ugrave Atilde -40
+KPX Uhungarumlaut A -40
+KPX Uhungarumlaut Aacute -40
+KPX Uhungarumlaut Abreve -40
+KPX Uhungarumlaut Acircumflex -40
+KPX Uhungarumlaut Adieresis -40
+KPX Uhungarumlaut Agrave -40
+KPX Uhungarumlaut Amacron -40
+KPX Uhungarumlaut Aogonek -40
+KPX Uhungarumlaut Aring -40
+KPX Uhungarumlaut Atilde -40
+KPX Umacron A -40
+KPX Umacron Aacute -40
+KPX Umacron Abreve -40
+KPX Umacron Acircumflex -40
+KPX Umacron Adieresis -40
+KPX Umacron Agrave -40
+KPX Umacron Amacron -40
+KPX Umacron Aogonek -40
+KPX Umacron Aring -40
+KPX Umacron Atilde -40
+KPX Uogonek A -40
+KPX Uogonek Aacute -40
+KPX Uogonek Abreve -40
+KPX Uogonek Acircumflex -40
+KPX Uogonek Adieresis -40
+KPX Uogonek Agrave -40
+KPX Uogonek Amacron -40
+KPX Uogonek Aogonek -40
+KPX Uogonek Aring -40
+KPX Uogonek Atilde -40
+KPX Uring A -40
+KPX Uring Aacute -40
+KPX Uring Abreve -40
+KPX Uring Acircumflex -40
+KPX Uring Adieresis -40
+KPX Uring Agrave -40
+KPX Uring Amacron -40
+KPX Uring Aogonek -40
+KPX Uring Aring -40
+KPX Uring Atilde -40
+KPX V A -135
+KPX V Aacute -135
+KPX V Abreve -135
+KPX V Acircumflex -135
+KPX V Adieresis -135
+KPX V Agrave -135
+KPX V Amacron -135
+KPX V Aogonek -135
+KPX V Aring -135
+KPX V Atilde -135
+KPX V G -15
+KPX V Gbreve -15
+KPX V Gcommaaccent -15
+KPX V O -40
+KPX V Oacute -40
+KPX V Ocircumflex -40
+KPX V Odieresis -40
+KPX V Ograve -40
+KPX V Ohungarumlaut -40
+KPX V Omacron -40
+KPX V Oslash -40
+KPX V Otilde -40
+KPX V a -111
+KPX V aacute -111
+KPX V abreve -111
+KPX V acircumflex -71
+KPX V adieresis -71
+KPX V agrave -71
+KPX V amacron -71
+KPX V aogonek -111
+KPX V aring -111
+KPX V atilde -71
+KPX V colon -74
+KPX V comma -129
+KPX V e -111
+KPX V eacute -111
+KPX V ecaron -71
+KPX V ecircumflex -71
+KPX V edieresis -71
+KPX V edotaccent -111
+KPX V egrave -71
+KPX V emacron -71
+KPX V eogonek -111
+KPX V hyphen -100
+KPX V i -60
+KPX V iacute -60
+KPX V icircumflex -20
+KPX V idieresis -20
+KPX V igrave -20
+KPX V imacron -20
+KPX V iogonek -60
+KPX V o -129
+KPX V oacute -129
+KPX V ocircumflex -129
+KPX V odieresis -89
+KPX V ograve -89
+KPX V ohungarumlaut -129
+KPX V omacron -89
+KPX V oslash -129
+KPX V otilde -89
+KPX V period -129
+KPX V semicolon -74
+KPX V u -75
+KPX V uacute -75
+KPX V ucircumflex -75
+KPX V udieresis -75
+KPX V ugrave -75
+KPX V uhungarumlaut -75
+KPX V umacron -75
+KPX V uogonek -75
+KPX V uring -75
+KPX W A -120
+KPX W Aacute -120
+KPX W Abreve -120
+KPX W Acircumflex -120
+KPX W Adieresis -120
+KPX W Agrave -120
+KPX W Amacron -120
+KPX W Aogonek -120
+KPX W Aring -120
+KPX W Atilde -120
+KPX W O -10
+KPX W Oacute -10
+KPX W Ocircumflex -10
+KPX W Odieresis -10
+KPX W Ograve -10
+KPX W Ohungarumlaut -10
+KPX W Omacron -10
+KPX W Oslash -10
+KPX W Otilde -10
+KPX W a -80
+KPX W aacute -80
+KPX W abreve -80
+KPX W acircumflex -80
+KPX W adieresis -80
+KPX W agrave -80
+KPX W amacron -80
+KPX W aogonek -80
+KPX W aring -80
+KPX W atilde -80
+KPX W colon -37
+KPX W comma -92
+KPX W e -80
+KPX W eacute -80
+KPX W ecaron -80
+KPX W ecircumflex -80
+KPX W edieresis -40
+KPX W edotaccent -80
+KPX W egrave -40
+KPX W emacron -40
+KPX W eogonek -80
+KPX W hyphen -65
+KPX W i -40
+KPX W iacute -40
+KPX W iogonek -40
+KPX W o -80
+KPX W oacute -80
+KPX W ocircumflex -80
+KPX W odieresis -80
+KPX W ograve -80
+KPX W ohungarumlaut -80
+KPX W omacron -80
+KPX W oslash -80
+KPX W otilde -80
+KPX W period -92
+KPX W semicolon -37
+KPX W u -50
+KPX W uacute -50
+KPX W ucircumflex -50
+KPX W udieresis -50
+KPX W ugrave -50
+KPX W uhungarumlaut -50
+KPX W umacron -50
+KPX W uogonek -50
+KPX W uring -50
+KPX W y -73
+KPX W yacute -73
+KPX W ydieresis -73
+KPX Y A -120
+KPX Y Aacute -120
+KPX Y Abreve -120
+KPX Y Acircumflex -120
+KPX Y Adieresis -120
+KPX Y Agrave -120
+KPX Y Amacron -120
+KPX Y Aogonek -120
+KPX Y Aring -120
+KPX Y Atilde -120
+KPX Y O -30
+KPX Y Oacute -30
+KPX Y Ocircumflex -30
+KPX Y Odieresis -30
+KPX Y Ograve -30
+KPX Y Ohungarumlaut -30
+KPX Y Omacron -30
+KPX Y Oslash -30
+KPX Y Otilde -30
+KPX Y a -100
+KPX Y aacute -100
+KPX Y abreve -100
+KPX Y acircumflex -100
+KPX Y adieresis -60
+KPX Y agrave -60
+KPX Y amacron -60
+KPX Y aogonek -100
+KPX Y aring -100
+KPX Y atilde -60
+KPX Y colon -92
+KPX Y comma -129
+KPX Y e -100
+KPX Y eacute -100
+KPX Y ecaron -100
+KPX Y ecircumflex -100
+KPX Y edieresis -60
+KPX Y edotaccent -100
+KPX Y egrave -60
+KPX Y emacron -60
+KPX Y eogonek -100
+KPX Y hyphen -111
+KPX Y i -55
+KPX Y iacute -55
+KPX Y iogonek -55
+KPX Y o -110
+KPX Y oacute -110
+KPX Y ocircumflex -110
+KPX Y odieresis -70
+KPX Y ograve -70
+KPX Y ohungarumlaut -110
+KPX Y omacron -70
+KPX Y oslash -110
+KPX Y otilde -70
+KPX Y period -129
+KPX Y semicolon -92
+KPX Y u -111
+KPX Y uacute -111
+KPX Y ucircumflex -111
+KPX Y udieresis -71
+KPX Y ugrave -71
+KPX Y uhungarumlaut -111
+KPX Y umacron -71
+KPX Y uogonek -111
+KPX Y uring -111
+KPX Yacute A -120
+KPX Yacute Aacute -120
+KPX Yacute Abreve -120
+KPX Yacute Acircumflex -120
+KPX Yacute Adieresis -120
+KPX Yacute Agrave -120
+KPX Yacute Amacron -120
+KPX Yacute Aogonek -120
+KPX Yacute Aring -120
+KPX Yacute Atilde -120
+KPX Yacute O -30
+KPX Yacute Oacute -30
+KPX Yacute Ocircumflex -30
+KPX Yacute Odieresis -30
+KPX Yacute Ograve -30
+KPX Yacute Ohungarumlaut -30
+KPX Yacute Omacron -30
+KPX Yacute Oslash -30
+KPX Yacute Otilde -30
+KPX Yacute a -100
+KPX Yacute aacute -100
+KPX Yacute abreve -100
+KPX Yacute acircumflex -100
+KPX Yacute adieresis -60
+KPX Yacute agrave -60
+KPX Yacute amacron -60
+KPX Yacute aogonek -100
+KPX Yacute aring -100
+KPX Yacute atilde -60
+KPX Yacute colon -92
+KPX Yacute comma -129
+KPX Yacute e -100
+KPX Yacute eacute -100
+KPX Yacute ecaron -100
+KPX Yacute ecircumflex -100
+KPX Yacute edieresis -60
+KPX Yacute edotaccent -100
+KPX Yacute egrave -60
+KPX Yacute emacron -60
+KPX Yacute eogonek -100
+KPX Yacute hyphen -111
+KPX Yacute i -55
+KPX Yacute iacute -55
+KPX Yacute iogonek -55
+KPX Yacute o -110
+KPX Yacute oacute -110
+KPX Yacute ocircumflex -110
+KPX Yacute odieresis -70
+KPX Yacute ograve -70
+KPX Yacute ohungarumlaut -110
+KPX Yacute omacron -70
+KPX Yacute oslash -110
+KPX Yacute otilde -70
+KPX Yacute period -129
+KPX Yacute semicolon -92
+KPX Yacute u -111
+KPX Yacute uacute -111
+KPX Yacute ucircumflex -111
+KPX Yacute udieresis -71
+KPX Yacute ugrave -71
+KPX Yacute uhungarumlaut -111
+KPX Yacute umacron -71
+KPX Yacute uogonek -111
+KPX Yacute uring -111
+KPX Ydieresis A -120
+KPX Ydieresis Aacute -120
+KPX Ydieresis Abreve -120
+KPX Ydieresis Acircumflex -120
+KPX Ydieresis Adieresis -120
+KPX Ydieresis Agrave -120
+KPX Ydieresis Amacron -120
+KPX Ydieresis Aogonek -120
+KPX Ydieresis Aring -120
+KPX Ydieresis Atilde -120
+KPX Ydieresis O -30
+KPX Ydieresis Oacute -30
+KPX Ydieresis Ocircumflex -30
+KPX Ydieresis Odieresis -30
+KPX Ydieresis Ograve -30
+KPX Ydieresis Ohungarumlaut -30
+KPX Ydieresis Omacron -30
+KPX Ydieresis Oslash -30
+KPX Ydieresis Otilde -30
+KPX Ydieresis a -100
+KPX Ydieresis aacute -100
+KPX Ydieresis abreve -100
+KPX Ydieresis acircumflex -100
+KPX Ydieresis adieresis -60
+KPX Ydieresis agrave -60
+KPX Ydieresis amacron -60
+KPX Ydieresis aogonek -100
+KPX Ydieresis aring -100
+KPX Ydieresis atilde -100
+KPX Ydieresis colon -92
+KPX Ydieresis comma -129
+KPX Ydieresis e -100
+KPX Ydieresis eacute -100
+KPX Ydieresis ecaron -100
+KPX Ydieresis ecircumflex -100
+KPX Ydieresis edieresis -60
+KPX Ydieresis edotaccent -100
+KPX Ydieresis egrave -60
+KPX Ydieresis emacron -60
+KPX Ydieresis eogonek -100
+KPX Ydieresis hyphen -111
+KPX Ydieresis i -55
+KPX Ydieresis iacute -55
+KPX Ydieresis iogonek -55
+KPX Ydieresis o -110
+KPX Ydieresis oacute -110
+KPX Ydieresis ocircumflex -110
+KPX Ydieresis odieresis -70
+KPX Ydieresis ograve -70
+KPX Ydieresis ohungarumlaut -110
+KPX Ydieresis omacron -70
+KPX Ydieresis oslash -110
+KPX Ydieresis otilde -70
+KPX Ydieresis period -129
+KPX Ydieresis semicolon -92
+KPX Ydieresis u -111
+KPX Ydieresis uacute -111
+KPX Ydieresis ucircumflex -111
+KPX Ydieresis udieresis -71
+KPX Ydieresis ugrave -71
+KPX Ydieresis uhungarumlaut -111
+KPX Ydieresis umacron -71
+KPX Ydieresis uogonek -111
+KPX Ydieresis uring -111
+KPX a v -20
+KPX a w -15
+KPX aacute v -20
+KPX aacute w -15
+KPX abreve v -20
+KPX abreve w -15
+KPX acircumflex v -20
+KPX acircumflex w -15
+KPX adieresis v -20
+KPX adieresis w -15
+KPX agrave v -20
+KPX agrave w -15
+KPX amacron v -20
+KPX amacron w -15
+KPX aogonek v -20
+KPX aogonek w -15
+KPX aring v -20
+KPX aring w -15
+KPX atilde v -20
+KPX atilde w -15
+KPX b period -40
+KPX b u -20
+KPX b uacute -20
+KPX b ucircumflex -20
+KPX b udieresis -20
+KPX b ugrave -20
+KPX b uhungarumlaut -20
+KPX b umacron -20
+KPX b uogonek -20
+KPX b uring -20
+KPX b v -15
+KPX c y -15
+KPX c yacute -15
+KPX c ydieresis -15
+KPX cacute y -15
+KPX cacute yacute -15
+KPX cacute ydieresis -15
+KPX ccaron y -15
+KPX ccaron yacute -15
+KPX ccaron ydieresis -15
+KPX ccedilla y -15
+KPX ccedilla yacute -15
+KPX ccedilla ydieresis -15
+KPX comma quotedblright -70
+KPX comma quoteright -70
+KPX e g -15
+KPX e gbreve -15
+KPX e gcommaaccent -15
+KPX e v -25
+KPX e w -25
+KPX e x -15
+KPX e y -15
+KPX e yacute -15
+KPX e ydieresis -15
+KPX eacute g -15
+KPX eacute gbreve -15
+KPX eacute gcommaaccent -15
+KPX eacute v -25
+KPX eacute w -25
+KPX eacute x -15
+KPX eacute y -15
+KPX eacute yacute -15
+KPX eacute ydieresis -15
+KPX ecaron g -15
+KPX ecaron gbreve -15
+KPX ecaron gcommaaccent -15
+KPX ecaron v -25
+KPX ecaron w -25
+KPX ecaron x -15
+KPX ecaron y -15
+KPX ecaron yacute -15
+KPX ecaron ydieresis -15
+KPX ecircumflex g -15
+KPX ecircumflex gbreve -15
+KPX ecircumflex gcommaaccent -15
+KPX ecircumflex v -25
+KPX ecircumflex w -25
+KPX ecircumflex x -15
+KPX ecircumflex y -15
+KPX ecircumflex yacute -15
+KPX ecircumflex ydieresis -15
+KPX edieresis g -15
+KPX edieresis gbreve -15
+KPX edieresis gcommaaccent -15
+KPX edieresis v -25
+KPX edieresis w -25
+KPX edieresis x -15
+KPX edieresis y -15
+KPX edieresis yacute -15
+KPX edieresis ydieresis -15
+KPX edotaccent g -15
+KPX edotaccent gbreve -15
+KPX edotaccent gcommaaccent -15
+KPX edotaccent v -25
+KPX edotaccent w -25
+KPX edotaccent x -15
+KPX edotaccent y -15
+KPX edotaccent yacute -15
+KPX edotaccent ydieresis -15
+KPX egrave g -15
+KPX egrave gbreve -15
+KPX egrave gcommaaccent -15
+KPX egrave v -25
+KPX egrave w -25
+KPX egrave x -15
+KPX egrave y -15
+KPX egrave yacute -15
+KPX egrave ydieresis -15
+KPX emacron g -15
+KPX emacron gbreve -15
+KPX emacron gcommaaccent -15
+KPX emacron v -25
+KPX emacron w -25
+KPX emacron x -15
+KPX emacron y -15
+KPX emacron yacute -15
+KPX emacron ydieresis -15
+KPX eogonek g -15
+KPX eogonek gbreve -15
+KPX eogonek gcommaaccent -15
+KPX eogonek v -25
+KPX eogonek w -25
+KPX eogonek x -15
+KPX eogonek y -15
+KPX eogonek yacute -15
+KPX eogonek ydieresis -15
+KPX f a -10
+KPX f aacute -10
+KPX f abreve -10
+KPX f acircumflex -10
+KPX f adieresis -10
+KPX f agrave -10
+KPX f amacron -10
+KPX f aogonek -10
+KPX f aring -10
+KPX f atilde -10
+KPX f dotlessi -50
+KPX f f -25
+KPX f i -20
+KPX f iacute -20
+KPX f quoteright 55
+KPX g a -5
+KPX g aacute -5
+KPX g abreve -5
+KPX g acircumflex -5
+KPX g adieresis -5
+KPX g agrave -5
+KPX g amacron -5
+KPX g aogonek -5
+KPX g aring -5
+KPX g atilde -5
+KPX gbreve a -5
+KPX gbreve aacute -5
+KPX gbreve abreve -5
+KPX gbreve acircumflex -5
+KPX gbreve adieresis -5
+KPX gbreve agrave -5
+KPX gbreve amacron -5
+KPX gbreve aogonek -5
+KPX gbreve aring -5
+KPX gbreve atilde -5
+KPX gcommaaccent a -5
+KPX gcommaaccent aacute -5
+KPX gcommaaccent abreve -5
+KPX gcommaaccent acircumflex -5
+KPX gcommaaccent adieresis -5
+KPX gcommaaccent agrave -5
+KPX gcommaaccent amacron -5
+KPX gcommaaccent aogonek -5
+KPX gcommaaccent aring -5
+KPX gcommaaccent atilde -5
+KPX h y -5
+KPX h yacute -5
+KPX h ydieresis -5
+KPX i v -25
+KPX iacute v -25
+KPX icircumflex v -25
+KPX idieresis v -25
+KPX igrave v -25
+KPX imacron v -25
+KPX iogonek v -25
+KPX k e -10
+KPX k eacute -10
+KPX k ecaron -10
+KPX k ecircumflex -10
+KPX k edieresis -10
+KPX k edotaccent -10
+KPX k egrave -10
+KPX k emacron -10
+KPX k eogonek -10
+KPX k o -10
+KPX k oacute -10
+KPX k ocircumflex -10
+KPX k odieresis -10
+KPX k ograve -10
+KPX k ohungarumlaut -10
+KPX k omacron -10
+KPX k oslash -10
+KPX k otilde -10
+KPX k y -15
+KPX k yacute -15
+KPX k ydieresis -15
+KPX kcommaaccent e -10
+KPX kcommaaccent eacute -10
+KPX kcommaaccent ecaron -10
+KPX kcommaaccent ecircumflex -10
+KPX kcommaaccent edieresis -10
+KPX kcommaaccent edotaccent -10
+KPX kcommaaccent egrave -10
+KPX kcommaaccent emacron -10
+KPX kcommaaccent eogonek -10
+KPX kcommaaccent o -10
+KPX kcommaaccent oacute -10
+KPX kcommaaccent ocircumflex -10
+KPX kcommaaccent odieresis -10
+KPX kcommaaccent ograve -10
+KPX kcommaaccent ohungarumlaut -10
+KPX kcommaaccent omacron -10
+KPX kcommaaccent oslash -10
+KPX kcommaaccent otilde -10
+KPX kcommaaccent y -15
+KPX kcommaaccent yacute -15
+KPX kcommaaccent ydieresis -15
+KPX l w -10
+KPX lacute w -10
+KPX lcommaaccent w -10
+KPX lslash w -10
+KPX n v -40
+KPX n y -15
+KPX n yacute -15
+KPX n ydieresis -15
+KPX nacute v -40
+KPX nacute y -15
+KPX nacute yacute -15
+KPX nacute ydieresis -15
+KPX ncaron v -40
+KPX ncaron y -15
+KPX ncaron yacute -15
+KPX ncaron ydieresis -15
+KPX ncommaaccent v -40
+KPX ncommaaccent y -15
+KPX ncommaaccent yacute -15
+KPX ncommaaccent ydieresis -15
+KPX ntilde v -40
+KPX ntilde y -15
+KPX ntilde yacute -15
+KPX ntilde ydieresis -15
+KPX o v -15
+KPX o w -25
+KPX o y -10
+KPX o yacute -10
+KPX o ydieresis -10
+KPX oacute v -15
+KPX oacute w -25
+KPX oacute y -10
+KPX oacute yacute -10
+KPX oacute ydieresis -10
+KPX ocircumflex v -15
+KPX ocircumflex w -25
+KPX ocircumflex y -10
+KPX ocircumflex yacute -10
+KPX ocircumflex ydieresis -10
+KPX odieresis v -15
+KPX odieresis w -25
+KPX odieresis y -10
+KPX odieresis yacute -10
+KPX odieresis ydieresis -10
+KPX ograve v -15
+KPX ograve w -25
+KPX ograve y -10
+KPX ograve yacute -10
+KPX ograve ydieresis -10
+KPX ohungarumlaut v -15
+KPX ohungarumlaut w -25
+KPX ohungarumlaut y -10
+KPX ohungarumlaut yacute -10
+KPX ohungarumlaut ydieresis -10
+KPX omacron v -15
+KPX omacron w -25
+KPX omacron y -10
+KPX omacron yacute -10
+KPX omacron ydieresis -10
+KPX oslash v -15
+KPX oslash w -25
+KPX oslash y -10
+KPX oslash yacute -10
+KPX oslash ydieresis -10
+KPX otilde v -15
+KPX otilde w -25
+KPX otilde y -10
+KPX otilde yacute -10
+KPX otilde ydieresis -10
+KPX p y -10
+KPX p yacute -10
+KPX p ydieresis -10
+KPX period quotedblright -70
+KPX period quoteright -70
+KPX quotedblleft A -80
+KPX quotedblleft Aacute -80
+KPX quotedblleft Abreve -80
+KPX quotedblleft Acircumflex -80
+KPX quotedblleft Adieresis -80
+KPX quotedblleft Agrave -80
+KPX quotedblleft Amacron -80
+KPX quotedblleft Aogonek -80
+KPX quotedblleft Aring -80
+KPX quotedblleft Atilde -80
+KPX quoteleft A -80
+KPX quoteleft Aacute -80
+KPX quoteleft Abreve -80
+KPX quoteleft Acircumflex -80
+KPX quoteleft Adieresis -80
+KPX quoteleft Agrave -80
+KPX quoteleft Amacron -80
+KPX quoteleft Aogonek -80
+KPX quoteleft Aring -80
+KPX quoteleft Atilde -80
+KPX quoteleft quoteleft -74
+KPX quoteright d -50
+KPX quoteright dcroat -50
+KPX quoteright l -10
+KPX quoteright lacute -10
+KPX quoteright lcommaaccent -10
+KPX quoteright lslash -10
+KPX quoteright quoteright -74
+KPX quoteright r -50
+KPX quoteright racute -50
+KPX quoteright rcaron -50
+KPX quoteright rcommaaccent -50
+KPX quoteright s -55
+KPX quoteright sacute -55
+KPX quoteright scaron -55
+KPX quoteright scedilla -55
+KPX quoteright scommaaccent -55
+KPX quoteright space -74
+KPX quoteright t -18
+KPX quoteright tcommaaccent -18
+KPX quoteright v -50
+KPX r comma -40
+KPX r g -18
+KPX r gbreve -18
+KPX r gcommaaccent -18
+KPX r hyphen -20
+KPX r period -55
+KPX racute comma -40
+KPX racute g -18
+KPX racute gbreve -18
+KPX racute gcommaaccent -18
+KPX racute hyphen -20
+KPX racute period -55
+KPX rcaron comma -40
+KPX rcaron g -18
+KPX rcaron gbreve -18
+KPX rcaron gcommaaccent -18
+KPX rcaron hyphen -20
+KPX rcaron period -55
+KPX rcommaaccent comma -40
+KPX rcommaaccent g -18
+KPX rcommaaccent gbreve -18
+KPX rcommaaccent gcommaaccent -18
+KPX rcommaaccent hyphen -20
+KPX rcommaaccent period -55
+KPX space A -55
+KPX space Aacute -55
+KPX space Abreve -55
+KPX space Acircumflex -55
+KPX space Adieresis -55
+KPX space Agrave -55
+KPX space Amacron -55
+KPX space Aogonek -55
+KPX space Aring -55
+KPX space Atilde -55
+KPX space T -18
+KPX space Tcaron -18
+KPX space Tcommaaccent -18
+KPX space V -50
+KPX space W -30
+KPX space Y -90
+KPX space Yacute -90
+KPX space Ydieresis -90
+KPX v a -25
+KPX v aacute -25
+KPX v abreve -25
+KPX v acircumflex -25
+KPX v adieresis -25
+KPX v agrave -25
+KPX v amacron -25
+KPX v aogonek -25
+KPX v aring -25
+KPX v atilde -25
+KPX v comma -65
+KPX v e -15
+KPX v eacute -15
+KPX v ecaron -15
+KPX v ecircumflex -15
+KPX v edieresis -15
+KPX v edotaccent -15
+KPX v egrave -15
+KPX v emacron -15
+KPX v eogonek -15
+KPX v o -20
+KPX v oacute -20
+KPX v ocircumflex -20
+KPX v odieresis -20
+KPX v ograve -20
+KPX v ohungarumlaut -20
+KPX v omacron -20
+KPX v oslash -20
+KPX v otilde -20
+KPX v period -65
+KPX w a -10
+KPX w aacute -10
+KPX w abreve -10
+KPX w acircumflex -10
+KPX w adieresis -10
+KPX w agrave -10
+KPX w amacron -10
+KPX w aogonek -10
+KPX w aring -10
+KPX w atilde -10
+KPX w comma -65
+KPX w o -10
+KPX w oacute -10
+KPX w ocircumflex -10
+KPX w odieresis -10
+KPX w ograve -10
+KPX w ohungarumlaut -10
+KPX w omacron -10
+KPX w oslash -10
+KPX w otilde -10
+KPX w period -65
+KPX x e -15
+KPX x eacute -15
+KPX x ecaron -15
+KPX x ecircumflex -15
+KPX x edieresis -15
+KPX x edotaccent -15
+KPX x egrave -15
+KPX x emacron -15
+KPX x eogonek -15
+KPX y comma -65
+KPX y period -65
+KPX yacute comma -65
+KPX yacute period -65
+KPX ydieresis comma -65
+KPX ydieresis period -65
+EndKernPairs
+EndKernData
+EndFontMetrics
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/ZapfDingbats.afm b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/ZapfDingbats.afm
new file mode 100755
index 00000000..b2745053
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/ZapfDingbats.afm
@@ -0,0 +1,225 @@
+StartFontMetrics 4.1
+Comment Copyright (c) 1985, 1987, 1988, 1989, 1997 Adobe Systems Incorporated. All Rights Reserved.
+Comment Creation Date: Thu May 1 15:14:13 1997
+Comment UniqueID 43082
+Comment VMusage 45775 55535
+FontName ZapfDingbats
+FullName ITC Zapf Dingbats
+FamilyName ZapfDingbats
+Weight Medium
+ItalicAngle 0
+IsFixedPitch false
+CharacterSet Special
+FontBBox -1 -143 981 820
+UnderlinePosition -100
+UnderlineThickness 50
+Version 002.000
+Notice Copyright (c) 1985, 1987, 1988, 1989, 1997 Adobe Systems Incorporated. All Rights Reserved.ITC Zapf Dingbats is a registered trademark of International Typeface Corporation.
+EncodingScheme FontSpecific
+StdHW 28
+StdVW 90
+StartCharMetrics 202
+C 32 ; WX 278 ; N space ; B 0 0 0 0 ;
+C 33 ; WX 974 ; N a1 ; B 35 72 939 621 ;
+C 34 ; WX 961 ; N a2 ; B 35 81 927 611 ;
+C 35 ; WX 974 ; N a202 ; B 35 72 939 621 ;
+C 36 ; WX 980 ; N a3 ; B 35 0 945 692 ;
+C 37 ; WX 719 ; N a4 ; B 34 139 685 566 ;
+C 38 ; WX 789 ; N a5 ; B 35 -14 755 705 ;
+C 39 ; WX 790 ; N a119 ; B 35 -14 755 705 ;
+C 40 ; WX 791 ; N a118 ; B 35 -13 761 705 ;
+C 41 ; WX 690 ; N a117 ; B 34 138 655 553 ;
+C 42 ; WX 960 ; N a11 ; B 35 123 925 568 ;
+C 43 ; WX 939 ; N a12 ; B 35 134 904 559 ;
+C 44 ; WX 549 ; N a13 ; B 29 -11 516 705 ;
+C 45 ; WX 855 ; N a14 ; B 34 59 820 632 ;
+C 46 ; WX 911 ; N a15 ; B 35 50 876 642 ;
+C 47 ; WX 933 ; N a16 ; B 35 139 899 550 ;
+C 48 ; WX 911 ; N a105 ; B 35 50 876 642 ;
+C 49 ; WX 945 ; N a17 ; B 35 139 909 553 ;
+C 50 ; WX 974 ; N a18 ; B 35 104 938 587 ;
+C 51 ; WX 755 ; N a19 ; B 34 -13 721 705 ;
+C 52 ; WX 846 ; N a20 ; B 36 -14 811 705 ;
+C 53 ; WX 762 ; N a21 ; B 35 0 727 692 ;
+C 54 ; WX 761 ; N a22 ; B 35 0 727 692 ;
+C 55 ; WX 571 ; N a23 ; B -1 -68 571 661 ;
+C 56 ; WX 677 ; N a24 ; B 36 -13 642 705 ;
+C 57 ; WX 763 ; N a25 ; B 35 0 728 692 ;
+C 58 ; WX 760 ; N a26 ; B 35 0 726 692 ;
+C 59 ; WX 759 ; N a27 ; B 35 0 725 692 ;
+C 60 ; WX 754 ; N a28 ; B 35 0 720 692 ;
+C 61 ; WX 494 ; N a6 ; B 35 0 460 692 ;
+C 62 ; WX 552 ; N a7 ; B 35 0 517 692 ;
+C 63 ; WX 537 ; N a8 ; B 35 0 503 692 ;
+C 64 ; WX 577 ; N a9 ; B 35 96 542 596 ;
+C 65 ; WX 692 ; N a10 ; B 35 -14 657 705 ;
+C 66 ; WX 786 ; N a29 ; B 35 -14 751 705 ;
+C 67 ; WX 788 ; N a30 ; B 35 -14 752 705 ;
+C 68 ; WX 788 ; N a31 ; B 35 -14 753 705 ;
+C 69 ; WX 790 ; N a32 ; B 35 -14 756 705 ;
+C 70 ; WX 793 ; N a33 ; B 35 -13 759 705 ;
+C 71 ; WX 794 ; N a34 ; B 35 -13 759 705 ;
+C 72 ; WX 816 ; N a35 ; B 35 -14 782 705 ;
+C 73 ; WX 823 ; N a36 ; B 35 -14 787 705 ;
+C 74 ; WX 789 ; N a37 ; B 35 -14 754 705 ;
+C 75 ; WX 841 ; N a38 ; B 35 -14 807 705 ;
+C 76 ; WX 823 ; N a39 ; B 35 -14 789 705 ;
+C 77 ; WX 833 ; N a40 ; B 35 -14 798 705 ;
+C 78 ; WX 816 ; N a41 ; B 35 -13 782 705 ;
+C 79 ; WX 831 ; N a42 ; B 35 -14 796 705 ;
+C 80 ; WX 923 ; N a43 ; B 35 -14 888 705 ;
+C 81 ; WX 744 ; N a44 ; B 35 0 710 692 ;
+C 82 ; WX 723 ; N a45 ; B 35 0 688 692 ;
+C 83 ; WX 749 ; N a46 ; B 35 0 714 692 ;
+C 84 ; WX 790 ; N a47 ; B 34 -14 756 705 ;
+C 85 ; WX 792 ; N a48 ; B 35 -14 758 705 ;
+C 86 ; WX 695 ; N a49 ; B 35 -14 661 706 ;
+C 87 ; WX 776 ; N a50 ; B 35 -6 741 699 ;
+C 88 ; WX 768 ; N a51 ; B 35 -7 734 699 ;
+C 89 ; WX 792 ; N a52 ; B 35 -14 757 705 ;
+C 90 ; WX 759 ; N a53 ; B 35 0 725 692 ;
+C 91 ; WX 707 ; N a54 ; B 35 -13 672 704 ;
+C 92 ; WX 708 ; N a55 ; B 35 -14 672 705 ;
+C 93 ; WX 682 ; N a56 ; B 35 -14 647 705 ;
+C 94 ; WX 701 ; N a57 ; B 35 -14 666 705 ;
+C 95 ; WX 826 ; N a58 ; B 35 -14 791 705 ;
+C 96 ; WX 815 ; N a59 ; B 35 -14 780 705 ;
+C 97 ; WX 789 ; N a60 ; B 35 -14 754 705 ;
+C 98 ; WX 789 ; N a61 ; B 35 -14 754 705 ;
+C 99 ; WX 707 ; N a62 ; B 34 -14 673 705 ;
+C 100 ; WX 687 ; N a63 ; B 36 0 651 692 ;
+C 101 ; WX 696 ; N a64 ; B 35 0 661 691 ;
+C 102 ; WX 689 ; N a65 ; B 35 0 655 692 ;
+C 103 ; WX 786 ; N a66 ; B 34 -14 751 705 ;
+C 104 ; WX 787 ; N a67 ; B 35 -14 752 705 ;
+C 105 ; WX 713 ; N a68 ; B 35 -14 678 705 ;
+C 106 ; WX 791 ; N a69 ; B 35 -14 756 705 ;
+C 107 ; WX 785 ; N a70 ; B 36 -14 751 705 ;
+C 108 ; WX 791 ; N a71 ; B 35 -14 757 705 ;
+C 109 ; WX 873 ; N a72 ; B 35 -14 838 705 ;
+C 110 ; WX 761 ; N a73 ; B 35 0 726 692 ;
+C 111 ; WX 762 ; N a74 ; B 35 0 727 692 ;
+C 112 ; WX 762 ; N a203 ; B 35 0 727 692 ;
+C 113 ; WX 759 ; N a75 ; B 35 0 725 692 ;
+C 114 ; WX 759 ; N a204 ; B 35 0 725 692 ;
+C 115 ; WX 892 ; N a76 ; B 35 0 858 705 ;
+C 116 ; WX 892 ; N a77 ; B 35 -14 858 692 ;
+C 117 ; WX 788 ; N a78 ; B 35 -14 754 705 ;
+C 118 ; WX 784 ; N a79 ; B 35 -14 749 705 ;
+C 119 ; WX 438 ; N a81 ; B 35 -14 403 705 ;
+C 120 ; WX 138 ; N a82 ; B 35 0 104 692 ;
+C 121 ; WX 277 ; N a83 ; B 35 0 242 692 ;
+C 122 ; WX 415 ; N a84 ; B 35 0 380 692 ;
+C 123 ; WX 392 ; N a97 ; B 35 263 357 705 ;
+C 124 ; WX 392 ; N a98 ; B 34 263 357 705 ;
+C 125 ; WX 668 ; N a99 ; B 35 263 633 705 ;
+C 126 ; WX 668 ; N a100 ; B 36 263 634 705 ;
+C 128 ; WX 390 ; N a89 ; B 35 -14 356 705 ;
+C 129 ; WX 390 ; N a90 ; B 35 -14 355 705 ;
+C 130 ; WX 317 ; N a93 ; B 35 0 283 692 ;
+C 131 ; WX 317 ; N a94 ; B 35 0 283 692 ;
+C 132 ; WX 276 ; N a91 ; B 35 0 242 692 ;
+C 133 ; WX 276 ; N a92 ; B 35 0 242 692 ;
+C 134 ; WX 509 ; N a205 ; B 35 0 475 692 ;
+C 135 ; WX 509 ; N a85 ; B 35 0 475 692 ;
+C 136 ; WX 410 ; N a206 ; B 35 0 375 692 ;
+C 137 ; WX 410 ; N a86 ; B 35 0 375 692 ;
+C 138 ; WX 234 ; N a87 ; B 35 -14 199 705 ;
+C 139 ; WX 234 ; N a88 ; B 35 -14 199 705 ;
+C 140 ; WX 334 ; N a95 ; B 35 0 299 692 ;
+C 141 ; WX 334 ; N a96 ; B 35 0 299 692 ;
+C 161 ; WX 732 ; N a101 ; B 35 -143 697 806 ;
+C 162 ; WX 544 ; N a102 ; B 56 -14 488 706 ;
+C 163 ; WX 544 ; N a103 ; B 34 -14 508 705 ;
+C 164 ; WX 910 ; N a104 ; B 35 40 875 651 ;
+C 165 ; WX 667 ; N a106 ; B 35 -14 633 705 ;
+C 166 ; WX 760 ; N a107 ; B 35 -14 726 705 ;
+C 167 ; WX 760 ; N a108 ; B 0 121 758 569 ;
+C 168 ; WX 776 ; N a112 ; B 35 0 741 705 ;
+C 169 ; WX 595 ; N a111 ; B 34 -14 560 705 ;
+C 170 ; WX 694 ; N a110 ; B 35 -14 659 705 ;
+C 171 ; WX 626 ; N a109 ; B 34 0 591 705 ;
+C 172 ; WX 788 ; N a120 ; B 35 -14 754 705 ;
+C 173 ; WX 788 ; N a121 ; B 35 -14 754 705 ;
+C 174 ; WX 788 ; N a122 ; B 35 -14 754 705 ;
+C 175 ; WX 788 ; N a123 ; B 35 -14 754 705 ;
+C 176 ; WX 788 ; N a124 ; B 35 -14 754 705 ;
+C 177 ; WX 788 ; N a125 ; B 35 -14 754 705 ;
+C 178 ; WX 788 ; N a126 ; B 35 -14 754 705 ;
+C 179 ; WX 788 ; N a127 ; B 35 -14 754 705 ;
+C 180 ; WX 788 ; N a128 ; B 35 -14 754 705 ;
+C 181 ; WX 788 ; N a129 ; B 35 -14 754 705 ;
+C 182 ; WX 788 ; N a130 ; B 35 -14 754 705 ;
+C 183 ; WX 788 ; N a131 ; B 35 -14 754 705 ;
+C 184 ; WX 788 ; N a132 ; B 35 -14 754 705 ;
+C 185 ; WX 788 ; N a133 ; B 35 -14 754 705 ;
+C 186 ; WX 788 ; N a134 ; B 35 -14 754 705 ;
+C 187 ; WX 788 ; N a135 ; B 35 -14 754 705 ;
+C 188 ; WX 788 ; N a136 ; B 35 -14 754 705 ;
+C 189 ; WX 788 ; N a137 ; B 35 -14 754 705 ;
+C 190 ; WX 788 ; N a138 ; B 35 -14 754 705 ;
+C 191 ; WX 788 ; N a139 ; B 35 -14 754 705 ;
+C 192 ; WX 788 ; N a140 ; B 35 -14 754 705 ;
+C 193 ; WX 788 ; N a141 ; B 35 -14 754 705 ;
+C 194 ; WX 788 ; N a142 ; B 35 -14 754 705 ;
+C 195 ; WX 788 ; N a143 ; B 35 -14 754 705 ;
+C 196 ; WX 788 ; N a144 ; B 35 -14 754 705 ;
+C 197 ; WX 788 ; N a145 ; B 35 -14 754 705 ;
+C 198 ; WX 788 ; N a146 ; B 35 -14 754 705 ;
+C 199 ; WX 788 ; N a147 ; B 35 -14 754 705 ;
+C 200 ; WX 788 ; N a148 ; B 35 -14 754 705 ;
+C 201 ; WX 788 ; N a149 ; B 35 -14 754 705 ;
+C 202 ; WX 788 ; N a150 ; B 35 -14 754 705 ;
+C 203 ; WX 788 ; N a151 ; B 35 -14 754 705 ;
+C 204 ; WX 788 ; N a152 ; B 35 -14 754 705 ;
+C 205 ; WX 788 ; N a153 ; B 35 -14 754 705 ;
+C 206 ; WX 788 ; N a154 ; B 35 -14 754 705 ;
+C 207 ; WX 788 ; N a155 ; B 35 -14 754 705 ;
+C 208 ; WX 788 ; N a156 ; B 35 -14 754 705 ;
+C 209 ; WX 788 ; N a157 ; B 35 -14 754 705 ;
+C 210 ; WX 788 ; N a158 ; B 35 -14 754 705 ;
+C 211 ; WX 788 ; N a159 ; B 35 -14 754 705 ;
+C 212 ; WX 894 ; N a160 ; B 35 58 860 634 ;
+C 213 ; WX 838 ; N a161 ; B 35 152 803 540 ;
+C 214 ; WX 1016 ; N a163 ; B 34 152 981 540 ;
+C 215 ; WX 458 ; N a164 ; B 35 -127 422 820 ;
+C 216 ; WX 748 ; N a196 ; B 35 94 698 597 ;
+C 217 ; WX 924 ; N a165 ; B 35 140 890 552 ;
+C 218 ; WX 748 ; N a192 ; B 35 94 698 597 ;
+C 219 ; WX 918 ; N a166 ; B 35 166 884 526 ;
+C 220 ; WX 927 ; N a167 ; B 35 32 892 660 ;
+C 221 ; WX 928 ; N a168 ; B 35 129 891 562 ;
+C 222 ; WX 928 ; N a169 ; B 35 128 893 563 ;
+C 223 ; WX 834 ; N a170 ; B 35 155 799 537 ;
+C 224 ; WX 873 ; N a171 ; B 35 93 838 599 ;
+C 225 ; WX 828 ; N a172 ; B 35 104 791 588 ;
+C 226 ; WX 924 ; N a173 ; B 35 98 889 594 ;
+C 227 ; WX 924 ; N a162 ; B 35 98 889 594 ;
+C 228 ; WX 917 ; N a174 ; B 35 0 882 692 ;
+C 229 ; WX 930 ; N a175 ; B 35 84 896 608 ;
+C 230 ; WX 931 ; N a176 ; B 35 84 896 608 ;
+C 231 ; WX 463 ; N a177 ; B 35 -99 429 791 ;
+C 232 ; WX 883 ; N a178 ; B 35 71 848 623 ;
+C 233 ; WX 836 ; N a179 ; B 35 44 802 648 ;
+C 234 ; WX 836 ; N a193 ; B 35 44 802 648 ;
+C 235 ; WX 867 ; N a180 ; B 35 101 832 591 ;
+C 236 ; WX 867 ; N a199 ; B 35 101 832 591 ;
+C 237 ; WX 696 ; N a181 ; B 35 44 661 648 ;
+C 238 ; WX 696 ; N a200 ; B 35 44 661 648 ;
+C 239 ; WX 874 ; N a182 ; B 35 77 840 619 ;
+C 241 ; WX 874 ; N a201 ; B 35 73 840 615 ;
+C 242 ; WX 760 ; N a183 ; B 35 0 725 692 ;
+C 243 ; WX 946 ; N a184 ; B 35 160 911 533 ;
+C 244 ; WX 771 ; N a197 ; B 34 37 736 655 ;
+C 245 ; WX 865 ; N a185 ; B 35 207 830 481 ;
+C 246 ; WX 771 ; N a194 ; B 34 37 736 655 ;
+C 247 ; WX 888 ; N a198 ; B 34 -19 853 712 ;
+C 248 ; WX 967 ; N a186 ; B 35 124 932 568 ;
+C 249 ; WX 888 ; N a195 ; B 34 -19 853 712 ;
+C 250 ; WX 831 ; N a187 ; B 35 113 796 579 ;
+C 251 ; WX 873 ; N a188 ; B 36 118 838 578 ;
+C 252 ; WX 927 ; N a189 ; B 35 150 891 542 ;
+C 253 ; WX 970 ; N a190 ; B 35 76 931 616 ;
+C 254 ; WX 918 ; N a191 ; B 34 99 884 593 ;
+EndCharMetrics
+EndFontMetrics
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Courier-Bold.afm b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Courier-Bold.afm
new file mode 100755
index 00000000..320bb21c
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Courier-Bold.afm
@@ -0,0 +1 @@
+a:21:{s:8:"FontName";s:12:"Courier-Bold";s:8:"FullName";s:12:"Courier Bold";s:10:"FamilyName";s:7:"Courier";s:6:"Weight";s:4:"Bold";s:11:"ItalicAngle";s:1:"0";s:12:"IsFixedPitch";s:4:"true";s:12:"CharacterSet";s:13:"ExtendedRoman";s:8:"FontBBox";a:4:{i:0;s:4:"-113";i:1;s:4:"-250";i:2;s:3:"749";i:3;s:3:"801";}s:17:"UnderlinePosition";s:4:"-100";s:18:"UnderlineThickness";s:2:"50";s:7:"Version";s:7:"003.000";s:14:"EncodingScheme";s:21:"AdobeStandardEncoding";s:9:"CapHeight";s:3:"562";s:7:"XHeight";s:3:"439";s:8:"Ascender";s:3:"629";s:9:"Descender";s:4:"-157";s:5:"StdHW";s:2:"84";s:5:"StdVW";s:3:"106";s:16:"StartCharMetrics";s:3:"315";s:1:"C";a:464:{i:32;a:4:{s:1:"C";s:2:"32";s:2:"WX";s:3:"600";s:1:"N";s:5:"space";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:1:"0";i:3;s:1:"0";}}s:5:"space";a:4:{s:1:"C";s:2:"32";s:2:"WX";s:3:"600";s:1:"N";s:5:"space";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:1:"0";i:3;s:1:"0";}}i:33;a:4:{s:1:"C";s:2:"33";s:2:"WX";s:3:"600";s:1:"N";s:6:"exclam";s:1:"B";a:4:{i:0;s:3:"202";i:1;s:3:"-15";i:2;s:3:"398";i:3;s:3:"572";}}s:6:"exclam";a:4:{s:1:"C";s:2:"33";s:2:"WX";s:3:"600";s:1:"N";s:6:"exclam";s:1:"B";a:4:{i:0;s:3:"202";i:1;s:3:"-15";i:2;s:3:"398";i:3;s:3:"572";}}i:34;a:4:{s:1:"C";s:2:"34";s:2:"WX";s:3:"600";s:1:"N";s:8:"quotedbl";s:1:"B";a:4:{i:0;s:3:"135";i:1;s:3:"277";i:2;s:3:"465";i:3;s:3:"562";}}s:8:"quotedbl";a:4:{s:1:"C";s:2:"34";s:2:"WX";s:3:"600";s:1:"N";s:8:"quotedbl";s:1:"B";a:4:{i:0;s:3:"135";i:1;s:3:"277";i:2;s:3:"465";i:3;s:3:"562";}}i:35;a:4:{s:1:"C";s:2:"35";s:2:"WX";s:3:"600";s:1:"N";s:10:"numbersign";s:1:"B";a:4:{i:0;s:2:"56";i:1;s:3:"-45";i:2;s:3:"544";i:3;s:3:"651";}}s:10:"numbersign";a:4:{s:1:"C";s:2:"35";s:2:"WX";s:3:"600";s:1:"N";s:10:"numbersign";s:1:"B";a:4:{i:0;s:2:"56";i:1;s:3:"-45";i:2;s:3:"544";i:3;s:3:"651";}}i:36;a:4:{s:1:"C";s:2:"36";s:2:"WX";s:3:"600";s:1:"N";s:6:"dollar";s:1:"B";a:4:{i:0;s:2:"82";i:1;s:4:"-126";i:2;s:3:"519";i:3;s:3:"666";}}s:6:"dollar";a:4:{s:1:"C";s:2:"36";s:2:"WX";s:3:"600";s:1:"N";s:6:"dollar";s:1:"B";a:4:{i:0;s:2:"82";i:1;s:4:"-126";i:2;s:3:"519";i:3;s:3:"666";}}i:37;a:4:{s:1:"C";s:2:"37";s:2:"WX";s:3:"600";s:1:"N";s:7:"percent";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:3:"-15";i:2;s:3:"595";i:3;s:3:"616";}}s:7:"percent";a:4:{s:1:"C";s:2:"37";s:2:"WX";s:3:"600";s:1:"N";s:7:"percent";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:3:"-15";i:2;s:3:"595";i:3;s:3:"616";}}i:38;a:4:{s:1:"C";s:2:"38";s:2:"WX";s:3:"600";s:1:"N";s:9:"ampersand";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:3:"-15";i:2;s:3:"546";i:3;s:3:"543";}}s:9:"ampersand";a:4:{s:1:"C";s:2:"38";s:2:"WX";s:3:"600";s:1:"N";s:9:"ampersand";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:3:"-15";i:2;s:3:"546";i:3;s:3:"543";}}i:39;a:4:{s:1:"C";s:2:"39";s:2:"WX";s:3:"600";s:1:"N";s:10:"quoteright";s:1:"B";a:4:{i:0;s:3:"171";i:1;s:3:"277";i:2;s:3:"423";i:3;s:3:"562";}}s:10:"quoteright";a:4:{s:1:"C";s:2:"39";s:2:"WX";s:3:"600";s:1:"N";s:10:"quoteright";s:1:"B";a:4:{i:0;s:3:"171";i:1;s:3:"277";i:2;s:3:"423";i:3;s:3:"562";}}i:40;a:4:{s:1:"C";s:2:"40";s:2:"WX";s:3:"600";s:1:"N";s:9:"parenleft";s:1:"B";a:4:{i:0;s:3:"219";i:1;s:4:"-102";i:2;s:3:"461";i:3;s:3:"616";}}s:9:"parenleft";a:4:{s:1:"C";s:2:"40";s:2:"WX";s:3:"600";s:1:"N";s:9:"parenleft";s:1:"B";a:4:{i:0;s:3:"219";i:1;s:4:"-102";i:2;s:3:"461";i:3;s:3:"616";}}i:41;a:4:{s:1:"C";s:2:"41";s:2:"WX";s:3:"600";s:1:"N";s:10:"parenright";s:1:"B";a:4:{i:0;s:3:"139";i:1;s:4:"-102";i:2;s:3:"381";i:3;s:3:"616";}}s:10:"parenright";a:4:{s:1:"C";s:2:"41";s:2:"WX";s:3:"600";s:1:"N";s:10:"parenright";s:1:"B";a:4:{i:0;s:3:"139";i:1;s:4:"-102";i:2;s:3:"381";i:3;s:3:"616";}}i:42;a:4:{s:1:"C";s:2:"42";s:2:"WX";s:3:"600";s:1:"N";s:8:"asterisk";s:1:"B";a:4:{i:0;s:2:"91";i:1;s:3:"219";i:2;s:3:"509";i:3;s:3:"601";}}s:8:"asterisk";a:4:{s:1:"C";s:2:"42";s:2:"WX";s:3:"600";s:1:"N";s:8:"asterisk";s:1:"B";a:4:{i:0;s:2:"91";i:1;s:3:"219";i:2;s:3:"509";i:3;s:3:"601";}}i:43;a:4:{s:1:"C";s:2:"43";s:2:"WX";s:3:"600";s:1:"N";s:4:"plus";s:1:"B";a:4:{i:0;s:2:"71";i:1;s:2:"39";i:2;s:3:"529";i:3;s:3:"478";}}s:4:"plus";a:4:{s:1:"C";s:2:"43";s:2:"WX";s:3:"600";s:1:"N";s:4:"plus";s:1:"B";a:4:{i:0;s:2:"71";i:1;s:2:"39";i:2;s:3:"529";i:3;s:3:"478";}}i:44;a:4:{s:1:"C";s:2:"44";s:2:"WX";s:3:"600";s:1:"N";s:5:"comma";s:1:"B";a:4:{i:0;s:3:"123";i:1;s:4:"-111";i:2;s:3:"393";i:3;s:3:"174";}}s:5:"comma";a:4:{s:1:"C";s:2:"44";s:2:"WX";s:3:"600";s:1:"N";s:5:"comma";s:1:"B";a:4:{i:0;s:3:"123";i:1;s:4:"-111";i:2;s:3:"393";i:3;s:3:"174";}}i:45;a:4:{s:1:"C";s:2:"45";s:2:"WX";s:3:"600";s:1:"N";s:6:"hyphen";s:1:"B";a:4:{i:0;s:3:"100";i:1;s:3:"203";i:2;s:3:"500";i:3;s:3:"313";}}s:6:"hyphen";a:4:{s:1:"C";s:2:"45";s:2:"WX";s:3:"600";s:1:"N";s:6:"hyphen";s:1:"B";a:4:{i:0;s:3:"100";i:1;s:3:"203";i:2;s:3:"500";i:3;s:3:"313";}}i:46;a:4:{s:1:"C";s:2:"46";s:2:"WX";s:3:"600";s:1:"N";s:6:"period";s:1:"B";a:4:{i:0;s:3:"192";i:1;s:3:"-15";i:2;s:3:"408";i:3;s:3:"171";}}s:6:"period";a:4:{s:1:"C";s:2:"46";s:2:"WX";s:3:"600";s:1:"N";s:6:"period";s:1:"B";a:4:{i:0;s:3:"192";i:1;s:3:"-15";i:2;s:3:"408";i:3;s:3:"171";}}i:47;a:4:{s:1:"C";s:2:"47";s:2:"WX";s:3:"600";s:1:"N";s:5:"slash";s:1:"B";a:4:{i:0;s:2:"98";i:1;s:3:"-77";i:2;s:3:"502";i:3;s:3:"626";}}s:5:"slash";a:4:{s:1:"C";s:2:"47";s:2:"WX";s:3:"600";s:1:"N";s:5:"slash";s:1:"B";a:4:{i:0;s:2:"98";i:1;s:3:"-77";i:2;s:3:"502";i:3;s:3:"626";}}i:48;a:4:{s:1:"C";s:2:"48";s:2:"WX";s:3:"600";s:1:"N";s:4:"zero";s:1:"B";a:4:{i:0;s:2:"87";i:1;s:3:"-15";i:2;s:3:"513";i:3;s:3:"616";}}s:4:"zero";a:4:{s:1:"C";s:2:"48";s:2:"WX";s:3:"600";s:1:"N";s:4:"zero";s:1:"B";a:4:{i:0;s:2:"87";i:1;s:3:"-15";i:2;s:3:"513";i:3;s:3:"616";}}i:49;a:4:{s:1:"C";s:2:"49";s:2:"WX";s:3:"600";s:1:"N";s:3:"one";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:1:"0";i:2;s:3:"539";i:3;s:3:"616";}}s:3:"one";a:4:{s:1:"C";s:2:"49";s:2:"WX";s:3:"600";s:1:"N";s:3:"one";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:1:"0";i:2;s:3:"539";i:3;s:3:"616";}}i:50;a:4:{s:1:"C";s:2:"50";s:2:"WX";s:3:"600";s:1:"N";s:3:"two";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:1:"0";i:2;s:3:"499";i:3;s:3:"616";}}s:3:"two";a:4:{s:1:"C";s:2:"50";s:2:"WX";s:3:"600";s:1:"N";s:3:"two";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:1:"0";i:2;s:3:"499";i:3;s:3:"616";}}i:51;a:4:{s:1:"C";s:2:"51";s:2:"WX";s:3:"600";s:1:"N";s:5:"three";s:1:"B";a:4:{i:0;s:2:"63";i:1;s:3:"-15";i:2;s:3:"501";i:3;s:3:"616";}}s:5:"three";a:4:{s:1:"C";s:2:"51";s:2:"WX";s:3:"600";s:1:"N";s:5:"three";s:1:"B";a:4:{i:0;s:2:"63";i:1;s:3:"-15";i:2;s:3:"501";i:3;s:3:"616";}}i:52;a:4:{s:1:"C";s:2:"52";s:2:"WX";s:3:"600";s:1:"N";s:4:"four";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:1:"0";i:2;s:3:"507";i:3;s:3:"616";}}s:4:"four";a:4:{s:1:"C";s:2:"52";s:2:"WX";s:3:"600";s:1:"N";s:4:"four";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:1:"0";i:2;s:3:"507";i:3;s:3:"616";}}i:53;a:4:{s:1:"C";s:2:"53";s:2:"WX";s:3:"600";s:1:"N";s:4:"five";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:3:"-15";i:2;s:3:"521";i:3;s:3:"601";}}s:4:"five";a:4:{s:1:"C";s:2:"53";s:2:"WX";s:3:"600";s:1:"N";s:4:"five";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:3:"-15";i:2;s:3:"521";i:3;s:3:"601";}}i:54;a:4:{s:1:"C";s:2:"54";s:2:"WX";s:3:"600";s:1:"N";s:3:"six";s:1:"B";a:4:{i:0;s:2:"90";i:1;s:3:"-15";i:2;s:3:"521";i:3;s:3:"616";}}s:3:"six";a:4:{s:1:"C";s:2:"54";s:2:"WX";s:3:"600";s:1:"N";s:3:"six";s:1:"B";a:4:{i:0;s:2:"90";i:1;s:3:"-15";i:2;s:3:"521";i:3;s:3:"616";}}i:55;a:4:{s:1:"C";s:2:"55";s:2:"WX";s:3:"600";s:1:"N";s:5:"seven";s:1:"B";a:4:{i:0;s:2:"55";i:1;s:1:"0";i:2;s:3:"494";i:3;s:3:"601";}}s:5:"seven";a:4:{s:1:"C";s:2:"55";s:2:"WX";s:3:"600";s:1:"N";s:5:"seven";s:1:"B";a:4:{i:0;s:2:"55";i:1;s:1:"0";i:2;s:3:"494";i:3;s:3:"601";}}i:56;a:4:{s:1:"C";s:2:"56";s:2:"WX";s:3:"600";s:1:"N";s:5:"eight";s:1:"B";a:4:{i:0;s:2:"83";i:1;s:3:"-15";i:2;s:3:"517";i:3;s:3:"616";}}s:5:"eight";a:4:{s:1:"C";s:2:"56";s:2:"WX";s:3:"600";s:1:"N";s:5:"eight";s:1:"B";a:4:{i:0;s:2:"83";i:1;s:3:"-15";i:2;s:3:"517";i:3;s:3:"616";}}i:57;a:4:{s:1:"C";s:2:"57";s:2:"WX";s:3:"600";s:1:"N";s:4:"nine";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:3:"-15";i:2;s:3:"510";i:3;s:3:"616";}}s:4:"nine";a:4:{s:1:"C";s:2:"57";s:2:"WX";s:3:"600";s:1:"N";s:4:"nine";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:3:"-15";i:2;s:3:"510";i:3;s:3:"616";}}i:58;a:4:{s:1:"C";s:2:"58";s:2:"WX";s:3:"600";s:1:"N";s:5:"colon";s:1:"B";a:4:{i:0;s:3:"191";i:1;s:3:"-15";i:2;s:3:"407";i:3;s:3:"425";}}s:5:"colon";a:4:{s:1:"C";s:2:"58";s:2:"WX";s:3:"600";s:1:"N";s:5:"colon";s:1:"B";a:4:{i:0;s:3:"191";i:1;s:3:"-15";i:2;s:3:"407";i:3;s:3:"425";}}i:59;a:4:{s:1:"C";s:2:"59";s:2:"WX";s:3:"600";s:1:"N";s:9:"semicolon";s:1:"B";a:4:{i:0;s:3:"123";i:1;s:4:"-111";i:2;s:3:"408";i:3;s:3:"425";}}s:9:"semicolon";a:4:{s:1:"C";s:2:"59";s:2:"WX";s:3:"600";s:1:"N";s:9:"semicolon";s:1:"B";a:4:{i:0;s:3:"123";i:1;s:4:"-111";i:2;s:3:"408";i:3;s:3:"425";}}i:60;a:4:{s:1:"C";s:2:"60";s:2:"WX";s:3:"600";s:1:"N";s:4:"less";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:2:"15";i:2;s:3:"523";i:3;s:3:"501";}}s:4:"less";a:4:{s:1:"C";s:2:"60";s:2:"WX";s:3:"600";s:1:"N";s:4:"less";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:2:"15";i:2;s:3:"523";i:3;s:3:"501";}}i:61;a:4:{s:1:"C";s:2:"61";s:2:"WX";s:3:"600";s:1:"N";s:5:"equal";s:1:"B";a:4:{i:0;s:2:"71";i:1;s:3:"118";i:2;s:3:"529";i:3;s:3:"398";}}s:5:"equal";a:4:{s:1:"C";s:2:"61";s:2:"WX";s:3:"600";s:1:"N";s:5:"equal";s:1:"B";a:4:{i:0;s:2:"71";i:1;s:3:"118";i:2;s:3:"529";i:3;s:3:"398";}}i:62;a:4:{s:1:"C";s:2:"62";s:2:"WX";s:3:"600";s:1:"N";s:7:"greater";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:2:"15";i:2;s:3:"534";i:3;s:3:"501";}}s:7:"greater";a:4:{s:1:"C";s:2:"62";s:2:"WX";s:3:"600";s:1:"N";s:7:"greater";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:2:"15";i:2;s:3:"534";i:3;s:3:"501";}}i:63;a:4:{s:1:"C";s:2:"63";s:2:"WX";s:3:"600";s:1:"N";s:8:"question";s:1:"B";a:4:{i:0;s:2:"98";i:1;s:3:"-14";i:2;s:3:"501";i:3;s:3:"580";}}s:8:"question";a:4:{s:1:"C";s:2:"63";s:2:"WX";s:3:"600";s:1:"N";s:8:"question";s:1:"B";a:4:{i:0;s:2:"98";i:1;s:3:"-14";i:2;s:3:"501";i:3;s:3:"580";}}i:64;a:4:{s:1:"C";s:2:"64";s:2:"WX";s:3:"600";s:1:"N";s:2:"at";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"-15";i:2;s:3:"584";i:3;s:3:"616";}}s:2:"at";a:4:{s:1:"C";s:2:"64";s:2:"WX";s:3:"600";s:1:"N";s:2:"at";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"-15";i:2;s:3:"584";i:3;s:3:"616";}}i:65;a:4:{s:1:"C";s:2:"65";s:2:"WX";s:3:"600";s:1:"N";s:1:"A";s:1:"B";a:4:{i:0;s:2:"-9";i:1;s:1:"0";i:2;s:3:"609";i:3;s:3:"562";}}s:1:"A";a:4:{s:1:"C";s:2:"65";s:2:"WX";s:3:"600";s:1:"N";s:1:"A";s:1:"B";a:4:{i:0;s:2:"-9";i:1;s:1:"0";i:2;s:3:"609";i:3;s:3:"562";}}i:66;a:4:{s:1:"C";s:2:"66";s:2:"WX";s:3:"600";s:1:"N";s:1:"B";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:1:"0";i:2;s:3:"573";i:3;s:3:"562";}}s:1:"B";a:4:{s:1:"C";s:2:"66";s:2:"WX";s:3:"600";s:1:"N";s:1:"B";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:1:"0";i:2;s:3:"573";i:3;s:3:"562";}}i:67;a:4:{s:1:"C";s:2:"67";s:2:"WX";s:3:"600";s:1:"N";s:1:"C";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:3:"-18";i:2;s:3:"560";i:3;s:3:"580";}}s:1:"C";a:4:{s:1:"C";s:2:"67";s:2:"WX";s:3:"600";s:1:"N";s:1:"C";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:3:"-18";i:2;s:3:"560";i:3;s:3:"580";}}i:68;a:4:{s:1:"C";s:2:"68";s:2:"WX";s:3:"600";s:1:"N";s:1:"D";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:1:"0";i:2;s:3:"594";i:3;s:3:"562";}}s:1:"D";a:4:{s:1:"C";s:2:"68";s:2:"WX";s:3:"600";s:1:"N";s:1:"D";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:1:"0";i:2;s:3:"594";i:3;s:3:"562";}}i:69;a:4:{s:1:"C";s:2:"69";s:2:"WX";s:3:"600";s:1:"N";s:1:"E";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:1:"0";i:2;s:3:"560";i:3;s:3:"562";}}s:1:"E";a:4:{s:1:"C";s:2:"69";s:2:"WX";s:3:"600";s:1:"N";s:1:"E";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:1:"0";i:2;s:3:"560";i:3;s:3:"562";}}i:70;a:4:{s:1:"C";s:2:"70";s:2:"WX";s:3:"600";s:1:"N";s:1:"F";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:1:"0";i:2;s:3:"570";i:3;s:3:"562";}}s:1:"F";a:4:{s:1:"C";s:2:"70";s:2:"WX";s:3:"600";s:1:"N";s:1:"F";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:1:"0";i:2;s:3:"570";i:3;s:3:"562";}}i:71;a:4:{s:1:"C";s:2:"71";s:2:"WX";s:3:"600";s:1:"N";s:1:"G";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:3:"-18";i:2;s:3:"594";i:3;s:3:"580";}}s:1:"G";a:4:{s:1:"C";s:2:"71";s:2:"WX";s:3:"600";s:1:"N";s:1:"G";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:3:"-18";i:2;s:3:"594";i:3;s:3:"580";}}i:72;a:4:{s:1:"C";s:2:"72";s:2:"WX";s:3:"600";s:1:"N";s:1:"H";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"580";i:3;s:3:"562";}}s:1:"H";a:4:{s:1:"C";s:2:"72";s:2:"WX";s:3:"600";s:1:"N";s:1:"H";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"580";i:3;s:3:"562";}}i:73;a:4:{s:1:"C";s:2:"73";s:2:"WX";s:3:"600";s:1:"N";s:1:"I";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"523";i:3;s:3:"562";}}s:1:"I";a:4:{s:1:"C";s:2:"73";s:2:"WX";s:3:"600";s:1:"N";s:1:"I";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"523";i:3;s:3:"562";}}i:74;a:4:{s:1:"C";s:2:"74";s:2:"WX";s:3:"600";s:1:"N";s:1:"J";s:1:"B";a:4:{i:0;s:2:"37";i:1;s:3:"-18";i:2;s:3:"601";i:3;s:3:"562";}}s:1:"J";a:4:{s:1:"C";s:2:"74";s:2:"WX";s:3:"600";s:1:"N";s:1:"J";s:1:"B";a:4:{i:0;s:2:"37";i:1;s:3:"-18";i:2;s:3:"601";i:3;s:3:"562";}}i:75;a:4:{s:1:"C";s:2:"75";s:2:"WX";s:3:"600";s:1:"N";s:1:"K";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:1:"0";i:2;s:3:"599";i:3;s:3:"562";}}s:1:"K";a:4:{s:1:"C";s:2:"75";s:2:"WX";s:3:"600";s:1:"N";s:1:"K";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:1:"0";i:2;s:3:"599";i:3;s:3:"562";}}i:76;a:4:{s:1:"C";s:2:"76";s:2:"WX";s:3:"600";s:1:"N";s:1:"L";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:1:"0";i:2;s:3:"578";i:3;s:3:"562";}}s:1:"L";a:4:{s:1:"C";s:2:"76";s:2:"WX";s:3:"600";s:1:"N";s:1:"L";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:1:"0";i:2;s:3:"578";i:3;s:3:"562";}}i:77;a:4:{s:1:"C";s:2:"77";s:2:"WX";s:3:"600";s:1:"N";s:1:"M";s:1:"B";a:4:{i:0;s:2:"-2";i:1;s:1:"0";i:2;s:3:"602";i:3;s:3:"562";}}s:1:"M";a:4:{s:1:"C";s:2:"77";s:2:"WX";s:3:"600";s:1:"N";s:1:"M";s:1:"B";a:4:{i:0;s:2:"-2";i:1;s:1:"0";i:2;s:3:"602";i:3;s:3:"562";}}i:78;a:4:{s:1:"C";s:2:"78";s:2:"WX";s:3:"600";s:1:"N";s:1:"N";s:1:"B";a:4:{i:0;s:1:"8";i:1;s:3:"-12";i:2;s:3:"610";i:3;s:3:"562";}}s:1:"N";a:4:{s:1:"C";s:2:"78";s:2:"WX";s:3:"600";s:1:"N";s:1:"N";s:1:"B";a:4:{i:0;s:1:"8";i:1;s:3:"-12";i:2;s:3:"610";i:3;s:3:"562";}}i:79;a:4:{s:1:"C";s:2:"79";s:2:"WX";s:3:"600";s:1:"N";s:1:"O";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:3:"-18";i:2;s:3:"578";i:3;s:3:"580";}}s:1:"O";a:4:{s:1:"C";s:2:"79";s:2:"WX";s:3:"600";s:1:"N";s:1:"O";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:3:"-18";i:2;s:3:"578";i:3;s:3:"580";}}i:80;a:4:{s:1:"C";s:2:"80";s:2:"WX";s:3:"600";s:1:"N";s:1:"P";s:1:"B";a:4:{i:0;s:2:"48";i:1;s:1:"0";i:2;s:3:"559";i:3;s:3:"562";}}s:1:"P";a:4:{s:1:"C";s:2:"80";s:2:"WX";s:3:"600";s:1:"N";s:1:"P";s:1:"B";a:4:{i:0;s:2:"48";i:1;s:1:"0";i:2;s:3:"559";i:3;s:3:"562";}}i:81;a:4:{s:1:"C";s:2:"81";s:2:"WX";s:3:"600";s:1:"N";s:1:"Q";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:4:"-138";i:2;s:3:"578";i:3;s:3:"580";}}s:1:"Q";a:4:{s:1:"C";s:2:"81";s:2:"WX";s:3:"600";s:1:"N";s:1:"Q";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:4:"-138";i:2;s:3:"578";i:3;s:3:"580";}}i:82;a:4:{s:1:"C";s:2:"82";s:2:"WX";s:3:"600";s:1:"N";s:1:"R";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:1:"0";i:2;s:3:"599";i:3;s:3:"562";}}s:1:"R";a:4:{s:1:"C";s:2:"82";s:2:"WX";s:3:"600";s:1:"N";s:1:"R";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:1:"0";i:2;s:3:"599";i:3;s:3:"562";}}i:83;a:4:{s:1:"C";s:2:"83";s:2:"WX";s:3:"600";s:1:"N";s:1:"S";s:1:"B";a:4:{i:0;s:2:"47";i:1;s:3:"-22";i:2;s:3:"553";i:3;s:3:"582";}}s:1:"S";a:4:{s:1:"C";s:2:"83";s:2:"WX";s:3:"600";s:1:"N";s:1:"S";s:1:"B";a:4:{i:0;s:2:"47";i:1;s:3:"-22";i:2;s:3:"553";i:3;s:3:"582";}}i:84;a:4:{s:1:"C";s:2:"84";s:2:"WX";s:3:"600";s:1:"N";s:1:"T";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:1:"0";i:2;s:3:"579";i:3;s:3:"562";}}s:1:"T";a:4:{s:1:"C";s:2:"84";s:2:"WX";s:3:"600";s:1:"N";s:1:"T";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:1:"0";i:2;s:3:"579";i:3;s:3:"562";}}i:85;a:4:{s:1:"C";s:2:"85";s:2:"WX";s:3:"600";s:1:"N";s:1:"U";s:1:"B";a:4:{i:0;s:1:"4";i:1;s:3:"-18";i:2;s:3:"596";i:3;s:3:"562";}}s:1:"U";a:4:{s:1:"C";s:2:"85";s:2:"WX";s:3:"600";s:1:"N";s:1:"U";s:1:"B";a:4:{i:0;s:1:"4";i:1;s:3:"-18";i:2;s:3:"596";i:3;s:3:"562";}}i:86;a:4:{s:1:"C";s:2:"86";s:2:"WX";s:3:"600";s:1:"N";s:1:"V";s:1:"B";a:4:{i:0;s:3:"-13";i:1;s:1:"0";i:2;s:3:"613";i:3;s:3:"562";}}s:1:"V";a:4:{s:1:"C";s:2:"86";s:2:"WX";s:3:"600";s:1:"N";s:1:"V";s:1:"B";a:4:{i:0;s:3:"-13";i:1;s:1:"0";i:2;s:3:"613";i:3;s:3:"562";}}i:87;a:4:{s:1:"C";s:2:"87";s:2:"WX";s:3:"600";s:1:"N";s:1:"W";s:1:"B";a:4:{i:0;s:3:"-18";i:1;s:1:"0";i:2;s:3:"618";i:3;s:3:"562";}}s:1:"W";a:4:{s:1:"C";s:2:"87";s:2:"WX";s:3:"600";s:1:"N";s:1:"W";s:1:"B";a:4:{i:0;s:3:"-18";i:1;s:1:"0";i:2;s:3:"618";i:3;s:3:"562";}}i:88;a:4:{s:1:"C";s:2:"88";s:2:"WX";s:3:"600";s:1:"N";s:1:"X";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:1:"0";i:2;s:3:"588";i:3;s:3:"562";}}s:1:"X";a:4:{s:1:"C";s:2:"88";s:2:"WX";s:3:"600";s:1:"N";s:1:"X";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:1:"0";i:2;s:3:"588";i:3;s:3:"562";}}i:89;a:4:{s:1:"C";s:2:"89";s:2:"WX";s:3:"600";s:1:"N";s:1:"Y";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:1:"0";i:2;s:3:"589";i:3;s:3:"562";}}s:1:"Y";a:4:{s:1:"C";s:2:"89";s:2:"WX";s:3:"600";s:1:"N";s:1:"Y";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:1:"0";i:2;s:3:"589";i:3;s:3:"562";}}i:90;a:4:{s:1:"C";s:2:"90";s:2:"WX";s:3:"600";s:1:"N";s:1:"Z";s:1:"B";a:4:{i:0;s:2:"62";i:1;s:1:"0";i:2;s:3:"539";i:3;s:3:"562";}}s:1:"Z";a:4:{s:1:"C";s:2:"90";s:2:"WX";s:3:"600";s:1:"N";s:1:"Z";s:1:"B";a:4:{i:0;s:2:"62";i:1;s:1:"0";i:2;s:3:"539";i:3;s:3:"562";}}i:91;a:4:{s:1:"C";s:2:"91";s:2:"WX";s:3:"600";s:1:"N";s:11:"bracketleft";s:1:"B";a:4:{i:0;s:3:"245";i:1;s:4:"-102";i:2;s:3:"475";i:3;s:3:"616";}}s:11:"bracketleft";a:4:{s:1:"C";s:2:"91";s:2:"WX";s:3:"600";s:1:"N";s:11:"bracketleft";s:1:"B";a:4:{i:0;s:3:"245";i:1;s:4:"-102";i:2;s:3:"475";i:3;s:3:"616";}}i:92;a:4:{s:1:"C";s:2:"92";s:2:"WX";s:3:"600";s:1:"N";s:9:"backslash";s:1:"B";a:4:{i:0;s:2:"99";i:1;s:3:"-77";i:2;s:3:"503";i:3;s:3:"626";}}s:9:"backslash";a:4:{s:1:"C";s:2:"92";s:2:"WX";s:3:"600";s:1:"N";s:9:"backslash";s:1:"B";a:4:{i:0;s:2:"99";i:1;s:3:"-77";i:2;s:3:"503";i:3;s:3:"626";}}i:93;a:4:{s:1:"C";s:2:"93";s:2:"WX";s:3:"600";s:1:"N";s:12:"bracketright";s:1:"B";a:4:{i:0;s:3:"125";i:1;s:4:"-102";i:2;s:3:"355";i:3;s:3:"616";}}s:12:"bracketright";a:4:{s:1:"C";s:2:"93";s:2:"WX";s:3:"600";s:1:"N";s:12:"bracketright";s:1:"B";a:4:{i:0;s:3:"125";i:1;s:4:"-102";i:2;s:3:"355";i:3;s:3:"616";}}i:94;a:4:{s:1:"C";s:2:"94";s:2:"WX";s:3:"600";s:1:"N";s:11:"asciicircum";s:1:"B";a:4:{i:0;s:3:"108";i:1;s:3:"250";i:2;s:3:"492";i:3;s:3:"616";}}s:11:"asciicircum";a:4:{s:1:"C";s:2:"94";s:2:"WX";s:3:"600";s:1:"N";s:11:"asciicircum";s:1:"B";a:4:{i:0;s:3:"108";i:1;s:3:"250";i:2;s:3:"492";i:3;s:3:"616";}}i:95;a:4:{s:1:"C";s:2:"95";s:2:"WX";s:3:"600";s:1:"N";s:10:"underscore";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:4:"-125";i:2;s:3:"600";i:3;s:3:"-75";}}s:10:"underscore";a:4:{s:1:"C";s:2:"95";s:2:"WX";s:3:"600";s:1:"N";s:10:"underscore";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:4:"-125";i:2;s:3:"600";i:3;s:3:"-75";}}i:96;a:4:{s:1:"C";s:2:"96";s:2:"WX";s:3:"600";s:1:"N";s:9:"quoteleft";s:1:"B";a:4:{i:0;s:3:"178";i:1;s:3:"277";i:2;s:3:"428";i:3;s:3:"562";}}s:9:"quoteleft";a:4:{s:1:"C";s:2:"96";s:2:"WX";s:3:"600";s:1:"N";s:9:"quoteleft";s:1:"B";a:4:{i:0;s:3:"178";i:1;s:3:"277";i:2;s:3:"428";i:3;s:3:"562";}}i:97;a:4:{s:1:"C";s:2:"97";s:2:"WX";s:3:"600";s:1:"N";s:1:"a";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-15";i:2;s:3:"570";i:3;s:3:"454";}}s:1:"a";a:4:{s:1:"C";s:2:"97";s:2:"WX";s:3:"600";s:1:"N";s:1:"a";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-15";i:2;s:3:"570";i:3;s:3:"454";}}i:98;a:4:{s:1:"C";s:2:"98";s:2:"WX";s:3:"600";s:1:"N";s:1:"b";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"-15";i:2;s:3:"584";i:3;s:3:"626";}}s:1:"b";a:4:{s:1:"C";s:2:"98";s:2:"WX";s:3:"600";s:1:"N";s:1:"b";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"-15";i:2;s:3:"584";i:3;s:3:"626";}}i:99;a:4:{s:1:"C";s:2:"99";s:2:"WX";s:3:"600";s:1:"N";s:1:"c";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"-15";i:2;s:3:"545";i:3;s:3:"459";}}s:1:"c";a:4:{s:1:"C";s:2:"99";s:2:"WX";s:3:"600";s:1:"N";s:1:"c";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"-15";i:2;s:3:"545";i:3;s:3:"459";}}i:100;a:4:{s:1:"C";s:3:"100";s:2:"WX";s:3:"600";s:1:"N";s:1:"d";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:3:"-15";i:2;s:3:"591";i:3;s:3:"626";}}s:1:"d";a:4:{s:1:"C";s:3:"100";s:2:"WX";s:3:"600";s:1:"N";s:1:"d";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:3:"-15";i:2;s:3:"591";i:3;s:3:"626";}}i:101;a:4:{s:1:"C";s:3:"101";s:2:"WX";s:3:"600";s:1:"N";s:1:"e";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"-15";i:2;s:3:"563";i:3;s:3:"454";}}s:1:"e";a:4:{s:1:"C";s:3:"101";s:2:"WX";s:3:"600";s:1:"N";s:1:"e";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"-15";i:2;s:3:"563";i:3;s:3:"454";}}i:102;a:5:{s:1:"C";s:3:"102";s:2:"WX";s:3:"600";s:1:"N";s:1:"f";s:1:"B";a:4:{i:0;s:2:"83";i:1;s:1:"0";i:2;s:3:"547";i:3;s:3:"626";}s:1:"L";a:2:{i:0;s:1:"l";i:1;s:2:"fl";}}s:1:"f";a:5:{s:1:"C";s:3:"102";s:2:"WX";s:3:"600";s:1:"N";s:1:"f";s:1:"B";a:4:{i:0;s:2:"83";i:1;s:1:"0";i:2;s:3:"547";i:3;s:3:"626";}s:1:"L";a:2:{i:0;s:1:"l";i:1;s:2:"fl";}}i:103;a:4:{s:1:"C";s:3:"103";s:2:"WX";s:3:"600";s:1:"N";s:1:"g";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:4:"-146";i:2;s:3:"580";i:3;s:3:"454";}}s:1:"g";a:4:{s:1:"C";s:3:"103";s:2:"WX";s:3:"600";s:1:"N";s:1:"g";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:4:"-146";i:2;s:3:"580";i:3;s:3:"454";}}i:104;a:4:{s:1:"C";s:3:"104";s:2:"WX";s:3:"600";s:1:"N";s:1:"h";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:1:"0";i:2;s:3:"592";i:3;s:3:"626";}}s:1:"h";a:4:{s:1:"C";s:3:"104";s:2:"WX";s:3:"600";s:1:"N";s:1:"h";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:1:"0";i:2;s:3:"592";i:3;s:3:"626";}}i:105;a:4:{s:1:"C";s:3:"105";s:2:"WX";s:3:"600";s:1:"N";s:1:"i";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"523";i:3;s:3:"658";}}s:1:"i";a:4:{s:1:"C";s:3:"105";s:2:"WX";s:3:"600";s:1:"N";s:1:"i";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"523";i:3;s:3:"658";}}i:106;a:4:{s:1:"C";s:3:"106";s:2:"WX";s:3:"600";s:1:"N";s:1:"j";s:1:"B";a:4:{i:0;s:2:"63";i:1;s:4:"-146";i:2;s:3:"440";i:3;s:3:"658";}}s:1:"j";a:4:{s:1:"C";s:3:"106";s:2:"WX";s:3:"600";s:1:"N";s:1:"j";s:1:"B";a:4:{i:0;s:2:"63";i:1;s:4:"-146";i:2;s:3:"440";i:3;s:3:"658";}}i:107;a:4:{s:1:"C";s:3:"107";s:2:"WX";s:3:"600";s:1:"N";s:1:"k";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"585";i:3;s:3:"626";}}s:1:"k";a:4:{s:1:"C";s:3:"107";s:2:"WX";s:3:"600";s:1:"N";s:1:"k";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"585";i:3;s:3:"626";}}i:108;a:4:{s:1:"C";s:3:"108";s:2:"WX";s:3:"600";s:1:"N";s:1:"l";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"523";i:3;s:3:"626";}}s:1:"l";a:4:{s:1:"C";s:3:"108";s:2:"WX";s:3:"600";s:1:"N";s:1:"l";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"523";i:3;s:3:"626";}}i:109;a:4:{s:1:"C";s:3:"109";s:2:"WX";s:3:"600";s:1:"N";s:1:"m";s:1:"B";a:4:{i:0;s:3:"-22";i:1;s:1:"0";i:2;s:3:"626";i:3;s:3:"454";}}s:1:"m";a:4:{s:1:"C";s:3:"109";s:2:"WX";s:3:"600";s:1:"N";s:1:"m";s:1:"B";a:4:{i:0;s:3:"-22";i:1;s:1:"0";i:2;s:3:"626";i:3;s:3:"454";}}i:110;a:4:{s:1:"C";s:3:"110";s:2:"WX";s:3:"600";s:1:"N";s:1:"n";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:1:"0";i:2;s:3:"592";i:3;s:3:"454";}}s:1:"n";a:4:{s:1:"C";s:3:"110";s:2:"WX";s:3:"600";s:1:"N";s:1:"n";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:1:"0";i:2;s:3:"592";i:3;s:3:"454";}}i:111;a:4:{s:1:"C";s:3:"111";s:2:"WX";s:3:"600";s:1:"N";s:1:"o";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"-15";i:2;s:3:"570";i:3;s:3:"454";}}s:1:"o";a:4:{s:1:"C";s:3:"111";s:2:"WX";s:3:"600";s:1:"N";s:1:"o";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"-15";i:2;s:3:"570";i:3;s:3:"454";}}i:112;a:4:{s:1:"C";s:3:"112";s:2:"WX";s:3:"600";s:1:"N";s:1:"p";s:1:"B";a:4:{i:0;s:2:"-1";i:1;s:4:"-142";i:2;s:3:"570";i:3;s:3:"454";}}s:1:"p";a:4:{s:1:"C";s:3:"112";s:2:"WX";s:3:"600";s:1:"N";s:1:"p";s:1:"B";a:4:{i:0;s:2:"-1";i:1;s:4:"-142";i:2;s:3:"570";i:3;s:3:"454";}}i:113;a:4:{s:1:"C";s:3:"113";s:2:"WX";s:3:"600";s:1:"N";s:1:"q";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:4:"-142";i:2;s:3:"591";i:3;s:3:"454";}}s:1:"q";a:4:{s:1:"C";s:3:"113";s:2:"WX";s:3:"600";s:1:"N";s:1:"q";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:4:"-142";i:2;s:3:"591";i:3;s:3:"454";}}i:114;a:4:{s:1:"C";s:3:"114";s:2:"WX";s:3:"600";s:1:"N";s:1:"r";s:1:"B";a:4:{i:0;s:2:"47";i:1;s:1:"0";i:2;s:3:"580";i:3;s:3:"454";}}s:1:"r";a:4:{s:1:"C";s:3:"114";s:2:"WX";s:3:"600";s:1:"N";s:1:"r";s:1:"B";a:4:{i:0;s:2:"47";i:1;s:1:"0";i:2;s:3:"580";i:3;s:3:"454";}}i:115;a:4:{s:1:"C";s:3:"115";s:2:"WX";s:3:"600";s:1:"N";s:1:"s";s:1:"B";a:4:{i:0;s:2:"68";i:1;s:3:"-17";i:2;s:3:"535";i:3;s:3:"459";}}s:1:"s";a:4:{s:1:"C";s:3:"115";s:2:"WX";s:3:"600";s:1:"N";s:1:"s";s:1:"B";a:4:{i:0;s:2:"68";i:1;s:3:"-17";i:2;s:3:"535";i:3;s:3:"459";}}i:116;a:4:{s:1:"C";s:3:"116";s:2:"WX";s:3:"600";s:1:"N";s:1:"t";s:1:"B";a:4:{i:0;s:2:"47";i:1;s:3:"-15";i:2;s:3:"532";i:3;s:3:"562";}}s:1:"t";a:4:{s:1:"C";s:3:"116";s:2:"WX";s:3:"600";s:1:"N";s:1:"t";s:1:"B";a:4:{i:0;s:2:"47";i:1;s:3:"-15";i:2;s:3:"532";i:3;s:3:"562";}}i:117;a:4:{s:1:"C";s:3:"117";s:2:"WX";s:3:"600";s:1:"N";s:1:"u";s:1:"B";a:4:{i:0;s:2:"-1";i:1;s:3:"-15";i:2;s:3:"569";i:3;s:3:"439";}}s:1:"u";a:4:{s:1:"C";s:3:"117";s:2:"WX";s:3:"600";s:1:"N";s:1:"u";s:1:"B";a:4:{i:0;s:2:"-1";i:1;s:3:"-15";i:2;s:3:"569";i:3;s:3:"439";}}i:118;a:4:{s:1:"C";s:3:"118";s:2:"WX";s:3:"600";s:1:"N";s:1:"v";s:1:"B";a:4:{i:0;s:2:"-1";i:1;s:1:"0";i:2;s:3:"601";i:3;s:3:"439";}}s:1:"v";a:4:{s:1:"C";s:3:"118";s:2:"WX";s:3:"600";s:1:"N";s:1:"v";s:1:"B";a:4:{i:0;s:2:"-1";i:1;s:1:"0";i:2;s:3:"601";i:3;s:3:"439";}}i:119;a:4:{s:1:"C";s:3:"119";s:2:"WX";s:3:"600";s:1:"N";s:1:"w";s:1:"B";a:4:{i:0;s:3:"-18";i:1;s:1:"0";i:2;s:3:"618";i:3;s:3:"439";}}s:1:"w";a:4:{s:1:"C";s:3:"119";s:2:"WX";s:3:"600";s:1:"N";s:1:"w";s:1:"B";a:4:{i:0;s:3:"-18";i:1;s:1:"0";i:2;s:3:"618";i:3;s:3:"439";}}i:120;a:4:{s:1:"C";s:3:"120";s:2:"WX";s:3:"600";s:1:"N";s:1:"x";s:1:"B";a:4:{i:0;s:1:"6";i:1;s:1:"0";i:2;s:3:"594";i:3;s:3:"439";}}s:1:"x";a:4:{s:1:"C";s:3:"120";s:2:"WX";s:3:"600";s:1:"N";s:1:"x";s:1:"B";a:4:{i:0;s:1:"6";i:1;s:1:"0";i:2;s:3:"594";i:3;s:3:"439";}}i:121;a:4:{s:1:"C";s:3:"121";s:2:"WX";s:3:"600";s:1:"N";s:1:"y";s:1:"B";a:4:{i:0;s:2:"-4";i:1;s:4:"-142";i:2;s:3:"601";i:3;s:3:"439";}}s:1:"y";a:4:{s:1:"C";s:3:"121";s:2:"WX";s:3:"600";s:1:"N";s:1:"y";s:1:"B";a:4:{i:0;s:2:"-4";i:1;s:4:"-142";i:2;s:3:"601";i:3;s:3:"439";}}i:122;a:4:{s:1:"C";s:3:"122";s:2:"WX";s:3:"600";s:1:"N";s:1:"z";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:1:"0";i:2;s:3:"520";i:3;s:3:"439";}}s:1:"z";a:4:{s:1:"C";s:3:"122";s:2:"WX";s:3:"600";s:1:"N";s:1:"z";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:1:"0";i:2;s:3:"520";i:3;s:3:"439";}}i:123;a:4:{s:1:"C";s:3:"123";s:2:"WX";s:3:"600";s:1:"N";s:9:"braceleft";s:1:"B";a:4:{i:0;s:3:"160";i:1;s:4:"-102";i:2;s:3:"464";i:3;s:3:"616";}}s:9:"braceleft";a:4:{s:1:"C";s:3:"123";s:2:"WX";s:3:"600";s:1:"N";s:9:"braceleft";s:1:"B";a:4:{i:0;s:3:"160";i:1;s:4:"-102";i:2;s:3:"464";i:3;s:3:"616";}}i:124;a:4:{s:1:"C";s:3:"124";s:2:"WX";s:3:"600";s:1:"N";s:3:"bar";s:1:"B";a:4:{i:0;s:3:"255";i:1;s:4:"-250";i:2;s:3:"345";i:3;s:3:"750";}}s:3:"bar";a:4:{s:1:"C";s:3:"124";s:2:"WX";s:3:"600";s:1:"N";s:3:"bar";s:1:"B";a:4:{i:0;s:3:"255";i:1;s:4:"-250";i:2;s:3:"345";i:3;s:3:"750";}}i:125;a:4:{s:1:"C";s:3:"125";s:2:"WX";s:3:"600";s:1:"N";s:10:"braceright";s:1:"B";a:4:{i:0;s:3:"136";i:1;s:4:"-102";i:2;s:3:"440";i:3;s:3:"616";}}s:10:"braceright";a:4:{s:1:"C";s:3:"125";s:2:"WX";s:3:"600";s:1:"N";s:10:"braceright";s:1:"B";a:4:{i:0;s:3:"136";i:1;s:4:"-102";i:2;s:3:"440";i:3;s:3:"616";}}i:126;a:4:{s:1:"C";s:3:"126";s:2:"WX";s:3:"600";s:1:"N";s:10:"asciitilde";s:1:"B";a:4:{i:0;s:2:"71";i:1;s:3:"153";i:2;s:3:"530";i:3;s:3:"356";}}s:10:"asciitilde";a:4:{s:1:"C";s:3:"126";s:2:"WX";s:3:"600";s:1:"N";s:10:"asciitilde";s:1:"B";a:4:{i:0;s:2:"71";i:1;s:3:"153";i:2;s:3:"530";i:3;s:3:"356";}}i:161;a:4:{s:1:"C";s:3:"161";s:2:"WX";s:3:"600";s:1:"N";s:10:"exclamdown";s:1:"B";a:4:{i:0;s:3:"202";i:1;s:4:"-146";i:2;s:3:"398";i:3;s:3:"449";}}s:10:"exclamdown";a:4:{s:1:"C";s:3:"161";s:2:"WX";s:3:"600";s:1:"N";s:10:"exclamdown";s:1:"B";a:4:{i:0;s:3:"202";i:1;s:4:"-146";i:2;s:3:"398";i:3;s:3:"449";}}i:162;a:4:{s:1:"C";s:3:"162";s:2:"WX";s:3:"600";s:1:"N";s:4:"cent";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:3:"-49";i:2;s:3:"518";i:3;s:3:"614";}}s:4:"cent";a:4:{s:1:"C";s:3:"162";s:2:"WX";s:3:"600";s:1:"N";s:4:"cent";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:3:"-49";i:2;s:3:"518";i:3;s:3:"614";}}i:163;a:4:{s:1:"C";s:3:"163";s:2:"WX";s:3:"600";s:1:"N";s:8:"sterling";s:1:"B";a:4:{i:0;s:2:"72";i:1;s:3:"-28";i:2;s:3:"558";i:3;s:3:"611";}}s:8:"sterling";a:4:{s:1:"C";s:3:"163";s:2:"WX";s:3:"600";s:1:"N";s:8:"sterling";s:1:"B";a:4:{i:0;s:2:"72";i:1;s:3:"-28";i:2;s:3:"558";i:3;s:3:"611";}}i:164;a:4:{s:1:"C";s:3:"164";s:2:"WX";s:3:"600";s:1:"N";s:8:"fraction";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-60";i:2;s:3:"576";i:3;s:3:"661";}}s:8:"fraction";a:4:{s:1:"C";s:3:"164";s:2:"WX";s:3:"600";s:1:"N";s:8:"fraction";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-60";i:2;s:3:"576";i:3;s:3:"661";}}i:165;a:4:{s:1:"C";s:3:"165";s:2:"WX";s:3:"600";s:1:"N";s:3:"yen";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:1:"0";i:2;s:3:"590";i:3;s:3:"562";}}s:3:"yen";a:4:{s:1:"C";s:3:"165";s:2:"WX";s:3:"600";s:1:"N";s:3:"yen";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:1:"0";i:2;s:3:"590";i:3;s:3:"562";}}i:166;a:4:{s:1:"C";s:3:"166";s:2:"WX";s:3:"600";s:1:"N";s:6:"florin";s:1:"B";a:4:{i:0;s:3:"-30";i:1;s:4:"-131";i:2;s:3:"572";i:3;s:3:"616";}}s:6:"florin";a:4:{s:1:"C";s:3:"166";s:2:"WX";s:3:"600";s:1:"N";s:6:"florin";s:1:"B";a:4:{i:0;s:3:"-30";i:1;s:4:"-131";i:2;s:3:"572";i:3;s:3:"616";}}i:167;a:4:{s:1:"C";s:3:"167";s:2:"WX";s:3:"600";s:1:"N";s:7:"section";s:1:"B";a:4:{i:0;s:2:"83";i:1;s:3:"-70";i:2;s:3:"517";i:3;s:3:"580";}}s:7:"section";a:4:{s:1:"C";s:3:"167";s:2:"WX";s:3:"600";s:1:"N";s:7:"section";s:1:"B";a:4:{i:0;s:2:"83";i:1;s:3:"-70";i:2;s:3:"517";i:3;s:3:"580";}}i:168;a:4:{s:1:"C";s:3:"168";s:2:"WX";s:3:"600";s:1:"N";s:8:"currency";s:1:"B";a:4:{i:0;s:2:"54";i:1;s:2:"49";i:2;s:3:"546";i:3;s:3:"517";}}s:8:"currency";a:4:{s:1:"C";s:3:"168";s:2:"WX";s:3:"600";s:1:"N";s:8:"currency";s:1:"B";a:4:{i:0;s:2:"54";i:1;s:2:"49";i:2;s:3:"546";i:3;s:3:"517";}}i:169;a:4:{s:1:"C";s:3:"169";s:2:"WX";s:3:"600";s:1:"N";s:11:"quotesingle";s:1:"B";a:4:{i:0;s:3:"227";i:1;s:3:"277";i:2;s:3:"373";i:3;s:3:"562";}}s:11:"quotesingle";a:4:{s:1:"C";s:3:"169";s:2:"WX";s:3:"600";s:1:"N";s:11:"quotesingle";s:1:"B";a:4:{i:0;s:3:"227";i:1;s:3:"277";i:2;s:3:"373";i:3;s:3:"562";}}i:170;a:4:{s:1:"C";s:3:"170";s:2:"WX";s:3:"600";s:1:"N";s:12:"quotedblleft";s:1:"B";a:4:{i:0;s:2:"71";i:1;s:3:"277";i:2;s:3:"535";i:3;s:3:"562";}}s:12:"quotedblleft";a:4:{s:1:"C";s:3:"170";s:2:"WX";s:3:"600";s:1:"N";s:12:"quotedblleft";s:1:"B";a:4:{i:0;s:2:"71";i:1;s:3:"277";i:2;s:3:"535";i:3;s:3:"562";}}i:171;a:4:{s:1:"C";s:3:"171";s:2:"WX";s:3:"600";s:1:"N";s:13:"guillemotleft";s:1:"B";a:4:{i:0;s:1:"8";i:1;s:2:"70";i:2;s:3:"553";i:3;s:3:"446";}}s:13:"guillemotleft";a:4:{s:1:"C";s:3:"171";s:2:"WX";s:3:"600";s:1:"N";s:13:"guillemotleft";s:1:"B";a:4:{i:0;s:1:"8";i:1;s:2:"70";i:2;s:3:"553";i:3;s:3:"446";}}i:172;a:4:{s:1:"C";s:3:"172";s:2:"WX";s:3:"600";s:1:"N";s:13:"guilsinglleft";s:1:"B";a:4:{i:0;s:3:"141";i:1;s:2:"70";i:2;s:3:"459";i:3;s:3:"446";}}s:13:"guilsinglleft";a:4:{s:1:"C";s:3:"172";s:2:"WX";s:3:"600";s:1:"N";s:13:"guilsinglleft";s:1:"B";a:4:{i:0;s:3:"141";i:1;s:2:"70";i:2;s:3:"459";i:3;s:3:"446";}}i:173;a:4:{s:1:"C";s:3:"173";s:2:"WX";s:3:"600";s:1:"N";s:14:"guilsinglright";s:1:"B";a:4:{i:0;s:3:"141";i:1;s:2:"70";i:2;s:3:"459";i:3;s:3:"446";}}s:14:"guilsinglright";a:4:{s:1:"C";s:3:"173";s:2:"WX";s:3:"600";s:1:"N";s:14:"guilsinglright";s:1:"B";a:4:{i:0;s:3:"141";i:1;s:2:"70";i:2;s:3:"459";i:3;s:3:"446";}}i:174;a:4:{s:1:"C";s:3:"174";s:2:"WX";s:3:"600";s:1:"N";s:2:"fi";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:1:"0";i:2;s:3:"593";i:3;s:3:"626";}}s:2:"fi";a:4:{s:1:"C";s:3:"174";s:2:"WX";s:3:"600";s:1:"N";s:2:"fi";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:1:"0";i:2;s:3:"593";i:3;s:3:"626";}}i:175;a:4:{s:1:"C";s:3:"175";s:2:"WX";s:3:"600";s:1:"N";s:2:"fl";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:1:"0";i:2;s:3:"593";i:3;s:3:"626";}}s:2:"fl";a:4:{s:1:"C";s:3:"175";s:2:"WX";s:3:"600";s:1:"N";s:2:"fl";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:1:"0";i:2;s:3:"593";i:3;s:3:"626";}}i:177;a:4:{s:1:"C";s:3:"177";s:2:"WX";s:3:"600";s:1:"N";s:6:"endash";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:3:"203";i:2;s:3:"535";i:3;s:3:"313";}}s:6:"endash";a:4:{s:1:"C";s:3:"177";s:2:"WX";s:3:"600";s:1:"N";s:6:"endash";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:3:"203";i:2;s:3:"535";i:3;s:3:"313";}}i:178;a:4:{s:1:"C";s:3:"178";s:2:"WX";s:3:"600";s:1:"N";s:6:"dagger";s:1:"B";a:4:{i:0;s:3:"106";i:1;s:3:"-70";i:2;s:3:"494";i:3;s:3:"580";}}s:6:"dagger";a:4:{s:1:"C";s:3:"178";s:2:"WX";s:3:"600";s:1:"N";s:6:"dagger";s:1:"B";a:4:{i:0;s:3:"106";i:1;s:3:"-70";i:2;s:3:"494";i:3;s:3:"580";}}i:179;a:4:{s:1:"C";s:3:"179";s:2:"WX";s:3:"600";s:1:"N";s:9:"daggerdbl";s:1:"B";a:4:{i:0;s:3:"106";i:1;s:3:"-70";i:2;s:3:"494";i:3;s:3:"580";}}s:9:"daggerdbl";a:4:{s:1:"C";s:3:"179";s:2:"WX";s:3:"600";s:1:"N";s:9:"daggerdbl";s:1:"B";a:4:{i:0;s:3:"106";i:1;s:3:"-70";i:2;s:3:"494";i:3;s:3:"580";}}i:180;a:4:{s:1:"C";s:3:"180";s:2:"WX";s:3:"600";s:1:"N";s:14:"periodcentered";s:1:"B";a:4:{i:0;s:3:"196";i:1;s:3:"165";i:2;s:3:"404";i:3;s:3:"351";}}s:14:"periodcentered";a:4:{s:1:"C";s:3:"180";s:2:"WX";s:3:"600";s:1:"N";s:14:"periodcentered";s:1:"B";a:4:{i:0;s:3:"196";i:1;s:3:"165";i:2;s:3:"404";i:3;s:3:"351";}}i:182;a:4:{s:1:"C";s:3:"182";s:2:"WX";s:3:"600";s:1:"N";s:9:"paragraph";s:1:"B";a:4:{i:0;s:1:"6";i:1;s:3:"-70";i:2;s:3:"576";i:3;s:3:"580";}}s:9:"paragraph";a:4:{s:1:"C";s:3:"182";s:2:"WX";s:3:"600";s:1:"N";s:9:"paragraph";s:1:"B";a:4:{i:0;s:1:"6";i:1;s:3:"-70";i:2;s:3:"576";i:3;s:3:"580";}}i:183;a:4:{s:1:"C";s:3:"183";s:2:"WX";s:3:"600";s:1:"N";s:6:"bullet";s:1:"B";a:4:{i:0;s:3:"140";i:1;s:3:"132";i:2;s:3:"460";i:3;s:3:"430";}}s:6:"bullet";a:4:{s:1:"C";s:3:"183";s:2:"WX";s:3:"600";s:1:"N";s:6:"bullet";s:1:"B";a:4:{i:0;s:3:"140";i:1;s:3:"132";i:2;s:3:"460";i:3;s:3:"430";}}i:184;a:4:{s:1:"C";s:3:"184";s:2:"WX";s:3:"600";s:1:"N";s:14:"quotesinglbase";s:1:"B";a:4:{i:0;s:3:"175";i:1;s:4:"-142";i:2;s:3:"427";i:3;s:3:"143";}}s:14:"quotesinglbase";a:4:{s:1:"C";s:3:"184";s:2:"WX";s:3:"600";s:1:"N";s:14:"quotesinglbase";s:1:"B";a:4:{i:0;s:3:"175";i:1;s:4:"-142";i:2;s:3:"427";i:3;s:3:"143";}}i:185;a:4:{s:1:"C";s:3:"185";s:2:"WX";s:3:"600";s:1:"N";s:12:"quotedblbase";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:4:"-142";i:2;s:3:"529";i:3;s:3:"143";}}s:12:"quotedblbase";a:4:{s:1:"C";s:3:"185";s:2:"WX";s:3:"600";s:1:"N";s:12:"quotedblbase";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:4:"-142";i:2;s:3:"529";i:3;s:3:"143";}}i:186;a:4:{s:1:"C";s:3:"186";s:2:"WX";s:3:"600";s:1:"N";s:13:"quotedblright";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:3:"277";i:2;s:3:"525";i:3;s:3:"562";}}s:13:"quotedblright";a:4:{s:1:"C";s:3:"186";s:2:"WX";s:3:"600";s:1:"N";s:13:"quotedblright";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:3:"277";i:2;s:3:"525";i:3;s:3:"562";}}i:187;a:4:{s:1:"C";s:3:"187";s:2:"WX";s:3:"600";s:1:"N";s:14:"guillemotright";s:1:"B";a:4:{i:0;s:2:"47";i:1;s:2:"70";i:2;s:3:"592";i:3;s:3:"446";}}s:14:"guillemotright";a:4:{s:1:"C";s:3:"187";s:2:"WX";s:3:"600";s:1:"N";s:14:"guillemotright";s:1:"B";a:4:{i:0;s:2:"47";i:1;s:2:"70";i:2;s:3:"592";i:3;s:3:"446";}}i:188;a:4:{s:1:"C";s:3:"188";s:2:"WX";s:3:"600";s:1:"N";s:8:"ellipsis";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:3:"-15";i:2;s:3:"574";i:3;s:3:"116";}}s:8:"ellipsis";a:4:{s:1:"C";s:3:"188";s:2:"WX";s:3:"600";s:1:"N";s:8:"ellipsis";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:3:"-15";i:2;s:3:"574";i:3;s:3:"116";}}i:189;a:4:{s:1:"C";s:3:"189";s:2:"WX";s:3:"600";s:1:"N";s:11:"perthousand";s:1:"B";a:4:{i:0;s:4:"-113";i:1;s:3:"-15";i:2;s:3:"713";i:3;s:3:"616";}}s:11:"perthousand";a:4:{s:1:"C";s:3:"189";s:2:"WX";s:3:"600";s:1:"N";s:11:"perthousand";s:1:"B";a:4:{i:0;s:4:"-113";i:1;s:3:"-15";i:2;s:3:"713";i:3;s:3:"616";}}i:191;a:4:{s:1:"C";s:3:"191";s:2:"WX";s:3:"600";s:1:"N";s:12:"questiondown";s:1:"B";a:4:{i:0;s:2:"99";i:1;s:4:"-146";i:2;s:3:"502";i:3;s:3:"449";}}s:12:"questiondown";a:4:{s:1:"C";s:3:"191";s:2:"WX";s:3:"600";s:1:"N";s:12:"questiondown";s:1:"B";a:4:{i:0;s:2:"99";i:1;s:4:"-146";i:2;s:3:"502";i:3;s:3:"449";}}i:193;a:4:{s:1:"C";s:3:"193";s:2:"WX";s:3:"600";s:1:"N";s:5:"grave";s:1:"B";a:4:{i:0;s:3:"132";i:1;s:3:"508";i:2;s:3:"395";i:3;s:3:"661";}}s:5:"grave";a:4:{s:1:"C";s:3:"193";s:2:"WX";s:3:"600";s:1:"N";s:5:"grave";s:1:"B";a:4:{i:0;s:3:"132";i:1;s:3:"508";i:2;s:3:"395";i:3;s:3:"661";}}i:194;a:4:{s:1:"C";s:3:"194";s:2:"WX";s:3:"600";s:1:"N";s:5:"acute";s:1:"B";a:4:{i:0;s:3:"205";i:1;s:3:"508";i:2;s:3:"468";i:3;s:3:"661";}}s:5:"acute";a:4:{s:1:"C";s:3:"194";s:2:"WX";s:3:"600";s:1:"N";s:5:"acute";s:1:"B";a:4:{i:0;s:3:"205";i:1;s:3:"508";i:2;s:3:"468";i:3;s:3:"661";}}i:195;a:4:{s:1:"C";s:3:"195";s:2:"WX";s:3:"600";s:1:"N";s:10:"circumflex";s:1:"B";a:4:{i:0;s:3:"103";i:1;s:3:"483";i:2;s:3:"497";i:3;s:3:"657";}}s:10:"circumflex";a:4:{s:1:"C";s:3:"195";s:2:"WX";s:3:"600";s:1:"N";s:10:"circumflex";s:1:"B";a:4:{i:0;s:3:"103";i:1;s:3:"483";i:2;s:3:"497";i:3;s:3:"657";}}i:196;a:4:{s:1:"C";s:3:"196";s:2:"WX";s:3:"600";s:1:"N";s:5:"tilde";s:1:"B";a:4:{i:0;s:2:"89";i:1;s:3:"493";i:2;s:3:"512";i:3;s:3:"636";}}s:5:"tilde";a:4:{s:1:"C";s:3:"196";s:2:"WX";s:3:"600";s:1:"N";s:5:"tilde";s:1:"B";a:4:{i:0;s:2:"89";i:1;s:3:"493";i:2;s:3:"512";i:3;s:3:"636";}}i:197;a:4:{s:1:"C";s:3:"197";s:2:"WX";s:3:"600";s:1:"N";s:6:"macron";s:1:"B";a:4:{i:0;s:2:"88";i:1;s:3:"505";i:2;s:3:"512";i:3;s:3:"585";}}s:6:"macron";a:4:{s:1:"C";s:3:"197";s:2:"WX";s:3:"600";s:1:"N";s:6:"macron";s:1:"B";a:4:{i:0;s:2:"88";i:1;s:3:"505";i:2;s:3:"512";i:3;s:3:"585";}}i:198;a:4:{s:1:"C";s:3:"198";s:2:"WX";s:3:"600";s:1:"N";s:5:"breve";s:1:"B";a:4:{i:0;s:2:"83";i:1;s:3:"468";i:2;s:3:"517";i:3;s:3:"631";}}s:5:"breve";a:4:{s:1:"C";s:3:"198";s:2:"WX";s:3:"600";s:1:"N";s:5:"breve";s:1:"B";a:4:{i:0;s:2:"83";i:1;s:3:"468";i:2;s:3:"517";i:3;s:3:"631";}}i:199;a:4:{s:1:"C";s:3:"199";s:2:"WX";s:3:"600";s:1:"N";s:9:"dotaccent";s:1:"B";a:4:{i:0;s:3:"230";i:1;s:3:"498";i:2;s:3:"370";i:3;s:3:"638";}}s:9:"dotaccent";a:4:{s:1:"C";s:3:"199";s:2:"WX";s:3:"600";s:1:"N";s:9:"dotaccent";s:1:"B";a:4:{i:0;s:3:"230";i:1;s:3:"498";i:2;s:3:"370";i:3;s:3:"638";}}i:200;a:4:{s:1:"C";s:3:"200";s:2:"WX";s:3:"600";s:1:"N";s:8:"dieresis";s:1:"B";a:4:{i:0;s:3:"128";i:1;s:3:"498";i:2;s:3:"472";i:3;s:3:"638";}}s:8:"dieresis";a:4:{s:1:"C";s:3:"200";s:2:"WX";s:3:"600";s:1:"N";s:8:"dieresis";s:1:"B";a:4:{i:0;s:3:"128";i:1;s:3:"498";i:2;s:3:"472";i:3;s:3:"638";}}i:202;a:4:{s:1:"C";s:3:"202";s:2:"WX";s:3:"600";s:1:"N";s:4:"ring";s:1:"B";a:4:{i:0;s:3:"198";i:1;s:3:"481";i:2;s:3:"402";i:3;s:3:"678";}}s:4:"ring";a:4:{s:1:"C";s:3:"202";s:2:"WX";s:3:"600";s:1:"N";s:4:"ring";s:1:"B";a:4:{i:0;s:3:"198";i:1;s:3:"481";i:2;s:3:"402";i:3;s:3:"678";}}i:203;a:4:{s:1:"C";s:3:"203";s:2:"WX";s:3:"600";s:1:"N";s:7:"cedilla";s:1:"B";a:4:{i:0;s:3:"205";i:1;s:4:"-206";i:2;s:3:"387";i:3;s:1:"0";}}s:7:"cedilla";a:4:{s:1:"C";s:3:"203";s:2:"WX";s:3:"600";s:1:"N";s:7:"cedilla";s:1:"B";a:4:{i:0;s:3:"205";i:1;s:4:"-206";i:2;s:3:"387";i:3;s:1:"0";}}i:205;a:4:{s:1:"C";s:3:"205";s:2:"WX";s:3:"600";s:1:"N";s:12:"hungarumlaut";s:1:"B";a:4:{i:0;s:2:"68";i:1;s:3:"488";i:2;s:3:"588";i:3;s:3:"661";}}s:12:"hungarumlaut";a:4:{s:1:"C";s:3:"205";s:2:"WX";s:3:"600";s:1:"N";s:12:"hungarumlaut";s:1:"B";a:4:{i:0;s:2:"68";i:1;s:3:"488";i:2;s:3:"588";i:3;s:3:"661";}}i:206;a:4:{s:1:"C";s:3:"206";s:2:"WX";s:3:"600";s:1:"N";s:6:"ogonek";s:1:"B";a:4:{i:0;s:3:"169";i:1;s:4:"-199";i:2;s:3:"400";i:3;s:1:"0";}}s:6:"ogonek";a:4:{s:1:"C";s:3:"206";s:2:"WX";s:3:"600";s:1:"N";s:6:"ogonek";s:1:"B";a:4:{i:0;s:3:"169";i:1;s:4:"-199";i:2;s:3:"400";i:3;s:1:"0";}}i:207;a:4:{s:1:"C";s:3:"207";s:2:"WX";s:3:"600";s:1:"N";s:5:"caron";s:1:"B";a:4:{i:0;s:3:"103";i:1;s:3:"493";i:2;s:3:"497";i:3;s:3:"667";}}s:5:"caron";a:4:{s:1:"C";s:3:"207";s:2:"WX";s:3:"600";s:1:"N";s:5:"caron";s:1:"B";a:4:{i:0;s:3:"103";i:1;s:3:"493";i:2;s:3:"497";i:3;s:3:"667";}}i:208;a:4:{s:1:"C";s:3:"208";s:2:"WX";s:3:"600";s:1:"N";s:6:"emdash";s:1:"B";a:4:{i:0;s:3:"-10";i:1;s:3:"203";i:2;s:3:"610";i:3;s:3:"313";}}s:6:"emdash";a:4:{s:1:"C";s:3:"208";s:2:"WX";s:3:"600";s:1:"N";s:6:"emdash";s:1:"B";a:4:{i:0;s:3:"-10";i:1;s:3:"203";i:2;s:3:"610";i:3;s:3:"313";}}i:225;a:4:{s:1:"C";s:3:"225";s:2:"WX";s:3:"600";s:1:"N";s:2:"AE";s:1:"B";a:4:{i:0;s:3:"-29";i:1;s:1:"0";i:2;s:3:"602";i:3;s:3:"562";}}s:2:"AE";a:4:{s:1:"C";s:3:"225";s:2:"WX";s:3:"600";s:1:"N";s:2:"AE";s:1:"B";a:4:{i:0;s:3:"-29";i:1;s:1:"0";i:2;s:3:"602";i:3;s:3:"562";}}i:227;a:4:{s:1:"C";s:3:"227";s:2:"WX";s:3:"600";s:1:"N";s:11:"ordfeminine";s:1:"B";a:4:{i:0;s:3:"147";i:1;s:3:"196";i:2;s:3:"453";i:3;s:3:"580";}}s:11:"ordfeminine";a:4:{s:1:"C";s:3:"227";s:2:"WX";s:3:"600";s:1:"N";s:11:"ordfeminine";s:1:"B";a:4:{i:0;s:3:"147";i:1;s:3:"196";i:2;s:3:"453";i:3;s:3:"580";}}i:232;a:4:{s:1:"C";s:3:"232";s:2:"WX";s:3:"600";s:1:"N";s:6:"Lslash";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:1:"0";i:2;s:3:"578";i:3;s:3:"562";}}s:6:"Lslash";a:4:{s:1:"C";s:3:"232";s:2:"WX";s:3:"600";s:1:"N";s:6:"Lslash";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:1:"0";i:2;s:3:"578";i:3;s:3:"562";}}i:233;a:4:{s:1:"C";s:3:"233";s:2:"WX";s:3:"600";s:1:"N";s:6:"Oslash";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:3:"-22";i:2;s:3:"578";i:3;s:3:"584";}}s:6:"Oslash";a:4:{s:1:"C";s:3:"233";s:2:"WX";s:3:"600";s:1:"N";s:6:"Oslash";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:3:"-22";i:2;s:3:"578";i:3;s:3:"584";}}i:234;a:4:{s:1:"C";s:3:"234";s:2:"WX";s:3:"600";s:1:"N";s:2:"OE";s:1:"B";a:4:{i:0;s:3:"-25";i:1;s:1:"0";i:2;s:3:"595";i:3;s:3:"562";}}s:2:"OE";a:4:{s:1:"C";s:3:"234";s:2:"WX";s:3:"600";s:1:"N";s:2:"OE";s:1:"B";a:4:{i:0;s:3:"-25";i:1;s:1:"0";i:2;s:3:"595";i:3;s:3:"562";}}i:235;a:4:{s:1:"C";s:3:"235";s:2:"WX";s:3:"600";s:1:"N";s:12:"ordmasculine";s:1:"B";a:4:{i:0;s:3:"147";i:1;s:3:"196";i:2;s:3:"453";i:3;s:3:"580";}}s:12:"ordmasculine";a:4:{s:1:"C";s:3:"235";s:2:"WX";s:3:"600";s:1:"N";s:12:"ordmasculine";s:1:"B";a:4:{i:0;s:3:"147";i:1;s:3:"196";i:2;s:3:"453";i:3;s:3:"580";}}i:241;a:4:{s:1:"C";s:3:"241";s:2:"WX";s:3:"600";s:1:"N";s:2:"ae";s:1:"B";a:4:{i:0;s:2:"-4";i:1;s:3:"-15";i:2;s:3:"601";i:3;s:3:"454";}}s:2:"ae";a:4:{s:1:"C";s:3:"241";s:2:"WX";s:3:"600";s:1:"N";s:2:"ae";s:1:"B";a:4:{i:0;s:2:"-4";i:1;s:3:"-15";i:2;s:3:"601";i:3;s:3:"454";}}i:245;a:4:{s:1:"C";s:3:"245";s:2:"WX";s:3:"600";s:1:"N";s:8:"dotlessi";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"523";i:3;s:3:"439";}}s:8:"dotlessi";a:4:{s:1:"C";s:3:"245";s:2:"WX";s:3:"600";s:1:"N";s:8:"dotlessi";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"523";i:3;s:3:"439";}}i:248;a:4:{s:1:"C";s:3:"248";s:2:"WX";s:3:"600";s:1:"N";s:6:"lslash";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"523";i:3;s:3:"626";}}s:6:"lslash";a:4:{s:1:"C";s:3:"248";s:2:"WX";s:3:"600";s:1:"N";s:6:"lslash";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"523";i:3;s:3:"626";}}i:249;a:4:{s:1:"C";s:3:"249";s:2:"WX";s:3:"600";s:1:"N";s:6:"oslash";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"-24";i:2;s:3:"570";i:3;s:3:"463";}}s:6:"oslash";a:4:{s:1:"C";s:3:"249";s:2:"WX";s:3:"600";s:1:"N";s:6:"oslash";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"-24";i:2;s:3:"570";i:3;s:3:"463";}}i:250;a:4:{s:1:"C";s:3:"250";s:2:"WX";s:3:"600";s:1:"N";s:2:"oe";s:1:"B";a:4:{i:0;s:3:"-18";i:1;s:3:"-15";i:2;s:3:"611";i:3;s:3:"454";}}s:2:"oe";a:4:{s:1:"C";s:3:"250";s:2:"WX";s:3:"600";s:1:"N";s:2:"oe";s:1:"B";a:4:{i:0;s:3:"-18";i:1;s:3:"-15";i:2;s:3:"611";i:3;s:3:"454";}}i:251;a:4:{s:1:"C";s:3:"251";s:2:"WX";s:3:"600";s:1:"N";s:10:"germandbls";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:3:"-15";i:2;s:3:"596";i:3;s:3:"626";}}s:10:"germandbls";a:4:{s:1:"C";s:3:"251";s:2:"WX";s:3:"600";s:1:"N";s:10:"germandbls";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:3:"-15";i:2;s:3:"596";i:3;s:3:"626";}}s:9:"Idieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"Idieresis";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"523";i:3;s:3:"761";}}s:6:"eacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"eacute";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"-15";i:2;s:3:"563";i:3;s:3:"661";}}s:6:"abreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"abreve";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-15";i:2;s:3:"570";i:3;s:3:"661";}}s:13:"uhungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:13:"uhungarumlaut";s:1:"B";a:4:{i:0;s:2:"-1";i:1;s:3:"-15";i:2;s:3:"628";i:3;s:3:"661";}}s:6:"ecaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"ecaron";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"-15";i:2;s:3:"563";i:3;s:3:"667";}}s:9:"Ydieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"Ydieresis";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:1:"0";i:2;s:3:"589";i:3;s:3:"761";}}s:6:"divide";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"divide";s:1:"B";a:4:{i:0;s:2:"71";i:1;s:2:"16";i:2;s:3:"529";i:3;s:3:"500";}}s:6:"Yacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Yacute";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:1:"0";i:2;s:3:"589";i:3;s:3:"784";}}s:11:"Acircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"Acircumflex";s:1:"B";a:4:{i:0;s:2:"-9";i:1;s:1:"0";i:2;s:3:"609";i:3;s:3:"780";}}s:6:"aacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"aacute";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-15";i:2;s:3:"570";i:3;s:3:"661";}}s:11:"Ucircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"Ucircumflex";s:1:"B";a:4:{i:0;s:1:"4";i:1;s:3:"-18";i:2;s:3:"596";i:3;s:3:"780";}}s:6:"yacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"yacute";s:1:"B";a:4:{i:0;s:2:"-4";i:1;s:4:"-142";i:2;s:3:"601";i:3;s:3:"661";}}s:12:"scommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"scommaaccent";s:1:"B";a:4:{i:0;s:2:"68";i:1;s:4:"-250";i:2;s:3:"535";i:3;s:3:"459";}}s:11:"ecircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"ecircumflex";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"-15";i:2;s:3:"563";i:3;s:3:"657";}}s:5:"Uring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:5:"Uring";s:1:"B";a:4:{i:0;s:1:"4";i:1;s:3:"-18";i:2;s:3:"596";i:3;s:3:"801";}}s:9:"Udieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"Udieresis";s:1:"B";a:4:{i:0;s:1:"4";i:1;s:3:"-18";i:2;s:3:"596";i:3;s:3:"761";}}s:7:"aogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"aogonek";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:4:"-199";i:2;s:3:"586";i:3;s:3:"454";}}s:6:"Uacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Uacute";s:1:"B";a:4:{i:0;s:1:"4";i:1;s:3:"-18";i:2;s:3:"596";i:3;s:3:"784";}}s:7:"uogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"uogonek";s:1:"B";a:4:{i:0;s:2:"-1";i:1;s:4:"-199";i:2;s:3:"585";i:3;s:3:"439";}}s:9:"Edieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"Edieresis";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:1:"0";i:2;s:3:"560";i:3;s:3:"761";}}s:6:"Dcroat";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Dcroat";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:1:"0";i:2;s:3:"594";i:3;s:3:"562";}}s:11:"commaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"commaaccent";s:1:"B";a:4:{i:0;s:3:"205";i:1;s:4:"-250";i:2;s:3:"397";i:3;s:3:"-57";}}s:9:"copyright";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"copyright";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"-18";i:2;s:3:"600";i:3;s:3:"580";}}s:7:"Emacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"Emacron";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:1:"0";i:2;s:3:"560";i:3;s:3:"708";}}s:6:"ccaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"ccaron";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"-15";i:2;s:3:"545";i:3;s:3:"667";}}s:5:"aring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:5:"aring";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-15";i:2;s:3:"570";i:3;s:3:"678";}}s:12:"Ncommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"Ncommaaccent";s:1:"B";a:4:{i:0;s:1:"8";i:1;s:4:"-250";i:2;s:3:"610";i:3;s:3:"562";}}s:6:"lacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"lacute";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"523";i:3;s:3:"801";}}s:6:"agrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"agrave";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-15";i:2;s:3:"570";i:3;s:3:"661";}}s:12:"Tcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"Tcommaaccent";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:4:"-250";i:2;s:3:"579";i:3;s:3:"562";}}s:6:"Cacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Cacute";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:3:"-18";i:2;s:3:"560";i:3;s:3:"784";}}s:6:"atilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"atilde";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-15";i:2;s:3:"570";i:3;s:3:"636";}}s:10:"Edotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:10:"Edotaccent";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:1:"0";i:2;s:3:"560";i:3;s:3:"761";}}s:6:"scaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"scaron";s:1:"B";a:4:{i:0;s:2:"68";i:1;s:3:"-17";i:2;s:3:"535";i:3;s:3:"667";}}s:8:"scedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:8:"scedilla";s:1:"B";a:4:{i:0;s:2:"68";i:1;s:4:"-206";i:2;s:3:"535";i:3;s:3:"459";}}s:6:"iacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"iacute";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"523";i:3;s:3:"661";}}s:7:"lozenge";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"lozenge";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:1:"0";i:2;s:3:"534";i:3;s:3:"740";}}s:6:"Rcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Rcaron";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:1:"0";i:2;s:3:"599";i:3;s:3:"790";}}s:12:"Gcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"Gcommaaccent";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:4:"-250";i:2;s:3:"594";i:3;s:3:"580";}}s:11:"ucircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"ucircumflex";s:1:"B";a:4:{i:0;s:2:"-1";i:1;s:3:"-15";i:2;s:3:"569";i:3;s:3:"657";}}s:11:"acircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"acircumflex";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-15";i:2;s:3:"570";i:3;s:3:"657";}}s:7:"Amacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"Amacron";s:1:"B";a:4:{i:0;s:2:"-9";i:1;s:1:"0";i:2;s:3:"609";i:3;s:3:"708";}}s:6:"rcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"rcaron";s:1:"B";a:4:{i:0;s:2:"47";i:1;s:1:"0";i:2;s:3:"580";i:3;s:3:"667";}}s:8:"ccedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:8:"ccedilla";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:4:"-206";i:2;s:3:"545";i:3;s:3:"459";}}s:10:"Zdotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:10:"Zdotaccent";s:1:"B";a:4:{i:0;s:2:"62";i:1;s:1:"0";i:2;s:3:"539";i:3;s:3:"761";}}s:5:"Thorn";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:5:"Thorn";s:1:"B";a:4:{i:0;s:2:"48";i:1;s:1:"0";i:2;s:3:"557";i:3;s:3:"562";}}s:7:"Omacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"Omacron";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:3:"-18";i:2;s:3:"578";i:3;s:3:"708";}}s:6:"Racute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Racute";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:1:"0";i:2;s:3:"599";i:3;s:3:"784";}}s:6:"Sacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Sacute";s:1:"B";a:4:{i:0;s:2:"47";i:1;s:3:"-22";i:2;s:3:"553";i:3;s:3:"784";}}s:6:"dcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"dcaron";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:3:"-15";i:2;s:3:"727";i:3;s:3:"626";}}s:7:"Umacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"Umacron";s:1:"B";a:4:{i:0;s:1:"4";i:1;s:3:"-18";i:2;s:3:"596";i:3;s:3:"708";}}s:5:"uring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:5:"uring";s:1:"B";a:4:{i:0;s:2:"-1";i:1;s:3:"-15";i:2;s:3:"569";i:3;s:3:"678";}}s:13:"threesuperior";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:13:"threesuperior";s:1:"B";a:4:{i:0;s:3:"138";i:1;s:3:"222";i:2;s:3:"433";i:3;s:3:"616";}}s:6:"Ograve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Ograve";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:3:"-18";i:2;s:3:"578";i:3;s:3:"784";}}s:6:"Agrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Agrave";s:1:"B";a:4:{i:0;s:2:"-9";i:1;s:1:"0";i:2;s:3:"609";i:3;s:3:"784";}}s:6:"Abreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Abreve";s:1:"B";a:4:{i:0;s:2:"-9";i:1;s:1:"0";i:2;s:3:"609";i:3;s:3:"784";}}s:8:"multiply";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:8:"multiply";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:2:"39";i:2;s:3:"520";i:3;s:3:"478";}}s:6:"uacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"uacute";s:1:"B";a:4:{i:0;s:2:"-1";i:1;s:3:"-15";i:2;s:3:"569";i:3;s:3:"661";}}s:6:"Tcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Tcaron";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:1:"0";i:2;s:3:"579";i:3;s:3:"790";}}s:11:"partialdiff";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"partialdiff";s:1:"B";a:4:{i:0;s:2:"63";i:1;s:3:"-38";i:2;s:3:"537";i:3;s:3:"728";}}s:9:"ydieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"ydieresis";s:1:"B";a:4:{i:0;s:2:"-4";i:1;s:4:"-142";i:2;s:3:"601";i:3;s:3:"638";}}s:6:"Nacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Nacute";s:1:"B";a:4:{i:0;s:1:"8";i:1;s:3:"-12";i:2;s:3:"610";i:3;s:3:"784";}}s:11:"icircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"icircumflex";s:1:"B";a:4:{i:0;s:2:"73";i:1;s:1:"0";i:2;s:3:"523";i:3;s:3:"657";}}s:11:"Ecircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"Ecircumflex";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:1:"0";i:2;s:3:"560";i:3;s:3:"780";}}s:9:"adieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"adieresis";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-15";i:2;s:3:"570";i:3;s:3:"638";}}s:9:"edieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"edieresis";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"-15";i:2;s:3:"563";i:3;s:3:"638";}}s:6:"cacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"cacute";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"-15";i:2;s:3:"545";i:3;s:3:"661";}}s:6:"nacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"nacute";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:1:"0";i:2;s:3:"592";i:3;s:3:"661";}}s:7:"umacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"umacron";s:1:"B";a:4:{i:0;s:2:"-1";i:1;s:3:"-15";i:2;s:3:"569";i:3;s:3:"585";}}s:6:"Ncaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Ncaron";s:1:"B";a:4:{i:0;s:1:"8";i:1;s:3:"-12";i:2;s:3:"610";i:3;s:3:"790";}}s:6:"Iacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Iacute";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"523";i:3;s:3:"784";}}s:9:"plusminus";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"plusminus";s:1:"B";a:4:{i:0;s:2:"71";i:1;s:2:"24";i:2;s:3:"529";i:3;s:3:"515";}}s:9:"brokenbar";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"brokenbar";s:1:"B";a:4:{i:0;s:3:"255";i:1;s:4:"-175";i:2;s:3:"345";i:3;s:3:"675";}}s:10:"registered";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:10:"registered";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"-18";i:2;s:3:"600";i:3;s:3:"580";}}s:6:"Gbreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Gbreve";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:3:"-18";i:2;s:3:"594";i:3;s:3:"784";}}s:10:"Idotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:10:"Idotaccent";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"523";i:3;s:3:"761";}}s:9:"summation";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"summation";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:3:"-10";i:2;s:3:"586";i:3;s:3:"706";}}s:6:"Egrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Egrave";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:1:"0";i:2;s:3:"560";i:3;s:3:"784";}}s:6:"racute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"racute";s:1:"B";a:4:{i:0;s:2:"47";i:1;s:1:"0";i:2;s:3:"580";i:3;s:3:"661";}}s:7:"omacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"omacron";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"-15";i:2;s:3:"570";i:3;s:3:"585";}}s:6:"Zacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Zacute";s:1:"B";a:4:{i:0;s:2:"62";i:1;s:1:"0";i:2;s:3:"539";i:3;s:3:"784";}}s:6:"Zcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Zcaron";s:1:"B";a:4:{i:0;s:2:"62";i:1;s:1:"0";i:2;s:3:"539";i:3;s:3:"790";}}s:12:"greaterequal";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"greaterequal";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"523";i:3;s:3:"696";}}s:3:"Eth";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:3:"Eth";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:1:"0";i:2;s:3:"594";i:3;s:3:"562";}}s:8:"Ccedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:8:"Ccedilla";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:4:"-206";i:2;s:3:"560";i:3;s:3:"580";}}s:12:"lcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"lcommaaccent";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:4:"-250";i:2;s:3:"523";i:3;s:3:"626";}}s:6:"tcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"tcaron";s:1:"B";a:4:{i:0;s:2:"47";i:1;s:3:"-15";i:2;s:3:"532";i:3;s:3:"703";}}s:7:"eogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"eogonek";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:4:"-199";i:2;s:3:"563";i:3;s:3:"454";}}s:7:"Uogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"Uogonek";s:1:"B";a:4:{i:0;s:1:"4";i:1;s:4:"-199";i:2;s:3:"596";i:3;s:3:"562";}}s:6:"Aacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Aacute";s:1:"B";a:4:{i:0;s:2:"-9";i:1;s:1:"0";i:2;s:3:"609";i:3;s:3:"784";}}s:9:"Adieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"Adieresis";s:1:"B";a:4:{i:0;s:2:"-9";i:1;s:1:"0";i:2;s:3:"609";i:3;s:3:"761";}}s:6:"egrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"egrave";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"-15";i:2;s:3:"563";i:3;s:3:"661";}}s:6:"zacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"zacute";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:1:"0";i:2;s:3:"520";i:3;s:3:"661";}}s:7:"iogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"iogonek";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:4:"-199";i:2;s:3:"523";i:3;s:3:"658";}}s:6:"Oacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Oacute";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:3:"-18";i:2;s:3:"578";i:3;s:3:"784";}}s:6:"oacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"oacute";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"-15";i:2;s:3:"570";i:3;s:3:"661";}}s:7:"amacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"amacron";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-15";i:2;s:3:"570";i:3;s:3:"585";}}s:6:"sacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"sacute";s:1:"B";a:4:{i:0;s:2:"68";i:1;s:3:"-17";i:2;s:3:"535";i:3;s:3:"661";}}s:9:"idieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"idieresis";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"523";i:3;s:3:"618";}}s:11:"Ocircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"Ocircumflex";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:3:"-18";i:2;s:3:"578";i:3;s:3:"780";}}s:6:"Ugrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Ugrave";s:1:"B";a:4:{i:0;s:1:"4";i:1;s:3:"-18";i:2;s:3:"596";i:3;s:3:"784";}}s:5:"Delta";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:5:"Delta";s:1:"B";a:4:{i:0;s:1:"6";i:1;s:1:"0";i:2;s:3:"594";i:3;s:3:"688";}}s:5:"thorn";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:5:"thorn";s:1:"B";a:4:{i:0;s:3:"-14";i:1;s:4:"-142";i:2;s:3:"570";i:3;s:3:"626";}}s:11:"twosuperior";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"twosuperior";s:1:"B";a:4:{i:0;s:3:"143";i:1;s:3:"230";i:2;s:3:"436";i:3;s:3:"616";}}s:9:"Odieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"Odieresis";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:3:"-18";i:2;s:3:"578";i:3;s:3:"761";}}s:2:"mu";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:2:"mu";s:1:"B";a:4:{i:0;s:2:"-1";i:1;s:4:"-142";i:2;s:3:"569";i:3;s:3:"439";}}s:6:"igrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"igrave";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"523";i:3;s:3:"661";}}s:13:"ohungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:13:"ohungarumlaut";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"-15";i:2;s:3:"668";i:3;s:3:"661";}}s:7:"Eogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"Eogonek";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:4:"-199";i:2;s:3:"576";i:3;s:3:"562";}}s:6:"dcroat";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"dcroat";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:3:"-15";i:2;s:3:"591";i:3;s:3:"626";}}s:13:"threequarters";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:13:"threequarters";s:1:"B";a:4:{i:0;s:3:"-47";i:1;s:3:"-60";i:2;s:3:"648";i:3;s:3:"661";}}s:8:"Scedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:8:"Scedilla";s:1:"B";a:4:{i:0;s:2:"47";i:1;s:4:"-206";i:2;s:3:"553";i:3;s:3:"582";}}s:6:"lcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"lcaron";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"597";i:3;s:3:"626";}}s:12:"Kcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"Kcommaaccent";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:4:"-250";i:2;s:3:"599";i:3;s:3:"562";}}s:6:"Lacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Lacute";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:1:"0";i:2;s:3:"578";i:3;s:3:"784";}}s:9:"trademark";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"trademark";s:1:"B";a:4:{i:0;s:2:"-9";i:1;s:3:"230";i:2;s:3:"749";i:3;s:3:"562";}}s:10:"edotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:10:"edotaccent";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"-15";i:2;s:3:"563";i:3;s:3:"638";}}s:6:"Igrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Igrave";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"523";i:3;s:3:"784";}}s:7:"Imacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"Imacron";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"523";i:3;s:3:"708";}}s:6:"Lcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Lcaron";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:1:"0";i:2;s:3:"637";i:3;s:3:"562";}}s:7:"onehalf";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"onehalf";s:1:"B";a:4:{i:0;s:3:"-47";i:1;s:3:"-60";i:2;s:3:"648";i:3;s:3:"661";}}s:9:"lessequal";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"lessequal";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"523";i:3;s:3:"696";}}s:11:"ocircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"ocircumflex";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"-15";i:2;s:3:"570";i:3;s:3:"657";}}s:6:"ntilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"ntilde";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:1:"0";i:2;s:3:"592";i:3;s:3:"636";}}s:13:"Uhungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:13:"Uhungarumlaut";s:1:"B";a:4:{i:0;s:1:"4";i:1;s:3:"-18";i:2;s:3:"638";i:3;s:3:"784";}}s:6:"Eacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Eacute";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:1:"0";i:2;s:3:"560";i:3;s:3:"784";}}s:7:"emacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"emacron";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"-15";i:2;s:3:"563";i:3;s:3:"585";}}s:6:"gbreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"gbreve";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:4:"-146";i:2;s:3:"580";i:3;s:3:"661";}}s:10:"onequarter";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:10:"onequarter";s:1:"B";a:4:{i:0;s:3:"-56";i:1;s:3:"-60";i:2;s:3:"656";i:3;s:3:"661";}}s:6:"Scaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Scaron";s:1:"B";a:4:{i:0;s:2:"47";i:1;s:3:"-22";i:2;s:3:"553";i:3;s:3:"790";}}s:12:"Scommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"Scommaaccent";s:1:"B";a:4:{i:0;s:2:"47";i:1;s:4:"-250";i:2;s:3:"553";i:3;s:3:"582";}}s:13:"Ohungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:13:"Ohungarumlaut";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:3:"-18";i:2;s:3:"628";i:3;s:3:"784";}}s:6:"degree";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"degree";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:3:"243";i:2;s:3:"474";i:3;s:3:"616";}}s:6:"ograve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"ograve";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"-15";i:2;s:3:"570";i:3;s:3:"661";}}s:6:"Ccaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Ccaron";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:3:"-18";i:2;s:3:"560";i:3;s:3:"790";}}s:6:"ugrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"ugrave";s:1:"B";a:4:{i:0;s:2:"-1";i:1;s:3:"-15";i:2;s:3:"569";i:3;s:3:"661";}}s:7:"radical";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"radical";s:1:"B";a:4:{i:0;s:3:"-19";i:1;s:4:"-104";i:2;s:3:"473";i:3;s:3:"778";}}s:6:"Dcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Dcaron";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:1:"0";i:2;s:3:"594";i:3;s:3:"790";}}s:12:"rcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"rcommaaccent";s:1:"B";a:4:{i:0;s:2:"47";i:1;s:4:"-250";i:2;s:3:"580";i:3;s:3:"454";}}s:6:"Ntilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Ntilde";s:1:"B";a:4:{i:0;s:1:"8";i:1;s:3:"-12";i:2;s:3:"610";i:3;s:3:"759";}}s:6:"otilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"otilde";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"-15";i:2;s:3:"570";i:3;s:3:"636";}}s:12:"Rcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"Rcommaaccent";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:4:"-250";i:2;s:3:"599";i:3;s:3:"562";}}s:12:"Lcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"Lcommaaccent";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:4:"-250";i:2;s:3:"578";i:3;s:3:"562";}}s:6:"Atilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Atilde";s:1:"B";a:4:{i:0;s:2:"-9";i:1;s:1:"0";i:2;s:3:"609";i:3;s:3:"759";}}s:7:"Aogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"Aogonek";s:1:"B";a:4:{i:0;s:2:"-9";i:1;s:4:"-199";i:2;s:3:"625";i:3;s:3:"562";}}s:5:"Aring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:5:"Aring";s:1:"B";a:4:{i:0;s:2:"-9";i:1;s:1:"0";i:2;s:3:"609";i:3;s:3:"801";}}s:6:"Otilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Otilde";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:3:"-18";i:2;s:3:"578";i:3;s:3:"759";}}s:10:"zdotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:10:"zdotaccent";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:1:"0";i:2;s:3:"520";i:3;s:3:"638";}}s:6:"Ecaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Ecaron";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:1:"0";i:2;s:3:"560";i:3;s:3:"790";}}s:7:"Iogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"Iogonek";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:4:"-199";i:2;s:3:"523";i:3;s:3:"562";}}s:12:"kcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"kcommaaccent";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:4:"-250";i:2;s:3:"585";i:3;s:3:"626";}}s:5:"minus";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:5:"minus";s:1:"B";a:4:{i:0;s:2:"71";i:1;s:3:"203";i:2;s:3:"529";i:3;s:3:"313";}}s:11:"Icircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"Icircumflex";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"523";i:3;s:3:"780";}}s:6:"ncaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"ncaron";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:1:"0";i:2;s:3:"592";i:3;s:3:"667";}}s:12:"tcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"tcommaaccent";s:1:"B";a:4:{i:0;s:2:"47";i:1;s:4:"-250";i:2;s:3:"532";i:3;s:3:"562";}}s:10:"logicalnot";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:10:"logicalnot";s:1:"B";a:4:{i:0;s:2:"71";i:1;s:3:"103";i:2;s:3:"529";i:3;s:3:"413";}}s:9:"odieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"odieresis";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"-15";i:2;s:3:"570";i:3;s:3:"638";}}s:9:"udieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"udieresis";s:1:"B";a:4:{i:0;s:2:"-1";i:1;s:3:"-15";i:2;s:3:"569";i:3;s:3:"638";}}s:8:"notequal";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:8:"notequal";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:3:"-47";i:2;s:3:"537";i:3;s:3:"563";}}s:12:"gcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"gcommaaccent";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:4:"-146";i:2;s:3:"580";i:3;s:3:"714";}}s:3:"eth";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:3:"eth";s:1:"B";a:4:{i:0;s:2:"58";i:1;s:3:"-27";i:2;s:3:"543";i:3;s:3:"626";}}s:6:"zcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"zcaron";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:1:"0";i:2;s:3:"520";i:3;s:3:"667";}}s:12:"ncommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"ncommaaccent";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:4:"-250";i:2;s:3:"592";i:3;s:3:"454";}}s:11:"onesuperior";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"onesuperior";s:1:"B";a:4:{i:0;s:3:"153";i:1;s:3:"230";i:2;s:3:"447";i:3;s:3:"616";}}s:7:"imacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"imacron";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"523";i:3;s:3:"585";}}s:4:"Euro";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:4:"Euro";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:1:"0";i:3;s:1:"0";}}}s:9:"_version_";i:1;} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Courier-BoldOblique.afm b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Courier-BoldOblique.afm
new file mode 100755
index 00000000..b5875073
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Courier-BoldOblique.afm
@@ -0,0 +1 @@
+a:21:{s:8:"FontName";s:19:"Courier-BoldOblique";s:8:"FullName";s:20:"Courier Bold Oblique";s:10:"FamilyName";s:7:"Courier";s:6:"Weight";s:4:"Bold";s:11:"ItalicAngle";s:3:"-12";s:12:"IsFixedPitch";s:4:"true";s:12:"CharacterSet";s:13:"ExtendedRoman";s:8:"FontBBox";a:4:{i:0;s:3:"-57";i:1;s:4:"-250";i:2;s:3:"869";i:3;s:3:"801";}s:17:"UnderlinePosition";s:4:"-100";s:18:"UnderlineThickness";s:2:"50";s:7:"Version";s:7:"003.000";s:14:"EncodingScheme";s:21:"AdobeStandardEncoding";s:9:"CapHeight";s:3:"562";s:7:"XHeight";s:3:"439";s:8:"Ascender";s:3:"629";s:9:"Descender";s:4:"-157";s:5:"StdHW";s:2:"84";s:5:"StdVW";s:3:"106";s:16:"StartCharMetrics";s:3:"315";s:1:"C";a:464:{i:32;a:4:{s:1:"C";s:2:"32";s:2:"WX";s:3:"600";s:1:"N";s:5:"space";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:1:"0";i:3;s:1:"0";}}s:5:"space";a:4:{s:1:"C";s:2:"32";s:2:"WX";s:3:"600";s:1:"N";s:5:"space";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:1:"0";i:3;s:1:"0";}}i:33;a:4:{s:1:"C";s:2:"33";s:2:"WX";s:3:"600";s:1:"N";s:6:"exclam";s:1:"B";a:4:{i:0;s:3:"215";i:1;s:3:"-15";i:2;s:3:"495";i:3;s:3:"572";}}s:6:"exclam";a:4:{s:1:"C";s:2:"33";s:2:"WX";s:3:"600";s:1:"N";s:6:"exclam";s:1:"B";a:4:{i:0;s:3:"215";i:1;s:3:"-15";i:2;s:3:"495";i:3;s:3:"572";}}i:34;a:4:{s:1:"C";s:2:"34";s:2:"WX";s:3:"600";s:1:"N";s:8:"quotedbl";s:1:"B";a:4:{i:0;s:3:"211";i:1;s:3:"277";i:2;s:3:"585";i:3;s:3:"562";}}s:8:"quotedbl";a:4:{s:1:"C";s:2:"34";s:2:"WX";s:3:"600";s:1:"N";s:8:"quotedbl";s:1:"B";a:4:{i:0;s:3:"211";i:1;s:3:"277";i:2;s:3:"585";i:3;s:3:"562";}}i:35;a:4:{s:1:"C";s:2:"35";s:2:"WX";s:3:"600";s:1:"N";s:10:"numbersign";s:1:"B";a:4:{i:0;s:2:"88";i:1;s:3:"-45";i:2;s:3:"641";i:3;s:3:"651";}}s:10:"numbersign";a:4:{s:1:"C";s:2:"35";s:2:"WX";s:3:"600";s:1:"N";s:10:"numbersign";s:1:"B";a:4:{i:0;s:2:"88";i:1;s:3:"-45";i:2;s:3:"641";i:3;s:3:"651";}}i:36;a:4:{s:1:"C";s:2:"36";s:2:"WX";s:3:"600";s:1:"N";s:6:"dollar";s:1:"B";a:4:{i:0;s:2:"87";i:1;s:4:"-126";i:2;s:3:"630";i:3;s:3:"666";}}s:6:"dollar";a:4:{s:1:"C";s:2:"36";s:2:"WX";s:3:"600";s:1:"N";s:6:"dollar";s:1:"B";a:4:{i:0;s:2:"87";i:1;s:4:"-126";i:2;s:3:"630";i:3;s:3:"666";}}i:37;a:4:{s:1:"C";s:2:"37";s:2:"WX";s:3:"600";s:1:"N";s:7:"percent";s:1:"B";a:4:{i:0;s:3:"101";i:1;s:3:"-15";i:2;s:3:"625";i:3;s:3:"616";}}s:7:"percent";a:4:{s:1:"C";s:2:"37";s:2:"WX";s:3:"600";s:1:"N";s:7:"percent";s:1:"B";a:4:{i:0;s:3:"101";i:1;s:3:"-15";i:2;s:3:"625";i:3;s:3:"616";}}i:38;a:4:{s:1:"C";s:2:"38";s:2:"WX";s:3:"600";s:1:"N";s:9:"ampersand";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:3:"-15";i:2;s:3:"595";i:3;s:3:"543";}}s:9:"ampersand";a:4:{s:1:"C";s:2:"38";s:2:"WX";s:3:"600";s:1:"N";s:9:"ampersand";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:3:"-15";i:2;s:3:"595";i:3;s:3:"543";}}i:39;a:4:{s:1:"C";s:2:"39";s:2:"WX";s:3:"600";s:1:"N";s:10:"quoteright";s:1:"B";a:4:{i:0;s:3:"229";i:1;s:3:"277";i:2;s:3:"543";i:3;s:3:"562";}}s:10:"quoteright";a:4:{s:1:"C";s:2:"39";s:2:"WX";s:3:"600";s:1:"N";s:10:"quoteright";s:1:"B";a:4:{i:0;s:3:"229";i:1;s:3:"277";i:2;s:3:"543";i:3;s:3:"562";}}i:40;a:4:{s:1:"C";s:2:"40";s:2:"WX";s:3:"600";s:1:"N";s:9:"parenleft";s:1:"B";a:4:{i:0;s:3:"265";i:1;s:4:"-102";i:2;s:3:"592";i:3;s:3:"616";}}s:9:"parenleft";a:4:{s:1:"C";s:2:"40";s:2:"WX";s:3:"600";s:1:"N";s:9:"parenleft";s:1:"B";a:4:{i:0;s:3:"265";i:1;s:4:"-102";i:2;s:3:"592";i:3;s:3:"616";}}i:41;a:4:{s:1:"C";s:2:"41";s:2:"WX";s:3:"600";s:1:"N";s:10:"parenright";s:1:"B";a:4:{i:0;s:3:"117";i:1;s:4:"-102";i:2;s:3:"444";i:3;s:3:"616";}}s:10:"parenright";a:4:{s:1:"C";s:2:"41";s:2:"WX";s:3:"600";s:1:"N";s:10:"parenright";s:1:"B";a:4:{i:0;s:3:"117";i:1;s:4:"-102";i:2;s:3:"444";i:3;s:3:"616";}}i:42;a:4:{s:1:"C";s:2:"42";s:2:"WX";s:3:"600";s:1:"N";s:8:"asterisk";s:1:"B";a:4:{i:0;s:3:"179";i:1;s:3:"219";i:2;s:3:"598";i:3;s:3:"601";}}s:8:"asterisk";a:4:{s:1:"C";s:2:"42";s:2:"WX";s:3:"600";s:1:"N";s:8:"asterisk";s:1:"B";a:4:{i:0;s:3:"179";i:1;s:3:"219";i:2;s:3:"598";i:3;s:3:"601";}}i:43;a:4:{s:1:"C";s:2:"43";s:2:"WX";s:3:"600";s:1:"N";s:4:"plus";s:1:"B";a:4:{i:0;s:3:"114";i:1;s:2:"39";i:2;s:3:"596";i:3;s:3:"478";}}s:4:"plus";a:4:{s:1:"C";s:2:"43";s:2:"WX";s:3:"600";s:1:"N";s:4:"plus";s:1:"B";a:4:{i:0;s:3:"114";i:1;s:2:"39";i:2;s:3:"596";i:3;s:3:"478";}}i:44;a:4:{s:1:"C";s:2:"44";s:2:"WX";s:3:"600";s:1:"N";s:5:"comma";s:1:"B";a:4:{i:0;s:2:"99";i:1;s:4:"-111";i:2;s:3:"430";i:3;s:3:"174";}}s:5:"comma";a:4:{s:1:"C";s:2:"44";s:2:"WX";s:3:"600";s:1:"N";s:5:"comma";s:1:"B";a:4:{i:0;s:2:"99";i:1;s:4:"-111";i:2;s:3:"430";i:3;s:3:"174";}}i:45;a:4:{s:1:"C";s:2:"45";s:2:"WX";s:3:"600";s:1:"N";s:6:"hyphen";s:1:"B";a:4:{i:0;s:3:"143";i:1;s:3:"203";i:2;s:3:"567";i:3;s:3:"313";}}s:6:"hyphen";a:4:{s:1:"C";s:2:"45";s:2:"WX";s:3:"600";s:1:"N";s:6:"hyphen";s:1:"B";a:4:{i:0;s:3:"143";i:1;s:3:"203";i:2;s:3:"567";i:3;s:3:"313";}}i:46;a:4:{s:1:"C";s:2:"46";s:2:"WX";s:3:"600";s:1:"N";s:6:"period";s:1:"B";a:4:{i:0;s:3:"206";i:1;s:3:"-15";i:2;s:3:"427";i:3;s:3:"171";}}s:6:"period";a:4:{s:1:"C";s:2:"46";s:2:"WX";s:3:"600";s:1:"N";s:6:"period";s:1:"B";a:4:{i:0;s:3:"206";i:1;s:3:"-15";i:2;s:3:"427";i:3;s:3:"171";}}i:47;a:4:{s:1:"C";s:2:"47";s:2:"WX";s:3:"600";s:1:"N";s:5:"slash";s:1:"B";a:4:{i:0;s:2:"90";i:1;s:3:"-77";i:2;s:3:"626";i:3;s:3:"626";}}s:5:"slash";a:4:{s:1:"C";s:2:"47";s:2:"WX";s:3:"600";s:1:"N";s:5:"slash";s:1:"B";a:4:{i:0;s:2:"90";i:1;s:3:"-77";i:2;s:3:"626";i:3;s:3:"626";}}i:48;a:4:{s:1:"C";s:2:"48";s:2:"WX";s:3:"600";s:1:"N";s:4:"zero";s:1:"B";a:4:{i:0;s:3:"135";i:1;s:3:"-15";i:2;s:3:"593";i:3;s:3:"616";}}s:4:"zero";a:4:{s:1:"C";s:2:"48";s:2:"WX";s:3:"600";s:1:"N";s:4:"zero";s:1:"B";a:4:{i:0;s:3:"135";i:1;s:3:"-15";i:2;s:3:"593";i:3;s:3:"616";}}i:49;a:4:{s:1:"C";s:2:"49";s:2:"WX";s:3:"600";s:1:"N";s:3:"one";s:1:"B";a:4:{i:0;s:2:"93";i:1;s:1:"0";i:2;s:3:"562";i:3;s:3:"616";}}s:3:"one";a:4:{s:1:"C";s:2:"49";s:2:"WX";s:3:"600";s:1:"N";s:3:"one";s:1:"B";a:4:{i:0;s:2:"93";i:1;s:1:"0";i:2;s:3:"562";i:3;s:3:"616";}}i:50;a:4:{s:1:"C";s:2:"50";s:2:"WX";s:3:"600";s:1:"N";s:3:"two";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:1:"0";i:2;s:3:"594";i:3;s:3:"616";}}s:3:"two";a:4:{s:1:"C";s:2:"50";s:2:"WX";s:3:"600";s:1:"N";s:3:"two";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:1:"0";i:2;s:3:"594";i:3;s:3:"616";}}i:51;a:4:{s:1:"C";s:2:"51";s:2:"WX";s:3:"600";s:1:"N";s:5:"three";s:1:"B";a:4:{i:0;s:2:"71";i:1;s:3:"-15";i:2;s:3:"571";i:3;s:3:"616";}}s:5:"three";a:4:{s:1:"C";s:2:"51";s:2:"WX";s:3:"600";s:1:"N";s:5:"three";s:1:"B";a:4:{i:0;s:2:"71";i:1;s:3:"-15";i:2;s:3:"571";i:3;s:3:"616";}}i:52;a:4:{s:1:"C";s:2:"52";s:2:"WX";s:3:"600";s:1:"N";s:4:"four";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:1:"0";i:2;s:3:"559";i:3;s:3:"616";}}s:4:"four";a:4:{s:1:"C";s:2:"52";s:2:"WX";s:3:"600";s:1:"N";s:4:"four";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:1:"0";i:2;s:3:"559";i:3;s:3:"616";}}i:53;a:4:{s:1:"C";s:2:"53";s:2:"WX";s:3:"600";s:1:"N";s:4:"five";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:3:"-15";i:2;s:3:"621";i:3;s:3:"601";}}s:4:"five";a:4:{s:1:"C";s:2:"53";s:2:"WX";s:3:"600";s:1:"N";s:4:"five";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:3:"-15";i:2;s:3:"621";i:3;s:3:"601";}}i:54;a:4:{s:1:"C";s:2:"54";s:2:"WX";s:3:"600";s:1:"N";s:3:"six";s:1:"B";a:4:{i:0;s:3:"135";i:1;s:3:"-15";i:2;s:3:"652";i:3;s:3:"616";}}s:3:"six";a:4:{s:1:"C";s:2:"54";s:2:"WX";s:3:"600";s:1:"N";s:3:"six";s:1:"B";a:4:{i:0;s:3:"135";i:1;s:3:"-15";i:2;s:3:"652";i:3;s:3:"616";}}i:55;a:4:{s:1:"C";s:2:"55";s:2:"WX";s:3:"600";s:1:"N";s:5:"seven";s:1:"B";a:4:{i:0;s:3:"147";i:1;s:1:"0";i:2;s:3:"622";i:3;s:3:"601";}}s:5:"seven";a:4:{s:1:"C";s:2:"55";s:2:"WX";s:3:"600";s:1:"N";s:5:"seven";s:1:"B";a:4:{i:0;s:3:"147";i:1;s:1:"0";i:2;s:3:"622";i:3;s:3:"601";}}i:56;a:4:{s:1:"C";s:2:"56";s:2:"WX";s:3:"600";s:1:"N";s:5:"eight";s:1:"B";a:4:{i:0;s:3:"115";i:1;s:3:"-15";i:2;s:3:"604";i:3;s:3:"616";}}s:5:"eight";a:4:{s:1:"C";s:2:"56";s:2:"WX";s:3:"600";s:1:"N";s:5:"eight";s:1:"B";a:4:{i:0;s:3:"115";i:1;s:3:"-15";i:2;s:3:"604";i:3;s:3:"616";}}i:57;a:4:{s:1:"C";s:2:"57";s:2:"WX";s:3:"600";s:1:"N";s:4:"nine";s:1:"B";a:4:{i:0;s:2:"75";i:1;s:3:"-15";i:2;s:3:"592";i:3;s:3:"616";}}s:4:"nine";a:4:{s:1:"C";s:2:"57";s:2:"WX";s:3:"600";s:1:"N";s:4:"nine";s:1:"B";a:4:{i:0;s:2:"75";i:1;s:3:"-15";i:2;s:3:"592";i:3;s:3:"616";}}i:58;a:4:{s:1:"C";s:2:"58";s:2:"WX";s:3:"600";s:1:"N";s:5:"colon";s:1:"B";a:4:{i:0;s:3:"205";i:1;s:3:"-15";i:2;s:3:"480";i:3;s:3:"425";}}s:5:"colon";a:4:{s:1:"C";s:2:"58";s:2:"WX";s:3:"600";s:1:"N";s:5:"colon";s:1:"B";a:4:{i:0;s:3:"205";i:1;s:3:"-15";i:2;s:3:"480";i:3;s:3:"425";}}i:59;a:4:{s:1:"C";s:2:"59";s:2:"WX";s:3:"600";s:1:"N";s:9:"semicolon";s:1:"B";a:4:{i:0;s:2:"99";i:1;s:4:"-111";i:2;s:3:"481";i:3;s:3:"425";}}s:9:"semicolon";a:4:{s:1:"C";s:2:"59";s:2:"WX";s:3:"600";s:1:"N";s:9:"semicolon";s:1:"B";a:4:{i:0;s:2:"99";i:1;s:4:"-111";i:2;s:3:"481";i:3;s:3:"425";}}i:60;a:4:{s:1:"C";s:2:"60";s:2:"WX";s:3:"600";s:1:"N";s:4:"less";s:1:"B";a:4:{i:0;s:3:"120";i:1;s:2:"15";i:2;s:3:"613";i:3;s:3:"501";}}s:4:"less";a:4:{s:1:"C";s:2:"60";s:2:"WX";s:3:"600";s:1:"N";s:4:"less";s:1:"B";a:4:{i:0;s:3:"120";i:1;s:2:"15";i:2;s:3:"613";i:3;s:3:"501";}}i:61;a:4:{s:1:"C";s:2:"61";s:2:"WX";s:3:"600";s:1:"N";s:5:"equal";s:1:"B";a:4:{i:0;s:2:"96";i:1;s:3:"118";i:2;s:3:"614";i:3;s:3:"398";}}s:5:"equal";a:4:{s:1:"C";s:2:"61";s:2:"WX";s:3:"600";s:1:"N";s:5:"equal";s:1:"B";a:4:{i:0;s:2:"96";i:1;s:3:"118";i:2;s:3:"614";i:3;s:3:"398";}}i:62;a:4:{s:1:"C";s:2:"62";s:2:"WX";s:3:"600";s:1:"N";s:7:"greater";s:1:"B";a:4:{i:0;s:2:"97";i:1;s:2:"15";i:2;s:3:"589";i:3;s:3:"501";}}s:7:"greater";a:4:{s:1:"C";s:2:"62";s:2:"WX";s:3:"600";s:1:"N";s:7:"greater";s:1:"B";a:4:{i:0;s:2:"97";i:1;s:2:"15";i:2;s:3:"589";i:3;s:3:"501";}}i:63;a:4:{s:1:"C";s:2:"63";s:2:"WX";s:3:"600";s:1:"N";s:8:"question";s:1:"B";a:4:{i:0;s:3:"183";i:1;s:3:"-14";i:2;s:3:"592";i:3;s:3:"580";}}s:8:"question";a:4:{s:1:"C";s:2:"63";s:2:"WX";s:3:"600";s:1:"N";s:8:"question";s:1:"B";a:4:{i:0;s:3:"183";i:1;s:3:"-14";i:2;s:3:"592";i:3;s:3:"580";}}i:64;a:4:{s:1:"C";s:2:"64";s:2:"WX";s:3:"600";s:1:"N";s:2:"at";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:3:"-15";i:2;s:3:"642";i:3;s:3:"616";}}s:2:"at";a:4:{s:1:"C";s:2:"64";s:2:"WX";s:3:"600";s:1:"N";s:2:"at";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:3:"-15";i:2;s:3:"642";i:3;s:3:"616";}}i:65;a:4:{s:1:"C";s:2:"65";s:2:"WX";s:3:"600";s:1:"N";s:1:"A";s:1:"B";a:4:{i:0;s:2:"-9";i:1;s:1:"0";i:2;s:3:"632";i:3;s:3:"562";}}s:1:"A";a:4:{s:1:"C";s:2:"65";s:2:"WX";s:3:"600";s:1:"N";s:1:"A";s:1:"B";a:4:{i:0;s:2:"-9";i:1;s:1:"0";i:2;s:3:"632";i:3;s:3:"562";}}i:66;a:4:{s:1:"C";s:2:"66";s:2:"WX";s:3:"600";s:1:"N";s:1:"B";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:1:"0";i:2;s:3:"630";i:3;s:3:"562";}}s:1:"B";a:4:{s:1:"C";s:2:"66";s:2:"WX";s:3:"600";s:1:"N";s:1:"B";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:1:"0";i:2;s:3:"630";i:3;s:3:"562";}}i:67;a:4:{s:1:"C";s:2:"67";s:2:"WX";s:3:"600";s:1:"N";s:1:"C";s:1:"B";a:4:{i:0;s:2:"74";i:1;s:3:"-18";i:2;s:3:"675";i:3;s:3:"580";}}s:1:"C";a:4:{s:1:"C";s:2:"67";s:2:"WX";s:3:"600";s:1:"N";s:1:"C";s:1:"B";a:4:{i:0;s:2:"74";i:1;s:3:"-18";i:2;s:3:"675";i:3;s:3:"580";}}i:68;a:4:{s:1:"C";s:2:"68";s:2:"WX";s:3:"600";s:1:"N";s:1:"D";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:1:"0";i:2;s:3:"664";i:3;s:3:"562";}}s:1:"D";a:4:{s:1:"C";s:2:"68";s:2:"WX";s:3:"600";s:1:"N";s:1:"D";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:1:"0";i:2;s:3:"664";i:3;s:3:"562";}}i:69;a:4:{s:1:"C";s:2:"69";s:2:"WX";s:3:"600";s:1:"N";s:1:"E";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:1:"0";i:2;s:3:"670";i:3;s:3:"562";}}s:1:"E";a:4:{s:1:"C";s:2:"69";s:2:"WX";s:3:"600";s:1:"N";s:1:"E";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:1:"0";i:2;s:3:"670";i:3;s:3:"562";}}i:70;a:4:{s:1:"C";s:2:"70";s:2:"WX";s:3:"600";s:1:"N";s:1:"F";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:1:"0";i:2;s:3:"684";i:3;s:3:"562";}}s:1:"F";a:4:{s:1:"C";s:2:"70";s:2:"WX";s:3:"600";s:1:"N";s:1:"F";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:1:"0";i:2;s:3:"684";i:3;s:3:"562";}}i:71;a:4:{s:1:"C";s:2:"71";s:2:"WX";s:3:"600";s:1:"N";s:1:"G";s:1:"B";a:4:{i:0;s:2:"74";i:1;s:3:"-18";i:2;s:3:"675";i:3;s:3:"580";}}s:1:"G";a:4:{s:1:"C";s:2:"71";s:2:"WX";s:3:"600";s:1:"N";s:1:"G";s:1:"B";a:4:{i:0;s:2:"74";i:1;s:3:"-18";i:2;s:3:"675";i:3;s:3:"580";}}i:72;a:4:{s:1:"C";s:2:"72";s:2:"WX";s:3:"600";s:1:"N";s:1:"H";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"700";i:3;s:3:"562";}}s:1:"H";a:4:{s:1:"C";s:2:"72";s:2:"WX";s:3:"600";s:1:"N";s:1:"H";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"700";i:3;s:3:"562";}}i:73;a:4:{s:1:"C";s:2:"73";s:2:"WX";s:3:"600";s:1:"N";s:1:"I";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"643";i:3;s:3:"562";}}s:1:"I";a:4:{s:1:"C";s:2:"73";s:2:"WX";s:3:"600";s:1:"N";s:1:"I";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"643";i:3;s:3:"562";}}i:74;a:4:{s:1:"C";s:2:"74";s:2:"WX";s:3:"600";s:1:"N";s:1:"J";s:1:"B";a:4:{i:0;s:2:"58";i:1;s:3:"-18";i:2;s:3:"721";i:3;s:3:"562";}}s:1:"J";a:4:{s:1:"C";s:2:"74";s:2:"WX";s:3:"600";s:1:"N";s:1:"J";s:1:"B";a:4:{i:0;s:2:"58";i:1;s:3:"-18";i:2;s:3:"721";i:3;s:3:"562";}}i:75;a:4:{s:1:"C";s:2:"75";s:2:"WX";s:3:"600";s:1:"N";s:1:"K";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:1:"0";i:2;s:3:"692";i:3;s:3:"562";}}s:1:"K";a:4:{s:1:"C";s:2:"75";s:2:"WX";s:3:"600";s:1:"N";s:1:"K";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:1:"0";i:2;s:3:"692";i:3;s:3:"562";}}i:76;a:4:{s:1:"C";s:2:"76";s:2:"WX";s:3:"600";s:1:"N";s:1:"L";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:1:"0";i:2;s:3:"636";i:3;s:3:"562";}}s:1:"L";a:4:{s:1:"C";s:2:"76";s:2:"WX";s:3:"600";s:1:"N";s:1:"L";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:1:"0";i:2;s:3:"636";i:3;s:3:"562";}}i:77;a:4:{s:1:"C";s:2:"77";s:2:"WX";s:3:"600";s:1:"N";s:1:"M";s:1:"B";a:4:{i:0;s:2:"-2";i:1;s:1:"0";i:2;s:3:"722";i:3;s:3:"562";}}s:1:"M";a:4:{s:1:"C";s:2:"77";s:2:"WX";s:3:"600";s:1:"N";s:1:"M";s:1:"B";a:4:{i:0;s:2:"-2";i:1;s:1:"0";i:2;s:3:"722";i:3;s:3:"562";}}i:78;a:4:{s:1:"C";s:2:"78";s:2:"WX";s:3:"600";s:1:"N";s:1:"N";s:1:"B";a:4:{i:0;s:1:"8";i:1;s:3:"-12";i:2;s:3:"730";i:3;s:3:"562";}}s:1:"N";a:4:{s:1:"C";s:2:"78";s:2:"WX";s:3:"600";s:1:"N";s:1:"N";s:1:"B";a:4:{i:0;s:1:"8";i:1;s:3:"-12";i:2;s:3:"730";i:3;s:3:"562";}}i:79;a:4:{s:1:"C";s:2:"79";s:2:"WX";s:3:"600";s:1:"N";s:1:"O";s:1:"B";a:4:{i:0;s:2:"74";i:1;s:3:"-18";i:2;s:3:"645";i:3;s:3:"580";}}s:1:"O";a:4:{s:1:"C";s:2:"79";s:2:"WX";s:3:"600";s:1:"N";s:1:"O";s:1:"B";a:4:{i:0;s:2:"74";i:1;s:3:"-18";i:2;s:3:"645";i:3;s:3:"580";}}i:80;a:4:{s:1:"C";s:2:"80";s:2:"WX";s:3:"600";s:1:"N";s:1:"P";s:1:"B";a:4:{i:0;s:2:"48";i:1;s:1:"0";i:2;s:3:"643";i:3;s:3:"562";}}s:1:"P";a:4:{s:1:"C";s:2:"80";s:2:"WX";s:3:"600";s:1:"N";s:1:"P";s:1:"B";a:4:{i:0;s:2:"48";i:1;s:1:"0";i:2;s:3:"643";i:3;s:3:"562";}}i:81;a:4:{s:1:"C";s:2:"81";s:2:"WX";s:3:"600";s:1:"N";s:1:"Q";s:1:"B";a:4:{i:0;s:2:"83";i:1;s:4:"-138";i:2;s:3:"636";i:3;s:3:"580";}}s:1:"Q";a:4:{s:1:"C";s:2:"81";s:2:"WX";s:3:"600";s:1:"N";s:1:"Q";s:1:"B";a:4:{i:0;s:2:"83";i:1;s:4:"-138";i:2;s:3:"636";i:3;s:3:"580";}}i:82;a:4:{s:1:"C";s:2:"82";s:2:"WX";s:3:"600";s:1:"N";s:1:"R";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:1:"0";i:2;s:3:"617";i:3;s:3:"562";}}s:1:"R";a:4:{s:1:"C";s:2:"82";s:2:"WX";s:3:"600";s:1:"N";s:1:"R";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:1:"0";i:2;s:3:"617";i:3;s:3:"562";}}i:83;a:4:{s:1:"C";s:2:"83";s:2:"WX";s:3:"600";s:1:"N";s:1:"S";s:1:"B";a:4:{i:0;s:2:"54";i:1;s:3:"-22";i:2;s:3:"673";i:3;s:3:"582";}}s:1:"S";a:4:{s:1:"C";s:2:"83";s:2:"WX";s:3:"600";s:1:"N";s:1:"S";s:1:"B";a:4:{i:0;s:2:"54";i:1;s:3:"-22";i:2;s:3:"673";i:3;s:3:"582";}}i:84;a:4:{s:1:"C";s:2:"84";s:2:"WX";s:3:"600";s:1:"N";s:1:"T";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"679";i:3;s:3:"562";}}s:1:"T";a:4:{s:1:"C";s:2:"84";s:2:"WX";s:3:"600";s:1:"N";s:1:"T";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"679";i:3;s:3:"562";}}i:85;a:4:{s:1:"C";s:2:"85";s:2:"WX";s:3:"600";s:1:"N";s:1:"U";s:1:"B";a:4:{i:0;s:3:"101";i:1;s:3:"-18";i:2;s:3:"716";i:3;s:3:"562";}}s:1:"U";a:4:{s:1:"C";s:2:"85";s:2:"WX";s:3:"600";s:1:"N";s:1:"U";s:1:"B";a:4:{i:0;s:3:"101";i:1;s:3:"-18";i:2;s:3:"716";i:3;s:3:"562";}}i:86;a:4:{s:1:"C";s:2:"86";s:2:"WX";s:3:"600";s:1:"N";s:1:"V";s:1:"B";a:4:{i:0;s:2:"84";i:1;s:1:"0";i:2;s:3:"733";i:3;s:3:"562";}}s:1:"V";a:4:{s:1:"C";s:2:"86";s:2:"WX";s:3:"600";s:1:"N";s:1:"V";s:1:"B";a:4:{i:0;s:2:"84";i:1;s:1:"0";i:2;s:3:"733";i:3;s:3:"562";}}i:87;a:4:{s:1:"C";s:2:"87";s:2:"WX";s:3:"600";s:1:"N";s:1:"W";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:1:"0";i:2;s:3:"738";i:3;s:3:"562";}}s:1:"W";a:4:{s:1:"C";s:2:"87";s:2:"WX";s:3:"600";s:1:"N";s:1:"W";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:1:"0";i:2;s:3:"738";i:3;s:3:"562";}}i:88;a:4:{s:1:"C";s:2:"88";s:2:"WX";s:3:"600";s:1:"N";s:1:"X";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:1:"0";i:2;s:3:"690";i:3;s:3:"562";}}s:1:"X";a:4:{s:1:"C";s:2:"88";s:2:"WX";s:3:"600";s:1:"N";s:1:"X";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:1:"0";i:2;s:3:"690";i:3;s:3:"562";}}i:89;a:4:{s:1:"C";s:2:"89";s:2:"WX";s:3:"600";s:1:"N";s:1:"Y";s:1:"B";a:4:{i:0;s:3:"109";i:1;s:1:"0";i:2;s:3:"709";i:3;s:3:"562";}}s:1:"Y";a:4:{s:1:"C";s:2:"89";s:2:"WX";s:3:"600";s:1:"N";s:1:"Y";s:1:"B";a:4:{i:0;s:3:"109";i:1;s:1:"0";i:2;s:3:"709";i:3;s:3:"562";}}i:90;a:4:{s:1:"C";s:2:"90";s:2:"WX";s:3:"600";s:1:"N";s:1:"Z";s:1:"B";a:4:{i:0;s:2:"62";i:1;s:1:"0";i:2;s:3:"637";i:3;s:3:"562";}}s:1:"Z";a:4:{s:1:"C";s:2:"90";s:2:"WX";s:3:"600";s:1:"N";s:1:"Z";s:1:"B";a:4:{i:0;s:2:"62";i:1;s:1:"0";i:2;s:3:"637";i:3;s:3:"562";}}i:91;a:4:{s:1:"C";s:2:"91";s:2:"WX";s:3:"600";s:1:"N";s:11:"bracketleft";s:1:"B";a:4:{i:0;s:3:"223";i:1;s:4:"-102";i:2;s:3:"606";i:3;s:3:"616";}}s:11:"bracketleft";a:4:{s:1:"C";s:2:"91";s:2:"WX";s:3:"600";s:1:"N";s:11:"bracketleft";s:1:"B";a:4:{i:0;s:3:"223";i:1;s:4:"-102";i:2;s:3:"606";i:3;s:3:"616";}}i:92;a:4:{s:1:"C";s:2:"92";s:2:"WX";s:3:"600";s:1:"N";s:9:"backslash";s:1:"B";a:4:{i:0;s:3:"222";i:1;s:3:"-77";i:2;s:3:"496";i:3;s:3:"626";}}s:9:"backslash";a:4:{s:1:"C";s:2:"92";s:2:"WX";s:3:"600";s:1:"N";s:9:"backslash";s:1:"B";a:4:{i:0;s:3:"222";i:1;s:3:"-77";i:2;s:3:"496";i:3;s:3:"626";}}i:93;a:4:{s:1:"C";s:2:"93";s:2:"WX";s:3:"600";s:1:"N";s:12:"bracketright";s:1:"B";a:4:{i:0;s:3:"103";i:1;s:4:"-102";i:2;s:3:"486";i:3;s:3:"616";}}s:12:"bracketright";a:4:{s:1:"C";s:2:"93";s:2:"WX";s:3:"600";s:1:"N";s:12:"bracketright";s:1:"B";a:4:{i:0;s:3:"103";i:1;s:4:"-102";i:2;s:3:"486";i:3;s:3:"616";}}i:94;a:4:{s:1:"C";s:2:"94";s:2:"WX";s:3:"600";s:1:"N";s:11:"asciicircum";s:1:"B";a:4:{i:0;s:3:"171";i:1;s:3:"250";i:2;s:3:"556";i:3;s:3:"616";}}s:11:"asciicircum";a:4:{s:1:"C";s:2:"94";s:2:"WX";s:3:"600";s:1:"N";s:11:"asciicircum";s:1:"B";a:4:{i:0;s:3:"171";i:1;s:3:"250";i:2;s:3:"556";i:3;s:3:"616";}}i:95;a:4:{s:1:"C";s:2:"95";s:2:"WX";s:3:"600";s:1:"N";s:10:"underscore";s:1:"B";a:4:{i:0;s:3:"-27";i:1;s:4:"-125";i:2;s:3:"585";i:3;s:3:"-75";}}s:10:"underscore";a:4:{s:1:"C";s:2:"95";s:2:"WX";s:3:"600";s:1:"N";s:10:"underscore";s:1:"B";a:4:{i:0;s:3:"-27";i:1;s:4:"-125";i:2;s:3:"585";i:3;s:3:"-75";}}i:96;a:4:{s:1:"C";s:2:"96";s:2:"WX";s:3:"600";s:1:"N";s:9:"quoteleft";s:1:"B";a:4:{i:0;s:3:"297";i:1;s:3:"277";i:2;s:3:"487";i:3;s:3:"562";}}s:9:"quoteleft";a:4:{s:1:"C";s:2:"96";s:2:"WX";s:3:"600";s:1:"N";s:9:"quoteleft";s:1:"B";a:4:{i:0;s:3:"297";i:1;s:3:"277";i:2;s:3:"487";i:3;s:3:"562";}}i:97;a:4:{s:1:"C";s:2:"97";s:2:"WX";s:3:"600";s:1:"N";s:1:"a";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:3:"-15";i:2;s:3:"593";i:3;s:3:"454";}}s:1:"a";a:4:{s:1:"C";s:2:"97";s:2:"WX";s:3:"600";s:1:"N";s:1:"a";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:3:"-15";i:2;s:3:"593";i:3;s:3:"454";}}i:98;a:4:{s:1:"C";s:2:"98";s:2:"WX";s:3:"600";s:1:"N";s:1:"b";s:1:"B";a:4:{i:0;s:2:"13";i:1;s:3:"-15";i:2;s:3:"636";i:3;s:3:"626";}}s:1:"b";a:4:{s:1:"C";s:2:"98";s:2:"WX";s:3:"600";s:1:"N";s:1:"b";s:1:"B";a:4:{i:0;s:2:"13";i:1;s:3:"-15";i:2;s:3:"636";i:3;s:3:"626";}}i:99;a:4:{s:1:"C";s:2:"99";s:2:"WX";s:3:"600";s:1:"N";s:1:"c";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:3:"-15";i:2;s:3:"631";i:3;s:3:"459";}}s:1:"c";a:4:{s:1:"C";s:2:"99";s:2:"WX";s:3:"600";s:1:"N";s:1:"c";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:3:"-15";i:2;s:3:"631";i:3;s:3:"459";}}i:100;a:4:{s:1:"C";s:3:"100";s:2:"WX";s:3:"600";s:1:"N";s:1:"d";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:3:"-15";i:2;s:3:"645";i:3;s:3:"626";}}s:1:"d";a:4:{s:1:"C";s:3:"100";s:2:"WX";s:3:"600";s:1:"N";s:1:"d";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:3:"-15";i:2;s:3:"645";i:3;s:3:"626";}}i:101;a:4:{s:1:"C";s:3:"101";s:2:"WX";s:3:"600";s:1:"N";s:1:"e";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:3:"-15";i:2;s:3:"605";i:3;s:3:"454";}}s:1:"e";a:4:{s:1:"C";s:3:"101";s:2:"WX";s:3:"600";s:1:"N";s:1:"e";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:3:"-15";i:2;s:3:"605";i:3;s:3:"454";}}i:102;a:5:{s:1:"C";s:3:"102";s:2:"WX";s:3:"600";s:1:"N";s:1:"f";s:1:"B";a:4:{i:0;s:2:"83";i:1;s:1:"0";i:2;s:3:"677";i:3;s:3:"626";}s:1:"L";a:2:{i:0;s:1:"l";i:1;s:2:"fl";}}s:1:"f";a:5:{s:1:"C";s:3:"102";s:2:"WX";s:3:"600";s:1:"N";s:1:"f";s:1:"B";a:4:{i:0;s:2:"83";i:1;s:1:"0";i:2;s:3:"677";i:3;s:3:"626";}s:1:"L";a:2:{i:0;s:1:"l";i:1;s:2:"fl";}}i:103;a:4:{s:1:"C";s:3:"103";s:2:"WX";s:3:"600";s:1:"N";s:1:"g";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:4:"-146";i:2;s:3:"674";i:3;s:3:"454";}}s:1:"g";a:4:{s:1:"C";s:3:"103";s:2:"WX";s:3:"600";s:1:"N";s:1:"g";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:4:"-146";i:2;s:3:"674";i:3;s:3:"454";}}i:104;a:4:{s:1:"C";s:3:"104";s:2:"WX";s:3:"600";s:1:"N";s:1:"h";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:1:"0";i:2;s:3:"615";i:3;s:3:"626";}}s:1:"h";a:4:{s:1:"C";s:3:"104";s:2:"WX";s:3:"600";s:1:"N";s:1:"h";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:1:"0";i:2;s:3:"615";i:3;s:3:"626";}}i:105;a:4:{s:1:"C";s:3:"105";s:2:"WX";s:3:"600";s:1:"N";s:1:"i";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"546";i:3;s:3:"658";}}s:1:"i";a:4:{s:1:"C";s:3:"105";s:2:"WX";s:3:"600";s:1:"N";s:1:"i";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"546";i:3;s:3:"658";}}i:106;a:4:{s:1:"C";s:3:"106";s:2:"WX";s:3:"600";s:1:"N";s:1:"j";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:4:"-146";i:2;s:3:"580";i:3;s:3:"658";}}s:1:"j";a:4:{s:1:"C";s:3:"106";s:2:"WX";s:3:"600";s:1:"N";s:1:"j";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:4:"-146";i:2;s:3:"580";i:3;s:3:"658";}}i:107;a:4:{s:1:"C";s:3:"107";s:2:"WX";s:3:"600";s:1:"N";s:1:"k";s:1:"B";a:4:{i:0;s:2:"33";i:1;s:1:"0";i:2;s:3:"643";i:3;s:3:"626";}}s:1:"k";a:4:{s:1:"C";s:3:"107";s:2:"WX";s:3:"600";s:1:"N";s:1:"k";s:1:"B";a:4:{i:0;s:2:"33";i:1;s:1:"0";i:2;s:3:"643";i:3;s:3:"626";}}i:108;a:4:{s:1:"C";s:3:"108";s:2:"WX";s:3:"600";s:1:"N";s:1:"l";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"546";i:3;s:3:"626";}}s:1:"l";a:4:{s:1:"C";s:3:"108";s:2:"WX";s:3:"600";s:1:"N";s:1:"l";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"546";i:3;s:3:"626";}}i:109;a:4:{s:1:"C";s:3:"109";s:2:"WX";s:3:"600";s:1:"N";s:1:"m";s:1:"B";a:4:{i:0;s:3:"-22";i:1;s:1:"0";i:2;s:3:"649";i:3;s:3:"454";}}s:1:"m";a:4:{s:1:"C";s:3:"109";s:2:"WX";s:3:"600";s:1:"N";s:1:"m";s:1:"B";a:4:{i:0;s:3:"-22";i:1;s:1:"0";i:2;s:3:"649";i:3;s:3:"454";}}i:110;a:4:{s:1:"C";s:3:"110";s:2:"WX";s:3:"600";s:1:"N";s:1:"n";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:1:"0";i:2;s:3:"615";i:3;s:3:"454";}}s:1:"n";a:4:{s:1:"C";s:3:"110";s:2:"WX";s:3:"600";s:1:"N";s:1:"n";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:1:"0";i:2;s:3:"615";i:3;s:3:"454";}}i:111;a:4:{s:1:"C";s:3:"111";s:2:"WX";s:3:"600";s:1:"N";s:1:"o";s:1:"B";a:4:{i:0;s:2:"71";i:1;s:3:"-15";i:2;s:3:"622";i:3;s:3:"454";}}s:1:"o";a:4:{s:1:"C";s:3:"111";s:2:"WX";s:3:"600";s:1:"N";s:1:"o";s:1:"B";a:4:{i:0;s:2:"71";i:1;s:3:"-15";i:2;s:3:"622";i:3;s:3:"454";}}i:112;a:4:{s:1:"C";s:3:"112";s:2:"WX";s:3:"600";s:1:"N";s:1:"p";s:1:"B";a:4:{i:0;s:3:"-32";i:1;s:4:"-142";i:2;s:3:"622";i:3;s:3:"454";}}s:1:"p";a:4:{s:1:"C";s:3:"112";s:2:"WX";s:3:"600";s:1:"N";s:1:"p";s:1:"B";a:4:{i:0;s:3:"-32";i:1;s:4:"-142";i:2;s:3:"622";i:3;s:3:"454";}}i:113;a:4:{s:1:"C";s:3:"113";s:2:"WX";s:3:"600";s:1:"N";s:1:"q";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:4:"-142";i:2;s:3:"685";i:3;s:3:"454";}}s:1:"q";a:4:{s:1:"C";s:3:"113";s:2:"WX";s:3:"600";s:1:"N";s:1:"q";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:4:"-142";i:2;s:3:"685";i:3;s:3:"454";}}i:114;a:4:{s:1:"C";s:3:"114";s:2:"WX";s:3:"600";s:1:"N";s:1:"r";s:1:"B";a:4:{i:0;s:2:"47";i:1;s:1:"0";i:2;s:3:"655";i:3;s:3:"454";}}s:1:"r";a:4:{s:1:"C";s:3:"114";s:2:"WX";s:3:"600";s:1:"N";s:1:"r";s:1:"B";a:4:{i:0;s:2:"47";i:1;s:1:"0";i:2;s:3:"655";i:3;s:3:"454";}}i:115;a:4:{s:1:"C";s:3:"115";s:2:"WX";s:3:"600";s:1:"N";s:1:"s";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:3:"-17";i:2;s:3:"608";i:3;s:3:"459";}}s:1:"s";a:4:{s:1:"C";s:3:"115";s:2:"WX";s:3:"600";s:1:"N";s:1:"s";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:3:"-17";i:2;s:3:"608";i:3;s:3:"459";}}i:116;a:4:{s:1:"C";s:3:"116";s:2:"WX";s:3:"600";s:1:"N";s:1:"t";s:1:"B";a:4:{i:0;s:3:"118";i:1;s:3:"-15";i:2;s:3:"567";i:3;s:3:"562";}}s:1:"t";a:4:{s:1:"C";s:3:"116";s:2:"WX";s:3:"600";s:1:"N";s:1:"t";s:1:"B";a:4:{i:0;s:3:"118";i:1;s:3:"-15";i:2;s:3:"567";i:3;s:3:"562";}}i:117;a:4:{s:1:"C";s:3:"117";s:2:"WX";s:3:"600";s:1:"N";s:1:"u";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:3:"-15";i:2;s:3:"592";i:3;s:3:"439";}}s:1:"u";a:4:{s:1:"C";s:3:"117";s:2:"WX";s:3:"600";s:1:"N";s:1:"u";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:3:"-15";i:2;s:3:"592";i:3;s:3:"439";}}i:118;a:4:{s:1:"C";s:3:"118";s:2:"WX";s:3:"600";s:1:"N";s:1:"v";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:1:"0";i:2;s:3:"695";i:3;s:3:"439";}}s:1:"v";a:4:{s:1:"C";s:3:"118";s:2:"WX";s:3:"600";s:1:"N";s:1:"v";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:1:"0";i:2;s:3:"695";i:3;s:3:"439";}}i:119;a:4:{s:1:"C";s:3:"119";s:2:"WX";s:3:"600";s:1:"N";s:1:"w";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:1:"0";i:2;s:3:"712";i:3;s:3:"439";}}s:1:"w";a:4:{s:1:"C";s:3:"119";s:2:"WX";s:3:"600";s:1:"N";s:1:"w";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:1:"0";i:2;s:3:"712";i:3;s:3:"439";}}i:120;a:4:{s:1:"C";s:3:"120";s:2:"WX";s:3:"600";s:1:"N";s:1:"x";s:1:"B";a:4:{i:0;s:1:"6";i:1;s:1:"0";i:2;s:3:"671";i:3;s:3:"439";}}s:1:"x";a:4:{s:1:"C";s:3:"120";s:2:"WX";s:3:"600";s:1:"N";s:1:"x";s:1:"B";a:4:{i:0;s:1:"6";i:1;s:1:"0";i:2;s:3:"671";i:3;s:3:"439";}}i:121;a:4:{s:1:"C";s:3:"121";s:2:"WX";s:3:"600";s:1:"N";s:1:"y";s:1:"B";a:4:{i:0;s:3:"-21";i:1;s:4:"-142";i:2;s:3:"695";i:3;s:3:"439";}}s:1:"y";a:4:{s:1:"C";s:3:"121";s:2:"WX";s:3:"600";s:1:"N";s:1:"y";s:1:"B";a:4:{i:0;s:3:"-21";i:1;s:4:"-142";i:2;s:3:"695";i:3;s:3:"439";}}i:122;a:4:{s:1:"C";s:3:"122";s:2:"WX";s:3:"600";s:1:"N";s:1:"z";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:1:"0";i:2;s:3:"614";i:3;s:3:"439";}}s:1:"z";a:4:{s:1:"C";s:3:"122";s:2:"WX";s:3:"600";s:1:"N";s:1:"z";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:1:"0";i:2;s:3:"614";i:3;s:3:"439";}}i:123;a:4:{s:1:"C";s:3:"123";s:2:"WX";s:3:"600";s:1:"N";s:9:"braceleft";s:1:"B";a:4:{i:0;s:3:"203";i:1;s:4:"-102";i:2;s:3:"595";i:3;s:3:"616";}}s:9:"braceleft";a:4:{s:1:"C";s:3:"123";s:2:"WX";s:3:"600";s:1:"N";s:9:"braceleft";s:1:"B";a:4:{i:0;s:3:"203";i:1;s:4:"-102";i:2;s:3:"595";i:3;s:3:"616";}}i:124;a:4:{s:1:"C";s:3:"124";s:2:"WX";s:3:"600";s:1:"N";s:3:"bar";s:1:"B";a:4:{i:0;s:3:"201";i:1;s:4:"-250";i:2;s:3:"505";i:3;s:3:"750";}}s:3:"bar";a:4:{s:1:"C";s:3:"124";s:2:"WX";s:3:"600";s:1:"N";s:3:"bar";s:1:"B";a:4:{i:0;s:3:"201";i:1;s:4:"-250";i:2;s:3:"505";i:3;s:3:"750";}}i:125;a:4:{s:1:"C";s:3:"125";s:2:"WX";s:3:"600";s:1:"N";s:10:"braceright";s:1:"B";a:4:{i:0;s:3:"114";i:1;s:4:"-102";i:2;s:3:"506";i:3;s:3:"616";}}s:10:"braceright";a:4:{s:1:"C";s:3:"125";s:2:"WX";s:3:"600";s:1:"N";s:10:"braceright";s:1:"B";a:4:{i:0;s:3:"114";i:1;s:4:"-102";i:2;s:3:"506";i:3;s:3:"616";}}i:126;a:4:{s:1:"C";s:3:"126";s:2:"WX";s:3:"600";s:1:"N";s:10:"asciitilde";s:1:"B";a:4:{i:0;s:3:"120";i:1;s:3:"153";i:2;s:3:"590";i:3;s:3:"356";}}s:10:"asciitilde";a:4:{s:1:"C";s:3:"126";s:2:"WX";s:3:"600";s:1:"N";s:10:"asciitilde";s:1:"B";a:4:{i:0;s:3:"120";i:1;s:3:"153";i:2;s:3:"590";i:3;s:3:"356";}}i:161;a:4:{s:1:"C";s:3:"161";s:2:"WX";s:3:"600";s:1:"N";s:10:"exclamdown";s:1:"B";a:4:{i:0;s:3:"196";i:1;s:4:"-146";i:2;s:3:"477";i:3;s:3:"449";}}s:10:"exclamdown";a:4:{s:1:"C";s:3:"161";s:2:"WX";s:3:"600";s:1:"N";s:10:"exclamdown";s:1:"B";a:4:{i:0;s:3:"196";i:1;s:4:"-146";i:2;s:3:"477";i:3;s:3:"449";}}i:162;a:4:{s:1:"C";s:3:"162";s:2:"WX";s:3:"600";s:1:"N";s:4:"cent";s:1:"B";a:4:{i:0;s:3:"121";i:1;s:3:"-49";i:2;s:3:"605";i:3;s:3:"614";}}s:4:"cent";a:4:{s:1:"C";s:3:"162";s:2:"WX";s:3:"600";s:1:"N";s:4:"cent";s:1:"B";a:4:{i:0;s:3:"121";i:1;s:3:"-49";i:2;s:3:"605";i:3;s:3:"614";}}i:163;a:4:{s:1:"C";s:3:"163";s:2:"WX";s:3:"600";s:1:"N";s:8:"sterling";s:1:"B";a:4:{i:0;s:3:"106";i:1;s:3:"-28";i:2;s:3:"650";i:3;s:3:"611";}}s:8:"sterling";a:4:{s:1:"C";s:3:"163";s:2:"WX";s:3:"600";s:1:"N";s:8:"sterling";s:1:"B";a:4:{i:0;s:3:"106";i:1;s:3:"-28";i:2;s:3:"650";i:3;s:3:"611";}}i:164;a:4:{s:1:"C";s:3:"164";s:2:"WX";s:3:"600";s:1:"N";s:8:"fraction";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:3:"-60";i:2;s:3:"708";i:3;s:3:"661";}}s:8:"fraction";a:4:{s:1:"C";s:3:"164";s:2:"WX";s:3:"600";s:1:"N";s:8:"fraction";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:3:"-60";i:2;s:3:"708";i:3;s:3:"661";}}i:165;a:4:{s:1:"C";s:3:"165";s:2:"WX";s:3:"600";s:1:"N";s:3:"yen";s:1:"B";a:4:{i:0;s:2:"98";i:1;s:1:"0";i:2;s:3:"710";i:3;s:3:"562";}}s:3:"yen";a:4:{s:1:"C";s:3:"165";s:2:"WX";s:3:"600";s:1:"N";s:3:"yen";s:1:"B";a:4:{i:0;s:2:"98";i:1;s:1:"0";i:2;s:3:"710";i:3;s:3:"562";}}i:166;a:4:{s:1:"C";s:3:"166";s:2:"WX";s:3:"600";s:1:"N";s:6:"florin";s:1:"B";a:4:{i:0;s:3:"-57";i:1;s:4:"-131";i:2;s:3:"702";i:3;s:3:"616";}}s:6:"florin";a:4:{s:1:"C";s:3:"166";s:2:"WX";s:3:"600";s:1:"N";s:6:"florin";s:1:"B";a:4:{i:0;s:3:"-57";i:1;s:4:"-131";i:2;s:3:"702";i:3;s:3:"616";}}i:167;a:4:{s:1:"C";s:3:"167";s:2:"WX";s:3:"600";s:1:"N";s:7:"section";s:1:"B";a:4:{i:0;s:2:"74";i:1;s:3:"-70";i:2;s:3:"620";i:3;s:3:"580";}}s:7:"section";a:4:{s:1:"C";s:3:"167";s:2:"WX";s:3:"600";s:1:"N";s:7:"section";s:1:"B";a:4:{i:0;s:2:"74";i:1;s:3:"-70";i:2;s:3:"620";i:3;s:3:"580";}}i:168;a:4:{s:1:"C";s:3:"168";s:2:"WX";s:3:"600";s:1:"N";s:8:"currency";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:2:"49";i:2;s:3:"644";i:3;s:3:"517";}}s:8:"currency";a:4:{s:1:"C";s:3:"168";s:2:"WX";s:3:"600";s:1:"N";s:8:"currency";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:2:"49";i:2;s:3:"644";i:3;s:3:"517";}}i:169;a:4:{s:1:"C";s:3:"169";s:2:"WX";s:3:"600";s:1:"N";s:11:"quotesingle";s:1:"B";a:4:{i:0;s:3:"303";i:1;s:3:"277";i:2;s:3:"493";i:3;s:3:"562";}}s:11:"quotesingle";a:4:{s:1:"C";s:3:"169";s:2:"WX";s:3:"600";s:1:"N";s:11:"quotesingle";s:1:"B";a:4:{i:0;s:3:"303";i:1;s:3:"277";i:2;s:3:"493";i:3;s:3:"562";}}i:170;a:4:{s:1:"C";s:3:"170";s:2:"WX";s:3:"600";s:1:"N";s:12:"quotedblleft";s:1:"B";a:4:{i:0;s:3:"190";i:1;s:3:"277";i:2;s:3:"594";i:3;s:3:"562";}}s:12:"quotedblleft";a:4:{s:1:"C";s:3:"170";s:2:"WX";s:3:"600";s:1:"N";s:12:"quotedblleft";s:1:"B";a:4:{i:0;s:3:"190";i:1;s:3:"277";i:2;s:3:"594";i:3;s:3:"562";}}i:171;a:4:{s:1:"C";s:3:"171";s:2:"WX";s:3:"600";s:1:"N";s:13:"guillemotleft";s:1:"B";a:4:{i:0;s:2:"62";i:1;s:2:"70";i:2;s:3:"639";i:3;s:3:"446";}}s:13:"guillemotleft";a:4:{s:1:"C";s:3:"171";s:2:"WX";s:3:"600";s:1:"N";s:13:"guillemotleft";s:1:"B";a:4:{i:0;s:2:"62";i:1;s:2:"70";i:2;s:3:"639";i:3;s:3:"446";}}i:172;a:4:{s:1:"C";s:3:"172";s:2:"WX";s:3:"600";s:1:"N";s:13:"guilsinglleft";s:1:"B";a:4:{i:0;s:3:"195";i:1;s:2:"70";i:2;s:3:"545";i:3;s:3:"446";}}s:13:"guilsinglleft";a:4:{s:1:"C";s:3:"172";s:2:"WX";s:3:"600";s:1:"N";s:13:"guilsinglleft";s:1:"B";a:4:{i:0;s:3:"195";i:1;s:2:"70";i:2;s:3:"545";i:3;s:3:"446";}}i:173;a:4:{s:1:"C";s:3:"173";s:2:"WX";s:3:"600";s:1:"N";s:14:"guilsinglright";s:1:"B";a:4:{i:0;s:3:"165";i:1;s:2:"70";i:2;s:3:"514";i:3;s:3:"446";}}s:14:"guilsinglright";a:4:{s:1:"C";s:3:"173";s:2:"WX";s:3:"600";s:1:"N";s:14:"guilsinglright";s:1:"B";a:4:{i:0;s:3:"165";i:1;s:2:"70";i:2;s:3:"514";i:3;s:3:"446";}}i:174;a:4:{s:1:"C";s:3:"174";s:2:"WX";s:3:"600";s:1:"N";s:2:"fi";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:1:"0";i:2;s:3:"644";i:3;s:3:"626";}}s:2:"fi";a:4:{s:1:"C";s:3:"174";s:2:"WX";s:3:"600";s:1:"N";s:2:"fi";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:1:"0";i:2;s:3:"644";i:3;s:3:"626";}}i:175;a:4:{s:1:"C";s:3:"175";s:2:"WX";s:3:"600";s:1:"N";s:2:"fl";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:1:"0";i:2;s:3:"644";i:3;s:3:"626";}}s:2:"fl";a:4:{s:1:"C";s:3:"175";s:2:"WX";s:3:"600";s:1:"N";s:2:"fl";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:1:"0";i:2;s:3:"644";i:3;s:3:"626";}}i:177;a:4:{s:1:"C";s:3:"177";s:2:"WX";s:3:"600";s:1:"N";s:6:"endash";s:1:"B";a:4:{i:0;s:3:"108";i:1;s:3:"203";i:2;s:3:"602";i:3;s:3:"313";}}s:6:"endash";a:4:{s:1:"C";s:3:"177";s:2:"WX";s:3:"600";s:1:"N";s:6:"endash";s:1:"B";a:4:{i:0;s:3:"108";i:1;s:3:"203";i:2;s:3:"602";i:3;s:3:"313";}}i:178;a:4:{s:1:"C";s:3:"178";s:2:"WX";s:3:"600";s:1:"N";s:6:"dagger";s:1:"B";a:4:{i:0;s:3:"175";i:1;s:3:"-70";i:2;s:3:"586";i:3;s:3:"580";}}s:6:"dagger";a:4:{s:1:"C";s:3:"178";s:2:"WX";s:3:"600";s:1:"N";s:6:"dagger";s:1:"B";a:4:{i:0;s:3:"175";i:1;s:3:"-70";i:2;s:3:"586";i:3;s:3:"580";}}i:179;a:4:{s:1:"C";s:3:"179";s:2:"WX";s:3:"600";s:1:"N";s:9:"daggerdbl";s:1:"B";a:4:{i:0;s:3:"121";i:1;s:3:"-70";i:2;s:3:"587";i:3;s:3:"580";}}s:9:"daggerdbl";a:4:{s:1:"C";s:3:"179";s:2:"WX";s:3:"600";s:1:"N";s:9:"daggerdbl";s:1:"B";a:4:{i:0;s:3:"121";i:1;s:3:"-70";i:2;s:3:"587";i:3;s:3:"580";}}i:180;a:4:{s:1:"C";s:3:"180";s:2:"WX";s:3:"600";s:1:"N";s:14:"periodcentered";s:1:"B";a:4:{i:0;s:3:"248";i:1;s:3:"165";i:2;s:3:"461";i:3;s:3:"351";}}s:14:"periodcentered";a:4:{s:1:"C";s:3:"180";s:2:"WX";s:3:"600";s:1:"N";s:14:"periodcentered";s:1:"B";a:4:{i:0;s:3:"248";i:1;s:3:"165";i:2;s:3:"461";i:3;s:3:"351";}}i:182;a:4:{s:1:"C";s:3:"182";s:2:"WX";s:3:"600";s:1:"N";s:9:"paragraph";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:3:"-70";i:2;s:3:"700";i:3;s:3:"580";}}s:9:"paragraph";a:4:{s:1:"C";s:3:"182";s:2:"WX";s:3:"600";s:1:"N";s:9:"paragraph";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:3:"-70";i:2;s:3:"700";i:3;s:3:"580";}}i:183;a:4:{s:1:"C";s:3:"183";s:2:"WX";s:3:"600";s:1:"N";s:6:"bullet";s:1:"B";a:4:{i:0;s:3:"196";i:1;s:3:"132";i:2;s:3:"523";i:3;s:3:"430";}}s:6:"bullet";a:4:{s:1:"C";s:3:"183";s:2:"WX";s:3:"600";s:1:"N";s:6:"bullet";s:1:"B";a:4:{i:0;s:3:"196";i:1;s:3:"132";i:2;s:3:"523";i:3;s:3:"430";}}i:184;a:4:{s:1:"C";s:3:"184";s:2:"WX";s:3:"600";s:1:"N";s:14:"quotesinglbase";s:1:"B";a:4:{i:0;s:3:"144";i:1;s:4:"-142";i:2;s:3:"458";i:3;s:3:"143";}}s:14:"quotesinglbase";a:4:{s:1:"C";s:3:"184";s:2:"WX";s:3:"600";s:1:"N";s:14:"quotesinglbase";s:1:"B";a:4:{i:0;s:3:"144";i:1;s:4:"-142";i:2;s:3:"458";i:3;s:3:"143";}}i:185;a:4:{s:1:"C";s:3:"185";s:2:"WX";s:3:"600";s:1:"N";s:12:"quotedblbase";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:4:"-142";i:2;s:3:"560";i:3;s:3:"143";}}s:12:"quotedblbase";a:4:{s:1:"C";s:3:"185";s:2:"WX";s:3:"600";s:1:"N";s:12:"quotedblbase";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:4:"-142";i:2;s:3:"560";i:3;s:3:"143";}}i:186;a:4:{s:1:"C";s:3:"186";s:2:"WX";s:3:"600";s:1:"N";s:13:"quotedblright";s:1:"B";a:4:{i:0;s:3:"119";i:1;s:3:"277";i:2;s:3:"645";i:3;s:3:"562";}}s:13:"quotedblright";a:4:{s:1:"C";s:3:"186";s:2:"WX";s:3:"600";s:1:"N";s:13:"quotedblright";s:1:"B";a:4:{i:0;s:3:"119";i:1;s:3:"277";i:2;s:3:"645";i:3;s:3:"562";}}i:187;a:4:{s:1:"C";s:3:"187";s:2:"WX";s:3:"600";s:1:"N";s:14:"guillemotright";s:1:"B";a:4:{i:0;s:2:"71";i:1;s:2:"70";i:2;s:3:"647";i:3;s:3:"446";}}s:14:"guillemotright";a:4:{s:1:"C";s:3:"187";s:2:"WX";s:3:"600";s:1:"N";s:14:"guillemotright";s:1:"B";a:4:{i:0;s:2:"71";i:1;s:2:"70";i:2;s:3:"647";i:3;s:3:"446";}}i:188;a:4:{s:1:"C";s:3:"188";s:2:"WX";s:3:"600";s:1:"N";s:8:"ellipsis";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-15";i:2;s:3:"587";i:3;s:3:"116";}}s:8:"ellipsis";a:4:{s:1:"C";s:3:"188";s:2:"WX";s:3:"600";s:1:"N";s:8:"ellipsis";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-15";i:2;s:3:"587";i:3;s:3:"116";}}i:189;a:4:{s:1:"C";s:3:"189";s:2:"WX";s:3:"600";s:1:"N";s:11:"perthousand";s:1:"B";a:4:{i:0;s:3:"-45";i:1;s:3:"-15";i:2;s:3:"743";i:3;s:3:"616";}}s:11:"perthousand";a:4:{s:1:"C";s:3:"189";s:2:"WX";s:3:"600";s:1:"N";s:11:"perthousand";s:1:"B";a:4:{i:0;s:3:"-45";i:1;s:3:"-15";i:2;s:3:"743";i:3;s:3:"616";}}i:191;a:4:{s:1:"C";s:3:"191";s:2:"WX";s:3:"600";s:1:"N";s:12:"questiondown";s:1:"B";a:4:{i:0;s:3:"100";i:1;s:4:"-146";i:2;s:3:"509";i:3;s:3:"449";}}s:12:"questiondown";a:4:{s:1:"C";s:3:"191";s:2:"WX";s:3:"600";s:1:"N";s:12:"questiondown";s:1:"B";a:4:{i:0;s:3:"100";i:1;s:4:"-146";i:2;s:3:"509";i:3;s:3:"449";}}i:193;a:4:{s:1:"C";s:3:"193";s:2:"WX";s:3:"600";s:1:"N";s:5:"grave";s:1:"B";a:4:{i:0;s:3:"272";i:1;s:3:"508";i:2;s:3:"503";i:3;s:3:"661";}}s:5:"grave";a:4:{s:1:"C";s:3:"193";s:2:"WX";s:3:"600";s:1:"N";s:5:"grave";s:1:"B";a:4:{i:0;s:3:"272";i:1;s:3:"508";i:2;s:3:"503";i:3;s:3:"661";}}i:194;a:4:{s:1:"C";s:3:"194";s:2:"WX";s:3:"600";s:1:"N";s:5:"acute";s:1:"B";a:4:{i:0;s:3:"312";i:1;s:3:"508";i:2;s:3:"609";i:3;s:3:"661";}}s:5:"acute";a:4:{s:1:"C";s:3:"194";s:2:"WX";s:3:"600";s:1:"N";s:5:"acute";s:1:"B";a:4:{i:0;s:3:"312";i:1;s:3:"508";i:2;s:3:"609";i:3;s:3:"661";}}i:195;a:4:{s:1:"C";s:3:"195";s:2:"WX";s:3:"600";s:1:"N";s:10:"circumflex";s:1:"B";a:4:{i:0;s:3:"212";i:1;s:3:"483";i:2;s:3:"607";i:3;s:3:"657";}}s:10:"circumflex";a:4:{s:1:"C";s:3:"195";s:2:"WX";s:3:"600";s:1:"N";s:10:"circumflex";s:1:"B";a:4:{i:0;s:3:"212";i:1;s:3:"483";i:2;s:3:"607";i:3;s:3:"657";}}i:196;a:4:{s:1:"C";s:3:"196";s:2:"WX";s:3:"600";s:1:"N";s:5:"tilde";s:1:"B";a:4:{i:0;s:3:"199";i:1;s:3:"493";i:2;s:3:"643";i:3;s:3:"636";}}s:5:"tilde";a:4:{s:1:"C";s:3:"196";s:2:"WX";s:3:"600";s:1:"N";s:5:"tilde";s:1:"B";a:4:{i:0;s:3:"199";i:1;s:3:"493";i:2;s:3:"643";i:3;s:3:"636";}}i:197;a:4:{s:1:"C";s:3:"197";s:2:"WX";s:3:"600";s:1:"N";s:6:"macron";s:1:"B";a:4:{i:0;s:3:"195";i:1;s:3:"505";i:2;s:3:"637";i:3;s:3:"585";}}s:6:"macron";a:4:{s:1:"C";s:3:"197";s:2:"WX";s:3:"600";s:1:"N";s:6:"macron";s:1:"B";a:4:{i:0;s:3:"195";i:1;s:3:"505";i:2;s:3:"637";i:3;s:3:"585";}}i:198;a:4:{s:1:"C";s:3:"198";s:2:"WX";s:3:"600";s:1:"N";s:5:"breve";s:1:"B";a:4:{i:0;s:3:"217";i:1;s:3:"468";i:2;s:3:"652";i:3;s:3:"631";}}s:5:"breve";a:4:{s:1:"C";s:3:"198";s:2:"WX";s:3:"600";s:1:"N";s:5:"breve";s:1:"B";a:4:{i:0;s:3:"217";i:1;s:3:"468";i:2;s:3:"652";i:3;s:3:"631";}}i:199;a:4:{s:1:"C";s:3:"199";s:2:"WX";s:3:"600";s:1:"N";s:9:"dotaccent";s:1:"B";a:4:{i:0;s:3:"348";i:1;s:3:"498";i:2;s:3:"493";i:3;s:3:"638";}}s:9:"dotaccent";a:4:{s:1:"C";s:3:"199";s:2:"WX";s:3:"600";s:1:"N";s:9:"dotaccent";s:1:"B";a:4:{i:0;s:3:"348";i:1;s:3:"498";i:2;s:3:"493";i:3;s:3:"638";}}i:200;a:4:{s:1:"C";s:3:"200";s:2:"WX";s:3:"600";s:1:"N";s:8:"dieresis";s:1:"B";a:4:{i:0;s:3:"246";i:1;s:3:"498";i:2;s:3:"595";i:3;s:3:"638";}}s:8:"dieresis";a:4:{s:1:"C";s:3:"200";s:2:"WX";s:3:"600";s:1:"N";s:8:"dieresis";s:1:"B";a:4:{i:0;s:3:"246";i:1;s:3:"498";i:2;s:3:"595";i:3;s:3:"638";}}i:202;a:4:{s:1:"C";s:3:"202";s:2:"WX";s:3:"600";s:1:"N";s:4:"ring";s:1:"B";a:4:{i:0;s:3:"319";i:1;s:3:"481";i:2;s:3:"528";i:3;s:3:"678";}}s:4:"ring";a:4:{s:1:"C";s:3:"202";s:2:"WX";s:3:"600";s:1:"N";s:4:"ring";s:1:"B";a:4:{i:0;s:3:"319";i:1;s:3:"481";i:2;s:3:"528";i:3;s:3:"678";}}i:203;a:4:{s:1:"C";s:3:"203";s:2:"WX";s:3:"600";s:1:"N";s:7:"cedilla";s:1:"B";a:4:{i:0;s:3:"168";i:1;s:4:"-206";i:2;s:3:"368";i:3;s:1:"0";}}s:7:"cedilla";a:4:{s:1:"C";s:3:"203";s:2:"WX";s:3:"600";s:1:"N";s:7:"cedilla";s:1:"B";a:4:{i:0;s:3:"168";i:1;s:4:"-206";i:2;s:3:"368";i:3;s:1:"0";}}i:205;a:4:{s:1:"C";s:3:"205";s:2:"WX";s:3:"600";s:1:"N";s:12:"hungarumlaut";s:1:"B";a:4:{i:0;s:3:"171";i:1;s:3:"488";i:2;s:3:"729";i:3;s:3:"661";}}s:12:"hungarumlaut";a:4:{s:1:"C";s:3:"205";s:2:"WX";s:3:"600";s:1:"N";s:12:"hungarumlaut";s:1:"B";a:4:{i:0;s:3:"171";i:1;s:3:"488";i:2;s:3:"729";i:3;s:3:"661";}}i:206;a:4:{s:1:"C";s:3:"206";s:2:"WX";s:3:"600";s:1:"N";s:6:"ogonek";s:1:"B";a:4:{i:0;s:3:"143";i:1;s:4:"-199";i:2;s:3:"367";i:3;s:1:"0";}}s:6:"ogonek";a:4:{s:1:"C";s:3:"206";s:2:"WX";s:3:"600";s:1:"N";s:6:"ogonek";s:1:"B";a:4:{i:0;s:3:"143";i:1;s:4:"-199";i:2;s:3:"367";i:3;s:1:"0";}}i:207;a:4:{s:1:"C";s:3:"207";s:2:"WX";s:3:"600";s:1:"N";s:5:"caron";s:1:"B";a:4:{i:0;s:3:"238";i:1;s:3:"493";i:2;s:3:"633";i:3;s:3:"667";}}s:5:"caron";a:4:{s:1:"C";s:3:"207";s:2:"WX";s:3:"600";s:1:"N";s:5:"caron";s:1:"B";a:4:{i:0;s:3:"238";i:1;s:3:"493";i:2;s:3:"633";i:3;s:3:"667";}}i:208;a:4:{s:1:"C";s:3:"208";s:2:"WX";s:3:"600";s:1:"N";s:6:"emdash";s:1:"B";a:4:{i:0;s:2:"33";i:1;s:3:"203";i:2;s:3:"677";i:3;s:3:"313";}}s:6:"emdash";a:4:{s:1:"C";s:3:"208";s:2:"WX";s:3:"600";s:1:"N";s:6:"emdash";s:1:"B";a:4:{i:0;s:2:"33";i:1;s:3:"203";i:2;s:3:"677";i:3;s:3:"313";}}i:225;a:4:{s:1:"C";s:3:"225";s:2:"WX";s:3:"600";s:1:"N";s:2:"AE";s:1:"B";a:4:{i:0;s:3:"-29";i:1;s:1:"0";i:2;s:3:"708";i:3;s:3:"562";}}s:2:"AE";a:4:{s:1:"C";s:3:"225";s:2:"WX";s:3:"600";s:1:"N";s:2:"AE";s:1:"B";a:4:{i:0;s:3:"-29";i:1;s:1:"0";i:2;s:3:"708";i:3;s:3:"562";}}i:227;a:4:{s:1:"C";s:3:"227";s:2:"WX";s:3:"600";s:1:"N";s:11:"ordfeminine";s:1:"B";a:4:{i:0;s:3:"188";i:1;s:3:"196";i:2;s:3:"526";i:3;s:3:"580";}}s:11:"ordfeminine";a:4:{s:1:"C";s:3:"227";s:2:"WX";s:3:"600";s:1:"N";s:11:"ordfeminine";s:1:"B";a:4:{i:0;s:3:"188";i:1;s:3:"196";i:2;s:3:"526";i:3;s:3:"580";}}i:232;a:4:{s:1:"C";s:3:"232";s:2:"WX";s:3:"600";s:1:"N";s:6:"Lslash";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:1:"0";i:2;s:3:"636";i:3;s:3:"562";}}s:6:"Lslash";a:4:{s:1:"C";s:3:"232";s:2:"WX";s:3:"600";s:1:"N";s:6:"Lslash";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:1:"0";i:2;s:3:"636";i:3;s:3:"562";}}i:233;a:4:{s:1:"C";s:3:"233";s:2:"WX";s:3:"600";s:1:"N";s:6:"Oslash";s:1:"B";a:4:{i:0;s:2:"48";i:1;s:3:"-22";i:2;s:3:"673";i:3;s:3:"584";}}s:6:"Oslash";a:4:{s:1:"C";s:3:"233";s:2:"WX";s:3:"600";s:1:"N";s:6:"Oslash";s:1:"B";a:4:{i:0;s:2:"48";i:1;s:3:"-22";i:2;s:3:"673";i:3;s:3:"584";}}i:234;a:4:{s:1:"C";s:3:"234";s:2:"WX";s:3:"600";s:1:"N";s:2:"OE";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"701";i:3;s:3:"562";}}s:2:"OE";a:4:{s:1:"C";s:3:"234";s:2:"WX";s:3:"600";s:1:"N";s:2:"OE";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"701";i:3;s:3:"562";}}i:235;a:4:{s:1:"C";s:3:"235";s:2:"WX";s:3:"600";s:1:"N";s:12:"ordmasculine";s:1:"B";a:4:{i:0;s:3:"188";i:1;s:3:"196";i:2;s:3:"543";i:3;s:3:"580";}}s:12:"ordmasculine";a:4:{s:1:"C";s:3:"235";s:2:"WX";s:3:"600";s:1:"N";s:12:"ordmasculine";s:1:"B";a:4:{i:0;s:3:"188";i:1;s:3:"196";i:2;s:3:"543";i:3;s:3:"580";}}i:241;a:4:{s:1:"C";s:3:"241";s:2:"WX";s:3:"600";s:1:"N";s:2:"ae";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:3:"-15";i:2;s:3:"652";i:3;s:3:"454";}}s:2:"ae";a:4:{s:1:"C";s:3:"241";s:2:"WX";s:3:"600";s:1:"N";s:2:"ae";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:3:"-15";i:2;s:3:"652";i:3;s:3:"454";}}i:245;a:4:{s:1:"C";s:3:"245";s:2:"WX";s:3:"600";s:1:"N";s:8:"dotlessi";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"546";i:3;s:3:"439";}}s:8:"dotlessi";a:4:{s:1:"C";s:3:"245";s:2:"WX";s:3:"600";s:1:"N";s:8:"dotlessi";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"546";i:3;s:3:"439";}}i:248;a:4:{s:1:"C";s:3:"248";s:2:"WX";s:3:"600";s:1:"N";s:6:"lslash";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"587";i:3;s:3:"626";}}s:6:"lslash";a:4:{s:1:"C";s:3:"248";s:2:"WX";s:3:"600";s:1:"N";s:6:"lslash";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"587";i:3;s:3:"626";}}i:249;a:4:{s:1:"C";s:3:"249";s:2:"WX";s:3:"600";s:1:"N";s:6:"oslash";s:1:"B";a:4:{i:0;s:2:"54";i:1;s:3:"-24";i:2;s:3:"638";i:3;s:3:"463";}}s:6:"oslash";a:4:{s:1:"C";s:3:"249";s:2:"WX";s:3:"600";s:1:"N";s:6:"oslash";s:1:"B";a:4:{i:0;s:2:"54";i:1;s:3:"-24";i:2;s:3:"638";i:3;s:3:"463";}}i:250;a:4:{s:1:"C";s:3:"250";s:2:"WX";s:3:"600";s:1:"N";s:2:"oe";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:3:"-15";i:2;s:3:"662";i:3;s:3:"454";}}s:2:"oe";a:4:{s:1:"C";s:3:"250";s:2:"WX";s:3:"600";s:1:"N";s:2:"oe";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:3:"-15";i:2;s:3:"662";i:3;s:3:"454";}}i:251;a:4:{s:1:"C";s:3:"251";s:2:"WX";s:3:"600";s:1:"N";s:10:"germandbls";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:3:"-15";i:2;s:3:"629";i:3;s:3:"626";}}s:10:"germandbls";a:4:{s:1:"C";s:3:"251";s:2:"WX";s:3:"600";s:1:"N";s:10:"germandbls";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:3:"-15";i:2;s:3:"629";i:3;s:3:"626";}}s:9:"Idieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"Idieresis";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"643";i:3;s:3:"761";}}s:6:"eacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"eacute";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:3:"-15";i:2;s:3:"609";i:3;s:3:"661";}}s:6:"abreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"abreve";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:3:"-15";i:2;s:3:"658";i:3;s:3:"661";}}s:13:"uhungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:13:"uhungarumlaut";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:3:"-15";i:2;s:3:"769";i:3;s:3:"661";}}s:6:"ecaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"ecaron";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:3:"-15";i:2;s:3:"633";i:3;s:3:"667";}}s:9:"Ydieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"Ydieresis";s:1:"B";a:4:{i:0;s:3:"109";i:1;s:1:"0";i:2;s:3:"709";i:3;s:3:"761";}}s:6:"divide";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"divide";s:1:"B";a:4:{i:0;s:3:"114";i:1;s:2:"16";i:2;s:3:"596";i:3;s:3:"500";}}s:6:"Yacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Yacute";s:1:"B";a:4:{i:0;s:3:"109";i:1;s:1:"0";i:2;s:3:"709";i:3;s:3:"784";}}s:11:"Acircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"Acircumflex";s:1:"B";a:4:{i:0;s:2:"-9";i:1;s:1:"0";i:2;s:3:"632";i:3;s:3:"780";}}s:6:"aacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"aacute";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:3:"-15";i:2;s:3:"609";i:3;s:3:"661";}}s:11:"Ucircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"Ucircumflex";s:1:"B";a:4:{i:0;s:3:"101";i:1;s:3:"-18";i:2;s:3:"716";i:3;s:3:"780";}}s:6:"yacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"yacute";s:1:"B";a:4:{i:0;s:3:"-21";i:1;s:4:"-142";i:2;s:3:"695";i:3;s:3:"661";}}s:12:"scommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"scommaaccent";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:4:"-250";i:2;s:3:"608";i:3;s:3:"459";}}s:11:"ecircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"ecircumflex";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:3:"-15";i:2;s:3:"607";i:3;s:3:"657";}}s:5:"Uring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:5:"Uring";s:1:"B";a:4:{i:0;s:3:"101";i:1;s:3:"-18";i:2;s:3:"716";i:3;s:3:"801";}}s:9:"Udieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"Udieresis";s:1:"B";a:4:{i:0;s:3:"101";i:1;s:3:"-18";i:2;s:3:"716";i:3;s:3:"761";}}s:7:"aogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"aogonek";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:4:"-199";i:2;s:3:"593";i:3;s:3:"454";}}s:6:"Uacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Uacute";s:1:"B";a:4:{i:0;s:3:"101";i:1;s:3:"-18";i:2;s:3:"716";i:3;s:3:"784";}}s:7:"uogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"uogonek";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:4:"-199";i:2;s:3:"592";i:3;s:3:"439";}}s:9:"Edieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"Edieresis";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:1:"0";i:2;s:3:"670";i:3;s:3:"761";}}s:6:"Dcroat";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Dcroat";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:1:"0";i:2;s:3:"664";i:3;s:3:"562";}}s:11:"commaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"commaaccent";s:1:"B";a:4:{i:0;s:3:"151";i:1;s:4:"-250";i:2;s:3:"385";i:3;s:3:"-57";}}s:9:"copyright";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"copyright";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:3:"-18";i:2;s:3:"667";i:3;s:3:"580";}}s:7:"Emacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"Emacron";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:1:"0";i:2;s:3:"670";i:3;s:3:"708";}}s:6:"ccaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"ccaron";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:3:"-15";i:2;s:3:"633";i:3;s:3:"667";}}s:5:"aring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:5:"aring";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:3:"-15";i:2;s:3:"593";i:3;s:3:"678";}}s:12:"Ncommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"Ncommaaccent";s:1:"B";a:4:{i:0;s:1:"8";i:1;s:4:"-250";i:2;s:3:"730";i:3;s:3:"562";}}s:6:"lacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"lacute";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"639";i:3;s:3:"801";}}s:6:"agrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"agrave";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:3:"-15";i:2;s:3:"593";i:3;s:3:"661";}}s:12:"Tcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"Tcommaaccent";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:4:"-250";i:2;s:3:"679";i:3;s:3:"562";}}s:6:"Cacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Cacute";s:1:"B";a:4:{i:0;s:2:"74";i:1;s:3:"-18";i:2;s:3:"675";i:3;s:3:"784";}}s:6:"atilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"atilde";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:3:"-15";i:2;s:3:"643";i:3;s:3:"636";}}s:10:"Edotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:10:"Edotaccent";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:1:"0";i:2;s:3:"670";i:3;s:3:"761";}}s:6:"scaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"scaron";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:3:"-17";i:2;s:3:"633";i:3;s:3:"667";}}s:8:"scedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:8:"scedilla";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:4:"-206";i:2;s:3:"608";i:3;s:3:"459";}}s:6:"iacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"iacute";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"609";i:3;s:3:"661";}}s:7:"lozenge";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"lozenge";s:1:"B";a:4:{i:0;s:3:"145";i:1;s:1:"0";i:2;s:3:"614";i:3;s:3:"740";}}s:6:"Rcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Rcaron";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:1:"0";i:2;s:3:"659";i:3;s:3:"790";}}s:12:"Gcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"Gcommaaccent";s:1:"B";a:4:{i:0;s:2:"74";i:1;s:4:"-250";i:2;s:3:"675";i:3;s:3:"580";}}s:11:"ucircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"ucircumflex";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:3:"-15";i:2;s:3:"597";i:3;s:3:"657";}}s:11:"acircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"acircumflex";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:3:"-15";i:2;s:3:"607";i:3;s:3:"657";}}s:7:"Amacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"Amacron";s:1:"B";a:4:{i:0;s:2:"-9";i:1;s:1:"0";i:2;s:3:"633";i:3;s:3:"708";}}s:6:"rcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"rcaron";s:1:"B";a:4:{i:0;s:2:"47";i:1;s:1:"0";i:2;s:3:"655";i:3;s:3:"667";}}s:8:"ccedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:8:"ccedilla";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:4:"-206";i:2;s:3:"631";i:3;s:3:"459";}}s:10:"Zdotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:10:"Zdotaccent";s:1:"B";a:4:{i:0;s:2:"62";i:1;s:1:"0";i:2;s:3:"637";i:3;s:3:"761";}}s:5:"Thorn";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:5:"Thorn";s:1:"B";a:4:{i:0;s:2:"48";i:1;s:1:"0";i:2;s:3:"620";i:3;s:3:"562";}}s:7:"Omacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"Omacron";s:1:"B";a:4:{i:0;s:2:"74";i:1;s:3:"-18";i:2;s:3:"663";i:3;s:3:"708";}}s:6:"Racute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Racute";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:1:"0";i:2;s:3:"665";i:3;s:3:"784";}}s:6:"Sacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Sacute";s:1:"B";a:4:{i:0;s:2:"54";i:1;s:3:"-22";i:2;s:3:"673";i:3;s:3:"784";}}s:6:"dcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"dcaron";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:3:"-15";i:2;s:3:"861";i:3;s:3:"626";}}s:7:"Umacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"Umacron";s:1:"B";a:4:{i:0;s:3:"101";i:1;s:3:"-18";i:2;s:3:"716";i:3;s:3:"708";}}s:5:"uring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:5:"uring";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:3:"-15";i:2;s:3:"592";i:3;s:3:"678";}}s:13:"threesuperior";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:13:"threesuperior";s:1:"B";a:4:{i:0;s:3:"193";i:1;s:3:"222";i:2;s:3:"526";i:3;s:3:"616";}}s:6:"Ograve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Ograve";s:1:"B";a:4:{i:0;s:2:"74";i:1;s:3:"-18";i:2;s:3:"645";i:3;s:3:"784";}}s:6:"Agrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Agrave";s:1:"B";a:4:{i:0;s:2:"-9";i:1;s:1:"0";i:2;s:3:"632";i:3;s:3:"784";}}s:6:"Abreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Abreve";s:1:"B";a:4:{i:0;s:2:"-9";i:1;s:1:"0";i:2;s:3:"684";i:3;s:3:"784";}}s:8:"multiply";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:8:"multiply";s:1:"B";a:4:{i:0;s:3:"104";i:1;s:2:"39";i:2;s:3:"606";i:3;s:3:"478";}}s:6:"uacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"uacute";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:3:"-15";i:2;s:3:"599";i:3;s:3:"661";}}s:6:"Tcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Tcaron";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"679";i:3;s:3:"790";}}s:11:"partialdiff";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"partialdiff";s:1:"B";a:4:{i:0;s:2:"91";i:1;s:3:"-38";i:2;s:3:"627";i:3;s:3:"728";}}s:9:"ydieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"ydieresis";s:1:"B";a:4:{i:0;s:3:"-21";i:1;s:4:"-142";i:2;s:3:"695";i:3;s:3:"638";}}s:6:"Nacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Nacute";s:1:"B";a:4:{i:0;s:1:"8";i:1;s:3:"-12";i:2;s:3:"730";i:3;s:3:"784";}}s:11:"icircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"icircumflex";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"577";i:3;s:3:"657";}}s:11:"Ecircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"Ecircumflex";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:1:"0";i:2;s:3:"670";i:3;s:3:"780";}}s:9:"adieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"adieresis";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:3:"-15";i:2;s:3:"595";i:3;s:3:"638";}}s:9:"edieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"edieresis";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:3:"-15";i:2;s:3:"605";i:3;s:3:"638";}}s:6:"cacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"cacute";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:3:"-15";i:2;s:3:"649";i:3;s:3:"661";}}s:6:"nacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"nacute";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:1:"0";i:2;s:3:"639";i:3;s:3:"661";}}s:7:"umacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"umacron";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:3:"-15";i:2;s:3:"637";i:3;s:3:"585";}}s:6:"Ncaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Ncaron";s:1:"B";a:4:{i:0;s:1:"8";i:1;s:3:"-12";i:2;s:3:"730";i:3;s:3:"790";}}s:6:"Iacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Iacute";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"643";i:3;s:3:"784";}}s:9:"plusminus";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"plusminus";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:2:"24";i:2;s:3:"614";i:3;s:3:"515";}}s:9:"brokenbar";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"brokenbar";s:1:"B";a:4:{i:0;s:3:"217";i:1;s:4:"-175";i:2;s:3:"489";i:3;s:3:"675";}}s:10:"registered";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:10:"registered";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:3:"-18";i:2;s:3:"667";i:3;s:3:"580";}}s:6:"Gbreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Gbreve";s:1:"B";a:4:{i:0;s:2:"74";i:1;s:3:"-18";i:2;s:3:"684";i:3;s:3:"784";}}s:10:"Idotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:10:"Idotaccent";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"643";i:3;s:3:"761";}}s:9:"summation";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"summation";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:3:"-10";i:2;s:3:"672";i:3;s:3:"706";}}s:6:"Egrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Egrave";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:1:"0";i:2;s:3:"670";i:3;s:3:"784";}}s:6:"racute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"racute";s:1:"B";a:4:{i:0;s:2:"47";i:1;s:1:"0";i:2;s:3:"655";i:3;s:3:"661";}}s:7:"omacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"omacron";s:1:"B";a:4:{i:0;s:2:"71";i:1;s:3:"-15";i:2;s:3:"637";i:3;s:3:"585";}}s:6:"Zacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Zacute";s:1:"B";a:4:{i:0;s:2:"62";i:1;s:1:"0";i:2;s:3:"665";i:3;s:3:"784";}}s:6:"Zcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Zcaron";s:1:"B";a:4:{i:0;s:2:"62";i:1;s:1:"0";i:2;s:3:"659";i:3;s:3:"790";}}s:12:"greaterequal";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"greaterequal";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"627";i:3;s:3:"696";}}s:3:"Eth";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:3:"Eth";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:1:"0";i:2;s:3:"664";i:3;s:3:"562";}}s:8:"Ccedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:8:"Ccedilla";s:1:"B";a:4:{i:0;s:2:"74";i:1;s:4:"-206";i:2;s:3:"675";i:3;s:3:"580";}}s:12:"lcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"lcommaaccent";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:4:"-250";i:2;s:3:"546";i:3;s:3:"626";}}s:6:"tcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"tcaron";s:1:"B";a:4:{i:0;s:3:"118";i:1;s:3:"-15";i:2;s:3:"627";i:3;s:3:"703";}}s:7:"eogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"eogonek";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:4:"-199";i:2;s:3:"605";i:3;s:3:"454";}}s:7:"Uogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"Uogonek";s:1:"B";a:4:{i:0;s:3:"101";i:1;s:4:"-199";i:2;s:3:"716";i:3;s:3:"562";}}s:6:"Aacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Aacute";s:1:"B";a:4:{i:0;s:2:"-9";i:1;s:1:"0";i:2;s:3:"655";i:3;s:3:"784";}}s:9:"Adieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"Adieresis";s:1:"B";a:4:{i:0;s:2:"-9";i:1;s:1:"0";i:2;s:3:"632";i:3;s:3:"761";}}s:6:"egrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"egrave";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:3:"-15";i:2;s:3:"605";i:3;s:3:"661";}}s:6:"zacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"zacute";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:1:"0";i:2;s:3:"614";i:3;s:3:"661";}}s:7:"iogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"iogonek";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:4:"-199";i:2;s:3:"546";i:3;s:3:"658";}}s:6:"Oacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Oacute";s:1:"B";a:4:{i:0;s:2:"74";i:1;s:3:"-18";i:2;s:3:"645";i:3;s:3:"784";}}s:6:"oacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"oacute";s:1:"B";a:4:{i:0;s:2:"71";i:1;s:3:"-15";i:2;s:3:"649";i:3;s:3:"661";}}s:7:"amacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"amacron";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:3:"-15";i:2;s:3:"637";i:3;s:3:"585";}}s:6:"sacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"sacute";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:3:"-17";i:2;s:3:"609";i:3;s:3:"661";}}s:9:"idieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"idieresis";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"561";i:3;s:3:"618";}}s:11:"Ocircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"Ocircumflex";s:1:"B";a:4:{i:0;s:2:"74";i:1;s:3:"-18";i:2;s:3:"645";i:3;s:3:"780";}}s:6:"Ugrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Ugrave";s:1:"B";a:4:{i:0;s:3:"101";i:1;s:3:"-18";i:2;s:3:"716";i:3;s:3:"784";}}s:5:"Delta";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:5:"Delta";s:1:"B";a:4:{i:0;s:1:"6";i:1;s:1:"0";i:2;s:3:"594";i:3;s:3:"688";}}s:5:"thorn";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:5:"thorn";s:1:"B";a:4:{i:0;s:3:"-32";i:1;s:4:"-142";i:2;s:3:"622";i:3;s:3:"626";}}s:11:"twosuperior";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"twosuperior";s:1:"B";a:4:{i:0;s:3:"191";i:1;s:3:"230";i:2;s:3:"542";i:3;s:3:"616";}}s:9:"Odieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"Odieresis";s:1:"B";a:4:{i:0;s:2:"74";i:1;s:3:"-18";i:2;s:3:"645";i:3;s:3:"761";}}s:2:"mu";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:2:"mu";s:1:"B";a:4:{i:0;s:2:"49";i:1;s:4:"-142";i:2;s:3:"592";i:3;s:3:"439";}}s:6:"igrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"igrave";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"546";i:3;s:3:"661";}}s:13:"ohungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:13:"ohungarumlaut";s:1:"B";a:4:{i:0;s:2:"71";i:1;s:3:"-15";i:2;s:3:"809";i:3;s:3:"661";}}s:7:"Eogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"Eogonek";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:4:"-199";i:2;s:3:"670";i:3;s:3:"562";}}s:6:"dcroat";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"dcroat";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:3:"-15";i:2;s:3:"712";i:3;s:3:"626";}}s:13:"threequarters";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:13:"threequarters";s:1:"B";a:4:{i:0;s:1:"8";i:1;s:3:"-60";i:2;s:3:"699";i:3;s:3:"661";}}s:8:"Scedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:8:"Scedilla";s:1:"B";a:4:{i:0;s:2:"54";i:1;s:4:"-206";i:2;s:3:"673";i:3;s:3:"582";}}s:6:"lcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"lcaron";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"731";i:3;s:3:"626";}}s:12:"Kcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"Kcommaaccent";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:4:"-250";i:2;s:3:"692";i:3;s:3:"562";}}s:6:"Lacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Lacute";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:1:"0";i:2;s:3:"636";i:3;s:3:"784";}}s:9:"trademark";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"trademark";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:3:"230";i:2;s:3:"869";i:3;s:3:"562";}}s:10:"edotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:10:"edotaccent";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:3:"-15";i:2;s:3:"605";i:3;s:3:"638";}}s:6:"Igrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Igrave";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"643";i:3;s:3:"784";}}s:7:"Imacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"Imacron";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"663";i:3;s:3:"708";}}s:6:"Lcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Lcaron";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:1:"0";i:2;s:3:"757";i:3;s:3:"562";}}s:7:"onehalf";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"onehalf";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:3:"-60";i:2;s:3:"716";i:3;s:3:"661";}}s:9:"lessequal";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"lessequal";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"671";i:3;s:3:"696";}}s:11:"ocircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"ocircumflex";s:1:"B";a:4:{i:0;s:2:"71";i:1;s:3:"-15";i:2;s:3:"622";i:3;s:3:"657";}}s:6:"ntilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"ntilde";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:1:"0";i:2;s:3:"643";i:3;s:3:"636";}}s:13:"Uhungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:13:"Uhungarumlaut";s:1:"B";a:4:{i:0;s:3:"101";i:1;s:3:"-18";i:2;s:3:"805";i:3;s:3:"784";}}s:6:"Eacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Eacute";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:1:"0";i:2;s:3:"670";i:3;s:3:"784";}}s:7:"emacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"emacron";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:3:"-15";i:2;s:3:"637";i:3;s:3:"585";}}s:6:"gbreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"gbreve";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:4:"-146";i:2;s:3:"674";i:3;s:3:"661";}}s:10:"onequarter";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:10:"onequarter";s:1:"B";a:4:{i:0;s:2:"13";i:1;s:3:"-60";i:2;s:3:"707";i:3;s:3:"661";}}s:6:"Scaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Scaron";s:1:"B";a:4:{i:0;s:2:"54";i:1;s:3:"-22";i:2;s:3:"689";i:3;s:3:"790";}}s:12:"Scommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"Scommaaccent";s:1:"B";a:4:{i:0;s:2:"54";i:1;s:4:"-250";i:2;s:3:"673";i:3;s:3:"582";}}s:13:"Ohungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:13:"Ohungarumlaut";s:1:"B";a:4:{i:0;s:2:"74";i:1;s:3:"-18";i:2;s:3:"795";i:3;s:3:"784";}}s:6:"degree";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"degree";s:1:"B";a:4:{i:0;s:3:"173";i:1;s:3:"243";i:2;s:3:"570";i:3;s:3:"616";}}s:6:"ograve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"ograve";s:1:"B";a:4:{i:0;s:2:"71";i:1;s:3:"-15";i:2;s:3:"622";i:3;s:3:"661";}}s:6:"Ccaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Ccaron";s:1:"B";a:4:{i:0;s:2:"74";i:1;s:3:"-18";i:2;s:3:"689";i:3;s:3:"790";}}s:6:"ugrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"ugrave";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:3:"-15";i:2;s:3:"592";i:3;s:3:"661";}}s:7:"radical";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"radical";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:4:"-104";i:2;s:3:"635";i:3;s:3:"778";}}s:6:"Dcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Dcaron";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:1:"0";i:2;s:3:"664";i:3;s:3:"790";}}s:12:"rcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"rcommaaccent";s:1:"B";a:4:{i:0;s:2:"47";i:1;s:4:"-250";i:2;s:3:"655";i:3;s:3:"454";}}s:6:"Ntilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Ntilde";s:1:"B";a:4:{i:0;s:1:"8";i:1;s:3:"-12";i:2;s:3:"730";i:3;s:3:"759";}}s:6:"otilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"otilde";s:1:"B";a:4:{i:0;s:2:"71";i:1;s:3:"-15";i:2;s:3:"643";i:3;s:3:"636";}}s:12:"Rcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"Rcommaaccent";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:4:"-250";i:2;s:3:"617";i:3;s:3:"562";}}s:12:"Lcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"Lcommaaccent";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:4:"-250";i:2;s:3:"636";i:3;s:3:"562";}}s:6:"Atilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Atilde";s:1:"B";a:4:{i:0;s:2:"-9";i:1;s:1:"0";i:2;s:3:"669";i:3;s:3:"759";}}s:7:"Aogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"Aogonek";s:1:"B";a:4:{i:0;s:2:"-9";i:1;s:4:"-199";i:2;s:3:"632";i:3;s:3:"562";}}s:5:"Aring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:5:"Aring";s:1:"B";a:4:{i:0;s:2:"-9";i:1;s:1:"0";i:2;s:3:"632";i:3;s:3:"801";}}s:6:"Otilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Otilde";s:1:"B";a:4:{i:0;s:2:"74";i:1;s:3:"-18";i:2;s:3:"669";i:3;s:3:"759";}}s:10:"zdotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:10:"zdotaccent";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:1:"0";i:2;s:3:"614";i:3;s:3:"638";}}s:6:"Ecaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Ecaron";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:1:"0";i:2;s:3:"670";i:3;s:3:"790";}}s:7:"Iogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"Iogonek";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:4:"-199";i:2;s:3:"643";i:3;s:3:"562";}}s:12:"kcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"kcommaaccent";s:1:"B";a:4:{i:0;s:2:"33";i:1;s:4:"-250";i:2;s:3:"643";i:3;s:3:"626";}}s:5:"minus";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:5:"minus";s:1:"B";a:4:{i:0;s:3:"114";i:1;s:3:"203";i:2;s:3:"596";i:3;s:3:"313";}}s:11:"Icircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"Icircumflex";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"643";i:3;s:3:"780";}}s:6:"ncaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"ncaron";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:1:"0";i:2;s:3:"633";i:3;s:3:"667";}}s:12:"tcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"tcommaaccent";s:1:"B";a:4:{i:0;s:3:"118";i:1;s:4:"-250";i:2;s:3:"567";i:3;s:3:"562";}}s:10:"logicalnot";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:10:"logicalnot";s:1:"B";a:4:{i:0;s:3:"135";i:1;s:3:"103";i:2;s:3:"617";i:3;s:3:"413";}}s:9:"odieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"odieresis";s:1:"B";a:4:{i:0;s:2:"71";i:1;s:3:"-15";i:2;s:3:"622";i:3;s:3:"638";}}s:9:"udieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"udieresis";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:3:"-15";i:2;s:3:"595";i:3;s:3:"638";}}s:8:"notequal";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:8:"notequal";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"-47";i:2;s:3:"626";i:3;s:3:"563";}}s:12:"gcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"gcommaaccent";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:4:"-146";i:2;s:3:"674";i:3;s:3:"714";}}s:3:"eth";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:3:"eth";s:1:"B";a:4:{i:0;s:2:"93";i:1;s:3:"-27";i:2;s:3:"661";i:3;s:3:"626";}}s:6:"zcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"zcaron";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:1:"0";i:2;s:3:"643";i:3;s:3:"667";}}s:12:"ncommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"ncommaaccent";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:4:"-250";i:2;s:3:"615";i:3;s:3:"454";}}s:11:"onesuperior";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"onesuperior";s:1:"B";a:4:{i:0;s:3:"212";i:1;s:3:"230";i:2;s:3:"514";i:3;s:3:"616";}}s:7:"imacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"imacron";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"575";i:3;s:3:"585";}}s:4:"Euro";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:4:"Euro";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:1:"0";i:3;s:1:"0";}}}s:9:"_version_";i:1;} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Courier-Oblique.afm b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Courier-Oblique.afm
new file mode 100755
index 00000000..0e2cb5f5
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Courier-Oblique.afm
@@ -0,0 +1 @@
+a:21:{s:8:"FontName";s:15:"Courier-Oblique";s:8:"FullName";s:15:"Courier Oblique";s:10:"FamilyName";s:7:"Courier";s:6:"Weight";s:6:"Medium";s:11:"ItalicAngle";s:3:"-12";s:12:"IsFixedPitch";s:4:"true";s:12:"CharacterSet";s:13:"ExtendedRoman";s:8:"FontBBox";a:4:{i:0;s:3:"-27";i:1;s:4:"-250";i:2;s:3:"849";i:3;s:3:"805";}s:17:"UnderlinePosition";s:4:"-100";s:18:"UnderlineThickness";s:2:"50";s:7:"Version";s:7:"003.000";s:14:"EncodingScheme";s:21:"AdobeStandardEncoding";s:9:"CapHeight";s:3:"562";s:7:"XHeight";s:3:"426";s:8:"Ascender";s:3:"629";s:9:"Descender";s:4:"-157";s:5:"StdHW";s:2:"51";s:5:"StdVW";s:2:"51";s:16:"StartCharMetrics";s:3:"315";s:1:"C";a:464:{i:32;a:4:{s:1:"C";s:2:"32";s:2:"WX";s:3:"600";s:1:"N";s:5:"space";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:1:"0";i:3;s:1:"0";}}s:5:"space";a:4:{s:1:"C";s:2:"32";s:2:"WX";s:3:"600";s:1:"N";s:5:"space";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:1:"0";i:3;s:1:"0";}}i:33;a:4:{s:1:"C";s:2:"33";s:2:"WX";s:3:"600";s:1:"N";s:6:"exclam";s:1:"B";a:4:{i:0;s:3:"243";i:1;s:3:"-15";i:2;s:3:"464";i:3;s:3:"572";}}s:6:"exclam";a:4:{s:1:"C";s:2:"33";s:2:"WX";s:3:"600";s:1:"N";s:6:"exclam";s:1:"B";a:4:{i:0;s:3:"243";i:1;s:3:"-15";i:2;s:3:"464";i:3;s:3:"572";}}i:34;a:4:{s:1:"C";s:2:"34";s:2:"WX";s:3:"600";s:1:"N";s:8:"quotedbl";s:1:"B";a:4:{i:0;s:3:"273";i:1;s:3:"328";i:2;s:3:"532";i:3;s:3:"562";}}s:8:"quotedbl";a:4:{s:1:"C";s:2:"34";s:2:"WX";s:3:"600";s:1:"N";s:8:"quotedbl";s:1:"B";a:4:{i:0;s:3:"273";i:1;s:3:"328";i:2;s:3:"532";i:3;s:3:"562";}}i:35;a:4:{s:1:"C";s:2:"35";s:2:"WX";s:3:"600";s:1:"N";s:10:"numbersign";s:1:"B";a:4:{i:0;s:3:"133";i:1;s:3:"-32";i:2;s:3:"596";i:3;s:3:"639";}}s:10:"numbersign";a:4:{s:1:"C";s:2:"35";s:2:"WX";s:3:"600";s:1:"N";s:10:"numbersign";s:1:"B";a:4:{i:0;s:3:"133";i:1;s:3:"-32";i:2;s:3:"596";i:3;s:3:"639";}}i:36;a:4:{s:1:"C";s:2:"36";s:2:"WX";s:3:"600";s:1:"N";s:6:"dollar";s:1:"B";a:4:{i:0;s:3:"108";i:1;s:4:"-126";i:2;s:3:"596";i:3;s:3:"662";}}s:6:"dollar";a:4:{s:1:"C";s:2:"36";s:2:"WX";s:3:"600";s:1:"N";s:6:"dollar";s:1:"B";a:4:{i:0;s:3:"108";i:1;s:4:"-126";i:2;s:3:"596";i:3;s:3:"662";}}i:37;a:4:{s:1:"C";s:2:"37";s:2:"WX";s:3:"600";s:1:"N";s:7:"percent";s:1:"B";a:4:{i:0;s:3:"134";i:1;s:3:"-15";i:2;s:3:"599";i:3;s:3:"622";}}s:7:"percent";a:4:{s:1:"C";s:2:"37";s:2:"WX";s:3:"600";s:1:"N";s:7:"percent";s:1:"B";a:4:{i:0;s:3:"134";i:1;s:3:"-15";i:2;s:3:"599";i:3;s:3:"622";}}i:38;a:4:{s:1:"C";s:2:"38";s:2:"WX";s:3:"600";s:1:"N";s:9:"ampersand";s:1:"B";a:4:{i:0;s:2:"87";i:1;s:3:"-15";i:2;s:3:"580";i:3;s:3:"543";}}s:9:"ampersand";a:4:{s:1:"C";s:2:"38";s:2:"WX";s:3:"600";s:1:"N";s:9:"ampersand";s:1:"B";a:4:{i:0;s:2:"87";i:1;s:3:"-15";i:2;s:3:"580";i:3;s:3:"543";}}i:39;a:4:{s:1:"C";s:2:"39";s:2:"WX";s:3:"600";s:1:"N";s:10:"quoteright";s:1:"B";a:4:{i:0;s:3:"283";i:1;s:3:"328";i:2;s:3:"495";i:3;s:3:"562";}}s:10:"quoteright";a:4:{s:1:"C";s:2:"39";s:2:"WX";s:3:"600";s:1:"N";s:10:"quoteright";s:1:"B";a:4:{i:0;s:3:"283";i:1;s:3:"328";i:2;s:3:"495";i:3;s:3:"562";}}i:40;a:4:{s:1:"C";s:2:"40";s:2:"WX";s:3:"600";s:1:"N";s:9:"parenleft";s:1:"B";a:4:{i:0;s:3:"313";i:1;s:4:"-108";i:2;s:3:"572";i:3;s:3:"622";}}s:9:"parenleft";a:4:{s:1:"C";s:2:"40";s:2:"WX";s:3:"600";s:1:"N";s:9:"parenleft";s:1:"B";a:4:{i:0;s:3:"313";i:1;s:4:"-108";i:2;s:3:"572";i:3;s:3:"622";}}i:41;a:4:{s:1:"C";s:2:"41";s:2:"WX";s:3:"600";s:1:"N";s:10:"parenright";s:1:"B";a:4:{i:0;s:3:"137";i:1;s:4:"-108";i:2;s:3:"396";i:3;s:3:"622";}}s:10:"parenright";a:4:{s:1:"C";s:2:"41";s:2:"WX";s:3:"600";s:1:"N";s:10:"parenright";s:1:"B";a:4:{i:0;s:3:"137";i:1;s:4:"-108";i:2;s:3:"396";i:3;s:3:"622";}}i:42;a:4:{s:1:"C";s:2:"42";s:2:"WX";s:3:"600";s:1:"N";s:8:"asterisk";s:1:"B";a:4:{i:0;s:3:"212";i:1;s:3:"257";i:2;s:3:"580";i:3;s:3:"607";}}s:8:"asterisk";a:4:{s:1:"C";s:2:"42";s:2:"WX";s:3:"600";s:1:"N";s:8:"asterisk";s:1:"B";a:4:{i:0;s:3:"212";i:1;s:3:"257";i:2;s:3:"580";i:3;s:3:"607";}}i:43;a:4:{s:1:"C";s:2:"43";s:2:"WX";s:3:"600";s:1:"N";s:4:"plus";s:1:"B";a:4:{i:0;s:3:"129";i:1;s:2:"44";i:2;s:3:"580";i:3;s:3:"470";}}s:4:"plus";a:4:{s:1:"C";s:2:"43";s:2:"WX";s:3:"600";s:1:"N";s:4:"plus";s:1:"B";a:4:{i:0;s:3:"129";i:1;s:2:"44";i:2;s:3:"580";i:3;s:3:"470";}}i:44;a:4:{s:1:"C";s:2:"44";s:2:"WX";s:3:"600";s:1:"N";s:5:"comma";s:1:"B";a:4:{i:0;s:3:"157";i:1;s:4:"-112";i:2;s:3:"370";i:3;s:3:"122";}}s:5:"comma";a:4:{s:1:"C";s:2:"44";s:2:"WX";s:3:"600";s:1:"N";s:5:"comma";s:1:"B";a:4:{i:0;s:3:"157";i:1;s:4:"-112";i:2;s:3:"370";i:3;s:3:"122";}}i:45;a:4:{s:1:"C";s:2:"45";s:2:"WX";s:3:"600";s:1:"N";s:6:"hyphen";s:1:"B";a:4:{i:0;s:3:"152";i:1;s:3:"231";i:2;s:3:"558";i:3;s:3:"285";}}s:6:"hyphen";a:4:{s:1:"C";s:2:"45";s:2:"WX";s:3:"600";s:1:"N";s:6:"hyphen";s:1:"B";a:4:{i:0;s:3:"152";i:1;s:3:"231";i:2;s:3:"558";i:3;s:3:"285";}}i:46;a:4:{s:1:"C";s:2:"46";s:2:"WX";s:3:"600";s:1:"N";s:6:"period";s:1:"B";a:4:{i:0;s:3:"238";i:1;s:3:"-15";i:2;s:3:"382";i:3;s:3:"109";}}s:6:"period";a:4:{s:1:"C";s:2:"46";s:2:"WX";s:3:"600";s:1:"N";s:6:"period";s:1:"B";a:4:{i:0;s:3:"238";i:1;s:3:"-15";i:2;s:3:"382";i:3;s:3:"109";}}i:47;a:4:{s:1:"C";s:2:"47";s:2:"WX";s:3:"600";s:1:"N";s:5:"slash";s:1:"B";a:4:{i:0;s:3:"112";i:1;s:3:"-80";i:2;s:3:"604";i:3;s:3:"629";}}s:5:"slash";a:4:{s:1:"C";s:2:"47";s:2:"WX";s:3:"600";s:1:"N";s:5:"slash";s:1:"B";a:4:{i:0;s:3:"112";i:1;s:3:"-80";i:2;s:3:"604";i:3;s:3:"629";}}i:48;a:4:{s:1:"C";s:2:"48";s:2:"WX";s:3:"600";s:1:"N";s:4:"zero";s:1:"B";a:4:{i:0;s:3:"154";i:1;s:3:"-15";i:2;s:3:"575";i:3;s:3:"622";}}s:4:"zero";a:4:{s:1:"C";s:2:"48";s:2:"WX";s:3:"600";s:1:"N";s:4:"zero";s:1:"B";a:4:{i:0;s:3:"154";i:1;s:3:"-15";i:2;s:3:"575";i:3;s:3:"622";}}i:49;a:4:{s:1:"C";s:2:"49";s:2:"WX";s:3:"600";s:1:"N";s:3:"one";s:1:"B";a:4:{i:0;s:2:"98";i:1;s:1:"0";i:2;s:3:"515";i:3;s:3:"622";}}s:3:"one";a:4:{s:1:"C";s:2:"49";s:2:"WX";s:3:"600";s:1:"N";s:3:"one";s:1:"B";a:4:{i:0;s:2:"98";i:1;s:1:"0";i:2;s:3:"515";i:3;s:3:"622";}}i:50;a:4:{s:1:"C";s:2:"50";s:2:"WX";s:3:"600";s:1:"N";s:3:"two";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:1:"0";i:2;s:3:"568";i:3;s:3:"622";}}s:3:"two";a:4:{s:1:"C";s:2:"50";s:2:"WX";s:3:"600";s:1:"N";s:3:"two";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:1:"0";i:2;s:3:"568";i:3;s:3:"622";}}i:51;a:4:{s:1:"C";s:2:"51";s:2:"WX";s:3:"600";s:1:"N";s:5:"three";s:1:"B";a:4:{i:0;s:2:"82";i:1;s:3:"-15";i:2;s:3:"538";i:3;s:3:"622";}}s:5:"three";a:4:{s:1:"C";s:2:"51";s:2:"WX";s:3:"600";s:1:"N";s:5:"three";s:1:"B";a:4:{i:0;s:2:"82";i:1;s:3:"-15";i:2;s:3:"538";i:3;s:3:"622";}}i:52;a:4:{s:1:"C";s:2:"52";s:2:"WX";s:3:"600";s:1:"N";s:4:"four";s:1:"B";a:4:{i:0;s:3:"108";i:1;s:1:"0";i:2;s:3:"541";i:3;s:3:"622";}}s:4:"four";a:4:{s:1:"C";s:2:"52";s:2:"WX";s:3:"600";s:1:"N";s:4:"four";s:1:"B";a:4:{i:0;s:3:"108";i:1;s:1:"0";i:2;s:3:"541";i:3;s:3:"622";}}i:53;a:4:{s:1:"C";s:2:"53";s:2:"WX";s:3:"600";s:1:"N";s:4:"five";s:1:"B";a:4:{i:0;s:2:"99";i:1;s:3:"-15";i:2;s:3:"589";i:3;s:3:"607";}}s:4:"five";a:4:{s:1:"C";s:2:"53";s:2:"WX";s:3:"600";s:1:"N";s:4:"five";s:1:"B";a:4:{i:0;s:2:"99";i:1;s:3:"-15";i:2;s:3:"589";i:3;s:3:"607";}}i:54;a:4:{s:1:"C";s:2:"54";s:2:"WX";s:3:"600";s:1:"N";s:3:"six";s:1:"B";a:4:{i:0;s:3:"155";i:1;s:3:"-15";i:2;s:3:"629";i:3;s:3:"622";}}s:3:"six";a:4:{s:1:"C";s:2:"54";s:2:"WX";s:3:"600";s:1:"N";s:3:"six";s:1:"B";a:4:{i:0;s:3:"155";i:1;s:3:"-15";i:2;s:3:"629";i:3;s:3:"622";}}i:55;a:4:{s:1:"C";s:2:"55";s:2:"WX";s:3:"600";s:1:"N";s:5:"seven";s:1:"B";a:4:{i:0;s:3:"182";i:1;s:1:"0";i:2;s:3:"612";i:3;s:3:"607";}}s:5:"seven";a:4:{s:1:"C";s:2:"55";s:2:"WX";s:3:"600";s:1:"N";s:5:"seven";s:1:"B";a:4:{i:0;s:3:"182";i:1;s:1:"0";i:2;s:3:"612";i:3;s:3:"607";}}i:56;a:4:{s:1:"C";s:2:"56";s:2:"WX";s:3:"600";s:1:"N";s:5:"eight";s:1:"B";a:4:{i:0;s:3:"132";i:1;s:3:"-15";i:2;s:3:"588";i:3;s:3:"622";}}s:5:"eight";a:4:{s:1:"C";s:2:"56";s:2:"WX";s:3:"600";s:1:"N";s:5:"eight";s:1:"B";a:4:{i:0;s:3:"132";i:1;s:3:"-15";i:2;s:3:"588";i:3;s:3:"622";}}i:57;a:4:{s:1:"C";s:2:"57";s:2:"WX";s:3:"600";s:1:"N";s:4:"nine";s:1:"B";a:4:{i:0;s:2:"93";i:1;s:3:"-15";i:2;s:3:"574";i:3;s:3:"622";}}s:4:"nine";a:4:{s:1:"C";s:2:"57";s:2:"WX";s:3:"600";s:1:"N";s:4:"nine";s:1:"B";a:4:{i:0;s:2:"93";i:1;s:3:"-15";i:2;s:3:"574";i:3;s:3:"622";}}i:58;a:4:{s:1:"C";s:2:"58";s:2:"WX";s:3:"600";s:1:"N";s:5:"colon";s:1:"B";a:4:{i:0;s:3:"238";i:1;s:3:"-15";i:2;s:3:"441";i:3;s:3:"385";}}s:5:"colon";a:4:{s:1:"C";s:2:"58";s:2:"WX";s:3:"600";s:1:"N";s:5:"colon";s:1:"B";a:4:{i:0;s:3:"238";i:1;s:3:"-15";i:2;s:3:"441";i:3;s:3:"385";}}i:59;a:4:{s:1:"C";s:2:"59";s:2:"WX";s:3:"600";s:1:"N";s:9:"semicolon";s:1:"B";a:4:{i:0;s:3:"157";i:1;s:4:"-112";i:2;s:3:"441";i:3;s:3:"385";}}s:9:"semicolon";a:4:{s:1:"C";s:2:"59";s:2:"WX";s:3:"600";s:1:"N";s:9:"semicolon";s:1:"B";a:4:{i:0;s:3:"157";i:1;s:4:"-112";i:2;s:3:"441";i:3;s:3:"385";}}i:60;a:4:{s:1:"C";s:2:"60";s:2:"WX";s:3:"600";s:1:"N";s:4:"less";s:1:"B";a:4:{i:0;s:2:"96";i:1;s:2:"42";i:2;s:3:"610";i:3;s:3:"472";}}s:4:"less";a:4:{s:1:"C";s:2:"60";s:2:"WX";s:3:"600";s:1:"N";s:4:"less";s:1:"B";a:4:{i:0;s:2:"96";i:1;s:2:"42";i:2;s:3:"610";i:3;s:3:"472";}}i:61;a:4:{s:1:"C";s:2:"61";s:2:"WX";s:3:"600";s:1:"N";s:5:"equal";s:1:"B";a:4:{i:0;s:3:"109";i:1;s:3:"138";i:2;s:3:"600";i:3;s:3:"376";}}s:5:"equal";a:4:{s:1:"C";s:2:"61";s:2:"WX";s:3:"600";s:1:"N";s:5:"equal";s:1:"B";a:4:{i:0;s:3:"109";i:1;s:3:"138";i:2;s:3:"600";i:3;s:3:"376";}}i:62;a:4:{s:1:"C";s:2:"62";s:2:"WX";s:3:"600";s:1:"N";s:7:"greater";s:1:"B";a:4:{i:0;s:2:"85";i:1;s:2:"42";i:2;s:3:"599";i:3;s:3:"472";}}s:7:"greater";a:4:{s:1:"C";s:2:"62";s:2:"WX";s:3:"600";s:1:"N";s:7:"greater";s:1:"B";a:4:{i:0;s:2:"85";i:1;s:2:"42";i:2;s:3:"599";i:3;s:3:"472";}}i:63;a:4:{s:1:"C";s:2:"63";s:2:"WX";s:3:"600";s:1:"N";s:8:"question";s:1:"B";a:4:{i:0;s:3:"222";i:1;s:3:"-15";i:2;s:3:"583";i:3;s:3:"572";}}s:8:"question";a:4:{s:1:"C";s:2:"63";s:2:"WX";s:3:"600";s:1:"N";s:8:"question";s:1:"B";a:4:{i:0;s:3:"222";i:1;s:3:"-15";i:2;s:3:"583";i:3;s:3:"572";}}i:64;a:4:{s:1:"C";s:2:"64";s:2:"WX";s:3:"600";s:1:"N";s:2:"at";s:1:"B";a:4:{i:0;s:3:"127";i:1;s:3:"-15";i:2;s:3:"582";i:3;s:3:"622";}}s:2:"at";a:4:{s:1:"C";s:2:"64";s:2:"WX";s:3:"600";s:1:"N";s:2:"at";s:1:"B";a:4:{i:0;s:3:"127";i:1;s:3:"-15";i:2;s:3:"582";i:3;s:3:"622";}}i:65;a:4:{s:1:"C";s:2:"65";s:2:"WX";s:3:"600";s:1:"N";s:1:"A";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:1:"0";i:2;s:3:"607";i:3;s:3:"562";}}s:1:"A";a:4:{s:1:"C";s:2:"65";s:2:"WX";s:3:"600";s:1:"N";s:1:"A";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:1:"0";i:2;s:3:"607";i:3;s:3:"562";}}i:66;a:4:{s:1:"C";s:2:"66";s:2:"WX";s:3:"600";s:1:"N";s:1:"B";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:1:"0";i:2;s:3:"616";i:3;s:3:"562";}}s:1:"B";a:4:{s:1:"C";s:2:"66";s:2:"WX";s:3:"600";s:1:"N";s:1:"B";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:1:"0";i:2;s:3:"616";i:3;s:3:"562";}}i:67;a:4:{s:1:"C";s:2:"67";s:2:"WX";s:3:"600";s:1:"N";s:1:"C";s:1:"B";a:4:{i:0;s:2:"93";i:1;s:3:"-18";i:2;s:3:"655";i:3;s:3:"580";}}s:1:"C";a:4:{s:1:"C";s:2:"67";s:2:"WX";s:3:"600";s:1:"N";s:1:"C";s:1:"B";a:4:{i:0;s:2:"93";i:1;s:3:"-18";i:2;s:3:"655";i:3;s:3:"580";}}i:68;a:4:{s:1:"C";s:2:"68";s:2:"WX";s:3:"600";s:1:"N";s:1:"D";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:1:"0";i:2;s:3:"645";i:3;s:3:"562";}}s:1:"D";a:4:{s:1:"C";s:2:"68";s:2:"WX";s:3:"600";s:1:"N";s:1:"D";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:1:"0";i:2;s:3:"645";i:3;s:3:"562";}}i:69;a:4:{s:1:"C";s:2:"69";s:2:"WX";s:3:"600";s:1:"N";s:1:"E";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:1:"0";i:2;s:3:"660";i:3;s:3:"562";}}s:1:"E";a:4:{s:1:"C";s:2:"69";s:2:"WX";s:3:"600";s:1:"N";s:1:"E";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:1:"0";i:2;s:3:"660";i:3;s:3:"562";}}i:70;a:4:{s:1:"C";s:2:"70";s:2:"WX";s:3:"600";s:1:"N";s:1:"F";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:1:"0";i:2;s:3:"660";i:3;s:3:"562";}}s:1:"F";a:4:{s:1:"C";s:2:"70";s:2:"WX";s:3:"600";s:1:"N";s:1:"F";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:1:"0";i:2;s:3:"660";i:3;s:3:"562";}}i:71;a:4:{s:1:"C";s:2:"71";s:2:"WX";s:3:"600";s:1:"N";s:1:"G";s:1:"B";a:4:{i:0;s:2:"83";i:1;s:3:"-18";i:2;s:3:"645";i:3;s:3:"580";}}s:1:"G";a:4:{s:1:"C";s:2:"71";s:2:"WX";s:3:"600";s:1:"N";s:1:"G";s:1:"B";a:4:{i:0;s:2:"83";i:1;s:3:"-18";i:2;s:3:"645";i:3;s:3:"580";}}i:72;a:4:{s:1:"C";s:2:"72";s:2:"WX";s:3:"600";s:1:"N";s:1:"H";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:1:"0";i:2;s:3:"687";i:3;s:3:"562";}}s:1:"H";a:4:{s:1:"C";s:2:"72";s:2:"WX";s:3:"600";s:1:"N";s:1:"H";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:1:"0";i:2;s:3:"687";i:3;s:3:"562";}}i:73;a:4:{s:1:"C";s:2:"73";s:2:"WX";s:3:"600";s:1:"N";s:1:"I";s:1:"B";a:4:{i:0;s:2:"96";i:1;s:1:"0";i:2;s:3:"623";i:3;s:3:"562";}}s:1:"I";a:4:{s:1:"C";s:2:"73";s:2:"WX";s:3:"600";s:1:"N";s:1:"I";s:1:"B";a:4:{i:0;s:2:"96";i:1;s:1:"0";i:2;s:3:"623";i:3;s:3:"562";}}i:74;a:4:{s:1:"C";s:2:"74";s:2:"WX";s:3:"600";s:1:"N";s:1:"J";s:1:"B";a:4:{i:0;s:2:"52";i:1;s:3:"-18";i:2;s:3:"685";i:3;s:3:"562";}}s:1:"J";a:4:{s:1:"C";s:2:"74";s:2:"WX";s:3:"600";s:1:"N";s:1:"J";s:1:"B";a:4:{i:0;s:2:"52";i:1;s:3:"-18";i:2;s:3:"685";i:3;s:3:"562";}}i:75;a:4:{s:1:"C";s:2:"75";s:2:"WX";s:3:"600";s:1:"N";s:1:"K";s:1:"B";a:4:{i:0;s:2:"38";i:1;s:1:"0";i:2;s:3:"671";i:3;s:3:"562";}}s:1:"K";a:4:{s:1:"C";s:2:"75";s:2:"WX";s:3:"600";s:1:"N";s:1:"K";s:1:"B";a:4:{i:0;s:2:"38";i:1;s:1:"0";i:2;s:3:"671";i:3;s:3:"562";}}i:76;a:4:{s:1:"C";s:2:"76";s:2:"WX";s:3:"600";s:1:"N";s:1:"L";s:1:"B";a:4:{i:0;s:2:"47";i:1;s:1:"0";i:2;s:3:"607";i:3;s:3:"562";}}s:1:"L";a:4:{s:1:"C";s:2:"76";s:2:"WX";s:3:"600";s:1:"N";s:1:"L";s:1:"B";a:4:{i:0;s:2:"47";i:1;s:1:"0";i:2;s:3:"607";i:3;s:3:"562";}}i:77;a:4:{s:1:"C";s:2:"77";s:2:"WX";s:3:"600";s:1:"N";s:1:"M";s:1:"B";a:4:{i:0;s:1:"4";i:1;s:1:"0";i:2;s:3:"715";i:3;s:3:"562";}}s:1:"M";a:4:{s:1:"C";s:2:"77";s:2:"WX";s:3:"600";s:1:"N";s:1:"M";s:1:"B";a:4:{i:0;s:1:"4";i:1;s:1:"0";i:2;s:3:"715";i:3;s:3:"562";}}i:78;a:4:{s:1:"C";s:2:"78";s:2:"WX";s:3:"600";s:1:"N";s:1:"N";s:1:"B";a:4:{i:0;s:1:"7";i:1;s:3:"-13";i:2;s:3:"712";i:3;s:3:"562";}}s:1:"N";a:4:{s:1:"C";s:2:"78";s:2:"WX";s:3:"600";s:1:"N";s:1:"N";s:1:"B";a:4:{i:0;s:1:"7";i:1;s:3:"-13";i:2;s:3:"712";i:3;s:3:"562";}}i:79;a:4:{s:1:"C";s:2:"79";s:2:"WX";s:3:"600";s:1:"N";s:1:"O";s:1:"B";a:4:{i:0;s:2:"94";i:1;s:3:"-18";i:2;s:3:"625";i:3;s:3:"580";}}s:1:"O";a:4:{s:1:"C";s:2:"79";s:2:"WX";s:3:"600";s:1:"N";s:1:"O";s:1:"B";a:4:{i:0;s:2:"94";i:1;s:3:"-18";i:2;s:3:"625";i:3;s:3:"580";}}i:80;a:4:{s:1:"C";s:2:"80";s:2:"WX";s:3:"600";s:1:"N";s:1:"P";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:1:"0";i:2;s:3:"644";i:3;s:3:"562";}}s:1:"P";a:4:{s:1:"C";s:2:"80";s:2:"WX";s:3:"600";s:1:"N";s:1:"P";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:1:"0";i:2;s:3:"644";i:3;s:3:"562";}}i:81;a:4:{s:1:"C";s:2:"81";s:2:"WX";s:3:"600";s:1:"N";s:1:"Q";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:4:"-138";i:2;s:3:"625";i:3;s:3:"580";}}s:1:"Q";a:4:{s:1:"C";s:2:"81";s:2:"WX";s:3:"600";s:1:"N";s:1:"Q";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:4:"-138";i:2;s:3:"625";i:3;s:3:"580";}}i:82;a:4:{s:1:"C";s:2:"82";s:2:"WX";s:3:"600";s:1:"N";s:1:"R";s:1:"B";a:4:{i:0;s:2:"38";i:1;s:1:"0";i:2;s:3:"598";i:3;s:3:"562";}}s:1:"R";a:4:{s:1:"C";s:2:"82";s:2:"WX";s:3:"600";s:1:"N";s:1:"R";s:1:"B";a:4:{i:0;s:2:"38";i:1;s:1:"0";i:2;s:3:"598";i:3;s:3:"562";}}i:83;a:4:{s:1:"C";s:2:"83";s:2:"WX";s:3:"600";s:1:"N";s:1:"S";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:3:"-20";i:2;s:3:"650";i:3;s:3:"580";}}s:1:"S";a:4:{s:1:"C";s:2:"83";s:2:"WX";s:3:"600";s:1:"N";s:1:"S";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:3:"-20";i:2;s:3:"650";i:3;s:3:"580";}}i:84;a:4:{s:1:"C";s:2:"84";s:2:"WX";s:3:"600";s:1:"N";s:1:"T";s:1:"B";a:4:{i:0;s:3:"108";i:1;s:1:"0";i:2;s:3:"665";i:3;s:3:"562";}}s:1:"T";a:4:{s:1:"C";s:2:"84";s:2:"WX";s:3:"600";s:1:"N";s:1:"T";s:1:"B";a:4:{i:0;s:3:"108";i:1;s:1:"0";i:2;s:3:"665";i:3;s:3:"562";}}i:85;a:4:{s:1:"C";s:2:"85";s:2:"WX";s:3:"600";s:1:"N";s:1:"U";s:1:"B";a:4:{i:0;s:3:"125";i:1;s:3:"-18";i:2;s:3:"702";i:3;s:3:"562";}}s:1:"U";a:4:{s:1:"C";s:2:"85";s:2:"WX";s:3:"600";s:1:"N";s:1:"U";s:1:"B";a:4:{i:0;s:3:"125";i:1;s:3:"-18";i:2;s:3:"702";i:3;s:3:"562";}}i:86;a:4:{s:1:"C";s:2:"86";s:2:"WX";s:3:"600";s:1:"N";s:1:"V";s:1:"B";a:4:{i:0;s:3:"105";i:1;s:3:"-13";i:2;s:3:"723";i:3;s:3:"562";}}s:1:"V";a:4:{s:1:"C";s:2:"86";s:2:"WX";s:3:"600";s:1:"N";s:1:"V";s:1:"B";a:4:{i:0;s:3:"105";i:1;s:3:"-13";i:2;s:3:"723";i:3;s:3:"562";}}i:87;a:4:{s:1:"C";s:2:"87";s:2:"WX";s:3:"600";s:1:"N";s:1:"W";s:1:"B";a:4:{i:0;s:3:"106";i:1;s:3:"-13";i:2;s:3:"722";i:3;s:3:"562";}}s:1:"W";a:4:{s:1:"C";s:2:"87";s:2:"WX";s:3:"600";s:1:"N";s:1:"W";s:1:"B";a:4:{i:0;s:3:"106";i:1;s:3:"-13";i:2;s:3:"722";i:3;s:3:"562";}}i:88;a:4:{s:1:"C";s:2:"88";s:2:"WX";s:3:"600";s:1:"N";s:1:"X";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:1:"0";i:2;s:3:"675";i:3;s:3:"562";}}s:1:"X";a:4:{s:1:"C";s:2:"88";s:2:"WX";s:3:"600";s:1:"N";s:1:"X";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:1:"0";i:2;s:3:"675";i:3;s:3:"562";}}i:89;a:4:{s:1:"C";s:2:"89";s:2:"WX";s:3:"600";s:1:"N";s:1:"Y";s:1:"B";a:4:{i:0;s:3:"133";i:1;s:1:"0";i:2;s:3:"695";i:3;s:3:"562";}}s:1:"Y";a:4:{s:1:"C";s:2:"89";s:2:"WX";s:3:"600";s:1:"N";s:1:"Y";s:1:"B";a:4:{i:0;s:3:"133";i:1;s:1:"0";i:2;s:3:"695";i:3;s:3:"562";}}i:90;a:4:{s:1:"C";s:2:"90";s:2:"WX";s:3:"600";s:1:"N";s:1:"Z";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"610";i:3;s:3:"562";}}s:1:"Z";a:4:{s:1:"C";s:2:"90";s:2:"WX";s:3:"600";s:1:"N";s:1:"Z";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"610";i:3;s:3:"562";}}i:91;a:4:{s:1:"C";s:2:"91";s:2:"WX";s:3:"600";s:1:"N";s:11:"bracketleft";s:1:"B";a:4:{i:0;s:3:"246";i:1;s:4:"-108";i:2;s:3:"574";i:3;s:3:"622";}}s:11:"bracketleft";a:4:{s:1:"C";s:2:"91";s:2:"WX";s:3:"600";s:1:"N";s:11:"bracketleft";s:1:"B";a:4:{i:0;s:3:"246";i:1;s:4:"-108";i:2;s:3:"574";i:3;s:3:"622";}}i:92;a:4:{s:1:"C";s:2:"92";s:2:"WX";s:3:"600";s:1:"N";s:9:"backslash";s:1:"B";a:4:{i:0;s:3:"249";i:1;s:3:"-80";i:2;s:3:"468";i:3;s:3:"629";}}s:9:"backslash";a:4:{s:1:"C";s:2:"92";s:2:"WX";s:3:"600";s:1:"N";s:9:"backslash";s:1:"B";a:4:{i:0;s:3:"249";i:1;s:3:"-80";i:2;s:3:"468";i:3;s:3:"629";}}i:93;a:4:{s:1:"C";s:2:"93";s:2:"WX";s:3:"600";s:1:"N";s:12:"bracketright";s:1:"B";a:4:{i:0;s:3:"135";i:1;s:4:"-108";i:2;s:3:"463";i:3;s:3:"622";}}s:12:"bracketright";a:4:{s:1:"C";s:2:"93";s:2:"WX";s:3:"600";s:1:"N";s:12:"bracketright";s:1:"B";a:4:{i:0;s:3:"135";i:1;s:4:"-108";i:2;s:3:"463";i:3;s:3:"622";}}i:94;a:4:{s:1:"C";s:2:"94";s:2:"WX";s:3:"600";s:1:"N";s:11:"asciicircum";s:1:"B";a:4:{i:0;s:3:"175";i:1;s:3:"354";i:2;s:3:"587";i:3;s:3:"622";}}s:11:"asciicircum";a:4:{s:1:"C";s:2:"94";s:2:"WX";s:3:"600";s:1:"N";s:11:"asciicircum";s:1:"B";a:4:{i:0;s:3:"175";i:1;s:3:"354";i:2;s:3:"587";i:3;s:3:"622";}}i:95;a:4:{s:1:"C";s:2:"95";s:2:"WX";s:3:"600";s:1:"N";s:10:"underscore";s:1:"B";a:4:{i:0;s:3:"-27";i:1;s:4:"-125";i:2;s:3:"584";i:3;s:3:"-75";}}s:10:"underscore";a:4:{s:1:"C";s:2:"95";s:2:"WX";s:3:"600";s:1:"N";s:10:"underscore";s:1:"B";a:4:{i:0;s:3:"-27";i:1;s:4:"-125";i:2;s:3:"584";i:3;s:3:"-75";}}i:96;a:4:{s:1:"C";s:2:"96";s:2:"WX";s:3:"600";s:1:"N";s:9:"quoteleft";s:1:"B";a:4:{i:0;s:3:"343";i:1;s:3:"328";i:2;s:3:"457";i:3;s:3:"562";}}s:9:"quoteleft";a:4:{s:1:"C";s:2:"96";s:2:"WX";s:3:"600";s:1:"N";s:9:"quoteleft";s:1:"B";a:4:{i:0;s:3:"343";i:1;s:3:"328";i:2;s:3:"457";i:3;s:3:"562";}}i:97;a:4:{s:1:"C";s:2:"97";s:2:"WX";s:3:"600";s:1:"N";s:1:"a";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:3:"-15";i:2;s:3:"569";i:3;s:3:"441";}}s:1:"a";a:4:{s:1:"C";s:2:"97";s:2:"WX";s:3:"600";s:1:"N";s:1:"a";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:3:"-15";i:2;s:3:"569";i:3;s:3:"441";}}i:98;a:4:{s:1:"C";s:2:"98";s:2:"WX";s:3:"600";s:1:"N";s:1:"b";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:3:"-15";i:2;s:3:"625";i:3;s:3:"629";}}s:1:"b";a:4:{s:1:"C";s:2:"98";s:2:"WX";s:3:"600";s:1:"N";s:1:"b";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:3:"-15";i:2;s:3:"625";i:3;s:3:"629";}}i:99;a:4:{s:1:"C";s:2:"99";s:2:"WX";s:3:"600";s:1:"N";s:1:"c";s:1:"B";a:4:{i:0;s:3:"106";i:1;s:3:"-15";i:2;s:3:"608";i:3;s:3:"441";}}s:1:"c";a:4:{s:1:"C";s:2:"99";s:2:"WX";s:3:"600";s:1:"N";s:1:"c";s:1:"B";a:4:{i:0;s:3:"106";i:1;s:3:"-15";i:2;s:3:"608";i:3;s:3:"441";}}i:100;a:4:{s:1:"C";s:3:"100";s:2:"WX";s:3:"600";s:1:"N";s:1:"d";s:1:"B";a:4:{i:0;s:2:"85";i:1;s:3:"-15";i:2;s:3:"640";i:3;s:3:"629";}}s:1:"d";a:4:{s:1:"C";s:3:"100";s:2:"WX";s:3:"600";s:1:"N";s:1:"d";s:1:"B";a:4:{i:0;s:2:"85";i:1;s:3:"-15";i:2;s:3:"640";i:3;s:3:"629";}}i:101;a:4:{s:1:"C";s:3:"101";s:2:"WX";s:3:"600";s:1:"N";s:1:"e";s:1:"B";a:4:{i:0;s:3:"106";i:1;s:3:"-15";i:2;s:3:"598";i:3;s:3:"441";}}s:1:"e";a:4:{s:1:"C";s:3:"101";s:2:"WX";s:3:"600";s:1:"N";s:1:"e";s:1:"B";a:4:{i:0;s:3:"106";i:1;s:3:"-15";i:2;s:3:"598";i:3;s:3:"441";}}i:102;a:5:{s:1:"C";s:3:"102";s:2:"WX";s:3:"600";s:1:"N";s:1:"f";s:1:"B";a:4:{i:0;s:3:"114";i:1;s:1:"0";i:2;s:3:"662";i:3;s:3:"629";}s:1:"L";a:2:{i:0;s:1:"l";i:1;s:2:"fl";}}s:1:"f";a:5:{s:1:"C";s:3:"102";s:2:"WX";s:3:"600";s:1:"N";s:1:"f";s:1:"B";a:4:{i:0;s:3:"114";i:1;s:1:"0";i:2;s:3:"662";i:3;s:3:"629";}s:1:"L";a:2:{i:0;s:1:"l";i:1;s:2:"fl";}}i:103;a:4:{s:1:"C";s:3:"103";s:2:"WX";s:3:"600";s:1:"N";s:1:"g";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:4:"-157";i:2;s:3:"657";i:3;s:3:"441";}}s:1:"g";a:4:{s:1:"C";s:3:"103";s:2:"WX";s:3:"600";s:1:"N";s:1:"g";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:4:"-157";i:2;s:3:"657";i:3;s:3:"441";}}i:104;a:4:{s:1:"C";s:3:"104";s:2:"WX";s:3:"600";s:1:"N";s:1:"h";s:1:"B";a:4:{i:0;s:2:"33";i:1;s:1:"0";i:2;s:3:"592";i:3;s:3:"629";}}s:1:"h";a:4:{s:1:"C";s:3:"104";s:2:"WX";s:3:"600";s:1:"N";s:1:"h";s:1:"B";a:4:{i:0;s:2:"33";i:1;s:1:"0";i:2;s:3:"592";i:3;s:3:"629";}}i:105;a:4:{s:1:"C";s:3:"105";s:2:"WX";s:3:"600";s:1:"N";s:1:"i";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:1:"0";i:2;s:3:"515";i:3;s:3:"657";}}s:1:"i";a:4:{s:1:"C";s:3:"105";s:2:"WX";s:3:"600";s:1:"N";s:1:"i";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:1:"0";i:2;s:3:"515";i:3;s:3:"657";}}i:106;a:4:{s:1:"C";s:3:"106";s:2:"WX";s:3:"600";s:1:"N";s:1:"j";s:1:"B";a:4:{i:0;s:2:"52";i:1;s:4:"-157";i:2;s:3:"550";i:3;s:3:"657";}}s:1:"j";a:4:{s:1:"C";s:3:"106";s:2:"WX";s:3:"600";s:1:"N";s:1:"j";s:1:"B";a:4:{i:0;s:2:"52";i:1;s:4:"-157";i:2;s:3:"550";i:3;s:3:"657";}}i:107;a:4:{s:1:"C";s:3:"107";s:2:"WX";s:3:"600";s:1:"N";s:1:"k";s:1:"B";a:4:{i:0;s:2:"58";i:1;s:1:"0";i:2;s:3:"633";i:3;s:3:"629";}}s:1:"k";a:4:{s:1:"C";s:3:"107";s:2:"WX";s:3:"600";s:1:"N";s:1:"k";s:1:"B";a:4:{i:0;s:2:"58";i:1;s:1:"0";i:2;s:3:"633";i:3;s:3:"629";}}i:108;a:4:{s:1:"C";s:3:"108";s:2:"WX";s:3:"600";s:1:"N";s:1:"l";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:1:"0";i:2;s:3:"515";i:3;s:3:"629";}}s:1:"l";a:4:{s:1:"C";s:3:"108";s:2:"WX";s:3:"600";s:1:"N";s:1:"l";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:1:"0";i:2;s:3:"515";i:3;s:3:"629";}}i:109;a:4:{s:1:"C";s:3:"109";s:2:"WX";s:3:"600";s:1:"N";s:1:"m";s:1:"B";a:4:{i:0;s:2:"-5";i:1;s:1:"0";i:2;s:3:"615";i:3;s:3:"441";}}s:1:"m";a:4:{s:1:"C";s:3:"109";s:2:"WX";s:3:"600";s:1:"N";s:1:"m";s:1:"B";a:4:{i:0;s:2:"-5";i:1;s:1:"0";i:2;s:3:"615";i:3;s:3:"441";}}i:110;a:4:{s:1:"C";s:3:"110";s:2:"WX";s:3:"600";s:1:"N";s:1:"n";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"585";i:3;s:3:"441";}}s:1:"n";a:4:{s:1:"C";s:3:"110";s:2:"WX";s:3:"600";s:1:"N";s:1:"n";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"585";i:3;s:3:"441";}}i:111;a:4:{s:1:"C";s:3:"111";s:2:"WX";s:3:"600";s:1:"N";s:1:"o";s:1:"B";a:4:{i:0;s:3:"102";i:1;s:3:"-15";i:2;s:3:"588";i:3;s:3:"441";}}s:1:"o";a:4:{s:1:"C";s:3:"111";s:2:"WX";s:3:"600";s:1:"N";s:1:"o";s:1:"B";a:4:{i:0;s:3:"102";i:1;s:3:"-15";i:2;s:3:"588";i:3;s:3:"441";}}i:112;a:4:{s:1:"C";s:3:"112";s:2:"WX";s:3:"600";s:1:"N";s:1:"p";s:1:"B";a:4:{i:0;s:3:"-24";i:1;s:4:"-157";i:2;s:3:"605";i:3;s:3:"441";}}s:1:"p";a:4:{s:1:"C";s:3:"112";s:2:"WX";s:3:"600";s:1:"N";s:1:"p";s:1:"B";a:4:{i:0;s:3:"-24";i:1;s:4:"-157";i:2;s:3:"605";i:3;s:3:"441";}}i:113;a:4:{s:1:"C";s:3:"113";s:2:"WX";s:3:"600";s:1:"N";s:1:"q";s:1:"B";a:4:{i:0;s:2:"85";i:1;s:4:"-157";i:2;s:3:"682";i:3;s:3:"441";}}s:1:"q";a:4:{s:1:"C";s:3:"113";s:2:"WX";s:3:"600";s:1:"N";s:1:"q";s:1:"B";a:4:{i:0;s:2:"85";i:1;s:4:"-157";i:2;s:3:"682";i:3;s:3:"441";}}i:114;a:4:{s:1:"C";s:3:"114";s:2:"WX";s:3:"600";s:1:"N";s:1:"r";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:1:"0";i:2;s:3:"636";i:3;s:3:"441";}}s:1:"r";a:4:{s:1:"C";s:3:"114";s:2:"WX";s:3:"600";s:1:"N";s:1:"r";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:1:"0";i:2;s:3:"636";i:3;s:3:"441";}}i:115;a:4:{s:1:"C";s:3:"115";s:2:"WX";s:3:"600";s:1:"N";s:1:"s";s:1:"B";a:4:{i:0;s:2:"78";i:1;s:3:"-15";i:2;s:3:"584";i:3;s:3:"441";}}s:1:"s";a:4:{s:1:"C";s:3:"115";s:2:"WX";s:3:"600";s:1:"N";s:1:"s";s:1:"B";a:4:{i:0;s:2:"78";i:1;s:3:"-15";i:2;s:3:"584";i:3;s:3:"441";}}i:116;a:4:{s:1:"C";s:3:"116";s:2:"WX";s:3:"600";s:1:"N";s:1:"t";s:1:"B";a:4:{i:0;s:3:"167";i:1;s:3:"-15";i:2;s:3:"561";i:3;s:3:"561";}}s:1:"t";a:4:{s:1:"C";s:3:"116";s:2:"WX";s:3:"600";s:1:"N";s:1:"t";s:1:"B";a:4:{i:0;s:3:"167";i:1;s:3:"-15";i:2;s:3:"561";i:3;s:3:"561";}}i:117;a:4:{s:1:"C";s:3:"117";s:2:"WX";s:3:"600";s:1:"N";s:1:"u";s:1:"B";a:4:{i:0;s:3:"101";i:1;s:3:"-15";i:2;s:3:"572";i:3;s:3:"426";}}s:1:"u";a:4:{s:1:"C";s:3:"117";s:2:"WX";s:3:"600";s:1:"N";s:1:"u";s:1:"B";a:4:{i:0;s:3:"101";i:1;s:3:"-15";i:2;s:3:"572";i:3;s:3:"426";}}i:118;a:4:{s:1:"C";s:3:"118";s:2:"WX";s:3:"600";s:1:"N";s:1:"v";s:1:"B";a:4:{i:0;s:2:"90";i:1;s:3:"-10";i:2;s:3:"681";i:3;s:3:"426";}}s:1:"v";a:4:{s:1:"C";s:3:"118";s:2:"WX";s:3:"600";s:1:"N";s:1:"v";s:1:"B";a:4:{i:0;s:2:"90";i:1;s:3:"-10";i:2;s:3:"681";i:3;s:3:"426";}}i:119;a:4:{s:1:"C";s:3:"119";s:2:"WX";s:3:"600";s:1:"N";s:1:"w";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:3:"-10";i:2;s:3:"695";i:3;s:3:"426";}}s:1:"w";a:4:{s:1:"C";s:3:"119";s:2:"WX";s:3:"600";s:1:"N";s:1:"w";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:3:"-10";i:2;s:3:"695";i:3;s:3:"426";}}i:120;a:4:{s:1:"C";s:3:"120";s:2:"WX";s:3:"600";s:1:"N";s:1:"x";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"655";i:3;s:3:"426";}}s:1:"x";a:4:{s:1:"C";s:3:"120";s:2:"WX";s:3:"600";s:1:"N";s:1:"x";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"655";i:3;s:3:"426";}}i:121;a:4:{s:1:"C";s:3:"121";s:2:"WX";s:3:"600";s:1:"N";s:1:"y";s:1:"B";a:4:{i:0;s:2:"-4";i:1;s:4:"-157";i:2;s:3:"683";i:3;s:3:"426";}}s:1:"y";a:4:{s:1:"C";s:3:"121";s:2:"WX";s:3:"600";s:1:"N";s:1:"y";s:1:"B";a:4:{i:0;s:2:"-4";i:1;s:4:"-157";i:2;s:3:"683";i:3;s:3:"426";}}i:122;a:4:{s:1:"C";s:3:"122";s:2:"WX";s:3:"600";s:1:"N";s:1:"z";s:1:"B";a:4:{i:0;s:2:"99";i:1;s:1:"0";i:2;s:3:"593";i:3;s:3:"426";}}s:1:"z";a:4:{s:1:"C";s:3:"122";s:2:"WX";s:3:"600";s:1:"N";s:1:"z";s:1:"B";a:4:{i:0;s:2:"99";i:1;s:1:"0";i:2;s:3:"593";i:3;s:3:"426";}}i:123;a:4:{s:1:"C";s:3:"123";s:2:"WX";s:3:"600";s:1:"N";s:9:"braceleft";s:1:"B";a:4:{i:0;s:3:"233";i:1;s:4:"-108";i:2;s:3:"569";i:3;s:3:"622";}}s:9:"braceleft";a:4:{s:1:"C";s:3:"123";s:2:"WX";s:3:"600";s:1:"N";s:9:"braceleft";s:1:"B";a:4:{i:0;s:3:"233";i:1;s:4:"-108";i:2;s:3:"569";i:3;s:3:"622";}}i:124;a:4:{s:1:"C";s:3:"124";s:2:"WX";s:3:"600";s:1:"N";s:3:"bar";s:1:"B";a:4:{i:0;s:3:"222";i:1;s:4:"-250";i:2;s:3:"485";i:3;s:3:"750";}}s:3:"bar";a:4:{s:1:"C";s:3:"124";s:2:"WX";s:3:"600";s:1:"N";s:3:"bar";s:1:"B";a:4:{i:0;s:3:"222";i:1;s:4:"-250";i:2;s:3:"485";i:3;s:3:"750";}}i:125;a:4:{s:1:"C";s:3:"125";s:2:"WX";s:3:"600";s:1:"N";s:10:"braceright";s:1:"B";a:4:{i:0;s:3:"140";i:1;s:4:"-108";i:2;s:3:"477";i:3;s:3:"622";}}s:10:"braceright";a:4:{s:1:"C";s:3:"125";s:2:"WX";s:3:"600";s:1:"N";s:10:"braceright";s:1:"B";a:4:{i:0;s:3:"140";i:1;s:4:"-108";i:2;s:3:"477";i:3;s:3:"622";}}i:126;a:4:{s:1:"C";s:3:"126";s:2:"WX";s:3:"600";s:1:"N";s:10:"asciitilde";s:1:"B";a:4:{i:0;s:3:"116";i:1;s:3:"197";i:2;s:3:"600";i:3;s:3:"320";}}s:10:"asciitilde";a:4:{s:1:"C";s:3:"126";s:2:"WX";s:3:"600";s:1:"N";s:10:"asciitilde";s:1:"B";a:4:{i:0;s:3:"116";i:1;s:3:"197";i:2;s:3:"600";i:3;s:3:"320";}}i:161;a:4:{s:1:"C";s:3:"161";s:2:"WX";s:3:"600";s:1:"N";s:10:"exclamdown";s:1:"B";a:4:{i:0;s:3:"225";i:1;s:4:"-157";i:2;s:3:"445";i:3;s:3:"430";}}s:10:"exclamdown";a:4:{s:1:"C";s:3:"161";s:2:"WX";s:3:"600";s:1:"N";s:10:"exclamdown";s:1:"B";a:4:{i:0;s:3:"225";i:1;s:4:"-157";i:2;s:3:"445";i:3;s:3:"430";}}i:162;a:4:{s:1:"C";s:3:"162";s:2:"WX";s:3:"600";s:1:"N";s:4:"cent";s:1:"B";a:4:{i:0;s:3:"151";i:1;s:3:"-49";i:2;s:3:"588";i:3;s:3:"614";}}s:4:"cent";a:4:{s:1:"C";s:3:"162";s:2:"WX";s:3:"600";s:1:"N";s:4:"cent";s:1:"B";a:4:{i:0;s:3:"151";i:1;s:3:"-49";i:2;s:3:"588";i:3;s:3:"614";}}i:163;a:4:{s:1:"C";s:3:"163";s:2:"WX";s:3:"600";s:1:"N";s:8:"sterling";s:1:"B";a:4:{i:0;s:3:"124";i:1;s:3:"-21";i:2;s:3:"621";i:3;s:3:"611";}}s:8:"sterling";a:4:{s:1:"C";s:3:"163";s:2:"WX";s:3:"600";s:1:"N";s:8:"sterling";s:1:"B";a:4:{i:0;s:3:"124";i:1;s:3:"-21";i:2;s:3:"621";i:3;s:3:"611";}}i:164;a:4:{s:1:"C";s:3:"164";s:2:"WX";s:3:"600";s:1:"N";s:8:"fraction";s:1:"B";a:4:{i:0;s:2:"84";i:1;s:3:"-57";i:2;s:3:"646";i:3;s:3:"665";}}s:8:"fraction";a:4:{s:1:"C";s:3:"164";s:2:"WX";s:3:"600";s:1:"N";s:8:"fraction";s:1:"B";a:4:{i:0;s:2:"84";i:1;s:3:"-57";i:2;s:3:"646";i:3;s:3:"665";}}i:165;a:4:{s:1:"C";s:3:"165";s:2:"WX";s:3:"600";s:1:"N";s:3:"yen";s:1:"B";a:4:{i:0;s:3:"120";i:1;s:1:"0";i:2;s:3:"693";i:3;s:3:"562";}}s:3:"yen";a:4:{s:1:"C";s:3:"165";s:2:"WX";s:3:"600";s:1:"N";s:3:"yen";s:1:"B";a:4:{i:0;s:3:"120";i:1;s:1:"0";i:2;s:3:"693";i:3;s:3:"562";}}i:166;a:4:{s:1:"C";s:3:"166";s:2:"WX";s:3:"600";s:1:"N";s:6:"florin";s:1:"B";a:4:{i:0;s:3:"-26";i:1;s:4:"-143";i:2;s:3:"671";i:3;s:3:"622";}}s:6:"florin";a:4:{s:1:"C";s:3:"166";s:2:"WX";s:3:"600";s:1:"N";s:6:"florin";s:1:"B";a:4:{i:0;s:3:"-26";i:1;s:4:"-143";i:2;s:3:"671";i:3;s:3:"622";}}i:167;a:4:{s:1:"C";s:3:"167";s:2:"WX";s:3:"600";s:1:"N";s:7:"section";s:1:"B";a:4:{i:0;s:3:"104";i:1;s:3:"-78";i:2;s:3:"590";i:3;s:3:"580";}}s:7:"section";a:4:{s:1:"C";s:3:"167";s:2:"WX";s:3:"600";s:1:"N";s:7:"section";s:1:"B";a:4:{i:0;s:3:"104";i:1;s:3:"-78";i:2;s:3:"590";i:3;s:3:"580";}}i:168;a:4:{s:1:"C";s:3:"168";s:2:"WX";s:3:"600";s:1:"N";s:8:"currency";s:1:"B";a:4:{i:0;s:2:"94";i:1;s:2:"58";i:2;s:3:"628";i:3;s:3:"506";}}s:8:"currency";a:4:{s:1:"C";s:3:"168";s:2:"WX";s:3:"600";s:1:"N";s:8:"currency";s:1:"B";a:4:{i:0;s:2:"94";i:1;s:2:"58";i:2;s:3:"628";i:3;s:3:"506";}}i:169;a:4:{s:1:"C";s:3:"169";s:2:"WX";s:3:"600";s:1:"N";s:11:"quotesingle";s:1:"B";a:4:{i:0;s:3:"345";i:1;s:3:"328";i:2;s:3:"460";i:3;s:3:"562";}}s:11:"quotesingle";a:4:{s:1:"C";s:3:"169";s:2:"WX";s:3:"600";s:1:"N";s:11:"quotesingle";s:1:"B";a:4:{i:0;s:3:"345";i:1;s:3:"328";i:2;s:3:"460";i:3;s:3:"562";}}i:170;a:4:{s:1:"C";s:3:"170";s:2:"WX";s:3:"600";s:1:"N";s:12:"quotedblleft";s:1:"B";a:4:{i:0;s:3:"262";i:1;s:3:"328";i:2;s:3:"541";i:3;s:3:"562";}}s:12:"quotedblleft";a:4:{s:1:"C";s:3:"170";s:2:"WX";s:3:"600";s:1:"N";s:12:"quotedblleft";s:1:"B";a:4:{i:0;s:3:"262";i:1;s:3:"328";i:2;s:3:"541";i:3;s:3:"562";}}i:171;a:4:{s:1:"C";s:3:"171";s:2:"WX";s:3:"600";s:1:"N";s:13:"guillemotleft";s:1:"B";a:4:{i:0;s:2:"92";i:1;s:2:"70";i:2;s:3:"652";i:3;s:3:"446";}}s:13:"guillemotleft";a:4:{s:1:"C";s:3:"171";s:2:"WX";s:3:"600";s:1:"N";s:13:"guillemotleft";s:1:"B";a:4:{i:0;s:2:"92";i:1;s:2:"70";i:2;s:3:"652";i:3;s:3:"446";}}i:172;a:4:{s:1:"C";s:3:"172";s:2:"WX";s:3:"600";s:1:"N";s:13:"guilsinglleft";s:1:"B";a:4:{i:0;s:3:"204";i:1;s:2:"70";i:2;s:3:"540";i:3;s:3:"446";}}s:13:"guilsinglleft";a:4:{s:1:"C";s:3:"172";s:2:"WX";s:3:"600";s:1:"N";s:13:"guilsinglleft";s:1:"B";a:4:{i:0;s:3:"204";i:1;s:2:"70";i:2;s:3:"540";i:3;s:3:"446";}}i:173;a:4:{s:1:"C";s:3:"173";s:2:"WX";s:3:"600";s:1:"N";s:14:"guilsinglright";s:1:"B";a:4:{i:0;s:3:"170";i:1;s:2:"70";i:2;s:3:"506";i:3;s:3:"446";}}s:14:"guilsinglright";a:4:{s:1:"C";s:3:"173";s:2:"WX";s:3:"600";s:1:"N";s:14:"guilsinglright";s:1:"B";a:4:{i:0;s:3:"170";i:1;s:2:"70";i:2;s:3:"506";i:3;s:3:"446";}}i:174;a:4:{s:1:"C";s:3:"174";s:2:"WX";s:3:"600";s:1:"N";s:2:"fi";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:1:"0";i:2;s:3:"619";i:3;s:3:"629";}}s:2:"fi";a:4:{s:1:"C";s:3:"174";s:2:"WX";s:3:"600";s:1:"N";s:2:"fi";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:1:"0";i:2;s:3:"619";i:3;s:3:"629";}}i:175;a:4:{s:1:"C";s:3:"175";s:2:"WX";s:3:"600";s:1:"N";s:2:"fl";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:1:"0";i:2;s:3:"619";i:3;s:3:"629";}}s:2:"fl";a:4:{s:1:"C";s:3:"175";s:2:"WX";s:3:"600";s:1:"N";s:2:"fl";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:1:"0";i:2;s:3:"619";i:3;s:3:"629";}}i:177;a:4:{s:1:"C";s:3:"177";s:2:"WX";s:3:"600";s:1:"N";s:6:"endash";s:1:"B";a:4:{i:0;s:3:"124";i:1;s:3:"231";i:2;s:3:"586";i:3;s:3:"285";}}s:6:"endash";a:4:{s:1:"C";s:3:"177";s:2:"WX";s:3:"600";s:1:"N";s:6:"endash";s:1:"B";a:4:{i:0;s:3:"124";i:1;s:3:"231";i:2;s:3:"586";i:3;s:3:"285";}}i:178;a:4:{s:1:"C";s:3:"178";s:2:"WX";s:3:"600";s:1:"N";s:6:"dagger";s:1:"B";a:4:{i:0;s:3:"217";i:1;s:3:"-78";i:2;s:3:"546";i:3;s:3:"580";}}s:6:"dagger";a:4:{s:1:"C";s:3:"178";s:2:"WX";s:3:"600";s:1:"N";s:6:"dagger";s:1:"B";a:4:{i:0;s:3:"217";i:1;s:3:"-78";i:2;s:3:"546";i:3;s:3:"580";}}i:179;a:4:{s:1:"C";s:3:"179";s:2:"WX";s:3:"600";s:1:"N";s:9:"daggerdbl";s:1:"B";a:4:{i:0;s:3:"163";i:1;s:3:"-78";i:2;s:3:"546";i:3;s:3:"580";}}s:9:"daggerdbl";a:4:{s:1:"C";s:3:"179";s:2:"WX";s:3:"600";s:1:"N";s:9:"daggerdbl";s:1:"B";a:4:{i:0;s:3:"163";i:1;s:3:"-78";i:2;s:3:"546";i:3;s:3:"580";}}i:180;a:4:{s:1:"C";s:3:"180";s:2:"WX";s:3:"600";s:1:"N";s:14:"periodcentered";s:1:"B";a:4:{i:0;s:3:"275";i:1;s:3:"189";i:2;s:3:"434";i:3;s:3:"327";}}s:14:"periodcentered";a:4:{s:1:"C";s:3:"180";s:2:"WX";s:3:"600";s:1:"N";s:14:"periodcentered";s:1:"B";a:4:{i:0;s:3:"275";i:1;s:3:"189";i:2;s:3:"434";i:3;s:3:"327";}}i:182;a:4:{s:1:"C";s:3:"182";s:2:"WX";s:3:"600";s:1:"N";s:9:"paragraph";s:1:"B";a:4:{i:0;s:3:"100";i:1;s:3:"-78";i:2;s:3:"630";i:3;s:3:"562";}}s:9:"paragraph";a:4:{s:1:"C";s:3:"182";s:2:"WX";s:3:"600";s:1:"N";s:9:"paragraph";s:1:"B";a:4:{i:0;s:3:"100";i:1;s:3:"-78";i:2;s:3:"630";i:3;s:3:"562";}}i:183;a:4:{s:1:"C";s:3:"183";s:2:"WX";s:3:"600";s:1:"N";s:6:"bullet";s:1:"B";a:4:{i:0;s:3:"224";i:1;s:3:"130";i:2;s:3:"485";i:3;s:3:"383";}}s:6:"bullet";a:4:{s:1:"C";s:3:"183";s:2:"WX";s:3:"600";s:1:"N";s:6:"bullet";s:1:"B";a:4:{i:0;s:3:"224";i:1;s:3:"130";i:2;s:3:"485";i:3;s:3:"383";}}i:184;a:4:{s:1:"C";s:3:"184";s:2:"WX";s:3:"600";s:1:"N";s:14:"quotesinglbase";s:1:"B";a:4:{i:0;s:3:"185";i:1;s:4:"-134";i:2;s:3:"397";i:3;s:3:"100";}}s:14:"quotesinglbase";a:4:{s:1:"C";s:3:"184";s:2:"WX";s:3:"600";s:1:"N";s:14:"quotesinglbase";s:1:"B";a:4:{i:0;s:3:"185";i:1;s:4:"-134";i:2;s:3:"397";i:3;s:3:"100";}}i:185;a:4:{s:1:"C";s:3:"185";s:2:"WX";s:3:"600";s:1:"N";s:12:"quotedblbase";s:1:"B";a:4:{i:0;s:3:"115";i:1;s:4:"-134";i:2;s:3:"478";i:3;s:3:"100";}}s:12:"quotedblbase";a:4:{s:1:"C";s:3:"185";s:2:"WX";s:3:"600";s:1:"N";s:12:"quotedblbase";s:1:"B";a:4:{i:0;s:3:"115";i:1;s:4:"-134";i:2;s:3:"478";i:3;s:3:"100";}}i:186;a:4:{s:1:"C";s:3:"186";s:2:"WX";s:3:"600";s:1:"N";s:13:"quotedblright";s:1:"B";a:4:{i:0;s:3:"213";i:1;s:3:"328";i:2;s:3:"576";i:3;s:3:"562";}}s:13:"quotedblright";a:4:{s:1:"C";s:3:"186";s:2:"WX";s:3:"600";s:1:"N";s:13:"quotedblright";s:1:"B";a:4:{i:0;s:3:"213";i:1;s:3:"328";i:2;s:3:"576";i:3;s:3:"562";}}i:187;a:4:{s:1:"C";s:3:"187";s:2:"WX";s:3:"600";s:1:"N";s:14:"guillemotright";s:1:"B";a:4:{i:0;s:2:"58";i:1;s:2:"70";i:2;s:3:"618";i:3;s:3:"446";}}s:14:"guillemotright";a:4:{s:1:"C";s:3:"187";s:2:"WX";s:3:"600";s:1:"N";s:14:"guillemotright";s:1:"B";a:4:{i:0;s:2:"58";i:1;s:2:"70";i:2;s:3:"618";i:3;s:3:"446";}}i:188;a:4:{s:1:"C";s:3:"188";s:2:"WX";s:3:"600";s:1:"N";s:8:"ellipsis";s:1:"B";a:4:{i:0;s:2:"46";i:1;s:3:"-15";i:2;s:3:"575";i:3;s:3:"111";}}s:8:"ellipsis";a:4:{s:1:"C";s:3:"188";s:2:"WX";s:3:"600";s:1:"N";s:8:"ellipsis";s:1:"B";a:4:{i:0;s:2:"46";i:1;s:3:"-15";i:2;s:3:"575";i:3;s:3:"111";}}i:189;a:4:{s:1:"C";s:3:"189";s:2:"WX";s:3:"600";s:1:"N";s:11:"perthousand";s:1:"B";a:4:{i:0;s:2:"59";i:1;s:3:"-15";i:2;s:3:"627";i:3;s:3:"622";}}s:11:"perthousand";a:4:{s:1:"C";s:3:"189";s:2:"WX";s:3:"600";s:1:"N";s:11:"perthousand";s:1:"B";a:4:{i:0;s:2:"59";i:1;s:3:"-15";i:2;s:3:"627";i:3;s:3:"622";}}i:191;a:4:{s:1:"C";s:3:"191";s:2:"WX";s:3:"600";s:1:"N";s:12:"questiondown";s:1:"B";a:4:{i:0;s:3:"105";i:1;s:4:"-157";i:2;s:3:"466";i:3;s:3:"430";}}s:12:"questiondown";a:4:{s:1:"C";s:3:"191";s:2:"WX";s:3:"600";s:1:"N";s:12:"questiondown";s:1:"B";a:4:{i:0;s:3:"105";i:1;s:4:"-157";i:2;s:3:"466";i:3;s:3:"430";}}i:193;a:4:{s:1:"C";s:3:"193";s:2:"WX";s:3:"600";s:1:"N";s:5:"grave";s:1:"B";a:4:{i:0;s:3:"294";i:1;s:3:"497";i:2;s:3:"484";i:3;s:3:"672";}}s:5:"grave";a:4:{s:1:"C";s:3:"193";s:2:"WX";s:3:"600";s:1:"N";s:5:"grave";s:1:"B";a:4:{i:0;s:3:"294";i:1;s:3:"497";i:2;s:3:"484";i:3;s:3:"672";}}i:194;a:4:{s:1:"C";s:3:"194";s:2:"WX";s:3:"600";s:1:"N";s:5:"acute";s:1:"B";a:4:{i:0;s:3:"348";i:1;s:3:"497";i:2;s:3:"612";i:3;s:3:"672";}}s:5:"acute";a:4:{s:1:"C";s:3:"194";s:2:"WX";s:3:"600";s:1:"N";s:5:"acute";s:1:"B";a:4:{i:0;s:3:"348";i:1;s:3:"497";i:2;s:3:"612";i:3;s:3:"672";}}i:195;a:4:{s:1:"C";s:3:"195";s:2:"WX";s:3:"600";s:1:"N";s:10:"circumflex";s:1:"B";a:4:{i:0;s:3:"229";i:1;s:3:"477";i:2;s:3:"581";i:3;s:3:"654";}}s:10:"circumflex";a:4:{s:1:"C";s:3:"195";s:2:"WX";s:3:"600";s:1:"N";s:10:"circumflex";s:1:"B";a:4:{i:0;s:3:"229";i:1;s:3:"477";i:2;s:3:"581";i:3;s:3:"654";}}i:196;a:4:{s:1:"C";s:3:"196";s:2:"WX";s:3:"600";s:1:"N";s:5:"tilde";s:1:"B";a:4:{i:0;s:3:"212";i:1;s:3:"489";i:2;s:3:"629";i:3;s:3:"606";}}s:5:"tilde";a:4:{s:1:"C";s:3:"196";s:2:"WX";s:3:"600";s:1:"N";s:5:"tilde";s:1:"B";a:4:{i:0;s:3:"212";i:1;s:3:"489";i:2;s:3:"629";i:3;s:3:"606";}}i:197;a:4:{s:1:"C";s:3:"197";s:2:"WX";s:3:"600";s:1:"N";s:6:"macron";s:1:"B";a:4:{i:0;s:3:"232";i:1;s:3:"525";i:2;s:3:"600";i:3;s:3:"565";}}s:6:"macron";a:4:{s:1:"C";s:3:"197";s:2:"WX";s:3:"600";s:1:"N";s:6:"macron";s:1:"B";a:4:{i:0;s:3:"232";i:1;s:3:"525";i:2;s:3:"600";i:3;s:3:"565";}}i:198;a:4:{s:1:"C";s:3:"198";s:2:"WX";s:3:"600";s:1:"N";s:5:"breve";s:1:"B";a:4:{i:0;s:3:"279";i:1;s:3:"501";i:2;s:3:"576";i:3;s:3:"609";}}s:5:"breve";a:4:{s:1:"C";s:3:"198";s:2:"WX";s:3:"600";s:1:"N";s:5:"breve";s:1:"B";a:4:{i:0;s:3:"279";i:1;s:3:"501";i:2;s:3:"576";i:3;s:3:"609";}}i:199;a:4:{s:1:"C";s:3:"199";s:2:"WX";s:3:"600";s:1:"N";s:9:"dotaccent";s:1:"B";a:4:{i:0;s:3:"373";i:1;s:3:"537";i:2;s:3:"478";i:3;s:3:"640";}}s:9:"dotaccent";a:4:{s:1:"C";s:3:"199";s:2:"WX";s:3:"600";s:1:"N";s:9:"dotaccent";s:1:"B";a:4:{i:0;s:3:"373";i:1;s:3:"537";i:2;s:3:"478";i:3;s:3:"640";}}i:200;a:4:{s:1:"C";s:3:"200";s:2:"WX";s:3:"600";s:1:"N";s:8:"dieresis";s:1:"B";a:4:{i:0;s:3:"272";i:1;s:3:"537";i:2;s:3:"579";i:3;s:3:"640";}}s:8:"dieresis";a:4:{s:1:"C";s:3:"200";s:2:"WX";s:3:"600";s:1:"N";s:8:"dieresis";s:1:"B";a:4:{i:0;s:3:"272";i:1;s:3:"537";i:2;s:3:"579";i:3;s:3:"640";}}i:202;a:4:{s:1:"C";s:3:"202";s:2:"WX";s:3:"600";s:1:"N";s:4:"ring";s:1:"B";a:4:{i:0;s:3:"332";i:1;s:3:"463";i:2;s:3:"500";i:3;s:3:"627";}}s:4:"ring";a:4:{s:1:"C";s:3:"202";s:2:"WX";s:3:"600";s:1:"N";s:4:"ring";s:1:"B";a:4:{i:0;s:3:"332";i:1;s:3:"463";i:2;s:3:"500";i:3;s:3:"627";}}i:203;a:4:{s:1:"C";s:3:"203";s:2:"WX";s:3:"600";s:1:"N";s:7:"cedilla";s:1:"B";a:4:{i:0;s:3:"197";i:1;s:4:"-151";i:2;s:3:"344";i:3;s:2:"10";}}s:7:"cedilla";a:4:{s:1:"C";s:3:"203";s:2:"WX";s:3:"600";s:1:"N";s:7:"cedilla";s:1:"B";a:4:{i:0;s:3:"197";i:1;s:4:"-151";i:2;s:3:"344";i:3;s:2:"10";}}i:205;a:4:{s:1:"C";s:3:"205";s:2:"WX";s:3:"600";s:1:"N";s:12:"hungarumlaut";s:1:"B";a:4:{i:0;s:3:"239";i:1;s:3:"497";i:2;s:3:"683";i:3;s:3:"672";}}s:12:"hungarumlaut";a:4:{s:1:"C";s:3:"205";s:2:"WX";s:3:"600";s:1:"N";s:12:"hungarumlaut";s:1:"B";a:4:{i:0;s:3:"239";i:1;s:3:"497";i:2;s:3:"683";i:3;s:3:"672";}}i:206;a:4:{s:1:"C";s:3:"206";s:2:"WX";s:3:"600";s:1:"N";s:6:"ogonek";s:1:"B";a:4:{i:0;s:3:"189";i:1;s:4:"-172";i:2;s:3:"377";i:3;s:1:"4";}}s:6:"ogonek";a:4:{s:1:"C";s:3:"206";s:2:"WX";s:3:"600";s:1:"N";s:6:"ogonek";s:1:"B";a:4:{i:0;s:3:"189";i:1;s:4:"-172";i:2;s:3:"377";i:3;s:1:"4";}}i:207;a:4:{s:1:"C";s:3:"207";s:2:"WX";s:3:"600";s:1:"N";s:5:"caron";s:1:"B";a:4:{i:0;s:3:"262";i:1;s:3:"492";i:2;s:3:"614";i:3;s:3:"669";}}s:5:"caron";a:4:{s:1:"C";s:3:"207";s:2:"WX";s:3:"600";s:1:"N";s:5:"caron";s:1:"B";a:4:{i:0;s:3:"262";i:1;s:3:"492";i:2;s:3:"614";i:3;s:3:"669";}}i:208;a:4:{s:1:"C";s:3:"208";s:2:"WX";s:3:"600";s:1:"N";s:6:"emdash";s:1:"B";a:4:{i:0;s:2:"49";i:1;s:3:"231";i:2;s:3:"661";i:3;s:3:"285";}}s:6:"emdash";a:4:{s:1:"C";s:3:"208";s:2:"WX";s:3:"600";s:1:"N";s:6:"emdash";s:1:"B";a:4:{i:0;s:2:"49";i:1;s:3:"231";i:2;s:3:"661";i:3;s:3:"285";}}i:225;a:4:{s:1:"C";s:3:"225";s:2:"WX";s:3:"600";s:1:"N";s:2:"AE";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:1:"0";i:2;s:3:"655";i:3;s:3:"562";}}s:2:"AE";a:4:{s:1:"C";s:3:"225";s:2:"WX";s:3:"600";s:1:"N";s:2:"AE";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:1:"0";i:2;s:3:"655";i:3;s:3:"562";}}i:227;a:4:{s:1:"C";s:3:"227";s:2:"WX";s:3:"600";s:1:"N";s:11:"ordfeminine";s:1:"B";a:4:{i:0;s:3:"209";i:1;s:3:"249";i:2;s:3:"512";i:3;s:3:"580";}}s:11:"ordfeminine";a:4:{s:1:"C";s:3:"227";s:2:"WX";s:3:"600";s:1:"N";s:11:"ordfeminine";s:1:"B";a:4:{i:0;s:3:"209";i:1;s:3:"249";i:2;s:3:"512";i:3;s:3:"580";}}i:232;a:4:{s:1:"C";s:3:"232";s:2:"WX";s:3:"600";s:1:"N";s:6:"Lslash";s:1:"B";a:4:{i:0;s:2:"47";i:1;s:1:"0";i:2;s:3:"607";i:3;s:3:"562";}}s:6:"Lslash";a:4:{s:1:"C";s:3:"232";s:2:"WX";s:3:"600";s:1:"N";s:6:"Lslash";s:1:"B";a:4:{i:0;s:2:"47";i:1;s:1:"0";i:2;s:3:"607";i:3;s:3:"562";}}i:233;a:4:{s:1:"C";s:3:"233";s:2:"WX";s:3:"600";s:1:"N";s:6:"Oslash";s:1:"B";a:4:{i:0;s:2:"94";i:1;s:3:"-80";i:2;s:3:"625";i:3;s:3:"629";}}s:6:"Oslash";a:4:{s:1:"C";s:3:"233";s:2:"WX";s:3:"600";s:1:"N";s:6:"Oslash";s:1:"B";a:4:{i:0;s:2:"94";i:1;s:3:"-80";i:2;s:3:"625";i:3;s:3:"629";}}i:234;a:4:{s:1:"C";s:3:"234";s:2:"WX";s:3:"600";s:1:"N";s:2:"OE";s:1:"B";a:4:{i:0;s:2:"59";i:1;s:1:"0";i:2;s:3:"672";i:3;s:3:"562";}}s:2:"OE";a:4:{s:1:"C";s:3:"234";s:2:"WX";s:3:"600";s:1:"N";s:2:"OE";s:1:"B";a:4:{i:0;s:2:"59";i:1;s:1:"0";i:2;s:3:"672";i:3;s:3:"562";}}i:235;a:4:{s:1:"C";s:3:"235";s:2:"WX";s:3:"600";s:1:"N";s:12:"ordmasculine";s:1:"B";a:4:{i:0;s:3:"210";i:1;s:3:"249";i:2;s:3:"535";i:3;s:3:"580";}}s:12:"ordmasculine";a:4:{s:1:"C";s:3:"235";s:2:"WX";s:3:"600";s:1:"N";s:12:"ordmasculine";s:1:"B";a:4:{i:0;s:3:"210";i:1;s:3:"249";i:2;s:3:"535";i:3;s:3:"580";}}i:241;a:4:{s:1:"C";s:3:"241";s:2:"WX";s:3:"600";s:1:"N";s:2:"ae";s:1:"B";a:4:{i:0;s:2:"41";i:1;s:3:"-15";i:2;s:3:"626";i:3;s:3:"441";}}s:2:"ae";a:4:{s:1:"C";s:3:"241";s:2:"WX";s:3:"600";s:1:"N";s:2:"ae";s:1:"B";a:4:{i:0;s:2:"41";i:1;s:3:"-15";i:2;s:3:"626";i:3;s:3:"441";}}i:245;a:4:{s:1:"C";s:3:"245";s:2:"WX";s:3:"600";s:1:"N";s:8:"dotlessi";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:1:"0";i:2;s:3:"515";i:3;s:3:"426";}}s:8:"dotlessi";a:4:{s:1:"C";s:3:"245";s:2:"WX";s:3:"600";s:1:"N";s:8:"dotlessi";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:1:"0";i:2;s:3:"515";i:3;s:3:"426";}}i:248;a:4:{s:1:"C";s:3:"248";s:2:"WX";s:3:"600";s:1:"N";s:6:"lslash";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:1:"0";i:2;s:3:"587";i:3;s:3:"629";}}s:6:"lslash";a:4:{s:1:"C";s:3:"248";s:2:"WX";s:3:"600";s:1:"N";s:6:"lslash";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:1:"0";i:2;s:3:"587";i:3;s:3:"629";}}i:249;a:4:{s:1:"C";s:3:"249";s:2:"WX";s:3:"600";s:1:"N";s:6:"oslash";s:1:"B";a:4:{i:0;s:3:"102";i:1;s:3:"-80";i:2;s:3:"588";i:3;s:3:"506";}}s:6:"oslash";a:4:{s:1:"C";s:3:"249";s:2:"WX";s:3:"600";s:1:"N";s:6:"oslash";s:1:"B";a:4:{i:0;s:3:"102";i:1;s:3:"-80";i:2;s:3:"588";i:3;s:3:"506";}}i:250;a:4:{s:1:"C";s:3:"250";s:2:"WX";s:3:"600";s:1:"N";s:2:"oe";s:1:"B";a:4:{i:0;s:2:"54";i:1;s:3:"-15";i:2;s:3:"615";i:3;s:3:"441";}}s:2:"oe";a:4:{s:1:"C";s:3:"250";s:2:"WX";s:3:"600";s:1:"N";s:2:"oe";s:1:"B";a:4:{i:0;s:2:"54";i:1;s:3:"-15";i:2;s:3:"615";i:3;s:3:"441";}}i:251;a:4:{s:1:"C";s:3:"251";s:2:"WX";s:3:"600";s:1:"N";s:10:"germandbls";s:1:"B";a:4:{i:0;s:2:"48";i:1;s:3:"-15";i:2;s:3:"617";i:3;s:3:"629";}}s:10:"germandbls";a:4:{s:1:"C";s:3:"251";s:2:"WX";s:3:"600";s:1:"N";s:10:"germandbls";s:1:"B";a:4:{i:0;s:2:"48";i:1;s:3:"-15";i:2;s:3:"617";i:3;s:3:"629";}}s:9:"Idieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"Idieresis";s:1:"B";a:4:{i:0;s:2:"96";i:1;s:1:"0";i:2;s:3:"623";i:3;s:3:"753";}}s:6:"eacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"eacute";s:1:"B";a:4:{i:0;s:3:"106";i:1;s:3:"-15";i:2;s:3:"612";i:3;s:3:"672";}}s:6:"abreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"abreve";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:3:"-15";i:2;s:3:"576";i:3;s:3:"609";}}s:13:"uhungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:13:"uhungarumlaut";s:1:"B";a:4:{i:0;s:3:"101";i:1;s:3:"-15";i:2;s:3:"723";i:3;s:3:"672";}}s:6:"ecaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"ecaron";s:1:"B";a:4:{i:0;s:3:"106";i:1;s:3:"-15";i:2;s:3:"614";i:3;s:3:"669";}}s:9:"Ydieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"Ydieresis";s:1:"B";a:4:{i:0;s:3:"133";i:1;s:1:"0";i:2;s:3:"695";i:3;s:3:"753";}}s:6:"divide";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"divide";s:1:"B";a:4:{i:0;s:3:"136";i:1;s:2:"48";i:2;s:3:"573";i:3;s:3:"467";}}s:6:"Yacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Yacute";s:1:"B";a:4:{i:0;s:3:"133";i:1;s:1:"0";i:2;s:3:"695";i:3;s:3:"805";}}s:11:"Acircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"Acircumflex";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:1:"0";i:2;s:3:"607";i:3;s:3:"787";}}s:6:"aacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"aacute";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:3:"-15";i:2;s:3:"612";i:3;s:3:"672";}}s:11:"Ucircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"Ucircumflex";s:1:"B";a:4:{i:0;s:3:"125";i:1;s:3:"-18";i:2;s:3:"702";i:3;s:3:"787";}}s:6:"yacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"yacute";s:1:"B";a:4:{i:0;s:2:"-4";i:1;s:4:"-157";i:2;s:3:"683";i:3;s:3:"672";}}s:12:"scommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"scommaaccent";s:1:"B";a:4:{i:0;s:2:"78";i:1;s:4:"-250";i:2;s:3:"584";i:3;s:3:"441";}}s:11:"ecircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"ecircumflex";s:1:"B";a:4:{i:0;s:3:"106";i:1;s:3:"-15";i:2;s:3:"598";i:3;s:3:"654";}}s:5:"Uring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:5:"Uring";s:1:"B";a:4:{i:0;s:3:"125";i:1;s:3:"-18";i:2;s:3:"702";i:3;s:3:"760";}}s:9:"Udieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"Udieresis";s:1:"B";a:4:{i:0;s:3:"125";i:1;s:3:"-18";i:2;s:3:"702";i:3;s:3:"753";}}s:7:"aogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"aogonek";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:4:"-172";i:2;s:3:"569";i:3;s:3:"441";}}s:6:"Uacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Uacute";s:1:"B";a:4:{i:0;s:3:"125";i:1;s:3:"-18";i:2;s:3:"702";i:3;s:3:"805";}}s:7:"uogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"uogonek";s:1:"B";a:4:{i:0;s:3:"101";i:1;s:4:"-172";i:2;s:3:"572";i:3;s:3:"426";}}s:9:"Edieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"Edieresis";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:1:"0";i:2;s:3:"660";i:3;s:3:"753";}}s:6:"Dcroat";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Dcroat";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:1:"0";i:2;s:3:"645";i:3;s:3:"562";}}s:11:"commaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"commaaccent";s:1:"B";a:4:{i:0;s:3:"145";i:1;s:4:"-250";i:2;s:3:"323";i:3;s:3:"-58";}}s:9:"copyright";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"copyright";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:3:"-18";i:2;s:3:"667";i:3;s:3:"580";}}s:7:"Emacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"Emacron";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:1:"0";i:2;s:3:"660";i:3;s:3:"698";}}s:6:"ccaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"ccaron";s:1:"B";a:4:{i:0;s:3:"106";i:1;s:3:"-15";i:2;s:3:"614";i:3;s:3:"669";}}s:5:"aring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:5:"aring";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:3:"-15";i:2;s:3:"569";i:3;s:3:"627";}}s:12:"Ncommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"Ncommaaccent";s:1:"B";a:4:{i:0;s:1:"7";i:1;s:4:"-250";i:2;s:3:"712";i:3;s:3:"562";}}s:6:"lacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"lacute";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:1:"0";i:2;s:3:"640";i:3;s:3:"805";}}s:6:"agrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"agrave";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:3:"-15";i:2;s:3:"569";i:3;s:3:"672";}}s:12:"Tcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"Tcommaaccent";s:1:"B";a:4:{i:0;s:3:"108";i:1;s:4:"-250";i:2;s:3:"665";i:3;s:3:"562";}}s:6:"Cacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Cacute";s:1:"B";a:4:{i:0;s:2:"93";i:1;s:3:"-18";i:2;s:3:"655";i:3;s:3:"805";}}s:6:"atilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"atilde";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:3:"-15";i:2;s:3:"629";i:3;s:3:"606";}}s:10:"Edotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:10:"Edotaccent";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:1:"0";i:2;s:3:"660";i:3;s:3:"753";}}s:6:"scaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"scaron";s:1:"B";a:4:{i:0;s:2:"78";i:1;s:3:"-15";i:2;s:3:"614";i:3;s:3:"669";}}s:8:"scedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:8:"scedilla";s:1:"B";a:4:{i:0;s:2:"78";i:1;s:4:"-151";i:2;s:3:"584";i:3;s:3:"441";}}s:6:"iacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"iacute";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:1:"0";i:2;s:3:"612";i:3;s:3:"672";}}s:7:"lozenge";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"lozenge";s:1:"B";a:4:{i:0;s:2:"94";i:1;s:1:"0";i:2;s:3:"519";i:3;s:3:"706";}}s:6:"Rcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Rcaron";s:1:"B";a:4:{i:0;s:2:"38";i:1;s:1:"0";i:2;s:3:"642";i:3;s:3:"802";}}s:12:"Gcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"Gcommaaccent";s:1:"B";a:4:{i:0;s:2:"83";i:1;s:4:"-250";i:2;s:3:"645";i:3;s:3:"580";}}s:11:"ucircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"ucircumflex";s:1:"B";a:4:{i:0;s:3:"101";i:1;s:3:"-15";i:2;s:3:"572";i:3;s:3:"654";}}s:11:"acircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"acircumflex";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:3:"-15";i:2;s:3:"581";i:3;s:3:"654";}}s:7:"Amacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"Amacron";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:1:"0";i:2;s:3:"607";i:3;s:3:"698";}}s:6:"rcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"rcaron";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:1:"0";i:2;s:3:"636";i:3;s:3:"669";}}s:8:"ccedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:8:"ccedilla";s:1:"B";a:4:{i:0;s:3:"106";i:1;s:4:"-151";i:2;s:3:"614";i:3;s:3:"441";}}s:10:"Zdotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:10:"Zdotaccent";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"610";i:3;s:3:"753";}}s:5:"Thorn";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:5:"Thorn";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:1:"0";i:2;s:3:"606";i:3;s:3:"562";}}s:7:"Omacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"Omacron";s:1:"B";a:4:{i:0;s:2:"94";i:1;s:3:"-18";i:2;s:3:"628";i:3;s:3:"698";}}s:6:"Racute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Racute";s:1:"B";a:4:{i:0;s:2:"38";i:1;s:1:"0";i:2;s:3:"670";i:3;s:3:"805";}}s:6:"Sacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Sacute";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:3:"-20";i:2;s:3:"650";i:3;s:3:"805";}}s:6:"dcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"dcaron";s:1:"B";a:4:{i:0;s:2:"85";i:1;s:3:"-15";i:2;s:3:"849";i:3;s:3:"629";}}s:7:"Umacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"Umacron";s:1:"B";a:4:{i:0;s:3:"125";i:1;s:3:"-18";i:2;s:3:"702";i:3;s:3:"698";}}s:5:"uring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:5:"uring";s:1:"B";a:4:{i:0;s:3:"101";i:1;s:3:"-15";i:2;s:3:"572";i:3;s:3:"627";}}s:13:"threesuperior";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:13:"threesuperior";s:1:"B";a:4:{i:0;s:3:"213";i:1;s:3:"240";i:2;s:3:"501";i:3;s:3:"622";}}s:6:"Ograve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Ograve";s:1:"B";a:4:{i:0;s:2:"94";i:1;s:3:"-18";i:2;s:3:"625";i:3;s:3:"805";}}s:6:"Agrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Agrave";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:1:"0";i:2;s:3:"607";i:3;s:3:"805";}}s:6:"Abreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Abreve";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:1:"0";i:2;s:3:"607";i:3;s:3:"732";}}s:8:"multiply";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:8:"multiply";s:1:"B";a:4:{i:0;s:3:"103";i:1;s:2:"43";i:2;s:3:"607";i:3;s:3:"470";}}s:6:"uacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"uacute";s:1:"B";a:4:{i:0;s:3:"101";i:1;s:3:"-15";i:2;s:3:"602";i:3;s:3:"672";}}s:6:"Tcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Tcaron";s:1:"B";a:4:{i:0;s:3:"108";i:1;s:1:"0";i:2;s:3:"665";i:3;s:3:"802";}}s:11:"partialdiff";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"partialdiff";s:1:"B";a:4:{i:0;s:2:"45";i:1;s:3:"-38";i:2;s:3:"546";i:3;s:3:"710";}}s:9:"ydieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"ydieresis";s:1:"B";a:4:{i:0;s:2:"-4";i:1;s:4:"-157";i:2;s:3:"683";i:3;s:3:"620";}}s:6:"Nacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Nacute";s:1:"B";a:4:{i:0;s:1:"7";i:1;s:3:"-13";i:2;s:3:"712";i:3;s:3:"805";}}s:11:"icircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"icircumflex";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:1:"0";i:2;s:3:"551";i:3;s:3:"654";}}s:11:"Ecircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"Ecircumflex";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:1:"0";i:2;s:3:"660";i:3;s:3:"787";}}s:9:"adieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"adieresis";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:3:"-15";i:2;s:3:"575";i:3;s:3:"620";}}s:9:"edieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"edieresis";s:1:"B";a:4:{i:0;s:3:"106";i:1;s:3:"-15";i:2;s:3:"598";i:3;s:3:"620";}}s:6:"cacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"cacute";s:1:"B";a:4:{i:0;s:3:"106";i:1;s:3:"-15";i:2;s:3:"612";i:3;s:3:"672";}}s:6:"nacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"nacute";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"602";i:3;s:3:"672";}}s:7:"umacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"umacron";s:1:"B";a:4:{i:0;s:3:"101";i:1;s:3:"-15";i:2;s:3:"600";i:3;s:3:"565";}}s:6:"Ncaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Ncaron";s:1:"B";a:4:{i:0;s:1:"7";i:1;s:3:"-13";i:2;s:3:"712";i:3;s:3:"802";}}s:6:"Iacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Iacute";s:1:"B";a:4:{i:0;s:2:"96";i:1;s:1:"0";i:2;s:3:"640";i:3;s:3:"805";}}s:9:"plusminus";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"plusminus";s:1:"B";a:4:{i:0;s:2:"96";i:1;s:2:"44";i:2;s:3:"594";i:3;s:3:"558";}}s:9:"brokenbar";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"brokenbar";s:1:"B";a:4:{i:0;s:3:"238";i:1;s:4:"-175";i:2;s:3:"469";i:3;s:3:"675";}}s:10:"registered";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:10:"registered";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:3:"-18";i:2;s:3:"667";i:3;s:3:"580";}}s:6:"Gbreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Gbreve";s:1:"B";a:4:{i:0;s:2:"83";i:1;s:3:"-18";i:2;s:3:"645";i:3;s:3:"732";}}s:10:"Idotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:10:"Idotaccent";s:1:"B";a:4:{i:0;s:2:"96";i:1;s:1:"0";i:2;s:3:"623";i:3;s:3:"753";}}s:9:"summation";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"summation";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:3:"-10";i:2;s:3:"670";i:3;s:3:"706";}}s:6:"Egrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Egrave";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:1:"0";i:2;s:3:"660";i:3;s:3:"805";}}s:6:"racute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"racute";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:1:"0";i:2;s:3:"636";i:3;s:3:"672";}}s:7:"omacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"omacron";s:1:"B";a:4:{i:0;s:3:"102";i:1;s:3:"-15";i:2;s:3:"600";i:3;s:3:"565";}}s:6:"Zacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Zacute";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"670";i:3;s:3:"805";}}s:6:"Zcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Zcaron";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"642";i:3;s:3:"802";}}s:12:"greaterequal";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"greaterequal";s:1:"B";a:4:{i:0;s:2:"98";i:1;s:1:"0";i:2;s:3:"594";i:3;s:3:"710";}}s:3:"Eth";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:3:"Eth";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:1:"0";i:2;s:3:"645";i:3;s:3:"562";}}s:8:"Ccedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:8:"Ccedilla";s:1:"B";a:4:{i:0;s:2:"93";i:1;s:4:"-151";i:2;s:3:"658";i:3;s:3:"580";}}s:12:"lcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"lcommaaccent";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:4:"-250";i:2;s:3:"515";i:3;s:3:"629";}}s:6:"tcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"tcaron";s:1:"B";a:4:{i:0;s:3:"167";i:1;s:3:"-15";i:2;s:3:"587";i:3;s:3:"717";}}s:7:"eogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"eogonek";s:1:"B";a:4:{i:0;s:3:"106";i:1;s:4:"-172";i:2;s:3:"598";i:3;s:3:"441";}}s:7:"Uogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"Uogonek";s:1:"B";a:4:{i:0;s:3:"124";i:1;s:4:"-172";i:2;s:3:"702";i:3;s:3:"562";}}s:6:"Aacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Aacute";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:1:"0";i:2;s:3:"660";i:3;s:3:"805";}}s:9:"Adieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"Adieresis";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:1:"0";i:2;s:3:"607";i:3;s:3:"753";}}s:6:"egrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"egrave";s:1:"B";a:4:{i:0;s:3:"106";i:1;s:3:"-15";i:2;s:3:"598";i:3;s:3:"672";}}s:6:"zacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"zacute";s:1:"B";a:4:{i:0;s:2:"99";i:1;s:1:"0";i:2;s:3:"612";i:3;s:3:"672";}}s:7:"iogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"iogonek";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:4:"-172";i:2;s:3:"515";i:3;s:3:"657";}}s:6:"Oacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Oacute";s:1:"B";a:4:{i:0;s:2:"94";i:1;s:3:"-18";i:2;s:3:"640";i:3;s:3:"805";}}s:6:"oacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"oacute";s:1:"B";a:4:{i:0;s:3:"102";i:1;s:3:"-15";i:2;s:3:"612";i:3;s:3:"672";}}s:7:"amacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"amacron";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:3:"-15";i:2;s:3:"600";i:3;s:3:"565";}}s:6:"sacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"sacute";s:1:"B";a:4:{i:0;s:2:"78";i:1;s:3:"-15";i:2;s:3:"612";i:3;s:3:"672";}}s:9:"idieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"idieresis";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:1:"0";i:2;s:3:"545";i:3;s:3:"620";}}s:11:"Ocircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"Ocircumflex";s:1:"B";a:4:{i:0;s:2:"94";i:1;s:3:"-18";i:2;s:3:"625";i:3;s:3:"787";}}s:6:"Ugrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Ugrave";s:1:"B";a:4:{i:0;s:3:"125";i:1;s:3:"-18";i:2;s:3:"702";i:3;s:3:"805";}}s:5:"Delta";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:5:"Delta";s:1:"B";a:4:{i:0;s:1:"6";i:1;s:1:"0";i:2;s:3:"598";i:3;s:3:"688";}}s:5:"thorn";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:5:"thorn";s:1:"B";a:4:{i:0;s:3:"-24";i:1;s:4:"-157";i:2;s:3:"605";i:3;s:3:"629";}}s:11:"twosuperior";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"twosuperior";s:1:"B";a:4:{i:0;s:3:"230";i:1;s:3:"249";i:2;s:3:"535";i:3;s:3:"622";}}s:9:"Odieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"Odieresis";s:1:"B";a:4:{i:0;s:2:"94";i:1;s:3:"-18";i:2;s:3:"625";i:3;s:3:"753";}}s:2:"mu";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:2:"mu";s:1:"B";a:4:{i:0;s:2:"72";i:1;s:4:"-157";i:2;s:3:"572";i:3;s:3:"426";}}s:6:"igrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"igrave";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:1:"0";i:2;s:3:"515";i:3;s:3:"672";}}s:13:"ohungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:13:"ohungarumlaut";s:1:"B";a:4:{i:0;s:3:"102";i:1;s:3:"-15";i:2;s:3:"723";i:3;s:3:"672";}}s:7:"Eogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"Eogonek";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:4:"-172";i:2;s:3:"660";i:3;s:3:"562";}}s:6:"dcroat";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"dcroat";s:1:"B";a:4:{i:0;s:2:"85";i:1;s:3:"-15";i:2;s:3:"704";i:3;s:3:"629";}}s:13:"threequarters";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:13:"threequarters";s:1:"B";a:4:{i:0;s:2:"73";i:1;s:3:"-56";i:2;s:3:"659";i:3;s:3:"666";}}s:8:"Scedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:8:"Scedilla";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:4:"-151";i:2;s:3:"650";i:3;s:3:"580";}}s:6:"lcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"lcaron";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:1:"0";i:2;s:3:"667";i:3;s:3:"629";}}s:12:"Kcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"Kcommaaccent";s:1:"B";a:4:{i:0;s:2:"38";i:1;s:4:"-250";i:2;s:3:"671";i:3;s:3:"562";}}s:6:"Lacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Lacute";s:1:"B";a:4:{i:0;s:2:"47";i:1;s:1:"0";i:2;s:3:"607";i:3;s:3:"805";}}s:9:"trademark";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"trademark";s:1:"B";a:4:{i:0;s:2:"75";i:1;s:3:"263";i:2;s:3:"742";i:3;s:3:"562";}}s:10:"edotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:10:"edotaccent";s:1:"B";a:4:{i:0;s:3:"106";i:1;s:3:"-15";i:2;s:3:"598";i:3;s:3:"620";}}s:6:"Igrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Igrave";s:1:"B";a:4:{i:0;s:2:"96";i:1;s:1:"0";i:2;s:3:"623";i:3;s:3:"805";}}s:7:"Imacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"Imacron";s:1:"B";a:4:{i:0;s:2:"96";i:1;s:1:"0";i:2;s:3:"628";i:3;s:3:"698";}}s:6:"Lcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Lcaron";s:1:"B";a:4:{i:0;s:2:"47";i:1;s:1:"0";i:2;s:3:"632";i:3;s:3:"562";}}s:7:"onehalf";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"onehalf";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:3:"-57";i:2;s:3:"669";i:3;s:3:"665";}}s:9:"lessequal";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"lessequal";s:1:"B";a:4:{i:0;s:2:"98";i:1;s:1:"0";i:2;s:3:"645";i:3;s:3:"710";}}s:11:"ocircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"ocircumflex";s:1:"B";a:4:{i:0;s:3:"102";i:1;s:3:"-15";i:2;s:3:"588";i:3;s:3:"654";}}s:6:"ntilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"ntilde";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"629";i:3;s:3:"606";}}s:13:"Uhungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:13:"Uhungarumlaut";s:1:"B";a:4:{i:0;s:3:"125";i:1;s:3:"-18";i:2;s:3:"761";i:3;s:3:"805";}}s:6:"Eacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Eacute";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:1:"0";i:2;s:3:"670";i:3;s:3:"805";}}s:7:"emacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"emacron";s:1:"B";a:4:{i:0;s:3:"106";i:1;s:3:"-15";i:2;s:3:"600";i:3;s:3:"565";}}s:6:"gbreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"gbreve";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:4:"-157";i:2;s:3:"657";i:3;s:3:"609";}}s:10:"onequarter";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:10:"onequarter";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:3:"-57";i:2;s:3:"674";i:3;s:3:"665";}}s:6:"Scaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Scaron";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:3:"-20";i:2;s:3:"672";i:3;s:3:"802";}}s:12:"Scommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"Scommaaccent";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:4:"-250";i:2;s:3:"650";i:3;s:3:"580";}}s:13:"Ohungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:13:"Ohungarumlaut";s:1:"B";a:4:{i:0;s:2:"94";i:1;s:3:"-18";i:2;s:3:"751";i:3;s:3:"805";}}s:6:"degree";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"degree";s:1:"B";a:4:{i:0;s:3:"214";i:1;s:3:"269";i:2;s:3:"576";i:3;s:3:"622";}}s:6:"ograve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"ograve";s:1:"B";a:4:{i:0;s:3:"102";i:1;s:3:"-15";i:2;s:3:"588";i:3;s:3:"672";}}s:6:"Ccaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Ccaron";s:1:"B";a:4:{i:0;s:2:"93";i:1;s:3:"-18";i:2;s:3:"672";i:3;s:3:"802";}}s:6:"ugrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"ugrave";s:1:"B";a:4:{i:0;s:3:"101";i:1;s:3:"-15";i:2;s:3:"572";i:3;s:3:"672";}}s:7:"radical";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"radical";s:1:"B";a:4:{i:0;s:2:"85";i:1;s:3:"-15";i:2;s:3:"765";i:3;s:3:"792";}}s:6:"Dcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Dcaron";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:1:"0";i:2;s:3:"645";i:3;s:3:"802";}}s:12:"rcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"rcommaaccent";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:4:"-250";i:2;s:3:"636";i:3;s:3:"441";}}s:6:"Ntilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Ntilde";s:1:"B";a:4:{i:0;s:1:"7";i:1;s:3:"-13";i:2;s:3:"712";i:3;s:3:"729";}}s:6:"otilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"otilde";s:1:"B";a:4:{i:0;s:3:"102";i:1;s:3:"-15";i:2;s:3:"629";i:3;s:3:"606";}}s:12:"Rcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"Rcommaaccent";s:1:"B";a:4:{i:0;s:2:"38";i:1;s:4:"-250";i:2;s:3:"598";i:3;s:3:"562";}}s:12:"Lcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"Lcommaaccent";s:1:"B";a:4:{i:0;s:2:"47";i:1;s:4:"-250";i:2;s:3:"607";i:3;s:3:"562";}}s:6:"Atilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Atilde";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:1:"0";i:2;s:3:"655";i:3;s:3:"729";}}s:7:"Aogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"Aogonek";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:4:"-172";i:2;s:3:"607";i:3;s:3:"562";}}s:5:"Aring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:5:"Aring";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:1:"0";i:2;s:3:"607";i:3;s:3:"750";}}s:6:"Otilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Otilde";s:1:"B";a:4:{i:0;s:2:"94";i:1;s:3:"-18";i:2;s:3:"655";i:3;s:3:"729";}}s:10:"zdotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:10:"zdotaccent";s:1:"B";a:4:{i:0;s:2:"99";i:1;s:1:"0";i:2;s:3:"593";i:3;s:3:"620";}}s:6:"Ecaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Ecaron";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:1:"0";i:2;s:3:"660";i:3;s:3:"802";}}s:7:"Iogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"Iogonek";s:1:"B";a:4:{i:0;s:2:"96";i:1;s:4:"-172";i:2;s:3:"623";i:3;s:3:"562";}}s:12:"kcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"kcommaaccent";s:1:"B";a:4:{i:0;s:2:"58";i:1;s:4:"-250";i:2;s:3:"633";i:3;s:3:"629";}}s:5:"minus";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:5:"minus";s:1:"B";a:4:{i:0;s:3:"129";i:1;s:3:"232";i:2;s:3:"580";i:3;s:3:"283";}}s:11:"Icircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"Icircumflex";s:1:"B";a:4:{i:0;s:2:"96";i:1;s:1:"0";i:2;s:3:"623";i:3;s:3:"787";}}s:6:"ncaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"ncaron";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"614";i:3;s:3:"669";}}s:12:"tcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"tcommaaccent";s:1:"B";a:4:{i:0;s:3:"165";i:1;s:4:"-250";i:2;s:3:"561";i:3;s:3:"561";}}s:10:"logicalnot";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:10:"logicalnot";s:1:"B";a:4:{i:0;s:3:"155";i:1;s:3:"108";i:2;s:3:"591";i:3;s:3:"369";}}s:9:"odieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"odieresis";s:1:"B";a:4:{i:0;s:3:"102";i:1;s:3:"-15";i:2;s:3:"588";i:3;s:3:"620";}}s:9:"udieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"udieresis";s:1:"B";a:4:{i:0;s:3:"101";i:1;s:3:"-15";i:2;s:3:"575";i:3;s:3:"620";}}s:8:"notequal";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:8:"notequal";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:3:"-16";i:2;s:3:"621";i:3;s:3:"529";}}s:12:"gcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"gcommaaccent";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:4:"-157";i:2;s:3:"657";i:3;s:3:"708";}}s:3:"eth";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:3:"eth";s:1:"B";a:4:{i:0;s:3:"102";i:1;s:3:"-15";i:2;s:3:"639";i:3;s:3:"629";}}s:6:"zcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"zcaron";s:1:"B";a:4:{i:0;s:2:"99";i:1;s:1:"0";i:2;s:3:"624";i:3;s:3:"669";}}s:12:"ncommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"ncommaaccent";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:4:"-250";i:2;s:3:"585";i:3;s:3:"441";}}s:11:"onesuperior";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"onesuperior";s:1:"B";a:4:{i:0;s:3:"231";i:1;s:3:"249";i:2;s:3:"491";i:3;s:3:"622";}}s:7:"imacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"imacron";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:1:"0";i:2;s:3:"543";i:3;s:3:"565";}}s:4:"Euro";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:4:"Euro";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:1:"0";i:3;s:1:"0";}}}s:9:"_version_";i:1;} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Courier.afm b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Courier.afm
new file mode 100755
index 00000000..b68cac60
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Courier.afm
@@ -0,0 +1 @@
+a:21:{s:8:"FontName";s:7:"Courier";s:8:"FullName";s:7:"Courier";s:10:"FamilyName";s:7:"Courier";s:6:"Weight";s:6:"Medium";s:11:"ItalicAngle";s:1:"0";s:12:"IsFixedPitch";s:4:"true";s:12:"CharacterSet";s:13:"ExtendedRoman";s:8:"FontBBox";a:4:{i:0;s:3:"-23";i:1;s:4:"-250";i:2;s:3:"715";i:3;s:3:"805";}s:17:"UnderlinePosition";s:4:"-100";s:18:"UnderlineThickness";s:2:"50";s:7:"Version";s:7:"003.000";s:14:"EncodingScheme";s:21:"AdobeStandardEncoding";s:9:"CapHeight";s:3:"562";s:7:"XHeight";s:3:"426";s:8:"Ascender";s:3:"629";s:9:"Descender";s:4:"-157";s:5:"StdHW";s:2:"51";s:5:"StdVW";s:2:"51";s:16:"StartCharMetrics";s:3:"315";s:1:"C";a:464:{i:32;a:4:{s:1:"C";s:2:"32";s:2:"WX";s:3:"600";s:1:"N";s:5:"space";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:1:"0";i:3;s:1:"0";}}s:5:"space";a:4:{s:1:"C";s:2:"32";s:2:"WX";s:3:"600";s:1:"N";s:5:"space";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:1:"0";i:3;s:1:"0";}}i:33;a:4:{s:1:"C";s:2:"33";s:2:"WX";s:3:"600";s:1:"N";s:6:"exclam";s:1:"B";a:4:{i:0;s:3:"236";i:1;s:3:"-15";i:2;s:3:"364";i:3;s:3:"572";}}s:6:"exclam";a:4:{s:1:"C";s:2:"33";s:2:"WX";s:3:"600";s:1:"N";s:6:"exclam";s:1:"B";a:4:{i:0;s:3:"236";i:1;s:3:"-15";i:2;s:3:"364";i:3;s:3:"572";}}i:34;a:4:{s:1:"C";s:2:"34";s:2:"WX";s:3:"600";s:1:"N";s:8:"quotedbl";s:1:"B";a:4:{i:0;s:3:"187";i:1;s:3:"328";i:2;s:3:"413";i:3;s:3:"562";}}s:8:"quotedbl";a:4:{s:1:"C";s:2:"34";s:2:"WX";s:3:"600";s:1:"N";s:8:"quotedbl";s:1:"B";a:4:{i:0;s:3:"187";i:1;s:3:"328";i:2;s:3:"413";i:3;s:3:"562";}}i:35;a:4:{s:1:"C";s:2:"35";s:2:"WX";s:3:"600";s:1:"N";s:10:"numbersign";s:1:"B";a:4:{i:0;s:2:"93";i:1;s:3:"-32";i:2;s:3:"507";i:3;s:3:"639";}}s:10:"numbersign";a:4:{s:1:"C";s:2:"35";s:2:"WX";s:3:"600";s:1:"N";s:10:"numbersign";s:1:"B";a:4:{i:0;s:2:"93";i:1;s:3:"-32";i:2;s:3:"507";i:3;s:3:"639";}}i:36;a:4:{s:1:"C";s:2:"36";s:2:"WX";s:3:"600";s:1:"N";s:6:"dollar";s:1:"B";a:4:{i:0;s:3:"105";i:1;s:4:"-126";i:2;s:3:"496";i:3;s:3:"662";}}s:6:"dollar";a:4:{s:1:"C";s:2:"36";s:2:"WX";s:3:"600";s:1:"N";s:6:"dollar";s:1:"B";a:4:{i:0;s:3:"105";i:1;s:4:"-126";i:2;s:3:"496";i:3;s:3:"662";}}i:37;a:4:{s:1:"C";s:2:"37";s:2:"WX";s:3:"600";s:1:"N";s:7:"percent";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:3:"-15";i:2;s:3:"518";i:3;s:3:"622";}}s:7:"percent";a:4:{s:1:"C";s:2:"37";s:2:"WX";s:3:"600";s:1:"N";s:7:"percent";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:3:"-15";i:2;s:3:"518";i:3;s:3:"622";}}i:38;a:4:{s:1:"C";s:2:"38";s:2:"WX";s:3:"600";s:1:"N";s:9:"ampersand";s:1:"B";a:4:{i:0;s:2:"63";i:1;s:3:"-15";i:2;s:3:"538";i:3;s:3:"543";}}s:9:"ampersand";a:4:{s:1:"C";s:2:"38";s:2:"WX";s:3:"600";s:1:"N";s:9:"ampersand";s:1:"B";a:4:{i:0;s:2:"63";i:1;s:3:"-15";i:2;s:3:"538";i:3;s:3:"543";}}i:39;a:4:{s:1:"C";s:2:"39";s:2:"WX";s:3:"600";s:1:"N";s:10:"quoteright";s:1:"B";a:4:{i:0;s:3:"213";i:1;s:3:"328";i:2;s:3:"376";i:3;s:3:"562";}}s:10:"quoteright";a:4:{s:1:"C";s:2:"39";s:2:"WX";s:3:"600";s:1:"N";s:10:"quoteright";s:1:"B";a:4:{i:0;s:3:"213";i:1;s:3:"328";i:2;s:3:"376";i:3;s:3:"562";}}i:40;a:4:{s:1:"C";s:2:"40";s:2:"WX";s:3:"600";s:1:"N";s:9:"parenleft";s:1:"B";a:4:{i:0;s:3:"269";i:1;s:4:"-108";i:2;s:3:"440";i:3;s:3:"622";}}s:9:"parenleft";a:4:{s:1:"C";s:2:"40";s:2:"WX";s:3:"600";s:1:"N";s:9:"parenleft";s:1:"B";a:4:{i:0;s:3:"269";i:1;s:4:"-108";i:2;s:3:"440";i:3;s:3:"622";}}i:41;a:4:{s:1:"C";s:2:"41";s:2:"WX";s:3:"600";s:1:"N";s:10:"parenright";s:1:"B";a:4:{i:0;s:3:"160";i:1;s:4:"-108";i:2;s:3:"331";i:3;s:3:"622";}}s:10:"parenright";a:4:{s:1:"C";s:2:"41";s:2:"WX";s:3:"600";s:1:"N";s:10:"parenright";s:1:"B";a:4:{i:0;s:3:"160";i:1;s:4:"-108";i:2;s:3:"331";i:3;s:3:"622";}}i:42;a:4:{s:1:"C";s:2:"42";s:2:"WX";s:3:"600";s:1:"N";s:8:"asterisk";s:1:"B";a:4:{i:0;s:3:"116";i:1;s:3:"257";i:2;s:3:"484";i:3;s:3:"607";}}s:8:"asterisk";a:4:{s:1:"C";s:2:"42";s:2:"WX";s:3:"600";s:1:"N";s:8:"asterisk";s:1:"B";a:4:{i:0;s:3:"116";i:1;s:3:"257";i:2;s:3:"484";i:3;s:3:"607";}}i:43;a:4:{s:1:"C";s:2:"43";s:2:"WX";s:3:"600";s:1:"N";s:4:"plus";s:1:"B";a:4:{i:0;s:2:"80";i:1;s:2:"44";i:2;s:3:"520";i:3;s:3:"470";}}s:4:"plus";a:4:{s:1:"C";s:2:"43";s:2:"WX";s:3:"600";s:1:"N";s:4:"plus";s:1:"B";a:4:{i:0;s:2:"80";i:1;s:2:"44";i:2;s:3:"520";i:3;s:3:"470";}}i:44;a:4:{s:1:"C";s:2:"44";s:2:"WX";s:3:"600";s:1:"N";s:5:"comma";s:1:"B";a:4:{i:0;s:3:"181";i:1;s:4:"-112";i:2;s:3:"344";i:3;s:3:"122";}}s:5:"comma";a:4:{s:1:"C";s:2:"44";s:2:"WX";s:3:"600";s:1:"N";s:5:"comma";s:1:"B";a:4:{i:0;s:3:"181";i:1;s:4:"-112";i:2;s:3:"344";i:3;s:3:"122";}}i:45;a:4:{s:1:"C";s:2:"45";s:2:"WX";s:3:"600";s:1:"N";s:6:"hyphen";s:1:"B";a:4:{i:0;s:3:"103";i:1;s:3:"231";i:2;s:3:"497";i:3;s:3:"285";}}s:6:"hyphen";a:4:{s:1:"C";s:2:"45";s:2:"WX";s:3:"600";s:1:"N";s:6:"hyphen";s:1:"B";a:4:{i:0;s:3:"103";i:1;s:3:"231";i:2;s:3:"497";i:3;s:3:"285";}}i:46;a:4:{s:1:"C";s:2:"46";s:2:"WX";s:3:"600";s:1:"N";s:6:"period";s:1:"B";a:4:{i:0;s:3:"229";i:1;s:3:"-15";i:2;s:3:"371";i:3;s:3:"109";}}s:6:"period";a:4:{s:1:"C";s:2:"46";s:2:"WX";s:3:"600";s:1:"N";s:6:"period";s:1:"B";a:4:{i:0;s:3:"229";i:1;s:3:"-15";i:2;s:3:"371";i:3;s:3:"109";}}i:47;a:4:{s:1:"C";s:2:"47";s:2:"WX";s:3:"600";s:1:"N";s:5:"slash";s:1:"B";a:4:{i:0;s:3:"125";i:1;s:3:"-80";i:2;s:3:"475";i:3;s:3:"629";}}s:5:"slash";a:4:{s:1:"C";s:2:"47";s:2:"WX";s:3:"600";s:1:"N";s:5:"slash";s:1:"B";a:4:{i:0;s:3:"125";i:1;s:3:"-80";i:2;s:3:"475";i:3;s:3:"629";}}i:48;a:4:{s:1:"C";s:2:"48";s:2:"WX";s:3:"600";s:1:"N";s:4:"zero";s:1:"B";a:4:{i:0;s:3:"106";i:1;s:3:"-15";i:2;s:3:"494";i:3;s:3:"622";}}s:4:"zero";a:4:{s:1:"C";s:2:"48";s:2:"WX";s:3:"600";s:1:"N";s:4:"zero";s:1:"B";a:4:{i:0;s:3:"106";i:1;s:3:"-15";i:2;s:3:"494";i:3;s:3:"622";}}i:49;a:4:{s:1:"C";s:2:"49";s:2:"WX";s:3:"600";s:1:"N";s:3:"one";s:1:"B";a:4:{i:0;s:2:"96";i:1;s:1:"0";i:2;s:3:"505";i:3;s:3:"622";}}s:3:"one";a:4:{s:1:"C";s:2:"49";s:2:"WX";s:3:"600";s:1:"N";s:3:"one";s:1:"B";a:4:{i:0;s:2:"96";i:1;s:1:"0";i:2;s:3:"505";i:3;s:3:"622";}}i:50;a:4:{s:1:"C";s:2:"50";s:2:"WX";s:3:"600";s:1:"N";s:3:"two";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:1:"0";i:2;s:3:"471";i:3;s:3:"622";}}s:3:"two";a:4:{s:1:"C";s:2:"50";s:2:"WX";s:3:"600";s:1:"N";s:3:"two";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:1:"0";i:2;s:3:"471";i:3;s:3:"622";}}i:51;a:4:{s:1:"C";s:2:"51";s:2:"WX";s:3:"600";s:1:"N";s:5:"three";s:1:"B";a:4:{i:0;s:2:"75";i:1;s:3:"-15";i:2;s:3:"466";i:3;s:3:"622";}}s:5:"three";a:4:{s:1:"C";s:2:"51";s:2:"WX";s:3:"600";s:1:"N";s:5:"three";s:1:"B";a:4:{i:0;s:2:"75";i:1;s:3:"-15";i:2;s:3:"466";i:3;s:3:"622";}}i:52;a:4:{s:1:"C";s:2:"52";s:2:"WX";s:3:"600";s:1:"N";s:4:"four";s:1:"B";a:4:{i:0;s:2:"78";i:1;s:1:"0";i:2;s:3:"500";i:3;s:3:"622";}}s:4:"four";a:4:{s:1:"C";s:2:"52";s:2:"WX";s:3:"600";s:1:"N";s:4:"four";s:1:"B";a:4:{i:0;s:2:"78";i:1;s:1:"0";i:2;s:3:"500";i:3;s:3:"622";}}i:53;a:4:{s:1:"C";s:2:"53";s:2:"WX";s:3:"600";s:1:"N";s:4:"five";s:1:"B";a:4:{i:0;s:2:"92";i:1;s:3:"-15";i:2;s:3:"497";i:3;s:3:"607";}}s:4:"five";a:4:{s:1:"C";s:2:"53";s:2:"WX";s:3:"600";s:1:"N";s:4:"five";s:1:"B";a:4:{i:0;s:2:"92";i:1;s:3:"-15";i:2;s:3:"497";i:3;s:3:"607";}}i:54;a:4:{s:1:"C";s:2:"54";s:2:"WX";s:3:"600";s:1:"N";s:3:"six";s:1:"B";a:4:{i:0;s:3:"111";i:1;s:3:"-15";i:2;s:3:"497";i:3;s:3:"622";}}s:3:"six";a:4:{s:1:"C";s:2:"54";s:2:"WX";s:3:"600";s:1:"N";s:3:"six";s:1:"B";a:4:{i:0;s:3:"111";i:1;s:3:"-15";i:2;s:3:"497";i:3;s:3:"622";}}i:55;a:4:{s:1:"C";s:2:"55";s:2:"WX";s:3:"600";s:1:"N";s:5:"seven";s:1:"B";a:4:{i:0;s:2:"82";i:1;s:1:"0";i:2;s:3:"483";i:3;s:3:"607";}}s:5:"seven";a:4:{s:1:"C";s:2:"55";s:2:"WX";s:3:"600";s:1:"N";s:5:"seven";s:1:"B";a:4:{i:0;s:2:"82";i:1;s:1:"0";i:2;s:3:"483";i:3;s:3:"607";}}i:56;a:4:{s:1:"C";s:2:"56";s:2:"WX";s:3:"600";s:1:"N";s:5:"eight";s:1:"B";a:4:{i:0;s:3:"102";i:1;s:3:"-15";i:2;s:3:"498";i:3;s:3:"622";}}s:5:"eight";a:4:{s:1:"C";s:2:"56";s:2:"WX";s:3:"600";s:1:"N";s:5:"eight";s:1:"B";a:4:{i:0;s:3:"102";i:1;s:3:"-15";i:2;s:3:"498";i:3;s:3:"622";}}i:57;a:4:{s:1:"C";s:2:"57";s:2:"WX";s:3:"600";s:1:"N";s:4:"nine";s:1:"B";a:4:{i:0;s:2:"96";i:1;s:3:"-15";i:2;s:3:"489";i:3;s:3:"622";}}s:4:"nine";a:4:{s:1:"C";s:2:"57";s:2:"WX";s:3:"600";s:1:"N";s:4:"nine";s:1:"B";a:4:{i:0;s:2:"96";i:1;s:3:"-15";i:2;s:3:"489";i:3;s:3:"622";}}i:58;a:4:{s:1:"C";s:2:"58";s:2:"WX";s:3:"600";s:1:"N";s:5:"colon";s:1:"B";a:4:{i:0;s:3:"229";i:1;s:3:"-15";i:2;s:3:"371";i:3;s:3:"385";}}s:5:"colon";a:4:{s:1:"C";s:2:"58";s:2:"WX";s:3:"600";s:1:"N";s:5:"colon";s:1:"B";a:4:{i:0;s:3:"229";i:1;s:3:"-15";i:2;s:3:"371";i:3;s:3:"385";}}i:59;a:4:{s:1:"C";s:2:"59";s:2:"WX";s:3:"600";s:1:"N";s:9:"semicolon";s:1:"B";a:4:{i:0;s:3:"181";i:1;s:4:"-112";i:2;s:3:"371";i:3;s:3:"385";}}s:9:"semicolon";a:4:{s:1:"C";s:2:"59";s:2:"WX";s:3:"600";s:1:"N";s:9:"semicolon";s:1:"B";a:4:{i:0;s:3:"181";i:1;s:4:"-112";i:2;s:3:"371";i:3;s:3:"385";}}i:60;a:4:{s:1:"C";s:2:"60";s:2:"WX";s:3:"600";s:1:"N";s:4:"less";s:1:"B";a:4:{i:0;s:2:"41";i:1;s:2:"42";i:2;s:3:"519";i:3;s:3:"472";}}s:4:"less";a:4:{s:1:"C";s:2:"60";s:2:"WX";s:3:"600";s:1:"N";s:4:"less";s:1:"B";a:4:{i:0;s:2:"41";i:1;s:2:"42";i:2;s:3:"519";i:3;s:3:"472";}}i:61;a:4:{s:1:"C";s:2:"61";s:2:"WX";s:3:"600";s:1:"N";s:5:"equal";s:1:"B";a:4:{i:0;s:2:"80";i:1;s:3:"138";i:2;s:3:"520";i:3;s:3:"376";}}s:5:"equal";a:4:{s:1:"C";s:2:"61";s:2:"WX";s:3:"600";s:1:"N";s:5:"equal";s:1:"B";a:4:{i:0;s:2:"80";i:1;s:3:"138";i:2;s:3:"520";i:3;s:3:"376";}}i:62;a:4:{s:1:"C";s:2:"62";s:2:"WX";s:3:"600";s:1:"N";s:7:"greater";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:2:"42";i:2;s:3:"544";i:3;s:3:"472";}}s:7:"greater";a:4:{s:1:"C";s:2:"62";s:2:"WX";s:3:"600";s:1:"N";s:7:"greater";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:2:"42";i:2;s:3:"544";i:3;s:3:"472";}}i:63;a:4:{s:1:"C";s:2:"63";s:2:"WX";s:3:"600";s:1:"N";s:8:"question";s:1:"B";a:4:{i:0;s:3:"129";i:1;s:3:"-15";i:2;s:3:"492";i:3;s:3:"572";}}s:8:"question";a:4:{s:1:"C";s:2:"63";s:2:"WX";s:3:"600";s:1:"N";s:8:"question";s:1:"B";a:4:{i:0;s:3:"129";i:1;s:3:"-15";i:2;s:3:"492";i:3;s:3:"572";}}i:64;a:4:{s:1:"C";s:2:"64";s:2:"WX";s:3:"600";s:1:"N";s:2:"at";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:3:"-15";i:2;s:3:"533";i:3;s:3:"622";}}s:2:"at";a:4:{s:1:"C";s:2:"64";s:2:"WX";s:3:"600";s:1:"N";s:2:"at";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:3:"-15";i:2;s:3:"533";i:3;s:3:"622";}}i:65;a:4:{s:1:"C";s:2:"65";s:2:"WX";s:3:"600";s:1:"N";s:1:"A";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:1:"0";i:2;s:3:"597";i:3;s:3:"562";}}s:1:"A";a:4:{s:1:"C";s:2:"65";s:2:"WX";s:3:"600";s:1:"N";s:1:"A";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:1:"0";i:2;s:3:"597";i:3;s:3:"562";}}i:66;a:4:{s:1:"C";s:2:"66";s:2:"WX";s:3:"600";s:1:"N";s:1:"B";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:1:"0";i:2;s:3:"559";i:3;s:3:"562";}}s:1:"B";a:4:{s:1:"C";s:2:"66";s:2:"WX";s:3:"600";s:1:"N";s:1:"B";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:1:"0";i:2;s:3:"559";i:3;s:3:"562";}}i:67;a:4:{s:1:"C";s:2:"67";s:2:"WX";s:3:"600";s:1:"N";s:1:"C";s:1:"B";a:4:{i:0;s:2:"41";i:1;s:3:"-18";i:2;s:3:"540";i:3;s:3:"580";}}s:1:"C";a:4:{s:1:"C";s:2:"67";s:2:"WX";s:3:"600";s:1:"N";s:1:"C";s:1:"B";a:4:{i:0;s:2:"41";i:1;s:3:"-18";i:2;s:3:"540";i:3;s:3:"580";}}i:68;a:4:{s:1:"C";s:2:"68";s:2:"WX";s:3:"600";s:1:"N";s:1:"D";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:1:"0";i:2;s:3:"574";i:3;s:3:"562";}}s:1:"D";a:4:{s:1:"C";s:2:"68";s:2:"WX";s:3:"600";s:1:"N";s:1:"D";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:1:"0";i:2;s:3:"574";i:3;s:3:"562";}}i:69;a:4:{s:1:"C";s:2:"69";s:2:"WX";s:3:"600";s:1:"N";s:1:"E";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:1:"0";i:2;s:3:"550";i:3;s:3:"562";}}s:1:"E";a:4:{s:1:"C";s:2:"69";s:2:"WX";s:3:"600";s:1:"N";s:1:"E";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:1:"0";i:2;s:3:"550";i:3;s:3:"562";}}i:70;a:4:{s:1:"C";s:2:"70";s:2:"WX";s:3:"600";s:1:"N";s:1:"F";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:1:"0";i:2;s:3:"545";i:3;s:3:"562";}}s:1:"F";a:4:{s:1:"C";s:2:"70";s:2:"WX";s:3:"600";s:1:"N";s:1:"F";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:1:"0";i:2;s:3:"545";i:3;s:3:"562";}}i:71;a:4:{s:1:"C";s:2:"71";s:2:"WX";s:3:"600";s:1:"N";s:1:"G";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:3:"-18";i:2;s:3:"575";i:3;s:3:"580";}}s:1:"G";a:4:{s:1:"C";s:2:"71";s:2:"WX";s:3:"600";s:1:"N";s:1:"G";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:3:"-18";i:2;s:3:"575";i:3;s:3:"580";}}i:72;a:4:{s:1:"C";s:2:"72";s:2:"WX";s:3:"600";s:1:"N";s:1:"H";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:1:"0";i:2;s:3:"568";i:3;s:3:"562";}}s:1:"H";a:4:{s:1:"C";s:2:"72";s:2:"WX";s:3:"600";s:1:"N";s:1:"H";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:1:"0";i:2;s:3:"568";i:3;s:3:"562";}}i:73;a:4:{s:1:"C";s:2:"73";s:2:"WX";s:3:"600";s:1:"N";s:1:"I";s:1:"B";a:4:{i:0;s:2:"96";i:1;s:1:"0";i:2;s:3:"504";i:3;s:3:"562";}}s:1:"I";a:4:{s:1:"C";s:2:"73";s:2:"WX";s:3:"600";s:1:"N";s:1:"I";s:1:"B";a:4:{i:0;s:2:"96";i:1;s:1:"0";i:2;s:3:"504";i:3;s:3:"562";}}i:74;a:4:{s:1:"C";s:2:"74";s:2:"WX";s:3:"600";s:1:"N";s:1:"J";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-18";i:2;s:3:"566";i:3;s:3:"562";}}s:1:"J";a:4:{s:1:"C";s:2:"74";s:2:"WX";s:3:"600";s:1:"N";s:1:"J";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-18";i:2;s:3:"566";i:3;s:3:"562";}}i:75;a:4:{s:1:"C";s:2:"75";s:2:"WX";s:3:"600";s:1:"N";s:1:"K";s:1:"B";a:4:{i:0;s:2:"38";i:1;s:1:"0";i:2;s:3:"582";i:3;s:3:"562";}}s:1:"K";a:4:{s:1:"C";s:2:"75";s:2:"WX";s:3:"600";s:1:"N";s:1:"K";s:1:"B";a:4:{i:0;s:2:"38";i:1;s:1:"0";i:2;s:3:"582";i:3;s:3:"562";}}i:76;a:4:{s:1:"C";s:2:"76";s:2:"WX";s:3:"600";s:1:"N";s:1:"L";s:1:"B";a:4:{i:0;s:2:"47";i:1;s:1:"0";i:2;s:3:"554";i:3;s:3:"562";}}s:1:"L";a:4:{s:1:"C";s:2:"76";s:2:"WX";s:3:"600";s:1:"N";s:1:"L";s:1:"B";a:4:{i:0;s:2:"47";i:1;s:1:"0";i:2;s:3:"554";i:3;s:3:"562";}}i:77;a:4:{s:1:"C";s:2:"77";s:2:"WX";s:3:"600";s:1:"N";s:1:"M";s:1:"B";a:4:{i:0;s:1:"4";i:1;s:1:"0";i:2;s:3:"596";i:3;s:3:"562";}}s:1:"M";a:4:{s:1:"C";s:2:"77";s:2:"WX";s:3:"600";s:1:"N";s:1:"M";s:1:"B";a:4:{i:0;s:1:"4";i:1;s:1:"0";i:2;s:3:"596";i:3;s:3:"562";}}i:78;a:4:{s:1:"C";s:2:"78";s:2:"WX";s:3:"600";s:1:"N";s:1:"N";s:1:"B";a:4:{i:0;s:1:"7";i:1;s:3:"-13";i:2;s:3:"593";i:3;s:3:"562";}}s:1:"N";a:4:{s:1:"C";s:2:"78";s:2:"WX";s:3:"600";s:1:"N";s:1:"N";s:1:"B";a:4:{i:0;s:1:"7";i:1;s:3:"-13";i:2;s:3:"593";i:3;s:3:"562";}}i:79;a:4:{s:1:"C";s:2:"79";s:2:"WX";s:3:"600";s:1:"N";s:1:"O";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:3:"-18";i:2;s:3:"557";i:3;s:3:"580";}}s:1:"O";a:4:{s:1:"C";s:2:"79";s:2:"WX";s:3:"600";s:1:"N";s:1:"O";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:3:"-18";i:2;s:3:"557";i:3;s:3:"580";}}i:80;a:4:{s:1:"C";s:2:"80";s:2:"WX";s:3:"600";s:1:"N";s:1:"P";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:1:"0";i:2;s:3:"558";i:3;s:3:"562";}}s:1:"P";a:4:{s:1:"C";s:2:"80";s:2:"WX";s:3:"600";s:1:"N";s:1:"P";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:1:"0";i:2;s:3:"558";i:3;s:3:"562";}}i:81;a:4:{s:1:"C";s:2:"81";s:2:"WX";s:3:"600";s:1:"N";s:1:"Q";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:4:"-138";i:2;s:3:"557";i:3;s:3:"580";}}s:1:"Q";a:4:{s:1:"C";s:2:"81";s:2:"WX";s:3:"600";s:1:"N";s:1:"Q";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:4:"-138";i:2;s:3:"557";i:3;s:3:"580";}}i:82;a:4:{s:1:"C";s:2:"82";s:2:"WX";s:3:"600";s:1:"N";s:1:"R";s:1:"B";a:4:{i:0;s:2:"38";i:1;s:1:"0";i:2;s:3:"588";i:3;s:3:"562";}}s:1:"R";a:4:{s:1:"C";s:2:"82";s:2:"WX";s:3:"600";s:1:"N";s:1:"R";s:1:"B";a:4:{i:0;s:2:"38";i:1;s:1:"0";i:2;s:3:"588";i:3;s:3:"562";}}i:83;a:4:{s:1:"C";s:2:"83";s:2:"WX";s:3:"600";s:1:"N";s:1:"S";s:1:"B";a:4:{i:0;s:2:"72";i:1;s:3:"-20";i:2;s:3:"529";i:3;s:3:"580";}}s:1:"S";a:4:{s:1:"C";s:2:"83";s:2:"WX";s:3:"600";s:1:"N";s:1:"S";s:1:"B";a:4:{i:0;s:2:"72";i:1;s:3:"-20";i:2;s:3:"529";i:3;s:3:"580";}}i:84;a:4:{s:1:"C";s:2:"84";s:2:"WX";s:3:"600";s:1:"N";s:1:"T";s:1:"B";a:4:{i:0;s:2:"38";i:1;s:1:"0";i:2;s:3:"563";i:3;s:3:"562";}}s:1:"T";a:4:{s:1:"C";s:2:"84";s:2:"WX";s:3:"600";s:1:"N";s:1:"T";s:1:"B";a:4:{i:0;s:2:"38";i:1;s:1:"0";i:2;s:3:"563";i:3;s:3:"562";}}i:85;a:4:{s:1:"C";s:2:"85";s:2:"WX";s:3:"600";s:1:"N";s:1:"U";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:3:"-18";i:2;s:3:"583";i:3;s:3:"562";}}s:1:"U";a:4:{s:1:"C";s:2:"85";s:2:"WX";s:3:"600";s:1:"N";s:1:"U";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:3:"-18";i:2;s:3:"583";i:3;s:3:"562";}}i:86;a:4:{s:1:"C";s:2:"86";s:2:"WX";s:3:"600";s:1:"N";s:1:"V";s:1:"B";a:4:{i:0;s:2:"-4";i:1;s:3:"-13";i:2;s:3:"604";i:3;s:3:"562";}}s:1:"V";a:4:{s:1:"C";s:2:"86";s:2:"WX";s:3:"600";s:1:"N";s:1:"V";s:1:"B";a:4:{i:0;s:2:"-4";i:1;s:3:"-13";i:2;s:3:"604";i:3;s:3:"562";}}i:87;a:4:{s:1:"C";s:2:"87";s:2:"WX";s:3:"600";s:1:"N";s:1:"W";s:1:"B";a:4:{i:0;s:2:"-3";i:1;s:3:"-13";i:2;s:3:"603";i:3;s:3:"562";}}s:1:"W";a:4:{s:1:"C";s:2:"87";s:2:"WX";s:3:"600";s:1:"N";s:1:"W";s:1:"B";a:4:{i:0;s:2:"-3";i:1;s:3:"-13";i:2;s:3:"603";i:3;s:3:"562";}}i:88;a:4:{s:1:"C";s:2:"88";s:2:"WX";s:3:"600";s:1:"N";s:1:"X";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:1:"0";i:2;s:3:"577";i:3;s:3:"562";}}s:1:"X";a:4:{s:1:"C";s:2:"88";s:2:"WX";s:3:"600";s:1:"N";s:1:"X";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:1:"0";i:2;s:3:"577";i:3;s:3:"562";}}i:89;a:4:{s:1:"C";s:2:"89";s:2:"WX";s:3:"600";s:1:"N";s:1:"Y";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:1:"0";i:2;s:3:"576";i:3;s:3:"562";}}s:1:"Y";a:4:{s:1:"C";s:2:"89";s:2:"WX";s:3:"600";s:1:"N";s:1:"Y";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:1:"0";i:2;s:3:"576";i:3;s:3:"562";}}i:90;a:4:{s:1:"C";s:2:"90";s:2:"WX";s:3:"600";s:1:"N";s:1:"Z";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"514";i:3;s:3:"562";}}s:1:"Z";a:4:{s:1:"C";s:2:"90";s:2:"WX";s:3:"600";s:1:"N";s:1:"Z";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"514";i:3;s:3:"562";}}i:91;a:4:{s:1:"C";s:2:"91";s:2:"WX";s:3:"600";s:1:"N";s:11:"bracketleft";s:1:"B";a:4:{i:0;s:3:"269";i:1;s:4:"-108";i:2;s:3:"442";i:3;s:3:"622";}}s:11:"bracketleft";a:4:{s:1:"C";s:2:"91";s:2:"WX";s:3:"600";s:1:"N";s:11:"bracketleft";s:1:"B";a:4:{i:0;s:3:"269";i:1;s:4:"-108";i:2;s:3:"442";i:3;s:3:"622";}}i:92;a:4:{s:1:"C";s:2:"92";s:2:"WX";s:3:"600";s:1:"N";s:9:"backslash";s:1:"B";a:4:{i:0;s:3:"118";i:1;s:3:"-80";i:2;s:3:"482";i:3;s:3:"629";}}s:9:"backslash";a:4:{s:1:"C";s:2:"92";s:2:"WX";s:3:"600";s:1:"N";s:9:"backslash";s:1:"B";a:4:{i:0;s:3:"118";i:1;s:3:"-80";i:2;s:3:"482";i:3;s:3:"629";}}i:93;a:4:{s:1:"C";s:2:"93";s:2:"WX";s:3:"600";s:1:"N";s:12:"bracketright";s:1:"B";a:4:{i:0;s:3:"158";i:1;s:4:"-108";i:2;s:3:"331";i:3;s:3:"622";}}s:12:"bracketright";a:4:{s:1:"C";s:2:"93";s:2:"WX";s:3:"600";s:1:"N";s:12:"bracketright";s:1:"B";a:4:{i:0;s:3:"158";i:1;s:4:"-108";i:2;s:3:"331";i:3;s:3:"622";}}i:94;a:4:{s:1:"C";s:2:"94";s:2:"WX";s:3:"600";s:1:"N";s:11:"asciicircum";s:1:"B";a:4:{i:0;s:2:"94";i:1;s:3:"354";i:2;s:3:"506";i:3;s:3:"622";}}s:11:"asciicircum";a:4:{s:1:"C";s:2:"94";s:2:"WX";s:3:"600";s:1:"N";s:11:"asciicircum";s:1:"B";a:4:{i:0;s:2:"94";i:1;s:3:"354";i:2;s:3:"506";i:3;s:3:"622";}}i:95;a:4:{s:1:"C";s:2:"95";s:2:"WX";s:3:"600";s:1:"N";s:10:"underscore";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:4:"-125";i:2;s:3:"600";i:3;s:3:"-75";}}s:10:"underscore";a:4:{s:1:"C";s:2:"95";s:2:"WX";s:3:"600";s:1:"N";s:10:"underscore";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:4:"-125";i:2;s:3:"600";i:3;s:3:"-75";}}i:96;a:4:{s:1:"C";s:2:"96";s:2:"WX";s:3:"600";s:1:"N";s:9:"quoteleft";s:1:"B";a:4:{i:0;s:3:"224";i:1;s:3:"328";i:2;s:3:"387";i:3;s:3:"562";}}s:9:"quoteleft";a:4:{s:1:"C";s:2:"96";s:2:"WX";s:3:"600";s:1:"N";s:9:"quoteleft";s:1:"B";a:4:{i:0;s:3:"224";i:1;s:3:"328";i:2;s:3:"387";i:3;s:3:"562";}}i:97;a:4:{s:1:"C";s:2:"97";s:2:"WX";s:3:"600";s:1:"N";s:1:"a";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:3:"-15";i:2;s:3:"559";i:3;s:3:"441";}}s:1:"a";a:4:{s:1:"C";s:2:"97";s:2:"WX";s:3:"600";s:1:"N";s:1:"a";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:3:"-15";i:2;s:3:"559";i:3;s:3:"441";}}i:98;a:4:{s:1:"C";s:2:"98";s:2:"WX";s:3:"600";s:1:"N";s:1:"b";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:3:"-15";i:2;s:3:"575";i:3;s:3:"629";}}s:1:"b";a:4:{s:1:"C";s:2:"98";s:2:"WX";s:3:"600";s:1:"N";s:1:"b";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:3:"-15";i:2;s:3:"575";i:3;s:3:"629";}}i:99;a:4:{s:1:"C";s:2:"99";s:2:"WX";s:3:"600";s:1:"N";s:1:"c";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:3:"-15";i:2;s:3:"529";i:3;s:3:"441";}}s:1:"c";a:4:{s:1:"C";s:2:"99";s:2:"WX";s:3:"600";s:1:"N";s:1:"c";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:3:"-15";i:2;s:3:"529";i:3;s:3:"441";}}i:100;a:4:{s:1:"C";s:3:"100";s:2:"WX";s:3:"600";s:1:"N";s:1:"d";s:1:"B";a:4:{i:0;s:2:"45";i:1;s:3:"-15";i:2;s:3:"591";i:3;s:3:"629";}}s:1:"d";a:4:{s:1:"C";s:3:"100";s:2:"WX";s:3:"600";s:1:"N";s:1:"d";s:1:"B";a:4:{i:0;s:2:"45";i:1;s:3:"-15";i:2;s:3:"591";i:3;s:3:"629";}}i:101;a:4:{s:1:"C";s:3:"101";s:2:"WX";s:3:"600";s:1:"N";s:1:"e";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:3:"-15";i:2;s:3:"548";i:3;s:3:"441";}}s:1:"e";a:4:{s:1:"C";s:3:"101";s:2:"WX";s:3:"600";s:1:"N";s:1:"e";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:3:"-15";i:2;s:3:"548";i:3;s:3:"441";}}i:102;a:5:{s:1:"C";s:3:"102";s:2:"WX";s:3:"600";s:1:"N";s:1:"f";s:1:"B";a:4:{i:0;s:3:"114";i:1;s:1:"0";i:2;s:3:"531";i:3;s:3:"629";}s:1:"L";a:2:{i:0;s:1:"l";i:1;s:2:"fl";}}s:1:"f";a:5:{s:1:"C";s:3:"102";s:2:"WX";s:3:"600";s:1:"N";s:1:"f";s:1:"B";a:4:{i:0;s:3:"114";i:1;s:1:"0";i:2;s:3:"531";i:3;s:3:"629";}s:1:"L";a:2:{i:0;s:1:"l";i:1;s:2:"fl";}}i:103;a:4:{s:1:"C";s:3:"103";s:2:"WX";s:3:"600";s:1:"N";s:1:"g";s:1:"B";a:4:{i:0;s:2:"45";i:1;s:4:"-157";i:2;s:3:"566";i:3;s:3:"441";}}s:1:"g";a:4:{s:1:"C";s:3:"103";s:2:"WX";s:3:"600";s:1:"N";s:1:"g";s:1:"B";a:4:{i:0;s:2:"45";i:1;s:4:"-157";i:2;s:3:"566";i:3;s:3:"441";}}i:104;a:4:{s:1:"C";s:3:"104";s:2:"WX";s:3:"600";s:1:"N";s:1:"h";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:1:"0";i:2;s:3:"582";i:3;s:3:"629";}}s:1:"h";a:4:{s:1:"C";s:3:"104";s:2:"WX";s:3:"600";s:1:"N";s:1:"h";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:1:"0";i:2;s:3:"582";i:3;s:3:"629";}}i:105;a:4:{s:1:"C";s:3:"105";s:2:"WX";s:3:"600";s:1:"N";s:1:"i";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:1:"0";i:2;s:3:"505";i:3;s:3:"657";}}s:1:"i";a:4:{s:1:"C";s:3:"105";s:2:"WX";s:3:"600";s:1:"N";s:1:"i";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:1:"0";i:2;s:3:"505";i:3;s:3:"657";}}i:106;a:4:{s:1:"C";s:3:"106";s:2:"WX";s:3:"600";s:1:"N";s:1:"j";s:1:"B";a:4:{i:0;s:2:"82";i:1;s:4:"-157";i:2;s:3:"410";i:3;s:3:"657";}}s:1:"j";a:4:{s:1:"C";s:3:"106";s:2:"WX";s:3:"600";s:1:"N";s:1:"j";s:1:"B";a:4:{i:0;s:2:"82";i:1;s:4:"-157";i:2;s:3:"410";i:3;s:3:"657";}}i:107;a:4:{s:1:"C";s:3:"107";s:2:"WX";s:3:"600";s:1:"N";s:1:"k";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:1:"0";i:2;s:3:"580";i:3;s:3:"629";}}s:1:"k";a:4:{s:1:"C";s:3:"107";s:2:"WX";s:3:"600";s:1:"N";s:1:"k";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:1:"0";i:2;s:3:"580";i:3;s:3:"629";}}i:108;a:4:{s:1:"C";s:3:"108";s:2:"WX";s:3:"600";s:1:"N";s:1:"l";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:1:"0";i:2;s:3:"505";i:3;s:3:"629";}}s:1:"l";a:4:{s:1:"C";s:3:"108";s:2:"WX";s:3:"600";s:1:"N";s:1:"l";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:1:"0";i:2;s:3:"505";i:3;s:3:"629";}}i:109;a:4:{s:1:"C";s:3:"109";s:2:"WX";s:3:"600";s:1:"N";s:1:"m";s:1:"B";a:4:{i:0;s:2:"-5";i:1;s:1:"0";i:2;s:3:"605";i:3;s:3:"441";}}s:1:"m";a:4:{s:1:"C";s:3:"109";s:2:"WX";s:3:"600";s:1:"N";s:1:"m";s:1:"B";a:4:{i:0;s:2:"-5";i:1;s:1:"0";i:2;s:3:"605";i:3;s:3:"441";}}i:110;a:4:{s:1:"C";s:3:"110";s:2:"WX";s:3:"600";s:1:"N";s:1:"n";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"575";i:3;s:3:"441";}}s:1:"n";a:4:{s:1:"C";s:3:"110";s:2:"WX";s:3:"600";s:1:"N";s:1:"n";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"575";i:3;s:3:"441";}}i:111;a:4:{s:1:"C";s:3:"111";s:2:"WX";s:3:"600";s:1:"N";s:1:"o";s:1:"B";a:4:{i:0;s:2:"62";i:1;s:3:"-15";i:2;s:3:"538";i:3;s:3:"441";}}s:1:"o";a:4:{s:1:"C";s:3:"111";s:2:"WX";s:3:"600";s:1:"N";s:1:"o";s:1:"B";a:4:{i:0;s:2:"62";i:1;s:3:"-15";i:2;s:3:"538";i:3;s:3:"441";}}i:112;a:4:{s:1:"C";s:3:"112";s:2:"WX";s:3:"600";s:1:"N";s:1:"p";s:1:"B";a:4:{i:0;s:1:"9";i:1;s:4:"-157";i:2;s:3:"555";i:3;s:3:"441";}}s:1:"p";a:4:{s:1:"C";s:3:"112";s:2:"WX";s:3:"600";s:1:"N";s:1:"p";s:1:"B";a:4:{i:0;s:1:"9";i:1;s:4:"-157";i:2;s:3:"555";i:3;s:3:"441";}}i:113;a:4:{s:1:"C";s:3:"113";s:2:"WX";s:3:"600";s:1:"N";s:1:"q";s:1:"B";a:4:{i:0;s:2:"45";i:1;s:4:"-157";i:2;s:3:"591";i:3;s:3:"441";}}s:1:"q";a:4:{s:1:"C";s:3:"113";s:2:"WX";s:3:"600";s:1:"N";s:1:"q";s:1:"B";a:4:{i:0;s:2:"45";i:1;s:4:"-157";i:2;s:3:"591";i:3;s:3:"441";}}i:114;a:4:{s:1:"C";s:3:"114";s:2:"WX";s:3:"600";s:1:"N";s:1:"r";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:1:"0";i:2;s:3:"559";i:3;s:3:"441";}}s:1:"r";a:4:{s:1:"C";s:3:"114";s:2:"WX";s:3:"600";s:1:"N";s:1:"r";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:1:"0";i:2;s:3:"559";i:3;s:3:"441";}}i:115;a:4:{s:1:"C";s:3:"115";s:2:"WX";s:3:"600";s:1:"N";s:1:"s";s:1:"B";a:4:{i:0;s:2:"80";i:1;s:3:"-15";i:2;s:3:"513";i:3;s:3:"441";}}s:1:"s";a:4:{s:1:"C";s:3:"115";s:2:"WX";s:3:"600";s:1:"N";s:1:"s";s:1:"B";a:4:{i:0;s:2:"80";i:1;s:3:"-15";i:2;s:3:"513";i:3;s:3:"441";}}i:116;a:4:{s:1:"C";s:3:"116";s:2:"WX";s:3:"600";s:1:"N";s:1:"t";s:1:"B";a:4:{i:0;s:2:"87";i:1;s:3:"-15";i:2;s:3:"530";i:3;s:3:"561";}}s:1:"t";a:4:{s:1:"C";s:3:"116";s:2:"WX";s:3:"600";s:1:"N";s:1:"t";s:1:"B";a:4:{i:0;s:2:"87";i:1;s:3:"-15";i:2;s:3:"530";i:3;s:3:"561";}}i:117;a:4:{s:1:"C";s:3:"117";s:2:"WX";s:3:"600";s:1:"N";s:1:"u";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:3:"-15";i:2;s:3:"562";i:3;s:3:"426";}}s:1:"u";a:4:{s:1:"C";s:3:"117";s:2:"WX";s:3:"600";s:1:"N";s:1:"u";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:3:"-15";i:2;s:3:"562";i:3;s:3:"426";}}i:118;a:4:{s:1:"C";s:3:"118";s:2:"WX";s:3:"600";s:1:"N";s:1:"v";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:3:"-10";i:2;s:3:"590";i:3;s:3:"426";}}s:1:"v";a:4:{s:1:"C";s:3:"118";s:2:"WX";s:3:"600";s:1:"N";s:1:"v";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:3:"-10";i:2;s:3:"590";i:3;s:3:"426";}}i:119;a:4:{s:1:"C";s:3:"119";s:2:"WX";s:3:"600";s:1:"N";s:1:"w";s:1:"B";a:4:{i:0;s:2:"-4";i:1;s:3:"-10";i:2;s:3:"604";i:3;s:3:"426";}}s:1:"w";a:4:{s:1:"C";s:3:"119";s:2:"WX";s:3:"600";s:1:"N";s:1:"w";s:1:"B";a:4:{i:0;s:2:"-4";i:1;s:3:"-10";i:2;s:3:"604";i:3;s:3:"426";}}i:120;a:4:{s:1:"C";s:3:"120";s:2:"WX";s:3:"600";s:1:"N";s:1:"x";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"580";i:3;s:3:"426";}}s:1:"x";a:4:{s:1:"C";s:3:"120";s:2:"WX";s:3:"600";s:1:"N";s:1:"x";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"580";i:3;s:3:"426";}}i:121;a:4:{s:1:"C";s:3:"121";s:2:"WX";s:3:"600";s:1:"N";s:1:"y";s:1:"B";a:4:{i:0;s:1:"7";i:1;s:4:"-157";i:2;s:3:"592";i:3;s:3:"426";}}s:1:"y";a:4:{s:1:"C";s:3:"121";s:2:"WX";s:3:"600";s:1:"N";s:1:"y";s:1:"B";a:4:{i:0;s:1:"7";i:1;s:4:"-157";i:2;s:3:"592";i:3;s:3:"426";}}i:122;a:4:{s:1:"C";s:3:"122";s:2:"WX";s:3:"600";s:1:"N";s:1:"z";s:1:"B";a:4:{i:0;s:2:"99";i:1;s:1:"0";i:2;s:3:"502";i:3;s:3:"426";}}s:1:"z";a:4:{s:1:"C";s:3:"122";s:2:"WX";s:3:"600";s:1:"N";s:1:"z";s:1:"B";a:4:{i:0;s:2:"99";i:1;s:1:"0";i:2;s:3:"502";i:3;s:3:"426";}}i:123;a:4:{s:1:"C";s:3:"123";s:2:"WX";s:3:"600";s:1:"N";s:9:"braceleft";s:1:"B";a:4:{i:0;s:3:"182";i:1;s:4:"-108";i:2;s:3:"437";i:3;s:3:"622";}}s:9:"braceleft";a:4:{s:1:"C";s:3:"123";s:2:"WX";s:3:"600";s:1:"N";s:9:"braceleft";s:1:"B";a:4:{i:0;s:3:"182";i:1;s:4:"-108";i:2;s:3:"437";i:3;s:3:"622";}}i:124;a:4:{s:1:"C";s:3:"124";s:2:"WX";s:3:"600";s:1:"N";s:3:"bar";s:1:"B";a:4:{i:0;s:3:"275";i:1;s:4:"-250";i:2;s:3:"326";i:3;s:3:"750";}}s:3:"bar";a:4:{s:1:"C";s:3:"124";s:2:"WX";s:3:"600";s:1:"N";s:3:"bar";s:1:"B";a:4:{i:0;s:3:"275";i:1;s:4:"-250";i:2;s:3:"326";i:3;s:3:"750";}}i:125;a:4:{s:1:"C";s:3:"125";s:2:"WX";s:3:"600";s:1:"N";s:10:"braceright";s:1:"B";a:4:{i:0;s:3:"163";i:1;s:4:"-108";i:2;s:3:"418";i:3;s:3:"622";}}s:10:"braceright";a:4:{s:1:"C";s:3:"125";s:2:"WX";s:3:"600";s:1:"N";s:10:"braceright";s:1:"B";a:4:{i:0;s:3:"163";i:1;s:4:"-108";i:2;s:3:"418";i:3;s:3:"622";}}i:126;a:4:{s:1:"C";s:3:"126";s:2:"WX";s:3:"600";s:1:"N";s:10:"asciitilde";s:1:"B";a:4:{i:0;s:2:"63";i:1;s:3:"197";i:2;s:3:"540";i:3;s:3:"320";}}s:10:"asciitilde";a:4:{s:1:"C";s:3:"126";s:2:"WX";s:3:"600";s:1:"N";s:10:"asciitilde";s:1:"B";a:4:{i:0;s:2:"63";i:1;s:3:"197";i:2;s:3:"540";i:3;s:3:"320";}}i:161;a:4:{s:1:"C";s:3:"161";s:2:"WX";s:3:"600";s:1:"N";s:10:"exclamdown";s:1:"B";a:4:{i:0;s:3:"236";i:1;s:4:"-157";i:2;s:3:"364";i:3;s:3:"430";}}s:10:"exclamdown";a:4:{s:1:"C";s:3:"161";s:2:"WX";s:3:"600";s:1:"N";s:10:"exclamdown";s:1:"B";a:4:{i:0;s:3:"236";i:1;s:4:"-157";i:2;s:3:"364";i:3;s:3:"430";}}i:162;a:4:{s:1:"C";s:3:"162";s:2:"WX";s:3:"600";s:1:"N";s:4:"cent";s:1:"B";a:4:{i:0;s:2:"96";i:1;s:3:"-49";i:2;s:3:"500";i:3;s:3:"614";}}s:4:"cent";a:4:{s:1:"C";s:3:"162";s:2:"WX";s:3:"600";s:1:"N";s:4:"cent";s:1:"B";a:4:{i:0;s:2:"96";i:1;s:3:"-49";i:2;s:3:"500";i:3;s:3:"614";}}i:163;a:4:{s:1:"C";s:3:"163";s:2:"WX";s:3:"600";s:1:"N";s:8:"sterling";s:1:"B";a:4:{i:0;s:2:"84";i:1;s:3:"-21";i:2;s:3:"521";i:3;s:3:"611";}}s:8:"sterling";a:4:{s:1:"C";s:3:"163";s:2:"WX";s:3:"600";s:1:"N";s:8:"sterling";s:1:"B";a:4:{i:0;s:2:"84";i:1;s:3:"-21";i:2;s:3:"521";i:3;s:3:"611";}}i:164;a:4:{s:1:"C";s:3:"164";s:2:"WX";s:3:"600";s:1:"N";s:8:"fraction";s:1:"B";a:4:{i:0;s:2:"92";i:1;s:3:"-57";i:2;s:3:"509";i:3;s:3:"665";}}s:8:"fraction";a:4:{s:1:"C";s:3:"164";s:2:"WX";s:3:"600";s:1:"N";s:8:"fraction";s:1:"B";a:4:{i:0;s:2:"92";i:1;s:3:"-57";i:2;s:3:"509";i:3;s:3:"665";}}i:165;a:4:{s:1:"C";s:3:"165";s:2:"WX";s:3:"600";s:1:"N";s:3:"yen";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"574";i:3;s:3:"562";}}s:3:"yen";a:4:{s:1:"C";s:3:"165";s:2:"WX";s:3:"600";s:1:"N";s:3:"yen";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"574";i:3;s:3:"562";}}i:166;a:4:{s:1:"C";s:3:"166";s:2:"WX";s:3:"600";s:1:"N";s:6:"florin";s:1:"B";a:4:{i:0;s:1:"4";i:1;s:4:"-143";i:2;s:3:"539";i:3;s:3:"622";}}s:6:"florin";a:4:{s:1:"C";s:3:"166";s:2:"WX";s:3:"600";s:1:"N";s:6:"florin";s:1:"B";a:4:{i:0;s:1:"4";i:1;s:4:"-143";i:2;s:3:"539";i:3;s:3:"622";}}i:167;a:4:{s:1:"C";s:3:"167";s:2:"WX";s:3:"600";s:1:"N";s:7:"section";s:1:"B";a:4:{i:0;s:3:"113";i:1;s:3:"-78";i:2;s:3:"488";i:3;s:3:"580";}}s:7:"section";a:4:{s:1:"C";s:3:"167";s:2:"WX";s:3:"600";s:1:"N";s:7:"section";s:1:"B";a:4:{i:0;s:3:"113";i:1;s:3:"-78";i:2;s:3:"488";i:3;s:3:"580";}}i:168;a:4:{s:1:"C";s:3:"168";s:2:"WX";s:3:"600";s:1:"N";s:8:"currency";s:1:"B";a:4:{i:0;s:2:"73";i:1;s:2:"58";i:2;s:3:"527";i:3;s:3:"506";}}s:8:"currency";a:4:{s:1:"C";s:3:"168";s:2:"WX";s:3:"600";s:1:"N";s:8:"currency";s:1:"B";a:4:{i:0;s:2:"73";i:1;s:2:"58";i:2;s:3:"527";i:3;s:3:"506";}}i:169;a:4:{s:1:"C";s:3:"169";s:2:"WX";s:3:"600";s:1:"N";s:11:"quotesingle";s:1:"B";a:4:{i:0;s:3:"259";i:1;s:3:"328";i:2;s:3:"341";i:3;s:3:"562";}}s:11:"quotesingle";a:4:{s:1:"C";s:3:"169";s:2:"WX";s:3:"600";s:1:"N";s:11:"quotesingle";s:1:"B";a:4:{i:0;s:3:"259";i:1;s:3:"328";i:2;s:3:"341";i:3;s:3:"562";}}i:170;a:4:{s:1:"C";s:3:"170";s:2:"WX";s:3:"600";s:1:"N";s:12:"quotedblleft";s:1:"B";a:4:{i:0;s:3:"143";i:1;s:3:"328";i:2;s:3:"471";i:3;s:3:"562";}}s:12:"quotedblleft";a:4:{s:1:"C";s:3:"170";s:2:"WX";s:3:"600";s:1:"N";s:12:"quotedblleft";s:1:"B";a:4:{i:0;s:3:"143";i:1;s:3:"328";i:2;s:3:"471";i:3;s:3:"562";}}i:171;a:4:{s:1:"C";s:3:"171";s:2:"WX";s:3:"600";s:1:"N";s:13:"guillemotleft";s:1:"B";a:4:{i:0;s:2:"37";i:1;s:2:"70";i:2;s:3:"563";i:3;s:3:"446";}}s:13:"guillemotleft";a:4:{s:1:"C";s:3:"171";s:2:"WX";s:3:"600";s:1:"N";s:13:"guillemotleft";s:1:"B";a:4:{i:0;s:2:"37";i:1;s:2:"70";i:2;s:3:"563";i:3;s:3:"446";}}i:172;a:4:{s:1:"C";s:3:"172";s:2:"WX";s:3:"600";s:1:"N";s:13:"guilsinglleft";s:1:"B";a:4:{i:0;s:3:"149";i:1;s:2:"70";i:2;s:3:"451";i:3;s:3:"446";}}s:13:"guilsinglleft";a:4:{s:1:"C";s:3:"172";s:2:"WX";s:3:"600";s:1:"N";s:13:"guilsinglleft";s:1:"B";a:4:{i:0;s:3:"149";i:1;s:2:"70";i:2;s:3:"451";i:3;s:3:"446";}}i:173;a:4:{s:1:"C";s:3:"173";s:2:"WX";s:3:"600";s:1:"N";s:14:"guilsinglright";s:1:"B";a:4:{i:0;s:3:"149";i:1;s:2:"70";i:2;s:3:"451";i:3;s:3:"446";}}s:14:"guilsinglright";a:4:{s:1:"C";s:3:"173";s:2:"WX";s:3:"600";s:1:"N";s:14:"guilsinglright";s:1:"B";a:4:{i:0;s:3:"149";i:1;s:2:"70";i:2;s:3:"451";i:3;s:3:"446";}}i:174;a:4:{s:1:"C";s:3:"174";s:2:"WX";s:3:"600";s:1:"N";s:2:"fi";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:1:"0";i:2;s:3:"597";i:3;s:3:"629";}}s:2:"fi";a:4:{s:1:"C";s:3:"174";s:2:"WX";s:3:"600";s:1:"N";s:2:"fi";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:1:"0";i:2;s:3:"597";i:3;s:3:"629";}}i:175;a:4:{s:1:"C";s:3:"175";s:2:"WX";s:3:"600";s:1:"N";s:2:"fl";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:1:"0";i:2;s:3:"597";i:3;s:3:"629";}}s:2:"fl";a:4:{s:1:"C";s:3:"175";s:2:"WX";s:3:"600";s:1:"N";s:2:"fl";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:1:"0";i:2;s:3:"597";i:3;s:3:"629";}}i:177;a:4:{s:1:"C";s:3:"177";s:2:"WX";s:3:"600";s:1:"N";s:6:"endash";s:1:"B";a:4:{i:0;s:2:"75";i:1;s:3:"231";i:2;s:3:"525";i:3;s:3:"285";}}s:6:"endash";a:4:{s:1:"C";s:3:"177";s:2:"WX";s:3:"600";s:1:"N";s:6:"endash";s:1:"B";a:4:{i:0;s:2:"75";i:1;s:3:"231";i:2;s:3:"525";i:3;s:3:"285";}}i:178;a:4:{s:1:"C";s:3:"178";s:2:"WX";s:3:"600";s:1:"N";s:6:"dagger";s:1:"B";a:4:{i:0;s:3:"141";i:1;s:3:"-78";i:2;s:3:"459";i:3;s:3:"580";}}s:6:"dagger";a:4:{s:1:"C";s:3:"178";s:2:"WX";s:3:"600";s:1:"N";s:6:"dagger";s:1:"B";a:4:{i:0;s:3:"141";i:1;s:3:"-78";i:2;s:3:"459";i:3;s:3:"580";}}i:179;a:4:{s:1:"C";s:3:"179";s:2:"WX";s:3:"600";s:1:"N";s:9:"daggerdbl";s:1:"B";a:4:{i:0;s:3:"141";i:1;s:3:"-78";i:2;s:3:"459";i:3;s:3:"580";}}s:9:"daggerdbl";a:4:{s:1:"C";s:3:"179";s:2:"WX";s:3:"600";s:1:"N";s:9:"daggerdbl";s:1:"B";a:4:{i:0;s:3:"141";i:1;s:3:"-78";i:2;s:3:"459";i:3;s:3:"580";}}i:180;a:4:{s:1:"C";s:3:"180";s:2:"WX";s:3:"600";s:1:"N";s:14:"periodcentered";s:1:"B";a:4:{i:0;s:3:"222";i:1;s:3:"189";i:2;s:3:"378";i:3;s:3:"327";}}s:14:"periodcentered";a:4:{s:1:"C";s:3:"180";s:2:"WX";s:3:"600";s:1:"N";s:14:"periodcentered";s:1:"B";a:4:{i:0;s:3:"222";i:1;s:3:"189";i:2;s:3:"378";i:3;s:3:"327";}}i:182;a:4:{s:1:"C";s:3:"182";s:2:"WX";s:3:"600";s:1:"N";s:9:"paragraph";s:1:"B";a:4:{i:0;s:2:"50";i:1;s:3:"-78";i:2;s:3:"511";i:3;s:3:"562";}}s:9:"paragraph";a:4:{s:1:"C";s:3:"182";s:2:"WX";s:3:"600";s:1:"N";s:9:"paragraph";s:1:"B";a:4:{i:0;s:2:"50";i:1;s:3:"-78";i:2;s:3:"511";i:3;s:3:"562";}}i:183;a:4:{s:1:"C";s:3:"183";s:2:"WX";s:3:"600";s:1:"N";s:6:"bullet";s:1:"B";a:4:{i:0;s:3:"172";i:1;s:3:"130";i:2;s:3:"428";i:3;s:3:"383";}}s:6:"bullet";a:4:{s:1:"C";s:3:"183";s:2:"WX";s:3:"600";s:1:"N";s:6:"bullet";s:1:"B";a:4:{i:0;s:3:"172";i:1;s:3:"130";i:2;s:3:"428";i:3;s:3:"383";}}i:184;a:4:{s:1:"C";s:3:"184";s:2:"WX";s:3:"600";s:1:"N";s:14:"quotesinglbase";s:1:"B";a:4:{i:0;s:3:"213";i:1;s:4:"-134";i:2;s:3:"376";i:3;s:3:"100";}}s:14:"quotesinglbase";a:4:{s:1:"C";s:3:"184";s:2:"WX";s:3:"600";s:1:"N";s:14:"quotesinglbase";s:1:"B";a:4:{i:0;s:3:"213";i:1;s:4:"-134";i:2;s:3:"376";i:3;s:3:"100";}}i:185;a:4:{s:1:"C";s:3:"185";s:2:"WX";s:3:"600";s:1:"N";s:12:"quotedblbase";s:1:"B";a:4:{i:0;s:3:"143";i:1;s:4:"-134";i:2;s:3:"457";i:3;s:3:"100";}}s:12:"quotedblbase";a:4:{s:1:"C";s:3:"185";s:2:"WX";s:3:"600";s:1:"N";s:12:"quotedblbase";s:1:"B";a:4:{i:0;s:3:"143";i:1;s:4:"-134";i:2;s:3:"457";i:3;s:3:"100";}}i:186;a:4:{s:1:"C";s:3:"186";s:2:"WX";s:3:"600";s:1:"N";s:13:"quotedblright";s:1:"B";a:4:{i:0;s:3:"143";i:1;s:3:"328";i:2;s:3:"457";i:3;s:3:"562";}}s:13:"quotedblright";a:4:{s:1:"C";s:3:"186";s:2:"WX";s:3:"600";s:1:"N";s:13:"quotedblright";s:1:"B";a:4:{i:0;s:3:"143";i:1;s:3:"328";i:2;s:3:"457";i:3;s:3:"562";}}i:187;a:4:{s:1:"C";s:3:"187";s:2:"WX";s:3:"600";s:1:"N";s:14:"guillemotright";s:1:"B";a:4:{i:0;s:2:"37";i:1;s:2:"70";i:2;s:3:"563";i:3;s:3:"446";}}s:14:"guillemotright";a:4:{s:1:"C";s:3:"187";s:2:"WX";s:3:"600";s:1:"N";s:14:"guillemotright";s:1:"B";a:4:{i:0;s:2:"37";i:1;s:2:"70";i:2;s:3:"563";i:3;s:3:"446";}}i:188;a:4:{s:1:"C";s:3:"188";s:2:"WX";s:3:"600";s:1:"N";s:8:"ellipsis";s:1:"B";a:4:{i:0;s:2:"37";i:1;s:3:"-15";i:2;s:3:"563";i:3;s:3:"111";}}s:8:"ellipsis";a:4:{s:1:"C";s:3:"188";s:2:"WX";s:3:"600";s:1:"N";s:8:"ellipsis";s:1:"B";a:4:{i:0;s:2:"37";i:1;s:3:"-15";i:2;s:3:"563";i:3;s:3:"111";}}i:189;a:4:{s:1:"C";s:3:"189";s:2:"WX";s:3:"600";s:1:"N";s:11:"perthousand";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:3:"-15";i:2;s:3:"600";i:3;s:3:"622";}}s:11:"perthousand";a:4:{s:1:"C";s:3:"189";s:2:"WX";s:3:"600";s:1:"N";s:11:"perthousand";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:3:"-15";i:2;s:3:"600";i:3;s:3:"622";}}i:191;a:4:{s:1:"C";s:3:"191";s:2:"WX";s:3:"600";s:1:"N";s:12:"questiondown";s:1:"B";a:4:{i:0;s:3:"108";i:1;s:4:"-157";i:2;s:3:"471";i:3;s:3:"430";}}s:12:"questiondown";a:4:{s:1:"C";s:3:"191";s:2:"WX";s:3:"600";s:1:"N";s:12:"questiondown";s:1:"B";a:4:{i:0;s:3:"108";i:1;s:4:"-157";i:2;s:3:"471";i:3;s:3:"430";}}i:193;a:4:{s:1:"C";s:3:"193";s:2:"WX";s:3:"600";s:1:"N";s:5:"grave";s:1:"B";a:4:{i:0;s:3:"151";i:1;s:3:"497";i:2;s:3:"378";i:3;s:3:"672";}}s:5:"grave";a:4:{s:1:"C";s:3:"193";s:2:"WX";s:3:"600";s:1:"N";s:5:"grave";s:1:"B";a:4:{i:0;s:3:"151";i:1;s:3:"497";i:2;s:3:"378";i:3;s:3:"672";}}i:194;a:4:{s:1:"C";s:3:"194";s:2:"WX";s:3:"600";s:1:"N";s:5:"acute";s:1:"B";a:4:{i:0;s:3:"242";i:1;s:3:"497";i:2;s:3:"469";i:3;s:3:"672";}}s:5:"acute";a:4:{s:1:"C";s:3:"194";s:2:"WX";s:3:"600";s:1:"N";s:5:"acute";s:1:"B";a:4:{i:0;s:3:"242";i:1;s:3:"497";i:2;s:3:"469";i:3;s:3:"672";}}i:195;a:4:{s:1:"C";s:3:"195";s:2:"WX";s:3:"600";s:1:"N";s:10:"circumflex";s:1:"B";a:4:{i:0;s:3:"124";i:1;s:3:"477";i:2;s:3:"476";i:3;s:3:"654";}}s:10:"circumflex";a:4:{s:1:"C";s:3:"195";s:2:"WX";s:3:"600";s:1:"N";s:10:"circumflex";s:1:"B";a:4:{i:0;s:3:"124";i:1;s:3:"477";i:2;s:3:"476";i:3;s:3:"654";}}i:196;a:4:{s:1:"C";s:3:"196";s:2:"WX";s:3:"600";s:1:"N";s:5:"tilde";s:1:"B";a:4:{i:0;s:3:"105";i:1;s:3:"489";i:2;s:3:"503";i:3;s:3:"606";}}s:5:"tilde";a:4:{s:1:"C";s:3:"196";s:2:"WX";s:3:"600";s:1:"N";s:5:"tilde";s:1:"B";a:4:{i:0;s:3:"105";i:1;s:3:"489";i:2;s:3:"503";i:3;s:3:"606";}}i:197;a:4:{s:1:"C";s:3:"197";s:2:"WX";s:3:"600";s:1:"N";s:6:"macron";s:1:"B";a:4:{i:0;s:3:"120";i:1;s:3:"525";i:2;s:3:"480";i:3;s:3:"565";}}s:6:"macron";a:4:{s:1:"C";s:3:"197";s:2:"WX";s:3:"600";s:1:"N";s:6:"macron";s:1:"B";a:4:{i:0;s:3:"120";i:1;s:3:"525";i:2;s:3:"480";i:3;s:3:"565";}}i:198;a:4:{s:1:"C";s:3:"198";s:2:"WX";s:3:"600";s:1:"N";s:5:"breve";s:1:"B";a:4:{i:0;s:3:"153";i:1;s:3:"501";i:2;s:3:"447";i:3;s:3:"609";}}s:5:"breve";a:4:{s:1:"C";s:3:"198";s:2:"WX";s:3:"600";s:1:"N";s:5:"breve";s:1:"B";a:4:{i:0;s:3:"153";i:1;s:3:"501";i:2;s:3:"447";i:3;s:3:"609";}}i:199;a:4:{s:1:"C";s:3:"199";s:2:"WX";s:3:"600";s:1:"N";s:9:"dotaccent";s:1:"B";a:4:{i:0;s:3:"249";i:1;s:3:"537";i:2;s:3:"352";i:3;s:3:"640";}}s:9:"dotaccent";a:4:{s:1:"C";s:3:"199";s:2:"WX";s:3:"600";s:1:"N";s:9:"dotaccent";s:1:"B";a:4:{i:0;s:3:"249";i:1;s:3:"537";i:2;s:3:"352";i:3;s:3:"640";}}i:200;a:4:{s:1:"C";s:3:"200";s:2:"WX";s:3:"600";s:1:"N";s:8:"dieresis";s:1:"B";a:4:{i:0;s:3:"148";i:1;s:3:"537";i:2;s:3:"453";i:3;s:3:"640";}}s:8:"dieresis";a:4:{s:1:"C";s:3:"200";s:2:"WX";s:3:"600";s:1:"N";s:8:"dieresis";s:1:"B";a:4:{i:0;s:3:"148";i:1;s:3:"537";i:2;s:3:"453";i:3;s:3:"640";}}i:202;a:4:{s:1:"C";s:3:"202";s:2:"WX";s:3:"600";s:1:"N";s:4:"ring";s:1:"B";a:4:{i:0;s:3:"218";i:1;s:3:"463";i:2;s:3:"382";i:3;s:3:"627";}}s:4:"ring";a:4:{s:1:"C";s:3:"202";s:2:"WX";s:3:"600";s:1:"N";s:4:"ring";s:1:"B";a:4:{i:0;s:3:"218";i:1;s:3:"463";i:2;s:3:"382";i:3;s:3:"627";}}i:203;a:4:{s:1:"C";s:3:"203";s:2:"WX";s:3:"600";s:1:"N";s:7:"cedilla";s:1:"B";a:4:{i:0;s:3:"224";i:1;s:4:"-151";i:2;s:3:"362";i:3;s:2:"10";}}s:7:"cedilla";a:4:{s:1:"C";s:3:"203";s:2:"WX";s:3:"600";s:1:"N";s:7:"cedilla";s:1:"B";a:4:{i:0;s:3:"224";i:1;s:4:"-151";i:2;s:3:"362";i:3;s:2:"10";}}i:205;a:4:{s:1:"C";s:3:"205";s:2:"WX";s:3:"600";s:1:"N";s:12:"hungarumlaut";s:1:"B";a:4:{i:0;s:3:"133";i:1;s:3:"497";i:2;s:3:"540";i:3;s:3:"672";}}s:12:"hungarumlaut";a:4:{s:1:"C";s:3:"205";s:2:"WX";s:3:"600";s:1:"N";s:12:"hungarumlaut";s:1:"B";a:4:{i:0;s:3:"133";i:1;s:3:"497";i:2;s:3:"540";i:3;s:3:"672";}}i:206;a:4:{s:1:"C";s:3:"206";s:2:"WX";s:3:"600";s:1:"N";s:6:"ogonek";s:1:"B";a:4:{i:0;s:3:"211";i:1;s:4:"-172";i:2;s:3:"407";i:3;s:1:"4";}}s:6:"ogonek";a:4:{s:1:"C";s:3:"206";s:2:"WX";s:3:"600";s:1:"N";s:6:"ogonek";s:1:"B";a:4:{i:0;s:3:"211";i:1;s:4:"-172";i:2;s:3:"407";i:3;s:1:"4";}}i:207;a:4:{s:1:"C";s:3:"207";s:2:"WX";s:3:"600";s:1:"N";s:5:"caron";s:1:"B";a:4:{i:0;s:3:"124";i:1;s:3:"492";i:2;s:3:"476";i:3;s:3:"669";}}s:5:"caron";a:4:{s:1:"C";s:3:"207";s:2:"WX";s:3:"600";s:1:"N";s:5:"caron";s:1:"B";a:4:{i:0;s:3:"124";i:1;s:3:"492";i:2;s:3:"476";i:3;s:3:"669";}}i:208;a:4:{s:1:"C";s:3:"208";s:2:"WX";s:3:"600";s:1:"N";s:6:"emdash";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"231";i:2;s:3:"600";i:3;s:3:"285";}}s:6:"emdash";a:4:{s:1:"C";s:3:"208";s:2:"WX";s:3:"600";s:1:"N";s:6:"emdash";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"231";i:2;s:3:"600";i:3;s:3:"285";}}i:225;a:4:{s:1:"C";s:3:"225";s:2:"WX";s:3:"600";s:1:"N";s:2:"AE";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:1:"0";i:2;s:3:"550";i:3;s:3:"562";}}s:2:"AE";a:4:{s:1:"C";s:3:"225";s:2:"WX";s:3:"600";s:1:"N";s:2:"AE";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:1:"0";i:2;s:3:"550";i:3;s:3:"562";}}i:227;a:4:{s:1:"C";s:3:"227";s:2:"WX";s:3:"600";s:1:"N";s:11:"ordfeminine";s:1:"B";a:4:{i:0;s:3:"156";i:1;s:3:"249";i:2;s:3:"442";i:3;s:3:"580";}}s:11:"ordfeminine";a:4:{s:1:"C";s:3:"227";s:2:"WX";s:3:"600";s:1:"N";s:11:"ordfeminine";s:1:"B";a:4:{i:0;s:3:"156";i:1;s:3:"249";i:2;s:3:"442";i:3;s:3:"580";}}i:232;a:4:{s:1:"C";s:3:"232";s:2:"WX";s:3:"600";s:1:"N";s:6:"Lslash";s:1:"B";a:4:{i:0;s:2:"47";i:1;s:1:"0";i:2;s:3:"554";i:3;s:3:"562";}}s:6:"Lslash";a:4:{s:1:"C";s:3:"232";s:2:"WX";s:3:"600";s:1:"N";s:6:"Lslash";s:1:"B";a:4:{i:0;s:2:"47";i:1;s:1:"0";i:2;s:3:"554";i:3;s:3:"562";}}i:233;a:4:{s:1:"C";s:3:"233";s:2:"WX";s:3:"600";s:1:"N";s:6:"Oslash";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:3:"-80";i:2;s:3:"557";i:3;s:3:"629";}}s:6:"Oslash";a:4:{s:1:"C";s:3:"233";s:2:"WX";s:3:"600";s:1:"N";s:6:"Oslash";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:3:"-80";i:2;s:3:"557";i:3;s:3:"629";}}i:234;a:4:{s:1:"C";s:3:"234";s:2:"WX";s:3:"600";s:1:"N";s:2:"OE";s:1:"B";a:4:{i:0;s:1:"7";i:1;s:1:"0";i:2;s:3:"567";i:3;s:3:"562";}}s:2:"OE";a:4:{s:1:"C";s:3:"234";s:2:"WX";s:3:"600";s:1:"N";s:2:"OE";s:1:"B";a:4:{i:0;s:1:"7";i:1;s:1:"0";i:2;s:3:"567";i:3;s:3:"562";}}i:235;a:4:{s:1:"C";s:3:"235";s:2:"WX";s:3:"600";s:1:"N";s:12:"ordmasculine";s:1:"B";a:4:{i:0;s:3:"157";i:1;s:3:"249";i:2;s:3:"443";i:3;s:3:"580";}}s:12:"ordmasculine";a:4:{s:1:"C";s:3:"235";s:2:"WX";s:3:"600";s:1:"N";s:12:"ordmasculine";s:1:"B";a:4:{i:0;s:3:"157";i:1;s:3:"249";i:2;s:3:"443";i:3;s:3:"580";}}i:241;a:4:{s:1:"C";s:3:"241";s:2:"WX";s:3:"600";s:1:"N";s:2:"ae";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:3:"-15";i:2;s:3:"570";i:3;s:3:"441";}}s:2:"ae";a:4:{s:1:"C";s:3:"241";s:2:"WX";s:3:"600";s:1:"N";s:2:"ae";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:3:"-15";i:2;s:3:"570";i:3;s:3:"441";}}i:245;a:4:{s:1:"C";s:3:"245";s:2:"WX";s:3:"600";s:1:"N";s:8:"dotlessi";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:1:"0";i:2;s:3:"505";i:3;s:3:"426";}}s:8:"dotlessi";a:4:{s:1:"C";s:3:"245";s:2:"WX";s:3:"600";s:1:"N";s:8:"dotlessi";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:1:"0";i:2;s:3:"505";i:3;s:3:"426";}}i:248;a:4:{s:1:"C";s:3:"248";s:2:"WX";s:3:"600";s:1:"N";s:6:"lslash";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:1:"0";i:2;s:3:"505";i:3;s:3:"629";}}s:6:"lslash";a:4:{s:1:"C";s:3:"248";s:2:"WX";s:3:"600";s:1:"N";s:6:"lslash";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:1:"0";i:2;s:3:"505";i:3;s:3:"629";}}i:249;a:4:{s:1:"C";s:3:"249";s:2:"WX";s:3:"600";s:1:"N";s:6:"oslash";s:1:"B";a:4:{i:0;s:2:"62";i:1;s:3:"-80";i:2;s:3:"538";i:3;s:3:"506";}}s:6:"oslash";a:4:{s:1:"C";s:3:"249";s:2:"WX";s:3:"600";s:1:"N";s:6:"oslash";s:1:"B";a:4:{i:0;s:2:"62";i:1;s:3:"-80";i:2;s:3:"538";i:3;s:3:"506";}}i:250;a:4:{s:1:"C";s:3:"250";s:2:"WX";s:3:"600";s:1:"N";s:2:"oe";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:3:"-15";i:2;s:3:"559";i:3;s:3:"441";}}s:2:"oe";a:4:{s:1:"C";s:3:"250";s:2:"WX";s:3:"600";s:1:"N";s:2:"oe";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:3:"-15";i:2;s:3:"559";i:3;s:3:"441";}}i:251;a:4:{s:1:"C";s:3:"251";s:2:"WX";s:3:"600";s:1:"N";s:10:"germandbls";s:1:"B";a:4:{i:0;s:2:"48";i:1;s:3:"-15";i:2;s:3:"588";i:3;s:3:"629";}}s:10:"germandbls";a:4:{s:1:"C";s:3:"251";s:2:"WX";s:3:"600";s:1:"N";s:10:"germandbls";s:1:"B";a:4:{i:0;s:2:"48";i:1;s:3:"-15";i:2;s:3:"588";i:3;s:3:"629";}}s:9:"Idieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"Idieresis";s:1:"B";a:4:{i:0;s:2:"96";i:1;s:1:"0";i:2;s:3:"504";i:3;s:3:"753";}}s:6:"eacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"eacute";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:3:"-15";i:2;s:3:"548";i:3;s:3:"672";}}s:6:"abreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"abreve";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:3:"-15";i:2;s:3:"559";i:3;s:3:"609";}}s:13:"uhungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:13:"uhungarumlaut";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:3:"-15";i:2;s:3:"580";i:3;s:3:"672";}}s:6:"ecaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"ecaron";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:3:"-15";i:2;s:3:"548";i:3;s:3:"669";}}s:9:"Ydieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"Ydieresis";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:1:"0";i:2;s:3:"576";i:3;s:3:"753";}}s:6:"divide";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"divide";s:1:"B";a:4:{i:0;s:2:"87";i:1;s:2:"48";i:2;s:3:"513";i:3;s:3:"467";}}s:6:"Yacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Yacute";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:1:"0";i:2;s:3:"576";i:3;s:3:"805";}}s:11:"Acircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"Acircumflex";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:1:"0";i:2;s:3:"597";i:3;s:3:"787";}}s:6:"aacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"aacute";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:3:"-15";i:2;s:3:"559";i:3;s:3:"672";}}s:11:"Ucircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"Ucircumflex";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:3:"-18";i:2;s:3:"583";i:3;s:3:"787";}}s:6:"yacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"yacute";s:1:"B";a:4:{i:0;s:1:"7";i:1;s:4:"-157";i:2;s:3:"592";i:3;s:3:"672";}}s:12:"scommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"scommaaccent";s:1:"B";a:4:{i:0;s:2:"80";i:1;s:4:"-250";i:2;s:3:"513";i:3;s:3:"441";}}s:11:"ecircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"ecircumflex";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:3:"-15";i:2;s:3:"548";i:3;s:3:"654";}}s:5:"Uring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:5:"Uring";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:3:"-18";i:2;s:3:"583";i:3;s:3:"760";}}s:9:"Udieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"Udieresis";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:3:"-18";i:2;s:3:"583";i:3;s:3:"753";}}s:7:"aogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"aogonek";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:4:"-172";i:2;s:3:"587";i:3;s:3:"441";}}s:6:"Uacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Uacute";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:3:"-18";i:2;s:3:"583";i:3;s:3:"805";}}s:7:"uogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"uogonek";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:4:"-172";i:2;s:3:"590";i:3;s:3:"426";}}s:9:"Edieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"Edieresis";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:1:"0";i:2;s:3:"550";i:3;s:3:"753";}}s:6:"Dcroat";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Dcroat";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:1:"0";i:2;s:3:"574";i:3;s:3:"562";}}s:11:"commaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"commaaccent";s:1:"B";a:4:{i:0;s:3:"198";i:1;s:4:"-250";i:2;s:3:"335";i:3;s:3:"-58";}}s:9:"copyright";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"copyright";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"-18";i:2;s:3:"600";i:3;s:3:"580";}}s:7:"Emacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"Emacron";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:1:"0";i:2;s:3:"550";i:3;s:3:"698";}}s:6:"ccaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"ccaron";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:3:"-15";i:2;s:3:"529";i:3;s:3:"669";}}s:5:"aring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:5:"aring";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:3:"-15";i:2;s:3:"559";i:3;s:3:"627";}}s:12:"Ncommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"Ncommaaccent";s:1:"B";a:4:{i:0;s:1:"7";i:1;s:4:"-250";i:2;s:3:"593";i:3;s:3:"562";}}s:6:"lacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"lacute";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:1:"0";i:2;s:3:"505";i:3;s:3:"805";}}s:6:"agrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"agrave";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:3:"-15";i:2;s:3:"559";i:3;s:3:"672";}}s:12:"Tcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"Tcommaaccent";s:1:"B";a:4:{i:0;s:2:"38";i:1;s:4:"-250";i:2;s:3:"563";i:3;s:3:"562";}}s:6:"Cacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Cacute";s:1:"B";a:4:{i:0;s:2:"41";i:1;s:3:"-18";i:2;s:3:"540";i:3;s:3:"805";}}s:6:"atilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"atilde";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:3:"-15";i:2;s:3:"559";i:3;s:3:"606";}}s:10:"Edotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:10:"Edotaccent";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:1:"0";i:2;s:3:"550";i:3;s:3:"753";}}s:6:"scaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"scaron";s:1:"B";a:4:{i:0;s:2:"80";i:1;s:3:"-15";i:2;s:3:"513";i:3;s:3:"669";}}s:8:"scedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:8:"scedilla";s:1:"B";a:4:{i:0;s:2:"80";i:1;s:4:"-151";i:2;s:3:"513";i:3;s:3:"441";}}s:6:"iacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"iacute";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:1:"0";i:2;s:3:"505";i:3;s:3:"672";}}s:7:"lozenge";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"lozenge";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:1:"0";i:2;s:3:"443";i:3;s:3:"706";}}s:6:"Rcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Rcaron";s:1:"B";a:4:{i:0;s:2:"38";i:1;s:1:"0";i:2;s:3:"588";i:3;s:3:"802";}}s:12:"Gcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"Gcommaaccent";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:4:"-250";i:2;s:3:"575";i:3;s:3:"580";}}s:11:"ucircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"ucircumflex";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:3:"-15";i:2;s:3:"562";i:3;s:3:"654";}}s:11:"acircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"acircumflex";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:3:"-15";i:2;s:3:"559";i:3;s:3:"654";}}s:7:"Amacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"Amacron";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:1:"0";i:2;s:3:"597";i:3;s:3:"698";}}s:6:"rcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"rcaron";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:1:"0";i:2;s:3:"559";i:3;s:3:"669";}}s:8:"ccedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:8:"ccedilla";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:4:"-151";i:2;s:3:"529";i:3;s:3:"441";}}s:10:"Zdotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:10:"Zdotaccent";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"514";i:3;s:3:"753";}}s:5:"Thorn";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:5:"Thorn";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:1:"0";i:2;s:3:"538";i:3;s:3:"562";}}s:7:"Omacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"Omacron";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:3:"-18";i:2;s:3:"557";i:3;s:3:"698";}}s:6:"Racute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Racute";s:1:"B";a:4:{i:0;s:2:"38";i:1;s:1:"0";i:2;s:3:"588";i:3;s:3:"805";}}s:6:"Sacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Sacute";s:1:"B";a:4:{i:0;s:2:"72";i:1;s:3:"-20";i:2;s:3:"529";i:3;s:3:"805";}}s:6:"dcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"dcaron";s:1:"B";a:4:{i:0;s:2:"45";i:1;s:3:"-15";i:2;s:3:"715";i:3;s:3:"629";}}s:7:"Umacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"Umacron";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:3:"-18";i:2;s:3:"583";i:3;s:3:"698";}}s:5:"uring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:5:"uring";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:3:"-15";i:2;s:3:"562";i:3;s:3:"627";}}s:13:"threesuperior";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:13:"threesuperior";s:1:"B";a:4:{i:0;s:3:"155";i:1;s:3:"240";i:2;s:3:"406";i:3;s:3:"622";}}s:6:"Ograve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Ograve";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:3:"-18";i:2;s:3:"557";i:3;s:3:"805";}}s:6:"Agrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Agrave";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:1:"0";i:2;s:3:"597";i:3;s:3:"805";}}s:6:"Abreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Abreve";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:1:"0";i:2;s:3:"597";i:3;s:3:"732";}}s:8:"multiply";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:8:"multiply";s:1:"B";a:4:{i:0;s:2:"87";i:1;s:2:"43";i:2;s:3:"515";i:3;s:3:"470";}}s:6:"uacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"uacute";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:3:"-15";i:2;s:3:"562";i:3;s:3:"672";}}s:6:"Tcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Tcaron";s:1:"B";a:4:{i:0;s:2:"38";i:1;s:1:"0";i:2;s:3:"563";i:3;s:3:"802";}}s:11:"partialdiff";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"partialdiff";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:3:"-38";i:2;s:3:"459";i:3;s:3:"710";}}s:9:"ydieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"ydieresis";s:1:"B";a:4:{i:0;s:1:"7";i:1;s:4:"-157";i:2;s:3:"592";i:3;s:3:"620";}}s:6:"Nacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Nacute";s:1:"B";a:4:{i:0;s:1:"7";i:1;s:3:"-13";i:2;s:3:"593";i:3;s:3:"805";}}s:11:"icircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"icircumflex";s:1:"B";a:4:{i:0;s:2:"94";i:1;s:1:"0";i:2;s:3:"505";i:3;s:3:"654";}}s:11:"Ecircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"Ecircumflex";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:1:"0";i:2;s:3:"550";i:3;s:3:"787";}}s:9:"adieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"adieresis";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:3:"-15";i:2;s:3:"559";i:3;s:3:"620";}}s:9:"edieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"edieresis";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:3:"-15";i:2;s:3:"548";i:3;s:3:"620";}}s:6:"cacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"cacute";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:3:"-15";i:2;s:3:"529";i:3;s:3:"672";}}s:6:"nacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"nacute";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"575";i:3;s:3:"672";}}s:7:"umacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"umacron";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:3:"-15";i:2;s:3:"562";i:3;s:3:"565";}}s:6:"Ncaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Ncaron";s:1:"B";a:4:{i:0;s:1:"7";i:1;s:3:"-13";i:2;s:3:"593";i:3;s:3:"802";}}s:6:"Iacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Iacute";s:1:"B";a:4:{i:0;s:2:"96";i:1;s:1:"0";i:2;s:3:"504";i:3;s:3:"805";}}s:9:"plusminus";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"plusminus";s:1:"B";a:4:{i:0;s:2:"87";i:1;s:2:"44";i:2;s:3:"513";i:3;s:3:"558";}}s:9:"brokenbar";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"brokenbar";s:1:"B";a:4:{i:0;s:3:"275";i:1;s:4:"-175";i:2;s:3:"326";i:3;s:3:"675";}}s:10:"registered";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:10:"registered";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"-18";i:2;s:3:"600";i:3;s:3:"580";}}s:6:"Gbreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Gbreve";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:3:"-18";i:2;s:3:"575";i:3;s:3:"732";}}s:10:"Idotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:10:"Idotaccent";s:1:"B";a:4:{i:0;s:2:"96";i:1;s:1:"0";i:2;s:3:"504";i:3;s:3:"753";}}s:9:"summation";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"summation";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:3:"-10";i:2;s:3:"585";i:3;s:3:"706";}}s:6:"Egrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Egrave";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:1:"0";i:2;s:3:"550";i:3;s:3:"805";}}s:6:"racute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"racute";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:1:"0";i:2;s:3:"559";i:3;s:3:"672";}}s:7:"omacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"omacron";s:1:"B";a:4:{i:0;s:2:"62";i:1;s:3:"-15";i:2;s:3:"538";i:3;s:3:"565";}}s:6:"Zacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Zacute";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"514";i:3;s:3:"805";}}s:6:"Zcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Zcaron";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"514";i:3;s:3:"802";}}s:12:"greaterequal";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"greaterequal";s:1:"B";a:4:{i:0;s:2:"98";i:1;s:1:"0";i:2;s:3:"502";i:3;s:3:"710";}}s:3:"Eth";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:3:"Eth";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:1:"0";i:2;s:3:"574";i:3;s:3:"562";}}s:8:"Ccedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:8:"Ccedilla";s:1:"B";a:4:{i:0;s:2:"41";i:1;s:4:"-151";i:2;s:3:"540";i:3;s:3:"580";}}s:12:"lcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"lcommaaccent";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:4:"-250";i:2;s:3:"505";i:3;s:3:"629";}}s:6:"tcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"tcaron";s:1:"B";a:4:{i:0;s:2:"87";i:1;s:3:"-15";i:2;s:3:"530";i:3;s:3:"717";}}s:7:"eogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"eogonek";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:4:"-172";i:2;s:3:"548";i:3;s:3:"441";}}s:7:"Uogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"Uogonek";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:4:"-172";i:2;s:3:"583";i:3;s:3:"562";}}s:6:"Aacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Aacute";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:1:"0";i:2;s:3:"597";i:3;s:3:"805";}}s:9:"Adieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"Adieresis";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:1:"0";i:2;s:3:"597";i:3;s:3:"753";}}s:6:"egrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"egrave";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:3:"-15";i:2;s:3:"548";i:3;s:3:"672";}}s:6:"zacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"zacute";s:1:"B";a:4:{i:0;s:2:"99";i:1;s:1:"0";i:2;s:3:"502";i:3;s:3:"672";}}s:7:"iogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"iogonek";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:4:"-172";i:2;s:3:"505";i:3;s:3:"657";}}s:6:"Oacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Oacute";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:3:"-18";i:2;s:3:"557";i:3;s:3:"805";}}s:6:"oacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"oacute";s:1:"B";a:4:{i:0;s:2:"62";i:1;s:3:"-15";i:2;s:3:"538";i:3;s:3:"672";}}s:7:"amacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"amacron";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:3:"-15";i:2;s:3:"559";i:3;s:3:"565";}}s:6:"sacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"sacute";s:1:"B";a:4:{i:0;s:2:"80";i:1;s:3:"-15";i:2;s:3:"513";i:3;s:3:"672";}}s:9:"idieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"idieresis";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:1:"0";i:2;s:3:"505";i:3;s:3:"620";}}s:11:"Ocircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"Ocircumflex";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:3:"-18";i:2;s:3:"557";i:3;s:3:"787";}}s:6:"Ugrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Ugrave";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:3:"-18";i:2;s:3:"583";i:3;s:3:"805";}}s:5:"Delta";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:5:"Delta";s:1:"B";a:4:{i:0;s:1:"6";i:1;s:1:"0";i:2;s:3:"598";i:3;s:3:"688";}}s:5:"thorn";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:5:"thorn";s:1:"B";a:4:{i:0;s:2:"-6";i:1;s:4:"-157";i:2;s:3:"555";i:3;s:3:"629";}}s:11:"twosuperior";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"twosuperior";s:1:"B";a:4:{i:0;s:3:"177";i:1;s:3:"249";i:2;s:3:"424";i:3;s:3:"622";}}s:9:"Odieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"Odieresis";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:3:"-18";i:2;s:3:"557";i:3;s:3:"753";}}s:2:"mu";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:2:"mu";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:4:"-157";i:2;s:3:"562";i:3;s:3:"426";}}s:6:"igrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"igrave";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:1:"0";i:2;s:3:"505";i:3;s:3:"672";}}s:13:"ohungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:13:"ohungarumlaut";s:1:"B";a:4:{i:0;s:2:"62";i:1;s:3:"-15";i:2;s:3:"580";i:3;s:3:"672";}}s:7:"Eogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"Eogonek";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:4:"-172";i:2;s:3:"561";i:3;s:3:"562";}}s:6:"dcroat";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"dcroat";s:1:"B";a:4:{i:0;s:2:"45";i:1;s:3:"-15";i:2;s:3:"591";i:3;s:3:"629";}}s:13:"threequarters";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:13:"threequarters";s:1:"B";a:4:{i:0;s:1:"8";i:1;s:3:"-56";i:2;s:3:"593";i:3;s:3:"666";}}s:8:"Scedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:8:"Scedilla";s:1:"B";a:4:{i:0;s:2:"72";i:1;s:4:"-151";i:2;s:3:"529";i:3;s:3:"580";}}s:6:"lcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"lcaron";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:1:"0";i:2;s:3:"533";i:3;s:3:"629";}}s:12:"Kcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"Kcommaaccent";s:1:"B";a:4:{i:0;s:2:"38";i:1;s:4:"-250";i:2;s:3:"582";i:3;s:3:"562";}}s:6:"Lacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Lacute";s:1:"B";a:4:{i:0;s:2:"47";i:1;s:1:"0";i:2;s:3:"554";i:3;s:3:"805";}}s:9:"trademark";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"trademark";s:1:"B";a:4:{i:0;s:3:"-23";i:1;s:3:"263";i:2;s:3:"623";i:3;s:3:"562";}}s:10:"edotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:10:"edotaccent";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:3:"-15";i:2;s:3:"548";i:3;s:3:"620";}}s:6:"Igrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Igrave";s:1:"B";a:4:{i:0;s:2:"96";i:1;s:1:"0";i:2;s:3:"504";i:3;s:3:"805";}}s:7:"Imacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"Imacron";s:1:"B";a:4:{i:0;s:2:"96";i:1;s:1:"0";i:2;s:3:"504";i:3;s:3:"698";}}s:6:"Lcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Lcaron";s:1:"B";a:4:{i:0;s:2:"47";i:1;s:1:"0";i:2;s:3:"554";i:3;s:3:"562";}}s:7:"onehalf";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"onehalf";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"-57";i:2;s:3:"611";i:3;s:3:"665";}}s:9:"lessequal";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"lessequal";s:1:"B";a:4:{i:0;s:2:"98";i:1;s:1:"0";i:2;s:3:"502";i:3;s:3:"710";}}s:11:"ocircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"ocircumflex";s:1:"B";a:4:{i:0;s:2:"62";i:1;s:3:"-15";i:2;s:3:"538";i:3;s:3:"654";}}s:6:"ntilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"ntilde";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"575";i:3;s:3:"606";}}s:13:"Uhungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:13:"Uhungarumlaut";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:3:"-18";i:2;s:3:"590";i:3;s:3:"805";}}s:6:"Eacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Eacute";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:1:"0";i:2;s:3:"550";i:3;s:3:"805";}}s:7:"emacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"emacron";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:3:"-15";i:2;s:3:"548";i:3;s:3:"565";}}s:6:"gbreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"gbreve";s:1:"B";a:4:{i:0;s:2:"45";i:1;s:4:"-157";i:2;s:3:"566";i:3;s:3:"609";}}s:10:"onequarter";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:10:"onequarter";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"-57";i:2;s:3:"600";i:3;s:3:"665";}}s:6:"Scaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Scaron";s:1:"B";a:4:{i:0;s:2:"72";i:1;s:3:"-20";i:2;s:3:"529";i:3;s:3:"802";}}s:12:"Scommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"Scommaaccent";s:1:"B";a:4:{i:0;s:2:"72";i:1;s:4:"-250";i:2;s:3:"529";i:3;s:3:"580";}}s:13:"Ohungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:13:"Ohungarumlaut";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:3:"-18";i:2;s:3:"580";i:3;s:3:"805";}}s:6:"degree";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"degree";s:1:"B";a:4:{i:0;s:3:"123";i:1;s:3:"269";i:2;s:3:"477";i:3;s:3:"622";}}s:6:"ograve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"ograve";s:1:"B";a:4:{i:0;s:2:"62";i:1;s:3:"-15";i:2;s:3:"538";i:3;s:3:"672";}}s:6:"Ccaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Ccaron";s:1:"B";a:4:{i:0;s:2:"41";i:1;s:3:"-18";i:2;s:3:"540";i:3;s:3:"802";}}s:6:"ugrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"ugrave";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:3:"-15";i:2;s:3:"562";i:3;s:3:"672";}}s:7:"radical";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"radical";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:3:"-15";i:2;s:3:"597";i:3;s:3:"792";}}s:6:"Dcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Dcaron";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:1:"0";i:2;s:3:"574";i:3;s:3:"802";}}s:12:"rcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"rcommaaccent";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:4:"-250";i:2;s:3:"559";i:3;s:3:"441";}}s:6:"Ntilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Ntilde";s:1:"B";a:4:{i:0;s:1:"7";i:1;s:3:"-13";i:2;s:3:"593";i:3;s:3:"729";}}s:6:"otilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"otilde";s:1:"B";a:4:{i:0;s:2:"62";i:1;s:3:"-15";i:2;s:3:"538";i:3;s:3:"606";}}s:12:"Rcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"Rcommaaccent";s:1:"B";a:4:{i:0;s:2:"38";i:1;s:4:"-250";i:2;s:3:"588";i:3;s:3:"562";}}s:12:"Lcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"Lcommaaccent";s:1:"B";a:4:{i:0;s:2:"47";i:1;s:4:"-250";i:2;s:3:"554";i:3;s:3:"562";}}s:6:"Atilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Atilde";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:1:"0";i:2;s:3:"597";i:3;s:3:"729";}}s:7:"Aogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"Aogonek";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:4:"-172";i:2;s:3:"608";i:3;s:3:"562";}}s:5:"Aring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:5:"Aring";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:1:"0";i:2;s:3:"597";i:3;s:3:"750";}}s:6:"Otilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Otilde";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:3:"-18";i:2;s:3:"557";i:3;s:3:"729";}}s:10:"zdotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:10:"zdotaccent";s:1:"B";a:4:{i:0;s:2:"99";i:1;s:1:"0";i:2;s:3:"502";i:3;s:3:"620";}}s:6:"Ecaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"Ecaron";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:1:"0";i:2;s:3:"550";i:3;s:3:"802";}}s:7:"Iogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"Iogonek";s:1:"B";a:4:{i:0;s:2:"96";i:1;s:4:"-172";i:2;s:3:"504";i:3;s:3:"562";}}s:12:"kcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"kcommaaccent";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:4:"-250";i:2;s:3:"580";i:3;s:3:"629";}}s:5:"minus";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:5:"minus";s:1:"B";a:4:{i:0;s:2:"80";i:1;s:3:"232";i:2;s:3:"520";i:3;s:3:"283";}}s:11:"Icircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"Icircumflex";s:1:"B";a:4:{i:0;s:2:"96";i:1;s:1:"0";i:2;s:3:"504";i:3;s:3:"787";}}s:6:"ncaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"ncaron";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"575";i:3;s:3:"669";}}s:12:"tcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"tcommaaccent";s:1:"B";a:4:{i:0;s:2:"87";i:1;s:4:"-250";i:2;s:3:"530";i:3;s:3:"561";}}s:10:"logicalnot";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:10:"logicalnot";s:1:"B";a:4:{i:0;s:2:"87";i:1;s:3:"108";i:2;s:3:"513";i:3;s:3:"369";}}s:9:"odieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"odieresis";s:1:"B";a:4:{i:0;s:2:"62";i:1;s:3:"-15";i:2;s:3:"538";i:3;s:3:"620";}}s:9:"udieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"udieresis";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:3:"-15";i:2;s:3:"562";i:3;s:3:"620";}}s:8:"notequal";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:8:"notequal";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:3:"-16";i:2;s:3:"540";i:3;s:3:"529";}}s:12:"gcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"gcommaaccent";s:1:"B";a:4:{i:0;s:2:"45";i:1;s:4:"-157";i:2;s:3:"566";i:3;s:3:"708";}}s:3:"eth";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:3:"eth";s:1:"B";a:4:{i:0;s:2:"62";i:1;s:3:"-15";i:2;s:3:"538";i:3;s:3:"629";}}s:6:"zcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:6:"zcaron";s:1:"B";a:4:{i:0;s:2:"99";i:1;s:1:"0";i:2;s:3:"502";i:3;s:3:"669";}}s:12:"ncommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:12:"ncommaaccent";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:4:"-250";i:2;s:3:"575";i:3;s:3:"441";}}s:11:"onesuperior";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:11:"onesuperior";s:1:"B";a:4:{i:0;s:3:"172";i:1;s:3:"249";i:2;s:3:"428";i:3;s:3:"622";}}s:7:"imacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:7:"imacron";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:1:"0";i:2;s:3:"505";i:3;s:3:"565";}}s:4:"Euro";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:4:"Euro";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:1:"0";i:3;s:1:"0";}}}s:9:"_version_";i:1;} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Helvetica-Bold.afm b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Helvetica-Bold.afm
new file mode 100755
index 00000000..9b466fd0
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Helvetica-Bold.afm
@@ -0,0 +1 @@
+a:22:{s:8:"FontName";s:14:"Helvetica-Bold";s:8:"FullName";s:14:"Helvetica Bold";s:10:"FamilyName";s:9:"Helvetica";s:6:"Weight";s:4:"Bold";s:11:"ItalicAngle";s:1:"0";s:12:"IsFixedPitch";s:5:"false";s:12:"CharacterSet";s:13:"ExtendedRoman";s:8:"FontBBox";a:4:{i:0;s:4:"-170";i:1;s:4:"-228";i:2;s:4:"1003";i:3;s:3:"962";}s:17:"UnderlinePosition";s:4:"-100";s:18:"UnderlineThickness";s:2:"50";s:7:"Version";s:7:"002.000";s:14:"EncodingScheme";s:21:"AdobeStandardEncoding";s:9:"CapHeight";s:3:"718";s:7:"XHeight";s:3:"532";s:8:"Ascender";s:3:"718";s:9:"Descender";s:4:"-207";s:5:"StdHW";s:3:"118";s:5:"StdVW";s:3:"140";s:16:"StartCharMetrics";s:3:"315";s:1:"C";a:464:{i:32;a:4:{s:1:"C";s:2:"32";s:2:"WX";s:3:"278";s:1:"N";s:5:"space";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:1:"0";i:3;s:1:"0";}}s:5:"space";a:4:{s:1:"C";s:2:"32";s:2:"WX";s:3:"278";s:1:"N";s:5:"space";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:1:"0";i:3;s:1:"0";}}i:33;a:4:{s:1:"C";s:2:"33";s:2:"WX";s:3:"333";s:1:"N";s:6:"exclam";s:1:"B";a:4:{i:0;s:2:"90";i:1;s:1:"0";i:2;s:3:"244";i:3;s:3:"718";}}s:6:"exclam";a:4:{s:1:"C";s:2:"33";s:2:"WX";s:3:"333";s:1:"N";s:6:"exclam";s:1:"B";a:4:{i:0;s:2:"90";i:1;s:1:"0";i:2;s:3:"244";i:3;s:3:"718";}}i:34;a:4:{s:1:"C";s:2:"34";s:2:"WX";s:3:"474";s:1:"N";s:8:"quotedbl";s:1:"B";a:4:{i:0;s:2:"98";i:1;s:3:"447";i:2;s:3:"376";i:3;s:3:"718";}}s:8:"quotedbl";a:4:{s:1:"C";s:2:"34";s:2:"WX";s:3:"474";s:1:"N";s:8:"quotedbl";s:1:"B";a:4:{i:0;s:2:"98";i:1;s:3:"447";i:2;s:3:"376";i:3;s:3:"718";}}i:35;a:4:{s:1:"C";s:2:"35";s:2:"WX";s:3:"556";s:1:"N";s:10:"numbersign";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:1:"0";i:2;s:3:"538";i:3;s:3:"698";}}s:10:"numbersign";a:4:{s:1:"C";s:2:"35";s:2:"WX";s:3:"556";s:1:"N";s:10:"numbersign";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:1:"0";i:2;s:3:"538";i:3;s:3:"698";}}i:36;a:4:{s:1:"C";s:2:"36";s:2:"WX";s:3:"556";s:1:"N";s:6:"dollar";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:4:"-115";i:2;s:3:"523";i:3;s:3:"775";}}s:6:"dollar";a:4:{s:1:"C";s:2:"36";s:2:"WX";s:3:"556";s:1:"N";s:6:"dollar";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:4:"-115";i:2;s:3:"523";i:3;s:3:"775";}}i:37;a:4:{s:1:"C";s:2:"37";s:2:"WX";s:3:"889";s:1:"N";s:7:"percent";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:3:"-19";i:2;s:3:"861";i:3;s:3:"710";}}s:7:"percent";a:4:{s:1:"C";s:2:"37";s:2:"WX";s:3:"889";s:1:"N";s:7:"percent";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:3:"-19";i:2;s:3:"861";i:3;s:3:"710";}}i:38;a:4:{s:1:"C";s:2:"38";s:2:"WX";s:3:"722";s:1:"N";s:9:"ampersand";s:1:"B";a:4:{i:0;s:2:"54";i:1;s:3:"-19";i:2;s:3:"701";i:3;s:3:"718";}}s:9:"ampersand";a:4:{s:1:"C";s:2:"38";s:2:"WX";s:3:"722";s:1:"N";s:9:"ampersand";s:1:"B";a:4:{i:0;s:2:"54";i:1;s:3:"-19";i:2;s:3:"701";i:3;s:3:"718";}}i:39;a:4:{s:1:"C";s:2:"39";s:2:"WX";s:3:"278";s:1:"N";s:10:"quoteright";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:3:"445";i:2;s:3:"209";i:3;s:3:"718";}}s:10:"quoteright";a:4:{s:1:"C";s:2:"39";s:2:"WX";s:3:"278";s:1:"N";s:10:"quoteright";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:3:"445";i:2;s:3:"209";i:3;s:3:"718";}}i:40;a:4:{s:1:"C";s:2:"40";s:2:"WX";s:3:"333";s:1:"N";s:9:"parenleft";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:4:"-208";i:2;s:3:"314";i:3;s:3:"734";}}s:9:"parenleft";a:4:{s:1:"C";s:2:"40";s:2:"WX";s:3:"333";s:1:"N";s:9:"parenleft";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:4:"-208";i:2;s:3:"314";i:3;s:3:"734";}}i:41;a:4:{s:1:"C";s:2:"41";s:2:"WX";s:3:"333";s:1:"N";s:10:"parenright";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:4:"-208";i:2;s:3:"298";i:3;s:3:"734";}}s:10:"parenright";a:4:{s:1:"C";s:2:"41";s:2:"WX";s:3:"333";s:1:"N";s:10:"parenright";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:4:"-208";i:2;s:3:"298";i:3;s:3:"734";}}i:42;a:4:{s:1:"C";s:2:"42";s:2:"WX";s:3:"389";s:1:"N";s:8:"asterisk";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:3:"387";i:2;s:3:"362";i:3;s:3:"718";}}s:8:"asterisk";a:4:{s:1:"C";s:2:"42";s:2:"WX";s:3:"389";s:1:"N";s:8:"asterisk";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:3:"387";i:2;s:3:"362";i:3;s:3:"718";}}i:43;a:4:{s:1:"C";s:2:"43";s:2:"WX";s:3:"584";s:1:"N";s:4:"plus";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:1:"0";i:2;s:3:"544";i:3;s:3:"506";}}s:4:"plus";a:4:{s:1:"C";s:2:"43";s:2:"WX";s:3:"584";s:1:"N";s:4:"plus";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:1:"0";i:2;s:3:"544";i:3;s:3:"506";}}i:44;a:4:{s:1:"C";s:2:"44";s:2:"WX";s:3:"278";s:1:"N";s:5:"comma";s:1:"B";a:4:{i:0;s:2:"64";i:1;s:4:"-168";i:2;s:3:"214";i:3;s:3:"146";}}s:5:"comma";a:4:{s:1:"C";s:2:"44";s:2:"WX";s:3:"278";s:1:"N";s:5:"comma";s:1:"B";a:4:{i:0;s:2:"64";i:1;s:4:"-168";i:2;s:3:"214";i:3;s:3:"146";}}i:45;a:4:{s:1:"C";s:2:"45";s:2:"WX";s:3:"333";s:1:"N";s:6:"hyphen";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:3:"215";i:2;s:3:"306";i:3;s:3:"345";}}s:6:"hyphen";a:4:{s:1:"C";s:2:"45";s:2:"WX";s:3:"333";s:1:"N";s:6:"hyphen";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:3:"215";i:2;s:3:"306";i:3;s:3:"345";}}i:46;a:4:{s:1:"C";s:2:"46";s:2:"WX";s:3:"278";s:1:"N";s:6:"period";s:1:"B";a:4:{i:0;s:2:"64";i:1;s:1:"0";i:2;s:3:"214";i:3;s:3:"146";}}s:6:"period";a:4:{s:1:"C";s:2:"46";s:2:"WX";s:3:"278";s:1:"N";s:6:"period";s:1:"B";a:4:{i:0;s:2:"64";i:1;s:1:"0";i:2;s:3:"214";i:3;s:3:"146";}}i:47;a:4:{s:1:"C";s:2:"47";s:2:"WX";s:3:"278";s:1:"N";s:5:"slash";s:1:"B";a:4:{i:0;s:3:"-33";i:1;s:3:"-19";i:2;s:3:"311";i:3;s:3:"737";}}s:5:"slash";a:4:{s:1:"C";s:2:"47";s:2:"WX";s:3:"278";s:1:"N";s:5:"slash";s:1:"B";a:4:{i:0;s:3:"-33";i:1;s:3:"-19";i:2;s:3:"311";i:3;s:3:"737";}}i:48;a:4:{s:1:"C";s:2:"48";s:2:"WX";s:3:"556";s:1:"N";s:4:"zero";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:3:"-19";i:2;s:3:"524";i:3;s:3:"710";}}s:4:"zero";a:4:{s:1:"C";s:2:"48";s:2:"WX";s:3:"556";s:1:"N";s:4:"zero";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:3:"-19";i:2;s:3:"524";i:3;s:3:"710";}}i:49;a:4:{s:1:"C";s:2:"49";s:2:"WX";s:3:"556";s:1:"N";s:3:"one";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"378";i:3;s:3:"710";}}s:3:"one";a:4:{s:1:"C";s:2:"49";s:2:"WX";s:3:"556";s:1:"N";s:3:"one";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"378";i:3;s:3:"710";}}i:50;a:4:{s:1:"C";s:2:"50";s:2:"WX";s:3:"556";s:1:"N";s:3:"two";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"511";i:3;s:3:"710";}}s:3:"two";a:4:{s:1:"C";s:2:"50";s:2:"WX";s:3:"556";s:1:"N";s:3:"two";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"511";i:3;s:3:"710";}}i:51;a:4:{s:1:"C";s:2:"51";s:2:"WX";s:3:"556";s:1:"N";s:5:"three";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:3:"-19";i:2;s:3:"516";i:3;s:3:"710";}}s:5:"three";a:4:{s:1:"C";s:2:"51";s:2:"WX";s:3:"556";s:1:"N";s:5:"three";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:3:"-19";i:2;s:3:"516";i:3;s:3:"710";}}i:52;a:4:{s:1:"C";s:2:"52";s:2:"WX";s:3:"556";s:1:"N";s:4:"four";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:1:"0";i:2;s:3:"526";i:3;s:3:"710";}}s:4:"four";a:4:{s:1:"C";s:2:"52";s:2:"WX";s:3:"556";s:1:"N";s:4:"four";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:1:"0";i:2;s:3:"526";i:3;s:3:"710";}}i:53;a:4:{s:1:"C";s:2:"53";s:2:"WX";s:3:"556";s:1:"N";s:4:"five";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:3:"-19";i:2;s:3:"516";i:3;s:3:"698";}}s:4:"five";a:4:{s:1:"C";s:2:"53";s:2:"WX";s:3:"556";s:1:"N";s:4:"five";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:3:"-19";i:2;s:3:"516";i:3;s:3:"698";}}i:54;a:4:{s:1:"C";s:2:"54";s:2:"WX";s:3:"556";s:1:"N";s:3:"six";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:3:"-19";i:2;s:3:"520";i:3;s:3:"710";}}s:3:"six";a:4:{s:1:"C";s:2:"54";s:2:"WX";s:3:"556";s:1:"N";s:3:"six";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:3:"-19";i:2;s:3:"520";i:3;s:3:"710";}}i:55;a:4:{s:1:"C";s:2:"55";s:2:"WX";s:3:"556";s:1:"N";s:5:"seven";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:1:"0";i:2;s:3:"528";i:3;s:3:"698";}}s:5:"seven";a:4:{s:1:"C";s:2:"55";s:2:"WX";s:3:"556";s:1:"N";s:5:"seven";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:1:"0";i:2;s:3:"528";i:3;s:3:"698";}}i:56;a:4:{s:1:"C";s:2:"56";s:2:"WX";s:3:"556";s:1:"N";s:5:"eight";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:3:"-19";i:2;s:3:"524";i:3;s:3:"710";}}s:5:"eight";a:4:{s:1:"C";s:2:"56";s:2:"WX";s:3:"556";s:1:"N";s:5:"eight";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:3:"-19";i:2;s:3:"524";i:3;s:3:"710";}}i:57;a:4:{s:1:"C";s:2:"57";s:2:"WX";s:3:"556";s:1:"N";s:4:"nine";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"-19";i:2;s:3:"522";i:3;s:3:"710";}}s:4:"nine";a:4:{s:1:"C";s:2:"57";s:2:"WX";s:3:"556";s:1:"N";s:4:"nine";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"-19";i:2;s:3:"522";i:3;s:3:"710";}}i:58;a:4:{s:1:"C";s:2:"58";s:2:"WX";s:3:"333";s:1:"N";s:5:"colon";s:1:"B";a:4:{i:0;s:2:"92";i:1;s:1:"0";i:2;s:3:"242";i:3;s:3:"512";}}s:5:"colon";a:4:{s:1:"C";s:2:"58";s:2:"WX";s:3:"333";s:1:"N";s:5:"colon";s:1:"B";a:4:{i:0;s:2:"92";i:1;s:1:"0";i:2;s:3:"242";i:3;s:3:"512";}}i:59;a:4:{s:1:"C";s:2:"59";s:2:"WX";s:3:"333";s:1:"N";s:9:"semicolon";s:1:"B";a:4:{i:0;s:2:"92";i:1;s:4:"-168";i:2;s:3:"242";i:3;s:3:"512";}}s:9:"semicolon";a:4:{s:1:"C";s:2:"59";s:2:"WX";s:3:"333";s:1:"N";s:9:"semicolon";s:1:"B";a:4:{i:0;s:2:"92";i:1;s:4:"-168";i:2;s:3:"242";i:3;s:3:"512";}}i:60;a:4:{s:1:"C";s:2:"60";s:2:"WX";s:3:"584";s:1:"N";s:4:"less";s:1:"B";a:4:{i:0;s:2:"38";i:1;s:2:"-8";i:2;s:3:"546";i:3;s:3:"514";}}s:4:"less";a:4:{s:1:"C";s:2:"60";s:2:"WX";s:3:"584";s:1:"N";s:4:"less";s:1:"B";a:4:{i:0;s:2:"38";i:1;s:2:"-8";i:2;s:3:"546";i:3;s:3:"514";}}i:61;a:4:{s:1:"C";s:2:"61";s:2:"WX";s:3:"584";s:1:"N";s:5:"equal";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:2:"87";i:2;s:3:"544";i:3;s:3:"419";}}s:5:"equal";a:4:{s:1:"C";s:2:"61";s:2:"WX";s:3:"584";s:1:"N";s:5:"equal";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:2:"87";i:2;s:3:"544";i:3;s:3:"419";}}i:62;a:4:{s:1:"C";s:2:"62";s:2:"WX";s:3:"584";s:1:"N";s:7:"greater";s:1:"B";a:4:{i:0;s:2:"38";i:1;s:2:"-8";i:2;s:3:"546";i:3;s:3:"514";}}s:7:"greater";a:4:{s:1:"C";s:2:"62";s:2:"WX";s:3:"584";s:1:"N";s:7:"greater";s:1:"B";a:4:{i:0;s:2:"38";i:1;s:2:"-8";i:2;s:3:"546";i:3;s:3:"514";}}i:63;a:4:{s:1:"C";s:2:"63";s:2:"WX";s:3:"611";s:1:"N";s:8:"question";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:1:"0";i:2;s:3:"556";i:3;s:3:"727";}}s:8:"question";a:4:{s:1:"C";s:2:"63";s:2:"WX";s:3:"611";s:1:"N";s:8:"question";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:1:"0";i:2;s:3:"556";i:3;s:3:"727";}}i:64;a:4:{s:1:"C";s:2:"64";s:2:"WX";s:3:"975";s:1:"N";s:2:"at";s:1:"B";a:4:{i:0;s:3:"118";i:1;s:3:"-19";i:2;s:3:"856";i:3;s:3:"737";}}s:2:"at";a:4:{s:1:"C";s:2:"64";s:2:"WX";s:3:"975";s:1:"N";s:2:"at";s:1:"B";a:4:{i:0;s:3:"118";i:1;s:3:"-19";i:2;s:3:"856";i:3;s:3:"737";}}i:65;a:4:{s:1:"C";s:2:"65";s:2:"WX";s:3:"722";s:1:"N";s:1:"A";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"702";i:3;s:3:"718";}}s:1:"A";a:4:{s:1:"C";s:2:"65";s:2:"WX";s:3:"722";s:1:"N";s:1:"A";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"702";i:3;s:3:"718";}}i:66;a:4:{s:1:"C";s:2:"66";s:2:"WX";s:3:"722";s:1:"N";s:1:"B";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"669";i:3;s:3:"718";}}s:1:"B";a:4:{s:1:"C";s:2:"66";s:2:"WX";s:3:"722";s:1:"N";s:1:"B";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"669";i:3;s:3:"718";}}i:67;a:4:{s:1:"C";s:2:"67";s:2:"WX";s:3:"722";s:1:"N";s:1:"C";s:1:"B";a:4:{i:0;s:2:"44";i:1;s:3:"-19";i:2;s:3:"684";i:3;s:3:"737";}}s:1:"C";a:4:{s:1:"C";s:2:"67";s:2:"WX";s:3:"722";s:1:"N";s:1:"C";s:1:"B";a:4:{i:0;s:2:"44";i:1;s:3:"-19";i:2;s:3:"684";i:3;s:3:"737";}}i:68;a:4:{s:1:"C";s:2:"68";s:2:"WX";s:3:"722";s:1:"N";s:1:"D";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"685";i:3;s:3:"718";}}s:1:"D";a:4:{s:1:"C";s:2:"68";s:2:"WX";s:3:"722";s:1:"N";s:1:"D";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"685";i:3;s:3:"718";}}i:69;a:4:{s:1:"C";s:2:"69";s:2:"WX";s:3:"667";s:1:"N";s:1:"E";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"621";i:3;s:3:"718";}}s:1:"E";a:4:{s:1:"C";s:2:"69";s:2:"WX";s:3:"667";s:1:"N";s:1:"E";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"621";i:3;s:3:"718";}}i:70;a:4:{s:1:"C";s:2:"70";s:2:"WX";s:3:"611";s:1:"N";s:1:"F";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"587";i:3;s:3:"718";}}s:1:"F";a:4:{s:1:"C";s:2:"70";s:2:"WX";s:3:"611";s:1:"N";s:1:"F";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"587";i:3;s:3:"718";}}i:71;a:4:{s:1:"C";s:2:"71";s:2:"WX";s:3:"778";s:1:"N";s:1:"G";s:1:"B";a:4:{i:0;s:2:"44";i:1;s:3:"-19";i:2;s:3:"713";i:3;s:3:"737";}}s:1:"G";a:4:{s:1:"C";s:2:"71";s:2:"WX";s:3:"778";s:1:"N";s:1:"G";s:1:"B";a:4:{i:0;s:2:"44";i:1;s:3:"-19";i:2;s:3:"713";i:3;s:3:"737";}}i:72;a:4:{s:1:"C";s:2:"72";s:2:"WX";s:3:"722";s:1:"N";s:1:"H";s:1:"B";a:4:{i:0;s:2:"71";i:1;s:1:"0";i:2;s:3:"651";i:3;s:3:"718";}}s:1:"H";a:4:{s:1:"C";s:2:"72";s:2:"WX";s:3:"722";s:1:"N";s:1:"H";s:1:"B";a:4:{i:0;s:2:"71";i:1;s:1:"0";i:2;s:3:"651";i:3;s:3:"718";}}i:73;a:4:{s:1:"C";s:2:"73";s:2:"WX";s:3:"278";s:1:"N";s:1:"I";s:1:"B";a:4:{i:0;s:2:"64";i:1;s:1:"0";i:2;s:3:"214";i:3;s:3:"718";}}s:1:"I";a:4:{s:1:"C";s:2:"73";s:2:"WX";s:3:"278";s:1:"N";s:1:"I";s:1:"B";a:4:{i:0;s:2:"64";i:1;s:1:"0";i:2;s:3:"214";i:3;s:3:"718";}}i:74;a:4:{s:1:"C";s:2:"74";s:2:"WX";s:3:"556";s:1:"N";s:1:"J";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:3:"-18";i:2;s:3:"484";i:3;s:3:"718";}}s:1:"J";a:4:{s:1:"C";s:2:"74";s:2:"WX";s:3:"556";s:1:"N";s:1:"J";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:3:"-18";i:2;s:3:"484";i:3;s:3:"718";}}i:75;a:4:{s:1:"C";s:2:"75";s:2:"WX";s:3:"722";s:1:"N";s:1:"K";s:1:"B";a:4:{i:0;s:2:"87";i:1;s:1:"0";i:2;s:3:"722";i:3;s:3:"718";}}s:1:"K";a:4:{s:1:"C";s:2:"75";s:2:"WX";s:3:"722";s:1:"N";s:1:"K";s:1:"B";a:4:{i:0;s:2:"87";i:1;s:1:"0";i:2;s:3:"722";i:3;s:3:"718";}}i:76;a:4:{s:1:"C";s:2:"76";s:2:"WX";s:3:"611";s:1:"N";s:1:"L";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"583";i:3;s:3:"718";}}s:1:"L";a:4:{s:1:"C";s:2:"76";s:2:"WX";s:3:"611";s:1:"N";s:1:"L";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"583";i:3;s:3:"718";}}i:77;a:4:{s:1:"C";s:2:"77";s:2:"WX";s:3:"833";s:1:"N";s:1:"M";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"765";i:3;s:3:"718";}}s:1:"M";a:4:{s:1:"C";s:2:"77";s:2:"WX";s:3:"833";s:1:"N";s:1:"M";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"765";i:3;s:3:"718";}}i:78;a:4:{s:1:"C";s:2:"78";s:2:"WX";s:3:"722";s:1:"N";s:1:"N";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"654";i:3;s:3:"718";}}s:1:"N";a:4:{s:1:"C";s:2:"78";s:2:"WX";s:3:"722";s:1:"N";s:1:"N";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"654";i:3;s:3:"718";}}i:79;a:4:{s:1:"C";s:2:"79";s:2:"WX";s:3:"778";s:1:"N";s:1:"O";s:1:"B";a:4:{i:0;s:2:"44";i:1;s:3:"-19";i:2;s:3:"734";i:3;s:3:"737";}}s:1:"O";a:4:{s:1:"C";s:2:"79";s:2:"WX";s:3:"778";s:1:"N";s:1:"O";s:1:"B";a:4:{i:0;s:2:"44";i:1;s:3:"-19";i:2;s:3:"734";i:3;s:3:"737";}}i:80;a:4:{s:1:"C";s:2:"80";s:2:"WX";s:3:"667";s:1:"N";s:1:"P";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"627";i:3;s:3:"718";}}s:1:"P";a:4:{s:1:"C";s:2:"80";s:2:"WX";s:3:"667";s:1:"N";s:1:"P";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"627";i:3;s:3:"718";}}i:81;a:4:{s:1:"C";s:2:"81";s:2:"WX";s:3:"778";s:1:"N";s:1:"Q";s:1:"B";a:4:{i:0;s:2:"44";i:1;s:3:"-52";i:2;s:3:"737";i:3;s:3:"737";}}s:1:"Q";a:4:{s:1:"C";s:2:"81";s:2:"WX";s:3:"778";s:1:"N";s:1:"Q";s:1:"B";a:4:{i:0;s:2:"44";i:1;s:3:"-52";i:2;s:3:"737";i:3;s:3:"737";}}i:82;a:4:{s:1:"C";s:2:"82";s:2:"WX";s:3:"722";s:1:"N";s:1:"R";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"677";i:3;s:3:"718";}}s:1:"R";a:4:{s:1:"C";s:2:"82";s:2:"WX";s:3:"722";s:1:"N";s:1:"R";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"677";i:3;s:3:"718";}}i:83;a:4:{s:1:"C";s:2:"83";s:2:"WX";s:3:"667";s:1:"N";s:1:"S";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:3:"-19";i:2;s:3:"629";i:3;s:3:"737";}}s:1:"S";a:4:{s:1:"C";s:2:"83";s:2:"WX";s:3:"667";s:1:"N";s:1:"S";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:3:"-19";i:2;s:3:"629";i:3;s:3:"737";}}i:84;a:4:{s:1:"C";s:2:"84";s:2:"WX";s:3:"611";s:1:"N";s:1:"T";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"598";i:3;s:3:"718";}}s:1:"T";a:4:{s:1:"C";s:2:"84";s:2:"WX";s:3:"611";s:1:"N";s:1:"T";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"598";i:3;s:3:"718";}}i:85;a:4:{s:1:"C";s:2:"85";s:2:"WX";s:3:"722";s:1:"N";s:1:"U";s:1:"B";a:4:{i:0;s:2:"72";i:1;s:3:"-19";i:2;s:3:"651";i:3;s:3:"718";}}s:1:"U";a:4:{s:1:"C";s:2:"85";s:2:"WX";s:3:"722";s:1:"N";s:1:"U";s:1:"B";a:4:{i:0;s:2:"72";i:1;s:3:"-19";i:2;s:3:"651";i:3;s:3:"718";}}i:86;a:4:{s:1:"C";s:2:"86";s:2:"WX";s:3:"667";s:1:"N";s:1:"V";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:1:"0";i:2;s:3:"648";i:3;s:3:"718";}}s:1:"V";a:4:{s:1:"C";s:2:"86";s:2:"WX";s:3:"667";s:1:"N";s:1:"V";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:1:"0";i:2;s:3:"648";i:3;s:3:"718";}}i:87;a:4:{s:1:"C";s:2:"87";s:2:"WX";s:3:"944";s:1:"N";s:1:"W";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"929";i:3;s:3:"718";}}s:1:"W";a:4:{s:1:"C";s:2:"87";s:2:"WX";s:3:"944";s:1:"N";s:1:"W";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"929";i:3;s:3:"718";}}i:88;a:4:{s:1:"C";s:2:"88";s:2:"WX";s:3:"667";s:1:"N";s:1:"X";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"653";i:3;s:3:"718";}}s:1:"X";a:4:{s:1:"C";s:2:"88";s:2:"WX";s:3:"667";s:1:"N";s:1:"X";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"653";i:3;s:3:"718";}}i:89;a:4:{s:1:"C";s:2:"89";s:2:"WX";s:3:"667";s:1:"N";s:1:"Y";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:1:"0";i:2;s:3:"653";i:3;s:3:"718";}}s:1:"Y";a:4:{s:1:"C";s:2:"89";s:2:"WX";s:3:"667";s:1:"N";s:1:"Y";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:1:"0";i:2;s:3:"653";i:3;s:3:"718";}}i:90;a:4:{s:1:"C";s:2:"90";s:2:"WX";s:3:"611";s:1:"N";s:1:"Z";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:1:"0";i:2;s:3:"586";i:3;s:3:"718";}}s:1:"Z";a:4:{s:1:"C";s:2:"90";s:2:"WX";s:3:"611";s:1:"N";s:1:"Z";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:1:"0";i:2;s:3:"586";i:3;s:3:"718";}}i:91;a:4:{s:1:"C";s:2:"91";s:2:"WX";s:3:"333";s:1:"N";s:11:"bracketleft";s:1:"B";a:4:{i:0;s:2:"63";i:1;s:4:"-196";i:2;s:3:"309";i:3;s:3:"722";}}s:11:"bracketleft";a:4:{s:1:"C";s:2:"91";s:2:"WX";s:3:"333";s:1:"N";s:11:"bracketleft";s:1:"B";a:4:{i:0;s:2:"63";i:1;s:4:"-196";i:2;s:3:"309";i:3;s:3:"722";}}i:92;a:4:{s:1:"C";s:2:"92";s:2:"WX";s:3:"278";s:1:"N";s:9:"backslash";s:1:"B";a:4:{i:0;s:3:"-33";i:1;s:3:"-19";i:2;s:3:"311";i:3;s:3:"737";}}s:9:"backslash";a:4:{s:1:"C";s:2:"92";s:2:"WX";s:3:"278";s:1:"N";s:9:"backslash";s:1:"B";a:4:{i:0;s:3:"-33";i:1;s:3:"-19";i:2;s:3:"311";i:3;s:3:"737";}}i:93;a:4:{s:1:"C";s:2:"93";s:2:"WX";s:3:"333";s:1:"N";s:12:"bracketright";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:4:"-196";i:2;s:3:"270";i:3;s:3:"722";}}s:12:"bracketright";a:4:{s:1:"C";s:2:"93";s:2:"WX";s:3:"333";s:1:"N";s:12:"bracketright";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:4:"-196";i:2;s:3:"270";i:3;s:3:"722";}}i:94;a:4:{s:1:"C";s:2:"94";s:2:"WX";s:3:"584";s:1:"N";s:11:"asciicircum";s:1:"B";a:4:{i:0;s:2:"62";i:1;s:3:"323";i:2;s:3:"522";i:3;s:3:"698";}}s:11:"asciicircum";a:4:{s:1:"C";s:2:"94";s:2:"WX";s:3:"584";s:1:"N";s:11:"asciicircum";s:1:"B";a:4:{i:0;s:2:"62";i:1;s:3:"323";i:2;s:3:"522";i:3;s:3:"698";}}i:95;a:4:{s:1:"C";s:2:"95";s:2:"WX";s:3:"556";s:1:"N";s:10:"underscore";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:4:"-125";i:2;s:3:"556";i:3;s:3:"-75";}}s:10:"underscore";a:4:{s:1:"C";s:2:"95";s:2:"WX";s:3:"556";s:1:"N";s:10:"underscore";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:4:"-125";i:2;s:3:"556";i:3;s:3:"-75";}}i:96;a:4:{s:1:"C";s:2:"96";s:2:"WX";s:3:"278";s:1:"N";s:9:"quoteleft";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:3:"454";i:2;s:3:"209";i:3;s:3:"727";}}s:9:"quoteleft";a:4:{s:1:"C";s:2:"96";s:2:"WX";s:3:"278";s:1:"N";s:9:"quoteleft";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:3:"454";i:2;s:3:"209";i:3;s:3:"727";}}i:97;a:4:{s:1:"C";s:2:"97";s:2:"WX";s:3:"556";s:1:"N";s:1:"a";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:3:"-14";i:2;s:3:"527";i:3;s:3:"546";}}s:1:"a";a:4:{s:1:"C";s:2:"97";s:2:"WX";s:3:"556";s:1:"N";s:1:"a";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:3:"-14";i:2;s:3:"527";i:3;s:3:"546";}}i:98;a:4:{s:1:"C";s:2:"98";s:2:"WX";s:3:"611";s:1:"N";s:1:"b";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:3:"-14";i:2;s:3:"578";i:3;s:3:"718";}}s:1:"b";a:4:{s:1:"C";s:2:"98";s:2:"WX";s:3:"611";s:1:"N";s:1:"b";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:3:"-14";i:2;s:3:"578";i:3;s:3:"718";}}i:99;a:4:{s:1:"C";s:2:"99";s:2:"WX";s:3:"556";s:1:"N";s:1:"c";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"524";i:3;s:3:"546";}}s:1:"c";a:4:{s:1:"C";s:2:"99";s:2:"WX";s:3:"556";s:1:"N";s:1:"c";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"524";i:3;s:3:"546";}}i:100;a:4:{s:1:"C";s:3:"100";s:2:"WX";s:3:"611";s:1:"N";s:1:"d";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"551";i:3;s:3:"718";}}s:1:"d";a:4:{s:1:"C";s:3:"100";s:2:"WX";s:3:"611";s:1:"N";s:1:"d";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"551";i:3;s:3:"718";}}i:101;a:4:{s:1:"C";s:3:"101";s:2:"WX";s:3:"556";s:1:"N";s:1:"e";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:3:"-14";i:2;s:3:"528";i:3;s:3:"546";}}s:1:"e";a:4:{s:1:"C";s:3:"101";s:2:"WX";s:3:"556";s:1:"N";s:1:"e";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:3:"-14";i:2;s:3:"528";i:3;s:3:"546";}}i:102;a:5:{s:1:"C";s:3:"102";s:2:"WX";s:3:"333";s:1:"N";s:1:"f";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:1:"0";i:2;s:3:"318";i:3;s:3:"727";}s:1:"L";a:2:{i:0;s:1:"l";i:1;s:2:"fl";}}s:1:"f";a:5:{s:1:"C";s:3:"102";s:2:"WX";s:3:"333";s:1:"N";s:1:"f";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:1:"0";i:2;s:3:"318";i:3;s:3:"727";}s:1:"L";a:2:{i:0;s:1:"l";i:1;s:2:"fl";}}i:103;a:4:{s:1:"C";s:3:"103";s:2:"WX";s:3:"611";s:1:"N";s:1:"g";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:4:"-217";i:2;s:3:"553";i:3;s:3:"546";}}s:1:"g";a:4:{s:1:"C";s:3:"103";s:2:"WX";s:3:"611";s:1:"N";s:1:"g";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:4:"-217";i:2;s:3:"553";i:3;s:3:"546";}}i:104;a:4:{s:1:"C";s:3:"104";s:2:"WX";s:3:"611";s:1:"N";s:1:"h";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:1:"0";i:2;s:3:"546";i:3;s:3:"718";}}s:1:"h";a:4:{s:1:"C";s:3:"104";s:2:"WX";s:3:"611";s:1:"N";s:1:"h";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:1:"0";i:2;s:3:"546";i:3;s:3:"718";}}i:105;a:4:{s:1:"C";s:3:"105";s:2:"WX";s:3:"278";s:1:"N";s:1:"i";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"209";i:3;s:3:"725";}}s:1:"i";a:4:{s:1:"C";s:3:"105";s:2:"WX";s:3:"278";s:1:"N";s:1:"i";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"209";i:3;s:3:"725";}}i:106;a:4:{s:1:"C";s:3:"106";s:2:"WX";s:3:"278";s:1:"N";s:1:"j";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:4:"-214";i:2;s:3:"209";i:3;s:3:"725";}}s:1:"j";a:4:{s:1:"C";s:3:"106";s:2:"WX";s:3:"278";s:1:"N";s:1:"j";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:4:"-214";i:2;s:3:"209";i:3;s:3:"725";}}i:107;a:4:{s:1:"C";s:3:"107";s:2:"WX";s:3:"556";s:1:"N";s:1:"k";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"562";i:3;s:3:"718";}}s:1:"k";a:4:{s:1:"C";s:3:"107";s:2:"WX";s:3:"556";s:1:"N";s:1:"k";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"562";i:3;s:3:"718";}}i:108;a:4:{s:1:"C";s:3:"108";s:2:"WX";s:3:"278";s:1:"N";s:1:"l";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"209";i:3;s:3:"718";}}s:1:"l";a:4:{s:1:"C";s:3:"108";s:2:"WX";s:3:"278";s:1:"N";s:1:"l";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"209";i:3;s:3:"718";}}i:109;a:4:{s:1:"C";s:3:"109";s:2:"WX";s:3:"889";s:1:"N";s:1:"m";s:1:"B";a:4:{i:0;s:2:"64";i:1;s:1:"0";i:2;s:3:"826";i:3;s:3:"546";}}s:1:"m";a:4:{s:1:"C";s:3:"109";s:2:"WX";s:3:"889";s:1:"N";s:1:"m";s:1:"B";a:4:{i:0;s:2:"64";i:1;s:1:"0";i:2;s:3:"826";i:3;s:3:"546";}}i:110;a:4:{s:1:"C";s:3:"110";s:2:"WX";s:3:"611";s:1:"N";s:1:"n";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:1:"0";i:2;s:3:"546";i:3;s:3:"546";}}s:1:"n";a:4:{s:1:"C";s:3:"110";s:2:"WX";s:3:"611";s:1:"N";s:1:"n";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:1:"0";i:2;s:3:"546";i:3;s:3:"546";}}i:111;a:4:{s:1:"C";s:3:"111";s:2:"WX";s:3:"611";s:1:"N";s:1:"o";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"578";i:3;s:3:"546";}}s:1:"o";a:4:{s:1:"C";s:3:"111";s:2:"WX";s:3:"611";s:1:"N";s:1:"o";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"578";i:3;s:3:"546";}}i:112;a:4:{s:1:"C";s:3:"112";s:2:"WX";s:3:"611";s:1:"N";s:1:"p";s:1:"B";a:4:{i:0;s:2:"62";i:1;s:4:"-207";i:2;s:3:"578";i:3;s:3:"546";}}s:1:"p";a:4:{s:1:"C";s:3:"112";s:2:"WX";s:3:"611";s:1:"N";s:1:"p";s:1:"B";a:4:{i:0;s:2:"62";i:1;s:4:"-207";i:2;s:3:"578";i:3;s:3:"546";}}i:113;a:4:{s:1:"C";s:3:"113";s:2:"WX";s:3:"611";s:1:"N";s:1:"q";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:4:"-207";i:2;s:3:"552";i:3;s:3:"546";}}s:1:"q";a:4:{s:1:"C";s:3:"113";s:2:"WX";s:3:"611";s:1:"N";s:1:"q";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:4:"-207";i:2;s:3:"552";i:3;s:3:"546";}}i:114;a:4:{s:1:"C";s:3:"114";s:2:"WX";s:3:"389";s:1:"N";s:1:"r";s:1:"B";a:4:{i:0;s:2:"64";i:1;s:1:"0";i:2;s:3:"373";i:3;s:3:"546";}}s:1:"r";a:4:{s:1:"C";s:3:"114";s:2:"WX";s:3:"389";s:1:"N";s:1:"r";s:1:"B";a:4:{i:0;s:2:"64";i:1;s:1:"0";i:2;s:3:"373";i:3;s:3:"546";}}i:115;a:4:{s:1:"C";s:3:"115";s:2:"WX";s:3:"556";s:1:"N";s:1:"s";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"-14";i:2;s:3:"519";i:3;s:3:"546";}}s:1:"s";a:4:{s:1:"C";s:3:"115";s:2:"WX";s:3:"556";s:1:"N";s:1:"s";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"-14";i:2;s:3:"519";i:3;s:3:"546";}}i:116;a:4:{s:1:"C";s:3:"116";s:2:"WX";s:3:"333";s:1:"N";s:1:"t";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:2:"-6";i:2;s:3:"309";i:3;s:3:"676";}}s:1:"t";a:4:{s:1:"C";s:3:"116";s:2:"WX";s:3:"333";s:1:"N";s:1:"t";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:2:"-6";i:2;s:3:"309";i:3;s:3:"676";}}i:117;a:4:{s:1:"C";s:3:"117";s:2:"WX";s:3:"611";s:1:"N";s:1:"u";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:3:"-14";i:2;s:3:"545";i:3;s:3:"532";}}s:1:"u";a:4:{s:1:"C";s:3:"117";s:2:"WX";s:3:"611";s:1:"N";s:1:"u";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:3:"-14";i:2;s:3:"545";i:3;s:3:"532";}}i:118;a:4:{s:1:"C";s:3:"118";s:2:"WX";s:3:"556";s:1:"N";s:1:"v";s:1:"B";a:4:{i:0;s:2:"13";i:1;s:1:"0";i:2;s:3:"543";i:3;s:3:"532";}}s:1:"v";a:4:{s:1:"C";s:3:"118";s:2:"WX";s:3:"556";s:1:"N";s:1:"v";s:1:"B";a:4:{i:0;s:2:"13";i:1;s:1:"0";i:2;s:3:"543";i:3;s:3:"532";}}i:119;a:4:{s:1:"C";s:3:"119";s:2:"WX";s:3:"778";s:1:"N";s:1:"w";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:1:"0";i:2;s:3:"769";i:3;s:3:"532";}}s:1:"w";a:4:{s:1:"C";s:3:"119";s:2:"WX";s:3:"778";s:1:"N";s:1:"w";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:1:"0";i:2;s:3:"769";i:3;s:3:"532";}}i:120;a:4:{s:1:"C";s:3:"120";s:2:"WX";s:3:"556";s:1:"N";s:1:"x";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:1:"0";i:2;s:3:"541";i:3;s:3:"532";}}s:1:"x";a:4:{s:1:"C";s:3:"120";s:2:"WX";s:3:"556";s:1:"N";s:1:"x";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:1:"0";i:2;s:3:"541";i:3;s:3:"532";}}i:121;a:4:{s:1:"C";s:3:"121";s:2:"WX";s:3:"556";s:1:"N";s:1:"y";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:4:"-214";i:2;s:3:"539";i:3;s:3:"532";}}s:1:"y";a:4:{s:1:"C";s:3:"121";s:2:"WX";s:3:"556";s:1:"N";s:1:"y";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:4:"-214";i:2;s:3:"539";i:3;s:3:"532";}}i:122;a:4:{s:1:"C";s:3:"122";s:2:"WX";s:3:"500";s:1:"N";s:1:"z";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"480";i:3;s:3:"532";}}s:1:"z";a:4:{s:1:"C";s:3:"122";s:2:"WX";s:3:"500";s:1:"N";s:1:"z";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"480";i:3;s:3:"532";}}i:123;a:4:{s:1:"C";s:3:"123";s:2:"WX";s:3:"389";s:1:"N";s:9:"braceleft";s:1:"B";a:4:{i:0;s:2:"48";i:1;s:4:"-196";i:2;s:3:"365";i:3;s:3:"722";}}s:9:"braceleft";a:4:{s:1:"C";s:3:"123";s:2:"WX";s:3:"389";s:1:"N";s:9:"braceleft";s:1:"B";a:4:{i:0;s:2:"48";i:1;s:4:"-196";i:2;s:3:"365";i:3;s:3:"722";}}i:124;a:4:{s:1:"C";s:3:"124";s:2:"WX";s:3:"280";s:1:"N";s:3:"bar";s:1:"B";a:4:{i:0;s:2:"84";i:1;s:4:"-225";i:2;s:3:"196";i:3;s:3:"775";}}s:3:"bar";a:4:{s:1:"C";s:3:"124";s:2:"WX";s:3:"280";s:1:"N";s:3:"bar";s:1:"B";a:4:{i:0;s:2:"84";i:1;s:4:"-225";i:2;s:3:"196";i:3;s:3:"775";}}i:125;a:4:{s:1:"C";s:3:"125";s:2:"WX";s:3:"389";s:1:"N";s:10:"braceright";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:4:"-196";i:2;s:3:"341";i:3;s:3:"722";}}s:10:"braceright";a:4:{s:1:"C";s:3:"125";s:2:"WX";s:3:"389";s:1:"N";s:10:"braceright";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:4:"-196";i:2;s:3:"341";i:3;s:3:"722";}}i:126;a:4:{s:1:"C";s:3:"126";s:2:"WX";s:3:"584";s:1:"N";s:10:"asciitilde";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:3:"163";i:2;s:3:"523";i:3;s:3:"343";}}s:10:"asciitilde";a:4:{s:1:"C";s:3:"126";s:2:"WX";s:3:"584";s:1:"N";s:10:"asciitilde";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:3:"163";i:2;s:3:"523";i:3;s:3:"343";}}i:161;a:4:{s:1:"C";s:3:"161";s:2:"WX";s:3:"333";s:1:"N";s:10:"exclamdown";s:1:"B";a:4:{i:0;s:2:"90";i:1;s:4:"-186";i:2;s:3:"244";i:3;s:3:"532";}}s:10:"exclamdown";a:4:{s:1:"C";s:3:"161";s:2:"WX";s:3:"333";s:1:"N";s:10:"exclamdown";s:1:"B";a:4:{i:0;s:2:"90";i:1;s:4:"-186";i:2;s:3:"244";i:3;s:3:"532";}}i:162;a:4:{s:1:"C";s:3:"162";s:2:"WX";s:3:"556";s:1:"N";s:4:"cent";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:4:"-118";i:2;s:3:"524";i:3;s:3:"628";}}s:4:"cent";a:4:{s:1:"C";s:3:"162";s:2:"WX";s:3:"556";s:1:"N";s:4:"cent";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:4:"-118";i:2;s:3:"524";i:3;s:3:"628";}}i:163;a:4:{s:1:"C";s:3:"163";s:2:"WX";s:3:"556";s:1:"N";s:8:"sterling";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:3:"-16";i:2;s:3:"541";i:3;s:3:"718";}}s:8:"sterling";a:4:{s:1:"C";s:3:"163";s:2:"WX";s:3:"556";s:1:"N";s:8:"sterling";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:3:"-16";i:2;s:3:"541";i:3;s:3:"718";}}i:164;a:4:{s:1:"C";s:3:"164";s:2:"WX";s:3:"167";s:1:"N";s:8:"fraction";s:1:"B";a:4:{i:0;s:4:"-170";i:1;s:3:"-19";i:2;s:3:"336";i:3;s:3:"710";}}s:8:"fraction";a:4:{s:1:"C";s:3:"164";s:2:"WX";s:3:"167";s:1:"N";s:8:"fraction";s:1:"B";a:4:{i:0;s:4:"-170";i:1;s:3:"-19";i:2;s:3:"336";i:3;s:3:"710";}}i:165;a:4:{s:1:"C";s:3:"165";s:2:"WX";s:3:"556";s:1:"N";s:3:"yen";s:1:"B";a:4:{i:0;s:2:"-9";i:1;s:1:"0";i:2;s:3:"565";i:3;s:3:"698";}}s:3:"yen";a:4:{s:1:"C";s:3:"165";s:2:"WX";s:3:"556";s:1:"N";s:3:"yen";s:1:"B";a:4:{i:0;s:2:"-9";i:1;s:1:"0";i:2;s:3:"565";i:3;s:3:"698";}}i:166;a:4:{s:1:"C";s:3:"166";s:2:"WX";s:3:"556";s:1:"N";s:6:"florin";s:1:"B";a:4:{i:0;s:3:"-10";i:1;s:4:"-210";i:2;s:3:"516";i:3;s:3:"737";}}s:6:"florin";a:4:{s:1:"C";s:3:"166";s:2:"WX";s:3:"556";s:1:"N";s:6:"florin";s:1:"B";a:4:{i:0;s:3:"-10";i:1;s:4:"-210";i:2;s:3:"516";i:3;s:3:"737";}}i:167;a:4:{s:1:"C";s:3:"167";s:2:"WX";s:3:"556";s:1:"N";s:7:"section";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:4:"-184";i:2;s:3:"522";i:3;s:3:"727";}}s:7:"section";a:4:{s:1:"C";s:3:"167";s:2:"WX";s:3:"556";s:1:"N";s:7:"section";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:4:"-184";i:2;s:3:"522";i:3;s:3:"727";}}i:168;a:4:{s:1:"C";s:3:"168";s:2:"WX";s:3:"556";s:1:"N";s:8:"currency";s:1:"B";a:4:{i:0;s:2:"-3";i:1;s:2:"76";i:2;s:3:"559";i:3;s:3:"636";}}s:8:"currency";a:4:{s:1:"C";s:3:"168";s:2:"WX";s:3:"556";s:1:"N";s:8:"currency";s:1:"B";a:4:{i:0;s:2:"-3";i:1;s:2:"76";i:2;s:3:"559";i:3;s:3:"636";}}i:169;a:4:{s:1:"C";s:3:"169";s:2:"WX";s:3:"238";s:1:"N";s:11:"quotesingle";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:3:"447";i:2;s:3:"168";i:3;s:3:"718";}}s:11:"quotesingle";a:4:{s:1:"C";s:3:"169";s:2:"WX";s:3:"238";s:1:"N";s:11:"quotesingle";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:3:"447";i:2;s:3:"168";i:3;s:3:"718";}}i:170;a:4:{s:1:"C";s:3:"170";s:2:"WX";s:3:"500";s:1:"N";s:12:"quotedblleft";s:1:"B";a:4:{i:0;s:2:"64";i:1;s:3:"454";i:2;s:3:"436";i:3;s:3:"727";}}s:12:"quotedblleft";a:4:{s:1:"C";s:3:"170";s:2:"WX";s:3:"500";s:1:"N";s:12:"quotedblleft";s:1:"B";a:4:{i:0;s:2:"64";i:1;s:3:"454";i:2;s:3:"436";i:3;s:3:"727";}}i:171;a:4:{s:1:"C";s:3:"171";s:2:"WX";s:3:"556";s:1:"N";s:13:"guillemotleft";s:1:"B";a:4:{i:0;s:2:"88";i:1;s:2:"76";i:2;s:3:"468";i:3;s:3:"484";}}s:13:"guillemotleft";a:4:{s:1:"C";s:3:"171";s:2:"WX";s:3:"556";s:1:"N";s:13:"guillemotleft";s:1:"B";a:4:{i:0;s:2:"88";i:1;s:2:"76";i:2;s:3:"468";i:3;s:3:"484";}}i:172;a:4:{s:1:"C";s:3:"172";s:2:"WX";s:3:"333";s:1:"N";s:13:"guilsinglleft";s:1:"B";a:4:{i:0;s:2:"83";i:1;s:2:"76";i:2;s:3:"250";i:3;s:3:"484";}}s:13:"guilsinglleft";a:4:{s:1:"C";s:3:"172";s:2:"WX";s:3:"333";s:1:"N";s:13:"guilsinglleft";s:1:"B";a:4:{i:0;s:2:"83";i:1;s:2:"76";i:2;s:3:"250";i:3;s:3:"484";}}i:173;a:4:{s:1:"C";s:3:"173";s:2:"WX";s:3:"333";s:1:"N";s:14:"guilsinglright";s:1:"B";a:4:{i:0;s:2:"83";i:1;s:2:"76";i:2;s:3:"250";i:3;s:3:"484";}}s:14:"guilsinglright";a:4:{s:1:"C";s:3:"173";s:2:"WX";s:3:"333";s:1:"N";s:14:"guilsinglright";s:1:"B";a:4:{i:0;s:2:"83";i:1;s:2:"76";i:2;s:3:"250";i:3;s:3:"484";}}i:174;a:4:{s:1:"C";s:3:"174";s:2:"WX";s:3:"611";s:1:"N";s:2:"fi";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:1:"0";i:2;s:3:"542";i:3;s:3:"727";}}s:2:"fi";a:4:{s:1:"C";s:3:"174";s:2:"WX";s:3:"611";s:1:"N";s:2:"fi";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:1:"0";i:2;s:3:"542";i:3;s:3:"727";}}i:175;a:4:{s:1:"C";s:3:"175";s:2:"WX";s:3:"611";s:1:"N";s:2:"fl";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:1:"0";i:2;s:3:"542";i:3;s:3:"727";}}s:2:"fl";a:4:{s:1:"C";s:3:"175";s:2:"WX";s:3:"611";s:1:"N";s:2:"fl";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:1:"0";i:2;s:3:"542";i:3;s:3:"727";}}i:177;a:4:{s:1:"C";s:3:"177";s:2:"WX";s:3:"556";s:1:"N";s:6:"endash";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"227";i:2;s:3:"556";i:3;s:3:"333";}}s:6:"endash";a:4:{s:1:"C";s:3:"177";s:2:"WX";s:3:"556";s:1:"N";s:6:"endash";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"227";i:2;s:3:"556";i:3;s:3:"333";}}i:178;a:4:{s:1:"C";s:3:"178";s:2:"WX";s:3:"556";s:1:"N";s:6:"dagger";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:4:"-171";i:2;s:3:"520";i:3;s:3:"718";}}s:6:"dagger";a:4:{s:1:"C";s:3:"178";s:2:"WX";s:3:"556";s:1:"N";s:6:"dagger";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:4:"-171";i:2;s:3:"520";i:3;s:3:"718";}}i:179;a:4:{s:1:"C";s:3:"179";s:2:"WX";s:3:"556";s:1:"N";s:9:"daggerdbl";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:4:"-171";i:2;s:3:"520";i:3;s:3:"718";}}s:9:"daggerdbl";a:4:{s:1:"C";s:3:"179";s:2:"WX";s:3:"556";s:1:"N";s:9:"daggerdbl";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:4:"-171";i:2;s:3:"520";i:3;s:3:"718";}}i:180;a:4:{s:1:"C";s:3:"180";s:2:"WX";s:3:"278";s:1:"N";s:14:"periodcentered";s:1:"B";a:4:{i:0;s:2:"58";i:1;s:3:"172";i:2;s:3:"220";i:3;s:3:"334";}}s:14:"periodcentered";a:4:{s:1:"C";s:3:"180";s:2:"WX";s:3:"278";s:1:"N";s:14:"periodcentered";s:1:"B";a:4:{i:0;s:2:"58";i:1;s:3:"172";i:2;s:3:"220";i:3;s:3:"334";}}i:182;a:4:{s:1:"C";s:3:"182";s:2:"WX";s:3:"556";s:1:"N";s:9:"paragraph";s:1:"B";a:4:{i:0;s:2:"-8";i:1;s:4:"-191";i:2;s:3:"539";i:3;s:3:"700";}}s:9:"paragraph";a:4:{s:1:"C";s:3:"182";s:2:"WX";s:3:"556";s:1:"N";s:9:"paragraph";s:1:"B";a:4:{i:0;s:2:"-8";i:1;s:4:"-191";i:2;s:3:"539";i:3;s:3:"700";}}i:183;a:4:{s:1:"C";s:3:"183";s:2:"WX";s:3:"350";s:1:"N";s:6:"bullet";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:3:"194";i:2;s:3:"340";i:3;s:3:"524";}}s:6:"bullet";a:4:{s:1:"C";s:3:"183";s:2:"WX";s:3:"350";s:1:"N";s:6:"bullet";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:3:"194";i:2;s:3:"340";i:3;s:3:"524";}}i:184;a:4:{s:1:"C";s:3:"184";s:2:"WX";s:3:"278";s:1:"N";s:14:"quotesinglbase";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:4:"-146";i:2;s:3:"209";i:3;s:3:"127";}}s:14:"quotesinglbase";a:4:{s:1:"C";s:3:"184";s:2:"WX";s:3:"278";s:1:"N";s:14:"quotesinglbase";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:4:"-146";i:2;s:3:"209";i:3;s:3:"127";}}i:185;a:4:{s:1:"C";s:3:"185";s:2:"WX";s:3:"500";s:1:"N";s:12:"quotedblbase";s:1:"B";a:4:{i:0;s:2:"64";i:1;s:4:"-146";i:2;s:3:"436";i:3;s:3:"127";}}s:12:"quotedblbase";a:4:{s:1:"C";s:3:"185";s:2:"WX";s:3:"500";s:1:"N";s:12:"quotedblbase";s:1:"B";a:4:{i:0;s:2:"64";i:1;s:4:"-146";i:2;s:3:"436";i:3;s:3:"127";}}i:186;a:4:{s:1:"C";s:3:"186";s:2:"WX";s:3:"500";s:1:"N";s:13:"quotedblright";s:1:"B";a:4:{i:0;s:2:"64";i:1;s:3:"445";i:2;s:3:"436";i:3;s:3:"718";}}s:13:"quotedblright";a:4:{s:1:"C";s:3:"186";s:2:"WX";s:3:"500";s:1:"N";s:13:"quotedblright";s:1:"B";a:4:{i:0;s:2:"64";i:1;s:3:"445";i:2;s:3:"436";i:3;s:3:"718";}}i:187;a:4:{s:1:"C";s:3:"187";s:2:"WX";s:3:"556";s:1:"N";s:14:"guillemotright";s:1:"B";a:4:{i:0;s:2:"88";i:1;s:2:"76";i:2;s:3:"468";i:3;s:3:"484";}}s:14:"guillemotright";a:4:{s:1:"C";s:3:"187";s:2:"WX";s:3:"556";s:1:"N";s:14:"guillemotright";s:1:"B";a:4:{i:0;s:2:"88";i:1;s:2:"76";i:2;s:3:"468";i:3;s:3:"484";}}i:188;a:4:{s:1:"C";s:3:"188";s:2:"WX";s:4:"1000";s:1:"N";s:8:"ellipsis";s:1:"B";a:4:{i:0;s:2:"92";i:1;s:1:"0";i:2;s:3:"908";i:3;s:3:"146";}}s:8:"ellipsis";a:4:{s:1:"C";s:3:"188";s:2:"WX";s:4:"1000";s:1:"N";s:8:"ellipsis";s:1:"B";a:4:{i:0;s:2:"92";i:1;s:1:"0";i:2;s:3:"908";i:3;s:3:"146";}}i:189;a:4:{s:1:"C";s:3:"189";s:2:"WX";s:4:"1000";s:1:"N";s:11:"perthousand";s:1:"B";a:4:{i:0;s:2:"-3";i:1;s:3:"-19";i:2;s:4:"1003";i:3;s:3:"710";}}s:11:"perthousand";a:4:{s:1:"C";s:3:"189";s:2:"WX";s:4:"1000";s:1:"N";s:11:"perthousand";s:1:"B";a:4:{i:0;s:2:"-3";i:1;s:3:"-19";i:2;s:4:"1003";i:3;s:3:"710";}}i:191;a:4:{s:1:"C";s:3:"191";s:2:"WX";s:3:"611";s:1:"N";s:12:"questiondown";s:1:"B";a:4:{i:0;s:2:"55";i:1;s:4:"-195";i:2;s:3:"551";i:3;s:3:"532";}}s:12:"questiondown";a:4:{s:1:"C";s:3:"191";s:2:"WX";s:3:"611";s:1:"N";s:12:"questiondown";s:1:"B";a:4:{i:0;s:2:"55";i:1;s:4:"-195";i:2;s:3:"551";i:3;s:3:"532";}}i:193;a:4:{s:1:"C";s:3:"193";s:2:"WX";s:3:"333";s:1:"N";s:5:"grave";s:1:"B";a:4:{i:0;s:3:"-23";i:1;s:3:"604";i:2;s:3:"225";i:3;s:3:"750";}}s:5:"grave";a:4:{s:1:"C";s:3:"193";s:2:"WX";s:3:"333";s:1:"N";s:5:"grave";s:1:"B";a:4:{i:0;s:3:"-23";i:1;s:3:"604";i:2;s:3:"225";i:3;s:3:"750";}}i:194;a:4:{s:1:"C";s:3:"194";s:2:"WX";s:3:"333";s:1:"N";s:5:"acute";s:1:"B";a:4:{i:0;s:3:"108";i:1;s:3:"604";i:2;s:3:"356";i:3;s:3:"750";}}s:5:"acute";a:4:{s:1:"C";s:3:"194";s:2:"WX";s:3:"333";s:1:"N";s:5:"acute";s:1:"B";a:4:{i:0;s:3:"108";i:1;s:3:"604";i:2;s:3:"356";i:3;s:3:"750";}}i:195;a:4:{s:1:"C";s:3:"195";s:2:"WX";s:3:"333";s:1:"N";s:10:"circumflex";s:1:"B";a:4:{i:0;s:3:"-10";i:1;s:3:"604";i:2;s:3:"343";i:3;s:3:"750";}}s:10:"circumflex";a:4:{s:1:"C";s:3:"195";s:2:"WX";s:3:"333";s:1:"N";s:10:"circumflex";s:1:"B";a:4:{i:0;s:3:"-10";i:1;s:3:"604";i:2;s:3:"343";i:3;s:3:"750";}}i:196;a:4:{s:1:"C";s:3:"196";s:2:"WX";s:3:"333";s:1:"N";s:5:"tilde";s:1:"B";a:4:{i:0;s:3:"-17";i:1;s:3:"610";i:2;s:3:"350";i:3;s:3:"737";}}s:5:"tilde";a:4:{s:1:"C";s:3:"196";s:2:"WX";s:3:"333";s:1:"N";s:5:"tilde";s:1:"B";a:4:{i:0;s:3:"-17";i:1;s:3:"610";i:2;s:3:"350";i:3;s:3:"737";}}i:197;a:4:{s:1:"C";s:3:"197";s:2:"WX";s:3:"333";s:1:"N";s:6:"macron";s:1:"B";a:4:{i:0;s:2:"-6";i:1;s:3:"604";i:2;s:3:"339";i:3;s:3:"678";}}s:6:"macron";a:4:{s:1:"C";s:3:"197";s:2:"WX";s:3:"333";s:1:"N";s:6:"macron";s:1:"B";a:4:{i:0;s:2:"-6";i:1;s:3:"604";i:2;s:3:"339";i:3;s:3:"678";}}i:198;a:4:{s:1:"C";s:3:"198";s:2:"WX";s:3:"333";s:1:"N";s:5:"breve";s:1:"B";a:4:{i:0;s:2:"-2";i:1;s:3:"604";i:2;s:3:"335";i:3;s:3:"750";}}s:5:"breve";a:4:{s:1:"C";s:3:"198";s:2:"WX";s:3:"333";s:1:"N";s:5:"breve";s:1:"B";a:4:{i:0;s:2:"-2";i:1;s:3:"604";i:2;s:3:"335";i:3;s:3:"750";}}i:199;a:4:{s:1:"C";s:3:"199";s:2:"WX";s:3:"333";s:1:"N";s:9:"dotaccent";s:1:"B";a:4:{i:0;s:3:"104";i:1;s:3:"614";i:2;s:3:"230";i:3;s:3:"729";}}s:9:"dotaccent";a:4:{s:1:"C";s:3:"199";s:2:"WX";s:3:"333";s:1:"N";s:9:"dotaccent";s:1:"B";a:4:{i:0;s:3:"104";i:1;s:3:"614";i:2;s:3:"230";i:3;s:3:"729";}}i:200;a:4:{s:1:"C";s:3:"200";s:2:"WX";s:3:"333";s:1:"N";s:8:"dieresis";s:1:"B";a:4:{i:0;s:1:"6";i:1;s:3:"614";i:2;s:3:"327";i:3;s:3:"729";}}s:8:"dieresis";a:4:{s:1:"C";s:3:"200";s:2:"WX";s:3:"333";s:1:"N";s:8:"dieresis";s:1:"B";a:4:{i:0;s:1:"6";i:1;s:3:"614";i:2;s:3:"327";i:3;s:3:"729";}}i:202;a:4:{s:1:"C";s:3:"202";s:2:"WX";s:3:"333";s:1:"N";s:4:"ring";s:1:"B";a:4:{i:0;s:2:"59";i:1;s:3:"568";i:2;s:3:"275";i:3;s:3:"776";}}s:4:"ring";a:4:{s:1:"C";s:3:"202";s:2:"WX";s:3:"333";s:1:"N";s:4:"ring";s:1:"B";a:4:{i:0;s:2:"59";i:1;s:3:"568";i:2;s:3:"275";i:3;s:3:"776";}}i:203;a:4:{s:1:"C";s:3:"203";s:2:"WX";s:3:"333";s:1:"N";s:7:"cedilla";s:1:"B";a:4:{i:0;s:1:"6";i:1;s:4:"-228";i:2;s:3:"245";i:3;s:1:"0";}}s:7:"cedilla";a:4:{s:1:"C";s:3:"203";s:2:"WX";s:3:"333";s:1:"N";s:7:"cedilla";s:1:"B";a:4:{i:0;s:1:"6";i:1;s:4:"-228";i:2;s:3:"245";i:3;s:1:"0";}}i:205;a:4:{s:1:"C";s:3:"205";s:2:"WX";s:3:"333";s:1:"N";s:12:"hungarumlaut";s:1:"B";a:4:{i:0;s:1:"9";i:1;s:3:"604";i:2;s:3:"486";i:3;s:3:"750";}}s:12:"hungarumlaut";a:4:{s:1:"C";s:3:"205";s:2:"WX";s:3:"333";s:1:"N";s:12:"hungarumlaut";s:1:"B";a:4:{i:0;s:1:"9";i:1;s:3:"604";i:2;s:3:"486";i:3;s:3:"750";}}i:206;a:4:{s:1:"C";s:3:"206";s:2:"WX";s:3:"333";s:1:"N";s:6:"ogonek";s:1:"B";a:4:{i:0;s:2:"71";i:1;s:4:"-228";i:2;s:3:"304";i:3;s:1:"0";}}s:6:"ogonek";a:4:{s:1:"C";s:3:"206";s:2:"WX";s:3:"333";s:1:"N";s:6:"ogonek";s:1:"B";a:4:{i:0;s:2:"71";i:1;s:4:"-228";i:2;s:3:"304";i:3;s:1:"0";}}i:207;a:4:{s:1:"C";s:3:"207";s:2:"WX";s:3:"333";s:1:"N";s:5:"caron";s:1:"B";a:4:{i:0;s:3:"-10";i:1;s:3:"604";i:2;s:3:"343";i:3;s:3:"750";}}s:5:"caron";a:4:{s:1:"C";s:3:"207";s:2:"WX";s:3:"333";s:1:"N";s:5:"caron";s:1:"B";a:4:{i:0;s:3:"-10";i:1;s:3:"604";i:2;s:3:"343";i:3;s:3:"750";}}i:208;a:4:{s:1:"C";s:3:"208";s:2:"WX";s:4:"1000";s:1:"N";s:6:"emdash";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"227";i:2;s:4:"1000";i:3;s:3:"333";}}s:6:"emdash";a:4:{s:1:"C";s:3:"208";s:2:"WX";s:4:"1000";s:1:"N";s:6:"emdash";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"227";i:2;s:4:"1000";i:3;s:3:"333";}}i:225;a:4:{s:1:"C";s:3:"225";s:2:"WX";s:4:"1000";s:1:"N";s:2:"AE";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:1:"0";i:2;s:3:"954";i:3;s:3:"718";}}s:2:"AE";a:4:{s:1:"C";s:3:"225";s:2:"WX";s:4:"1000";s:1:"N";s:2:"AE";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:1:"0";i:2;s:3:"954";i:3;s:3:"718";}}i:227;a:4:{s:1:"C";s:3:"227";s:2:"WX";s:3:"370";s:1:"N";s:11:"ordfeminine";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:3:"401";i:2;s:3:"347";i:3;s:3:"737";}}s:11:"ordfeminine";a:4:{s:1:"C";s:3:"227";s:2:"WX";s:3:"370";s:1:"N";s:11:"ordfeminine";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:3:"401";i:2;s:3:"347";i:3;s:3:"737";}}i:232;a:4:{s:1:"C";s:3:"232";s:2:"WX";s:3:"611";s:1:"N";s:6:"Lslash";s:1:"B";a:4:{i:0;s:3:"-20";i:1;s:1:"0";i:2;s:3:"583";i:3;s:3:"718";}}s:6:"Lslash";a:4:{s:1:"C";s:3:"232";s:2:"WX";s:3:"611";s:1:"N";s:6:"Lslash";s:1:"B";a:4:{i:0;s:3:"-20";i:1;s:1:"0";i:2;s:3:"583";i:3;s:3:"718";}}i:233;a:4:{s:1:"C";s:3:"233";s:2:"WX";s:3:"778";s:1:"N";s:6:"Oslash";s:1:"B";a:4:{i:0;s:2:"33";i:1;s:3:"-27";i:2;s:3:"744";i:3;s:3:"745";}}s:6:"Oslash";a:4:{s:1:"C";s:3:"233";s:2:"WX";s:3:"778";s:1:"N";s:6:"Oslash";s:1:"B";a:4:{i:0;s:2:"33";i:1;s:3:"-27";i:2;s:3:"744";i:3;s:3:"745";}}i:234;a:4:{s:1:"C";s:3:"234";s:2:"WX";s:4:"1000";s:1:"N";s:2:"OE";s:1:"B";a:4:{i:0;s:2:"37";i:1;s:3:"-19";i:2;s:3:"961";i:3;s:3:"737";}}s:2:"OE";a:4:{s:1:"C";s:3:"234";s:2:"WX";s:4:"1000";s:1:"N";s:2:"OE";s:1:"B";a:4:{i:0;s:2:"37";i:1;s:3:"-19";i:2;s:3:"961";i:3;s:3:"737";}}i:235;a:4:{s:1:"C";s:3:"235";s:2:"WX";s:3:"365";s:1:"N";s:12:"ordmasculine";s:1:"B";a:4:{i:0;s:1:"6";i:1;s:3:"401";i:2;s:3:"360";i:3;s:3:"737";}}s:12:"ordmasculine";a:4:{s:1:"C";s:3:"235";s:2:"WX";s:3:"365";s:1:"N";s:12:"ordmasculine";s:1:"B";a:4:{i:0;s:1:"6";i:1;s:3:"401";i:2;s:3:"360";i:3;s:3:"737";}}i:241;a:4:{s:1:"C";s:3:"241";s:2:"WX";s:3:"889";s:1:"N";s:2:"ae";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:3:"-14";i:2;s:3:"858";i:3;s:3:"546";}}s:2:"ae";a:4:{s:1:"C";s:3:"241";s:2:"WX";s:3:"889";s:1:"N";s:2:"ae";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:3:"-14";i:2;s:3:"858";i:3;s:3:"546";}}i:245;a:4:{s:1:"C";s:3:"245";s:2:"WX";s:3:"278";s:1:"N";s:8:"dotlessi";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"209";i:3;s:3:"532";}}s:8:"dotlessi";a:4:{s:1:"C";s:3:"245";s:2:"WX";s:3:"278";s:1:"N";s:8:"dotlessi";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"209";i:3;s:3:"532";}}i:248;a:4:{s:1:"C";s:3:"248";s:2:"WX";s:3:"278";s:1:"N";s:6:"lslash";s:1:"B";a:4:{i:0;s:3:"-18";i:1;s:1:"0";i:2;s:3:"296";i:3;s:3:"718";}}s:6:"lslash";a:4:{s:1:"C";s:3:"248";s:2:"WX";s:3:"278";s:1:"N";s:6:"lslash";s:1:"B";a:4:{i:0;s:3:"-18";i:1;s:1:"0";i:2;s:3:"296";i:3;s:3:"718";}}i:249;a:4:{s:1:"C";s:3:"249";s:2:"WX";s:3:"611";s:1:"N";s:6:"oslash";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:3:"-29";i:2;s:3:"589";i:3;s:3:"560";}}s:6:"oslash";a:4:{s:1:"C";s:3:"249";s:2:"WX";s:3:"611";s:1:"N";s:6:"oslash";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:3:"-29";i:2;s:3:"589";i:3;s:3:"560";}}i:250;a:4:{s:1:"C";s:3:"250";s:2:"WX";s:3:"944";s:1:"N";s:2:"oe";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"912";i:3;s:3:"546";}}s:2:"oe";a:4:{s:1:"C";s:3:"250";s:2:"WX";s:3:"944";s:1:"N";s:2:"oe";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"912";i:3;s:3:"546";}}i:251;a:4:{s:1:"C";s:3:"251";s:2:"WX";s:3:"611";s:1:"N";s:10:"germandbls";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:3:"-14";i:2;s:3:"579";i:3;s:3:"731";}}s:10:"germandbls";a:4:{s:1:"C";s:3:"251";s:2:"WX";s:3:"611";s:1:"N";s:10:"germandbls";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:3:"-14";i:2;s:3:"579";i:3;s:3:"731";}}s:9:"Idieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:9:"Idieresis";s:1:"B";a:4:{i:0;s:3:"-21";i:1;s:1:"0";i:2;s:3:"300";i:3;s:3:"915";}}s:6:"eacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"eacute";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:3:"-14";i:2;s:3:"528";i:3;s:3:"750";}}s:6:"abreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"abreve";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:3:"-14";i:2;s:3:"527";i:3;s:3:"750";}}s:13:"uhungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:13:"uhungarumlaut";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:3:"-14";i:2;s:3:"625";i:3;s:3:"750";}}s:6:"ecaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"ecaron";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:3:"-14";i:2;s:3:"528";i:3;s:3:"750";}}s:9:"Ydieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:9:"Ydieresis";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:1:"0";i:2;s:3:"653";i:3;s:3:"915";}}s:6:"divide";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"584";s:1:"N";s:6:"divide";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"-42";i:2;s:3:"544";i:3;s:3:"548";}}s:6:"Yacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Yacute";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:1:"0";i:2;s:3:"653";i:3;s:3:"936";}}s:11:"Acircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:11:"Acircumflex";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"702";i:3;s:3:"936";}}s:6:"aacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"aacute";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:3:"-14";i:2;s:3:"527";i:3;s:3:"750";}}s:11:"Ucircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:11:"Ucircumflex";s:1:"B";a:4:{i:0;s:2:"72";i:1;s:3:"-19";i:2;s:3:"651";i:3;s:3:"936";}}s:6:"yacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"yacute";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:4:"-214";i:2;s:3:"539";i:3;s:3:"750";}}s:12:"scommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:12:"scommaaccent";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:4:"-228";i:2;s:3:"519";i:3;s:3:"546";}}s:11:"ecircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:11:"ecircumflex";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:3:"-14";i:2;s:3:"528";i:3;s:3:"750";}}s:5:"Uring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:5:"Uring";s:1:"B";a:4:{i:0;s:2:"72";i:1;s:3:"-19";i:2;s:3:"651";i:3;s:3:"962";}}s:9:"Udieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:9:"Udieresis";s:1:"B";a:4:{i:0;s:2:"72";i:1;s:3:"-19";i:2;s:3:"651";i:3;s:3:"915";}}s:7:"aogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:7:"aogonek";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:4:"-224";i:2;s:3:"545";i:3;s:3:"546";}}s:6:"Uacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Uacute";s:1:"B";a:4:{i:0;s:2:"72";i:1;s:3:"-19";i:2;s:3:"651";i:3;s:3:"936";}}s:7:"uogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:7:"uogonek";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:4:"-228";i:2;s:3:"545";i:3;s:3:"532";}}s:9:"Edieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:9:"Edieresis";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"621";i:3;s:3:"915";}}s:6:"Dcroat";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Dcroat";s:1:"B";a:4:{i:0;s:2:"-5";i:1;s:1:"0";i:2;s:3:"685";i:3;s:3:"718";}}s:11:"commaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"250";s:1:"N";s:11:"commaaccent";s:1:"B";a:4:{i:0;s:2:"64";i:1;s:4:"-228";i:2;s:3:"199";i:3;s:3:"-50";}}s:9:"copyright";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"737";s:1:"N";s:9:"copyright";s:1:"B";a:4:{i:0;s:3:"-11";i:1;s:3:"-19";i:2;s:3:"749";i:3;s:3:"737";}}s:7:"Emacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:7:"Emacron";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"621";i:3;s:3:"864";}}s:6:"ccaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"ccaron";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"524";i:3;s:3:"750";}}s:5:"aring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:5:"aring";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:3:"-14";i:2;s:3:"527";i:3;s:3:"776";}}s:12:"Ncommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:12:"Ncommaaccent";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:4:"-228";i:2;s:3:"654";i:3;s:3:"718";}}s:6:"lacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:6:"lacute";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"329";i:3;s:3:"936";}}s:6:"agrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"agrave";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:3:"-14";i:2;s:3:"527";i:3;s:3:"750";}}s:12:"Tcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:12:"Tcommaaccent";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:4:"-228";i:2;s:3:"598";i:3;s:3:"718";}}s:6:"Cacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Cacute";s:1:"B";a:4:{i:0;s:2:"44";i:1;s:3:"-19";i:2;s:3:"684";i:3;s:3:"936";}}s:6:"atilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"atilde";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:3:"-14";i:2;s:3:"527";i:3;s:3:"737";}}s:10:"Edotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:10:"Edotaccent";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"621";i:3;s:3:"915";}}s:6:"scaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"scaron";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"-14";i:2;s:3:"519";i:3;s:3:"750";}}s:8:"scedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:8:"scedilla";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:4:"-228";i:2;s:3:"519";i:3;s:3:"546";}}s:6:"iacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:6:"iacute";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"329";i:3;s:3:"750";}}s:7:"lozenge";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"494";s:1:"N";s:7:"lozenge";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:1:"0";i:2;s:3:"484";i:3;s:3:"745";}}s:6:"Rcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Rcaron";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"677";i:3;s:3:"936";}}s:12:"Gcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:12:"Gcommaaccent";s:1:"B";a:4:{i:0;s:2:"44";i:1;s:4:"-228";i:2;s:3:"713";i:3;s:3:"737";}}s:11:"ucircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:11:"ucircumflex";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:3:"-14";i:2;s:3:"545";i:3;s:3:"750";}}s:11:"acircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:11:"acircumflex";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:3:"-14";i:2;s:3:"527";i:3;s:3:"750";}}s:7:"Amacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:7:"Amacron";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"702";i:3;s:3:"864";}}s:6:"rcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:6:"rcaron";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:1:"0";i:2;s:3:"373";i:3;s:3:"750";}}s:8:"ccedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:8:"ccedilla";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:4:"-228";i:2;s:3:"524";i:3;s:3:"546";}}s:10:"Zdotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:10:"Zdotaccent";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:1:"0";i:2;s:3:"586";i:3;s:3:"915";}}s:5:"Thorn";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:5:"Thorn";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"627";i:3;s:3:"718";}}s:7:"Omacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:7:"Omacron";s:1:"B";a:4:{i:0;s:2:"44";i:1;s:3:"-19";i:2;s:3:"734";i:3;s:3:"864";}}s:6:"Racute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Racute";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"677";i:3;s:3:"936";}}s:6:"Sacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Sacute";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:3:"-19";i:2;s:3:"629";i:3;s:3:"936";}}s:6:"dcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"743";s:1:"N";s:6:"dcaron";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"750";i:3;s:3:"718";}}s:7:"Umacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:7:"Umacron";s:1:"B";a:4:{i:0;s:2:"72";i:1;s:3:"-19";i:2;s:3:"651";i:3;s:3:"864";}}s:5:"uring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:5:"uring";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:3:"-14";i:2;s:3:"545";i:3;s:3:"776";}}s:13:"threesuperior";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"333";s:1:"N";s:13:"threesuperior";s:1:"B";a:4:{i:0;s:1:"8";i:1;s:3:"271";i:2;s:3:"326";i:3;s:3:"710";}}s:6:"Ograve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:6:"Ograve";s:1:"B";a:4:{i:0;s:2:"44";i:1;s:3:"-19";i:2;s:3:"734";i:3;s:3:"936";}}s:6:"Agrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Agrave";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"702";i:3;s:3:"936";}}s:6:"Abreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Abreve";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"702";i:3;s:3:"936";}}s:8:"multiply";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"584";s:1:"N";s:8:"multiply";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:1:"1";i:2;s:3:"545";i:3;s:3:"505";}}s:6:"uacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"uacute";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:3:"-14";i:2;s:3:"545";i:3;s:3:"750";}}s:6:"Tcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"Tcaron";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"598";i:3;s:3:"936";}}s:11:"partialdiff";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"494";s:1:"N";s:11:"partialdiff";s:1:"B";a:4:{i:0;s:2:"11";i:1;s:3:"-21";i:2;s:3:"494";i:3;s:3:"750";}}s:9:"ydieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:9:"ydieresis";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:4:"-214";i:2;s:3:"539";i:3;s:3:"729";}}s:6:"Nacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Nacute";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"654";i:3;s:3:"936";}}s:11:"icircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:11:"icircumflex";s:1:"B";a:4:{i:0;s:3:"-37";i:1;s:1:"0";i:2;s:3:"316";i:3;s:3:"750";}}s:11:"Ecircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:11:"Ecircumflex";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"621";i:3;s:3:"936";}}s:9:"adieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:9:"adieresis";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:3:"-14";i:2;s:3:"527";i:3;s:3:"729";}}s:9:"edieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:9:"edieresis";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:3:"-14";i:2;s:3:"528";i:3;s:3:"729";}}s:6:"cacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"cacute";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"524";i:3;s:3:"750";}}s:6:"nacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"nacute";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:1:"0";i:2;s:3:"546";i:3;s:3:"750";}}s:7:"umacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:7:"umacron";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:3:"-14";i:2;s:3:"545";i:3;s:3:"678";}}s:6:"Ncaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Ncaron";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"654";i:3;s:3:"936";}}s:6:"Iacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:6:"Iacute";s:1:"B";a:4:{i:0;s:2:"64";i:1;s:1:"0";i:2;s:3:"329";i:3;s:3:"936";}}s:9:"plusminus";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"584";s:1:"N";s:9:"plusminus";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:1:"0";i:2;s:3:"544";i:3;s:3:"506";}}s:9:"brokenbar";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"280";s:1:"N";s:9:"brokenbar";s:1:"B";a:4:{i:0;s:2:"84";i:1;s:4:"-150";i:2;s:3:"196";i:3;s:3:"700";}}s:10:"registered";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"737";s:1:"N";s:10:"registered";s:1:"B";a:4:{i:0;s:3:"-11";i:1;s:3:"-19";i:2;s:3:"748";i:3;s:3:"737";}}s:6:"Gbreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:6:"Gbreve";s:1:"B";a:4:{i:0;s:2:"44";i:1;s:3:"-19";i:2;s:3:"713";i:3;s:3:"936";}}s:10:"Idotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:10:"Idotaccent";s:1:"B";a:4:{i:0;s:2:"64";i:1;s:1:"0";i:2;s:3:"214";i:3;s:3:"915";}}s:9:"summation";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"summation";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:3:"-10";i:2;s:3:"585";i:3;s:3:"706";}}s:6:"Egrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Egrave";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"621";i:3;s:3:"936";}}s:6:"racute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:6:"racute";s:1:"B";a:4:{i:0;s:2:"64";i:1;s:1:"0";i:2;s:3:"384";i:3;s:3:"750";}}s:7:"omacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:7:"omacron";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"578";i:3;s:3:"678";}}s:6:"Zacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"Zacute";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:1:"0";i:2;s:3:"586";i:3;s:3:"936";}}s:6:"Zcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"Zcaron";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:1:"0";i:2;s:3:"586";i:3;s:3:"936";}}s:12:"greaterequal";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"549";s:1:"N";s:12:"greaterequal";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"523";i:3;s:3:"704";}}s:3:"Eth";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:3:"Eth";s:1:"B";a:4:{i:0;s:2:"-5";i:1;s:1:"0";i:2;s:3:"685";i:3;s:3:"718";}}s:8:"Ccedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:8:"Ccedilla";s:1:"B";a:4:{i:0;s:2:"44";i:1;s:4:"-228";i:2;s:3:"684";i:3;s:3:"737";}}s:12:"lcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:12:"lcommaaccent";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:4:"-228";i:2;s:3:"213";i:3;s:3:"718";}}s:6:"tcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:6:"tcaron";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:2:"-6";i:2;s:3:"421";i:3;s:3:"878";}}s:7:"eogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:7:"eogonek";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:4:"-228";i:2;s:3:"528";i:3;s:3:"546";}}s:7:"Uogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:7:"Uogonek";s:1:"B";a:4:{i:0;s:2:"72";i:1;s:4:"-228";i:2;s:3:"651";i:3;s:3:"718";}}s:6:"Aacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Aacute";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"702";i:3;s:3:"936";}}s:9:"Adieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:9:"Adieresis";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"702";i:3;s:3:"915";}}s:6:"egrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"egrave";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:3:"-14";i:2;s:3:"528";i:3;s:3:"750";}}s:6:"zacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"zacute";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"480";i:3;s:3:"750";}}s:7:"iogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:7:"iogonek";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:4:"-224";i:2;s:3:"249";i:3;s:3:"725";}}s:6:"Oacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:6:"Oacute";s:1:"B";a:4:{i:0;s:2:"44";i:1;s:3:"-19";i:2;s:3:"734";i:3;s:3:"936";}}s:6:"oacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"oacute";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"578";i:3;s:3:"750";}}s:7:"amacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:7:"amacron";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:3:"-14";i:2;s:3:"527";i:3;s:3:"678";}}s:6:"sacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"sacute";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"-14";i:2;s:3:"519";i:3;s:3:"750";}}s:9:"idieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:9:"idieresis";s:1:"B";a:4:{i:0;s:3:"-21";i:1;s:1:"0";i:2;s:3:"300";i:3;s:3:"729";}}s:11:"Ocircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:11:"Ocircumflex";s:1:"B";a:4:{i:0;s:2:"44";i:1;s:3:"-19";i:2;s:3:"734";i:3;s:3:"936";}}s:6:"Ugrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Ugrave";s:1:"B";a:4:{i:0;s:2:"72";i:1;s:3:"-19";i:2;s:3:"651";i:3;s:3:"936";}}s:5:"Delta";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"612";s:1:"N";s:5:"Delta";s:1:"B";a:4:{i:0;s:1:"6";i:1;s:1:"0";i:2;s:3:"608";i:3;s:3:"688";}}s:5:"thorn";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:5:"thorn";s:1:"B";a:4:{i:0;s:2:"62";i:1;s:4:"-208";i:2;s:3:"578";i:3;s:3:"718";}}s:11:"twosuperior";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"333";s:1:"N";s:11:"twosuperior";s:1:"B";a:4:{i:0;s:1:"9";i:1;s:3:"283";i:2;s:3:"324";i:3;s:3:"710";}}s:9:"Odieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:9:"Odieresis";s:1:"B";a:4:{i:0;s:2:"44";i:1;s:3:"-19";i:2;s:3:"734";i:3;s:3:"915";}}s:2:"mu";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:2:"mu";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:4:"-207";i:2;s:3:"545";i:3;s:3:"532";}}s:6:"igrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:6:"igrave";s:1:"B";a:4:{i:0;s:3:"-50";i:1;s:1:"0";i:2;s:3:"209";i:3;s:3:"750";}}s:13:"ohungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:13:"ohungarumlaut";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"625";i:3;s:3:"750";}}s:7:"Eogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:7:"Eogonek";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:4:"-224";i:2;s:3:"639";i:3;s:3:"718";}}s:6:"dcroat";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"dcroat";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"650";i:3;s:3:"718";}}s:13:"threequarters";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"834";s:1:"N";s:13:"threequarters";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"-19";i:2;s:3:"799";i:3;s:3:"710";}}s:8:"Scedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:8:"Scedilla";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:4:"-228";i:2;s:3:"629";i:3;s:3:"737";}}s:6:"lcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"400";s:1:"N";s:6:"lcaron";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"408";i:3;s:3:"718";}}s:12:"Kcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:12:"Kcommaaccent";s:1:"B";a:4:{i:0;s:2:"87";i:1;s:4:"-228";i:2;s:3:"722";i:3;s:3:"718";}}s:6:"Lacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"Lacute";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"583";i:3;s:3:"936";}}s:9:"trademark";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:4:"1000";s:1:"N";s:9:"trademark";s:1:"B";a:4:{i:0;s:2:"44";i:1;s:3:"306";i:2;s:3:"956";i:3;s:3:"718";}}s:10:"edotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:10:"edotaccent";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:3:"-14";i:2;s:3:"528";i:3;s:3:"729";}}s:6:"Igrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:6:"Igrave";s:1:"B";a:4:{i:0;s:3:"-50";i:1;s:1:"0";i:2;s:3:"214";i:3;s:3:"936";}}s:7:"Imacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:7:"Imacron";s:1:"B";a:4:{i:0;s:3:"-33";i:1;s:1:"0";i:2;s:3:"312";i:3;s:3:"864";}}s:6:"Lcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"Lcaron";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"583";i:3;s:3:"718";}}s:7:"onehalf";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"834";s:1:"N";s:7:"onehalf";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:3:"-19";i:2;s:3:"794";i:3;s:3:"710";}}s:9:"lessequal";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"549";s:1:"N";s:9:"lessequal";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:1:"0";i:2;s:3:"526";i:3;s:3:"704";}}s:11:"ocircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:11:"ocircumflex";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"578";i:3;s:3:"750";}}s:6:"ntilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"ntilde";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:1:"0";i:2;s:3:"546";i:3;s:3:"737";}}s:13:"Uhungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:13:"Uhungarumlaut";s:1:"B";a:4:{i:0;s:2:"72";i:1;s:3:"-19";i:2;s:3:"681";i:3;s:3:"936";}}s:6:"Eacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Eacute";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"621";i:3;s:3:"936";}}s:7:"emacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:7:"emacron";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:3:"-14";i:2;s:3:"528";i:3;s:3:"678";}}s:6:"gbreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"gbreve";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:4:"-217";i:2;s:3:"553";i:3;s:3:"750";}}s:10:"onequarter";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"834";s:1:"N";s:10:"onequarter";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:3:"-19";i:2;s:3:"766";i:3;s:3:"710";}}s:6:"Scaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Scaron";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:3:"-19";i:2;s:3:"629";i:3;s:3:"936";}}s:12:"Scommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:12:"Scommaaccent";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:4:"-228";i:2;s:3:"629";i:3;s:3:"737";}}s:13:"Ohungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:13:"Ohungarumlaut";s:1:"B";a:4:{i:0;s:2:"44";i:1;s:3:"-19";i:2;s:3:"734";i:3;s:3:"936";}}s:6:"degree";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"400";s:1:"N";s:6:"degree";s:1:"B";a:4:{i:0;s:2:"57";i:1;s:3:"426";i:2;s:3:"343";i:3;s:3:"712";}}s:6:"ograve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"ograve";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"578";i:3;s:3:"750";}}s:6:"Ccaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Ccaron";s:1:"B";a:4:{i:0;s:2:"44";i:1;s:3:"-19";i:2;s:3:"684";i:3;s:3:"936";}}s:6:"ugrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"ugrave";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:3:"-14";i:2;s:3:"545";i:3;s:3:"750";}}s:7:"radical";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"549";s:1:"N";s:7:"radical";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:3:"-46";i:2;s:3:"512";i:3;s:3:"850";}}s:6:"Dcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Dcaron";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"685";i:3;s:3:"936";}}s:12:"rcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:12:"rcommaaccent";s:1:"B";a:4:{i:0;s:2:"64";i:1;s:4:"-228";i:2;s:3:"373";i:3;s:3:"546";}}s:6:"Ntilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Ntilde";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"654";i:3;s:3:"923";}}s:6:"otilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"otilde";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"578";i:3;s:3:"737";}}s:12:"Rcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:12:"Rcommaaccent";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:4:"-228";i:2;s:3:"677";i:3;s:3:"718";}}s:12:"Lcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:12:"Lcommaaccent";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:4:"-228";i:2;s:3:"583";i:3;s:3:"718";}}s:6:"Atilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Atilde";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"702";i:3;s:3:"923";}}s:7:"Aogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:7:"Aogonek";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:4:"-224";i:2;s:3:"742";i:3;s:3:"718";}}s:5:"Aring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:5:"Aring";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"702";i:3;s:3:"962";}}s:6:"Otilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:6:"Otilde";s:1:"B";a:4:{i:0;s:2:"44";i:1;s:3:"-19";i:2;s:3:"734";i:3;s:3:"923";}}s:10:"zdotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:10:"zdotaccent";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"480";i:3;s:3:"729";}}s:6:"Ecaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Ecaron";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"621";i:3;s:3:"936";}}s:7:"Iogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:7:"Iogonek";s:1:"B";a:4:{i:0;s:3:"-11";i:1;s:4:"-228";i:2;s:3:"222";i:3;s:3:"718";}}s:12:"kcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:12:"kcommaaccent";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:4:"-228";i:2;s:3:"562";i:3;s:3:"718";}}s:5:"minus";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"584";s:1:"N";s:5:"minus";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"197";i:2;s:3:"544";i:3;s:3:"309";}}s:11:"Icircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:11:"Icircumflex";s:1:"B";a:4:{i:0;s:3:"-37";i:1;s:1:"0";i:2;s:3:"316";i:3;s:3:"936";}}s:6:"ncaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"ncaron";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:1:"0";i:2;s:3:"546";i:3;s:3:"750";}}s:12:"tcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"333";s:1:"N";s:12:"tcommaaccent";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:4:"-228";i:2;s:3:"309";i:3;s:3:"676";}}s:10:"logicalnot";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"584";s:1:"N";s:10:"logicalnot";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"108";i:2;s:3:"544";i:3;s:3:"419";}}s:9:"odieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:9:"odieresis";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"578";i:3;s:3:"729";}}s:9:"udieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:9:"udieresis";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:3:"-14";i:2;s:3:"545";i:3;s:3:"729";}}s:8:"notequal";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"549";s:1:"N";s:8:"notequal";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:3:"-49";i:2;s:3:"540";i:3;s:3:"570";}}s:12:"gcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:12:"gcommaaccent";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:4:"-217";i:2;s:3:"553";i:3;s:3:"850";}}s:3:"eth";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:3:"eth";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"578";i:3;s:3:"737";}}s:6:"zcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"zcaron";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"480";i:3;s:3:"750";}}s:12:"ncommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:12:"ncommaaccent";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:4:"-228";i:2;s:3:"546";i:3;s:3:"546";}}s:11:"onesuperior";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"333";s:1:"N";s:11:"onesuperior";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:3:"283";i:2;s:3:"237";i:3;s:3:"710";}}s:7:"imacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:7:"imacron";s:1:"B";a:4:{i:0;s:2:"-8";i:1;s:1:"0";i:2;s:3:"285";i:3;s:3:"678";}}s:4:"Euro";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:4:"Euro";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:1:"0";i:3;s:1:"0";}}}s:3:"KPX";a:134:{s:1:"A";a:48:{s:1:"C";s:3:"-40";s:6:"Cacute";s:3:"-40";s:6:"Ccaron";s:3:"-40";s:8:"Ccedilla";s:3:"-40";s:1:"G";s:3:"-50";s:6:"Gbreve";s:3:"-50";s:12:"Gcommaaccent";s:3:"-50";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"Q";s:3:"-40";s:1:"T";s:3:"-90";s:6:"Tcaron";s:3:"-90";s:12:"Tcommaaccent";s:3:"-90";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-80";s:1:"W";s:3:"-60";s:1:"Y";s:4:"-110";s:6:"Yacute";s:4:"-110";s:9:"Ydieresis";s:4:"-110";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-40";s:1:"w";s:3:"-30";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:6:"Aacute";a:48:{s:1:"C";s:3:"-40";s:6:"Cacute";s:3:"-40";s:6:"Ccaron";s:3:"-40";s:8:"Ccedilla";s:3:"-40";s:1:"G";s:3:"-50";s:6:"Gbreve";s:3:"-50";s:12:"Gcommaaccent";s:3:"-50";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"Q";s:3:"-40";s:1:"T";s:3:"-90";s:6:"Tcaron";s:3:"-90";s:12:"Tcommaaccent";s:3:"-90";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-80";s:1:"W";s:3:"-60";s:1:"Y";s:4:"-110";s:6:"Yacute";s:4:"-110";s:9:"Ydieresis";s:4:"-110";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-40";s:1:"w";s:3:"-30";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:6:"Abreve";a:48:{s:1:"C";s:3:"-40";s:6:"Cacute";s:3:"-40";s:6:"Ccaron";s:3:"-40";s:8:"Ccedilla";s:3:"-40";s:1:"G";s:3:"-50";s:6:"Gbreve";s:3:"-50";s:12:"Gcommaaccent";s:3:"-50";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"Q";s:3:"-40";s:1:"T";s:3:"-90";s:6:"Tcaron";s:3:"-90";s:12:"Tcommaaccent";s:3:"-90";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-80";s:1:"W";s:3:"-60";s:1:"Y";s:4:"-110";s:6:"Yacute";s:4:"-110";s:9:"Ydieresis";s:4:"-110";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-40";s:1:"w";s:3:"-30";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:11:"Acircumflex";a:48:{s:1:"C";s:3:"-40";s:6:"Cacute";s:3:"-40";s:6:"Ccaron";s:3:"-40";s:8:"Ccedilla";s:3:"-40";s:1:"G";s:3:"-50";s:6:"Gbreve";s:3:"-50";s:12:"Gcommaaccent";s:3:"-50";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"Q";s:3:"-40";s:1:"T";s:3:"-90";s:6:"Tcaron";s:3:"-90";s:12:"Tcommaaccent";s:3:"-90";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-80";s:1:"W";s:3:"-60";s:1:"Y";s:4:"-110";s:6:"Yacute";s:4:"-110";s:9:"Ydieresis";s:4:"-110";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-40";s:1:"w";s:3:"-30";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:9:"Adieresis";a:48:{s:1:"C";s:3:"-40";s:6:"Cacute";s:3:"-40";s:6:"Ccaron";s:3:"-40";s:8:"Ccedilla";s:3:"-40";s:1:"G";s:3:"-50";s:6:"Gbreve";s:3:"-50";s:12:"Gcommaaccent";s:3:"-50";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"Q";s:3:"-40";s:1:"T";s:3:"-90";s:6:"Tcaron";s:3:"-90";s:12:"Tcommaaccent";s:3:"-90";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-80";s:1:"W";s:3:"-60";s:1:"Y";s:4:"-110";s:6:"Yacute";s:4:"-110";s:9:"Ydieresis";s:4:"-110";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-40";s:1:"w";s:3:"-30";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:6:"Agrave";a:48:{s:1:"C";s:3:"-40";s:6:"Cacute";s:3:"-40";s:6:"Ccaron";s:3:"-40";s:8:"Ccedilla";s:3:"-40";s:1:"G";s:3:"-50";s:6:"Gbreve";s:3:"-50";s:12:"Gcommaaccent";s:3:"-50";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"Q";s:3:"-40";s:1:"T";s:3:"-90";s:6:"Tcaron";s:3:"-90";s:12:"Tcommaaccent";s:3:"-90";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-80";s:1:"W";s:3:"-60";s:1:"Y";s:4:"-110";s:6:"Yacute";s:4:"-110";s:9:"Ydieresis";s:4:"-110";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-40";s:1:"w";s:3:"-30";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:7:"Amacron";a:48:{s:1:"C";s:3:"-40";s:6:"Cacute";s:3:"-40";s:6:"Ccaron";s:3:"-40";s:8:"Ccedilla";s:3:"-40";s:1:"G";s:3:"-50";s:6:"Gbreve";s:3:"-50";s:12:"Gcommaaccent";s:3:"-50";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"Q";s:3:"-40";s:1:"T";s:3:"-90";s:6:"Tcaron";s:3:"-90";s:12:"Tcommaaccent";s:3:"-90";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-80";s:1:"W";s:3:"-60";s:1:"Y";s:4:"-110";s:6:"Yacute";s:4:"-110";s:9:"Ydieresis";s:4:"-110";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-40";s:1:"w";s:3:"-30";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:7:"Aogonek";a:48:{s:1:"C";s:3:"-40";s:6:"Cacute";s:3:"-40";s:6:"Ccaron";s:3:"-40";s:8:"Ccedilla";s:3:"-40";s:1:"G";s:3:"-50";s:6:"Gbreve";s:3:"-50";s:12:"Gcommaaccent";s:3:"-50";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"Q";s:3:"-40";s:1:"T";s:3:"-90";s:6:"Tcaron";s:3:"-90";s:12:"Tcommaaccent";s:3:"-90";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-80";s:1:"W";s:3:"-60";s:1:"Y";s:4:"-110";s:6:"Yacute";s:4:"-110";s:9:"Ydieresis";s:4:"-110";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-40";s:1:"w";s:3:"-30";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:5:"Aring";a:48:{s:1:"C";s:3:"-40";s:6:"Cacute";s:3:"-40";s:6:"Ccaron";s:3:"-40";s:8:"Ccedilla";s:3:"-40";s:1:"G";s:3:"-50";s:6:"Gbreve";s:3:"-50";s:12:"Gcommaaccent";s:3:"-50";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"Q";s:3:"-40";s:1:"T";s:3:"-90";s:6:"Tcaron";s:3:"-90";s:12:"Tcommaaccent";s:3:"-90";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-80";s:1:"W";s:3:"-60";s:1:"Y";s:4:"-110";s:6:"Yacute";s:4:"-110";s:9:"Ydieresis";s:4:"-110";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-40";s:1:"w";s:3:"-30";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:6:"Atilde";a:48:{s:1:"C";s:3:"-40";s:6:"Cacute";s:3:"-40";s:6:"Ccaron";s:3:"-40";s:8:"Ccedilla";s:3:"-40";s:1:"G";s:3:"-50";s:6:"Gbreve";s:3:"-50";s:12:"Gcommaaccent";s:3:"-50";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"Q";s:3:"-40";s:1:"T";s:3:"-90";s:6:"Tcaron";s:3:"-90";s:12:"Tcommaaccent";s:3:"-90";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-80";s:1:"W";s:3:"-60";s:1:"Y";s:4:"-110";s:6:"Yacute";s:4:"-110";s:9:"Ydieresis";s:4:"-110";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-40";s:1:"w";s:3:"-30";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:1:"B";a:19:{s:1:"A";s:3:"-30";s:6:"Aacute";s:3:"-30";s:6:"Abreve";s:3:"-30";s:11:"Acircumflex";s:3:"-30";s:9:"Adieresis";s:3:"-30";s:6:"Agrave";s:3:"-30";s:7:"Amacron";s:3:"-30";s:7:"Aogonek";s:3:"-30";s:5:"Aring";s:3:"-30";s:6:"Atilde";s:3:"-30";s:1:"U";s:3:"-10";s:6:"Uacute";s:3:"-10";s:11:"Ucircumflex";s:3:"-10";s:9:"Udieresis";s:3:"-10";s:6:"Ugrave";s:3:"-10";s:13:"Uhungarumlaut";s:3:"-10";s:7:"Umacron";s:3:"-10";s:7:"Uogonek";s:3:"-10";s:5:"Uring";s:3:"-10";}s:1:"D";a:17:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:1:"V";s:3:"-40";s:1:"W";s:3:"-40";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:5:"comma";s:3:"-30";s:6:"period";s:3:"-30";}s:6:"Dcaron";a:17:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:1:"V";s:3:"-40";s:1:"W";s:3:"-40";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:5:"comma";s:3:"-30";s:6:"period";s:3:"-30";}s:6:"Dcroat";a:17:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:1:"V";s:3:"-40";s:1:"W";s:3:"-40";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:5:"comma";s:3:"-30";s:6:"period";s:3:"-30";}s:1:"F";a:22:{s:1:"A";s:3:"-80";s:6:"Aacute";s:3:"-80";s:6:"Abreve";s:3:"-80";s:11:"Acircumflex";s:3:"-80";s:9:"Adieresis";s:3:"-80";s:6:"Agrave";s:3:"-80";s:7:"Amacron";s:3:"-80";s:7:"Aogonek";s:3:"-80";s:5:"Aring";s:3:"-80";s:6:"Atilde";s:3:"-80";s:1:"a";s:3:"-20";s:6:"aacute";s:3:"-20";s:6:"abreve";s:3:"-20";s:11:"acircumflex";s:3:"-20";s:9:"adieresis";s:3:"-20";s:6:"agrave";s:3:"-20";s:7:"amacron";s:3:"-20";s:7:"aogonek";s:3:"-20";s:5:"aring";s:3:"-20";s:6:"atilde";s:3:"-20";s:5:"comma";s:4:"-100";s:6:"period";s:4:"-100";}s:1:"J";a:21:{s:1:"A";s:3:"-20";s:6:"Aacute";s:3:"-20";s:6:"Abreve";s:3:"-20";s:11:"Acircumflex";s:3:"-20";s:9:"Adieresis";s:3:"-20";s:6:"Agrave";s:3:"-20";s:7:"Amacron";s:3:"-20";s:7:"Aogonek";s:3:"-20";s:5:"Aring";s:3:"-20";s:6:"Atilde";s:3:"-20";s:5:"comma";s:3:"-20";s:6:"period";s:3:"-20";s:1:"u";s:3:"-20";s:6:"uacute";s:3:"-20";s:11:"ucircumflex";s:3:"-20";s:9:"udieresis";s:3:"-20";s:6:"ugrave";s:3:"-20";s:13:"uhungarumlaut";s:3:"-20";s:7:"umacron";s:3:"-20";s:7:"uogonek";s:3:"-20";s:5:"uring";s:3:"-20";}s:1:"K";a:39:{s:1:"O";s:3:"-30";s:6:"Oacute";s:3:"-30";s:11:"Ocircumflex";s:3:"-30";s:9:"Odieresis";s:3:"-30";s:6:"Ograve";s:3:"-30";s:13:"Ohungarumlaut";s:3:"-30";s:7:"Omacron";s:3:"-30";s:6:"Oslash";s:3:"-30";s:6:"Otilde";s:3:"-30";s:1:"e";s:3:"-15";s:6:"eacute";s:3:"-15";s:6:"ecaron";s:3:"-15";s:11:"ecircumflex";s:3:"-15";s:9:"edieresis";s:3:"-15";s:10:"edotaccent";s:3:"-15";s:6:"egrave";s:3:"-15";s:7:"emacron";s:3:"-15";s:7:"eogonek";s:3:"-15";s:1:"o";s:3:"-35";s:6:"oacute";s:3:"-35";s:11:"ocircumflex";s:3:"-35";s:9:"odieresis";s:3:"-35";s:6:"ograve";s:3:"-35";s:13:"ohungarumlaut";s:3:"-35";s:7:"omacron";s:3:"-35";s:6:"oslash";s:3:"-35";s:6:"otilde";s:3:"-35";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"y";s:3:"-40";s:6:"yacute";s:3:"-40";s:9:"ydieresis";s:3:"-40";}s:12:"Kcommaaccent";a:39:{s:1:"O";s:3:"-30";s:6:"Oacute";s:3:"-30";s:11:"Ocircumflex";s:3:"-30";s:9:"Odieresis";s:3:"-30";s:6:"Ograve";s:3:"-30";s:13:"Ohungarumlaut";s:3:"-30";s:7:"Omacron";s:3:"-30";s:6:"Oslash";s:3:"-30";s:6:"Otilde";s:3:"-30";s:1:"e";s:3:"-15";s:6:"eacute";s:3:"-15";s:6:"ecaron";s:3:"-15";s:11:"ecircumflex";s:3:"-15";s:9:"edieresis";s:3:"-15";s:10:"edotaccent";s:3:"-15";s:6:"egrave";s:3:"-15";s:7:"emacron";s:3:"-15";s:7:"eogonek";s:3:"-15";s:1:"o";s:3:"-35";s:6:"oacute";s:3:"-35";s:11:"ocircumflex";s:3:"-35";s:9:"odieresis";s:3:"-35";s:6:"ograve";s:3:"-35";s:13:"ohungarumlaut";s:3:"-35";s:7:"omacron";s:3:"-35";s:6:"oslash";s:3:"-35";s:6:"otilde";s:3:"-35";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"y";s:3:"-40";s:6:"yacute";s:3:"-40";s:9:"ydieresis";s:3:"-40";}s:1:"L";a:13:{s:1:"T";s:3:"-90";s:6:"Tcaron";s:3:"-90";s:12:"Tcommaaccent";s:3:"-90";s:1:"V";s:4:"-110";s:1:"W";s:3:"-80";s:1:"Y";s:4:"-120";s:6:"Yacute";s:4:"-120";s:9:"Ydieresis";s:4:"-120";s:13:"quotedblright";s:4:"-140";s:10:"quoteright";s:4:"-140";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:6:"Lacute";a:13:{s:1:"T";s:3:"-90";s:6:"Tcaron";s:3:"-90";s:12:"Tcommaaccent";s:3:"-90";s:1:"V";s:4:"-110";s:1:"W";s:3:"-80";s:1:"Y";s:4:"-120";s:6:"Yacute";s:4:"-120";s:9:"Ydieresis";s:4:"-120";s:13:"quotedblright";s:4:"-140";s:10:"quoteright";s:4:"-140";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:12:"Lcommaaccent";a:13:{s:1:"T";s:3:"-90";s:6:"Tcaron";s:3:"-90";s:12:"Tcommaaccent";s:3:"-90";s:1:"V";s:4:"-110";s:1:"W";s:3:"-80";s:1:"Y";s:4:"-120";s:6:"Yacute";s:4:"-120";s:9:"Ydieresis";s:4:"-120";s:13:"quotedblright";s:4:"-140";s:10:"quoteright";s:4:"-140";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:6:"Lslash";a:13:{s:1:"T";s:3:"-90";s:6:"Tcaron";s:3:"-90";s:12:"Tcommaaccent";s:3:"-90";s:1:"V";s:4:"-110";s:1:"W";s:3:"-80";s:1:"Y";s:4:"-120";s:6:"Yacute";s:4:"-120";s:9:"Ydieresis";s:4:"-120";s:13:"quotedblright";s:4:"-140";s:10:"quoteright";s:4:"-140";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:1:"O";a:21:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-50";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:6:"Oacute";a:21:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-50";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:11:"Ocircumflex";a:21:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-50";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:9:"Odieresis";a:21:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-50";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:6:"Ograve";a:21:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-50";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:13:"Ohungarumlaut";a:21:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-50";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:7:"Omacron";a:21:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-50";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:6:"Oslash";a:21:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-50";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:6:"Otilde";a:21:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-50";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:1:"P";a:40:{s:1:"A";s:4:"-100";s:6:"Aacute";s:4:"-100";s:6:"Abreve";s:4:"-100";s:11:"Acircumflex";s:4:"-100";s:9:"Adieresis";s:4:"-100";s:6:"Agrave";s:4:"-100";s:7:"Amacron";s:4:"-100";s:7:"Aogonek";s:4:"-100";s:5:"Aring";s:4:"-100";s:6:"Atilde";s:4:"-100";s:1:"a";s:3:"-30";s:6:"aacute";s:3:"-30";s:6:"abreve";s:3:"-30";s:11:"acircumflex";s:3:"-30";s:9:"adieresis";s:3:"-30";s:6:"agrave";s:3:"-30";s:7:"amacron";s:3:"-30";s:7:"aogonek";s:3:"-30";s:5:"aring";s:3:"-30";s:6:"atilde";s:3:"-30";s:5:"comma";s:4:"-120";s:1:"e";s:3:"-30";s:6:"eacute";s:3:"-30";s:6:"ecaron";s:3:"-30";s:11:"ecircumflex";s:3:"-30";s:9:"edieresis";s:3:"-30";s:10:"edotaccent";s:3:"-30";s:6:"egrave";s:3:"-30";s:7:"emacron";s:3:"-30";s:7:"eogonek";s:3:"-30";s:1:"o";s:3:"-40";s:6:"oacute";s:3:"-40";s:11:"ocircumflex";s:3:"-40";s:9:"odieresis";s:3:"-40";s:6:"ograve";s:3:"-40";s:13:"ohungarumlaut";s:3:"-40";s:7:"omacron";s:3:"-40";s:6:"oslash";s:3:"-40";s:6:"otilde";s:3:"-40";s:6:"period";s:4:"-120";}s:1:"Q";a:11:{s:1:"U";s:3:"-10";s:6:"Uacute";s:3:"-10";s:11:"Ucircumflex";s:3:"-10";s:9:"Udieresis";s:3:"-10";s:6:"Ugrave";s:3:"-10";s:13:"Uhungarumlaut";s:3:"-10";s:7:"Umacron";s:3:"-10";s:7:"Uogonek";s:3:"-10";s:5:"Uring";s:3:"-10";s:5:"comma";s:2:"20";s:6:"period";s:2:"20";}s:1:"R";a:26:{s:1:"O";s:3:"-20";s:6:"Oacute";s:3:"-20";s:11:"Ocircumflex";s:3:"-20";s:9:"Odieresis";s:3:"-20";s:6:"Ograve";s:3:"-20";s:13:"Ohungarumlaut";s:3:"-20";s:7:"Omacron";s:3:"-20";s:6:"Oslash";s:3:"-20";s:6:"Otilde";s:3:"-20";s:1:"T";s:3:"-20";s:6:"Tcaron";s:3:"-20";s:12:"Tcommaaccent";s:3:"-20";s:1:"U";s:3:"-20";s:6:"Uacute";s:3:"-20";s:11:"Ucircumflex";s:3:"-20";s:9:"Udieresis";s:3:"-20";s:6:"Ugrave";s:3:"-20";s:13:"Uhungarumlaut";s:3:"-20";s:7:"Umacron";s:3:"-20";s:7:"Uogonek";s:3:"-20";s:5:"Uring";s:3:"-20";s:1:"V";s:3:"-50";s:1:"W";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:6:"Racute";a:26:{s:1:"O";s:3:"-20";s:6:"Oacute";s:3:"-20";s:11:"Ocircumflex";s:3:"-20";s:9:"Odieresis";s:3:"-20";s:6:"Ograve";s:3:"-20";s:13:"Ohungarumlaut";s:3:"-20";s:7:"Omacron";s:3:"-20";s:6:"Oslash";s:3:"-20";s:6:"Otilde";s:3:"-20";s:1:"T";s:3:"-20";s:6:"Tcaron";s:3:"-20";s:12:"Tcommaaccent";s:3:"-20";s:1:"U";s:3:"-20";s:6:"Uacute";s:3:"-20";s:11:"Ucircumflex";s:3:"-20";s:9:"Udieresis";s:3:"-20";s:6:"Ugrave";s:3:"-20";s:13:"Uhungarumlaut";s:3:"-20";s:7:"Umacron";s:3:"-20";s:7:"Uogonek";s:3:"-20";s:5:"Uring";s:3:"-20";s:1:"V";s:3:"-50";s:1:"W";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:6:"Rcaron";a:26:{s:1:"O";s:3:"-20";s:6:"Oacute";s:3:"-20";s:11:"Ocircumflex";s:3:"-20";s:9:"Odieresis";s:3:"-20";s:6:"Ograve";s:3:"-20";s:13:"Ohungarumlaut";s:3:"-20";s:7:"Omacron";s:3:"-20";s:6:"Oslash";s:3:"-20";s:6:"Otilde";s:3:"-20";s:1:"T";s:3:"-20";s:6:"Tcaron";s:3:"-20";s:12:"Tcommaaccent";s:3:"-20";s:1:"U";s:3:"-20";s:6:"Uacute";s:3:"-20";s:11:"Ucircumflex";s:3:"-20";s:9:"Udieresis";s:3:"-20";s:6:"Ugrave";s:3:"-20";s:13:"Uhungarumlaut";s:3:"-20";s:7:"Umacron";s:3:"-20";s:7:"Uogonek";s:3:"-20";s:5:"Uring";s:3:"-20";s:1:"V";s:3:"-50";s:1:"W";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:12:"Rcommaaccent";a:26:{s:1:"O";s:3:"-20";s:6:"Oacute";s:3:"-20";s:11:"Ocircumflex";s:3:"-20";s:9:"Odieresis";s:3:"-20";s:6:"Ograve";s:3:"-20";s:13:"Ohungarumlaut";s:3:"-20";s:7:"Omacron";s:3:"-20";s:6:"Oslash";s:3:"-20";s:6:"Otilde";s:3:"-20";s:1:"T";s:3:"-20";s:6:"Tcaron";s:3:"-20";s:12:"Tcommaaccent";s:3:"-20";s:1:"U";s:3:"-20";s:6:"Uacute";s:3:"-20";s:11:"Ucircumflex";s:3:"-20";s:9:"Udieresis";s:3:"-20";s:6:"Ugrave";s:3:"-20";s:13:"Uhungarumlaut";s:3:"-20";s:7:"Umacron";s:3:"-20";s:7:"Uogonek";s:3:"-20";s:5:"Uring";s:3:"-20";s:1:"V";s:3:"-50";s:1:"W";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:1:"T";a:68:{s:1:"A";s:3:"-90";s:6:"Aacute";s:3:"-90";s:6:"Abreve";s:3:"-90";s:11:"Acircumflex";s:3:"-90";s:9:"Adieresis";s:3:"-90";s:6:"Agrave";s:3:"-90";s:7:"Amacron";s:3:"-90";s:7:"Aogonek";s:3:"-90";s:5:"Aring";s:3:"-90";s:6:"Atilde";s:3:"-90";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"a";s:3:"-80";s:6:"aacute";s:3:"-80";s:6:"abreve";s:3:"-80";s:11:"acircumflex";s:3:"-80";s:9:"adieresis";s:3:"-80";s:6:"agrave";s:3:"-80";s:7:"amacron";s:3:"-80";s:7:"aogonek";s:3:"-80";s:5:"aring";s:3:"-80";s:6:"atilde";s:3:"-80";s:5:"colon";s:3:"-40";s:5:"comma";s:3:"-80";s:1:"e";s:3:"-60";s:6:"eacute";s:3:"-60";s:6:"ecaron";s:3:"-60";s:11:"ecircumflex";s:3:"-60";s:9:"edieresis";s:3:"-60";s:10:"edotaccent";s:3:"-60";s:6:"egrave";s:3:"-60";s:7:"emacron";s:3:"-60";s:7:"eogonek";s:3:"-60";s:6:"hyphen";s:4:"-120";s:1:"o";s:3:"-80";s:6:"oacute";s:3:"-80";s:11:"ocircumflex";s:3:"-80";s:9:"odieresis";s:3:"-80";s:6:"ograve";s:3:"-80";s:13:"ohungarumlaut";s:3:"-80";s:7:"omacron";s:3:"-80";s:6:"oslash";s:3:"-80";s:6:"otilde";s:3:"-80";s:6:"period";s:3:"-80";s:1:"r";s:3:"-80";s:6:"racute";s:3:"-80";s:12:"rcommaaccent";s:3:"-80";s:9:"semicolon";s:3:"-40";s:1:"u";s:3:"-90";s:6:"uacute";s:3:"-90";s:11:"ucircumflex";s:3:"-90";s:9:"udieresis";s:3:"-90";s:6:"ugrave";s:3:"-90";s:13:"uhungarumlaut";s:3:"-90";s:7:"umacron";s:3:"-90";s:7:"uogonek";s:3:"-90";s:5:"uring";s:3:"-90";s:1:"w";s:3:"-60";s:1:"y";s:3:"-60";s:6:"yacute";s:3:"-60";s:9:"ydieresis";s:3:"-60";}s:6:"Tcaron";a:68:{s:1:"A";s:3:"-90";s:6:"Aacute";s:3:"-90";s:6:"Abreve";s:3:"-90";s:11:"Acircumflex";s:3:"-90";s:9:"Adieresis";s:3:"-90";s:6:"Agrave";s:3:"-90";s:7:"Amacron";s:3:"-90";s:7:"Aogonek";s:3:"-90";s:5:"Aring";s:3:"-90";s:6:"Atilde";s:3:"-90";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"a";s:3:"-80";s:6:"aacute";s:3:"-80";s:6:"abreve";s:3:"-80";s:11:"acircumflex";s:3:"-80";s:9:"adieresis";s:3:"-80";s:6:"agrave";s:3:"-80";s:7:"amacron";s:3:"-80";s:7:"aogonek";s:3:"-80";s:5:"aring";s:3:"-80";s:6:"atilde";s:3:"-80";s:5:"colon";s:3:"-40";s:5:"comma";s:3:"-80";s:1:"e";s:3:"-60";s:6:"eacute";s:3:"-60";s:6:"ecaron";s:3:"-60";s:11:"ecircumflex";s:3:"-60";s:9:"edieresis";s:3:"-60";s:10:"edotaccent";s:3:"-60";s:6:"egrave";s:3:"-60";s:7:"emacron";s:3:"-60";s:7:"eogonek";s:3:"-60";s:6:"hyphen";s:4:"-120";s:1:"o";s:3:"-80";s:6:"oacute";s:3:"-80";s:11:"ocircumflex";s:3:"-80";s:9:"odieresis";s:3:"-80";s:6:"ograve";s:3:"-80";s:13:"ohungarumlaut";s:3:"-80";s:7:"omacron";s:3:"-80";s:6:"oslash";s:3:"-80";s:6:"otilde";s:3:"-80";s:6:"period";s:3:"-80";s:1:"r";s:3:"-80";s:6:"racute";s:3:"-80";s:12:"rcommaaccent";s:3:"-80";s:9:"semicolon";s:3:"-40";s:1:"u";s:3:"-90";s:6:"uacute";s:3:"-90";s:11:"ucircumflex";s:3:"-90";s:9:"udieresis";s:3:"-90";s:6:"ugrave";s:3:"-90";s:13:"uhungarumlaut";s:3:"-90";s:7:"umacron";s:3:"-90";s:7:"uogonek";s:3:"-90";s:5:"uring";s:3:"-90";s:1:"w";s:3:"-60";s:1:"y";s:3:"-60";s:6:"yacute";s:3:"-60";s:9:"ydieresis";s:3:"-60";}s:12:"Tcommaaccent";a:68:{s:1:"A";s:3:"-90";s:6:"Aacute";s:3:"-90";s:6:"Abreve";s:3:"-90";s:11:"Acircumflex";s:3:"-90";s:9:"Adieresis";s:3:"-90";s:6:"Agrave";s:3:"-90";s:7:"Amacron";s:3:"-90";s:7:"Aogonek";s:3:"-90";s:5:"Aring";s:3:"-90";s:6:"Atilde";s:3:"-90";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"a";s:3:"-80";s:6:"aacute";s:3:"-80";s:6:"abreve";s:3:"-80";s:11:"acircumflex";s:3:"-80";s:9:"adieresis";s:3:"-80";s:6:"agrave";s:3:"-80";s:7:"amacron";s:3:"-80";s:7:"aogonek";s:3:"-80";s:5:"aring";s:3:"-80";s:6:"atilde";s:3:"-80";s:5:"colon";s:3:"-40";s:5:"comma";s:3:"-80";s:1:"e";s:3:"-60";s:6:"eacute";s:3:"-60";s:6:"ecaron";s:3:"-60";s:11:"ecircumflex";s:3:"-60";s:9:"edieresis";s:3:"-60";s:10:"edotaccent";s:3:"-60";s:6:"egrave";s:3:"-60";s:7:"emacron";s:3:"-60";s:7:"eogonek";s:3:"-60";s:6:"hyphen";s:4:"-120";s:1:"o";s:3:"-80";s:6:"oacute";s:3:"-80";s:11:"ocircumflex";s:3:"-80";s:9:"odieresis";s:3:"-80";s:6:"ograve";s:3:"-80";s:13:"ohungarumlaut";s:3:"-80";s:7:"omacron";s:3:"-80";s:6:"oslash";s:3:"-80";s:6:"otilde";s:3:"-80";s:6:"period";s:3:"-80";s:1:"r";s:3:"-80";s:6:"racute";s:3:"-80";s:12:"rcommaaccent";s:3:"-80";s:9:"semicolon";s:3:"-40";s:1:"u";s:3:"-90";s:6:"uacute";s:3:"-90";s:11:"ucircumflex";s:3:"-90";s:9:"udieresis";s:3:"-90";s:6:"ugrave";s:3:"-90";s:13:"uhungarumlaut";s:3:"-90";s:7:"umacron";s:3:"-90";s:7:"uogonek";s:3:"-90";s:5:"uring";s:3:"-90";s:1:"w";s:3:"-60";s:1:"y";s:3:"-60";s:6:"yacute";s:3:"-60";s:9:"ydieresis";s:3:"-60";}s:1:"U";a:12:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:5:"comma";s:3:"-30";s:6:"period";s:3:"-30";}s:6:"Uacute";a:12:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:5:"comma";s:3:"-30";s:6:"period";s:3:"-30";}s:11:"Ucircumflex";a:12:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:5:"comma";s:3:"-30";s:6:"period";s:3:"-30";}s:9:"Udieresis";a:12:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:5:"comma";s:3:"-30";s:6:"period";s:3:"-30";}s:6:"Ugrave";a:12:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:5:"comma";s:3:"-30";s:6:"period";s:3:"-30";}s:13:"Uhungarumlaut";a:12:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:5:"comma";s:3:"-30";s:6:"period";s:3:"-30";}s:7:"Umacron";a:12:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:5:"comma";s:3:"-30";s:6:"period";s:3:"-30";}s:7:"Uogonek";a:12:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:5:"comma";s:3:"-30";s:6:"period";s:3:"-30";}s:5:"Uring";a:12:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:5:"comma";s:3:"-30";s:6:"period";s:3:"-30";}s:1:"V";a:64:{s:1:"A";s:3:"-80";s:6:"Aacute";s:3:"-80";s:6:"Abreve";s:3:"-80";s:11:"Acircumflex";s:3:"-80";s:9:"Adieresis";s:3:"-80";s:6:"Agrave";s:3:"-80";s:7:"Amacron";s:3:"-80";s:7:"Aogonek";s:3:"-80";s:5:"Aring";s:3:"-80";s:6:"Atilde";s:3:"-80";s:1:"G";s:3:"-50";s:6:"Gbreve";s:3:"-50";s:12:"Gcommaaccent";s:3:"-50";s:1:"O";s:3:"-50";s:6:"Oacute";s:3:"-50";s:11:"Ocircumflex";s:3:"-50";s:9:"Odieresis";s:3:"-50";s:6:"Ograve";s:3:"-50";s:13:"Ohungarumlaut";s:3:"-50";s:7:"Omacron";s:3:"-50";s:6:"Oslash";s:3:"-50";s:6:"Otilde";s:3:"-50";s:1:"a";s:3:"-60";s:6:"aacute";s:3:"-60";s:6:"abreve";s:3:"-60";s:11:"acircumflex";s:3:"-60";s:9:"adieresis";s:3:"-60";s:6:"agrave";s:3:"-60";s:7:"amacron";s:3:"-60";s:7:"aogonek";s:3:"-60";s:5:"aring";s:3:"-60";s:6:"atilde";s:3:"-60";s:5:"colon";s:3:"-40";s:5:"comma";s:4:"-120";s:1:"e";s:3:"-50";s:6:"eacute";s:3:"-50";s:6:"ecaron";s:3:"-50";s:11:"ecircumflex";s:3:"-50";s:9:"edieresis";s:3:"-50";s:10:"edotaccent";s:3:"-50";s:6:"egrave";s:3:"-50";s:7:"emacron";s:3:"-50";s:7:"eogonek";s:3:"-50";s:6:"hyphen";s:3:"-80";s:1:"o";s:3:"-90";s:6:"oacute";s:3:"-90";s:11:"ocircumflex";s:3:"-90";s:9:"odieresis";s:3:"-90";s:6:"ograve";s:3:"-90";s:13:"ohungarumlaut";s:3:"-90";s:7:"omacron";s:3:"-90";s:6:"oslash";s:3:"-90";s:6:"otilde";s:3:"-90";s:6:"period";s:4:"-120";s:9:"semicolon";s:3:"-40";s:1:"u";s:3:"-60";s:6:"uacute";s:3:"-60";s:11:"ucircumflex";s:3:"-60";s:9:"udieresis";s:3:"-60";s:6:"ugrave";s:3:"-60";s:13:"uhungarumlaut";s:3:"-60";s:7:"umacron";s:3:"-60";s:7:"uogonek";s:3:"-60";s:5:"uring";s:3:"-60";}s:1:"W";a:64:{s:1:"A";s:3:"-60";s:6:"Aacute";s:3:"-60";s:6:"Abreve";s:3:"-60";s:11:"Acircumflex";s:3:"-60";s:9:"Adieresis";s:3:"-60";s:6:"Agrave";s:3:"-60";s:7:"Amacron";s:3:"-60";s:7:"Aogonek";s:3:"-60";s:5:"Aring";s:3:"-60";s:6:"Atilde";s:3:"-60";s:1:"O";s:3:"-20";s:6:"Oacute";s:3:"-20";s:11:"Ocircumflex";s:3:"-20";s:9:"Odieresis";s:3:"-20";s:6:"Ograve";s:3:"-20";s:13:"Ohungarumlaut";s:3:"-20";s:7:"Omacron";s:3:"-20";s:6:"Oslash";s:3:"-20";s:6:"Otilde";s:3:"-20";s:1:"a";s:3:"-40";s:6:"aacute";s:3:"-40";s:6:"abreve";s:3:"-40";s:11:"acircumflex";s:3:"-40";s:9:"adieresis";s:3:"-40";s:6:"agrave";s:3:"-40";s:7:"amacron";s:3:"-40";s:7:"aogonek";s:3:"-40";s:5:"aring";s:3:"-40";s:6:"atilde";s:3:"-40";s:5:"colon";s:3:"-10";s:5:"comma";s:3:"-80";s:1:"e";s:3:"-35";s:6:"eacute";s:3:"-35";s:6:"ecaron";s:3:"-35";s:11:"ecircumflex";s:3:"-35";s:9:"edieresis";s:3:"-35";s:10:"edotaccent";s:3:"-35";s:6:"egrave";s:3:"-35";s:7:"emacron";s:3:"-35";s:7:"eogonek";s:3:"-35";s:6:"hyphen";s:3:"-40";s:1:"o";s:3:"-60";s:6:"oacute";s:3:"-60";s:11:"ocircumflex";s:3:"-60";s:9:"odieresis";s:3:"-60";s:6:"ograve";s:3:"-60";s:13:"ohungarumlaut";s:3:"-60";s:7:"omacron";s:3:"-60";s:6:"oslash";s:3:"-60";s:6:"otilde";s:3:"-60";s:6:"period";s:3:"-80";s:9:"semicolon";s:3:"-10";s:1:"u";s:3:"-45";s:6:"uacute";s:3:"-45";s:11:"ucircumflex";s:3:"-45";s:9:"udieresis";s:3:"-45";s:6:"ugrave";s:3:"-45";s:13:"uhungarumlaut";s:3:"-45";s:7:"umacron";s:3:"-45";s:7:"uogonek";s:3:"-45";s:5:"uring";s:3:"-45";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:1:"Y";a:60:{s:1:"A";s:4:"-110";s:6:"Aacute";s:4:"-110";s:6:"Abreve";s:4:"-110";s:11:"Acircumflex";s:4:"-110";s:9:"Adieresis";s:4:"-110";s:6:"Agrave";s:4:"-110";s:7:"Amacron";s:4:"-110";s:7:"Aogonek";s:4:"-110";s:5:"Aring";s:4:"-110";s:6:"Atilde";s:4:"-110";s:1:"O";s:3:"-70";s:6:"Oacute";s:3:"-70";s:11:"Ocircumflex";s:3:"-70";s:9:"Odieresis";s:3:"-70";s:6:"Ograve";s:3:"-70";s:13:"Ohungarumlaut";s:3:"-70";s:7:"Omacron";s:3:"-70";s:6:"Oslash";s:3:"-70";s:6:"Otilde";s:3:"-70";s:1:"a";s:3:"-90";s:6:"aacute";s:3:"-90";s:6:"abreve";s:3:"-90";s:11:"acircumflex";s:3:"-90";s:9:"adieresis";s:3:"-90";s:6:"agrave";s:3:"-90";s:7:"amacron";s:3:"-90";s:7:"aogonek";s:3:"-90";s:5:"aring";s:3:"-90";s:6:"atilde";s:3:"-90";s:5:"colon";s:3:"-50";s:5:"comma";s:4:"-100";s:1:"e";s:3:"-80";s:6:"eacute";s:3:"-80";s:6:"ecaron";s:3:"-80";s:11:"ecircumflex";s:3:"-80";s:9:"edieresis";s:3:"-80";s:10:"edotaccent";s:3:"-80";s:6:"egrave";s:3:"-80";s:7:"emacron";s:3:"-80";s:7:"eogonek";s:3:"-80";s:1:"o";s:4:"-100";s:6:"oacute";s:4:"-100";s:11:"ocircumflex";s:4:"-100";s:9:"odieresis";s:4:"-100";s:6:"ograve";s:4:"-100";s:13:"ohungarumlaut";s:4:"-100";s:7:"omacron";s:4:"-100";s:6:"oslash";s:4:"-100";s:6:"otilde";s:4:"-100";s:6:"period";s:4:"-100";s:9:"semicolon";s:3:"-50";s:1:"u";s:4:"-100";s:6:"uacute";s:4:"-100";s:11:"ucircumflex";s:4:"-100";s:9:"udieresis";s:4:"-100";s:6:"ugrave";s:4:"-100";s:13:"uhungarumlaut";s:4:"-100";s:7:"umacron";s:4:"-100";s:7:"uogonek";s:4:"-100";s:5:"uring";s:4:"-100";}s:6:"Yacute";a:60:{s:1:"A";s:4:"-110";s:6:"Aacute";s:4:"-110";s:6:"Abreve";s:4:"-110";s:11:"Acircumflex";s:4:"-110";s:9:"Adieresis";s:4:"-110";s:6:"Agrave";s:4:"-110";s:7:"Amacron";s:4:"-110";s:7:"Aogonek";s:4:"-110";s:5:"Aring";s:4:"-110";s:6:"Atilde";s:4:"-110";s:1:"O";s:3:"-70";s:6:"Oacute";s:3:"-70";s:11:"Ocircumflex";s:3:"-70";s:9:"Odieresis";s:3:"-70";s:6:"Ograve";s:3:"-70";s:13:"Ohungarumlaut";s:3:"-70";s:7:"Omacron";s:3:"-70";s:6:"Oslash";s:3:"-70";s:6:"Otilde";s:3:"-70";s:1:"a";s:3:"-90";s:6:"aacute";s:3:"-90";s:6:"abreve";s:3:"-90";s:11:"acircumflex";s:3:"-90";s:9:"adieresis";s:3:"-90";s:6:"agrave";s:3:"-90";s:7:"amacron";s:3:"-90";s:7:"aogonek";s:3:"-90";s:5:"aring";s:3:"-90";s:6:"atilde";s:3:"-90";s:5:"colon";s:3:"-50";s:5:"comma";s:4:"-100";s:1:"e";s:3:"-80";s:6:"eacute";s:3:"-80";s:6:"ecaron";s:3:"-80";s:11:"ecircumflex";s:3:"-80";s:9:"edieresis";s:3:"-80";s:10:"edotaccent";s:3:"-80";s:6:"egrave";s:3:"-80";s:7:"emacron";s:3:"-80";s:7:"eogonek";s:3:"-80";s:1:"o";s:4:"-100";s:6:"oacute";s:4:"-100";s:11:"ocircumflex";s:4:"-100";s:9:"odieresis";s:4:"-100";s:6:"ograve";s:4:"-100";s:13:"ohungarumlaut";s:4:"-100";s:7:"omacron";s:4:"-100";s:6:"oslash";s:4:"-100";s:6:"otilde";s:4:"-100";s:6:"period";s:4:"-100";s:9:"semicolon";s:3:"-50";s:1:"u";s:4:"-100";s:6:"uacute";s:4:"-100";s:11:"ucircumflex";s:4:"-100";s:9:"udieresis";s:4:"-100";s:6:"ugrave";s:4:"-100";s:13:"uhungarumlaut";s:4:"-100";s:7:"umacron";s:4:"-100";s:7:"uogonek";s:4:"-100";s:5:"uring";s:4:"-100";}s:9:"Ydieresis";a:60:{s:1:"A";s:4:"-110";s:6:"Aacute";s:4:"-110";s:6:"Abreve";s:4:"-110";s:11:"Acircumflex";s:4:"-110";s:9:"Adieresis";s:4:"-110";s:6:"Agrave";s:4:"-110";s:7:"Amacron";s:4:"-110";s:7:"Aogonek";s:4:"-110";s:5:"Aring";s:4:"-110";s:6:"Atilde";s:4:"-110";s:1:"O";s:3:"-70";s:6:"Oacute";s:3:"-70";s:11:"Ocircumflex";s:3:"-70";s:9:"Odieresis";s:3:"-70";s:6:"Ograve";s:3:"-70";s:13:"Ohungarumlaut";s:3:"-70";s:7:"Omacron";s:3:"-70";s:6:"Oslash";s:3:"-70";s:6:"Otilde";s:3:"-70";s:1:"a";s:3:"-90";s:6:"aacute";s:3:"-90";s:6:"abreve";s:3:"-90";s:11:"acircumflex";s:3:"-90";s:9:"adieresis";s:3:"-90";s:6:"agrave";s:3:"-90";s:7:"amacron";s:3:"-90";s:7:"aogonek";s:3:"-90";s:5:"aring";s:3:"-90";s:6:"atilde";s:3:"-90";s:5:"colon";s:3:"-50";s:5:"comma";s:4:"-100";s:1:"e";s:3:"-80";s:6:"eacute";s:3:"-80";s:6:"ecaron";s:3:"-80";s:11:"ecircumflex";s:3:"-80";s:9:"edieresis";s:3:"-80";s:10:"edotaccent";s:3:"-80";s:6:"egrave";s:3:"-80";s:7:"emacron";s:3:"-80";s:7:"eogonek";s:3:"-80";s:1:"o";s:4:"-100";s:6:"oacute";s:4:"-100";s:11:"ocircumflex";s:4:"-100";s:9:"odieresis";s:4:"-100";s:6:"ograve";s:4:"-100";s:13:"ohungarumlaut";s:4:"-100";s:7:"omacron";s:4:"-100";s:6:"oslash";s:4:"-100";s:6:"otilde";s:4:"-100";s:6:"period";s:4:"-100";s:9:"semicolon";s:3:"-50";s:1:"u";s:4:"-100";s:6:"uacute";s:4:"-100";s:11:"ucircumflex";s:4:"-100";s:9:"udieresis";s:4:"-100";s:6:"ugrave";s:4:"-100";s:13:"uhungarumlaut";s:4:"-100";s:7:"umacron";s:4:"-100";s:7:"uogonek";s:4:"-100";s:5:"uring";s:4:"-100";}s:1:"a";a:8:{s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:6:"aacute";a:8:{s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:6:"abreve";a:8:{s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:11:"acircumflex";a:8:{s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:9:"adieresis";a:8:{s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:6:"agrave";a:8:{s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:7:"amacron";a:8:{s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:7:"aogonek";a:8:{s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:5:"aring";a:8:{s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:6:"atilde";a:8:{s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:1:"b";a:17:{s:1:"l";s:3:"-10";s:6:"lacute";s:3:"-10";s:12:"lcommaaccent";s:3:"-10";s:6:"lslash";s:3:"-10";s:1:"u";s:3:"-20";s:6:"uacute";s:3:"-20";s:11:"ucircumflex";s:3:"-20";s:9:"udieresis";s:3:"-20";s:6:"ugrave";s:3:"-20";s:13:"uhungarumlaut";s:3:"-20";s:7:"umacron";s:3:"-20";s:7:"uogonek";s:3:"-20";s:5:"uring";s:3:"-20";s:1:"v";s:3:"-20";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:1:"c";a:10:{s:1:"h";s:3:"-10";s:1:"k";s:3:"-20";s:12:"kcommaaccent";s:3:"-20";s:1:"l";s:3:"-20";s:6:"lacute";s:3:"-20";s:12:"lcommaaccent";s:3:"-20";s:6:"lslash";s:3:"-20";s:1:"y";s:3:"-10";s:6:"yacute";s:3:"-10";s:9:"ydieresis";s:3:"-10";}s:6:"cacute";a:10:{s:1:"h";s:3:"-10";s:1:"k";s:3:"-20";s:12:"kcommaaccent";s:3:"-20";s:1:"l";s:3:"-20";s:6:"lacute";s:3:"-20";s:12:"lcommaaccent";s:3:"-20";s:6:"lslash";s:3:"-20";s:1:"y";s:3:"-10";s:6:"yacute";s:3:"-10";s:9:"ydieresis";s:3:"-10";}s:6:"ccaron";a:10:{s:1:"h";s:3:"-10";s:1:"k";s:3:"-20";s:12:"kcommaaccent";s:3:"-20";s:1:"l";s:3:"-20";s:6:"lacute";s:3:"-20";s:12:"lcommaaccent";s:3:"-20";s:6:"lslash";s:3:"-20";s:1:"y";s:3:"-10";s:6:"yacute";s:3:"-10";s:9:"ydieresis";s:3:"-10";}s:8:"ccedilla";a:10:{s:1:"h";s:3:"-10";s:1:"k";s:3:"-20";s:12:"kcommaaccent";s:3:"-20";s:1:"l";s:3:"-20";s:6:"lacute";s:3:"-20";s:12:"lcommaaccent";s:3:"-20";s:6:"lslash";s:3:"-20";s:1:"y";s:3:"-10";s:6:"yacute";s:3:"-10";s:9:"ydieresis";s:3:"-10";}s:5:"colon";a:1:{s:5:"space";s:3:"-40";}s:5:"comma";a:3:{s:13:"quotedblright";s:4:"-120";s:10:"quoteright";s:4:"-120";s:5:"space";s:3:"-40";}s:1:"d";a:7:{s:1:"d";s:3:"-10";s:6:"dcroat";s:3:"-10";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:6:"dcroat";a:7:{s:1:"d";s:3:"-10";s:6:"dcroat";s:3:"-10";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:1:"e";a:8:{s:5:"comma";s:2:"10";s:6:"period";s:2:"20";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-15";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:6:"eacute";a:8:{s:5:"comma";s:2:"10";s:6:"period";s:2:"20";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-15";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:6:"ecaron";a:8:{s:5:"comma";s:2:"10";s:6:"period";s:2:"20";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-15";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:11:"ecircumflex";a:8:{s:5:"comma";s:2:"10";s:6:"period";s:2:"20";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-15";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:9:"edieresis";a:8:{s:5:"comma";s:2:"10";s:6:"period";s:2:"20";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-15";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:10:"edotaccent";a:8:{s:5:"comma";s:2:"10";s:6:"period";s:2:"20";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-15";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:6:"egrave";a:8:{s:5:"comma";s:2:"10";s:6:"period";s:2:"20";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-15";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:7:"emacron";a:8:{s:5:"comma";s:2:"10";s:6:"period";s:2:"20";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-15";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:7:"eogonek";a:8:{s:5:"comma";s:2:"10";s:6:"period";s:2:"20";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-15";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:1:"f";a:22:{s:5:"comma";s:3:"-10";s:1:"e";s:3:"-10";s:6:"eacute";s:3:"-10";s:6:"ecaron";s:3:"-10";s:11:"ecircumflex";s:3:"-10";s:9:"edieresis";s:3:"-10";s:10:"edotaccent";s:3:"-10";s:6:"egrave";s:3:"-10";s:7:"emacron";s:3:"-10";s:7:"eogonek";s:3:"-10";s:1:"o";s:3:"-20";s:6:"oacute";s:3:"-20";s:11:"ocircumflex";s:3:"-20";s:9:"odieresis";s:3:"-20";s:6:"ograve";s:3:"-20";s:13:"ohungarumlaut";s:3:"-20";s:7:"omacron";s:3:"-20";s:6:"oslash";s:3:"-20";s:6:"otilde";s:3:"-20";s:6:"period";s:3:"-10";s:13:"quotedblright";s:2:"30";s:10:"quoteright";s:2:"30";}s:1:"g";a:12:{s:1:"e";s:2:"10";s:6:"eacute";s:2:"10";s:6:"ecaron";s:2:"10";s:11:"ecircumflex";s:2:"10";s:9:"edieresis";s:2:"10";s:10:"edotaccent";s:2:"10";s:6:"egrave";s:2:"10";s:7:"emacron";s:2:"10";s:7:"eogonek";s:2:"10";s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";}s:6:"gbreve";a:12:{s:1:"e";s:2:"10";s:6:"eacute";s:2:"10";s:6:"ecaron";s:2:"10";s:11:"ecircumflex";s:2:"10";s:9:"edieresis";s:2:"10";s:10:"edotaccent";s:2:"10";s:6:"egrave";s:2:"10";s:7:"emacron";s:2:"10";s:7:"eogonek";s:2:"10";s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";}s:12:"gcommaaccent";a:12:{s:1:"e";s:2:"10";s:6:"eacute";s:2:"10";s:6:"ecaron";s:2:"10";s:11:"ecircumflex";s:2:"10";s:9:"edieresis";s:2:"10";s:10:"edotaccent";s:2:"10";s:6:"egrave";s:2:"10";s:7:"emacron";s:2:"10";s:7:"eogonek";s:2:"10";s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";}s:1:"h";a:3:{s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:1:"k";a:9:{s:1:"o";s:3:"-15";s:6:"oacute";s:3:"-15";s:11:"ocircumflex";s:3:"-15";s:9:"odieresis";s:3:"-15";s:6:"ograve";s:3:"-15";s:13:"ohungarumlaut";s:3:"-15";s:7:"omacron";s:3:"-15";s:6:"oslash";s:3:"-15";s:6:"otilde";s:3:"-15";}s:12:"kcommaaccent";a:9:{s:1:"o";s:3:"-15";s:6:"oacute";s:3:"-15";s:11:"ocircumflex";s:3:"-15";s:9:"odieresis";s:3:"-15";s:6:"ograve";s:3:"-15";s:13:"ohungarumlaut";s:3:"-15";s:7:"omacron";s:3:"-15";s:6:"oslash";s:3:"-15";s:6:"otilde";s:3:"-15";}s:1:"l";a:4:{s:1:"w";s:3:"-15";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:6:"lacute";a:4:{s:1:"w";s:3:"-15";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:12:"lcommaaccent";a:4:{s:1:"w";s:3:"-15";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:6:"lslash";a:4:{s:1:"w";s:3:"-15";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:1:"m";a:12:{s:1:"u";s:3:"-20";s:6:"uacute";s:3:"-20";s:11:"ucircumflex";s:3:"-20";s:9:"udieresis";s:3:"-20";s:6:"ugrave";s:3:"-20";s:13:"uhungarumlaut";s:3:"-20";s:7:"umacron";s:3:"-20";s:7:"uogonek";s:3:"-20";s:5:"uring";s:3:"-20";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:1:"n";a:13:{s:1:"u";s:3:"-10";s:6:"uacute";s:3:"-10";s:11:"ucircumflex";s:3:"-10";s:9:"udieresis";s:3:"-10";s:6:"ugrave";s:3:"-10";s:13:"uhungarumlaut";s:3:"-10";s:7:"umacron";s:3:"-10";s:7:"uogonek";s:3:"-10";s:5:"uring";s:3:"-10";s:1:"v";s:3:"-40";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:6:"nacute";a:13:{s:1:"u";s:3:"-10";s:6:"uacute";s:3:"-10";s:11:"ucircumflex";s:3:"-10";s:9:"udieresis";s:3:"-10";s:6:"ugrave";s:3:"-10";s:13:"uhungarumlaut";s:3:"-10";s:7:"umacron";s:3:"-10";s:7:"uogonek";s:3:"-10";s:5:"uring";s:3:"-10";s:1:"v";s:3:"-40";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:6:"ncaron";a:13:{s:1:"u";s:3:"-10";s:6:"uacute";s:3:"-10";s:11:"ucircumflex";s:3:"-10";s:9:"udieresis";s:3:"-10";s:6:"ugrave";s:3:"-10";s:13:"uhungarumlaut";s:3:"-10";s:7:"umacron";s:3:"-10";s:7:"uogonek";s:3:"-10";s:5:"uring";s:3:"-10";s:1:"v";s:3:"-40";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:12:"ncommaaccent";a:13:{s:1:"u";s:3:"-10";s:6:"uacute";s:3:"-10";s:11:"ucircumflex";s:3:"-10";s:9:"udieresis";s:3:"-10";s:6:"ugrave";s:3:"-10";s:13:"uhungarumlaut";s:3:"-10";s:7:"umacron";s:3:"-10";s:7:"uogonek";s:3:"-10";s:5:"uring";s:3:"-10";s:1:"v";s:3:"-40";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:6:"ntilde";a:13:{s:1:"u";s:3:"-10";s:6:"uacute";s:3:"-10";s:11:"ucircumflex";s:3:"-10";s:9:"udieresis";s:3:"-10";s:6:"ugrave";s:3:"-10";s:13:"uhungarumlaut";s:3:"-10";s:7:"umacron";s:3:"-10";s:7:"uogonek";s:3:"-10";s:5:"uring";s:3:"-10";s:1:"v";s:3:"-40";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:1:"o";a:6:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-15";s:1:"x";s:3:"-30";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:6:"oacute";a:6:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-15";s:1:"x";s:3:"-30";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:11:"ocircumflex";a:6:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-15";s:1:"x";s:3:"-30";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:9:"odieresis";a:6:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-15";s:1:"x";s:3:"-30";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:6:"ograve";a:6:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-15";s:1:"x";s:3:"-30";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:13:"ohungarumlaut";a:6:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-15";s:1:"x";s:3:"-30";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:7:"omacron";a:6:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-15";s:1:"x";s:3:"-30";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:6:"oslash";a:6:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-15";s:1:"x";s:3:"-30";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:6:"otilde";a:6:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-15";s:1:"x";s:3:"-30";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:1:"p";a:3:{s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:6:"period";a:3:{s:13:"quotedblright";s:4:"-120";s:10:"quoteright";s:4:"-120";s:5:"space";s:3:"-40";}s:13:"quotedblright";a:1:{s:5:"space";s:3:"-80";}s:9:"quoteleft";a:1:{s:9:"quoteleft";s:3:"-46";}s:10:"quoteright";a:18:{s:1:"d";s:3:"-80";s:6:"dcroat";s:3:"-80";s:1:"l";s:3:"-20";s:6:"lacute";s:3:"-20";s:12:"lcommaaccent";s:3:"-20";s:6:"lslash";s:3:"-20";s:10:"quoteright";s:3:"-46";s:1:"r";s:3:"-40";s:6:"racute";s:3:"-40";s:6:"rcaron";s:3:"-40";s:12:"rcommaaccent";s:3:"-40";s:1:"s";s:3:"-60";s:6:"sacute";s:3:"-60";s:6:"scaron";s:3:"-60";s:8:"scedilla";s:3:"-60";s:12:"scommaaccent";s:3:"-60";s:5:"space";s:3:"-80";s:1:"v";s:3:"-20";}s:1:"r";a:33:{s:1:"c";s:3:"-20";s:6:"cacute";s:3:"-20";s:6:"ccaron";s:3:"-20";s:8:"ccedilla";s:3:"-20";s:5:"comma";s:3:"-60";s:1:"d";s:3:"-20";s:6:"dcroat";s:3:"-20";s:1:"g";s:3:"-15";s:6:"gbreve";s:3:"-15";s:12:"gcommaaccent";s:3:"-15";s:6:"hyphen";s:3:"-20";s:1:"o";s:3:"-20";s:6:"oacute";s:3:"-20";s:11:"ocircumflex";s:3:"-20";s:9:"odieresis";s:3:"-20";s:6:"ograve";s:3:"-20";s:13:"ohungarumlaut";s:3:"-20";s:7:"omacron";s:3:"-20";s:6:"oslash";s:3:"-20";s:6:"otilde";s:3:"-20";s:6:"period";s:3:"-60";s:1:"q";s:3:"-20";s:1:"s";s:3:"-15";s:6:"sacute";s:3:"-15";s:6:"scaron";s:3:"-15";s:8:"scedilla";s:3:"-15";s:12:"scommaaccent";s:3:"-15";s:1:"t";s:2:"20";s:12:"tcommaaccent";s:2:"20";s:1:"v";s:2:"10";s:1:"y";s:2:"10";s:6:"yacute";s:2:"10";s:9:"ydieresis";s:2:"10";}s:6:"racute";a:33:{s:1:"c";s:3:"-20";s:6:"cacute";s:3:"-20";s:6:"ccaron";s:3:"-20";s:8:"ccedilla";s:3:"-20";s:5:"comma";s:3:"-60";s:1:"d";s:3:"-20";s:6:"dcroat";s:3:"-20";s:1:"g";s:3:"-15";s:6:"gbreve";s:3:"-15";s:12:"gcommaaccent";s:3:"-15";s:6:"hyphen";s:3:"-20";s:1:"o";s:3:"-20";s:6:"oacute";s:3:"-20";s:11:"ocircumflex";s:3:"-20";s:9:"odieresis";s:3:"-20";s:6:"ograve";s:3:"-20";s:13:"ohungarumlaut";s:3:"-20";s:7:"omacron";s:3:"-20";s:6:"oslash";s:3:"-20";s:6:"otilde";s:3:"-20";s:6:"period";s:3:"-60";s:1:"q";s:3:"-20";s:1:"s";s:3:"-15";s:6:"sacute";s:3:"-15";s:6:"scaron";s:3:"-15";s:8:"scedilla";s:3:"-15";s:12:"scommaaccent";s:3:"-15";s:1:"t";s:2:"20";s:12:"tcommaaccent";s:2:"20";s:1:"v";s:2:"10";s:1:"y";s:2:"10";s:6:"yacute";s:2:"10";s:9:"ydieresis";s:2:"10";}s:6:"rcaron";a:33:{s:1:"c";s:3:"-20";s:6:"cacute";s:3:"-20";s:6:"ccaron";s:3:"-20";s:8:"ccedilla";s:3:"-20";s:5:"comma";s:3:"-60";s:1:"d";s:3:"-20";s:6:"dcroat";s:3:"-20";s:1:"g";s:3:"-15";s:6:"gbreve";s:3:"-15";s:12:"gcommaaccent";s:3:"-15";s:6:"hyphen";s:3:"-20";s:1:"o";s:3:"-20";s:6:"oacute";s:3:"-20";s:11:"ocircumflex";s:3:"-20";s:9:"odieresis";s:3:"-20";s:6:"ograve";s:3:"-20";s:13:"ohungarumlaut";s:3:"-20";s:7:"omacron";s:3:"-20";s:6:"oslash";s:3:"-20";s:6:"otilde";s:3:"-20";s:6:"period";s:3:"-60";s:1:"q";s:3:"-20";s:1:"s";s:3:"-15";s:6:"sacute";s:3:"-15";s:6:"scaron";s:3:"-15";s:8:"scedilla";s:3:"-15";s:12:"scommaaccent";s:3:"-15";s:1:"t";s:2:"20";s:12:"tcommaaccent";s:2:"20";s:1:"v";s:2:"10";s:1:"y";s:2:"10";s:6:"yacute";s:2:"10";s:9:"ydieresis";s:2:"10";}s:12:"rcommaaccent";a:33:{s:1:"c";s:3:"-20";s:6:"cacute";s:3:"-20";s:6:"ccaron";s:3:"-20";s:8:"ccedilla";s:3:"-20";s:5:"comma";s:3:"-60";s:1:"d";s:3:"-20";s:6:"dcroat";s:3:"-20";s:1:"g";s:3:"-15";s:6:"gbreve";s:3:"-15";s:12:"gcommaaccent";s:3:"-15";s:6:"hyphen";s:3:"-20";s:1:"o";s:3:"-20";s:6:"oacute";s:3:"-20";s:11:"ocircumflex";s:3:"-20";s:9:"odieresis";s:3:"-20";s:6:"ograve";s:3:"-20";s:13:"ohungarumlaut";s:3:"-20";s:7:"omacron";s:3:"-20";s:6:"oslash";s:3:"-20";s:6:"otilde";s:3:"-20";s:6:"period";s:3:"-60";s:1:"q";s:3:"-20";s:1:"s";s:3:"-15";s:6:"sacute";s:3:"-15";s:6:"scaron";s:3:"-15";s:8:"scedilla";s:3:"-15";s:12:"scommaaccent";s:3:"-15";s:1:"t";s:2:"20";s:12:"tcommaaccent";s:2:"20";s:1:"v";s:2:"10";s:1:"y";s:2:"10";s:6:"yacute";s:2:"10";s:9:"ydieresis";s:2:"10";}s:1:"s";a:1:{s:1:"w";s:3:"-15";}s:6:"sacute";a:1:{s:1:"w";s:3:"-15";}s:6:"scaron";a:1:{s:1:"w";s:3:"-15";}s:8:"scedilla";a:1:{s:1:"w";s:3:"-15";}s:12:"scommaaccent";a:1:{s:1:"w";s:3:"-15";}s:9:"semicolon";a:1:{s:5:"space";s:3:"-40";}s:5:"space";a:10:{s:1:"T";s:4:"-100";s:6:"Tcaron";s:4:"-100";s:12:"Tcommaaccent";s:4:"-100";s:1:"V";s:3:"-80";s:1:"W";s:3:"-80";s:1:"Y";s:4:"-120";s:6:"Yacute";s:4:"-120";s:9:"Ydieresis";s:4:"-120";s:12:"quotedblleft";s:3:"-80";s:9:"quoteleft";s:3:"-60";}s:1:"v";a:21:{s:1:"a";s:3:"-20";s:6:"aacute";s:3:"-20";s:6:"abreve";s:3:"-20";s:11:"acircumflex";s:3:"-20";s:9:"adieresis";s:3:"-20";s:6:"agrave";s:3:"-20";s:7:"amacron";s:3:"-20";s:7:"aogonek";s:3:"-20";s:5:"aring";s:3:"-20";s:6:"atilde";s:3:"-20";s:5:"comma";s:3:"-80";s:1:"o";s:3:"-30";s:6:"oacute";s:3:"-30";s:11:"ocircumflex";s:3:"-30";s:9:"odieresis";s:3:"-30";s:6:"ograve";s:3:"-30";s:13:"ohungarumlaut";s:3:"-30";s:7:"omacron";s:3:"-30";s:6:"oslash";s:3:"-30";s:6:"otilde";s:3:"-30";s:6:"period";s:3:"-80";}s:1:"w";a:11:{s:5:"comma";s:3:"-40";s:1:"o";s:3:"-20";s:6:"oacute";s:3:"-20";s:11:"ocircumflex";s:3:"-20";s:9:"odieresis";s:3:"-20";s:6:"ograve";s:3:"-20";s:13:"ohungarumlaut";s:3:"-20";s:7:"omacron";s:3:"-20";s:6:"oslash";s:3:"-20";s:6:"otilde";s:3:"-20";s:6:"period";s:3:"-40";}s:1:"x";a:9:{s:1:"e";s:3:"-10";s:6:"eacute";s:3:"-10";s:6:"ecaron";s:3:"-10";s:11:"ecircumflex";s:3:"-10";s:9:"edieresis";s:3:"-10";s:10:"edotaccent";s:3:"-10";s:6:"egrave";s:3:"-10";s:7:"emacron";s:3:"-10";s:7:"eogonek";s:3:"-10";}s:1:"y";a:30:{s:1:"a";s:3:"-30";s:6:"aacute";s:3:"-30";s:6:"abreve";s:3:"-30";s:11:"acircumflex";s:3:"-30";s:9:"adieresis";s:3:"-30";s:6:"agrave";s:3:"-30";s:7:"amacron";s:3:"-30";s:7:"aogonek";s:3:"-30";s:5:"aring";s:3:"-30";s:6:"atilde";s:3:"-30";s:5:"comma";s:3:"-80";s:1:"e";s:3:"-10";s:6:"eacute";s:3:"-10";s:6:"ecaron";s:3:"-10";s:11:"ecircumflex";s:3:"-10";s:9:"edieresis";s:3:"-10";s:10:"edotaccent";s:3:"-10";s:6:"egrave";s:3:"-10";s:7:"emacron";s:3:"-10";s:7:"eogonek";s:3:"-10";s:1:"o";s:3:"-25";s:6:"oacute";s:3:"-25";s:11:"ocircumflex";s:3:"-25";s:9:"odieresis";s:3:"-25";s:6:"ograve";s:3:"-25";s:13:"ohungarumlaut";s:3:"-25";s:7:"omacron";s:3:"-25";s:6:"oslash";s:3:"-25";s:6:"otilde";s:3:"-25";s:6:"period";s:3:"-80";}s:6:"yacute";a:30:{s:1:"a";s:3:"-30";s:6:"aacute";s:3:"-30";s:6:"abreve";s:3:"-30";s:11:"acircumflex";s:3:"-30";s:9:"adieresis";s:3:"-30";s:6:"agrave";s:3:"-30";s:7:"amacron";s:3:"-30";s:7:"aogonek";s:3:"-30";s:5:"aring";s:3:"-30";s:6:"atilde";s:3:"-30";s:5:"comma";s:3:"-80";s:1:"e";s:3:"-10";s:6:"eacute";s:3:"-10";s:6:"ecaron";s:3:"-10";s:11:"ecircumflex";s:3:"-10";s:9:"edieresis";s:3:"-10";s:10:"edotaccent";s:3:"-10";s:6:"egrave";s:3:"-10";s:7:"emacron";s:3:"-10";s:7:"eogonek";s:3:"-10";s:1:"o";s:3:"-25";s:6:"oacute";s:3:"-25";s:11:"ocircumflex";s:3:"-25";s:9:"odieresis";s:3:"-25";s:6:"ograve";s:3:"-25";s:13:"ohungarumlaut";s:3:"-25";s:7:"omacron";s:3:"-25";s:6:"oslash";s:3:"-25";s:6:"otilde";s:3:"-25";s:6:"period";s:3:"-80";}s:9:"ydieresis";a:30:{s:1:"a";s:3:"-30";s:6:"aacute";s:3:"-30";s:6:"abreve";s:3:"-30";s:11:"acircumflex";s:3:"-30";s:9:"adieresis";s:3:"-30";s:6:"agrave";s:3:"-30";s:7:"amacron";s:3:"-30";s:7:"aogonek";s:3:"-30";s:5:"aring";s:3:"-30";s:6:"atilde";s:3:"-30";s:5:"comma";s:3:"-80";s:1:"e";s:3:"-10";s:6:"eacute";s:3:"-10";s:6:"ecaron";s:3:"-10";s:11:"ecircumflex";s:3:"-10";s:9:"edieresis";s:3:"-10";s:10:"edotaccent";s:3:"-10";s:6:"egrave";s:3:"-10";s:7:"emacron";s:3:"-10";s:7:"eogonek";s:3:"-10";s:1:"o";s:3:"-25";s:6:"oacute";s:3:"-25";s:11:"ocircumflex";s:3:"-25";s:9:"odieresis";s:3:"-25";s:6:"ograve";s:3:"-25";s:13:"ohungarumlaut";s:3:"-25";s:7:"omacron";s:3:"-25";s:6:"oslash";s:3:"-25";s:6:"otilde";s:3:"-25";s:6:"period";s:3:"-80";}s:1:"z";a:9:{s:1:"e";s:2:"10";s:6:"eacute";s:2:"10";s:6:"ecaron";s:2:"10";s:11:"ecircumflex";s:2:"10";s:9:"edieresis";s:2:"10";s:10:"edotaccent";s:2:"10";s:6:"egrave";s:2:"10";s:7:"emacron";s:2:"10";s:7:"eogonek";s:2:"10";}s:6:"zacute";a:9:{s:1:"e";s:2:"10";s:6:"eacute";s:2:"10";s:6:"ecaron";s:2:"10";s:11:"ecircumflex";s:2:"10";s:9:"edieresis";s:2:"10";s:10:"edotaccent";s:2:"10";s:6:"egrave";s:2:"10";s:7:"emacron";s:2:"10";s:7:"eogonek";s:2:"10";}s:6:"zcaron";a:9:{s:1:"e";s:2:"10";s:6:"eacute";s:2:"10";s:6:"ecaron";s:2:"10";s:11:"ecircumflex";s:2:"10";s:9:"edieresis";s:2:"10";s:10:"edotaccent";s:2:"10";s:6:"egrave";s:2:"10";s:7:"emacron";s:2:"10";s:7:"eogonek";s:2:"10";}s:10:"zdotaccent";a:9:{s:1:"e";s:2:"10";s:6:"eacute";s:2:"10";s:6:"ecaron";s:2:"10";s:11:"ecircumflex";s:2:"10";s:9:"edieresis";s:2:"10";s:10:"edotaccent";s:2:"10";s:6:"egrave";s:2:"10";s:7:"emacron";s:2:"10";s:7:"eogonek";s:2:"10";}}s:9:"_version_";i:1;} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Helvetica-BoldOblique.afm b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Helvetica-BoldOblique.afm
new file mode 100755
index 00000000..7f869f37
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Helvetica-BoldOblique.afm
@@ -0,0 +1 @@
+a:22:{s:8:"FontName";s:21:"Helvetica-BoldOblique";s:8:"FullName";s:22:"Helvetica Bold Oblique";s:10:"FamilyName";s:9:"Helvetica";s:6:"Weight";s:4:"Bold";s:11:"ItalicAngle";s:3:"-12";s:12:"IsFixedPitch";s:5:"false";s:12:"CharacterSet";s:13:"ExtendedRoman";s:8:"FontBBox";a:4:{i:0;s:4:"-174";i:1;s:4:"-228";i:2;s:4:"1114";i:3;s:3:"962";}s:17:"UnderlinePosition";s:4:"-100";s:18:"UnderlineThickness";s:2:"50";s:7:"Version";s:7:"002.000";s:14:"EncodingScheme";s:21:"AdobeStandardEncoding";s:9:"CapHeight";s:3:"718";s:7:"XHeight";s:3:"532";s:8:"Ascender";s:3:"718";s:9:"Descender";s:4:"-207";s:5:"StdHW";s:3:"118";s:5:"StdVW";s:3:"140";s:16:"StartCharMetrics";s:3:"315";s:1:"C";a:464:{i:32;a:4:{s:1:"C";s:2:"32";s:2:"WX";s:3:"278";s:1:"N";s:5:"space";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:1:"0";i:3;s:1:"0";}}s:5:"space";a:4:{s:1:"C";s:2:"32";s:2:"WX";s:3:"278";s:1:"N";s:5:"space";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:1:"0";i:3;s:1:"0";}}i:33;a:4:{s:1:"C";s:2:"33";s:2:"WX";s:3:"333";s:1:"N";s:6:"exclam";s:1:"B";a:4:{i:0;s:2:"94";i:1;s:1:"0";i:2;s:3:"397";i:3;s:3:"718";}}s:6:"exclam";a:4:{s:1:"C";s:2:"33";s:2:"WX";s:3:"333";s:1:"N";s:6:"exclam";s:1:"B";a:4:{i:0;s:2:"94";i:1;s:1:"0";i:2;s:3:"397";i:3;s:3:"718";}}i:34;a:4:{s:1:"C";s:2:"34";s:2:"WX";s:3:"474";s:1:"N";s:8:"quotedbl";s:1:"B";a:4:{i:0;s:3:"193";i:1;s:3:"447";i:2;s:3:"529";i:3;s:3:"718";}}s:8:"quotedbl";a:4:{s:1:"C";s:2:"34";s:2:"WX";s:3:"474";s:1:"N";s:8:"quotedbl";s:1:"B";a:4:{i:0;s:3:"193";i:1;s:3:"447";i:2;s:3:"529";i:3;s:3:"718";}}i:35;a:4:{s:1:"C";s:2:"35";s:2:"WX";s:3:"556";s:1:"N";s:10:"numbersign";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:1:"0";i:2;s:3:"644";i:3;s:3:"698";}}s:10:"numbersign";a:4:{s:1:"C";s:2:"35";s:2:"WX";s:3:"556";s:1:"N";s:10:"numbersign";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:1:"0";i:2;s:3:"644";i:3;s:3:"698";}}i:36;a:4:{s:1:"C";s:2:"36";s:2:"WX";s:3:"556";s:1:"N";s:6:"dollar";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:4:"-115";i:2;s:3:"622";i:3;s:3:"775";}}s:6:"dollar";a:4:{s:1:"C";s:2:"36";s:2:"WX";s:3:"556";s:1:"N";s:6:"dollar";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:4:"-115";i:2;s:3:"622";i:3;s:3:"775";}}i:37;a:4:{s:1:"C";s:2:"37";s:2:"WX";s:3:"889";s:1:"N";s:7:"percent";s:1:"B";a:4:{i:0;s:3:"136";i:1;s:3:"-19";i:2;s:3:"901";i:3;s:3:"710";}}s:7:"percent";a:4:{s:1:"C";s:2:"37";s:2:"WX";s:3:"889";s:1:"N";s:7:"percent";s:1:"B";a:4:{i:0;s:3:"136";i:1;s:3:"-19";i:2;s:3:"901";i:3;s:3:"710";}}i:38;a:4:{s:1:"C";s:2:"38";s:2:"WX";s:3:"722";s:1:"N";s:9:"ampersand";s:1:"B";a:4:{i:0;s:2:"89";i:1;s:3:"-19";i:2;s:3:"732";i:3;s:3:"718";}}s:9:"ampersand";a:4:{s:1:"C";s:2:"38";s:2:"WX";s:3:"722";s:1:"N";s:9:"ampersand";s:1:"B";a:4:{i:0;s:2:"89";i:1;s:3:"-19";i:2;s:3:"732";i:3;s:3:"718";}}i:39;a:4:{s:1:"C";s:2:"39";s:2:"WX";s:3:"278";s:1:"N";s:10:"quoteright";s:1:"B";a:4:{i:0;s:3:"167";i:1;s:3:"445";i:2;s:3:"362";i:3;s:3:"718";}}s:10:"quoteright";a:4:{s:1:"C";s:2:"39";s:2:"WX";s:3:"278";s:1:"N";s:10:"quoteright";s:1:"B";a:4:{i:0;s:3:"167";i:1;s:3:"445";i:2;s:3:"362";i:3;s:3:"718";}}i:40;a:4:{s:1:"C";s:2:"40";s:2:"WX";s:3:"333";s:1:"N";s:9:"parenleft";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:4:"-208";i:2;s:3:"470";i:3;s:3:"734";}}s:9:"parenleft";a:4:{s:1:"C";s:2:"40";s:2:"WX";s:3:"333";s:1:"N";s:9:"parenleft";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:4:"-208";i:2;s:3:"470";i:3;s:3:"734";}}i:41;a:4:{s:1:"C";s:2:"41";s:2:"WX";s:3:"333";s:1:"N";s:10:"parenright";s:1:"B";a:4:{i:0;s:3:"-25";i:1;s:4:"-208";i:2;s:3:"369";i:3;s:3:"734";}}s:10:"parenright";a:4:{s:1:"C";s:2:"41";s:2:"WX";s:3:"333";s:1:"N";s:10:"parenright";s:1:"B";a:4:{i:0;s:3:"-25";i:1;s:4:"-208";i:2;s:3:"369";i:3;s:3:"734";}}i:42;a:4:{s:1:"C";s:2:"42";s:2:"WX";s:3:"389";s:1:"N";s:8:"asterisk";s:1:"B";a:4:{i:0;s:3:"146";i:1;s:3:"387";i:2;s:3:"481";i:3;s:3:"718";}}s:8:"asterisk";a:4:{s:1:"C";s:2:"42";s:2:"WX";s:3:"389";s:1:"N";s:8:"asterisk";s:1:"B";a:4:{i:0;s:3:"146";i:1;s:3:"387";i:2;s:3:"481";i:3;s:3:"718";}}i:43;a:4:{s:1:"C";s:2:"43";s:2:"WX";s:3:"584";s:1:"N";s:4:"plus";s:1:"B";a:4:{i:0;s:2:"82";i:1;s:1:"0";i:2;s:3:"610";i:3;s:3:"506";}}s:4:"plus";a:4:{s:1:"C";s:2:"43";s:2:"WX";s:3:"584";s:1:"N";s:4:"plus";s:1:"B";a:4:{i:0;s:2:"82";i:1;s:1:"0";i:2;s:3:"610";i:3;s:3:"506";}}i:44;a:4:{s:1:"C";s:2:"44";s:2:"WX";s:3:"278";s:1:"N";s:5:"comma";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:4:"-168";i:2;s:3:"245";i:3;s:3:"146";}}s:5:"comma";a:4:{s:1:"C";s:2:"44";s:2:"WX";s:3:"278";s:1:"N";s:5:"comma";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:4:"-168";i:2;s:3:"245";i:3;s:3:"146";}}i:45;a:4:{s:1:"C";s:2:"45";s:2:"WX";s:3:"333";s:1:"N";s:6:"hyphen";s:1:"B";a:4:{i:0;s:2:"73";i:1;s:3:"215";i:2;s:3:"379";i:3;s:3:"345";}}s:6:"hyphen";a:4:{s:1:"C";s:2:"45";s:2:"WX";s:3:"333";s:1:"N";s:6:"hyphen";s:1:"B";a:4:{i:0;s:2:"73";i:1;s:3:"215";i:2;s:3:"379";i:3;s:3:"345";}}i:46;a:4:{s:1:"C";s:2:"46";s:2:"WX";s:3:"278";s:1:"N";s:6:"period";s:1:"B";a:4:{i:0;s:2:"64";i:1;s:1:"0";i:2;s:3:"245";i:3;s:3:"146";}}s:6:"period";a:4:{s:1:"C";s:2:"46";s:2:"WX";s:3:"278";s:1:"N";s:6:"period";s:1:"B";a:4:{i:0;s:2:"64";i:1;s:1:"0";i:2;s:3:"245";i:3;s:3:"146";}}i:47;a:4:{s:1:"C";s:2:"47";s:2:"WX";s:3:"278";s:1:"N";s:5:"slash";s:1:"B";a:4:{i:0;s:3:"-37";i:1;s:3:"-19";i:2;s:3:"468";i:3;s:3:"737";}}s:5:"slash";a:4:{s:1:"C";s:2:"47";s:2:"WX";s:3:"278";s:1:"N";s:5:"slash";s:1:"B";a:4:{i:0;s:3:"-37";i:1;s:3:"-19";i:2;s:3:"468";i:3;s:3:"737";}}i:48;a:4:{s:1:"C";s:2:"48";s:2:"WX";s:3:"556";s:1:"N";s:4:"zero";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:3:"-19";i:2;s:3:"617";i:3;s:3:"710";}}s:4:"zero";a:4:{s:1:"C";s:2:"48";s:2:"WX";s:3:"556";s:1:"N";s:4:"zero";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:3:"-19";i:2;s:3:"617";i:3;s:3:"710";}}i:49;a:4:{s:1:"C";s:2:"49";s:2:"WX";s:3:"556";s:1:"N";s:3:"one";s:1:"B";a:4:{i:0;s:3:"173";i:1;s:1:"0";i:2;s:3:"529";i:3;s:3:"710";}}s:3:"one";a:4:{s:1:"C";s:2:"49";s:2:"WX";s:3:"556";s:1:"N";s:3:"one";s:1:"B";a:4:{i:0;s:3:"173";i:1;s:1:"0";i:2;s:3:"529";i:3;s:3:"710";}}i:50;a:4:{s:1:"C";s:2:"50";s:2:"WX";s:3:"556";s:1:"N";s:3:"two";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"619";i:3;s:3:"710";}}s:3:"two";a:4:{s:1:"C";s:2:"50";s:2:"WX";s:3:"556";s:1:"N";s:3:"two";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"619";i:3;s:3:"710";}}i:51;a:4:{s:1:"C";s:2:"51";s:2:"WX";s:3:"556";s:1:"N";s:5:"three";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:3:"-19";i:2;s:3:"608";i:3;s:3:"710";}}s:5:"three";a:4:{s:1:"C";s:2:"51";s:2:"WX";s:3:"556";s:1:"N";s:5:"three";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:3:"-19";i:2;s:3:"608";i:3;s:3:"710";}}i:52;a:4:{s:1:"C";s:2:"52";s:2:"WX";s:3:"556";s:1:"N";s:4:"four";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:1:"0";i:2;s:3:"598";i:3;s:3:"710";}}s:4:"four";a:4:{s:1:"C";s:2:"52";s:2:"WX";s:3:"556";s:1:"N";s:4:"four";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:1:"0";i:2;s:3:"598";i:3;s:3:"710";}}i:53;a:4:{s:1:"C";s:2:"53";s:2:"WX";s:3:"556";s:1:"N";s:4:"five";s:1:"B";a:4:{i:0;s:2:"64";i:1;s:3:"-19";i:2;s:3:"636";i:3;s:3:"698";}}s:4:"five";a:4:{s:1:"C";s:2:"53";s:2:"WX";s:3:"556";s:1:"N";s:4:"five";s:1:"B";a:4:{i:0;s:2:"64";i:1;s:3:"-19";i:2;s:3:"636";i:3;s:3:"698";}}i:54;a:4:{s:1:"C";s:2:"54";s:2:"WX";s:3:"556";s:1:"N";s:3:"six";s:1:"B";a:4:{i:0;s:2:"85";i:1;s:3:"-19";i:2;s:3:"619";i:3;s:3:"710";}}s:3:"six";a:4:{s:1:"C";s:2:"54";s:2:"WX";s:3:"556";s:1:"N";s:3:"six";s:1:"B";a:4:{i:0;s:2:"85";i:1;s:3:"-19";i:2;s:3:"619";i:3;s:3:"710";}}i:55;a:4:{s:1:"C";s:2:"55";s:2:"WX";s:3:"556";s:1:"N";s:5:"seven";s:1:"B";a:4:{i:0;s:3:"125";i:1;s:1:"0";i:2;s:3:"676";i:3;s:3:"698";}}s:5:"seven";a:4:{s:1:"C";s:2:"55";s:2:"WX";s:3:"556";s:1:"N";s:5:"seven";s:1:"B";a:4:{i:0;s:3:"125";i:1;s:1:"0";i:2;s:3:"676";i:3;s:3:"698";}}i:56;a:4:{s:1:"C";s:2:"56";s:2:"WX";s:3:"556";s:1:"N";s:5:"eight";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:3:"-19";i:2;s:3:"616";i:3;s:3:"710";}}s:5:"eight";a:4:{s:1:"C";s:2:"56";s:2:"WX";s:3:"556";s:1:"N";s:5:"eight";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:3:"-19";i:2;s:3:"616";i:3;s:3:"710";}}i:57;a:4:{s:1:"C";s:2:"57";s:2:"WX";s:3:"556";s:1:"N";s:4:"nine";s:1:"B";a:4:{i:0;s:2:"78";i:1;s:3:"-19";i:2;s:3:"615";i:3;s:3:"710";}}s:4:"nine";a:4:{s:1:"C";s:2:"57";s:2:"WX";s:3:"556";s:1:"N";s:4:"nine";s:1:"B";a:4:{i:0;s:2:"78";i:1;s:3:"-19";i:2;s:3:"615";i:3;s:3:"710";}}i:58;a:4:{s:1:"C";s:2:"58";s:2:"WX";s:3:"333";s:1:"N";s:5:"colon";s:1:"B";a:4:{i:0;s:2:"92";i:1;s:1:"0";i:2;s:3:"351";i:3;s:3:"512";}}s:5:"colon";a:4:{s:1:"C";s:2:"58";s:2:"WX";s:3:"333";s:1:"N";s:5:"colon";s:1:"B";a:4:{i:0;s:2:"92";i:1;s:1:"0";i:2;s:3:"351";i:3;s:3:"512";}}i:59;a:4:{s:1:"C";s:2:"59";s:2:"WX";s:3:"333";s:1:"N";s:9:"semicolon";s:1:"B";a:4:{i:0;s:2:"56";i:1;s:4:"-168";i:2;s:3:"351";i:3;s:3:"512";}}s:9:"semicolon";a:4:{s:1:"C";s:2:"59";s:2:"WX";s:3:"333";s:1:"N";s:9:"semicolon";s:1:"B";a:4:{i:0;s:2:"56";i:1;s:4:"-168";i:2;s:3:"351";i:3;s:3:"512";}}i:60;a:4:{s:1:"C";s:2:"60";s:2:"WX";s:3:"584";s:1:"N";s:4:"less";s:1:"B";a:4:{i:0;s:2:"82";i:1;s:2:"-8";i:2;s:3:"655";i:3;s:3:"514";}}s:4:"less";a:4:{s:1:"C";s:2:"60";s:2:"WX";s:3:"584";s:1:"N";s:4:"less";s:1:"B";a:4:{i:0;s:2:"82";i:1;s:2:"-8";i:2;s:3:"655";i:3;s:3:"514";}}i:61;a:4:{s:1:"C";s:2:"61";s:2:"WX";s:3:"584";s:1:"N";s:5:"equal";s:1:"B";a:4:{i:0;s:2:"58";i:1;s:2:"87";i:2;s:3:"633";i:3;s:3:"419";}}s:5:"equal";a:4:{s:1:"C";s:2:"61";s:2:"WX";s:3:"584";s:1:"N";s:5:"equal";s:1:"B";a:4:{i:0;s:2:"58";i:1;s:2:"87";i:2;s:3:"633";i:3;s:3:"419";}}i:62;a:4:{s:1:"C";s:2:"62";s:2:"WX";s:3:"584";s:1:"N";s:7:"greater";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:2:"-8";i:2;s:3:"609";i:3;s:3:"514";}}s:7:"greater";a:4:{s:1:"C";s:2:"62";s:2:"WX";s:3:"584";s:1:"N";s:7:"greater";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:2:"-8";i:2;s:3:"609";i:3;s:3:"514";}}i:63;a:4:{s:1:"C";s:2:"63";s:2:"WX";s:3:"611";s:1:"N";s:8:"question";s:1:"B";a:4:{i:0;s:3:"165";i:1;s:1:"0";i:2;s:3:"671";i:3;s:3:"727";}}s:8:"question";a:4:{s:1:"C";s:2:"63";s:2:"WX";s:3:"611";s:1:"N";s:8:"question";s:1:"B";a:4:{i:0;s:3:"165";i:1;s:1:"0";i:2;s:3:"671";i:3;s:3:"727";}}i:64;a:4:{s:1:"C";s:2:"64";s:2:"WX";s:3:"975";s:1:"N";s:2:"at";s:1:"B";a:4:{i:0;s:3:"186";i:1;s:3:"-19";i:2;s:3:"954";i:3;s:3:"737";}}s:2:"at";a:4:{s:1:"C";s:2:"64";s:2:"WX";s:3:"975";s:1:"N";s:2:"at";s:1:"B";a:4:{i:0;s:3:"186";i:1;s:3:"-19";i:2;s:3:"954";i:3;s:3:"737";}}i:65;a:4:{s:1:"C";s:2:"65";s:2:"WX";s:3:"722";s:1:"N";s:1:"A";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"702";i:3;s:3:"718";}}s:1:"A";a:4:{s:1:"C";s:2:"65";s:2:"WX";s:3:"722";s:1:"N";s:1:"A";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"702";i:3;s:3:"718";}}i:66;a:4:{s:1:"C";s:2:"66";s:2:"WX";s:3:"722";s:1:"N";s:1:"B";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"764";i:3;s:3:"718";}}s:1:"B";a:4:{s:1:"C";s:2:"66";s:2:"WX";s:3:"722";s:1:"N";s:1:"B";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"764";i:3;s:3:"718";}}i:67;a:4:{s:1:"C";s:2:"67";s:2:"WX";s:3:"722";s:1:"N";s:1:"C";s:1:"B";a:4:{i:0;s:3:"107";i:1;s:3:"-19";i:2;s:3:"789";i:3;s:3:"737";}}s:1:"C";a:4:{s:1:"C";s:2:"67";s:2:"WX";s:3:"722";s:1:"N";s:1:"C";s:1:"B";a:4:{i:0;s:3:"107";i:1;s:3:"-19";i:2;s:3:"789";i:3;s:3:"737";}}i:68;a:4:{s:1:"C";s:2:"68";s:2:"WX";s:3:"722";s:1:"N";s:1:"D";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"777";i:3;s:3:"718";}}s:1:"D";a:4:{s:1:"C";s:2:"68";s:2:"WX";s:3:"722";s:1:"N";s:1:"D";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"777";i:3;s:3:"718";}}i:69;a:4:{s:1:"C";s:2:"69";s:2:"WX";s:3:"667";s:1:"N";s:1:"E";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"757";i:3;s:3:"718";}}s:1:"E";a:4:{s:1:"C";s:2:"69";s:2:"WX";s:3:"667";s:1:"N";s:1:"E";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"757";i:3;s:3:"718";}}i:70;a:4:{s:1:"C";s:2:"70";s:2:"WX";s:3:"611";s:1:"N";s:1:"F";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"740";i:3;s:3:"718";}}s:1:"F";a:4:{s:1:"C";s:2:"70";s:2:"WX";s:3:"611";s:1:"N";s:1:"F";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"740";i:3;s:3:"718";}}i:71;a:4:{s:1:"C";s:2:"71";s:2:"WX";s:3:"778";s:1:"N";s:1:"G";s:1:"B";a:4:{i:0;s:3:"108";i:1;s:3:"-19";i:2;s:3:"817";i:3;s:3:"737";}}s:1:"G";a:4:{s:1:"C";s:2:"71";s:2:"WX";s:3:"778";s:1:"N";s:1:"G";s:1:"B";a:4:{i:0;s:3:"108";i:1;s:3:"-19";i:2;s:3:"817";i:3;s:3:"737";}}i:72;a:4:{s:1:"C";s:2:"72";s:2:"WX";s:3:"722";s:1:"N";s:1:"H";s:1:"B";a:4:{i:0;s:2:"71";i:1;s:1:"0";i:2;s:3:"804";i:3;s:3:"718";}}s:1:"H";a:4:{s:1:"C";s:2:"72";s:2:"WX";s:3:"722";s:1:"N";s:1:"H";s:1:"B";a:4:{i:0;s:2:"71";i:1;s:1:"0";i:2;s:3:"804";i:3;s:3:"718";}}i:73;a:4:{s:1:"C";s:2:"73";s:2:"WX";s:3:"278";s:1:"N";s:1:"I";s:1:"B";a:4:{i:0;s:2:"64";i:1;s:1:"0";i:2;s:3:"367";i:3;s:3:"718";}}s:1:"I";a:4:{s:1:"C";s:2:"73";s:2:"WX";s:3:"278";s:1:"N";s:1:"I";s:1:"B";a:4:{i:0;s:2:"64";i:1;s:1:"0";i:2;s:3:"367";i:3;s:3:"718";}}i:74;a:4:{s:1:"C";s:2:"74";s:2:"WX";s:3:"556";s:1:"N";s:1:"J";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:3:"-18";i:2;s:3:"637";i:3;s:3:"718";}}s:1:"J";a:4:{s:1:"C";s:2:"74";s:2:"WX";s:3:"556";s:1:"N";s:1:"J";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:3:"-18";i:2;s:3:"637";i:3;s:3:"718";}}i:75;a:4:{s:1:"C";s:2:"75";s:2:"WX";s:3:"722";s:1:"N";s:1:"K";s:1:"B";a:4:{i:0;s:2:"87";i:1;s:1:"0";i:2;s:3:"858";i:3;s:3:"718";}}s:1:"K";a:4:{s:1:"C";s:2:"75";s:2:"WX";s:3:"722";s:1:"N";s:1:"K";s:1:"B";a:4:{i:0;s:2:"87";i:1;s:1:"0";i:2;s:3:"858";i:3;s:3:"718";}}i:76;a:4:{s:1:"C";s:2:"76";s:2:"WX";s:3:"611";s:1:"N";s:1:"L";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"611";i:3;s:3:"718";}}s:1:"L";a:4:{s:1:"C";s:2:"76";s:2:"WX";s:3:"611";s:1:"N";s:1:"L";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"611";i:3;s:3:"718";}}i:77;a:4:{s:1:"C";s:2:"77";s:2:"WX";s:3:"833";s:1:"N";s:1:"M";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"918";i:3;s:3:"718";}}s:1:"M";a:4:{s:1:"C";s:2:"77";s:2:"WX";s:3:"833";s:1:"N";s:1:"M";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"918";i:3;s:3:"718";}}i:78;a:4:{s:1:"C";s:2:"78";s:2:"WX";s:3:"722";s:1:"N";s:1:"N";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"807";i:3;s:3:"718";}}s:1:"N";a:4:{s:1:"C";s:2:"78";s:2:"WX";s:3:"722";s:1:"N";s:1:"N";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"807";i:3;s:3:"718";}}i:79;a:4:{s:1:"C";s:2:"79";s:2:"WX";s:3:"778";s:1:"N";s:1:"O";s:1:"B";a:4:{i:0;s:3:"107";i:1;s:3:"-19";i:2;s:3:"823";i:3;s:3:"737";}}s:1:"O";a:4:{s:1:"C";s:2:"79";s:2:"WX";s:3:"778";s:1:"N";s:1:"O";s:1:"B";a:4:{i:0;s:3:"107";i:1;s:3:"-19";i:2;s:3:"823";i:3;s:3:"737";}}i:80;a:4:{s:1:"C";s:2:"80";s:2:"WX";s:3:"667";s:1:"N";s:1:"P";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"738";i:3;s:3:"718";}}s:1:"P";a:4:{s:1:"C";s:2:"80";s:2:"WX";s:3:"667";s:1:"N";s:1:"P";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"738";i:3;s:3:"718";}}i:81;a:4:{s:1:"C";s:2:"81";s:2:"WX";s:3:"778";s:1:"N";s:1:"Q";s:1:"B";a:4:{i:0;s:3:"107";i:1;s:3:"-52";i:2;s:3:"823";i:3;s:3:"737";}}s:1:"Q";a:4:{s:1:"C";s:2:"81";s:2:"WX";s:3:"778";s:1:"N";s:1:"Q";s:1:"B";a:4:{i:0;s:3:"107";i:1;s:3:"-52";i:2;s:3:"823";i:3;s:3:"737";}}i:82;a:4:{s:1:"C";s:2:"82";s:2:"WX";s:3:"722";s:1:"N";s:1:"R";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"778";i:3;s:3:"718";}}s:1:"R";a:4:{s:1:"C";s:2:"82";s:2:"WX";s:3:"722";s:1:"N";s:1:"R";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"778";i:3;s:3:"718";}}i:83;a:4:{s:1:"C";s:2:"83";s:2:"WX";s:3:"667";s:1:"N";s:1:"S";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:3:"-19";i:2;s:3:"718";i:3;s:3:"737";}}s:1:"S";a:4:{s:1:"C";s:2:"83";s:2:"WX";s:3:"667";s:1:"N";s:1:"S";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:3:"-19";i:2;s:3:"718";i:3;s:3:"737";}}i:84;a:4:{s:1:"C";s:2:"84";s:2:"WX";s:3:"611";s:1:"N";s:1:"T";s:1:"B";a:4:{i:0;s:3:"140";i:1;s:1:"0";i:2;s:3:"751";i:3;s:3:"718";}}s:1:"T";a:4:{s:1:"C";s:2:"84";s:2:"WX";s:3:"611";s:1:"N";s:1:"T";s:1:"B";a:4:{i:0;s:3:"140";i:1;s:1:"0";i:2;s:3:"751";i:3;s:3:"718";}}i:85;a:4:{s:1:"C";s:2:"85";s:2:"WX";s:3:"722";s:1:"N";s:1:"U";s:1:"B";a:4:{i:0;s:3:"116";i:1;s:3:"-19";i:2;s:3:"804";i:3;s:3:"718";}}s:1:"U";a:4:{s:1:"C";s:2:"85";s:2:"WX";s:3:"722";s:1:"N";s:1:"U";s:1:"B";a:4:{i:0;s:3:"116";i:1;s:3:"-19";i:2;s:3:"804";i:3;s:3:"718";}}i:86;a:4:{s:1:"C";s:2:"86";s:2:"WX";s:3:"667";s:1:"N";s:1:"V";s:1:"B";a:4:{i:0;s:3:"172";i:1;s:1:"0";i:2;s:3:"801";i:3;s:3:"718";}}s:1:"V";a:4:{s:1:"C";s:2:"86";s:2:"WX";s:3:"667";s:1:"N";s:1:"V";s:1:"B";a:4:{i:0;s:3:"172";i:1;s:1:"0";i:2;s:3:"801";i:3;s:3:"718";}}i:87;a:4:{s:1:"C";s:2:"87";s:2:"WX";s:3:"944";s:1:"N";s:1:"W";s:1:"B";a:4:{i:0;s:3:"169";i:1;s:1:"0";i:2;s:4:"1082";i:3;s:3:"718";}}s:1:"W";a:4:{s:1:"C";s:2:"87";s:2:"WX";s:3:"944";s:1:"N";s:1:"W";s:1:"B";a:4:{i:0;s:3:"169";i:1;s:1:"0";i:2;s:4:"1082";i:3;s:3:"718";}}i:88;a:4:{s:1:"C";s:2:"88";s:2:"WX";s:3:"667";s:1:"N";s:1:"X";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"791";i:3;s:3:"718";}}s:1:"X";a:4:{s:1:"C";s:2:"88";s:2:"WX";s:3:"667";s:1:"N";s:1:"X";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"791";i:3;s:3:"718";}}i:89;a:4:{s:1:"C";s:2:"89";s:2:"WX";s:3:"667";s:1:"N";s:1:"Y";s:1:"B";a:4:{i:0;s:3:"168";i:1;s:1:"0";i:2;s:3:"806";i:3;s:3:"718";}}s:1:"Y";a:4:{s:1:"C";s:2:"89";s:2:"WX";s:3:"667";s:1:"N";s:1:"Y";s:1:"B";a:4:{i:0;s:3:"168";i:1;s:1:"0";i:2;s:3:"806";i:3;s:3:"718";}}i:90;a:4:{s:1:"C";s:2:"90";s:2:"WX";s:3:"611";s:1:"N";s:1:"Z";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:1:"0";i:2;s:3:"737";i:3;s:3:"718";}}s:1:"Z";a:4:{s:1:"C";s:2:"90";s:2:"WX";s:3:"611";s:1:"N";s:1:"Z";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:1:"0";i:2;s:3:"737";i:3;s:3:"718";}}i:91;a:4:{s:1:"C";s:2:"91";s:2:"WX";s:3:"333";s:1:"N";s:11:"bracketleft";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:4:"-196";i:2;s:3:"462";i:3;s:3:"722";}}s:11:"bracketleft";a:4:{s:1:"C";s:2:"91";s:2:"WX";s:3:"333";s:1:"N";s:11:"bracketleft";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:4:"-196";i:2;s:3:"462";i:3;s:3:"722";}}i:92;a:4:{s:1:"C";s:2:"92";s:2:"WX";s:3:"278";s:1:"N";s:9:"backslash";s:1:"B";a:4:{i:0;s:3:"124";i:1;s:3:"-19";i:2;s:3:"307";i:3;s:3:"737";}}s:9:"backslash";a:4:{s:1:"C";s:2:"92";s:2:"WX";s:3:"278";s:1:"N";s:9:"backslash";s:1:"B";a:4:{i:0;s:3:"124";i:1;s:3:"-19";i:2;s:3:"307";i:3;s:3:"737";}}i:93;a:4:{s:1:"C";s:2:"93";s:2:"WX";s:3:"333";s:1:"N";s:12:"bracketright";s:1:"B";a:4:{i:0;s:3:"-18";i:1;s:4:"-196";i:2;s:3:"423";i:3;s:3:"722";}}s:12:"bracketright";a:4:{s:1:"C";s:2:"93";s:2:"WX";s:3:"333";s:1:"N";s:12:"bracketright";s:1:"B";a:4:{i:0;s:3:"-18";i:1;s:4:"-196";i:2;s:3:"423";i:3;s:3:"722";}}i:94;a:4:{s:1:"C";s:2:"94";s:2:"WX";s:3:"584";s:1:"N";s:11:"asciicircum";s:1:"B";a:4:{i:0;s:3:"131";i:1;s:3:"323";i:2;s:3:"591";i:3;s:3:"698";}}s:11:"asciicircum";a:4:{s:1:"C";s:2:"94";s:2:"WX";s:3:"584";s:1:"N";s:11:"asciicircum";s:1:"B";a:4:{i:0;s:3:"131";i:1;s:3:"323";i:2;s:3:"591";i:3;s:3:"698";}}i:95;a:4:{s:1:"C";s:2:"95";s:2:"WX";s:3:"556";s:1:"N";s:10:"underscore";s:1:"B";a:4:{i:0;s:3:"-27";i:1;s:4:"-125";i:2;s:3:"540";i:3;s:3:"-75";}}s:10:"underscore";a:4:{s:1:"C";s:2:"95";s:2:"WX";s:3:"556";s:1:"N";s:10:"underscore";s:1:"B";a:4:{i:0;s:3:"-27";i:1;s:4:"-125";i:2;s:3:"540";i:3;s:3:"-75";}}i:96;a:4:{s:1:"C";s:2:"96";s:2:"WX";s:3:"278";s:1:"N";s:9:"quoteleft";s:1:"B";a:4:{i:0;s:3:"165";i:1;s:3:"454";i:2;s:3:"361";i:3;s:3:"727";}}s:9:"quoteleft";a:4:{s:1:"C";s:2:"96";s:2:"WX";s:3:"278";s:1:"N";s:9:"quoteleft";s:1:"B";a:4:{i:0;s:3:"165";i:1;s:3:"454";i:2;s:3:"361";i:3;s:3:"727";}}i:97;a:4:{s:1:"C";s:2:"97";s:2:"WX";s:3:"556";s:1:"N";s:1:"a";s:1:"B";a:4:{i:0;s:2:"55";i:1;s:3:"-14";i:2;s:3:"583";i:3;s:3:"546";}}s:1:"a";a:4:{s:1:"C";s:2:"97";s:2:"WX";s:3:"556";s:1:"N";s:1:"a";s:1:"B";a:4:{i:0;s:2:"55";i:1;s:3:"-14";i:2;s:3:"583";i:3;s:3:"546";}}i:98;a:4:{s:1:"C";s:2:"98";s:2:"WX";s:3:"611";s:1:"N";s:1:"b";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:3:"-14";i:2;s:3:"645";i:3;s:3:"718";}}s:1:"b";a:4:{s:1:"C";s:2:"98";s:2:"WX";s:3:"611";s:1:"N";s:1:"b";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:3:"-14";i:2;s:3:"645";i:3;s:3:"718";}}i:99;a:4:{s:1:"C";s:2:"99";s:2:"WX";s:3:"556";s:1:"N";s:1:"c";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:3:"-14";i:2;s:3:"599";i:3;s:3:"546";}}s:1:"c";a:4:{s:1:"C";s:2:"99";s:2:"WX";s:3:"556";s:1:"N";s:1:"c";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:3:"-14";i:2;s:3:"599";i:3;s:3:"546";}}i:100;a:4:{s:1:"C";s:3:"100";s:2:"WX";s:3:"611";s:1:"N";s:1:"d";s:1:"B";a:4:{i:0;s:2:"82";i:1;s:3:"-14";i:2;s:3:"704";i:3;s:3:"718";}}s:1:"d";a:4:{s:1:"C";s:3:"100";s:2:"WX";s:3:"611";s:1:"N";s:1:"d";s:1:"B";a:4:{i:0;s:2:"82";i:1;s:3:"-14";i:2;s:3:"704";i:3;s:3:"718";}}i:101;a:4:{s:1:"C";s:3:"101";s:2:"WX";s:3:"556";s:1:"N";s:1:"e";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:3:"-14";i:2;s:3:"593";i:3;s:3:"546";}}s:1:"e";a:4:{s:1:"C";s:3:"101";s:2:"WX";s:3:"556";s:1:"N";s:1:"e";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:3:"-14";i:2;s:3:"593";i:3;s:3:"546";}}i:102;a:5:{s:1:"C";s:3:"102";s:2:"WX";s:3:"333";s:1:"N";s:1:"f";s:1:"B";a:4:{i:0;s:2:"87";i:1;s:1:"0";i:2;s:3:"469";i:3;s:3:"727";}s:1:"L";a:2:{i:0;s:1:"l";i:1;s:2:"fl";}}s:1:"f";a:5:{s:1:"C";s:3:"102";s:2:"WX";s:3:"333";s:1:"N";s:1:"f";s:1:"B";a:4:{i:0;s:2:"87";i:1;s:1:"0";i:2;s:3:"469";i:3;s:3:"727";}s:1:"L";a:2:{i:0;s:1:"l";i:1;s:2:"fl";}}i:103;a:4:{s:1:"C";s:3:"103";s:2:"WX";s:3:"611";s:1:"N";s:1:"g";s:1:"B";a:4:{i:0;s:2:"38";i:1;s:4:"-217";i:2;s:3:"666";i:3;s:3:"546";}}s:1:"g";a:4:{s:1:"C";s:3:"103";s:2:"WX";s:3:"611";s:1:"N";s:1:"g";s:1:"B";a:4:{i:0;s:2:"38";i:1;s:4:"-217";i:2;s:3:"666";i:3;s:3:"546";}}i:104;a:4:{s:1:"C";s:3:"104";s:2:"WX";s:3:"611";s:1:"N";s:1:"h";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:1:"0";i:2;s:3:"629";i:3;s:3:"718";}}s:1:"h";a:4:{s:1:"C";s:3:"104";s:2:"WX";s:3:"611";s:1:"N";s:1:"h";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:1:"0";i:2;s:3:"629";i:3;s:3:"718";}}i:105;a:4:{s:1:"C";s:3:"105";s:2:"WX";s:3:"278";s:1:"N";s:1:"i";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"363";i:3;s:3:"725";}}s:1:"i";a:4:{s:1:"C";s:3:"105";s:2:"WX";s:3:"278";s:1:"N";s:1:"i";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"363";i:3;s:3:"725";}}i:106;a:4:{s:1:"C";s:3:"106";s:2:"WX";s:3:"278";s:1:"N";s:1:"j";s:1:"B";a:4:{i:0;s:3:"-42";i:1;s:4:"-214";i:2;s:3:"363";i:3;s:3:"725";}}s:1:"j";a:4:{s:1:"C";s:3:"106";s:2:"WX";s:3:"278";s:1:"N";s:1:"j";s:1:"B";a:4:{i:0;s:3:"-42";i:1;s:4:"-214";i:2;s:3:"363";i:3;s:3:"725";}}i:107;a:4:{s:1:"C";s:3:"107";s:2:"WX";s:3:"556";s:1:"N";s:1:"k";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"670";i:3;s:3:"718";}}s:1:"k";a:4:{s:1:"C";s:3:"107";s:2:"WX";s:3:"556";s:1:"N";s:1:"k";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"670";i:3;s:3:"718";}}i:108;a:4:{s:1:"C";s:3:"108";s:2:"WX";s:3:"278";s:1:"N";s:1:"l";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"362";i:3;s:3:"718";}}s:1:"l";a:4:{s:1:"C";s:3:"108";s:2:"WX";s:3:"278";s:1:"N";s:1:"l";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"362";i:3;s:3:"718";}}i:109;a:4:{s:1:"C";s:3:"109";s:2:"WX";s:3:"889";s:1:"N";s:1:"m";s:1:"B";a:4:{i:0;s:2:"64";i:1;s:1:"0";i:2;s:3:"909";i:3;s:3:"546";}}s:1:"m";a:4:{s:1:"C";s:3:"109";s:2:"WX";s:3:"889";s:1:"N";s:1:"m";s:1:"B";a:4:{i:0;s:2:"64";i:1;s:1:"0";i:2;s:3:"909";i:3;s:3:"546";}}i:110;a:4:{s:1:"C";s:3:"110";s:2:"WX";s:3:"611";s:1:"N";s:1:"n";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:1:"0";i:2;s:3:"629";i:3;s:3:"546";}}s:1:"n";a:4:{s:1:"C";s:3:"110";s:2:"WX";s:3:"611";s:1:"N";s:1:"n";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:1:"0";i:2;s:3:"629";i:3;s:3:"546";}}i:111;a:4:{s:1:"C";s:3:"111";s:2:"WX";s:3:"611";s:1:"N";s:1:"o";s:1:"B";a:4:{i:0;s:2:"82";i:1;s:3:"-14";i:2;s:3:"643";i:3;s:3:"546";}}s:1:"o";a:4:{s:1:"C";s:3:"111";s:2:"WX";s:3:"611";s:1:"N";s:1:"o";s:1:"B";a:4:{i:0;s:2:"82";i:1;s:3:"-14";i:2;s:3:"643";i:3;s:3:"546";}}i:112;a:4:{s:1:"C";s:3:"112";s:2:"WX";s:3:"611";s:1:"N";s:1:"p";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:4:"-207";i:2;s:3:"645";i:3;s:3:"546";}}s:1:"p";a:4:{s:1:"C";s:3:"112";s:2:"WX";s:3:"611";s:1:"N";s:1:"p";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:4:"-207";i:2;s:3:"645";i:3;s:3:"546";}}i:113;a:4:{s:1:"C";s:3:"113";s:2:"WX";s:3:"611";s:1:"N";s:1:"q";s:1:"B";a:4:{i:0;s:2:"80";i:1;s:4:"-207";i:2;s:3:"665";i:3;s:3:"546";}}s:1:"q";a:4:{s:1:"C";s:3:"113";s:2:"WX";s:3:"611";s:1:"N";s:1:"q";s:1:"B";a:4:{i:0;s:2:"80";i:1;s:4:"-207";i:2;s:3:"665";i:3;s:3:"546";}}i:114;a:4:{s:1:"C";s:3:"114";s:2:"WX";s:3:"389";s:1:"N";s:1:"r";s:1:"B";a:4:{i:0;s:2:"64";i:1;s:1:"0";i:2;s:3:"489";i:3;s:3:"546";}}s:1:"r";a:4:{s:1:"C";s:3:"114";s:2:"WX";s:3:"389";s:1:"N";s:1:"r";s:1:"B";a:4:{i:0;s:2:"64";i:1;s:1:"0";i:2;s:3:"489";i:3;s:3:"546";}}i:115;a:4:{s:1:"C";s:3:"115";s:2:"WX";s:3:"556";s:1:"N";s:1:"s";s:1:"B";a:4:{i:0;s:2:"63";i:1;s:3:"-14";i:2;s:3:"584";i:3;s:3:"546";}}s:1:"s";a:4:{s:1:"C";s:3:"115";s:2:"WX";s:3:"556";s:1:"N";s:1:"s";s:1:"B";a:4:{i:0;s:2:"63";i:1;s:3:"-14";i:2;s:3:"584";i:3;s:3:"546";}}i:116;a:4:{s:1:"C";s:3:"116";s:2:"WX";s:3:"333";s:1:"N";s:1:"t";s:1:"B";a:4:{i:0;s:3:"100";i:1;s:2:"-6";i:2;s:3:"422";i:3;s:3:"676";}}s:1:"t";a:4:{s:1:"C";s:3:"116";s:2:"WX";s:3:"333";s:1:"N";s:1:"t";s:1:"B";a:4:{i:0;s:3:"100";i:1;s:2:"-6";i:2;s:3:"422";i:3;s:3:"676";}}i:117;a:4:{s:1:"C";s:3:"117";s:2:"WX";s:3:"611";s:1:"N";s:1:"u";s:1:"B";a:4:{i:0;s:2:"98";i:1;s:3:"-14";i:2;s:3:"658";i:3;s:3:"532";}}s:1:"u";a:4:{s:1:"C";s:3:"117";s:2:"WX";s:3:"611";s:1:"N";s:1:"u";s:1:"B";a:4:{i:0;s:2:"98";i:1;s:3:"-14";i:2;s:3:"658";i:3;s:3:"532";}}i:118;a:4:{s:1:"C";s:3:"118";s:2:"WX";s:3:"556";s:1:"N";s:1:"v";s:1:"B";a:4:{i:0;s:3:"126";i:1;s:1:"0";i:2;s:3:"656";i:3;s:3:"532";}}s:1:"v";a:4:{s:1:"C";s:3:"118";s:2:"WX";s:3:"556";s:1:"N";s:1:"v";s:1:"B";a:4:{i:0;s:3:"126";i:1;s:1:"0";i:2;s:3:"656";i:3;s:3:"532";}}i:119;a:4:{s:1:"C";s:3:"119";s:2:"WX";s:3:"778";s:1:"N";s:1:"w";s:1:"B";a:4:{i:0;s:3:"123";i:1;s:1:"0";i:2;s:3:"882";i:3;s:3:"532";}}s:1:"w";a:4:{s:1:"C";s:3:"119";s:2:"WX";s:3:"778";s:1:"N";s:1:"w";s:1:"B";a:4:{i:0;s:3:"123";i:1;s:1:"0";i:2;s:3:"882";i:3;s:3:"532";}}i:120;a:4:{s:1:"C";s:3:"120";s:2:"WX";s:3:"556";s:1:"N";s:1:"x";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:1:"0";i:2;s:3:"648";i:3;s:3:"532";}}s:1:"x";a:4:{s:1:"C";s:3:"120";s:2:"WX";s:3:"556";s:1:"N";s:1:"x";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:1:"0";i:2;s:3:"648";i:3;s:3:"532";}}i:121;a:4:{s:1:"C";s:3:"121";s:2:"WX";s:3:"556";s:1:"N";s:1:"y";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:4:"-214";i:2;s:3:"652";i:3;s:3:"532";}}s:1:"y";a:4:{s:1:"C";s:3:"121";s:2:"WX";s:3:"556";s:1:"N";s:1:"y";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:4:"-214";i:2;s:3:"652";i:3;s:3:"532";}}i:122;a:4:{s:1:"C";s:3:"122";s:2:"WX";s:3:"500";s:1:"N";s:1:"z";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"583";i:3;s:3:"532";}}s:1:"z";a:4:{s:1:"C";s:3:"122";s:2:"WX";s:3:"500";s:1:"N";s:1:"z";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"583";i:3;s:3:"532";}}i:123;a:4:{s:1:"C";s:3:"123";s:2:"WX";s:3:"389";s:1:"N";s:9:"braceleft";s:1:"B";a:4:{i:0;s:2:"94";i:1;s:4:"-196";i:2;s:3:"518";i:3;s:3:"722";}}s:9:"braceleft";a:4:{s:1:"C";s:3:"123";s:2:"WX";s:3:"389";s:1:"N";s:9:"braceleft";s:1:"B";a:4:{i:0;s:2:"94";i:1;s:4:"-196";i:2;s:3:"518";i:3;s:3:"722";}}i:124;a:4:{s:1:"C";s:3:"124";s:2:"WX";s:3:"280";s:1:"N";s:3:"bar";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:4:"-225";i:2;s:3:"361";i:3;s:3:"775";}}s:3:"bar";a:4:{s:1:"C";s:3:"124";s:2:"WX";s:3:"280";s:1:"N";s:3:"bar";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:4:"-225";i:2;s:3:"361";i:3;s:3:"775";}}i:125;a:4:{s:1:"C";s:3:"125";s:2:"WX";s:3:"389";s:1:"N";s:10:"braceright";s:1:"B";a:4:{i:0;s:3:"-18";i:1;s:4:"-196";i:2;s:3:"407";i:3;s:3:"722";}}s:10:"braceright";a:4:{s:1:"C";s:3:"125";s:2:"WX";s:3:"389";s:1:"N";s:10:"braceright";s:1:"B";a:4:{i:0;s:3:"-18";i:1;s:4:"-196";i:2;s:3:"407";i:3;s:3:"722";}}i:126;a:4:{s:1:"C";s:3:"126";s:2:"WX";s:3:"584";s:1:"N";s:10:"asciitilde";s:1:"B";a:4:{i:0;s:3:"115";i:1;s:3:"163";i:2;s:3:"577";i:3;s:3:"343";}}s:10:"asciitilde";a:4:{s:1:"C";s:3:"126";s:2:"WX";s:3:"584";s:1:"N";s:10:"asciitilde";s:1:"B";a:4:{i:0;s:3:"115";i:1;s:3:"163";i:2;s:3:"577";i:3;s:3:"343";}}i:161;a:4:{s:1:"C";s:3:"161";s:2:"WX";s:3:"333";s:1:"N";s:10:"exclamdown";s:1:"B";a:4:{i:0;s:2:"50";i:1;s:4:"-186";i:2;s:3:"353";i:3;s:3:"532";}}s:10:"exclamdown";a:4:{s:1:"C";s:3:"161";s:2:"WX";s:3:"333";s:1:"N";s:10:"exclamdown";s:1:"B";a:4:{i:0;s:2:"50";i:1;s:4:"-186";i:2;s:3:"353";i:3;s:3:"532";}}i:162;a:4:{s:1:"C";s:3:"162";s:2:"WX";s:3:"556";s:1:"N";s:4:"cent";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:4:"-118";i:2;s:3:"599";i:3;s:3:"628";}}s:4:"cent";a:4:{s:1:"C";s:3:"162";s:2:"WX";s:3:"556";s:1:"N";s:4:"cent";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:4:"-118";i:2;s:3:"599";i:3;s:3:"628";}}i:163;a:4:{s:1:"C";s:3:"163";s:2:"WX";s:3:"556";s:1:"N";s:8:"sterling";s:1:"B";a:4:{i:0;s:2:"50";i:1;s:3:"-16";i:2;s:3:"635";i:3;s:3:"718";}}s:8:"sterling";a:4:{s:1:"C";s:3:"163";s:2:"WX";s:3:"556";s:1:"N";s:8:"sterling";s:1:"B";a:4:{i:0;s:2:"50";i:1;s:3:"-16";i:2;s:3:"635";i:3;s:3:"718";}}i:164;a:4:{s:1:"C";s:3:"164";s:2:"WX";s:3:"167";s:1:"N";s:8:"fraction";s:1:"B";a:4:{i:0;s:4:"-174";i:1;s:3:"-19";i:2;s:3:"487";i:3;s:3:"710";}}s:8:"fraction";a:4:{s:1:"C";s:3:"164";s:2:"WX";s:3:"167";s:1:"N";s:8:"fraction";s:1:"B";a:4:{i:0;s:4:"-174";i:1;s:3:"-19";i:2;s:3:"487";i:3;s:3:"710";}}i:165;a:4:{s:1:"C";s:3:"165";s:2:"WX";s:3:"556";s:1:"N";s:3:"yen";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:1:"0";i:2;s:3:"713";i:3;s:3:"698";}}s:3:"yen";a:4:{s:1:"C";s:3:"165";s:2:"WX";s:3:"556";s:1:"N";s:3:"yen";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:1:"0";i:2;s:3:"713";i:3;s:3:"698";}}i:166;a:4:{s:1:"C";s:3:"166";s:2:"WX";s:3:"556";s:1:"N";s:6:"florin";s:1:"B";a:4:{i:0;s:3:"-50";i:1;s:4:"-210";i:2;s:3:"669";i:3;s:3:"737";}}s:6:"florin";a:4:{s:1:"C";s:3:"166";s:2:"WX";s:3:"556";s:1:"N";s:6:"florin";s:1:"B";a:4:{i:0;s:3:"-50";i:1;s:4:"-210";i:2;s:3:"669";i:3;s:3:"737";}}i:167;a:4:{s:1:"C";s:3:"167";s:2:"WX";s:3:"556";s:1:"N";s:7:"section";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:4:"-184";i:2;s:3:"598";i:3;s:3:"727";}}s:7:"section";a:4:{s:1:"C";s:3:"167";s:2:"WX";s:3:"556";s:1:"N";s:7:"section";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:4:"-184";i:2;s:3:"598";i:3;s:3:"727";}}i:168;a:4:{s:1:"C";s:3:"168";s:2:"WX";s:3:"556";s:1:"N";s:8:"currency";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:2:"76";i:2;s:3:"680";i:3;s:3:"636";}}s:8:"currency";a:4:{s:1:"C";s:3:"168";s:2:"WX";s:3:"556";s:1:"N";s:8:"currency";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:2:"76";i:2;s:3:"680";i:3;s:3:"636";}}i:169;a:4:{s:1:"C";s:3:"169";s:2:"WX";s:3:"238";s:1:"N";s:11:"quotesingle";s:1:"B";a:4:{i:0;s:3:"165";i:1;s:3:"447";i:2;s:3:"321";i:3;s:3:"718";}}s:11:"quotesingle";a:4:{s:1:"C";s:3:"169";s:2:"WX";s:3:"238";s:1:"N";s:11:"quotesingle";s:1:"B";a:4:{i:0;s:3:"165";i:1;s:3:"447";i:2;s:3:"321";i:3;s:3:"718";}}i:170;a:4:{s:1:"C";s:3:"170";s:2:"WX";s:3:"500";s:1:"N";s:12:"quotedblleft";s:1:"B";a:4:{i:0;s:3:"160";i:1;s:3:"454";i:2;s:3:"588";i:3;s:3:"727";}}s:12:"quotedblleft";a:4:{s:1:"C";s:3:"170";s:2:"WX";s:3:"500";s:1:"N";s:12:"quotedblleft";s:1:"B";a:4:{i:0;s:3:"160";i:1;s:3:"454";i:2;s:3:"588";i:3;s:3:"727";}}i:171;a:4:{s:1:"C";s:3:"171";s:2:"WX";s:3:"556";s:1:"N";s:13:"guillemotleft";s:1:"B";a:4:{i:0;s:3:"135";i:1;s:2:"76";i:2;s:3:"571";i:3;s:3:"484";}}s:13:"guillemotleft";a:4:{s:1:"C";s:3:"171";s:2:"WX";s:3:"556";s:1:"N";s:13:"guillemotleft";s:1:"B";a:4:{i:0;s:3:"135";i:1;s:2:"76";i:2;s:3:"571";i:3;s:3:"484";}}i:172;a:4:{s:1:"C";s:3:"172";s:2:"WX";s:3:"333";s:1:"N";s:13:"guilsinglleft";s:1:"B";a:4:{i:0;s:3:"130";i:1;s:2:"76";i:2;s:3:"353";i:3;s:3:"484";}}s:13:"guilsinglleft";a:4:{s:1:"C";s:3:"172";s:2:"WX";s:3:"333";s:1:"N";s:13:"guilsinglleft";s:1:"B";a:4:{i:0;s:3:"130";i:1;s:2:"76";i:2;s:3:"353";i:3;s:3:"484";}}i:173;a:4:{s:1:"C";s:3:"173";s:2:"WX";s:3:"333";s:1:"N";s:14:"guilsinglright";s:1:"B";a:4:{i:0;s:2:"99";i:1;s:2:"76";i:2;s:3:"322";i:3;s:3:"484";}}s:14:"guilsinglright";a:4:{s:1:"C";s:3:"173";s:2:"WX";s:3:"333";s:1:"N";s:14:"guilsinglright";s:1:"B";a:4:{i:0;s:2:"99";i:1;s:2:"76";i:2;s:3:"322";i:3;s:3:"484";}}i:174;a:4:{s:1:"C";s:3:"174";s:2:"WX";s:3:"611";s:1:"N";s:2:"fi";s:1:"B";a:4:{i:0;s:2:"87";i:1;s:1:"0";i:2;s:3:"696";i:3;s:3:"727";}}s:2:"fi";a:4:{s:1:"C";s:3:"174";s:2:"WX";s:3:"611";s:1:"N";s:2:"fi";s:1:"B";a:4:{i:0;s:2:"87";i:1;s:1:"0";i:2;s:3:"696";i:3;s:3:"727";}}i:175;a:4:{s:1:"C";s:3:"175";s:2:"WX";s:3:"611";s:1:"N";s:2:"fl";s:1:"B";a:4:{i:0;s:2:"87";i:1;s:1:"0";i:2;s:3:"695";i:3;s:3:"727";}}s:2:"fl";a:4:{s:1:"C";s:3:"175";s:2:"WX";s:3:"611";s:1:"N";s:2:"fl";s:1:"B";a:4:{i:0;s:2:"87";i:1;s:1:"0";i:2;s:3:"695";i:3;s:3:"727";}}i:177;a:4:{s:1:"C";s:3:"177";s:2:"WX";s:3:"556";s:1:"N";s:6:"endash";s:1:"B";a:4:{i:0;s:2:"48";i:1;s:3:"227";i:2;s:3:"627";i:3;s:3:"333";}}s:6:"endash";a:4:{s:1:"C";s:3:"177";s:2:"WX";s:3:"556";s:1:"N";s:6:"endash";s:1:"B";a:4:{i:0;s:2:"48";i:1;s:3:"227";i:2;s:3:"627";i:3;s:3:"333";}}i:178;a:4:{s:1:"C";s:3:"178";s:2:"WX";s:3:"556";s:1:"N";s:6:"dagger";s:1:"B";a:4:{i:0;s:3:"118";i:1;s:4:"-171";i:2;s:3:"626";i:3;s:3:"718";}}s:6:"dagger";a:4:{s:1:"C";s:3:"178";s:2:"WX";s:3:"556";s:1:"N";s:6:"dagger";s:1:"B";a:4:{i:0;s:3:"118";i:1;s:4:"-171";i:2;s:3:"626";i:3;s:3:"718";}}i:179;a:4:{s:1:"C";s:3:"179";s:2:"WX";s:3:"556";s:1:"N";s:9:"daggerdbl";s:1:"B";a:4:{i:0;s:2:"46";i:1;s:4:"-171";i:2;s:3:"628";i:3;s:3:"718";}}s:9:"daggerdbl";a:4:{s:1:"C";s:3:"179";s:2:"WX";s:3:"556";s:1:"N";s:9:"daggerdbl";s:1:"B";a:4:{i:0;s:2:"46";i:1;s:4:"-171";i:2;s:3:"628";i:3;s:3:"718";}}i:180;a:4:{s:1:"C";s:3:"180";s:2:"WX";s:3:"278";s:1:"N";s:14:"periodcentered";s:1:"B";a:4:{i:0;s:3:"110";i:1;s:3:"172";i:2;s:3:"276";i:3;s:3:"334";}}s:14:"periodcentered";a:4:{s:1:"C";s:3:"180";s:2:"WX";s:3:"278";s:1:"N";s:14:"periodcentered";s:1:"B";a:4:{i:0;s:3:"110";i:1;s:3:"172";i:2;s:3:"276";i:3;s:3:"334";}}i:182;a:4:{s:1:"C";s:3:"182";s:2:"WX";s:3:"556";s:1:"N";s:9:"paragraph";s:1:"B";a:4:{i:0;s:2:"98";i:1;s:4:"-191";i:2;s:3:"688";i:3;s:3:"700";}}s:9:"paragraph";a:4:{s:1:"C";s:3:"182";s:2:"WX";s:3:"556";s:1:"N";s:9:"paragraph";s:1:"B";a:4:{i:0;s:2:"98";i:1;s:4:"-191";i:2;s:3:"688";i:3;s:3:"700";}}i:183;a:4:{s:1:"C";s:3:"183";s:2:"WX";s:3:"350";s:1:"N";s:6:"bullet";s:1:"B";a:4:{i:0;s:2:"83";i:1;s:3:"194";i:2;s:3:"420";i:3;s:3:"524";}}s:6:"bullet";a:4:{s:1:"C";s:3:"183";s:2:"WX";s:3:"350";s:1:"N";s:6:"bullet";s:1:"B";a:4:{i:0;s:2:"83";i:1;s:3:"194";i:2;s:3:"420";i:3;s:3:"524";}}i:184;a:4:{s:1:"C";s:3:"184";s:2:"WX";s:3:"278";s:1:"N";s:14:"quotesinglbase";s:1:"B";a:4:{i:0;s:2:"41";i:1;s:4:"-146";i:2;s:3:"236";i:3;s:3:"127";}}s:14:"quotesinglbase";a:4:{s:1:"C";s:3:"184";s:2:"WX";s:3:"278";s:1:"N";s:14:"quotesinglbase";s:1:"B";a:4:{i:0;s:2:"41";i:1;s:4:"-146";i:2;s:3:"236";i:3;s:3:"127";}}i:185;a:4:{s:1:"C";s:3:"185";s:2:"WX";s:3:"500";s:1:"N";s:12:"quotedblbase";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:4:"-146";i:2;s:3:"463";i:3;s:3:"127";}}s:12:"quotedblbase";a:4:{s:1:"C";s:3:"185";s:2:"WX";s:3:"500";s:1:"N";s:12:"quotedblbase";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:4:"-146";i:2;s:3:"463";i:3;s:3:"127";}}i:186;a:4:{s:1:"C";s:3:"186";s:2:"WX";s:3:"500";s:1:"N";s:13:"quotedblright";s:1:"B";a:4:{i:0;s:3:"162";i:1;s:3:"445";i:2;s:3:"589";i:3;s:3:"718";}}s:13:"quotedblright";a:4:{s:1:"C";s:3:"186";s:2:"WX";s:3:"500";s:1:"N";s:13:"quotedblright";s:1:"B";a:4:{i:0;s:3:"162";i:1;s:3:"445";i:2;s:3:"589";i:3;s:3:"718";}}i:187;a:4:{s:1:"C";s:3:"187";s:2:"WX";s:3:"556";s:1:"N";s:14:"guillemotright";s:1:"B";a:4:{i:0;s:3:"104";i:1;s:2:"76";i:2;s:3:"540";i:3;s:3:"484";}}s:14:"guillemotright";a:4:{s:1:"C";s:3:"187";s:2:"WX";s:3:"556";s:1:"N";s:14:"guillemotright";s:1:"B";a:4:{i:0;s:3:"104";i:1;s:2:"76";i:2;s:3:"540";i:3;s:3:"484";}}i:188;a:4:{s:1:"C";s:3:"188";s:2:"WX";s:4:"1000";s:1:"N";s:8:"ellipsis";s:1:"B";a:4:{i:0;s:2:"92";i:1;s:1:"0";i:2;s:3:"939";i:3;s:3:"146";}}s:8:"ellipsis";a:4:{s:1:"C";s:3:"188";s:2:"WX";s:4:"1000";s:1:"N";s:8:"ellipsis";s:1:"B";a:4:{i:0;s:2:"92";i:1;s:1:"0";i:2;s:3:"939";i:3;s:3:"146";}}i:189;a:4:{s:1:"C";s:3:"189";s:2:"WX";s:4:"1000";s:1:"N";s:11:"perthousand";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:3:"-19";i:2;s:4:"1038";i:3;s:3:"710";}}s:11:"perthousand";a:4:{s:1:"C";s:3:"189";s:2:"WX";s:4:"1000";s:1:"N";s:11:"perthousand";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:3:"-19";i:2;s:4:"1038";i:3;s:3:"710";}}i:191;a:4:{s:1:"C";s:3:"191";s:2:"WX";s:3:"611";s:1:"N";s:12:"questiondown";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:4:"-195";i:2;s:3:"559";i:3;s:3:"532";}}s:12:"questiondown";a:4:{s:1:"C";s:3:"191";s:2:"WX";s:3:"611";s:1:"N";s:12:"questiondown";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:4:"-195";i:2;s:3:"559";i:3;s:3:"532";}}i:193;a:4:{s:1:"C";s:3:"193";s:2:"WX";s:3:"333";s:1:"N";s:5:"grave";s:1:"B";a:4:{i:0;s:3:"136";i:1;s:3:"604";i:2;s:3:"353";i:3;s:3:"750";}}s:5:"grave";a:4:{s:1:"C";s:3:"193";s:2:"WX";s:3:"333";s:1:"N";s:5:"grave";s:1:"B";a:4:{i:0;s:3:"136";i:1;s:3:"604";i:2;s:3:"353";i:3;s:3:"750";}}i:194;a:4:{s:1:"C";s:3:"194";s:2:"WX";s:3:"333";s:1:"N";s:5:"acute";s:1:"B";a:4:{i:0;s:3:"236";i:1;s:3:"604";i:2;s:3:"515";i:3;s:3:"750";}}s:5:"acute";a:4:{s:1:"C";s:3:"194";s:2:"WX";s:3:"333";s:1:"N";s:5:"acute";s:1:"B";a:4:{i:0;s:3:"236";i:1;s:3:"604";i:2;s:3:"515";i:3;s:3:"750";}}i:195;a:4:{s:1:"C";s:3:"195";s:2:"WX";s:3:"333";s:1:"N";s:10:"circumflex";s:1:"B";a:4:{i:0;s:3:"118";i:1;s:3:"604";i:2;s:3:"471";i:3;s:3:"750";}}s:10:"circumflex";a:4:{s:1:"C";s:3:"195";s:2:"WX";s:3:"333";s:1:"N";s:10:"circumflex";s:1:"B";a:4:{i:0;s:3:"118";i:1;s:3:"604";i:2;s:3:"471";i:3;s:3:"750";}}i:196;a:4:{s:1:"C";s:3:"196";s:2:"WX";s:3:"333";s:1:"N";s:5:"tilde";s:1:"B";a:4:{i:0;s:3:"113";i:1;s:3:"610";i:2;s:3:"507";i:3;s:3:"737";}}s:5:"tilde";a:4:{s:1:"C";s:3:"196";s:2:"WX";s:3:"333";s:1:"N";s:5:"tilde";s:1:"B";a:4:{i:0;s:3:"113";i:1;s:3:"610";i:2;s:3:"507";i:3;s:3:"737";}}i:197;a:4:{s:1:"C";s:3:"197";s:2:"WX";s:3:"333";s:1:"N";s:6:"macron";s:1:"B";a:4:{i:0;s:3:"122";i:1;s:3:"604";i:2;s:3:"483";i:3;s:3:"678";}}s:6:"macron";a:4:{s:1:"C";s:3:"197";s:2:"WX";s:3:"333";s:1:"N";s:6:"macron";s:1:"B";a:4:{i:0;s:3:"122";i:1;s:3:"604";i:2;s:3:"483";i:3;s:3:"678";}}i:198;a:4:{s:1:"C";s:3:"198";s:2:"WX";s:3:"333";s:1:"N";s:5:"breve";s:1:"B";a:4:{i:0;s:3:"156";i:1;s:3:"604";i:2;s:3:"494";i:3;s:3:"750";}}s:5:"breve";a:4:{s:1:"C";s:3:"198";s:2:"WX";s:3:"333";s:1:"N";s:5:"breve";s:1:"B";a:4:{i:0;s:3:"156";i:1;s:3:"604";i:2;s:3:"494";i:3;s:3:"750";}}i:199;a:4:{s:1:"C";s:3:"199";s:2:"WX";s:3:"333";s:1:"N";s:9:"dotaccent";s:1:"B";a:4:{i:0;s:3:"235";i:1;s:3:"614";i:2;s:3:"385";i:3;s:3:"729";}}s:9:"dotaccent";a:4:{s:1:"C";s:3:"199";s:2:"WX";s:3:"333";s:1:"N";s:9:"dotaccent";s:1:"B";a:4:{i:0;s:3:"235";i:1;s:3:"614";i:2;s:3:"385";i:3;s:3:"729";}}i:200;a:4:{s:1:"C";s:3:"200";s:2:"WX";s:3:"333";s:1:"N";s:8:"dieresis";s:1:"B";a:4:{i:0;s:3:"137";i:1;s:3:"614";i:2;s:3:"482";i:3;s:3:"729";}}s:8:"dieresis";a:4:{s:1:"C";s:3:"200";s:2:"WX";s:3:"333";s:1:"N";s:8:"dieresis";s:1:"B";a:4:{i:0;s:3:"137";i:1;s:3:"614";i:2;s:3:"482";i:3;s:3:"729";}}i:202;a:4:{s:1:"C";s:3:"202";s:2:"WX";s:3:"333";s:1:"N";s:4:"ring";s:1:"B";a:4:{i:0;s:3:"200";i:1;s:3:"568";i:2;s:3:"420";i:3;s:3:"776";}}s:4:"ring";a:4:{s:1:"C";s:3:"202";s:2:"WX";s:3:"333";s:1:"N";s:4:"ring";s:1:"B";a:4:{i:0;s:3:"200";i:1;s:3:"568";i:2;s:3:"420";i:3;s:3:"776";}}i:203;a:4:{s:1:"C";s:3:"203";s:2:"WX";s:3:"333";s:1:"N";s:7:"cedilla";s:1:"B";a:4:{i:0;s:3:"-37";i:1;s:4:"-228";i:2;s:3:"220";i:3;s:1:"0";}}s:7:"cedilla";a:4:{s:1:"C";s:3:"203";s:2:"WX";s:3:"333";s:1:"N";s:7:"cedilla";s:1:"B";a:4:{i:0;s:3:"-37";i:1;s:4:"-228";i:2;s:3:"220";i:3;s:1:"0";}}i:205;a:4:{s:1:"C";s:3:"205";s:2:"WX";s:3:"333";s:1:"N";s:12:"hungarumlaut";s:1:"B";a:4:{i:0;s:3:"137";i:1;s:3:"604";i:2;s:3:"645";i:3;s:3:"750";}}s:12:"hungarumlaut";a:4:{s:1:"C";s:3:"205";s:2:"WX";s:3:"333";s:1:"N";s:12:"hungarumlaut";s:1:"B";a:4:{i:0;s:3:"137";i:1;s:3:"604";i:2;s:3:"645";i:3;s:3:"750";}}i:206;a:4:{s:1:"C";s:3:"206";s:2:"WX";s:3:"333";s:1:"N";s:6:"ogonek";s:1:"B";a:4:{i:0;s:2:"41";i:1;s:4:"-228";i:2;s:3:"264";i:3;s:1:"0";}}s:6:"ogonek";a:4:{s:1:"C";s:3:"206";s:2:"WX";s:3:"333";s:1:"N";s:6:"ogonek";s:1:"B";a:4:{i:0;s:2:"41";i:1;s:4:"-228";i:2;s:3:"264";i:3;s:1:"0";}}i:207;a:4:{s:1:"C";s:3:"207";s:2:"WX";s:3:"333";s:1:"N";s:5:"caron";s:1:"B";a:4:{i:0;s:3:"149";i:1;s:3:"604";i:2;s:3:"502";i:3;s:3:"750";}}s:5:"caron";a:4:{s:1:"C";s:3:"207";s:2:"WX";s:3:"333";s:1:"N";s:5:"caron";s:1:"B";a:4:{i:0;s:3:"149";i:1;s:3:"604";i:2;s:3:"502";i:3;s:3:"750";}}i:208;a:4:{s:1:"C";s:3:"208";s:2:"WX";s:4:"1000";s:1:"N";s:6:"emdash";s:1:"B";a:4:{i:0;s:2:"48";i:1;s:3:"227";i:2;s:4:"1071";i:3;s:3:"333";}}s:6:"emdash";a:4:{s:1:"C";s:3:"208";s:2:"WX";s:4:"1000";s:1:"N";s:6:"emdash";s:1:"B";a:4:{i:0;s:2:"48";i:1;s:3:"227";i:2;s:4:"1071";i:3;s:3:"333";}}i:225;a:4:{s:1:"C";s:3:"225";s:2:"WX";s:4:"1000";s:1:"N";s:2:"AE";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:1:"0";i:2;s:4:"1100";i:3;s:3:"718";}}s:2:"AE";a:4:{s:1:"C";s:3:"225";s:2:"WX";s:4:"1000";s:1:"N";s:2:"AE";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:1:"0";i:2;s:4:"1100";i:3;s:3:"718";}}i:227;a:4:{s:1:"C";s:3:"227";s:2:"WX";s:3:"370";s:1:"N";s:11:"ordfeminine";s:1:"B";a:4:{i:0;s:3:"125";i:1;s:3:"401";i:2;s:3:"465";i:3;s:3:"737";}}s:11:"ordfeminine";a:4:{s:1:"C";s:3:"227";s:2:"WX";s:3:"370";s:1:"N";s:11:"ordfeminine";s:1:"B";a:4:{i:0;s:3:"125";i:1;s:3:"401";i:2;s:3:"465";i:3;s:3:"737";}}i:232;a:4:{s:1:"C";s:3:"232";s:2:"WX";s:3:"611";s:1:"N";s:6:"Lslash";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:1:"0";i:2;s:3:"611";i:3;s:3:"718";}}s:6:"Lslash";a:4:{s:1:"C";s:3:"232";s:2:"WX";s:3:"611";s:1:"N";s:6:"Lslash";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:1:"0";i:2;s:3:"611";i:3;s:3:"718";}}i:233;a:4:{s:1:"C";s:3:"233";s:2:"WX";s:3:"778";s:1:"N";s:6:"Oslash";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-27";i:2;s:3:"894";i:3;s:3:"745";}}s:6:"Oslash";a:4:{s:1:"C";s:3:"233";s:2:"WX";s:3:"778";s:1:"N";s:6:"Oslash";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-27";i:2;s:3:"894";i:3;s:3:"745";}}i:234;a:4:{s:1:"C";s:3:"234";s:2:"WX";s:4:"1000";s:1:"N";s:2:"OE";s:1:"B";a:4:{i:0;s:2:"99";i:1;s:3:"-19";i:2;s:4:"1114";i:3;s:3:"737";}}s:2:"OE";a:4:{s:1:"C";s:3:"234";s:2:"WX";s:4:"1000";s:1:"N";s:2:"OE";s:1:"B";a:4:{i:0;s:2:"99";i:1;s:3:"-19";i:2;s:4:"1114";i:3;s:3:"737";}}i:235;a:4:{s:1:"C";s:3:"235";s:2:"WX";s:3:"365";s:1:"N";s:12:"ordmasculine";s:1:"B";a:4:{i:0;s:3:"123";i:1;s:3:"401";i:2;s:3:"485";i:3;s:3:"737";}}s:12:"ordmasculine";a:4:{s:1:"C";s:3:"235";s:2:"WX";s:3:"365";s:1:"N";s:12:"ordmasculine";s:1:"B";a:4:{i:0;s:3:"123";i:1;s:3:"401";i:2;s:3:"485";i:3;s:3:"737";}}i:241;a:4:{s:1:"C";s:3:"241";s:2:"WX";s:3:"889";s:1:"N";s:2:"ae";s:1:"B";a:4:{i:0;s:2:"56";i:1;s:3:"-14";i:2;s:3:"923";i:3;s:3:"546";}}s:2:"ae";a:4:{s:1:"C";s:3:"241";s:2:"WX";s:3:"889";s:1:"N";s:2:"ae";s:1:"B";a:4:{i:0;s:2:"56";i:1;s:3:"-14";i:2;s:3:"923";i:3;s:3:"546";}}i:245;a:4:{s:1:"C";s:3:"245";s:2:"WX";s:3:"278";s:1:"N";s:8:"dotlessi";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"322";i:3;s:3:"532";}}s:8:"dotlessi";a:4:{s:1:"C";s:3:"245";s:2:"WX";s:3:"278";s:1:"N";s:8:"dotlessi";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"322";i:3;s:3:"532";}}i:248;a:4:{s:1:"C";s:3:"248";s:2:"WX";s:3:"278";s:1:"N";s:6:"lslash";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:1:"0";i:2;s:3:"407";i:3;s:3:"718";}}s:6:"lslash";a:4:{s:1:"C";s:3:"248";s:2:"WX";s:3:"278";s:1:"N";s:6:"lslash";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:1:"0";i:2;s:3:"407";i:3;s:3:"718";}}i:249;a:4:{s:1:"C";s:3:"249";s:2:"WX";s:3:"611";s:1:"N";s:6:"oslash";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:3:"-29";i:2;s:3:"701";i:3;s:3:"560";}}s:6:"oslash";a:4:{s:1:"C";s:3:"249";s:2:"WX";s:3:"611";s:1:"N";s:6:"oslash";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:3:"-29";i:2;s:3:"701";i:3;s:3:"560";}}i:250;a:4:{s:1:"C";s:3:"250";s:2:"WX";s:3:"944";s:1:"N";s:2:"oe";s:1:"B";a:4:{i:0;s:2:"82";i:1;s:3:"-14";i:2;s:3:"977";i:3;s:3:"546";}}s:2:"oe";a:4:{s:1:"C";s:3:"250";s:2:"WX";s:3:"944";s:1:"N";s:2:"oe";s:1:"B";a:4:{i:0;s:2:"82";i:1;s:3:"-14";i:2;s:3:"977";i:3;s:3:"546";}}i:251;a:4:{s:1:"C";s:3:"251";s:2:"WX";s:3:"611";s:1:"N";s:10:"germandbls";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:3:"-14";i:2;s:3:"657";i:3;s:3:"731";}}s:10:"germandbls";a:4:{s:1:"C";s:3:"251";s:2:"WX";s:3:"611";s:1:"N";s:10:"germandbls";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:3:"-14";i:2;s:3:"657";i:3;s:3:"731";}}s:9:"Idieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:9:"Idieresis";s:1:"B";a:4:{i:0;s:2:"64";i:1;s:1:"0";i:2;s:3:"494";i:3;s:3:"915";}}s:6:"eacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"eacute";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:3:"-14";i:2;s:3:"627";i:3;s:3:"750";}}s:6:"abreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"abreve";s:1:"B";a:4:{i:0;s:2:"55";i:1;s:3:"-14";i:2;s:3:"606";i:3;s:3:"750";}}s:13:"uhungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:13:"uhungarumlaut";s:1:"B";a:4:{i:0;s:2:"98";i:1;s:3:"-14";i:2;s:3:"784";i:3;s:3:"750";}}s:6:"ecaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"ecaron";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:3:"-14";i:2;s:3:"614";i:3;s:3:"750";}}s:9:"Ydieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:9:"Ydieresis";s:1:"B";a:4:{i:0;s:3:"168";i:1;s:1:"0";i:2;s:3:"806";i:3;s:3:"915";}}s:6:"divide";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"584";s:1:"N";s:6:"divide";s:1:"B";a:4:{i:0;s:2:"82";i:1;s:3:"-42";i:2;s:3:"610";i:3;s:3:"548";}}s:6:"Yacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Yacute";s:1:"B";a:4:{i:0;s:3:"168";i:1;s:1:"0";i:2;s:3:"806";i:3;s:3:"936";}}s:11:"Acircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:11:"Acircumflex";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"706";i:3;s:3:"936";}}s:6:"aacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"aacute";s:1:"B";a:4:{i:0;s:2:"55";i:1;s:3:"-14";i:2;s:3:"627";i:3;s:3:"750";}}s:11:"Ucircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:11:"Ucircumflex";s:1:"B";a:4:{i:0;s:3:"116";i:1;s:3:"-19";i:2;s:3:"804";i:3;s:3:"936";}}s:6:"yacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"yacute";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:4:"-214";i:2;s:3:"652";i:3;s:3:"750";}}s:12:"scommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:12:"scommaaccent";s:1:"B";a:4:{i:0;s:2:"63";i:1;s:4:"-228";i:2;s:3:"584";i:3;s:3:"546";}}s:11:"ecircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:11:"ecircumflex";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:3:"-14";i:2;s:3:"593";i:3;s:3:"750";}}s:5:"Uring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:5:"Uring";s:1:"B";a:4:{i:0;s:3:"116";i:1;s:3:"-19";i:2;s:3:"804";i:3;s:3:"962";}}s:9:"Udieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:9:"Udieresis";s:1:"B";a:4:{i:0;s:3:"116";i:1;s:3:"-19";i:2;s:3:"804";i:3;s:3:"915";}}s:7:"aogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:7:"aogonek";s:1:"B";a:4:{i:0;s:2:"55";i:1;s:4:"-224";i:2;s:3:"583";i:3;s:3:"546";}}s:6:"Uacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Uacute";s:1:"B";a:4:{i:0;s:3:"116";i:1;s:3:"-19";i:2;s:3:"804";i:3;s:3:"936";}}s:7:"uogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:7:"uogonek";s:1:"B";a:4:{i:0;s:2:"98";i:1;s:4:"-228";i:2;s:3:"658";i:3;s:3:"532";}}s:9:"Edieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:9:"Edieresis";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"757";i:3;s:3:"915";}}s:6:"Dcroat";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Dcroat";s:1:"B";a:4:{i:0;s:2:"62";i:1;s:1:"0";i:2;s:3:"777";i:3;s:3:"718";}}s:11:"commaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"250";s:1:"N";s:11:"commaaccent";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:4:"-228";i:2;s:3:"188";i:3;s:3:"-50";}}s:9:"copyright";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"737";s:1:"N";s:9:"copyright";s:1:"B";a:4:{i:0;s:2:"56";i:1;s:3:"-19";i:2;s:3:"835";i:3;s:3:"737";}}s:7:"Emacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:7:"Emacron";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"757";i:3;s:3:"864";}}s:6:"ccaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"ccaron";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:3:"-14";i:2;s:3:"614";i:3;s:3:"750";}}s:5:"aring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:5:"aring";s:1:"B";a:4:{i:0;s:2:"55";i:1;s:3:"-14";i:2;s:3:"583";i:3;s:3:"776";}}s:12:"Ncommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:12:"Ncommaaccent";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:4:"-228";i:2;s:3:"807";i:3;s:3:"718";}}s:6:"lacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:6:"lacute";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"528";i:3;s:3:"936";}}s:6:"agrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"agrave";s:1:"B";a:4:{i:0;s:2:"55";i:1;s:3:"-14";i:2;s:3:"583";i:3;s:3:"750";}}s:12:"Tcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:12:"Tcommaaccent";s:1:"B";a:4:{i:0;s:3:"140";i:1;s:4:"-228";i:2;s:3:"751";i:3;s:3:"718";}}s:6:"Cacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Cacute";s:1:"B";a:4:{i:0;s:3:"107";i:1;s:3:"-19";i:2;s:3:"789";i:3;s:3:"936";}}s:6:"atilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"atilde";s:1:"B";a:4:{i:0;s:2:"55";i:1;s:3:"-14";i:2;s:3:"619";i:3;s:3:"737";}}s:10:"Edotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:10:"Edotaccent";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"757";i:3;s:3:"915";}}s:6:"scaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"scaron";s:1:"B";a:4:{i:0;s:2:"63";i:1;s:3:"-14";i:2;s:3:"614";i:3;s:3:"750";}}s:8:"scedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:8:"scedilla";s:1:"B";a:4:{i:0;s:2:"63";i:1;s:4:"-228";i:2;s:3:"584";i:3;s:3:"546";}}s:6:"iacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:6:"iacute";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"488";i:3;s:3:"750";}}s:7:"lozenge";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"494";s:1:"N";s:7:"lozenge";s:1:"B";a:4:{i:0;s:2:"90";i:1;s:1:"0";i:2;s:3:"564";i:3;s:3:"745";}}s:6:"Rcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Rcaron";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"778";i:3;s:3:"936";}}s:12:"Gcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:12:"Gcommaaccent";s:1:"B";a:4:{i:0;s:3:"108";i:1;s:4:"-228";i:2;s:3:"817";i:3;s:3:"737";}}s:11:"ucircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:11:"ucircumflex";s:1:"B";a:4:{i:0;s:2:"98";i:1;s:3:"-14";i:2;s:3:"658";i:3;s:3:"750";}}s:11:"acircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:11:"acircumflex";s:1:"B";a:4:{i:0;s:2:"55";i:1;s:3:"-14";i:2;s:3:"583";i:3;s:3:"750";}}s:7:"Amacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:7:"Amacron";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"718";i:3;s:3:"864";}}s:6:"rcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:6:"rcaron";s:1:"B";a:4:{i:0;s:2:"64";i:1;s:1:"0";i:2;s:3:"530";i:3;s:3:"750";}}s:8:"ccedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:8:"ccedilla";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:4:"-228";i:2;s:3:"599";i:3;s:3:"546";}}s:10:"Zdotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:10:"Zdotaccent";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:1:"0";i:2;s:3:"737";i:3;s:3:"915";}}s:5:"Thorn";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:5:"Thorn";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"716";i:3;s:3:"718";}}s:7:"Omacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:7:"Omacron";s:1:"B";a:4:{i:0;s:3:"107";i:1;s:3:"-19";i:2;s:3:"823";i:3;s:3:"864";}}s:6:"Racute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Racute";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"778";i:3;s:3:"936";}}s:6:"Sacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Sacute";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:3:"-19";i:2;s:3:"722";i:3;s:3:"936";}}s:6:"dcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"743";s:1:"N";s:6:"dcaron";s:1:"B";a:4:{i:0;s:2:"82";i:1;s:3:"-14";i:2;s:3:"903";i:3;s:3:"718";}}s:7:"Umacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:7:"Umacron";s:1:"B";a:4:{i:0;s:3:"116";i:1;s:3:"-19";i:2;s:3:"804";i:3;s:3:"864";}}s:5:"uring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:5:"uring";s:1:"B";a:4:{i:0;s:2:"98";i:1;s:3:"-14";i:2;s:3:"658";i:3;s:3:"776";}}s:13:"threesuperior";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"333";s:1:"N";s:13:"threesuperior";s:1:"B";a:4:{i:0;s:2:"91";i:1;s:3:"271";i:2;s:3:"441";i:3;s:3:"710";}}s:6:"Ograve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:6:"Ograve";s:1:"B";a:4:{i:0;s:3:"107";i:1;s:3:"-19";i:2;s:3:"823";i:3;s:3:"936";}}s:6:"Agrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Agrave";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"702";i:3;s:3:"936";}}s:6:"Abreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Abreve";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"729";i:3;s:3:"936";}}s:8:"multiply";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"584";s:1:"N";s:8:"multiply";s:1:"B";a:4:{i:0;s:2:"57";i:1;s:1:"1";i:2;s:3:"635";i:3;s:3:"505";}}s:6:"uacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"uacute";s:1:"B";a:4:{i:0;s:2:"98";i:1;s:3:"-14";i:2;s:3:"658";i:3;s:3:"750";}}s:6:"Tcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"Tcaron";s:1:"B";a:4:{i:0;s:3:"140";i:1;s:1:"0";i:2;s:3:"751";i:3;s:3:"936";}}s:11:"partialdiff";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"494";s:1:"N";s:11:"partialdiff";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:3:"-21";i:2;s:3:"585";i:3;s:3:"750";}}s:9:"ydieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:9:"ydieresis";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:4:"-214";i:2;s:3:"652";i:3;s:3:"729";}}s:6:"Nacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Nacute";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"807";i:3;s:3:"936";}}s:11:"icircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:11:"icircumflex";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"444";i:3;s:3:"750";}}s:11:"Ecircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:11:"Ecircumflex";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"757";i:3;s:3:"936";}}s:9:"adieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:9:"adieresis";s:1:"B";a:4:{i:0;s:2:"55";i:1;s:3:"-14";i:2;s:3:"594";i:3;s:3:"729";}}s:9:"edieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:9:"edieresis";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:3:"-14";i:2;s:3:"594";i:3;s:3:"729";}}s:6:"cacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"cacute";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:3:"-14";i:2;s:3:"627";i:3;s:3:"750";}}s:6:"nacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"nacute";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:1:"0";i:2;s:3:"654";i:3;s:3:"750";}}s:7:"umacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:7:"umacron";s:1:"B";a:4:{i:0;s:2:"98";i:1;s:3:"-14";i:2;s:3:"658";i:3;s:3:"678";}}s:6:"Ncaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Ncaron";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"807";i:3;s:3:"936";}}s:6:"Iacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:6:"Iacute";s:1:"B";a:4:{i:0;s:2:"64";i:1;s:1:"0";i:2;s:3:"528";i:3;s:3:"936";}}s:9:"plusminus";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"584";s:1:"N";s:9:"plusminus";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:1:"0";i:2;s:3:"625";i:3;s:3:"506";}}s:9:"brokenbar";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"280";s:1:"N";s:9:"brokenbar";s:1:"B";a:4:{i:0;s:2:"52";i:1;s:4:"-150";i:2;s:3:"345";i:3;s:3:"700";}}s:10:"registered";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"737";s:1:"N";s:10:"registered";s:1:"B";a:4:{i:0;s:2:"55";i:1;s:3:"-19";i:2;s:3:"834";i:3;s:3:"737";}}s:6:"Gbreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:6:"Gbreve";s:1:"B";a:4:{i:0;s:3:"108";i:1;s:3:"-19";i:2;s:3:"817";i:3;s:3:"936";}}s:10:"Idotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:10:"Idotaccent";s:1:"B";a:4:{i:0;s:2:"64";i:1;s:1:"0";i:2;s:3:"397";i:3;s:3:"915";}}s:9:"summation";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"summation";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:3:"-10";i:2;s:3:"670";i:3;s:3:"706";}}s:6:"Egrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Egrave";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"757";i:3;s:3:"936";}}s:6:"racute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:6:"racute";s:1:"B";a:4:{i:0;s:2:"64";i:1;s:1:"0";i:2;s:3:"543";i:3;s:3:"750";}}s:7:"omacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:7:"omacron";s:1:"B";a:4:{i:0;s:2:"82";i:1;s:3:"-14";i:2;s:3:"643";i:3;s:3:"678";}}s:6:"Zacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"Zacute";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:1:"0";i:2;s:3:"737";i:3;s:3:"936";}}s:6:"Zcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"Zcaron";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:1:"0";i:2;s:3:"737";i:3;s:3:"936";}}s:12:"greaterequal";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"549";s:1:"N";s:12:"greaterequal";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"629";i:3;s:3:"704";}}s:3:"Eth";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:3:"Eth";s:1:"B";a:4:{i:0;s:2:"62";i:1;s:1:"0";i:2;s:3:"777";i:3;s:3:"718";}}s:8:"Ccedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:8:"Ccedilla";s:1:"B";a:4:{i:0;s:3:"107";i:1;s:4:"-228";i:2;s:3:"789";i:3;s:3:"737";}}s:12:"lcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:12:"lcommaaccent";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:4:"-228";i:2;s:3:"362";i:3;s:3:"718";}}s:6:"tcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:6:"tcaron";s:1:"B";a:4:{i:0;s:3:"100";i:1;s:2:"-6";i:2;s:3:"608";i:3;s:3:"878";}}s:7:"eogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:7:"eogonek";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:4:"-228";i:2;s:3:"593";i:3;s:3:"546";}}s:7:"Uogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:7:"Uogonek";s:1:"B";a:4:{i:0;s:3:"116";i:1;s:4:"-228";i:2;s:3:"804";i:3;s:3:"718";}}s:6:"Aacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Aacute";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"750";i:3;s:3:"936";}}s:9:"Adieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:9:"Adieresis";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"716";i:3;s:3:"915";}}s:6:"egrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"egrave";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:3:"-14";i:2;s:3:"593";i:3;s:3:"750";}}s:6:"zacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"zacute";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"599";i:3;s:3:"750";}}s:7:"iogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:7:"iogonek";s:1:"B";a:4:{i:0;s:3:"-14";i:1;s:4:"-224";i:2;s:3:"363";i:3;s:3:"725";}}s:6:"Oacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:6:"Oacute";s:1:"B";a:4:{i:0;s:3:"107";i:1;s:3:"-19";i:2;s:3:"823";i:3;s:3:"936";}}s:6:"oacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"oacute";s:1:"B";a:4:{i:0;s:2:"82";i:1;s:3:"-14";i:2;s:3:"654";i:3;s:3:"750";}}s:7:"amacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:7:"amacron";s:1:"B";a:4:{i:0;s:2:"55";i:1;s:3:"-14";i:2;s:3:"595";i:3;s:3:"678";}}s:6:"sacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"sacute";s:1:"B";a:4:{i:0;s:2:"63";i:1;s:3:"-14";i:2;s:3:"627";i:3;s:3:"750";}}s:9:"idieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:9:"idieresis";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"455";i:3;s:3:"729";}}s:11:"Ocircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:11:"Ocircumflex";s:1:"B";a:4:{i:0;s:3:"107";i:1;s:3:"-19";i:2;s:3:"823";i:3;s:3:"936";}}s:6:"Ugrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Ugrave";s:1:"B";a:4:{i:0;s:3:"116";i:1;s:3:"-19";i:2;s:3:"804";i:3;s:3:"936";}}s:5:"Delta";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"612";s:1:"N";s:5:"Delta";s:1:"B";a:4:{i:0;s:1:"6";i:1;s:1:"0";i:2;s:3:"608";i:3;s:3:"688";}}s:5:"thorn";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:5:"thorn";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:4:"-208";i:2;s:3:"645";i:3;s:3:"718";}}s:11:"twosuperior";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"333";s:1:"N";s:11:"twosuperior";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:3:"283";i:2;s:3:"449";i:3;s:3:"710";}}s:9:"Odieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:9:"Odieresis";s:1:"B";a:4:{i:0;s:3:"107";i:1;s:3:"-19";i:2;s:3:"823";i:3;s:3:"915";}}s:2:"mu";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:2:"mu";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:4:"-207";i:2;s:3:"658";i:3;s:3:"532";}}s:6:"igrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:6:"igrave";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"326";i:3;s:3:"750";}}s:13:"ohungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:13:"ohungarumlaut";s:1:"B";a:4:{i:0;s:2:"82";i:1;s:3:"-14";i:2;s:3:"784";i:3;s:3:"750";}}s:7:"Eogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:7:"Eogonek";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:4:"-224";i:2;s:3:"757";i:3;s:3:"718";}}s:6:"dcroat";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"dcroat";s:1:"B";a:4:{i:0;s:2:"82";i:1;s:3:"-14";i:2;s:3:"789";i:3;s:3:"718";}}s:13:"threequarters";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"834";s:1:"N";s:13:"threequarters";s:1:"B";a:4:{i:0;s:2:"99";i:1;s:3:"-19";i:2;s:3:"839";i:3;s:3:"710";}}s:8:"Scedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:8:"Scedilla";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:4:"-228";i:2;s:3:"718";i:3;s:3:"737";}}s:6:"lcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"400";s:1:"N";s:6:"lcaron";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"561";i:3;s:3:"718";}}s:12:"Kcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:12:"Kcommaaccent";s:1:"B";a:4:{i:0;s:2:"87";i:1;s:4:"-228";i:2;s:3:"858";i:3;s:3:"718";}}s:6:"Lacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"Lacute";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"611";i:3;s:3:"936";}}s:9:"trademark";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:4:"1000";s:1:"N";s:9:"trademark";s:1:"B";a:4:{i:0;s:3:"179";i:1;s:3:"306";i:2;s:4:"1109";i:3;s:3:"718";}}s:10:"edotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:10:"edotaccent";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:3:"-14";i:2;s:3:"593";i:3;s:3:"729";}}s:6:"Igrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:6:"Igrave";s:1:"B";a:4:{i:0;s:2:"64";i:1;s:1:"0";i:2;s:3:"367";i:3;s:3:"936";}}s:7:"Imacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:7:"Imacron";s:1:"B";a:4:{i:0;s:2:"64";i:1;s:1:"0";i:2;s:3:"496";i:3;s:3:"864";}}s:6:"Lcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"Lcaron";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"643";i:3;s:3:"718";}}s:7:"onehalf";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"834";s:1:"N";s:7:"onehalf";s:1:"B";a:4:{i:0;s:3:"132";i:1;s:3:"-19";i:2;s:3:"858";i:3;s:3:"710";}}s:9:"lessequal";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"549";s:1:"N";s:9:"lessequal";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:1:"0";i:2;s:3:"676";i:3;s:3:"704";}}s:11:"ocircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:11:"ocircumflex";s:1:"B";a:4:{i:0;s:2:"82";i:1;s:3:"-14";i:2;s:3:"643";i:3;s:3:"750";}}s:6:"ntilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"ntilde";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:1:"0";i:2;s:3:"646";i:3;s:3:"737";}}s:13:"Uhungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:13:"Uhungarumlaut";s:1:"B";a:4:{i:0;s:3:"116";i:1;s:3:"-19";i:2;s:3:"880";i:3;s:3:"936";}}s:6:"Eacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Eacute";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"757";i:3;s:3:"936";}}s:7:"emacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:7:"emacron";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:3:"-14";i:2;s:3:"595";i:3;s:3:"678";}}s:6:"gbreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"gbreve";s:1:"B";a:4:{i:0;s:2:"38";i:1;s:4:"-217";i:2;s:3:"666";i:3;s:3:"750";}}s:10:"onequarter";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"834";s:1:"N";s:10:"onequarter";s:1:"B";a:4:{i:0;s:3:"132";i:1;s:3:"-19";i:2;s:3:"806";i:3;s:3:"710";}}s:6:"Scaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Scaron";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:3:"-19";i:2;s:3:"718";i:3;s:3:"936";}}s:12:"Scommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:12:"Scommaaccent";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:4:"-228";i:2;s:3:"718";i:3;s:3:"737";}}s:13:"Ohungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:13:"Ohungarumlaut";s:1:"B";a:4:{i:0;s:3:"107";i:1;s:3:"-19";i:2;s:3:"908";i:3;s:3:"936";}}s:6:"degree";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"400";s:1:"N";s:6:"degree";s:1:"B";a:4:{i:0;s:3:"175";i:1;s:3:"426";i:2;s:3:"467";i:3;s:3:"712";}}s:6:"ograve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"ograve";s:1:"B";a:4:{i:0;s:2:"82";i:1;s:3:"-14";i:2;s:3:"643";i:3;s:3:"750";}}s:6:"Ccaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Ccaron";s:1:"B";a:4:{i:0;s:3:"107";i:1;s:3:"-19";i:2;s:3:"789";i:3;s:3:"936";}}s:6:"ugrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"ugrave";s:1:"B";a:4:{i:0;s:2:"98";i:1;s:3:"-14";i:2;s:3:"658";i:3;s:3:"750";}}s:7:"radical";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"549";s:1:"N";s:7:"radical";s:1:"B";a:4:{i:0;s:3:"112";i:1;s:3:"-46";i:2;s:3:"689";i:3;s:3:"850";}}s:6:"Dcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Dcaron";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"777";i:3;s:3:"936";}}s:12:"rcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:12:"rcommaaccent";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:4:"-228";i:2;s:3:"489";i:3;s:3:"546";}}s:6:"Ntilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Ntilde";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"807";i:3;s:3:"923";}}s:6:"otilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"otilde";s:1:"B";a:4:{i:0;s:2:"82";i:1;s:3:"-14";i:2;s:3:"646";i:3;s:3:"737";}}s:12:"Rcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:12:"Rcommaaccent";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:4:"-228";i:2;s:3:"778";i:3;s:3:"718";}}s:12:"Lcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:12:"Lcommaaccent";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:4:"-228";i:2;s:3:"611";i:3;s:3:"718";}}s:6:"Atilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Atilde";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"741";i:3;s:3:"923";}}s:7:"Aogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:7:"Aogonek";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:4:"-224";i:2;s:3:"702";i:3;s:3:"718";}}s:5:"Aring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:5:"Aring";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"702";i:3;s:3:"962";}}s:6:"Otilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:6:"Otilde";s:1:"B";a:4:{i:0;s:3:"107";i:1;s:3:"-19";i:2;s:3:"823";i:3;s:3:"923";}}s:10:"zdotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:10:"zdotaccent";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"583";i:3;s:3:"729";}}s:6:"Ecaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Ecaron";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"757";i:3;s:3:"936";}}s:7:"Iogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:7:"Iogonek";s:1:"B";a:4:{i:0;s:3:"-41";i:1;s:4:"-228";i:2;s:3:"367";i:3;s:3:"718";}}s:12:"kcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:12:"kcommaaccent";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:4:"-228";i:2;s:3:"670";i:3;s:3:"718";}}s:5:"minus";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"584";s:1:"N";s:5:"minus";s:1:"B";a:4:{i:0;s:2:"82";i:1;s:3:"197";i:2;s:3:"610";i:3;s:3:"309";}}s:11:"Icircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:11:"Icircumflex";s:1:"B";a:4:{i:0;s:2:"64";i:1;s:1:"0";i:2;s:3:"484";i:3;s:3:"936";}}s:6:"ncaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"ncaron";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:1:"0";i:2;s:3:"641";i:3;s:3:"750";}}s:12:"tcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"333";s:1:"N";s:12:"tcommaaccent";s:1:"B";a:4:{i:0;s:2:"58";i:1;s:4:"-228";i:2;s:3:"422";i:3;s:3:"676";}}s:10:"logicalnot";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"584";s:1:"N";s:10:"logicalnot";s:1:"B";a:4:{i:0;s:3:"105";i:1;s:3:"108";i:2;s:3:"633";i:3;s:3:"419";}}s:9:"odieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:9:"odieresis";s:1:"B";a:4:{i:0;s:2:"82";i:1;s:3:"-14";i:2;s:3:"643";i:3;s:3:"729";}}s:9:"udieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:9:"udieresis";s:1:"B";a:4:{i:0;s:2:"98";i:1;s:3:"-14";i:2;s:3:"658";i:3;s:3:"729";}}s:8:"notequal";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"549";s:1:"N";s:8:"notequal";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:3:"-49";i:2;s:3:"630";i:3;s:3:"570";}}s:12:"gcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:12:"gcommaaccent";s:1:"B";a:4:{i:0;s:2:"38";i:1;s:4:"-217";i:2;s:3:"666";i:3;s:3:"850";}}s:3:"eth";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:3:"eth";s:1:"B";a:4:{i:0;s:2:"82";i:1;s:3:"-14";i:2;s:3:"670";i:3;s:3:"737";}}s:6:"zcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"zcaron";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"586";i:3;s:3:"750";}}s:12:"ncommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:12:"ncommaaccent";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:4:"-228";i:2;s:3:"629";i:3;s:3:"546";}}s:11:"onesuperior";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"333";s:1:"N";s:11:"onesuperior";s:1:"B";a:4:{i:0;s:3:"148";i:1;s:3:"283";i:2;s:3:"388";i:3;s:3:"710";}}s:7:"imacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:7:"imacron";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"429";i:3;s:3:"678";}}s:4:"Euro";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:4:"Euro";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:1:"0";i:3;s:1:"0";}}}s:3:"KPX";a:134:{s:1:"A";a:48:{s:1:"C";s:3:"-40";s:6:"Cacute";s:3:"-40";s:6:"Ccaron";s:3:"-40";s:8:"Ccedilla";s:3:"-40";s:1:"G";s:3:"-50";s:6:"Gbreve";s:3:"-50";s:12:"Gcommaaccent";s:3:"-50";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"Q";s:3:"-40";s:1:"T";s:3:"-90";s:6:"Tcaron";s:3:"-90";s:12:"Tcommaaccent";s:3:"-90";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-80";s:1:"W";s:3:"-60";s:1:"Y";s:4:"-110";s:6:"Yacute";s:4:"-110";s:9:"Ydieresis";s:4:"-110";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-40";s:1:"w";s:3:"-30";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:6:"Aacute";a:48:{s:1:"C";s:3:"-40";s:6:"Cacute";s:3:"-40";s:6:"Ccaron";s:3:"-40";s:8:"Ccedilla";s:3:"-40";s:1:"G";s:3:"-50";s:6:"Gbreve";s:3:"-50";s:12:"Gcommaaccent";s:3:"-50";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"Q";s:3:"-40";s:1:"T";s:3:"-90";s:6:"Tcaron";s:3:"-90";s:12:"Tcommaaccent";s:3:"-90";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-80";s:1:"W";s:3:"-60";s:1:"Y";s:4:"-110";s:6:"Yacute";s:4:"-110";s:9:"Ydieresis";s:4:"-110";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-40";s:1:"w";s:3:"-30";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:6:"Abreve";a:48:{s:1:"C";s:3:"-40";s:6:"Cacute";s:3:"-40";s:6:"Ccaron";s:3:"-40";s:8:"Ccedilla";s:3:"-40";s:1:"G";s:3:"-50";s:6:"Gbreve";s:3:"-50";s:12:"Gcommaaccent";s:3:"-50";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"Q";s:3:"-40";s:1:"T";s:3:"-90";s:6:"Tcaron";s:3:"-90";s:12:"Tcommaaccent";s:3:"-90";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-80";s:1:"W";s:3:"-60";s:1:"Y";s:4:"-110";s:6:"Yacute";s:4:"-110";s:9:"Ydieresis";s:4:"-110";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-40";s:1:"w";s:3:"-30";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:11:"Acircumflex";a:48:{s:1:"C";s:3:"-40";s:6:"Cacute";s:3:"-40";s:6:"Ccaron";s:3:"-40";s:8:"Ccedilla";s:3:"-40";s:1:"G";s:3:"-50";s:6:"Gbreve";s:3:"-50";s:12:"Gcommaaccent";s:3:"-50";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"Q";s:3:"-40";s:1:"T";s:3:"-90";s:6:"Tcaron";s:3:"-90";s:12:"Tcommaaccent";s:3:"-90";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-80";s:1:"W";s:3:"-60";s:1:"Y";s:4:"-110";s:6:"Yacute";s:4:"-110";s:9:"Ydieresis";s:4:"-110";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-40";s:1:"w";s:3:"-30";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:9:"Adieresis";a:48:{s:1:"C";s:3:"-40";s:6:"Cacute";s:3:"-40";s:6:"Ccaron";s:3:"-40";s:8:"Ccedilla";s:3:"-40";s:1:"G";s:3:"-50";s:6:"Gbreve";s:3:"-50";s:12:"Gcommaaccent";s:3:"-50";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"Q";s:3:"-40";s:1:"T";s:3:"-90";s:6:"Tcaron";s:3:"-90";s:12:"Tcommaaccent";s:3:"-90";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-80";s:1:"W";s:3:"-60";s:1:"Y";s:4:"-110";s:6:"Yacute";s:4:"-110";s:9:"Ydieresis";s:4:"-110";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-40";s:1:"w";s:3:"-30";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:6:"Agrave";a:48:{s:1:"C";s:3:"-40";s:6:"Cacute";s:3:"-40";s:6:"Ccaron";s:3:"-40";s:8:"Ccedilla";s:3:"-40";s:1:"G";s:3:"-50";s:6:"Gbreve";s:3:"-50";s:12:"Gcommaaccent";s:3:"-50";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"Q";s:3:"-40";s:1:"T";s:3:"-90";s:6:"Tcaron";s:3:"-90";s:12:"Tcommaaccent";s:3:"-90";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-80";s:1:"W";s:3:"-60";s:1:"Y";s:4:"-110";s:6:"Yacute";s:4:"-110";s:9:"Ydieresis";s:4:"-110";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-40";s:1:"w";s:3:"-30";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:7:"Amacron";a:48:{s:1:"C";s:3:"-40";s:6:"Cacute";s:3:"-40";s:6:"Ccaron";s:3:"-40";s:8:"Ccedilla";s:3:"-40";s:1:"G";s:3:"-50";s:6:"Gbreve";s:3:"-50";s:12:"Gcommaaccent";s:3:"-50";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"Q";s:3:"-40";s:1:"T";s:3:"-90";s:6:"Tcaron";s:3:"-90";s:12:"Tcommaaccent";s:3:"-90";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-80";s:1:"W";s:3:"-60";s:1:"Y";s:4:"-110";s:6:"Yacute";s:4:"-110";s:9:"Ydieresis";s:4:"-110";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-40";s:1:"w";s:3:"-30";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:7:"Aogonek";a:48:{s:1:"C";s:3:"-40";s:6:"Cacute";s:3:"-40";s:6:"Ccaron";s:3:"-40";s:8:"Ccedilla";s:3:"-40";s:1:"G";s:3:"-50";s:6:"Gbreve";s:3:"-50";s:12:"Gcommaaccent";s:3:"-50";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"Q";s:3:"-40";s:1:"T";s:3:"-90";s:6:"Tcaron";s:3:"-90";s:12:"Tcommaaccent";s:3:"-90";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-80";s:1:"W";s:3:"-60";s:1:"Y";s:4:"-110";s:6:"Yacute";s:4:"-110";s:9:"Ydieresis";s:4:"-110";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-40";s:1:"w";s:3:"-30";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:5:"Aring";a:48:{s:1:"C";s:3:"-40";s:6:"Cacute";s:3:"-40";s:6:"Ccaron";s:3:"-40";s:8:"Ccedilla";s:3:"-40";s:1:"G";s:3:"-50";s:6:"Gbreve";s:3:"-50";s:12:"Gcommaaccent";s:3:"-50";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"Q";s:3:"-40";s:1:"T";s:3:"-90";s:6:"Tcaron";s:3:"-90";s:12:"Tcommaaccent";s:3:"-90";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-80";s:1:"W";s:3:"-60";s:1:"Y";s:4:"-110";s:6:"Yacute";s:4:"-110";s:9:"Ydieresis";s:4:"-110";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-40";s:1:"w";s:3:"-30";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:6:"Atilde";a:48:{s:1:"C";s:3:"-40";s:6:"Cacute";s:3:"-40";s:6:"Ccaron";s:3:"-40";s:8:"Ccedilla";s:3:"-40";s:1:"G";s:3:"-50";s:6:"Gbreve";s:3:"-50";s:12:"Gcommaaccent";s:3:"-50";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"Q";s:3:"-40";s:1:"T";s:3:"-90";s:6:"Tcaron";s:3:"-90";s:12:"Tcommaaccent";s:3:"-90";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-80";s:1:"W";s:3:"-60";s:1:"Y";s:4:"-110";s:6:"Yacute";s:4:"-110";s:9:"Ydieresis";s:4:"-110";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-40";s:1:"w";s:3:"-30";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:1:"B";a:19:{s:1:"A";s:3:"-30";s:6:"Aacute";s:3:"-30";s:6:"Abreve";s:3:"-30";s:11:"Acircumflex";s:3:"-30";s:9:"Adieresis";s:3:"-30";s:6:"Agrave";s:3:"-30";s:7:"Amacron";s:3:"-30";s:7:"Aogonek";s:3:"-30";s:5:"Aring";s:3:"-30";s:6:"Atilde";s:3:"-30";s:1:"U";s:3:"-10";s:6:"Uacute";s:3:"-10";s:11:"Ucircumflex";s:3:"-10";s:9:"Udieresis";s:3:"-10";s:6:"Ugrave";s:3:"-10";s:13:"Uhungarumlaut";s:3:"-10";s:7:"Umacron";s:3:"-10";s:7:"Uogonek";s:3:"-10";s:5:"Uring";s:3:"-10";}s:1:"D";a:17:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:1:"V";s:3:"-40";s:1:"W";s:3:"-40";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:5:"comma";s:3:"-30";s:6:"period";s:3:"-30";}s:6:"Dcaron";a:17:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:1:"V";s:3:"-40";s:1:"W";s:3:"-40";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:5:"comma";s:3:"-30";s:6:"period";s:3:"-30";}s:6:"Dcroat";a:17:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:1:"V";s:3:"-40";s:1:"W";s:3:"-40";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:5:"comma";s:3:"-30";s:6:"period";s:3:"-30";}s:1:"F";a:22:{s:1:"A";s:3:"-80";s:6:"Aacute";s:3:"-80";s:6:"Abreve";s:3:"-80";s:11:"Acircumflex";s:3:"-80";s:9:"Adieresis";s:3:"-80";s:6:"Agrave";s:3:"-80";s:7:"Amacron";s:3:"-80";s:7:"Aogonek";s:3:"-80";s:5:"Aring";s:3:"-80";s:6:"Atilde";s:3:"-80";s:1:"a";s:3:"-20";s:6:"aacute";s:3:"-20";s:6:"abreve";s:3:"-20";s:11:"acircumflex";s:3:"-20";s:9:"adieresis";s:3:"-20";s:6:"agrave";s:3:"-20";s:7:"amacron";s:3:"-20";s:7:"aogonek";s:3:"-20";s:5:"aring";s:3:"-20";s:6:"atilde";s:3:"-20";s:5:"comma";s:4:"-100";s:6:"period";s:4:"-100";}s:1:"J";a:21:{s:1:"A";s:3:"-20";s:6:"Aacute";s:3:"-20";s:6:"Abreve";s:3:"-20";s:11:"Acircumflex";s:3:"-20";s:9:"Adieresis";s:3:"-20";s:6:"Agrave";s:3:"-20";s:7:"Amacron";s:3:"-20";s:7:"Aogonek";s:3:"-20";s:5:"Aring";s:3:"-20";s:6:"Atilde";s:3:"-20";s:5:"comma";s:3:"-20";s:6:"period";s:3:"-20";s:1:"u";s:3:"-20";s:6:"uacute";s:3:"-20";s:11:"ucircumflex";s:3:"-20";s:9:"udieresis";s:3:"-20";s:6:"ugrave";s:3:"-20";s:13:"uhungarumlaut";s:3:"-20";s:7:"umacron";s:3:"-20";s:7:"uogonek";s:3:"-20";s:5:"uring";s:3:"-20";}s:1:"K";a:39:{s:1:"O";s:3:"-30";s:6:"Oacute";s:3:"-30";s:11:"Ocircumflex";s:3:"-30";s:9:"Odieresis";s:3:"-30";s:6:"Ograve";s:3:"-30";s:13:"Ohungarumlaut";s:3:"-30";s:7:"Omacron";s:3:"-30";s:6:"Oslash";s:3:"-30";s:6:"Otilde";s:3:"-30";s:1:"e";s:3:"-15";s:6:"eacute";s:3:"-15";s:6:"ecaron";s:3:"-15";s:11:"ecircumflex";s:3:"-15";s:9:"edieresis";s:3:"-15";s:10:"edotaccent";s:3:"-15";s:6:"egrave";s:3:"-15";s:7:"emacron";s:3:"-15";s:7:"eogonek";s:3:"-15";s:1:"o";s:3:"-35";s:6:"oacute";s:3:"-35";s:11:"ocircumflex";s:3:"-35";s:9:"odieresis";s:3:"-35";s:6:"ograve";s:3:"-35";s:13:"ohungarumlaut";s:3:"-35";s:7:"omacron";s:3:"-35";s:6:"oslash";s:3:"-35";s:6:"otilde";s:3:"-35";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"y";s:3:"-40";s:6:"yacute";s:3:"-40";s:9:"ydieresis";s:3:"-40";}s:12:"Kcommaaccent";a:39:{s:1:"O";s:3:"-30";s:6:"Oacute";s:3:"-30";s:11:"Ocircumflex";s:3:"-30";s:9:"Odieresis";s:3:"-30";s:6:"Ograve";s:3:"-30";s:13:"Ohungarumlaut";s:3:"-30";s:7:"Omacron";s:3:"-30";s:6:"Oslash";s:3:"-30";s:6:"Otilde";s:3:"-30";s:1:"e";s:3:"-15";s:6:"eacute";s:3:"-15";s:6:"ecaron";s:3:"-15";s:11:"ecircumflex";s:3:"-15";s:9:"edieresis";s:3:"-15";s:10:"edotaccent";s:3:"-15";s:6:"egrave";s:3:"-15";s:7:"emacron";s:3:"-15";s:7:"eogonek";s:3:"-15";s:1:"o";s:3:"-35";s:6:"oacute";s:3:"-35";s:11:"ocircumflex";s:3:"-35";s:9:"odieresis";s:3:"-35";s:6:"ograve";s:3:"-35";s:13:"ohungarumlaut";s:3:"-35";s:7:"omacron";s:3:"-35";s:6:"oslash";s:3:"-35";s:6:"otilde";s:3:"-35";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"y";s:3:"-40";s:6:"yacute";s:3:"-40";s:9:"ydieresis";s:3:"-40";}s:1:"L";a:13:{s:1:"T";s:3:"-90";s:6:"Tcaron";s:3:"-90";s:12:"Tcommaaccent";s:3:"-90";s:1:"V";s:4:"-110";s:1:"W";s:3:"-80";s:1:"Y";s:4:"-120";s:6:"Yacute";s:4:"-120";s:9:"Ydieresis";s:4:"-120";s:13:"quotedblright";s:4:"-140";s:10:"quoteright";s:4:"-140";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:6:"Lacute";a:13:{s:1:"T";s:3:"-90";s:6:"Tcaron";s:3:"-90";s:12:"Tcommaaccent";s:3:"-90";s:1:"V";s:4:"-110";s:1:"W";s:3:"-80";s:1:"Y";s:4:"-120";s:6:"Yacute";s:4:"-120";s:9:"Ydieresis";s:4:"-120";s:13:"quotedblright";s:4:"-140";s:10:"quoteright";s:4:"-140";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:12:"Lcommaaccent";a:13:{s:1:"T";s:3:"-90";s:6:"Tcaron";s:3:"-90";s:12:"Tcommaaccent";s:3:"-90";s:1:"V";s:4:"-110";s:1:"W";s:3:"-80";s:1:"Y";s:4:"-120";s:6:"Yacute";s:4:"-120";s:9:"Ydieresis";s:4:"-120";s:13:"quotedblright";s:4:"-140";s:10:"quoteright";s:4:"-140";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:6:"Lslash";a:13:{s:1:"T";s:3:"-90";s:6:"Tcaron";s:3:"-90";s:12:"Tcommaaccent";s:3:"-90";s:1:"V";s:4:"-110";s:1:"W";s:3:"-80";s:1:"Y";s:4:"-120";s:6:"Yacute";s:4:"-120";s:9:"Ydieresis";s:4:"-120";s:13:"quotedblright";s:4:"-140";s:10:"quoteright";s:4:"-140";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:1:"O";a:21:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-50";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:6:"Oacute";a:21:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-50";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:11:"Ocircumflex";a:21:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-50";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:9:"Odieresis";a:21:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-50";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:6:"Ograve";a:21:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-50";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:13:"Ohungarumlaut";a:21:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-50";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:7:"Omacron";a:21:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-50";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:6:"Oslash";a:21:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-50";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:6:"Otilde";a:21:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-50";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:1:"P";a:40:{s:1:"A";s:4:"-100";s:6:"Aacute";s:4:"-100";s:6:"Abreve";s:4:"-100";s:11:"Acircumflex";s:4:"-100";s:9:"Adieresis";s:4:"-100";s:6:"Agrave";s:4:"-100";s:7:"Amacron";s:4:"-100";s:7:"Aogonek";s:4:"-100";s:5:"Aring";s:4:"-100";s:6:"Atilde";s:4:"-100";s:1:"a";s:3:"-30";s:6:"aacute";s:3:"-30";s:6:"abreve";s:3:"-30";s:11:"acircumflex";s:3:"-30";s:9:"adieresis";s:3:"-30";s:6:"agrave";s:3:"-30";s:7:"amacron";s:3:"-30";s:7:"aogonek";s:3:"-30";s:5:"aring";s:3:"-30";s:6:"atilde";s:3:"-30";s:5:"comma";s:4:"-120";s:1:"e";s:3:"-30";s:6:"eacute";s:3:"-30";s:6:"ecaron";s:3:"-30";s:11:"ecircumflex";s:3:"-30";s:9:"edieresis";s:3:"-30";s:10:"edotaccent";s:3:"-30";s:6:"egrave";s:3:"-30";s:7:"emacron";s:3:"-30";s:7:"eogonek";s:3:"-30";s:1:"o";s:3:"-40";s:6:"oacute";s:3:"-40";s:11:"ocircumflex";s:3:"-40";s:9:"odieresis";s:3:"-40";s:6:"ograve";s:3:"-40";s:13:"ohungarumlaut";s:3:"-40";s:7:"omacron";s:3:"-40";s:6:"oslash";s:3:"-40";s:6:"otilde";s:3:"-40";s:6:"period";s:4:"-120";}s:1:"Q";a:11:{s:1:"U";s:3:"-10";s:6:"Uacute";s:3:"-10";s:11:"Ucircumflex";s:3:"-10";s:9:"Udieresis";s:3:"-10";s:6:"Ugrave";s:3:"-10";s:13:"Uhungarumlaut";s:3:"-10";s:7:"Umacron";s:3:"-10";s:7:"Uogonek";s:3:"-10";s:5:"Uring";s:3:"-10";s:5:"comma";s:2:"20";s:6:"period";s:2:"20";}s:1:"R";a:26:{s:1:"O";s:3:"-20";s:6:"Oacute";s:3:"-20";s:11:"Ocircumflex";s:3:"-20";s:9:"Odieresis";s:3:"-20";s:6:"Ograve";s:3:"-20";s:13:"Ohungarumlaut";s:3:"-20";s:7:"Omacron";s:3:"-20";s:6:"Oslash";s:3:"-20";s:6:"Otilde";s:3:"-20";s:1:"T";s:3:"-20";s:6:"Tcaron";s:3:"-20";s:12:"Tcommaaccent";s:3:"-20";s:1:"U";s:3:"-20";s:6:"Uacute";s:3:"-20";s:11:"Ucircumflex";s:3:"-20";s:9:"Udieresis";s:3:"-20";s:6:"Ugrave";s:3:"-20";s:13:"Uhungarumlaut";s:3:"-20";s:7:"Umacron";s:3:"-20";s:7:"Uogonek";s:3:"-20";s:5:"Uring";s:3:"-20";s:1:"V";s:3:"-50";s:1:"W";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:6:"Racute";a:26:{s:1:"O";s:3:"-20";s:6:"Oacute";s:3:"-20";s:11:"Ocircumflex";s:3:"-20";s:9:"Odieresis";s:3:"-20";s:6:"Ograve";s:3:"-20";s:13:"Ohungarumlaut";s:3:"-20";s:7:"Omacron";s:3:"-20";s:6:"Oslash";s:3:"-20";s:6:"Otilde";s:3:"-20";s:1:"T";s:3:"-20";s:6:"Tcaron";s:3:"-20";s:12:"Tcommaaccent";s:3:"-20";s:1:"U";s:3:"-20";s:6:"Uacute";s:3:"-20";s:11:"Ucircumflex";s:3:"-20";s:9:"Udieresis";s:3:"-20";s:6:"Ugrave";s:3:"-20";s:13:"Uhungarumlaut";s:3:"-20";s:7:"Umacron";s:3:"-20";s:7:"Uogonek";s:3:"-20";s:5:"Uring";s:3:"-20";s:1:"V";s:3:"-50";s:1:"W";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:6:"Rcaron";a:26:{s:1:"O";s:3:"-20";s:6:"Oacute";s:3:"-20";s:11:"Ocircumflex";s:3:"-20";s:9:"Odieresis";s:3:"-20";s:6:"Ograve";s:3:"-20";s:13:"Ohungarumlaut";s:3:"-20";s:7:"Omacron";s:3:"-20";s:6:"Oslash";s:3:"-20";s:6:"Otilde";s:3:"-20";s:1:"T";s:3:"-20";s:6:"Tcaron";s:3:"-20";s:12:"Tcommaaccent";s:3:"-20";s:1:"U";s:3:"-20";s:6:"Uacute";s:3:"-20";s:11:"Ucircumflex";s:3:"-20";s:9:"Udieresis";s:3:"-20";s:6:"Ugrave";s:3:"-20";s:13:"Uhungarumlaut";s:3:"-20";s:7:"Umacron";s:3:"-20";s:7:"Uogonek";s:3:"-20";s:5:"Uring";s:3:"-20";s:1:"V";s:3:"-50";s:1:"W";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:12:"Rcommaaccent";a:26:{s:1:"O";s:3:"-20";s:6:"Oacute";s:3:"-20";s:11:"Ocircumflex";s:3:"-20";s:9:"Odieresis";s:3:"-20";s:6:"Ograve";s:3:"-20";s:13:"Ohungarumlaut";s:3:"-20";s:7:"Omacron";s:3:"-20";s:6:"Oslash";s:3:"-20";s:6:"Otilde";s:3:"-20";s:1:"T";s:3:"-20";s:6:"Tcaron";s:3:"-20";s:12:"Tcommaaccent";s:3:"-20";s:1:"U";s:3:"-20";s:6:"Uacute";s:3:"-20";s:11:"Ucircumflex";s:3:"-20";s:9:"Udieresis";s:3:"-20";s:6:"Ugrave";s:3:"-20";s:13:"Uhungarumlaut";s:3:"-20";s:7:"Umacron";s:3:"-20";s:7:"Uogonek";s:3:"-20";s:5:"Uring";s:3:"-20";s:1:"V";s:3:"-50";s:1:"W";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:1:"T";a:68:{s:1:"A";s:3:"-90";s:6:"Aacute";s:3:"-90";s:6:"Abreve";s:3:"-90";s:11:"Acircumflex";s:3:"-90";s:9:"Adieresis";s:3:"-90";s:6:"Agrave";s:3:"-90";s:7:"Amacron";s:3:"-90";s:7:"Aogonek";s:3:"-90";s:5:"Aring";s:3:"-90";s:6:"Atilde";s:3:"-90";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"a";s:3:"-80";s:6:"aacute";s:3:"-80";s:6:"abreve";s:3:"-80";s:11:"acircumflex";s:3:"-80";s:9:"adieresis";s:3:"-80";s:6:"agrave";s:3:"-80";s:7:"amacron";s:3:"-80";s:7:"aogonek";s:3:"-80";s:5:"aring";s:3:"-80";s:6:"atilde";s:3:"-80";s:5:"colon";s:3:"-40";s:5:"comma";s:3:"-80";s:1:"e";s:3:"-60";s:6:"eacute";s:3:"-60";s:6:"ecaron";s:3:"-60";s:11:"ecircumflex";s:3:"-60";s:9:"edieresis";s:3:"-60";s:10:"edotaccent";s:3:"-60";s:6:"egrave";s:3:"-60";s:7:"emacron";s:3:"-60";s:7:"eogonek";s:3:"-60";s:6:"hyphen";s:4:"-120";s:1:"o";s:3:"-80";s:6:"oacute";s:3:"-80";s:11:"ocircumflex";s:3:"-80";s:9:"odieresis";s:3:"-80";s:6:"ograve";s:3:"-80";s:13:"ohungarumlaut";s:3:"-80";s:7:"omacron";s:3:"-80";s:6:"oslash";s:3:"-80";s:6:"otilde";s:3:"-80";s:6:"period";s:3:"-80";s:1:"r";s:3:"-80";s:6:"racute";s:3:"-80";s:12:"rcommaaccent";s:3:"-80";s:9:"semicolon";s:3:"-40";s:1:"u";s:3:"-90";s:6:"uacute";s:3:"-90";s:11:"ucircumflex";s:3:"-90";s:9:"udieresis";s:3:"-90";s:6:"ugrave";s:3:"-90";s:13:"uhungarumlaut";s:3:"-90";s:7:"umacron";s:3:"-90";s:7:"uogonek";s:3:"-90";s:5:"uring";s:3:"-90";s:1:"w";s:3:"-60";s:1:"y";s:3:"-60";s:6:"yacute";s:3:"-60";s:9:"ydieresis";s:3:"-60";}s:6:"Tcaron";a:68:{s:1:"A";s:3:"-90";s:6:"Aacute";s:3:"-90";s:6:"Abreve";s:3:"-90";s:11:"Acircumflex";s:3:"-90";s:9:"Adieresis";s:3:"-90";s:6:"Agrave";s:3:"-90";s:7:"Amacron";s:3:"-90";s:7:"Aogonek";s:3:"-90";s:5:"Aring";s:3:"-90";s:6:"Atilde";s:3:"-90";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"a";s:3:"-80";s:6:"aacute";s:3:"-80";s:6:"abreve";s:3:"-80";s:11:"acircumflex";s:3:"-80";s:9:"adieresis";s:3:"-80";s:6:"agrave";s:3:"-80";s:7:"amacron";s:3:"-80";s:7:"aogonek";s:3:"-80";s:5:"aring";s:3:"-80";s:6:"atilde";s:3:"-80";s:5:"colon";s:3:"-40";s:5:"comma";s:3:"-80";s:1:"e";s:3:"-60";s:6:"eacute";s:3:"-60";s:6:"ecaron";s:3:"-60";s:11:"ecircumflex";s:3:"-60";s:9:"edieresis";s:3:"-60";s:10:"edotaccent";s:3:"-60";s:6:"egrave";s:3:"-60";s:7:"emacron";s:3:"-60";s:7:"eogonek";s:3:"-60";s:6:"hyphen";s:4:"-120";s:1:"o";s:3:"-80";s:6:"oacute";s:3:"-80";s:11:"ocircumflex";s:3:"-80";s:9:"odieresis";s:3:"-80";s:6:"ograve";s:3:"-80";s:13:"ohungarumlaut";s:3:"-80";s:7:"omacron";s:3:"-80";s:6:"oslash";s:3:"-80";s:6:"otilde";s:3:"-80";s:6:"period";s:3:"-80";s:1:"r";s:3:"-80";s:6:"racute";s:3:"-80";s:12:"rcommaaccent";s:3:"-80";s:9:"semicolon";s:3:"-40";s:1:"u";s:3:"-90";s:6:"uacute";s:3:"-90";s:11:"ucircumflex";s:3:"-90";s:9:"udieresis";s:3:"-90";s:6:"ugrave";s:3:"-90";s:13:"uhungarumlaut";s:3:"-90";s:7:"umacron";s:3:"-90";s:7:"uogonek";s:3:"-90";s:5:"uring";s:3:"-90";s:1:"w";s:3:"-60";s:1:"y";s:3:"-60";s:6:"yacute";s:3:"-60";s:9:"ydieresis";s:3:"-60";}s:12:"Tcommaaccent";a:68:{s:1:"A";s:3:"-90";s:6:"Aacute";s:3:"-90";s:6:"Abreve";s:3:"-90";s:11:"Acircumflex";s:3:"-90";s:9:"Adieresis";s:3:"-90";s:6:"Agrave";s:3:"-90";s:7:"Amacron";s:3:"-90";s:7:"Aogonek";s:3:"-90";s:5:"Aring";s:3:"-90";s:6:"Atilde";s:3:"-90";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"a";s:3:"-80";s:6:"aacute";s:3:"-80";s:6:"abreve";s:3:"-80";s:11:"acircumflex";s:3:"-80";s:9:"adieresis";s:3:"-80";s:6:"agrave";s:3:"-80";s:7:"amacron";s:3:"-80";s:7:"aogonek";s:3:"-80";s:5:"aring";s:3:"-80";s:6:"atilde";s:3:"-80";s:5:"colon";s:3:"-40";s:5:"comma";s:3:"-80";s:1:"e";s:3:"-60";s:6:"eacute";s:3:"-60";s:6:"ecaron";s:3:"-60";s:11:"ecircumflex";s:3:"-60";s:9:"edieresis";s:3:"-60";s:10:"edotaccent";s:3:"-60";s:6:"egrave";s:3:"-60";s:7:"emacron";s:3:"-60";s:7:"eogonek";s:3:"-60";s:6:"hyphen";s:4:"-120";s:1:"o";s:3:"-80";s:6:"oacute";s:3:"-80";s:11:"ocircumflex";s:3:"-80";s:9:"odieresis";s:3:"-80";s:6:"ograve";s:3:"-80";s:13:"ohungarumlaut";s:3:"-80";s:7:"omacron";s:3:"-80";s:6:"oslash";s:3:"-80";s:6:"otilde";s:3:"-80";s:6:"period";s:3:"-80";s:1:"r";s:3:"-80";s:6:"racute";s:3:"-80";s:12:"rcommaaccent";s:3:"-80";s:9:"semicolon";s:3:"-40";s:1:"u";s:3:"-90";s:6:"uacute";s:3:"-90";s:11:"ucircumflex";s:3:"-90";s:9:"udieresis";s:3:"-90";s:6:"ugrave";s:3:"-90";s:13:"uhungarumlaut";s:3:"-90";s:7:"umacron";s:3:"-90";s:7:"uogonek";s:3:"-90";s:5:"uring";s:3:"-90";s:1:"w";s:3:"-60";s:1:"y";s:3:"-60";s:6:"yacute";s:3:"-60";s:9:"ydieresis";s:3:"-60";}s:1:"U";a:12:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:5:"comma";s:3:"-30";s:6:"period";s:3:"-30";}s:6:"Uacute";a:12:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:5:"comma";s:3:"-30";s:6:"period";s:3:"-30";}s:11:"Ucircumflex";a:12:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:5:"comma";s:3:"-30";s:6:"period";s:3:"-30";}s:9:"Udieresis";a:12:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:5:"comma";s:3:"-30";s:6:"period";s:3:"-30";}s:6:"Ugrave";a:12:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:5:"comma";s:3:"-30";s:6:"period";s:3:"-30";}s:13:"Uhungarumlaut";a:12:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:5:"comma";s:3:"-30";s:6:"period";s:3:"-30";}s:7:"Umacron";a:12:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:5:"comma";s:3:"-30";s:6:"period";s:3:"-30";}s:7:"Uogonek";a:12:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:5:"comma";s:3:"-30";s:6:"period";s:3:"-30";}s:5:"Uring";a:12:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:5:"comma";s:3:"-30";s:6:"period";s:3:"-30";}s:1:"V";a:64:{s:1:"A";s:3:"-80";s:6:"Aacute";s:3:"-80";s:6:"Abreve";s:3:"-80";s:11:"Acircumflex";s:3:"-80";s:9:"Adieresis";s:3:"-80";s:6:"Agrave";s:3:"-80";s:7:"Amacron";s:3:"-80";s:7:"Aogonek";s:3:"-80";s:5:"Aring";s:3:"-80";s:6:"Atilde";s:3:"-80";s:1:"G";s:3:"-50";s:6:"Gbreve";s:3:"-50";s:12:"Gcommaaccent";s:3:"-50";s:1:"O";s:3:"-50";s:6:"Oacute";s:3:"-50";s:11:"Ocircumflex";s:3:"-50";s:9:"Odieresis";s:3:"-50";s:6:"Ograve";s:3:"-50";s:13:"Ohungarumlaut";s:3:"-50";s:7:"Omacron";s:3:"-50";s:6:"Oslash";s:3:"-50";s:6:"Otilde";s:3:"-50";s:1:"a";s:3:"-60";s:6:"aacute";s:3:"-60";s:6:"abreve";s:3:"-60";s:11:"acircumflex";s:3:"-60";s:9:"adieresis";s:3:"-60";s:6:"agrave";s:3:"-60";s:7:"amacron";s:3:"-60";s:7:"aogonek";s:3:"-60";s:5:"aring";s:3:"-60";s:6:"atilde";s:3:"-60";s:5:"colon";s:3:"-40";s:5:"comma";s:4:"-120";s:1:"e";s:3:"-50";s:6:"eacute";s:3:"-50";s:6:"ecaron";s:3:"-50";s:11:"ecircumflex";s:3:"-50";s:9:"edieresis";s:3:"-50";s:10:"edotaccent";s:3:"-50";s:6:"egrave";s:3:"-50";s:7:"emacron";s:3:"-50";s:7:"eogonek";s:3:"-50";s:6:"hyphen";s:3:"-80";s:1:"o";s:3:"-90";s:6:"oacute";s:3:"-90";s:11:"ocircumflex";s:3:"-90";s:9:"odieresis";s:3:"-90";s:6:"ograve";s:3:"-90";s:13:"ohungarumlaut";s:3:"-90";s:7:"omacron";s:3:"-90";s:6:"oslash";s:3:"-90";s:6:"otilde";s:3:"-90";s:6:"period";s:4:"-120";s:9:"semicolon";s:3:"-40";s:1:"u";s:3:"-60";s:6:"uacute";s:3:"-60";s:11:"ucircumflex";s:3:"-60";s:9:"udieresis";s:3:"-60";s:6:"ugrave";s:3:"-60";s:13:"uhungarumlaut";s:3:"-60";s:7:"umacron";s:3:"-60";s:7:"uogonek";s:3:"-60";s:5:"uring";s:3:"-60";}s:1:"W";a:64:{s:1:"A";s:3:"-60";s:6:"Aacute";s:3:"-60";s:6:"Abreve";s:3:"-60";s:11:"Acircumflex";s:3:"-60";s:9:"Adieresis";s:3:"-60";s:6:"Agrave";s:3:"-60";s:7:"Amacron";s:3:"-60";s:7:"Aogonek";s:3:"-60";s:5:"Aring";s:3:"-60";s:6:"Atilde";s:3:"-60";s:1:"O";s:3:"-20";s:6:"Oacute";s:3:"-20";s:11:"Ocircumflex";s:3:"-20";s:9:"Odieresis";s:3:"-20";s:6:"Ograve";s:3:"-20";s:13:"Ohungarumlaut";s:3:"-20";s:7:"Omacron";s:3:"-20";s:6:"Oslash";s:3:"-20";s:6:"Otilde";s:3:"-20";s:1:"a";s:3:"-40";s:6:"aacute";s:3:"-40";s:6:"abreve";s:3:"-40";s:11:"acircumflex";s:3:"-40";s:9:"adieresis";s:3:"-40";s:6:"agrave";s:3:"-40";s:7:"amacron";s:3:"-40";s:7:"aogonek";s:3:"-40";s:5:"aring";s:3:"-40";s:6:"atilde";s:3:"-40";s:5:"colon";s:3:"-10";s:5:"comma";s:3:"-80";s:1:"e";s:3:"-35";s:6:"eacute";s:3:"-35";s:6:"ecaron";s:3:"-35";s:11:"ecircumflex";s:3:"-35";s:9:"edieresis";s:3:"-35";s:10:"edotaccent";s:3:"-35";s:6:"egrave";s:3:"-35";s:7:"emacron";s:3:"-35";s:7:"eogonek";s:3:"-35";s:6:"hyphen";s:3:"-40";s:1:"o";s:3:"-60";s:6:"oacute";s:3:"-60";s:11:"ocircumflex";s:3:"-60";s:9:"odieresis";s:3:"-60";s:6:"ograve";s:3:"-60";s:13:"ohungarumlaut";s:3:"-60";s:7:"omacron";s:3:"-60";s:6:"oslash";s:3:"-60";s:6:"otilde";s:3:"-60";s:6:"period";s:3:"-80";s:9:"semicolon";s:3:"-10";s:1:"u";s:3:"-45";s:6:"uacute";s:3:"-45";s:11:"ucircumflex";s:3:"-45";s:9:"udieresis";s:3:"-45";s:6:"ugrave";s:3:"-45";s:13:"uhungarumlaut";s:3:"-45";s:7:"umacron";s:3:"-45";s:7:"uogonek";s:3:"-45";s:5:"uring";s:3:"-45";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:1:"Y";a:60:{s:1:"A";s:4:"-110";s:6:"Aacute";s:4:"-110";s:6:"Abreve";s:4:"-110";s:11:"Acircumflex";s:4:"-110";s:9:"Adieresis";s:4:"-110";s:6:"Agrave";s:4:"-110";s:7:"Amacron";s:4:"-110";s:7:"Aogonek";s:4:"-110";s:5:"Aring";s:4:"-110";s:6:"Atilde";s:4:"-110";s:1:"O";s:3:"-70";s:6:"Oacute";s:3:"-70";s:11:"Ocircumflex";s:3:"-70";s:9:"Odieresis";s:3:"-70";s:6:"Ograve";s:3:"-70";s:13:"Ohungarumlaut";s:3:"-70";s:7:"Omacron";s:3:"-70";s:6:"Oslash";s:3:"-70";s:6:"Otilde";s:3:"-70";s:1:"a";s:3:"-90";s:6:"aacute";s:3:"-90";s:6:"abreve";s:3:"-90";s:11:"acircumflex";s:3:"-90";s:9:"adieresis";s:3:"-90";s:6:"agrave";s:3:"-90";s:7:"amacron";s:3:"-90";s:7:"aogonek";s:3:"-90";s:5:"aring";s:3:"-90";s:6:"atilde";s:3:"-90";s:5:"colon";s:3:"-50";s:5:"comma";s:4:"-100";s:1:"e";s:3:"-80";s:6:"eacute";s:3:"-80";s:6:"ecaron";s:3:"-80";s:11:"ecircumflex";s:3:"-80";s:9:"edieresis";s:3:"-80";s:10:"edotaccent";s:3:"-80";s:6:"egrave";s:3:"-80";s:7:"emacron";s:3:"-80";s:7:"eogonek";s:3:"-80";s:1:"o";s:4:"-100";s:6:"oacute";s:4:"-100";s:11:"ocircumflex";s:4:"-100";s:9:"odieresis";s:4:"-100";s:6:"ograve";s:4:"-100";s:13:"ohungarumlaut";s:4:"-100";s:7:"omacron";s:4:"-100";s:6:"oslash";s:4:"-100";s:6:"otilde";s:4:"-100";s:6:"period";s:4:"-100";s:9:"semicolon";s:3:"-50";s:1:"u";s:4:"-100";s:6:"uacute";s:4:"-100";s:11:"ucircumflex";s:4:"-100";s:9:"udieresis";s:4:"-100";s:6:"ugrave";s:4:"-100";s:13:"uhungarumlaut";s:4:"-100";s:7:"umacron";s:4:"-100";s:7:"uogonek";s:4:"-100";s:5:"uring";s:4:"-100";}s:6:"Yacute";a:60:{s:1:"A";s:4:"-110";s:6:"Aacute";s:4:"-110";s:6:"Abreve";s:4:"-110";s:11:"Acircumflex";s:4:"-110";s:9:"Adieresis";s:4:"-110";s:6:"Agrave";s:4:"-110";s:7:"Amacron";s:4:"-110";s:7:"Aogonek";s:4:"-110";s:5:"Aring";s:4:"-110";s:6:"Atilde";s:4:"-110";s:1:"O";s:3:"-70";s:6:"Oacute";s:3:"-70";s:11:"Ocircumflex";s:3:"-70";s:9:"Odieresis";s:3:"-70";s:6:"Ograve";s:3:"-70";s:13:"Ohungarumlaut";s:3:"-70";s:7:"Omacron";s:3:"-70";s:6:"Oslash";s:3:"-70";s:6:"Otilde";s:3:"-70";s:1:"a";s:3:"-90";s:6:"aacute";s:3:"-90";s:6:"abreve";s:3:"-90";s:11:"acircumflex";s:3:"-90";s:9:"adieresis";s:3:"-90";s:6:"agrave";s:3:"-90";s:7:"amacron";s:3:"-90";s:7:"aogonek";s:3:"-90";s:5:"aring";s:3:"-90";s:6:"atilde";s:3:"-90";s:5:"colon";s:3:"-50";s:5:"comma";s:4:"-100";s:1:"e";s:3:"-80";s:6:"eacute";s:3:"-80";s:6:"ecaron";s:3:"-80";s:11:"ecircumflex";s:3:"-80";s:9:"edieresis";s:3:"-80";s:10:"edotaccent";s:3:"-80";s:6:"egrave";s:3:"-80";s:7:"emacron";s:3:"-80";s:7:"eogonek";s:3:"-80";s:1:"o";s:4:"-100";s:6:"oacute";s:4:"-100";s:11:"ocircumflex";s:4:"-100";s:9:"odieresis";s:4:"-100";s:6:"ograve";s:4:"-100";s:13:"ohungarumlaut";s:4:"-100";s:7:"omacron";s:4:"-100";s:6:"oslash";s:4:"-100";s:6:"otilde";s:4:"-100";s:6:"period";s:4:"-100";s:9:"semicolon";s:3:"-50";s:1:"u";s:4:"-100";s:6:"uacute";s:4:"-100";s:11:"ucircumflex";s:4:"-100";s:9:"udieresis";s:4:"-100";s:6:"ugrave";s:4:"-100";s:13:"uhungarumlaut";s:4:"-100";s:7:"umacron";s:4:"-100";s:7:"uogonek";s:4:"-100";s:5:"uring";s:4:"-100";}s:9:"Ydieresis";a:60:{s:1:"A";s:4:"-110";s:6:"Aacute";s:4:"-110";s:6:"Abreve";s:4:"-110";s:11:"Acircumflex";s:4:"-110";s:9:"Adieresis";s:4:"-110";s:6:"Agrave";s:4:"-110";s:7:"Amacron";s:4:"-110";s:7:"Aogonek";s:4:"-110";s:5:"Aring";s:4:"-110";s:6:"Atilde";s:4:"-110";s:1:"O";s:3:"-70";s:6:"Oacute";s:3:"-70";s:11:"Ocircumflex";s:3:"-70";s:9:"Odieresis";s:3:"-70";s:6:"Ograve";s:3:"-70";s:13:"Ohungarumlaut";s:3:"-70";s:7:"Omacron";s:3:"-70";s:6:"Oslash";s:3:"-70";s:6:"Otilde";s:3:"-70";s:1:"a";s:3:"-90";s:6:"aacute";s:3:"-90";s:6:"abreve";s:3:"-90";s:11:"acircumflex";s:3:"-90";s:9:"adieresis";s:3:"-90";s:6:"agrave";s:3:"-90";s:7:"amacron";s:3:"-90";s:7:"aogonek";s:3:"-90";s:5:"aring";s:3:"-90";s:6:"atilde";s:3:"-90";s:5:"colon";s:3:"-50";s:5:"comma";s:4:"-100";s:1:"e";s:3:"-80";s:6:"eacute";s:3:"-80";s:6:"ecaron";s:3:"-80";s:11:"ecircumflex";s:3:"-80";s:9:"edieresis";s:3:"-80";s:10:"edotaccent";s:3:"-80";s:6:"egrave";s:3:"-80";s:7:"emacron";s:3:"-80";s:7:"eogonek";s:3:"-80";s:1:"o";s:4:"-100";s:6:"oacute";s:4:"-100";s:11:"ocircumflex";s:4:"-100";s:9:"odieresis";s:4:"-100";s:6:"ograve";s:4:"-100";s:13:"ohungarumlaut";s:4:"-100";s:7:"omacron";s:4:"-100";s:6:"oslash";s:4:"-100";s:6:"otilde";s:4:"-100";s:6:"period";s:4:"-100";s:9:"semicolon";s:3:"-50";s:1:"u";s:4:"-100";s:6:"uacute";s:4:"-100";s:11:"ucircumflex";s:4:"-100";s:9:"udieresis";s:4:"-100";s:6:"ugrave";s:4:"-100";s:13:"uhungarumlaut";s:4:"-100";s:7:"umacron";s:4:"-100";s:7:"uogonek";s:4:"-100";s:5:"uring";s:4:"-100";}s:1:"a";a:8:{s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:6:"aacute";a:8:{s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:6:"abreve";a:8:{s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:11:"acircumflex";a:8:{s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:9:"adieresis";a:8:{s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:6:"agrave";a:8:{s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:7:"amacron";a:8:{s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:7:"aogonek";a:8:{s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:5:"aring";a:8:{s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:6:"atilde";a:8:{s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:1:"b";a:17:{s:1:"l";s:3:"-10";s:6:"lacute";s:3:"-10";s:12:"lcommaaccent";s:3:"-10";s:6:"lslash";s:3:"-10";s:1:"u";s:3:"-20";s:6:"uacute";s:3:"-20";s:11:"ucircumflex";s:3:"-20";s:9:"udieresis";s:3:"-20";s:6:"ugrave";s:3:"-20";s:13:"uhungarumlaut";s:3:"-20";s:7:"umacron";s:3:"-20";s:7:"uogonek";s:3:"-20";s:5:"uring";s:3:"-20";s:1:"v";s:3:"-20";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:1:"c";a:10:{s:1:"h";s:3:"-10";s:1:"k";s:3:"-20";s:12:"kcommaaccent";s:3:"-20";s:1:"l";s:3:"-20";s:6:"lacute";s:3:"-20";s:12:"lcommaaccent";s:3:"-20";s:6:"lslash";s:3:"-20";s:1:"y";s:3:"-10";s:6:"yacute";s:3:"-10";s:9:"ydieresis";s:3:"-10";}s:6:"cacute";a:10:{s:1:"h";s:3:"-10";s:1:"k";s:3:"-20";s:12:"kcommaaccent";s:3:"-20";s:1:"l";s:3:"-20";s:6:"lacute";s:3:"-20";s:12:"lcommaaccent";s:3:"-20";s:6:"lslash";s:3:"-20";s:1:"y";s:3:"-10";s:6:"yacute";s:3:"-10";s:9:"ydieresis";s:3:"-10";}s:6:"ccaron";a:10:{s:1:"h";s:3:"-10";s:1:"k";s:3:"-20";s:12:"kcommaaccent";s:3:"-20";s:1:"l";s:3:"-20";s:6:"lacute";s:3:"-20";s:12:"lcommaaccent";s:3:"-20";s:6:"lslash";s:3:"-20";s:1:"y";s:3:"-10";s:6:"yacute";s:3:"-10";s:9:"ydieresis";s:3:"-10";}s:8:"ccedilla";a:10:{s:1:"h";s:3:"-10";s:1:"k";s:3:"-20";s:12:"kcommaaccent";s:3:"-20";s:1:"l";s:3:"-20";s:6:"lacute";s:3:"-20";s:12:"lcommaaccent";s:3:"-20";s:6:"lslash";s:3:"-20";s:1:"y";s:3:"-10";s:6:"yacute";s:3:"-10";s:9:"ydieresis";s:3:"-10";}s:5:"colon";a:1:{s:5:"space";s:3:"-40";}s:5:"comma";a:3:{s:13:"quotedblright";s:4:"-120";s:10:"quoteright";s:4:"-120";s:5:"space";s:3:"-40";}s:1:"d";a:7:{s:1:"d";s:3:"-10";s:6:"dcroat";s:3:"-10";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:6:"dcroat";a:7:{s:1:"d";s:3:"-10";s:6:"dcroat";s:3:"-10";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:1:"e";a:8:{s:5:"comma";s:2:"10";s:6:"period";s:2:"20";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-15";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:6:"eacute";a:8:{s:5:"comma";s:2:"10";s:6:"period";s:2:"20";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-15";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:6:"ecaron";a:8:{s:5:"comma";s:2:"10";s:6:"period";s:2:"20";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-15";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:11:"ecircumflex";a:8:{s:5:"comma";s:2:"10";s:6:"period";s:2:"20";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-15";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:9:"edieresis";a:8:{s:5:"comma";s:2:"10";s:6:"period";s:2:"20";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-15";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:10:"edotaccent";a:8:{s:5:"comma";s:2:"10";s:6:"period";s:2:"20";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-15";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:6:"egrave";a:8:{s:5:"comma";s:2:"10";s:6:"period";s:2:"20";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-15";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:7:"emacron";a:8:{s:5:"comma";s:2:"10";s:6:"period";s:2:"20";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-15";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:7:"eogonek";a:8:{s:5:"comma";s:2:"10";s:6:"period";s:2:"20";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-15";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:1:"f";a:22:{s:5:"comma";s:3:"-10";s:1:"e";s:3:"-10";s:6:"eacute";s:3:"-10";s:6:"ecaron";s:3:"-10";s:11:"ecircumflex";s:3:"-10";s:9:"edieresis";s:3:"-10";s:10:"edotaccent";s:3:"-10";s:6:"egrave";s:3:"-10";s:7:"emacron";s:3:"-10";s:7:"eogonek";s:3:"-10";s:1:"o";s:3:"-20";s:6:"oacute";s:3:"-20";s:11:"ocircumflex";s:3:"-20";s:9:"odieresis";s:3:"-20";s:6:"ograve";s:3:"-20";s:13:"ohungarumlaut";s:3:"-20";s:7:"omacron";s:3:"-20";s:6:"oslash";s:3:"-20";s:6:"otilde";s:3:"-20";s:6:"period";s:3:"-10";s:13:"quotedblright";s:2:"30";s:10:"quoteright";s:2:"30";}s:1:"g";a:12:{s:1:"e";s:2:"10";s:6:"eacute";s:2:"10";s:6:"ecaron";s:2:"10";s:11:"ecircumflex";s:2:"10";s:9:"edieresis";s:2:"10";s:10:"edotaccent";s:2:"10";s:6:"egrave";s:2:"10";s:7:"emacron";s:2:"10";s:7:"eogonek";s:2:"10";s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";}s:6:"gbreve";a:12:{s:1:"e";s:2:"10";s:6:"eacute";s:2:"10";s:6:"ecaron";s:2:"10";s:11:"ecircumflex";s:2:"10";s:9:"edieresis";s:2:"10";s:10:"edotaccent";s:2:"10";s:6:"egrave";s:2:"10";s:7:"emacron";s:2:"10";s:7:"eogonek";s:2:"10";s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";}s:12:"gcommaaccent";a:12:{s:1:"e";s:2:"10";s:6:"eacute";s:2:"10";s:6:"ecaron";s:2:"10";s:11:"ecircumflex";s:2:"10";s:9:"edieresis";s:2:"10";s:10:"edotaccent";s:2:"10";s:6:"egrave";s:2:"10";s:7:"emacron";s:2:"10";s:7:"eogonek";s:2:"10";s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";}s:1:"h";a:3:{s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:1:"k";a:9:{s:1:"o";s:3:"-15";s:6:"oacute";s:3:"-15";s:11:"ocircumflex";s:3:"-15";s:9:"odieresis";s:3:"-15";s:6:"ograve";s:3:"-15";s:13:"ohungarumlaut";s:3:"-15";s:7:"omacron";s:3:"-15";s:6:"oslash";s:3:"-15";s:6:"otilde";s:3:"-15";}s:12:"kcommaaccent";a:9:{s:1:"o";s:3:"-15";s:6:"oacute";s:3:"-15";s:11:"ocircumflex";s:3:"-15";s:9:"odieresis";s:3:"-15";s:6:"ograve";s:3:"-15";s:13:"ohungarumlaut";s:3:"-15";s:7:"omacron";s:3:"-15";s:6:"oslash";s:3:"-15";s:6:"otilde";s:3:"-15";}s:1:"l";a:4:{s:1:"w";s:3:"-15";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:6:"lacute";a:4:{s:1:"w";s:3:"-15";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:12:"lcommaaccent";a:4:{s:1:"w";s:3:"-15";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:6:"lslash";a:4:{s:1:"w";s:3:"-15";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:1:"m";a:12:{s:1:"u";s:3:"-20";s:6:"uacute";s:3:"-20";s:11:"ucircumflex";s:3:"-20";s:9:"udieresis";s:3:"-20";s:6:"ugrave";s:3:"-20";s:13:"uhungarumlaut";s:3:"-20";s:7:"umacron";s:3:"-20";s:7:"uogonek";s:3:"-20";s:5:"uring";s:3:"-20";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:1:"n";a:13:{s:1:"u";s:3:"-10";s:6:"uacute";s:3:"-10";s:11:"ucircumflex";s:3:"-10";s:9:"udieresis";s:3:"-10";s:6:"ugrave";s:3:"-10";s:13:"uhungarumlaut";s:3:"-10";s:7:"umacron";s:3:"-10";s:7:"uogonek";s:3:"-10";s:5:"uring";s:3:"-10";s:1:"v";s:3:"-40";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:6:"nacute";a:13:{s:1:"u";s:3:"-10";s:6:"uacute";s:3:"-10";s:11:"ucircumflex";s:3:"-10";s:9:"udieresis";s:3:"-10";s:6:"ugrave";s:3:"-10";s:13:"uhungarumlaut";s:3:"-10";s:7:"umacron";s:3:"-10";s:7:"uogonek";s:3:"-10";s:5:"uring";s:3:"-10";s:1:"v";s:3:"-40";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:6:"ncaron";a:13:{s:1:"u";s:3:"-10";s:6:"uacute";s:3:"-10";s:11:"ucircumflex";s:3:"-10";s:9:"udieresis";s:3:"-10";s:6:"ugrave";s:3:"-10";s:13:"uhungarumlaut";s:3:"-10";s:7:"umacron";s:3:"-10";s:7:"uogonek";s:3:"-10";s:5:"uring";s:3:"-10";s:1:"v";s:3:"-40";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:12:"ncommaaccent";a:13:{s:1:"u";s:3:"-10";s:6:"uacute";s:3:"-10";s:11:"ucircumflex";s:3:"-10";s:9:"udieresis";s:3:"-10";s:6:"ugrave";s:3:"-10";s:13:"uhungarumlaut";s:3:"-10";s:7:"umacron";s:3:"-10";s:7:"uogonek";s:3:"-10";s:5:"uring";s:3:"-10";s:1:"v";s:3:"-40";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:6:"ntilde";a:13:{s:1:"u";s:3:"-10";s:6:"uacute";s:3:"-10";s:11:"ucircumflex";s:3:"-10";s:9:"udieresis";s:3:"-10";s:6:"ugrave";s:3:"-10";s:13:"uhungarumlaut";s:3:"-10";s:7:"umacron";s:3:"-10";s:7:"uogonek";s:3:"-10";s:5:"uring";s:3:"-10";s:1:"v";s:3:"-40";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:1:"o";a:6:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-15";s:1:"x";s:3:"-30";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:6:"oacute";a:6:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-15";s:1:"x";s:3:"-30";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:11:"ocircumflex";a:6:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-15";s:1:"x";s:3:"-30";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:9:"odieresis";a:6:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-15";s:1:"x";s:3:"-30";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:6:"ograve";a:6:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-15";s:1:"x";s:3:"-30";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:13:"ohungarumlaut";a:6:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-15";s:1:"x";s:3:"-30";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:7:"omacron";a:6:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-15";s:1:"x";s:3:"-30";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:6:"oslash";a:6:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-15";s:1:"x";s:3:"-30";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:6:"otilde";a:6:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-15";s:1:"x";s:3:"-30";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:1:"p";a:3:{s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:6:"period";a:3:{s:13:"quotedblright";s:4:"-120";s:10:"quoteright";s:4:"-120";s:5:"space";s:3:"-40";}s:13:"quotedblright";a:1:{s:5:"space";s:3:"-80";}s:9:"quoteleft";a:1:{s:9:"quoteleft";s:3:"-46";}s:10:"quoteright";a:18:{s:1:"d";s:3:"-80";s:6:"dcroat";s:3:"-80";s:1:"l";s:3:"-20";s:6:"lacute";s:3:"-20";s:12:"lcommaaccent";s:3:"-20";s:6:"lslash";s:3:"-20";s:10:"quoteright";s:3:"-46";s:1:"r";s:3:"-40";s:6:"racute";s:3:"-40";s:6:"rcaron";s:3:"-40";s:12:"rcommaaccent";s:3:"-40";s:1:"s";s:3:"-60";s:6:"sacute";s:3:"-60";s:6:"scaron";s:3:"-60";s:8:"scedilla";s:3:"-60";s:12:"scommaaccent";s:3:"-60";s:5:"space";s:3:"-80";s:1:"v";s:3:"-20";}s:1:"r";a:33:{s:1:"c";s:3:"-20";s:6:"cacute";s:3:"-20";s:6:"ccaron";s:3:"-20";s:8:"ccedilla";s:3:"-20";s:5:"comma";s:3:"-60";s:1:"d";s:3:"-20";s:6:"dcroat";s:3:"-20";s:1:"g";s:3:"-15";s:6:"gbreve";s:3:"-15";s:12:"gcommaaccent";s:3:"-15";s:6:"hyphen";s:3:"-20";s:1:"o";s:3:"-20";s:6:"oacute";s:3:"-20";s:11:"ocircumflex";s:3:"-20";s:9:"odieresis";s:3:"-20";s:6:"ograve";s:3:"-20";s:13:"ohungarumlaut";s:3:"-20";s:7:"omacron";s:3:"-20";s:6:"oslash";s:3:"-20";s:6:"otilde";s:3:"-20";s:6:"period";s:3:"-60";s:1:"q";s:3:"-20";s:1:"s";s:3:"-15";s:6:"sacute";s:3:"-15";s:6:"scaron";s:3:"-15";s:8:"scedilla";s:3:"-15";s:12:"scommaaccent";s:3:"-15";s:1:"t";s:2:"20";s:12:"tcommaaccent";s:2:"20";s:1:"v";s:2:"10";s:1:"y";s:2:"10";s:6:"yacute";s:2:"10";s:9:"ydieresis";s:2:"10";}s:6:"racute";a:33:{s:1:"c";s:3:"-20";s:6:"cacute";s:3:"-20";s:6:"ccaron";s:3:"-20";s:8:"ccedilla";s:3:"-20";s:5:"comma";s:3:"-60";s:1:"d";s:3:"-20";s:6:"dcroat";s:3:"-20";s:1:"g";s:3:"-15";s:6:"gbreve";s:3:"-15";s:12:"gcommaaccent";s:3:"-15";s:6:"hyphen";s:3:"-20";s:1:"o";s:3:"-20";s:6:"oacute";s:3:"-20";s:11:"ocircumflex";s:3:"-20";s:9:"odieresis";s:3:"-20";s:6:"ograve";s:3:"-20";s:13:"ohungarumlaut";s:3:"-20";s:7:"omacron";s:3:"-20";s:6:"oslash";s:3:"-20";s:6:"otilde";s:3:"-20";s:6:"period";s:3:"-60";s:1:"q";s:3:"-20";s:1:"s";s:3:"-15";s:6:"sacute";s:3:"-15";s:6:"scaron";s:3:"-15";s:8:"scedilla";s:3:"-15";s:12:"scommaaccent";s:3:"-15";s:1:"t";s:2:"20";s:12:"tcommaaccent";s:2:"20";s:1:"v";s:2:"10";s:1:"y";s:2:"10";s:6:"yacute";s:2:"10";s:9:"ydieresis";s:2:"10";}s:6:"rcaron";a:33:{s:1:"c";s:3:"-20";s:6:"cacute";s:3:"-20";s:6:"ccaron";s:3:"-20";s:8:"ccedilla";s:3:"-20";s:5:"comma";s:3:"-60";s:1:"d";s:3:"-20";s:6:"dcroat";s:3:"-20";s:1:"g";s:3:"-15";s:6:"gbreve";s:3:"-15";s:12:"gcommaaccent";s:3:"-15";s:6:"hyphen";s:3:"-20";s:1:"o";s:3:"-20";s:6:"oacute";s:3:"-20";s:11:"ocircumflex";s:3:"-20";s:9:"odieresis";s:3:"-20";s:6:"ograve";s:3:"-20";s:13:"ohungarumlaut";s:3:"-20";s:7:"omacron";s:3:"-20";s:6:"oslash";s:3:"-20";s:6:"otilde";s:3:"-20";s:6:"period";s:3:"-60";s:1:"q";s:3:"-20";s:1:"s";s:3:"-15";s:6:"sacute";s:3:"-15";s:6:"scaron";s:3:"-15";s:8:"scedilla";s:3:"-15";s:12:"scommaaccent";s:3:"-15";s:1:"t";s:2:"20";s:12:"tcommaaccent";s:2:"20";s:1:"v";s:2:"10";s:1:"y";s:2:"10";s:6:"yacute";s:2:"10";s:9:"ydieresis";s:2:"10";}s:12:"rcommaaccent";a:33:{s:1:"c";s:3:"-20";s:6:"cacute";s:3:"-20";s:6:"ccaron";s:3:"-20";s:8:"ccedilla";s:3:"-20";s:5:"comma";s:3:"-60";s:1:"d";s:3:"-20";s:6:"dcroat";s:3:"-20";s:1:"g";s:3:"-15";s:6:"gbreve";s:3:"-15";s:12:"gcommaaccent";s:3:"-15";s:6:"hyphen";s:3:"-20";s:1:"o";s:3:"-20";s:6:"oacute";s:3:"-20";s:11:"ocircumflex";s:3:"-20";s:9:"odieresis";s:3:"-20";s:6:"ograve";s:3:"-20";s:13:"ohungarumlaut";s:3:"-20";s:7:"omacron";s:3:"-20";s:6:"oslash";s:3:"-20";s:6:"otilde";s:3:"-20";s:6:"period";s:3:"-60";s:1:"q";s:3:"-20";s:1:"s";s:3:"-15";s:6:"sacute";s:3:"-15";s:6:"scaron";s:3:"-15";s:8:"scedilla";s:3:"-15";s:12:"scommaaccent";s:3:"-15";s:1:"t";s:2:"20";s:12:"tcommaaccent";s:2:"20";s:1:"v";s:2:"10";s:1:"y";s:2:"10";s:6:"yacute";s:2:"10";s:9:"ydieresis";s:2:"10";}s:1:"s";a:1:{s:1:"w";s:3:"-15";}s:6:"sacute";a:1:{s:1:"w";s:3:"-15";}s:6:"scaron";a:1:{s:1:"w";s:3:"-15";}s:8:"scedilla";a:1:{s:1:"w";s:3:"-15";}s:12:"scommaaccent";a:1:{s:1:"w";s:3:"-15";}s:9:"semicolon";a:1:{s:5:"space";s:3:"-40";}s:5:"space";a:10:{s:1:"T";s:4:"-100";s:6:"Tcaron";s:4:"-100";s:12:"Tcommaaccent";s:4:"-100";s:1:"V";s:3:"-80";s:1:"W";s:3:"-80";s:1:"Y";s:4:"-120";s:6:"Yacute";s:4:"-120";s:9:"Ydieresis";s:4:"-120";s:12:"quotedblleft";s:3:"-80";s:9:"quoteleft";s:3:"-60";}s:1:"v";a:21:{s:1:"a";s:3:"-20";s:6:"aacute";s:3:"-20";s:6:"abreve";s:3:"-20";s:11:"acircumflex";s:3:"-20";s:9:"adieresis";s:3:"-20";s:6:"agrave";s:3:"-20";s:7:"amacron";s:3:"-20";s:7:"aogonek";s:3:"-20";s:5:"aring";s:3:"-20";s:6:"atilde";s:3:"-20";s:5:"comma";s:3:"-80";s:1:"o";s:3:"-30";s:6:"oacute";s:3:"-30";s:11:"ocircumflex";s:3:"-30";s:9:"odieresis";s:3:"-30";s:6:"ograve";s:3:"-30";s:13:"ohungarumlaut";s:3:"-30";s:7:"omacron";s:3:"-30";s:6:"oslash";s:3:"-30";s:6:"otilde";s:3:"-30";s:6:"period";s:3:"-80";}s:1:"w";a:11:{s:5:"comma";s:3:"-40";s:1:"o";s:3:"-20";s:6:"oacute";s:3:"-20";s:11:"ocircumflex";s:3:"-20";s:9:"odieresis";s:3:"-20";s:6:"ograve";s:3:"-20";s:13:"ohungarumlaut";s:3:"-20";s:7:"omacron";s:3:"-20";s:6:"oslash";s:3:"-20";s:6:"otilde";s:3:"-20";s:6:"period";s:3:"-40";}s:1:"x";a:9:{s:1:"e";s:3:"-10";s:6:"eacute";s:3:"-10";s:6:"ecaron";s:3:"-10";s:11:"ecircumflex";s:3:"-10";s:9:"edieresis";s:3:"-10";s:10:"edotaccent";s:3:"-10";s:6:"egrave";s:3:"-10";s:7:"emacron";s:3:"-10";s:7:"eogonek";s:3:"-10";}s:1:"y";a:30:{s:1:"a";s:3:"-30";s:6:"aacute";s:3:"-30";s:6:"abreve";s:3:"-30";s:11:"acircumflex";s:3:"-30";s:9:"adieresis";s:3:"-30";s:6:"agrave";s:3:"-30";s:7:"amacron";s:3:"-30";s:7:"aogonek";s:3:"-30";s:5:"aring";s:3:"-30";s:6:"atilde";s:3:"-30";s:5:"comma";s:3:"-80";s:1:"e";s:3:"-10";s:6:"eacute";s:3:"-10";s:6:"ecaron";s:3:"-10";s:11:"ecircumflex";s:3:"-10";s:9:"edieresis";s:3:"-10";s:10:"edotaccent";s:3:"-10";s:6:"egrave";s:3:"-10";s:7:"emacron";s:3:"-10";s:7:"eogonek";s:3:"-10";s:1:"o";s:3:"-25";s:6:"oacute";s:3:"-25";s:11:"ocircumflex";s:3:"-25";s:9:"odieresis";s:3:"-25";s:6:"ograve";s:3:"-25";s:13:"ohungarumlaut";s:3:"-25";s:7:"omacron";s:3:"-25";s:6:"oslash";s:3:"-25";s:6:"otilde";s:3:"-25";s:6:"period";s:3:"-80";}s:6:"yacute";a:30:{s:1:"a";s:3:"-30";s:6:"aacute";s:3:"-30";s:6:"abreve";s:3:"-30";s:11:"acircumflex";s:3:"-30";s:9:"adieresis";s:3:"-30";s:6:"agrave";s:3:"-30";s:7:"amacron";s:3:"-30";s:7:"aogonek";s:3:"-30";s:5:"aring";s:3:"-30";s:6:"atilde";s:3:"-30";s:5:"comma";s:3:"-80";s:1:"e";s:3:"-10";s:6:"eacute";s:3:"-10";s:6:"ecaron";s:3:"-10";s:11:"ecircumflex";s:3:"-10";s:9:"edieresis";s:3:"-10";s:10:"edotaccent";s:3:"-10";s:6:"egrave";s:3:"-10";s:7:"emacron";s:3:"-10";s:7:"eogonek";s:3:"-10";s:1:"o";s:3:"-25";s:6:"oacute";s:3:"-25";s:11:"ocircumflex";s:3:"-25";s:9:"odieresis";s:3:"-25";s:6:"ograve";s:3:"-25";s:13:"ohungarumlaut";s:3:"-25";s:7:"omacron";s:3:"-25";s:6:"oslash";s:3:"-25";s:6:"otilde";s:3:"-25";s:6:"period";s:3:"-80";}s:9:"ydieresis";a:30:{s:1:"a";s:3:"-30";s:6:"aacute";s:3:"-30";s:6:"abreve";s:3:"-30";s:11:"acircumflex";s:3:"-30";s:9:"adieresis";s:3:"-30";s:6:"agrave";s:3:"-30";s:7:"amacron";s:3:"-30";s:7:"aogonek";s:3:"-30";s:5:"aring";s:3:"-30";s:6:"atilde";s:3:"-30";s:5:"comma";s:3:"-80";s:1:"e";s:3:"-10";s:6:"eacute";s:3:"-10";s:6:"ecaron";s:3:"-10";s:11:"ecircumflex";s:3:"-10";s:9:"edieresis";s:3:"-10";s:10:"edotaccent";s:3:"-10";s:6:"egrave";s:3:"-10";s:7:"emacron";s:3:"-10";s:7:"eogonek";s:3:"-10";s:1:"o";s:3:"-25";s:6:"oacute";s:3:"-25";s:11:"ocircumflex";s:3:"-25";s:9:"odieresis";s:3:"-25";s:6:"ograve";s:3:"-25";s:13:"ohungarumlaut";s:3:"-25";s:7:"omacron";s:3:"-25";s:6:"oslash";s:3:"-25";s:6:"otilde";s:3:"-25";s:6:"period";s:3:"-80";}s:1:"z";a:9:{s:1:"e";s:2:"10";s:6:"eacute";s:2:"10";s:6:"ecaron";s:2:"10";s:11:"ecircumflex";s:2:"10";s:9:"edieresis";s:2:"10";s:10:"edotaccent";s:2:"10";s:6:"egrave";s:2:"10";s:7:"emacron";s:2:"10";s:7:"eogonek";s:2:"10";}s:6:"zacute";a:9:{s:1:"e";s:2:"10";s:6:"eacute";s:2:"10";s:6:"ecaron";s:2:"10";s:11:"ecircumflex";s:2:"10";s:9:"edieresis";s:2:"10";s:10:"edotaccent";s:2:"10";s:6:"egrave";s:2:"10";s:7:"emacron";s:2:"10";s:7:"eogonek";s:2:"10";}s:6:"zcaron";a:9:{s:1:"e";s:2:"10";s:6:"eacute";s:2:"10";s:6:"ecaron";s:2:"10";s:11:"ecircumflex";s:2:"10";s:9:"edieresis";s:2:"10";s:10:"edotaccent";s:2:"10";s:6:"egrave";s:2:"10";s:7:"emacron";s:2:"10";s:7:"eogonek";s:2:"10";}s:10:"zdotaccent";a:9:{s:1:"e";s:2:"10";s:6:"eacute";s:2:"10";s:6:"ecaron";s:2:"10";s:11:"ecircumflex";s:2:"10";s:9:"edieresis";s:2:"10";s:10:"edotaccent";s:2:"10";s:6:"egrave";s:2:"10";s:7:"emacron";s:2:"10";s:7:"eogonek";s:2:"10";}}s:9:"_version_";i:1;} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Helvetica-Oblique.afm b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Helvetica-Oblique.afm
new file mode 100755
index 00000000..5b32a2fd
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Helvetica-Oblique.afm
@@ -0,0 +1 @@
+a:22:{s:8:"FontName";s:17:"Helvetica-Oblique";s:8:"FullName";s:17:"Helvetica Oblique";s:10:"FamilyName";s:9:"Helvetica";s:6:"Weight";s:6:"Medium";s:11:"ItalicAngle";s:3:"-12";s:12:"IsFixedPitch";s:5:"false";s:12:"CharacterSet";s:13:"ExtendedRoman";s:8:"FontBBox";a:4:{i:0;s:4:"-170";i:1;s:4:"-225";i:2;s:4:"1116";i:3;s:3:"931";}s:17:"UnderlinePosition";s:4:"-100";s:18:"UnderlineThickness";s:2:"50";s:7:"Version";s:7:"002.000";s:14:"EncodingScheme";s:21:"AdobeStandardEncoding";s:9:"CapHeight";s:3:"718";s:7:"XHeight";s:3:"523";s:8:"Ascender";s:3:"718";s:9:"Descender";s:4:"-207";s:5:"StdHW";s:2:"76";s:5:"StdVW";s:2:"88";s:16:"StartCharMetrics";s:3:"315";s:1:"C";a:464:{i:32;a:4:{s:1:"C";s:2:"32";s:2:"WX";s:3:"278";s:1:"N";s:5:"space";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:1:"0";i:3;s:1:"0";}}s:5:"space";a:4:{s:1:"C";s:2:"32";s:2:"WX";s:3:"278";s:1:"N";s:5:"space";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:1:"0";i:3;s:1:"0";}}i:33;a:4:{s:1:"C";s:2:"33";s:2:"WX";s:3:"278";s:1:"N";s:6:"exclam";s:1:"B";a:4:{i:0;s:2:"90";i:1;s:1:"0";i:2;s:3:"340";i:3;s:3:"718";}}s:6:"exclam";a:4:{s:1:"C";s:2:"33";s:2:"WX";s:3:"278";s:1:"N";s:6:"exclam";s:1:"B";a:4:{i:0;s:2:"90";i:1;s:1:"0";i:2;s:3:"340";i:3;s:3:"718";}}i:34;a:4:{s:1:"C";s:2:"34";s:2:"WX";s:3:"355";s:1:"N";s:8:"quotedbl";s:1:"B";a:4:{i:0;s:3:"168";i:1;s:3:"463";i:2;s:3:"438";i:3;s:3:"718";}}s:8:"quotedbl";a:4:{s:1:"C";s:2:"34";s:2:"WX";s:3:"355";s:1:"N";s:8:"quotedbl";s:1:"B";a:4:{i:0;s:3:"168";i:1;s:3:"463";i:2;s:3:"438";i:3;s:3:"718";}}i:35;a:4:{s:1:"C";s:2:"35";s:2:"WX";s:3:"556";s:1:"N";s:10:"numbersign";s:1:"B";a:4:{i:0;s:2:"73";i:1;s:1:"0";i:2;s:3:"631";i:3;s:3:"688";}}s:10:"numbersign";a:4:{s:1:"C";s:2:"35";s:2:"WX";s:3:"556";s:1:"N";s:10:"numbersign";s:1:"B";a:4:{i:0;s:2:"73";i:1;s:1:"0";i:2;s:3:"631";i:3;s:3:"688";}}i:36;a:4:{s:1:"C";s:2:"36";s:2:"WX";s:3:"556";s:1:"N";s:6:"dollar";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:4:"-115";i:2;s:3:"617";i:3;s:3:"775";}}s:6:"dollar";a:4:{s:1:"C";s:2:"36";s:2:"WX";s:3:"556";s:1:"N";s:6:"dollar";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:4:"-115";i:2;s:3:"617";i:3;s:3:"775";}}i:37;a:4:{s:1:"C";s:2:"37";s:2:"WX";s:3:"889";s:1:"N";s:7:"percent";s:1:"B";a:4:{i:0;s:3:"147";i:1;s:3:"-19";i:2;s:3:"889";i:3;s:3:"703";}}s:7:"percent";a:4:{s:1:"C";s:2:"37";s:2:"WX";s:3:"889";s:1:"N";s:7:"percent";s:1:"B";a:4:{i:0;s:3:"147";i:1;s:3:"-19";i:2;s:3:"889";i:3;s:3:"703";}}i:38;a:4:{s:1:"C";s:2:"38";s:2:"WX";s:3:"667";s:1:"N";s:9:"ampersand";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:3:"-15";i:2;s:3:"647";i:3;s:3:"718";}}s:9:"ampersand";a:4:{s:1:"C";s:2:"38";s:2:"WX";s:3:"667";s:1:"N";s:9:"ampersand";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:3:"-15";i:2;s:3:"647";i:3;s:3:"718";}}i:39;a:4:{s:1:"C";s:2:"39";s:2:"WX";s:3:"222";s:1:"N";s:10:"quoteright";s:1:"B";a:4:{i:0;s:3:"151";i:1;s:3:"463";i:2;s:3:"310";i:3;s:3:"718";}}s:10:"quoteright";a:4:{s:1:"C";s:2:"39";s:2:"WX";s:3:"222";s:1:"N";s:10:"quoteright";s:1:"B";a:4:{i:0;s:3:"151";i:1;s:3:"463";i:2;s:3:"310";i:3;s:3:"718";}}i:40;a:4:{s:1:"C";s:2:"40";s:2:"WX";s:3:"333";s:1:"N";s:9:"parenleft";s:1:"B";a:4:{i:0;s:3:"108";i:1;s:4:"-207";i:2;s:3:"454";i:3;s:3:"733";}}s:9:"parenleft";a:4:{s:1:"C";s:2:"40";s:2:"WX";s:3:"333";s:1:"N";s:9:"parenleft";s:1:"B";a:4:{i:0;s:3:"108";i:1;s:4:"-207";i:2;s:3:"454";i:3;s:3:"733";}}i:41;a:4:{s:1:"C";s:2:"41";s:2:"WX";s:3:"333";s:1:"N";s:10:"parenright";s:1:"B";a:4:{i:0;s:2:"-9";i:1;s:4:"-207";i:2;s:3:"337";i:3;s:3:"733";}}s:10:"parenright";a:4:{s:1:"C";s:2:"41";s:2:"WX";s:3:"333";s:1:"N";s:10:"parenright";s:1:"B";a:4:{i:0;s:2:"-9";i:1;s:4:"-207";i:2;s:3:"337";i:3;s:3:"733";}}i:42;a:4:{s:1:"C";s:2:"42";s:2:"WX";s:3:"389";s:1:"N";s:8:"asterisk";s:1:"B";a:4:{i:0;s:3:"165";i:1;s:3:"431";i:2;s:3:"475";i:3;s:3:"718";}}s:8:"asterisk";a:4:{s:1:"C";s:2:"42";s:2:"WX";s:3:"389";s:1:"N";s:8:"asterisk";s:1:"B";a:4:{i:0;s:3:"165";i:1;s:3:"431";i:2;s:3:"475";i:3;s:3:"718";}}i:43;a:4:{s:1:"C";s:2:"43";s:2:"WX";s:3:"584";s:1:"N";s:4:"plus";s:1:"B";a:4:{i:0;s:2:"85";i:1;s:1:"0";i:2;s:3:"606";i:3;s:3:"505";}}s:4:"plus";a:4:{s:1:"C";s:2:"43";s:2:"WX";s:3:"584";s:1:"N";s:4:"plus";s:1:"B";a:4:{i:0;s:2:"85";i:1;s:1:"0";i:2;s:3:"606";i:3;s:3:"505";}}i:44;a:4:{s:1:"C";s:2:"44";s:2:"WX";s:3:"278";s:1:"N";s:5:"comma";s:1:"B";a:4:{i:0;s:2:"56";i:1;s:4:"-147";i:2;s:3:"214";i:3;s:3:"106";}}s:5:"comma";a:4:{s:1:"C";s:2:"44";s:2:"WX";s:3:"278";s:1:"N";s:5:"comma";s:1:"B";a:4:{i:0;s:2:"56";i:1;s:4:"-147";i:2;s:3:"214";i:3;s:3:"106";}}i:45;a:4:{s:1:"C";s:2:"45";s:2:"WX";s:3:"333";s:1:"N";s:6:"hyphen";s:1:"B";a:4:{i:0;s:2:"93";i:1;s:3:"232";i:2;s:3:"357";i:3;s:3:"322";}}s:6:"hyphen";a:4:{s:1:"C";s:2:"45";s:2:"WX";s:3:"333";s:1:"N";s:6:"hyphen";s:1:"B";a:4:{i:0;s:2:"93";i:1;s:3:"232";i:2;s:3:"357";i:3;s:3:"322";}}i:46;a:4:{s:1:"C";s:2:"46";s:2:"WX";s:3:"278";s:1:"N";s:6:"period";s:1:"B";a:4:{i:0;s:2:"87";i:1;s:1:"0";i:2;s:3:"214";i:3;s:3:"106";}}s:6:"period";a:4:{s:1:"C";s:2:"46";s:2:"WX";s:3:"278";s:1:"N";s:6:"period";s:1:"B";a:4:{i:0;s:2:"87";i:1;s:1:"0";i:2;s:3:"214";i:3;s:3:"106";}}i:47;a:4:{s:1:"C";s:2:"47";s:2:"WX";s:3:"278";s:1:"N";s:5:"slash";s:1:"B";a:4:{i:0;s:3:"-21";i:1;s:3:"-19";i:2;s:3:"452";i:3;s:3:"737";}}s:5:"slash";a:4:{s:1:"C";s:2:"47";s:2:"WX";s:3:"278";s:1:"N";s:5:"slash";s:1:"B";a:4:{i:0;s:3:"-21";i:1;s:3:"-19";i:2;s:3:"452";i:3;s:3:"737";}}i:48;a:4:{s:1:"C";s:2:"48";s:2:"WX";s:3:"556";s:1:"N";s:4:"zero";s:1:"B";a:4:{i:0;s:2:"93";i:1;s:3:"-19";i:2;s:3:"608";i:3;s:3:"703";}}s:4:"zero";a:4:{s:1:"C";s:2:"48";s:2:"WX";s:3:"556";s:1:"N";s:4:"zero";s:1:"B";a:4:{i:0;s:2:"93";i:1;s:3:"-19";i:2;s:3:"608";i:3;s:3:"703";}}i:49;a:4:{s:1:"C";s:2:"49";s:2:"WX";s:3:"556";s:1:"N";s:3:"one";s:1:"B";a:4:{i:0;s:3:"207";i:1;s:1:"0";i:2;s:3:"508";i:3;s:3:"703";}}s:3:"one";a:4:{s:1:"C";s:2:"49";s:2:"WX";s:3:"556";s:1:"N";s:3:"one";s:1:"B";a:4:{i:0;s:3:"207";i:1;s:1:"0";i:2;s:3:"508";i:3;s:3:"703";}}i:50;a:4:{s:1:"C";s:2:"50";s:2:"WX";s:3:"556";s:1:"N";s:3:"two";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"617";i:3;s:3:"703";}}s:3:"two";a:4:{s:1:"C";s:2:"50";s:2:"WX";s:3:"556";s:1:"N";s:3:"two";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"617";i:3;s:3:"703";}}i:51;a:4:{s:1:"C";s:2:"51";s:2:"WX";s:3:"556";s:1:"N";s:5:"three";s:1:"B";a:4:{i:0;s:2:"75";i:1;s:3:"-19";i:2;s:3:"610";i:3;s:3:"703";}}s:5:"three";a:4:{s:1:"C";s:2:"51";s:2:"WX";s:3:"556";s:1:"N";s:5:"three";s:1:"B";a:4:{i:0;s:2:"75";i:1;s:3:"-19";i:2;s:3:"610";i:3;s:3:"703";}}i:52;a:4:{s:1:"C";s:2:"52";s:2:"WX";s:3:"556";s:1:"N";s:4:"four";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:1:"0";i:2;s:3:"576";i:3;s:3:"703";}}s:4:"four";a:4:{s:1:"C";s:2:"52";s:2:"WX";s:3:"556";s:1:"N";s:4:"four";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:1:"0";i:2;s:3:"576";i:3;s:3:"703";}}i:53;a:4:{s:1:"C";s:2:"53";s:2:"WX";s:3:"556";s:1:"N";s:4:"five";s:1:"B";a:4:{i:0;s:2:"68";i:1;s:3:"-19";i:2;s:3:"621";i:3;s:3:"688";}}s:4:"five";a:4:{s:1:"C";s:2:"53";s:2:"WX";s:3:"556";s:1:"N";s:4:"five";s:1:"B";a:4:{i:0;s:2:"68";i:1;s:3:"-19";i:2;s:3:"621";i:3;s:3:"688";}}i:54;a:4:{s:1:"C";s:2:"54";s:2:"WX";s:3:"556";s:1:"N";s:3:"six";s:1:"B";a:4:{i:0;s:2:"91";i:1;s:3:"-19";i:2;s:3:"615";i:3;s:3:"703";}}s:3:"six";a:4:{s:1:"C";s:2:"54";s:2:"WX";s:3:"556";s:1:"N";s:3:"six";s:1:"B";a:4:{i:0;s:2:"91";i:1;s:3:"-19";i:2;s:3:"615";i:3;s:3:"703";}}i:55;a:4:{s:1:"C";s:2:"55";s:2:"WX";s:3:"556";s:1:"N";s:5:"seven";s:1:"B";a:4:{i:0;s:3:"137";i:1;s:1:"0";i:2;s:3:"669";i:3;s:3:"688";}}s:5:"seven";a:4:{s:1:"C";s:2:"55";s:2:"WX";s:3:"556";s:1:"N";s:5:"seven";s:1:"B";a:4:{i:0;s:3:"137";i:1;s:1:"0";i:2;s:3:"669";i:3;s:3:"688";}}i:56;a:4:{s:1:"C";s:2:"56";s:2:"WX";s:3:"556";s:1:"N";s:5:"eight";s:1:"B";a:4:{i:0;s:2:"74";i:1;s:3:"-19";i:2;s:3:"607";i:3;s:3:"703";}}s:5:"eight";a:4:{s:1:"C";s:2:"56";s:2:"WX";s:3:"556";s:1:"N";s:5:"eight";s:1:"B";a:4:{i:0;s:2:"74";i:1;s:3:"-19";i:2;s:3:"607";i:3;s:3:"703";}}i:57;a:4:{s:1:"C";s:2:"57";s:2:"WX";s:3:"556";s:1:"N";s:4:"nine";s:1:"B";a:4:{i:0;s:2:"82";i:1;s:3:"-19";i:2;s:3:"609";i:3;s:3:"703";}}s:4:"nine";a:4:{s:1:"C";s:2:"57";s:2:"WX";s:3:"556";s:1:"N";s:4:"nine";s:1:"B";a:4:{i:0;s:2:"82";i:1;s:3:"-19";i:2;s:3:"609";i:3;s:3:"703";}}i:58;a:4:{s:1:"C";s:2:"58";s:2:"WX";s:3:"278";s:1:"N";s:5:"colon";s:1:"B";a:4:{i:0;s:2:"87";i:1;s:1:"0";i:2;s:3:"301";i:3;s:3:"516";}}s:5:"colon";a:4:{s:1:"C";s:2:"58";s:2:"WX";s:3:"278";s:1:"N";s:5:"colon";s:1:"B";a:4:{i:0;s:2:"87";i:1;s:1:"0";i:2;s:3:"301";i:3;s:3:"516";}}i:59;a:4:{s:1:"C";s:2:"59";s:2:"WX";s:3:"278";s:1:"N";s:9:"semicolon";s:1:"B";a:4:{i:0;s:2:"56";i:1;s:4:"-147";i:2;s:3:"301";i:3;s:3:"516";}}s:9:"semicolon";a:4:{s:1:"C";s:2:"59";s:2:"WX";s:3:"278";s:1:"N";s:9:"semicolon";s:1:"B";a:4:{i:0;s:2:"56";i:1;s:4:"-147";i:2;s:3:"301";i:3;s:3:"516";}}i:60;a:4:{s:1:"C";s:2:"60";s:2:"WX";s:3:"584";s:1:"N";s:4:"less";s:1:"B";a:4:{i:0;s:2:"94";i:1;s:2:"11";i:2;s:3:"641";i:3;s:3:"495";}}s:4:"less";a:4:{s:1:"C";s:2:"60";s:2:"WX";s:3:"584";s:1:"N";s:4:"less";s:1:"B";a:4:{i:0;s:2:"94";i:1;s:2:"11";i:2;s:3:"641";i:3;s:3:"495";}}i:61;a:4:{s:1:"C";s:2:"61";s:2:"WX";s:3:"584";s:1:"N";s:5:"equal";s:1:"B";a:4:{i:0;s:2:"63";i:1;s:3:"115";i:2;s:3:"628";i:3;s:3:"390";}}s:5:"equal";a:4:{s:1:"C";s:2:"61";s:2:"WX";s:3:"584";s:1:"N";s:5:"equal";s:1:"B";a:4:{i:0;s:2:"63";i:1;s:3:"115";i:2;s:3:"628";i:3;s:3:"390";}}i:62;a:4:{s:1:"C";s:2:"62";s:2:"WX";s:3:"584";s:1:"N";s:7:"greater";s:1:"B";a:4:{i:0;s:2:"50";i:1;s:2:"11";i:2;s:3:"597";i:3;s:3:"495";}}s:7:"greater";a:4:{s:1:"C";s:2:"62";s:2:"WX";s:3:"584";s:1:"N";s:7:"greater";s:1:"B";a:4:{i:0;s:2:"50";i:1;s:2:"11";i:2;s:3:"597";i:3;s:3:"495";}}i:63;a:4:{s:1:"C";s:2:"63";s:2:"WX";s:3:"556";s:1:"N";s:8:"question";s:1:"B";a:4:{i:0;s:3:"161";i:1;s:1:"0";i:2;s:3:"610";i:3;s:3:"727";}}s:8:"question";a:4:{s:1:"C";s:2:"63";s:2:"WX";s:3:"556";s:1:"N";s:8:"question";s:1:"B";a:4:{i:0;s:3:"161";i:1;s:1:"0";i:2;s:3:"610";i:3;s:3:"727";}}i:64;a:4:{s:1:"C";s:2:"64";s:2:"WX";s:4:"1015";s:1:"N";s:2:"at";s:1:"B";a:4:{i:0;s:3:"215";i:1;s:3:"-19";i:2;s:3:"965";i:3;s:3:"737";}}s:2:"at";a:4:{s:1:"C";s:2:"64";s:2:"WX";s:4:"1015";s:1:"N";s:2:"at";s:1:"B";a:4:{i:0;s:3:"215";i:1;s:3:"-19";i:2;s:3:"965";i:3;s:3:"737";}}i:65;a:4:{s:1:"C";s:2:"65";s:2:"WX";s:3:"667";s:1:"N";s:1:"A";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"654";i:3;s:3:"718";}}s:1:"A";a:4:{s:1:"C";s:2:"65";s:2:"WX";s:3:"667";s:1:"N";s:1:"A";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"654";i:3;s:3:"718";}}i:66;a:4:{s:1:"C";s:2:"66";s:2:"WX";s:3:"667";s:1:"N";s:1:"B";s:1:"B";a:4:{i:0;s:2:"74";i:1;s:1:"0";i:2;s:3:"712";i:3;s:3:"718";}}s:1:"B";a:4:{s:1:"C";s:2:"66";s:2:"WX";s:3:"667";s:1:"N";s:1:"B";s:1:"B";a:4:{i:0;s:2:"74";i:1;s:1:"0";i:2;s:3:"712";i:3;s:3:"718";}}i:67;a:4:{s:1:"C";s:2:"67";s:2:"WX";s:3:"722";s:1:"N";s:1:"C";s:1:"B";a:4:{i:0;s:3:"108";i:1;s:3:"-19";i:2;s:3:"782";i:3;s:3:"737";}}s:1:"C";a:4:{s:1:"C";s:2:"67";s:2:"WX";s:3:"722";s:1:"N";s:1:"C";s:1:"B";a:4:{i:0;s:3:"108";i:1;s:3:"-19";i:2;s:3:"782";i:3;s:3:"737";}}i:68;a:4:{s:1:"C";s:2:"68";s:2:"WX";s:3:"722";s:1:"N";s:1:"D";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:1:"0";i:2;s:3:"764";i:3;s:3:"718";}}s:1:"D";a:4:{s:1:"C";s:2:"68";s:2:"WX";s:3:"722";s:1:"N";s:1:"D";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:1:"0";i:2;s:3:"764";i:3;s:3:"718";}}i:69;a:4:{s:1:"C";s:2:"69";s:2:"WX";s:3:"667";s:1:"N";s:1:"E";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"762";i:3;s:3:"718";}}s:1:"E";a:4:{s:1:"C";s:2:"69";s:2:"WX";s:3:"667";s:1:"N";s:1:"E";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"762";i:3;s:3:"718";}}i:70;a:4:{s:1:"C";s:2:"70";s:2:"WX";s:3:"611";s:1:"N";s:1:"F";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"736";i:3;s:3:"718";}}s:1:"F";a:4:{s:1:"C";s:2:"70";s:2:"WX";s:3:"611";s:1:"N";s:1:"F";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"736";i:3;s:3:"718";}}i:71;a:4:{s:1:"C";s:2:"71";s:2:"WX";s:3:"778";s:1:"N";s:1:"G";s:1:"B";a:4:{i:0;s:3:"111";i:1;s:3:"-19";i:2;s:3:"799";i:3;s:3:"737";}}s:1:"G";a:4:{s:1:"C";s:2:"71";s:2:"WX";s:3:"778";s:1:"N";s:1:"G";s:1:"B";a:4:{i:0;s:3:"111";i:1;s:3:"-19";i:2;s:3:"799";i:3;s:3:"737";}}i:72;a:4:{s:1:"C";s:2:"72";s:2:"WX";s:3:"722";s:1:"N";s:1:"H";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"799";i:3;s:3:"718";}}s:1:"H";a:4:{s:1:"C";s:2:"72";s:2:"WX";s:3:"722";s:1:"N";s:1:"H";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"799";i:3;s:3:"718";}}i:73;a:4:{s:1:"C";s:2:"73";s:2:"WX";s:3:"278";s:1:"N";s:1:"I";s:1:"B";a:4:{i:0;s:2:"91";i:1;s:1:"0";i:2;s:3:"341";i:3;s:3:"718";}}s:1:"I";a:4:{s:1:"C";s:2:"73";s:2:"WX";s:3:"278";s:1:"N";s:1:"I";s:1:"B";a:4:{i:0;s:2:"91";i:1;s:1:"0";i:2;s:3:"341";i:3;s:3:"718";}}i:74;a:4:{s:1:"C";s:2:"74";s:2:"WX";s:3:"500";s:1:"N";s:1:"J";s:1:"B";a:4:{i:0;s:2:"47";i:1;s:3:"-19";i:2;s:3:"581";i:3;s:3:"718";}}s:1:"J";a:4:{s:1:"C";s:2:"74";s:2:"WX";s:3:"500";s:1:"N";s:1:"J";s:1:"B";a:4:{i:0;s:2:"47";i:1;s:3:"-19";i:2;s:3:"581";i:3;s:3:"718";}}i:75;a:4:{s:1:"C";s:2:"75";s:2:"WX";s:3:"667";s:1:"N";s:1:"K";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"808";i:3;s:3:"718";}}s:1:"K";a:4:{s:1:"C";s:2:"75";s:2:"WX";s:3:"667";s:1:"N";s:1:"K";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"808";i:3;s:3:"718";}}i:76;a:4:{s:1:"C";s:2:"76";s:2:"WX";s:3:"556";s:1:"N";s:1:"L";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"555";i:3;s:3:"718";}}s:1:"L";a:4:{s:1:"C";s:2:"76";s:2:"WX";s:3:"556";s:1:"N";s:1:"L";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"555";i:3;s:3:"718";}}i:77;a:4:{s:1:"C";s:2:"77";s:2:"WX";s:3:"833";s:1:"N";s:1:"M";s:1:"B";a:4:{i:0;s:2:"73";i:1;s:1:"0";i:2;s:3:"914";i:3;s:3:"718";}}s:1:"M";a:4:{s:1:"C";s:2:"77";s:2:"WX";s:3:"833";s:1:"N";s:1:"M";s:1:"B";a:4:{i:0;s:2:"73";i:1;s:1:"0";i:2;s:3:"914";i:3;s:3:"718";}}i:78;a:4:{s:1:"C";s:2:"78";s:2:"WX";s:3:"722";s:1:"N";s:1:"N";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"799";i:3;s:3:"718";}}s:1:"N";a:4:{s:1:"C";s:2:"78";s:2:"WX";s:3:"722";s:1:"N";s:1:"N";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"799";i:3;s:3:"718";}}i:79;a:4:{s:1:"C";s:2:"79";s:2:"WX";s:3:"778";s:1:"N";s:1:"O";s:1:"B";a:4:{i:0;s:3:"105";i:1;s:3:"-19";i:2;s:3:"826";i:3;s:3:"737";}}s:1:"O";a:4:{s:1:"C";s:2:"79";s:2:"WX";s:3:"778";s:1:"N";s:1:"O";s:1:"B";a:4:{i:0;s:3:"105";i:1;s:3:"-19";i:2;s:3:"826";i:3;s:3:"737";}}i:80;a:4:{s:1:"C";s:2:"80";s:2:"WX";s:3:"667";s:1:"N";s:1:"P";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"737";i:3;s:3:"718";}}s:1:"P";a:4:{s:1:"C";s:2:"80";s:2:"WX";s:3:"667";s:1:"N";s:1:"P";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"737";i:3;s:3:"718";}}i:81;a:4:{s:1:"C";s:2:"81";s:2:"WX";s:3:"778";s:1:"N";s:1:"Q";s:1:"B";a:4:{i:0;s:3:"105";i:1;s:3:"-56";i:2;s:3:"826";i:3;s:3:"737";}}s:1:"Q";a:4:{s:1:"C";s:2:"81";s:2:"WX";s:3:"778";s:1:"N";s:1:"Q";s:1:"B";a:4:{i:0;s:3:"105";i:1;s:3:"-56";i:2;s:3:"826";i:3;s:3:"737";}}i:82;a:4:{s:1:"C";s:2:"82";s:2:"WX";s:3:"722";s:1:"N";s:1:"R";s:1:"B";a:4:{i:0;s:2:"88";i:1;s:1:"0";i:2;s:3:"773";i:3;s:3:"718";}}s:1:"R";a:4:{s:1:"C";s:2:"82";s:2:"WX";s:3:"722";s:1:"N";s:1:"R";s:1:"B";a:4:{i:0;s:2:"88";i:1;s:1:"0";i:2;s:3:"773";i:3;s:3:"718";}}i:83;a:4:{s:1:"C";s:2:"83";s:2:"WX";s:3:"667";s:1:"N";s:1:"S";s:1:"B";a:4:{i:0;s:2:"90";i:1;s:3:"-19";i:2;s:3:"713";i:3;s:3:"737";}}s:1:"S";a:4:{s:1:"C";s:2:"83";s:2:"WX";s:3:"667";s:1:"N";s:1:"S";s:1:"B";a:4:{i:0;s:2:"90";i:1;s:3:"-19";i:2;s:3:"713";i:3;s:3:"737";}}i:84;a:4:{s:1:"C";s:2:"84";s:2:"WX";s:3:"611";s:1:"N";s:1:"T";s:1:"B";a:4:{i:0;s:3:"148";i:1;s:1:"0";i:2;s:3:"750";i:3;s:3:"718";}}s:1:"T";a:4:{s:1:"C";s:2:"84";s:2:"WX";s:3:"611";s:1:"N";s:1:"T";s:1:"B";a:4:{i:0;s:3:"148";i:1;s:1:"0";i:2;s:3:"750";i:3;s:3:"718";}}i:85;a:4:{s:1:"C";s:2:"85";s:2:"WX";s:3:"722";s:1:"N";s:1:"U";s:1:"B";a:4:{i:0;s:3:"123";i:1;s:3:"-19";i:2;s:3:"797";i:3;s:3:"718";}}s:1:"U";a:4:{s:1:"C";s:2:"85";s:2:"WX";s:3:"722";s:1:"N";s:1:"U";s:1:"B";a:4:{i:0;s:3:"123";i:1;s:3:"-19";i:2;s:3:"797";i:3;s:3:"718";}}i:86;a:4:{s:1:"C";s:2:"86";s:2:"WX";s:3:"667";s:1:"N";s:1:"V";s:1:"B";a:4:{i:0;s:3:"173";i:1;s:1:"0";i:2;s:3:"800";i:3;s:3:"718";}}s:1:"V";a:4:{s:1:"C";s:2:"86";s:2:"WX";s:3:"667";s:1:"N";s:1:"V";s:1:"B";a:4:{i:0;s:3:"173";i:1;s:1:"0";i:2;s:3:"800";i:3;s:3:"718";}}i:87;a:4:{s:1:"C";s:2:"87";s:2:"WX";s:3:"944";s:1:"N";s:1:"W";s:1:"B";a:4:{i:0;s:3:"169";i:1;s:1:"0";i:2;s:4:"1081";i:3;s:3:"718";}}s:1:"W";a:4:{s:1:"C";s:2:"87";s:2:"WX";s:3:"944";s:1:"N";s:1:"W";s:1:"B";a:4:{i:0;s:3:"169";i:1;s:1:"0";i:2;s:4:"1081";i:3;s:3:"718";}}i:88;a:4:{s:1:"C";s:2:"88";s:2:"WX";s:3:"667";s:1:"N";s:1:"X";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:1:"0";i:2;s:3:"790";i:3;s:3:"718";}}s:1:"X";a:4:{s:1:"C";s:2:"88";s:2:"WX";s:3:"667";s:1:"N";s:1:"X";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:1:"0";i:2;s:3:"790";i:3;s:3:"718";}}i:89;a:4:{s:1:"C";s:2:"89";s:2:"WX";s:3:"667";s:1:"N";s:1:"Y";s:1:"B";a:4:{i:0;s:3:"167";i:1;s:1:"0";i:2;s:3:"806";i:3;s:3:"718";}}s:1:"Y";a:4:{s:1:"C";s:2:"89";s:2:"WX";s:3:"667";s:1:"N";s:1:"Y";s:1:"B";a:4:{i:0;s:3:"167";i:1;s:1:"0";i:2;s:3:"806";i:3;s:3:"718";}}i:90;a:4:{s:1:"C";s:2:"90";s:2:"WX";s:3:"611";s:1:"N";s:1:"Z";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:1:"0";i:2;s:3:"741";i:3;s:3:"718";}}s:1:"Z";a:4:{s:1:"C";s:2:"90";s:2:"WX";s:3:"611";s:1:"N";s:1:"Z";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:1:"0";i:2;s:3:"741";i:3;s:3:"718";}}i:91;a:4:{s:1:"C";s:2:"91";s:2:"WX";s:3:"278";s:1:"N";s:11:"bracketleft";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:4:"-196";i:2;s:3:"403";i:3;s:3:"722";}}s:11:"bracketleft";a:4:{s:1:"C";s:2:"91";s:2:"WX";s:3:"278";s:1:"N";s:11:"bracketleft";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:4:"-196";i:2;s:3:"403";i:3;s:3:"722";}}i:92;a:4:{s:1:"C";s:2:"92";s:2:"WX";s:3:"278";s:1:"N";s:9:"backslash";s:1:"B";a:4:{i:0;s:3:"140";i:1;s:3:"-19";i:2;s:3:"291";i:3;s:3:"737";}}s:9:"backslash";a:4:{s:1:"C";s:2:"92";s:2:"WX";s:3:"278";s:1:"N";s:9:"backslash";s:1:"B";a:4:{i:0;s:3:"140";i:1;s:3:"-19";i:2;s:3:"291";i:3;s:3:"737";}}i:93;a:4:{s:1:"C";s:2:"93";s:2:"WX";s:3:"278";s:1:"N";s:12:"bracketright";s:1:"B";a:4:{i:0;s:3:"-14";i:1;s:4:"-196";i:2;s:3:"368";i:3;s:3:"722";}}s:12:"bracketright";a:4:{s:1:"C";s:2:"93";s:2:"WX";s:3:"278";s:1:"N";s:12:"bracketright";s:1:"B";a:4:{i:0;s:3:"-14";i:1;s:4:"-196";i:2;s:3:"368";i:3;s:3:"722";}}i:94;a:4:{s:1:"C";s:2:"94";s:2:"WX";s:3:"469";s:1:"N";s:11:"asciicircum";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:3:"264";i:2;s:3:"539";i:3;s:3:"688";}}s:11:"asciicircum";a:4:{s:1:"C";s:2:"94";s:2:"WX";s:3:"469";s:1:"N";s:11:"asciicircum";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:3:"264";i:2;s:3:"539";i:3;s:3:"688";}}i:95;a:4:{s:1:"C";s:2:"95";s:2:"WX";s:3:"556";s:1:"N";s:10:"underscore";s:1:"B";a:4:{i:0;s:3:"-27";i:1;s:4:"-125";i:2;s:3:"540";i:3;s:3:"-75";}}s:10:"underscore";a:4:{s:1:"C";s:2:"95";s:2:"WX";s:3:"556";s:1:"N";s:10:"underscore";s:1:"B";a:4:{i:0;s:3:"-27";i:1;s:4:"-125";i:2;s:3:"540";i:3;s:3:"-75";}}i:96;a:4:{s:1:"C";s:2:"96";s:2:"WX";s:3:"222";s:1:"N";s:9:"quoteleft";s:1:"B";a:4:{i:0;s:3:"165";i:1;s:3:"470";i:2;s:3:"323";i:3;s:3:"725";}}s:9:"quoteleft";a:4:{s:1:"C";s:2:"96";s:2:"WX";s:3:"222";s:1:"N";s:9:"quoteleft";s:1:"B";a:4:{i:0;s:3:"165";i:1;s:3:"470";i:2;s:3:"323";i:3;s:3:"725";}}i:97;a:4:{s:1:"C";s:2:"97";s:2:"WX";s:3:"556";s:1:"N";s:1:"a";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:3:"-15";i:2;s:3:"559";i:3;s:3:"538";}}s:1:"a";a:4:{s:1:"C";s:2:"97";s:2:"WX";s:3:"556";s:1:"N";s:1:"a";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:3:"-15";i:2;s:3:"559";i:3;s:3:"538";}}i:98;a:4:{s:1:"C";s:2:"98";s:2:"WX";s:3:"556";s:1:"N";s:1:"b";s:1:"B";a:4:{i:0;s:2:"58";i:1;s:3:"-15";i:2;s:3:"584";i:3;s:3:"718";}}s:1:"b";a:4:{s:1:"C";s:2:"98";s:2:"WX";s:3:"556";s:1:"N";s:1:"b";s:1:"B";a:4:{i:0;s:2:"58";i:1;s:3:"-15";i:2;s:3:"584";i:3;s:3:"718";}}i:99;a:4:{s:1:"C";s:2:"99";s:2:"WX";s:3:"500";s:1:"N";s:1:"c";s:1:"B";a:4:{i:0;s:2:"74";i:1;s:3:"-15";i:2;s:3:"553";i:3;s:3:"538";}}s:1:"c";a:4:{s:1:"C";s:2:"99";s:2:"WX";s:3:"500";s:1:"N";s:1:"c";s:1:"B";a:4:{i:0;s:2:"74";i:1;s:3:"-15";i:2;s:3:"553";i:3;s:3:"538";}}i:100;a:4:{s:1:"C";s:3:"100";s:2:"WX";s:3:"556";s:1:"N";s:1:"d";s:1:"B";a:4:{i:0;s:2:"84";i:1;s:3:"-15";i:2;s:3:"652";i:3;s:3:"718";}}s:1:"d";a:4:{s:1:"C";s:3:"100";s:2:"WX";s:3:"556";s:1:"N";s:1:"d";s:1:"B";a:4:{i:0;s:2:"84";i:1;s:3:"-15";i:2;s:3:"652";i:3;s:3:"718";}}i:101;a:4:{s:1:"C";s:3:"101";s:2:"WX";s:3:"556";s:1:"N";s:1:"e";s:1:"B";a:4:{i:0;s:2:"84";i:1;s:3:"-15";i:2;s:3:"578";i:3;s:3:"538";}}s:1:"e";a:4:{s:1:"C";s:3:"101";s:2:"WX";s:3:"556";s:1:"N";s:1:"e";s:1:"B";a:4:{i:0;s:2:"84";i:1;s:3:"-15";i:2;s:3:"578";i:3;s:3:"538";}}i:102;a:5:{s:1:"C";s:3:"102";s:2:"WX";s:3:"278";s:1:"N";s:1:"f";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"416";i:3;s:3:"728";}s:1:"L";a:2:{i:0;s:1:"l";i:1;s:2:"fl";}}s:1:"f";a:5:{s:1:"C";s:3:"102";s:2:"WX";s:3:"278";s:1:"N";s:1:"f";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"416";i:3;s:3:"728";}s:1:"L";a:2:{i:0;s:1:"l";i:1;s:2:"fl";}}i:103;a:4:{s:1:"C";s:3:"103";s:2:"WX";s:3:"556";s:1:"N";s:1:"g";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:4:"-220";i:2;s:3:"610";i:3;s:3:"538";}}s:1:"g";a:4:{s:1:"C";s:3:"103";s:2:"WX";s:3:"556";s:1:"N";s:1:"g";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:4:"-220";i:2;s:3:"610";i:3;s:3:"538";}}i:104;a:4:{s:1:"C";s:3:"104";s:2:"WX";s:3:"556";s:1:"N";s:1:"h";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:1:"0";i:2;s:3:"573";i:3;s:3:"718";}}s:1:"h";a:4:{s:1:"C";s:3:"104";s:2:"WX";s:3:"556";s:1:"N";s:1:"h";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:1:"0";i:2;s:3:"573";i:3;s:3:"718";}}i:105;a:4:{s:1:"C";s:3:"105";s:2:"WX";s:3:"222";s:1:"N";s:1:"i";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:1:"0";i:2;s:3:"308";i:3;s:3:"718";}}s:1:"i";a:4:{s:1:"C";s:3:"105";s:2:"WX";s:3:"222";s:1:"N";s:1:"i";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:1:"0";i:2;s:3:"308";i:3;s:3:"718";}}i:106;a:4:{s:1:"C";s:3:"106";s:2:"WX";s:3:"222";s:1:"N";s:1:"j";s:1:"B";a:4:{i:0;s:3:"-60";i:1;s:4:"-210";i:2;s:3:"308";i:3;s:3:"718";}}s:1:"j";a:4:{s:1:"C";s:3:"106";s:2:"WX";s:3:"222";s:1:"N";s:1:"j";s:1:"B";a:4:{i:0;s:3:"-60";i:1;s:4:"-210";i:2;s:3:"308";i:3;s:3:"718";}}i:107;a:4:{s:1:"C";s:3:"107";s:2:"WX";s:3:"500";s:1:"N";s:1:"k";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:1:"0";i:2;s:3:"600";i:3;s:3:"718";}}s:1:"k";a:4:{s:1:"C";s:3:"107";s:2:"WX";s:3:"500";s:1:"N";s:1:"k";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:1:"0";i:2;s:3:"600";i:3;s:3:"718";}}i:108;a:4:{s:1:"C";s:3:"108";s:2:"WX";s:3:"222";s:1:"N";s:1:"l";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:1:"0";i:2;s:3:"308";i:3;s:3:"718";}}s:1:"l";a:4:{s:1:"C";s:3:"108";s:2:"WX";s:3:"222";s:1:"N";s:1:"l";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:1:"0";i:2;s:3:"308";i:3;s:3:"718";}}i:109;a:4:{s:1:"C";s:3:"109";s:2:"WX";s:3:"833";s:1:"N";s:1:"m";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:1:"0";i:2;s:3:"852";i:3;s:3:"538";}}s:1:"m";a:4:{s:1:"C";s:3:"109";s:2:"WX";s:3:"833";s:1:"N";s:1:"m";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:1:"0";i:2;s:3:"852";i:3;s:3:"538";}}i:110;a:4:{s:1:"C";s:3:"110";s:2:"WX";s:3:"556";s:1:"N";s:1:"n";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:1:"0";i:2;s:3:"573";i:3;s:3:"538";}}s:1:"n";a:4:{s:1:"C";s:3:"110";s:2:"WX";s:3:"556";s:1:"N";s:1:"n";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:1:"0";i:2;s:3:"573";i:3;s:3:"538";}}i:111;a:4:{s:1:"C";s:3:"111";s:2:"WX";s:3:"556";s:1:"N";s:1:"o";s:1:"B";a:4:{i:0;s:2:"83";i:1;s:3:"-14";i:2;s:3:"585";i:3;s:3:"538";}}s:1:"o";a:4:{s:1:"C";s:3:"111";s:2:"WX";s:3:"556";s:1:"N";s:1:"o";s:1:"B";a:4:{i:0;s:2:"83";i:1;s:3:"-14";i:2;s:3:"585";i:3;s:3:"538";}}i:112;a:4:{s:1:"C";s:3:"112";s:2:"WX";s:3:"556";s:1:"N";s:1:"p";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:4:"-207";i:2;s:3:"584";i:3;s:3:"538";}}s:1:"p";a:4:{s:1:"C";s:3:"112";s:2:"WX";s:3:"556";s:1:"N";s:1:"p";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:4:"-207";i:2;s:3:"584";i:3;s:3:"538";}}i:113;a:4:{s:1:"C";s:3:"113";s:2:"WX";s:3:"556";s:1:"N";s:1:"q";s:1:"B";a:4:{i:0;s:2:"84";i:1;s:4:"-207";i:2;s:3:"605";i:3;s:3:"538";}}s:1:"q";a:4:{s:1:"C";s:3:"113";s:2:"WX";s:3:"556";s:1:"N";s:1:"q";s:1:"B";a:4:{i:0;s:2:"84";i:1;s:4:"-207";i:2;s:3:"605";i:3;s:3:"538";}}i:114;a:4:{s:1:"C";s:3:"114";s:2:"WX";s:3:"333";s:1:"N";s:1:"r";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"446";i:3;s:3:"538";}}s:1:"r";a:4:{s:1:"C";s:3:"114";s:2:"WX";s:3:"333";s:1:"N";s:1:"r";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"446";i:3;s:3:"538";}}i:115;a:4:{s:1:"C";s:3:"115";s:2:"WX";s:3:"500";s:1:"N";s:1:"s";s:1:"B";a:4:{i:0;s:2:"63";i:1;s:3:"-15";i:2;s:3:"529";i:3;s:3:"538";}}s:1:"s";a:4:{s:1:"C";s:3:"115";s:2:"WX";s:3:"500";s:1:"N";s:1:"s";s:1:"B";a:4:{i:0;s:2:"63";i:1;s:3:"-15";i:2;s:3:"529";i:3;s:3:"538";}}i:116;a:4:{s:1:"C";s:3:"116";s:2:"WX";s:3:"278";s:1:"N";s:1:"t";s:1:"B";a:4:{i:0;s:3:"102";i:1;s:2:"-7";i:2;s:3:"368";i:3;s:3:"669";}}s:1:"t";a:4:{s:1:"C";s:3:"116";s:2:"WX";s:3:"278";s:1:"N";s:1:"t";s:1:"B";a:4:{i:0;s:3:"102";i:1;s:2:"-7";i:2;s:3:"368";i:3;s:3:"669";}}i:117;a:4:{s:1:"C";s:3:"117";s:2:"WX";s:3:"556";s:1:"N";s:1:"u";s:1:"B";a:4:{i:0;s:2:"94";i:1;s:3:"-15";i:2;s:3:"600";i:3;s:3:"523";}}s:1:"u";a:4:{s:1:"C";s:3:"117";s:2:"WX";s:3:"556";s:1:"N";s:1:"u";s:1:"B";a:4:{i:0;s:2:"94";i:1;s:3:"-15";i:2;s:3:"600";i:3;s:3:"523";}}i:118;a:4:{s:1:"C";s:3:"118";s:2:"WX";s:3:"500";s:1:"N";s:1:"v";s:1:"B";a:4:{i:0;s:3:"119";i:1;s:1:"0";i:2;s:3:"603";i:3;s:3:"523";}}s:1:"v";a:4:{s:1:"C";s:3:"118";s:2:"WX";s:3:"500";s:1:"N";s:1:"v";s:1:"B";a:4:{i:0;s:3:"119";i:1;s:1:"0";i:2;s:3:"603";i:3;s:3:"523";}}i:119;a:4:{s:1:"C";s:3:"119";s:2:"WX";s:3:"722";s:1:"N";s:1:"w";s:1:"B";a:4:{i:0;s:3:"125";i:1;s:1:"0";i:2;s:3:"820";i:3;s:3:"523";}}s:1:"w";a:4:{s:1:"C";s:3:"119";s:2:"WX";s:3:"722";s:1:"N";s:1:"w";s:1:"B";a:4:{i:0;s:3:"125";i:1;s:1:"0";i:2;s:3:"820";i:3;s:3:"523";}}i:120;a:4:{s:1:"C";s:3:"120";s:2:"WX";s:3:"500";s:1:"N";s:1:"x";s:1:"B";a:4:{i:0;s:2:"11";i:1;s:1:"0";i:2;s:3:"594";i:3;s:3:"523";}}s:1:"x";a:4:{s:1:"C";s:3:"120";s:2:"WX";s:3:"500";s:1:"N";s:1:"x";s:1:"B";a:4:{i:0;s:2:"11";i:1;s:1:"0";i:2;s:3:"594";i:3;s:3:"523";}}i:121;a:4:{s:1:"C";s:3:"121";s:2:"WX";s:3:"500";s:1:"N";s:1:"y";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:4:"-214";i:2;s:3:"600";i:3;s:3:"523";}}s:1:"y";a:4:{s:1:"C";s:3:"121";s:2:"WX";s:3:"500";s:1:"N";s:1:"y";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:4:"-214";i:2;s:3:"600";i:3;s:3:"523";}}i:122;a:4:{s:1:"C";s:3:"122";s:2:"WX";s:3:"500";s:1:"N";s:1:"z";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:1:"0";i:2;s:3:"571";i:3;s:3:"523";}}s:1:"z";a:4:{s:1:"C";s:3:"122";s:2:"WX";s:3:"500";s:1:"N";s:1:"z";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:1:"0";i:2;s:3:"571";i:3;s:3:"523";}}i:123;a:4:{s:1:"C";s:3:"123";s:2:"WX";s:3:"334";s:1:"N";s:9:"braceleft";s:1:"B";a:4:{i:0;s:2:"92";i:1;s:4:"-196";i:2;s:3:"445";i:3;s:3:"722";}}s:9:"braceleft";a:4:{s:1:"C";s:3:"123";s:2:"WX";s:3:"334";s:1:"N";s:9:"braceleft";s:1:"B";a:4:{i:0;s:2:"92";i:1;s:4:"-196";i:2;s:3:"445";i:3;s:3:"722";}}i:124;a:4:{s:1:"C";s:3:"124";s:2:"WX";s:3:"260";s:1:"N";s:3:"bar";s:1:"B";a:4:{i:0;s:2:"46";i:1;s:4:"-225";i:2;s:3:"332";i:3;s:3:"775";}}s:3:"bar";a:4:{s:1:"C";s:3:"124";s:2:"WX";s:3:"260";s:1:"N";s:3:"bar";s:1:"B";a:4:{i:0;s:2:"46";i:1;s:4:"-225";i:2;s:3:"332";i:3;s:3:"775";}}i:125;a:4:{s:1:"C";s:3:"125";s:2:"WX";s:3:"334";s:1:"N";s:10:"braceright";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:4:"-196";i:2;s:3:"354";i:3;s:3:"722";}}s:10:"braceright";a:4:{s:1:"C";s:3:"125";s:2:"WX";s:3:"334";s:1:"N";s:10:"braceright";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:4:"-196";i:2;s:3:"354";i:3;s:3:"722";}}i:126;a:4:{s:1:"C";s:3:"126";s:2:"WX";s:3:"584";s:1:"N";s:10:"asciitilde";s:1:"B";a:4:{i:0;s:3:"111";i:1;s:3:"180";i:2;s:3:"580";i:3;s:3:"326";}}s:10:"asciitilde";a:4:{s:1:"C";s:3:"126";s:2:"WX";s:3:"584";s:1:"N";s:10:"asciitilde";s:1:"B";a:4:{i:0;s:3:"111";i:1;s:3:"180";i:2;s:3:"580";i:3;s:3:"326";}}i:161;a:4:{s:1:"C";s:3:"161";s:2:"WX";s:3:"333";s:1:"N";s:10:"exclamdown";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:4:"-195";i:2;s:3:"326";i:3;s:3:"523";}}s:10:"exclamdown";a:4:{s:1:"C";s:3:"161";s:2:"WX";s:3:"333";s:1:"N";s:10:"exclamdown";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:4:"-195";i:2;s:3:"326";i:3;s:3:"523";}}i:162;a:4:{s:1:"C";s:3:"162";s:2:"WX";s:3:"556";s:1:"N";s:4:"cent";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:4:"-115";i:2;s:3:"584";i:3;s:3:"623";}}s:4:"cent";a:4:{s:1:"C";s:3:"162";s:2:"WX";s:3:"556";s:1:"N";s:4:"cent";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:4:"-115";i:2;s:3:"584";i:3;s:3:"623";}}i:163;a:4:{s:1:"C";s:3:"163";s:2:"WX";s:3:"556";s:1:"N";s:8:"sterling";s:1:"B";a:4:{i:0;s:2:"49";i:1;s:3:"-16";i:2;s:3:"634";i:3;s:3:"718";}}s:8:"sterling";a:4:{s:1:"C";s:3:"163";s:2:"WX";s:3:"556";s:1:"N";s:8:"sterling";s:1:"B";a:4:{i:0;s:2:"49";i:1;s:3:"-16";i:2;s:3:"634";i:3;s:3:"718";}}i:164;a:4:{s:1:"C";s:3:"164";s:2:"WX";s:3:"167";s:1:"N";s:8:"fraction";s:1:"B";a:4:{i:0;s:4:"-170";i:1;s:3:"-19";i:2;s:3:"482";i:3;s:3:"703";}}s:8:"fraction";a:4:{s:1:"C";s:3:"164";s:2:"WX";s:3:"167";s:1:"N";s:8:"fraction";s:1:"B";a:4:{i:0;s:4:"-170";i:1;s:3:"-19";i:2;s:3:"482";i:3;s:3:"703";}}i:165;a:4:{s:1:"C";s:3:"165";s:2:"WX";s:3:"556";s:1:"N";s:3:"yen";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:1:"0";i:2;s:3:"699";i:3;s:3:"688";}}s:3:"yen";a:4:{s:1:"C";s:3:"165";s:2:"WX";s:3:"556";s:1:"N";s:3:"yen";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:1:"0";i:2;s:3:"699";i:3;s:3:"688";}}i:166;a:4:{s:1:"C";s:3:"166";s:2:"WX";s:3:"556";s:1:"N";s:6:"florin";s:1:"B";a:4:{i:0;s:3:"-52";i:1;s:4:"-207";i:2;s:3:"654";i:3;s:3:"737";}}s:6:"florin";a:4:{s:1:"C";s:3:"166";s:2:"WX";s:3:"556";s:1:"N";s:6:"florin";s:1:"B";a:4:{i:0;s:3:"-52";i:1;s:4:"-207";i:2;s:3:"654";i:3;s:3:"737";}}i:167;a:4:{s:1:"C";s:3:"167";s:2:"WX";s:3:"556";s:1:"N";s:7:"section";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:4:"-191";i:2;s:3:"584";i:3;s:3:"737";}}s:7:"section";a:4:{s:1:"C";s:3:"167";s:2:"WX";s:3:"556";s:1:"N";s:7:"section";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:4:"-191";i:2;s:3:"584";i:3;s:3:"737";}}i:168;a:4:{s:1:"C";s:3:"168";s:2:"WX";s:3:"556";s:1:"N";s:8:"currency";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:2:"99";i:2;s:3:"646";i:3;s:3:"603";}}s:8:"currency";a:4:{s:1:"C";s:3:"168";s:2:"WX";s:3:"556";s:1:"N";s:8:"currency";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:2:"99";i:2;s:3:"646";i:3;s:3:"603";}}i:169;a:4:{s:1:"C";s:3:"169";s:2:"WX";s:3:"191";s:1:"N";s:11:"quotesingle";s:1:"B";a:4:{i:0;s:3:"157";i:1;s:3:"463";i:2;s:3:"285";i:3;s:3:"718";}}s:11:"quotesingle";a:4:{s:1:"C";s:3:"169";s:2:"WX";s:3:"191";s:1:"N";s:11:"quotesingle";s:1:"B";a:4:{i:0;s:3:"157";i:1;s:3:"463";i:2;s:3:"285";i:3;s:3:"718";}}i:170;a:4:{s:1:"C";s:3:"170";s:2:"WX";s:3:"333";s:1:"N";s:12:"quotedblleft";s:1:"B";a:4:{i:0;s:3:"138";i:1;s:3:"470";i:2;s:3:"461";i:3;s:3:"725";}}s:12:"quotedblleft";a:4:{s:1:"C";s:3:"170";s:2:"WX";s:3:"333";s:1:"N";s:12:"quotedblleft";s:1:"B";a:4:{i:0;s:3:"138";i:1;s:3:"470";i:2;s:3:"461";i:3;s:3:"725";}}i:171;a:4:{s:1:"C";s:3:"171";s:2:"WX";s:3:"556";s:1:"N";s:13:"guillemotleft";s:1:"B";a:4:{i:0;s:3:"146";i:1;s:3:"108";i:2;s:3:"554";i:3;s:3:"446";}}s:13:"guillemotleft";a:4:{s:1:"C";s:3:"171";s:2:"WX";s:3:"556";s:1:"N";s:13:"guillemotleft";s:1:"B";a:4:{i:0;s:3:"146";i:1;s:3:"108";i:2;s:3:"554";i:3;s:3:"446";}}i:172;a:4:{s:1:"C";s:3:"172";s:2:"WX";s:3:"333";s:1:"N";s:13:"guilsinglleft";s:1:"B";a:4:{i:0;s:3:"137";i:1;s:3:"108";i:2;s:3:"340";i:3;s:3:"446";}}s:13:"guilsinglleft";a:4:{s:1:"C";s:3:"172";s:2:"WX";s:3:"333";s:1:"N";s:13:"guilsinglleft";s:1:"B";a:4:{i:0;s:3:"137";i:1;s:3:"108";i:2;s:3:"340";i:3;s:3:"446";}}i:173;a:4:{s:1:"C";s:3:"173";s:2:"WX";s:3:"333";s:1:"N";s:14:"guilsinglright";s:1:"B";a:4:{i:0;s:3:"111";i:1;s:3:"108";i:2;s:3:"314";i:3;s:3:"446";}}s:14:"guilsinglright";a:4:{s:1:"C";s:3:"173";s:2:"WX";s:3:"333";s:1:"N";s:14:"guilsinglright";s:1:"B";a:4:{i:0;s:3:"111";i:1;s:3:"108";i:2;s:3:"314";i:3;s:3:"446";}}i:174;a:4:{s:1:"C";s:3:"174";s:2:"WX";s:3:"500";s:1:"N";s:2:"fi";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"587";i:3;s:3:"728";}}s:2:"fi";a:4:{s:1:"C";s:3:"174";s:2:"WX";s:3:"500";s:1:"N";s:2:"fi";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"587";i:3;s:3:"728";}}i:175;a:4:{s:1:"C";s:3:"175";s:2:"WX";s:3:"500";s:1:"N";s:2:"fl";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"585";i:3;s:3:"728";}}s:2:"fl";a:4:{s:1:"C";s:3:"175";s:2:"WX";s:3:"500";s:1:"N";s:2:"fl";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"585";i:3;s:3:"728";}}i:177;a:4:{s:1:"C";s:3:"177";s:2:"WX";s:3:"556";s:1:"N";s:6:"endash";s:1:"B";a:4:{i:0;s:2:"51";i:1;s:3:"240";i:2;s:3:"623";i:3;s:3:"313";}}s:6:"endash";a:4:{s:1:"C";s:3:"177";s:2:"WX";s:3:"556";s:1:"N";s:6:"endash";s:1:"B";a:4:{i:0;s:2:"51";i:1;s:3:"240";i:2;s:3:"623";i:3;s:3:"313";}}i:178;a:4:{s:1:"C";s:3:"178";s:2:"WX";s:3:"556";s:1:"N";s:6:"dagger";s:1:"B";a:4:{i:0;s:3:"135";i:1;s:4:"-159";i:2;s:3:"622";i:3;s:3:"718";}}s:6:"dagger";a:4:{s:1:"C";s:3:"178";s:2:"WX";s:3:"556";s:1:"N";s:6:"dagger";s:1:"B";a:4:{i:0;s:3:"135";i:1;s:4:"-159";i:2;s:3:"622";i:3;s:3:"718";}}i:179;a:4:{s:1:"C";s:3:"179";s:2:"WX";s:3:"556";s:1:"N";s:9:"daggerdbl";s:1:"B";a:4:{i:0;s:2:"52";i:1;s:4:"-159";i:2;s:3:"623";i:3;s:3:"718";}}s:9:"daggerdbl";a:4:{s:1:"C";s:3:"179";s:2:"WX";s:3:"556";s:1:"N";s:9:"daggerdbl";s:1:"B";a:4:{i:0;s:2:"52";i:1;s:4:"-159";i:2;s:3:"623";i:3;s:3:"718";}}i:180;a:4:{s:1:"C";s:3:"180";s:2:"WX";s:3:"278";s:1:"N";s:14:"periodcentered";s:1:"B";a:4:{i:0;s:3:"129";i:1;s:3:"190";i:2;s:3:"257";i:3;s:3:"315";}}s:14:"periodcentered";a:4:{s:1:"C";s:3:"180";s:2:"WX";s:3:"278";s:1:"N";s:14:"periodcentered";s:1:"B";a:4:{i:0;s:3:"129";i:1;s:3:"190";i:2;s:3:"257";i:3;s:3:"315";}}i:182;a:4:{s:1:"C";s:3:"182";s:2:"WX";s:3:"537";s:1:"N";s:9:"paragraph";s:1:"B";a:4:{i:0;s:3:"126";i:1;s:4:"-173";i:2;s:3:"650";i:3;s:3:"718";}}s:9:"paragraph";a:4:{s:1:"C";s:3:"182";s:2:"WX";s:3:"537";s:1:"N";s:9:"paragraph";s:1:"B";a:4:{i:0;s:3:"126";i:1;s:4:"-173";i:2;s:3:"650";i:3;s:3:"718";}}i:183;a:4:{s:1:"C";s:3:"183";s:2:"WX";s:3:"350";s:1:"N";s:6:"bullet";s:1:"B";a:4:{i:0;s:2:"91";i:1;s:3:"202";i:2;s:3:"413";i:3;s:3:"517";}}s:6:"bullet";a:4:{s:1:"C";s:3:"183";s:2:"WX";s:3:"350";s:1:"N";s:6:"bullet";s:1:"B";a:4:{i:0;s:2:"91";i:1;s:3:"202";i:2;s:3:"413";i:3;s:3:"517";}}i:184;a:4:{s:1:"C";s:3:"184";s:2:"WX";s:3:"222";s:1:"N";s:14:"quotesinglbase";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:4:"-149";i:2;s:3:"180";i:3;s:3:"106";}}s:14:"quotesinglbase";a:4:{s:1:"C";s:3:"184";s:2:"WX";s:3:"222";s:1:"N";s:14:"quotesinglbase";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:4:"-149";i:2;s:3:"180";i:3;s:3:"106";}}i:185;a:4:{s:1:"C";s:3:"185";s:2:"WX";s:3:"333";s:1:"N";s:12:"quotedblbase";s:1:"B";a:4:{i:0;s:2:"-6";i:1;s:4:"-149";i:2;s:3:"318";i:3;s:3:"106";}}s:12:"quotedblbase";a:4:{s:1:"C";s:3:"185";s:2:"WX";s:3:"333";s:1:"N";s:12:"quotedblbase";s:1:"B";a:4:{i:0;s:2:"-6";i:1;s:4:"-149";i:2;s:3:"318";i:3;s:3:"106";}}i:186;a:4:{s:1:"C";s:3:"186";s:2:"WX";s:3:"333";s:1:"N";s:13:"quotedblright";s:1:"B";a:4:{i:0;s:3:"124";i:1;s:3:"463";i:2;s:3:"448";i:3;s:3:"718";}}s:13:"quotedblright";a:4:{s:1:"C";s:3:"186";s:2:"WX";s:3:"333";s:1:"N";s:13:"quotedblright";s:1:"B";a:4:{i:0;s:3:"124";i:1;s:3:"463";i:2;s:3:"448";i:3;s:3:"718";}}i:187;a:4:{s:1:"C";s:3:"187";s:2:"WX";s:3:"556";s:1:"N";s:14:"guillemotright";s:1:"B";a:4:{i:0;s:3:"120";i:1;s:3:"108";i:2;s:3:"528";i:3;s:3:"446";}}s:14:"guillemotright";a:4:{s:1:"C";s:3:"187";s:2:"WX";s:3:"556";s:1:"N";s:14:"guillemotright";s:1:"B";a:4:{i:0;s:3:"120";i:1;s:3:"108";i:2;s:3:"528";i:3;s:3:"446";}}i:188;a:4:{s:1:"C";s:3:"188";s:2:"WX";s:4:"1000";s:1:"N";s:8:"ellipsis";s:1:"B";a:4:{i:0;s:3:"115";i:1;s:1:"0";i:2;s:3:"908";i:3;s:3:"106";}}s:8:"ellipsis";a:4:{s:1:"C";s:3:"188";s:2:"WX";s:4:"1000";s:1:"N";s:8:"ellipsis";s:1:"B";a:4:{i:0;s:3:"115";i:1;s:1:"0";i:2;s:3:"908";i:3;s:3:"106";}}i:189;a:4:{s:1:"C";s:3:"189";s:2:"WX";s:4:"1000";s:1:"N";s:11:"perthousand";s:1:"B";a:4:{i:0;s:2:"88";i:1;s:3:"-19";i:2;s:4:"1029";i:3;s:3:"703";}}s:11:"perthousand";a:4:{s:1:"C";s:3:"189";s:2:"WX";s:4:"1000";s:1:"N";s:11:"perthousand";s:1:"B";a:4:{i:0;s:2:"88";i:1;s:3:"-19";i:2;s:4:"1029";i:3;s:3:"703";}}i:191;a:4:{s:1:"C";s:3:"191";s:2:"WX";s:3:"611";s:1:"N";s:12:"questiondown";s:1:"B";a:4:{i:0;s:2:"85";i:1;s:4:"-201";i:2;s:3:"534";i:3;s:3:"525";}}s:12:"questiondown";a:4:{s:1:"C";s:3:"191";s:2:"WX";s:3:"611";s:1:"N";s:12:"questiondown";s:1:"B";a:4:{i:0;s:2:"85";i:1;s:4:"-201";i:2;s:3:"534";i:3;s:3:"525";}}i:193;a:4:{s:1:"C";s:3:"193";s:2:"WX";s:3:"333";s:1:"N";s:5:"grave";s:1:"B";a:4:{i:0;s:3:"170";i:1;s:3:"593";i:2;s:3:"337";i:3;s:3:"734";}}s:5:"grave";a:4:{s:1:"C";s:3:"193";s:2:"WX";s:3:"333";s:1:"N";s:5:"grave";s:1:"B";a:4:{i:0;s:3:"170";i:1;s:3:"593";i:2;s:3:"337";i:3;s:3:"734";}}i:194;a:4:{s:1:"C";s:3:"194";s:2:"WX";s:3:"333";s:1:"N";s:5:"acute";s:1:"B";a:4:{i:0;s:3:"248";i:1;s:3:"593";i:2;s:3:"475";i:3;s:3:"734";}}s:5:"acute";a:4:{s:1:"C";s:3:"194";s:2:"WX";s:3:"333";s:1:"N";s:5:"acute";s:1:"B";a:4:{i:0;s:3:"248";i:1;s:3:"593";i:2;s:3:"475";i:3;s:3:"734";}}i:195;a:4:{s:1:"C";s:3:"195";s:2:"WX";s:3:"333";s:1:"N";s:10:"circumflex";s:1:"B";a:4:{i:0;s:3:"147";i:1;s:3:"593";i:2;s:3:"438";i:3;s:3:"734";}}s:10:"circumflex";a:4:{s:1:"C";s:3:"195";s:2:"WX";s:3:"333";s:1:"N";s:10:"circumflex";s:1:"B";a:4:{i:0;s:3:"147";i:1;s:3:"593";i:2;s:3:"438";i:3;s:3:"734";}}i:196;a:4:{s:1:"C";s:3:"196";s:2:"WX";s:3:"333";s:1:"N";s:5:"tilde";s:1:"B";a:4:{i:0;s:3:"125";i:1;s:3:"606";i:2;s:3:"490";i:3;s:3:"722";}}s:5:"tilde";a:4:{s:1:"C";s:3:"196";s:2:"WX";s:3:"333";s:1:"N";s:5:"tilde";s:1:"B";a:4:{i:0;s:3:"125";i:1;s:3:"606";i:2;s:3:"490";i:3;s:3:"722";}}i:197;a:4:{s:1:"C";s:3:"197";s:2:"WX";s:3:"333";s:1:"N";s:6:"macron";s:1:"B";a:4:{i:0;s:3:"143";i:1;s:3:"627";i:2;s:3:"468";i:3;s:3:"684";}}s:6:"macron";a:4:{s:1:"C";s:3:"197";s:2:"WX";s:3:"333";s:1:"N";s:6:"macron";s:1:"B";a:4:{i:0;s:3:"143";i:1;s:3:"627";i:2;s:3:"468";i:3;s:3:"684";}}i:198;a:4:{s:1:"C";s:3:"198";s:2:"WX";s:3:"333";s:1:"N";s:5:"breve";s:1:"B";a:4:{i:0;s:3:"167";i:1;s:3:"595";i:2;s:3:"476";i:3;s:3:"731";}}s:5:"breve";a:4:{s:1:"C";s:3:"198";s:2:"WX";s:3:"333";s:1:"N";s:5:"breve";s:1:"B";a:4:{i:0;s:3:"167";i:1;s:3:"595";i:2;s:3:"476";i:3;s:3:"731";}}i:199;a:4:{s:1:"C";s:3:"199";s:2:"WX";s:3:"333";s:1:"N";s:9:"dotaccent";s:1:"B";a:4:{i:0;s:3:"249";i:1;s:3:"604";i:2;s:3:"362";i:3;s:3:"706";}}s:9:"dotaccent";a:4:{s:1:"C";s:3:"199";s:2:"WX";s:3:"333";s:1:"N";s:9:"dotaccent";s:1:"B";a:4:{i:0;s:3:"249";i:1;s:3:"604";i:2;s:3:"362";i:3;s:3:"706";}}i:200;a:4:{s:1:"C";s:3:"200";s:2:"WX";s:3:"333";s:1:"N";s:8:"dieresis";s:1:"B";a:4:{i:0;s:3:"168";i:1;s:3:"604";i:2;s:3:"443";i:3;s:3:"706";}}s:8:"dieresis";a:4:{s:1:"C";s:3:"200";s:2:"WX";s:3:"333";s:1:"N";s:8:"dieresis";s:1:"B";a:4:{i:0;s:3:"168";i:1;s:3:"604";i:2;s:3:"443";i:3;s:3:"706";}}i:202;a:4:{s:1:"C";s:3:"202";s:2:"WX";s:3:"333";s:1:"N";s:4:"ring";s:1:"B";a:4:{i:0;s:3:"214";i:1;s:3:"572";i:2;s:3:"402";i:3;s:3:"756";}}s:4:"ring";a:4:{s:1:"C";s:3:"202";s:2:"WX";s:3:"333";s:1:"N";s:4:"ring";s:1:"B";a:4:{i:0;s:3:"214";i:1;s:3:"572";i:2;s:3:"402";i:3;s:3:"756";}}i:203;a:4:{s:1:"C";s:3:"203";s:2:"WX";s:3:"333";s:1:"N";s:7:"cedilla";s:1:"B";a:4:{i:0;s:1:"2";i:1;s:4:"-225";i:2;s:3:"232";i:3;s:1:"0";}}s:7:"cedilla";a:4:{s:1:"C";s:3:"203";s:2:"WX";s:3:"333";s:1:"N";s:7:"cedilla";s:1:"B";a:4:{i:0;s:1:"2";i:1;s:4:"-225";i:2;s:3:"232";i:3;s:1:"0";}}i:205;a:4:{s:1:"C";s:3:"205";s:2:"WX";s:3:"333";s:1:"N";s:12:"hungarumlaut";s:1:"B";a:4:{i:0;s:3:"157";i:1;s:3:"593";i:2;s:3:"565";i:3;s:3:"734";}}s:12:"hungarumlaut";a:4:{s:1:"C";s:3:"205";s:2:"WX";s:3:"333";s:1:"N";s:12:"hungarumlaut";s:1:"B";a:4:{i:0;s:3:"157";i:1;s:3:"593";i:2;s:3:"565";i:3;s:3:"734";}}i:206;a:4:{s:1:"C";s:3:"206";s:2:"WX";s:3:"333";s:1:"N";s:6:"ogonek";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:4:"-225";i:2;s:3:"249";i:3;s:1:"0";}}s:6:"ogonek";a:4:{s:1:"C";s:3:"206";s:2:"WX";s:3:"333";s:1:"N";s:6:"ogonek";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:4:"-225";i:2;s:3:"249";i:3;s:1:"0";}}i:207;a:4:{s:1:"C";s:3:"207";s:2:"WX";s:3:"333";s:1:"N";s:5:"caron";s:1:"B";a:4:{i:0;s:3:"177";i:1;s:3:"593";i:2;s:3:"468";i:3;s:3:"734";}}s:5:"caron";a:4:{s:1:"C";s:3:"207";s:2:"WX";s:3:"333";s:1:"N";s:5:"caron";s:1:"B";a:4:{i:0;s:3:"177";i:1;s:3:"593";i:2;s:3:"468";i:3;s:3:"734";}}i:208;a:4:{s:1:"C";s:3:"208";s:2:"WX";s:4:"1000";s:1:"N";s:6:"emdash";s:1:"B";a:4:{i:0;s:2:"51";i:1;s:3:"240";i:2;s:4:"1067";i:3;s:3:"313";}}s:6:"emdash";a:4:{s:1:"C";s:3:"208";s:2:"WX";s:4:"1000";s:1:"N";s:6:"emdash";s:1:"B";a:4:{i:0;s:2:"51";i:1;s:3:"240";i:2;s:4:"1067";i:3;s:3:"313";}}i:225;a:4:{s:1:"C";s:3:"225";s:2:"WX";s:4:"1000";s:1:"N";s:2:"AE";s:1:"B";a:4:{i:0;s:1:"8";i:1;s:1:"0";i:2;s:4:"1097";i:3;s:3:"718";}}s:2:"AE";a:4:{s:1:"C";s:3:"225";s:2:"WX";s:4:"1000";s:1:"N";s:2:"AE";s:1:"B";a:4:{i:0;s:1:"8";i:1;s:1:"0";i:2;s:4:"1097";i:3;s:3:"718";}}i:227;a:4:{s:1:"C";s:3:"227";s:2:"WX";s:3:"370";s:1:"N";s:11:"ordfeminine";s:1:"B";a:4:{i:0;s:3:"127";i:1;s:3:"405";i:2;s:3:"449";i:3;s:3:"737";}}s:11:"ordfeminine";a:4:{s:1:"C";s:3:"227";s:2:"WX";s:3:"370";s:1:"N";s:11:"ordfeminine";s:1:"B";a:4:{i:0;s:3:"127";i:1;s:3:"405";i:2;s:3:"449";i:3;s:3:"737";}}i:232;a:4:{s:1:"C";s:3:"232";s:2:"WX";s:3:"556";s:1:"N";s:6:"Lslash";s:1:"B";a:4:{i:0;s:2:"41";i:1;s:1:"0";i:2;s:3:"555";i:3;s:3:"718";}}s:6:"Lslash";a:4:{s:1:"C";s:3:"232";s:2:"WX";s:3:"556";s:1:"N";s:6:"Lslash";s:1:"B";a:4:{i:0;s:2:"41";i:1;s:1:"0";i:2;s:3:"555";i:3;s:3:"718";}}i:233;a:4:{s:1:"C";s:3:"233";s:2:"WX";s:3:"778";s:1:"N";s:6:"Oslash";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:3:"-19";i:2;s:3:"890";i:3;s:3:"737";}}s:6:"Oslash";a:4:{s:1:"C";s:3:"233";s:2:"WX";s:3:"778";s:1:"N";s:6:"Oslash";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:3:"-19";i:2;s:3:"890";i:3;s:3:"737";}}i:234;a:4:{s:1:"C";s:3:"234";s:2:"WX";s:4:"1000";s:1:"N";s:2:"OE";s:1:"B";a:4:{i:0;s:2:"98";i:1;s:3:"-19";i:2;s:4:"1116";i:3;s:3:"737";}}s:2:"OE";a:4:{s:1:"C";s:3:"234";s:2:"WX";s:4:"1000";s:1:"N";s:2:"OE";s:1:"B";a:4:{i:0;s:2:"98";i:1;s:3:"-19";i:2;s:4:"1116";i:3;s:3:"737";}}i:235;a:4:{s:1:"C";s:3:"235";s:2:"WX";s:3:"365";s:1:"N";s:12:"ordmasculine";s:1:"B";a:4:{i:0;s:3:"141";i:1;s:3:"405";i:2;s:3:"468";i:3;s:3:"737";}}s:12:"ordmasculine";a:4:{s:1:"C";s:3:"235";s:2:"WX";s:3:"365";s:1:"N";s:12:"ordmasculine";s:1:"B";a:4:{i:0;s:3:"141";i:1;s:3:"405";i:2;s:3:"468";i:3;s:3:"737";}}i:241;a:4:{s:1:"C";s:3:"241";s:2:"WX";s:3:"889";s:1:"N";s:2:"ae";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:3:"-15";i:2;s:3:"909";i:3;s:3:"538";}}s:2:"ae";a:4:{s:1:"C";s:3:"241";s:2:"WX";s:3:"889";s:1:"N";s:2:"ae";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:3:"-15";i:2;s:3:"909";i:3;s:3:"538";}}i:245;a:4:{s:1:"C";s:3:"245";s:2:"WX";s:3:"278";s:1:"N";s:8:"dotlessi";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:1:"0";i:2;s:3:"294";i:3;s:3:"523";}}s:8:"dotlessi";a:4:{s:1:"C";s:3:"245";s:2:"WX";s:3:"278";s:1:"N";s:8:"dotlessi";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:1:"0";i:2;s:3:"294";i:3;s:3:"523";}}i:248;a:4:{s:1:"C";s:3:"248";s:2:"WX";s:3:"222";s:1:"N";s:6:"lslash";s:1:"B";a:4:{i:0;s:2:"41";i:1;s:1:"0";i:2;s:3:"347";i:3;s:3:"718";}}s:6:"lslash";a:4:{s:1:"C";s:3:"248";s:2:"WX";s:3:"222";s:1:"N";s:6:"lslash";s:1:"B";a:4:{i:0;s:2:"41";i:1;s:1:"0";i:2;s:3:"347";i:3;s:3:"718";}}i:249;a:4:{s:1:"C";s:3:"249";s:2:"WX";s:3:"611";s:1:"N";s:6:"oslash";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:3:"-22";i:2;s:3:"647";i:3;s:3:"545";}}s:6:"oslash";a:4:{s:1:"C";s:3:"249";s:2:"WX";s:3:"611";s:1:"N";s:6:"oslash";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:3:"-22";i:2;s:3:"647";i:3;s:3:"545";}}i:250;a:4:{s:1:"C";s:3:"250";s:2:"WX";s:3:"944";s:1:"N";s:2:"oe";s:1:"B";a:4:{i:0;s:2:"83";i:1;s:3:"-15";i:2;s:3:"964";i:3;s:3:"538";}}s:2:"oe";a:4:{s:1:"C";s:3:"250";s:2:"WX";s:3:"944";s:1:"N";s:2:"oe";s:1:"B";a:4:{i:0;s:2:"83";i:1;s:3:"-15";i:2;s:3:"964";i:3;s:3:"538";}}i:251;a:4:{s:1:"C";s:3:"251";s:2:"WX";s:3:"611";s:1:"N";s:10:"germandbls";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:3:"-15";i:2;s:3:"658";i:3;s:3:"728";}}s:10:"germandbls";a:4:{s:1:"C";s:3:"251";s:2:"WX";s:3:"611";s:1:"N";s:10:"germandbls";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:3:"-15";i:2;s:3:"658";i:3;s:3:"728";}}s:9:"Idieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:9:"Idieresis";s:1:"B";a:4:{i:0;s:2:"91";i:1;s:1:"0";i:2;s:3:"458";i:3;s:3:"901";}}s:6:"eacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"eacute";s:1:"B";a:4:{i:0;s:2:"84";i:1;s:3:"-15";i:2;s:3:"587";i:3;s:3:"734";}}s:6:"abreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"abreve";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:3:"-15";i:2;s:3:"578";i:3;s:3:"731";}}s:13:"uhungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:13:"uhungarumlaut";s:1:"B";a:4:{i:0;s:2:"94";i:1;s:3:"-15";i:2;s:3:"677";i:3;s:3:"734";}}s:6:"ecaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"ecaron";s:1:"B";a:4:{i:0;s:2:"84";i:1;s:3:"-15";i:2;s:3:"580";i:3;s:3:"734";}}s:9:"Ydieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:9:"Ydieresis";s:1:"B";a:4:{i:0;s:3:"167";i:1;s:1:"0";i:2;s:3:"806";i:3;s:3:"901";}}s:6:"divide";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"584";s:1:"N";s:6:"divide";s:1:"B";a:4:{i:0;s:2:"85";i:1;s:3:"-19";i:2;s:3:"606";i:3;s:3:"524";}}s:6:"Yacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Yacute";s:1:"B";a:4:{i:0;s:3:"167";i:1;s:1:"0";i:2;s:3:"806";i:3;s:3:"929";}}s:11:"Acircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:11:"Acircumflex";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"654";i:3;s:3:"929";}}s:6:"aacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"aacute";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:3:"-15";i:2;s:3:"587";i:3;s:3:"734";}}s:11:"Ucircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:11:"Ucircumflex";s:1:"B";a:4:{i:0;s:3:"123";i:1;s:3:"-19";i:2;s:3:"797";i:3;s:3:"929";}}s:6:"yacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"yacute";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:4:"-214";i:2;s:3:"600";i:3;s:3:"734";}}s:12:"scommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:12:"scommaaccent";s:1:"B";a:4:{i:0;s:2:"63";i:1;s:4:"-225";i:2;s:3:"529";i:3;s:3:"538";}}s:11:"ecircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:11:"ecircumflex";s:1:"B";a:4:{i:0;s:2:"84";i:1;s:3:"-15";i:2;s:3:"578";i:3;s:3:"734";}}s:5:"Uring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:5:"Uring";s:1:"B";a:4:{i:0;s:3:"123";i:1;s:3:"-19";i:2;s:3:"797";i:3;s:3:"931";}}s:9:"Udieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:9:"Udieresis";s:1:"B";a:4:{i:0;s:3:"123";i:1;s:3:"-19";i:2;s:3:"797";i:3;s:3:"901";}}s:7:"aogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:7:"aogonek";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:4:"-220";i:2;s:3:"559";i:3;s:3:"538";}}s:6:"Uacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Uacute";s:1:"B";a:4:{i:0;s:3:"123";i:1;s:3:"-19";i:2;s:3:"797";i:3;s:3:"929";}}s:7:"uogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:7:"uogonek";s:1:"B";a:4:{i:0;s:2:"94";i:1;s:4:"-225";i:2;s:3:"600";i:3;s:3:"523";}}s:9:"Edieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:9:"Edieresis";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"762";i:3;s:3:"901";}}s:6:"Dcroat";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Dcroat";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"764";i:3;s:3:"718";}}s:11:"commaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"250";s:1:"N";s:11:"commaaccent";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:4:"-225";i:2;s:3:"172";i:3;s:3:"-40";}}s:9:"copyright";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"737";s:1:"N";s:9:"copyright";s:1:"B";a:4:{i:0;s:2:"54";i:1;s:3:"-19";i:2;s:3:"837";i:3;s:3:"737";}}s:7:"Emacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:7:"Emacron";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"762";i:3;s:3:"879";}}s:6:"ccaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"ccaron";s:1:"B";a:4:{i:0;s:2:"74";i:1;s:3:"-15";i:2;s:3:"553";i:3;s:3:"734";}}s:5:"aring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:5:"aring";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:3:"-15";i:2;s:3:"559";i:3;s:3:"756";}}s:12:"Ncommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:12:"Ncommaaccent";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:4:"-225";i:2;s:3:"799";i:3;s:3:"718";}}s:6:"lacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"222";s:1:"N";s:6:"lacute";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:1:"0";i:2;s:3:"461";i:3;s:3:"929";}}s:6:"agrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"agrave";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:3:"-15";i:2;s:3:"559";i:3;s:3:"734";}}s:12:"Tcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:12:"Tcommaaccent";s:1:"B";a:4:{i:0;s:3:"148";i:1;s:4:"-225";i:2;s:3:"750";i:3;s:3:"718";}}s:6:"Cacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Cacute";s:1:"B";a:4:{i:0;s:3:"108";i:1;s:3:"-19";i:2;s:3:"782";i:3;s:3:"929";}}s:6:"atilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"atilde";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:3:"-15";i:2;s:3:"592";i:3;s:3:"722";}}s:10:"Edotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:10:"Edotaccent";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"762";i:3;s:3:"901";}}s:6:"scaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"scaron";s:1:"B";a:4:{i:0;s:2:"63";i:1;s:3:"-15";i:2;s:3:"552";i:3;s:3:"734";}}s:8:"scedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:8:"scedilla";s:1:"B";a:4:{i:0;s:2:"63";i:1;s:4:"-225";i:2;s:3:"529";i:3;s:3:"538";}}s:6:"iacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:6:"iacute";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:1:"0";i:2;s:3:"448";i:3;s:3:"734";}}s:7:"lozenge";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"471";s:1:"N";s:7:"lozenge";s:1:"B";a:4:{i:0;s:2:"88";i:1;s:1:"0";i:2;s:3:"540";i:3;s:3:"728";}}s:6:"Rcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Rcaron";s:1:"B";a:4:{i:0;s:2:"88";i:1;s:1:"0";i:2;s:3:"773";i:3;s:3:"929";}}s:12:"Gcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:12:"Gcommaaccent";s:1:"B";a:4:{i:0;s:3:"111";i:1;s:4:"-225";i:2;s:3:"799";i:3;s:3:"737";}}s:11:"ucircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:11:"ucircumflex";s:1:"B";a:4:{i:0;s:2:"94";i:1;s:3:"-15";i:2;s:3:"600";i:3;s:3:"734";}}s:11:"acircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:11:"acircumflex";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:3:"-15";i:2;s:3:"559";i:3;s:3:"734";}}s:7:"Amacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:7:"Amacron";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"677";i:3;s:3:"879";}}s:6:"rcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"333";s:1:"N";s:6:"rcaron";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"508";i:3;s:3:"734";}}s:8:"ccedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:8:"ccedilla";s:1:"B";a:4:{i:0;s:2:"74";i:1;s:4:"-225";i:2;s:3:"553";i:3;s:3:"538";}}s:10:"Zdotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:10:"Zdotaccent";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:1:"0";i:2;s:3:"741";i:3;s:3:"901";}}s:5:"Thorn";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:5:"Thorn";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"712";i:3;s:3:"718";}}s:7:"Omacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:7:"Omacron";s:1:"B";a:4:{i:0;s:3:"105";i:1;s:3:"-19";i:2;s:3:"826";i:3;s:3:"879";}}s:6:"Racute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Racute";s:1:"B";a:4:{i:0;s:2:"88";i:1;s:1:"0";i:2;s:3:"773";i:3;s:3:"929";}}s:6:"Sacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Sacute";s:1:"B";a:4:{i:0;s:2:"90";i:1;s:3:"-19";i:2;s:3:"713";i:3;s:3:"929";}}s:6:"dcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"643";s:1:"N";s:6:"dcaron";s:1:"B";a:4:{i:0;s:2:"84";i:1;s:3:"-15";i:2;s:3:"808";i:3;s:3:"718";}}s:7:"Umacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:7:"Umacron";s:1:"B";a:4:{i:0;s:3:"123";i:1;s:3:"-19";i:2;s:3:"797";i:3;s:3:"879";}}s:5:"uring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:5:"uring";s:1:"B";a:4:{i:0;s:2:"94";i:1;s:3:"-15";i:2;s:3:"600";i:3;s:3:"756";}}s:13:"threesuperior";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"333";s:1:"N";s:13:"threesuperior";s:1:"B";a:4:{i:0;s:2:"90";i:1;s:3:"270";i:2;s:3:"436";i:3;s:3:"703";}}s:6:"Ograve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:6:"Ograve";s:1:"B";a:4:{i:0;s:3:"105";i:1;s:3:"-19";i:2;s:3:"826";i:3;s:3:"929";}}s:6:"Agrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Agrave";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"654";i:3;s:3:"929";}}s:6:"Abreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Abreve";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"685";i:3;s:3:"926";}}s:8:"multiply";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"584";s:1:"N";s:8:"multiply";s:1:"B";a:4:{i:0;s:2:"50";i:1;s:1:"0";i:2;s:3:"642";i:3;s:3:"506";}}s:6:"uacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"uacute";s:1:"B";a:4:{i:0;s:2:"94";i:1;s:3:"-15";i:2;s:3:"600";i:3;s:3:"734";}}s:6:"Tcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"Tcaron";s:1:"B";a:4:{i:0;s:3:"148";i:1;s:1:"0";i:2;s:3:"750";i:3;s:3:"929";}}s:11:"partialdiff";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"476";s:1:"N";s:11:"partialdiff";s:1:"B";a:4:{i:0;s:2:"41";i:1;s:3:"-38";i:2;s:3:"550";i:3;s:3:"714";}}s:9:"ydieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:9:"ydieresis";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:4:"-214";i:2;s:3:"600";i:3;s:3:"706";}}s:6:"Nacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Nacute";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"799";i:3;s:3:"929";}}s:11:"icircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:11:"icircumflex";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:1:"0";i:2;s:3:"411";i:3;s:3:"734";}}s:11:"Ecircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:11:"Ecircumflex";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"762";i:3;s:3:"929";}}s:9:"adieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:9:"adieresis";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:3:"-15";i:2;s:3:"559";i:3;s:3:"706";}}s:9:"edieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:9:"edieresis";s:1:"B";a:4:{i:0;s:2:"84";i:1;s:3:"-15";i:2;s:3:"578";i:3;s:3:"706";}}s:6:"cacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"cacute";s:1:"B";a:4:{i:0;s:2:"74";i:1;s:3:"-15";i:2;s:3:"559";i:3;s:3:"734";}}s:6:"nacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"nacute";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:1:"0";i:2;s:3:"587";i:3;s:3:"734";}}s:7:"umacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:7:"umacron";s:1:"B";a:4:{i:0;s:2:"94";i:1;s:3:"-15";i:2;s:3:"600";i:3;s:3:"684";}}s:6:"Ncaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Ncaron";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"799";i:3;s:3:"929";}}s:6:"Iacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:6:"Iacute";s:1:"B";a:4:{i:0;s:2:"91";i:1;s:1:"0";i:2;s:3:"489";i:3;s:3:"929";}}s:9:"plusminus";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"584";s:1:"N";s:9:"plusminus";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:1:"0";i:2;s:3:"618";i:3;s:3:"506";}}s:9:"brokenbar";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"260";s:1:"N";s:9:"brokenbar";s:1:"B";a:4:{i:0;s:2:"62";i:1;s:4:"-150";i:2;s:3:"316";i:3;s:3:"700";}}s:10:"registered";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"737";s:1:"N";s:10:"registered";s:1:"B";a:4:{i:0;s:2:"54";i:1;s:3:"-19";i:2;s:3:"837";i:3;s:3:"737";}}s:6:"Gbreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:6:"Gbreve";s:1:"B";a:4:{i:0;s:3:"111";i:1;s:3:"-19";i:2;s:3:"799";i:3;s:3:"926";}}s:10:"Idotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:10:"Idotaccent";s:1:"B";a:4:{i:0;s:2:"91";i:1;s:1:"0";i:2;s:3:"377";i:3;s:3:"901";}}s:9:"summation";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"summation";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:3:"-10";i:2;s:3:"671";i:3;s:3:"706";}}s:6:"Egrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Egrave";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"762";i:3;s:3:"929";}}s:6:"racute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"333";s:1:"N";s:6:"racute";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"475";i:3;s:3:"734";}}s:7:"omacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:7:"omacron";s:1:"B";a:4:{i:0;s:2:"83";i:1;s:3:"-14";i:2;s:3:"585";i:3;s:3:"684";}}s:6:"Zacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"Zacute";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:1:"0";i:2;s:3:"741";i:3;s:3:"929";}}s:6:"Zcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"Zcaron";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:1:"0";i:2;s:3:"741";i:3;s:3:"929";}}s:12:"greaterequal";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"549";s:1:"N";s:12:"greaterequal";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"620";i:3;s:3:"674";}}s:3:"Eth";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:3:"Eth";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:1:"0";i:2;s:3:"764";i:3;s:3:"718";}}s:8:"Ccedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:8:"Ccedilla";s:1:"B";a:4:{i:0;s:3:"108";i:1;s:4:"-225";i:2;s:3:"782";i:3;s:3:"737";}}s:12:"lcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"222";s:1:"N";s:12:"lcommaaccent";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:4:"-225";i:2;s:3:"308";i:3;s:3:"718";}}s:6:"tcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"317";s:1:"N";s:6:"tcaron";s:1:"B";a:4:{i:0;s:3:"102";i:1;s:2:"-7";i:2;s:3:"501";i:3;s:3:"808";}}s:7:"eogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:7:"eogonek";s:1:"B";a:4:{i:0;s:2:"84";i:1;s:4:"-225";i:2;s:3:"578";i:3;s:3:"538";}}s:7:"Uogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:7:"Uogonek";s:1:"B";a:4:{i:0;s:3:"123";i:1;s:4:"-225";i:2;s:3:"797";i:3;s:3:"718";}}s:6:"Aacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Aacute";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"683";i:3;s:3:"929";}}s:9:"Adieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:9:"Adieresis";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"654";i:3;s:3:"901";}}s:6:"egrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"egrave";s:1:"B";a:4:{i:0;s:2:"84";i:1;s:3:"-15";i:2;s:3:"578";i:3;s:3:"734";}}s:6:"zacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"zacute";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:1:"0";i:2;s:3:"571";i:3;s:3:"734";}}s:7:"iogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"222";s:1:"N";s:7:"iogonek";s:1:"B";a:4:{i:0;s:3:"-61";i:1;s:4:"-225";i:2;s:3:"308";i:3;s:3:"718";}}s:6:"Oacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:6:"Oacute";s:1:"B";a:4:{i:0;s:3:"105";i:1;s:3:"-19";i:2;s:3:"826";i:3;s:3:"929";}}s:6:"oacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"oacute";s:1:"B";a:4:{i:0;s:2:"83";i:1;s:3:"-14";i:2;s:3:"587";i:3;s:3:"734";}}s:7:"amacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:7:"amacron";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:3:"-15";i:2;s:3:"580";i:3;s:3:"684";}}s:6:"sacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"sacute";s:1:"B";a:4:{i:0;s:2:"63";i:1;s:3:"-15";i:2;s:3:"559";i:3;s:3:"734";}}s:9:"idieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:9:"idieresis";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:1:"0";i:2;s:3:"416";i:3;s:3:"706";}}s:11:"Ocircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:11:"Ocircumflex";s:1:"B";a:4:{i:0;s:3:"105";i:1;s:3:"-19";i:2;s:3:"826";i:3;s:3:"929";}}s:6:"Ugrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Ugrave";s:1:"B";a:4:{i:0;s:3:"123";i:1;s:3:"-19";i:2;s:3:"797";i:3;s:3:"929";}}s:5:"Delta";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"612";s:1:"N";s:5:"Delta";s:1:"B";a:4:{i:0;s:1:"6";i:1;s:1:"0";i:2;s:3:"608";i:3;s:3:"688";}}s:5:"thorn";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:5:"thorn";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:4:"-207";i:2;s:3:"584";i:3;s:3:"718";}}s:11:"twosuperior";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"333";s:1:"N";s:11:"twosuperior";s:1:"B";a:4:{i:0;s:2:"64";i:1;s:3:"281";i:2;s:3:"449";i:3;s:3:"703";}}s:9:"Odieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:9:"Odieresis";s:1:"B";a:4:{i:0;s:3:"105";i:1;s:3:"-19";i:2;s:3:"826";i:3;s:3:"901";}}s:2:"mu";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:2:"mu";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:4:"-207";i:2;s:3:"600";i:3;s:3:"523";}}s:6:"igrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:6:"igrave";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:1:"0";i:2;s:3:"310";i:3;s:3:"734";}}s:13:"ohungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:13:"ohungarumlaut";s:1:"B";a:4:{i:0;s:2:"83";i:1;s:3:"-14";i:2;s:3:"677";i:3;s:3:"734";}}s:7:"Eogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:7:"Eogonek";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:4:"-220";i:2;s:3:"762";i:3;s:3:"718";}}s:6:"dcroat";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"dcroat";s:1:"B";a:4:{i:0;s:2:"84";i:1;s:3:"-15";i:2;s:3:"689";i:3;s:3:"718";}}s:13:"threequarters";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"834";s:1:"N";s:13:"threequarters";s:1:"B";a:4:{i:0;s:3:"130";i:1;s:3:"-19";i:2;s:3:"861";i:3;s:3:"703";}}s:8:"Scedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:8:"Scedilla";s:1:"B";a:4:{i:0;s:2:"90";i:1;s:4:"-225";i:2;s:3:"713";i:3;s:3:"737";}}s:6:"lcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"299";s:1:"N";s:6:"lcaron";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:1:"0";i:2;s:3:"464";i:3;s:3:"718";}}s:12:"Kcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:12:"Kcommaaccent";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:4:"-225";i:2;s:3:"808";i:3;s:3:"718";}}s:6:"Lacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"Lacute";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"555";i:3;s:3:"929";}}s:9:"trademark";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:4:"1000";s:1:"N";s:9:"trademark";s:1:"B";a:4:{i:0;s:3:"186";i:1;s:3:"306";i:2;s:4:"1056";i:3;s:3:"718";}}s:10:"edotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:10:"edotaccent";s:1:"B";a:4:{i:0;s:2:"84";i:1;s:3:"-15";i:2;s:3:"578";i:3;s:3:"706";}}s:6:"Igrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:6:"Igrave";s:1:"B";a:4:{i:0;s:2:"91";i:1;s:1:"0";i:2;s:3:"351";i:3;s:3:"929";}}s:7:"Imacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:7:"Imacron";s:1:"B";a:4:{i:0;s:2:"91";i:1;s:1:"0";i:2;s:3:"483";i:3;s:3:"879";}}s:6:"Lcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"Lcaron";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"570";i:3;s:3:"718";}}s:7:"onehalf";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"834";s:1:"N";s:7:"onehalf";s:1:"B";a:4:{i:0;s:3:"114";i:1;s:3:"-19";i:2;s:3:"839";i:3;s:3:"703";}}s:9:"lessequal";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"549";s:1:"N";s:9:"lessequal";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"666";i:3;s:3:"674";}}s:11:"ocircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:11:"ocircumflex";s:1:"B";a:4:{i:0;s:2:"83";i:1;s:3:"-14";i:2;s:3:"585";i:3;s:3:"734";}}s:6:"ntilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"ntilde";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:1:"0";i:2;s:3:"592";i:3;s:3:"722";}}s:13:"Uhungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:13:"Uhungarumlaut";s:1:"B";a:4:{i:0;s:3:"123";i:1;s:3:"-19";i:2;s:3:"801";i:3;s:3:"929";}}s:6:"Eacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Eacute";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"762";i:3;s:3:"929";}}s:7:"emacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:7:"emacron";s:1:"B";a:4:{i:0;s:2:"84";i:1;s:3:"-15";i:2;s:3:"580";i:3;s:3:"684";}}s:6:"gbreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"gbreve";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:4:"-220";i:2;s:3:"610";i:3;s:3:"731";}}s:10:"onequarter";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"834";s:1:"N";s:10:"onequarter";s:1:"B";a:4:{i:0;s:3:"150";i:1;s:3:"-19";i:2;s:3:"802";i:3;s:3:"703";}}s:6:"Scaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Scaron";s:1:"B";a:4:{i:0;s:2:"90";i:1;s:3:"-19";i:2;s:3:"713";i:3;s:3:"929";}}s:12:"Scommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:12:"Scommaaccent";s:1:"B";a:4:{i:0;s:2:"90";i:1;s:4:"-225";i:2;s:3:"713";i:3;s:3:"737";}}s:13:"Ohungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:13:"Ohungarumlaut";s:1:"B";a:4:{i:0;s:3:"105";i:1;s:3:"-19";i:2;s:3:"829";i:3;s:3:"929";}}s:6:"degree";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"400";s:1:"N";s:6:"degree";s:1:"B";a:4:{i:0;s:3:"169";i:1;s:3:"411";i:2;s:3:"468";i:3;s:3:"703";}}s:6:"ograve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"ograve";s:1:"B";a:4:{i:0;s:2:"83";i:1;s:3:"-14";i:2;s:3:"585";i:3;s:3:"734";}}s:6:"Ccaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Ccaron";s:1:"B";a:4:{i:0;s:3:"108";i:1;s:3:"-19";i:2;s:3:"782";i:3;s:3:"929";}}s:6:"ugrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"ugrave";s:1:"B";a:4:{i:0;s:2:"94";i:1;s:3:"-15";i:2;s:3:"600";i:3;s:3:"734";}}s:7:"radical";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"453";s:1:"N";s:7:"radical";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:3:"-80";i:2;s:3:"617";i:3;s:3:"762";}}s:6:"Dcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Dcaron";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:1:"0";i:2;s:3:"764";i:3;s:3:"929";}}s:12:"rcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"333";s:1:"N";s:12:"rcommaaccent";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:4:"-225";i:2;s:3:"446";i:3;s:3:"538";}}s:6:"Ntilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Ntilde";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"799";i:3;s:3:"917";}}s:6:"otilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"otilde";s:1:"B";a:4:{i:0;s:2:"83";i:1;s:3:"-14";i:2;s:3:"602";i:3;s:3:"722";}}s:12:"Rcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:12:"Rcommaaccent";s:1:"B";a:4:{i:0;s:2:"88";i:1;s:4:"-225";i:2;s:3:"773";i:3;s:3:"718";}}s:12:"Lcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:12:"Lcommaaccent";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:4:"-225";i:2;s:3:"555";i:3;s:3:"718";}}s:6:"Atilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Atilde";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"699";i:3;s:3:"917";}}s:7:"Aogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:7:"Aogonek";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:4:"-225";i:2;s:3:"654";i:3;s:3:"718";}}s:5:"Aring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:5:"Aring";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"654";i:3;s:3:"931";}}s:6:"Otilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:6:"Otilde";s:1:"B";a:4:{i:0;s:3:"105";i:1;s:3:"-19";i:2;s:3:"826";i:3;s:3:"917";}}s:10:"zdotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:10:"zdotaccent";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:1:"0";i:2;s:3:"571";i:3;s:3:"706";}}s:6:"Ecaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Ecaron";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"762";i:3;s:3:"929";}}s:7:"Iogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:7:"Iogonek";s:1:"B";a:4:{i:0;s:3:"-33";i:1;s:4:"-225";i:2;s:3:"341";i:3;s:3:"718";}}s:12:"kcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:12:"kcommaaccent";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:4:"-225";i:2;s:3:"600";i:3;s:3:"718";}}s:5:"minus";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"584";s:1:"N";s:5:"minus";s:1:"B";a:4:{i:0;s:2:"85";i:1;s:3:"216";i:2;s:3:"606";i:3;s:3:"289";}}s:11:"Icircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:11:"Icircumflex";s:1:"B";a:4:{i:0;s:2:"91";i:1;s:1:"0";i:2;s:3:"452";i:3;s:3:"929";}}s:6:"ncaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"ncaron";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:1:"0";i:2;s:3:"580";i:3;s:3:"734";}}s:12:"tcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:12:"tcommaaccent";s:1:"B";a:4:{i:0;s:2:"63";i:1;s:4:"-225";i:2;s:3:"368";i:3;s:3:"669";}}s:10:"logicalnot";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"584";s:1:"N";s:10:"logicalnot";s:1:"B";a:4:{i:0;s:3:"106";i:1;s:3:"108";i:2;s:3:"628";i:3;s:3:"390";}}s:9:"odieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:9:"odieresis";s:1:"B";a:4:{i:0;s:2:"83";i:1;s:3:"-14";i:2;s:3:"585";i:3;s:3:"706";}}s:9:"udieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:9:"udieresis";s:1:"B";a:4:{i:0;s:2:"94";i:1;s:3:"-15";i:2;s:3:"600";i:3;s:3:"706";}}s:8:"notequal";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"549";s:1:"N";s:8:"notequal";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-35";i:2;s:3:"623";i:3;s:3:"551";}}s:12:"gcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:12:"gcommaaccent";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:4:"-220";i:2;s:3:"610";i:3;s:3:"822";}}s:3:"eth";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:3:"eth";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:3:"-15";i:2;s:3:"617";i:3;s:3:"737";}}s:6:"zcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"zcaron";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:1:"0";i:2;s:3:"571";i:3;s:3:"734";}}s:12:"ncommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:12:"ncommaaccent";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:4:"-225";i:2;s:3:"573";i:3;s:3:"538";}}s:11:"onesuperior";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"333";s:1:"N";s:11:"onesuperior";s:1:"B";a:4:{i:0;s:3:"166";i:1;s:3:"281";i:2;s:3:"371";i:3;s:3:"703";}}s:7:"imacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:7:"imacron";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:1:"0";i:2;s:3:"417";i:3;s:3:"684";}}s:4:"Euro";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:4:"Euro";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:1:"0";i:3;s:1:"0";}}}s:3:"KPX";a:138:{s:1:"A";a:48:{s:1:"C";s:3:"-30";s:6:"Cacute";s:3:"-30";s:6:"Ccaron";s:3:"-30";s:8:"Ccedilla";s:3:"-30";s:1:"G";s:3:"-30";s:6:"Gbreve";s:3:"-30";s:12:"Gcommaaccent";s:3:"-30";s:1:"O";s:3:"-30";s:6:"Oacute";s:3:"-30";s:11:"Ocircumflex";s:3:"-30";s:9:"Odieresis";s:3:"-30";s:6:"Ograve";s:3:"-30";s:13:"Ohungarumlaut";s:3:"-30";s:7:"Omacron";s:3:"-30";s:6:"Oslash";s:3:"-30";s:6:"Otilde";s:3:"-30";s:1:"Q";s:3:"-30";s:1:"T";s:4:"-120";s:6:"Tcaron";s:4:"-120";s:12:"Tcommaaccent";s:4:"-120";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-70";s:1:"W";s:3:"-50";s:1:"Y";s:4:"-100";s:6:"Yacute";s:4:"-100";s:9:"Ydieresis";s:4:"-100";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-40";s:1:"w";s:3:"-40";s:1:"y";s:3:"-40";s:6:"yacute";s:3:"-40";s:9:"ydieresis";s:3:"-40";}s:6:"Aacute";a:48:{s:1:"C";s:3:"-30";s:6:"Cacute";s:3:"-30";s:6:"Ccaron";s:3:"-30";s:8:"Ccedilla";s:3:"-30";s:1:"G";s:3:"-30";s:6:"Gbreve";s:3:"-30";s:12:"Gcommaaccent";s:3:"-30";s:1:"O";s:3:"-30";s:6:"Oacute";s:3:"-30";s:11:"Ocircumflex";s:3:"-30";s:9:"Odieresis";s:3:"-30";s:6:"Ograve";s:3:"-30";s:13:"Ohungarumlaut";s:3:"-30";s:7:"Omacron";s:3:"-30";s:6:"Oslash";s:3:"-30";s:6:"Otilde";s:3:"-30";s:1:"Q";s:3:"-30";s:1:"T";s:4:"-120";s:6:"Tcaron";s:4:"-120";s:12:"Tcommaaccent";s:4:"-120";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-70";s:1:"W";s:3:"-50";s:1:"Y";s:4:"-100";s:6:"Yacute";s:4:"-100";s:9:"Ydieresis";s:4:"-100";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-40";s:1:"w";s:3:"-40";s:1:"y";s:3:"-40";s:6:"yacute";s:3:"-40";s:9:"ydieresis";s:3:"-40";}s:6:"Abreve";a:48:{s:1:"C";s:3:"-30";s:6:"Cacute";s:3:"-30";s:6:"Ccaron";s:3:"-30";s:8:"Ccedilla";s:3:"-30";s:1:"G";s:3:"-30";s:6:"Gbreve";s:3:"-30";s:12:"Gcommaaccent";s:3:"-30";s:1:"O";s:3:"-30";s:6:"Oacute";s:3:"-30";s:11:"Ocircumflex";s:3:"-30";s:9:"Odieresis";s:3:"-30";s:6:"Ograve";s:3:"-30";s:13:"Ohungarumlaut";s:3:"-30";s:7:"Omacron";s:3:"-30";s:6:"Oslash";s:3:"-30";s:6:"Otilde";s:3:"-30";s:1:"Q";s:3:"-30";s:1:"T";s:4:"-120";s:6:"Tcaron";s:4:"-120";s:12:"Tcommaaccent";s:4:"-120";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-70";s:1:"W";s:3:"-50";s:1:"Y";s:4:"-100";s:6:"Yacute";s:4:"-100";s:9:"Ydieresis";s:4:"-100";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-40";s:1:"w";s:3:"-40";s:1:"y";s:3:"-40";s:6:"yacute";s:3:"-40";s:9:"ydieresis";s:3:"-40";}s:11:"Acircumflex";a:48:{s:1:"C";s:3:"-30";s:6:"Cacute";s:3:"-30";s:6:"Ccaron";s:3:"-30";s:8:"Ccedilla";s:3:"-30";s:1:"G";s:3:"-30";s:6:"Gbreve";s:3:"-30";s:12:"Gcommaaccent";s:3:"-30";s:1:"O";s:3:"-30";s:6:"Oacute";s:3:"-30";s:11:"Ocircumflex";s:3:"-30";s:9:"Odieresis";s:3:"-30";s:6:"Ograve";s:3:"-30";s:13:"Ohungarumlaut";s:3:"-30";s:7:"Omacron";s:3:"-30";s:6:"Oslash";s:3:"-30";s:6:"Otilde";s:3:"-30";s:1:"Q";s:3:"-30";s:1:"T";s:4:"-120";s:6:"Tcaron";s:4:"-120";s:12:"Tcommaaccent";s:4:"-120";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-70";s:1:"W";s:3:"-50";s:1:"Y";s:4:"-100";s:6:"Yacute";s:4:"-100";s:9:"Ydieresis";s:4:"-100";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-40";s:1:"w";s:3:"-40";s:1:"y";s:3:"-40";s:6:"yacute";s:3:"-40";s:9:"ydieresis";s:3:"-40";}s:9:"Adieresis";a:48:{s:1:"C";s:3:"-30";s:6:"Cacute";s:3:"-30";s:6:"Ccaron";s:3:"-30";s:8:"Ccedilla";s:3:"-30";s:1:"G";s:3:"-30";s:6:"Gbreve";s:3:"-30";s:12:"Gcommaaccent";s:3:"-30";s:1:"O";s:3:"-30";s:6:"Oacute";s:3:"-30";s:11:"Ocircumflex";s:3:"-30";s:9:"Odieresis";s:3:"-30";s:6:"Ograve";s:3:"-30";s:13:"Ohungarumlaut";s:3:"-30";s:7:"Omacron";s:3:"-30";s:6:"Oslash";s:3:"-30";s:6:"Otilde";s:3:"-30";s:1:"Q";s:3:"-30";s:1:"T";s:4:"-120";s:6:"Tcaron";s:4:"-120";s:12:"Tcommaaccent";s:4:"-120";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-70";s:1:"W";s:3:"-50";s:1:"Y";s:4:"-100";s:6:"Yacute";s:4:"-100";s:9:"Ydieresis";s:4:"-100";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-40";s:1:"w";s:3:"-40";s:1:"y";s:3:"-40";s:6:"yacute";s:3:"-40";s:9:"ydieresis";s:3:"-40";}s:6:"Agrave";a:48:{s:1:"C";s:3:"-30";s:6:"Cacute";s:3:"-30";s:6:"Ccaron";s:3:"-30";s:8:"Ccedilla";s:3:"-30";s:1:"G";s:3:"-30";s:6:"Gbreve";s:3:"-30";s:12:"Gcommaaccent";s:3:"-30";s:1:"O";s:3:"-30";s:6:"Oacute";s:3:"-30";s:11:"Ocircumflex";s:3:"-30";s:9:"Odieresis";s:3:"-30";s:6:"Ograve";s:3:"-30";s:13:"Ohungarumlaut";s:3:"-30";s:7:"Omacron";s:3:"-30";s:6:"Oslash";s:3:"-30";s:6:"Otilde";s:3:"-30";s:1:"Q";s:3:"-30";s:1:"T";s:4:"-120";s:6:"Tcaron";s:4:"-120";s:12:"Tcommaaccent";s:4:"-120";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-70";s:1:"W";s:3:"-50";s:1:"Y";s:4:"-100";s:6:"Yacute";s:4:"-100";s:9:"Ydieresis";s:4:"-100";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-40";s:1:"w";s:3:"-40";s:1:"y";s:3:"-40";s:6:"yacute";s:3:"-40";s:9:"ydieresis";s:3:"-40";}s:7:"Amacron";a:48:{s:1:"C";s:3:"-30";s:6:"Cacute";s:3:"-30";s:6:"Ccaron";s:3:"-30";s:8:"Ccedilla";s:3:"-30";s:1:"G";s:3:"-30";s:6:"Gbreve";s:3:"-30";s:12:"Gcommaaccent";s:3:"-30";s:1:"O";s:3:"-30";s:6:"Oacute";s:3:"-30";s:11:"Ocircumflex";s:3:"-30";s:9:"Odieresis";s:3:"-30";s:6:"Ograve";s:3:"-30";s:13:"Ohungarumlaut";s:3:"-30";s:7:"Omacron";s:3:"-30";s:6:"Oslash";s:3:"-30";s:6:"Otilde";s:3:"-30";s:1:"Q";s:3:"-30";s:1:"T";s:4:"-120";s:6:"Tcaron";s:4:"-120";s:12:"Tcommaaccent";s:4:"-120";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-70";s:1:"W";s:3:"-50";s:1:"Y";s:4:"-100";s:6:"Yacute";s:4:"-100";s:9:"Ydieresis";s:4:"-100";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-40";s:1:"w";s:3:"-40";s:1:"y";s:3:"-40";s:6:"yacute";s:3:"-40";s:9:"ydieresis";s:3:"-40";}s:7:"Aogonek";a:48:{s:1:"C";s:3:"-30";s:6:"Cacute";s:3:"-30";s:6:"Ccaron";s:3:"-30";s:8:"Ccedilla";s:3:"-30";s:1:"G";s:3:"-30";s:6:"Gbreve";s:3:"-30";s:12:"Gcommaaccent";s:3:"-30";s:1:"O";s:3:"-30";s:6:"Oacute";s:3:"-30";s:11:"Ocircumflex";s:3:"-30";s:9:"Odieresis";s:3:"-30";s:6:"Ograve";s:3:"-30";s:13:"Ohungarumlaut";s:3:"-30";s:7:"Omacron";s:3:"-30";s:6:"Oslash";s:3:"-30";s:6:"Otilde";s:3:"-30";s:1:"Q";s:3:"-30";s:1:"T";s:4:"-120";s:6:"Tcaron";s:4:"-120";s:12:"Tcommaaccent";s:4:"-120";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-70";s:1:"W";s:3:"-50";s:1:"Y";s:4:"-100";s:6:"Yacute";s:4:"-100";s:9:"Ydieresis";s:4:"-100";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-40";s:1:"w";s:3:"-40";s:1:"y";s:3:"-40";s:6:"yacute";s:3:"-40";s:9:"ydieresis";s:3:"-40";}s:5:"Aring";a:48:{s:1:"C";s:3:"-30";s:6:"Cacute";s:3:"-30";s:6:"Ccaron";s:3:"-30";s:8:"Ccedilla";s:3:"-30";s:1:"G";s:3:"-30";s:6:"Gbreve";s:3:"-30";s:12:"Gcommaaccent";s:3:"-30";s:1:"O";s:3:"-30";s:6:"Oacute";s:3:"-30";s:11:"Ocircumflex";s:3:"-30";s:9:"Odieresis";s:3:"-30";s:6:"Ograve";s:3:"-30";s:13:"Ohungarumlaut";s:3:"-30";s:7:"Omacron";s:3:"-30";s:6:"Oslash";s:3:"-30";s:6:"Otilde";s:3:"-30";s:1:"Q";s:3:"-30";s:1:"T";s:4:"-120";s:6:"Tcaron";s:4:"-120";s:12:"Tcommaaccent";s:4:"-120";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-70";s:1:"W";s:3:"-50";s:1:"Y";s:4:"-100";s:6:"Yacute";s:4:"-100";s:9:"Ydieresis";s:4:"-100";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-40";s:1:"w";s:3:"-40";s:1:"y";s:3:"-40";s:6:"yacute";s:3:"-40";s:9:"ydieresis";s:3:"-40";}s:6:"Atilde";a:48:{s:1:"C";s:3:"-30";s:6:"Cacute";s:3:"-30";s:6:"Ccaron";s:3:"-30";s:8:"Ccedilla";s:3:"-30";s:1:"G";s:3:"-30";s:6:"Gbreve";s:3:"-30";s:12:"Gcommaaccent";s:3:"-30";s:1:"O";s:3:"-30";s:6:"Oacute";s:3:"-30";s:11:"Ocircumflex";s:3:"-30";s:9:"Odieresis";s:3:"-30";s:6:"Ograve";s:3:"-30";s:13:"Ohungarumlaut";s:3:"-30";s:7:"Omacron";s:3:"-30";s:6:"Oslash";s:3:"-30";s:6:"Otilde";s:3:"-30";s:1:"Q";s:3:"-30";s:1:"T";s:4:"-120";s:6:"Tcaron";s:4:"-120";s:12:"Tcommaaccent";s:4:"-120";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-70";s:1:"W";s:3:"-50";s:1:"Y";s:4:"-100";s:6:"Yacute";s:4:"-100";s:9:"Ydieresis";s:4:"-100";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-40";s:1:"w";s:3:"-40";s:1:"y";s:3:"-40";s:6:"yacute";s:3:"-40";s:9:"ydieresis";s:3:"-40";}s:1:"B";a:11:{s:1:"U";s:3:"-10";s:6:"Uacute";s:3:"-10";s:11:"Ucircumflex";s:3:"-10";s:9:"Udieresis";s:3:"-10";s:6:"Ugrave";s:3:"-10";s:13:"Uhungarumlaut";s:3:"-10";s:7:"Umacron";s:3:"-10";s:7:"Uogonek";s:3:"-10";s:5:"Uring";s:3:"-10";s:5:"comma";s:3:"-20";s:6:"period";s:3:"-20";}s:1:"C";a:2:{s:5:"comma";s:3:"-30";s:6:"period";s:3:"-30";}s:6:"Cacute";a:2:{s:5:"comma";s:3:"-30";s:6:"period";s:3:"-30";}s:6:"Ccaron";a:2:{s:5:"comma";s:3:"-30";s:6:"period";s:3:"-30";}s:8:"Ccedilla";a:2:{s:5:"comma";s:3:"-30";s:6:"period";s:3:"-30";}s:1:"D";a:17:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:1:"V";s:3:"-70";s:1:"W";s:3:"-40";s:1:"Y";s:3:"-90";s:6:"Yacute";s:3:"-90";s:9:"Ydieresis";s:3:"-90";s:5:"comma";s:3:"-70";s:6:"period";s:3:"-70";}s:6:"Dcaron";a:17:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:1:"V";s:3:"-70";s:1:"W";s:3:"-40";s:1:"Y";s:3:"-90";s:6:"Yacute";s:3:"-90";s:9:"Ydieresis";s:3:"-90";s:5:"comma";s:3:"-70";s:6:"period";s:3:"-70";}s:6:"Dcroat";a:17:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:1:"V";s:3:"-70";s:1:"W";s:3:"-40";s:1:"Y";s:3:"-90";s:6:"Yacute";s:3:"-90";s:9:"Ydieresis";s:3:"-90";s:5:"comma";s:3:"-70";s:6:"period";s:3:"-70";}s:1:"F";a:44:{s:1:"A";s:3:"-80";s:6:"Aacute";s:3:"-80";s:6:"Abreve";s:3:"-80";s:11:"Acircumflex";s:3:"-80";s:9:"Adieresis";s:3:"-80";s:6:"Agrave";s:3:"-80";s:7:"Amacron";s:3:"-80";s:7:"Aogonek";s:3:"-80";s:5:"Aring";s:3:"-80";s:6:"Atilde";s:3:"-80";s:1:"a";s:3:"-50";s:6:"aacute";s:3:"-50";s:6:"abreve";s:3:"-50";s:11:"acircumflex";s:3:"-50";s:9:"adieresis";s:3:"-50";s:6:"agrave";s:3:"-50";s:7:"amacron";s:3:"-50";s:7:"aogonek";s:3:"-50";s:5:"aring";s:3:"-50";s:6:"atilde";s:3:"-50";s:5:"comma";s:4:"-150";s:1:"e";s:3:"-30";s:6:"eacute";s:3:"-30";s:6:"ecaron";s:3:"-30";s:11:"ecircumflex";s:3:"-30";s:9:"edieresis";s:3:"-30";s:10:"edotaccent";s:3:"-30";s:6:"egrave";s:3:"-30";s:7:"emacron";s:3:"-30";s:7:"eogonek";s:3:"-30";s:1:"o";s:3:"-30";s:6:"oacute";s:3:"-30";s:11:"ocircumflex";s:3:"-30";s:9:"odieresis";s:3:"-30";s:6:"ograve";s:3:"-30";s:13:"ohungarumlaut";s:3:"-30";s:7:"omacron";s:3:"-30";s:6:"oslash";s:3:"-30";s:6:"otilde";s:3:"-30";s:6:"period";s:4:"-150";s:1:"r";s:3:"-45";s:6:"racute";s:3:"-45";s:6:"rcaron";s:3:"-45";s:12:"rcommaaccent";s:3:"-45";}s:1:"J";a:31:{s:1:"A";s:3:"-20";s:6:"Aacute";s:3:"-20";s:6:"Abreve";s:3:"-20";s:11:"Acircumflex";s:3:"-20";s:9:"Adieresis";s:3:"-20";s:6:"Agrave";s:3:"-20";s:7:"Amacron";s:3:"-20";s:7:"Aogonek";s:3:"-20";s:5:"Aring";s:3:"-20";s:6:"Atilde";s:3:"-20";s:1:"a";s:3:"-20";s:6:"aacute";s:3:"-20";s:6:"abreve";s:3:"-20";s:11:"acircumflex";s:3:"-20";s:9:"adieresis";s:3:"-20";s:6:"agrave";s:3:"-20";s:7:"amacron";s:3:"-20";s:7:"aogonek";s:3:"-20";s:5:"aring";s:3:"-20";s:6:"atilde";s:3:"-20";s:5:"comma";s:3:"-30";s:6:"period";s:3:"-30";s:1:"u";s:3:"-20";s:6:"uacute";s:3:"-20";s:11:"ucircumflex";s:3:"-20";s:9:"udieresis";s:3:"-20";s:6:"ugrave";s:3:"-20";s:13:"uhungarumlaut";s:3:"-20";s:7:"umacron";s:3:"-20";s:7:"uogonek";s:3:"-20";s:5:"uring";s:3:"-20";}s:1:"K";a:39:{s:1:"O";s:3:"-50";s:6:"Oacute";s:3:"-50";s:11:"Ocircumflex";s:3:"-50";s:9:"Odieresis";s:3:"-50";s:6:"Ograve";s:3:"-50";s:13:"Ohungarumlaut";s:3:"-50";s:7:"Omacron";s:3:"-50";s:6:"Oslash";s:3:"-50";s:6:"Otilde";s:3:"-50";s:1:"e";s:3:"-40";s:6:"eacute";s:3:"-40";s:6:"ecaron";s:3:"-40";s:11:"ecircumflex";s:3:"-40";s:9:"edieresis";s:3:"-40";s:10:"edotaccent";s:3:"-40";s:6:"egrave";s:3:"-40";s:7:"emacron";s:3:"-40";s:7:"eogonek";s:3:"-40";s:1:"o";s:3:"-40";s:6:"oacute";s:3:"-40";s:11:"ocircumflex";s:3:"-40";s:9:"odieresis";s:3:"-40";s:6:"ograve";s:3:"-40";s:13:"ohungarumlaut";s:3:"-40";s:7:"omacron";s:3:"-40";s:6:"oslash";s:3:"-40";s:6:"otilde";s:3:"-40";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"y";s:3:"-50";s:6:"yacute";s:3:"-50";s:9:"ydieresis";s:3:"-50";}s:12:"Kcommaaccent";a:39:{s:1:"O";s:3:"-50";s:6:"Oacute";s:3:"-50";s:11:"Ocircumflex";s:3:"-50";s:9:"Odieresis";s:3:"-50";s:6:"Ograve";s:3:"-50";s:13:"Ohungarumlaut";s:3:"-50";s:7:"Omacron";s:3:"-50";s:6:"Oslash";s:3:"-50";s:6:"Otilde";s:3:"-50";s:1:"e";s:3:"-40";s:6:"eacute";s:3:"-40";s:6:"ecaron";s:3:"-40";s:11:"ecircumflex";s:3:"-40";s:9:"edieresis";s:3:"-40";s:10:"edotaccent";s:3:"-40";s:6:"egrave";s:3:"-40";s:7:"emacron";s:3:"-40";s:7:"eogonek";s:3:"-40";s:1:"o";s:3:"-40";s:6:"oacute";s:3:"-40";s:11:"ocircumflex";s:3:"-40";s:9:"odieresis";s:3:"-40";s:6:"ograve";s:3:"-40";s:13:"ohungarumlaut";s:3:"-40";s:7:"omacron";s:3:"-40";s:6:"oslash";s:3:"-40";s:6:"otilde";s:3:"-40";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"y";s:3:"-50";s:6:"yacute";s:3:"-50";s:9:"ydieresis";s:3:"-50";}s:1:"L";a:13:{s:1:"T";s:4:"-110";s:6:"Tcaron";s:4:"-110";s:12:"Tcommaaccent";s:4:"-110";s:1:"V";s:4:"-110";s:1:"W";s:3:"-70";s:1:"Y";s:4:"-140";s:6:"Yacute";s:4:"-140";s:9:"Ydieresis";s:4:"-140";s:13:"quotedblright";s:4:"-140";s:10:"quoteright";s:4:"-160";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:6:"Lacute";a:13:{s:1:"T";s:4:"-110";s:6:"Tcaron";s:4:"-110";s:12:"Tcommaaccent";s:4:"-110";s:1:"V";s:4:"-110";s:1:"W";s:3:"-70";s:1:"Y";s:4:"-140";s:6:"Yacute";s:4:"-140";s:9:"Ydieresis";s:4:"-140";s:13:"quotedblright";s:4:"-140";s:10:"quoteright";s:4:"-160";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:6:"Lcaron";a:13:{s:1:"T";s:4:"-110";s:6:"Tcaron";s:4:"-110";s:12:"Tcommaaccent";s:4:"-110";s:1:"V";s:4:"-110";s:1:"W";s:3:"-70";s:1:"Y";s:4:"-140";s:6:"Yacute";s:4:"-140";s:9:"Ydieresis";s:4:"-140";s:13:"quotedblright";s:4:"-140";s:10:"quoteright";s:4:"-160";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:12:"Lcommaaccent";a:13:{s:1:"T";s:4:"-110";s:6:"Tcaron";s:4:"-110";s:12:"Tcommaaccent";s:4:"-110";s:1:"V";s:4:"-110";s:1:"W";s:3:"-70";s:1:"Y";s:4:"-140";s:6:"Yacute";s:4:"-140";s:9:"Ydieresis";s:4:"-140";s:13:"quotedblright";s:4:"-140";s:10:"quoteright";s:4:"-160";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:6:"Lslash";a:13:{s:1:"T";s:4:"-110";s:6:"Tcaron";s:4:"-110";s:12:"Tcommaaccent";s:4:"-110";s:1:"V";s:4:"-110";s:1:"W";s:3:"-70";s:1:"Y";s:4:"-140";s:6:"Yacute";s:4:"-140";s:9:"Ydieresis";s:4:"-140";s:13:"quotedblright";s:4:"-140";s:10:"quoteright";s:4:"-160";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:1:"O";a:21:{s:1:"A";s:3:"-20";s:6:"Aacute";s:3:"-20";s:6:"Abreve";s:3:"-20";s:11:"Acircumflex";s:3:"-20";s:9:"Adieresis";s:3:"-20";s:6:"Agrave";s:3:"-20";s:7:"Amacron";s:3:"-20";s:7:"Aogonek";s:3:"-20";s:5:"Aring";s:3:"-20";s:6:"Atilde";s:3:"-20";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-30";s:1:"X";s:3:"-60";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:6:"Oacute";a:21:{s:1:"A";s:3:"-20";s:6:"Aacute";s:3:"-20";s:6:"Abreve";s:3:"-20";s:11:"Acircumflex";s:3:"-20";s:9:"Adieresis";s:3:"-20";s:6:"Agrave";s:3:"-20";s:7:"Amacron";s:3:"-20";s:7:"Aogonek";s:3:"-20";s:5:"Aring";s:3:"-20";s:6:"Atilde";s:3:"-20";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-30";s:1:"X";s:3:"-60";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:11:"Ocircumflex";a:21:{s:1:"A";s:3:"-20";s:6:"Aacute";s:3:"-20";s:6:"Abreve";s:3:"-20";s:11:"Acircumflex";s:3:"-20";s:9:"Adieresis";s:3:"-20";s:6:"Agrave";s:3:"-20";s:7:"Amacron";s:3:"-20";s:7:"Aogonek";s:3:"-20";s:5:"Aring";s:3:"-20";s:6:"Atilde";s:3:"-20";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-30";s:1:"X";s:3:"-60";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:9:"Odieresis";a:21:{s:1:"A";s:3:"-20";s:6:"Aacute";s:3:"-20";s:6:"Abreve";s:3:"-20";s:11:"Acircumflex";s:3:"-20";s:9:"Adieresis";s:3:"-20";s:6:"Agrave";s:3:"-20";s:7:"Amacron";s:3:"-20";s:7:"Aogonek";s:3:"-20";s:5:"Aring";s:3:"-20";s:6:"Atilde";s:3:"-20";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-30";s:1:"X";s:3:"-60";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:6:"Ograve";a:21:{s:1:"A";s:3:"-20";s:6:"Aacute";s:3:"-20";s:6:"Abreve";s:3:"-20";s:11:"Acircumflex";s:3:"-20";s:9:"Adieresis";s:3:"-20";s:6:"Agrave";s:3:"-20";s:7:"Amacron";s:3:"-20";s:7:"Aogonek";s:3:"-20";s:5:"Aring";s:3:"-20";s:6:"Atilde";s:3:"-20";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-30";s:1:"X";s:3:"-60";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:13:"Ohungarumlaut";a:21:{s:1:"A";s:3:"-20";s:6:"Aacute";s:3:"-20";s:6:"Abreve";s:3:"-20";s:11:"Acircumflex";s:3:"-20";s:9:"Adieresis";s:3:"-20";s:6:"Agrave";s:3:"-20";s:7:"Amacron";s:3:"-20";s:7:"Aogonek";s:3:"-20";s:5:"Aring";s:3:"-20";s:6:"Atilde";s:3:"-20";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-30";s:1:"X";s:3:"-60";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:7:"Omacron";a:21:{s:1:"A";s:3:"-20";s:6:"Aacute";s:3:"-20";s:6:"Abreve";s:3:"-20";s:11:"Acircumflex";s:3:"-20";s:9:"Adieresis";s:3:"-20";s:6:"Agrave";s:3:"-20";s:7:"Amacron";s:3:"-20";s:7:"Aogonek";s:3:"-20";s:5:"Aring";s:3:"-20";s:6:"Atilde";s:3:"-20";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-30";s:1:"X";s:3:"-60";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:6:"Oslash";a:21:{s:1:"A";s:3:"-20";s:6:"Aacute";s:3:"-20";s:6:"Abreve";s:3:"-20";s:11:"Acircumflex";s:3:"-20";s:9:"Adieresis";s:3:"-20";s:6:"Agrave";s:3:"-20";s:7:"Amacron";s:3:"-20";s:7:"Aogonek";s:3:"-20";s:5:"Aring";s:3:"-20";s:6:"Atilde";s:3:"-20";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-30";s:1:"X";s:3:"-60";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:6:"Otilde";a:21:{s:1:"A";s:3:"-20";s:6:"Aacute";s:3:"-20";s:6:"Abreve";s:3:"-20";s:11:"Acircumflex";s:3:"-20";s:9:"Adieresis";s:3:"-20";s:6:"Agrave";s:3:"-20";s:7:"Amacron";s:3:"-20";s:7:"Aogonek";s:3:"-20";s:5:"Aring";s:3:"-20";s:6:"Atilde";s:3:"-20";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-30";s:1:"X";s:3:"-60";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:1:"P";a:40:{s:1:"A";s:4:"-120";s:6:"Aacute";s:4:"-120";s:6:"Abreve";s:4:"-120";s:11:"Acircumflex";s:4:"-120";s:9:"Adieresis";s:4:"-120";s:6:"Agrave";s:4:"-120";s:7:"Amacron";s:4:"-120";s:7:"Aogonek";s:4:"-120";s:5:"Aring";s:4:"-120";s:6:"Atilde";s:4:"-120";s:1:"a";s:3:"-40";s:6:"aacute";s:3:"-40";s:6:"abreve";s:3:"-40";s:11:"acircumflex";s:3:"-40";s:9:"adieresis";s:3:"-40";s:6:"agrave";s:3:"-40";s:7:"amacron";s:3:"-40";s:7:"aogonek";s:3:"-40";s:5:"aring";s:3:"-40";s:6:"atilde";s:3:"-40";s:5:"comma";s:4:"-180";s:1:"e";s:3:"-50";s:6:"eacute";s:3:"-50";s:6:"ecaron";s:3:"-50";s:11:"ecircumflex";s:3:"-50";s:9:"edieresis";s:3:"-50";s:10:"edotaccent";s:3:"-50";s:6:"egrave";s:3:"-50";s:7:"emacron";s:3:"-50";s:7:"eogonek";s:3:"-50";s:1:"o";s:3:"-50";s:6:"oacute";s:3:"-50";s:11:"ocircumflex";s:3:"-50";s:9:"odieresis";s:3:"-50";s:6:"ograve";s:3:"-50";s:13:"ohungarumlaut";s:3:"-50";s:7:"omacron";s:3:"-50";s:6:"oslash";s:3:"-50";s:6:"otilde";s:3:"-50";s:6:"period";s:4:"-180";}s:1:"Q";a:9:{s:1:"U";s:3:"-10";s:6:"Uacute";s:3:"-10";s:11:"Ucircumflex";s:3:"-10";s:9:"Udieresis";s:3:"-10";s:6:"Ugrave";s:3:"-10";s:13:"Uhungarumlaut";s:3:"-10";s:7:"Umacron";s:3:"-10";s:7:"Uogonek";s:3:"-10";s:5:"Uring";s:3:"-10";}s:1:"R";a:26:{s:1:"O";s:3:"-20";s:6:"Oacute";s:3:"-20";s:11:"Ocircumflex";s:3:"-20";s:9:"Odieresis";s:3:"-20";s:6:"Ograve";s:3:"-20";s:13:"Ohungarumlaut";s:3:"-20";s:7:"Omacron";s:3:"-20";s:6:"Oslash";s:3:"-20";s:6:"Otilde";s:3:"-20";s:1:"T";s:3:"-30";s:6:"Tcaron";s:3:"-30";s:12:"Tcommaaccent";s:3:"-30";s:1:"U";s:3:"-40";s:6:"Uacute";s:3:"-40";s:11:"Ucircumflex";s:3:"-40";s:9:"Udieresis";s:3:"-40";s:6:"Ugrave";s:3:"-40";s:13:"Uhungarumlaut";s:3:"-40";s:7:"Umacron";s:3:"-40";s:7:"Uogonek";s:3:"-40";s:5:"Uring";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-30";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:6:"Racute";a:26:{s:1:"O";s:3:"-20";s:6:"Oacute";s:3:"-20";s:11:"Ocircumflex";s:3:"-20";s:9:"Odieresis";s:3:"-20";s:6:"Ograve";s:3:"-20";s:13:"Ohungarumlaut";s:3:"-20";s:7:"Omacron";s:3:"-20";s:6:"Oslash";s:3:"-20";s:6:"Otilde";s:3:"-20";s:1:"T";s:3:"-30";s:6:"Tcaron";s:3:"-30";s:12:"Tcommaaccent";s:3:"-30";s:1:"U";s:3:"-40";s:6:"Uacute";s:3:"-40";s:11:"Ucircumflex";s:3:"-40";s:9:"Udieresis";s:3:"-40";s:6:"Ugrave";s:3:"-40";s:13:"Uhungarumlaut";s:3:"-40";s:7:"Umacron";s:3:"-40";s:7:"Uogonek";s:3:"-40";s:5:"Uring";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-30";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:6:"Rcaron";a:26:{s:1:"O";s:3:"-20";s:6:"Oacute";s:3:"-20";s:11:"Ocircumflex";s:3:"-20";s:9:"Odieresis";s:3:"-20";s:6:"Ograve";s:3:"-20";s:13:"Ohungarumlaut";s:3:"-20";s:7:"Omacron";s:3:"-20";s:6:"Oslash";s:3:"-20";s:6:"Otilde";s:3:"-20";s:1:"T";s:3:"-30";s:6:"Tcaron";s:3:"-30";s:12:"Tcommaaccent";s:3:"-30";s:1:"U";s:3:"-40";s:6:"Uacute";s:3:"-40";s:11:"Ucircumflex";s:3:"-40";s:9:"Udieresis";s:3:"-40";s:6:"Ugrave";s:3:"-40";s:13:"Uhungarumlaut";s:3:"-40";s:7:"Umacron";s:3:"-40";s:7:"Uogonek";s:3:"-40";s:5:"Uring";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-30";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:12:"Rcommaaccent";a:26:{s:1:"O";s:3:"-20";s:6:"Oacute";s:3:"-20";s:11:"Ocircumflex";s:3:"-20";s:9:"Odieresis";s:3:"-20";s:6:"Ograve";s:3:"-20";s:13:"Ohungarumlaut";s:3:"-20";s:7:"Omacron";s:3:"-20";s:6:"Oslash";s:3:"-20";s:6:"Otilde";s:3:"-20";s:1:"T";s:3:"-30";s:6:"Tcaron";s:3:"-30";s:12:"Tcommaaccent";s:3:"-30";s:1:"U";s:3:"-40";s:6:"Uacute";s:3:"-40";s:11:"Ucircumflex";s:3:"-40";s:9:"Udieresis";s:3:"-40";s:6:"Ugrave";s:3:"-40";s:13:"Uhungarumlaut";s:3:"-40";s:7:"Umacron";s:3:"-40";s:7:"Uogonek";s:3:"-40";s:5:"Uring";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-30";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:1:"S";a:2:{s:5:"comma";s:3:"-20";s:6:"period";s:3:"-20";}s:6:"Sacute";a:2:{s:5:"comma";s:3:"-20";s:6:"period";s:3:"-20";}s:6:"Scaron";a:2:{s:5:"comma";s:3:"-20";s:6:"period";s:3:"-20";}s:8:"Scedilla";a:2:{s:5:"comma";s:3:"-20";s:6:"period";s:3:"-20";}s:12:"Scommaaccent";a:2:{s:5:"comma";s:3:"-20";s:6:"period";s:3:"-20";}s:1:"T";a:69:{s:1:"A";s:4:"-120";s:6:"Aacute";s:4:"-120";s:6:"Abreve";s:4:"-120";s:11:"Acircumflex";s:4:"-120";s:9:"Adieresis";s:4:"-120";s:6:"Agrave";s:4:"-120";s:7:"Amacron";s:4:"-120";s:7:"Aogonek";s:4:"-120";s:5:"Aring";s:4:"-120";s:6:"Atilde";s:4:"-120";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"a";s:4:"-120";s:6:"aacute";s:4:"-120";s:6:"abreve";s:3:"-60";s:11:"acircumflex";s:4:"-120";s:9:"adieresis";s:4:"-120";s:6:"agrave";s:4:"-120";s:7:"amacron";s:3:"-60";s:7:"aogonek";s:4:"-120";s:5:"aring";s:4:"-120";s:6:"atilde";s:3:"-60";s:5:"colon";s:3:"-20";s:5:"comma";s:4:"-120";s:1:"e";s:4:"-120";s:6:"eacute";s:4:"-120";s:6:"ecaron";s:4:"-120";s:11:"ecircumflex";s:4:"-120";s:9:"edieresis";s:4:"-120";s:10:"edotaccent";s:4:"-120";s:6:"egrave";s:3:"-60";s:7:"emacron";s:3:"-60";s:7:"eogonek";s:4:"-120";s:6:"hyphen";s:4:"-140";s:1:"o";s:4:"-120";s:6:"oacute";s:4:"-120";s:11:"ocircumflex";s:4:"-120";s:9:"odieresis";s:4:"-120";s:6:"ograve";s:4:"-120";s:13:"ohungarumlaut";s:4:"-120";s:7:"omacron";s:3:"-60";s:6:"oslash";s:4:"-120";s:6:"otilde";s:3:"-60";s:6:"period";s:4:"-120";s:1:"r";s:4:"-120";s:6:"racute";s:4:"-120";s:6:"rcaron";s:4:"-120";s:12:"rcommaaccent";s:4:"-120";s:9:"semicolon";s:3:"-20";s:1:"u";s:4:"-120";s:6:"uacute";s:4:"-120";s:11:"ucircumflex";s:4:"-120";s:9:"udieresis";s:4:"-120";s:6:"ugrave";s:4:"-120";s:13:"uhungarumlaut";s:4:"-120";s:7:"umacron";s:3:"-60";s:7:"uogonek";s:4:"-120";s:5:"uring";s:4:"-120";s:1:"w";s:4:"-120";s:1:"y";s:4:"-120";s:6:"yacute";s:4:"-120";s:9:"ydieresis";s:3:"-60";}s:6:"Tcaron";a:69:{s:1:"A";s:4:"-120";s:6:"Aacute";s:4:"-120";s:6:"Abreve";s:4:"-120";s:11:"Acircumflex";s:4:"-120";s:9:"Adieresis";s:4:"-120";s:6:"Agrave";s:4:"-120";s:7:"Amacron";s:4:"-120";s:7:"Aogonek";s:4:"-120";s:5:"Aring";s:4:"-120";s:6:"Atilde";s:4:"-120";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"a";s:4:"-120";s:6:"aacute";s:4:"-120";s:6:"abreve";s:3:"-60";s:11:"acircumflex";s:4:"-120";s:9:"adieresis";s:4:"-120";s:6:"agrave";s:4:"-120";s:7:"amacron";s:3:"-60";s:7:"aogonek";s:4:"-120";s:5:"aring";s:4:"-120";s:6:"atilde";s:3:"-60";s:5:"colon";s:3:"-20";s:5:"comma";s:4:"-120";s:1:"e";s:4:"-120";s:6:"eacute";s:4:"-120";s:6:"ecaron";s:4:"-120";s:11:"ecircumflex";s:4:"-120";s:9:"edieresis";s:4:"-120";s:10:"edotaccent";s:4:"-120";s:6:"egrave";s:3:"-60";s:7:"emacron";s:3:"-60";s:7:"eogonek";s:4:"-120";s:6:"hyphen";s:4:"-140";s:1:"o";s:4:"-120";s:6:"oacute";s:4:"-120";s:11:"ocircumflex";s:4:"-120";s:9:"odieresis";s:4:"-120";s:6:"ograve";s:4:"-120";s:13:"ohungarumlaut";s:4:"-120";s:7:"omacron";s:3:"-60";s:6:"oslash";s:4:"-120";s:6:"otilde";s:3:"-60";s:6:"period";s:4:"-120";s:1:"r";s:4:"-120";s:6:"racute";s:4:"-120";s:6:"rcaron";s:4:"-120";s:12:"rcommaaccent";s:4:"-120";s:9:"semicolon";s:3:"-20";s:1:"u";s:4:"-120";s:6:"uacute";s:4:"-120";s:11:"ucircumflex";s:4:"-120";s:9:"udieresis";s:4:"-120";s:6:"ugrave";s:4:"-120";s:13:"uhungarumlaut";s:4:"-120";s:7:"umacron";s:3:"-60";s:7:"uogonek";s:4:"-120";s:5:"uring";s:4:"-120";s:1:"w";s:4:"-120";s:1:"y";s:4:"-120";s:6:"yacute";s:4:"-120";s:9:"ydieresis";s:3:"-60";}s:12:"Tcommaaccent";a:69:{s:1:"A";s:4:"-120";s:6:"Aacute";s:4:"-120";s:6:"Abreve";s:4:"-120";s:11:"Acircumflex";s:4:"-120";s:9:"Adieresis";s:4:"-120";s:6:"Agrave";s:4:"-120";s:7:"Amacron";s:4:"-120";s:7:"Aogonek";s:4:"-120";s:5:"Aring";s:4:"-120";s:6:"Atilde";s:4:"-120";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"a";s:4:"-120";s:6:"aacute";s:4:"-120";s:6:"abreve";s:3:"-60";s:11:"acircumflex";s:4:"-120";s:9:"adieresis";s:4:"-120";s:6:"agrave";s:4:"-120";s:7:"amacron";s:3:"-60";s:7:"aogonek";s:4:"-120";s:5:"aring";s:4:"-120";s:6:"atilde";s:3:"-60";s:5:"colon";s:3:"-20";s:5:"comma";s:4:"-120";s:1:"e";s:4:"-120";s:6:"eacute";s:4:"-120";s:6:"ecaron";s:4:"-120";s:11:"ecircumflex";s:4:"-120";s:9:"edieresis";s:4:"-120";s:10:"edotaccent";s:4:"-120";s:6:"egrave";s:3:"-60";s:7:"emacron";s:3:"-60";s:7:"eogonek";s:4:"-120";s:6:"hyphen";s:4:"-140";s:1:"o";s:4:"-120";s:6:"oacute";s:4:"-120";s:11:"ocircumflex";s:4:"-120";s:9:"odieresis";s:4:"-120";s:6:"ograve";s:4:"-120";s:13:"ohungarumlaut";s:4:"-120";s:7:"omacron";s:3:"-60";s:6:"oslash";s:4:"-120";s:6:"otilde";s:3:"-60";s:6:"period";s:4:"-120";s:1:"r";s:4:"-120";s:6:"racute";s:4:"-120";s:6:"rcaron";s:4:"-120";s:12:"rcommaaccent";s:4:"-120";s:9:"semicolon";s:3:"-20";s:1:"u";s:4:"-120";s:6:"uacute";s:4:"-120";s:11:"ucircumflex";s:4:"-120";s:9:"udieresis";s:4:"-120";s:6:"ugrave";s:4:"-120";s:13:"uhungarumlaut";s:4:"-120";s:7:"umacron";s:3:"-60";s:7:"uogonek";s:4:"-120";s:5:"uring";s:4:"-120";s:1:"w";s:4:"-120";s:1:"y";s:4:"-120";s:6:"yacute";s:4:"-120";s:9:"ydieresis";s:3:"-60";}s:1:"U";a:12:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:6:"Uacute";a:12:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:11:"Ucircumflex";a:12:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:9:"Udieresis";a:12:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:6:"Ugrave";a:12:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:13:"Uhungarumlaut";a:12:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:7:"Umacron";a:12:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:7:"Uogonek";a:12:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:5:"Uring";a:12:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:1:"V";a:64:{s:1:"A";s:3:"-80";s:6:"Aacute";s:3:"-80";s:6:"Abreve";s:3:"-80";s:11:"Acircumflex";s:3:"-80";s:9:"Adieresis";s:3:"-80";s:6:"Agrave";s:3:"-80";s:7:"Amacron";s:3:"-80";s:7:"Aogonek";s:3:"-80";s:5:"Aring";s:3:"-80";s:6:"Atilde";s:3:"-80";s:1:"G";s:3:"-40";s:6:"Gbreve";s:3:"-40";s:12:"Gcommaaccent";s:3:"-40";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"a";s:3:"-70";s:6:"aacute";s:3:"-70";s:6:"abreve";s:3:"-70";s:11:"acircumflex";s:3:"-70";s:9:"adieresis";s:3:"-70";s:6:"agrave";s:3:"-70";s:7:"amacron";s:3:"-70";s:7:"aogonek";s:3:"-70";s:5:"aring";s:3:"-70";s:6:"atilde";s:3:"-70";s:5:"colon";s:3:"-40";s:5:"comma";s:4:"-125";s:1:"e";s:3:"-80";s:6:"eacute";s:3:"-80";s:6:"ecaron";s:3:"-80";s:11:"ecircumflex";s:3:"-80";s:9:"edieresis";s:3:"-80";s:10:"edotaccent";s:3:"-80";s:6:"egrave";s:3:"-80";s:7:"emacron";s:3:"-80";s:7:"eogonek";s:3:"-80";s:6:"hyphen";s:3:"-80";s:1:"o";s:3:"-80";s:6:"oacute";s:3:"-80";s:11:"ocircumflex";s:3:"-80";s:9:"odieresis";s:3:"-80";s:6:"ograve";s:3:"-80";s:13:"ohungarumlaut";s:3:"-80";s:7:"omacron";s:3:"-80";s:6:"oslash";s:3:"-80";s:6:"otilde";s:3:"-80";s:6:"period";s:4:"-125";s:9:"semicolon";s:3:"-40";s:1:"u";s:3:"-70";s:6:"uacute";s:3:"-70";s:11:"ucircumflex";s:3:"-70";s:9:"udieresis";s:3:"-70";s:6:"ugrave";s:3:"-70";s:13:"uhungarumlaut";s:3:"-70";s:7:"umacron";s:3:"-70";s:7:"uogonek";s:3:"-70";s:5:"uring";s:3:"-70";}s:1:"W";a:62:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:1:"O";s:3:"-20";s:6:"Oacute";s:3:"-20";s:11:"Ocircumflex";s:3:"-20";s:9:"Odieresis";s:3:"-20";s:6:"Ograve";s:3:"-20";s:13:"Ohungarumlaut";s:3:"-20";s:7:"Omacron";s:3:"-20";s:6:"Oslash";s:3:"-20";s:6:"Otilde";s:3:"-20";s:1:"a";s:3:"-40";s:6:"aacute";s:3:"-40";s:6:"abreve";s:3:"-40";s:11:"acircumflex";s:3:"-40";s:9:"adieresis";s:3:"-40";s:6:"agrave";s:3:"-40";s:7:"amacron";s:3:"-40";s:7:"aogonek";s:3:"-40";s:5:"aring";s:3:"-40";s:6:"atilde";s:3:"-40";s:5:"comma";s:3:"-80";s:1:"e";s:3:"-30";s:6:"eacute";s:3:"-30";s:6:"ecaron";s:3:"-30";s:11:"ecircumflex";s:3:"-30";s:9:"edieresis";s:3:"-30";s:10:"edotaccent";s:3:"-30";s:6:"egrave";s:3:"-30";s:7:"emacron";s:3:"-30";s:7:"eogonek";s:3:"-30";s:6:"hyphen";s:3:"-40";s:1:"o";s:3:"-30";s:6:"oacute";s:3:"-30";s:11:"ocircumflex";s:3:"-30";s:9:"odieresis";s:3:"-30";s:6:"ograve";s:3:"-30";s:13:"ohungarumlaut";s:3:"-30";s:7:"omacron";s:3:"-30";s:6:"oslash";s:3:"-30";s:6:"otilde";s:3:"-30";s:6:"period";s:3:"-80";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:1:"Y";a:64:{s:1:"A";s:4:"-110";s:6:"Aacute";s:4:"-110";s:6:"Abreve";s:4:"-110";s:11:"Acircumflex";s:4:"-110";s:9:"Adieresis";s:4:"-110";s:6:"Agrave";s:4:"-110";s:7:"Amacron";s:4:"-110";s:7:"Aogonek";s:4:"-110";s:5:"Aring";s:4:"-110";s:6:"Atilde";s:4:"-110";s:1:"O";s:3:"-85";s:6:"Oacute";s:3:"-85";s:11:"Ocircumflex";s:3:"-85";s:9:"Odieresis";s:3:"-85";s:6:"Ograve";s:3:"-85";s:13:"Ohungarumlaut";s:3:"-85";s:7:"Omacron";s:3:"-85";s:6:"Oslash";s:3:"-85";s:6:"Otilde";s:3:"-85";s:1:"a";s:4:"-140";s:6:"aacute";s:4:"-140";s:6:"abreve";s:3:"-70";s:11:"acircumflex";s:4:"-140";s:9:"adieresis";s:4:"-140";s:6:"agrave";s:4:"-140";s:7:"amacron";s:3:"-70";s:7:"aogonek";s:4:"-140";s:5:"aring";s:4:"-140";s:6:"atilde";s:4:"-140";s:5:"colon";s:3:"-60";s:5:"comma";s:4:"-140";s:1:"e";s:4:"-140";s:6:"eacute";s:4:"-140";s:6:"ecaron";s:4:"-140";s:11:"ecircumflex";s:4:"-140";s:9:"edieresis";s:4:"-140";s:10:"edotaccent";s:4:"-140";s:6:"egrave";s:4:"-140";s:7:"emacron";s:3:"-70";s:7:"eogonek";s:4:"-140";s:6:"hyphen";s:4:"-140";s:1:"i";s:3:"-20";s:6:"iacute";s:3:"-20";s:7:"iogonek";s:3:"-20";s:1:"o";s:4:"-140";s:6:"oacute";s:4:"-140";s:11:"ocircumflex";s:4:"-140";s:9:"odieresis";s:4:"-140";s:6:"ograve";s:4:"-140";s:13:"ohungarumlaut";s:4:"-140";s:7:"omacron";s:4:"-140";s:6:"oslash";s:4:"-140";s:6:"otilde";s:4:"-140";s:6:"period";s:4:"-140";s:9:"semicolon";s:3:"-60";s:1:"u";s:4:"-110";s:6:"uacute";s:4:"-110";s:11:"ucircumflex";s:4:"-110";s:9:"udieresis";s:4:"-110";s:6:"ugrave";s:4:"-110";s:13:"uhungarumlaut";s:4:"-110";s:7:"umacron";s:4:"-110";s:7:"uogonek";s:4:"-110";s:5:"uring";s:4:"-110";}s:6:"Yacute";a:64:{s:1:"A";s:4:"-110";s:6:"Aacute";s:4:"-110";s:6:"Abreve";s:4:"-110";s:11:"Acircumflex";s:4:"-110";s:9:"Adieresis";s:4:"-110";s:6:"Agrave";s:4:"-110";s:7:"Amacron";s:4:"-110";s:7:"Aogonek";s:4:"-110";s:5:"Aring";s:4:"-110";s:6:"Atilde";s:4:"-110";s:1:"O";s:3:"-85";s:6:"Oacute";s:3:"-85";s:11:"Ocircumflex";s:3:"-85";s:9:"Odieresis";s:3:"-85";s:6:"Ograve";s:3:"-85";s:13:"Ohungarumlaut";s:3:"-85";s:7:"Omacron";s:3:"-85";s:6:"Oslash";s:3:"-85";s:6:"Otilde";s:3:"-85";s:1:"a";s:4:"-140";s:6:"aacute";s:4:"-140";s:6:"abreve";s:3:"-70";s:11:"acircumflex";s:4:"-140";s:9:"adieresis";s:4:"-140";s:6:"agrave";s:4:"-140";s:7:"amacron";s:3:"-70";s:7:"aogonek";s:4:"-140";s:5:"aring";s:4:"-140";s:6:"atilde";s:3:"-70";s:5:"colon";s:3:"-60";s:5:"comma";s:4:"-140";s:1:"e";s:4:"-140";s:6:"eacute";s:4:"-140";s:6:"ecaron";s:4:"-140";s:11:"ecircumflex";s:4:"-140";s:9:"edieresis";s:4:"-140";s:10:"edotaccent";s:4:"-140";s:6:"egrave";s:4:"-140";s:7:"emacron";s:3:"-70";s:7:"eogonek";s:4:"-140";s:6:"hyphen";s:4:"-140";s:1:"i";s:3:"-20";s:6:"iacute";s:3:"-20";s:7:"iogonek";s:3:"-20";s:1:"o";s:4:"-140";s:6:"oacute";s:4:"-140";s:11:"ocircumflex";s:4:"-140";s:9:"odieresis";s:4:"-140";s:6:"ograve";s:4:"-140";s:13:"ohungarumlaut";s:4:"-140";s:7:"omacron";s:3:"-70";s:6:"oslash";s:4:"-140";s:6:"otilde";s:4:"-140";s:6:"period";s:4:"-140";s:9:"semicolon";s:3:"-60";s:1:"u";s:4:"-110";s:6:"uacute";s:4:"-110";s:11:"ucircumflex";s:4:"-110";s:9:"udieresis";s:4:"-110";s:6:"ugrave";s:4:"-110";s:13:"uhungarumlaut";s:4:"-110";s:7:"umacron";s:4:"-110";s:7:"uogonek";s:4:"-110";s:5:"uring";s:4:"-110";}s:9:"Ydieresis";a:64:{s:1:"A";s:4:"-110";s:6:"Aacute";s:4:"-110";s:6:"Abreve";s:4:"-110";s:11:"Acircumflex";s:4:"-110";s:9:"Adieresis";s:4:"-110";s:6:"Agrave";s:4:"-110";s:7:"Amacron";s:4:"-110";s:7:"Aogonek";s:4:"-110";s:5:"Aring";s:4:"-110";s:6:"Atilde";s:4:"-110";s:1:"O";s:3:"-85";s:6:"Oacute";s:3:"-85";s:11:"Ocircumflex";s:3:"-85";s:9:"Odieresis";s:3:"-85";s:6:"Ograve";s:3:"-85";s:13:"Ohungarumlaut";s:3:"-85";s:7:"Omacron";s:3:"-85";s:6:"Oslash";s:3:"-85";s:6:"Otilde";s:3:"-85";s:1:"a";s:4:"-140";s:6:"aacute";s:4:"-140";s:6:"abreve";s:3:"-70";s:11:"acircumflex";s:4:"-140";s:9:"adieresis";s:4:"-140";s:6:"agrave";s:4:"-140";s:7:"amacron";s:3:"-70";s:7:"aogonek";s:4:"-140";s:5:"aring";s:4:"-140";s:6:"atilde";s:3:"-70";s:5:"colon";s:3:"-60";s:5:"comma";s:4:"-140";s:1:"e";s:4:"-140";s:6:"eacute";s:4:"-140";s:6:"ecaron";s:4:"-140";s:11:"ecircumflex";s:4:"-140";s:9:"edieresis";s:4:"-140";s:10:"edotaccent";s:4:"-140";s:6:"egrave";s:4:"-140";s:7:"emacron";s:3:"-70";s:7:"eogonek";s:4:"-140";s:6:"hyphen";s:4:"-140";s:1:"i";s:3:"-20";s:6:"iacute";s:3:"-20";s:7:"iogonek";s:3:"-20";s:1:"o";s:4:"-140";s:6:"oacute";s:4:"-140";s:11:"ocircumflex";s:4:"-140";s:9:"odieresis";s:4:"-140";s:6:"ograve";s:4:"-140";s:13:"ohungarumlaut";s:4:"-140";s:7:"omacron";s:4:"-140";s:6:"oslash";s:4:"-140";s:6:"otilde";s:4:"-140";s:6:"period";s:4:"-140";s:9:"semicolon";s:3:"-60";s:1:"u";s:4:"-110";s:6:"uacute";s:4:"-110";s:11:"ucircumflex";s:4:"-110";s:9:"udieresis";s:4:"-110";s:6:"ugrave";s:4:"-110";s:13:"uhungarumlaut";s:4:"-110";s:7:"umacron";s:4:"-110";s:7:"uogonek";s:4:"-110";s:5:"uring";s:4:"-110";}s:1:"a";a:5:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-20";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:6:"aacute";a:5:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-20";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:6:"abreve";a:5:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-20";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:11:"acircumflex";a:5:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-20";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:9:"adieresis";a:5:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-20";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:6:"agrave";a:5:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-20";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:7:"amacron";a:5:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-20";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:7:"aogonek";a:5:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-20";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:5:"aring";a:5:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-20";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:6:"atilde";a:5:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-20";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:1:"b";a:20:{s:1:"b";s:3:"-10";s:5:"comma";s:3:"-40";s:1:"l";s:3:"-20";s:6:"lacute";s:3:"-20";s:12:"lcommaaccent";s:3:"-20";s:6:"lslash";s:3:"-20";s:6:"period";s:3:"-40";s:1:"u";s:3:"-20";s:6:"uacute";s:3:"-20";s:11:"ucircumflex";s:3:"-20";s:9:"udieresis";s:3:"-20";s:6:"ugrave";s:3:"-20";s:13:"uhungarumlaut";s:3:"-20";s:7:"umacron";s:3:"-20";s:7:"uogonek";s:3:"-20";s:5:"uring";s:3:"-20";s:1:"v";s:3:"-20";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:1:"c";a:3:{s:5:"comma";s:3:"-15";s:1:"k";s:3:"-20";s:12:"kcommaaccent";s:3:"-20";}s:6:"cacute";a:3:{s:5:"comma";s:3:"-15";s:1:"k";s:3:"-20";s:12:"kcommaaccent";s:3:"-20";}s:6:"ccaron";a:3:{s:5:"comma";s:3:"-15";s:1:"k";s:3:"-20";s:12:"kcommaaccent";s:3:"-20";}s:8:"ccedilla";a:3:{s:5:"comma";s:3:"-15";s:1:"k";s:3:"-20";s:12:"kcommaaccent";s:3:"-20";}s:5:"colon";a:1:{s:5:"space";s:3:"-50";}s:5:"comma";a:2:{s:13:"quotedblright";s:4:"-100";s:10:"quoteright";s:4:"-100";}s:1:"e";a:8:{s:5:"comma";s:3:"-15";s:6:"period";s:3:"-15";s:1:"v";s:3:"-30";s:1:"w";s:3:"-20";s:1:"x";s:3:"-30";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:6:"eacute";a:8:{s:5:"comma";s:3:"-15";s:6:"period";s:3:"-15";s:1:"v";s:3:"-30";s:1:"w";s:3:"-20";s:1:"x";s:3:"-30";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:6:"ecaron";a:8:{s:5:"comma";s:3:"-15";s:6:"period";s:3:"-15";s:1:"v";s:3:"-30";s:1:"w";s:3:"-20";s:1:"x";s:3:"-30";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:11:"ecircumflex";a:8:{s:5:"comma";s:3:"-15";s:6:"period";s:3:"-15";s:1:"v";s:3:"-30";s:1:"w";s:3:"-20";s:1:"x";s:3:"-30";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:9:"edieresis";a:8:{s:5:"comma";s:3:"-15";s:6:"period";s:3:"-15";s:1:"v";s:3:"-30";s:1:"w";s:3:"-20";s:1:"x";s:3:"-30";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:10:"edotaccent";a:8:{s:5:"comma";s:3:"-15";s:6:"period";s:3:"-15";s:1:"v";s:3:"-30";s:1:"w";s:3:"-20";s:1:"x";s:3:"-30";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:6:"egrave";a:8:{s:5:"comma";s:3:"-15";s:6:"period";s:3:"-15";s:1:"v";s:3:"-30";s:1:"w";s:3:"-20";s:1:"x";s:3:"-30";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:7:"emacron";a:8:{s:5:"comma";s:3:"-15";s:6:"period";s:3:"-15";s:1:"v";s:3:"-30";s:1:"w";s:3:"-20";s:1:"x";s:3:"-30";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:7:"eogonek";a:8:{s:5:"comma";s:3:"-15";s:6:"period";s:3:"-15";s:1:"v";s:3:"-30";s:1:"w";s:3:"-20";s:1:"x";s:3:"-30";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:1:"f";a:33:{s:1:"a";s:3:"-30";s:6:"aacute";s:3:"-30";s:6:"abreve";s:3:"-30";s:11:"acircumflex";s:3:"-30";s:9:"adieresis";s:3:"-30";s:6:"agrave";s:3:"-30";s:7:"amacron";s:3:"-30";s:7:"aogonek";s:3:"-30";s:5:"aring";s:3:"-30";s:6:"atilde";s:3:"-30";s:5:"comma";s:3:"-30";s:8:"dotlessi";s:3:"-28";s:1:"e";s:3:"-30";s:6:"eacute";s:3:"-30";s:6:"ecaron";s:3:"-30";s:11:"ecircumflex";s:3:"-30";s:9:"edieresis";s:3:"-30";s:10:"edotaccent";s:3:"-30";s:6:"egrave";s:3:"-30";s:7:"emacron";s:3:"-30";s:7:"eogonek";s:3:"-30";s:1:"o";s:3:"-30";s:6:"oacute";s:3:"-30";s:11:"ocircumflex";s:3:"-30";s:9:"odieresis";s:3:"-30";s:6:"ograve";s:3:"-30";s:13:"ohungarumlaut";s:3:"-30";s:7:"omacron";s:3:"-30";s:6:"oslash";s:3:"-30";s:6:"otilde";s:3:"-30";s:6:"period";s:3:"-30";s:13:"quotedblright";s:2:"60";s:10:"quoteright";s:2:"50";}s:1:"g";a:4:{s:1:"r";s:3:"-10";s:6:"racute";s:3:"-10";s:6:"rcaron";s:3:"-10";s:12:"rcommaaccent";s:3:"-10";}s:6:"gbreve";a:4:{s:1:"r";s:3:"-10";s:6:"racute";s:3:"-10";s:6:"rcaron";s:3:"-10";s:12:"rcommaaccent";s:3:"-10";}s:12:"gcommaaccent";a:4:{s:1:"r";s:3:"-10";s:6:"racute";s:3:"-10";s:6:"rcaron";s:3:"-10";s:12:"rcommaaccent";s:3:"-10";}s:1:"h";a:3:{s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:1:"k";a:18:{s:1:"e";s:3:"-20";s:6:"eacute";s:3:"-20";s:6:"ecaron";s:3:"-20";s:11:"ecircumflex";s:3:"-20";s:9:"edieresis";s:3:"-20";s:10:"edotaccent";s:3:"-20";s:6:"egrave";s:3:"-20";s:7:"emacron";s:3:"-20";s:7:"eogonek";s:3:"-20";s:1:"o";s:3:"-20";s:6:"oacute";s:3:"-20";s:11:"ocircumflex";s:3:"-20";s:9:"odieresis";s:3:"-20";s:6:"ograve";s:3:"-20";s:13:"ohungarumlaut";s:3:"-20";s:7:"omacron";s:3:"-20";s:6:"oslash";s:3:"-20";s:6:"otilde";s:3:"-20";}s:12:"kcommaaccent";a:18:{s:1:"e";s:3:"-20";s:6:"eacute";s:3:"-20";s:6:"ecaron";s:3:"-20";s:11:"ecircumflex";s:3:"-20";s:9:"edieresis";s:3:"-20";s:10:"edotaccent";s:3:"-20";s:6:"egrave";s:3:"-20";s:7:"emacron";s:3:"-20";s:7:"eogonek";s:3:"-20";s:1:"o";s:3:"-20";s:6:"oacute";s:3:"-20";s:11:"ocircumflex";s:3:"-20";s:9:"odieresis";s:3:"-20";s:6:"ograve";s:3:"-20";s:13:"ohungarumlaut";s:3:"-20";s:7:"omacron";s:3:"-20";s:6:"oslash";s:3:"-20";s:6:"otilde";s:3:"-20";}s:1:"m";a:12:{s:1:"u";s:3:"-10";s:6:"uacute";s:3:"-10";s:11:"ucircumflex";s:3:"-10";s:9:"udieresis";s:3:"-10";s:6:"ugrave";s:3:"-10";s:13:"uhungarumlaut";s:3:"-10";s:7:"umacron";s:3:"-10";s:7:"uogonek";s:3:"-10";s:5:"uring";s:3:"-10";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:1:"n";a:13:{s:1:"u";s:3:"-10";s:6:"uacute";s:3:"-10";s:11:"ucircumflex";s:3:"-10";s:9:"udieresis";s:3:"-10";s:6:"ugrave";s:3:"-10";s:13:"uhungarumlaut";s:3:"-10";s:7:"umacron";s:3:"-10";s:7:"uogonek";s:3:"-10";s:5:"uring";s:3:"-10";s:1:"v";s:3:"-20";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:6:"nacute";a:13:{s:1:"u";s:3:"-10";s:6:"uacute";s:3:"-10";s:11:"ucircumflex";s:3:"-10";s:9:"udieresis";s:3:"-10";s:6:"ugrave";s:3:"-10";s:13:"uhungarumlaut";s:3:"-10";s:7:"umacron";s:3:"-10";s:7:"uogonek";s:3:"-10";s:5:"uring";s:3:"-10";s:1:"v";s:3:"-20";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:6:"ncaron";a:13:{s:1:"u";s:3:"-10";s:6:"uacute";s:3:"-10";s:11:"ucircumflex";s:3:"-10";s:9:"udieresis";s:3:"-10";s:6:"ugrave";s:3:"-10";s:13:"uhungarumlaut";s:3:"-10";s:7:"umacron";s:3:"-10";s:7:"uogonek";s:3:"-10";s:5:"uring";s:3:"-10";s:1:"v";s:3:"-20";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:12:"ncommaaccent";a:13:{s:1:"u";s:3:"-10";s:6:"uacute";s:3:"-10";s:11:"ucircumflex";s:3:"-10";s:9:"udieresis";s:3:"-10";s:6:"ugrave";s:3:"-10";s:13:"uhungarumlaut";s:3:"-10";s:7:"umacron";s:3:"-10";s:7:"uogonek";s:3:"-10";s:5:"uring";s:3:"-10";s:1:"v";s:3:"-20";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:6:"ntilde";a:13:{s:1:"u";s:3:"-10";s:6:"uacute";s:3:"-10";s:11:"ucircumflex";s:3:"-10";s:9:"udieresis";s:3:"-10";s:6:"ugrave";s:3:"-10";s:13:"uhungarumlaut";s:3:"-10";s:7:"umacron";s:3:"-10";s:7:"uogonek";s:3:"-10";s:5:"uring";s:3:"-10";s:1:"v";s:3:"-20";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:1:"o";a:8:{s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-30";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:6:"oacute";a:8:{s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-30";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:11:"ocircumflex";a:8:{s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-30";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:9:"odieresis";a:8:{s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-30";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:6:"ograve";a:8:{s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-30";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:13:"ohungarumlaut";a:8:{s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-30";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:7:"omacron";a:8:{s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-30";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:6:"oslash";a:94:{s:1:"a";s:3:"-55";s:6:"aacute";s:3:"-55";s:6:"abreve";s:3:"-55";s:11:"acircumflex";s:3:"-55";s:9:"adieresis";s:3:"-55";s:6:"agrave";s:3:"-55";s:7:"amacron";s:3:"-55";s:7:"aogonek";s:3:"-55";s:5:"aring";s:3:"-55";s:6:"atilde";s:3:"-55";s:1:"b";s:3:"-55";s:1:"c";s:3:"-55";s:6:"cacute";s:3:"-55";s:6:"ccaron";s:3:"-55";s:8:"ccedilla";s:3:"-55";s:5:"comma";s:3:"-95";s:1:"d";s:3:"-55";s:6:"dcroat";s:3:"-55";s:1:"e";s:3:"-55";s:6:"eacute";s:3:"-55";s:6:"ecaron";s:3:"-55";s:11:"ecircumflex";s:3:"-55";s:9:"edieresis";s:3:"-55";s:10:"edotaccent";s:3:"-55";s:6:"egrave";s:3:"-55";s:7:"emacron";s:3:"-55";s:7:"eogonek";s:3:"-55";s:1:"f";s:3:"-55";s:1:"g";s:3:"-55";s:6:"gbreve";s:3:"-55";s:12:"gcommaaccent";s:3:"-55";s:1:"h";s:3:"-55";s:1:"i";s:3:"-55";s:6:"iacute";s:3:"-55";s:11:"icircumflex";s:3:"-55";s:9:"idieresis";s:3:"-55";s:6:"igrave";s:3:"-55";s:7:"imacron";s:3:"-55";s:7:"iogonek";s:3:"-55";s:1:"j";s:3:"-55";s:1:"k";s:3:"-55";s:12:"kcommaaccent";s:3:"-55";s:1:"l";s:3:"-55";s:6:"lacute";s:3:"-55";s:12:"lcommaaccent";s:3:"-55";s:6:"lslash";s:3:"-55";s:1:"m";s:3:"-55";s:1:"n";s:3:"-55";s:6:"nacute";s:3:"-55";s:6:"ncaron";s:3:"-55";s:12:"ncommaaccent";s:3:"-55";s:6:"ntilde";s:3:"-55";s:1:"o";s:3:"-55";s:6:"oacute";s:3:"-55";s:11:"ocircumflex";s:3:"-55";s:9:"odieresis";s:3:"-55";s:6:"ograve";s:3:"-55";s:13:"ohungarumlaut";s:3:"-55";s:7:"omacron";s:3:"-55";s:6:"oslash";s:3:"-55";s:6:"otilde";s:3:"-55";s:1:"p";s:3:"-55";s:6:"period";s:3:"-95";s:1:"q";s:3:"-55";s:1:"r";s:3:"-55";s:6:"racute";s:3:"-55";s:6:"rcaron";s:3:"-55";s:12:"rcommaaccent";s:3:"-55";s:1:"s";s:3:"-55";s:6:"sacute";s:3:"-55";s:6:"scaron";s:3:"-55";s:8:"scedilla";s:3:"-55";s:12:"scommaaccent";s:3:"-55";s:1:"t";s:3:"-55";s:12:"tcommaaccent";s:3:"-55";s:1:"u";s:3:"-55";s:6:"uacute";s:3:"-55";s:11:"ucircumflex";s:3:"-55";s:9:"udieresis";s:3:"-55";s:6:"ugrave";s:3:"-55";s:13:"uhungarumlaut";s:3:"-55";s:7:"umacron";s:3:"-55";s:7:"uogonek";s:3:"-55";s:5:"uring";s:3:"-55";s:1:"v";s:3:"-70";s:1:"w";s:3:"-70";s:1:"x";s:3:"-85";s:1:"y";s:3:"-70";s:6:"yacute";s:3:"-70";s:9:"ydieresis";s:3:"-70";s:1:"z";s:3:"-55";s:6:"zacute";s:3:"-55";s:6:"zcaron";s:3:"-55";s:10:"zdotaccent";s:3:"-55";}s:6:"otilde";a:8:{s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-30";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:1:"p";a:5:{s:5:"comma";s:3:"-35";s:6:"period";s:3:"-35";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:6:"period";a:3:{s:13:"quotedblright";s:4:"-100";s:10:"quoteright";s:4:"-100";s:5:"space";s:3:"-60";}s:13:"quotedblright";a:1:{s:5:"space";s:3:"-40";}s:9:"quoteleft";a:1:{s:9:"quoteleft";s:3:"-57";}s:10:"quoteright";a:13:{s:1:"d";s:3:"-50";s:6:"dcroat";s:3:"-50";s:10:"quoteright";s:3:"-57";s:1:"r";s:3:"-50";s:6:"racute";s:3:"-50";s:6:"rcaron";s:3:"-50";s:12:"rcommaaccent";s:3:"-50";s:1:"s";s:3:"-50";s:6:"sacute";s:3:"-50";s:6:"scaron";s:3:"-50";s:8:"scedilla";s:3:"-50";s:12:"scommaaccent";s:3:"-50";s:5:"space";s:3:"-70";}s:1:"r";a:49:{s:1:"a";s:3:"-10";s:6:"aacute";s:3:"-10";s:6:"abreve";s:3:"-10";s:11:"acircumflex";s:3:"-10";s:9:"adieresis";s:3:"-10";s:6:"agrave";s:3:"-10";s:7:"amacron";s:3:"-10";s:7:"aogonek";s:3:"-10";s:5:"aring";s:3:"-10";s:6:"atilde";s:3:"-10";s:5:"colon";s:2:"30";s:5:"comma";s:3:"-50";s:1:"i";s:2:"15";s:6:"iacute";s:2:"15";s:11:"icircumflex";s:2:"15";s:9:"idieresis";s:2:"15";s:6:"igrave";s:2:"15";s:7:"imacron";s:2:"15";s:7:"iogonek";s:2:"15";s:1:"k";s:2:"15";s:12:"kcommaaccent";s:2:"15";s:1:"l";s:2:"15";s:6:"lacute";s:2:"15";s:12:"lcommaaccent";s:2:"15";s:6:"lslash";s:2:"15";s:1:"m";s:2:"25";s:1:"n";s:2:"25";s:6:"nacute";s:2:"25";s:6:"ncaron";s:2:"25";s:12:"ncommaaccent";s:2:"25";s:6:"ntilde";s:2:"25";s:1:"p";s:2:"30";s:6:"period";s:3:"-50";s:9:"semicolon";s:2:"30";s:1:"t";s:2:"40";s:12:"tcommaaccent";s:2:"40";s:1:"u";s:2:"15";s:6:"uacute";s:2:"15";s:11:"ucircumflex";s:2:"15";s:9:"udieresis";s:2:"15";s:6:"ugrave";s:2:"15";s:13:"uhungarumlaut";s:2:"15";s:7:"umacron";s:2:"15";s:7:"uogonek";s:2:"15";s:5:"uring";s:2:"15";s:1:"v";s:2:"30";s:1:"y";s:2:"30";s:6:"yacute";s:2:"30";s:9:"ydieresis";s:2:"30";}s:6:"racute";a:49:{s:1:"a";s:3:"-10";s:6:"aacute";s:3:"-10";s:6:"abreve";s:3:"-10";s:11:"acircumflex";s:3:"-10";s:9:"adieresis";s:3:"-10";s:6:"agrave";s:3:"-10";s:7:"amacron";s:3:"-10";s:7:"aogonek";s:3:"-10";s:5:"aring";s:3:"-10";s:6:"atilde";s:3:"-10";s:5:"colon";s:2:"30";s:5:"comma";s:3:"-50";s:1:"i";s:2:"15";s:6:"iacute";s:2:"15";s:11:"icircumflex";s:2:"15";s:9:"idieresis";s:2:"15";s:6:"igrave";s:2:"15";s:7:"imacron";s:2:"15";s:7:"iogonek";s:2:"15";s:1:"k";s:2:"15";s:12:"kcommaaccent";s:2:"15";s:1:"l";s:2:"15";s:6:"lacute";s:2:"15";s:12:"lcommaaccent";s:2:"15";s:6:"lslash";s:2:"15";s:1:"m";s:2:"25";s:1:"n";s:2:"25";s:6:"nacute";s:2:"25";s:6:"ncaron";s:2:"25";s:12:"ncommaaccent";s:2:"25";s:6:"ntilde";s:2:"25";s:1:"p";s:2:"30";s:6:"period";s:3:"-50";s:9:"semicolon";s:2:"30";s:1:"t";s:2:"40";s:12:"tcommaaccent";s:2:"40";s:1:"u";s:2:"15";s:6:"uacute";s:2:"15";s:11:"ucircumflex";s:2:"15";s:9:"udieresis";s:2:"15";s:6:"ugrave";s:2:"15";s:13:"uhungarumlaut";s:2:"15";s:7:"umacron";s:2:"15";s:7:"uogonek";s:2:"15";s:5:"uring";s:2:"15";s:1:"v";s:2:"30";s:1:"y";s:2:"30";s:6:"yacute";s:2:"30";s:9:"ydieresis";s:2:"30";}s:6:"rcaron";a:49:{s:1:"a";s:3:"-10";s:6:"aacute";s:3:"-10";s:6:"abreve";s:3:"-10";s:11:"acircumflex";s:3:"-10";s:9:"adieresis";s:3:"-10";s:6:"agrave";s:3:"-10";s:7:"amacron";s:3:"-10";s:7:"aogonek";s:3:"-10";s:5:"aring";s:3:"-10";s:6:"atilde";s:3:"-10";s:5:"colon";s:2:"30";s:5:"comma";s:3:"-50";s:1:"i";s:2:"15";s:6:"iacute";s:2:"15";s:11:"icircumflex";s:2:"15";s:9:"idieresis";s:2:"15";s:6:"igrave";s:2:"15";s:7:"imacron";s:2:"15";s:7:"iogonek";s:2:"15";s:1:"k";s:2:"15";s:12:"kcommaaccent";s:2:"15";s:1:"l";s:2:"15";s:6:"lacute";s:2:"15";s:12:"lcommaaccent";s:2:"15";s:6:"lslash";s:2:"15";s:1:"m";s:2:"25";s:1:"n";s:2:"25";s:6:"nacute";s:2:"25";s:6:"ncaron";s:2:"25";s:12:"ncommaaccent";s:2:"25";s:6:"ntilde";s:2:"25";s:1:"p";s:2:"30";s:6:"period";s:3:"-50";s:9:"semicolon";s:2:"30";s:1:"t";s:2:"40";s:12:"tcommaaccent";s:2:"40";s:1:"u";s:2:"15";s:6:"uacute";s:2:"15";s:11:"ucircumflex";s:2:"15";s:9:"udieresis";s:2:"15";s:6:"ugrave";s:2:"15";s:13:"uhungarumlaut";s:2:"15";s:7:"umacron";s:2:"15";s:7:"uogonek";s:2:"15";s:5:"uring";s:2:"15";s:1:"v";s:2:"30";s:1:"y";s:2:"30";s:6:"yacute";s:2:"30";s:9:"ydieresis";s:2:"30";}s:12:"rcommaaccent";a:49:{s:1:"a";s:3:"-10";s:6:"aacute";s:3:"-10";s:6:"abreve";s:3:"-10";s:11:"acircumflex";s:3:"-10";s:9:"adieresis";s:3:"-10";s:6:"agrave";s:3:"-10";s:7:"amacron";s:3:"-10";s:7:"aogonek";s:3:"-10";s:5:"aring";s:3:"-10";s:6:"atilde";s:3:"-10";s:5:"colon";s:2:"30";s:5:"comma";s:3:"-50";s:1:"i";s:2:"15";s:6:"iacute";s:2:"15";s:11:"icircumflex";s:2:"15";s:9:"idieresis";s:2:"15";s:6:"igrave";s:2:"15";s:7:"imacron";s:2:"15";s:7:"iogonek";s:2:"15";s:1:"k";s:2:"15";s:12:"kcommaaccent";s:2:"15";s:1:"l";s:2:"15";s:6:"lacute";s:2:"15";s:12:"lcommaaccent";s:2:"15";s:6:"lslash";s:2:"15";s:1:"m";s:2:"25";s:1:"n";s:2:"25";s:6:"nacute";s:2:"25";s:6:"ncaron";s:2:"25";s:12:"ncommaaccent";s:2:"25";s:6:"ntilde";s:2:"25";s:1:"p";s:2:"30";s:6:"period";s:3:"-50";s:9:"semicolon";s:2:"30";s:1:"t";s:2:"40";s:12:"tcommaaccent";s:2:"40";s:1:"u";s:2:"15";s:6:"uacute";s:2:"15";s:11:"ucircumflex";s:2:"15";s:9:"udieresis";s:2:"15";s:6:"ugrave";s:2:"15";s:13:"uhungarumlaut";s:2:"15";s:7:"umacron";s:2:"15";s:7:"uogonek";s:2:"15";s:5:"uring";s:2:"15";s:1:"v";s:2:"30";s:1:"y";s:2:"30";s:6:"yacute";s:2:"30";s:9:"ydieresis";s:2:"30";}s:1:"s";a:3:{s:5:"comma";s:3:"-15";s:6:"period";s:3:"-15";s:1:"w";s:3:"-30";}s:6:"sacute";a:3:{s:5:"comma";s:3:"-15";s:6:"period";s:3:"-15";s:1:"w";s:3:"-30";}s:6:"scaron";a:3:{s:5:"comma";s:3:"-15";s:6:"period";s:3:"-15";s:1:"w";s:3:"-30";}s:8:"scedilla";a:3:{s:5:"comma";s:3:"-15";s:6:"period";s:3:"-15";s:1:"w";s:3:"-30";}s:12:"scommaaccent";a:3:{s:5:"comma";s:3:"-15";s:6:"period";s:3:"-15";s:1:"w";s:3:"-30";}s:9:"semicolon";a:1:{s:5:"space";s:3:"-50";}s:5:"space";a:10:{s:1:"T";s:3:"-50";s:6:"Tcaron";s:3:"-50";s:12:"Tcommaaccent";s:3:"-50";s:1:"V";s:3:"-50";s:1:"W";s:3:"-40";s:1:"Y";s:3:"-90";s:6:"Yacute";s:3:"-90";s:9:"Ydieresis";s:3:"-90";s:12:"quotedblleft";s:3:"-30";s:9:"quoteleft";s:3:"-60";}s:1:"v";a:30:{s:1:"a";s:3:"-25";s:6:"aacute";s:3:"-25";s:6:"abreve";s:3:"-25";s:11:"acircumflex";s:3:"-25";s:9:"adieresis";s:3:"-25";s:6:"agrave";s:3:"-25";s:7:"amacron";s:3:"-25";s:7:"aogonek";s:3:"-25";s:5:"aring";s:3:"-25";s:6:"atilde";s:3:"-25";s:5:"comma";s:3:"-80";s:1:"e";s:3:"-25";s:6:"eacute";s:3:"-25";s:6:"ecaron";s:3:"-25";s:11:"ecircumflex";s:3:"-25";s:9:"edieresis";s:3:"-25";s:10:"edotaccent";s:3:"-25";s:6:"egrave";s:3:"-25";s:7:"emacron";s:3:"-25";s:7:"eogonek";s:3:"-25";s:1:"o";s:3:"-25";s:6:"oacute";s:3:"-25";s:11:"ocircumflex";s:3:"-25";s:9:"odieresis";s:3:"-25";s:6:"ograve";s:3:"-25";s:13:"ohungarumlaut";s:3:"-25";s:7:"omacron";s:3:"-25";s:6:"oslash";s:3:"-25";s:6:"otilde";s:3:"-25";s:6:"period";s:3:"-80";}s:1:"w";a:30:{s:1:"a";s:3:"-15";s:6:"aacute";s:3:"-15";s:6:"abreve";s:3:"-15";s:11:"acircumflex";s:3:"-15";s:9:"adieresis";s:3:"-15";s:6:"agrave";s:3:"-15";s:7:"amacron";s:3:"-15";s:7:"aogonek";s:3:"-15";s:5:"aring";s:3:"-15";s:6:"atilde";s:3:"-15";s:5:"comma";s:3:"-60";s:1:"e";s:3:"-10";s:6:"eacute";s:3:"-10";s:6:"ecaron";s:3:"-10";s:11:"ecircumflex";s:3:"-10";s:9:"edieresis";s:3:"-10";s:10:"edotaccent";s:3:"-10";s:6:"egrave";s:3:"-10";s:7:"emacron";s:3:"-10";s:7:"eogonek";s:3:"-10";s:1:"o";s:3:"-10";s:6:"oacute";s:3:"-10";s:11:"ocircumflex";s:3:"-10";s:9:"odieresis";s:3:"-10";s:6:"ograve";s:3:"-10";s:13:"ohungarumlaut";s:3:"-10";s:7:"omacron";s:3:"-10";s:6:"oslash";s:3:"-10";s:6:"otilde";s:3:"-10";s:6:"period";s:3:"-60";}s:1:"x";a:9:{s:1:"e";s:3:"-30";s:6:"eacute";s:3:"-30";s:6:"ecaron";s:3:"-30";s:11:"ecircumflex";s:3:"-30";s:9:"edieresis";s:3:"-30";s:10:"edotaccent";s:3:"-30";s:6:"egrave";s:3:"-30";s:7:"emacron";s:3:"-30";s:7:"eogonek";s:3:"-30";}s:1:"y";a:30:{s:1:"a";s:3:"-20";s:6:"aacute";s:3:"-20";s:6:"abreve";s:3:"-20";s:11:"acircumflex";s:3:"-20";s:9:"adieresis";s:3:"-20";s:6:"agrave";s:3:"-20";s:7:"amacron";s:3:"-20";s:7:"aogonek";s:3:"-20";s:5:"aring";s:3:"-20";s:6:"atilde";s:3:"-20";s:5:"comma";s:4:"-100";s:1:"e";s:3:"-20";s:6:"eacute";s:3:"-20";s:6:"ecaron";s:3:"-20";s:11:"ecircumflex";s:3:"-20";s:9:"edieresis";s:3:"-20";s:10:"edotaccent";s:3:"-20";s:6:"egrave";s:3:"-20";s:7:"emacron";s:3:"-20";s:7:"eogonek";s:3:"-20";s:1:"o";s:3:"-20";s:6:"oacute";s:3:"-20";s:11:"ocircumflex";s:3:"-20";s:9:"odieresis";s:3:"-20";s:6:"ograve";s:3:"-20";s:13:"ohungarumlaut";s:3:"-20";s:7:"omacron";s:3:"-20";s:6:"oslash";s:3:"-20";s:6:"otilde";s:3:"-20";s:6:"period";s:4:"-100";}s:6:"yacute";a:30:{s:1:"a";s:3:"-20";s:6:"aacute";s:3:"-20";s:6:"abreve";s:3:"-20";s:11:"acircumflex";s:3:"-20";s:9:"adieresis";s:3:"-20";s:6:"agrave";s:3:"-20";s:7:"amacron";s:3:"-20";s:7:"aogonek";s:3:"-20";s:5:"aring";s:3:"-20";s:6:"atilde";s:3:"-20";s:5:"comma";s:4:"-100";s:1:"e";s:3:"-20";s:6:"eacute";s:3:"-20";s:6:"ecaron";s:3:"-20";s:11:"ecircumflex";s:3:"-20";s:9:"edieresis";s:3:"-20";s:10:"edotaccent";s:3:"-20";s:6:"egrave";s:3:"-20";s:7:"emacron";s:3:"-20";s:7:"eogonek";s:3:"-20";s:1:"o";s:3:"-20";s:6:"oacute";s:3:"-20";s:11:"ocircumflex";s:3:"-20";s:9:"odieresis";s:3:"-20";s:6:"ograve";s:3:"-20";s:13:"ohungarumlaut";s:3:"-20";s:7:"omacron";s:3:"-20";s:6:"oslash";s:3:"-20";s:6:"otilde";s:3:"-20";s:6:"period";s:4:"-100";}s:9:"ydieresis";a:30:{s:1:"a";s:3:"-20";s:6:"aacute";s:3:"-20";s:6:"abreve";s:3:"-20";s:11:"acircumflex";s:3:"-20";s:9:"adieresis";s:3:"-20";s:6:"agrave";s:3:"-20";s:7:"amacron";s:3:"-20";s:7:"aogonek";s:3:"-20";s:5:"aring";s:3:"-20";s:6:"atilde";s:3:"-20";s:5:"comma";s:4:"-100";s:1:"e";s:3:"-20";s:6:"eacute";s:3:"-20";s:6:"ecaron";s:3:"-20";s:11:"ecircumflex";s:3:"-20";s:9:"edieresis";s:3:"-20";s:10:"edotaccent";s:3:"-20";s:6:"egrave";s:3:"-20";s:7:"emacron";s:3:"-20";s:7:"eogonek";s:3:"-20";s:1:"o";s:3:"-20";s:6:"oacute";s:3:"-20";s:11:"ocircumflex";s:3:"-20";s:9:"odieresis";s:3:"-20";s:6:"ograve";s:3:"-20";s:13:"ohungarumlaut";s:3:"-20";s:7:"omacron";s:3:"-20";s:6:"oslash";s:3:"-20";s:6:"otilde";s:3:"-20";s:6:"period";s:4:"-100";}s:1:"z";a:18:{s:1:"e";s:3:"-15";s:6:"eacute";s:3:"-15";s:6:"ecaron";s:3:"-15";s:11:"ecircumflex";s:3:"-15";s:9:"edieresis";s:3:"-15";s:10:"edotaccent";s:3:"-15";s:6:"egrave";s:3:"-15";s:7:"emacron";s:3:"-15";s:7:"eogonek";s:3:"-15";s:1:"o";s:3:"-15";s:6:"oacute";s:3:"-15";s:11:"ocircumflex";s:3:"-15";s:9:"odieresis";s:3:"-15";s:6:"ograve";s:3:"-15";s:13:"ohungarumlaut";s:3:"-15";s:7:"omacron";s:3:"-15";s:6:"oslash";s:3:"-15";s:6:"otilde";s:3:"-15";}s:6:"zacute";a:18:{s:1:"e";s:3:"-15";s:6:"eacute";s:3:"-15";s:6:"ecaron";s:3:"-15";s:11:"ecircumflex";s:3:"-15";s:9:"edieresis";s:3:"-15";s:10:"edotaccent";s:3:"-15";s:6:"egrave";s:3:"-15";s:7:"emacron";s:3:"-15";s:7:"eogonek";s:3:"-15";s:1:"o";s:3:"-15";s:6:"oacute";s:3:"-15";s:11:"ocircumflex";s:3:"-15";s:9:"odieresis";s:3:"-15";s:6:"ograve";s:3:"-15";s:13:"ohungarumlaut";s:3:"-15";s:7:"omacron";s:3:"-15";s:6:"oslash";s:3:"-15";s:6:"otilde";s:3:"-15";}s:6:"zcaron";a:18:{s:1:"e";s:3:"-15";s:6:"eacute";s:3:"-15";s:6:"ecaron";s:3:"-15";s:11:"ecircumflex";s:3:"-15";s:9:"edieresis";s:3:"-15";s:10:"edotaccent";s:3:"-15";s:6:"egrave";s:3:"-15";s:7:"emacron";s:3:"-15";s:7:"eogonek";s:3:"-15";s:1:"o";s:3:"-15";s:6:"oacute";s:3:"-15";s:11:"ocircumflex";s:3:"-15";s:9:"odieresis";s:3:"-15";s:6:"ograve";s:3:"-15";s:13:"ohungarumlaut";s:3:"-15";s:7:"omacron";s:3:"-15";s:6:"oslash";s:3:"-15";s:6:"otilde";s:3:"-15";}s:10:"zdotaccent";a:18:{s:1:"e";s:3:"-15";s:6:"eacute";s:3:"-15";s:6:"ecaron";s:3:"-15";s:11:"ecircumflex";s:3:"-15";s:9:"edieresis";s:3:"-15";s:10:"edotaccent";s:3:"-15";s:6:"egrave";s:3:"-15";s:7:"emacron";s:3:"-15";s:7:"eogonek";s:3:"-15";s:1:"o";s:3:"-15";s:6:"oacute";s:3:"-15";s:11:"ocircumflex";s:3:"-15";s:9:"odieresis";s:3:"-15";s:6:"ograve";s:3:"-15";s:13:"ohungarumlaut";s:3:"-15";s:7:"omacron";s:3:"-15";s:6:"oslash";s:3:"-15";s:6:"otilde";s:3:"-15";}}s:9:"_version_";i:1;} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Helvetica.afm b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Helvetica.afm
new file mode 100755
index 00000000..f8c7f2ba
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Helvetica.afm
@@ -0,0 +1 @@
+a:22:{s:8:"FontName";s:9:"Helvetica";s:8:"FullName";s:9:"Helvetica";s:10:"FamilyName";s:9:"Helvetica";s:6:"Weight";s:6:"Medium";s:11:"ItalicAngle";s:1:"0";s:12:"IsFixedPitch";s:5:"false";s:12:"CharacterSet";s:13:"ExtendedRoman";s:8:"FontBBox";a:4:{i:0;s:4:"-166";i:1;s:4:"-225";i:2;s:4:"1000";i:3;s:3:"931";}s:17:"UnderlinePosition";s:4:"-100";s:18:"UnderlineThickness";s:2:"50";s:7:"Version";s:7:"002.000";s:14:"EncodingScheme";s:21:"AdobeStandardEncoding";s:9:"CapHeight";s:3:"718";s:7:"XHeight";s:3:"523";s:8:"Ascender";s:3:"718";s:9:"Descender";s:4:"-207";s:5:"StdHW";s:2:"76";s:5:"StdVW";s:2:"88";s:16:"StartCharMetrics";s:3:"315";s:1:"C";a:464:{i:32;a:4:{s:1:"C";s:2:"32";s:2:"WX";s:3:"278";s:1:"N";s:5:"space";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:1:"0";i:3;s:1:"0";}}s:5:"space";a:4:{s:1:"C";s:2:"32";s:2:"WX";s:3:"278";s:1:"N";s:5:"space";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:1:"0";i:3;s:1:"0";}}i:33;a:4:{s:1:"C";s:2:"33";s:2:"WX";s:3:"278";s:1:"N";s:6:"exclam";s:1:"B";a:4:{i:0;s:2:"90";i:1;s:1:"0";i:2;s:3:"187";i:3;s:3:"718";}}s:6:"exclam";a:4:{s:1:"C";s:2:"33";s:2:"WX";s:3:"278";s:1:"N";s:6:"exclam";s:1:"B";a:4:{i:0;s:2:"90";i:1;s:1:"0";i:2;s:3:"187";i:3;s:3:"718";}}i:34;a:4:{s:1:"C";s:2:"34";s:2:"WX";s:3:"355";s:1:"N";s:8:"quotedbl";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:3:"463";i:2;s:3:"285";i:3;s:3:"718";}}s:8:"quotedbl";a:4:{s:1:"C";s:2:"34";s:2:"WX";s:3:"355";s:1:"N";s:8:"quotedbl";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:3:"463";i:2;s:3:"285";i:3;s:3:"718";}}i:35;a:4:{s:1:"C";s:2:"35";s:2:"WX";s:3:"556";s:1:"N";s:10:"numbersign";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:1:"0";i:2;s:3:"529";i:3;s:3:"688";}}s:10:"numbersign";a:4:{s:1:"C";s:2:"35";s:2:"WX";s:3:"556";s:1:"N";s:10:"numbersign";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:1:"0";i:2;s:3:"529";i:3;s:3:"688";}}i:36;a:4:{s:1:"C";s:2:"36";s:2:"WX";s:3:"556";s:1:"N";s:6:"dollar";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:4:"-115";i:2;s:3:"520";i:3;s:3:"775";}}s:6:"dollar";a:4:{s:1:"C";s:2:"36";s:2:"WX";s:3:"556";s:1:"N";s:6:"dollar";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:4:"-115";i:2;s:3:"520";i:3;s:3:"775";}}i:37;a:4:{s:1:"C";s:2:"37";s:2:"WX";s:3:"889";s:1:"N";s:7:"percent";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:3:"-19";i:2;s:3:"850";i:3;s:3:"703";}}s:7:"percent";a:4:{s:1:"C";s:2:"37";s:2:"WX";s:3:"889";s:1:"N";s:7:"percent";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:3:"-19";i:2;s:3:"850";i:3;s:3:"703";}}i:38;a:4:{s:1:"C";s:2:"38";s:2:"WX";s:3:"667";s:1:"N";s:9:"ampersand";s:1:"B";a:4:{i:0;s:2:"44";i:1;s:3:"-15";i:2;s:3:"645";i:3;s:3:"718";}}s:9:"ampersand";a:4:{s:1:"C";s:2:"38";s:2:"WX";s:3:"667";s:1:"N";s:9:"ampersand";s:1:"B";a:4:{i:0;s:2:"44";i:1;s:3:"-15";i:2;s:3:"645";i:3;s:3:"718";}}i:39;a:4:{s:1:"C";s:2:"39";s:2:"WX";s:3:"222";s:1:"N";s:10:"quoteright";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:3:"463";i:2;s:3:"157";i:3;s:3:"718";}}s:10:"quoteright";a:4:{s:1:"C";s:2:"39";s:2:"WX";s:3:"222";s:1:"N";s:10:"quoteright";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:3:"463";i:2;s:3:"157";i:3;s:3:"718";}}i:40;a:4:{s:1:"C";s:2:"40";s:2:"WX";s:3:"333";s:1:"N";s:9:"parenleft";s:1:"B";a:4:{i:0;s:2:"68";i:1;s:4:"-207";i:2;s:3:"299";i:3;s:3:"733";}}s:9:"parenleft";a:4:{s:1:"C";s:2:"40";s:2:"WX";s:3:"333";s:1:"N";s:9:"parenleft";s:1:"B";a:4:{i:0;s:2:"68";i:1;s:4:"-207";i:2;s:3:"299";i:3;s:3:"733";}}i:41;a:4:{s:1:"C";s:2:"41";s:2:"WX";s:3:"333";s:1:"N";s:10:"parenright";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:4:"-207";i:2;s:3:"265";i:3;s:3:"733";}}s:10:"parenright";a:4:{s:1:"C";s:2:"41";s:2:"WX";s:3:"333";s:1:"N";s:10:"parenright";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:4:"-207";i:2;s:3:"265";i:3;s:3:"733";}}i:42;a:4:{s:1:"C";s:2:"42";s:2:"WX";s:3:"389";s:1:"N";s:8:"asterisk";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:3:"431";i:2;s:3:"349";i:3;s:3:"718";}}s:8:"asterisk";a:4:{s:1:"C";s:2:"42";s:2:"WX";s:3:"389";s:1:"N";s:8:"asterisk";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:3:"431";i:2;s:3:"349";i:3;s:3:"718";}}i:43;a:4:{s:1:"C";s:2:"43";s:2:"WX";s:3:"584";s:1:"N";s:4:"plus";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:1:"0";i:2;s:3:"545";i:3;s:3:"505";}}s:4:"plus";a:4:{s:1:"C";s:2:"43";s:2:"WX";s:3:"584";s:1:"N";s:4:"plus";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:1:"0";i:2;s:3:"545";i:3;s:3:"505";}}i:44;a:4:{s:1:"C";s:2:"44";s:2:"WX";s:3:"278";s:1:"N";s:5:"comma";s:1:"B";a:4:{i:0;s:2:"87";i:1;s:4:"-147";i:2;s:3:"191";i:3;s:3:"106";}}s:5:"comma";a:4:{s:1:"C";s:2:"44";s:2:"WX";s:3:"278";s:1:"N";s:5:"comma";s:1:"B";a:4:{i:0;s:2:"87";i:1;s:4:"-147";i:2;s:3:"191";i:3;s:3:"106";}}i:45;a:4:{s:1:"C";s:2:"45";s:2:"WX";s:3:"333";s:1:"N";s:6:"hyphen";s:1:"B";a:4:{i:0;s:2:"44";i:1;s:3:"232";i:2;s:3:"289";i:3;s:3:"322";}}s:6:"hyphen";a:4:{s:1:"C";s:2:"45";s:2:"WX";s:3:"333";s:1:"N";s:6:"hyphen";s:1:"B";a:4:{i:0;s:2:"44";i:1;s:3:"232";i:2;s:3:"289";i:3;s:3:"322";}}i:46;a:4:{s:1:"C";s:2:"46";s:2:"WX";s:3:"278";s:1:"N";s:6:"period";s:1:"B";a:4:{i:0;s:2:"87";i:1;s:1:"0";i:2;s:3:"191";i:3;s:3:"106";}}s:6:"period";a:4:{s:1:"C";s:2:"46";s:2:"WX";s:3:"278";s:1:"N";s:6:"period";s:1:"B";a:4:{i:0;s:2:"87";i:1;s:1:"0";i:2;s:3:"191";i:3;s:3:"106";}}i:47;a:4:{s:1:"C";s:2:"47";s:2:"WX";s:3:"278";s:1:"N";s:5:"slash";s:1:"B";a:4:{i:0;s:3:"-17";i:1;s:3:"-19";i:2;s:3:"295";i:3;s:3:"737";}}s:5:"slash";a:4:{s:1:"C";s:2:"47";s:2:"WX";s:3:"278";s:1:"N";s:5:"slash";s:1:"B";a:4:{i:0;s:3:"-17";i:1;s:3:"-19";i:2;s:3:"295";i:3;s:3:"737";}}i:48;a:4:{s:1:"C";s:2:"48";s:2:"WX";s:3:"556";s:1:"N";s:4:"zero";s:1:"B";a:4:{i:0;s:2:"37";i:1;s:3:"-19";i:2;s:3:"519";i:3;s:3:"703";}}s:4:"zero";a:4:{s:1:"C";s:2:"48";s:2:"WX";s:3:"556";s:1:"N";s:4:"zero";s:1:"B";a:4:{i:0;s:2:"37";i:1;s:3:"-19";i:2;s:3:"519";i:3;s:3:"703";}}i:49;a:4:{s:1:"C";s:2:"49";s:2:"WX";s:3:"556";s:1:"N";s:3:"one";s:1:"B";a:4:{i:0;s:3:"101";i:1;s:1:"0";i:2;s:3:"359";i:3;s:3:"703";}}s:3:"one";a:4:{s:1:"C";s:2:"49";s:2:"WX";s:3:"556";s:1:"N";s:3:"one";s:1:"B";a:4:{i:0;s:3:"101";i:1;s:1:"0";i:2;s:3:"359";i:3;s:3:"703";}}i:50;a:4:{s:1:"C";s:2:"50";s:2:"WX";s:3:"556";s:1:"N";s:3:"two";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"507";i:3;s:3:"703";}}s:3:"two";a:4:{s:1:"C";s:2:"50";s:2:"WX";s:3:"556";s:1:"N";s:3:"two";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"507";i:3;s:3:"703";}}i:51;a:4:{s:1:"C";s:2:"51";s:2:"WX";s:3:"556";s:1:"N";s:5:"three";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-19";i:2;s:3:"522";i:3;s:3:"703";}}s:5:"three";a:4:{s:1:"C";s:2:"51";s:2:"WX";s:3:"556";s:1:"N";s:5:"three";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-19";i:2;s:3:"522";i:3;s:3:"703";}}i:52;a:4:{s:1:"C";s:2:"52";s:2:"WX";s:3:"556";s:1:"N";s:4:"four";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:1:"0";i:2;s:3:"523";i:3;s:3:"703";}}s:4:"four";a:4:{s:1:"C";s:2:"52";s:2:"WX";s:3:"556";s:1:"N";s:4:"four";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:1:"0";i:2;s:3:"523";i:3;s:3:"703";}}i:53;a:4:{s:1:"C";s:2:"53";s:2:"WX";s:3:"556";s:1:"N";s:4:"five";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:3:"-19";i:2;s:3:"514";i:3;s:3:"688";}}s:4:"five";a:4:{s:1:"C";s:2:"53";s:2:"WX";s:3:"556";s:1:"N";s:4:"five";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:3:"-19";i:2;s:3:"514";i:3;s:3:"688";}}i:54;a:4:{s:1:"C";s:2:"54";s:2:"WX";s:3:"556";s:1:"N";s:3:"six";s:1:"B";a:4:{i:0;s:2:"38";i:1;s:3:"-19";i:2;s:3:"518";i:3;s:3:"703";}}s:3:"six";a:4:{s:1:"C";s:2:"54";s:2:"WX";s:3:"556";s:1:"N";s:3:"six";s:1:"B";a:4:{i:0;s:2:"38";i:1;s:3:"-19";i:2;s:3:"518";i:3;s:3:"703";}}i:55;a:4:{s:1:"C";s:2:"55";s:2:"WX";s:3:"556";s:1:"N";s:5:"seven";s:1:"B";a:4:{i:0;s:2:"37";i:1;s:1:"0";i:2;s:3:"523";i:3;s:3:"688";}}s:5:"seven";a:4:{s:1:"C";s:2:"55";s:2:"WX";s:3:"556";s:1:"N";s:5:"seven";s:1:"B";a:4:{i:0;s:2:"37";i:1;s:1:"0";i:2;s:3:"523";i:3;s:3:"688";}}i:56;a:4:{s:1:"C";s:2:"56";s:2:"WX";s:3:"556";s:1:"N";s:5:"eight";s:1:"B";a:4:{i:0;s:2:"38";i:1;s:3:"-19";i:2;s:3:"517";i:3;s:3:"703";}}s:5:"eight";a:4:{s:1:"C";s:2:"56";s:2:"WX";s:3:"556";s:1:"N";s:5:"eight";s:1:"B";a:4:{i:0;s:2:"38";i:1;s:3:"-19";i:2;s:3:"517";i:3;s:3:"703";}}i:57;a:4:{s:1:"C";s:2:"57";s:2:"WX";s:3:"556";s:1:"N";s:4:"nine";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:3:"-19";i:2;s:3:"514";i:3;s:3:"703";}}s:4:"nine";a:4:{s:1:"C";s:2:"57";s:2:"WX";s:3:"556";s:1:"N";s:4:"nine";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:3:"-19";i:2;s:3:"514";i:3;s:3:"703";}}i:58;a:4:{s:1:"C";s:2:"58";s:2:"WX";s:3:"278";s:1:"N";s:5:"colon";s:1:"B";a:4:{i:0;s:2:"87";i:1;s:1:"0";i:2;s:3:"191";i:3;s:3:"516";}}s:5:"colon";a:4:{s:1:"C";s:2:"58";s:2:"WX";s:3:"278";s:1:"N";s:5:"colon";s:1:"B";a:4:{i:0;s:2:"87";i:1;s:1:"0";i:2;s:3:"191";i:3;s:3:"516";}}i:59;a:4:{s:1:"C";s:2:"59";s:2:"WX";s:3:"278";s:1:"N";s:9:"semicolon";s:1:"B";a:4:{i:0;s:2:"87";i:1;s:4:"-147";i:2;s:3:"191";i:3;s:3:"516";}}s:9:"semicolon";a:4:{s:1:"C";s:2:"59";s:2:"WX";s:3:"278";s:1:"N";s:9:"semicolon";s:1:"B";a:4:{i:0;s:2:"87";i:1;s:4:"-147";i:2;s:3:"191";i:3;s:3:"516";}}i:60;a:4:{s:1:"C";s:2:"60";s:2:"WX";s:3:"584";s:1:"N";s:4:"less";s:1:"B";a:4:{i:0;s:2:"48";i:1;s:2:"11";i:2;s:3:"536";i:3;s:3:"495";}}s:4:"less";a:4:{s:1:"C";s:2:"60";s:2:"WX";s:3:"584";s:1:"N";s:4:"less";s:1:"B";a:4:{i:0;s:2:"48";i:1;s:2:"11";i:2;s:3:"536";i:3;s:3:"495";}}i:61;a:4:{s:1:"C";s:2:"61";s:2:"WX";s:3:"584";s:1:"N";s:5:"equal";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:3:"115";i:2;s:3:"545";i:3;s:3:"390";}}s:5:"equal";a:4:{s:1:"C";s:2:"61";s:2:"WX";s:3:"584";s:1:"N";s:5:"equal";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:3:"115";i:2;s:3:"545";i:3;s:3:"390";}}i:62;a:4:{s:1:"C";s:2:"62";s:2:"WX";s:3:"584";s:1:"N";s:7:"greater";s:1:"B";a:4:{i:0;s:2:"48";i:1;s:2:"11";i:2;s:3:"536";i:3;s:3:"495";}}s:7:"greater";a:4:{s:1:"C";s:2:"62";s:2:"WX";s:3:"584";s:1:"N";s:7:"greater";s:1:"B";a:4:{i:0;s:2:"48";i:1;s:2:"11";i:2;s:3:"536";i:3;s:3:"495";}}i:63;a:4:{s:1:"C";s:2:"63";s:2:"WX";s:3:"556";s:1:"N";s:8:"question";s:1:"B";a:4:{i:0;s:2:"56";i:1;s:1:"0";i:2;s:3:"492";i:3;s:3:"727";}}s:8:"question";a:4:{s:1:"C";s:2:"63";s:2:"WX";s:3:"556";s:1:"N";s:8:"question";s:1:"B";a:4:{i:0;s:2:"56";i:1;s:1:"0";i:2;s:3:"492";i:3;s:3:"727";}}i:64;a:4:{s:1:"C";s:2:"64";s:2:"WX";s:4:"1015";s:1:"N";s:2:"at";s:1:"B";a:4:{i:0;s:3:"147";i:1;s:3:"-19";i:2;s:3:"868";i:3;s:3:"737";}}s:2:"at";a:4:{s:1:"C";s:2:"64";s:2:"WX";s:4:"1015";s:1:"N";s:2:"at";s:1:"B";a:4:{i:0;s:3:"147";i:1;s:3:"-19";i:2;s:3:"868";i:3;s:3:"737";}}i:65;a:4:{s:1:"C";s:2:"65";s:2:"WX";s:3:"667";s:1:"N";s:1:"A";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"654";i:3;s:3:"718";}}s:1:"A";a:4:{s:1:"C";s:2:"65";s:2:"WX";s:3:"667";s:1:"N";s:1:"A";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"654";i:3;s:3:"718";}}i:66;a:4:{s:1:"C";s:2:"66";s:2:"WX";s:3:"667";s:1:"N";s:1:"B";s:1:"B";a:4:{i:0;s:2:"74";i:1;s:1:"0";i:2;s:3:"627";i:3;s:3:"718";}}s:1:"B";a:4:{s:1:"C";s:2:"66";s:2:"WX";s:3:"667";s:1:"N";s:1:"B";s:1:"B";a:4:{i:0;s:2:"74";i:1;s:1:"0";i:2;s:3:"627";i:3;s:3:"718";}}i:67;a:4:{s:1:"C";s:2:"67";s:2:"WX";s:3:"722";s:1:"N";s:1:"C";s:1:"B";a:4:{i:0;s:2:"44";i:1;s:3:"-19";i:2;s:3:"681";i:3;s:3:"737";}}s:1:"C";a:4:{s:1:"C";s:2:"67";s:2:"WX";s:3:"722";s:1:"N";s:1:"C";s:1:"B";a:4:{i:0;s:2:"44";i:1;s:3:"-19";i:2;s:3:"681";i:3;s:3:"737";}}i:68;a:4:{s:1:"C";s:2:"68";s:2:"WX";s:3:"722";s:1:"N";s:1:"D";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:1:"0";i:2;s:3:"674";i:3;s:3:"718";}}s:1:"D";a:4:{s:1:"C";s:2:"68";s:2:"WX";s:3:"722";s:1:"N";s:1:"D";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:1:"0";i:2;s:3:"674";i:3;s:3:"718";}}i:69;a:4:{s:1:"C";s:2:"69";s:2:"WX";s:3:"667";s:1:"N";s:1:"E";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"616";i:3;s:3:"718";}}s:1:"E";a:4:{s:1:"C";s:2:"69";s:2:"WX";s:3:"667";s:1:"N";s:1:"E";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"616";i:3;s:3:"718";}}i:70;a:4:{s:1:"C";s:2:"70";s:2:"WX";s:3:"611";s:1:"N";s:1:"F";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"583";i:3;s:3:"718";}}s:1:"F";a:4:{s:1:"C";s:2:"70";s:2:"WX";s:3:"611";s:1:"N";s:1:"F";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"583";i:3;s:3:"718";}}i:71;a:4:{s:1:"C";s:2:"71";s:2:"WX";s:3:"778";s:1:"N";s:1:"G";s:1:"B";a:4:{i:0;s:2:"48";i:1;s:3:"-19";i:2;s:3:"704";i:3;s:3:"737";}}s:1:"G";a:4:{s:1:"C";s:2:"71";s:2:"WX";s:3:"778";s:1:"N";s:1:"G";s:1:"B";a:4:{i:0;s:2:"48";i:1;s:3:"-19";i:2;s:3:"704";i:3;s:3:"737";}}i:72;a:4:{s:1:"C";s:2:"72";s:2:"WX";s:3:"722";s:1:"N";s:1:"H";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"646";i:3;s:3:"718";}}s:1:"H";a:4:{s:1:"C";s:2:"72";s:2:"WX";s:3:"722";s:1:"N";s:1:"H";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"646";i:3;s:3:"718";}}i:73;a:4:{s:1:"C";s:2:"73";s:2:"WX";s:3:"278";s:1:"N";s:1:"I";s:1:"B";a:4:{i:0;s:2:"91";i:1;s:1:"0";i:2;s:3:"188";i:3;s:3:"718";}}s:1:"I";a:4:{s:1:"C";s:2:"73";s:2:"WX";s:3:"278";s:1:"N";s:1:"I";s:1:"B";a:4:{i:0;s:2:"91";i:1;s:1:"0";i:2;s:3:"188";i:3;s:3:"718";}}i:74;a:4:{s:1:"C";s:2:"74";s:2:"WX";s:3:"500";s:1:"N";s:1:"J";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:3:"-19";i:2;s:3:"428";i:3;s:3:"718";}}s:1:"J";a:4:{s:1:"C";s:2:"74";s:2:"WX";s:3:"500";s:1:"N";s:1:"J";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:3:"-19";i:2;s:3:"428";i:3;s:3:"718";}}i:75;a:4:{s:1:"C";s:2:"75";s:2:"WX";s:3:"667";s:1:"N";s:1:"K";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"663";i:3;s:3:"718";}}s:1:"K";a:4:{s:1:"C";s:2:"75";s:2:"WX";s:3:"667";s:1:"N";s:1:"K";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"663";i:3;s:3:"718";}}i:76;a:4:{s:1:"C";s:2:"76";s:2:"WX";s:3:"556";s:1:"N";s:1:"L";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"537";i:3;s:3:"718";}}s:1:"L";a:4:{s:1:"C";s:2:"76";s:2:"WX";s:3:"556";s:1:"N";s:1:"L";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"537";i:3;s:3:"718";}}i:77;a:4:{s:1:"C";s:2:"77";s:2:"WX";s:3:"833";s:1:"N";s:1:"M";s:1:"B";a:4:{i:0;s:2:"73";i:1;s:1:"0";i:2;s:3:"761";i:3;s:3:"718";}}s:1:"M";a:4:{s:1:"C";s:2:"77";s:2:"WX";s:3:"833";s:1:"N";s:1:"M";s:1:"B";a:4:{i:0;s:2:"73";i:1;s:1:"0";i:2;s:3:"761";i:3;s:3:"718";}}i:78;a:4:{s:1:"C";s:2:"78";s:2:"WX";s:3:"722";s:1:"N";s:1:"N";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"646";i:3;s:3:"718";}}s:1:"N";a:4:{s:1:"C";s:2:"78";s:2:"WX";s:3:"722";s:1:"N";s:1:"N";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"646";i:3;s:3:"718";}}i:79;a:4:{s:1:"C";s:2:"79";s:2:"WX";s:3:"778";s:1:"N";s:1:"O";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:3:"-19";i:2;s:3:"739";i:3;s:3:"737";}}s:1:"O";a:4:{s:1:"C";s:2:"79";s:2:"WX";s:3:"778";s:1:"N";s:1:"O";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:3:"-19";i:2;s:3:"739";i:3;s:3:"737";}}i:80;a:4:{s:1:"C";s:2:"80";s:2:"WX";s:3:"667";s:1:"N";s:1:"P";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"622";i:3;s:3:"718";}}s:1:"P";a:4:{s:1:"C";s:2:"80";s:2:"WX";s:3:"667";s:1:"N";s:1:"P";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"622";i:3;s:3:"718";}}i:81;a:4:{s:1:"C";s:2:"81";s:2:"WX";s:3:"778";s:1:"N";s:1:"Q";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:3:"-56";i:2;s:3:"739";i:3;s:3:"737";}}s:1:"Q";a:4:{s:1:"C";s:2:"81";s:2:"WX";s:3:"778";s:1:"N";s:1:"Q";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:3:"-56";i:2;s:3:"739";i:3;s:3:"737";}}i:82;a:4:{s:1:"C";s:2:"82";s:2:"WX";s:3:"722";s:1:"N";s:1:"R";s:1:"B";a:4:{i:0;s:2:"88";i:1;s:1:"0";i:2;s:3:"684";i:3;s:3:"718";}}s:1:"R";a:4:{s:1:"C";s:2:"82";s:2:"WX";s:3:"722";s:1:"N";s:1:"R";s:1:"B";a:4:{i:0;s:2:"88";i:1;s:1:"0";i:2;s:3:"684";i:3;s:3:"718";}}i:83;a:4:{s:1:"C";s:2:"83";s:2:"WX";s:3:"667";s:1:"N";s:1:"S";s:1:"B";a:4:{i:0;s:2:"49";i:1;s:3:"-19";i:2;s:3:"620";i:3;s:3:"737";}}s:1:"S";a:4:{s:1:"C";s:2:"83";s:2:"WX";s:3:"667";s:1:"N";s:1:"S";s:1:"B";a:4:{i:0;s:2:"49";i:1;s:3:"-19";i:2;s:3:"620";i:3;s:3:"737";}}i:84;a:4:{s:1:"C";s:2:"84";s:2:"WX";s:3:"611";s:1:"N";s:1:"T";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"597";i:3;s:3:"718";}}s:1:"T";a:4:{s:1:"C";s:2:"84";s:2:"WX";s:3:"611";s:1:"N";s:1:"T";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"597";i:3;s:3:"718";}}i:85;a:4:{s:1:"C";s:2:"85";s:2:"WX";s:3:"722";s:1:"N";s:1:"U";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:3:"-19";i:2;s:3:"644";i:3;s:3:"718";}}s:1:"U";a:4:{s:1:"C";s:2:"85";s:2:"WX";s:3:"722";s:1:"N";s:1:"U";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:3:"-19";i:2;s:3:"644";i:3;s:3:"718";}}i:86;a:4:{s:1:"C";s:2:"86";s:2:"WX";s:3:"667";s:1:"N";s:1:"V";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"647";i:3;s:3:"718";}}s:1:"V";a:4:{s:1:"C";s:2:"86";s:2:"WX";s:3:"667";s:1:"N";s:1:"V";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"647";i:3;s:3:"718";}}i:87;a:4:{s:1:"C";s:2:"87";s:2:"WX";s:3:"944";s:1:"N";s:1:"W";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"928";i:3;s:3:"718";}}s:1:"W";a:4:{s:1:"C";s:2:"87";s:2:"WX";s:3:"944";s:1:"N";s:1:"W";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"928";i:3;s:3:"718";}}i:88;a:4:{s:1:"C";s:2:"88";s:2:"WX";s:3:"667";s:1:"N";s:1:"X";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:1:"0";i:2;s:3:"648";i:3;s:3:"718";}}s:1:"X";a:4:{s:1:"C";s:2:"88";s:2:"WX";s:3:"667";s:1:"N";s:1:"X";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:1:"0";i:2;s:3:"648";i:3;s:3:"718";}}i:89;a:4:{s:1:"C";s:2:"89";s:2:"WX";s:3:"667";s:1:"N";s:1:"Y";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"653";i:3;s:3:"718";}}s:1:"Y";a:4:{s:1:"C";s:2:"89";s:2:"WX";s:3:"667";s:1:"N";s:1:"Y";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"653";i:3;s:3:"718";}}i:90;a:4:{s:1:"C";s:2:"90";s:2:"WX";s:3:"611";s:1:"N";s:1:"Z";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:1:"0";i:2;s:3:"588";i:3;s:3:"718";}}s:1:"Z";a:4:{s:1:"C";s:2:"90";s:2:"WX";s:3:"611";s:1:"N";s:1:"Z";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:1:"0";i:2;s:3:"588";i:3;s:3:"718";}}i:91;a:4:{s:1:"C";s:2:"91";s:2:"WX";s:3:"278";s:1:"N";s:11:"bracketleft";s:1:"B";a:4:{i:0;s:2:"63";i:1;s:4:"-196";i:2;s:3:"250";i:3;s:3:"722";}}s:11:"bracketleft";a:4:{s:1:"C";s:2:"91";s:2:"WX";s:3:"278";s:1:"N";s:11:"bracketleft";s:1:"B";a:4:{i:0;s:2:"63";i:1;s:4:"-196";i:2;s:3:"250";i:3;s:3:"722";}}i:92;a:4:{s:1:"C";s:2:"92";s:2:"WX";s:3:"278";s:1:"N";s:9:"backslash";s:1:"B";a:4:{i:0;s:3:"-17";i:1;s:3:"-19";i:2;s:3:"295";i:3;s:3:"737";}}s:9:"backslash";a:4:{s:1:"C";s:2:"92";s:2:"WX";s:3:"278";s:1:"N";s:9:"backslash";s:1:"B";a:4:{i:0;s:3:"-17";i:1;s:3:"-19";i:2;s:3:"295";i:3;s:3:"737";}}i:93;a:4:{s:1:"C";s:2:"93";s:2:"WX";s:3:"278";s:1:"N";s:12:"bracketright";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:4:"-196";i:2;s:3:"215";i:3;s:3:"722";}}s:12:"bracketright";a:4:{s:1:"C";s:2:"93";s:2:"WX";s:3:"278";s:1:"N";s:12:"bracketright";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:4:"-196";i:2;s:3:"215";i:3;s:3:"722";}}i:94;a:4:{s:1:"C";s:2:"94";s:2:"WX";s:3:"469";s:1:"N";s:11:"asciicircum";s:1:"B";a:4:{i:0;s:3:"-14";i:1;s:3:"264";i:2;s:3:"483";i:3;s:3:"688";}}s:11:"asciicircum";a:4:{s:1:"C";s:2:"94";s:2:"WX";s:3:"469";s:1:"N";s:11:"asciicircum";s:1:"B";a:4:{i:0;s:3:"-14";i:1;s:3:"264";i:2;s:3:"483";i:3;s:3:"688";}}i:95;a:4:{s:1:"C";s:2:"95";s:2:"WX";s:3:"556";s:1:"N";s:10:"underscore";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:4:"-125";i:2;s:3:"556";i:3;s:3:"-75";}}s:10:"underscore";a:4:{s:1:"C";s:2:"95";s:2:"WX";s:3:"556";s:1:"N";s:10:"underscore";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:4:"-125";i:2;s:3:"556";i:3;s:3:"-75";}}i:96;a:4:{s:1:"C";s:2:"96";s:2:"WX";s:3:"222";s:1:"N";s:9:"quoteleft";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:3:"470";i:2;s:3:"169";i:3;s:3:"725";}}s:9:"quoteleft";a:4:{s:1:"C";s:2:"96";s:2:"WX";s:3:"222";s:1:"N";s:9:"quoteleft";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:3:"470";i:2;s:3:"169";i:3;s:3:"725";}}i:97;a:4:{s:1:"C";s:2:"97";s:2:"WX";s:3:"556";s:1:"N";s:1:"a";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:3:"-15";i:2;s:3:"530";i:3;s:3:"538";}}s:1:"a";a:4:{s:1:"C";s:2:"97";s:2:"WX";s:3:"556";s:1:"N";s:1:"a";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:3:"-15";i:2;s:3:"530";i:3;s:3:"538";}}i:98;a:4:{s:1:"C";s:2:"98";s:2:"WX";s:3:"556";s:1:"N";s:1:"b";s:1:"B";a:4:{i:0;s:2:"58";i:1;s:3:"-15";i:2;s:3:"517";i:3;s:3:"718";}}s:1:"b";a:4:{s:1:"C";s:2:"98";s:2:"WX";s:3:"556";s:1:"N";s:1:"b";s:1:"B";a:4:{i:0;s:2:"58";i:1;s:3:"-15";i:2;s:3:"517";i:3;s:3:"718";}}i:99;a:4:{s:1:"C";s:2:"99";s:2:"WX";s:3:"500";s:1:"N";s:1:"c";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"-15";i:2;s:3:"477";i:3;s:3:"538";}}s:1:"c";a:4:{s:1:"C";s:2:"99";s:2:"WX";s:3:"500";s:1:"N";s:1:"c";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"-15";i:2;s:3:"477";i:3;s:3:"538";}}i:100;a:4:{s:1:"C";s:3:"100";s:2:"WX";s:3:"556";s:1:"N";s:1:"d";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-15";i:2;s:3:"499";i:3;s:3:"718";}}s:1:"d";a:4:{s:1:"C";s:3:"100";s:2:"WX";s:3:"556";s:1:"N";s:1:"d";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-15";i:2;s:3:"499";i:3;s:3:"718";}}i:101;a:4:{s:1:"C";s:3:"101";s:2:"WX";s:3:"556";s:1:"N";s:1:"e";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"-15";i:2;s:3:"516";i:3;s:3:"538";}}s:1:"e";a:4:{s:1:"C";s:3:"101";s:2:"WX";s:3:"556";s:1:"N";s:1:"e";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"-15";i:2;s:3:"516";i:3;s:3:"538";}}i:102;a:5:{s:1:"C";s:3:"102";s:2:"WX";s:3:"278";s:1:"N";s:1:"f";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"262";i:3;s:3:"728";}s:1:"L";a:2:{i:0;s:1:"l";i:1;s:2:"fl";}}s:1:"f";a:5:{s:1:"C";s:3:"102";s:2:"WX";s:3:"278";s:1:"N";s:1:"f";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"262";i:3;s:3:"728";}s:1:"L";a:2:{i:0;s:1:"l";i:1;s:2:"fl";}}i:103;a:4:{s:1:"C";s:3:"103";s:2:"WX";s:3:"556";s:1:"N";s:1:"g";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:4:"-220";i:2;s:3:"499";i:3;s:3:"538";}}s:1:"g";a:4:{s:1:"C";s:3:"103";s:2:"WX";s:3:"556";s:1:"N";s:1:"g";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:4:"-220";i:2;s:3:"499";i:3;s:3:"538";}}i:104;a:4:{s:1:"C";s:3:"104";s:2:"WX";s:3:"556";s:1:"N";s:1:"h";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:1:"0";i:2;s:3:"491";i:3;s:3:"718";}}s:1:"h";a:4:{s:1:"C";s:3:"104";s:2:"WX";s:3:"556";s:1:"N";s:1:"h";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:1:"0";i:2;s:3:"491";i:3;s:3:"718";}}i:105;a:4:{s:1:"C";s:3:"105";s:2:"WX";s:3:"222";s:1:"N";s:1:"i";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:1:"0";i:2;s:3:"155";i:3;s:3:"718";}}s:1:"i";a:4:{s:1:"C";s:3:"105";s:2:"WX";s:3:"222";s:1:"N";s:1:"i";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:1:"0";i:2;s:3:"155";i:3;s:3:"718";}}i:106;a:4:{s:1:"C";s:3:"106";s:2:"WX";s:3:"222";s:1:"N";s:1:"j";s:1:"B";a:4:{i:0;s:3:"-16";i:1;s:4:"-210";i:2;s:3:"155";i:3;s:3:"718";}}s:1:"j";a:4:{s:1:"C";s:3:"106";s:2:"WX";s:3:"222";s:1:"N";s:1:"j";s:1:"B";a:4:{i:0;s:3:"-16";i:1;s:4:"-210";i:2;s:3:"155";i:3;s:3:"718";}}i:107;a:4:{s:1:"C";s:3:"107";s:2:"WX";s:3:"500";s:1:"N";s:1:"k";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:1:"0";i:2;s:3:"501";i:3;s:3:"718";}}s:1:"k";a:4:{s:1:"C";s:3:"107";s:2:"WX";s:3:"500";s:1:"N";s:1:"k";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:1:"0";i:2;s:3:"501";i:3;s:3:"718";}}i:108;a:4:{s:1:"C";s:3:"108";s:2:"WX";s:3:"222";s:1:"N";s:1:"l";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:1:"0";i:2;s:3:"155";i:3;s:3:"718";}}s:1:"l";a:4:{s:1:"C";s:3:"108";s:2:"WX";s:3:"222";s:1:"N";s:1:"l";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:1:"0";i:2;s:3:"155";i:3;s:3:"718";}}i:109;a:4:{s:1:"C";s:3:"109";s:2:"WX";s:3:"833";s:1:"N";s:1:"m";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:1:"0";i:2;s:3:"769";i:3;s:3:"538";}}s:1:"m";a:4:{s:1:"C";s:3:"109";s:2:"WX";s:3:"833";s:1:"N";s:1:"m";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:1:"0";i:2;s:3:"769";i:3;s:3:"538";}}i:110;a:4:{s:1:"C";s:3:"110";s:2:"WX";s:3:"556";s:1:"N";s:1:"n";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:1:"0";i:2;s:3:"491";i:3;s:3:"538";}}s:1:"n";a:4:{s:1:"C";s:3:"110";s:2:"WX";s:3:"556";s:1:"N";s:1:"n";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:1:"0";i:2;s:3:"491";i:3;s:3:"538";}}i:111;a:4:{s:1:"C";s:3:"111";s:2:"WX";s:3:"556";s:1:"N";s:1:"o";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"521";i:3;s:3:"538";}}s:1:"o";a:4:{s:1:"C";s:3:"111";s:2:"WX";s:3:"556";s:1:"N";s:1:"o";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"521";i:3;s:3:"538";}}i:112;a:4:{s:1:"C";s:3:"112";s:2:"WX";s:3:"556";s:1:"N";s:1:"p";s:1:"B";a:4:{i:0;s:2:"58";i:1;s:4:"-207";i:2;s:3:"517";i:3;s:3:"538";}}s:1:"p";a:4:{s:1:"C";s:3:"112";s:2:"WX";s:3:"556";s:1:"N";s:1:"p";s:1:"B";a:4:{i:0;s:2:"58";i:1;s:4:"-207";i:2;s:3:"517";i:3;s:3:"538";}}i:113;a:4:{s:1:"C";s:3:"113";s:2:"WX";s:3:"556";s:1:"N";s:1:"q";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:4:"-207";i:2;s:3:"494";i:3;s:3:"538";}}s:1:"q";a:4:{s:1:"C";s:3:"113";s:2:"WX";s:3:"556";s:1:"N";s:1:"q";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:4:"-207";i:2;s:3:"494";i:3;s:3:"538";}}i:114;a:4:{s:1:"C";s:3:"114";s:2:"WX";s:3:"333";s:1:"N";s:1:"r";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"332";i:3;s:3:"538";}}s:1:"r";a:4:{s:1:"C";s:3:"114";s:2:"WX";s:3:"333";s:1:"N";s:1:"r";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"332";i:3;s:3:"538";}}i:115;a:4:{s:1:"C";s:3:"115";s:2:"WX";s:3:"500";s:1:"N";s:1:"s";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:3:"-15";i:2;s:3:"464";i:3;s:3:"538";}}s:1:"s";a:4:{s:1:"C";s:3:"115";s:2:"WX";s:3:"500";s:1:"N";s:1:"s";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:3:"-15";i:2;s:3:"464";i:3;s:3:"538";}}i:116;a:4:{s:1:"C";s:3:"116";s:2:"WX";s:3:"278";s:1:"N";s:1:"t";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:2:"-7";i:2;s:3:"257";i:3;s:3:"669";}}s:1:"t";a:4:{s:1:"C";s:3:"116";s:2:"WX";s:3:"278";s:1:"N";s:1:"t";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:2:"-7";i:2;s:3:"257";i:3;s:3:"669";}}i:117;a:4:{s:1:"C";s:3:"117";s:2:"WX";s:3:"556";s:1:"N";s:1:"u";s:1:"B";a:4:{i:0;s:2:"68";i:1;s:3:"-15";i:2;s:3:"489";i:3;s:3:"523";}}s:1:"u";a:4:{s:1:"C";s:3:"117";s:2:"WX";s:3:"556";s:1:"N";s:1:"u";s:1:"B";a:4:{i:0;s:2:"68";i:1;s:3:"-15";i:2;s:3:"489";i:3;s:3:"523";}}i:118;a:4:{s:1:"C";s:3:"118";s:2:"WX";s:3:"500";s:1:"N";s:1:"v";s:1:"B";a:4:{i:0;s:1:"8";i:1;s:1:"0";i:2;s:3:"492";i:3;s:3:"523";}}s:1:"v";a:4:{s:1:"C";s:3:"118";s:2:"WX";s:3:"500";s:1:"N";s:1:"v";s:1:"B";a:4:{i:0;s:1:"8";i:1;s:1:"0";i:2;s:3:"492";i:3;s:3:"523";}}i:119;a:4:{s:1:"C";s:3:"119";s:2:"WX";s:3:"722";s:1:"N";s:1:"w";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"709";i:3;s:3:"523";}}s:1:"w";a:4:{s:1:"C";s:3:"119";s:2:"WX";s:3:"722";s:1:"N";s:1:"w";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"709";i:3;s:3:"523";}}i:120;a:4:{s:1:"C";s:3:"120";s:2:"WX";s:3:"500";s:1:"N";s:1:"x";s:1:"B";a:4:{i:0;s:2:"11";i:1;s:1:"0";i:2;s:3:"490";i:3;s:3:"523";}}s:1:"x";a:4:{s:1:"C";s:3:"120";s:2:"WX";s:3:"500";s:1:"N";s:1:"x";s:1:"B";a:4:{i:0;s:2:"11";i:1;s:1:"0";i:2;s:3:"490";i:3;s:3:"523";}}i:121;a:4:{s:1:"C";s:3:"121";s:2:"WX";s:3:"500";s:1:"N";s:1:"y";s:1:"B";a:4:{i:0;s:2:"11";i:1;s:4:"-214";i:2;s:3:"489";i:3;s:3:"523";}}s:1:"y";a:4:{s:1:"C";s:3:"121";s:2:"WX";s:3:"500";s:1:"N";s:1:"y";s:1:"B";a:4:{i:0;s:2:"11";i:1;s:4:"-214";i:2;s:3:"489";i:3;s:3:"523";}}i:122;a:4:{s:1:"C";s:3:"122";s:2:"WX";s:3:"500";s:1:"N";s:1:"z";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:1:"0";i:2;s:3:"469";i:3;s:3:"523";}}s:1:"z";a:4:{s:1:"C";s:3:"122";s:2:"WX";s:3:"500";s:1:"N";s:1:"z";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:1:"0";i:2;s:3:"469";i:3;s:3:"523";}}i:123;a:4:{s:1:"C";s:3:"123";s:2:"WX";s:3:"334";s:1:"N";s:9:"braceleft";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:4:"-196";i:2;s:3:"292";i:3;s:3:"722";}}s:9:"braceleft";a:4:{s:1:"C";s:3:"123";s:2:"WX";s:3:"334";s:1:"N";s:9:"braceleft";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:4:"-196";i:2;s:3:"292";i:3;s:3:"722";}}i:124;a:4:{s:1:"C";s:3:"124";s:2:"WX";s:3:"260";s:1:"N";s:3:"bar";s:1:"B";a:4:{i:0;s:2:"94";i:1;s:4:"-225";i:2;s:3:"167";i:3;s:3:"775";}}s:3:"bar";a:4:{s:1:"C";s:3:"124";s:2:"WX";s:3:"260";s:1:"N";s:3:"bar";s:1:"B";a:4:{i:0;s:2:"94";i:1;s:4:"-225";i:2;s:3:"167";i:3;s:3:"775";}}i:125;a:4:{s:1:"C";s:3:"125";s:2:"WX";s:3:"334";s:1:"N";s:10:"braceright";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:4:"-196";i:2;s:3:"292";i:3;s:3:"722";}}s:10:"braceright";a:4:{s:1:"C";s:3:"125";s:2:"WX";s:3:"334";s:1:"N";s:10:"braceright";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:4:"-196";i:2;s:3:"292";i:3;s:3:"722";}}i:126;a:4:{s:1:"C";s:3:"126";s:2:"WX";s:3:"584";s:1:"N";s:10:"asciitilde";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:3:"180";i:2;s:3:"523";i:3;s:3:"326";}}s:10:"asciitilde";a:4:{s:1:"C";s:3:"126";s:2:"WX";s:3:"584";s:1:"N";s:10:"asciitilde";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:3:"180";i:2;s:3:"523";i:3;s:3:"326";}}i:161;a:4:{s:1:"C";s:3:"161";s:2:"WX";s:3:"333";s:1:"N";s:10:"exclamdown";s:1:"B";a:4:{i:0;s:3:"118";i:1;s:4:"-195";i:2;s:3:"215";i:3;s:3:"523";}}s:10:"exclamdown";a:4:{s:1:"C";s:3:"161";s:2:"WX";s:3:"333";s:1:"N";s:10:"exclamdown";s:1:"B";a:4:{i:0;s:3:"118";i:1;s:4:"-195";i:2;s:3:"215";i:3;s:3:"523";}}i:162;a:4:{s:1:"C";s:3:"162";s:2:"WX";s:3:"556";s:1:"N";s:4:"cent";s:1:"B";a:4:{i:0;s:2:"51";i:1;s:4:"-115";i:2;s:3:"513";i:3;s:3:"623";}}s:4:"cent";a:4:{s:1:"C";s:3:"162";s:2:"WX";s:3:"556";s:1:"N";s:4:"cent";s:1:"B";a:4:{i:0;s:2:"51";i:1;s:4:"-115";i:2;s:3:"513";i:3;s:3:"623";}}i:163;a:4:{s:1:"C";s:3:"163";s:2:"WX";s:3:"556";s:1:"N";s:8:"sterling";s:1:"B";a:4:{i:0;s:2:"33";i:1;s:3:"-16";i:2;s:3:"539";i:3;s:3:"718";}}s:8:"sterling";a:4:{s:1:"C";s:3:"163";s:2:"WX";s:3:"556";s:1:"N";s:8:"sterling";s:1:"B";a:4:{i:0;s:2:"33";i:1;s:3:"-16";i:2;s:3:"539";i:3;s:3:"718";}}i:164;a:4:{s:1:"C";s:3:"164";s:2:"WX";s:3:"167";s:1:"N";s:8:"fraction";s:1:"B";a:4:{i:0;s:4:"-166";i:1;s:3:"-19";i:2;s:3:"333";i:3;s:3:"703";}}s:8:"fraction";a:4:{s:1:"C";s:3:"164";s:2:"WX";s:3:"167";s:1:"N";s:8:"fraction";s:1:"B";a:4:{i:0;s:4:"-166";i:1;s:3:"-19";i:2;s:3:"333";i:3;s:3:"703";}}i:165;a:4:{s:1:"C";s:3:"165";s:2:"WX";s:3:"556";s:1:"N";s:3:"yen";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:1:"0";i:2;s:3:"553";i:3;s:3:"688";}}s:3:"yen";a:4:{s:1:"C";s:3:"165";s:2:"WX";s:3:"556";s:1:"N";s:3:"yen";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:1:"0";i:2;s:3:"553";i:3;s:3:"688";}}i:166;a:4:{s:1:"C";s:3:"166";s:2:"WX";s:3:"556";s:1:"N";s:6:"florin";s:1:"B";a:4:{i:0;s:3:"-11";i:1;s:4:"-207";i:2;s:3:"501";i:3;s:3:"737";}}s:6:"florin";a:4:{s:1:"C";s:3:"166";s:2:"WX";s:3:"556";s:1:"N";s:6:"florin";s:1:"B";a:4:{i:0;s:3:"-11";i:1;s:4:"-207";i:2;s:3:"501";i:3;s:3:"737";}}i:167;a:4:{s:1:"C";s:3:"167";s:2:"WX";s:3:"556";s:1:"N";s:7:"section";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:4:"-191";i:2;s:3:"512";i:3;s:3:"737";}}s:7:"section";a:4:{s:1:"C";s:3:"167";s:2:"WX";s:3:"556";s:1:"N";s:7:"section";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:4:"-191";i:2;s:3:"512";i:3;s:3:"737";}}i:168;a:4:{s:1:"C";s:3:"168";s:2:"WX";s:3:"556";s:1:"N";s:8:"currency";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:2:"99";i:2;s:3:"528";i:3;s:3:"603";}}s:8:"currency";a:4:{s:1:"C";s:3:"168";s:2:"WX";s:3:"556";s:1:"N";s:8:"currency";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:2:"99";i:2;s:3:"528";i:3;s:3:"603";}}i:169;a:4:{s:1:"C";s:3:"169";s:2:"WX";s:3:"191";s:1:"N";s:11:"quotesingle";s:1:"B";a:4:{i:0;s:2:"59";i:1;s:3:"463";i:2;s:3:"132";i:3;s:3:"718";}}s:11:"quotesingle";a:4:{s:1:"C";s:3:"169";s:2:"WX";s:3:"191";s:1:"N";s:11:"quotesingle";s:1:"B";a:4:{i:0;s:2:"59";i:1;s:3:"463";i:2;s:3:"132";i:3;s:3:"718";}}i:170;a:4:{s:1:"C";s:3:"170";s:2:"WX";s:3:"333";s:1:"N";s:12:"quotedblleft";s:1:"B";a:4:{i:0;s:2:"38";i:1;s:3:"470";i:2;s:3:"307";i:3;s:3:"725";}}s:12:"quotedblleft";a:4:{s:1:"C";s:3:"170";s:2:"WX";s:3:"333";s:1:"N";s:12:"quotedblleft";s:1:"B";a:4:{i:0;s:2:"38";i:1;s:3:"470";i:2;s:3:"307";i:3;s:3:"725";}}i:171;a:4:{s:1:"C";s:3:"171";s:2:"WX";s:3:"556";s:1:"N";s:13:"guillemotleft";s:1:"B";a:4:{i:0;s:2:"97";i:1;s:3:"108";i:2;s:3:"459";i:3;s:3:"446";}}s:13:"guillemotleft";a:4:{s:1:"C";s:3:"171";s:2:"WX";s:3:"556";s:1:"N";s:13:"guillemotleft";s:1:"B";a:4:{i:0;s:2:"97";i:1;s:3:"108";i:2;s:3:"459";i:3;s:3:"446";}}i:172;a:4:{s:1:"C";s:3:"172";s:2:"WX";s:3:"333";s:1:"N";s:13:"guilsinglleft";s:1:"B";a:4:{i:0;s:2:"88";i:1;s:3:"108";i:2;s:3:"245";i:3;s:3:"446";}}s:13:"guilsinglleft";a:4:{s:1:"C";s:3:"172";s:2:"WX";s:3:"333";s:1:"N";s:13:"guilsinglleft";s:1:"B";a:4:{i:0;s:2:"88";i:1;s:3:"108";i:2;s:3:"245";i:3;s:3:"446";}}i:173;a:4:{s:1:"C";s:3:"173";s:2:"WX";s:3:"333";s:1:"N";s:14:"guilsinglright";s:1:"B";a:4:{i:0;s:2:"88";i:1;s:3:"108";i:2;s:3:"245";i:3;s:3:"446";}}s:14:"guilsinglright";a:4:{s:1:"C";s:3:"173";s:2:"WX";s:3:"333";s:1:"N";s:14:"guilsinglright";s:1:"B";a:4:{i:0;s:2:"88";i:1;s:3:"108";i:2;s:3:"245";i:3;s:3:"446";}}i:174;a:4:{s:1:"C";s:3:"174";s:2:"WX";s:3:"500";s:1:"N";s:2:"fi";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"434";i:3;s:3:"728";}}s:2:"fi";a:4:{s:1:"C";s:3:"174";s:2:"WX";s:3:"500";s:1:"N";s:2:"fi";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"434";i:3;s:3:"728";}}i:175;a:4:{s:1:"C";s:3:"175";s:2:"WX";s:3:"500";s:1:"N";s:2:"fl";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"432";i:3;s:3:"728";}}s:2:"fl";a:4:{s:1:"C";s:3:"175";s:2:"WX";s:3:"500";s:1:"N";s:2:"fl";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"432";i:3;s:3:"728";}}i:177;a:4:{s:1:"C";s:3:"177";s:2:"WX";s:3:"556";s:1:"N";s:6:"endash";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"240";i:2;s:3:"556";i:3;s:3:"313";}}s:6:"endash";a:4:{s:1:"C";s:3:"177";s:2:"WX";s:3:"556";s:1:"N";s:6:"endash";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"240";i:2;s:3:"556";i:3;s:3:"313";}}i:178;a:4:{s:1:"C";s:3:"178";s:2:"WX";s:3:"556";s:1:"N";s:6:"dagger";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:4:"-159";i:2;s:3:"514";i:3;s:3:"718";}}s:6:"dagger";a:4:{s:1:"C";s:3:"178";s:2:"WX";s:3:"556";s:1:"N";s:6:"dagger";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:4:"-159";i:2;s:3:"514";i:3;s:3:"718";}}i:179;a:4:{s:1:"C";s:3:"179";s:2:"WX";s:3:"556";s:1:"N";s:9:"daggerdbl";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:4:"-159";i:2;s:3:"514";i:3;s:3:"718";}}s:9:"daggerdbl";a:4:{s:1:"C";s:3:"179";s:2:"WX";s:3:"556";s:1:"N";s:9:"daggerdbl";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:4:"-159";i:2;s:3:"514";i:3;s:3:"718";}}i:180;a:4:{s:1:"C";s:3:"180";s:2:"WX";s:3:"278";s:1:"N";s:14:"periodcentered";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:3:"190";i:2;s:3:"202";i:3;s:3:"315";}}s:14:"periodcentered";a:4:{s:1:"C";s:3:"180";s:2:"WX";s:3:"278";s:1:"N";s:14:"periodcentered";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:3:"190";i:2;s:3:"202";i:3;s:3:"315";}}i:182;a:4:{s:1:"C";s:3:"182";s:2:"WX";s:3:"537";s:1:"N";s:9:"paragraph";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:4:"-173";i:2;s:3:"497";i:3;s:3:"718";}}s:9:"paragraph";a:4:{s:1:"C";s:3:"182";s:2:"WX";s:3:"537";s:1:"N";s:9:"paragraph";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:4:"-173";i:2;s:3:"497";i:3;s:3:"718";}}i:183;a:4:{s:1:"C";s:3:"183";s:2:"WX";s:3:"350";s:1:"N";s:6:"bullet";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:3:"202";i:2;s:3:"333";i:3;s:3:"517";}}s:6:"bullet";a:4:{s:1:"C";s:3:"183";s:2:"WX";s:3:"350";s:1:"N";s:6:"bullet";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:3:"202";i:2;s:3:"333";i:3;s:3:"517";}}i:184;a:4:{s:1:"C";s:3:"184";s:2:"WX";s:3:"222";s:1:"N";s:14:"quotesinglbase";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:4:"-149";i:2;s:3:"157";i:3;s:3:"106";}}s:14:"quotesinglbase";a:4:{s:1:"C";s:3:"184";s:2:"WX";s:3:"222";s:1:"N";s:14:"quotesinglbase";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:4:"-149";i:2;s:3:"157";i:3;s:3:"106";}}i:185;a:4:{s:1:"C";s:3:"185";s:2:"WX";s:3:"333";s:1:"N";s:12:"quotedblbase";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:4:"-149";i:2;s:3:"295";i:3;s:3:"106";}}s:12:"quotedblbase";a:4:{s:1:"C";s:3:"185";s:2:"WX";s:3:"333";s:1:"N";s:12:"quotedblbase";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:4:"-149";i:2;s:3:"295";i:3;s:3:"106";}}i:186;a:4:{s:1:"C";s:3:"186";s:2:"WX";s:3:"333";s:1:"N";s:13:"quotedblright";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:3:"463";i:2;s:3:"295";i:3;s:3:"718";}}s:13:"quotedblright";a:4:{s:1:"C";s:3:"186";s:2:"WX";s:3:"333";s:1:"N";s:13:"quotedblright";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:3:"463";i:2;s:3:"295";i:3;s:3:"718";}}i:187;a:4:{s:1:"C";s:3:"187";s:2:"WX";s:3:"556";s:1:"N";s:14:"guillemotright";s:1:"B";a:4:{i:0;s:2:"97";i:1;s:3:"108";i:2;s:3:"459";i:3;s:3:"446";}}s:14:"guillemotright";a:4:{s:1:"C";s:3:"187";s:2:"WX";s:3:"556";s:1:"N";s:14:"guillemotright";s:1:"B";a:4:{i:0;s:2:"97";i:1;s:3:"108";i:2;s:3:"459";i:3;s:3:"446";}}i:188;a:4:{s:1:"C";s:3:"188";s:2:"WX";s:4:"1000";s:1:"N";s:8:"ellipsis";s:1:"B";a:4:{i:0;s:3:"115";i:1;s:1:"0";i:2;s:3:"885";i:3;s:3:"106";}}s:8:"ellipsis";a:4:{s:1:"C";s:3:"188";s:2:"WX";s:4:"1000";s:1:"N";s:8:"ellipsis";s:1:"B";a:4:{i:0;s:3:"115";i:1;s:1:"0";i:2;s:3:"885";i:3;s:3:"106";}}i:189;a:4:{s:1:"C";s:3:"189";s:2:"WX";s:4:"1000";s:1:"N";s:11:"perthousand";s:1:"B";a:4:{i:0;s:1:"7";i:1;s:3:"-19";i:2;s:3:"994";i:3;s:3:"703";}}s:11:"perthousand";a:4:{s:1:"C";s:3:"189";s:2:"WX";s:4:"1000";s:1:"N";s:11:"perthousand";s:1:"B";a:4:{i:0;s:1:"7";i:1;s:3:"-19";i:2;s:3:"994";i:3;s:3:"703";}}i:191;a:4:{s:1:"C";s:3:"191";s:2:"WX";s:3:"611";s:1:"N";s:12:"questiondown";s:1:"B";a:4:{i:0;s:2:"91";i:1;s:4:"-201";i:2;s:3:"527";i:3;s:3:"525";}}s:12:"questiondown";a:4:{s:1:"C";s:3:"191";s:2:"WX";s:3:"611";s:1:"N";s:12:"questiondown";s:1:"B";a:4:{i:0;s:2:"91";i:1;s:4:"-201";i:2;s:3:"527";i:3;s:3:"525";}}i:193;a:4:{s:1:"C";s:3:"193";s:2:"WX";s:3:"333";s:1:"N";s:5:"grave";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:3:"593";i:2;s:3:"211";i:3;s:3:"734";}}s:5:"grave";a:4:{s:1:"C";s:3:"193";s:2:"WX";s:3:"333";s:1:"N";s:5:"grave";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:3:"593";i:2;s:3:"211";i:3;s:3:"734";}}i:194;a:4:{s:1:"C";s:3:"194";s:2:"WX";s:3:"333";s:1:"N";s:5:"acute";s:1:"B";a:4:{i:0;s:3:"122";i:1;s:3:"593";i:2;s:3:"319";i:3;s:3:"734";}}s:5:"acute";a:4:{s:1:"C";s:3:"194";s:2:"WX";s:3:"333";s:1:"N";s:5:"acute";s:1:"B";a:4:{i:0;s:3:"122";i:1;s:3:"593";i:2;s:3:"319";i:3;s:3:"734";}}i:195;a:4:{s:1:"C";s:3:"195";s:2:"WX";s:3:"333";s:1:"N";s:10:"circumflex";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:3:"593";i:2;s:3:"312";i:3;s:3:"734";}}s:10:"circumflex";a:4:{s:1:"C";s:3:"195";s:2:"WX";s:3:"333";s:1:"N";s:10:"circumflex";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:3:"593";i:2;s:3:"312";i:3;s:3:"734";}}i:196;a:4:{s:1:"C";s:3:"196";s:2:"WX";s:3:"333";s:1:"N";s:5:"tilde";s:1:"B";a:4:{i:0;s:2:"-4";i:1;s:3:"606";i:2;s:3:"337";i:3;s:3:"722";}}s:5:"tilde";a:4:{s:1:"C";s:3:"196";s:2:"WX";s:3:"333";s:1:"N";s:5:"tilde";s:1:"B";a:4:{i:0;s:2:"-4";i:1;s:3:"606";i:2;s:3:"337";i:3;s:3:"722";}}i:197;a:4:{s:1:"C";s:3:"197";s:2:"WX";s:3:"333";s:1:"N";s:6:"macron";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:3:"627";i:2;s:3:"323";i:3;s:3:"684";}}s:6:"macron";a:4:{s:1:"C";s:3:"197";s:2:"WX";s:3:"333";s:1:"N";s:6:"macron";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:3:"627";i:2;s:3:"323";i:3;s:3:"684";}}i:198;a:4:{s:1:"C";s:3:"198";s:2:"WX";s:3:"333";s:1:"N";s:5:"breve";s:1:"B";a:4:{i:0;s:2:"13";i:1;s:3:"595";i:2;s:3:"321";i:3;s:3:"731";}}s:5:"breve";a:4:{s:1:"C";s:3:"198";s:2:"WX";s:3:"333";s:1:"N";s:5:"breve";s:1:"B";a:4:{i:0;s:2:"13";i:1;s:3:"595";i:2;s:3:"321";i:3;s:3:"731";}}i:199;a:4:{s:1:"C";s:3:"199";s:2:"WX";s:3:"333";s:1:"N";s:9:"dotaccent";s:1:"B";a:4:{i:0;s:3:"121";i:1;s:3:"604";i:2;s:3:"212";i:3;s:3:"706";}}s:9:"dotaccent";a:4:{s:1:"C";s:3:"199";s:2:"WX";s:3:"333";s:1:"N";s:9:"dotaccent";s:1:"B";a:4:{i:0;s:3:"121";i:1;s:3:"604";i:2;s:3:"212";i:3;s:3:"706";}}i:200;a:4:{s:1:"C";s:3:"200";s:2:"WX";s:3:"333";s:1:"N";s:8:"dieresis";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"604";i:2;s:3:"293";i:3;s:3:"706";}}s:8:"dieresis";a:4:{s:1:"C";s:3:"200";s:2:"WX";s:3:"333";s:1:"N";s:8:"dieresis";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"604";i:2;s:3:"293";i:3;s:3:"706";}}i:202;a:4:{s:1:"C";s:3:"202";s:2:"WX";s:3:"333";s:1:"N";s:4:"ring";s:1:"B";a:4:{i:0;s:2:"75";i:1;s:3:"572";i:2;s:3:"259";i:3;s:3:"756";}}s:4:"ring";a:4:{s:1:"C";s:3:"202";s:2:"WX";s:3:"333";s:1:"N";s:4:"ring";s:1:"B";a:4:{i:0;s:2:"75";i:1;s:3:"572";i:2;s:3:"259";i:3;s:3:"756";}}i:203;a:4:{s:1:"C";s:3:"203";s:2:"WX";s:3:"333";s:1:"N";s:7:"cedilla";s:1:"B";a:4:{i:0;s:2:"45";i:1;s:4:"-225";i:2;s:3:"259";i:3;s:1:"0";}}s:7:"cedilla";a:4:{s:1:"C";s:3:"203";s:2:"WX";s:3:"333";s:1:"N";s:7:"cedilla";s:1:"B";a:4:{i:0;s:2:"45";i:1;s:4:"-225";i:2;s:3:"259";i:3;s:1:"0";}}i:205;a:4:{s:1:"C";s:3:"205";s:2:"WX";s:3:"333";s:1:"N";s:12:"hungarumlaut";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:3:"593";i:2;s:3:"409";i:3;s:3:"734";}}s:12:"hungarumlaut";a:4:{s:1:"C";s:3:"205";s:2:"WX";s:3:"333";s:1:"N";s:12:"hungarumlaut";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:3:"593";i:2;s:3:"409";i:3;s:3:"734";}}i:206;a:4:{s:1:"C";s:3:"206";s:2:"WX";s:3:"333";s:1:"N";s:6:"ogonek";s:1:"B";a:4:{i:0;s:2:"73";i:1;s:4:"-225";i:2;s:3:"287";i:3;s:1:"0";}}s:6:"ogonek";a:4:{s:1:"C";s:3:"206";s:2:"WX";s:3:"333";s:1:"N";s:6:"ogonek";s:1:"B";a:4:{i:0;s:2:"73";i:1;s:4:"-225";i:2;s:3:"287";i:3;s:1:"0";}}i:207;a:4:{s:1:"C";s:3:"207";s:2:"WX";s:3:"333";s:1:"N";s:5:"caron";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:3:"593";i:2;s:3:"312";i:3;s:3:"734";}}s:5:"caron";a:4:{s:1:"C";s:3:"207";s:2:"WX";s:3:"333";s:1:"N";s:5:"caron";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:3:"593";i:2;s:3:"312";i:3;s:3:"734";}}i:208;a:4:{s:1:"C";s:3:"208";s:2:"WX";s:4:"1000";s:1:"N";s:6:"emdash";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"240";i:2;s:4:"1000";i:3;s:3:"313";}}s:6:"emdash";a:4:{s:1:"C";s:3:"208";s:2:"WX";s:4:"1000";s:1:"N";s:6:"emdash";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"240";i:2;s:4:"1000";i:3;s:3:"313";}}i:225;a:4:{s:1:"C";s:3:"225";s:2:"WX";s:4:"1000";s:1:"N";s:2:"AE";s:1:"B";a:4:{i:0;s:1:"8";i:1;s:1:"0";i:2;s:3:"951";i:3;s:3:"718";}}s:2:"AE";a:4:{s:1:"C";s:3:"225";s:2:"WX";s:4:"1000";s:1:"N";s:2:"AE";s:1:"B";a:4:{i:0;s:1:"8";i:1;s:1:"0";i:2;s:3:"951";i:3;s:3:"718";}}i:227;a:4:{s:1:"C";s:3:"227";s:2:"WX";s:3:"370";s:1:"N";s:11:"ordfeminine";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:3:"405";i:2;s:3:"346";i:3;s:3:"737";}}s:11:"ordfeminine";a:4:{s:1:"C";s:3:"227";s:2:"WX";s:3:"370";s:1:"N";s:11:"ordfeminine";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:3:"405";i:2;s:3:"346";i:3;s:3:"737";}}i:232;a:4:{s:1:"C";s:3:"232";s:2:"WX";s:3:"556";s:1:"N";s:6:"Lslash";s:1:"B";a:4:{i:0;s:3:"-20";i:1;s:1:"0";i:2;s:3:"537";i:3;s:3:"718";}}s:6:"Lslash";a:4:{s:1:"C";s:3:"232";s:2:"WX";s:3:"556";s:1:"N";s:6:"Lslash";s:1:"B";a:4:{i:0;s:3:"-20";i:1;s:1:"0";i:2;s:3:"537";i:3;s:3:"718";}}i:233;a:4:{s:1:"C";s:3:"233";s:2:"WX";s:3:"778";s:1:"N";s:6:"Oslash";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:3:"-19";i:2;s:3:"740";i:3;s:3:"737";}}s:6:"Oslash";a:4:{s:1:"C";s:3:"233";s:2:"WX";s:3:"778";s:1:"N";s:6:"Oslash";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:3:"-19";i:2;s:3:"740";i:3;s:3:"737";}}i:234;a:4:{s:1:"C";s:3:"234";s:2:"WX";s:4:"1000";s:1:"N";s:2:"OE";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:3:"-19";i:2;s:3:"965";i:3;s:3:"737";}}s:2:"OE";a:4:{s:1:"C";s:3:"234";s:2:"WX";s:4:"1000";s:1:"N";s:2:"OE";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:3:"-19";i:2;s:3:"965";i:3;s:3:"737";}}i:235;a:4:{s:1:"C";s:3:"235";s:2:"WX";s:3:"365";s:1:"N";s:12:"ordmasculine";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"405";i:2;s:3:"341";i:3;s:3:"737";}}s:12:"ordmasculine";a:4:{s:1:"C";s:3:"235";s:2:"WX";s:3:"365";s:1:"N";s:12:"ordmasculine";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"405";i:2;s:3:"341";i:3;s:3:"737";}}i:241;a:4:{s:1:"C";s:3:"241";s:2:"WX";s:3:"889";s:1:"N";s:2:"ae";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:3:"-15";i:2;s:3:"847";i:3;s:3:"538";}}s:2:"ae";a:4:{s:1:"C";s:3:"241";s:2:"WX";s:3:"889";s:1:"N";s:2:"ae";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:3:"-15";i:2;s:3:"847";i:3;s:3:"538";}}i:245;a:4:{s:1:"C";s:3:"245";s:2:"WX";s:3:"278";s:1:"N";s:8:"dotlessi";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:1:"0";i:2;s:3:"183";i:3;s:3:"523";}}s:8:"dotlessi";a:4:{s:1:"C";s:3:"245";s:2:"WX";s:3:"278";s:1:"N";s:8:"dotlessi";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:1:"0";i:2;s:3:"183";i:3;s:3:"523";}}i:248;a:4:{s:1:"C";s:3:"248";s:2:"WX";s:3:"222";s:1:"N";s:6:"lslash";s:1:"B";a:4:{i:0;s:3:"-20";i:1;s:1:"0";i:2;s:3:"242";i:3;s:3:"718";}}s:6:"lslash";a:4:{s:1:"C";s:3:"248";s:2:"WX";s:3:"222";s:1:"N";s:6:"lslash";s:1:"B";a:4:{i:0;s:3:"-20";i:1;s:1:"0";i:2;s:3:"242";i:3;s:3:"718";}}i:249;a:4:{s:1:"C";s:3:"249";s:2:"WX";s:3:"611";s:1:"N";s:6:"oslash";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:3:"-22";i:2;s:3:"537";i:3;s:3:"545";}}s:6:"oslash";a:4:{s:1:"C";s:3:"249";s:2:"WX";s:3:"611";s:1:"N";s:6:"oslash";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:3:"-22";i:2;s:3:"537";i:3;s:3:"545";}}i:250;a:4:{s:1:"C";s:3:"250";s:2:"WX";s:3:"944";s:1:"N";s:2:"oe";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-15";i:2;s:3:"902";i:3;s:3:"538";}}s:2:"oe";a:4:{s:1:"C";s:3:"250";s:2:"WX";s:3:"944";s:1:"N";s:2:"oe";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-15";i:2;s:3:"902";i:3;s:3:"538";}}i:251;a:4:{s:1:"C";s:3:"251";s:2:"WX";s:3:"611";s:1:"N";s:10:"germandbls";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:3:"-15";i:2;s:3:"571";i:3;s:3:"728";}}s:10:"germandbls";a:4:{s:1:"C";s:3:"251";s:2:"WX";s:3:"611";s:1:"N";s:10:"germandbls";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:3:"-15";i:2;s:3:"571";i:3;s:3:"728";}}s:9:"Idieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:9:"Idieresis";s:1:"B";a:4:{i:0;s:2:"13";i:1;s:1:"0";i:2;s:3:"266";i:3;s:3:"901";}}s:6:"eacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"eacute";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"-15";i:2;s:3:"516";i:3;s:3:"734";}}s:6:"abreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"abreve";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:3:"-15";i:2;s:3:"530";i:3;s:3:"731";}}s:13:"uhungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:13:"uhungarumlaut";s:1:"B";a:4:{i:0;s:2:"68";i:1;s:3:"-15";i:2;s:3:"521";i:3;s:3:"734";}}s:6:"ecaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"ecaron";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"-15";i:2;s:3:"516";i:3;s:3:"734";}}s:9:"Ydieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:9:"Ydieresis";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"653";i:3;s:3:"901";}}s:6:"divide";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"584";s:1:"N";s:6:"divide";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:3:"-19";i:2;s:3:"545";i:3;s:3:"524";}}s:6:"Yacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Yacute";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"653";i:3;s:3:"929";}}s:11:"Acircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:11:"Acircumflex";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"654";i:3;s:3:"929";}}s:6:"aacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"aacute";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:3:"-15";i:2;s:3:"530";i:3;s:3:"734";}}s:11:"Ucircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:11:"Ucircumflex";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:3:"-19";i:2;s:3:"644";i:3;s:3:"929";}}s:6:"yacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"yacute";s:1:"B";a:4:{i:0;s:2:"11";i:1;s:4:"-214";i:2;s:3:"489";i:3;s:3:"734";}}s:12:"scommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:12:"scommaaccent";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:4:"-225";i:2;s:3:"464";i:3;s:3:"538";}}s:11:"ecircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:11:"ecircumflex";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"-15";i:2;s:3:"516";i:3;s:3:"734";}}s:5:"Uring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:5:"Uring";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:3:"-19";i:2;s:3:"644";i:3;s:3:"931";}}s:9:"Udieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:9:"Udieresis";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:3:"-19";i:2;s:3:"644";i:3;s:3:"901";}}s:7:"aogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:7:"aogonek";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:4:"-220";i:2;s:3:"547";i:3;s:3:"538";}}s:6:"Uacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Uacute";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:3:"-19";i:2;s:3:"644";i:3;s:3:"929";}}s:7:"uogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:7:"uogonek";s:1:"B";a:4:{i:0;s:2:"68";i:1;s:4:"-225";i:2;s:3:"519";i:3;s:3:"523";}}s:9:"Edieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:9:"Edieresis";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"616";i:3;s:3:"901";}}s:6:"Dcroat";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Dcroat";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:3:"674";i:3;s:3:"718";}}s:11:"commaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"250";s:1:"N";s:11:"commaaccent";s:1:"B";a:4:{i:0;s:2:"87";i:1;s:4:"-225";i:2;s:3:"181";i:3;s:3:"-40";}}s:9:"copyright";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"737";s:1:"N";s:9:"copyright";s:1:"B";a:4:{i:0;s:3:"-14";i:1;s:3:"-19";i:2;s:3:"752";i:3;s:3:"737";}}s:7:"Emacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:7:"Emacron";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"616";i:3;s:3:"879";}}s:6:"ccaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"ccaron";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"-15";i:2;s:3:"477";i:3;s:3:"734";}}s:5:"aring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:5:"aring";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:3:"-15";i:2;s:3:"530";i:3;s:3:"756";}}s:12:"Ncommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:12:"Ncommaaccent";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:4:"-225";i:2;s:3:"646";i:3;s:3:"718";}}s:6:"lacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"222";s:1:"N";s:6:"lacute";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:1:"0";i:2;s:3:"264";i:3;s:3:"929";}}s:6:"agrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"agrave";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:3:"-15";i:2;s:3:"530";i:3;s:3:"734";}}s:12:"Tcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:12:"Tcommaaccent";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:4:"-225";i:2;s:3:"597";i:3;s:3:"718";}}s:6:"Cacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Cacute";s:1:"B";a:4:{i:0;s:2:"44";i:1;s:3:"-19";i:2;s:3:"681";i:3;s:3:"929";}}s:6:"atilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"atilde";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:3:"-15";i:2;s:3:"530";i:3;s:3:"722";}}s:10:"Edotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:10:"Edotaccent";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"616";i:3;s:3:"901";}}s:6:"scaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"scaron";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:3:"-15";i:2;s:3:"464";i:3;s:3:"734";}}s:8:"scedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:8:"scedilla";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:4:"-225";i:2;s:3:"464";i:3;s:3:"538";}}s:6:"iacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:6:"iacute";s:1:"B";a:4:{i:0;s:2:"95";i:1;s:1:"0";i:2;s:3:"292";i:3;s:3:"734";}}s:7:"lozenge";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"471";s:1:"N";s:7:"lozenge";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:1:"0";i:2;s:3:"462";i:3;s:3:"728";}}s:6:"Rcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Rcaron";s:1:"B";a:4:{i:0;s:2:"88";i:1;s:1:"0";i:2;s:3:"684";i:3;s:3:"929";}}s:12:"Gcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:12:"Gcommaaccent";s:1:"B";a:4:{i:0;s:2:"48";i:1;s:4:"-225";i:2;s:3:"704";i:3;s:3:"737";}}s:11:"ucircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:11:"ucircumflex";s:1:"B";a:4:{i:0;s:2:"68";i:1;s:3:"-15";i:2;s:3:"489";i:3;s:3:"734";}}s:11:"acircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:11:"acircumflex";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:3:"-15";i:2;s:3:"530";i:3;s:3:"734";}}s:7:"Amacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:7:"Amacron";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"654";i:3;s:3:"879";}}s:6:"rcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"333";s:1:"N";s:6:"rcaron";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:1:"0";i:2;s:3:"352";i:3;s:3:"734";}}s:8:"ccedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:8:"ccedilla";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:4:"-225";i:2;s:3:"477";i:3;s:3:"538";}}s:10:"Zdotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:10:"Zdotaccent";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:1:"0";i:2;s:3:"588";i:3;s:3:"901";}}s:5:"Thorn";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:5:"Thorn";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"622";i:3;s:3:"718";}}s:7:"Omacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:7:"Omacron";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:3:"-19";i:2;s:3:"739";i:3;s:3:"879";}}s:6:"Racute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Racute";s:1:"B";a:4:{i:0;s:2:"88";i:1;s:1:"0";i:2;s:3:"684";i:3;s:3:"929";}}s:6:"Sacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Sacute";s:1:"B";a:4:{i:0;s:2:"49";i:1;s:3:"-19";i:2;s:3:"620";i:3;s:3:"929";}}s:6:"dcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"643";s:1:"N";s:6:"dcaron";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-15";i:2;s:3:"655";i:3;s:3:"718";}}s:7:"Umacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:7:"Umacron";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:3:"-19";i:2;s:3:"644";i:3;s:3:"879";}}s:5:"uring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:5:"uring";s:1:"B";a:4:{i:0;s:2:"68";i:1;s:3:"-15";i:2;s:3:"489";i:3;s:3:"756";}}s:13:"threesuperior";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"333";s:1:"N";s:13:"threesuperior";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:3:"270";i:2;s:3:"325";i:3;s:3:"703";}}s:6:"Ograve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:6:"Ograve";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:3:"-19";i:2;s:3:"739";i:3;s:3:"929";}}s:6:"Agrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Agrave";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"654";i:3;s:3:"929";}}s:6:"Abreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Abreve";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"654";i:3;s:3:"926";}}s:8:"multiply";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"584";s:1:"N";s:8:"multiply";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:1:"0";i:2;s:3:"545";i:3;s:3:"506";}}s:6:"uacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"uacute";s:1:"B";a:4:{i:0;s:2:"68";i:1;s:3:"-15";i:2;s:3:"489";i:3;s:3:"734";}}s:6:"Tcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"Tcaron";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"597";i:3;s:3:"929";}}s:11:"partialdiff";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"476";s:1:"N";s:11:"partialdiff";s:1:"B";a:4:{i:0;s:2:"13";i:1;s:3:"-38";i:2;s:3:"463";i:3;s:3:"714";}}s:9:"ydieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:9:"ydieresis";s:1:"B";a:4:{i:0;s:2:"11";i:1;s:4:"-214";i:2;s:3:"489";i:3;s:3:"706";}}s:6:"Nacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Nacute";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"646";i:3;s:3:"929";}}s:11:"icircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:11:"icircumflex";s:1:"B";a:4:{i:0;s:2:"-6";i:1;s:1:"0";i:2;s:3:"285";i:3;s:3:"734";}}s:11:"Ecircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:11:"Ecircumflex";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"616";i:3;s:3:"929";}}s:9:"adieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:9:"adieresis";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:3:"-15";i:2;s:3:"530";i:3;s:3:"706";}}s:9:"edieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:9:"edieresis";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"-15";i:2;s:3:"516";i:3;s:3:"706";}}s:6:"cacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"cacute";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"-15";i:2;s:3:"477";i:3;s:3:"734";}}s:6:"nacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"nacute";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:1:"0";i:2;s:3:"491";i:3;s:3:"734";}}s:7:"umacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:7:"umacron";s:1:"B";a:4:{i:0;s:2:"68";i:1;s:3:"-15";i:2;s:3:"489";i:3;s:3:"684";}}s:6:"Ncaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Ncaron";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"646";i:3;s:3:"929";}}s:6:"Iacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:6:"Iacute";s:1:"B";a:4:{i:0;s:2:"91";i:1;s:1:"0";i:2;s:3:"292";i:3;s:3:"929";}}s:9:"plusminus";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"584";s:1:"N";s:9:"plusminus";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:1:"0";i:2;s:3:"545";i:3;s:3:"506";}}s:9:"brokenbar";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"260";s:1:"N";s:9:"brokenbar";s:1:"B";a:4:{i:0;s:2:"94";i:1;s:4:"-150";i:2;s:3:"167";i:3;s:3:"700";}}s:10:"registered";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"737";s:1:"N";s:10:"registered";s:1:"B";a:4:{i:0;s:3:"-14";i:1;s:3:"-19";i:2;s:3:"752";i:3;s:3:"737";}}s:6:"Gbreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:6:"Gbreve";s:1:"B";a:4:{i:0;s:2:"48";i:1;s:3:"-19";i:2;s:3:"704";i:3;s:3:"926";}}s:10:"Idotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:10:"Idotaccent";s:1:"B";a:4:{i:0;s:2:"91";i:1;s:1:"0";i:2;s:3:"188";i:3;s:3:"901";}}s:9:"summation";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"summation";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:3:"-10";i:2;s:3:"586";i:3;s:3:"706";}}s:6:"Egrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Egrave";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"616";i:3;s:3:"929";}}s:6:"racute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"333";s:1:"N";s:6:"racute";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:1:"0";i:2;s:3:"332";i:3;s:3:"734";}}s:7:"omacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:7:"omacron";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"521";i:3;s:3:"684";}}s:6:"Zacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"Zacute";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:1:"0";i:2;s:3:"588";i:3;s:3:"929";}}s:6:"Zcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"Zcaron";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:1:"0";i:2;s:3:"588";i:3;s:3:"929";}}s:12:"greaterequal";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"549";s:1:"N";s:12:"greaterequal";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"523";i:3;s:3:"674";}}s:3:"Eth";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:3:"Eth";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:3:"674";i:3;s:3:"718";}}s:8:"Ccedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:8:"Ccedilla";s:1:"B";a:4:{i:0;s:2:"44";i:1;s:4:"-225";i:2;s:3:"681";i:3;s:3:"737";}}s:12:"lcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"222";s:1:"N";s:12:"lcommaaccent";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:4:"-225";i:2;s:3:"167";i:3;s:3:"718";}}s:6:"tcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"317";s:1:"N";s:6:"tcaron";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:2:"-7";i:2;s:3:"329";i:3;s:3:"808";}}s:7:"eogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:7:"eogonek";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:4:"-225";i:2;s:3:"516";i:3;s:3:"538";}}s:7:"Uogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:7:"Uogonek";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:4:"-225";i:2;s:3:"644";i:3;s:3:"718";}}s:6:"Aacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Aacute";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"654";i:3;s:3:"929";}}s:9:"Adieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:9:"Adieresis";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"654";i:3;s:3:"901";}}s:6:"egrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"egrave";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"-15";i:2;s:3:"516";i:3;s:3:"734";}}s:6:"zacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"zacute";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:1:"0";i:2;s:3:"469";i:3;s:3:"734";}}s:7:"iogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"222";s:1:"N";s:7:"iogonek";s:1:"B";a:4:{i:0;s:3:"-31";i:1;s:4:"-225";i:2;s:3:"183";i:3;s:3:"718";}}s:6:"Oacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:6:"Oacute";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:3:"-19";i:2;s:3:"739";i:3;s:3:"929";}}s:6:"oacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"oacute";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"521";i:3;s:3:"734";}}s:7:"amacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:7:"amacron";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:3:"-15";i:2;s:3:"530";i:3;s:3:"684";}}s:6:"sacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"sacute";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:3:"-15";i:2;s:3:"464";i:3;s:3:"734";}}s:9:"idieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:9:"idieresis";s:1:"B";a:4:{i:0;s:2:"13";i:1;s:1:"0";i:2;s:3:"266";i:3;s:3:"706";}}s:11:"Ocircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:11:"Ocircumflex";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:3:"-19";i:2;s:3:"739";i:3;s:3:"929";}}s:6:"Ugrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Ugrave";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:3:"-19";i:2;s:3:"644";i:3;s:3:"929";}}s:5:"Delta";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"612";s:1:"N";s:5:"Delta";s:1:"B";a:4:{i:0;s:1:"6";i:1;s:1:"0";i:2;s:3:"608";i:3;s:3:"688";}}s:5:"thorn";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:5:"thorn";s:1:"B";a:4:{i:0;s:2:"58";i:1;s:4:"-207";i:2;s:3:"517";i:3;s:3:"718";}}s:11:"twosuperior";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"333";s:1:"N";s:11:"twosuperior";s:1:"B";a:4:{i:0;s:1:"4";i:1;s:3:"281";i:2;s:3:"323";i:3;s:3:"703";}}s:9:"Odieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:9:"Odieresis";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:3:"-19";i:2;s:3:"739";i:3;s:3:"901";}}s:2:"mu";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:2:"mu";s:1:"B";a:4:{i:0;s:2:"68";i:1;s:4:"-207";i:2;s:3:"489";i:3;s:3:"523";}}s:6:"igrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:6:"igrave";s:1:"B";a:4:{i:0;s:3:"-13";i:1;s:1:"0";i:2;s:3:"184";i:3;s:3:"734";}}s:13:"ohungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:13:"ohungarumlaut";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"521";i:3;s:3:"734";}}s:7:"Eogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:7:"Eogonek";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:4:"-220";i:2;s:3:"633";i:3;s:3:"718";}}s:6:"dcroat";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"dcroat";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-15";i:2;s:3:"550";i:3;s:3:"718";}}s:13:"threequarters";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"834";s:1:"N";s:13:"threequarters";s:1:"B";a:4:{i:0;s:2:"45";i:1;s:3:"-19";i:2;s:3:"810";i:3;s:3:"703";}}s:8:"Scedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:8:"Scedilla";s:1:"B";a:4:{i:0;s:2:"49";i:1;s:4:"-225";i:2;s:3:"620";i:3;s:3:"737";}}s:6:"lcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"299";s:1:"N";s:6:"lcaron";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:1:"0";i:2;s:3:"311";i:3;s:3:"718";}}s:12:"Kcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:12:"Kcommaaccent";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:4:"-225";i:2;s:3:"663";i:3;s:3:"718";}}s:6:"Lacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"Lacute";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"537";i:3;s:3:"929";}}s:9:"trademark";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:4:"1000";s:1:"N";s:9:"trademark";s:1:"B";a:4:{i:0;s:2:"46";i:1;s:3:"306";i:2;s:3:"903";i:3;s:3:"718";}}s:10:"edotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:10:"edotaccent";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"-15";i:2;s:3:"516";i:3;s:3:"706";}}s:6:"Igrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:6:"Igrave";s:1:"B";a:4:{i:0;s:3:"-13";i:1;s:1:"0";i:2;s:3:"188";i:3;s:3:"929";}}s:7:"Imacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:7:"Imacron";s:1:"B";a:4:{i:0;s:3:"-17";i:1;s:1:"0";i:2;s:3:"296";i:3;s:3:"879";}}s:6:"Lcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"Lcaron";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"537";i:3;s:3:"718";}}s:7:"onehalf";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"834";s:1:"N";s:7:"onehalf";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:3:"-19";i:2;s:3:"773";i:3;s:3:"703";}}s:9:"lessequal";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"549";s:1:"N";s:9:"lessequal";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"523";i:3;s:3:"674";}}s:11:"ocircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:11:"ocircumflex";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"521";i:3;s:3:"734";}}s:6:"ntilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"ntilde";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:1:"0";i:2;s:3:"491";i:3;s:3:"722";}}s:13:"Uhungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:13:"Uhungarumlaut";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:3:"-19";i:2;s:3:"644";i:3;s:3:"929";}}s:6:"Eacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Eacute";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"616";i:3;s:3:"929";}}s:7:"emacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:7:"emacron";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"-15";i:2;s:3:"516";i:3;s:3:"684";}}s:6:"gbreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"gbreve";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:4:"-220";i:2;s:3:"499";i:3;s:3:"731";}}s:10:"onequarter";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"834";s:1:"N";s:10:"onequarter";s:1:"B";a:4:{i:0;s:2:"73";i:1;s:3:"-19";i:2;s:3:"756";i:3;s:3:"703";}}s:6:"Scaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Scaron";s:1:"B";a:4:{i:0;s:2:"49";i:1;s:3:"-19";i:2;s:3:"620";i:3;s:3:"929";}}s:12:"Scommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:12:"Scommaaccent";s:1:"B";a:4:{i:0;s:2:"49";i:1;s:4:"-225";i:2;s:3:"620";i:3;s:3:"737";}}s:13:"Ohungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:13:"Ohungarumlaut";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:3:"-19";i:2;s:3:"739";i:3;s:3:"929";}}s:6:"degree";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"400";s:1:"N";s:6:"degree";s:1:"B";a:4:{i:0;s:2:"54";i:1;s:3:"411";i:2;s:3:"346";i:3;s:3:"703";}}s:6:"ograve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"ograve";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"521";i:3;s:3:"734";}}s:6:"Ccaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Ccaron";s:1:"B";a:4:{i:0;s:2:"44";i:1;s:3:"-19";i:2;s:3:"681";i:3;s:3:"929";}}s:6:"ugrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"ugrave";s:1:"B";a:4:{i:0;s:2:"68";i:1;s:3:"-15";i:2;s:3:"489";i:3;s:3:"734";}}s:7:"radical";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"453";s:1:"N";s:7:"radical";s:1:"B";a:4:{i:0;s:2:"-4";i:1;s:3:"-80";i:2;s:3:"458";i:3;s:3:"762";}}s:6:"Dcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Dcaron";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:1:"0";i:2;s:3:"674";i:3;s:3:"929";}}s:12:"rcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"333";s:1:"N";s:12:"rcommaaccent";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:4:"-225";i:2;s:3:"332";i:3;s:3:"538";}}s:6:"Ntilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Ntilde";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:1:"0";i:2;s:3:"646";i:3;s:3:"917";}}s:6:"otilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"otilde";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"521";i:3;s:3:"722";}}s:12:"Rcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:12:"Rcommaaccent";s:1:"B";a:4:{i:0;s:2:"88";i:1;s:4:"-225";i:2;s:3:"684";i:3;s:3:"718";}}s:12:"Lcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:12:"Lcommaaccent";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:4:"-225";i:2;s:3:"537";i:3;s:3:"718";}}s:6:"Atilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Atilde";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"654";i:3;s:3:"917";}}s:7:"Aogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:7:"Aogonek";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:4:"-225";i:2;s:3:"654";i:3;s:3:"718";}}s:5:"Aring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:5:"Aring";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"654";i:3;s:3:"931";}}s:6:"Otilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:6:"Otilde";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:3:"-19";i:2;s:3:"739";i:3;s:3:"917";}}s:10:"zdotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:10:"zdotaccent";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:1:"0";i:2;s:3:"469";i:3;s:3:"706";}}s:6:"Ecaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Ecaron";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"616";i:3;s:3:"929";}}s:7:"Iogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:7:"Iogonek";s:1:"B";a:4:{i:0;s:2:"-3";i:1;s:4:"-225";i:2;s:3:"211";i:3;s:3:"718";}}s:12:"kcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:12:"kcommaaccent";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:4:"-225";i:2;s:3:"501";i:3;s:3:"718";}}s:5:"minus";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"584";s:1:"N";s:5:"minus";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:3:"216";i:2;s:3:"545";i:3;s:3:"289";}}s:11:"Icircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:11:"Icircumflex";s:1:"B";a:4:{i:0;s:2:"-6";i:1;s:1:"0";i:2;s:3:"285";i:3;s:3:"929";}}s:6:"ncaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"ncaron";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:1:"0";i:2;s:3:"491";i:3;s:3:"734";}}s:12:"tcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:12:"tcommaaccent";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:4:"-225";i:2;s:3:"257";i:3;s:3:"669";}}s:10:"logicalnot";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"584";s:1:"N";s:10:"logicalnot";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:3:"108";i:2;s:3:"545";i:3;s:3:"390";}}s:9:"odieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:9:"odieresis";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"521";i:3;s:3:"706";}}s:9:"udieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:9:"udieresis";s:1:"B";a:4:{i:0;s:2:"68";i:1;s:3:"-15";i:2;s:3:"489";i:3;s:3:"706";}}s:8:"notequal";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"549";s:1:"N";s:8:"notequal";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:3:"-35";i:2;s:3:"537";i:3;s:3:"551";}}s:12:"gcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:12:"gcommaaccent";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:4:"-220";i:2;s:3:"499";i:3;s:3:"822";}}s:3:"eth";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:3:"eth";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-15";i:2;s:3:"522";i:3;s:3:"737";}}s:6:"zcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"zcaron";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:1:"0";i:2;s:3:"469";i:3;s:3:"734";}}s:12:"ncommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:12:"ncommaaccent";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:4:"-225";i:2;s:3:"491";i:3;s:3:"538";}}s:11:"onesuperior";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"333";s:1:"N";s:11:"onesuperior";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:3:"281";i:2;s:3:"222";i:3;s:3:"703";}}s:7:"imacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:7:"imacron";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:1:"0";i:2;s:3:"272";i:3;s:3:"684";}}s:4:"Euro";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:4:"Euro";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:1:"0";i:3;s:1:"0";}}}s:3:"KPX";a:138:{s:1:"A";a:48:{s:1:"C";s:3:"-30";s:6:"Cacute";s:3:"-30";s:6:"Ccaron";s:3:"-30";s:8:"Ccedilla";s:3:"-30";s:1:"G";s:3:"-30";s:6:"Gbreve";s:3:"-30";s:12:"Gcommaaccent";s:3:"-30";s:1:"O";s:3:"-30";s:6:"Oacute";s:3:"-30";s:11:"Ocircumflex";s:3:"-30";s:9:"Odieresis";s:3:"-30";s:6:"Ograve";s:3:"-30";s:13:"Ohungarumlaut";s:3:"-30";s:7:"Omacron";s:3:"-30";s:6:"Oslash";s:3:"-30";s:6:"Otilde";s:3:"-30";s:1:"Q";s:3:"-30";s:1:"T";s:4:"-120";s:6:"Tcaron";s:4:"-120";s:12:"Tcommaaccent";s:4:"-120";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-70";s:1:"W";s:3:"-50";s:1:"Y";s:4:"-100";s:6:"Yacute";s:4:"-100";s:9:"Ydieresis";s:4:"-100";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-40";s:1:"w";s:3:"-40";s:1:"y";s:3:"-40";s:6:"yacute";s:3:"-40";s:9:"ydieresis";s:3:"-40";}s:6:"Aacute";a:48:{s:1:"C";s:3:"-30";s:6:"Cacute";s:3:"-30";s:6:"Ccaron";s:3:"-30";s:8:"Ccedilla";s:3:"-30";s:1:"G";s:3:"-30";s:6:"Gbreve";s:3:"-30";s:12:"Gcommaaccent";s:3:"-30";s:1:"O";s:3:"-30";s:6:"Oacute";s:3:"-30";s:11:"Ocircumflex";s:3:"-30";s:9:"Odieresis";s:3:"-30";s:6:"Ograve";s:3:"-30";s:13:"Ohungarumlaut";s:3:"-30";s:7:"Omacron";s:3:"-30";s:6:"Oslash";s:3:"-30";s:6:"Otilde";s:3:"-30";s:1:"Q";s:3:"-30";s:1:"T";s:4:"-120";s:6:"Tcaron";s:4:"-120";s:12:"Tcommaaccent";s:4:"-120";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-70";s:1:"W";s:3:"-50";s:1:"Y";s:4:"-100";s:6:"Yacute";s:4:"-100";s:9:"Ydieresis";s:4:"-100";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-40";s:1:"w";s:3:"-40";s:1:"y";s:3:"-40";s:6:"yacute";s:3:"-40";s:9:"ydieresis";s:3:"-40";}s:6:"Abreve";a:48:{s:1:"C";s:3:"-30";s:6:"Cacute";s:3:"-30";s:6:"Ccaron";s:3:"-30";s:8:"Ccedilla";s:3:"-30";s:1:"G";s:3:"-30";s:6:"Gbreve";s:3:"-30";s:12:"Gcommaaccent";s:3:"-30";s:1:"O";s:3:"-30";s:6:"Oacute";s:3:"-30";s:11:"Ocircumflex";s:3:"-30";s:9:"Odieresis";s:3:"-30";s:6:"Ograve";s:3:"-30";s:13:"Ohungarumlaut";s:3:"-30";s:7:"Omacron";s:3:"-30";s:6:"Oslash";s:3:"-30";s:6:"Otilde";s:3:"-30";s:1:"Q";s:3:"-30";s:1:"T";s:4:"-120";s:6:"Tcaron";s:4:"-120";s:12:"Tcommaaccent";s:4:"-120";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-70";s:1:"W";s:3:"-50";s:1:"Y";s:4:"-100";s:6:"Yacute";s:4:"-100";s:9:"Ydieresis";s:4:"-100";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-40";s:1:"w";s:3:"-40";s:1:"y";s:3:"-40";s:6:"yacute";s:3:"-40";s:9:"ydieresis";s:3:"-40";}s:11:"Acircumflex";a:48:{s:1:"C";s:3:"-30";s:6:"Cacute";s:3:"-30";s:6:"Ccaron";s:3:"-30";s:8:"Ccedilla";s:3:"-30";s:1:"G";s:3:"-30";s:6:"Gbreve";s:3:"-30";s:12:"Gcommaaccent";s:3:"-30";s:1:"O";s:3:"-30";s:6:"Oacute";s:3:"-30";s:11:"Ocircumflex";s:3:"-30";s:9:"Odieresis";s:3:"-30";s:6:"Ograve";s:3:"-30";s:13:"Ohungarumlaut";s:3:"-30";s:7:"Omacron";s:3:"-30";s:6:"Oslash";s:3:"-30";s:6:"Otilde";s:3:"-30";s:1:"Q";s:3:"-30";s:1:"T";s:4:"-120";s:6:"Tcaron";s:4:"-120";s:12:"Tcommaaccent";s:4:"-120";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-70";s:1:"W";s:3:"-50";s:1:"Y";s:4:"-100";s:6:"Yacute";s:4:"-100";s:9:"Ydieresis";s:4:"-100";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-40";s:1:"w";s:3:"-40";s:1:"y";s:3:"-40";s:6:"yacute";s:3:"-40";s:9:"ydieresis";s:3:"-40";}s:9:"Adieresis";a:48:{s:1:"C";s:3:"-30";s:6:"Cacute";s:3:"-30";s:6:"Ccaron";s:3:"-30";s:8:"Ccedilla";s:3:"-30";s:1:"G";s:3:"-30";s:6:"Gbreve";s:3:"-30";s:12:"Gcommaaccent";s:3:"-30";s:1:"O";s:3:"-30";s:6:"Oacute";s:3:"-30";s:11:"Ocircumflex";s:3:"-30";s:9:"Odieresis";s:3:"-30";s:6:"Ograve";s:3:"-30";s:13:"Ohungarumlaut";s:3:"-30";s:7:"Omacron";s:3:"-30";s:6:"Oslash";s:3:"-30";s:6:"Otilde";s:3:"-30";s:1:"Q";s:3:"-30";s:1:"T";s:4:"-120";s:6:"Tcaron";s:4:"-120";s:12:"Tcommaaccent";s:4:"-120";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-70";s:1:"W";s:3:"-50";s:1:"Y";s:4:"-100";s:6:"Yacute";s:4:"-100";s:9:"Ydieresis";s:4:"-100";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-40";s:1:"w";s:3:"-40";s:1:"y";s:3:"-40";s:6:"yacute";s:3:"-40";s:9:"ydieresis";s:3:"-40";}s:6:"Agrave";a:48:{s:1:"C";s:3:"-30";s:6:"Cacute";s:3:"-30";s:6:"Ccaron";s:3:"-30";s:8:"Ccedilla";s:3:"-30";s:1:"G";s:3:"-30";s:6:"Gbreve";s:3:"-30";s:12:"Gcommaaccent";s:3:"-30";s:1:"O";s:3:"-30";s:6:"Oacute";s:3:"-30";s:11:"Ocircumflex";s:3:"-30";s:9:"Odieresis";s:3:"-30";s:6:"Ograve";s:3:"-30";s:13:"Ohungarumlaut";s:3:"-30";s:7:"Omacron";s:3:"-30";s:6:"Oslash";s:3:"-30";s:6:"Otilde";s:3:"-30";s:1:"Q";s:3:"-30";s:1:"T";s:4:"-120";s:6:"Tcaron";s:4:"-120";s:12:"Tcommaaccent";s:4:"-120";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-70";s:1:"W";s:3:"-50";s:1:"Y";s:4:"-100";s:6:"Yacute";s:4:"-100";s:9:"Ydieresis";s:4:"-100";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-40";s:1:"w";s:3:"-40";s:1:"y";s:3:"-40";s:6:"yacute";s:3:"-40";s:9:"ydieresis";s:3:"-40";}s:7:"Amacron";a:48:{s:1:"C";s:3:"-30";s:6:"Cacute";s:3:"-30";s:6:"Ccaron";s:3:"-30";s:8:"Ccedilla";s:3:"-30";s:1:"G";s:3:"-30";s:6:"Gbreve";s:3:"-30";s:12:"Gcommaaccent";s:3:"-30";s:1:"O";s:3:"-30";s:6:"Oacute";s:3:"-30";s:11:"Ocircumflex";s:3:"-30";s:9:"Odieresis";s:3:"-30";s:6:"Ograve";s:3:"-30";s:13:"Ohungarumlaut";s:3:"-30";s:7:"Omacron";s:3:"-30";s:6:"Oslash";s:3:"-30";s:6:"Otilde";s:3:"-30";s:1:"Q";s:3:"-30";s:1:"T";s:4:"-120";s:6:"Tcaron";s:4:"-120";s:12:"Tcommaaccent";s:4:"-120";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-70";s:1:"W";s:3:"-50";s:1:"Y";s:4:"-100";s:6:"Yacute";s:4:"-100";s:9:"Ydieresis";s:4:"-100";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-40";s:1:"w";s:3:"-40";s:1:"y";s:3:"-40";s:6:"yacute";s:3:"-40";s:9:"ydieresis";s:3:"-40";}s:7:"Aogonek";a:48:{s:1:"C";s:3:"-30";s:6:"Cacute";s:3:"-30";s:6:"Ccaron";s:3:"-30";s:8:"Ccedilla";s:3:"-30";s:1:"G";s:3:"-30";s:6:"Gbreve";s:3:"-30";s:12:"Gcommaaccent";s:3:"-30";s:1:"O";s:3:"-30";s:6:"Oacute";s:3:"-30";s:11:"Ocircumflex";s:3:"-30";s:9:"Odieresis";s:3:"-30";s:6:"Ograve";s:3:"-30";s:13:"Ohungarumlaut";s:3:"-30";s:7:"Omacron";s:3:"-30";s:6:"Oslash";s:3:"-30";s:6:"Otilde";s:3:"-30";s:1:"Q";s:3:"-30";s:1:"T";s:4:"-120";s:6:"Tcaron";s:4:"-120";s:12:"Tcommaaccent";s:4:"-120";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-70";s:1:"W";s:3:"-50";s:1:"Y";s:4:"-100";s:6:"Yacute";s:4:"-100";s:9:"Ydieresis";s:4:"-100";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-40";s:1:"w";s:3:"-40";s:1:"y";s:3:"-40";s:6:"yacute";s:3:"-40";s:9:"ydieresis";s:3:"-40";}s:5:"Aring";a:48:{s:1:"C";s:3:"-30";s:6:"Cacute";s:3:"-30";s:6:"Ccaron";s:3:"-30";s:8:"Ccedilla";s:3:"-30";s:1:"G";s:3:"-30";s:6:"Gbreve";s:3:"-30";s:12:"Gcommaaccent";s:3:"-30";s:1:"O";s:3:"-30";s:6:"Oacute";s:3:"-30";s:11:"Ocircumflex";s:3:"-30";s:9:"Odieresis";s:3:"-30";s:6:"Ograve";s:3:"-30";s:13:"Ohungarumlaut";s:3:"-30";s:7:"Omacron";s:3:"-30";s:6:"Oslash";s:3:"-30";s:6:"Otilde";s:3:"-30";s:1:"Q";s:3:"-30";s:1:"T";s:4:"-120";s:6:"Tcaron";s:4:"-120";s:12:"Tcommaaccent";s:4:"-120";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-70";s:1:"W";s:3:"-50";s:1:"Y";s:4:"-100";s:6:"Yacute";s:4:"-100";s:9:"Ydieresis";s:4:"-100";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-40";s:1:"w";s:3:"-40";s:1:"y";s:3:"-40";s:6:"yacute";s:3:"-40";s:9:"ydieresis";s:3:"-40";}s:6:"Atilde";a:48:{s:1:"C";s:3:"-30";s:6:"Cacute";s:3:"-30";s:6:"Ccaron";s:3:"-30";s:8:"Ccedilla";s:3:"-30";s:1:"G";s:3:"-30";s:6:"Gbreve";s:3:"-30";s:12:"Gcommaaccent";s:3:"-30";s:1:"O";s:3:"-30";s:6:"Oacute";s:3:"-30";s:11:"Ocircumflex";s:3:"-30";s:9:"Odieresis";s:3:"-30";s:6:"Ograve";s:3:"-30";s:13:"Ohungarumlaut";s:3:"-30";s:7:"Omacron";s:3:"-30";s:6:"Oslash";s:3:"-30";s:6:"Otilde";s:3:"-30";s:1:"Q";s:3:"-30";s:1:"T";s:4:"-120";s:6:"Tcaron";s:4:"-120";s:12:"Tcommaaccent";s:4:"-120";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-70";s:1:"W";s:3:"-50";s:1:"Y";s:4:"-100";s:6:"Yacute";s:4:"-100";s:9:"Ydieresis";s:4:"-100";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-40";s:1:"w";s:3:"-40";s:1:"y";s:3:"-40";s:6:"yacute";s:3:"-40";s:9:"ydieresis";s:3:"-40";}s:1:"B";a:11:{s:1:"U";s:3:"-10";s:6:"Uacute";s:3:"-10";s:11:"Ucircumflex";s:3:"-10";s:9:"Udieresis";s:3:"-10";s:6:"Ugrave";s:3:"-10";s:13:"Uhungarumlaut";s:3:"-10";s:7:"Umacron";s:3:"-10";s:7:"Uogonek";s:3:"-10";s:5:"Uring";s:3:"-10";s:5:"comma";s:3:"-20";s:6:"period";s:3:"-20";}s:1:"C";a:2:{s:5:"comma";s:3:"-30";s:6:"period";s:3:"-30";}s:6:"Cacute";a:2:{s:5:"comma";s:3:"-30";s:6:"period";s:3:"-30";}s:6:"Ccaron";a:2:{s:5:"comma";s:3:"-30";s:6:"period";s:3:"-30";}s:8:"Ccedilla";a:2:{s:5:"comma";s:3:"-30";s:6:"period";s:3:"-30";}s:1:"D";a:17:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:1:"V";s:3:"-70";s:1:"W";s:3:"-40";s:1:"Y";s:3:"-90";s:6:"Yacute";s:3:"-90";s:9:"Ydieresis";s:3:"-90";s:5:"comma";s:3:"-70";s:6:"period";s:3:"-70";}s:6:"Dcaron";a:17:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:1:"V";s:3:"-70";s:1:"W";s:3:"-40";s:1:"Y";s:3:"-90";s:6:"Yacute";s:3:"-90";s:9:"Ydieresis";s:3:"-90";s:5:"comma";s:3:"-70";s:6:"period";s:3:"-70";}s:6:"Dcroat";a:17:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:1:"V";s:3:"-70";s:1:"W";s:3:"-40";s:1:"Y";s:3:"-90";s:6:"Yacute";s:3:"-90";s:9:"Ydieresis";s:3:"-90";s:5:"comma";s:3:"-70";s:6:"period";s:3:"-70";}s:1:"F";a:44:{s:1:"A";s:3:"-80";s:6:"Aacute";s:3:"-80";s:6:"Abreve";s:3:"-80";s:11:"Acircumflex";s:3:"-80";s:9:"Adieresis";s:3:"-80";s:6:"Agrave";s:3:"-80";s:7:"Amacron";s:3:"-80";s:7:"Aogonek";s:3:"-80";s:5:"Aring";s:3:"-80";s:6:"Atilde";s:3:"-80";s:1:"a";s:3:"-50";s:6:"aacute";s:3:"-50";s:6:"abreve";s:3:"-50";s:11:"acircumflex";s:3:"-50";s:9:"adieresis";s:3:"-50";s:6:"agrave";s:3:"-50";s:7:"amacron";s:3:"-50";s:7:"aogonek";s:3:"-50";s:5:"aring";s:3:"-50";s:6:"atilde";s:3:"-50";s:5:"comma";s:4:"-150";s:1:"e";s:3:"-30";s:6:"eacute";s:3:"-30";s:6:"ecaron";s:3:"-30";s:11:"ecircumflex";s:3:"-30";s:9:"edieresis";s:3:"-30";s:10:"edotaccent";s:3:"-30";s:6:"egrave";s:3:"-30";s:7:"emacron";s:3:"-30";s:7:"eogonek";s:3:"-30";s:1:"o";s:3:"-30";s:6:"oacute";s:3:"-30";s:11:"ocircumflex";s:3:"-30";s:9:"odieresis";s:3:"-30";s:6:"ograve";s:3:"-30";s:13:"ohungarumlaut";s:3:"-30";s:7:"omacron";s:3:"-30";s:6:"oslash";s:3:"-30";s:6:"otilde";s:3:"-30";s:6:"period";s:4:"-150";s:1:"r";s:3:"-45";s:6:"racute";s:3:"-45";s:6:"rcaron";s:3:"-45";s:12:"rcommaaccent";s:3:"-45";}s:1:"J";a:31:{s:1:"A";s:3:"-20";s:6:"Aacute";s:3:"-20";s:6:"Abreve";s:3:"-20";s:11:"Acircumflex";s:3:"-20";s:9:"Adieresis";s:3:"-20";s:6:"Agrave";s:3:"-20";s:7:"Amacron";s:3:"-20";s:7:"Aogonek";s:3:"-20";s:5:"Aring";s:3:"-20";s:6:"Atilde";s:3:"-20";s:1:"a";s:3:"-20";s:6:"aacute";s:3:"-20";s:6:"abreve";s:3:"-20";s:11:"acircumflex";s:3:"-20";s:9:"adieresis";s:3:"-20";s:6:"agrave";s:3:"-20";s:7:"amacron";s:3:"-20";s:7:"aogonek";s:3:"-20";s:5:"aring";s:3:"-20";s:6:"atilde";s:3:"-20";s:5:"comma";s:3:"-30";s:6:"period";s:3:"-30";s:1:"u";s:3:"-20";s:6:"uacute";s:3:"-20";s:11:"ucircumflex";s:3:"-20";s:9:"udieresis";s:3:"-20";s:6:"ugrave";s:3:"-20";s:13:"uhungarumlaut";s:3:"-20";s:7:"umacron";s:3:"-20";s:7:"uogonek";s:3:"-20";s:5:"uring";s:3:"-20";}s:1:"K";a:39:{s:1:"O";s:3:"-50";s:6:"Oacute";s:3:"-50";s:11:"Ocircumflex";s:3:"-50";s:9:"Odieresis";s:3:"-50";s:6:"Ograve";s:3:"-50";s:13:"Ohungarumlaut";s:3:"-50";s:7:"Omacron";s:3:"-50";s:6:"Oslash";s:3:"-50";s:6:"Otilde";s:3:"-50";s:1:"e";s:3:"-40";s:6:"eacute";s:3:"-40";s:6:"ecaron";s:3:"-40";s:11:"ecircumflex";s:3:"-40";s:9:"edieresis";s:3:"-40";s:10:"edotaccent";s:3:"-40";s:6:"egrave";s:3:"-40";s:7:"emacron";s:3:"-40";s:7:"eogonek";s:3:"-40";s:1:"o";s:3:"-40";s:6:"oacute";s:3:"-40";s:11:"ocircumflex";s:3:"-40";s:9:"odieresis";s:3:"-40";s:6:"ograve";s:3:"-40";s:13:"ohungarumlaut";s:3:"-40";s:7:"omacron";s:3:"-40";s:6:"oslash";s:3:"-40";s:6:"otilde";s:3:"-40";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"y";s:3:"-50";s:6:"yacute";s:3:"-50";s:9:"ydieresis";s:3:"-50";}s:12:"Kcommaaccent";a:39:{s:1:"O";s:3:"-50";s:6:"Oacute";s:3:"-50";s:11:"Ocircumflex";s:3:"-50";s:9:"Odieresis";s:3:"-50";s:6:"Ograve";s:3:"-50";s:13:"Ohungarumlaut";s:3:"-50";s:7:"Omacron";s:3:"-50";s:6:"Oslash";s:3:"-50";s:6:"Otilde";s:3:"-50";s:1:"e";s:3:"-40";s:6:"eacute";s:3:"-40";s:6:"ecaron";s:3:"-40";s:11:"ecircumflex";s:3:"-40";s:9:"edieresis";s:3:"-40";s:10:"edotaccent";s:3:"-40";s:6:"egrave";s:3:"-40";s:7:"emacron";s:3:"-40";s:7:"eogonek";s:3:"-40";s:1:"o";s:3:"-40";s:6:"oacute";s:3:"-40";s:11:"ocircumflex";s:3:"-40";s:9:"odieresis";s:3:"-40";s:6:"ograve";s:3:"-40";s:13:"ohungarumlaut";s:3:"-40";s:7:"omacron";s:3:"-40";s:6:"oslash";s:3:"-40";s:6:"otilde";s:3:"-40";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"y";s:3:"-50";s:6:"yacute";s:3:"-50";s:9:"ydieresis";s:3:"-50";}s:1:"L";a:13:{s:1:"T";s:4:"-110";s:6:"Tcaron";s:4:"-110";s:12:"Tcommaaccent";s:4:"-110";s:1:"V";s:4:"-110";s:1:"W";s:3:"-70";s:1:"Y";s:4:"-140";s:6:"Yacute";s:4:"-140";s:9:"Ydieresis";s:4:"-140";s:13:"quotedblright";s:4:"-140";s:10:"quoteright";s:4:"-160";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:6:"Lacute";a:13:{s:1:"T";s:4:"-110";s:6:"Tcaron";s:4:"-110";s:12:"Tcommaaccent";s:4:"-110";s:1:"V";s:4:"-110";s:1:"W";s:3:"-70";s:1:"Y";s:4:"-140";s:6:"Yacute";s:4:"-140";s:9:"Ydieresis";s:4:"-140";s:13:"quotedblright";s:4:"-140";s:10:"quoteright";s:4:"-160";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:6:"Lcaron";a:13:{s:1:"T";s:4:"-110";s:6:"Tcaron";s:4:"-110";s:12:"Tcommaaccent";s:4:"-110";s:1:"V";s:4:"-110";s:1:"W";s:3:"-70";s:1:"Y";s:4:"-140";s:6:"Yacute";s:4:"-140";s:9:"Ydieresis";s:4:"-140";s:13:"quotedblright";s:4:"-140";s:10:"quoteright";s:4:"-160";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:12:"Lcommaaccent";a:13:{s:1:"T";s:4:"-110";s:6:"Tcaron";s:4:"-110";s:12:"Tcommaaccent";s:4:"-110";s:1:"V";s:4:"-110";s:1:"W";s:3:"-70";s:1:"Y";s:4:"-140";s:6:"Yacute";s:4:"-140";s:9:"Ydieresis";s:4:"-140";s:13:"quotedblright";s:4:"-140";s:10:"quoteright";s:4:"-160";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:6:"Lslash";a:13:{s:1:"T";s:4:"-110";s:6:"Tcaron";s:4:"-110";s:12:"Tcommaaccent";s:4:"-110";s:1:"V";s:4:"-110";s:1:"W";s:3:"-70";s:1:"Y";s:4:"-140";s:6:"Yacute";s:4:"-140";s:9:"Ydieresis";s:4:"-140";s:13:"quotedblright";s:4:"-140";s:10:"quoteright";s:4:"-160";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:1:"O";a:21:{s:1:"A";s:3:"-20";s:6:"Aacute";s:3:"-20";s:6:"Abreve";s:3:"-20";s:11:"Acircumflex";s:3:"-20";s:9:"Adieresis";s:3:"-20";s:6:"Agrave";s:3:"-20";s:7:"Amacron";s:3:"-20";s:7:"Aogonek";s:3:"-20";s:5:"Aring";s:3:"-20";s:6:"Atilde";s:3:"-20";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-30";s:1:"X";s:3:"-60";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:6:"Oacute";a:21:{s:1:"A";s:3:"-20";s:6:"Aacute";s:3:"-20";s:6:"Abreve";s:3:"-20";s:11:"Acircumflex";s:3:"-20";s:9:"Adieresis";s:3:"-20";s:6:"Agrave";s:3:"-20";s:7:"Amacron";s:3:"-20";s:7:"Aogonek";s:3:"-20";s:5:"Aring";s:3:"-20";s:6:"Atilde";s:3:"-20";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-30";s:1:"X";s:3:"-60";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:11:"Ocircumflex";a:21:{s:1:"A";s:3:"-20";s:6:"Aacute";s:3:"-20";s:6:"Abreve";s:3:"-20";s:11:"Acircumflex";s:3:"-20";s:9:"Adieresis";s:3:"-20";s:6:"Agrave";s:3:"-20";s:7:"Amacron";s:3:"-20";s:7:"Aogonek";s:3:"-20";s:5:"Aring";s:3:"-20";s:6:"Atilde";s:3:"-20";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-30";s:1:"X";s:3:"-60";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:9:"Odieresis";a:21:{s:1:"A";s:3:"-20";s:6:"Aacute";s:3:"-20";s:6:"Abreve";s:3:"-20";s:11:"Acircumflex";s:3:"-20";s:9:"Adieresis";s:3:"-20";s:6:"Agrave";s:3:"-20";s:7:"Amacron";s:3:"-20";s:7:"Aogonek";s:3:"-20";s:5:"Aring";s:3:"-20";s:6:"Atilde";s:3:"-20";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-30";s:1:"X";s:3:"-60";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:6:"Ograve";a:21:{s:1:"A";s:3:"-20";s:6:"Aacute";s:3:"-20";s:6:"Abreve";s:3:"-20";s:11:"Acircumflex";s:3:"-20";s:9:"Adieresis";s:3:"-20";s:6:"Agrave";s:3:"-20";s:7:"Amacron";s:3:"-20";s:7:"Aogonek";s:3:"-20";s:5:"Aring";s:3:"-20";s:6:"Atilde";s:3:"-20";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-30";s:1:"X";s:3:"-60";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:13:"Ohungarumlaut";a:21:{s:1:"A";s:3:"-20";s:6:"Aacute";s:3:"-20";s:6:"Abreve";s:3:"-20";s:11:"Acircumflex";s:3:"-20";s:9:"Adieresis";s:3:"-20";s:6:"Agrave";s:3:"-20";s:7:"Amacron";s:3:"-20";s:7:"Aogonek";s:3:"-20";s:5:"Aring";s:3:"-20";s:6:"Atilde";s:3:"-20";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-30";s:1:"X";s:3:"-60";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:7:"Omacron";a:21:{s:1:"A";s:3:"-20";s:6:"Aacute";s:3:"-20";s:6:"Abreve";s:3:"-20";s:11:"Acircumflex";s:3:"-20";s:9:"Adieresis";s:3:"-20";s:6:"Agrave";s:3:"-20";s:7:"Amacron";s:3:"-20";s:7:"Aogonek";s:3:"-20";s:5:"Aring";s:3:"-20";s:6:"Atilde";s:3:"-20";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-30";s:1:"X";s:3:"-60";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:6:"Oslash";a:21:{s:1:"A";s:3:"-20";s:6:"Aacute";s:3:"-20";s:6:"Abreve";s:3:"-20";s:11:"Acircumflex";s:3:"-20";s:9:"Adieresis";s:3:"-20";s:6:"Agrave";s:3:"-20";s:7:"Amacron";s:3:"-20";s:7:"Aogonek";s:3:"-20";s:5:"Aring";s:3:"-20";s:6:"Atilde";s:3:"-20";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-30";s:1:"X";s:3:"-60";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:6:"Otilde";a:21:{s:1:"A";s:3:"-20";s:6:"Aacute";s:3:"-20";s:6:"Abreve";s:3:"-20";s:11:"Acircumflex";s:3:"-20";s:9:"Adieresis";s:3:"-20";s:6:"Agrave";s:3:"-20";s:7:"Amacron";s:3:"-20";s:7:"Aogonek";s:3:"-20";s:5:"Aring";s:3:"-20";s:6:"Atilde";s:3:"-20";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-30";s:1:"X";s:3:"-60";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:1:"P";a:40:{s:1:"A";s:4:"-120";s:6:"Aacute";s:4:"-120";s:6:"Abreve";s:4:"-120";s:11:"Acircumflex";s:4:"-120";s:9:"Adieresis";s:4:"-120";s:6:"Agrave";s:4:"-120";s:7:"Amacron";s:4:"-120";s:7:"Aogonek";s:4:"-120";s:5:"Aring";s:4:"-120";s:6:"Atilde";s:4:"-120";s:1:"a";s:3:"-40";s:6:"aacute";s:3:"-40";s:6:"abreve";s:3:"-40";s:11:"acircumflex";s:3:"-40";s:9:"adieresis";s:3:"-40";s:6:"agrave";s:3:"-40";s:7:"amacron";s:3:"-40";s:7:"aogonek";s:3:"-40";s:5:"aring";s:3:"-40";s:6:"atilde";s:3:"-40";s:5:"comma";s:4:"-180";s:1:"e";s:3:"-50";s:6:"eacute";s:3:"-50";s:6:"ecaron";s:3:"-50";s:11:"ecircumflex";s:3:"-50";s:9:"edieresis";s:3:"-50";s:10:"edotaccent";s:3:"-50";s:6:"egrave";s:3:"-50";s:7:"emacron";s:3:"-50";s:7:"eogonek";s:3:"-50";s:1:"o";s:3:"-50";s:6:"oacute";s:3:"-50";s:11:"ocircumflex";s:3:"-50";s:9:"odieresis";s:3:"-50";s:6:"ograve";s:3:"-50";s:13:"ohungarumlaut";s:3:"-50";s:7:"omacron";s:3:"-50";s:6:"oslash";s:3:"-50";s:6:"otilde";s:3:"-50";s:6:"period";s:4:"-180";}s:1:"Q";a:9:{s:1:"U";s:3:"-10";s:6:"Uacute";s:3:"-10";s:11:"Ucircumflex";s:3:"-10";s:9:"Udieresis";s:3:"-10";s:6:"Ugrave";s:3:"-10";s:13:"Uhungarumlaut";s:3:"-10";s:7:"Umacron";s:3:"-10";s:7:"Uogonek";s:3:"-10";s:5:"Uring";s:3:"-10";}s:1:"R";a:26:{s:1:"O";s:3:"-20";s:6:"Oacute";s:3:"-20";s:11:"Ocircumflex";s:3:"-20";s:9:"Odieresis";s:3:"-20";s:6:"Ograve";s:3:"-20";s:13:"Ohungarumlaut";s:3:"-20";s:7:"Omacron";s:3:"-20";s:6:"Oslash";s:3:"-20";s:6:"Otilde";s:3:"-20";s:1:"T";s:3:"-30";s:6:"Tcaron";s:3:"-30";s:12:"Tcommaaccent";s:3:"-30";s:1:"U";s:3:"-40";s:6:"Uacute";s:3:"-40";s:11:"Ucircumflex";s:3:"-40";s:9:"Udieresis";s:3:"-40";s:6:"Ugrave";s:3:"-40";s:13:"Uhungarumlaut";s:3:"-40";s:7:"Umacron";s:3:"-40";s:7:"Uogonek";s:3:"-40";s:5:"Uring";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-30";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:6:"Racute";a:26:{s:1:"O";s:3:"-20";s:6:"Oacute";s:3:"-20";s:11:"Ocircumflex";s:3:"-20";s:9:"Odieresis";s:3:"-20";s:6:"Ograve";s:3:"-20";s:13:"Ohungarumlaut";s:3:"-20";s:7:"Omacron";s:3:"-20";s:6:"Oslash";s:3:"-20";s:6:"Otilde";s:3:"-20";s:1:"T";s:3:"-30";s:6:"Tcaron";s:3:"-30";s:12:"Tcommaaccent";s:3:"-30";s:1:"U";s:3:"-40";s:6:"Uacute";s:3:"-40";s:11:"Ucircumflex";s:3:"-40";s:9:"Udieresis";s:3:"-40";s:6:"Ugrave";s:3:"-40";s:13:"Uhungarumlaut";s:3:"-40";s:7:"Umacron";s:3:"-40";s:7:"Uogonek";s:3:"-40";s:5:"Uring";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-30";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:6:"Rcaron";a:26:{s:1:"O";s:3:"-20";s:6:"Oacute";s:3:"-20";s:11:"Ocircumflex";s:3:"-20";s:9:"Odieresis";s:3:"-20";s:6:"Ograve";s:3:"-20";s:13:"Ohungarumlaut";s:3:"-20";s:7:"Omacron";s:3:"-20";s:6:"Oslash";s:3:"-20";s:6:"Otilde";s:3:"-20";s:1:"T";s:3:"-30";s:6:"Tcaron";s:3:"-30";s:12:"Tcommaaccent";s:3:"-30";s:1:"U";s:3:"-40";s:6:"Uacute";s:3:"-40";s:11:"Ucircumflex";s:3:"-40";s:9:"Udieresis";s:3:"-40";s:6:"Ugrave";s:3:"-40";s:13:"Uhungarumlaut";s:3:"-40";s:7:"Umacron";s:3:"-40";s:7:"Uogonek";s:3:"-40";s:5:"Uring";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-30";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:12:"Rcommaaccent";a:26:{s:1:"O";s:3:"-20";s:6:"Oacute";s:3:"-20";s:11:"Ocircumflex";s:3:"-20";s:9:"Odieresis";s:3:"-20";s:6:"Ograve";s:3:"-20";s:13:"Ohungarumlaut";s:3:"-20";s:7:"Omacron";s:3:"-20";s:6:"Oslash";s:3:"-20";s:6:"Otilde";s:3:"-20";s:1:"T";s:3:"-30";s:6:"Tcaron";s:3:"-30";s:12:"Tcommaaccent";s:3:"-30";s:1:"U";s:3:"-40";s:6:"Uacute";s:3:"-40";s:11:"Ucircumflex";s:3:"-40";s:9:"Udieresis";s:3:"-40";s:6:"Ugrave";s:3:"-40";s:13:"Uhungarumlaut";s:3:"-40";s:7:"Umacron";s:3:"-40";s:7:"Uogonek";s:3:"-40";s:5:"Uring";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-30";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:1:"S";a:2:{s:5:"comma";s:3:"-20";s:6:"period";s:3:"-20";}s:6:"Sacute";a:2:{s:5:"comma";s:3:"-20";s:6:"period";s:3:"-20";}s:6:"Scaron";a:2:{s:5:"comma";s:3:"-20";s:6:"period";s:3:"-20";}s:8:"Scedilla";a:2:{s:5:"comma";s:3:"-20";s:6:"period";s:3:"-20";}s:12:"Scommaaccent";a:2:{s:5:"comma";s:3:"-20";s:6:"period";s:3:"-20";}s:1:"T";a:69:{s:1:"A";s:4:"-120";s:6:"Aacute";s:4:"-120";s:6:"Abreve";s:4:"-120";s:11:"Acircumflex";s:4:"-120";s:9:"Adieresis";s:4:"-120";s:6:"Agrave";s:4:"-120";s:7:"Amacron";s:4:"-120";s:7:"Aogonek";s:4:"-120";s:5:"Aring";s:4:"-120";s:6:"Atilde";s:4:"-120";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"a";s:4:"-120";s:6:"aacute";s:4:"-120";s:6:"abreve";s:3:"-60";s:11:"acircumflex";s:4:"-120";s:9:"adieresis";s:4:"-120";s:6:"agrave";s:4:"-120";s:7:"amacron";s:3:"-60";s:7:"aogonek";s:4:"-120";s:5:"aring";s:4:"-120";s:6:"atilde";s:3:"-60";s:5:"colon";s:3:"-20";s:5:"comma";s:4:"-120";s:1:"e";s:4:"-120";s:6:"eacute";s:4:"-120";s:6:"ecaron";s:4:"-120";s:11:"ecircumflex";s:4:"-120";s:9:"edieresis";s:4:"-120";s:10:"edotaccent";s:4:"-120";s:6:"egrave";s:3:"-60";s:7:"emacron";s:3:"-60";s:7:"eogonek";s:4:"-120";s:6:"hyphen";s:4:"-140";s:1:"o";s:4:"-120";s:6:"oacute";s:4:"-120";s:11:"ocircumflex";s:4:"-120";s:9:"odieresis";s:4:"-120";s:6:"ograve";s:4:"-120";s:13:"ohungarumlaut";s:4:"-120";s:7:"omacron";s:3:"-60";s:6:"oslash";s:4:"-120";s:6:"otilde";s:3:"-60";s:6:"period";s:4:"-120";s:1:"r";s:4:"-120";s:6:"racute";s:4:"-120";s:6:"rcaron";s:4:"-120";s:12:"rcommaaccent";s:4:"-120";s:9:"semicolon";s:3:"-20";s:1:"u";s:4:"-120";s:6:"uacute";s:4:"-120";s:11:"ucircumflex";s:4:"-120";s:9:"udieresis";s:4:"-120";s:6:"ugrave";s:4:"-120";s:13:"uhungarumlaut";s:4:"-120";s:7:"umacron";s:3:"-60";s:7:"uogonek";s:4:"-120";s:5:"uring";s:4:"-120";s:1:"w";s:4:"-120";s:1:"y";s:4:"-120";s:6:"yacute";s:4:"-120";s:9:"ydieresis";s:3:"-60";}s:6:"Tcaron";a:69:{s:1:"A";s:4:"-120";s:6:"Aacute";s:4:"-120";s:6:"Abreve";s:4:"-120";s:11:"Acircumflex";s:4:"-120";s:9:"Adieresis";s:4:"-120";s:6:"Agrave";s:4:"-120";s:7:"Amacron";s:4:"-120";s:7:"Aogonek";s:4:"-120";s:5:"Aring";s:4:"-120";s:6:"Atilde";s:4:"-120";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"a";s:4:"-120";s:6:"aacute";s:4:"-120";s:6:"abreve";s:3:"-60";s:11:"acircumflex";s:4:"-120";s:9:"adieresis";s:4:"-120";s:6:"agrave";s:4:"-120";s:7:"amacron";s:3:"-60";s:7:"aogonek";s:4:"-120";s:5:"aring";s:4:"-120";s:6:"atilde";s:3:"-60";s:5:"colon";s:3:"-20";s:5:"comma";s:4:"-120";s:1:"e";s:4:"-120";s:6:"eacute";s:4:"-120";s:6:"ecaron";s:4:"-120";s:11:"ecircumflex";s:4:"-120";s:9:"edieresis";s:4:"-120";s:10:"edotaccent";s:4:"-120";s:6:"egrave";s:3:"-60";s:7:"emacron";s:3:"-60";s:7:"eogonek";s:4:"-120";s:6:"hyphen";s:4:"-140";s:1:"o";s:4:"-120";s:6:"oacute";s:4:"-120";s:11:"ocircumflex";s:4:"-120";s:9:"odieresis";s:4:"-120";s:6:"ograve";s:4:"-120";s:13:"ohungarumlaut";s:4:"-120";s:7:"omacron";s:3:"-60";s:6:"oslash";s:4:"-120";s:6:"otilde";s:3:"-60";s:6:"period";s:4:"-120";s:1:"r";s:4:"-120";s:6:"racute";s:4:"-120";s:6:"rcaron";s:4:"-120";s:12:"rcommaaccent";s:4:"-120";s:9:"semicolon";s:3:"-20";s:1:"u";s:4:"-120";s:6:"uacute";s:4:"-120";s:11:"ucircumflex";s:4:"-120";s:9:"udieresis";s:4:"-120";s:6:"ugrave";s:4:"-120";s:13:"uhungarumlaut";s:4:"-120";s:7:"umacron";s:3:"-60";s:7:"uogonek";s:4:"-120";s:5:"uring";s:4:"-120";s:1:"w";s:4:"-120";s:1:"y";s:4:"-120";s:6:"yacute";s:4:"-120";s:9:"ydieresis";s:3:"-60";}s:12:"Tcommaaccent";a:69:{s:1:"A";s:4:"-120";s:6:"Aacute";s:4:"-120";s:6:"Abreve";s:4:"-120";s:11:"Acircumflex";s:4:"-120";s:9:"Adieresis";s:4:"-120";s:6:"Agrave";s:4:"-120";s:7:"Amacron";s:4:"-120";s:7:"Aogonek";s:4:"-120";s:5:"Aring";s:4:"-120";s:6:"Atilde";s:4:"-120";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"a";s:4:"-120";s:6:"aacute";s:4:"-120";s:6:"abreve";s:3:"-60";s:11:"acircumflex";s:4:"-120";s:9:"adieresis";s:4:"-120";s:6:"agrave";s:4:"-120";s:7:"amacron";s:3:"-60";s:7:"aogonek";s:4:"-120";s:5:"aring";s:4:"-120";s:6:"atilde";s:3:"-60";s:5:"colon";s:3:"-20";s:5:"comma";s:4:"-120";s:1:"e";s:4:"-120";s:6:"eacute";s:4:"-120";s:6:"ecaron";s:4:"-120";s:11:"ecircumflex";s:4:"-120";s:9:"edieresis";s:4:"-120";s:10:"edotaccent";s:4:"-120";s:6:"egrave";s:3:"-60";s:7:"emacron";s:3:"-60";s:7:"eogonek";s:4:"-120";s:6:"hyphen";s:4:"-140";s:1:"o";s:4:"-120";s:6:"oacute";s:4:"-120";s:11:"ocircumflex";s:4:"-120";s:9:"odieresis";s:4:"-120";s:6:"ograve";s:4:"-120";s:13:"ohungarumlaut";s:4:"-120";s:7:"omacron";s:3:"-60";s:6:"oslash";s:4:"-120";s:6:"otilde";s:3:"-60";s:6:"period";s:4:"-120";s:1:"r";s:4:"-120";s:6:"racute";s:4:"-120";s:6:"rcaron";s:4:"-120";s:12:"rcommaaccent";s:4:"-120";s:9:"semicolon";s:3:"-20";s:1:"u";s:4:"-120";s:6:"uacute";s:4:"-120";s:11:"ucircumflex";s:4:"-120";s:9:"udieresis";s:4:"-120";s:6:"ugrave";s:4:"-120";s:13:"uhungarumlaut";s:4:"-120";s:7:"umacron";s:3:"-60";s:7:"uogonek";s:4:"-120";s:5:"uring";s:4:"-120";s:1:"w";s:4:"-120";s:1:"y";s:4:"-120";s:6:"yacute";s:4:"-120";s:9:"ydieresis";s:3:"-60";}s:1:"U";a:12:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:6:"Uacute";a:12:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:11:"Ucircumflex";a:12:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:9:"Udieresis";a:12:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:6:"Ugrave";a:12:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:13:"Uhungarumlaut";a:12:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:7:"Umacron";a:12:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:7:"Uogonek";a:12:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:5:"Uring";a:12:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";}s:1:"V";a:64:{s:1:"A";s:3:"-80";s:6:"Aacute";s:3:"-80";s:6:"Abreve";s:3:"-80";s:11:"Acircumflex";s:3:"-80";s:9:"Adieresis";s:3:"-80";s:6:"Agrave";s:3:"-80";s:7:"Amacron";s:3:"-80";s:7:"Aogonek";s:3:"-80";s:5:"Aring";s:3:"-80";s:6:"Atilde";s:3:"-80";s:1:"G";s:3:"-40";s:6:"Gbreve";s:3:"-40";s:12:"Gcommaaccent";s:3:"-40";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"a";s:3:"-70";s:6:"aacute";s:3:"-70";s:6:"abreve";s:3:"-70";s:11:"acircumflex";s:3:"-70";s:9:"adieresis";s:3:"-70";s:6:"agrave";s:3:"-70";s:7:"amacron";s:3:"-70";s:7:"aogonek";s:3:"-70";s:5:"aring";s:3:"-70";s:6:"atilde";s:3:"-70";s:5:"colon";s:3:"-40";s:5:"comma";s:4:"-125";s:1:"e";s:3:"-80";s:6:"eacute";s:3:"-80";s:6:"ecaron";s:3:"-80";s:11:"ecircumflex";s:3:"-80";s:9:"edieresis";s:3:"-80";s:10:"edotaccent";s:3:"-80";s:6:"egrave";s:3:"-80";s:7:"emacron";s:3:"-80";s:7:"eogonek";s:3:"-80";s:6:"hyphen";s:3:"-80";s:1:"o";s:3:"-80";s:6:"oacute";s:3:"-80";s:11:"ocircumflex";s:3:"-80";s:9:"odieresis";s:3:"-80";s:6:"ograve";s:3:"-80";s:13:"ohungarumlaut";s:3:"-80";s:7:"omacron";s:3:"-80";s:6:"oslash";s:3:"-80";s:6:"otilde";s:3:"-80";s:6:"period";s:4:"-125";s:9:"semicolon";s:3:"-40";s:1:"u";s:3:"-70";s:6:"uacute";s:3:"-70";s:11:"ucircumflex";s:3:"-70";s:9:"udieresis";s:3:"-70";s:6:"ugrave";s:3:"-70";s:13:"uhungarumlaut";s:3:"-70";s:7:"umacron";s:3:"-70";s:7:"uogonek";s:3:"-70";s:5:"uring";s:3:"-70";}s:1:"W";a:62:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:1:"O";s:3:"-20";s:6:"Oacute";s:3:"-20";s:11:"Ocircumflex";s:3:"-20";s:9:"Odieresis";s:3:"-20";s:6:"Ograve";s:3:"-20";s:13:"Ohungarumlaut";s:3:"-20";s:7:"Omacron";s:3:"-20";s:6:"Oslash";s:3:"-20";s:6:"Otilde";s:3:"-20";s:1:"a";s:3:"-40";s:6:"aacute";s:3:"-40";s:6:"abreve";s:3:"-40";s:11:"acircumflex";s:3:"-40";s:9:"adieresis";s:3:"-40";s:6:"agrave";s:3:"-40";s:7:"amacron";s:3:"-40";s:7:"aogonek";s:3:"-40";s:5:"aring";s:3:"-40";s:6:"atilde";s:3:"-40";s:5:"comma";s:3:"-80";s:1:"e";s:3:"-30";s:6:"eacute";s:3:"-30";s:6:"ecaron";s:3:"-30";s:11:"ecircumflex";s:3:"-30";s:9:"edieresis";s:3:"-30";s:10:"edotaccent";s:3:"-30";s:6:"egrave";s:3:"-30";s:7:"emacron";s:3:"-30";s:7:"eogonek";s:3:"-30";s:6:"hyphen";s:3:"-40";s:1:"o";s:3:"-30";s:6:"oacute";s:3:"-30";s:11:"ocircumflex";s:3:"-30";s:9:"odieresis";s:3:"-30";s:6:"ograve";s:3:"-30";s:13:"ohungarumlaut";s:3:"-30";s:7:"omacron";s:3:"-30";s:6:"oslash";s:3:"-30";s:6:"otilde";s:3:"-30";s:6:"period";s:3:"-80";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:1:"Y";a:64:{s:1:"A";s:4:"-110";s:6:"Aacute";s:4:"-110";s:6:"Abreve";s:4:"-110";s:11:"Acircumflex";s:4:"-110";s:9:"Adieresis";s:4:"-110";s:6:"Agrave";s:4:"-110";s:7:"Amacron";s:4:"-110";s:7:"Aogonek";s:4:"-110";s:5:"Aring";s:4:"-110";s:6:"Atilde";s:4:"-110";s:1:"O";s:3:"-85";s:6:"Oacute";s:3:"-85";s:11:"Ocircumflex";s:3:"-85";s:9:"Odieresis";s:3:"-85";s:6:"Ograve";s:3:"-85";s:13:"Ohungarumlaut";s:3:"-85";s:7:"Omacron";s:3:"-85";s:6:"Oslash";s:3:"-85";s:6:"Otilde";s:3:"-85";s:1:"a";s:4:"-140";s:6:"aacute";s:4:"-140";s:6:"abreve";s:3:"-70";s:11:"acircumflex";s:4:"-140";s:9:"adieresis";s:4:"-140";s:6:"agrave";s:4:"-140";s:7:"amacron";s:3:"-70";s:7:"aogonek";s:4:"-140";s:5:"aring";s:4:"-140";s:6:"atilde";s:4:"-140";s:5:"colon";s:3:"-60";s:5:"comma";s:4:"-140";s:1:"e";s:4:"-140";s:6:"eacute";s:4:"-140";s:6:"ecaron";s:4:"-140";s:11:"ecircumflex";s:4:"-140";s:9:"edieresis";s:4:"-140";s:10:"edotaccent";s:4:"-140";s:6:"egrave";s:4:"-140";s:7:"emacron";s:3:"-70";s:7:"eogonek";s:4:"-140";s:6:"hyphen";s:4:"-140";s:1:"i";s:3:"-20";s:6:"iacute";s:3:"-20";s:7:"iogonek";s:3:"-20";s:1:"o";s:4:"-140";s:6:"oacute";s:4:"-140";s:11:"ocircumflex";s:4:"-140";s:9:"odieresis";s:4:"-140";s:6:"ograve";s:4:"-140";s:13:"ohungarumlaut";s:4:"-140";s:7:"omacron";s:4:"-140";s:6:"oslash";s:4:"-140";s:6:"otilde";s:4:"-140";s:6:"period";s:4:"-140";s:9:"semicolon";s:3:"-60";s:1:"u";s:4:"-110";s:6:"uacute";s:4:"-110";s:11:"ucircumflex";s:4:"-110";s:9:"udieresis";s:4:"-110";s:6:"ugrave";s:4:"-110";s:13:"uhungarumlaut";s:4:"-110";s:7:"umacron";s:4:"-110";s:7:"uogonek";s:4:"-110";s:5:"uring";s:4:"-110";}s:6:"Yacute";a:64:{s:1:"A";s:4:"-110";s:6:"Aacute";s:4:"-110";s:6:"Abreve";s:4:"-110";s:11:"Acircumflex";s:4:"-110";s:9:"Adieresis";s:4:"-110";s:6:"Agrave";s:4:"-110";s:7:"Amacron";s:4:"-110";s:7:"Aogonek";s:4:"-110";s:5:"Aring";s:4:"-110";s:6:"Atilde";s:4:"-110";s:1:"O";s:3:"-85";s:6:"Oacute";s:3:"-85";s:11:"Ocircumflex";s:3:"-85";s:9:"Odieresis";s:3:"-85";s:6:"Ograve";s:3:"-85";s:13:"Ohungarumlaut";s:3:"-85";s:7:"Omacron";s:3:"-85";s:6:"Oslash";s:3:"-85";s:6:"Otilde";s:3:"-85";s:1:"a";s:4:"-140";s:6:"aacute";s:4:"-140";s:6:"abreve";s:3:"-70";s:11:"acircumflex";s:4:"-140";s:9:"adieresis";s:4:"-140";s:6:"agrave";s:4:"-140";s:7:"amacron";s:3:"-70";s:7:"aogonek";s:4:"-140";s:5:"aring";s:4:"-140";s:6:"atilde";s:3:"-70";s:5:"colon";s:3:"-60";s:5:"comma";s:4:"-140";s:1:"e";s:4:"-140";s:6:"eacute";s:4:"-140";s:6:"ecaron";s:4:"-140";s:11:"ecircumflex";s:4:"-140";s:9:"edieresis";s:4:"-140";s:10:"edotaccent";s:4:"-140";s:6:"egrave";s:4:"-140";s:7:"emacron";s:3:"-70";s:7:"eogonek";s:4:"-140";s:6:"hyphen";s:4:"-140";s:1:"i";s:3:"-20";s:6:"iacute";s:3:"-20";s:7:"iogonek";s:3:"-20";s:1:"o";s:4:"-140";s:6:"oacute";s:4:"-140";s:11:"ocircumflex";s:4:"-140";s:9:"odieresis";s:4:"-140";s:6:"ograve";s:4:"-140";s:13:"ohungarumlaut";s:4:"-140";s:7:"omacron";s:3:"-70";s:6:"oslash";s:4:"-140";s:6:"otilde";s:4:"-140";s:6:"period";s:4:"-140";s:9:"semicolon";s:3:"-60";s:1:"u";s:4:"-110";s:6:"uacute";s:4:"-110";s:11:"ucircumflex";s:4:"-110";s:9:"udieresis";s:4:"-110";s:6:"ugrave";s:4:"-110";s:13:"uhungarumlaut";s:4:"-110";s:7:"umacron";s:4:"-110";s:7:"uogonek";s:4:"-110";s:5:"uring";s:4:"-110";}s:9:"Ydieresis";a:64:{s:1:"A";s:4:"-110";s:6:"Aacute";s:4:"-110";s:6:"Abreve";s:4:"-110";s:11:"Acircumflex";s:4:"-110";s:9:"Adieresis";s:4:"-110";s:6:"Agrave";s:4:"-110";s:7:"Amacron";s:4:"-110";s:7:"Aogonek";s:4:"-110";s:5:"Aring";s:4:"-110";s:6:"Atilde";s:4:"-110";s:1:"O";s:3:"-85";s:6:"Oacute";s:3:"-85";s:11:"Ocircumflex";s:3:"-85";s:9:"Odieresis";s:3:"-85";s:6:"Ograve";s:3:"-85";s:13:"Ohungarumlaut";s:3:"-85";s:7:"Omacron";s:3:"-85";s:6:"Oslash";s:3:"-85";s:6:"Otilde";s:3:"-85";s:1:"a";s:4:"-140";s:6:"aacute";s:4:"-140";s:6:"abreve";s:3:"-70";s:11:"acircumflex";s:4:"-140";s:9:"adieresis";s:4:"-140";s:6:"agrave";s:4:"-140";s:7:"amacron";s:3:"-70";s:7:"aogonek";s:4:"-140";s:5:"aring";s:4:"-140";s:6:"atilde";s:3:"-70";s:5:"colon";s:3:"-60";s:5:"comma";s:4:"-140";s:1:"e";s:4:"-140";s:6:"eacute";s:4:"-140";s:6:"ecaron";s:4:"-140";s:11:"ecircumflex";s:4:"-140";s:9:"edieresis";s:4:"-140";s:10:"edotaccent";s:4:"-140";s:6:"egrave";s:4:"-140";s:7:"emacron";s:3:"-70";s:7:"eogonek";s:4:"-140";s:6:"hyphen";s:4:"-140";s:1:"i";s:3:"-20";s:6:"iacute";s:3:"-20";s:7:"iogonek";s:3:"-20";s:1:"o";s:4:"-140";s:6:"oacute";s:4:"-140";s:11:"ocircumflex";s:4:"-140";s:9:"odieresis";s:4:"-140";s:6:"ograve";s:4:"-140";s:13:"ohungarumlaut";s:4:"-140";s:7:"omacron";s:4:"-140";s:6:"oslash";s:4:"-140";s:6:"otilde";s:4:"-140";s:6:"period";s:4:"-140";s:9:"semicolon";s:3:"-60";s:1:"u";s:4:"-110";s:6:"uacute";s:4:"-110";s:11:"ucircumflex";s:4:"-110";s:9:"udieresis";s:4:"-110";s:6:"ugrave";s:4:"-110";s:13:"uhungarumlaut";s:4:"-110";s:7:"umacron";s:4:"-110";s:7:"uogonek";s:4:"-110";s:5:"uring";s:4:"-110";}s:1:"a";a:5:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-20";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:6:"aacute";a:5:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-20";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:6:"abreve";a:5:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-20";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:11:"acircumflex";a:5:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-20";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:9:"adieresis";a:5:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-20";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:6:"agrave";a:5:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-20";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:7:"amacron";a:5:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-20";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:7:"aogonek";a:5:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-20";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:5:"aring";a:5:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-20";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:6:"atilde";a:5:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-20";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:1:"b";a:20:{s:1:"b";s:3:"-10";s:5:"comma";s:3:"-40";s:1:"l";s:3:"-20";s:6:"lacute";s:3:"-20";s:12:"lcommaaccent";s:3:"-20";s:6:"lslash";s:3:"-20";s:6:"period";s:3:"-40";s:1:"u";s:3:"-20";s:6:"uacute";s:3:"-20";s:11:"ucircumflex";s:3:"-20";s:9:"udieresis";s:3:"-20";s:6:"ugrave";s:3:"-20";s:13:"uhungarumlaut";s:3:"-20";s:7:"umacron";s:3:"-20";s:7:"uogonek";s:3:"-20";s:5:"uring";s:3:"-20";s:1:"v";s:3:"-20";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:1:"c";a:3:{s:5:"comma";s:3:"-15";s:1:"k";s:3:"-20";s:12:"kcommaaccent";s:3:"-20";}s:6:"cacute";a:3:{s:5:"comma";s:3:"-15";s:1:"k";s:3:"-20";s:12:"kcommaaccent";s:3:"-20";}s:6:"ccaron";a:3:{s:5:"comma";s:3:"-15";s:1:"k";s:3:"-20";s:12:"kcommaaccent";s:3:"-20";}s:8:"ccedilla";a:3:{s:5:"comma";s:3:"-15";s:1:"k";s:3:"-20";s:12:"kcommaaccent";s:3:"-20";}s:5:"colon";a:1:{s:5:"space";s:3:"-50";}s:5:"comma";a:2:{s:13:"quotedblright";s:4:"-100";s:10:"quoteright";s:4:"-100";}s:1:"e";a:8:{s:5:"comma";s:3:"-15";s:6:"period";s:3:"-15";s:1:"v";s:3:"-30";s:1:"w";s:3:"-20";s:1:"x";s:3:"-30";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:6:"eacute";a:8:{s:5:"comma";s:3:"-15";s:6:"period";s:3:"-15";s:1:"v";s:3:"-30";s:1:"w";s:3:"-20";s:1:"x";s:3:"-30";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:6:"ecaron";a:8:{s:5:"comma";s:3:"-15";s:6:"period";s:3:"-15";s:1:"v";s:3:"-30";s:1:"w";s:3:"-20";s:1:"x";s:3:"-30";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:11:"ecircumflex";a:8:{s:5:"comma";s:3:"-15";s:6:"period";s:3:"-15";s:1:"v";s:3:"-30";s:1:"w";s:3:"-20";s:1:"x";s:3:"-30";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:9:"edieresis";a:8:{s:5:"comma";s:3:"-15";s:6:"period";s:3:"-15";s:1:"v";s:3:"-30";s:1:"w";s:3:"-20";s:1:"x";s:3:"-30";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:10:"edotaccent";a:8:{s:5:"comma";s:3:"-15";s:6:"period";s:3:"-15";s:1:"v";s:3:"-30";s:1:"w";s:3:"-20";s:1:"x";s:3:"-30";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:6:"egrave";a:8:{s:5:"comma";s:3:"-15";s:6:"period";s:3:"-15";s:1:"v";s:3:"-30";s:1:"w";s:3:"-20";s:1:"x";s:3:"-30";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:7:"emacron";a:8:{s:5:"comma";s:3:"-15";s:6:"period";s:3:"-15";s:1:"v";s:3:"-30";s:1:"w";s:3:"-20";s:1:"x";s:3:"-30";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:7:"eogonek";a:8:{s:5:"comma";s:3:"-15";s:6:"period";s:3:"-15";s:1:"v";s:3:"-30";s:1:"w";s:3:"-20";s:1:"x";s:3:"-30";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:1:"f";a:33:{s:1:"a";s:3:"-30";s:6:"aacute";s:3:"-30";s:6:"abreve";s:3:"-30";s:11:"acircumflex";s:3:"-30";s:9:"adieresis";s:3:"-30";s:6:"agrave";s:3:"-30";s:7:"amacron";s:3:"-30";s:7:"aogonek";s:3:"-30";s:5:"aring";s:3:"-30";s:6:"atilde";s:3:"-30";s:5:"comma";s:3:"-30";s:8:"dotlessi";s:3:"-28";s:1:"e";s:3:"-30";s:6:"eacute";s:3:"-30";s:6:"ecaron";s:3:"-30";s:11:"ecircumflex";s:3:"-30";s:9:"edieresis";s:3:"-30";s:10:"edotaccent";s:3:"-30";s:6:"egrave";s:3:"-30";s:7:"emacron";s:3:"-30";s:7:"eogonek";s:3:"-30";s:1:"o";s:3:"-30";s:6:"oacute";s:3:"-30";s:11:"ocircumflex";s:3:"-30";s:9:"odieresis";s:3:"-30";s:6:"ograve";s:3:"-30";s:13:"ohungarumlaut";s:3:"-30";s:7:"omacron";s:3:"-30";s:6:"oslash";s:3:"-30";s:6:"otilde";s:3:"-30";s:6:"period";s:3:"-30";s:13:"quotedblright";s:2:"60";s:10:"quoteright";s:2:"50";}s:1:"g";a:4:{s:1:"r";s:3:"-10";s:6:"racute";s:3:"-10";s:6:"rcaron";s:3:"-10";s:12:"rcommaaccent";s:3:"-10";}s:6:"gbreve";a:4:{s:1:"r";s:3:"-10";s:6:"racute";s:3:"-10";s:6:"rcaron";s:3:"-10";s:12:"rcommaaccent";s:3:"-10";}s:12:"gcommaaccent";a:4:{s:1:"r";s:3:"-10";s:6:"racute";s:3:"-10";s:6:"rcaron";s:3:"-10";s:12:"rcommaaccent";s:3:"-10";}s:1:"h";a:3:{s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:1:"k";a:18:{s:1:"e";s:3:"-20";s:6:"eacute";s:3:"-20";s:6:"ecaron";s:3:"-20";s:11:"ecircumflex";s:3:"-20";s:9:"edieresis";s:3:"-20";s:10:"edotaccent";s:3:"-20";s:6:"egrave";s:3:"-20";s:7:"emacron";s:3:"-20";s:7:"eogonek";s:3:"-20";s:1:"o";s:3:"-20";s:6:"oacute";s:3:"-20";s:11:"ocircumflex";s:3:"-20";s:9:"odieresis";s:3:"-20";s:6:"ograve";s:3:"-20";s:13:"ohungarumlaut";s:3:"-20";s:7:"omacron";s:3:"-20";s:6:"oslash";s:3:"-20";s:6:"otilde";s:3:"-20";}s:12:"kcommaaccent";a:18:{s:1:"e";s:3:"-20";s:6:"eacute";s:3:"-20";s:6:"ecaron";s:3:"-20";s:11:"ecircumflex";s:3:"-20";s:9:"edieresis";s:3:"-20";s:10:"edotaccent";s:3:"-20";s:6:"egrave";s:3:"-20";s:7:"emacron";s:3:"-20";s:7:"eogonek";s:3:"-20";s:1:"o";s:3:"-20";s:6:"oacute";s:3:"-20";s:11:"ocircumflex";s:3:"-20";s:9:"odieresis";s:3:"-20";s:6:"ograve";s:3:"-20";s:13:"ohungarumlaut";s:3:"-20";s:7:"omacron";s:3:"-20";s:6:"oslash";s:3:"-20";s:6:"otilde";s:3:"-20";}s:1:"m";a:12:{s:1:"u";s:3:"-10";s:6:"uacute";s:3:"-10";s:11:"ucircumflex";s:3:"-10";s:9:"udieresis";s:3:"-10";s:6:"ugrave";s:3:"-10";s:13:"uhungarumlaut";s:3:"-10";s:7:"umacron";s:3:"-10";s:7:"uogonek";s:3:"-10";s:5:"uring";s:3:"-10";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:1:"n";a:13:{s:1:"u";s:3:"-10";s:6:"uacute";s:3:"-10";s:11:"ucircumflex";s:3:"-10";s:9:"udieresis";s:3:"-10";s:6:"ugrave";s:3:"-10";s:13:"uhungarumlaut";s:3:"-10";s:7:"umacron";s:3:"-10";s:7:"uogonek";s:3:"-10";s:5:"uring";s:3:"-10";s:1:"v";s:3:"-20";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:6:"nacute";a:13:{s:1:"u";s:3:"-10";s:6:"uacute";s:3:"-10";s:11:"ucircumflex";s:3:"-10";s:9:"udieresis";s:3:"-10";s:6:"ugrave";s:3:"-10";s:13:"uhungarumlaut";s:3:"-10";s:7:"umacron";s:3:"-10";s:7:"uogonek";s:3:"-10";s:5:"uring";s:3:"-10";s:1:"v";s:3:"-20";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:6:"ncaron";a:13:{s:1:"u";s:3:"-10";s:6:"uacute";s:3:"-10";s:11:"ucircumflex";s:3:"-10";s:9:"udieresis";s:3:"-10";s:6:"ugrave";s:3:"-10";s:13:"uhungarumlaut";s:3:"-10";s:7:"umacron";s:3:"-10";s:7:"uogonek";s:3:"-10";s:5:"uring";s:3:"-10";s:1:"v";s:3:"-20";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:12:"ncommaaccent";a:13:{s:1:"u";s:3:"-10";s:6:"uacute";s:3:"-10";s:11:"ucircumflex";s:3:"-10";s:9:"udieresis";s:3:"-10";s:6:"ugrave";s:3:"-10";s:13:"uhungarumlaut";s:3:"-10";s:7:"umacron";s:3:"-10";s:7:"uogonek";s:3:"-10";s:5:"uring";s:3:"-10";s:1:"v";s:3:"-20";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:6:"ntilde";a:13:{s:1:"u";s:3:"-10";s:6:"uacute";s:3:"-10";s:11:"ucircumflex";s:3:"-10";s:9:"udieresis";s:3:"-10";s:6:"ugrave";s:3:"-10";s:13:"uhungarumlaut";s:3:"-10";s:7:"umacron";s:3:"-10";s:7:"uogonek";s:3:"-10";s:5:"uring";s:3:"-10";s:1:"v";s:3:"-20";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:1:"o";a:8:{s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-30";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:6:"oacute";a:8:{s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-30";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:11:"ocircumflex";a:8:{s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-30";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:9:"odieresis";a:8:{s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-30";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:6:"ograve";a:8:{s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-30";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:13:"ohungarumlaut";a:8:{s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-30";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:7:"omacron";a:8:{s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-30";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:6:"oslash";a:94:{s:1:"a";s:3:"-55";s:6:"aacute";s:3:"-55";s:6:"abreve";s:3:"-55";s:11:"acircumflex";s:3:"-55";s:9:"adieresis";s:3:"-55";s:6:"agrave";s:3:"-55";s:7:"amacron";s:3:"-55";s:7:"aogonek";s:3:"-55";s:5:"aring";s:3:"-55";s:6:"atilde";s:3:"-55";s:1:"b";s:3:"-55";s:1:"c";s:3:"-55";s:6:"cacute";s:3:"-55";s:6:"ccaron";s:3:"-55";s:8:"ccedilla";s:3:"-55";s:5:"comma";s:3:"-95";s:1:"d";s:3:"-55";s:6:"dcroat";s:3:"-55";s:1:"e";s:3:"-55";s:6:"eacute";s:3:"-55";s:6:"ecaron";s:3:"-55";s:11:"ecircumflex";s:3:"-55";s:9:"edieresis";s:3:"-55";s:10:"edotaccent";s:3:"-55";s:6:"egrave";s:3:"-55";s:7:"emacron";s:3:"-55";s:7:"eogonek";s:3:"-55";s:1:"f";s:3:"-55";s:1:"g";s:3:"-55";s:6:"gbreve";s:3:"-55";s:12:"gcommaaccent";s:3:"-55";s:1:"h";s:3:"-55";s:1:"i";s:3:"-55";s:6:"iacute";s:3:"-55";s:11:"icircumflex";s:3:"-55";s:9:"idieresis";s:3:"-55";s:6:"igrave";s:3:"-55";s:7:"imacron";s:3:"-55";s:7:"iogonek";s:3:"-55";s:1:"j";s:3:"-55";s:1:"k";s:3:"-55";s:12:"kcommaaccent";s:3:"-55";s:1:"l";s:3:"-55";s:6:"lacute";s:3:"-55";s:12:"lcommaaccent";s:3:"-55";s:6:"lslash";s:3:"-55";s:1:"m";s:3:"-55";s:1:"n";s:3:"-55";s:6:"nacute";s:3:"-55";s:6:"ncaron";s:3:"-55";s:12:"ncommaaccent";s:3:"-55";s:6:"ntilde";s:3:"-55";s:1:"o";s:3:"-55";s:6:"oacute";s:3:"-55";s:11:"ocircumflex";s:3:"-55";s:9:"odieresis";s:3:"-55";s:6:"ograve";s:3:"-55";s:13:"ohungarumlaut";s:3:"-55";s:7:"omacron";s:3:"-55";s:6:"oslash";s:3:"-55";s:6:"otilde";s:3:"-55";s:1:"p";s:3:"-55";s:6:"period";s:3:"-95";s:1:"q";s:3:"-55";s:1:"r";s:3:"-55";s:6:"racute";s:3:"-55";s:6:"rcaron";s:3:"-55";s:12:"rcommaaccent";s:3:"-55";s:1:"s";s:3:"-55";s:6:"sacute";s:3:"-55";s:6:"scaron";s:3:"-55";s:8:"scedilla";s:3:"-55";s:12:"scommaaccent";s:3:"-55";s:1:"t";s:3:"-55";s:12:"tcommaaccent";s:3:"-55";s:1:"u";s:3:"-55";s:6:"uacute";s:3:"-55";s:11:"ucircumflex";s:3:"-55";s:9:"udieresis";s:3:"-55";s:6:"ugrave";s:3:"-55";s:13:"uhungarumlaut";s:3:"-55";s:7:"umacron";s:3:"-55";s:7:"uogonek";s:3:"-55";s:5:"uring";s:3:"-55";s:1:"v";s:3:"-70";s:1:"w";s:3:"-70";s:1:"x";s:3:"-85";s:1:"y";s:3:"-70";s:6:"yacute";s:3:"-70";s:9:"ydieresis";s:3:"-70";s:1:"z";s:3:"-55";s:6:"zacute";s:3:"-55";s:6:"zcaron";s:3:"-55";s:10:"zdotaccent";s:3:"-55";}s:6:"otilde";a:8:{s:5:"comma";s:3:"-40";s:6:"period";s:3:"-40";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-30";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:1:"p";a:5:{s:5:"comma";s:3:"-35";s:6:"period";s:3:"-35";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:6:"period";a:3:{s:13:"quotedblright";s:4:"-100";s:10:"quoteright";s:4:"-100";s:5:"space";s:3:"-60";}s:13:"quotedblright";a:1:{s:5:"space";s:3:"-40";}s:9:"quoteleft";a:1:{s:9:"quoteleft";s:3:"-57";}s:10:"quoteright";a:13:{s:1:"d";s:3:"-50";s:6:"dcroat";s:3:"-50";s:10:"quoteright";s:3:"-57";s:1:"r";s:3:"-50";s:6:"racute";s:3:"-50";s:6:"rcaron";s:3:"-50";s:12:"rcommaaccent";s:3:"-50";s:1:"s";s:3:"-50";s:6:"sacute";s:3:"-50";s:6:"scaron";s:3:"-50";s:8:"scedilla";s:3:"-50";s:12:"scommaaccent";s:3:"-50";s:5:"space";s:3:"-70";}s:1:"r";a:49:{s:1:"a";s:3:"-10";s:6:"aacute";s:3:"-10";s:6:"abreve";s:3:"-10";s:11:"acircumflex";s:3:"-10";s:9:"adieresis";s:3:"-10";s:6:"agrave";s:3:"-10";s:7:"amacron";s:3:"-10";s:7:"aogonek";s:3:"-10";s:5:"aring";s:3:"-10";s:6:"atilde";s:3:"-10";s:5:"colon";s:2:"30";s:5:"comma";s:3:"-50";s:1:"i";s:2:"15";s:6:"iacute";s:2:"15";s:11:"icircumflex";s:2:"15";s:9:"idieresis";s:2:"15";s:6:"igrave";s:2:"15";s:7:"imacron";s:2:"15";s:7:"iogonek";s:2:"15";s:1:"k";s:2:"15";s:12:"kcommaaccent";s:2:"15";s:1:"l";s:2:"15";s:6:"lacute";s:2:"15";s:12:"lcommaaccent";s:2:"15";s:6:"lslash";s:2:"15";s:1:"m";s:2:"25";s:1:"n";s:2:"25";s:6:"nacute";s:2:"25";s:6:"ncaron";s:2:"25";s:12:"ncommaaccent";s:2:"25";s:6:"ntilde";s:2:"25";s:1:"p";s:2:"30";s:6:"period";s:3:"-50";s:9:"semicolon";s:2:"30";s:1:"t";s:2:"40";s:12:"tcommaaccent";s:2:"40";s:1:"u";s:2:"15";s:6:"uacute";s:2:"15";s:11:"ucircumflex";s:2:"15";s:9:"udieresis";s:2:"15";s:6:"ugrave";s:2:"15";s:13:"uhungarumlaut";s:2:"15";s:7:"umacron";s:2:"15";s:7:"uogonek";s:2:"15";s:5:"uring";s:2:"15";s:1:"v";s:2:"30";s:1:"y";s:2:"30";s:6:"yacute";s:2:"30";s:9:"ydieresis";s:2:"30";}s:6:"racute";a:49:{s:1:"a";s:3:"-10";s:6:"aacute";s:3:"-10";s:6:"abreve";s:3:"-10";s:11:"acircumflex";s:3:"-10";s:9:"adieresis";s:3:"-10";s:6:"agrave";s:3:"-10";s:7:"amacron";s:3:"-10";s:7:"aogonek";s:3:"-10";s:5:"aring";s:3:"-10";s:6:"atilde";s:3:"-10";s:5:"colon";s:2:"30";s:5:"comma";s:3:"-50";s:1:"i";s:2:"15";s:6:"iacute";s:2:"15";s:11:"icircumflex";s:2:"15";s:9:"idieresis";s:2:"15";s:6:"igrave";s:2:"15";s:7:"imacron";s:2:"15";s:7:"iogonek";s:2:"15";s:1:"k";s:2:"15";s:12:"kcommaaccent";s:2:"15";s:1:"l";s:2:"15";s:6:"lacute";s:2:"15";s:12:"lcommaaccent";s:2:"15";s:6:"lslash";s:2:"15";s:1:"m";s:2:"25";s:1:"n";s:2:"25";s:6:"nacute";s:2:"25";s:6:"ncaron";s:2:"25";s:12:"ncommaaccent";s:2:"25";s:6:"ntilde";s:2:"25";s:1:"p";s:2:"30";s:6:"period";s:3:"-50";s:9:"semicolon";s:2:"30";s:1:"t";s:2:"40";s:12:"tcommaaccent";s:2:"40";s:1:"u";s:2:"15";s:6:"uacute";s:2:"15";s:11:"ucircumflex";s:2:"15";s:9:"udieresis";s:2:"15";s:6:"ugrave";s:2:"15";s:13:"uhungarumlaut";s:2:"15";s:7:"umacron";s:2:"15";s:7:"uogonek";s:2:"15";s:5:"uring";s:2:"15";s:1:"v";s:2:"30";s:1:"y";s:2:"30";s:6:"yacute";s:2:"30";s:9:"ydieresis";s:2:"30";}s:6:"rcaron";a:49:{s:1:"a";s:3:"-10";s:6:"aacute";s:3:"-10";s:6:"abreve";s:3:"-10";s:11:"acircumflex";s:3:"-10";s:9:"adieresis";s:3:"-10";s:6:"agrave";s:3:"-10";s:7:"amacron";s:3:"-10";s:7:"aogonek";s:3:"-10";s:5:"aring";s:3:"-10";s:6:"atilde";s:3:"-10";s:5:"colon";s:2:"30";s:5:"comma";s:3:"-50";s:1:"i";s:2:"15";s:6:"iacute";s:2:"15";s:11:"icircumflex";s:2:"15";s:9:"idieresis";s:2:"15";s:6:"igrave";s:2:"15";s:7:"imacron";s:2:"15";s:7:"iogonek";s:2:"15";s:1:"k";s:2:"15";s:12:"kcommaaccent";s:2:"15";s:1:"l";s:2:"15";s:6:"lacute";s:2:"15";s:12:"lcommaaccent";s:2:"15";s:6:"lslash";s:2:"15";s:1:"m";s:2:"25";s:1:"n";s:2:"25";s:6:"nacute";s:2:"25";s:6:"ncaron";s:2:"25";s:12:"ncommaaccent";s:2:"25";s:6:"ntilde";s:2:"25";s:1:"p";s:2:"30";s:6:"period";s:3:"-50";s:9:"semicolon";s:2:"30";s:1:"t";s:2:"40";s:12:"tcommaaccent";s:2:"40";s:1:"u";s:2:"15";s:6:"uacute";s:2:"15";s:11:"ucircumflex";s:2:"15";s:9:"udieresis";s:2:"15";s:6:"ugrave";s:2:"15";s:13:"uhungarumlaut";s:2:"15";s:7:"umacron";s:2:"15";s:7:"uogonek";s:2:"15";s:5:"uring";s:2:"15";s:1:"v";s:2:"30";s:1:"y";s:2:"30";s:6:"yacute";s:2:"30";s:9:"ydieresis";s:2:"30";}s:12:"rcommaaccent";a:49:{s:1:"a";s:3:"-10";s:6:"aacute";s:3:"-10";s:6:"abreve";s:3:"-10";s:11:"acircumflex";s:3:"-10";s:9:"adieresis";s:3:"-10";s:6:"agrave";s:3:"-10";s:7:"amacron";s:3:"-10";s:7:"aogonek";s:3:"-10";s:5:"aring";s:3:"-10";s:6:"atilde";s:3:"-10";s:5:"colon";s:2:"30";s:5:"comma";s:3:"-50";s:1:"i";s:2:"15";s:6:"iacute";s:2:"15";s:11:"icircumflex";s:2:"15";s:9:"idieresis";s:2:"15";s:6:"igrave";s:2:"15";s:7:"imacron";s:2:"15";s:7:"iogonek";s:2:"15";s:1:"k";s:2:"15";s:12:"kcommaaccent";s:2:"15";s:1:"l";s:2:"15";s:6:"lacute";s:2:"15";s:12:"lcommaaccent";s:2:"15";s:6:"lslash";s:2:"15";s:1:"m";s:2:"25";s:1:"n";s:2:"25";s:6:"nacute";s:2:"25";s:6:"ncaron";s:2:"25";s:12:"ncommaaccent";s:2:"25";s:6:"ntilde";s:2:"25";s:1:"p";s:2:"30";s:6:"period";s:3:"-50";s:9:"semicolon";s:2:"30";s:1:"t";s:2:"40";s:12:"tcommaaccent";s:2:"40";s:1:"u";s:2:"15";s:6:"uacute";s:2:"15";s:11:"ucircumflex";s:2:"15";s:9:"udieresis";s:2:"15";s:6:"ugrave";s:2:"15";s:13:"uhungarumlaut";s:2:"15";s:7:"umacron";s:2:"15";s:7:"uogonek";s:2:"15";s:5:"uring";s:2:"15";s:1:"v";s:2:"30";s:1:"y";s:2:"30";s:6:"yacute";s:2:"30";s:9:"ydieresis";s:2:"30";}s:1:"s";a:3:{s:5:"comma";s:3:"-15";s:6:"period";s:3:"-15";s:1:"w";s:3:"-30";}s:6:"sacute";a:3:{s:5:"comma";s:3:"-15";s:6:"period";s:3:"-15";s:1:"w";s:3:"-30";}s:6:"scaron";a:3:{s:5:"comma";s:3:"-15";s:6:"period";s:3:"-15";s:1:"w";s:3:"-30";}s:8:"scedilla";a:3:{s:5:"comma";s:3:"-15";s:6:"period";s:3:"-15";s:1:"w";s:3:"-30";}s:12:"scommaaccent";a:3:{s:5:"comma";s:3:"-15";s:6:"period";s:3:"-15";s:1:"w";s:3:"-30";}s:9:"semicolon";a:1:{s:5:"space";s:3:"-50";}s:5:"space";a:10:{s:1:"T";s:3:"-50";s:6:"Tcaron";s:3:"-50";s:12:"Tcommaaccent";s:3:"-50";s:1:"V";s:3:"-50";s:1:"W";s:3:"-40";s:1:"Y";s:3:"-90";s:6:"Yacute";s:3:"-90";s:9:"Ydieresis";s:3:"-90";s:12:"quotedblleft";s:3:"-30";s:9:"quoteleft";s:3:"-60";}s:1:"v";a:30:{s:1:"a";s:3:"-25";s:6:"aacute";s:3:"-25";s:6:"abreve";s:3:"-25";s:11:"acircumflex";s:3:"-25";s:9:"adieresis";s:3:"-25";s:6:"agrave";s:3:"-25";s:7:"amacron";s:3:"-25";s:7:"aogonek";s:3:"-25";s:5:"aring";s:3:"-25";s:6:"atilde";s:3:"-25";s:5:"comma";s:3:"-80";s:1:"e";s:3:"-25";s:6:"eacute";s:3:"-25";s:6:"ecaron";s:3:"-25";s:11:"ecircumflex";s:3:"-25";s:9:"edieresis";s:3:"-25";s:10:"edotaccent";s:3:"-25";s:6:"egrave";s:3:"-25";s:7:"emacron";s:3:"-25";s:7:"eogonek";s:3:"-25";s:1:"o";s:3:"-25";s:6:"oacute";s:3:"-25";s:11:"ocircumflex";s:3:"-25";s:9:"odieresis";s:3:"-25";s:6:"ograve";s:3:"-25";s:13:"ohungarumlaut";s:3:"-25";s:7:"omacron";s:3:"-25";s:6:"oslash";s:3:"-25";s:6:"otilde";s:3:"-25";s:6:"period";s:3:"-80";}s:1:"w";a:30:{s:1:"a";s:3:"-15";s:6:"aacute";s:3:"-15";s:6:"abreve";s:3:"-15";s:11:"acircumflex";s:3:"-15";s:9:"adieresis";s:3:"-15";s:6:"agrave";s:3:"-15";s:7:"amacron";s:3:"-15";s:7:"aogonek";s:3:"-15";s:5:"aring";s:3:"-15";s:6:"atilde";s:3:"-15";s:5:"comma";s:3:"-60";s:1:"e";s:3:"-10";s:6:"eacute";s:3:"-10";s:6:"ecaron";s:3:"-10";s:11:"ecircumflex";s:3:"-10";s:9:"edieresis";s:3:"-10";s:10:"edotaccent";s:3:"-10";s:6:"egrave";s:3:"-10";s:7:"emacron";s:3:"-10";s:7:"eogonek";s:3:"-10";s:1:"o";s:3:"-10";s:6:"oacute";s:3:"-10";s:11:"ocircumflex";s:3:"-10";s:9:"odieresis";s:3:"-10";s:6:"ograve";s:3:"-10";s:13:"ohungarumlaut";s:3:"-10";s:7:"omacron";s:3:"-10";s:6:"oslash";s:3:"-10";s:6:"otilde";s:3:"-10";s:6:"period";s:3:"-60";}s:1:"x";a:9:{s:1:"e";s:3:"-30";s:6:"eacute";s:3:"-30";s:6:"ecaron";s:3:"-30";s:11:"ecircumflex";s:3:"-30";s:9:"edieresis";s:3:"-30";s:10:"edotaccent";s:3:"-30";s:6:"egrave";s:3:"-30";s:7:"emacron";s:3:"-30";s:7:"eogonek";s:3:"-30";}s:1:"y";a:30:{s:1:"a";s:3:"-20";s:6:"aacute";s:3:"-20";s:6:"abreve";s:3:"-20";s:11:"acircumflex";s:3:"-20";s:9:"adieresis";s:3:"-20";s:6:"agrave";s:3:"-20";s:7:"amacron";s:3:"-20";s:7:"aogonek";s:3:"-20";s:5:"aring";s:3:"-20";s:6:"atilde";s:3:"-20";s:5:"comma";s:4:"-100";s:1:"e";s:3:"-20";s:6:"eacute";s:3:"-20";s:6:"ecaron";s:3:"-20";s:11:"ecircumflex";s:3:"-20";s:9:"edieresis";s:3:"-20";s:10:"edotaccent";s:3:"-20";s:6:"egrave";s:3:"-20";s:7:"emacron";s:3:"-20";s:7:"eogonek";s:3:"-20";s:1:"o";s:3:"-20";s:6:"oacute";s:3:"-20";s:11:"ocircumflex";s:3:"-20";s:9:"odieresis";s:3:"-20";s:6:"ograve";s:3:"-20";s:13:"ohungarumlaut";s:3:"-20";s:7:"omacron";s:3:"-20";s:6:"oslash";s:3:"-20";s:6:"otilde";s:3:"-20";s:6:"period";s:4:"-100";}s:6:"yacute";a:30:{s:1:"a";s:3:"-20";s:6:"aacute";s:3:"-20";s:6:"abreve";s:3:"-20";s:11:"acircumflex";s:3:"-20";s:9:"adieresis";s:3:"-20";s:6:"agrave";s:3:"-20";s:7:"amacron";s:3:"-20";s:7:"aogonek";s:3:"-20";s:5:"aring";s:3:"-20";s:6:"atilde";s:3:"-20";s:5:"comma";s:4:"-100";s:1:"e";s:3:"-20";s:6:"eacute";s:3:"-20";s:6:"ecaron";s:3:"-20";s:11:"ecircumflex";s:3:"-20";s:9:"edieresis";s:3:"-20";s:10:"edotaccent";s:3:"-20";s:6:"egrave";s:3:"-20";s:7:"emacron";s:3:"-20";s:7:"eogonek";s:3:"-20";s:1:"o";s:3:"-20";s:6:"oacute";s:3:"-20";s:11:"ocircumflex";s:3:"-20";s:9:"odieresis";s:3:"-20";s:6:"ograve";s:3:"-20";s:13:"ohungarumlaut";s:3:"-20";s:7:"omacron";s:3:"-20";s:6:"oslash";s:3:"-20";s:6:"otilde";s:3:"-20";s:6:"period";s:4:"-100";}s:9:"ydieresis";a:30:{s:1:"a";s:3:"-20";s:6:"aacute";s:3:"-20";s:6:"abreve";s:3:"-20";s:11:"acircumflex";s:3:"-20";s:9:"adieresis";s:3:"-20";s:6:"agrave";s:3:"-20";s:7:"amacron";s:3:"-20";s:7:"aogonek";s:3:"-20";s:5:"aring";s:3:"-20";s:6:"atilde";s:3:"-20";s:5:"comma";s:4:"-100";s:1:"e";s:3:"-20";s:6:"eacute";s:3:"-20";s:6:"ecaron";s:3:"-20";s:11:"ecircumflex";s:3:"-20";s:9:"edieresis";s:3:"-20";s:10:"edotaccent";s:3:"-20";s:6:"egrave";s:3:"-20";s:7:"emacron";s:3:"-20";s:7:"eogonek";s:3:"-20";s:1:"o";s:3:"-20";s:6:"oacute";s:3:"-20";s:11:"ocircumflex";s:3:"-20";s:9:"odieresis";s:3:"-20";s:6:"ograve";s:3:"-20";s:13:"ohungarumlaut";s:3:"-20";s:7:"omacron";s:3:"-20";s:6:"oslash";s:3:"-20";s:6:"otilde";s:3:"-20";s:6:"period";s:4:"-100";}s:1:"z";a:18:{s:1:"e";s:3:"-15";s:6:"eacute";s:3:"-15";s:6:"ecaron";s:3:"-15";s:11:"ecircumflex";s:3:"-15";s:9:"edieresis";s:3:"-15";s:10:"edotaccent";s:3:"-15";s:6:"egrave";s:3:"-15";s:7:"emacron";s:3:"-15";s:7:"eogonek";s:3:"-15";s:1:"o";s:3:"-15";s:6:"oacute";s:3:"-15";s:11:"ocircumflex";s:3:"-15";s:9:"odieresis";s:3:"-15";s:6:"ograve";s:3:"-15";s:13:"ohungarumlaut";s:3:"-15";s:7:"omacron";s:3:"-15";s:6:"oslash";s:3:"-15";s:6:"otilde";s:3:"-15";}s:6:"zacute";a:18:{s:1:"e";s:3:"-15";s:6:"eacute";s:3:"-15";s:6:"ecaron";s:3:"-15";s:11:"ecircumflex";s:3:"-15";s:9:"edieresis";s:3:"-15";s:10:"edotaccent";s:3:"-15";s:6:"egrave";s:3:"-15";s:7:"emacron";s:3:"-15";s:7:"eogonek";s:3:"-15";s:1:"o";s:3:"-15";s:6:"oacute";s:3:"-15";s:11:"ocircumflex";s:3:"-15";s:9:"odieresis";s:3:"-15";s:6:"ograve";s:3:"-15";s:13:"ohungarumlaut";s:3:"-15";s:7:"omacron";s:3:"-15";s:6:"oslash";s:3:"-15";s:6:"otilde";s:3:"-15";}s:6:"zcaron";a:18:{s:1:"e";s:3:"-15";s:6:"eacute";s:3:"-15";s:6:"ecaron";s:3:"-15";s:11:"ecircumflex";s:3:"-15";s:9:"edieresis";s:3:"-15";s:10:"edotaccent";s:3:"-15";s:6:"egrave";s:3:"-15";s:7:"emacron";s:3:"-15";s:7:"eogonek";s:3:"-15";s:1:"o";s:3:"-15";s:6:"oacute";s:3:"-15";s:11:"ocircumflex";s:3:"-15";s:9:"odieresis";s:3:"-15";s:6:"ograve";s:3:"-15";s:13:"ohungarumlaut";s:3:"-15";s:7:"omacron";s:3:"-15";s:6:"oslash";s:3:"-15";s:6:"otilde";s:3:"-15";}s:10:"zdotaccent";a:18:{s:1:"e";s:3:"-15";s:6:"eacute";s:3:"-15";s:6:"ecaron";s:3:"-15";s:11:"ecircumflex";s:3:"-15";s:9:"edieresis";s:3:"-15";s:10:"edotaccent";s:3:"-15";s:6:"egrave";s:3:"-15";s:7:"emacron";s:3:"-15";s:7:"eogonek";s:3:"-15";s:1:"o";s:3:"-15";s:6:"oacute";s:3:"-15";s:11:"ocircumflex";s:3:"-15";s:9:"odieresis";s:3:"-15";s:6:"ograve";s:3:"-15";s:13:"ohungarumlaut";s:3:"-15";s:7:"omacron";s:3:"-15";s:6:"oslash";s:3:"-15";s:6:"otilde";s:3:"-15";}}s:9:"_version_";i:1;} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Symbol.afm b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Symbol.afm
new file mode 100755
index 00000000..856b75e2
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Symbol.afm
@@ -0,0 +1 @@
+a:17:{s:8:"FontName";s:6:"Symbol";s:8:"FullName";s:6:"Symbol";s:10:"FamilyName";s:6:"Symbol";s:6:"Weight";s:6:"Medium";s:11:"ItalicAngle";s:1:"0";s:12:"IsFixedPitch";s:5:"false";s:12:"CharacterSet";s:7:"Special";s:8:"FontBBox";a:4:{i:0;s:4:"-180";i:1;s:4:"-293";i:2;s:4:"1090";i:3;s:4:"1010";}s:17:"UnderlinePosition";s:4:"-100";s:18:"UnderlineThickness";s:2:"50";s:7:"Version";s:7:"001.008";s:14:"EncodingScheme";s:12:"FontSpecific";s:5:"StdHW";s:2:"92";s:5:"StdVW";s:2:"85";s:16:"StartCharMetrics";s:3:"190";s:1:"C";a:379:{i:32;a:4:{s:1:"C";s:2:"32";s:2:"WX";s:3:"250";s:1:"N";s:5:"space";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:1:"0";i:3;s:1:"0";}}s:5:"space";a:4:{s:1:"C";s:2:"32";s:2:"WX";s:3:"250";s:1:"N";s:5:"space";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:1:"0";i:3;s:1:"0";}}i:33;a:4:{s:1:"C";s:2:"33";s:2:"WX";s:3:"333";s:1:"N";s:6:"exclam";s:1:"B";a:4:{i:0;s:3:"128";i:1;s:3:"-17";i:2;s:3:"240";i:3;s:3:"672";}}s:6:"exclam";a:4:{s:1:"C";s:2:"33";s:2:"WX";s:3:"333";s:1:"N";s:6:"exclam";s:1:"B";a:4:{i:0;s:3:"128";i:1;s:3:"-17";i:2;s:3:"240";i:3;s:3:"672";}}i:34;a:4:{s:1:"C";s:2:"34";s:2:"WX";s:3:"713";s:1:"N";s:9:"universal";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:1:"0";i:2;s:3:"681";i:3;s:3:"705";}}s:9:"universal";a:4:{s:1:"C";s:2:"34";s:2:"WX";s:3:"713";s:1:"N";s:9:"universal";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:1:"0";i:2;s:3:"681";i:3;s:3:"705";}}i:35;a:4:{s:1:"C";s:2:"35";s:2:"WX";s:3:"500";s:1:"N";s:10:"numbersign";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:3:"-16";i:2;s:3:"481";i:3;s:3:"673";}}s:10:"numbersign";a:4:{s:1:"C";s:2:"35";s:2:"WX";s:3:"500";s:1:"N";s:10:"numbersign";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:3:"-16";i:2;s:3:"481";i:3;s:3:"673";}}i:36;a:4:{s:1:"C";s:2:"36";s:2:"WX";s:3:"549";s:1:"N";s:11:"existential";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:1:"0";i:2;s:3:"478";i:3;s:3:"707";}}s:11:"existential";a:4:{s:1:"C";s:2:"36";s:2:"WX";s:3:"549";s:1:"N";s:11:"existential";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:1:"0";i:2;s:3:"478";i:3;s:3:"707";}}i:37;a:4:{s:1:"C";s:2:"37";s:2:"WX";s:3:"833";s:1:"N";s:7:"percent";s:1:"B";a:4:{i:0;s:2:"63";i:1;s:3:"-36";i:2;s:3:"771";i:3;s:3:"655";}}s:7:"percent";a:4:{s:1:"C";s:2:"37";s:2:"WX";s:3:"833";s:1:"N";s:7:"percent";s:1:"B";a:4:{i:0;s:2:"63";i:1;s:3:"-36";i:2;s:3:"771";i:3;s:3:"655";}}i:38;a:4:{s:1:"C";s:2:"38";s:2:"WX";s:3:"778";s:1:"N";s:9:"ampersand";s:1:"B";a:4:{i:0;s:2:"41";i:1;s:3:"-18";i:2;s:3:"750";i:3;s:3:"661";}}s:9:"ampersand";a:4:{s:1:"C";s:2:"38";s:2:"WX";s:3:"778";s:1:"N";s:9:"ampersand";s:1:"B";a:4:{i:0;s:2:"41";i:1;s:3:"-18";i:2;s:3:"750";i:3;s:3:"661";}}i:39;a:4:{s:1:"C";s:2:"39";s:2:"WX";s:3:"439";s:1:"N";s:8:"suchthat";s:1:"B";a:4:{i:0;s:2:"48";i:1;s:3:"-17";i:2;s:3:"414";i:3;s:3:"500";}}s:8:"suchthat";a:4:{s:1:"C";s:2:"39";s:2:"WX";s:3:"439";s:1:"N";s:8:"suchthat";s:1:"B";a:4:{i:0;s:2:"48";i:1;s:3:"-17";i:2;s:3:"414";i:3;s:3:"500";}}i:40;a:4:{s:1:"C";s:2:"40";s:2:"WX";s:3:"333";s:1:"N";s:9:"parenleft";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:4:"-191";i:2;s:3:"300";i:3;s:3:"673";}}s:9:"parenleft";a:4:{s:1:"C";s:2:"40";s:2:"WX";s:3:"333";s:1:"N";s:9:"parenleft";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:4:"-191";i:2;s:3:"300";i:3;s:3:"673";}}i:41;a:4:{s:1:"C";s:2:"41";s:2:"WX";s:3:"333";s:1:"N";s:10:"parenright";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:4:"-191";i:2;s:3:"277";i:3;s:3:"673";}}s:10:"parenright";a:4:{s:1:"C";s:2:"41";s:2:"WX";s:3:"333";s:1:"N";s:10:"parenright";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:4:"-191";i:2;s:3:"277";i:3;s:3:"673";}}i:42;a:4:{s:1:"C";s:2:"42";s:2:"WX";s:3:"500";s:1:"N";s:12:"asteriskmath";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:3:"134";i:2;s:3:"427";i:3;s:3:"551";}}s:12:"asteriskmath";a:4:{s:1:"C";s:2:"42";s:2:"WX";s:3:"500";s:1:"N";s:12:"asteriskmath";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:3:"134";i:2;s:3:"427";i:3;s:3:"551";}}i:43;a:4:{s:1:"C";s:2:"43";s:2:"WX";s:3:"549";s:1:"N";s:4:"plus";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:1:"0";i:2;s:3:"539";i:3;s:3:"533";}}s:4:"plus";a:4:{s:1:"C";s:2:"43";s:2:"WX";s:3:"549";s:1:"N";s:4:"plus";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:1:"0";i:2;s:3:"539";i:3;s:3:"533";}}i:44;a:4:{s:1:"C";s:2:"44";s:2:"WX";s:3:"250";s:1:"N";s:5:"comma";s:1:"B";a:4:{i:0;s:2:"56";i:1;s:4:"-152";i:2;s:3:"194";i:3;s:3:"104";}}s:5:"comma";a:4:{s:1:"C";s:2:"44";s:2:"WX";s:3:"250";s:1:"N";s:5:"comma";s:1:"B";a:4:{i:0;s:2:"56";i:1;s:4:"-152";i:2;s:3:"194";i:3;s:3:"104";}}i:45;a:4:{s:1:"C";s:2:"45";s:2:"WX";s:3:"549";s:1:"N";s:5:"minus";s:1:"B";a:4:{i:0;s:2:"11";i:1;s:3:"233";i:2;s:3:"535";i:3;s:3:"288";}}s:5:"minus";a:4:{s:1:"C";s:2:"45";s:2:"WX";s:3:"549";s:1:"N";s:5:"minus";s:1:"B";a:4:{i:0;s:2:"11";i:1;s:3:"233";i:2;s:3:"535";i:3;s:3:"288";}}i:46;a:4:{s:1:"C";s:2:"46";s:2:"WX";s:3:"250";s:1:"N";s:6:"period";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:3:"-17";i:2;s:3:"181";i:3;s:2:"95";}}s:6:"period";a:4:{s:1:"C";s:2:"46";s:2:"WX";s:3:"250";s:1:"N";s:6:"period";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:3:"-17";i:2;s:3:"181";i:3;s:2:"95";}}i:47;a:4:{s:1:"C";s:2:"47";s:2:"WX";s:3:"278";s:1:"N";s:5:"slash";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"-18";i:2;s:3:"254";i:3;s:3:"646";}}s:5:"slash";a:4:{s:1:"C";s:2:"47";s:2:"WX";s:3:"278";s:1:"N";s:5:"slash";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"-18";i:2;s:3:"254";i:3;s:3:"646";}}i:48;a:4:{s:1:"C";s:2:"48";s:2:"WX";s:3:"500";s:1:"N";s:4:"zero";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:3:"-14";i:2;s:3:"476";i:3;s:3:"685";}}s:4:"zero";a:4:{s:1:"C";s:2:"48";s:2:"WX";s:3:"500";s:1:"N";s:4:"zero";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:3:"-14";i:2;s:3:"476";i:3;s:3:"685";}}i:49;a:4:{s:1:"C";s:2:"49";s:2:"WX";s:3:"500";s:1:"N";s:3:"one";s:1:"B";a:4:{i:0;s:3:"117";i:1;s:1:"0";i:2;s:3:"390";i:3;s:3:"673";}}s:3:"one";a:4:{s:1:"C";s:2:"49";s:2:"WX";s:3:"500";s:1:"N";s:3:"one";s:1:"B";a:4:{i:0;s:3:"117";i:1;s:1:"0";i:2;s:3:"390";i:3;s:3:"673";}}i:50;a:4:{s:1:"C";s:2:"50";s:2:"WX";s:3:"500";s:1:"N";s:3:"two";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:1:"0";i:2;s:3:"475";i:3;s:3:"685";}}s:3:"two";a:4:{s:1:"C";s:2:"50";s:2:"WX";s:3:"500";s:1:"N";s:3:"two";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:1:"0";i:2;s:3:"475";i:3;s:3:"685";}}i:51;a:4:{s:1:"C";s:2:"51";s:2:"WX";s:3:"500";s:1:"N";s:5:"three";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:3:"-14";i:2;s:3:"435";i:3;s:3:"685";}}s:5:"three";a:4:{s:1:"C";s:2:"51";s:2:"WX";s:3:"500";s:1:"N";s:5:"three";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:3:"-14";i:2;s:3:"435";i:3;s:3:"685";}}i:52;a:4:{s:1:"C";s:2:"52";s:2:"WX";s:3:"500";s:1:"N";s:4:"four";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:1:"0";i:2;s:3:"469";i:3;s:3:"685";}}s:4:"four";a:4:{s:1:"C";s:2:"52";s:2:"WX";s:3:"500";s:1:"N";s:4:"four";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:1:"0";i:2;s:3:"469";i:3;s:3:"685";}}i:53;a:4:{s:1:"C";s:2:"53";s:2:"WX";s:3:"500";s:1:"N";s:4:"five";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:3:"-14";i:2;s:3:"445";i:3;s:3:"690";}}s:4:"five";a:4:{s:1:"C";s:2:"53";s:2:"WX";s:3:"500";s:1:"N";s:4:"five";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:3:"-14";i:2;s:3:"445";i:3;s:3:"690";}}i:54;a:4:{s:1:"C";s:2:"54";s:2:"WX";s:3:"500";s:1:"N";s:3:"six";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"468";i:3;s:3:"685";}}s:3:"six";a:4:{s:1:"C";s:2:"54";s:2:"WX";s:3:"500";s:1:"N";s:3:"six";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"468";i:3;s:3:"685";}}i:55;a:4:{s:1:"C";s:2:"55";s:2:"WX";s:3:"500";s:1:"N";s:5:"seven";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:3:"-16";i:2;s:3:"448";i:3;s:3:"673";}}s:5:"seven";a:4:{s:1:"C";s:2:"55";s:2:"WX";s:3:"500";s:1:"N";s:5:"seven";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:3:"-16";i:2;s:3:"448";i:3;s:3:"673";}}i:56;a:4:{s:1:"C";s:2:"56";s:2:"WX";s:3:"500";s:1:"N";s:5:"eight";s:1:"B";a:4:{i:0;s:2:"56";i:1;s:3:"-14";i:2;s:3:"445";i:3;s:3:"685";}}s:5:"eight";a:4:{s:1:"C";s:2:"56";s:2:"WX";s:3:"500";s:1:"N";s:5:"eight";s:1:"B";a:4:{i:0;s:2:"56";i:1;s:3:"-14";i:2;s:3:"445";i:3;s:3:"685";}}i:57;a:4:{s:1:"C";s:2:"57";s:2:"WX";s:3:"500";s:1:"N";s:4:"nine";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"-18";i:2;s:3:"459";i:3;s:3:"685";}}s:4:"nine";a:4:{s:1:"C";s:2:"57";s:2:"WX";s:3:"500";s:1:"N";s:4:"nine";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"-18";i:2;s:3:"459";i:3;s:3:"685";}}i:58;a:4:{s:1:"C";s:2:"58";s:2:"WX";s:3:"278";s:1:"N";s:5:"colon";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:3:"-17";i:2;s:3:"193";i:3;s:3:"460";}}s:5:"colon";a:4:{s:1:"C";s:2:"58";s:2:"WX";s:3:"278";s:1:"N";s:5:"colon";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:3:"-17";i:2;s:3:"193";i:3;s:3:"460";}}i:59;a:4:{s:1:"C";s:2:"59";s:2:"WX";s:3:"278";s:1:"N";s:9:"semicolon";s:1:"B";a:4:{i:0;s:2:"83";i:1;s:4:"-152";i:2;s:3:"221";i:3;s:3:"460";}}s:9:"semicolon";a:4:{s:1:"C";s:2:"59";s:2:"WX";s:3:"278";s:1:"N";s:9:"semicolon";s:1:"B";a:4:{i:0;s:2:"83";i:1;s:4:"-152";i:2;s:3:"221";i:3;s:3:"460";}}i:60;a:4:{s:1:"C";s:2:"60";s:2:"WX";s:3:"549";s:1:"N";s:4:"less";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"523";i:3;s:3:"522";}}s:4:"less";a:4:{s:1:"C";s:2:"60";s:2:"WX";s:3:"549";s:1:"N";s:4:"less";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"523";i:3;s:3:"522";}}i:61;a:4:{s:1:"C";s:2:"61";s:2:"WX";s:3:"549";s:1:"N";s:5:"equal";s:1:"B";a:4:{i:0;s:2:"11";i:1;s:3:"141";i:2;s:3:"537";i:3;s:3:"390";}}s:5:"equal";a:4:{s:1:"C";s:2:"61";s:2:"WX";s:3:"549";s:1:"N";s:5:"equal";s:1:"B";a:4:{i:0;s:2:"11";i:1;s:3:"141";i:2;s:3:"537";i:3;s:3:"390";}}i:62;a:4:{s:1:"C";s:2:"62";s:2:"WX";s:3:"549";s:1:"N";s:7:"greater";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"523";i:3;s:3:"522";}}s:7:"greater";a:4:{s:1:"C";s:2:"62";s:2:"WX";s:3:"549";s:1:"N";s:7:"greater";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"523";i:3;s:3:"522";}}i:63;a:4:{s:1:"C";s:2:"63";s:2:"WX";s:3:"444";s:1:"N";s:8:"question";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:3:"-17";i:2;s:3:"412";i:3;s:3:"686";}}s:8:"question";a:4:{s:1:"C";s:2:"63";s:2:"WX";s:3:"444";s:1:"N";s:8:"question";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:3:"-17";i:2;s:3:"412";i:3;s:3:"686";}}i:64;a:4:{s:1:"C";s:2:"64";s:2:"WX";s:3:"549";s:1:"N";s:9:"congruent";s:1:"B";a:4:{i:0;s:2:"11";i:1;s:1:"0";i:2;s:3:"537";i:3;s:3:"475";}}s:9:"congruent";a:4:{s:1:"C";s:2:"64";s:2:"WX";s:3:"549";s:1:"N";s:9:"congruent";s:1:"B";a:4:{i:0;s:2:"11";i:1;s:1:"0";i:2;s:3:"537";i:3;s:3:"475";}}i:65;a:4:{s:1:"C";s:2:"65";s:2:"WX";s:3:"722";s:1:"N";s:5:"Alpha";s:1:"B";a:4:{i:0;s:1:"4";i:1;s:1:"0";i:2;s:3:"684";i:3;s:3:"673";}}s:5:"Alpha";a:4:{s:1:"C";s:2:"65";s:2:"WX";s:3:"722";s:1:"N";s:5:"Alpha";s:1:"B";a:4:{i:0;s:1:"4";i:1;s:1:"0";i:2;s:3:"684";i:3;s:3:"673";}}i:66;a:4:{s:1:"C";s:2:"66";s:2:"WX";s:3:"667";s:1:"N";s:4:"Beta";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:1:"0";i:2;s:3:"592";i:3;s:3:"673";}}s:4:"Beta";a:4:{s:1:"C";s:2:"66";s:2:"WX";s:3:"667";s:1:"N";s:4:"Beta";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:1:"0";i:2;s:3:"592";i:3;s:3:"673";}}i:67;a:4:{s:1:"C";s:2:"67";s:2:"WX";s:3:"722";s:1:"N";s:3:"Chi";s:1:"B";a:4:{i:0;s:2:"-9";i:1;s:1:"0";i:2;s:3:"704";i:3;s:3:"673";}}s:3:"Chi";a:4:{s:1:"C";s:2:"67";s:2:"WX";s:3:"722";s:1:"N";s:3:"Chi";s:1:"B";a:4:{i:0;s:2:"-9";i:1;s:1:"0";i:2;s:3:"704";i:3;s:3:"673";}}i:68;a:4:{s:1:"C";s:2:"68";s:2:"WX";s:3:"612";s:1:"N";s:5:"Delta";s:1:"B";a:4:{i:0;s:1:"6";i:1;s:1:"0";i:2;s:3:"608";i:3;s:3:"688";}}s:5:"Delta";a:4:{s:1:"C";s:2:"68";s:2:"WX";s:3:"612";s:1:"N";s:5:"Delta";s:1:"B";a:4:{i:0;s:1:"6";i:1;s:1:"0";i:2;s:3:"608";i:3;s:3:"688";}}i:69;a:4:{s:1:"C";s:2:"69";s:2:"WX";s:3:"611";s:1:"N";s:7:"Epsilon";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:1:"0";i:2;s:3:"617";i:3;s:3:"673";}}s:7:"Epsilon";a:4:{s:1:"C";s:2:"69";s:2:"WX";s:3:"611";s:1:"N";s:7:"Epsilon";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:1:"0";i:2;s:3:"617";i:3;s:3:"673";}}i:70;a:4:{s:1:"C";s:2:"70";s:2:"WX";s:3:"763";s:1:"N";s:3:"Phi";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"741";i:3;s:3:"673";}}s:3:"Phi";a:4:{s:1:"C";s:2:"70";s:2:"WX";s:3:"763";s:1:"N";s:3:"Phi";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"741";i:3;s:3:"673";}}i:71;a:4:{s:1:"C";s:2:"71";s:2:"WX";s:3:"603";s:1:"N";s:5:"Gamma";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:1:"0";i:2;s:3:"609";i:3;s:3:"673";}}s:5:"Gamma";a:4:{s:1:"C";s:2:"71";s:2:"WX";s:3:"603";s:1:"N";s:5:"Gamma";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:1:"0";i:2;s:3:"609";i:3;s:3:"673";}}i:72;a:4:{s:1:"C";s:2:"72";s:2:"WX";s:3:"722";s:1:"N";s:3:"Eta";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:1:"0";i:2;s:3:"729";i:3;s:3:"673";}}s:3:"Eta";a:4:{s:1:"C";s:2:"72";s:2:"WX";s:3:"722";s:1:"N";s:3:"Eta";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:1:"0";i:2;s:3:"729";i:3;s:3:"673";}}i:73;a:4:{s:1:"C";s:2:"73";s:2:"WX";s:3:"333";s:1:"N";s:4:"Iota";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:1:"0";i:2;s:3:"316";i:3;s:3:"673";}}s:4:"Iota";a:4:{s:1:"C";s:2:"73";s:2:"WX";s:3:"333";s:1:"N";s:4:"Iota";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:1:"0";i:2;s:3:"316";i:3;s:3:"673";}}i:74;a:4:{s:1:"C";s:2:"74";s:2:"WX";s:3:"631";s:1:"N";s:6:"theta1";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:3:"-18";i:2;s:3:"623";i:3;s:3:"689";}}s:6:"theta1";a:4:{s:1:"C";s:2:"74";s:2:"WX";s:3:"631";s:1:"N";s:6:"theta1";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:3:"-18";i:2;s:3:"623";i:3;s:3:"689";}}i:75;a:4:{s:1:"C";s:2:"75";s:2:"WX";s:3:"722";s:1:"N";s:5:"Kappa";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"722";i:3;s:3:"673";}}s:5:"Kappa";a:4:{s:1:"C";s:2:"75";s:2:"WX";s:3:"722";s:1:"N";s:5:"Kappa";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"722";i:3;s:3:"673";}}i:76;a:4:{s:1:"C";s:2:"76";s:2:"WX";s:3:"686";s:1:"N";s:6:"Lambda";s:1:"B";a:4:{i:0;s:1:"6";i:1;s:1:"0";i:2;s:3:"680";i:3;s:3:"688";}}s:6:"Lambda";a:4:{s:1:"C";s:2:"76";s:2:"WX";s:3:"686";s:1:"N";s:6:"Lambda";s:1:"B";a:4:{i:0;s:1:"6";i:1;s:1:"0";i:2;s:3:"680";i:3;s:3:"688";}}i:77;a:4:{s:1:"C";s:2:"77";s:2:"WX";s:3:"889";s:1:"N";s:2:"Mu";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:1:"0";i:2;s:3:"887";i:3;s:3:"673";}}s:2:"Mu";a:4:{s:1:"C";s:2:"77";s:2:"WX";s:3:"889";s:1:"N";s:2:"Mu";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:1:"0";i:2;s:3:"887";i:3;s:3:"673";}}i:78;a:4:{s:1:"C";s:2:"78";s:2:"WX";s:3:"722";s:1:"N";s:2:"Nu";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:2:"-8";i:2;s:3:"720";i:3;s:3:"673";}}s:2:"Nu";a:4:{s:1:"C";s:2:"78";s:2:"WX";s:3:"722";s:1:"N";s:2:"Nu";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:2:"-8";i:2;s:3:"720";i:3;s:3:"673";}}i:79;a:4:{s:1:"C";s:2:"79";s:2:"WX";s:3:"722";s:1:"N";s:7:"Omicron";s:1:"B";a:4:{i:0;s:2:"41";i:1;s:3:"-17";i:2;s:3:"715";i:3;s:3:"685";}}s:7:"Omicron";a:4:{s:1:"C";s:2:"79";s:2:"WX";s:3:"722";s:1:"N";s:7:"Omicron";s:1:"B";a:4:{i:0;s:2:"41";i:1;s:3:"-17";i:2;s:3:"715";i:3;s:3:"685";}}i:80;a:4:{s:1:"C";s:2:"80";s:2:"WX";s:3:"768";s:1:"N";s:2:"Pi";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:1:"0";i:2;s:3:"745";i:3;s:3:"673";}}s:2:"Pi";a:4:{s:1:"C";s:2:"80";s:2:"WX";s:3:"768";s:1:"N";s:2:"Pi";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:1:"0";i:2;s:3:"745";i:3;s:3:"673";}}i:81;a:4:{s:1:"C";s:2:"81";s:2:"WX";s:3:"741";s:1:"N";s:5:"Theta";s:1:"B";a:4:{i:0;s:2:"41";i:1;s:3:"-17";i:2;s:3:"715";i:3;s:3:"685";}}s:5:"Theta";a:4:{s:1:"C";s:2:"81";s:2:"WX";s:3:"741";s:1:"N";s:5:"Theta";s:1:"B";a:4:{i:0;s:2:"41";i:1;s:3:"-17";i:2;s:3:"715";i:3;s:3:"685";}}i:82;a:4:{s:1:"C";s:2:"82";s:2:"WX";s:3:"556";s:1:"N";s:3:"Rho";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:1:"0";i:2;s:3:"563";i:3;s:3:"673";}}s:3:"Rho";a:4:{s:1:"C";s:2:"82";s:2:"WX";s:3:"556";s:1:"N";s:3:"Rho";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:1:"0";i:2;s:3:"563";i:3;s:3:"673";}}i:83;a:4:{s:1:"C";s:2:"83";s:2:"WX";s:3:"592";s:1:"N";s:5:"Sigma";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:1:"0";i:2;s:3:"589";i:3;s:3:"673";}}s:5:"Sigma";a:4:{s:1:"C";s:2:"83";s:2:"WX";s:3:"592";s:1:"N";s:5:"Sigma";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:1:"0";i:2;s:3:"589";i:3;s:3:"673";}}i:84;a:4:{s:1:"C";s:2:"84";s:2:"WX";s:3:"611";s:1:"N";s:3:"Tau";s:1:"B";a:4:{i:0;s:2:"33";i:1;s:1:"0";i:2;s:3:"607";i:3;s:3:"673";}}s:3:"Tau";a:4:{s:1:"C";s:2:"84";s:2:"WX";s:3:"611";s:1:"N";s:3:"Tau";s:1:"B";a:4:{i:0;s:2:"33";i:1;s:1:"0";i:2;s:3:"607";i:3;s:3:"673";}}i:85;a:4:{s:1:"C";s:2:"85";s:2:"WX";s:3:"690";s:1:"N";s:7:"Upsilon";s:1:"B";a:4:{i:0;s:2:"-8";i:1;s:1:"0";i:2;s:3:"694";i:3;s:3:"673";}}s:7:"Upsilon";a:4:{s:1:"C";s:2:"85";s:2:"WX";s:3:"690";s:1:"N";s:7:"Upsilon";s:1:"B";a:4:{i:0;s:2:"-8";i:1;s:1:"0";i:2;s:3:"694";i:3;s:3:"673";}}i:86;a:4:{s:1:"C";s:2:"86";s:2:"WX";s:3:"439";s:1:"N";s:6:"sigma1";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:4:"-233";i:2;s:3:"436";i:3;s:3:"500";}}s:6:"sigma1";a:4:{s:1:"C";s:2:"86";s:2:"WX";s:3:"439";s:1:"N";s:6:"sigma1";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:4:"-233";i:2;s:3:"436";i:3;s:3:"500";}}i:87;a:4:{s:1:"C";s:2:"87";s:2:"WX";s:3:"768";s:1:"N";s:5:"Omega";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:1:"0";i:2;s:3:"736";i:3;s:3:"688";}}s:5:"Omega";a:4:{s:1:"C";s:2:"87";s:2:"WX";s:3:"768";s:1:"N";s:5:"Omega";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:1:"0";i:2;s:3:"736";i:3;s:3:"688";}}i:88;a:4:{s:1:"C";s:2:"88";s:2:"WX";s:3:"645";s:1:"N";s:2:"Xi";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:1:"0";i:2;s:3:"599";i:3;s:3:"673";}}s:2:"Xi";a:4:{s:1:"C";s:2:"88";s:2:"WX";s:3:"645";s:1:"N";s:2:"Xi";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:1:"0";i:2;s:3:"599";i:3;s:3:"673";}}i:89;a:4:{s:1:"C";s:2:"89";s:2:"WX";s:3:"795";s:1:"N";s:3:"Psi";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:1:"0";i:2;s:3:"781";i:3;s:3:"684";}}s:3:"Psi";a:4:{s:1:"C";s:2:"89";s:2:"WX";s:3:"795";s:1:"N";s:3:"Psi";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:1:"0";i:2;s:3:"781";i:3;s:3:"684";}}i:90;a:4:{s:1:"C";s:2:"90";s:2:"WX";s:3:"611";s:1:"N";s:4:"Zeta";s:1:"B";a:4:{i:0;s:2:"44";i:1;s:1:"0";i:2;s:3:"636";i:3;s:3:"673";}}s:4:"Zeta";a:4:{s:1:"C";s:2:"90";s:2:"WX";s:3:"611";s:1:"N";s:4:"Zeta";s:1:"B";a:4:{i:0;s:2:"44";i:1;s:1:"0";i:2;s:3:"636";i:3;s:3:"673";}}i:91;a:4:{s:1:"C";s:2:"91";s:2:"WX";s:3:"333";s:1:"N";s:11:"bracketleft";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:4:"-155";i:2;s:3:"299";i:3;s:3:"674";}}s:11:"bracketleft";a:4:{s:1:"C";s:2:"91";s:2:"WX";s:3:"333";s:1:"N";s:11:"bracketleft";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:4:"-155";i:2;s:3:"299";i:3;s:3:"674";}}i:92;a:4:{s:1:"C";s:2:"92";s:2:"WX";s:3:"863";s:1:"N";s:9:"therefore";s:1:"B";a:4:{i:0;s:3:"163";i:1;s:1:"0";i:2;s:3:"701";i:3;s:3:"487";}}s:9:"therefore";a:4:{s:1:"C";s:2:"92";s:2:"WX";s:3:"863";s:1:"N";s:9:"therefore";s:1:"B";a:4:{i:0;s:3:"163";i:1;s:1:"0";i:2;s:3:"701";i:3;s:3:"487";}}i:93;a:4:{s:1:"C";s:2:"93";s:2:"WX";s:3:"333";s:1:"N";s:12:"bracketright";s:1:"B";a:4:{i:0;s:2:"33";i:1;s:4:"-155";i:2;s:3:"246";i:3;s:3:"674";}}s:12:"bracketright";a:4:{s:1:"C";s:2:"93";s:2:"WX";s:3:"333";s:1:"N";s:12:"bracketright";s:1:"B";a:4:{i:0;s:2:"33";i:1;s:4:"-155";i:2;s:3:"246";i:3;s:3:"674";}}i:94;a:4:{s:1:"C";s:2:"94";s:2:"WX";s:3:"658";s:1:"N";s:13:"perpendicular";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:1:"0";i:2;s:3:"652";i:3;s:3:"674";}}s:13:"perpendicular";a:4:{s:1:"C";s:2:"94";s:2:"WX";s:3:"658";s:1:"N";s:13:"perpendicular";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:1:"0";i:2;s:3:"652";i:3;s:3:"674";}}i:95;a:4:{s:1:"C";s:2:"95";s:2:"WX";s:3:"500";s:1:"N";s:10:"underscore";s:1:"B";a:4:{i:0;s:2:"-2";i:1;s:4:"-125";i:2;s:3:"502";i:3;s:3:"-75";}}s:10:"underscore";a:4:{s:1:"C";s:2:"95";s:2:"WX";s:3:"500";s:1:"N";s:10:"underscore";s:1:"B";a:4:{i:0;s:2:"-2";i:1;s:4:"-125";i:2;s:3:"502";i:3;s:3:"-75";}}i:96;a:4:{s:1:"C";s:2:"96";s:2:"WX";s:3:"500";s:1:"N";s:9:"radicalex";s:1:"B";a:4:{i:0;s:3:"480";i:1;s:3:"881";i:2;s:4:"1090";i:3;s:3:"917";}}s:9:"radicalex";a:4:{s:1:"C";s:2:"96";s:2:"WX";s:3:"500";s:1:"N";s:9:"radicalex";s:1:"B";a:4:{i:0;s:3:"480";i:1;s:3:"881";i:2;s:4:"1090";i:3;s:3:"917";}}i:97;a:4:{s:1:"C";s:2:"97";s:2:"WX";s:3:"631";s:1:"N";s:5:"alpha";s:1:"B";a:4:{i:0;s:2:"41";i:1;s:3:"-18";i:2;s:3:"622";i:3;s:3:"500";}}s:5:"alpha";a:4:{s:1:"C";s:2:"97";s:2:"WX";s:3:"631";s:1:"N";s:5:"alpha";s:1:"B";a:4:{i:0;s:2:"41";i:1;s:3:"-18";i:2;s:3:"622";i:3;s:3:"500";}}i:98;a:4:{s:1:"C";s:2:"98";s:2:"WX";s:3:"549";s:1:"N";s:4:"beta";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:4:"-223";i:2;s:3:"515";i:3;s:3:"741";}}s:4:"beta";a:4:{s:1:"C";s:2:"98";s:2:"WX";s:3:"549";s:1:"N";s:4:"beta";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:4:"-223";i:2;s:3:"515";i:3;s:3:"741";}}i:99;a:4:{s:1:"C";s:2:"99";s:2:"WX";s:3:"549";s:1:"N";s:3:"chi";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:4:"-231";i:2;s:3:"522";i:3;s:3:"499";}}s:3:"chi";a:4:{s:1:"C";s:2:"99";s:2:"WX";s:3:"549";s:1:"N";s:3:"chi";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:4:"-231";i:2;s:3:"522";i:3;s:3:"499";}}i:100;a:4:{s:1:"C";s:3:"100";s:2:"WX";s:3:"494";s:1:"N";s:5:"delta";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"-19";i:2;s:3:"481";i:3;s:3:"740";}}s:5:"delta";a:4:{s:1:"C";s:3:"100";s:2:"WX";s:3:"494";s:1:"N";s:5:"delta";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"-19";i:2;s:3:"481";i:3;s:3:"740";}}i:101;a:4:{s:1:"C";s:3:"101";s:2:"WX";s:3:"439";s:1:"N";s:7:"epsilon";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:3:"-19";i:2;s:3:"427";i:3;s:3:"502";}}s:7:"epsilon";a:4:{s:1:"C";s:3:"101";s:2:"WX";s:3:"439";s:1:"N";s:7:"epsilon";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:3:"-19";i:2;s:3:"427";i:3;s:3:"502";}}i:102;a:4:{s:1:"C";s:3:"102";s:2:"WX";s:3:"521";s:1:"N";s:3:"phi";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:4:"-224";i:2;s:3:"492";i:3;s:3:"673";}}s:3:"phi";a:4:{s:1:"C";s:3:"102";s:2:"WX";s:3:"521";s:1:"N";s:3:"phi";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:4:"-224";i:2;s:3:"492";i:3;s:3:"673";}}i:103;a:4:{s:1:"C";s:3:"103";s:2:"WX";s:3:"411";s:1:"N";s:5:"gamma";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:4:"-225";i:2;s:3:"484";i:3;s:3:"499";}}s:5:"gamma";a:4:{s:1:"C";s:3:"103";s:2:"WX";s:3:"411";s:1:"N";s:5:"gamma";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:4:"-225";i:2;s:3:"484";i:3;s:3:"499";}}i:104;a:4:{s:1:"C";s:3:"104";s:2:"WX";s:3:"603";s:1:"N";s:3:"eta";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:4:"-202";i:2;s:3:"527";i:3;s:3:"514";}}s:3:"eta";a:4:{s:1:"C";s:3:"104";s:2:"WX";s:3:"603";s:1:"N";s:3:"eta";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:4:"-202";i:2;s:3:"527";i:3;s:3:"514";}}i:105;a:4:{s:1:"C";s:3:"105";s:2:"WX";s:3:"329";s:1:"N";s:4:"iota";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"-17";i:2;s:3:"301";i:3;s:3:"503";}}s:4:"iota";a:4:{s:1:"C";s:3:"105";s:2:"WX";s:3:"329";s:1:"N";s:4:"iota";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"-17";i:2;s:3:"301";i:3;s:3:"503";}}i:106;a:4:{s:1:"C";s:3:"106";s:2:"WX";s:3:"603";s:1:"N";s:4:"phi1";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:4:"-224";i:2;s:3:"587";i:3;s:3:"499";}}s:4:"phi1";a:4:{s:1:"C";s:3:"106";s:2:"WX";s:3:"603";s:1:"N";s:4:"phi1";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:4:"-224";i:2;s:3:"587";i:3;s:3:"499";}}i:107;a:4:{s:1:"C";s:3:"107";s:2:"WX";s:3:"549";s:1:"N";s:5:"kappa";s:1:"B";a:4:{i:0;s:2:"33";i:1;s:1:"0";i:2;s:3:"558";i:3;s:3:"501";}}s:5:"kappa";a:4:{s:1:"C";s:3:"107";s:2:"WX";s:3:"549";s:1:"N";s:5:"kappa";s:1:"B";a:4:{i:0;s:2:"33";i:1;s:1:"0";i:2;s:3:"558";i:3;s:3:"501";}}i:108;a:4:{s:1:"C";s:3:"108";s:2:"WX";s:3:"549";s:1:"N";s:6:"lambda";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:3:"-17";i:2;s:3:"548";i:3;s:3:"739";}}s:6:"lambda";a:4:{s:1:"C";s:3:"108";s:2:"WX";s:3:"549";s:1:"N";s:6:"lambda";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:3:"-17";i:2;s:3:"548";i:3;s:3:"739";}}i:109;a:4:{s:1:"C";s:3:"109";s:2:"WX";s:3:"576";s:1:"N";s:2:"mu";s:1:"B";a:4:{i:0;s:2:"33";i:1;s:4:"-223";i:2;s:3:"567";i:3;s:3:"500";}}s:2:"mu";a:4:{s:1:"C";s:3:"109";s:2:"WX";s:3:"576";s:1:"N";s:2:"mu";s:1:"B";a:4:{i:0;s:2:"33";i:1;s:4:"-223";i:2;s:3:"567";i:3;s:3:"500";}}i:110;a:4:{s:1:"C";s:3:"110";s:2:"WX";s:3:"521";s:1:"N";s:2:"nu";s:1:"B";a:4:{i:0;s:2:"-9";i:1;s:3:"-16";i:2;s:3:"475";i:3;s:3:"507";}}s:2:"nu";a:4:{s:1:"C";s:3:"110";s:2:"WX";s:3:"521";s:1:"N";s:2:"nu";s:1:"B";a:4:{i:0;s:2:"-9";i:1;s:3:"-16";i:2;s:3:"475";i:3;s:3:"507";}}i:111;a:4:{s:1:"C";s:3:"111";s:2:"WX";s:3:"549";s:1:"N";s:7:"omicron";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-19";i:2;s:3:"501";i:3;s:3:"499";}}s:7:"omicron";a:4:{s:1:"C";s:3:"111";s:2:"WX";s:3:"549";s:1:"N";s:7:"omicron";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-19";i:2;s:3:"501";i:3;s:3:"499";}}i:112;a:4:{s:1:"C";s:3:"112";s:2:"WX";s:3:"549";s:1:"N";s:2:"pi";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:3:"-19";i:2;s:3:"530";i:3;s:3:"487";}}s:2:"pi";a:4:{s:1:"C";s:3:"112";s:2:"WX";s:3:"549";s:1:"N";s:2:"pi";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:3:"-19";i:2;s:3:"530";i:3;s:3:"487";}}i:113;a:4:{s:1:"C";s:3:"113";s:2:"WX";s:3:"521";s:1:"N";s:5:"theta";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:3:"-17";i:2;s:3:"485";i:3;s:3:"690";}}s:5:"theta";a:4:{s:1:"C";s:3:"113";s:2:"WX";s:3:"521";s:1:"N";s:5:"theta";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:3:"-17";i:2;s:3:"485";i:3;s:3:"690";}}i:114;a:4:{s:1:"C";s:3:"114";s:2:"WX";s:3:"549";s:1:"N";s:3:"rho";s:1:"B";a:4:{i:0;s:2:"50";i:1;s:4:"-230";i:2;s:3:"490";i:3;s:3:"499";}}s:3:"rho";a:4:{s:1:"C";s:3:"114";s:2:"WX";s:3:"549";s:1:"N";s:3:"rho";s:1:"B";a:4:{i:0;s:2:"50";i:1;s:4:"-230";i:2;s:3:"490";i:3;s:3:"499";}}i:115;a:4:{s:1:"C";s:3:"115";s:2:"WX";s:3:"603";s:1:"N";s:5:"sigma";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"-21";i:2;s:3:"588";i:3;s:3:"500";}}s:5:"sigma";a:4:{s:1:"C";s:3:"115";s:2:"WX";s:3:"603";s:1:"N";s:5:"sigma";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"-21";i:2;s:3:"588";i:3;s:3:"500";}}i:116;a:4:{s:1:"C";s:3:"116";s:2:"WX";s:3:"439";s:1:"N";s:3:"tau";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:3:"-19";i:2;s:3:"418";i:3;s:3:"500";}}s:3:"tau";a:4:{s:1:"C";s:3:"116";s:2:"WX";s:3:"439";s:1:"N";s:3:"tau";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:3:"-19";i:2;s:3:"418";i:3;s:3:"500";}}i:117;a:4:{s:1:"C";s:3:"117";s:2:"WX";s:3:"576";s:1:"N";s:7:"upsilon";s:1:"B";a:4:{i:0;s:1:"7";i:1;s:3:"-18";i:2;s:3:"535";i:3;s:3:"507";}}s:7:"upsilon";a:4:{s:1:"C";s:3:"117";s:2:"WX";s:3:"576";s:1:"N";s:7:"upsilon";s:1:"B";a:4:{i:0;s:1:"7";i:1;s:3:"-18";i:2;s:3:"535";i:3;s:3:"507";}}i:118;a:4:{s:1:"C";s:3:"118";s:2:"WX";s:3:"713";s:1:"N";s:6:"omega1";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:3:"-18";i:2;s:3:"671";i:3;s:3:"583";}}s:6:"omega1";a:4:{s:1:"C";s:3:"118";s:2:"WX";s:3:"713";s:1:"N";s:6:"omega1";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:3:"-18";i:2;s:3:"671";i:3;s:3:"583";}}i:119;a:4:{s:1:"C";s:3:"119";s:2:"WX";s:3:"686";s:1:"N";s:5:"omega";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:3:"-17";i:2;s:3:"684";i:3;s:3:"500";}}s:5:"omega";a:4:{s:1:"C";s:3:"119";s:2:"WX";s:3:"686";s:1:"N";s:5:"omega";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:3:"-17";i:2;s:3:"684";i:3;s:3:"500";}}i:120;a:4:{s:1:"C";s:3:"120";s:2:"WX";s:3:"493";s:1:"N";s:2:"xi";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:4:"-224";i:2;s:3:"469";i:3;s:3:"766";}}s:2:"xi";a:4:{s:1:"C";s:3:"120";s:2:"WX";s:3:"493";s:1:"N";s:2:"xi";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:4:"-224";i:2;s:3:"469";i:3;s:3:"766";}}i:121;a:4:{s:1:"C";s:3:"121";s:2:"WX";s:3:"686";s:1:"N";s:3:"psi";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:4:"-228";i:2;s:3:"701";i:3;s:3:"500";}}s:3:"psi";a:4:{s:1:"C";s:3:"121";s:2:"WX";s:3:"686";s:1:"N";s:3:"psi";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:4:"-228";i:2;s:3:"701";i:3;s:3:"500";}}i:122;a:4:{s:1:"C";s:3:"122";s:2:"WX";s:3:"494";s:1:"N";s:4:"zeta";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:4:"-225";i:2;s:3:"467";i:3;s:3:"756";}}s:4:"zeta";a:4:{s:1:"C";s:3:"122";s:2:"WX";s:3:"494";s:1:"N";s:4:"zeta";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:4:"-225";i:2;s:3:"467";i:3;s:3:"756";}}i:123;a:4:{s:1:"C";s:3:"123";s:2:"WX";s:3:"480";s:1:"N";s:9:"braceleft";s:1:"B";a:4:{i:0;s:2:"58";i:1;s:4:"-183";i:2;s:3:"397";i:3;s:3:"673";}}s:9:"braceleft";a:4:{s:1:"C";s:3:"123";s:2:"WX";s:3:"480";s:1:"N";s:9:"braceleft";s:1:"B";a:4:{i:0;s:2:"58";i:1;s:4:"-183";i:2;s:3:"397";i:3;s:3:"673";}}i:124;a:4:{s:1:"C";s:3:"124";s:2:"WX";s:3:"200";s:1:"N";s:3:"bar";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:4:"-293";i:2;s:3:"135";i:3;s:3:"707";}}s:3:"bar";a:4:{s:1:"C";s:3:"124";s:2:"WX";s:3:"200";s:1:"N";s:3:"bar";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:4:"-293";i:2;s:3:"135";i:3;s:3:"707";}}i:125;a:4:{s:1:"C";s:3:"125";s:2:"WX";s:3:"480";s:1:"N";s:10:"braceright";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:4:"-183";i:2;s:3:"418";i:3;s:3:"673";}}s:10:"braceright";a:4:{s:1:"C";s:3:"125";s:2:"WX";s:3:"480";s:1:"N";s:10:"braceright";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:4:"-183";i:2;s:3:"418";i:3;s:3:"673";}}i:126;a:4:{s:1:"C";s:3:"126";s:2:"WX";s:3:"549";s:1:"N";s:7:"similar";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:3:"203";i:2;s:3:"529";i:3;s:3:"307";}}s:7:"similar";a:4:{s:1:"C";s:3:"126";s:2:"WX";s:3:"549";s:1:"N";s:7:"similar";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:3:"203";i:2;s:3:"529";i:3;s:3:"307";}}i:160;a:4:{s:1:"C";s:3:"160";s:2:"WX";s:3:"750";s:1:"N";s:4:"Euro";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:3:"-12";i:2;s:3:"714";i:3;s:3:"685";}}s:4:"Euro";a:4:{s:1:"C";s:3:"160";s:2:"WX";s:3:"750";s:1:"N";s:4:"Euro";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:3:"-12";i:2;s:3:"714";i:3;s:3:"685";}}i:161;a:4:{s:1:"C";s:3:"161";s:2:"WX";s:3:"620";s:1:"N";s:8:"Upsilon1";s:1:"B";a:4:{i:0;s:2:"-2";i:1;s:1:"0";i:2;s:3:"610";i:3;s:3:"685";}}s:8:"Upsilon1";a:4:{s:1:"C";s:3:"161";s:2:"WX";s:3:"620";s:1:"N";s:8:"Upsilon1";s:1:"B";a:4:{i:0;s:2:"-2";i:1;s:1:"0";i:2;s:3:"610";i:3;s:3:"685";}}i:162;a:4:{s:1:"C";s:3:"162";s:2:"WX";s:3:"247";s:1:"N";s:6:"minute";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:3:"459";i:2;s:3:"228";i:3;s:3:"735";}}s:6:"minute";a:4:{s:1:"C";s:3:"162";s:2:"WX";s:3:"247";s:1:"N";s:6:"minute";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:3:"459";i:2;s:3:"228";i:3;s:3:"735";}}i:163;a:4:{s:1:"C";s:3:"163";s:2:"WX";s:3:"549";s:1:"N";s:9:"lessequal";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:1:"0";i:2;s:3:"526";i:3;s:3:"639";}}s:9:"lessequal";a:4:{s:1:"C";s:3:"163";s:2:"WX";s:3:"549";s:1:"N";s:9:"lessequal";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:1:"0";i:2;s:3:"526";i:3;s:3:"639";}}i:164;a:4:{s:1:"C";s:3:"164";s:2:"WX";s:3:"167";s:1:"N";s:8:"fraction";s:1:"B";a:4:{i:0;s:4:"-180";i:1;s:3:"-12";i:2;s:3:"340";i:3;s:3:"677";}}s:8:"fraction";a:4:{s:1:"C";s:3:"164";s:2:"WX";s:3:"167";s:1:"N";s:8:"fraction";s:1:"B";a:4:{i:0;s:4:"-180";i:1;s:3:"-12";i:2;s:3:"340";i:3;s:3:"677";}}i:165;a:4:{s:1:"C";s:3:"165";s:2:"WX";s:3:"713";s:1:"N";s:8:"infinity";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:3:"124";i:2;s:3:"688";i:3;s:3:"404";}}s:8:"infinity";a:4:{s:1:"C";s:3:"165";s:2:"WX";s:3:"713";s:1:"N";s:8:"infinity";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:3:"124";i:2;s:3:"688";i:3;s:3:"404";}}i:166;a:4:{s:1:"C";s:3:"166";s:2:"WX";s:3:"500";s:1:"N";s:6:"florin";s:1:"B";a:4:{i:0;s:1:"2";i:1;s:4:"-193";i:2;s:3:"494";i:3;s:3:"686";}}s:6:"florin";a:4:{s:1:"C";s:3:"166";s:2:"WX";s:3:"500";s:1:"N";s:6:"florin";s:1:"B";a:4:{i:0;s:1:"2";i:1;s:4:"-193";i:2;s:3:"494";i:3;s:3:"686";}}i:167;a:4:{s:1:"C";s:3:"167";s:2:"WX";s:3:"753";s:1:"N";s:4:"club";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:3:"-26";i:2;s:3:"660";i:3;s:3:"533";}}s:4:"club";a:4:{s:1:"C";s:3:"167";s:2:"WX";s:3:"753";s:1:"N";s:4:"club";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:3:"-26";i:2;s:3:"660";i:3;s:3:"533";}}i:168;a:4:{s:1:"C";s:3:"168";s:2:"WX";s:3:"753";s:1:"N";s:7:"diamond";s:1:"B";a:4:{i:0;s:3:"142";i:1;s:3:"-36";i:2;s:3:"600";i:3;s:3:"550";}}s:7:"diamond";a:4:{s:1:"C";s:3:"168";s:2:"WX";s:3:"753";s:1:"N";s:7:"diamond";s:1:"B";a:4:{i:0;s:3:"142";i:1;s:3:"-36";i:2;s:3:"600";i:3;s:3:"550";}}i:169;a:4:{s:1:"C";s:3:"169";s:2:"WX";s:3:"753";s:1:"N";s:5:"heart";s:1:"B";a:4:{i:0;s:3:"117";i:1;s:3:"-33";i:2;s:3:"631";i:3;s:3:"532";}}s:5:"heart";a:4:{s:1:"C";s:3:"169";s:2:"WX";s:3:"753";s:1:"N";s:5:"heart";s:1:"B";a:4:{i:0;s:3:"117";i:1;s:3:"-33";i:2;s:3:"631";i:3;s:3:"532";}}i:170;a:4:{s:1:"C";s:3:"170";s:2:"WX";s:3:"753";s:1:"N";s:5:"spade";s:1:"B";a:4:{i:0;s:3:"113";i:1;s:3:"-36";i:2;s:3:"629";i:3;s:3:"548";}}s:5:"spade";a:4:{s:1:"C";s:3:"170";s:2:"WX";s:3:"753";s:1:"N";s:5:"spade";s:1:"B";a:4:{i:0;s:3:"113";i:1;s:3:"-36";i:2;s:3:"629";i:3;s:3:"548";}}i:171;a:4:{s:1:"C";s:3:"171";s:2:"WX";s:4:"1042";s:1:"N";s:9:"arrowboth";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:3:"-15";i:2;s:4:"1024";i:3;s:3:"511";}}s:9:"arrowboth";a:4:{s:1:"C";s:3:"171";s:2:"WX";s:4:"1042";s:1:"N";s:9:"arrowboth";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:3:"-15";i:2;s:4:"1024";i:3;s:3:"511";}}i:172;a:4:{s:1:"C";s:3:"172";s:2:"WX";s:3:"987";s:1:"N";s:9:"arrowleft";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:3:"-15";i:2;s:3:"942";i:3;s:3:"511";}}s:9:"arrowleft";a:4:{s:1:"C";s:3:"172";s:2:"WX";s:3:"987";s:1:"N";s:9:"arrowleft";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:3:"-15";i:2;s:3:"942";i:3;s:3:"511";}}i:173;a:4:{s:1:"C";s:3:"173";s:2:"WX";s:3:"603";s:1:"N";s:7:"arrowup";s:1:"B";a:4:{i:0;s:2:"45";i:1;s:1:"0";i:2;s:3:"571";i:3;s:3:"910";}}s:7:"arrowup";a:4:{s:1:"C";s:3:"173";s:2:"WX";s:3:"603";s:1:"N";s:7:"arrowup";s:1:"B";a:4:{i:0;s:2:"45";i:1;s:1:"0";i:2;s:3:"571";i:3;s:3:"910";}}i:174;a:4:{s:1:"C";s:3:"174";s:2:"WX";s:3:"987";s:1:"N";s:10:"arrowright";s:1:"B";a:4:{i:0;s:2:"49";i:1;s:3:"-15";i:2;s:3:"959";i:3;s:3:"511";}}s:10:"arrowright";a:4:{s:1:"C";s:3:"174";s:2:"WX";s:3:"987";s:1:"N";s:10:"arrowright";s:1:"B";a:4:{i:0;s:2:"49";i:1;s:3:"-15";i:2;s:3:"959";i:3;s:3:"511";}}i:175;a:4:{s:1:"C";s:3:"175";s:2:"WX";s:3:"603";s:1:"N";s:9:"arrowdown";s:1:"B";a:4:{i:0;s:2:"45";i:1;s:3:"-22";i:2;s:3:"571";i:3;s:3:"888";}}s:9:"arrowdown";a:4:{s:1:"C";s:3:"175";s:2:"WX";s:3:"603";s:1:"N";s:9:"arrowdown";s:1:"B";a:4:{i:0;s:2:"45";i:1;s:3:"-22";i:2;s:3:"571";i:3;s:3:"888";}}i:176;a:4:{s:1:"C";s:3:"176";s:2:"WX";s:3:"400";s:1:"N";s:6:"degree";s:1:"B";a:4:{i:0;s:2:"50";i:1;s:3:"385";i:2;s:3:"350";i:3;s:3:"685";}}s:6:"degree";a:4:{s:1:"C";s:3:"176";s:2:"WX";s:3:"400";s:1:"N";s:6:"degree";s:1:"B";a:4:{i:0;s:2:"50";i:1;s:3:"385";i:2;s:3:"350";i:3;s:3:"685";}}i:177;a:4:{s:1:"C";s:3:"177";s:2:"WX";s:3:"549";s:1:"N";s:9:"plusminus";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:1:"0";i:2;s:3:"539";i:3;s:3:"645";}}s:9:"plusminus";a:4:{s:1:"C";s:3:"177";s:2:"WX";s:3:"549";s:1:"N";s:9:"plusminus";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:1:"0";i:2;s:3:"539";i:3;s:3:"645";}}i:178;a:4:{s:1:"C";s:3:"178";s:2:"WX";s:3:"411";s:1:"N";s:6:"second";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:3:"459";i:2;s:3:"413";i:3;s:3:"737";}}s:6:"second";a:4:{s:1:"C";s:3:"178";s:2:"WX";s:3:"411";s:1:"N";s:6:"second";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:3:"459";i:2;s:3:"413";i:3;s:3:"737";}}i:179;a:4:{s:1:"C";s:3:"179";s:2:"WX";s:3:"549";s:1:"N";s:12:"greaterequal";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:1:"0";i:2;s:3:"526";i:3;s:3:"639";}}s:12:"greaterequal";a:4:{s:1:"C";s:3:"179";s:2:"WX";s:3:"549";s:1:"N";s:12:"greaterequal";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:1:"0";i:2;s:3:"526";i:3;s:3:"639";}}i:180;a:4:{s:1:"C";s:3:"180";s:2:"WX";s:3:"549";s:1:"N";s:8:"multiply";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:1:"8";i:2;s:3:"533";i:3;s:3:"524";}}s:8:"multiply";a:4:{s:1:"C";s:3:"180";s:2:"WX";s:3:"549";s:1:"N";s:8:"multiply";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:1:"8";i:2;s:3:"533";i:3;s:3:"524";}}i:181;a:4:{s:1:"C";s:3:"181";s:2:"WX";s:3:"713";s:1:"N";s:12:"proportional";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:3:"123";i:2;s:3:"639";i:3;s:3:"404";}}s:12:"proportional";a:4:{s:1:"C";s:3:"181";s:2:"WX";s:3:"713";s:1:"N";s:12:"proportional";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:3:"123";i:2;s:3:"639";i:3;s:3:"404";}}i:182;a:4:{s:1:"C";s:3:"182";s:2:"WX";s:3:"494";s:1:"N";s:11:"partialdiff";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:3:"-20";i:2;s:3:"462";i:3;s:3:"746";}}s:11:"partialdiff";a:4:{s:1:"C";s:3:"182";s:2:"WX";s:3:"494";s:1:"N";s:11:"partialdiff";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:3:"-20";i:2;s:3:"462";i:3;s:3:"746";}}i:183;a:4:{s:1:"C";s:3:"183";s:2:"WX";s:3:"460";s:1:"N";s:6:"bullet";s:1:"B";a:4:{i:0;s:2:"50";i:1;s:3:"113";i:2;s:3:"410";i:3;s:3:"473";}}s:6:"bullet";a:4:{s:1:"C";s:3:"183";s:2:"WX";s:3:"460";s:1:"N";s:6:"bullet";s:1:"B";a:4:{i:0;s:2:"50";i:1;s:3:"113";i:2;s:3:"410";i:3;s:3:"473";}}i:184;a:4:{s:1:"C";s:3:"184";s:2:"WX";s:3:"549";s:1:"N";s:6:"divide";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:2:"71";i:2;s:3:"536";i:3;s:3:"456";}}s:6:"divide";a:4:{s:1:"C";s:3:"184";s:2:"WX";s:3:"549";s:1:"N";s:6:"divide";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:2:"71";i:2;s:3:"536";i:3;s:3:"456";}}i:185;a:4:{s:1:"C";s:3:"185";s:2:"WX";s:3:"549";s:1:"N";s:8:"notequal";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:3:"-25";i:2;s:3:"540";i:3;s:3:"549";}}s:8:"notequal";a:4:{s:1:"C";s:3:"185";s:2:"WX";s:3:"549";s:1:"N";s:8:"notequal";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:3:"-25";i:2;s:3:"540";i:3;s:3:"549";}}i:186;a:4:{s:1:"C";s:3:"186";s:2:"WX";s:3:"549";s:1:"N";s:11:"equivalence";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:2:"82";i:2;s:3:"538";i:3;s:3:"443";}}s:11:"equivalence";a:4:{s:1:"C";s:3:"186";s:2:"WX";s:3:"549";s:1:"N";s:11:"equivalence";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:2:"82";i:2;s:3:"538";i:3;s:3:"443";}}i:187;a:4:{s:1:"C";s:3:"187";s:2:"WX";s:3:"549";s:1:"N";s:11:"approxequal";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:3:"135";i:2;s:3:"527";i:3;s:3:"394";}}s:11:"approxequal";a:4:{s:1:"C";s:3:"187";s:2:"WX";s:3:"549";s:1:"N";s:11:"approxequal";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:3:"135";i:2;s:3:"527";i:3;s:3:"394";}}i:188;a:4:{s:1:"C";s:3:"188";s:2:"WX";s:4:"1000";s:1:"N";s:8:"ellipsis";s:1:"B";a:4:{i:0;s:3:"111";i:1;s:3:"-17";i:2;s:3:"889";i:3;s:2:"95";}}s:8:"ellipsis";a:4:{s:1:"C";s:3:"188";s:2:"WX";s:4:"1000";s:1:"N";s:8:"ellipsis";s:1:"B";a:4:{i:0;s:3:"111";i:1;s:3:"-17";i:2;s:3:"889";i:3;s:2:"95";}}i:189;a:4:{s:1:"C";s:3:"189";s:2:"WX";s:3:"603";s:1:"N";s:11:"arrowvertex";s:1:"B";a:4:{i:0;s:3:"280";i:1;s:4:"-120";i:2;s:3:"336";i:3;s:4:"1010";}}s:11:"arrowvertex";a:4:{s:1:"C";s:3:"189";s:2:"WX";s:3:"603";s:1:"N";s:11:"arrowvertex";s:1:"B";a:4:{i:0;s:3:"280";i:1;s:4:"-120";i:2;s:3:"336";i:3;s:4:"1010";}}i:190;a:4:{s:1:"C";s:3:"190";s:2:"WX";s:4:"1000";s:1:"N";s:12:"arrowhorizex";s:1:"B";a:4:{i:0;s:3:"-60";i:1;s:3:"220";i:2;s:4:"1050";i:3;s:3:"276";}}s:12:"arrowhorizex";a:4:{s:1:"C";s:3:"190";s:2:"WX";s:4:"1000";s:1:"N";s:12:"arrowhorizex";s:1:"B";a:4:{i:0;s:3:"-60";i:1;s:3:"220";i:2;s:4:"1050";i:3;s:3:"276";}}i:191;a:4:{s:1:"C";s:3:"191";s:2:"WX";s:3:"658";s:1:"N";s:14:"carriagereturn";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:3:"-16";i:2;s:3:"602";i:3;s:3:"629";}}s:14:"carriagereturn";a:4:{s:1:"C";s:3:"191";s:2:"WX";s:3:"658";s:1:"N";s:14:"carriagereturn";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:3:"-16";i:2;s:3:"602";i:3;s:3:"629";}}i:192;a:4:{s:1:"C";s:3:"192";s:2:"WX";s:3:"823";s:1:"N";s:5:"aleph";s:1:"B";a:4:{i:0;s:3:"175";i:1;s:3:"-18";i:2;s:3:"661";i:3;s:3:"658";}}s:5:"aleph";a:4:{s:1:"C";s:3:"192";s:2:"WX";s:3:"823";s:1:"N";s:5:"aleph";s:1:"B";a:4:{i:0;s:3:"175";i:1;s:3:"-18";i:2;s:3:"661";i:3;s:3:"658";}}i:193;a:4:{s:1:"C";s:3:"193";s:2:"WX";s:3:"686";s:1:"N";s:8:"Ifraktur";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:3:"-53";i:2;s:3:"578";i:3;s:3:"740";}}s:8:"Ifraktur";a:4:{s:1:"C";s:3:"193";s:2:"WX";s:3:"686";s:1:"N";s:8:"Ifraktur";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:3:"-53";i:2;s:3:"578";i:3;s:3:"740";}}i:194;a:4:{s:1:"C";s:3:"194";s:2:"WX";s:3:"795";s:1:"N";s:8:"Rfraktur";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:3:"-15";i:2;s:3:"759";i:3;s:3:"734";}}s:8:"Rfraktur";a:4:{s:1:"C";s:3:"194";s:2:"WX";s:3:"795";s:1:"N";s:8:"Rfraktur";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:3:"-15";i:2;s:3:"759";i:3;s:3:"734";}}i:195;a:4:{s:1:"C";s:3:"195";s:2:"WX";s:3:"987";s:1:"N";s:11:"weierstrass";s:1:"B";a:4:{i:0;s:3:"159";i:1;s:4:"-211";i:2;s:3:"870";i:3;s:3:"573";}}s:11:"weierstrass";a:4:{s:1:"C";s:3:"195";s:2:"WX";s:3:"987";s:1:"N";s:11:"weierstrass";s:1:"B";a:4:{i:0;s:3:"159";i:1;s:4:"-211";i:2;s:3:"870";i:3;s:3:"573";}}i:196;a:4:{s:1:"C";s:3:"196";s:2:"WX";s:3:"768";s:1:"N";s:14:"circlemultiply";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:3:"-17";i:2;s:3:"733";i:3;s:3:"673";}}s:14:"circlemultiply";a:4:{s:1:"C";s:3:"196";s:2:"WX";s:3:"768";s:1:"N";s:14:"circlemultiply";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:3:"-17";i:2;s:3:"733";i:3;s:3:"673";}}i:197;a:4:{s:1:"C";s:3:"197";s:2:"WX";s:3:"768";s:1:"N";s:10:"circleplus";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:3:"-15";i:2;s:3:"733";i:3;s:3:"675";}}s:10:"circleplus";a:4:{s:1:"C";s:3:"197";s:2:"WX";s:3:"768";s:1:"N";s:10:"circleplus";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:3:"-15";i:2;s:3:"733";i:3;s:3:"675";}}i:198;a:4:{s:1:"C";s:3:"198";s:2:"WX";s:3:"823";s:1:"N";s:8:"emptyset";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:3:"-24";i:2;s:3:"781";i:3;s:3:"719";}}s:8:"emptyset";a:4:{s:1:"C";s:3:"198";s:2:"WX";s:3:"823";s:1:"N";s:8:"emptyset";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:3:"-24";i:2;s:3:"781";i:3;s:3:"719";}}i:199;a:4:{s:1:"C";s:3:"199";s:2:"WX";s:3:"768";s:1:"N";s:12:"intersection";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:1:"0";i:2;s:3:"732";i:3;s:3:"509";}}s:12:"intersection";a:4:{s:1:"C";s:3:"199";s:2:"WX";s:3:"768";s:1:"N";s:12:"intersection";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:1:"0";i:2;s:3:"732";i:3;s:3:"509";}}i:200;a:4:{s:1:"C";s:3:"200";s:2:"WX";s:3:"768";s:1:"N";s:5:"union";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"-17";i:2;s:3:"732";i:3;s:3:"492";}}s:5:"union";a:4:{s:1:"C";s:3:"200";s:2:"WX";s:3:"768";s:1:"N";s:5:"union";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"-17";i:2;s:3:"732";i:3;s:3:"492";}}i:201;a:4:{s:1:"C";s:3:"201";s:2:"WX";s:3:"713";s:1:"N";s:14:"propersuperset";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"673";i:3;s:3:"470";}}s:14:"propersuperset";a:4:{s:1:"C";s:3:"201";s:2:"WX";s:3:"713";s:1:"N";s:14:"propersuperset";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"673";i:3;s:3:"470";}}i:202;a:4:{s:1:"C";s:3:"202";s:2:"WX";s:3:"713";s:1:"N";s:14:"reflexsuperset";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:4:"-125";i:2;s:3:"673";i:3;s:3:"470";}}s:14:"reflexsuperset";a:4:{s:1:"C";s:3:"202";s:2:"WX";s:3:"713";s:1:"N";s:14:"reflexsuperset";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:4:"-125";i:2;s:3:"673";i:3;s:3:"470";}}i:203;a:4:{s:1:"C";s:3:"203";s:2:"WX";s:3:"713";s:1:"N";s:9:"notsubset";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:3:"-70";i:2;s:3:"690";i:3;s:3:"540";}}s:9:"notsubset";a:4:{s:1:"C";s:3:"203";s:2:"WX";s:3:"713";s:1:"N";s:9:"notsubset";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:3:"-70";i:2;s:3:"690";i:3;s:3:"540";}}i:204;a:4:{s:1:"C";s:3:"204";s:2:"WX";s:3:"713";s:1:"N";s:12:"propersubset";s:1:"B";a:4:{i:0;s:2:"37";i:1;s:1:"0";i:2;s:3:"690";i:3;s:3:"470";}}s:12:"propersubset";a:4:{s:1:"C";s:3:"204";s:2:"WX";s:3:"713";s:1:"N";s:12:"propersubset";s:1:"B";a:4:{i:0;s:2:"37";i:1;s:1:"0";i:2;s:3:"690";i:3;s:3:"470";}}i:205;a:4:{s:1:"C";s:3:"205";s:2:"WX";s:3:"713";s:1:"N";s:12:"reflexsubset";s:1:"B";a:4:{i:0;s:2:"37";i:1;s:4:"-125";i:2;s:3:"690";i:3;s:3:"470";}}s:12:"reflexsubset";a:4:{s:1:"C";s:3:"205";s:2:"WX";s:3:"713";s:1:"N";s:12:"reflexsubset";s:1:"B";a:4:{i:0;s:2:"37";i:1;s:4:"-125";i:2;s:3:"690";i:3;s:3:"470";}}i:206;a:4:{s:1:"C";s:3:"206";s:2:"WX";s:3:"713";s:1:"N";s:7:"element";s:1:"B";a:4:{i:0;s:2:"45";i:1;s:1:"0";i:2;s:3:"505";i:3;s:3:"468";}}s:7:"element";a:4:{s:1:"C";s:3:"206";s:2:"WX";s:3:"713";s:1:"N";s:7:"element";s:1:"B";a:4:{i:0;s:2:"45";i:1;s:1:"0";i:2;s:3:"505";i:3;s:3:"468";}}i:207;a:4:{s:1:"C";s:3:"207";s:2:"WX";s:3:"713";s:1:"N";s:10:"notelement";s:1:"B";a:4:{i:0;s:2:"45";i:1;s:3:"-58";i:2;s:3:"505";i:3;s:3:"555";}}s:10:"notelement";a:4:{s:1:"C";s:3:"207";s:2:"WX";s:3:"713";s:1:"N";s:10:"notelement";s:1:"B";a:4:{i:0;s:2:"45";i:1;s:3:"-58";i:2;s:3:"505";i:3;s:3:"555";}}i:208;a:4:{s:1:"C";s:3:"208";s:2:"WX";s:3:"768";s:1:"N";s:5:"angle";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"738";i:3;s:3:"673";}}s:5:"angle";a:4:{s:1:"C";s:3:"208";s:2:"WX";s:3:"768";s:1:"N";s:5:"angle";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"738";i:3;s:3:"673";}}i:209;a:4:{s:1:"C";s:3:"209";s:2:"WX";s:3:"713";s:1:"N";s:8:"gradient";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:3:"-19";i:2;s:3:"681";i:3;s:3:"718";}}s:8:"gradient";a:4:{s:1:"C";s:3:"209";s:2:"WX";s:3:"713";s:1:"N";s:8:"gradient";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:3:"-19";i:2;s:3:"681";i:3;s:3:"718";}}i:210;a:4:{s:1:"C";s:3:"210";s:2:"WX";s:3:"790";s:1:"N";s:13:"registerserif";s:1:"B";a:4:{i:0;s:2:"50";i:1;s:3:"-17";i:2;s:3:"740";i:3;s:3:"673";}}s:13:"registerserif";a:4:{s:1:"C";s:3:"210";s:2:"WX";s:3:"790";s:1:"N";s:13:"registerserif";s:1:"B";a:4:{i:0;s:2:"50";i:1;s:3:"-17";i:2;s:3:"740";i:3;s:3:"673";}}i:211;a:4:{s:1:"C";s:3:"211";s:2:"WX";s:3:"790";s:1:"N";s:14:"copyrightserif";s:1:"B";a:4:{i:0;s:2:"51";i:1;s:3:"-15";i:2;s:3:"741";i:3;s:3:"675";}}s:14:"copyrightserif";a:4:{s:1:"C";s:3:"211";s:2:"WX";s:3:"790";s:1:"N";s:14:"copyrightserif";s:1:"B";a:4:{i:0;s:2:"51";i:1;s:3:"-15";i:2;s:3:"741";i:3;s:3:"675";}}i:212;a:4:{s:1:"C";s:3:"212";s:2:"WX";s:3:"890";s:1:"N";s:14:"trademarkserif";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:3:"293";i:2;s:3:"855";i:3;s:3:"673";}}s:14:"trademarkserif";a:4:{s:1:"C";s:3:"212";s:2:"WX";s:3:"890";s:1:"N";s:14:"trademarkserif";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:3:"293";i:2;s:3:"855";i:3;s:3:"673";}}i:213;a:4:{s:1:"C";s:3:"213";s:2:"WX";s:3:"823";s:1:"N";s:7:"product";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:4:"-101";i:2;s:3:"803";i:3;s:3:"751";}}s:7:"product";a:4:{s:1:"C";s:3:"213";s:2:"WX";s:3:"823";s:1:"N";s:7:"product";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:4:"-101";i:2;s:3:"803";i:3;s:3:"751";}}i:214;a:4:{s:1:"C";s:3:"214";s:2:"WX";s:3:"549";s:1:"N";s:7:"radical";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:3:"-38";i:2;s:3:"515";i:3;s:3:"917";}}s:7:"radical";a:4:{s:1:"C";s:3:"214";s:2:"WX";s:3:"549";s:1:"N";s:7:"radical";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:3:"-38";i:2;s:3:"515";i:3;s:3:"917";}}i:215;a:4:{s:1:"C";s:3:"215";s:2:"WX";s:3:"250";s:1:"N";s:7:"dotmath";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:3:"210";i:2;s:3:"169";i:3;s:3:"310";}}s:7:"dotmath";a:4:{s:1:"C";s:3:"215";s:2:"WX";s:3:"250";s:1:"N";s:7:"dotmath";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:3:"210";i:2;s:3:"169";i:3;s:3:"310";}}i:216;a:4:{s:1:"C";s:3:"216";s:2:"WX";s:3:"713";s:1:"N";s:10:"logicalnot";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:1:"0";i:2;s:3:"680";i:3;s:3:"288";}}s:10:"logicalnot";a:4:{s:1:"C";s:3:"216";s:2:"WX";s:3:"713";s:1:"N";s:10:"logicalnot";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:1:"0";i:2;s:3:"680";i:3;s:3:"288";}}i:217;a:4:{s:1:"C";s:3:"217";s:2:"WX";s:3:"603";s:1:"N";s:10:"logicaland";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:1:"0";i:2;s:3:"583";i:3;s:3:"454";}}s:10:"logicaland";a:4:{s:1:"C";s:3:"217";s:2:"WX";s:3:"603";s:1:"N";s:10:"logicaland";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:1:"0";i:2;s:3:"583";i:3;s:3:"454";}}i:218;a:4:{s:1:"C";s:3:"218";s:2:"WX";s:3:"603";s:1:"N";s:9:"logicalor";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:1:"0";i:2;s:3:"578";i:3;s:3:"477";}}s:9:"logicalor";a:4:{s:1:"C";s:3:"218";s:2:"WX";s:3:"603";s:1:"N";s:9:"logicalor";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:1:"0";i:2;s:3:"578";i:3;s:3:"477";}}i:219;a:4:{s:1:"C";s:3:"219";s:2:"WX";s:4:"1042";s:1:"N";s:12:"arrowdblboth";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:3:"-20";i:2;s:4:"1023";i:3;s:3:"510";}}s:12:"arrowdblboth";a:4:{s:1:"C";s:3:"219";s:2:"WX";s:4:"1042";s:1:"N";s:12:"arrowdblboth";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:3:"-20";i:2;s:4:"1023";i:3;s:3:"510";}}i:220;a:4:{s:1:"C";s:3:"220";s:2:"WX";s:3:"987";s:1:"N";s:12:"arrowdblleft";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"-15";i:2;s:3:"939";i:3;s:3:"513";}}s:12:"arrowdblleft";a:4:{s:1:"C";s:3:"220";s:2:"WX";s:3:"987";s:1:"N";s:12:"arrowdblleft";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"-15";i:2;s:3:"939";i:3;s:3:"513";}}i:221;a:4:{s:1:"C";s:3:"221";s:2:"WX";s:3:"603";s:1:"N";s:10:"arrowdblup";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:1:"2";i:2;s:3:"567";i:3;s:3:"911";}}s:10:"arrowdblup";a:4:{s:1:"C";s:3:"221";s:2:"WX";s:3:"603";s:1:"N";s:10:"arrowdblup";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:1:"2";i:2;s:3:"567";i:3;s:3:"911";}}i:222;a:4:{s:1:"C";s:3:"222";s:2:"WX";s:3:"987";s:1:"N";s:13:"arrowdblright";s:1:"B";a:4:{i:0;s:2:"45";i:1;s:3:"-20";i:2;s:3:"954";i:3;s:3:"508";}}s:13:"arrowdblright";a:4:{s:1:"C";s:3:"222";s:2:"WX";s:3:"987";s:1:"N";s:13:"arrowdblright";s:1:"B";a:4:{i:0;s:2:"45";i:1;s:3:"-20";i:2;s:3:"954";i:3;s:3:"508";}}i:223;a:4:{s:1:"C";s:3:"223";s:2:"WX";s:3:"603";s:1:"N";s:12:"arrowdbldown";s:1:"B";a:4:{i:0;s:2:"44";i:1;s:3:"-19";i:2;s:3:"572";i:3;s:3:"890";}}s:12:"arrowdbldown";a:4:{s:1:"C";s:3:"223";s:2:"WX";s:3:"603";s:1:"N";s:12:"arrowdbldown";s:1:"B";a:4:{i:0;s:2:"44";i:1;s:3:"-19";i:2;s:3:"572";i:3;s:3:"890";}}i:224;a:4:{s:1:"C";s:3:"224";s:2:"WX";s:3:"494";s:1:"N";s:7:"lozenge";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:1:"0";i:2;s:3:"466";i:3;s:3:"745";}}s:7:"lozenge";a:4:{s:1:"C";s:3:"224";s:2:"WX";s:3:"494";s:1:"N";s:7:"lozenge";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:1:"0";i:2;s:3:"466";i:3;s:3:"745";}}i:225;a:4:{s:1:"C";s:3:"225";s:2:"WX";s:3:"329";s:1:"N";s:9:"angleleft";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:4:"-198";i:2;s:3:"306";i:3;s:3:"746";}}s:9:"angleleft";a:4:{s:1:"C";s:3:"225";s:2:"WX";s:3:"329";s:1:"N";s:9:"angleleft";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:4:"-198";i:2;s:3:"306";i:3;s:3:"746";}}i:226;a:4:{s:1:"C";s:3:"226";s:2:"WX";s:3:"790";s:1:"N";s:12:"registersans";s:1:"B";a:4:{i:0;s:2:"50";i:1;s:3:"-20";i:2;s:3:"740";i:3;s:3:"670";}}s:12:"registersans";a:4:{s:1:"C";s:3:"226";s:2:"WX";s:3:"790";s:1:"N";s:12:"registersans";s:1:"B";a:4:{i:0;s:2:"50";i:1;s:3:"-20";i:2;s:3:"740";i:3;s:3:"670";}}i:227;a:4:{s:1:"C";s:3:"227";s:2:"WX";s:3:"790";s:1:"N";s:13:"copyrightsans";s:1:"B";a:4:{i:0;s:2:"49";i:1;s:3:"-15";i:2;s:3:"739";i:3;s:3:"675";}}s:13:"copyrightsans";a:4:{s:1:"C";s:3:"227";s:2:"WX";s:3:"790";s:1:"N";s:13:"copyrightsans";s:1:"B";a:4:{i:0;s:2:"49";i:1;s:3:"-15";i:2;s:3:"739";i:3;s:3:"675";}}i:228;a:4:{s:1:"C";s:3:"228";s:2:"WX";s:3:"786";s:1:"N";s:13:"trademarksans";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:3:"293";i:2;s:3:"725";i:3;s:3:"673";}}s:13:"trademarksans";a:4:{s:1:"C";s:3:"228";s:2:"WX";s:3:"786";s:1:"N";s:13:"trademarksans";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:3:"293";i:2;s:3:"725";i:3;s:3:"673";}}i:229;a:4:{s:1:"C";s:3:"229";s:2:"WX";s:3:"713";s:1:"N";s:9:"summation";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:4:"-108";i:2;s:3:"695";i:3;s:3:"752";}}s:9:"summation";a:4:{s:1:"C";s:3:"229";s:2:"WX";s:3:"713";s:1:"N";s:9:"summation";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:4:"-108";i:2;s:3:"695";i:3;s:3:"752";}}i:230;a:4:{s:1:"C";s:3:"230";s:2:"WX";s:3:"384";s:1:"N";s:11:"parenlefttp";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:4:"-293";i:2;s:3:"436";i:3;s:3:"926";}}s:11:"parenlefttp";a:4:{s:1:"C";s:3:"230";s:2:"WX";s:3:"384";s:1:"N";s:11:"parenlefttp";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:4:"-293";i:2;s:3:"436";i:3;s:3:"926";}}i:231;a:4:{s:1:"C";s:3:"231";s:2:"WX";s:3:"384";s:1:"N";s:11:"parenleftex";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:3:"-85";i:2;s:3:"108";i:3;s:3:"925";}}s:11:"parenleftex";a:4:{s:1:"C";s:3:"231";s:2:"WX";s:3:"384";s:1:"N";s:11:"parenleftex";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:3:"-85";i:2;s:3:"108";i:3;s:3:"925";}}i:232;a:4:{s:1:"C";s:3:"232";s:2:"WX";s:3:"384";s:1:"N";s:11:"parenleftbt";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:4:"-293";i:2;s:3:"436";i:3;s:3:"926";}}s:11:"parenleftbt";a:4:{s:1:"C";s:3:"232";s:2:"WX";s:3:"384";s:1:"N";s:11:"parenleftbt";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:4:"-293";i:2;s:3:"436";i:3;s:3:"926";}}i:233;a:4:{s:1:"C";s:3:"233";s:2:"WX";s:3:"384";s:1:"N";s:13:"bracketlefttp";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"-80";i:2;s:3:"349";i:3;s:3:"926";}}s:13:"bracketlefttp";a:4:{s:1:"C";s:3:"233";s:2:"WX";s:3:"384";s:1:"N";s:13:"bracketlefttp";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"-80";i:2;s:3:"349";i:3;s:3:"926";}}i:234;a:4:{s:1:"C";s:3:"234";s:2:"WX";s:3:"384";s:1:"N";s:13:"bracketleftex";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"-79";i:2;s:2:"77";i:3;s:3:"925";}}s:13:"bracketleftex";a:4:{s:1:"C";s:3:"234";s:2:"WX";s:3:"384";s:1:"N";s:13:"bracketleftex";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"-79";i:2;s:2:"77";i:3;s:3:"925";}}i:235;a:4:{s:1:"C";s:3:"235";s:2:"WX";s:3:"384";s:1:"N";s:13:"bracketleftbt";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"-80";i:2;s:3:"349";i:3;s:3:"926";}}s:13:"bracketleftbt";a:4:{s:1:"C";s:3:"235";s:2:"WX";s:3:"384";s:1:"N";s:13:"bracketleftbt";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"-80";i:2;s:3:"349";i:3;s:3:"926";}}i:236;a:4:{s:1:"C";s:3:"236";s:2:"WX";s:3:"494";s:1:"N";s:11:"bracelefttp";s:1:"B";a:4:{i:0;s:3:"209";i:1;s:3:"-85";i:2;s:3:"445";i:3;s:3:"925";}}s:11:"bracelefttp";a:4:{s:1:"C";s:3:"236";s:2:"WX";s:3:"494";s:1:"N";s:11:"bracelefttp";s:1:"B";a:4:{i:0;s:3:"209";i:1;s:3:"-85";i:2;s:3:"445";i:3;s:3:"925";}}i:237;a:4:{s:1:"C";s:3:"237";s:2:"WX";s:3:"494";s:1:"N";s:12:"braceleftmid";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:3:"-85";i:2;s:3:"284";i:3;s:3:"935";}}s:12:"braceleftmid";a:4:{s:1:"C";s:3:"237";s:2:"WX";s:3:"494";s:1:"N";s:12:"braceleftmid";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:3:"-85";i:2;s:3:"284";i:3;s:3:"935";}}i:238;a:4:{s:1:"C";s:3:"238";s:2:"WX";s:3:"494";s:1:"N";s:11:"braceleftbt";s:1:"B";a:4:{i:0;s:3:"209";i:1;s:3:"-75";i:2;s:3:"445";i:3;s:3:"935";}}s:11:"braceleftbt";a:4:{s:1:"C";s:3:"238";s:2:"WX";s:3:"494";s:1:"N";s:11:"braceleftbt";s:1:"B";a:4:{i:0;s:3:"209";i:1;s:3:"-75";i:2;s:3:"445";i:3;s:3:"935";}}i:239;a:4:{s:1:"C";s:3:"239";s:2:"WX";s:3:"494";s:1:"N";s:7:"braceex";s:1:"B";a:4:{i:0;s:3:"209";i:1;s:3:"-85";i:2;s:3:"284";i:3;s:3:"935";}}s:7:"braceex";a:4:{s:1:"C";s:3:"239";s:2:"WX";s:3:"494";s:1:"N";s:7:"braceex";s:1:"B";a:4:{i:0;s:3:"209";i:1;s:3:"-85";i:2;s:3:"284";i:3;s:3:"935";}}i:241;a:4:{s:1:"C";s:3:"241";s:2:"WX";s:3:"329";s:1:"N";s:10:"angleright";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:4:"-198";i:2;s:3:"302";i:3;s:3:"746";}}s:10:"angleright";a:4:{s:1:"C";s:3:"241";s:2:"WX";s:3:"329";s:1:"N";s:10:"angleright";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:4:"-198";i:2;s:3:"302";i:3;s:3:"746";}}i:242;a:4:{s:1:"C";s:3:"242";s:2:"WX";s:3:"274";s:1:"N";s:8:"integral";s:1:"B";a:4:{i:0;s:1:"2";i:1;s:4:"-107";i:2;s:3:"291";i:3;s:3:"916";}}s:8:"integral";a:4:{s:1:"C";s:3:"242";s:2:"WX";s:3:"274";s:1:"N";s:8:"integral";s:1:"B";a:4:{i:0;s:1:"2";i:1;s:4:"-107";i:2;s:3:"291";i:3;s:3:"916";}}i:243;a:4:{s:1:"C";s:3:"243";s:2:"WX";s:3:"686";s:1:"N";s:10:"integraltp";s:1:"B";a:4:{i:0;s:3:"308";i:1;s:3:"-88";i:2;s:3:"675";i:3;s:3:"920";}}s:10:"integraltp";a:4:{s:1:"C";s:3:"243";s:2:"WX";s:3:"686";s:1:"N";s:10:"integraltp";s:1:"B";a:4:{i:0;s:3:"308";i:1;s:3:"-88";i:2;s:3:"675";i:3;s:3:"920";}}i:244;a:4:{s:1:"C";s:3:"244";s:2:"WX";s:3:"686";s:1:"N";s:10:"integralex";s:1:"B";a:4:{i:0;s:3:"308";i:1;s:3:"-88";i:2;s:3:"378";i:3;s:3:"975";}}s:10:"integralex";a:4:{s:1:"C";s:3:"244";s:2:"WX";s:3:"686";s:1:"N";s:10:"integralex";s:1:"B";a:4:{i:0;s:3:"308";i:1;s:3:"-88";i:2;s:3:"378";i:3;s:3:"975";}}i:245;a:4:{s:1:"C";s:3:"245";s:2:"WX";s:3:"686";s:1:"N";s:10:"integralbt";s:1:"B";a:4:{i:0;s:2:"11";i:1;s:3:"-87";i:2;s:3:"378";i:3;s:3:"921";}}s:10:"integralbt";a:4:{s:1:"C";s:3:"245";s:2:"WX";s:3:"686";s:1:"N";s:10:"integralbt";s:1:"B";a:4:{i:0;s:2:"11";i:1;s:3:"-87";i:2;s:3:"378";i:3;s:3:"921";}}i:246;a:4:{s:1:"C";s:3:"246";s:2:"WX";s:3:"384";s:1:"N";s:12:"parenrighttp";s:1:"B";a:4:{i:0;s:2:"54";i:1;s:4:"-293";i:2;s:3:"466";i:3;s:3:"926";}}s:12:"parenrighttp";a:4:{s:1:"C";s:3:"246";s:2:"WX";s:3:"384";s:1:"N";s:12:"parenrighttp";s:1:"B";a:4:{i:0;s:2:"54";i:1;s:4:"-293";i:2;s:3:"466";i:3;s:3:"926";}}i:247;a:4:{s:1:"C";s:3:"247";s:2:"WX";s:3:"384";s:1:"N";s:12:"parenrightex";s:1:"B";a:4:{i:0;s:3:"382";i:1;s:3:"-85";i:2;s:3:"466";i:3;s:3:"925";}}s:12:"parenrightex";a:4:{s:1:"C";s:3:"247";s:2:"WX";s:3:"384";s:1:"N";s:12:"parenrightex";s:1:"B";a:4:{i:0;s:3:"382";i:1;s:3:"-85";i:2;s:3:"466";i:3;s:3:"925";}}i:248;a:4:{s:1:"C";s:3:"248";s:2:"WX";s:3:"384";s:1:"N";s:12:"parenrightbt";s:1:"B";a:4:{i:0;s:2:"54";i:1;s:4:"-293";i:2;s:3:"466";i:3;s:3:"926";}}s:12:"parenrightbt";a:4:{s:1:"C";s:3:"248";s:2:"WX";s:3:"384";s:1:"N";s:12:"parenrightbt";s:1:"B";a:4:{i:0;s:2:"54";i:1;s:4:"-293";i:2;s:3:"466";i:3;s:3:"926";}}i:249;a:4:{s:1:"C";s:3:"249";s:2:"WX";s:3:"384";s:1:"N";s:14:"bracketrighttp";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:3:"-80";i:2;s:3:"371";i:3;s:3:"926";}}s:14:"bracketrighttp";a:4:{s:1:"C";s:3:"249";s:2:"WX";s:3:"384";s:1:"N";s:14:"bracketrighttp";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:3:"-80";i:2;s:3:"371";i:3;s:3:"926";}}i:250;a:4:{s:1:"C";s:3:"250";s:2:"WX";s:3:"384";s:1:"N";s:14:"bracketrightex";s:1:"B";a:4:{i:0;s:3:"294";i:1;s:3:"-79";i:2;s:3:"371";i:3;s:3:"925";}}s:14:"bracketrightex";a:4:{s:1:"C";s:3:"250";s:2:"WX";s:3:"384";s:1:"N";s:14:"bracketrightex";s:1:"B";a:4:{i:0;s:3:"294";i:1;s:3:"-79";i:2;s:3:"371";i:3;s:3:"925";}}i:251;a:4:{s:1:"C";s:3:"251";s:2:"WX";s:3:"384";s:1:"N";s:14:"bracketrightbt";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:3:"-80";i:2;s:3:"371";i:3;s:3:"926";}}s:14:"bracketrightbt";a:4:{s:1:"C";s:3:"251";s:2:"WX";s:3:"384";s:1:"N";s:14:"bracketrightbt";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:3:"-80";i:2;s:3:"371";i:3;s:3:"926";}}i:252;a:4:{s:1:"C";s:3:"252";s:2:"WX";s:3:"494";s:1:"N";s:12:"bracerighttp";s:1:"B";a:4:{i:0;s:2:"48";i:1;s:3:"-85";i:2;s:3:"284";i:3;s:3:"925";}}s:12:"bracerighttp";a:4:{s:1:"C";s:3:"252";s:2:"WX";s:3:"494";s:1:"N";s:12:"bracerighttp";s:1:"B";a:4:{i:0;s:2:"48";i:1;s:3:"-85";i:2;s:3:"284";i:3;s:3:"925";}}i:253;a:4:{s:1:"C";s:3:"253";s:2:"WX";s:3:"494";s:1:"N";s:13:"bracerightmid";s:1:"B";a:4:{i:0;s:3:"209";i:1;s:3:"-85";i:2;s:3:"473";i:3;s:3:"935";}}s:13:"bracerightmid";a:4:{s:1:"C";s:3:"253";s:2:"WX";s:3:"494";s:1:"N";s:13:"bracerightmid";s:1:"B";a:4:{i:0;s:3:"209";i:1;s:3:"-85";i:2;s:3:"473";i:3;s:3:"935";}}i:254;a:4:{s:1:"C";s:3:"254";s:2:"WX";s:3:"494";s:1:"N";s:12:"bracerightbt";s:1:"B";a:4:{i:0;s:2:"48";i:1;s:3:"-75";i:2;s:3:"284";i:3;s:3:"935";}}s:12:"bracerightbt";a:4:{s:1:"C";s:3:"254";s:2:"WX";s:3:"494";s:1:"N";s:12:"bracerightbt";s:1:"B";a:4:{i:0;s:2:"48";i:1;s:3:"-75";i:2;s:3:"284";i:3;s:3:"935";}}s:5:"apple";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"790";s:1:"N";s:5:"apple";s:1:"B";a:4:{i:0;s:2:"56";i:1;s:2:"-3";i:2;s:3:"733";i:3;s:3:"808";}}}s:9:"_version_";i:1;} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Times-Bold.afm b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Times-Bold.afm
new file mode 100755
index 00000000..3f4872b8
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Times-Bold.afm
@@ -0,0 +1 @@
+a:22:{s:8:"FontName";s:10:"Times-Bold";s:8:"FullName";s:10:"Times Bold";s:10:"FamilyName";s:5:"Times";s:6:"Weight";s:4:"Bold";s:11:"ItalicAngle";s:1:"0";s:12:"IsFixedPitch";s:5:"false";s:12:"CharacterSet";s:13:"ExtendedRoman";s:8:"FontBBox";a:4:{i:0;s:4:"-168";i:1;s:4:"-218";i:2;s:4:"1000";i:3;s:3:"935";}s:17:"UnderlinePosition";s:4:"-100";s:18:"UnderlineThickness";s:2:"50";s:7:"Version";s:7:"002.000";s:14:"EncodingScheme";s:21:"AdobeStandardEncoding";s:9:"CapHeight";s:3:"676";s:7:"XHeight";s:3:"461";s:8:"Ascender";s:3:"683";s:9:"Descender";s:4:"-217";s:5:"StdHW";s:2:"44";s:5:"StdVW";s:3:"139";s:16:"StartCharMetrics";s:3:"315";s:1:"C";a:464:{i:32;a:4:{s:1:"C";s:2:"32";s:2:"WX";s:3:"250";s:1:"N";s:5:"space";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:1:"0";i:3;s:1:"0";}}s:5:"space";a:4:{s:1:"C";s:2:"32";s:2:"WX";s:3:"250";s:1:"N";s:5:"space";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:1:"0";i:3;s:1:"0";}}i:33;a:4:{s:1:"C";s:2:"33";s:2:"WX";s:3:"333";s:1:"N";s:6:"exclam";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:3:"-13";i:2;s:3:"251";i:3;s:3:"691";}}s:6:"exclam";a:4:{s:1:"C";s:2:"33";s:2:"WX";s:3:"333";s:1:"N";s:6:"exclam";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:3:"-13";i:2;s:3:"251";i:3;s:3:"691";}}i:34;a:4:{s:1:"C";s:2:"34";s:2:"WX";s:3:"555";s:1:"N";s:8:"quotedbl";s:1:"B";a:4:{i:0;s:2:"83";i:1;s:3:"404";i:2;s:3:"472";i:3;s:3:"691";}}s:8:"quotedbl";a:4:{s:1:"C";s:2:"34";s:2:"WX";s:3:"555";s:1:"N";s:8:"quotedbl";s:1:"B";a:4:{i:0;s:2:"83";i:1;s:3:"404";i:2;s:3:"472";i:3;s:3:"691";}}i:35;a:4:{s:1:"C";s:2:"35";s:2:"WX";s:3:"500";s:1:"N";s:10:"numbersign";s:1:"B";a:4:{i:0;s:1:"4";i:1;s:1:"0";i:2;s:3:"496";i:3;s:3:"700";}}s:10:"numbersign";a:4:{s:1:"C";s:2:"35";s:2:"WX";s:3:"500";s:1:"N";s:10:"numbersign";s:1:"B";a:4:{i:0;s:1:"4";i:1;s:1:"0";i:2;s:3:"496";i:3;s:3:"700";}}i:36;a:4:{s:1:"C";s:2:"36";s:2:"WX";s:3:"500";s:1:"N";s:6:"dollar";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:3:"-99";i:2;s:3:"472";i:3;s:3:"750";}}s:6:"dollar";a:4:{s:1:"C";s:2:"36";s:2:"WX";s:3:"500";s:1:"N";s:6:"dollar";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:3:"-99";i:2;s:3:"472";i:3;s:3:"750";}}i:37;a:4:{s:1:"C";s:2:"37";s:2:"WX";s:4:"1000";s:1:"N";s:7:"percent";s:1:"B";a:4:{i:0;s:3:"124";i:1;s:3:"-14";i:2;s:3:"877";i:3;s:3:"692";}}s:7:"percent";a:4:{s:1:"C";s:2:"37";s:2:"WX";s:4:"1000";s:1:"N";s:7:"percent";s:1:"B";a:4:{i:0;s:3:"124";i:1;s:3:"-14";i:2;s:3:"877";i:3;s:3:"692";}}i:38;a:4:{s:1:"C";s:2:"38";s:2:"WX";s:3:"833";s:1:"N";s:9:"ampersand";s:1:"B";a:4:{i:0;s:2:"62";i:1;s:3:"-16";i:2;s:3:"787";i:3;s:3:"691";}}s:9:"ampersand";a:4:{s:1:"C";s:2:"38";s:2:"WX";s:3:"833";s:1:"N";s:9:"ampersand";s:1:"B";a:4:{i:0;s:2:"62";i:1;s:3:"-16";i:2;s:3:"787";i:3;s:3:"691";}}i:39;a:4:{s:1:"C";s:2:"39";s:2:"WX";s:3:"333";s:1:"N";s:10:"quoteright";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:3:"356";i:2;s:3:"263";i:3;s:3:"691";}}s:10:"quoteright";a:4:{s:1:"C";s:2:"39";s:2:"WX";s:3:"333";s:1:"N";s:10:"quoteright";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:3:"356";i:2;s:3:"263";i:3;s:3:"691";}}i:40;a:4:{s:1:"C";s:2:"40";s:2:"WX";s:3:"333";s:1:"N";s:9:"parenleft";s:1:"B";a:4:{i:0;s:2:"46";i:1;s:4:"-168";i:2;s:3:"306";i:3;s:3:"694";}}s:9:"parenleft";a:4:{s:1:"C";s:2:"40";s:2:"WX";s:3:"333";s:1:"N";s:9:"parenleft";s:1:"B";a:4:{i:0;s:2:"46";i:1;s:4:"-168";i:2;s:3:"306";i:3;s:3:"694";}}i:41;a:4:{s:1:"C";s:2:"41";s:2:"WX";s:3:"333";s:1:"N";s:10:"parenright";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:4:"-168";i:2;s:3:"287";i:3;s:3:"694";}}s:10:"parenright";a:4:{s:1:"C";s:2:"41";s:2:"WX";s:3:"333";s:1:"N";s:10:"parenright";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:4:"-168";i:2;s:3:"287";i:3;s:3:"694";}}i:42;a:4:{s:1:"C";s:2:"42";s:2:"WX";s:3:"500";s:1:"N";s:8:"asterisk";s:1:"B";a:4:{i:0;s:2:"56";i:1;s:3:"255";i:2;s:3:"447";i:3;s:3:"691";}}s:8:"asterisk";a:4:{s:1:"C";s:2:"42";s:2:"WX";s:3:"500";s:1:"N";s:8:"asterisk";s:1:"B";a:4:{i:0;s:2:"56";i:1;s:3:"255";i:2;s:3:"447";i:3;s:3:"691";}}i:43;a:4:{s:1:"C";s:2:"43";s:2:"WX";s:3:"570";s:1:"N";s:4:"plus";s:1:"B";a:4:{i:0;s:2:"33";i:1;s:1:"0";i:2;s:3:"537";i:3;s:3:"506";}}s:4:"plus";a:4:{s:1:"C";s:2:"43";s:2:"WX";s:3:"570";s:1:"N";s:4:"plus";s:1:"B";a:4:{i:0;s:2:"33";i:1;s:1:"0";i:2;s:3:"537";i:3;s:3:"506";}}i:44;a:4:{s:1:"C";s:2:"44";s:2:"WX";s:3:"250";s:1:"N";s:5:"comma";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:4:"-180";i:2;s:3:"223";i:3;s:3:"155";}}s:5:"comma";a:4:{s:1:"C";s:2:"44";s:2:"WX";s:3:"250";s:1:"N";s:5:"comma";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:4:"-180";i:2;s:3:"223";i:3;s:3:"155";}}i:45;a:4:{s:1:"C";s:2:"45";s:2:"WX";s:3:"333";s:1:"N";s:6:"hyphen";s:1:"B";a:4:{i:0;s:2:"44";i:1;s:3:"171";i:2;s:3:"287";i:3;s:3:"287";}}s:6:"hyphen";a:4:{s:1:"C";s:2:"45";s:2:"WX";s:3:"333";s:1:"N";s:6:"hyphen";s:1:"B";a:4:{i:0;s:2:"44";i:1;s:3:"171";i:2;s:3:"287";i:3;s:3:"287";}}i:46;a:4:{s:1:"C";s:2:"46";s:2:"WX";s:3:"250";s:1:"N";s:6:"period";s:1:"B";a:4:{i:0;s:2:"41";i:1;s:3:"-13";i:2;s:3:"210";i:3;s:3:"156";}}s:6:"period";a:4:{s:1:"C";s:2:"46";s:2:"WX";s:3:"250";s:1:"N";s:6:"period";s:1:"B";a:4:{i:0;s:2:"41";i:1;s:3:"-13";i:2;s:3:"210";i:3;s:3:"156";}}i:47;a:4:{s:1:"C";s:2:"47";s:2:"WX";s:3:"278";s:1:"N";s:5:"slash";s:1:"B";a:4:{i:0;s:3:"-24";i:1;s:3:"-19";i:2;s:3:"302";i:3;s:3:"691";}}s:5:"slash";a:4:{s:1:"C";s:2:"47";s:2:"WX";s:3:"278";s:1:"N";s:5:"slash";s:1:"B";a:4:{i:0;s:3:"-24";i:1;s:3:"-19";i:2;s:3:"302";i:3;s:3:"691";}}i:48;a:4:{s:1:"C";s:2:"48";s:2:"WX";s:3:"500";s:1:"N";s:4:"zero";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:3:"-13";i:2;s:3:"476";i:3;s:3:"688";}}s:4:"zero";a:4:{s:1:"C";s:2:"48";s:2:"WX";s:3:"500";s:1:"N";s:4:"zero";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:3:"-13";i:2;s:3:"476";i:3;s:3:"688";}}i:49;a:4:{s:1:"C";s:2:"49";s:2:"WX";s:3:"500";s:1:"N";s:3:"one";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:1:"0";i:2;s:3:"442";i:3;s:3:"688";}}s:3:"one";a:4:{s:1:"C";s:2:"49";s:2:"WX";s:3:"500";s:1:"N";s:3:"one";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:1:"0";i:2;s:3:"442";i:3;s:3:"688";}}i:50;a:4:{s:1:"C";s:2:"50";s:2:"WX";s:3:"500";s:1:"N";s:3:"two";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:1:"0";i:2;s:3:"478";i:3;s:3:"688";}}s:3:"two";a:4:{s:1:"C";s:2:"50";s:2:"WX";s:3:"500";s:1:"N";s:3:"two";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:1:"0";i:2;s:3:"478";i:3;s:3:"688";}}i:51;a:4:{s:1:"C";s:2:"51";s:2:"WX";s:3:"500";s:1:"N";s:5:"three";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"-14";i:2;s:3:"468";i:3;s:3:"688";}}s:5:"three";a:4:{s:1:"C";s:2:"51";s:2:"WX";s:3:"500";s:1:"N";s:5:"three";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"-14";i:2;s:3:"468";i:3;s:3:"688";}}i:52;a:4:{s:1:"C";s:2:"52";s:2:"WX";s:3:"500";s:1:"N";s:4:"four";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:1:"0";i:2;s:3:"475";i:3;s:3:"688";}}s:4:"four";a:4:{s:1:"C";s:2:"52";s:2:"WX";s:3:"500";s:1:"N";s:4:"four";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:1:"0";i:2;s:3:"475";i:3;s:3:"688";}}i:53;a:4:{s:1:"C";s:2:"53";s:2:"WX";s:3:"500";s:1:"N";s:4:"five";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:2:"-8";i:2;s:3:"470";i:3;s:3:"676";}}s:4:"five";a:4:{s:1:"C";s:2:"53";s:2:"WX";s:3:"500";s:1:"N";s:4:"five";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:2:"-8";i:2;s:3:"470";i:3;s:3:"676";}}i:54;a:4:{s:1:"C";s:2:"54";s:2:"WX";s:3:"500";s:1:"N";s:3:"six";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:3:"-13";i:2;s:3:"475";i:3;s:3:"688";}}s:3:"six";a:4:{s:1:"C";s:2:"54";s:2:"WX";s:3:"500";s:1:"N";s:3:"six";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:3:"-13";i:2;s:3:"475";i:3;s:3:"688";}}i:55;a:4:{s:1:"C";s:2:"55";s:2:"WX";s:3:"500";s:1:"N";s:5:"seven";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:1:"0";i:2;s:3:"477";i:3;s:3:"676";}}s:5:"seven";a:4:{s:1:"C";s:2:"55";s:2:"WX";s:3:"500";s:1:"N";s:5:"seven";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:1:"0";i:2;s:3:"477";i:3;s:3:"676";}}i:56;a:4:{s:1:"C";s:2:"56";s:2:"WX";s:3:"500";s:1:"N";s:5:"eight";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:3:"-13";i:2;s:3:"472";i:3;s:3:"688";}}s:5:"eight";a:4:{s:1:"C";s:2:"56";s:2:"WX";s:3:"500";s:1:"N";s:5:"eight";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:3:"-13";i:2;s:3:"472";i:3;s:3:"688";}}i:57;a:4:{s:1:"C";s:2:"57";s:2:"WX";s:3:"500";s:1:"N";s:4:"nine";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:3:"-13";i:2;s:3:"473";i:3;s:3:"688";}}s:4:"nine";a:4:{s:1:"C";s:2:"57";s:2:"WX";s:3:"500";s:1:"N";s:4:"nine";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:3:"-13";i:2;s:3:"473";i:3;s:3:"688";}}i:58;a:4:{s:1:"C";s:2:"58";s:2:"WX";s:3:"333";s:1:"N";s:5:"colon";s:1:"B";a:4:{i:0;s:2:"82";i:1;s:3:"-13";i:2;s:3:"251";i:3;s:3:"472";}}s:5:"colon";a:4:{s:1:"C";s:2:"58";s:2:"WX";s:3:"333";s:1:"N";s:5:"colon";s:1:"B";a:4:{i:0;s:2:"82";i:1;s:3:"-13";i:2;s:3:"251";i:3;s:3:"472";}}i:59;a:4:{s:1:"C";s:2:"59";s:2:"WX";s:3:"333";s:1:"N";s:9:"semicolon";s:1:"B";a:4:{i:0;s:2:"82";i:1;s:4:"-180";i:2;s:3:"266";i:3;s:3:"472";}}s:9:"semicolon";a:4:{s:1:"C";s:2:"59";s:2:"WX";s:3:"333";s:1:"N";s:9:"semicolon";s:1:"B";a:4:{i:0;s:2:"82";i:1;s:4:"-180";i:2;s:3:"266";i:3;s:3:"472";}}i:60;a:4:{s:1:"C";s:2:"60";s:2:"WX";s:3:"570";s:1:"N";s:4:"less";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:2:"-8";i:2;s:3:"539";i:3;s:3:"514";}}s:4:"less";a:4:{s:1:"C";s:2:"60";s:2:"WX";s:3:"570";s:1:"N";s:4:"less";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:2:"-8";i:2;s:3:"539";i:3;s:3:"514";}}i:61;a:4:{s:1:"C";s:2:"61";s:2:"WX";s:3:"570";s:1:"N";s:5:"equal";s:1:"B";a:4:{i:0;s:2:"33";i:1;s:3:"107";i:2;s:3:"537";i:3;s:3:"399";}}s:5:"equal";a:4:{s:1:"C";s:2:"61";s:2:"WX";s:3:"570";s:1:"N";s:5:"equal";s:1:"B";a:4:{i:0;s:2:"33";i:1;s:3:"107";i:2;s:3:"537";i:3;s:3:"399";}}i:62;a:4:{s:1:"C";s:2:"62";s:2:"WX";s:3:"570";s:1:"N";s:7:"greater";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:2:"-8";i:2;s:3:"539";i:3;s:3:"514";}}s:7:"greater";a:4:{s:1:"C";s:2:"62";s:2:"WX";s:3:"570";s:1:"N";s:7:"greater";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:2:"-8";i:2;s:3:"539";i:3;s:3:"514";}}i:63;a:4:{s:1:"C";s:2:"63";s:2:"WX";s:3:"500";s:1:"N";s:8:"question";s:1:"B";a:4:{i:0;s:2:"57";i:1;s:3:"-13";i:2;s:3:"445";i:3;s:3:"689";}}s:8:"question";a:4:{s:1:"C";s:2:"63";s:2:"WX";s:3:"500";s:1:"N";s:8:"question";s:1:"B";a:4:{i:0;s:2:"57";i:1;s:3:"-13";i:2;s:3:"445";i:3;s:3:"689";}}i:64;a:4:{s:1:"C";s:2:"64";s:2:"WX";s:3:"930";s:1:"N";s:2:"at";s:1:"B";a:4:{i:0;s:3:"108";i:1;s:3:"-19";i:2;s:3:"822";i:3;s:3:"691";}}s:2:"at";a:4:{s:1:"C";s:2:"64";s:2:"WX";s:3:"930";s:1:"N";s:2:"at";s:1:"B";a:4:{i:0;s:3:"108";i:1;s:3:"-19";i:2;s:3:"822";i:3;s:3:"691";}}i:65;a:4:{s:1:"C";s:2:"65";s:2:"WX";s:3:"722";s:1:"N";s:1:"A";s:1:"B";a:4:{i:0;s:1:"9";i:1;s:1:"0";i:2;s:3:"689";i:3;s:3:"690";}}s:1:"A";a:4:{s:1:"C";s:2:"65";s:2:"WX";s:3:"722";s:1:"N";s:1:"A";s:1:"B";a:4:{i:0;s:1:"9";i:1;s:1:"0";i:2;s:3:"689";i:3;s:3:"690";}}i:66;a:4:{s:1:"C";s:2:"66";s:2:"WX";s:3:"667";s:1:"N";s:1:"B";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"619";i:3;s:3:"676";}}s:1:"B";a:4:{s:1:"C";s:2:"66";s:2:"WX";s:3:"667";s:1:"N";s:1:"B";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"619";i:3;s:3:"676";}}i:67;a:4:{s:1:"C";s:2:"67";s:2:"WX";s:3:"722";s:1:"N";s:1:"C";s:1:"B";a:4:{i:0;s:2:"49";i:1;s:3:"-19";i:2;s:3:"687";i:3;s:3:"691";}}s:1:"C";a:4:{s:1:"C";s:2:"67";s:2:"WX";s:3:"722";s:1:"N";s:1:"C";s:1:"B";a:4:{i:0;s:2:"49";i:1;s:3:"-19";i:2;s:3:"687";i:3;s:3:"691";}}i:68;a:4:{s:1:"C";s:2:"68";s:2:"WX";s:3:"722";s:1:"N";s:1:"D";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"690";i:3;s:3:"676";}}s:1:"D";a:4:{s:1:"C";s:2:"68";s:2:"WX";s:3:"722";s:1:"N";s:1:"D";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"690";i:3;s:3:"676";}}i:69;a:4:{s:1:"C";s:2:"69";s:2:"WX";s:3:"667";s:1:"N";s:1:"E";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"641";i:3;s:3:"676";}}s:1:"E";a:4:{s:1:"C";s:2:"69";s:2:"WX";s:3:"667";s:1:"N";s:1:"E";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"641";i:3;s:3:"676";}}i:70;a:4:{s:1:"C";s:2:"70";s:2:"WX";s:3:"611";s:1:"N";s:1:"F";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"583";i:3;s:3:"676";}}s:1:"F";a:4:{s:1:"C";s:2:"70";s:2:"WX";s:3:"611";s:1:"N";s:1:"F";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"583";i:3;s:3:"676";}}i:71;a:4:{s:1:"C";s:2:"71";s:2:"WX";s:3:"778";s:1:"N";s:1:"G";s:1:"B";a:4:{i:0;s:2:"37";i:1;s:3:"-19";i:2;s:3:"755";i:3;s:3:"691";}}s:1:"G";a:4:{s:1:"C";s:2:"71";s:2:"WX";s:3:"778";s:1:"N";s:1:"G";s:1:"B";a:4:{i:0;s:2:"37";i:1;s:3:"-19";i:2;s:3:"755";i:3;s:3:"691";}}i:72;a:4:{s:1:"C";s:2:"72";s:2:"WX";s:3:"778";s:1:"N";s:1:"H";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:1:"0";i:2;s:3:"759";i:3;s:3:"676";}}s:1:"H";a:4:{s:1:"C";s:2:"72";s:2:"WX";s:3:"778";s:1:"N";s:1:"H";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:1:"0";i:2;s:3:"759";i:3;s:3:"676";}}i:73;a:4:{s:1:"C";s:2:"73";s:2:"WX";s:3:"389";s:1:"N";s:1:"I";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"370";i:3;s:3:"676";}}s:1:"I";a:4:{s:1:"C";s:2:"73";s:2:"WX";s:3:"389";s:1:"N";s:1:"I";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"370";i:3;s:3:"676";}}i:74;a:4:{s:1:"C";s:2:"74";s:2:"WX";s:3:"500";s:1:"N";s:1:"J";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:3:"-96";i:2;s:3:"479";i:3;s:3:"676";}}s:1:"J";a:4:{s:1:"C";s:2:"74";s:2:"WX";s:3:"500";s:1:"N";s:1:"J";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:3:"-96";i:2;s:3:"479";i:3;s:3:"676";}}i:75;a:4:{s:1:"C";s:2:"75";s:2:"WX";s:3:"778";s:1:"N";s:1:"K";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:1:"0";i:2;s:3:"769";i:3;s:3:"676";}}s:1:"K";a:4:{s:1:"C";s:2:"75";s:2:"WX";s:3:"778";s:1:"N";s:1:"K";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:1:"0";i:2;s:3:"769";i:3;s:3:"676";}}i:76;a:4:{s:1:"C";s:2:"76";s:2:"WX";s:3:"667";s:1:"N";s:1:"L";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:1:"0";i:2;s:3:"638";i:3;s:3:"676";}}s:1:"L";a:4:{s:1:"C";s:2:"76";s:2:"WX";s:3:"667";s:1:"N";s:1:"L";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:1:"0";i:2;s:3:"638";i:3;s:3:"676";}}i:77;a:4:{s:1:"C";s:2:"77";s:2:"WX";s:3:"944";s:1:"N";s:1:"M";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"921";i:3;s:3:"676";}}s:1:"M";a:4:{s:1:"C";s:2:"77";s:2:"WX";s:3:"944";s:1:"N";s:1:"M";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"921";i:3;s:3:"676";}}i:78;a:4:{s:1:"C";s:2:"78";s:2:"WX";s:3:"722";s:1:"N";s:1:"N";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"-18";i:2;s:3:"701";i:3;s:3:"676";}}s:1:"N";a:4:{s:1:"C";s:2:"78";s:2:"WX";s:3:"722";s:1:"N";s:1:"N";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"-18";i:2;s:3:"701";i:3;s:3:"676";}}i:79;a:4:{s:1:"C";s:2:"79";s:2:"WX";s:3:"778";s:1:"N";s:1:"O";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-19";i:2;s:3:"743";i:3;s:3:"691";}}s:1:"O";a:4:{s:1:"C";s:2:"79";s:2:"WX";s:3:"778";s:1:"N";s:1:"O";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-19";i:2;s:3:"743";i:3;s:3:"691";}}i:80;a:4:{s:1:"C";s:2:"80";s:2:"WX";s:3:"611";s:1:"N";s:1:"P";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"600";i:3;s:3:"676";}}s:1:"P";a:4:{s:1:"C";s:2:"80";s:2:"WX";s:3:"611";s:1:"N";s:1:"P";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"600";i:3;s:3:"676";}}i:81;a:4:{s:1:"C";s:2:"81";s:2:"WX";s:3:"778";s:1:"N";s:1:"Q";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:4:"-176";i:2;s:3:"743";i:3;s:3:"691";}}s:1:"Q";a:4:{s:1:"C";s:2:"81";s:2:"WX";s:3:"778";s:1:"N";s:1:"Q";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:4:"-176";i:2;s:3:"743";i:3;s:3:"691";}}i:82;a:4:{s:1:"C";s:2:"82";s:2:"WX";s:3:"722";s:1:"N";s:1:"R";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"715";i:3;s:3:"676";}}s:1:"R";a:4:{s:1:"C";s:2:"82";s:2:"WX";s:3:"722";s:1:"N";s:1:"R";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"715";i:3;s:3:"676";}}i:83;a:4:{s:1:"C";s:2:"83";s:2:"WX";s:3:"556";s:1:"N";s:1:"S";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-19";i:2;s:3:"513";i:3;s:3:"692";}}s:1:"S";a:4:{s:1:"C";s:2:"83";s:2:"WX";s:3:"556";s:1:"N";s:1:"S";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-19";i:2;s:3:"513";i:3;s:3:"692";}}i:84;a:4:{s:1:"C";s:2:"84";s:2:"WX";s:3:"667";s:1:"N";s:1:"T";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:1:"0";i:2;s:3:"636";i:3;s:3:"676";}}s:1:"T";a:4:{s:1:"C";s:2:"84";s:2:"WX";s:3:"667";s:1:"N";s:1:"T";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:1:"0";i:2;s:3:"636";i:3;s:3:"676";}}i:85;a:4:{s:1:"C";s:2:"85";s:2:"WX";s:3:"722";s:1:"N";s:1:"U";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"-19";i:2;s:3:"701";i:3;s:3:"676";}}s:1:"U";a:4:{s:1:"C";s:2:"85";s:2:"WX";s:3:"722";s:1:"N";s:1:"U";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"-19";i:2;s:3:"701";i:3;s:3:"676";}}i:86;a:4:{s:1:"C";s:2:"86";s:2:"WX";s:3:"722";s:1:"N";s:1:"V";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"-18";i:2;s:3:"701";i:3;s:3:"676";}}s:1:"V";a:4:{s:1:"C";s:2:"86";s:2:"WX";s:3:"722";s:1:"N";s:1:"V";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"-18";i:2;s:3:"701";i:3;s:3:"676";}}i:87;a:4:{s:1:"C";s:2:"87";s:2:"WX";s:4:"1000";s:1:"N";s:1:"W";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:3:"-15";i:2;s:3:"981";i:3;s:3:"676";}}s:1:"W";a:4:{s:1:"C";s:2:"87";s:2:"WX";s:4:"1000";s:1:"N";s:1:"W";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:3:"-15";i:2;s:3:"981";i:3;s:3:"676";}}i:88;a:4:{s:1:"C";s:2:"88";s:2:"WX";s:3:"722";s:1:"N";s:1:"X";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"699";i:3;s:3:"676";}}s:1:"X";a:4:{s:1:"C";s:2:"88";s:2:"WX";s:3:"722";s:1:"N";s:1:"X";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"699";i:3;s:3:"676";}}i:89;a:4:{s:1:"C";s:2:"89";s:2:"WX";s:3:"722";s:1:"N";s:1:"Y";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:1:"0";i:2;s:3:"699";i:3;s:3:"676";}}s:1:"Y";a:4:{s:1:"C";s:2:"89";s:2:"WX";s:3:"722";s:1:"N";s:1:"Y";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:1:"0";i:2;s:3:"699";i:3;s:3:"676";}}i:90;a:4:{s:1:"C";s:2:"90";s:2:"WX";s:3:"667";s:1:"N";s:1:"Z";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:1:"0";i:2;s:3:"634";i:3;s:3:"676";}}s:1:"Z";a:4:{s:1:"C";s:2:"90";s:2:"WX";s:3:"667";s:1:"N";s:1:"Z";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:1:"0";i:2;s:3:"634";i:3;s:3:"676";}}i:91;a:4:{s:1:"C";s:2:"91";s:2:"WX";s:3:"333";s:1:"N";s:11:"bracketleft";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:4:"-149";i:2;s:3:"301";i:3;s:3:"678";}}s:11:"bracketleft";a:4:{s:1:"C";s:2:"91";s:2:"WX";s:3:"333";s:1:"N";s:11:"bracketleft";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:4:"-149";i:2;s:3:"301";i:3;s:3:"678";}}i:92;a:4:{s:1:"C";s:2:"92";s:2:"WX";s:3:"278";s:1:"N";s:9:"backslash";s:1:"B";a:4:{i:0;s:3:"-25";i:1;s:3:"-19";i:2;s:3:"303";i:3;s:3:"691";}}s:9:"backslash";a:4:{s:1:"C";s:2:"92";s:2:"WX";s:3:"278";s:1:"N";s:9:"backslash";s:1:"B";a:4:{i:0;s:3:"-25";i:1;s:3:"-19";i:2;s:3:"303";i:3;s:3:"691";}}i:93;a:4:{s:1:"C";s:2:"93";s:2:"WX";s:3:"333";s:1:"N";s:12:"bracketright";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:4:"-149";i:2;s:3:"266";i:3;s:3:"678";}}s:12:"bracketright";a:4:{s:1:"C";s:2:"93";s:2:"WX";s:3:"333";s:1:"N";s:12:"bracketright";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:4:"-149";i:2;s:3:"266";i:3;s:3:"678";}}i:94;a:4:{s:1:"C";s:2:"94";s:2:"WX";s:3:"581";s:1:"N";s:11:"asciicircum";s:1:"B";a:4:{i:0;s:2:"73";i:1;s:3:"311";i:2;s:3:"509";i:3;s:3:"676";}}s:11:"asciicircum";a:4:{s:1:"C";s:2:"94";s:2:"WX";s:3:"581";s:1:"N";s:11:"asciicircum";s:1:"B";a:4:{i:0;s:2:"73";i:1;s:3:"311";i:2;s:3:"509";i:3;s:3:"676";}}i:95;a:4:{s:1:"C";s:2:"95";s:2:"WX";s:3:"500";s:1:"N";s:10:"underscore";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:4:"-125";i:2;s:3:"500";i:3;s:3:"-75";}}s:10:"underscore";a:4:{s:1:"C";s:2:"95";s:2:"WX";s:3:"500";s:1:"N";s:10:"underscore";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:4:"-125";i:2;s:3:"500";i:3;s:3:"-75";}}i:96;a:4:{s:1:"C";s:2:"96";s:2:"WX";s:3:"333";s:1:"N";s:9:"quoteleft";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:3:"356";i:2;s:3:"254";i:3;s:3:"691";}}s:9:"quoteleft";a:4:{s:1:"C";s:2:"96";s:2:"WX";s:3:"333";s:1:"N";s:9:"quoteleft";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:3:"356";i:2;s:3:"254";i:3;s:3:"691";}}i:97;a:4:{s:1:"C";s:2:"97";s:2:"WX";s:3:"500";s:1:"N";s:1:"a";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-14";i:2;s:3:"488";i:3;s:3:"473";}}s:1:"a";a:4:{s:1:"C";s:2:"97";s:2:"WX";s:3:"500";s:1:"N";s:1:"a";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-14";i:2;s:3:"488";i:3;s:3:"473";}}i:98;a:4:{s:1:"C";s:2:"98";s:2:"WX";s:3:"556";s:1:"N";s:1:"b";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:3:"-14";i:2;s:3:"521";i:3;s:3:"676";}}s:1:"b";a:4:{s:1:"C";s:2:"98";s:2:"WX";s:3:"556";s:1:"N";s:1:"b";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:3:"-14";i:2;s:3:"521";i:3;s:3:"676";}}i:99;a:4:{s:1:"C";s:2:"99";s:2:"WX";s:3:"444";s:1:"N";s:1:"c";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-14";i:2;s:3:"430";i:3;s:3:"473";}}s:1:"c";a:4:{s:1:"C";s:2:"99";s:2:"WX";s:3:"444";s:1:"N";s:1:"c";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-14";i:2;s:3:"430";i:3;s:3:"473";}}i:100;a:4:{s:1:"C";s:3:"100";s:2:"WX";s:3:"556";s:1:"N";s:1:"d";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-14";i:2;s:3:"534";i:3;s:3:"676";}}s:1:"d";a:4:{s:1:"C";s:3:"100";s:2:"WX";s:3:"556";s:1:"N";s:1:"d";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-14";i:2;s:3:"534";i:3;s:3:"676";}}i:101;a:4:{s:1:"C";s:3:"101";s:2:"WX";s:3:"444";s:1:"N";s:1:"e";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-14";i:2;s:3:"426";i:3;s:3:"473";}}s:1:"e";a:4:{s:1:"C";s:3:"101";s:2:"WX";s:3:"444";s:1:"N";s:1:"e";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-14";i:2;s:3:"426";i:3;s:3:"473";}}i:102;a:5:{s:1:"C";s:3:"102";s:2:"WX";s:3:"333";s:1:"N";s:1:"f";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"389";i:3;s:3:"691";}s:1:"L";a:2:{i:0;s:1:"l";i:1;s:2:"fl";}}s:1:"f";a:5:{s:1:"C";s:3:"102";s:2:"WX";s:3:"333";s:1:"N";s:1:"f";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"389";i:3;s:3:"691";}s:1:"L";a:2:{i:0;s:1:"l";i:1;s:2:"fl";}}i:103;a:4:{s:1:"C";s:3:"103";s:2:"WX";s:3:"500";s:1:"N";s:1:"g";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:4:"-206";i:2;s:3:"483";i:3;s:3:"473";}}s:1:"g";a:4:{s:1:"C";s:3:"103";s:2:"WX";s:3:"500";s:1:"N";s:1:"g";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:4:"-206";i:2;s:3:"483";i:3;s:3:"473";}}i:104;a:4:{s:1:"C";s:3:"104";s:2:"WX";s:3:"556";s:1:"N";s:1:"h";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"534";i:3;s:3:"676";}}s:1:"h";a:4:{s:1:"C";s:3:"104";s:2:"WX";s:3:"556";s:1:"N";s:1:"h";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"534";i:3;s:3:"676";}}i:105;a:4:{s:1:"C";s:3:"105";s:2:"WX";s:3:"278";s:1:"N";s:1:"i";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"255";i:3;s:3:"691";}}s:1:"i";a:4:{s:1:"C";s:3:"105";s:2:"WX";s:3:"278";s:1:"N";s:1:"i";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"255";i:3;s:3:"691";}}i:106;a:4:{s:1:"C";s:3:"106";s:2:"WX";s:3:"333";s:1:"N";s:1:"j";s:1:"B";a:4:{i:0;s:3:"-57";i:1;s:4:"-203";i:2;s:3:"263";i:3;s:3:"691";}}s:1:"j";a:4:{s:1:"C";s:3:"106";s:2:"WX";s:3:"333";s:1:"N";s:1:"j";s:1:"B";a:4:{i:0;s:3:"-57";i:1;s:4:"-203";i:2;s:3:"263";i:3;s:3:"691";}}i:107;a:4:{s:1:"C";s:3:"107";s:2:"WX";s:3:"556";s:1:"N";s:1:"k";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:1:"0";i:2;s:3:"543";i:3;s:3:"676";}}s:1:"k";a:4:{s:1:"C";s:3:"107";s:2:"WX";s:3:"556";s:1:"N";s:1:"k";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:1:"0";i:2;s:3:"543";i:3;s:3:"676";}}i:108;a:4:{s:1:"C";s:3:"108";s:2:"WX";s:3:"278";s:1:"N";s:1:"l";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"255";i:3;s:3:"676";}}s:1:"l";a:4:{s:1:"C";s:3:"108";s:2:"WX";s:3:"278";s:1:"N";s:1:"l";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"255";i:3;s:3:"676";}}i:109;a:4:{s:1:"C";s:3:"109";s:2:"WX";s:3:"833";s:1:"N";s:1:"m";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"814";i:3;s:3:"473";}}s:1:"m";a:4:{s:1:"C";s:3:"109";s:2:"WX";s:3:"833";s:1:"N";s:1:"m";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"814";i:3;s:3:"473";}}i:110;a:4:{s:1:"C";s:3:"110";s:2:"WX";s:3:"556";s:1:"N";s:1:"n";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:1:"0";i:2;s:3:"539";i:3;s:3:"473";}}s:1:"n";a:4:{s:1:"C";s:3:"110";s:2:"WX";s:3:"556";s:1:"N";s:1:"n";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:1:"0";i:2;s:3:"539";i:3;s:3:"473";}}i:111;a:4:{s:1:"C";s:3:"111";s:2:"WX";s:3:"500";s:1:"N";s:1:"o";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-14";i:2;s:3:"476";i:3;s:3:"473";}}s:1:"o";a:4:{s:1:"C";s:3:"111";s:2:"WX";s:3:"500";s:1:"N";s:1:"o";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-14";i:2;s:3:"476";i:3;s:3:"473";}}i:112;a:4:{s:1:"C";s:3:"112";s:2:"WX";s:3:"556";s:1:"N";s:1:"p";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:4:"-205";i:2;s:3:"524";i:3;s:3:"473";}}s:1:"p";a:4:{s:1:"C";s:3:"112";s:2:"WX";s:3:"556";s:1:"N";s:1:"p";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:4:"-205";i:2;s:3:"524";i:3;s:3:"473";}}i:113;a:4:{s:1:"C";s:3:"113";s:2:"WX";s:3:"556";s:1:"N";s:1:"q";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:4:"-205";i:2;s:3:"536";i:3;s:3:"473";}}s:1:"q";a:4:{s:1:"C";s:3:"113";s:2:"WX";s:3:"556";s:1:"N";s:1:"q";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:4:"-205";i:2;s:3:"536";i:3;s:3:"473";}}i:114;a:4:{s:1:"C";s:3:"114";s:2:"WX";s:3:"444";s:1:"N";s:1:"r";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:1:"0";i:2;s:3:"434";i:3;s:3:"473";}}s:1:"r";a:4:{s:1:"C";s:3:"114";s:2:"WX";s:3:"444";s:1:"N";s:1:"r";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:1:"0";i:2;s:3:"434";i:3;s:3:"473";}}i:115;a:4:{s:1:"C";s:3:"115";s:2:"WX";s:3:"389";s:1:"N";s:1:"s";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-14";i:2;s:3:"361";i:3;s:3:"473";}}s:1:"s";a:4:{s:1:"C";s:3:"115";s:2:"WX";s:3:"389";s:1:"N";s:1:"s";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-14";i:2;s:3:"361";i:3;s:3:"473";}}i:116;a:4:{s:1:"C";s:3:"116";s:2:"WX";s:3:"333";s:1:"N";s:1:"t";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:3:"-12";i:2;s:3:"332";i:3;s:3:"630";}}s:1:"t";a:4:{s:1:"C";s:3:"116";s:2:"WX";s:3:"333";s:1:"N";s:1:"t";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:3:"-12";i:2;s:3:"332";i:3;s:3:"630";}}i:117;a:4:{s:1:"C";s:3:"117";s:2:"WX";s:3:"556";s:1:"N";s:1:"u";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"-14";i:2;s:3:"537";i:3;s:3:"461";}}s:1:"u";a:4:{s:1:"C";s:3:"117";s:2:"WX";s:3:"556";s:1:"N";s:1:"u";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"-14";i:2;s:3:"537";i:3;s:3:"461";}}i:118;a:4:{s:1:"C";s:3:"118";s:2:"WX";s:3:"500";s:1:"N";s:1:"v";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:3:"-14";i:2;s:3:"485";i:3;s:3:"461";}}s:1:"v";a:4:{s:1:"C";s:3:"118";s:2:"WX";s:3:"500";s:1:"N";s:1:"v";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:3:"-14";i:2;s:3:"485";i:3;s:3:"461";}}i:119;a:4:{s:1:"C";s:3:"119";s:2:"WX";s:3:"722";s:1:"N";s:1:"w";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:3:"-14";i:2;s:3:"707";i:3;s:3:"461";}}s:1:"w";a:4:{s:1:"C";s:3:"119";s:2:"WX";s:3:"722";s:1:"N";s:1:"w";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:3:"-14";i:2;s:3:"707";i:3;s:3:"461";}}i:120;a:4:{s:1:"C";s:3:"120";s:2:"WX";s:3:"500";s:1:"N";s:1:"x";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:1:"0";i:2;s:3:"484";i:3;s:3:"461";}}s:1:"x";a:4:{s:1:"C";s:3:"120";s:2:"WX";s:3:"500";s:1:"N";s:1:"x";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:1:"0";i:2;s:3:"484";i:3;s:3:"461";}}i:121;a:4:{s:1:"C";s:3:"121";s:2:"WX";s:3:"500";s:1:"N";s:1:"y";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:4:"-205";i:2;s:3:"480";i:3;s:3:"461";}}s:1:"y";a:4:{s:1:"C";s:3:"121";s:2:"WX";s:3:"500";s:1:"N";s:1:"y";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:4:"-205";i:2;s:3:"480";i:3;s:3:"461";}}i:122;a:4:{s:1:"C";s:3:"122";s:2:"WX";s:3:"444";s:1:"N";s:1:"z";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:1:"0";i:2;s:3:"420";i:3;s:3:"461";}}s:1:"z";a:4:{s:1:"C";s:3:"122";s:2:"WX";s:3:"444";s:1:"N";s:1:"z";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:1:"0";i:2;s:3:"420";i:3;s:3:"461";}}i:123;a:4:{s:1:"C";s:3:"123";s:2:"WX";s:3:"394";s:1:"N";s:9:"braceleft";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:4:"-175";i:2;s:3:"340";i:3;s:3:"698";}}s:9:"braceleft";a:4:{s:1:"C";s:3:"123";s:2:"WX";s:3:"394";s:1:"N";s:9:"braceleft";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:4:"-175";i:2;s:3:"340";i:3;s:3:"698";}}i:124;a:4:{s:1:"C";s:3:"124";s:2:"WX";s:3:"220";s:1:"N";s:3:"bar";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:4:"-218";i:2;s:3:"154";i:3;s:3:"782";}}s:3:"bar";a:4:{s:1:"C";s:3:"124";s:2:"WX";s:3:"220";s:1:"N";s:3:"bar";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:4:"-218";i:2;s:3:"154";i:3;s:3:"782";}}i:125;a:4:{s:1:"C";s:3:"125";s:2:"WX";s:3:"394";s:1:"N";s:10:"braceright";s:1:"B";a:4:{i:0;s:2:"54";i:1;s:4:"-175";i:2;s:3:"372";i:3;s:3:"698";}}s:10:"braceright";a:4:{s:1:"C";s:3:"125";s:2:"WX";s:3:"394";s:1:"N";s:10:"braceright";s:1:"B";a:4:{i:0;s:2:"54";i:1;s:4:"-175";i:2;s:3:"372";i:3;s:3:"698";}}i:126;a:4:{s:1:"C";s:3:"126";s:2:"WX";s:3:"520";s:1:"N";s:10:"asciitilde";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:3:"173";i:2;s:3:"491";i:3;s:3:"333";}}s:10:"asciitilde";a:4:{s:1:"C";s:3:"126";s:2:"WX";s:3:"520";s:1:"N";s:10:"asciitilde";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:3:"173";i:2;s:3:"491";i:3;s:3:"333";}}i:161;a:4:{s:1:"C";s:3:"161";s:2:"WX";s:3:"333";s:1:"N";s:10:"exclamdown";s:1:"B";a:4:{i:0;s:2:"82";i:1;s:4:"-203";i:2;s:3:"252";i:3;s:3:"501";}}s:10:"exclamdown";a:4:{s:1:"C";s:3:"161";s:2:"WX";s:3:"333";s:1:"N";s:10:"exclamdown";s:1:"B";a:4:{i:0;s:2:"82";i:1;s:4:"-203";i:2;s:3:"252";i:3;s:3:"501";}}i:162;a:4:{s:1:"C";s:3:"162";s:2:"WX";s:3:"500";s:1:"N";s:4:"cent";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:4:"-140";i:2;s:3:"458";i:3;s:3:"588";}}s:4:"cent";a:4:{s:1:"C";s:3:"162";s:2:"WX";s:3:"500";s:1:"N";s:4:"cent";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:4:"-140";i:2;s:3:"458";i:3;s:3:"588";}}i:163;a:4:{s:1:"C";s:3:"163";s:2:"WX";s:3:"500";s:1:"N";s:8:"sterling";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:3:"-14";i:2;s:3:"477";i:3;s:3:"684";}}s:8:"sterling";a:4:{s:1:"C";s:3:"163";s:2:"WX";s:3:"500";s:1:"N";s:8:"sterling";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:3:"-14";i:2;s:3:"477";i:3;s:3:"684";}}i:164;a:4:{s:1:"C";s:3:"164";s:2:"WX";s:3:"167";s:1:"N";s:8:"fraction";s:1:"B";a:4:{i:0;s:4:"-168";i:1;s:3:"-12";i:2;s:3:"329";i:3;s:3:"688";}}s:8:"fraction";a:4:{s:1:"C";s:3:"164";s:2:"WX";s:3:"167";s:1:"N";s:8:"fraction";s:1:"B";a:4:{i:0;s:4:"-168";i:1;s:3:"-12";i:2;s:3:"329";i:3;s:3:"688";}}i:165;a:4:{s:1:"C";s:3:"165";s:2:"WX";s:3:"500";s:1:"N";s:3:"yen";s:1:"B";a:4:{i:0;s:3:"-64";i:1;s:1:"0";i:2;s:3:"547";i:3;s:3:"676";}}s:3:"yen";a:4:{s:1:"C";s:3:"165";s:2:"WX";s:3:"500";s:1:"N";s:3:"yen";s:1:"B";a:4:{i:0;s:3:"-64";i:1;s:1:"0";i:2;s:3:"547";i:3;s:3:"676";}}i:166;a:4:{s:1:"C";s:3:"166";s:2:"WX";s:3:"500";s:1:"N";s:6:"florin";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:4:"-155";i:2;s:3:"498";i:3;s:3:"706";}}s:6:"florin";a:4:{s:1:"C";s:3:"166";s:2:"WX";s:3:"500";s:1:"N";s:6:"florin";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:4:"-155";i:2;s:3:"498";i:3;s:3:"706";}}i:167;a:4:{s:1:"C";s:3:"167";s:2:"WX";s:3:"500";s:1:"N";s:7:"section";s:1:"B";a:4:{i:0;s:2:"57";i:1;s:4:"-132";i:2;s:3:"443";i:3;s:3:"691";}}s:7:"section";a:4:{s:1:"C";s:3:"167";s:2:"WX";s:3:"500";s:1:"N";s:7:"section";s:1:"B";a:4:{i:0;s:2:"57";i:1;s:4:"-132";i:2;s:3:"443";i:3;s:3:"691";}}i:168;a:4:{s:1:"C";s:3:"168";s:2:"WX";s:3:"500";s:1:"N";s:8:"currency";s:1:"B";a:4:{i:0;s:3:"-26";i:1;s:2:"61";i:2;s:3:"526";i:3;s:3:"613";}}s:8:"currency";a:4:{s:1:"C";s:3:"168";s:2:"WX";s:3:"500";s:1:"N";s:8:"currency";s:1:"B";a:4:{i:0;s:3:"-26";i:1;s:2:"61";i:2;s:3:"526";i:3;s:3:"613";}}i:169;a:4:{s:1:"C";s:3:"169";s:2:"WX";s:3:"278";s:1:"N";s:11:"quotesingle";s:1:"B";a:4:{i:0;s:2:"75";i:1;s:3:"404";i:2;s:3:"204";i:3;s:3:"691";}}s:11:"quotesingle";a:4:{s:1:"C";s:3:"169";s:2:"WX";s:3:"278";s:1:"N";s:11:"quotesingle";s:1:"B";a:4:{i:0;s:2:"75";i:1;s:3:"404";i:2;s:3:"204";i:3;s:3:"691";}}i:170;a:4:{s:1:"C";s:3:"170";s:2:"WX";s:3:"500";s:1:"N";s:12:"quotedblleft";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:3:"356";i:2;s:3:"486";i:3;s:3:"691";}}s:12:"quotedblleft";a:4:{s:1:"C";s:3:"170";s:2:"WX";s:3:"500";s:1:"N";s:12:"quotedblleft";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:3:"356";i:2;s:3:"486";i:3;s:3:"691";}}i:171;a:4:{s:1:"C";s:3:"171";s:2:"WX";s:3:"500";s:1:"N";s:13:"guillemotleft";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:2:"36";i:2;s:3:"473";i:3;s:3:"415";}}s:13:"guillemotleft";a:4:{s:1:"C";s:3:"171";s:2:"WX";s:3:"500";s:1:"N";s:13:"guillemotleft";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:2:"36";i:2;s:3:"473";i:3;s:3:"415";}}i:172;a:4:{s:1:"C";s:3:"172";s:2:"WX";s:3:"333";s:1:"N";s:13:"guilsinglleft";s:1:"B";a:4:{i:0;s:2:"51";i:1;s:2:"36";i:2;s:3:"305";i:3;s:3:"415";}}s:13:"guilsinglleft";a:4:{s:1:"C";s:3:"172";s:2:"WX";s:3:"333";s:1:"N";s:13:"guilsinglleft";s:1:"B";a:4:{i:0;s:2:"51";i:1;s:2:"36";i:2;s:3:"305";i:3;s:3:"415";}}i:173;a:4:{s:1:"C";s:3:"173";s:2:"WX";s:3:"333";s:1:"N";s:14:"guilsinglright";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:2:"36";i:2;s:3:"282";i:3;s:3:"415";}}s:14:"guilsinglright";a:4:{s:1:"C";s:3:"173";s:2:"WX";s:3:"333";s:1:"N";s:14:"guilsinglright";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:2:"36";i:2;s:3:"282";i:3;s:3:"415";}}i:174;a:4:{s:1:"C";s:3:"174";s:2:"WX";s:3:"556";s:1:"N";s:2:"fi";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"536";i:3;s:3:"691";}}s:2:"fi";a:4:{s:1:"C";s:3:"174";s:2:"WX";s:3:"556";s:1:"N";s:2:"fi";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"536";i:3;s:3:"691";}}i:175;a:4:{s:1:"C";s:3:"175";s:2:"WX";s:3:"556";s:1:"N";s:2:"fl";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"536";i:3;s:3:"691";}}s:2:"fl";a:4:{s:1:"C";s:3:"175";s:2:"WX";s:3:"556";s:1:"N";s:2:"fl";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"536";i:3;s:3:"691";}}i:177;a:4:{s:1:"C";s:3:"177";s:2:"WX";s:3:"500";s:1:"N";s:6:"endash";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"181";i:2;s:3:"500";i:3;s:3:"271";}}s:6:"endash";a:4:{s:1:"C";s:3:"177";s:2:"WX";s:3:"500";s:1:"N";s:6:"endash";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"181";i:2;s:3:"500";i:3;s:3:"271";}}i:178;a:4:{s:1:"C";s:3:"178";s:2:"WX";s:3:"500";s:1:"N";s:6:"dagger";s:1:"B";a:4:{i:0;s:2:"47";i:1;s:4:"-134";i:2;s:3:"453";i:3;s:3:"691";}}s:6:"dagger";a:4:{s:1:"C";s:3:"178";s:2:"WX";s:3:"500";s:1:"N";s:6:"dagger";s:1:"B";a:4:{i:0;s:2:"47";i:1;s:4:"-134";i:2;s:3:"453";i:3;s:3:"691";}}i:179;a:4:{s:1:"C";s:3:"179";s:2:"WX";s:3:"500";s:1:"N";s:9:"daggerdbl";s:1:"B";a:4:{i:0;s:2:"45";i:1;s:4:"-132";i:2;s:3:"456";i:3;s:3:"691";}}s:9:"daggerdbl";a:4:{s:1:"C";s:3:"179";s:2:"WX";s:3:"500";s:1:"N";s:9:"daggerdbl";s:1:"B";a:4:{i:0;s:2:"45";i:1;s:4:"-132";i:2;s:3:"456";i:3;s:3:"691";}}i:180;a:4:{s:1:"C";s:3:"180";s:2:"WX";s:3:"250";s:1:"N";s:14:"periodcentered";s:1:"B";a:4:{i:0;s:2:"41";i:1;s:3:"248";i:2;s:3:"210";i:3;s:3:"417";}}s:14:"periodcentered";a:4:{s:1:"C";s:3:"180";s:2:"WX";s:3:"250";s:1:"N";s:14:"periodcentered";s:1:"B";a:4:{i:0;s:2:"41";i:1;s:3:"248";i:2;s:3:"210";i:3;s:3:"417";}}i:182;a:4:{s:1:"C";s:3:"182";s:2:"WX";s:3:"540";s:1:"N";s:9:"paragraph";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:4:"-186";i:2;s:3:"519";i:3;s:3:"676";}}s:9:"paragraph";a:4:{s:1:"C";s:3:"182";s:2:"WX";s:3:"540";s:1:"N";s:9:"paragraph";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:4:"-186";i:2;s:3:"519";i:3;s:3:"676";}}i:183;a:4:{s:1:"C";s:3:"183";s:2:"WX";s:3:"350";s:1:"N";s:6:"bullet";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"198";i:2;s:3:"315";i:3;s:3:"478";}}s:6:"bullet";a:4:{s:1:"C";s:3:"183";s:2:"WX";s:3:"350";s:1:"N";s:6:"bullet";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"198";i:2;s:3:"315";i:3;s:3:"478";}}i:184;a:4:{s:1:"C";s:3:"184";s:2:"WX";s:3:"333";s:1:"N";s:14:"quotesinglbase";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:4:"-180";i:2;s:3:"263";i:3;s:3:"155";}}s:14:"quotesinglbase";a:4:{s:1:"C";s:3:"184";s:2:"WX";s:3:"333";s:1:"N";s:14:"quotesinglbase";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:4:"-180";i:2;s:3:"263";i:3;s:3:"155";}}i:185;a:4:{s:1:"C";s:3:"185";s:2:"WX";s:3:"500";s:1:"N";s:12:"quotedblbase";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:4:"-180";i:2;s:3:"468";i:3;s:3:"155";}}s:12:"quotedblbase";a:4:{s:1:"C";s:3:"185";s:2:"WX";s:3:"500";s:1:"N";s:12:"quotedblbase";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:4:"-180";i:2;s:3:"468";i:3;s:3:"155";}}i:186;a:4:{s:1:"C";s:3:"186";s:2:"WX";s:3:"500";s:1:"N";s:13:"quotedblright";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:3:"356";i:2;s:3:"468";i:3;s:3:"691";}}s:13:"quotedblright";a:4:{s:1:"C";s:3:"186";s:2:"WX";s:3:"500";s:1:"N";s:13:"quotedblright";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:3:"356";i:2;s:3:"468";i:3;s:3:"691";}}i:187;a:4:{s:1:"C";s:3:"187";s:2:"WX";s:3:"500";s:1:"N";s:14:"guillemotright";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:2:"36";i:2;s:3:"477";i:3;s:3:"415";}}s:14:"guillemotright";a:4:{s:1:"C";s:3:"187";s:2:"WX";s:3:"500";s:1:"N";s:14:"guillemotright";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:2:"36";i:2;s:3:"477";i:3;s:3:"415";}}i:188;a:4:{s:1:"C";s:3:"188";s:2:"WX";s:4:"1000";s:1:"N";s:8:"ellipsis";s:1:"B";a:4:{i:0;s:2:"82";i:1;s:3:"-13";i:2;s:3:"917";i:3;s:3:"156";}}s:8:"ellipsis";a:4:{s:1:"C";s:3:"188";s:2:"WX";s:4:"1000";s:1:"N";s:8:"ellipsis";s:1:"B";a:4:{i:0;s:2:"82";i:1;s:3:"-13";i:2;s:3:"917";i:3;s:3:"156";}}i:189;a:4:{s:1:"C";s:3:"189";s:2:"WX";s:4:"1000";s:1:"N";s:11:"perthousand";s:1:"B";a:4:{i:0;s:1:"7";i:1;s:3:"-29";i:2;s:3:"995";i:3;s:3:"706";}}s:11:"perthousand";a:4:{s:1:"C";s:3:"189";s:2:"WX";s:4:"1000";s:1:"N";s:11:"perthousand";s:1:"B";a:4:{i:0;s:1:"7";i:1;s:3:"-29";i:2;s:3:"995";i:3;s:3:"706";}}i:191;a:4:{s:1:"C";s:3:"191";s:2:"WX";s:3:"500";s:1:"N";s:12:"questiondown";s:1:"B";a:4:{i:0;s:2:"55";i:1;s:4:"-201";i:2;s:3:"443";i:3;s:3:"501";}}s:12:"questiondown";a:4:{s:1:"C";s:3:"191";s:2:"WX";s:3:"500";s:1:"N";s:12:"questiondown";s:1:"B";a:4:{i:0;s:2:"55";i:1;s:4:"-201";i:2;s:3:"443";i:3;s:3:"501";}}i:193;a:4:{s:1:"C";s:3:"193";s:2:"WX";s:3:"333";s:1:"N";s:5:"grave";s:1:"B";a:4:{i:0;s:1:"8";i:1;s:3:"528";i:2;s:3:"246";i:3;s:3:"713";}}s:5:"grave";a:4:{s:1:"C";s:3:"193";s:2:"WX";s:3:"333";s:1:"N";s:5:"grave";s:1:"B";a:4:{i:0;s:1:"8";i:1;s:3:"528";i:2;s:3:"246";i:3;s:3:"713";}}i:194;a:4:{s:1:"C";s:3:"194";s:2:"WX";s:3:"333";s:1:"N";s:5:"acute";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:3:"528";i:2;s:3:"324";i:3;s:3:"713";}}s:5:"acute";a:4:{s:1:"C";s:3:"194";s:2:"WX";s:3:"333";s:1:"N";s:5:"acute";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:3:"528";i:2;s:3:"324";i:3;s:3:"713";}}i:195;a:4:{s:1:"C";s:3:"195";s:2:"WX";s:3:"333";s:1:"N";s:10:"circumflex";s:1:"B";a:4:{i:0;s:2:"-2";i:1;s:3:"528";i:2;s:3:"335";i:3;s:3:"704";}}s:10:"circumflex";a:4:{s:1:"C";s:3:"195";s:2:"WX";s:3:"333";s:1:"N";s:10:"circumflex";s:1:"B";a:4:{i:0;s:2:"-2";i:1;s:3:"528";i:2;s:3:"335";i:3;s:3:"704";}}i:196;a:4:{s:1:"C";s:3:"196";s:2:"WX";s:3:"333";s:1:"N";s:5:"tilde";s:1:"B";a:4:{i:0;s:3:"-16";i:1;s:3:"547";i:2;s:3:"349";i:3;s:3:"674";}}s:5:"tilde";a:4:{s:1:"C";s:3:"196";s:2:"WX";s:3:"333";s:1:"N";s:5:"tilde";s:1:"B";a:4:{i:0;s:3:"-16";i:1;s:3:"547";i:2;s:3:"349";i:3;s:3:"674";}}i:197;a:4:{s:1:"C";s:3:"197";s:2:"WX";s:3:"333";s:1:"N";s:6:"macron";s:1:"B";a:4:{i:0;s:1:"1";i:1;s:3:"565";i:2;s:3:"331";i:3;s:3:"637";}}s:6:"macron";a:4:{s:1:"C";s:3:"197";s:2:"WX";s:3:"333";s:1:"N";s:6:"macron";s:1:"B";a:4:{i:0;s:1:"1";i:1;s:3:"565";i:2;s:3:"331";i:3;s:3:"637";}}i:198;a:4:{s:1:"C";s:3:"198";s:2:"WX";s:3:"333";s:1:"N";s:5:"breve";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:3:"528";i:2;s:3:"318";i:3;s:3:"691";}}s:5:"breve";a:4:{s:1:"C";s:3:"198";s:2:"WX";s:3:"333";s:1:"N";s:5:"breve";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:3:"528";i:2;s:3:"318";i:3;s:3:"691";}}i:199;a:4:{s:1:"C";s:3:"199";s:2:"WX";s:3:"333";s:1:"N";s:9:"dotaccent";s:1:"B";a:4:{i:0;s:3:"103";i:1;s:3:"536";i:2;s:3:"258";i:3;s:3:"691";}}s:9:"dotaccent";a:4:{s:1:"C";s:3:"199";s:2:"WX";s:3:"333";s:1:"N";s:9:"dotaccent";s:1:"B";a:4:{i:0;s:3:"103";i:1;s:3:"536";i:2;s:3:"258";i:3;s:3:"691";}}i:200;a:4:{s:1:"C";s:3:"200";s:2:"WX";s:3:"333";s:1:"N";s:8:"dieresis";s:1:"B";a:4:{i:0;s:2:"-2";i:1;s:3:"537";i:2;s:3:"335";i:3;s:3:"667";}}s:8:"dieresis";a:4:{s:1:"C";s:3:"200";s:2:"WX";s:3:"333";s:1:"N";s:8:"dieresis";s:1:"B";a:4:{i:0;s:2:"-2";i:1;s:3:"537";i:2;s:3:"335";i:3;s:3:"667";}}i:202;a:4:{s:1:"C";s:3:"202";s:2:"WX";s:3:"333";s:1:"N";s:4:"ring";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:3:"527";i:2;s:3:"273";i:3;s:3:"740";}}s:4:"ring";a:4:{s:1:"C";s:3:"202";s:2:"WX";s:3:"333";s:1:"N";s:4:"ring";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:3:"527";i:2;s:3:"273";i:3;s:3:"740";}}i:203;a:4:{s:1:"C";s:3:"203";s:2:"WX";s:3:"333";s:1:"N";s:7:"cedilla";s:1:"B";a:4:{i:0;s:2:"68";i:1;s:4:"-218";i:2;s:3:"294";i:3;s:1:"0";}}s:7:"cedilla";a:4:{s:1:"C";s:3:"203";s:2:"WX";s:3:"333";s:1:"N";s:7:"cedilla";s:1:"B";a:4:{i:0;s:2:"68";i:1;s:4:"-218";i:2;s:3:"294";i:3;s:1:"0";}}i:205;a:4:{s:1:"C";s:3:"205";s:2:"WX";s:3:"333";s:1:"N";s:12:"hungarumlaut";s:1:"B";a:4:{i:0;s:3:"-13";i:1;s:3:"528";i:2;s:3:"425";i:3;s:3:"713";}}s:12:"hungarumlaut";a:4:{s:1:"C";s:3:"205";s:2:"WX";s:3:"333";s:1:"N";s:12:"hungarumlaut";s:1:"B";a:4:{i:0;s:3:"-13";i:1;s:3:"528";i:2;s:3:"425";i:3;s:3:"713";}}i:206;a:4:{s:1:"C";s:3:"206";s:2:"WX";s:3:"333";s:1:"N";s:6:"ogonek";s:1:"B";a:4:{i:0;s:2:"90";i:1;s:4:"-193";i:2;s:3:"319";i:3;s:2:"24";}}s:6:"ogonek";a:4:{s:1:"C";s:3:"206";s:2:"WX";s:3:"333";s:1:"N";s:6:"ogonek";s:1:"B";a:4:{i:0;s:2:"90";i:1;s:4:"-193";i:2;s:3:"319";i:3;s:2:"24";}}i:207;a:4:{s:1:"C";s:3:"207";s:2:"WX";s:3:"333";s:1:"N";s:5:"caron";s:1:"B";a:4:{i:0;s:2:"-2";i:1;s:3:"528";i:2;s:3:"335";i:3;s:3:"704";}}s:5:"caron";a:4:{s:1:"C";s:3:"207";s:2:"WX";s:3:"333";s:1:"N";s:5:"caron";s:1:"B";a:4:{i:0;s:2:"-2";i:1;s:3:"528";i:2;s:3:"335";i:3;s:3:"704";}}i:208;a:4:{s:1:"C";s:3:"208";s:2:"WX";s:4:"1000";s:1:"N";s:6:"emdash";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"181";i:2;s:4:"1000";i:3;s:3:"271";}}s:6:"emdash";a:4:{s:1:"C";s:3:"208";s:2:"WX";s:4:"1000";s:1:"N";s:6:"emdash";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"181";i:2;s:4:"1000";i:3;s:3:"271";}}i:225;a:4:{s:1:"C";s:3:"225";s:2:"WX";s:4:"1000";s:1:"N";s:2:"AE";s:1:"B";a:4:{i:0;s:1:"4";i:1;s:1:"0";i:2;s:3:"951";i:3;s:3:"676";}}s:2:"AE";a:4:{s:1:"C";s:3:"225";s:2:"WX";s:4:"1000";s:1:"N";s:2:"AE";s:1:"B";a:4:{i:0;s:1:"4";i:1;s:1:"0";i:2;s:3:"951";i:3;s:3:"676";}}i:227;a:4:{s:1:"C";s:3:"227";s:2:"WX";s:3:"300";s:1:"N";s:11:"ordfeminine";s:1:"B";a:4:{i:0;s:2:"-1";i:1;s:3:"397";i:2;s:3:"301";i:3;s:3:"688";}}s:11:"ordfeminine";a:4:{s:1:"C";s:3:"227";s:2:"WX";s:3:"300";s:1:"N";s:11:"ordfeminine";s:1:"B";a:4:{i:0;s:2:"-1";i:1;s:3:"397";i:2;s:3:"301";i:3;s:3:"688";}}i:232;a:4:{s:1:"C";s:3:"232";s:2:"WX";s:3:"667";s:1:"N";s:6:"Lslash";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:1:"0";i:2;s:3:"638";i:3;s:3:"676";}}s:6:"Lslash";a:4:{s:1:"C";s:3:"232";s:2:"WX";s:3:"667";s:1:"N";s:6:"Lslash";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:1:"0";i:2;s:3:"638";i:3;s:3:"676";}}i:233;a:4:{s:1:"C";s:3:"233";s:2:"WX";s:3:"778";s:1:"N";s:6:"Oslash";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-74";i:2;s:3:"743";i:3;s:3:"737";}}s:6:"Oslash";a:4:{s:1:"C";s:3:"233";s:2:"WX";s:3:"778";s:1:"N";s:6:"Oslash";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-74";i:2;s:3:"743";i:3;s:3:"737";}}i:234;a:4:{s:1:"C";s:3:"234";s:2:"WX";s:4:"1000";s:1:"N";s:2:"OE";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:2:"-5";i:2;s:3:"981";i:3;s:3:"684";}}s:2:"OE";a:4:{s:1:"C";s:3:"234";s:2:"WX";s:4:"1000";s:1:"N";s:2:"OE";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:2:"-5";i:2;s:3:"981";i:3;s:3:"684";}}i:235;a:4:{s:1:"C";s:3:"235";s:2:"WX";s:3:"330";s:1:"N";s:12:"ordmasculine";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:3:"397";i:2;s:3:"312";i:3;s:3:"688";}}s:12:"ordmasculine";a:4:{s:1:"C";s:3:"235";s:2:"WX";s:3:"330";s:1:"N";s:12:"ordmasculine";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:3:"397";i:2;s:3:"312";i:3;s:3:"688";}}i:241;a:4:{s:1:"C";s:3:"241";s:2:"WX";s:3:"722";s:1:"N";s:2:"ae";s:1:"B";a:4:{i:0;s:2:"33";i:1;s:3:"-14";i:2;s:3:"693";i:3;s:3:"473";}}s:2:"ae";a:4:{s:1:"C";s:3:"241";s:2:"WX";s:3:"722";s:1:"N";s:2:"ae";s:1:"B";a:4:{i:0;s:2:"33";i:1;s:3:"-14";i:2;s:3:"693";i:3;s:3:"473";}}i:245;a:4:{s:1:"C";s:3:"245";s:2:"WX";s:3:"278";s:1:"N";s:8:"dotlessi";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"255";i:3;s:3:"461";}}s:8:"dotlessi";a:4:{s:1:"C";s:3:"245";s:2:"WX";s:3:"278";s:1:"N";s:8:"dotlessi";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"255";i:3;s:3:"461";}}i:248;a:4:{s:1:"C";s:3:"248";s:2:"WX";s:3:"278";s:1:"N";s:6:"lslash";s:1:"B";a:4:{i:0;s:3:"-22";i:1;s:1:"0";i:2;s:3:"303";i:3;s:3:"676";}}s:6:"lslash";a:4:{s:1:"C";s:3:"248";s:2:"WX";s:3:"278";s:1:"N";s:6:"lslash";s:1:"B";a:4:{i:0;s:3:"-22";i:1;s:1:"0";i:2;s:3:"303";i:3;s:3:"676";}}i:249;a:4:{s:1:"C";s:3:"249";s:2:"WX";s:3:"500";s:1:"N";s:6:"oslash";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-92";i:2;s:3:"476";i:3;s:3:"549";}}s:6:"oslash";a:4:{s:1:"C";s:3:"249";s:2:"WX";s:3:"500";s:1:"N";s:6:"oslash";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-92";i:2;s:3:"476";i:3;s:3:"549";}}i:250;a:4:{s:1:"C";s:3:"250";s:2:"WX";s:3:"722";s:1:"N";s:2:"oe";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:3:"-14";i:2;s:3:"696";i:3;s:3:"473";}}s:2:"oe";a:4:{s:1:"C";s:3:"250";s:2:"WX";s:3:"722";s:1:"N";s:2:"oe";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:3:"-14";i:2;s:3:"696";i:3;s:3:"473";}}i:251;a:4:{s:1:"C";s:3:"251";s:2:"WX";s:3:"556";s:1:"N";s:10:"germandbls";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:3:"-12";i:2;s:3:"517";i:3;s:3:"691";}}s:10:"germandbls";a:4:{s:1:"C";s:3:"251";s:2:"WX";s:3:"556";s:1:"N";s:10:"germandbls";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:3:"-12";i:2;s:3:"517";i:3;s:3:"691";}}s:9:"Idieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:9:"Idieresis";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"370";i:3;s:3:"877";}}s:6:"eacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:6:"eacute";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-14";i:2;s:3:"426";i:3;s:3:"713";}}s:6:"abreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"abreve";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-14";i:2;s:3:"488";i:3;s:3:"691";}}s:13:"uhungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:13:"uhungarumlaut";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"-14";i:2;s:3:"557";i:3;s:3:"713";}}s:6:"ecaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:6:"ecaron";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-14";i:2;s:3:"426";i:3;s:3:"704";}}s:9:"Ydieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:9:"Ydieresis";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:1:"0";i:2;s:3:"699";i:3;s:3:"877";}}s:6:"divide";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"570";s:1:"N";s:6:"divide";s:1:"B";a:4:{i:0;s:2:"33";i:1;s:3:"-31";i:2;s:3:"537";i:3;s:3:"537";}}s:6:"Yacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Yacute";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:1:"0";i:2;s:3:"699";i:3;s:3:"923";}}s:11:"Acircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:11:"Acircumflex";s:1:"B";a:4:{i:0;s:1:"9";i:1;s:1:"0";i:2;s:3:"689";i:3;s:3:"914";}}s:6:"aacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"aacute";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-14";i:2;s:3:"488";i:3;s:3:"713";}}s:11:"Ucircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:11:"Ucircumflex";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"-19";i:2;s:3:"701";i:3;s:3:"914";}}s:6:"yacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"yacute";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:4:"-205";i:2;s:3:"480";i:3;s:3:"713";}}s:12:"scommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:12:"scommaaccent";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:4:"-218";i:2;s:3:"361";i:3;s:3:"473";}}s:11:"ecircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:11:"ecircumflex";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-14";i:2;s:3:"426";i:3;s:3:"704";}}s:5:"Uring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:5:"Uring";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"-19";i:2;s:3:"701";i:3;s:3:"935";}}s:9:"Udieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:9:"Udieresis";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"-19";i:2;s:3:"701";i:3;s:3:"877";}}s:7:"aogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:7:"aogonek";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:4:"-193";i:2;s:3:"504";i:3;s:3:"473";}}s:6:"Uacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Uacute";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"-19";i:2;s:3:"701";i:3;s:3:"923";}}s:7:"uogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:7:"uogonek";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:4:"-193";i:2;s:3:"539";i:3;s:3:"461";}}s:9:"Edieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:9:"Edieresis";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"641";i:3;s:3:"877";}}s:6:"Dcroat";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Dcroat";s:1:"B";a:4:{i:0;s:1:"6";i:1;s:1:"0";i:2;s:3:"690";i:3;s:3:"676";}}s:11:"commaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"250";s:1:"N";s:11:"commaaccent";s:1:"B";a:4:{i:0;s:2:"47";i:1;s:4:"-218";i:2;s:3:"203";i:3;s:3:"-50";}}s:9:"copyright";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"747";s:1:"N";s:9:"copyright";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:3:"-19";i:2;s:3:"721";i:3;s:3:"691";}}s:7:"Emacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:7:"Emacron";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"641";i:3;s:3:"847";}}s:6:"ccaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:6:"ccaron";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-14";i:2;s:3:"430";i:3;s:3:"704";}}s:5:"aring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:5:"aring";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-14";i:2;s:3:"488";i:3;s:3:"740";}}s:12:"Ncommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:12:"Ncommaaccent";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:4:"-188";i:2;s:3:"701";i:3;s:3:"676";}}s:6:"lacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:6:"lacute";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"297";i:3;s:3:"923";}}s:6:"agrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"agrave";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-14";i:2;s:3:"488";i:3;s:3:"713";}}s:12:"Tcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:12:"Tcommaaccent";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:4:"-218";i:2;s:3:"636";i:3;s:3:"676";}}s:6:"Cacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Cacute";s:1:"B";a:4:{i:0;s:2:"49";i:1;s:3:"-19";i:2;s:3:"687";i:3;s:3:"923";}}s:6:"atilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"atilde";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-14";i:2;s:3:"488";i:3;s:3:"674";}}s:10:"Edotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:10:"Edotaccent";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"641";i:3;s:3:"901";}}s:6:"scaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:6:"scaron";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-14";i:2;s:3:"363";i:3;s:3:"704";}}s:8:"scedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:8:"scedilla";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:4:"-218";i:2;s:3:"361";i:3;s:3:"473";}}s:6:"iacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:6:"iacute";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"289";i:3;s:3:"713";}}s:7:"lozenge";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"494";s:1:"N";s:7:"lozenge";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:1:"0";i:2;s:3:"484";i:3;s:3:"745";}}s:6:"Rcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Rcaron";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"715";i:3;s:3:"914";}}s:12:"Gcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:12:"Gcommaaccent";s:1:"B";a:4:{i:0;s:2:"37";i:1;s:4:"-218";i:2;s:3:"755";i:3;s:3:"691";}}s:11:"ucircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:11:"ucircumflex";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"-14";i:2;s:3:"537";i:3;s:3:"704";}}s:11:"acircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:11:"acircumflex";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-14";i:2;s:3:"488";i:3;s:3:"704";}}s:7:"Amacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:7:"Amacron";s:1:"B";a:4:{i:0;s:1:"9";i:1;s:1:"0";i:2;s:3:"689";i:3;s:3:"847";}}s:6:"rcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:6:"rcaron";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:1:"0";i:2;s:3:"434";i:3;s:3:"704";}}s:8:"ccedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:8:"ccedilla";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:4:"-218";i:2;s:3:"430";i:3;s:3:"473";}}s:10:"Zdotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:10:"Zdotaccent";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:1:"0";i:2;s:3:"634";i:3;s:3:"901";}}s:5:"Thorn";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:5:"Thorn";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"600";i:3;s:3:"676";}}s:7:"Omacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:7:"Omacron";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-19";i:2;s:3:"743";i:3;s:3:"847";}}s:6:"Racute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Racute";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"715";i:3;s:3:"923";}}s:6:"Sacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"Sacute";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-19";i:2;s:3:"513";i:3;s:3:"923";}}s:6:"dcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"672";s:1:"N";s:6:"dcaron";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-14";i:2;s:3:"681";i:3;s:3:"682";}}s:7:"Umacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:7:"Umacron";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"-19";i:2;s:3:"701";i:3;s:3:"847";}}s:5:"uring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:5:"uring";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"-14";i:2;s:3:"537";i:3;s:3:"740";}}s:13:"threesuperior";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"300";s:1:"N";s:13:"threesuperior";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:3:"268";i:2;s:3:"297";i:3;s:3:"688";}}s:6:"Ograve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:6:"Ograve";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-19";i:2;s:3:"743";i:3;s:3:"923";}}s:6:"Agrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Agrave";s:1:"B";a:4:{i:0;s:1:"9";i:1;s:1:"0";i:2;s:3:"689";i:3;s:3:"923";}}s:6:"Abreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Abreve";s:1:"B";a:4:{i:0;s:1:"9";i:1;s:1:"0";i:2;s:3:"689";i:3;s:3:"901";}}s:8:"multiply";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"570";s:1:"N";s:8:"multiply";s:1:"B";a:4:{i:0;s:2:"48";i:1;s:2:"16";i:2;s:3:"522";i:3;s:3:"490";}}s:6:"uacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"uacute";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"-14";i:2;s:3:"537";i:3;s:3:"713";}}s:6:"Tcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Tcaron";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:1:"0";i:2;s:3:"636";i:3;s:3:"914";}}s:11:"partialdiff";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"494";s:1:"N";s:11:"partialdiff";s:1:"B";a:4:{i:0;s:2:"11";i:1;s:3:"-21";i:2;s:3:"494";i:3;s:3:"750";}}s:9:"ydieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:9:"ydieresis";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:4:"-205";i:2;s:3:"480";i:3;s:3:"667";}}s:6:"Nacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Nacute";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"-18";i:2;s:3:"701";i:3;s:3:"923";}}s:11:"icircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:11:"icircumflex";s:1:"B";a:4:{i:0;s:3:"-37";i:1;s:1:"0";i:2;s:3:"300";i:3;s:3:"704";}}s:11:"Ecircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:11:"Ecircumflex";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"641";i:3;s:3:"914";}}s:9:"adieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:9:"adieresis";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-14";i:2;s:3:"488";i:3;s:3:"667";}}s:9:"edieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:9:"edieresis";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-14";i:2;s:3:"426";i:3;s:3:"667";}}s:6:"cacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:6:"cacute";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-14";i:2;s:3:"430";i:3;s:3:"713";}}s:6:"nacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"nacute";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:1:"0";i:2;s:3:"539";i:3;s:3:"713";}}s:7:"umacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:7:"umacron";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"-14";i:2;s:3:"537";i:3;s:3:"637";}}s:6:"Ncaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Ncaron";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"-18";i:2;s:3:"701";i:3;s:3:"914";}}s:6:"Iacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:6:"Iacute";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"370";i:3;s:3:"923";}}s:9:"plusminus";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"570";s:1:"N";s:9:"plusminus";s:1:"B";a:4:{i:0;s:2:"33";i:1;s:1:"0";i:2;s:3:"537";i:3;s:3:"506";}}s:9:"brokenbar";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"220";s:1:"N";s:9:"brokenbar";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:4:"-143";i:2;s:3:"154";i:3;s:3:"707";}}s:10:"registered";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"747";s:1:"N";s:10:"registered";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:3:"-19";i:2;s:3:"721";i:3;s:3:"691";}}s:6:"Gbreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:6:"Gbreve";s:1:"B";a:4:{i:0;s:2:"37";i:1;s:3:"-19";i:2;s:3:"755";i:3;s:3:"901";}}s:10:"Idotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:10:"Idotaccent";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"370";i:3;s:3:"901";}}s:9:"summation";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"summation";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:3:"-10";i:2;s:3:"585";i:3;s:3:"706";}}s:6:"Egrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Egrave";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"641";i:3;s:3:"923";}}s:6:"racute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:6:"racute";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:1:"0";i:2;s:3:"434";i:3;s:3:"713";}}s:7:"omacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:7:"omacron";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-14";i:2;s:3:"476";i:3;s:3:"637";}}s:6:"Zacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Zacute";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:1:"0";i:2;s:3:"634";i:3;s:3:"923";}}s:6:"Zcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Zcaron";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:1:"0";i:2;s:3:"634";i:3;s:3:"914";}}s:12:"greaterequal";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"549";s:1:"N";s:12:"greaterequal";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"523";i:3;s:3:"704";}}s:3:"Eth";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:3:"Eth";s:1:"B";a:4:{i:0;s:1:"6";i:1;s:1:"0";i:2;s:3:"690";i:3;s:3:"676";}}s:8:"Ccedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:8:"Ccedilla";s:1:"B";a:4:{i:0;s:2:"49";i:1;s:4:"-218";i:2;s:3:"687";i:3;s:3:"691";}}s:12:"lcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:12:"lcommaaccent";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:4:"-218";i:2;s:3:"255";i:3;s:3:"676";}}s:6:"tcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"416";s:1:"N";s:6:"tcaron";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:3:"-12";i:2;s:3:"425";i:3;s:3:"815";}}s:7:"eogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:7:"eogonek";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:4:"-193";i:2;s:3:"426";i:3;s:3:"473";}}s:7:"Uogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:7:"Uogonek";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:4:"-193";i:2;s:3:"701";i:3;s:3:"676";}}s:6:"Aacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Aacute";s:1:"B";a:4:{i:0;s:1:"9";i:1;s:1:"0";i:2;s:3:"689";i:3;s:3:"923";}}s:9:"Adieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:9:"Adieresis";s:1:"B";a:4:{i:0;s:1:"9";i:1;s:1:"0";i:2;s:3:"689";i:3;s:3:"877";}}s:6:"egrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:6:"egrave";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-14";i:2;s:3:"426";i:3;s:3:"713";}}s:6:"zacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:6:"zacute";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:1:"0";i:2;s:3:"420";i:3;s:3:"713";}}s:7:"iogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:7:"iogonek";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:4:"-193";i:2;s:3:"274";i:3;s:3:"691";}}s:6:"Oacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:6:"Oacute";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-19";i:2;s:3:"743";i:3;s:3:"923";}}s:6:"oacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"oacute";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-14";i:2;s:3:"476";i:3;s:3:"713";}}s:7:"amacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:7:"amacron";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-14";i:2;s:3:"488";i:3;s:3:"637";}}s:6:"sacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:6:"sacute";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-14";i:2;s:3:"361";i:3;s:3:"713";}}s:9:"idieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:9:"idieresis";s:1:"B";a:4:{i:0;s:3:"-37";i:1;s:1:"0";i:2;s:3:"300";i:3;s:3:"667";}}s:11:"Ocircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:11:"Ocircumflex";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-19";i:2;s:3:"743";i:3;s:3:"914";}}s:6:"Ugrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Ugrave";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"-19";i:2;s:3:"701";i:3;s:3:"923";}}s:5:"Delta";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"612";s:1:"N";s:5:"Delta";s:1:"B";a:4:{i:0;s:1:"6";i:1;s:1:"0";i:2;s:3:"608";i:3;s:3:"688";}}s:5:"thorn";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:5:"thorn";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:4:"-205";i:2;s:3:"524";i:3;s:3:"676";}}s:11:"twosuperior";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"300";s:1:"N";s:11:"twosuperior";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"275";i:2;s:3:"300";i:3;s:3:"688";}}s:9:"Odieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:9:"Odieresis";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-19";i:2;s:3:"743";i:3;s:3:"877";}}s:2:"mu";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:2:"mu";s:1:"B";a:4:{i:0;s:2:"33";i:1;s:4:"-206";i:2;s:3:"536";i:3;s:3:"461";}}s:6:"igrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:6:"igrave";s:1:"B";a:4:{i:0;s:3:"-27";i:1;s:1:"0";i:2;s:3:"255";i:3;s:3:"713";}}s:13:"ohungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:13:"ohungarumlaut";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-14";i:2;s:3:"529";i:3;s:3:"713";}}s:7:"Eogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:7:"Eogonek";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:4:"-193";i:2;s:3:"644";i:3;s:3:"676";}}s:6:"dcroat";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"dcroat";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-14";i:2;s:3:"534";i:3;s:3:"676";}}s:13:"threequarters";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"750";s:1:"N";s:13:"threequarters";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:3:"-12";i:2;s:3:"733";i:3;s:3:"688";}}s:8:"Scedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:8:"Scedilla";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:4:"-218";i:2;s:3:"513";i:3;s:3:"692";}}s:6:"lcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"394";s:1:"N";s:6:"lcaron";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"412";i:3;s:3:"682";}}s:12:"Kcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:12:"Kcommaaccent";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:4:"-218";i:2;s:3:"769";i:3;s:3:"676";}}s:6:"Lacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Lacute";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:1:"0";i:2;s:3:"638";i:3;s:3:"923";}}s:9:"trademark";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:4:"1000";s:1:"N";s:9:"trademark";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:3:"271";i:2;s:3:"977";i:3;s:3:"676";}}s:10:"edotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:10:"edotaccent";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-14";i:2;s:3:"426";i:3;s:3:"691";}}s:6:"Igrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:6:"Igrave";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"370";i:3;s:3:"923";}}s:7:"Imacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:7:"Imacron";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"370";i:3;s:3:"847";}}s:6:"Lcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Lcaron";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:1:"0";i:2;s:3:"652";i:3;s:3:"682";}}s:7:"onehalf";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"750";s:1:"N";s:7:"onehalf";s:1:"B";a:4:{i:0;s:2:"-7";i:1;s:3:"-12";i:2;s:3:"775";i:3;s:3:"688";}}s:9:"lessequal";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"549";s:1:"N";s:9:"lessequal";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:1:"0";i:2;s:3:"526";i:3;s:3:"704";}}s:11:"ocircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:11:"ocircumflex";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-14";i:2;s:3:"476";i:3;s:3:"704";}}s:6:"ntilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"ntilde";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:1:"0";i:2;s:3:"539";i:3;s:3:"674";}}s:13:"Uhungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:13:"Uhungarumlaut";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"-19";i:2;s:3:"701";i:3;s:3:"923";}}s:6:"Eacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Eacute";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"641";i:3;s:3:"923";}}s:7:"emacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:7:"emacron";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-14";i:2;s:3:"426";i:3;s:3:"637";}}s:6:"gbreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"gbreve";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:4:"-206";i:2;s:3:"483";i:3;s:3:"691";}}s:10:"onequarter";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"750";s:1:"N";s:10:"onequarter";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:3:"-12";i:2;s:3:"743";i:3;s:3:"688";}}s:6:"Scaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"Scaron";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-19";i:2;s:3:"513";i:3;s:3:"914";}}s:12:"Scommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:12:"Scommaaccent";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:4:"-218";i:2;s:3:"513";i:3;s:3:"692";}}s:13:"Ohungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:13:"Ohungarumlaut";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-19";i:2;s:3:"743";i:3;s:3:"923";}}s:6:"degree";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"400";s:1:"N";s:6:"degree";s:1:"B";a:4:{i:0;s:2:"57";i:1;s:3:"402";i:2;s:3:"343";i:3;s:3:"688";}}s:6:"ograve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"ograve";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-14";i:2;s:3:"476";i:3;s:3:"713";}}s:6:"Ccaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Ccaron";s:1:"B";a:4:{i:0;s:2:"49";i:1;s:3:"-19";i:2;s:3:"687";i:3;s:3:"914";}}s:6:"ugrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"ugrave";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"-14";i:2;s:3:"537";i:3;s:3:"713";}}s:7:"radical";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"549";s:1:"N";s:7:"radical";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:3:"-46";i:2;s:3:"512";i:3;s:3:"850";}}s:6:"Dcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Dcaron";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:1:"0";i:2;s:3:"690";i:3;s:3:"914";}}s:12:"rcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:12:"rcommaaccent";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:4:"-218";i:2;s:3:"434";i:3;s:3:"473";}}s:6:"Ntilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Ntilde";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"-18";i:2;s:3:"701";i:3;s:3:"884";}}s:6:"otilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"otilde";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-14";i:2;s:3:"476";i:3;s:3:"674";}}s:12:"Rcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:12:"Rcommaaccent";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:4:"-218";i:2;s:3:"715";i:3;s:3:"676";}}s:12:"Lcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:12:"Lcommaaccent";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:4:"-218";i:2;s:3:"638";i:3;s:3:"676";}}s:6:"Atilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Atilde";s:1:"B";a:4:{i:0;s:1:"9";i:1;s:1:"0";i:2;s:3:"689";i:3;s:3:"884";}}s:7:"Aogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:7:"Aogonek";s:1:"B";a:4:{i:0;s:1:"9";i:1;s:4:"-193";i:2;s:3:"699";i:3;s:3:"690";}}s:5:"Aring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:5:"Aring";s:1:"B";a:4:{i:0;s:1:"9";i:1;s:1:"0";i:2;s:3:"689";i:3;s:3:"935";}}s:6:"Otilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"778";s:1:"N";s:6:"Otilde";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-19";i:2;s:3:"743";i:3;s:3:"884";}}s:10:"zdotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:10:"zdotaccent";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:1:"0";i:2;s:3:"420";i:3;s:3:"691";}}s:6:"Ecaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Ecaron";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"641";i:3;s:3:"914";}}s:7:"Iogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:7:"Iogonek";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:4:"-193";i:2;s:3:"370";i:3;s:3:"676";}}s:12:"kcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:12:"kcommaaccent";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:4:"-218";i:2;s:3:"543";i:3;s:3:"676";}}s:5:"minus";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"570";s:1:"N";s:5:"minus";s:1:"B";a:4:{i:0;s:2:"33";i:1;s:3:"209";i:2;s:3:"537";i:3;s:3:"297";}}s:11:"Icircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:11:"Icircumflex";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"370";i:3;s:3:"914";}}s:6:"ncaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"ncaron";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:1:"0";i:2;s:3:"539";i:3;s:3:"704";}}s:12:"tcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"333";s:1:"N";s:12:"tcommaaccent";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:4:"-218";i:2;s:3:"332";i:3;s:3:"630";}}s:10:"logicalnot";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"570";s:1:"N";s:10:"logicalnot";s:1:"B";a:4:{i:0;s:2:"33";i:1;s:3:"108";i:2;s:3:"537";i:3;s:3:"399";}}s:9:"odieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:9:"odieresis";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-14";i:2;s:3:"476";i:3;s:3:"667";}}s:9:"udieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:9:"udieresis";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"-14";i:2;s:3:"537";i:3;s:3:"667";}}s:8:"notequal";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"549";s:1:"N";s:8:"notequal";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:3:"-49";i:2;s:3:"540";i:3;s:3:"570";}}s:12:"gcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:12:"gcommaaccent";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:4:"-206";i:2;s:3:"483";i:3;s:3:"829";}}s:3:"eth";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:3:"eth";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-14";i:2;s:3:"476";i:3;s:3:"691";}}s:6:"zcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:6:"zcaron";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:1:"0";i:2;s:3:"420";i:3;s:3:"704";}}s:12:"ncommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:12:"ncommaaccent";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:4:"-218";i:2;s:3:"539";i:3;s:3:"473";}}s:11:"onesuperior";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"300";s:1:"N";s:11:"onesuperior";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:3:"275";i:2;s:3:"273";i:3;s:3:"688";}}s:7:"imacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:7:"imacron";s:1:"B";a:4:{i:0;s:2:"-8";i:1;s:1:"0";i:2;s:3:"272";i:3;s:3:"637";}}s:4:"Euro";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:4:"Euro";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:1:"0";i:3;s:1:"0";}}}s:3:"KPX";a:124:{s:1:"A";a:50:{s:1:"C";s:3:"-55";s:6:"Cacute";s:3:"-55";s:6:"Ccaron";s:3:"-55";s:8:"Ccedilla";s:3:"-55";s:1:"G";s:3:"-55";s:6:"Gbreve";s:3:"-55";s:12:"Gcommaaccent";s:3:"-55";s:1:"O";s:3:"-45";s:6:"Oacute";s:3:"-45";s:11:"Ocircumflex";s:3:"-45";s:9:"Odieresis";s:3:"-45";s:6:"Ograve";s:3:"-45";s:13:"Ohungarumlaut";s:3:"-45";s:7:"Omacron";s:3:"-45";s:6:"Oslash";s:3:"-45";s:6:"Otilde";s:3:"-45";s:1:"Q";s:3:"-45";s:1:"T";s:3:"-95";s:6:"Tcaron";s:3:"-95";s:12:"Tcommaaccent";s:3:"-95";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:4:"-145";s:1:"W";s:4:"-130";s:1:"Y";s:4:"-100";s:6:"Yacute";s:4:"-100";s:9:"Ydieresis";s:4:"-100";s:1:"p";s:3:"-25";s:10:"quoteright";s:3:"-74";s:1:"u";s:3:"-50";s:6:"uacute";s:3:"-50";s:11:"ucircumflex";s:3:"-50";s:9:"udieresis";s:3:"-50";s:6:"ugrave";s:3:"-50";s:13:"uhungarumlaut";s:3:"-50";s:7:"umacron";s:3:"-50";s:7:"uogonek";s:3:"-50";s:5:"uring";s:3:"-50";s:1:"v";s:4:"-100";s:1:"w";s:3:"-90";s:1:"y";s:3:"-74";s:6:"yacute";s:3:"-74";s:9:"ydieresis";s:3:"-74";}s:6:"Aacute";a:50:{s:1:"C";s:3:"-55";s:6:"Cacute";s:3:"-55";s:6:"Ccaron";s:3:"-55";s:8:"Ccedilla";s:3:"-55";s:1:"G";s:3:"-55";s:6:"Gbreve";s:3:"-55";s:12:"Gcommaaccent";s:3:"-55";s:1:"O";s:3:"-45";s:6:"Oacute";s:3:"-45";s:11:"Ocircumflex";s:3:"-45";s:9:"Odieresis";s:3:"-45";s:6:"Ograve";s:3:"-45";s:13:"Ohungarumlaut";s:3:"-45";s:7:"Omacron";s:3:"-45";s:6:"Oslash";s:3:"-45";s:6:"Otilde";s:3:"-45";s:1:"Q";s:3:"-45";s:1:"T";s:3:"-95";s:6:"Tcaron";s:3:"-95";s:12:"Tcommaaccent";s:3:"-95";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:4:"-145";s:1:"W";s:4:"-130";s:1:"Y";s:4:"-100";s:6:"Yacute";s:4:"-100";s:9:"Ydieresis";s:4:"-100";s:1:"p";s:3:"-25";s:10:"quoteright";s:3:"-74";s:1:"u";s:3:"-50";s:6:"uacute";s:3:"-50";s:11:"ucircumflex";s:3:"-50";s:9:"udieresis";s:3:"-50";s:6:"ugrave";s:3:"-50";s:13:"uhungarumlaut";s:3:"-50";s:7:"umacron";s:3:"-50";s:7:"uogonek";s:3:"-50";s:5:"uring";s:3:"-50";s:1:"v";s:4:"-100";s:1:"w";s:3:"-90";s:1:"y";s:3:"-74";s:6:"yacute";s:3:"-74";s:9:"ydieresis";s:3:"-74";}s:6:"Abreve";a:50:{s:1:"C";s:3:"-55";s:6:"Cacute";s:3:"-55";s:6:"Ccaron";s:3:"-55";s:8:"Ccedilla";s:3:"-55";s:1:"G";s:3:"-55";s:6:"Gbreve";s:3:"-55";s:12:"Gcommaaccent";s:3:"-55";s:1:"O";s:3:"-45";s:6:"Oacute";s:3:"-45";s:11:"Ocircumflex";s:3:"-45";s:9:"Odieresis";s:3:"-45";s:6:"Ograve";s:3:"-45";s:13:"Ohungarumlaut";s:3:"-45";s:7:"Omacron";s:3:"-45";s:6:"Oslash";s:3:"-45";s:6:"Otilde";s:3:"-45";s:1:"Q";s:3:"-45";s:1:"T";s:3:"-95";s:6:"Tcaron";s:3:"-95";s:12:"Tcommaaccent";s:3:"-95";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:4:"-145";s:1:"W";s:4:"-130";s:1:"Y";s:4:"-100";s:6:"Yacute";s:4:"-100";s:9:"Ydieresis";s:4:"-100";s:1:"p";s:3:"-25";s:10:"quoteright";s:3:"-74";s:1:"u";s:3:"-50";s:6:"uacute";s:3:"-50";s:11:"ucircumflex";s:3:"-50";s:9:"udieresis";s:3:"-50";s:6:"ugrave";s:3:"-50";s:13:"uhungarumlaut";s:3:"-50";s:7:"umacron";s:3:"-50";s:7:"uogonek";s:3:"-50";s:5:"uring";s:3:"-50";s:1:"v";s:4:"-100";s:1:"w";s:3:"-90";s:1:"y";s:3:"-74";s:6:"yacute";s:3:"-74";s:9:"ydieresis";s:3:"-74";}s:11:"Acircumflex";a:50:{s:1:"C";s:3:"-55";s:6:"Cacute";s:3:"-55";s:6:"Ccaron";s:3:"-55";s:8:"Ccedilla";s:3:"-55";s:1:"G";s:3:"-55";s:6:"Gbreve";s:3:"-55";s:12:"Gcommaaccent";s:3:"-55";s:1:"O";s:3:"-45";s:6:"Oacute";s:3:"-45";s:11:"Ocircumflex";s:3:"-45";s:9:"Odieresis";s:3:"-45";s:6:"Ograve";s:3:"-45";s:13:"Ohungarumlaut";s:3:"-45";s:7:"Omacron";s:3:"-45";s:6:"Oslash";s:3:"-45";s:6:"Otilde";s:3:"-45";s:1:"Q";s:3:"-45";s:1:"T";s:3:"-95";s:6:"Tcaron";s:3:"-95";s:12:"Tcommaaccent";s:3:"-95";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:4:"-145";s:1:"W";s:4:"-130";s:1:"Y";s:4:"-100";s:6:"Yacute";s:4:"-100";s:9:"Ydieresis";s:4:"-100";s:1:"p";s:3:"-25";s:10:"quoteright";s:3:"-74";s:1:"u";s:3:"-50";s:6:"uacute";s:3:"-50";s:11:"ucircumflex";s:3:"-50";s:9:"udieresis";s:3:"-50";s:6:"ugrave";s:3:"-50";s:13:"uhungarumlaut";s:3:"-50";s:7:"umacron";s:3:"-50";s:7:"uogonek";s:3:"-50";s:5:"uring";s:3:"-50";s:1:"v";s:4:"-100";s:1:"w";s:3:"-90";s:1:"y";s:3:"-74";s:6:"yacute";s:3:"-74";s:9:"ydieresis";s:3:"-74";}s:9:"Adieresis";a:50:{s:1:"C";s:3:"-55";s:6:"Cacute";s:3:"-55";s:6:"Ccaron";s:3:"-55";s:8:"Ccedilla";s:3:"-55";s:1:"G";s:3:"-55";s:6:"Gbreve";s:3:"-55";s:12:"Gcommaaccent";s:3:"-55";s:1:"O";s:3:"-45";s:6:"Oacute";s:3:"-45";s:11:"Ocircumflex";s:3:"-45";s:9:"Odieresis";s:3:"-45";s:6:"Ograve";s:3:"-45";s:13:"Ohungarumlaut";s:3:"-45";s:7:"Omacron";s:3:"-45";s:6:"Oslash";s:3:"-45";s:6:"Otilde";s:3:"-45";s:1:"Q";s:3:"-45";s:1:"T";s:3:"-95";s:6:"Tcaron";s:3:"-95";s:12:"Tcommaaccent";s:3:"-95";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:4:"-145";s:1:"W";s:4:"-130";s:1:"Y";s:4:"-100";s:6:"Yacute";s:4:"-100";s:9:"Ydieresis";s:4:"-100";s:1:"p";s:3:"-25";s:10:"quoteright";s:3:"-74";s:1:"u";s:3:"-50";s:6:"uacute";s:3:"-50";s:11:"ucircumflex";s:3:"-50";s:9:"udieresis";s:3:"-50";s:6:"ugrave";s:3:"-50";s:13:"uhungarumlaut";s:3:"-50";s:7:"umacron";s:3:"-50";s:7:"uogonek";s:3:"-50";s:5:"uring";s:3:"-50";s:1:"v";s:4:"-100";s:1:"w";s:3:"-90";s:1:"y";s:3:"-74";s:6:"yacute";s:3:"-74";s:9:"ydieresis";s:3:"-74";}s:6:"Agrave";a:50:{s:1:"C";s:3:"-55";s:6:"Cacute";s:3:"-55";s:6:"Ccaron";s:3:"-55";s:8:"Ccedilla";s:3:"-55";s:1:"G";s:3:"-55";s:6:"Gbreve";s:3:"-55";s:12:"Gcommaaccent";s:3:"-55";s:1:"O";s:3:"-45";s:6:"Oacute";s:3:"-45";s:11:"Ocircumflex";s:3:"-45";s:9:"Odieresis";s:3:"-45";s:6:"Ograve";s:3:"-45";s:13:"Ohungarumlaut";s:3:"-45";s:7:"Omacron";s:3:"-45";s:6:"Oslash";s:3:"-45";s:6:"Otilde";s:3:"-45";s:1:"Q";s:3:"-45";s:1:"T";s:3:"-95";s:6:"Tcaron";s:3:"-95";s:12:"Tcommaaccent";s:3:"-95";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:4:"-145";s:1:"W";s:4:"-130";s:1:"Y";s:4:"-100";s:6:"Yacute";s:4:"-100";s:9:"Ydieresis";s:4:"-100";s:1:"p";s:3:"-25";s:10:"quoteright";s:3:"-74";s:1:"u";s:3:"-50";s:6:"uacute";s:3:"-50";s:11:"ucircumflex";s:3:"-50";s:9:"udieresis";s:3:"-50";s:6:"ugrave";s:3:"-50";s:13:"uhungarumlaut";s:3:"-50";s:7:"umacron";s:3:"-50";s:7:"uogonek";s:3:"-50";s:5:"uring";s:3:"-50";s:1:"v";s:4:"-100";s:1:"w";s:3:"-90";s:1:"y";s:3:"-74";s:6:"yacute";s:3:"-74";s:9:"ydieresis";s:3:"-74";}s:7:"Amacron";a:50:{s:1:"C";s:3:"-55";s:6:"Cacute";s:3:"-55";s:6:"Ccaron";s:3:"-55";s:8:"Ccedilla";s:3:"-55";s:1:"G";s:3:"-55";s:6:"Gbreve";s:3:"-55";s:12:"Gcommaaccent";s:3:"-55";s:1:"O";s:3:"-45";s:6:"Oacute";s:3:"-45";s:11:"Ocircumflex";s:3:"-45";s:9:"Odieresis";s:3:"-45";s:6:"Ograve";s:3:"-45";s:13:"Ohungarumlaut";s:3:"-45";s:7:"Omacron";s:3:"-45";s:6:"Oslash";s:3:"-45";s:6:"Otilde";s:3:"-45";s:1:"Q";s:3:"-45";s:1:"T";s:3:"-95";s:6:"Tcaron";s:3:"-95";s:12:"Tcommaaccent";s:3:"-95";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:4:"-145";s:1:"W";s:4:"-130";s:1:"Y";s:4:"-100";s:6:"Yacute";s:4:"-100";s:9:"Ydieresis";s:4:"-100";s:1:"p";s:3:"-25";s:10:"quoteright";s:3:"-74";s:1:"u";s:3:"-50";s:6:"uacute";s:3:"-50";s:11:"ucircumflex";s:3:"-50";s:9:"udieresis";s:3:"-50";s:6:"ugrave";s:3:"-50";s:13:"uhungarumlaut";s:3:"-50";s:7:"umacron";s:3:"-50";s:7:"uogonek";s:3:"-50";s:5:"uring";s:3:"-50";s:1:"v";s:4:"-100";s:1:"w";s:3:"-90";s:1:"y";s:3:"-74";s:6:"yacute";s:3:"-74";s:9:"ydieresis";s:3:"-74";}s:7:"Aogonek";a:50:{s:1:"C";s:3:"-55";s:6:"Cacute";s:3:"-55";s:6:"Ccaron";s:3:"-55";s:8:"Ccedilla";s:3:"-55";s:1:"G";s:3:"-55";s:6:"Gbreve";s:3:"-55";s:12:"Gcommaaccent";s:3:"-55";s:1:"O";s:3:"-45";s:6:"Oacute";s:3:"-45";s:11:"Ocircumflex";s:3:"-45";s:9:"Odieresis";s:3:"-45";s:6:"Ograve";s:3:"-45";s:13:"Ohungarumlaut";s:3:"-45";s:7:"Omacron";s:3:"-45";s:6:"Oslash";s:3:"-45";s:6:"Otilde";s:3:"-45";s:1:"Q";s:3:"-45";s:1:"T";s:3:"-95";s:6:"Tcaron";s:3:"-95";s:12:"Tcommaaccent";s:3:"-95";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:4:"-145";s:1:"W";s:4:"-130";s:1:"Y";s:4:"-100";s:6:"Yacute";s:4:"-100";s:9:"Ydieresis";s:4:"-100";s:1:"p";s:3:"-25";s:10:"quoteright";s:3:"-74";s:1:"u";s:3:"-50";s:6:"uacute";s:3:"-50";s:11:"ucircumflex";s:3:"-50";s:9:"udieresis";s:3:"-50";s:6:"ugrave";s:3:"-50";s:13:"uhungarumlaut";s:3:"-50";s:7:"umacron";s:3:"-50";s:7:"uogonek";s:3:"-50";s:5:"uring";s:3:"-50";s:1:"v";s:4:"-100";s:1:"w";s:3:"-90";s:1:"y";s:3:"-34";s:6:"yacute";s:3:"-34";s:9:"ydieresis";s:3:"-34";}s:5:"Aring";a:50:{s:1:"C";s:3:"-55";s:6:"Cacute";s:3:"-55";s:6:"Ccaron";s:3:"-55";s:8:"Ccedilla";s:3:"-55";s:1:"G";s:3:"-55";s:6:"Gbreve";s:3:"-55";s:12:"Gcommaaccent";s:3:"-55";s:1:"O";s:3:"-45";s:6:"Oacute";s:3:"-45";s:11:"Ocircumflex";s:3:"-45";s:9:"Odieresis";s:3:"-45";s:6:"Ograve";s:3:"-45";s:13:"Ohungarumlaut";s:3:"-45";s:7:"Omacron";s:3:"-45";s:6:"Oslash";s:3:"-45";s:6:"Otilde";s:3:"-45";s:1:"Q";s:3:"-45";s:1:"T";s:3:"-95";s:6:"Tcaron";s:3:"-95";s:12:"Tcommaaccent";s:3:"-95";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:4:"-145";s:1:"W";s:4:"-130";s:1:"Y";s:4:"-100";s:6:"Yacute";s:4:"-100";s:9:"Ydieresis";s:4:"-100";s:1:"p";s:3:"-25";s:10:"quoteright";s:3:"-74";s:1:"u";s:3:"-50";s:6:"uacute";s:3:"-50";s:11:"ucircumflex";s:3:"-50";s:9:"udieresis";s:3:"-50";s:6:"ugrave";s:3:"-50";s:13:"uhungarumlaut";s:3:"-50";s:7:"umacron";s:3:"-50";s:7:"uogonek";s:3:"-50";s:5:"uring";s:3:"-50";s:1:"v";s:4:"-100";s:1:"w";s:3:"-90";s:1:"y";s:3:"-74";s:6:"yacute";s:3:"-74";s:9:"ydieresis";s:3:"-74";}s:6:"Atilde";a:50:{s:1:"C";s:3:"-55";s:6:"Cacute";s:3:"-55";s:6:"Ccaron";s:3:"-55";s:8:"Ccedilla";s:3:"-55";s:1:"G";s:3:"-55";s:6:"Gbreve";s:3:"-55";s:12:"Gcommaaccent";s:3:"-55";s:1:"O";s:3:"-45";s:6:"Oacute";s:3:"-45";s:11:"Ocircumflex";s:3:"-45";s:9:"Odieresis";s:3:"-45";s:6:"Ograve";s:3:"-45";s:13:"Ohungarumlaut";s:3:"-45";s:7:"Omacron";s:3:"-45";s:6:"Oslash";s:3:"-45";s:6:"Otilde";s:3:"-45";s:1:"Q";s:3:"-45";s:1:"T";s:3:"-95";s:6:"Tcaron";s:3:"-95";s:12:"Tcommaaccent";s:3:"-95";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:4:"-145";s:1:"W";s:4:"-130";s:1:"Y";s:4:"-100";s:6:"Yacute";s:4:"-100";s:9:"Ydieresis";s:4:"-100";s:1:"p";s:3:"-25";s:10:"quoteright";s:3:"-74";s:1:"u";s:3:"-50";s:6:"uacute";s:3:"-50";s:11:"ucircumflex";s:3:"-50";s:9:"udieresis";s:3:"-50";s:6:"ugrave";s:3:"-50";s:13:"uhungarumlaut";s:3:"-50";s:7:"umacron";s:3:"-50";s:7:"uogonek";s:3:"-50";s:5:"uring";s:3:"-50";s:1:"v";s:4:"-100";s:1:"w";s:3:"-90";s:1:"y";s:3:"-74";s:6:"yacute";s:3:"-74";s:9:"ydieresis";s:3:"-74";}s:1:"B";a:19:{s:1:"A";s:3:"-30";s:6:"Aacute";s:3:"-30";s:6:"Abreve";s:3:"-30";s:11:"Acircumflex";s:3:"-30";s:9:"Adieresis";s:3:"-30";s:6:"Agrave";s:3:"-30";s:7:"Amacron";s:3:"-30";s:7:"Aogonek";s:3:"-30";s:5:"Aring";s:3:"-30";s:6:"Atilde";s:3:"-30";s:1:"U";s:3:"-10";s:6:"Uacute";s:3:"-10";s:11:"Ucircumflex";s:3:"-10";s:9:"Udieresis";s:3:"-10";s:6:"Ugrave";s:3:"-10";s:13:"Uhungarumlaut";s:3:"-10";s:7:"Umacron";s:3:"-10";s:7:"Uogonek";s:3:"-10";s:5:"Uring";s:3:"-10";}s:1:"D";a:16:{s:1:"A";s:3:"-35";s:6:"Aacute";s:3:"-35";s:6:"Abreve";s:3:"-35";s:11:"Acircumflex";s:3:"-35";s:9:"Adieresis";s:3:"-35";s:6:"Agrave";s:3:"-35";s:7:"Amacron";s:3:"-35";s:7:"Aogonek";s:3:"-35";s:5:"Aring";s:3:"-35";s:6:"Atilde";s:3:"-35";s:1:"V";s:3:"-40";s:1:"W";s:3:"-40";s:1:"Y";s:3:"-40";s:6:"Yacute";s:3:"-40";s:9:"Ydieresis";s:3:"-40";s:6:"period";s:3:"-20";}s:6:"Dcaron";a:16:{s:1:"A";s:3:"-35";s:6:"Aacute";s:3:"-35";s:6:"Abreve";s:3:"-35";s:11:"Acircumflex";s:3:"-35";s:9:"Adieresis";s:3:"-35";s:6:"Agrave";s:3:"-35";s:7:"Amacron";s:3:"-35";s:7:"Aogonek";s:3:"-35";s:5:"Aring";s:3:"-35";s:6:"Atilde";s:3:"-35";s:1:"V";s:3:"-40";s:1:"W";s:3:"-40";s:1:"Y";s:3:"-40";s:6:"Yacute";s:3:"-40";s:9:"Ydieresis";s:3:"-40";s:6:"period";s:3:"-20";}s:6:"Dcroat";a:16:{s:1:"A";s:3:"-35";s:6:"Aacute";s:3:"-35";s:6:"Abreve";s:3:"-35";s:11:"Acircumflex";s:3:"-35";s:9:"Adieresis";s:3:"-35";s:6:"Agrave";s:3:"-35";s:7:"Amacron";s:3:"-35";s:7:"Aogonek";s:3:"-35";s:5:"Aring";s:3:"-35";s:6:"Atilde";s:3:"-35";s:1:"V";s:3:"-40";s:1:"W";s:3:"-40";s:1:"Y";s:3:"-40";s:6:"Yacute";s:3:"-40";s:9:"Ydieresis";s:3:"-40";s:6:"period";s:3:"-20";}s:1:"F";a:40:{s:1:"A";s:3:"-90";s:6:"Aacute";s:3:"-90";s:6:"Abreve";s:3:"-90";s:11:"Acircumflex";s:3:"-90";s:9:"Adieresis";s:3:"-90";s:6:"Agrave";s:3:"-90";s:7:"Amacron";s:3:"-90";s:7:"Aogonek";s:3:"-90";s:5:"Aring";s:3:"-90";s:6:"Atilde";s:3:"-90";s:1:"a";s:3:"-25";s:6:"aacute";s:3:"-25";s:6:"abreve";s:3:"-25";s:11:"acircumflex";s:3:"-25";s:9:"adieresis";s:3:"-25";s:6:"agrave";s:3:"-25";s:7:"amacron";s:3:"-25";s:7:"aogonek";s:3:"-25";s:5:"aring";s:3:"-25";s:6:"atilde";s:3:"-25";s:5:"comma";s:3:"-92";s:1:"e";s:3:"-25";s:6:"eacute";s:3:"-25";s:6:"ecaron";s:3:"-25";s:11:"ecircumflex";s:3:"-25";s:9:"edieresis";s:3:"-25";s:10:"edotaccent";s:3:"-25";s:6:"egrave";s:3:"-25";s:7:"emacron";s:3:"-25";s:7:"eogonek";s:3:"-25";s:1:"o";s:3:"-25";s:6:"oacute";s:3:"-25";s:11:"ocircumflex";s:3:"-25";s:9:"odieresis";s:3:"-25";s:6:"ograve";s:3:"-25";s:13:"ohungarumlaut";s:3:"-25";s:7:"omacron";s:3:"-25";s:6:"oslash";s:3:"-25";s:6:"otilde";s:3:"-25";s:6:"period";s:4:"-110";}s:1:"J";a:48:{s:1:"A";s:3:"-30";s:6:"Aacute";s:3:"-30";s:6:"Abreve";s:3:"-30";s:11:"Acircumflex";s:3:"-30";s:9:"Adieresis";s:3:"-30";s:6:"Agrave";s:3:"-30";s:7:"Amacron";s:3:"-30";s:7:"Aogonek";s:3:"-30";s:5:"Aring";s:3:"-30";s:6:"Atilde";s:3:"-30";s:1:"a";s:3:"-15";s:6:"aacute";s:3:"-15";s:6:"abreve";s:3:"-15";s:11:"acircumflex";s:3:"-15";s:9:"adieresis";s:3:"-15";s:6:"agrave";s:3:"-15";s:7:"amacron";s:3:"-15";s:7:"aogonek";s:3:"-15";s:5:"aring";s:3:"-15";s:6:"atilde";s:3:"-15";s:1:"e";s:3:"-15";s:6:"eacute";s:3:"-15";s:6:"ecaron";s:3:"-15";s:11:"ecircumflex";s:3:"-15";s:9:"edieresis";s:3:"-15";s:10:"edotaccent";s:3:"-15";s:6:"egrave";s:3:"-15";s:7:"emacron";s:3:"-15";s:7:"eogonek";s:3:"-15";s:1:"o";s:3:"-15";s:6:"oacute";s:3:"-15";s:11:"ocircumflex";s:3:"-15";s:9:"odieresis";s:3:"-15";s:6:"ograve";s:3:"-15";s:13:"ohungarumlaut";s:3:"-15";s:7:"omacron";s:3:"-15";s:6:"oslash";s:3:"-15";s:6:"otilde";s:3:"-15";s:6:"period";s:3:"-20";s:1:"u";s:3:"-15";s:6:"uacute";s:3:"-15";s:11:"ucircumflex";s:3:"-15";s:9:"udieresis";s:3:"-15";s:6:"ugrave";s:3:"-15";s:13:"uhungarumlaut";s:3:"-15";s:7:"umacron";s:3:"-15";s:7:"uogonek";s:3:"-15";s:5:"uring";s:3:"-15";}s:1:"K";a:39:{s:1:"O";s:3:"-30";s:6:"Oacute";s:3:"-30";s:11:"Ocircumflex";s:3:"-30";s:9:"Odieresis";s:3:"-30";s:6:"Ograve";s:3:"-30";s:13:"Ohungarumlaut";s:3:"-30";s:7:"Omacron";s:3:"-30";s:6:"Oslash";s:3:"-30";s:6:"Otilde";s:3:"-30";s:1:"e";s:3:"-25";s:6:"eacute";s:3:"-25";s:6:"ecaron";s:3:"-25";s:11:"ecircumflex";s:3:"-25";s:9:"edieresis";s:3:"-25";s:10:"edotaccent";s:3:"-25";s:6:"egrave";s:3:"-25";s:7:"emacron";s:3:"-25";s:7:"eogonek";s:3:"-25";s:1:"o";s:3:"-25";s:6:"oacute";s:3:"-25";s:11:"ocircumflex";s:3:"-25";s:9:"odieresis";s:3:"-25";s:6:"ograve";s:3:"-25";s:13:"ohungarumlaut";s:3:"-25";s:7:"omacron";s:3:"-25";s:6:"oslash";s:3:"-25";s:6:"otilde";s:3:"-25";s:1:"u";s:3:"-15";s:6:"uacute";s:3:"-15";s:11:"ucircumflex";s:3:"-15";s:9:"udieresis";s:3:"-15";s:6:"ugrave";s:3:"-15";s:13:"uhungarumlaut";s:3:"-15";s:7:"umacron";s:3:"-15";s:7:"uogonek";s:3:"-15";s:5:"uring";s:3:"-15";s:1:"y";s:3:"-45";s:6:"yacute";s:3:"-45";s:9:"ydieresis";s:3:"-45";}s:12:"Kcommaaccent";a:39:{s:1:"O";s:3:"-30";s:6:"Oacute";s:3:"-30";s:11:"Ocircumflex";s:3:"-30";s:9:"Odieresis";s:3:"-30";s:6:"Ograve";s:3:"-30";s:13:"Ohungarumlaut";s:3:"-30";s:7:"Omacron";s:3:"-30";s:6:"Oslash";s:3:"-30";s:6:"Otilde";s:3:"-30";s:1:"e";s:3:"-25";s:6:"eacute";s:3:"-25";s:6:"ecaron";s:3:"-25";s:11:"ecircumflex";s:3:"-25";s:9:"edieresis";s:3:"-25";s:10:"edotaccent";s:3:"-25";s:6:"egrave";s:3:"-25";s:7:"emacron";s:3:"-25";s:7:"eogonek";s:3:"-25";s:1:"o";s:3:"-25";s:6:"oacute";s:3:"-25";s:11:"ocircumflex";s:3:"-25";s:9:"odieresis";s:3:"-25";s:6:"ograve";s:3:"-25";s:13:"ohungarumlaut";s:3:"-25";s:7:"omacron";s:3:"-25";s:6:"oslash";s:3:"-25";s:6:"otilde";s:3:"-25";s:1:"u";s:3:"-15";s:6:"uacute";s:3:"-15";s:11:"ucircumflex";s:3:"-15";s:9:"udieresis";s:3:"-15";s:6:"ugrave";s:3:"-15";s:13:"uhungarumlaut";s:3:"-15";s:7:"umacron";s:3:"-15";s:7:"uogonek";s:3:"-15";s:5:"uring";s:3:"-15";s:1:"y";s:3:"-45";s:6:"yacute";s:3:"-45";s:9:"ydieresis";s:3:"-45";}s:1:"L";a:13:{s:1:"T";s:3:"-92";s:6:"Tcaron";s:3:"-92";s:12:"Tcommaaccent";s:3:"-92";s:1:"V";s:3:"-92";s:1:"W";s:3:"-92";s:1:"Y";s:3:"-92";s:6:"Yacute";s:3:"-92";s:9:"Ydieresis";s:3:"-92";s:13:"quotedblright";s:3:"-20";s:10:"quoteright";s:4:"-110";s:1:"y";s:3:"-55";s:6:"yacute";s:3:"-55";s:9:"ydieresis";s:3:"-55";}s:6:"Lacute";a:13:{s:1:"T";s:3:"-92";s:6:"Tcaron";s:3:"-92";s:12:"Tcommaaccent";s:3:"-92";s:1:"V";s:3:"-92";s:1:"W";s:3:"-92";s:1:"Y";s:3:"-92";s:6:"Yacute";s:3:"-92";s:9:"Ydieresis";s:3:"-92";s:13:"quotedblright";s:3:"-20";s:10:"quoteright";s:4:"-110";s:1:"y";s:3:"-55";s:6:"yacute";s:3:"-55";s:9:"ydieresis";s:3:"-55";}s:12:"Lcommaaccent";a:13:{s:1:"T";s:3:"-92";s:6:"Tcaron";s:3:"-92";s:12:"Tcommaaccent";s:3:"-92";s:1:"V";s:3:"-92";s:1:"W";s:3:"-92";s:1:"Y";s:3:"-92";s:6:"Yacute";s:3:"-92";s:9:"Ydieresis";s:3:"-92";s:13:"quotedblright";s:3:"-20";s:10:"quoteright";s:4:"-110";s:1:"y";s:3:"-55";s:6:"yacute";s:3:"-55";s:9:"ydieresis";s:3:"-55";}s:6:"Lslash";a:13:{s:1:"T";s:3:"-92";s:6:"Tcaron";s:3:"-92";s:12:"Tcommaaccent";s:3:"-92";s:1:"V";s:3:"-92";s:1:"W";s:3:"-92";s:1:"Y";s:3:"-92";s:6:"Yacute";s:3:"-92";s:9:"Ydieresis";s:3:"-92";s:13:"quotedblright";s:3:"-20";s:10:"quoteright";s:4:"-110";s:1:"y";s:3:"-55";s:6:"yacute";s:3:"-55";s:9:"ydieresis";s:3:"-55";}s:1:"N";a:10:{s:1:"A";s:3:"-20";s:6:"Aacute";s:3:"-20";s:6:"Abreve";s:3:"-20";s:11:"Acircumflex";s:3:"-20";s:9:"Adieresis";s:3:"-20";s:6:"Agrave";s:3:"-20";s:7:"Amacron";s:3:"-20";s:7:"Aogonek";s:3:"-20";s:5:"Aring";s:3:"-20";s:6:"Atilde";s:3:"-20";}s:6:"Nacute";a:10:{s:1:"A";s:3:"-20";s:6:"Aacute";s:3:"-20";s:6:"Abreve";s:3:"-20";s:11:"Acircumflex";s:3:"-20";s:9:"Adieresis";s:3:"-20";s:6:"Agrave";s:3:"-20";s:7:"Amacron";s:3:"-20";s:7:"Aogonek";s:3:"-20";s:5:"Aring";s:3:"-20";s:6:"Atilde";s:3:"-20";}s:6:"Ncaron";a:10:{s:1:"A";s:3:"-20";s:6:"Aacute";s:3:"-20";s:6:"Abreve";s:3:"-20";s:11:"Acircumflex";s:3:"-20";s:9:"Adieresis";s:3:"-20";s:6:"Agrave";s:3:"-20";s:7:"Amacron";s:3:"-20";s:7:"Aogonek";s:3:"-20";s:5:"Aring";s:3:"-20";s:6:"Atilde";s:3:"-20";}s:12:"Ncommaaccent";a:10:{s:1:"A";s:3:"-20";s:6:"Aacute";s:3:"-20";s:6:"Abreve";s:3:"-20";s:11:"Acircumflex";s:3:"-20";s:9:"Adieresis";s:3:"-20";s:6:"Agrave";s:3:"-20";s:7:"Amacron";s:3:"-20";s:7:"Aogonek";s:3:"-20";s:5:"Aring";s:3:"-20";s:6:"Atilde";s:3:"-20";}s:6:"Ntilde";a:10:{s:1:"A";s:3:"-20";s:6:"Aacute";s:3:"-20";s:6:"Abreve";s:3:"-20";s:11:"Acircumflex";s:3:"-20";s:9:"Adieresis";s:3:"-20";s:6:"Agrave";s:3:"-20";s:7:"Amacron";s:3:"-20";s:7:"Aogonek";s:3:"-20";s:5:"Aring";s:3:"-20";s:6:"Atilde";s:3:"-20";}s:1:"O";a:19:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:6:"Oacute";a:19:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:11:"Ocircumflex";a:19:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:9:"Odieresis";a:19:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:6:"Ograve";a:19:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:13:"Ohungarumlaut";a:19:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:7:"Omacron";a:19:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:6:"Oslash";a:19:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:6:"Otilde";a:19:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:1:"P";a:40:{s:1:"A";s:3:"-74";s:6:"Aacute";s:3:"-74";s:6:"Abreve";s:3:"-74";s:11:"Acircumflex";s:3:"-74";s:9:"Adieresis";s:3:"-74";s:6:"Agrave";s:3:"-74";s:7:"Amacron";s:3:"-74";s:7:"Aogonek";s:3:"-74";s:5:"Aring";s:3:"-74";s:6:"Atilde";s:3:"-74";s:1:"a";s:3:"-10";s:6:"aacute";s:3:"-10";s:6:"abreve";s:3:"-10";s:11:"acircumflex";s:3:"-10";s:9:"adieresis";s:3:"-10";s:6:"agrave";s:3:"-10";s:7:"amacron";s:3:"-10";s:7:"aogonek";s:3:"-10";s:5:"aring";s:3:"-10";s:6:"atilde";s:3:"-10";s:5:"comma";s:3:"-92";s:1:"e";s:3:"-20";s:6:"eacute";s:3:"-20";s:6:"ecaron";s:3:"-20";s:11:"ecircumflex";s:3:"-20";s:9:"edieresis";s:3:"-20";s:10:"edotaccent";s:3:"-20";s:6:"egrave";s:3:"-20";s:7:"emacron";s:3:"-20";s:7:"eogonek";s:3:"-20";s:1:"o";s:3:"-20";s:6:"oacute";s:3:"-20";s:11:"ocircumflex";s:3:"-20";s:9:"odieresis";s:3:"-20";s:6:"ograve";s:3:"-20";s:13:"ohungarumlaut";s:3:"-20";s:7:"omacron";s:3:"-20";s:6:"oslash";s:3:"-20";s:6:"otilde";s:3:"-20";s:6:"period";s:4:"-110";}s:1:"Q";a:10:{s:1:"U";s:3:"-10";s:6:"Uacute";s:3:"-10";s:11:"Ucircumflex";s:3:"-10";s:9:"Udieresis";s:3:"-10";s:6:"Ugrave";s:3:"-10";s:13:"Uhungarumlaut";s:3:"-10";s:7:"Umacron";s:3:"-10";s:7:"Uogonek";s:3:"-10";s:5:"Uring";s:3:"-10";s:6:"period";s:3:"-20";}s:1:"R";a:26:{s:1:"O";s:3:"-30";s:6:"Oacute";s:3:"-30";s:11:"Ocircumflex";s:3:"-30";s:9:"Odieresis";s:3:"-30";s:6:"Ograve";s:3:"-30";s:13:"Ohungarumlaut";s:3:"-30";s:7:"Omacron";s:3:"-30";s:6:"Oslash";s:3:"-30";s:6:"Otilde";s:3:"-30";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"U";s:3:"-30";s:6:"Uacute";s:3:"-30";s:11:"Ucircumflex";s:3:"-30";s:9:"Udieresis";s:3:"-30";s:6:"Ugrave";s:3:"-30";s:13:"Uhungarumlaut";s:3:"-30";s:7:"Umacron";s:3:"-30";s:7:"Uogonek";s:3:"-30";s:5:"Uring";s:3:"-30";s:1:"V";s:3:"-55";s:1:"W";s:3:"-35";s:1:"Y";s:3:"-35";s:6:"Yacute";s:3:"-35";s:9:"Ydieresis";s:3:"-35";}s:6:"Racute";a:26:{s:1:"O";s:3:"-30";s:6:"Oacute";s:3:"-30";s:11:"Ocircumflex";s:3:"-30";s:9:"Odieresis";s:3:"-30";s:6:"Ograve";s:3:"-30";s:13:"Ohungarumlaut";s:3:"-30";s:7:"Omacron";s:3:"-30";s:6:"Oslash";s:3:"-30";s:6:"Otilde";s:3:"-30";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"U";s:3:"-30";s:6:"Uacute";s:3:"-30";s:11:"Ucircumflex";s:3:"-30";s:9:"Udieresis";s:3:"-30";s:6:"Ugrave";s:3:"-30";s:13:"Uhungarumlaut";s:3:"-30";s:7:"Umacron";s:3:"-30";s:7:"Uogonek";s:3:"-30";s:5:"Uring";s:3:"-30";s:1:"V";s:3:"-55";s:1:"W";s:3:"-35";s:1:"Y";s:3:"-35";s:6:"Yacute";s:3:"-35";s:9:"Ydieresis";s:3:"-35";}s:6:"Rcaron";a:26:{s:1:"O";s:3:"-30";s:6:"Oacute";s:3:"-30";s:11:"Ocircumflex";s:3:"-30";s:9:"Odieresis";s:3:"-30";s:6:"Ograve";s:3:"-30";s:13:"Ohungarumlaut";s:3:"-30";s:7:"Omacron";s:3:"-30";s:6:"Oslash";s:3:"-30";s:6:"Otilde";s:3:"-30";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"U";s:3:"-30";s:6:"Uacute";s:3:"-30";s:11:"Ucircumflex";s:3:"-30";s:9:"Udieresis";s:3:"-30";s:6:"Ugrave";s:3:"-30";s:13:"Uhungarumlaut";s:3:"-30";s:7:"Umacron";s:3:"-30";s:7:"Uogonek";s:3:"-30";s:5:"Uring";s:3:"-30";s:1:"V";s:3:"-55";s:1:"W";s:3:"-35";s:1:"Y";s:3:"-35";s:6:"Yacute";s:3:"-35";s:9:"Ydieresis";s:3:"-35";}s:12:"Rcommaaccent";a:26:{s:1:"O";s:3:"-30";s:6:"Oacute";s:3:"-30";s:11:"Ocircumflex";s:3:"-30";s:9:"Odieresis";s:3:"-30";s:6:"Ograve";s:3:"-30";s:13:"Ohungarumlaut";s:3:"-30";s:7:"Omacron";s:3:"-30";s:6:"Oslash";s:3:"-30";s:6:"Otilde";s:3:"-30";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"U";s:3:"-30";s:6:"Uacute";s:3:"-30";s:11:"Ucircumflex";s:3:"-30";s:9:"Udieresis";s:3:"-30";s:6:"Ugrave";s:3:"-30";s:13:"Uhungarumlaut";s:3:"-30";s:7:"Umacron";s:3:"-30";s:7:"Uogonek";s:3:"-30";s:5:"Uring";s:3:"-30";s:1:"V";s:3:"-55";s:1:"W";s:3:"-35";s:1:"Y";s:3:"-35";s:6:"Yacute";s:3:"-35";s:9:"Ydieresis";s:3:"-35";}s:1:"T";a:72:{s:1:"A";s:3:"-90";s:6:"Aacute";s:3:"-90";s:6:"Abreve";s:3:"-90";s:11:"Acircumflex";s:3:"-90";s:9:"Adieresis";s:3:"-90";s:6:"Agrave";s:3:"-90";s:7:"Amacron";s:3:"-90";s:7:"Aogonek";s:3:"-90";s:5:"Aring";s:3:"-90";s:6:"Atilde";s:3:"-90";s:1:"O";s:3:"-18";s:6:"Oacute";s:3:"-18";s:11:"Ocircumflex";s:3:"-18";s:9:"Odieresis";s:3:"-18";s:6:"Ograve";s:3:"-18";s:13:"Ohungarumlaut";s:3:"-18";s:7:"Omacron";s:3:"-18";s:6:"Oslash";s:3:"-18";s:6:"Otilde";s:3:"-18";s:1:"a";s:3:"-92";s:6:"aacute";s:3:"-92";s:6:"abreve";s:3:"-52";s:11:"acircumflex";s:3:"-52";s:9:"adieresis";s:3:"-52";s:6:"agrave";s:3:"-52";s:7:"amacron";s:3:"-52";s:7:"aogonek";s:3:"-92";s:5:"aring";s:3:"-92";s:6:"atilde";s:3:"-52";s:5:"colon";s:3:"-74";s:5:"comma";s:3:"-74";s:1:"e";s:3:"-92";s:6:"eacute";s:3:"-92";s:6:"ecaron";s:3:"-92";s:11:"ecircumflex";s:3:"-92";s:9:"edieresis";s:3:"-52";s:10:"edotaccent";s:3:"-92";s:6:"egrave";s:3:"-52";s:7:"emacron";s:3:"-52";s:7:"eogonek";s:3:"-92";s:6:"hyphen";s:3:"-92";s:1:"i";s:3:"-18";s:6:"iacute";s:3:"-18";s:7:"iogonek";s:3:"-18";s:1:"o";s:3:"-92";s:6:"oacute";s:3:"-92";s:11:"ocircumflex";s:3:"-92";s:9:"odieresis";s:3:"-92";s:6:"ograve";s:3:"-92";s:13:"ohungarumlaut";s:3:"-92";s:7:"omacron";s:3:"-92";s:6:"oslash";s:3:"-92";s:6:"otilde";s:3:"-92";s:6:"period";s:3:"-90";s:1:"r";s:3:"-74";s:6:"racute";s:3:"-74";s:6:"rcaron";s:3:"-74";s:12:"rcommaaccent";s:3:"-74";s:9:"semicolon";s:3:"-74";s:1:"u";s:3:"-92";s:6:"uacute";s:3:"-92";s:11:"ucircumflex";s:3:"-92";s:9:"udieresis";s:3:"-92";s:6:"ugrave";s:3:"-92";s:13:"uhungarumlaut";s:3:"-92";s:7:"umacron";s:3:"-92";s:7:"uogonek";s:3:"-92";s:5:"uring";s:3:"-92";s:1:"w";s:3:"-74";s:1:"y";s:3:"-34";s:6:"yacute";s:3:"-34";s:9:"ydieresis";s:3:"-34";}s:6:"Tcaron";a:72:{s:1:"A";s:3:"-90";s:6:"Aacute";s:3:"-90";s:6:"Abreve";s:3:"-90";s:11:"Acircumflex";s:3:"-90";s:9:"Adieresis";s:3:"-90";s:6:"Agrave";s:3:"-90";s:7:"Amacron";s:3:"-90";s:7:"Aogonek";s:3:"-90";s:5:"Aring";s:3:"-90";s:6:"Atilde";s:3:"-90";s:1:"O";s:3:"-18";s:6:"Oacute";s:3:"-18";s:11:"Ocircumflex";s:3:"-18";s:9:"Odieresis";s:3:"-18";s:6:"Ograve";s:3:"-18";s:13:"Ohungarumlaut";s:3:"-18";s:7:"Omacron";s:3:"-18";s:6:"Oslash";s:3:"-18";s:6:"Otilde";s:3:"-18";s:1:"a";s:3:"-92";s:6:"aacute";s:3:"-92";s:6:"abreve";s:3:"-52";s:11:"acircumflex";s:3:"-52";s:9:"adieresis";s:3:"-52";s:6:"agrave";s:3:"-52";s:7:"amacron";s:3:"-52";s:7:"aogonek";s:3:"-92";s:5:"aring";s:3:"-92";s:6:"atilde";s:3:"-52";s:5:"colon";s:3:"-74";s:5:"comma";s:3:"-74";s:1:"e";s:3:"-92";s:6:"eacute";s:3:"-92";s:6:"ecaron";s:3:"-92";s:11:"ecircumflex";s:3:"-92";s:9:"edieresis";s:3:"-52";s:10:"edotaccent";s:3:"-92";s:6:"egrave";s:3:"-52";s:7:"emacron";s:3:"-52";s:7:"eogonek";s:3:"-92";s:6:"hyphen";s:3:"-92";s:1:"i";s:3:"-18";s:6:"iacute";s:3:"-18";s:7:"iogonek";s:3:"-18";s:1:"o";s:3:"-92";s:6:"oacute";s:3:"-92";s:11:"ocircumflex";s:3:"-92";s:9:"odieresis";s:3:"-92";s:6:"ograve";s:3:"-92";s:13:"ohungarumlaut";s:3:"-92";s:7:"omacron";s:3:"-92";s:6:"oslash";s:3:"-92";s:6:"otilde";s:3:"-92";s:6:"period";s:3:"-90";s:1:"r";s:3:"-74";s:6:"racute";s:3:"-74";s:6:"rcaron";s:3:"-74";s:12:"rcommaaccent";s:3:"-74";s:9:"semicolon";s:3:"-74";s:1:"u";s:3:"-92";s:6:"uacute";s:3:"-92";s:11:"ucircumflex";s:3:"-92";s:9:"udieresis";s:3:"-92";s:6:"ugrave";s:3:"-92";s:13:"uhungarumlaut";s:3:"-92";s:7:"umacron";s:3:"-92";s:7:"uogonek";s:3:"-92";s:5:"uring";s:3:"-92";s:1:"w";s:3:"-74";s:1:"y";s:3:"-34";s:6:"yacute";s:3:"-34";s:9:"ydieresis";s:3:"-34";}s:12:"Tcommaaccent";a:72:{s:1:"A";s:3:"-90";s:6:"Aacute";s:3:"-90";s:6:"Abreve";s:3:"-90";s:11:"Acircumflex";s:3:"-90";s:9:"Adieresis";s:3:"-90";s:6:"Agrave";s:3:"-90";s:7:"Amacron";s:3:"-90";s:7:"Aogonek";s:3:"-90";s:5:"Aring";s:3:"-90";s:6:"Atilde";s:3:"-90";s:1:"O";s:3:"-18";s:6:"Oacute";s:3:"-18";s:11:"Ocircumflex";s:3:"-18";s:9:"Odieresis";s:3:"-18";s:6:"Ograve";s:3:"-18";s:13:"Ohungarumlaut";s:3:"-18";s:7:"Omacron";s:3:"-18";s:6:"Oslash";s:3:"-18";s:6:"Otilde";s:3:"-18";s:1:"a";s:3:"-92";s:6:"aacute";s:3:"-92";s:6:"abreve";s:3:"-52";s:11:"acircumflex";s:3:"-52";s:9:"adieresis";s:3:"-52";s:6:"agrave";s:3:"-52";s:7:"amacron";s:3:"-52";s:7:"aogonek";s:3:"-92";s:5:"aring";s:3:"-92";s:6:"atilde";s:3:"-52";s:5:"colon";s:3:"-74";s:5:"comma";s:3:"-74";s:1:"e";s:3:"-92";s:6:"eacute";s:3:"-92";s:6:"ecaron";s:3:"-92";s:11:"ecircumflex";s:3:"-92";s:9:"edieresis";s:3:"-52";s:10:"edotaccent";s:3:"-92";s:6:"egrave";s:3:"-52";s:7:"emacron";s:3:"-52";s:7:"eogonek";s:3:"-92";s:6:"hyphen";s:3:"-92";s:1:"i";s:3:"-18";s:6:"iacute";s:3:"-18";s:7:"iogonek";s:3:"-18";s:1:"o";s:3:"-92";s:6:"oacute";s:3:"-92";s:11:"ocircumflex";s:3:"-92";s:9:"odieresis";s:3:"-92";s:6:"ograve";s:3:"-92";s:13:"ohungarumlaut";s:3:"-92";s:7:"omacron";s:3:"-92";s:6:"oslash";s:3:"-92";s:6:"otilde";s:3:"-92";s:6:"period";s:3:"-90";s:1:"r";s:3:"-74";s:6:"racute";s:3:"-74";s:6:"rcaron";s:3:"-74";s:12:"rcommaaccent";s:3:"-74";s:9:"semicolon";s:3:"-74";s:1:"u";s:3:"-92";s:6:"uacute";s:3:"-92";s:11:"ucircumflex";s:3:"-92";s:9:"udieresis";s:3:"-92";s:6:"ugrave";s:3:"-92";s:13:"uhungarumlaut";s:3:"-92";s:7:"umacron";s:3:"-92";s:7:"uogonek";s:3:"-92";s:5:"uring";s:3:"-92";s:1:"w";s:3:"-74";s:1:"y";s:3:"-34";s:6:"yacute";s:3:"-34";s:9:"ydieresis";s:3:"-34";}s:1:"U";a:12:{s:1:"A";s:3:"-60";s:6:"Aacute";s:3:"-60";s:6:"Abreve";s:3:"-60";s:11:"Acircumflex";s:3:"-60";s:9:"Adieresis";s:3:"-60";s:6:"Agrave";s:3:"-60";s:7:"Amacron";s:3:"-60";s:7:"Aogonek";s:3:"-60";s:5:"Aring";s:3:"-60";s:6:"Atilde";s:3:"-60";s:5:"comma";s:3:"-50";s:6:"period";s:3:"-50";}s:6:"Uacute";a:12:{s:1:"A";s:3:"-60";s:6:"Aacute";s:3:"-60";s:6:"Abreve";s:3:"-60";s:11:"Acircumflex";s:3:"-60";s:9:"Adieresis";s:3:"-60";s:6:"Agrave";s:3:"-60";s:7:"Amacron";s:3:"-60";s:7:"Aogonek";s:3:"-60";s:5:"Aring";s:3:"-60";s:6:"Atilde";s:3:"-60";s:5:"comma";s:3:"-50";s:6:"period";s:3:"-50";}s:11:"Ucircumflex";a:12:{s:1:"A";s:3:"-60";s:6:"Aacute";s:3:"-60";s:6:"Abreve";s:3:"-60";s:11:"Acircumflex";s:3:"-60";s:9:"Adieresis";s:3:"-60";s:6:"Agrave";s:3:"-60";s:7:"Amacron";s:3:"-60";s:7:"Aogonek";s:3:"-60";s:5:"Aring";s:3:"-60";s:6:"Atilde";s:3:"-60";s:5:"comma";s:3:"-50";s:6:"period";s:3:"-50";}s:9:"Udieresis";a:12:{s:1:"A";s:3:"-60";s:6:"Aacute";s:3:"-60";s:6:"Abreve";s:3:"-60";s:11:"Acircumflex";s:3:"-60";s:9:"Adieresis";s:3:"-60";s:6:"Agrave";s:3:"-60";s:7:"Amacron";s:3:"-60";s:7:"Aogonek";s:3:"-60";s:5:"Aring";s:3:"-60";s:6:"Atilde";s:3:"-60";s:5:"comma";s:3:"-50";s:6:"period";s:3:"-50";}s:6:"Ugrave";a:12:{s:1:"A";s:3:"-60";s:6:"Aacute";s:3:"-60";s:6:"Abreve";s:3:"-60";s:11:"Acircumflex";s:3:"-60";s:9:"Adieresis";s:3:"-60";s:6:"Agrave";s:3:"-60";s:7:"Amacron";s:3:"-60";s:7:"Aogonek";s:3:"-60";s:5:"Aring";s:3:"-60";s:6:"Atilde";s:3:"-60";s:5:"comma";s:3:"-50";s:6:"period";s:3:"-50";}s:13:"Uhungarumlaut";a:12:{s:1:"A";s:3:"-60";s:6:"Aacute";s:3:"-60";s:6:"Abreve";s:3:"-60";s:11:"Acircumflex";s:3:"-60";s:9:"Adieresis";s:3:"-60";s:6:"Agrave";s:3:"-60";s:7:"Amacron";s:3:"-60";s:7:"Aogonek";s:3:"-60";s:5:"Aring";s:3:"-60";s:6:"Atilde";s:3:"-60";s:5:"comma";s:3:"-50";s:6:"period";s:3:"-50";}s:7:"Umacron";a:12:{s:1:"A";s:3:"-60";s:6:"Aacute";s:3:"-60";s:6:"Abreve";s:3:"-60";s:11:"Acircumflex";s:3:"-60";s:9:"Adieresis";s:3:"-60";s:6:"Agrave";s:3:"-60";s:7:"Amacron";s:3:"-60";s:7:"Aogonek";s:3:"-60";s:5:"Aring";s:3:"-60";s:6:"Atilde";s:3:"-60";s:5:"comma";s:3:"-50";s:6:"period";s:3:"-50";}s:7:"Uogonek";a:12:{s:1:"A";s:3:"-60";s:6:"Aacute";s:3:"-60";s:6:"Abreve";s:3:"-60";s:11:"Acircumflex";s:3:"-60";s:9:"Adieresis";s:3:"-60";s:6:"Agrave";s:3:"-60";s:7:"Amacron";s:3:"-60";s:7:"Aogonek";s:3:"-60";s:5:"Aring";s:3:"-60";s:6:"Atilde";s:3:"-60";s:5:"comma";s:3:"-50";s:6:"period";s:3:"-50";}s:5:"Uring";a:12:{s:1:"A";s:3:"-60";s:6:"Aacute";s:3:"-60";s:6:"Abreve";s:3:"-60";s:11:"Acircumflex";s:3:"-60";s:9:"Adieresis";s:3:"-60";s:6:"Agrave";s:3:"-60";s:7:"Amacron";s:3:"-60";s:7:"Aogonek";s:3:"-60";s:5:"Aring";s:3:"-60";s:6:"Atilde";s:3:"-60";s:5:"comma";s:3:"-50";s:6:"period";s:3:"-50";}s:1:"V";a:71:{s:1:"A";s:4:"-135";s:6:"Aacute";s:4:"-135";s:6:"Abreve";s:4:"-135";s:11:"Acircumflex";s:4:"-135";s:9:"Adieresis";s:4:"-135";s:6:"Agrave";s:4:"-135";s:7:"Amacron";s:4:"-135";s:7:"Aogonek";s:4:"-135";s:5:"Aring";s:4:"-135";s:6:"Atilde";s:4:"-135";s:1:"G";s:3:"-30";s:6:"Gbreve";s:3:"-30";s:12:"Gcommaaccent";s:3:"-30";s:1:"O";s:3:"-45";s:6:"Oacute";s:3:"-45";s:11:"Ocircumflex";s:3:"-45";s:9:"Odieresis";s:3:"-45";s:6:"Ograve";s:3:"-45";s:13:"Ohungarumlaut";s:3:"-45";s:7:"Omacron";s:3:"-45";s:6:"Oslash";s:3:"-45";s:6:"Otilde";s:3:"-45";s:1:"a";s:3:"-92";s:6:"aacute";s:3:"-92";s:6:"abreve";s:3:"-92";s:11:"acircumflex";s:3:"-92";s:9:"adieresis";s:3:"-92";s:6:"agrave";s:3:"-92";s:7:"amacron";s:3:"-92";s:7:"aogonek";s:3:"-92";s:5:"aring";s:3:"-92";s:6:"atilde";s:3:"-92";s:5:"colon";s:3:"-92";s:5:"comma";s:4:"-129";s:1:"e";s:4:"-100";s:6:"eacute";s:4:"-100";s:6:"ecaron";s:4:"-100";s:11:"ecircumflex";s:4:"-100";s:9:"edieresis";s:4:"-100";s:10:"edotaccent";s:4:"-100";s:6:"egrave";s:4:"-100";s:7:"emacron";s:4:"-100";s:7:"eogonek";s:4:"-100";s:6:"hyphen";s:3:"-74";s:1:"i";s:3:"-37";s:6:"iacute";s:3:"-37";s:11:"icircumflex";s:3:"-37";s:9:"idieresis";s:3:"-37";s:6:"igrave";s:3:"-37";s:7:"imacron";s:3:"-37";s:7:"iogonek";s:3:"-37";s:1:"o";s:4:"-100";s:6:"oacute";s:4:"-100";s:11:"ocircumflex";s:4:"-100";s:9:"odieresis";s:4:"-100";s:6:"ograve";s:4:"-100";s:13:"ohungarumlaut";s:4:"-100";s:7:"omacron";s:4:"-100";s:6:"oslash";s:4:"-100";s:6:"otilde";s:4:"-100";s:6:"period";s:4:"-145";s:9:"semicolon";s:3:"-92";s:1:"u";s:3:"-92";s:6:"uacute";s:3:"-92";s:11:"ucircumflex";s:3:"-92";s:9:"udieresis";s:3:"-92";s:6:"ugrave";s:3:"-92";s:13:"uhungarumlaut";s:3:"-92";s:7:"umacron";s:3:"-92";s:7:"uogonek";s:3:"-92";s:5:"uring";s:3:"-92";}s:1:"W";a:67:{s:1:"A";s:4:"-120";s:6:"Aacute";s:4:"-120";s:6:"Abreve";s:4:"-120";s:11:"Acircumflex";s:4:"-120";s:9:"Adieresis";s:4:"-120";s:6:"Agrave";s:4:"-120";s:7:"Amacron";s:4:"-120";s:7:"Aogonek";s:4:"-120";s:5:"Aring";s:4:"-120";s:6:"Atilde";s:4:"-120";s:1:"O";s:3:"-10";s:6:"Oacute";s:3:"-10";s:11:"Ocircumflex";s:3:"-10";s:9:"Odieresis";s:3:"-10";s:6:"Ograve";s:3:"-10";s:13:"Ohungarumlaut";s:3:"-10";s:7:"Omacron";s:3:"-10";s:6:"Oslash";s:3:"-10";s:6:"Otilde";s:3:"-10";s:1:"a";s:3:"-65";s:6:"aacute";s:3:"-65";s:6:"abreve";s:3:"-65";s:11:"acircumflex";s:3:"-65";s:9:"adieresis";s:3:"-65";s:6:"agrave";s:3:"-65";s:7:"amacron";s:3:"-65";s:7:"aogonek";s:3:"-65";s:5:"aring";s:3:"-65";s:6:"atilde";s:3:"-65";s:5:"colon";s:3:"-55";s:5:"comma";s:3:"-92";s:1:"e";s:3:"-65";s:6:"eacute";s:3:"-65";s:6:"ecaron";s:3:"-65";s:11:"ecircumflex";s:3:"-65";s:9:"edieresis";s:3:"-65";s:10:"edotaccent";s:3:"-65";s:6:"egrave";s:3:"-65";s:7:"emacron";s:3:"-65";s:7:"eogonek";s:3:"-65";s:6:"hyphen";s:3:"-37";s:1:"i";s:3:"-18";s:6:"iacute";s:3:"-18";s:7:"iogonek";s:3:"-18";s:1:"o";s:3:"-75";s:6:"oacute";s:3:"-75";s:11:"ocircumflex";s:3:"-75";s:9:"odieresis";s:3:"-75";s:6:"ograve";s:3:"-75";s:13:"ohungarumlaut";s:3:"-75";s:7:"omacron";s:3:"-75";s:6:"oslash";s:3:"-75";s:6:"otilde";s:3:"-75";s:6:"period";s:3:"-92";s:9:"semicolon";s:3:"-55";s:1:"u";s:3:"-50";s:6:"uacute";s:3:"-50";s:11:"ucircumflex";s:3:"-50";s:9:"udieresis";s:3:"-50";s:6:"ugrave";s:3:"-50";s:13:"uhungarumlaut";s:3:"-50";s:7:"umacron";s:3:"-50";s:7:"uogonek";s:3:"-50";s:5:"uring";s:3:"-50";s:1:"y";s:3:"-60";s:6:"yacute";s:3:"-60";s:9:"ydieresis";s:3:"-60";}s:1:"Y";a:64:{s:1:"A";s:4:"-110";s:6:"Aacute";s:4:"-110";s:6:"Abreve";s:4:"-110";s:11:"Acircumflex";s:4:"-110";s:9:"Adieresis";s:4:"-110";s:6:"Agrave";s:4:"-110";s:7:"Amacron";s:4:"-110";s:7:"Aogonek";s:4:"-110";s:5:"Aring";s:4:"-110";s:6:"Atilde";s:4:"-110";s:1:"O";s:3:"-35";s:6:"Oacute";s:3:"-35";s:11:"Ocircumflex";s:3:"-35";s:9:"Odieresis";s:3:"-35";s:6:"Ograve";s:3:"-35";s:13:"Ohungarumlaut";s:3:"-35";s:7:"Omacron";s:3:"-35";s:6:"Oslash";s:3:"-35";s:6:"Otilde";s:3:"-35";s:1:"a";s:3:"-85";s:6:"aacute";s:3:"-85";s:6:"abreve";s:3:"-85";s:11:"acircumflex";s:3:"-85";s:9:"adieresis";s:3:"-85";s:6:"agrave";s:3:"-85";s:7:"amacron";s:3:"-85";s:7:"aogonek";s:3:"-85";s:5:"aring";s:3:"-85";s:6:"atilde";s:3:"-85";s:5:"colon";s:3:"-92";s:5:"comma";s:3:"-92";s:1:"e";s:4:"-111";s:6:"eacute";s:4:"-111";s:6:"ecaron";s:4:"-111";s:11:"ecircumflex";s:4:"-111";s:9:"edieresis";s:3:"-71";s:10:"edotaccent";s:4:"-111";s:6:"egrave";s:3:"-71";s:7:"emacron";s:3:"-71";s:7:"eogonek";s:4:"-111";s:6:"hyphen";s:3:"-92";s:1:"i";s:3:"-37";s:6:"iacute";s:3:"-37";s:7:"iogonek";s:3:"-37";s:1:"o";s:4:"-111";s:6:"oacute";s:4:"-111";s:11:"ocircumflex";s:4:"-111";s:9:"odieresis";s:4:"-111";s:6:"ograve";s:4:"-111";s:13:"ohungarumlaut";s:4:"-111";s:7:"omacron";s:4:"-111";s:6:"oslash";s:4:"-111";s:6:"otilde";s:4:"-111";s:6:"period";s:3:"-92";s:9:"semicolon";s:3:"-92";s:1:"u";s:3:"-92";s:6:"uacute";s:3:"-92";s:11:"ucircumflex";s:3:"-92";s:9:"udieresis";s:3:"-92";s:6:"ugrave";s:3:"-92";s:13:"uhungarumlaut";s:3:"-92";s:7:"umacron";s:3:"-92";s:7:"uogonek";s:3:"-92";s:5:"uring";s:3:"-92";}s:6:"Yacute";a:64:{s:1:"A";s:4:"-110";s:6:"Aacute";s:4:"-110";s:6:"Abreve";s:4:"-110";s:11:"Acircumflex";s:4:"-110";s:9:"Adieresis";s:4:"-110";s:6:"Agrave";s:4:"-110";s:7:"Amacron";s:4:"-110";s:7:"Aogonek";s:4:"-110";s:5:"Aring";s:4:"-110";s:6:"Atilde";s:4:"-110";s:1:"O";s:3:"-35";s:6:"Oacute";s:3:"-35";s:11:"Ocircumflex";s:3:"-35";s:9:"Odieresis";s:3:"-35";s:6:"Ograve";s:3:"-35";s:13:"Ohungarumlaut";s:3:"-35";s:7:"Omacron";s:3:"-35";s:6:"Oslash";s:3:"-35";s:6:"Otilde";s:3:"-35";s:1:"a";s:3:"-85";s:6:"aacute";s:3:"-85";s:6:"abreve";s:3:"-85";s:11:"acircumflex";s:3:"-85";s:9:"adieresis";s:3:"-85";s:6:"agrave";s:3:"-85";s:7:"amacron";s:3:"-85";s:7:"aogonek";s:3:"-85";s:5:"aring";s:3:"-85";s:6:"atilde";s:3:"-85";s:5:"colon";s:3:"-92";s:5:"comma";s:3:"-92";s:1:"e";s:4:"-111";s:6:"eacute";s:4:"-111";s:6:"ecaron";s:4:"-111";s:11:"ecircumflex";s:4:"-111";s:9:"edieresis";s:3:"-71";s:10:"edotaccent";s:4:"-111";s:6:"egrave";s:3:"-71";s:7:"emacron";s:3:"-71";s:7:"eogonek";s:4:"-111";s:6:"hyphen";s:3:"-92";s:1:"i";s:3:"-37";s:6:"iacute";s:3:"-37";s:7:"iogonek";s:3:"-37";s:1:"o";s:4:"-111";s:6:"oacute";s:4:"-111";s:11:"ocircumflex";s:4:"-111";s:9:"odieresis";s:4:"-111";s:6:"ograve";s:4:"-111";s:13:"ohungarumlaut";s:4:"-111";s:7:"omacron";s:4:"-111";s:6:"oslash";s:4:"-111";s:6:"otilde";s:4:"-111";s:6:"period";s:3:"-92";s:9:"semicolon";s:3:"-92";s:1:"u";s:3:"-92";s:6:"uacute";s:3:"-92";s:11:"ucircumflex";s:3:"-92";s:9:"udieresis";s:3:"-92";s:6:"ugrave";s:3:"-92";s:13:"uhungarumlaut";s:3:"-92";s:7:"umacron";s:3:"-92";s:7:"uogonek";s:3:"-92";s:5:"uring";s:3:"-92";}s:9:"Ydieresis";a:64:{s:1:"A";s:4:"-110";s:6:"Aacute";s:4:"-110";s:6:"Abreve";s:4:"-110";s:11:"Acircumflex";s:4:"-110";s:9:"Adieresis";s:4:"-110";s:6:"Agrave";s:4:"-110";s:7:"Amacron";s:4:"-110";s:7:"Aogonek";s:4:"-110";s:5:"Aring";s:4:"-110";s:6:"Atilde";s:4:"-110";s:1:"O";s:3:"-35";s:6:"Oacute";s:3:"-35";s:11:"Ocircumflex";s:3:"-35";s:9:"Odieresis";s:3:"-35";s:6:"Ograve";s:3:"-35";s:13:"Ohungarumlaut";s:3:"-35";s:7:"Omacron";s:3:"-35";s:6:"Oslash";s:3:"-35";s:6:"Otilde";s:3:"-35";s:1:"a";s:3:"-85";s:6:"aacute";s:3:"-85";s:6:"abreve";s:3:"-85";s:11:"acircumflex";s:3:"-85";s:9:"adieresis";s:3:"-85";s:6:"agrave";s:3:"-85";s:7:"amacron";s:3:"-85";s:7:"aogonek";s:3:"-85";s:5:"aring";s:3:"-85";s:6:"atilde";s:3:"-85";s:5:"colon";s:3:"-92";s:5:"comma";s:3:"-92";s:1:"e";s:4:"-111";s:6:"eacute";s:4:"-111";s:6:"ecaron";s:4:"-111";s:11:"ecircumflex";s:4:"-111";s:9:"edieresis";s:3:"-71";s:10:"edotaccent";s:4:"-111";s:6:"egrave";s:3:"-71";s:7:"emacron";s:3:"-71";s:7:"eogonek";s:4:"-111";s:6:"hyphen";s:3:"-92";s:1:"i";s:3:"-37";s:6:"iacute";s:3:"-37";s:7:"iogonek";s:3:"-37";s:1:"o";s:4:"-111";s:6:"oacute";s:4:"-111";s:11:"ocircumflex";s:4:"-111";s:9:"odieresis";s:4:"-111";s:6:"ograve";s:4:"-111";s:13:"ohungarumlaut";s:4:"-111";s:7:"omacron";s:4:"-111";s:6:"oslash";s:4:"-111";s:6:"otilde";s:4:"-111";s:6:"period";s:3:"-92";s:9:"semicolon";s:3:"-92";s:1:"u";s:3:"-92";s:6:"uacute";s:3:"-92";s:11:"ucircumflex";s:3:"-92";s:9:"udieresis";s:3:"-92";s:6:"ugrave";s:3:"-92";s:13:"uhungarumlaut";s:3:"-92";s:7:"umacron";s:3:"-92";s:7:"uogonek";s:3:"-92";s:5:"uring";s:3:"-92";}s:1:"a";a:1:{s:1:"v";s:3:"-25";}s:6:"aacute";a:1:{s:1:"v";s:3:"-25";}s:6:"abreve";a:1:{s:1:"v";s:3:"-25";}s:11:"acircumflex";a:1:{s:1:"v";s:3:"-25";}s:9:"adieresis";a:1:{s:1:"v";s:3:"-25";}s:6:"agrave";a:1:{s:1:"v";s:3:"-25";}s:7:"amacron";a:1:{s:1:"v";s:3:"-25";}s:7:"aogonek";a:1:{s:1:"v";s:3:"-25";}s:5:"aring";a:1:{s:1:"v";s:3:"-25";}s:6:"atilde";a:1:{s:1:"v";s:3:"-25";}s:1:"b";a:12:{s:1:"b";s:3:"-10";s:6:"period";s:3:"-40";s:1:"u";s:3:"-20";s:6:"uacute";s:3:"-20";s:11:"ucircumflex";s:3:"-20";s:9:"udieresis";s:3:"-20";s:6:"ugrave";s:3:"-20";s:13:"uhungarumlaut";s:3:"-20";s:7:"umacron";s:3:"-20";s:7:"uogonek";s:3:"-20";s:5:"uring";s:3:"-20";s:1:"v";s:3:"-15";}s:5:"comma";a:2:{s:13:"quotedblright";s:3:"-45";s:10:"quoteright";s:3:"-55";}s:1:"d";a:1:{s:1:"w";s:3:"-15";}s:6:"dcroat";a:1:{s:1:"w";s:3:"-15";}s:1:"e";a:1:{s:1:"v";s:3:"-15";}s:6:"eacute";a:1:{s:1:"v";s:3:"-15";}s:6:"ecaron";a:1:{s:1:"v";s:3:"-15";}s:11:"ecircumflex";a:1:{s:1:"v";s:3:"-15";}s:9:"edieresis";a:1:{s:1:"v";s:3:"-15";}s:10:"edotaccent";a:1:{s:1:"v";s:3:"-15";}s:6:"egrave";a:1:{s:1:"v";s:3:"-15";}s:7:"emacron";a:1:{s:1:"v";s:3:"-15";}s:7:"eogonek";a:1:{s:1:"v";s:3:"-15";}s:1:"f";a:15:{s:5:"comma";s:3:"-15";s:8:"dotlessi";s:3:"-35";s:1:"i";s:3:"-25";s:1:"o";s:3:"-25";s:6:"oacute";s:3:"-25";s:11:"ocircumflex";s:3:"-25";s:9:"odieresis";s:3:"-25";s:6:"ograve";s:3:"-25";s:13:"ohungarumlaut";s:3:"-25";s:7:"omacron";s:3:"-25";s:6:"oslash";s:3:"-25";s:6:"otilde";s:3:"-25";s:6:"period";s:3:"-15";s:13:"quotedblright";s:2:"50";s:10:"quoteright";s:2:"55";}s:1:"g";a:1:{s:6:"period";s:3:"-15";}s:6:"gbreve";a:1:{s:6:"period";s:3:"-15";}s:12:"gcommaaccent";a:1:{s:6:"period";s:3:"-15";}s:1:"h";a:3:{s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:1:"i";a:1:{s:1:"v";s:3:"-10";}s:6:"iacute";a:1:{s:1:"v";s:3:"-10";}s:11:"icircumflex";a:1:{s:1:"v";s:3:"-10";}s:9:"idieresis";a:1:{s:1:"v";s:3:"-10";}s:6:"igrave";a:1:{s:1:"v";s:3:"-10";}s:7:"imacron";a:1:{s:1:"v";s:3:"-10";}s:7:"iogonek";a:1:{s:1:"v";s:3:"-10";}s:1:"k";a:21:{s:1:"e";s:3:"-10";s:6:"eacute";s:3:"-10";s:6:"ecaron";s:3:"-10";s:11:"ecircumflex";s:3:"-10";s:9:"edieresis";s:3:"-10";s:10:"edotaccent";s:3:"-10";s:6:"egrave";s:3:"-10";s:7:"emacron";s:3:"-10";s:7:"eogonek";s:3:"-10";s:1:"o";s:3:"-15";s:6:"oacute";s:3:"-15";s:11:"ocircumflex";s:3:"-15";s:9:"odieresis";s:3:"-15";s:6:"ograve";s:3:"-15";s:13:"ohungarumlaut";s:3:"-15";s:7:"omacron";s:3:"-15";s:6:"oslash";s:3:"-15";s:6:"otilde";s:3:"-15";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:12:"kcommaaccent";a:21:{s:1:"e";s:3:"-10";s:6:"eacute";s:3:"-10";s:6:"ecaron";s:3:"-10";s:11:"ecircumflex";s:3:"-10";s:9:"edieresis";s:3:"-10";s:10:"edotaccent";s:3:"-10";s:6:"egrave";s:3:"-10";s:7:"emacron";s:3:"-10";s:7:"eogonek";s:3:"-10";s:1:"o";s:3:"-15";s:6:"oacute";s:3:"-15";s:11:"ocircumflex";s:3:"-15";s:9:"odieresis";s:3:"-15";s:6:"ograve";s:3:"-15";s:13:"ohungarumlaut";s:3:"-15";s:7:"omacron";s:3:"-15";s:6:"oslash";s:3:"-15";s:6:"otilde";s:3:"-15";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:1:"n";a:1:{s:1:"v";s:3:"-40";}s:6:"nacute";a:1:{s:1:"v";s:3:"-40";}s:6:"ncaron";a:1:{s:1:"v";s:3:"-40";}s:12:"ncommaaccent";a:1:{s:1:"v";s:3:"-40";}s:6:"ntilde";a:1:{s:1:"v";s:3:"-40";}s:1:"o";a:2:{s:1:"v";s:3:"-10";s:1:"w";s:3:"-10";}s:6:"oacute";a:2:{s:1:"v";s:3:"-10";s:1:"w";s:3:"-10";}s:11:"ocircumflex";a:2:{s:1:"v";s:3:"-10";s:1:"w";s:3:"-10";}s:9:"odieresis";a:2:{s:1:"v";s:3:"-10";s:1:"w";s:3:"-10";}s:6:"ograve";a:2:{s:1:"v";s:3:"-10";s:1:"w";s:3:"-10";}s:13:"ohungarumlaut";a:2:{s:1:"v";s:3:"-10";s:1:"w";s:3:"-10";}s:7:"omacron";a:2:{s:1:"v";s:3:"-10";s:1:"w";s:3:"-10";}s:6:"oslash";a:2:{s:1:"v";s:3:"-10";s:1:"w";s:3:"-10";}s:6:"otilde";a:2:{s:1:"v";s:3:"-10";s:1:"w";s:3:"-10";}s:6:"period";a:2:{s:13:"quotedblright";s:3:"-55";s:10:"quoteright";s:3:"-55";}s:12:"quotedblleft";a:10:{s:1:"A";s:3:"-10";s:6:"Aacute";s:3:"-10";s:6:"Abreve";s:3:"-10";s:11:"Acircumflex";s:3:"-10";s:9:"Adieresis";s:3:"-10";s:6:"Agrave";s:3:"-10";s:7:"Amacron";s:3:"-10";s:7:"Aogonek";s:3:"-10";s:5:"Aring";s:3:"-10";s:6:"Atilde";s:3:"-10";}s:9:"quoteleft";a:11:{s:1:"A";s:3:"-10";s:6:"Aacute";s:3:"-10";s:6:"Abreve";s:3:"-10";s:11:"Acircumflex";s:3:"-10";s:9:"Adieresis";s:3:"-10";s:6:"Agrave";s:3:"-10";s:7:"Amacron";s:3:"-10";s:7:"Aogonek";s:3:"-10";s:5:"Aring";s:3:"-10";s:6:"Atilde";s:3:"-10";s:9:"quoteleft";s:3:"-63";}s:10:"quoteright";a:14:{s:1:"d";s:3:"-20";s:6:"dcroat";s:3:"-20";s:10:"quoteright";s:3:"-63";s:1:"r";s:3:"-20";s:6:"racute";s:3:"-20";s:6:"rcaron";s:3:"-20";s:12:"rcommaaccent";s:3:"-20";s:1:"s";s:3:"-37";s:6:"sacute";s:3:"-37";s:6:"scaron";s:3:"-37";s:8:"scedilla";s:3:"-37";s:12:"scommaaccent";s:3:"-37";s:5:"space";s:3:"-74";s:1:"v";s:3:"-20";}s:1:"r";a:36:{s:1:"c";s:3:"-18";s:6:"cacute";s:3:"-18";s:6:"ccaron";s:3:"-18";s:8:"ccedilla";s:3:"-18";s:5:"comma";s:3:"-92";s:1:"e";s:3:"-18";s:6:"eacute";s:3:"-18";s:6:"ecaron";s:3:"-18";s:11:"ecircumflex";s:3:"-18";s:9:"edieresis";s:3:"-18";s:10:"edotaccent";s:3:"-18";s:6:"egrave";s:3:"-18";s:7:"emacron";s:3:"-18";s:7:"eogonek";s:3:"-18";s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";s:6:"hyphen";s:3:"-37";s:1:"n";s:3:"-15";s:6:"nacute";s:3:"-15";s:6:"ncaron";s:3:"-15";s:12:"ncommaaccent";s:3:"-15";s:6:"ntilde";s:3:"-15";s:1:"o";s:3:"-18";s:6:"oacute";s:3:"-18";s:11:"ocircumflex";s:3:"-18";s:9:"odieresis";s:3:"-18";s:6:"ograve";s:3:"-18";s:13:"ohungarumlaut";s:3:"-18";s:7:"omacron";s:3:"-18";s:6:"oslash";s:3:"-18";s:6:"otilde";s:3:"-18";s:1:"p";s:3:"-10";s:6:"period";s:4:"-100";s:1:"q";s:3:"-18";s:1:"v";s:3:"-10";}s:6:"racute";a:36:{s:1:"c";s:3:"-18";s:6:"cacute";s:3:"-18";s:6:"ccaron";s:3:"-18";s:8:"ccedilla";s:3:"-18";s:5:"comma";s:3:"-92";s:1:"e";s:3:"-18";s:6:"eacute";s:3:"-18";s:6:"ecaron";s:3:"-18";s:11:"ecircumflex";s:3:"-18";s:9:"edieresis";s:3:"-18";s:10:"edotaccent";s:3:"-18";s:6:"egrave";s:3:"-18";s:7:"emacron";s:3:"-18";s:7:"eogonek";s:3:"-18";s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";s:6:"hyphen";s:3:"-37";s:1:"n";s:3:"-15";s:6:"nacute";s:3:"-15";s:6:"ncaron";s:3:"-15";s:12:"ncommaaccent";s:3:"-15";s:6:"ntilde";s:3:"-15";s:1:"o";s:3:"-18";s:6:"oacute";s:3:"-18";s:11:"ocircumflex";s:3:"-18";s:9:"odieresis";s:3:"-18";s:6:"ograve";s:3:"-18";s:13:"ohungarumlaut";s:3:"-18";s:7:"omacron";s:3:"-18";s:6:"oslash";s:3:"-18";s:6:"otilde";s:3:"-18";s:1:"p";s:3:"-10";s:6:"period";s:4:"-100";s:1:"q";s:3:"-18";s:1:"v";s:3:"-10";}s:6:"rcaron";a:36:{s:1:"c";s:3:"-18";s:6:"cacute";s:3:"-18";s:6:"ccaron";s:3:"-18";s:8:"ccedilla";s:3:"-18";s:5:"comma";s:3:"-92";s:1:"e";s:3:"-18";s:6:"eacute";s:3:"-18";s:6:"ecaron";s:3:"-18";s:11:"ecircumflex";s:3:"-18";s:9:"edieresis";s:3:"-18";s:10:"edotaccent";s:3:"-18";s:6:"egrave";s:3:"-18";s:7:"emacron";s:3:"-18";s:7:"eogonek";s:3:"-18";s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";s:6:"hyphen";s:3:"-37";s:1:"n";s:3:"-15";s:6:"nacute";s:3:"-15";s:6:"ncaron";s:3:"-15";s:12:"ncommaaccent";s:3:"-15";s:6:"ntilde";s:3:"-15";s:1:"o";s:3:"-18";s:6:"oacute";s:3:"-18";s:11:"ocircumflex";s:3:"-18";s:9:"odieresis";s:3:"-18";s:6:"ograve";s:3:"-18";s:13:"ohungarumlaut";s:3:"-18";s:7:"omacron";s:3:"-18";s:6:"oslash";s:3:"-18";s:6:"otilde";s:3:"-18";s:1:"p";s:3:"-10";s:6:"period";s:4:"-100";s:1:"q";s:3:"-18";s:1:"v";s:3:"-10";}s:12:"rcommaaccent";a:36:{s:1:"c";s:3:"-18";s:6:"cacute";s:3:"-18";s:6:"ccaron";s:3:"-18";s:8:"ccedilla";s:3:"-18";s:5:"comma";s:3:"-92";s:1:"e";s:3:"-18";s:6:"eacute";s:3:"-18";s:6:"ecaron";s:3:"-18";s:11:"ecircumflex";s:3:"-18";s:9:"edieresis";s:3:"-18";s:10:"edotaccent";s:3:"-18";s:6:"egrave";s:3:"-18";s:7:"emacron";s:3:"-18";s:7:"eogonek";s:3:"-18";s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";s:6:"hyphen";s:3:"-37";s:1:"n";s:3:"-15";s:6:"nacute";s:3:"-15";s:6:"ncaron";s:3:"-15";s:12:"ncommaaccent";s:3:"-15";s:6:"ntilde";s:3:"-15";s:1:"o";s:3:"-18";s:6:"oacute";s:3:"-18";s:11:"ocircumflex";s:3:"-18";s:9:"odieresis";s:3:"-18";s:6:"ograve";s:3:"-18";s:13:"ohungarumlaut";s:3:"-18";s:7:"omacron";s:3:"-18";s:6:"oslash";s:3:"-18";s:6:"otilde";s:3:"-18";s:1:"p";s:3:"-10";s:6:"period";s:4:"-100";s:1:"q";s:3:"-18";s:1:"v";s:3:"-10";}s:5:"space";a:18:{s:1:"A";s:3:"-55";s:6:"Aacute";s:3:"-55";s:6:"Abreve";s:3:"-55";s:11:"Acircumflex";s:3:"-55";s:9:"Adieresis";s:3:"-55";s:6:"Agrave";s:3:"-55";s:7:"Amacron";s:3:"-55";s:7:"Aogonek";s:3:"-55";s:5:"Aring";s:3:"-55";s:6:"Atilde";s:3:"-55";s:1:"T";s:3:"-30";s:6:"Tcaron";s:3:"-30";s:12:"Tcommaaccent";s:3:"-30";s:1:"V";s:3:"-45";s:1:"W";s:3:"-30";s:1:"Y";s:3:"-55";s:6:"Yacute";s:3:"-55";s:9:"Ydieresis";s:3:"-55";}s:1:"v";a:30:{s:1:"a";s:3:"-10";s:6:"aacute";s:3:"-10";s:6:"abreve";s:3:"-10";s:11:"acircumflex";s:3:"-10";s:9:"adieresis";s:3:"-10";s:6:"agrave";s:3:"-10";s:7:"amacron";s:3:"-10";s:7:"aogonek";s:3:"-10";s:5:"aring";s:3:"-10";s:6:"atilde";s:3:"-10";s:5:"comma";s:3:"-55";s:1:"e";s:3:"-10";s:6:"eacute";s:3:"-10";s:6:"ecaron";s:3:"-10";s:11:"ecircumflex";s:3:"-10";s:9:"edieresis";s:3:"-10";s:10:"edotaccent";s:3:"-10";s:6:"egrave";s:3:"-10";s:7:"emacron";s:3:"-10";s:7:"eogonek";s:3:"-10";s:1:"o";s:3:"-10";s:6:"oacute";s:3:"-10";s:11:"ocircumflex";s:3:"-10";s:9:"odieresis";s:3:"-10";s:6:"ograve";s:3:"-10";s:13:"ohungarumlaut";s:3:"-10";s:7:"omacron";s:3:"-10";s:6:"oslash";s:3:"-10";s:6:"otilde";s:3:"-10";s:6:"period";s:3:"-70";}s:1:"w";a:11:{s:5:"comma";s:3:"-55";s:1:"o";s:3:"-10";s:6:"oacute";s:3:"-10";s:11:"ocircumflex";s:3:"-10";s:9:"odieresis";s:3:"-10";s:6:"ograve";s:3:"-10";s:13:"ohungarumlaut";s:3:"-10";s:7:"omacron";s:3:"-10";s:6:"oslash";s:3:"-10";s:6:"otilde";s:3:"-10";s:6:"period";s:3:"-70";}s:1:"y";a:20:{s:5:"comma";s:3:"-55";s:1:"e";s:3:"-10";s:6:"eacute";s:3:"-10";s:6:"ecaron";s:3:"-10";s:11:"ecircumflex";s:3:"-10";s:9:"edieresis";s:3:"-10";s:10:"edotaccent";s:3:"-10";s:6:"egrave";s:3:"-10";s:7:"emacron";s:3:"-10";s:7:"eogonek";s:3:"-10";s:1:"o";s:3:"-25";s:6:"oacute";s:3:"-25";s:11:"ocircumflex";s:3:"-25";s:9:"odieresis";s:3:"-25";s:6:"ograve";s:3:"-25";s:13:"ohungarumlaut";s:3:"-25";s:7:"omacron";s:3:"-25";s:6:"oslash";s:3:"-25";s:6:"otilde";s:3:"-25";s:6:"period";s:3:"-70";}s:6:"yacute";a:20:{s:5:"comma";s:3:"-55";s:1:"e";s:3:"-10";s:6:"eacute";s:3:"-10";s:6:"ecaron";s:3:"-10";s:11:"ecircumflex";s:3:"-10";s:9:"edieresis";s:3:"-10";s:10:"edotaccent";s:3:"-10";s:6:"egrave";s:3:"-10";s:7:"emacron";s:3:"-10";s:7:"eogonek";s:3:"-10";s:1:"o";s:3:"-25";s:6:"oacute";s:3:"-25";s:11:"ocircumflex";s:3:"-25";s:9:"odieresis";s:3:"-25";s:6:"ograve";s:3:"-25";s:13:"ohungarumlaut";s:3:"-25";s:7:"omacron";s:3:"-25";s:6:"oslash";s:3:"-25";s:6:"otilde";s:3:"-25";s:6:"period";s:3:"-70";}s:9:"ydieresis";a:20:{s:5:"comma";s:3:"-55";s:1:"e";s:3:"-10";s:6:"eacute";s:3:"-10";s:6:"ecaron";s:3:"-10";s:11:"ecircumflex";s:3:"-10";s:9:"edieresis";s:3:"-10";s:10:"edotaccent";s:3:"-10";s:6:"egrave";s:3:"-10";s:7:"emacron";s:3:"-10";s:7:"eogonek";s:3:"-10";s:1:"o";s:3:"-25";s:6:"oacute";s:3:"-25";s:11:"ocircumflex";s:3:"-25";s:9:"odieresis";s:3:"-25";s:6:"ograve";s:3:"-25";s:13:"ohungarumlaut";s:3:"-25";s:7:"omacron";s:3:"-25";s:6:"oslash";s:3:"-25";s:6:"otilde";s:3:"-25";s:6:"period";s:3:"-70";}}s:9:"_version_";i:1;} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Times-BoldItalic.afm b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Times-BoldItalic.afm
new file mode 100755
index 00000000..6a8c171a
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Times-BoldItalic.afm
@@ -0,0 +1 @@
+a:22:{s:8:"FontName";s:16:"Times-BoldItalic";s:8:"FullName";s:17:"Times Bold Italic";s:10:"FamilyName";s:5:"Times";s:6:"Weight";s:4:"Bold";s:11:"ItalicAngle";s:3:"-15";s:12:"IsFixedPitch";s:5:"false";s:12:"CharacterSet";s:13:"ExtendedRoman";s:8:"FontBBox";a:4:{i:0;s:4:"-200";i:1;s:4:"-218";i:2;s:3:"996";i:3;s:3:"921";}s:17:"UnderlinePosition";s:4:"-100";s:18:"UnderlineThickness";s:2:"50";s:7:"Version";s:7:"002.000";s:14:"EncodingScheme";s:21:"AdobeStandardEncoding";s:9:"CapHeight";s:3:"669";s:7:"XHeight";s:3:"462";s:8:"Ascender";s:3:"683";s:9:"Descender";s:4:"-217";s:5:"StdHW";s:2:"42";s:5:"StdVW";s:3:"121";s:16:"StartCharMetrics";s:3:"315";s:1:"C";a:464:{i:32;a:4:{s:1:"C";s:2:"32";s:2:"WX";s:3:"250";s:1:"N";s:5:"space";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:1:"0";i:3;s:1:"0";}}s:5:"space";a:4:{s:1:"C";s:2:"32";s:2:"WX";s:3:"250";s:1:"N";s:5:"space";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:1:"0";i:3;s:1:"0";}}i:33;a:4:{s:1:"C";s:2:"33";s:2:"WX";s:3:"389";s:1:"N";s:6:"exclam";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:3:"-13";i:2;s:3:"370";i:3;s:3:"684";}}s:6:"exclam";a:4:{s:1:"C";s:2:"33";s:2:"WX";s:3:"389";s:1:"N";s:6:"exclam";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:3:"-13";i:2;s:3:"370";i:3;s:3:"684";}}i:34;a:4:{s:1:"C";s:2:"34";s:2:"WX";s:3:"555";s:1:"N";s:8:"quotedbl";s:1:"B";a:4:{i:0;s:3:"136";i:1;s:3:"398";i:2;s:3:"536";i:3;s:3:"685";}}s:8:"quotedbl";a:4:{s:1:"C";s:2:"34";s:2:"WX";s:3:"555";s:1:"N";s:8:"quotedbl";s:1:"B";a:4:{i:0;s:3:"136";i:1;s:3:"398";i:2;s:3:"536";i:3;s:3:"685";}}i:35;a:4:{s:1:"C";s:2:"35";s:2:"WX";s:3:"500";s:1:"N";s:10:"numbersign";s:1:"B";a:4:{i:0;s:3:"-33";i:1;s:1:"0";i:2;s:3:"533";i:3;s:3:"700";}}s:10:"numbersign";a:4:{s:1:"C";s:2:"35";s:2:"WX";s:3:"500";s:1:"N";s:10:"numbersign";s:1:"B";a:4:{i:0;s:3:"-33";i:1;s:1:"0";i:2;s:3:"533";i:3;s:3:"700";}}i:36;a:4:{s:1:"C";s:2:"36";s:2:"WX";s:3:"500";s:1:"N";s:6:"dollar";s:1:"B";a:4:{i:0;s:3:"-20";i:1;s:4:"-100";i:2;s:3:"497";i:3;s:3:"733";}}s:6:"dollar";a:4:{s:1:"C";s:2:"36";s:2:"WX";s:3:"500";s:1:"N";s:6:"dollar";s:1:"B";a:4:{i:0;s:3:"-20";i:1;s:4:"-100";i:2;s:3:"497";i:3;s:3:"733";}}i:37;a:4:{s:1:"C";s:2:"37";s:2:"WX";s:3:"833";s:1:"N";s:7:"percent";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:3:"-10";i:2;s:3:"793";i:3;s:3:"692";}}s:7:"percent";a:4:{s:1:"C";s:2:"37";s:2:"WX";s:3:"833";s:1:"N";s:7:"percent";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:3:"-10";i:2;s:3:"793";i:3;s:3:"692";}}i:38;a:4:{s:1:"C";s:2:"38";s:2:"WX";s:3:"778";s:1:"N";s:9:"ampersand";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:3:"-19";i:2;s:3:"699";i:3;s:3:"682";}}s:9:"ampersand";a:4:{s:1:"C";s:2:"38";s:2:"WX";s:3:"778";s:1:"N";s:9:"ampersand";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:3:"-19";i:2;s:3:"699";i:3;s:3:"682";}}i:39;a:4:{s:1:"C";s:2:"39";s:2:"WX";s:3:"333";s:1:"N";s:10:"quoteright";s:1:"B";a:4:{i:0;s:2:"98";i:1;s:3:"369";i:2;s:3:"302";i:3;s:3:"685";}}s:10:"quoteright";a:4:{s:1:"C";s:2:"39";s:2:"WX";s:3:"333";s:1:"N";s:10:"quoteright";s:1:"B";a:4:{i:0;s:2:"98";i:1;s:3:"369";i:2;s:3:"302";i:3;s:3:"685";}}i:40;a:4:{s:1:"C";s:2:"40";s:2:"WX";s:3:"333";s:1:"N";s:9:"parenleft";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:4:"-179";i:2;s:3:"344";i:3;s:3:"685";}}s:9:"parenleft";a:4:{s:1:"C";s:2:"40";s:2:"WX";s:3:"333";s:1:"N";s:9:"parenleft";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:4:"-179";i:2;s:3:"344";i:3;s:3:"685";}}i:41;a:4:{s:1:"C";s:2:"41";s:2:"WX";s:3:"333";s:1:"N";s:10:"parenright";s:1:"B";a:4:{i:0;s:3:"-44";i:1;s:4:"-179";i:2;s:3:"271";i:3;s:3:"685";}}s:10:"parenright";a:4:{s:1:"C";s:2:"41";s:2:"WX";s:3:"333";s:1:"N";s:10:"parenright";s:1:"B";a:4:{i:0;s:3:"-44";i:1;s:4:"-179";i:2;s:3:"271";i:3;s:3:"685";}}i:42;a:4:{s:1:"C";s:2:"42";s:2:"WX";s:3:"500";s:1:"N";s:8:"asterisk";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:3:"249";i:2;s:3:"456";i:3;s:3:"685";}}s:8:"asterisk";a:4:{s:1:"C";s:2:"42";s:2:"WX";s:3:"500";s:1:"N";s:8:"asterisk";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:3:"249";i:2;s:3:"456";i:3;s:3:"685";}}i:43;a:4:{s:1:"C";s:2:"43";s:2:"WX";s:3:"570";s:1:"N";s:4:"plus";s:1:"B";a:4:{i:0;s:2:"33";i:1;s:1:"0";i:2;s:3:"537";i:3;s:3:"506";}}s:4:"plus";a:4:{s:1:"C";s:2:"43";s:2:"WX";s:3:"570";s:1:"N";s:4:"plus";s:1:"B";a:4:{i:0;s:2:"33";i:1;s:1:"0";i:2;s:3:"537";i:3;s:3:"506";}}i:44;a:4:{s:1:"C";s:2:"44";s:2:"WX";s:3:"250";s:1:"N";s:5:"comma";s:1:"B";a:4:{i:0;s:3:"-60";i:1;s:4:"-182";i:2;s:3:"144";i:3;s:3:"134";}}s:5:"comma";a:4:{s:1:"C";s:2:"44";s:2:"WX";s:3:"250";s:1:"N";s:5:"comma";s:1:"B";a:4:{i:0;s:3:"-60";i:1;s:4:"-182";i:2;s:3:"144";i:3;s:3:"134";}}i:45;a:4:{s:1:"C";s:2:"45";s:2:"WX";s:3:"333";s:1:"N";s:6:"hyphen";s:1:"B";a:4:{i:0;s:1:"2";i:1;s:3:"166";i:2;s:3:"271";i:3;s:3:"282";}}s:6:"hyphen";a:4:{s:1:"C";s:2:"45";s:2:"WX";s:3:"333";s:1:"N";s:6:"hyphen";s:1:"B";a:4:{i:0;s:1:"2";i:1;s:3:"166";i:2;s:3:"271";i:3;s:3:"282";}}i:46;a:4:{s:1:"C";s:2:"46";s:2:"WX";s:3:"250";s:1:"N";s:6:"period";s:1:"B";a:4:{i:0;s:2:"-9";i:1;s:3:"-13";i:2;s:3:"139";i:3;s:3:"135";}}s:6:"period";a:4:{s:1:"C";s:2:"46";s:2:"WX";s:3:"250";s:1:"N";s:6:"period";s:1:"B";a:4:{i:0;s:2:"-9";i:1;s:3:"-13";i:2;s:3:"139";i:3;s:3:"135";}}i:47;a:4:{s:1:"C";s:2:"47";s:2:"WX";s:3:"278";s:1:"N";s:5:"slash";s:1:"B";a:4:{i:0;s:3:"-64";i:1;s:3:"-18";i:2;s:3:"342";i:3;s:3:"685";}}s:5:"slash";a:4:{s:1:"C";s:2:"47";s:2:"WX";s:3:"278";s:1:"N";s:5:"slash";s:1:"B";a:4:{i:0;s:3:"-64";i:1;s:3:"-18";i:2;s:3:"342";i:3;s:3:"685";}}i:48;a:4:{s:1:"C";s:2:"48";s:2:"WX";s:3:"500";s:1:"N";s:4:"zero";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:3:"-14";i:2;s:3:"477";i:3;s:3:"683";}}s:4:"zero";a:4:{s:1:"C";s:2:"48";s:2:"WX";s:3:"500";s:1:"N";s:4:"zero";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:3:"-14";i:2;s:3:"477";i:3;s:3:"683";}}i:49;a:4:{s:1:"C";s:2:"49";s:2:"WX";s:3:"500";s:1:"N";s:3:"one";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:1:"0";i:2;s:3:"419";i:3;s:3:"683";}}s:3:"one";a:4:{s:1:"C";s:2:"49";s:2:"WX";s:3:"500";s:1:"N";s:3:"one";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:1:"0";i:2;s:3:"419";i:3;s:3:"683";}}i:50;a:4:{s:1:"C";s:2:"50";s:2:"WX";s:3:"500";s:1:"N";s:3:"two";s:1:"B";a:4:{i:0;s:3:"-27";i:1;s:1:"0";i:2;s:3:"446";i:3;s:3:"683";}}s:3:"two";a:4:{s:1:"C";s:2:"50";s:2:"WX";s:3:"500";s:1:"N";s:3:"two";s:1:"B";a:4:{i:0;s:3:"-27";i:1;s:1:"0";i:2;s:3:"446";i:3;s:3:"683";}}i:51;a:4:{s:1:"C";s:2:"51";s:2:"WX";s:3:"500";s:1:"N";s:5:"three";s:1:"B";a:4:{i:0;s:3:"-15";i:1;s:3:"-13";i:2;s:3:"450";i:3;s:3:"683";}}s:5:"three";a:4:{s:1:"C";s:2:"51";s:2:"WX";s:3:"500";s:1:"N";s:5:"three";s:1:"B";a:4:{i:0;s:3:"-15";i:1;s:3:"-13";i:2;s:3:"450";i:3;s:3:"683";}}i:52;a:4:{s:1:"C";s:2:"52";s:2:"WX";s:3:"500";s:1:"N";s:4:"four";s:1:"B";a:4:{i:0;s:3:"-15";i:1;s:1:"0";i:2;s:3:"503";i:3;s:3:"683";}}s:4:"four";a:4:{s:1:"C";s:2:"52";s:2:"WX";s:3:"500";s:1:"N";s:4:"four";s:1:"B";a:4:{i:0;s:3:"-15";i:1;s:1:"0";i:2;s:3:"503";i:3;s:3:"683";}}i:53;a:4:{s:1:"C";s:2:"53";s:2:"WX";s:3:"500";s:1:"N";s:4:"five";s:1:"B";a:4:{i:0;s:3:"-11";i:1;s:3:"-13";i:2;s:3:"487";i:3;s:3:"669";}}s:4:"five";a:4:{s:1:"C";s:2:"53";s:2:"WX";s:3:"500";s:1:"N";s:4:"five";s:1:"B";a:4:{i:0;s:3:"-11";i:1;s:3:"-13";i:2;s:3:"487";i:3;s:3:"669";}}i:54;a:4:{s:1:"C";s:2:"54";s:2:"WX";s:3:"500";s:1:"N";s:3:"six";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:3:"-15";i:2;s:3:"509";i:3;s:3:"679";}}s:3:"six";a:4:{s:1:"C";s:2:"54";s:2:"WX";s:3:"500";s:1:"N";s:3:"six";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:3:"-15";i:2;s:3:"509";i:3;s:3:"679";}}i:55;a:4:{s:1:"C";s:2:"55";s:2:"WX";s:3:"500";s:1:"N";s:5:"seven";s:1:"B";a:4:{i:0;s:2:"52";i:1;s:1:"0";i:2;s:3:"525";i:3;s:3:"669";}}s:5:"seven";a:4:{s:1:"C";s:2:"55";s:2:"WX";s:3:"500";s:1:"N";s:5:"seven";s:1:"B";a:4:{i:0;s:2:"52";i:1;s:1:"0";i:2;s:3:"525";i:3;s:3:"669";}}i:56;a:4:{s:1:"C";s:2:"56";s:2:"WX";s:3:"500";s:1:"N";s:5:"eight";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:3:"-13";i:2;s:3:"476";i:3;s:3:"683";}}s:5:"eight";a:4:{s:1:"C";s:2:"56";s:2:"WX";s:3:"500";s:1:"N";s:5:"eight";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:3:"-13";i:2;s:3:"476";i:3;s:3:"683";}}i:57;a:4:{s:1:"C";s:2:"57";s:2:"WX";s:3:"500";s:1:"N";s:4:"nine";s:1:"B";a:4:{i:0;s:3:"-12";i:1;s:3:"-10";i:2;s:3:"475";i:3;s:3:"683";}}s:4:"nine";a:4:{s:1:"C";s:2:"57";s:2:"WX";s:3:"500";s:1:"N";s:4:"nine";s:1:"B";a:4:{i:0;s:3:"-12";i:1;s:3:"-10";i:2;s:3:"475";i:3;s:3:"683";}}i:58;a:4:{s:1:"C";s:2:"58";s:2:"WX";s:3:"333";s:1:"N";s:5:"colon";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:3:"-13";i:2;s:3:"264";i:3;s:3:"459";}}s:5:"colon";a:4:{s:1:"C";s:2:"58";s:2:"WX";s:3:"333";s:1:"N";s:5:"colon";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:3:"-13";i:2;s:3:"264";i:3;s:3:"459";}}i:59;a:4:{s:1:"C";s:2:"59";s:2:"WX";s:3:"333";s:1:"N";s:9:"semicolon";s:1:"B";a:4:{i:0;s:3:"-25";i:1;s:4:"-183";i:2;s:3:"264";i:3;s:3:"459";}}s:9:"semicolon";a:4:{s:1:"C";s:2:"59";s:2:"WX";s:3:"333";s:1:"N";s:9:"semicolon";s:1:"B";a:4:{i:0;s:3:"-25";i:1;s:4:"-183";i:2;s:3:"264";i:3;s:3:"459";}}i:60;a:4:{s:1:"C";s:2:"60";s:2:"WX";s:3:"570";s:1:"N";s:4:"less";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:2:"-8";i:2;s:3:"539";i:3;s:3:"514";}}s:4:"less";a:4:{s:1:"C";s:2:"60";s:2:"WX";s:3:"570";s:1:"N";s:4:"less";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:2:"-8";i:2;s:3:"539";i:3;s:3:"514";}}i:61;a:4:{s:1:"C";s:2:"61";s:2:"WX";s:3:"570";s:1:"N";s:5:"equal";s:1:"B";a:4:{i:0;s:2:"33";i:1;s:3:"107";i:2;s:3:"537";i:3;s:3:"399";}}s:5:"equal";a:4:{s:1:"C";s:2:"61";s:2:"WX";s:3:"570";s:1:"N";s:5:"equal";s:1:"B";a:4:{i:0;s:2:"33";i:1;s:3:"107";i:2;s:3:"537";i:3;s:3:"399";}}i:62;a:4:{s:1:"C";s:2:"62";s:2:"WX";s:3:"570";s:1:"N";s:7:"greater";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:2:"-8";i:2;s:3:"539";i:3;s:3:"514";}}s:7:"greater";a:4:{s:1:"C";s:2:"62";s:2:"WX";s:3:"570";s:1:"N";s:7:"greater";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:2:"-8";i:2;s:3:"539";i:3;s:3:"514";}}i:63;a:4:{s:1:"C";s:2:"63";s:2:"WX";s:3:"500";s:1:"N";s:8:"question";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:3:"-13";i:2;s:3:"470";i:3;s:3:"684";}}s:8:"question";a:4:{s:1:"C";s:2:"63";s:2:"WX";s:3:"500";s:1:"N";s:8:"question";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:3:"-13";i:2;s:3:"470";i:3;s:3:"684";}}i:64;a:4:{s:1:"C";s:2:"64";s:2:"WX";s:3:"832";s:1:"N";s:2:"at";s:1:"B";a:4:{i:0;s:2:"63";i:1;s:3:"-18";i:2;s:3:"770";i:3;s:3:"685";}}s:2:"at";a:4:{s:1:"C";s:2:"64";s:2:"WX";s:3:"832";s:1:"N";s:2:"at";s:1:"B";a:4:{i:0;s:2:"63";i:1;s:3:"-18";i:2;s:3:"770";i:3;s:3:"685";}}i:65;a:4:{s:1:"C";s:2:"65";s:2:"WX";s:3:"667";s:1:"N";s:1:"A";s:1:"B";a:4:{i:0;s:3:"-67";i:1;s:1:"0";i:2;s:3:"593";i:3;s:3:"683";}}s:1:"A";a:4:{s:1:"C";s:2:"65";s:2:"WX";s:3:"667";s:1:"N";s:1:"A";s:1:"B";a:4:{i:0;s:3:"-67";i:1;s:1:"0";i:2;s:3:"593";i:3;s:3:"683";}}i:66;a:4:{s:1:"C";s:2:"66";s:2:"WX";s:3:"667";s:1:"N";s:1:"B";s:1:"B";a:4:{i:0;s:3:"-24";i:1;s:1:"0";i:2;s:3:"624";i:3;s:3:"669";}}s:1:"B";a:4:{s:1:"C";s:2:"66";s:2:"WX";s:3:"667";s:1:"N";s:1:"B";s:1:"B";a:4:{i:0;s:3:"-24";i:1;s:1:"0";i:2;s:3:"624";i:3;s:3:"669";}}i:67;a:4:{s:1:"C";s:2:"67";s:2:"WX";s:3:"667";s:1:"N";s:1:"C";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:3:"-18";i:2;s:3:"677";i:3;s:3:"685";}}s:1:"C";a:4:{s:1:"C";s:2:"67";s:2:"WX";s:3:"667";s:1:"N";s:1:"C";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:3:"-18";i:2;s:3:"677";i:3;s:3:"685";}}i:68;a:4:{s:1:"C";s:2:"68";s:2:"WX";s:3:"722";s:1:"N";s:1:"D";s:1:"B";a:4:{i:0;s:3:"-46";i:1;s:1:"0";i:2;s:3:"685";i:3;s:3:"669";}}s:1:"D";a:4:{s:1:"C";s:2:"68";s:2:"WX";s:3:"722";s:1:"N";s:1:"D";s:1:"B";a:4:{i:0;s:3:"-46";i:1;s:1:"0";i:2;s:3:"685";i:3;s:3:"669";}}i:69;a:4:{s:1:"C";s:2:"69";s:2:"WX";s:3:"667";s:1:"N";s:1:"E";s:1:"B";a:4:{i:0;s:3:"-27";i:1;s:1:"0";i:2;s:3:"653";i:3;s:3:"669";}}s:1:"E";a:4:{s:1:"C";s:2:"69";s:2:"WX";s:3:"667";s:1:"N";s:1:"E";s:1:"B";a:4:{i:0;s:3:"-27";i:1;s:1:"0";i:2;s:3:"653";i:3;s:3:"669";}}i:70;a:4:{s:1:"C";s:2:"70";s:2:"WX";s:3:"667";s:1:"N";s:1:"F";s:1:"B";a:4:{i:0;s:3:"-13";i:1;s:1:"0";i:2;s:3:"660";i:3;s:3:"669";}}s:1:"F";a:4:{s:1:"C";s:2:"70";s:2:"WX";s:3:"667";s:1:"N";s:1:"F";s:1:"B";a:4:{i:0;s:3:"-13";i:1;s:1:"0";i:2;s:3:"660";i:3;s:3:"669";}}i:71;a:4:{s:1:"C";s:2:"71";s:2:"WX";s:3:"722";s:1:"N";s:1:"G";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:3:"-18";i:2;s:3:"706";i:3;s:3:"685";}}s:1:"G";a:4:{s:1:"C";s:2:"71";s:2:"WX";s:3:"722";s:1:"N";s:1:"G";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:3:"-18";i:2;s:3:"706";i:3;s:3:"685";}}i:72;a:4:{s:1:"C";s:2:"72";s:2:"WX";s:3:"778";s:1:"N";s:1:"H";s:1:"B";a:4:{i:0;s:3:"-24";i:1;s:1:"0";i:2;s:3:"799";i:3;s:3:"669";}}s:1:"H";a:4:{s:1:"C";s:2:"72";s:2:"WX";s:3:"778";s:1:"N";s:1:"H";s:1:"B";a:4:{i:0;s:3:"-24";i:1;s:1:"0";i:2;s:3:"799";i:3;s:3:"669";}}i:73;a:4:{s:1:"C";s:2:"73";s:2:"WX";s:3:"389";s:1:"N";s:1:"I";s:1:"B";a:4:{i:0;s:3:"-32";i:1;s:1:"0";i:2;s:3:"406";i:3;s:3:"669";}}s:1:"I";a:4:{s:1:"C";s:2:"73";s:2:"WX";s:3:"389";s:1:"N";s:1:"I";s:1:"B";a:4:{i:0;s:3:"-32";i:1;s:1:"0";i:2;s:3:"406";i:3;s:3:"669";}}i:74;a:4:{s:1:"C";s:2:"74";s:2:"WX";s:3:"500";s:1:"N";s:1:"J";s:1:"B";a:4:{i:0;s:3:"-46";i:1;s:3:"-99";i:2;s:3:"524";i:3;s:3:"669";}}s:1:"J";a:4:{s:1:"C";s:2:"74";s:2:"WX";s:3:"500";s:1:"N";s:1:"J";s:1:"B";a:4:{i:0;s:3:"-46";i:1;s:3:"-99";i:2;s:3:"524";i:3;s:3:"669";}}i:75;a:4:{s:1:"C";s:2:"75";s:2:"WX";s:3:"667";s:1:"N";s:1:"K";s:1:"B";a:4:{i:0;s:3:"-21";i:1;s:1:"0";i:2;s:3:"702";i:3;s:3:"669";}}s:1:"K";a:4:{s:1:"C";s:2:"75";s:2:"WX";s:3:"667";s:1:"N";s:1:"K";s:1:"B";a:4:{i:0;s:3:"-21";i:1;s:1:"0";i:2;s:3:"702";i:3;s:3:"669";}}i:76;a:4:{s:1:"C";s:2:"76";s:2:"WX";s:3:"611";s:1:"N";s:1:"L";s:1:"B";a:4:{i:0;s:3:"-22";i:1;s:1:"0";i:2;s:3:"590";i:3;s:3:"669";}}s:1:"L";a:4:{s:1:"C";s:2:"76";s:2:"WX";s:3:"611";s:1:"N";s:1:"L";s:1:"B";a:4:{i:0;s:3:"-22";i:1;s:1:"0";i:2;s:3:"590";i:3;s:3:"669";}}i:77;a:4:{s:1:"C";s:2:"77";s:2:"WX";s:3:"889";s:1:"N";s:1:"M";s:1:"B";a:4:{i:0;s:3:"-29";i:1;s:3:"-12";i:2;s:3:"917";i:3;s:3:"669";}}s:1:"M";a:4:{s:1:"C";s:2:"77";s:2:"WX";s:3:"889";s:1:"N";s:1:"M";s:1:"B";a:4:{i:0;s:3:"-29";i:1;s:3:"-12";i:2;s:3:"917";i:3;s:3:"669";}}i:78;a:4:{s:1:"C";s:2:"78";s:2:"WX";s:3:"722";s:1:"N";s:1:"N";s:1:"B";a:4:{i:0;s:3:"-27";i:1;s:3:"-15";i:2;s:3:"748";i:3;s:3:"669";}}s:1:"N";a:4:{s:1:"C";s:2:"78";s:2:"WX";s:3:"722";s:1:"N";s:1:"N";s:1:"B";a:4:{i:0;s:3:"-27";i:1;s:3:"-15";i:2;s:3:"748";i:3;s:3:"669";}}i:79;a:4:{s:1:"C";s:2:"79";s:2:"WX";s:3:"722";s:1:"N";s:1:"O";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:3:"-18";i:2;s:3:"691";i:3;s:3:"685";}}s:1:"O";a:4:{s:1:"C";s:2:"79";s:2:"WX";s:3:"722";s:1:"N";s:1:"O";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:3:"-18";i:2;s:3:"691";i:3;s:3:"685";}}i:80;a:4:{s:1:"C";s:2:"80";s:2:"WX";s:3:"611";s:1:"N";s:1:"P";s:1:"B";a:4:{i:0;s:3:"-27";i:1;s:1:"0";i:2;s:3:"613";i:3;s:3:"669";}}s:1:"P";a:4:{s:1:"C";s:2:"80";s:2:"WX";s:3:"611";s:1:"N";s:1:"P";s:1:"B";a:4:{i:0;s:3:"-27";i:1;s:1:"0";i:2;s:3:"613";i:3;s:3:"669";}}i:81;a:4:{s:1:"C";s:2:"81";s:2:"WX";s:3:"722";s:1:"N";s:1:"Q";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:4:"-208";i:2;s:3:"691";i:3;s:3:"685";}}s:1:"Q";a:4:{s:1:"C";s:2:"81";s:2:"WX";s:3:"722";s:1:"N";s:1:"Q";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:4:"-208";i:2;s:3:"691";i:3;s:3:"685";}}i:82;a:4:{s:1:"C";s:2:"82";s:2:"WX";s:3:"667";s:1:"N";s:1:"R";s:1:"B";a:4:{i:0;s:3:"-29";i:1;s:1:"0";i:2;s:3:"623";i:3;s:3:"669";}}s:1:"R";a:4:{s:1:"C";s:2:"82";s:2:"WX";s:3:"667";s:1:"N";s:1:"R";s:1:"B";a:4:{i:0;s:3:"-29";i:1;s:1:"0";i:2;s:3:"623";i:3;s:3:"669";}}i:83;a:4:{s:1:"C";s:2:"83";s:2:"WX";s:3:"556";s:1:"N";s:1:"S";s:1:"B";a:4:{i:0;s:1:"2";i:1;s:3:"-18";i:2;s:3:"526";i:3;s:3:"685";}}s:1:"S";a:4:{s:1:"C";s:2:"83";s:2:"WX";s:3:"556";s:1:"N";s:1:"S";s:1:"B";a:4:{i:0;s:1:"2";i:1;s:3:"-18";i:2;s:3:"526";i:3;s:3:"685";}}i:84;a:4:{s:1:"C";s:2:"84";s:2:"WX";s:3:"611";s:1:"N";s:1:"T";s:1:"B";a:4:{i:0;s:2:"50";i:1;s:1:"0";i:2;s:3:"650";i:3;s:3:"669";}}s:1:"T";a:4:{s:1:"C";s:2:"84";s:2:"WX";s:3:"611";s:1:"N";s:1:"T";s:1:"B";a:4:{i:0;s:2:"50";i:1;s:1:"0";i:2;s:3:"650";i:3;s:3:"669";}}i:85;a:4:{s:1:"C";s:2:"85";s:2:"WX";s:3:"722";s:1:"N";s:1:"U";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:3:"-18";i:2;s:3:"744";i:3;s:3:"669";}}s:1:"U";a:4:{s:1:"C";s:2:"85";s:2:"WX";s:3:"722";s:1:"N";s:1:"U";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:3:"-18";i:2;s:3:"744";i:3;s:3:"669";}}i:86;a:4:{s:1:"C";s:2:"86";s:2:"WX";s:3:"667";s:1:"N";s:1:"V";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:3:"-18";i:2;s:3:"715";i:3;s:3:"669";}}s:1:"V";a:4:{s:1:"C";s:2:"86";s:2:"WX";s:3:"667";s:1:"N";s:1:"V";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:3:"-18";i:2;s:3:"715";i:3;s:3:"669";}}i:87;a:4:{s:1:"C";s:2:"87";s:2:"WX";s:3:"889";s:1:"N";s:1:"W";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:3:"-18";i:2;s:3:"940";i:3;s:3:"669";}}s:1:"W";a:4:{s:1:"C";s:2:"87";s:2:"WX";s:3:"889";s:1:"N";s:1:"W";s:1:"B";a:4:{i:0;s:2:"65";i:1;s:3:"-18";i:2;s:3:"940";i:3;s:3:"669";}}i:88;a:4:{s:1:"C";s:2:"88";s:2:"WX";s:3:"667";s:1:"N";s:1:"X";s:1:"B";a:4:{i:0;s:3:"-24";i:1;s:1:"0";i:2;s:3:"694";i:3;s:3:"669";}}s:1:"X";a:4:{s:1:"C";s:2:"88";s:2:"WX";s:3:"667";s:1:"N";s:1:"X";s:1:"B";a:4:{i:0;s:3:"-24";i:1;s:1:"0";i:2;s:3:"694";i:3;s:3:"669";}}i:89;a:4:{s:1:"C";s:2:"89";s:2:"WX";s:3:"611";s:1:"N";s:1:"Y";s:1:"B";a:4:{i:0;s:2:"73";i:1;s:1:"0";i:2;s:3:"659";i:3;s:3:"669";}}s:1:"Y";a:4:{s:1:"C";s:2:"89";s:2:"WX";s:3:"611";s:1:"N";s:1:"Y";s:1:"B";a:4:{i:0;s:2:"73";i:1;s:1:"0";i:2;s:3:"659";i:3;s:3:"669";}}i:90;a:4:{s:1:"C";s:2:"90";s:2:"WX";s:3:"611";s:1:"N";s:1:"Z";s:1:"B";a:4:{i:0;s:3:"-11";i:1;s:1:"0";i:2;s:3:"590";i:3;s:3:"669";}}s:1:"Z";a:4:{s:1:"C";s:2:"90";s:2:"WX";s:3:"611";s:1:"N";s:1:"Z";s:1:"B";a:4:{i:0;s:3:"-11";i:1;s:1:"0";i:2;s:3:"590";i:3;s:3:"669";}}i:91;a:4:{s:1:"C";s:2:"91";s:2:"WX";s:3:"333";s:1:"N";s:11:"bracketleft";s:1:"B";a:4:{i:0;s:3:"-37";i:1;s:4:"-159";i:2;s:3:"362";i:3;s:3:"674";}}s:11:"bracketleft";a:4:{s:1:"C";s:2:"91";s:2:"WX";s:3:"333";s:1:"N";s:11:"bracketleft";s:1:"B";a:4:{i:0;s:3:"-37";i:1;s:4:"-159";i:2;s:3:"362";i:3;s:3:"674";}}i:92;a:4:{s:1:"C";s:2:"92";s:2:"WX";s:3:"278";s:1:"N";s:9:"backslash";s:1:"B";a:4:{i:0;s:2:"-1";i:1;s:3:"-18";i:2;s:3:"279";i:3;s:3:"685";}}s:9:"backslash";a:4:{s:1:"C";s:2:"92";s:2:"WX";s:3:"278";s:1:"N";s:9:"backslash";s:1:"B";a:4:{i:0;s:2:"-1";i:1;s:3:"-18";i:2;s:3:"279";i:3;s:3:"685";}}i:93;a:4:{s:1:"C";s:2:"93";s:2:"WX";s:3:"333";s:1:"N";s:12:"bracketright";s:1:"B";a:4:{i:0;s:3:"-56";i:1;s:4:"-157";i:2;s:3:"343";i:3;s:3:"674";}}s:12:"bracketright";a:4:{s:1:"C";s:2:"93";s:2:"WX";s:3:"333";s:1:"N";s:12:"bracketright";s:1:"B";a:4:{i:0;s:3:"-56";i:1;s:4:"-157";i:2;s:3:"343";i:3;s:3:"674";}}i:94;a:4:{s:1:"C";s:2:"94";s:2:"WX";s:3:"570";s:1:"N";s:11:"asciicircum";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:3:"304";i:2;s:3:"503";i:3;s:3:"669";}}s:11:"asciicircum";a:4:{s:1:"C";s:2:"94";s:2:"WX";s:3:"570";s:1:"N";s:11:"asciicircum";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:3:"304";i:2;s:3:"503";i:3;s:3:"669";}}i:95;a:4:{s:1:"C";s:2:"95";s:2:"WX";s:3:"500";s:1:"N";s:10:"underscore";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:4:"-125";i:2;s:3:"500";i:3;s:3:"-75";}}s:10:"underscore";a:4:{s:1:"C";s:2:"95";s:2:"WX";s:3:"500";s:1:"N";s:10:"underscore";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:4:"-125";i:2;s:3:"500";i:3;s:3:"-75";}}i:96;a:4:{s:1:"C";s:2:"96";s:2:"WX";s:3:"333";s:1:"N";s:9:"quoteleft";s:1:"B";a:4:{i:0;s:3:"128";i:1;s:3:"369";i:2;s:3:"332";i:3;s:3:"685";}}s:9:"quoteleft";a:4:{s:1:"C";s:2:"96";s:2:"WX";s:3:"333";s:1:"N";s:9:"quoteleft";s:1:"B";a:4:{i:0;s:3:"128";i:1;s:3:"369";i:2;s:3:"332";i:3;s:3:"685";}}i:97;a:4:{s:1:"C";s:2:"97";s:2:"WX";s:3:"500";s:1:"N";s:1:"a";s:1:"B";a:4:{i:0;s:3:"-21";i:1;s:3:"-14";i:2;s:3:"455";i:3;s:3:"462";}}s:1:"a";a:4:{s:1:"C";s:2:"97";s:2:"WX";s:3:"500";s:1:"N";s:1:"a";s:1:"B";a:4:{i:0;s:3:"-21";i:1;s:3:"-14";i:2;s:3:"455";i:3;s:3:"462";}}i:98;a:4:{s:1:"C";s:2:"98";s:2:"WX";s:3:"500";s:1:"N";s:1:"b";s:1:"B";a:4:{i:0;s:3:"-14";i:1;s:3:"-13";i:2;s:3:"444";i:3;s:3:"699";}}s:1:"b";a:4:{s:1:"C";s:2:"98";s:2:"WX";s:3:"500";s:1:"N";s:1:"b";s:1:"B";a:4:{i:0;s:3:"-14";i:1;s:3:"-13";i:2;s:3:"444";i:3;s:3:"699";}}i:99;a:4:{s:1:"C";s:2:"99";s:2:"WX";s:3:"444";s:1:"N";s:1:"c";s:1:"B";a:4:{i:0;s:2:"-5";i:1;s:3:"-13";i:2;s:3:"392";i:3;s:3:"462";}}s:1:"c";a:4:{s:1:"C";s:2:"99";s:2:"WX";s:3:"444";s:1:"N";s:1:"c";s:1:"B";a:4:{i:0;s:2:"-5";i:1;s:3:"-13";i:2;s:3:"392";i:3;s:3:"462";}}i:100;a:4:{s:1:"C";s:3:"100";s:2:"WX";s:3:"500";s:1:"N";s:1:"d";s:1:"B";a:4:{i:0;s:3:"-21";i:1;s:3:"-13";i:2;s:3:"517";i:3;s:3:"699";}}s:1:"d";a:4:{s:1:"C";s:3:"100";s:2:"WX";s:3:"500";s:1:"N";s:1:"d";s:1:"B";a:4:{i:0;s:3:"-21";i:1;s:3:"-13";i:2;s:3:"517";i:3;s:3:"699";}}i:101;a:4:{s:1:"C";s:3:"101";s:2:"WX";s:3:"444";s:1:"N";s:1:"e";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:3:"-13";i:2;s:3:"398";i:3;s:3:"462";}}s:1:"e";a:4:{s:1:"C";s:3:"101";s:2:"WX";s:3:"444";s:1:"N";s:1:"e";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:3:"-13";i:2;s:3:"398";i:3;s:3:"462";}}i:102;a:5:{s:1:"C";s:3:"102";s:2:"WX";s:3:"333";s:1:"N";s:1:"f";s:1:"B";a:4:{i:0;s:4:"-169";i:1;s:4:"-205";i:2;s:3:"446";i:3;s:3:"698";}s:1:"L";a:2:{i:0;s:1:"l";i:1;s:2:"fl";}}s:1:"f";a:5:{s:1:"C";s:3:"102";s:2:"WX";s:3:"333";s:1:"N";s:1:"f";s:1:"B";a:4:{i:0;s:4:"-169";i:1;s:4:"-205";i:2;s:3:"446";i:3;s:3:"698";}s:1:"L";a:2:{i:0;s:1:"l";i:1;s:2:"fl";}}i:103;a:4:{s:1:"C";s:3:"103";s:2:"WX";s:3:"500";s:1:"N";s:1:"g";s:1:"B";a:4:{i:0;s:3:"-52";i:1;s:4:"-203";i:2;s:3:"478";i:3;s:3:"462";}}s:1:"g";a:4:{s:1:"C";s:3:"103";s:2:"WX";s:3:"500";s:1:"N";s:1:"g";s:1:"B";a:4:{i:0;s:3:"-52";i:1;s:4:"-203";i:2;s:3:"478";i:3;s:3:"462";}}i:104;a:4:{s:1:"C";s:3:"104";s:2:"WX";s:3:"556";s:1:"N";s:1:"h";s:1:"B";a:4:{i:0;s:3:"-13";i:1;s:2:"-9";i:2;s:3:"498";i:3;s:3:"699";}}s:1:"h";a:4:{s:1:"C";s:3:"104";s:2:"WX";s:3:"556";s:1:"N";s:1:"h";s:1:"B";a:4:{i:0;s:3:"-13";i:1;s:2:"-9";i:2;s:3:"498";i:3;s:3:"699";}}i:105;a:4:{s:1:"C";s:3:"105";s:2:"WX";s:3:"278";s:1:"N";s:1:"i";s:1:"B";a:4:{i:0;s:1:"2";i:1;s:2:"-9";i:2;s:3:"263";i:3;s:3:"684";}}s:1:"i";a:4:{s:1:"C";s:3:"105";s:2:"WX";s:3:"278";s:1:"N";s:1:"i";s:1:"B";a:4:{i:0;s:1:"2";i:1;s:2:"-9";i:2;s:3:"263";i:3;s:3:"684";}}i:106;a:4:{s:1:"C";s:3:"106";s:2:"WX";s:3:"278";s:1:"N";s:1:"j";s:1:"B";a:4:{i:0;s:4:"-189";i:1;s:4:"-207";i:2;s:3:"279";i:3;s:3:"684";}}s:1:"j";a:4:{s:1:"C";s:3:"106";s:2:"WX";s:3:"278";s:1:"N";s:1:"j";s:1:"B";a:4:{i:0;s:4:"-189";i:1;s:4:"-207";i:2;s:3:"279";i:3;s:3:"684";}}i:107;a:4:{s:1:"C";s:3:"107";s:2:"WX";s:3:"500";s:1:"N";s:1:"k";s:1:"B";a:4:{i:0;s:3:"-23";i:1;s:2:"-8";i:2;s:3:"483";i:3;s:3:"699";}}s:1:"k";a:4:{s:1:"C";s:3:"107";s:2:"WX";s:3:"500";s:1:"N";s:1:"k";s:1:"B";a:4:{i:0;s:3:"-23";i:1;s:2:"-8";i:2;s:3:"483";i:3;s:3:"699";}}i:108;a:4:{s:1:"C";s:3:"108";s:2:"WX";s:3:"278";s:1:"N";s:1:"l";s:1:"B";a:4:{i:0;s:1:"2";i:1;s:2:"-9";i:2;s:3:"290";i:3;s:3:"699";}}s:1:"l";a:4:{s:1:"C";s:3:"108";s:2:"WX";s:3:"278";s:1:"N";s:1:"l";s:1:"B";a:4:{i:0;s:1:"2";i:1;s:2:"-9";i:2;s:3:"290";i:3;s:3:"699";}}i:109;a:4:{s:1:"C";s:3:"109";s:2:"WX";s:3:"778";s:1:"N";s:1:"m";s:1:"B";a:4:{i:0;s:3:"-14";i:1;s:2:"-9";i:2;s:3:"722";i:3;s:3:"462";}}s:1:"m";a:4:{s:1:"C";s:3:"109";s:2:"WX";s:3:"778";s:1:"N";s:1:"m";s:1:"B";a:4:{i:0;s:3:"-14";i:1;s:2:"-9";i:2;s:3:"722";i:3;s:3:"462";}}i:110;a:4:{s:1:"C";s:3:"110";s:2:"WX";s:3:"556";s:1:"N";s:1:"n";s:1:"B";a:4:{i:0;s:2:"-6";i:1;s:2:"-9";i:2;s:3:"493";i:3;s:3:"462";}}s:1:"n";a:4:{s:1:"C";s:3:"110";s:2:"WX";s:3:"556";s:1:"N";s:1:"n";s:1:"B";a:4:{i:0;s:2:"-6";i:1;s:2:"-9";i:2;s:3:"493";i:3;s:3:"462";}}i:111;a:4:{s:1:"C";s:3:"111";s:2:"WX";s:3:"500";s:1:"N";s:1:"o";s:1:"B";a:4:{i:0;s:2:"-3";i:1;s:3:"-13";i:2;s:3:"441";i:3;s:3:"462";}}s:1:"o";a:4:{s:1:"C";s:3:"111";s:2:"WX";s:3:"500";s:1:"N";s:1:"o";s:1:"B";a:4:{i:0;s:2:"-3";i:1;s:3:"-13";i:2;s:3:"441";i:3;s:3:"462";}}i:112;a:4:{s:1:"C";s:3:"112";s:2:"WX";s:3:"500";s:1:"N";s:1:"p";s:1:"B";a:4:{i:0;s:4:"-120";i:1;s:4:"-205";i:2;s:3:"446";i:3;s:3:"462";}}s:1:"p";a:4:{s:1:"C";s:3:"112";s:2:"WX";s:3:"500";s:1:"N";s:1:"p";s:1:"B";a:4:{i:0;s:4:"-120";i:1;s:4:"-205";i:2;s:3:"446";i:3;s:3:"462";}}i:113;a:4:{s:1:"C";s:3:"113";s:2:"WX";s:3:"500";s:1:"N";s:1:"q";s:1:"B";a:4:{i:0;s:1:"1";i:1;s:4:"-205";i:2;s:3:"471";i:3;s:3:"462";}}s:1:"q";a:4:{s:1:"C";s:3:"113";s:2:"WX";s:3:"500";s:1:"N";s:1:"q";s:1:"B";a:4:{i:0;s:1:"1";i:1;s:4:"-205";i:2;s:3:"471";i:3;s:3:"462";}}i:114;a:4:{s:1:"C";s:3:"114";s:2:"WX";s:3:"389";s:1:"N";s:1:"r";s:1:"B";a:4:{i:0;s:3:"-21";i:1;s:1:"0";i:2;s:3:"389";i:3;s:3:"462";}}s:1:"r";a:4:{s:1:"C";s:3:"114";s:2:"WX";s:3:"389";s:1:"N";s:1:"r";s:1:"B";a:4:{i:0;s:3:"-21";i:1;s:1:"0";i:2;s:3:"389";i:3;s:3:"462";}}i:115;a:4:{s:1:"C";s:3:"115";s:2:"WX";s:3:"389";s:1:"N";s:1:"s";s:1:"B";a:4:{i:0;s:3:"-19";i:1;s:3:"-13";i:2;s:3:"333";i:3;s:3:"462";}}s:1:"s";a:4:{s:1:"C";s:3:"115";s:2:"WX";s:3:"389";s:1:"N";s:1:"s";s:1:"B";a:4:{i:0;s:3:"-19";i:1;s:3:"-13";i:2;s:3:"333";i:3;s:3:"462";}}i:116;a:4:{s:1:"C";s:3:"116";s:2:"WX";s:3:"278";s:1:"N";s:1:"t";s:1:"B";a:4:{i:0;s:3:"-11";i:1;s:2:"-9";i:2;s:3:"281";i:3;s:3:"594";}}s:1:"t";a:4:{s:1:"C";s:3:"116";s:2:"WX";s:3:"278";s:1:"N";s:1:"t";s:1:"B";a:4:{i:0;s:3:"-11";i:1;s:2:"-9";i:2;s:3:"281";i:3;s:3:"594";}}i:117;a:4:{s:1:"C";s:3:"117";s:2:"WX";s:3:"556";s:1:"N";s:1:"u";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:2:"-9";i:2;s:3:"492";i:3;s:3:"462";}}s:1:"u";a:4:{s:1:"C";s:3:"117";s:2:"WX";s:3:"556";s:1:"N";s:1:"u";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:2:"-9";i:2;s:3:"492";i:3;s:3:"462";}}i:118;a:4:{s:1:"C";s:3:"118";s:2:"WX";s:3:"444";s:1:"N";s:1:"v";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"-13";i:2;s:3:"401";i:3;s:3:"462";}}s:1:"v";a:4:{s:1:"C";s:3:"118";s:2:"WX";s:3:"444";s:1:"N";s:1:"v";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"-13";i:2;s:3:"401";i:3;s:3:"462";}}i:119;a:4:{s:1:"C";s:3:"119";s:2:"WX";s:3:"667";s:1:"N";s:1:"w";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"-13";i:2;s:3:"614";i:3;s:3:"462";}}s:1:"w";a:4:{s:1:"C";s:3:"119";s:2:"WX";s:3:"667";s:1:"N";s:1:"w";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"-13";i:2;s:3:"614";i:3;s:3:"462";}}i:120;a:4:{s:1:"C";s:3:"120";s:2:"WX";s:3:"500";s:1:"N";s:1:"x";s:1:"B";a:4:{i:0;s:3:"-46";i:1;s:3:"-13";i:2;s:3:"469";i:3;s:3:"462";}}s:1:"x";a:4:{s:1:"C";s:3:"120";s:2:"WX";s:3:"500";s:1:"N";s:1:"x";s:1:"B";a:4:{i:0;s:3:"-46";i:1;s:3:"-13";i:2;s:3:"469";i:3;s:3:"462";}}i:121;a:4:{s:1:"C";s:3:"121";s:2:"WX";s:3:"444";s:1:"N";s:1:"y";s:1:"B";a:4:{i:0;s:3:"-94";i:1;s:4:"-205";i:2;s:3:"392";i:3;s:3:"462";}}s:1:"y";a:4:{s:1:"C";s:3:"121";s:2:"WX";s:3:"444";s:1:"N";s:1:"y";s:1:"B";a:4:{i:0;s:3:"-94";i:1;s:4:"-205";i:2;s:3:"392";i:3;s:3:"462";}}i:122;a:4:{s:1:"C";s:3:"122";s:2:"WX";s:3:"389";s:1:"N";s:1:"z";s:1:"B";a:4:{i:0;s:3:"-43";i:1;s:3:"-78";i:2;s:3:"368";i:3;s:3:"449";}}s:1:"z";a:4:{s:1:"C";s:3:"122";s:2:"WX";s:3:"389";s:1:"N";s:1:"z";s:1:"B";a:4:{i:0;s:3:"-43";i:1;s:3:"-78";i:2;s:3:"368";i:3;s:3:"449";}}i:123;a:4:{s:1:"C";s:3:"123";s:2:"WX";s:3:"348";s:1:"N";s:9:"braceleft";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:4:"-187";i:2;s:3:"436";i:3;s:3:"686";}}s:9:"braceleft";a:4:{s:1:"C";s:3:"123";s:2:"WX";s:3:"348";s:1:"N";s:9:"braceleft";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:4:"-187";i:2;s:3:"436";i:3;s:3:"686";}}i:124;a:4:{s:1:"C";s:3:"124";s:2:"WX";s:3:"220";s:1:"N";s:3:"bar";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:4:"-218";i:2;s:3:"154";i:3;s:3:"782";}}s:3:"bar";a:4:{s:1:"C";s:3:"124";s:2:"WX";s:3:"220";s:1:"N";s:3:"bar";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:4:"-218";i:2;s:3:"154";i:3;s:3:"782";}}i:125;a:4:{s:1:"C";s:3:"125";s:2:"WX";s:3:"348";s:1:"N";s:10:"braceright";s:1:"B";a:4:{i:0;s:4:"-129";i:1;s:4:"-187";i:2;s:3:"302";i:3;s:3:"686";}}s:10:"braceright";a:4:{s:1:"C";s:3:"125";s:2:"WX";s:3:"348";s:1:"N";s:10:"braceright";s:1:"B";a:4:{i:0;s:4:"-129";i:1;s:4:"-187";i:2;s:3:"302";i:3;s:3:"686";}}i:126;a:4:{s:1:"C";s:3:"126";s:2:"WX";s:3:"570";s:1:"N";s:10:"asciitilde";s:1:"B";a:4:{i:0;s:2:"54";i:1;s:3:"173";i:2;s:3:"516";i:3;s:3:"333";}}s:10:"asciitilde";a:4:{s:1:"C";s:3:"126";s:2:"WX";s:3:"570";s:1:"N";s:10:"asciitilde";s:1:"B";a:4:{i:0;s:2:"54";i:1;s:3:"173";i:2;s:3:"516";i:3;s:3:"333";}}i:161;a:4:{s:1:"C";s:3:"161";s:2:"WX";s:3:"389";s:1:"N";s:10:"exclamdown";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:4:"-205";i:2;s:3:"322";i:3;s:3:"492";}}s:10:"exclamdown";a:4:{s:1:"C";s:3:"161";s:2:"WX";s:3:"389";s:1:"N";s:10:"exclamdown";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:4:"-205";i:2;s:3:"322";i:3;s:3:"492";}}i:162;a:4:{s:1:"C";s:3:"162";s:2:"WX";s:3:"500";s:1:"N";s:4:"cent";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:4:"-143";i:2;s:3:"439";i:3;s:3:"576";}}s:4:"cent";a:4:{s:1:"C";s:3:"162";s:2:"WX";s:3:"500";s:1:"N";s:4:"cent";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:4:"-143";i:2;s:3:"439";i:3;s:3:"576";}}i:163;a:4:{s:1:"C";s:3:"163";s:2:"WX";s:3:"500";s:1:"N";s:8:"sterling";s:1:"B";a:4:{i:0;s:3:"-32";i:1;s:3:"-12";i:2;s:3:"510";i:3;s:3:"683";}}s:8:"sterling";a:4:{s:1:"C";s:3:"163";s:2:"WX";s:3:"500";s:1:"N";s:8:"sterling";s:1:"B";a:4:{i:0;s:3:"-32";i:1;s:3:"-12";i:2;s:3:"510";i:3;s:3:"683";}}i:164;a:4:{s:1:"C";s:3:"164";s:2:"WX";s:3:"167";s:1:"N";s:8:"fraction";s:1:"B";a:4:{i:0;s:4:"-169";i:1;s:3:"-14";i:2;s:3:"324";i:3;s:3:"683";}}s:8:"fraction";a:4:{s:1:"C";s:3:"164";s:2:"WX";s:3:"167";s:1:"N";s:8:"fraction";s:1:"B";a:4:{i:0;s:4:"-169";i:1;s:3:"-14";i:2;s:3:"324";i:3;s:3:"683";}}i:165;a:4:{s:1:"C";s:3:"165";s:2:"WX";s:3:"500";s:1:"N";s:3:"yen";s:1:"B";a:4:{i:0;s:2:"33";i:1;s:1:"0";i:2;s:3:"628";i:3;s:3:"669";}}s:3:"yen";a:4:{s:1:"C";s:3:"165";s:2:"WX";s:3:"500";s:1:"N";s:3:"yen";s:1:"B";a:4:{i:0;s:2:"33";i:1;s:1:"0";i:2;s:3:"628";i:3;s:3:"669";}}i:166;a:4:{s:1:"C";s:3:"166";s:2:"WX";s:3:"500";s:1:"N";s:6:"florin";s:1:"B";a:4:{i:0;s:3:"-87";i:1;s:4:"-156";i:2;s:3:"537";i:3;s:3:"707";}}s:6:"florin";a:4:{s:1:"C";s:3:"166";s:2:"WX";s:3:"500";s:1:"N";s:6:"florin";s:1:"B";a:4:{i:0;s:3:"-87";i:1;s:4:"-156";i:2;s:3:"537";i:3;s:3:"707";}}i:167;a:4:{s:1:"C";s:3:"167";s:2:"WX";s:3:"500";s:1:"N";s:7:"section";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:4:"-143";i:2;s:3:"459";i:3;s:3:"685";}}s:7:"section";a:4:{s:1:"C";s:3:"167";s:2:"WX";s:3:"500";s:1:"N";s:7:"section";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:4:"-143";i:2;s:3:"459";i:3;s:3:"685";}}i:168;a:4:{s:1:"C";s:3:"168";s:2:"WX";s:3:"500";s:1:"N";s:8:"currency";s:1:"B";a:4:{i:0;s:3:"-26";i:1;s:2:"34";i:2;s:3:"526";i:3;s:3:"586";}}s:8:"currency";a:4:{s:1:"C";s:3:"168";s:2:"WX";s:3:"500";s:1:"N";s:8:"currency";s:1:"B";a:4:{i:0;s:3:"-26";i:1;s:2:"34";i:2;s:3:"526";i:3;s:3:"586";}}i:169;a:4:{s:1:"C";s:3:"169";s:2:"WX";s:3:"278";s:1:"N";s:11:"quotesingle";s:1:"B";a:4:{i:0;s:3:"128";i:1;s:3:"398";i:2;s:3:"268";i:3;s:3:"685";}}s:11:"quotesingle";a:4:{s:1:"C";s:3:"169";s:2:"WX";s:3:"278";s:1:"N";s:11:"quotesingle";s:1:"B";a:4:{i:0;s:3:"128";i:1;s:3:"398";i:2;s:3:"268";i:3;s:3:"685";}}i:170;a:4:{s:1:"C";s:3:"170";s:2:"WX";s:3:"500";s:1:"N";s:12:"quotedblleft";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:3:"369";i:2;s:3:"513";i:3;s:3:"685";}}s:12:"quotedblleft";a:4:{s:1:"C";s:3:"170";s:2:"WX";s:3:"500";s:1:"N";s:12:"quotedblleft";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:3:"369";i:2;s:3:"513";i:3;s:3:"685";}}i:171;a:4:{s:1:"C";s:3:"171";s:2:"WX";s:3:"500";s:1:"N";s:13:"guillemotleft";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:2:"32";i:2;s:3:"468";i:3;s:3:"415";}}s:13:"guillemotleft";a:4:{s:1:"C";s:3:"171";s:2:"WX";s:3:"500";s:1:"N";s:13:"guillemotleft";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:2:"32";i:2;s:3:"468";i:3;s:3:"415";}}i:172;a:4:{s:1:"C";s:3:"172";s:2:"WX";s:3:"333";s:1:"N";s:13:"guilsinglleft";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:2:"32";i:2;s:3:"303";i:3;s:3:"415";}}s:13:"guilsinglleft";a:4:{s:1:"C";s:3:"172";s:2:"WX";s:3:"333";s:1:"N";s:13:"guilsinglleft";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:2:"32";i:2;s:3:"303";i:3;s:3:"415";}}i:173;a:4:{s:1:"C";s:3:"173";s:2:"WX";s:3:"333";s:1:"N";s:14:"guilsinglright";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:2:"32";i:2;s:3:"281";i:3;s:3:"415";}}s:14:"guilsinglright";a:4:{s:1:"C";s:3:"173";s:2:"WX";s:3:"333";s:1:"N";s:14:"guilsinglright";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:2:"32";i:2;s:3:"281";i:3;s:3:"415";}}i:174;a:4:{s:1:"C";s:3:"174";s:2:"WX";s:3:"556";s:1:"N";s:2:"fi";s:1:"B";a:4:{i:0;s:4:"-188";i:1;s:4:"-205";i:2;s:3:"514";i:3;s:3:"703";}}s:2:"fi";a:4:{s:1:"C";s:3:"174";s:2:"WX";s:3:"556";s:1:"N";s:2:"fi";s:1:"B";a:4:{i:0;s:4:"-188";i:1;s:4:"-205";i:2;s:3:"514";i:3;s:3:"703";}}i:175;a:4:{s:1:"C";s:3:"175";s:2:"WX";s:3:"556";s:1:"N";s:2:"fl";s:1:"B";a:4:{i:0;s:4:"-186";i:1;s:4:"-205";i:2;s:3:"553";i:3;s:3:"704";}}s:2:"fl";a:4:{s:1:"C";s:3:"175";s:2:"WX";s:3:"556";s:1:"N";s:2:"fl";s:1:"B";a:4:{i:0;s:4:"-186";i:1;s:4:"-205";i:2;s:3:"553";i:3;s:3:"704";}}i:177;a:4:{s:1:"C";s:3:"177";s:2:"WX";s:3:"500";s:1:"N";s:6:"endash";s:1:"B";a:4:{i:0;s:3:"-40";i:1;s:3:"178";i:2;s:3:"477";i:3;s:3:"269";}}s:6:"endash";a:4:{s:1:"C";s:3:"177";s:2:"WX";s:3:"500";s:1:"N";s:6:"endash";s:1:"B";a:4:{i:0;s:3:"-40";i:1;s:3:"178";i:2;s:3:"477";i:3;s:3:"269";}}i:178;a:4:{s:1:"C";s:3:"178";s:2:"WX";s:3:"500";s:1:"N";s:6:"dagger";s:1:"B";a:4:{i:0;s:2:"91";i:1;s:4:"-145";i:2;s:3:"494";i:3;s:3:"685";}}s:6:"dagger";a:4:{s:1:"C";s:3:"178";s:2:"WX";s:3:"500";s:1:"N";s:6:"dagger";s:1:"B";a:4:{i:0;s:2:"91";i:1;s:4:"-145";i:2;s:3:"494";i:3;s:3:"685";}}i:179;a:4:{s:1:"C";s:3:"179";s:2:"WX";s:3:"500";s:1:"N";s:9:"daggerdbl";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:4:"-139";i:2;s:3:"493";i:3;s:3:"685";}}s:9:"daggerdbl";a:4:{s:1:"C";s:3:"179";s:2:"WX";s:3:"500";s:1:"N";s:9:"daggerdbl";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:4:"-139";i:2;s:3:"493";i:3;s:3:"685";}}i:180;a:4:{s:1:"C";s:3:"180";s:2:"WX";s:3:"250";s:1:"N";s:14:"periodcentered";s:1:"B";a:4:{i:0;s:2:"51";i:1;s:3:"257";i:2;s:3:"199";i:3;s:3:"405";}}s:14:"periodcentered";a:4:{s:1:"C";s:3:"180";s:2:"WX";s:3:"250";s:1:"N";s:14:"periodcentered";s:1:"B";a:4:{i:0;s:2:"51";i:1;s:3:"257";i:2;s:3:"199";i:3;s:3:"405";}}i:182;a:4:{s:1:"C";s:3:"182";s:2:"WX";s:3:"500";s:1:"N";s:9:"paragraph";s:1:"B";a:4:{i:0;s:3:"-57";i:1;s:4:"-193";i:2;s:3:"562";i:3;s:3:"669";}}s:9:"paragraph";a:4:{s:1:"C";s:3:"182";s:2:"WX";s:3:"500";s:1:"N";s:9:"paragraph";s:1:"B";a:4:{i:0;s:3:"-57";i:1;s:4:"-193";i:2;s:3:"562";i:3;s:3:"669";}}i:183;a:4:{s:1:"C";s:3:"183";s:2:"WX";s:3:"350";s:1:"N";s:6:"bullet";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"175";i:2;s:3:"350";i:3;s:3:"525";}}s:6:"bullet";a:4:{s:1:"C";s:3:"183";s:2:"WX";s:3:"350";s:1:"N";s:6:"bullet";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"175";i:2;s:3:"350";i:3;s:3:"525";}}i:184;a:4:{s:1:"C";s:3:"184";s:2:"WX";s:3:"333";s:1:"N";s:14:"quotesinglbase";s:1:"B";a:4:{i:0;s:2:"-5";i:1;s:4:"-182";i:2;s:3:"199";i:3;s:3:"134";}}s:14:"quotesinglbase";a:4:{s:1:"C";s:3:"184";s:2:"WX";s:3:"333";s:1:"N";s:14:"quotesinglbase";s:1:"B";a:4:{i:0;s:2:"-5";i:1;s:4:"-182";i:2;s:3:"199";i:3;s:3:"134";}}i:185;a:4:{s:1:"C";s:3:"185";s:2:"WX";s:3:"500";s:1:"N";s:12:"quotedblbase";s:1:"B";a:4:{i:0;s:3:"-57";i:1;s:4:"-182";i:2;s:3:"403";i:3;s:3:"134";}}s:12:"quotedblbase";a:4:{s:1:"C";s:3:"185";s:2:"WX";s:3:"500";s:1:"N";s:12:"quotedblbase";s:1:"B";a:4:{i:0;s:3:"-57";i:1;s:4:"-182";i:2;s:3:"403";i:3;s:3:"134";}}i:186;a:4:{s:1:"C";s:3:"186";s:2:"WX";s:3:"500";s:1:"N";s:13:"quotedblright";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:3:"369";i:2;s:3:"513";i:3;s:3:"685";}}s:13:"quotedblright";a:4:{s:1:"C";s:3:"186";s:2:"WX";s:3:"500";s:1:"N";s:13:"quotedblright";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:3:"369";i:2;s:3:"513";i:3;s:3:"685";}}i:187;a:4:{s:1:"C";s:3:"187";s:2:"WX";s:3:"500";s:1:"N";s:14:"guillemotright";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:2:"32";i:2;s:3:"468";i:3;s:3:"415";}}s:14:"guillemotright";a:4:{s:1:"C";s:3:"187";s:2:"WX";s:3:"500";s:1:"N";s:14:"guillemotright";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:2:"32";i:2;s:3:"468";i:3;s:3:"415";}}i:188;a:4:{s:1:"C";s:3:"188";s:2:"WX";s:4:"1000";s:1:"N";s:8:"ellipsis";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"-13";i:2;s:3:"852";i:3;s:3:"135";}}s:8:"ellipsis";a:4:{s:1:"C";s:3:"188";s:2:"WX";s:4:"1000";s:1:"N";s:8:"ellipsis";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"-13";i:2;s:3:"852";i:3;s:3:"135";}}i:189;a:4:{s:1:"C";s:3:"189";s:2:"WX";s:4:"1000";s:1:"N";s:11:"perthousand";s:1:"B";a:4:{i:0;s:1:"7";i:1;s:3:"-29";i:2;s:3:"996";i:3;s:3:"706";}}s:11:"perthousand";a:4:{s:1:"C";s:3:"189";s:2:"WX";s:4:"1000";s:1:"N";s:11:"perthousand";s:1:"B";a:4:{i:0;s:1:"7";i:1;s:3:"-29";i:2;s:3:"996";i:3;s:3:"706";}}i:191;a:4:{s:1:"C";s:3:"191";s:2:"WX";s:3:"500";s:1:"N";s:12:"questiondown";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:4:"-205";i:2;s:3:"421";i:3;s:3:"492";}}s:12:"questiondown";a:4:{s:1:"C";s:3:"191";s:2:"WX";s:3:"500";s:1:"N";s:12:"questiondown";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:4:"-205";i:2;s:3:"421";i:3;s:3:"492";}}i:193;a:4:{s:1:"C";s:3:"193";s:2:"WX";s:3:"333";s:1:"N";s:5:"grave";s:1:"B";a:4:{i:0;s:2:"85";i:1;s:3:"516";i:2;s:3:"297";i:3;s:3:"697";}}s:5:"grave";a:4:{s:1:"C";s:3:"193";s:2:"WX";s:3:"333";s:1:"N";s:5:"grave";s:1:"B";a:4:{i:0;s:2:"85";i:1;s:3:"516";i:2;s:3:"297";i:3;s:3:"697";}}i:194;a:4:{s:1:"C";s:3:"194";s:2:"WX";s:3:"333";s:1:"N";s:5:"acute";s:1:"B";a:4:{i:0;s:3:"139";i:1;s:3:"516";i:2;s:3:"379";i:3;s:3:"697";}}s:5:"acute";a:4:{s:1:"C";s:3:"194";s:2:"WX";s:3:"333";s:1:"N";s:5:"acute";s:1:"B";a:4:{i:0;s:3:"139";i:1;s:3:"516";i:2;s:3:"379";i:3;s:3:"697";}}i:195;a:4:{s:1:"C";s:3:"195";s:2:"WX";s:3:"333";s:1:"N";s:10:"circumflex";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"516";i:2;s:3:"367";i:3;s:3:"690";}}s:10:"circumflex";a:4:{s:1:"C";s:3:"195";s:2:"WX";s:3:"333";s:1:"N";s:10:"circumflex";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"516";i:2;s:3:"367";i:3;s:3:"690";}}i:196;a:4:{s:1:"C";s:3:"196";s:2:"WX";s:3:"333";s:1:"N";s:5:"tilde";s:1:"B";a:4:{i:0;s:2:"48";i:1;s:3:"536";i:2;s:3:"407";i:3;s:3:"655";}}s:5:"tilde";a:4:{s:1:"C";s:3:"196";s:2:"WX";s:3:"333";s:1:"N";s:5:"tilde";s:1:"B";a:4:{i:0;s:2:"48";i:1;s:3:"536";i:2;s:3:"407";i:3;s:3:"655";}}i:197;a:4:{s:1:"C";s:3:"197";s:2:"WX";s:3:"333";s:1:"N";s:6:"macron";s:1:"B";a:4:{i:0;s:2:"51";i:1;s:3:"553";i:2;s:3:"393";i:3;s:3:"623";}}s:6:"macron";a:4:{s:1:"C";s:3:"197";s:2:"WX";s:3:"333";s:1:"N";s:6:"macron";s:1:"B";a:4:{i:0;s:2:"51";i:1;s:3:"553";i:2;s:3:"393";i:3;s:3:"623";}}i:198;a:4:{s:1:"C";s:3:"198";s:2:"WX";s:3:"333";s:1:"N";s:5:"breve";s:1:"B";a:4:{i:0;s:2:"71";i:1;s:3:"516";i:2;s:3:"387";i:3;s:3:"678";}}s:5:"breve";a:4:{s:1:"C";s:3:"198";s:2:"WX";s:3:"333";s:1:"N";s:5:"breve";s:1:"B";a:4:{i:0;s:2:"71";i:1;s:3:"516";i:2;s:3:"387";i:3;s:3:"678";}}i:199;a:4:{s:1:"C";s:3:"199";s:2:"WX";s:3:"333";s:1:"N";s:9:"dotaccent";s:1:"B";a:4:{i:0;s:3:"163";i:1;s:3:"550";i:2;s:3:"298";i:3;s:3:"684";}}s:9:"dotaccent";a:4:{s:1:"C";s:3:"199";s:2:"WX";s:3:"333";s:1:"N";s:9:"dotaccent";s:1:"B";a:4:{i:0;s:3:"163";i:1;s:3:"550";i:2;s:3:"298";i:3;s:3:"684";}}i:200;a:4:{s:1:"C";s:3:"200";s:2:"WX";s:3:"333";s:1:"N";s:8:"dieresis";s:1:"B";a:4:{i:0;s:2:"55";i:1;s:3:"550";i:2;s:3:"402";i:3;s:3:"684";}}s:8:"dieresis";a:4:{s:1:"C";s:3:"200";s:2:"WX";s:3:"333";s:1:"N";s:8:"dieresis";s:1:"B";a:4:{i:0;s:2:"55";i:1;s:3:"550";i:2;s:3:"402";i:3;s:3:"684";}}i:202;a:4:{s:1:"C";s:3:"202";s:2:"WX";s:3:"333";s:1:"N";s:4:"ring";s:1:"B";a:4:{i:0;s:3:"127";i:1;s:3:"516";i:2;s:3:"340";i:3;s:3:"729";}}s:4:"ring";a:4:{s:1:"C";s:3:"202";s:2:"WX";s:3:"333";s:1:"N";s:4:"ring";s:1:"B";a:4:{i:0;s:3:"127";i:1;s:3:"516";i:2;s:3:"340";i:3;s:3:"729";}}i:203;a:4:{s:1:"C";s:3:"203";s:2:"WX";s:3:"333";s:1:"N";s:7:"cedilla";s:1:"B";a:4:{i:0;s:3:"-80";i:1;s:4:"-218";i:2;s:3:"156";i:3;s:1:"5";}}s:7:"cedilla";a:4:{s:1:"C";s:3:"203";s:2:"WX";s:3:"333";s:1:"N";s:7:"cedilla";s:1:"B";a:4:{i:0;s:3:"-80";i:1;s:4:"-218";i:2;s:3:"156";i:3;s:1:"5";}}i:205;a:4:{s:1:"C";s:3:"205";s:2:"WX";s:3:"333";s:1:"N";s:12:"hungarumlaut";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:3:"516";i:2;s:3:"498";i:3;s:3:"697";}}s:12:"hungarumlaut";a:4:{s:1:"C";s:3:"205";s:2:"WX";s:3:"333";s:1:"N";s:12:"hungarumlaut";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:3:"516";i:2;s:3:"498";i:3;s:3:"697";}}i:206;a:4:{s:1:"C";s:3:"206";s:2:"WX";s:3:"333";s:1:"N";s:6:"ogonek";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:4:"-183";i:2;s:3:"244";i:3;s:2:"34";}}s:6:"ogonek";a:4:{s:1:"C";s:3:"206";s:2:"WX";s:3:"333";s:1:"N";s:6:"ogonek";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:4:"-183";i:2;s:3:"244";i:3;s:2:"34";}}i:207;a:4:{s:1:"C";s:3:"207";s:2:"WX";s:3:"333";s:1:"N";s:5:"caron";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:3:"516";i:2;s:3:"411";i:3;s:3:"690";}}s:5:"caron";a:4:{s:1:"C";s:3:"207";s:2:"WX";s:3:"333";s:1:"N";s:5:"caron";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:3:"516";i:2;s:3:"411";i:3;s:3:"690";}}i:208;a:4:{s:1:"C";s:3:"208";s:2:"WX";s:4:"1000";s:1:"N";s:6:"emdash";s:1:"B";a:4:{i:0;s:3:"-40";i:1;s:3:"178";i:2;s:3:"977";i:3;s:3:"269";}}s:6:"emdash";a:4:{s:1:"C";s:3:"208";s:2:"WX";s:4:"1000";s:1:"N";s:6:"emdash";s:1:"B";a:4:{i:0;s:3:"-40";i:1;s:3:"178";i:2;s:3:"977";i:3;s:3:"269";}}i:225;a:4:{s:1:"C";s:3:"225";s:2:"WX";s:3:"944";s:1:"N";s:2:"AE";s:1:"B";a:4:{i:0;s:3:"-64";i:1;s:1:"0";i:2;s:3:"918";i:3;s:3:"669";}}s:2:"AE";a:4:{s:1:"C";s:3:"225";s:2:"WX";s:3:"944";s:1:"N";s:2:"AE";s:1:"B";a:4:{i:0;s:3:"-64";i:1;s:1:"0";i:2;s:3:"918";i:3;s:3:"669";}}i:227;a:4:{s:1:"C";s:3:"227";s:2:"WX";s:3:"266";s:1:"N";s:11:"ordfeminine";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"399";i:2;s:3:"330";i:3;s:3:"685";}}s:11:"ordfeminine";a:4:{s:1:"C";s:3:"227";s:2:"WX";s:3:"266";s:1:"N";s:11:"ordfeminine";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"399";i:2;s:3:"330";i:3;s:3:"685";}}i:232;a:4:{s:1:"C";s:3:"232";s:2:"WX";s:3:"611";s:1:"N";s:6:"Lslash";s:1:"B";a:4:{i:0;s:3:"-22";i:1;s:1:"0";i:2;s:3:"590";i:3;s:3:"669";}}s:6:"Lslash";a:4:{s:1:"C";s:3:"232";s:2:"WX";s:3:"611";s:1:"N";s:6:"Lslash";s:1:"B";a:4:{i:0;s:3:"-22";i:1;s:1:"0";i:2;s:3:"590";i:3;s:3:"669";}}i:233;a:4:{s:1:"C";s:3:"233";s:2:"WX";s:3:"722";s:1:"N";s:6:"Oslash";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:4:"-125";i:2;s:3:"691";i:3;s:3:"764";}}s:6:"Oslash";a:4:{s:1:"C";s:3:"233";s:2:"WX";s:3:"722";s:1:"N";s:6:"Oslash";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:4:"-125";i:2;s:3:"691";i:3;s:3:"764";}}i:234;a:4:{s:1:"C";s:3:"234";s:2:"WX";s:3:"944";s:1:"N";s:2:"OE";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:2:"-8";i:2;s:3:"946";i:3;s:3:"677";}}s:2:"OE";a:4:{s:1:"C";s:3:"234";s:2:"WX";s:3:"944";s:1:"N";s:2:"OE";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:2:"-8";i:2;s:3:"946";i:3;s:3:"677";}}i:235;a:4:{s:1:"C";s:3:"235";s:2:"WX";s:3:"300";s:1:"N";s:12:"ordmasculine";s:1:"B";a:4:{i:0;s:2:"56";i:1;s:3:"400";i:2;s:3:"347";i:3;s:3:"685";}}s:12:"ordmasculine";a:4:{s:1:"C";s:3:"235";s:2:"WX";s:3:"300";s:1:"N";s:12:"ordmasculine";s:1:"B";a:4:{i:0;s:2:"56";i:1;s:3:"400";i:2;s:3:"347";i:3;s:3:"685";}}i:241;a:4:{s:1:"C";s:3:"241";s:2:"WX";s:3:"722";s:1:"N";s:2:"ae";s:1:"B";a:4:{i:0;s:2:"-5";i:1;s:3:"-13";i:2;s:3:"673";i:3;s:3:"462";}}s:2:"ae";a:4:{s:1:"C";s:3:"241";s:2:"WX";s:3:"722";s:1:"N";s:2:"ae";s:1:"B";a:4:{i:0;s:2:"-5";i:1;s:3:"-13";i:2;s:3:"673";i:3;s:3:"462";}}i:245;a:4:{s:1:"C";s:3:"245";s:2:"WX";s:3:"278";s:1:"N";s:8:"dotlessi";s:1:"B";a:4:{i:0;s:1:"2";i:1;s:2:"-9";i:2;s:3:"238";i:3;s:3:"462";}}s:8:"dotlessi";a:4:{s:1:"C";s:3:"245";s:2:"WX";s:3:"278";s:1:"N";s:8:"dotlessi";s:1:"B";a:4:{i:0;s:1:"2";i:1;s:2:"-9";i:2;s:3:"238";i:3;s:3:"462";}}i:248;a:4:{s:1:"C";s:3:"248";s:2:"WX";s:3:"278";s:1:"N";s:6:"lslash";s:1:"B";a:4:{i:0;s:2:"-7";i:1;s:2:"-9";i:2;s:3:"307";i:3;s:3:"699";}}s:6:"lslash";a:4:{s:1:"C";s:3:"248";s:2:"WX";s:3:"278";s:1:"N";s:6:"lslash";s:1:"B";a:4:{i:0;s:2:"-7";i:1;s:2:"-9";i:2;s:3:"307";i:3;s:3:"699";}}i:249;a:4:{s:1:"C";s:3:"249";s:2:"WX";s:3:"500";s:1:"N";s:6:"oslash";s:1:"B";a:4:{i:0;s:2:"-3";i:1;s:4:"-119";i:2;s:3:"441";i:3;s:3:"560";}}s:6:"oslash";a:4:{s:1:"C";s:3:"249";s:2:"WX";s:3:"500";s:1:"N";s:6:"oslash";s:1:"B";a:4:{i:0;s:2:"-3";i:1;s:4:"-119";i:2;s:3:"441";i:3;s:3:"560";}}i:250;a:4:{s:1:"C";s:3:"250";s:2:"WX";s:3:"722";s:1:"N";s:2:"oe";s:1:"B";a:4:{i:0;s:1:"6";i:1;s:3:"-13";i:2;s:3:"674";i:3;s:3:"462";}}s:2:"oe";a:4:{s:1:"C";s:3:"250";s:2:"WX";s:3:"722";s:1:"N";s:2:"oe";s:1:"B";a:4:{i:0;s:1:"6";i:1;s:3:"-13";i:2;s:3:"674";i:3;s:3:"462";}}i:251;a:4:{s:1:"C";s:3:"251";s:2:"WX";s:3:"500";s:1:"N";s:10:"germandbls";s:1:"B";a:4:{i:0;s:4:"-200";i:1;s:4:"-200";i:2;s:3:"473";i:3;s:3:"705";}}s:10:"germandbls";a:4:{s:1:"C";s:3:"251";s:2:"WX";s:3:"500";s:1:"N";s:10:"germandbls";s:1:"B";a:4:{i:0;s:4:"-200";i:1;s:4:"-200";i:2;s:3:"473";i:3;s:3:"705";}}s:9:"Idieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:9:"Idieresis";s:1:"B";a:4:{i:0;s:3:"-32";i:1;s:1:"0";i:2;s:3:"450";i:3;s:3:"862";}}s:6:"eacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:6:"eacute";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:3:"-13";i:2;s:3:"435";i:3;s:3:"697";}}s:6:"abreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"abreve";s:1:"B";a:4:{i:0;s:3:"-21";i:1;s:3:"-14";i:2;s:3:"471";i:3;s:3:"678";}}s:13:"uhungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:13:"uhungarumlaut";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:2:"-9";i:2;s:3:"610";i:3;s:3:"697";}}s:6:"ecaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:6:"ecaron";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:3:"-13";i:2;s:3:"467";i:3;s:3:"690";}}s:9:"Ydieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:9:"Ydieresis";s:1:"B";a:4:{i:0;s:2:"73";i:1;s:1:"0";i:2;s:3:"659";i:3;s:3:"862";}}s:6:"divide";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"570";s:1:"N";s:6:"divide";s:1:"B";a:4:{i:0;s:2:"33";i:1;s:3:"-29";i:2;s:3:"537";i:3;s:3:"535";}}s:6:"Yacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"Yacute";s:1:"B";a:4:{i:0;s:2:"73";i:1;s:1:"0";i:2;s:3:"659";i:3;s:3:"904";}}s:11:"Acircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:11:"Acircumflex";s:1:"B";a:4:{i:0;s:3:"-67";i:1;s:1:"0";i:2;s:3:"593";i:3;s:3:"897";}}s:6:"aacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"aacute";s:1:"B";a:4:{i:0;s:3:"-21";i:1;s:3:"-14";i:2;s:3:"463";i:3;s:3:"697";}}s:11:"Ucircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:11:"Ucircumflex";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:3:"-18";i:2;s:3:"744";i:3;s:3:"897";}}s:6:"yacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:6:"yacute";s:1:"B";a:4:{i:0;s:3:"-94";i:1;s:4:"-205";i:2;s:3:"435";i:3;s:3:"697";}}s:12:"scommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:12:"scommaaccent";s:1:"B";a:4:{i:0;s:3:"-19";i:1;s:4:"-218";i:2;s:3:"333";i:3;s:3:"462";}}s:11:"ecircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:11:"ecircumflex";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:3:"-13";i:2;s:3:"423";i:3;s:3:"690";}}s:5:"Uring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:5:"Uring";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:3:"-18";i:2;s:3:"744";i:3;s:3:"921";}}s:9:"Udieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:9:"Udieresis";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:3:"-18";i:2;s:3:"744";i:3;s:3:"862";}}s:7:"aogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:7:"aogonek";s:1:"B";a:4:{i:0;s:3:"-21";i:1;s:4:"-183";i:2;s:3:"455";i:3;s:3:"462";}}s:6:"Uacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Uacute";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:3:"-18";i:2;s:3:"744";i:3;s:3:"904";}}s:7:"uogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:7:"uogonek";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:4:"-183";i:2;s:3:"492";i:3;s:3:"462";}}s:9:"Edieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:9:"Edieresis";s:1:"B";a:4:{i:0;s:3:"-27";i:1;s:1:"0";i:2;s:3:"653";i:3;s:3:"862";}}s:6:"Dcroat";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Dcroat";s:1:"B";a:4:{i:0;s:3:"-31";i:1;s:1:"0";i:2;s:3:"700";i:3;s:3:"669";}}s:11:"commaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"250";s:1:"N";s:11:"commaaccent";s:1:"B";a:4:{i:0;s:3:"-36";i:1;s:4:"-218";i:2;s:3:"131";i:3;s:3:"-50";}}s:9:"copyright";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"747";s:1:"N";s:9:"copyright";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"-18";i:2;s:3:"718";i:3;s:3:"685";}}s:7:"Emacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:7:"Emacron";s:1:"B";a:4:{i:0;s:3:"-27";i:1;s:1:"0";i:2;s:3:"653";i:3;s:3:"830";}}s:6:"ccaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:6:"ccaron";s:1:"B";a:4:{i:0;s:2:"-5";i:1;s:3:"-13";i:2;s:3:"467";i:3;s:3:"690";}}s:5:"aring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:5:"aring";s:1:"B";a:4:{i:0;s:3:"-21";i:1;s:3:"-14";i:2;s:3:"455";i:3;s:3:"729";}}s:12:"Ncommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:12:"Ncommaaccent";s:1:"B";a:4:{i:0;s:3:"-27";i:1;s:4:"-218";i:2;s:3:"748";i:3;s:3:"669";}}s:6:"lacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:6:"lacute";s:1:"B";a:4:{i:0;s:1:"2";i:1;s:2:"-9";i:2;s:3:"392";i:3;s:3:"904";}}s:6:"agrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"agrave";s:1:"B";a:4:{i:0;s:3:"-21";i:1;s:3:"-14";i:2;s:3:"455";i:3;s:3:"697";}}s:12:"Tcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:12:"Tcommaaccent";s:1:"B";a:4:{i:0;s:2:"50";i:1;s:4:"-218";i:2;s:3:"650";i:3;s:3:"669";}}s:6:"Cacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Cacute";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:3:"-18";i:2;s:3:"677";i:3;s:3:"904";}}s:6:"atilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"atilde";s:1:"B";a:4:{i:0;s:3:"-21";i:1;s:3:"-14";i:2;s:3:"491";i:3;s:3:"655";}}s:10:"Edotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:10:"Edotaccent";s:1:"B";a:4:{i:0;s:3:"-27";i:1;s:1:"0";i:2;s:3:"653";i:3;s:3:"862";}}s:6:"scaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:6:"scaron";s:1:"B";a:4:{i:0;s:3:"-19";i:1;s:3:"-13";i:2;s:3:"424";i:3;s:3:"690";}}s:8:"scedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:8:"scedilla";s:1:"B";a:4:{i:0;s:3:"-19";i:1;s:4:"-218";i:2;s:3:"333";i:3;s:3:"462";}}s:6:"iacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:6:"iacute";s:1:"B";a:4:{i:0;s:1:"2";i:1;s:2:"-9";i:2;s:3:"352";i:3;s:3:"697";}}s:7:"lozenge";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"494";s:1:"N";s:7:"lozenge";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:1:"0";i:2;s:3:"484";i:3;s:3:"745";}}s:6:"Rcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Rcaron";s:1:"B";a:4:{i:0;s:3:"-29";i:1;s:1:"0";i:2;s:3:"623";i:3;s:3:"897";}}s:12:"Gcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:12:"Gcommaaccent";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:4:"-218";i:2;s:3:"706";i:3;s:3:"685";}}s:11:"ucircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:11:"ucircumflex";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:2:"-9";i:2;s:3:"492";i:3;s:3:"690";}}s:11:"acircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:11:"acircumflex";s:1:"B";a:4:{i:0;s:3:"-21";i:1;s:3:"-14";i:2;s:3:"455";i:3;s:3:"690";}}s:7:"Amacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:7:"Amacron";s:1:"B";a:4:{i:0;s:3:"-67";i:1;s:1:"0";i:2;s:3:"593";i:3;s:3:"830";}}s:6:"rcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:6:"rcaron";s:1:"B";a:4:{i:0;s:3:"-21";i:1;s:1:"0";i:2;s:3:"424";i:3;s:3:"690";}}s:8:"ccedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:8:"ccedilla";s:1:"B";a:4:{i:0;s:2:"-5";i:1;s:4:"-218";i:2;s:3:"392";i:3;s:3:"462";}}s:10:"Zdotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:10:"Zdotaccent";s:1:"B";a:4:{i:0;s:3:"-11";i:1;s:1:"0";i:2;s:3:"590";i:3;s:3:"862";}}s:5:"Thorn";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:5:"Thorn";s:1:"B";a:4:{i:0;s:3:"-27";i:1;s:1:"0";i:2;s:3:"573";i:3;s:3:"669";}}s:7:"Omacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:7:"Omacron";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:3:"-18";i:2;s:3:"691";i:3;s:3:"830";}}s:6:"Racute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Racute";s:1:"B";a:4:{i:0;s:3:"-29";i:1;s:1:"0";i:2;s:3:"623";i:3;s:3:"904";}}s:6:"Sacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"Sacute";s:1:"B";a:4:{i:0;s:1:"2";i:1;s:3:"-18";i:2;s:3:"531";i:3;s:3:"904";}}s:6:"dcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"608";s:1:"N";s:6:"dcaron";s:1:"B";a:4:{i:0;s:3:"-21";i:1;s:3:"-13";i:2;s:3:"675";i:3;s:3:"708";}}s:7:"Umacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:7:"Umacron";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:3:"-18";i:2;s:3:"744";i:3;s:3:"830";}}s:5:"uring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:5:"uring";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:2:"-9";i:2;s:3:"492";i:3;s:3:"729";}}s:13:"threesuperior";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"300";s:1:"N";s:13:"threesuperior";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:3:"265";i:2;s:3:"321";i:3;s:3:"683";}}s:6:"Ograve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Ograve";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:3:"-18";i:2;s:3:"691";i:3;s:3:"904";}}s:6:"Agrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Agrave";s:1:"B";a:4:{i:0;s:3:"-67";i:1;s:1:"0";i:2;s:3:"593";i:3;s:3:"904";}}s:6:"Abreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Abreve";s:1:"B";a:4:{i:0;s:3:"-67";i:1;s:1:"0";i:2;s:3:"593";i:3;s:3:"885";}}s:8:"multiply";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"570";s:1:"N";s:8:"multiply";s:1:"B";a:4:{i:0;s:2:"48";i:1;s:2:"16";i:2;s:3:"522";i:3;s:3:"490";}}s:6:"uacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"uacute";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:2:"-9";i:2;s:3:"492";i:3;s:3:"697";}}s:6:"Tcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"Tcaron";s:1:"B";a:4:{i:0;s:2:"50";i:1;s:1:"0";i:2;s:3:"650";i:3;s:3:"897";}}s:11:"partialdiff";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"494";s:1:"N";s:11:"partialdiff";s:1:"B";a:4:{i:0;s:2:"11";i:1;s:3:"-21";i:2;s:3:"494";i:3;s:3:"750";}}s:9:"ydieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:9:"ydieresis";s:1:"B";a:4:{i:0;s:3:"-94";i:1;s:4:"-205";i:2;s:3:"443";i:3;s:3:"655";}}s:6:"Nacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Nacute";s:1:"B";a:4:{i:0;s:3:"-27";i:1;s:3:"-15";i:2;s:3:"748";i:3;s:3:"904";}}s:11:"icircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:11:"icircumflex";s:1:"B";a:4:{i:0;s:2:"-3";i:1;s:2:"-9";i:2;s:3:"324";i:3;s:3:"690";}}s:11:"Ecircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:11:"Ecircumflex";s:1:"B";a:4:{i:0;s:3:"-27";i:1;s:1:"0";i:2;s:3:"653";i:3;s:3:"897";}}s:9:"adieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:9:"adieresis";s:1:"B";a:4:{i:0;s:3:"-21";i:1;s:3:"-14";i:2;s:3:"476";i:3;s:3:"655";}}s:9:"edieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:9:"edieresis";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:3:"-13";i:2;s:3:"448";i:3;s:3:"655";}}s:6:"cacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:6:"cacute";s:1:"B";a:4:{i:0;s:2:"-5";i:1;s:3:"-13";i:2;s:3:"435";i:3;s:3:"697";}}s:6:"nacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"nacute";s:1:"B";a:4:{i:0;s:2:"-6";i:1;s:2:"-9";i:2;s:3:"493";i:3;s:3:"697";}}s:7:"umacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:7:"umacron";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:2:"-9";i:2;s:3:"492";i:3;s:3:"623";}}s:6:"Ncaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Ncaron";s:1:"B";a:4:{i:0;s:3:"-27";i:1;s:3:"-15";i:2;s:3:"748";i:3;s:3:"897";}}s:6:"Iacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:6:"Iacute";s:1:"B";a:4:{i:0;s:3:"-32";i:1;s:1:"0";i:2;s:3:"432";i:3;s:3:"904";}}s:9:"plusminus";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"570";s:1:"N";s:9:"plusminus";s:1:"B";a:4:{i:0;s:2:"33";i:1;s:1:"0";i:2;s:3:"537";i:3;s:3:"506";}}s:9:"brokenbar";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"220";s:1:"N";s:9:"brokenbar";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:4:"-143";i:2;s:3:"154";i:3;s:3:"707";}}s:10:"registered";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"747";s:1:"N";s:10:"registered";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"-18";i:2;s:3:"718";i:3;s:3:"685";}}s:6:"Gbreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Gbreve";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:3:"-18";i:2;s:3:"706";i:3;s:3:"885";}}s:10:"Idotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:10:"Idotaccent";s:1:"B";a:4:{i:0;s:3:"-32";i:1;s:1:"0";i:2;s:3:"406";i:3;s:3:"862";}}s:9:"summation";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"summation";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:3:"-10";i:2;s:3:"585";i:3;s:3:"706";}}s:6:"Egrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Egrave";s:1:"B";a:4:{i:0;s:3:"-27";i:1;s:1:"0";i:2;s:3:"653";i:3;s:3:"904";}}s:6:"racute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:6:"racute";s:1:"B";a:4:{i:0;s:3:"-21";i:1;s:1:"0";i:2;s:3:"407";i:3;s:3:"697";}}s:7:"omacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:7:"omacron";s:1:"B";a:4:{i:0;s:2:"-3";i:1;s:3:"-13";i:2;s:3:"462";i:3;s:3:"623";}}s:6:"Zacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"Zacute";s:1:"B";a:4:{i:0;s:3:"-11";i:1;s:1:"0";i:2;s:3:"590";i:3;s:3:"904";}}s:6:"Zcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"Zcaron";s:1:"B";a:4:{i:0;s:3:"-11";i:1;s:1:"0";i:2;s:3:"590";i:3;s:3:"897";}}s:12:"greaterequal";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"549";s:1:"N";s:12:"greaterequal";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"523";i:3;s:3:"704";}}s:3:"Eth";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:3:"Eth";s:1:"B";a:4:{i:0;s:3:"-31";i:1;s:1:"0";i:2;s:3:"700";i:3;s:3:"669";}}s:8:"Ccedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:8:"Ccedilla";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:4:"-218";i:2;s:3:"677";i:3;s:3:"685";}}s:12:"lcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:12:"lcommaaccent";s:1:"B";a:4:{i:0;s:3:"-42";i:1;s:4:"-218";i:2;s:3:"290";i:3;s:3:"699";}}s:6:"tcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"366";s:1:"N";s:6:"tcaron";s:1:"B";a:4:{i:0;s:3:"-11";i:1;s:2:"-9";i:2;s:3:"434";i:3;s:3:"754";}}s:7:"eogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:7:"eogonek";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:4:"-183";i:2;s:3:"398";i:3;s:3:"462";}}s:7:"Uogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:7:"Uogonek";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:4:"-183";i:2;s:3:"744";i:3;s:3:"669";}}s:6:"Aacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Aacute";s:1:"B";a:4:{i:0;s:3:"-67";i:1;s:1:"0";i:2;s:3:"593";i:3;s:3:"904";}}s:9:"Adieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:9:"Adieresis";s:1:"B";a:4:{i:0;s:3:"-67";i:1;s:1:"0";i:2;s:3:"593";i:3;s:3:"862";}}s:6:"egrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:6:"egrave";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:3:"-13";i:2;s:3:"398";i:3;s:3:"697";}}s:6:"zacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:6:"zacute";s:1:"B";a:4:{i:0;s:3:"-43";i:1;s:3:"-78";i:2;s:3:"407";i:3;s:3:"697";}}s:7:"iogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:7:"iogonek";s:1:"B";a:4:{i:0;s:3:"-20";i:1;s:4:"-183";i:2;s:3:"263";i:3;s:3:"684";}}s:6:"Oacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Oacute";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:3:"-18";i:2;s:3:"691";i:3;s:3:"904";}}s:6:"oacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"oacute";s:1:"B";a:4:{i:0;s:2:"-3";i:1;s:3:"-13";i:2;s:3:"463";i:3;s:3:"697";}}s:7:"amacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:7:"amacron";s:1:"B";a:4:{i:0;s:3:"-21";i:1;s:3:"-14";i:2;s:3:"467";i:3;s:3:"623";}}s:6:"sacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:6:"sacute";s:1:"B";a:4:{i:0;s:3:"-19";i:1;s:3:"-13";i:2;s:3:"407";i:3;s:3:"697";}}s:9:"idieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:9:"idieresis";s:1:"B";a:4:{i:0;s:1:"2";i:1;s:2:"-9";i:2;s:3:"364";i:3;s:3:"655";}}s:11:"Ocircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:11:"Ocircumflex";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:3:"-18";i:2;s:3:"691";i:3;s:3:"897";}}s:6:"Ugrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Ugrave";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:3:"-18";i:2;s:3:"744";i:3;s:3:"904";}}s:5:"Delta";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"612";s:1:"N";s:5:"Delta";s:1:"B";a:4:{i:0;s:1:"6";i:1;s:1:"0";i:2;s:3:"608";i:3;s:3:"688";}}s:5:"thorn";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:5:"thorn";s:1:"B";a:4:{i:0;s:4:"-120";i:1;s:4:"-205";i:2;s:3:"446";i:3;s:3:"699";}}s:11:"twosuperior";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"300";s:1:"N";s:11:"twosuperior";s:1:"B";a:4:{i:0;s:1:"2";i:1;s:3:"274";i:2;s:3:"313";i:3;s:3:"683";}}s:9:"Odieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:9:"Odieresis";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:3:"-18";i:2;s:3:"691";i:3;s:3:"862";}}s:2:"mu";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"576";s:1:"N";s:2:"mu";s:1:"B";a:4:{i:0;s:3:"-60";i:1;s:4:"-207";i:2;s:3:"516";i:3;s:3:"449";}}s:6:"igrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:6:"igrave";s:1:"B";a:4:{i:0;s:1:"2";i:1;s:2:"-9";i:2;s:3:"259";i:3;s:3:"697";}}s:13:"ohungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:13:"ohungarumlaut";s:1:"B";a:4:{i:0;s:2:"-3";i:1;s:3:"-13";i:2;s:3:"582";i:3;s:3:"697";}}s:7:"Eogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:7:"Eogonek";s:1:"B";a:4:{i:0;s:3:"-27";i:1;s:4:"-183";i:2;s:3:"653";i:3;s:3:"669";}}s:6:"dcroat";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"dcroat";s:1:"B";a:4:{i:0;s:3:"-21";i:1;s:3:"-13";i:2;s:3:"552";i:3;s:3:"699";}}s:13:"threequarters";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"750";s:1:"N";s:13:"threequarters";s:1:"B";a:4:{i:0;s:1:"7";i:1;s:3:"-14";i:2;s:3:"726";i:3;s:3:"683";}}s:8:"Scedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:8:"Scedilla";s:1:"B";a:4:{i:0;s:1:"2";i:1;s:4:"-218";i:2;s:3:"526";i:3;s:3:"685";}}s:6:"lcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"382";s:1:"N";s:6:"lcaron";s:1:"B";a:4:{i:0;s:1:"2";i:1;s:2:"-9";i:2;s:3:"448";i:3;s:3:"708";}}s:12:"Kcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:12:"Kcommaaccent";s:1:"B";a:4:{i:0;s:3:"-21";i:1;s:4:"-218";i:2;s:3:"702";i:3;s:3:"669";}}s:6:"Lacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"Lacute";s:1:"B";a:4:{i:0;s:3:"-22";i:1;s:1:"0";i:2;s:3:"590";i:3;s:3:"904";}}s:9:"trademark";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:4:"1000";s:1:"N";s:9:"trademark";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:3:"263";i:2;s:3:"968";i:3;s:3:"669";}}s:10:"edotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:10:"edotaccent";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:3:"-13";i:2;s:3:"398";i:3;s:3:"655";}}s:6:"Igrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:6:"Igrave";s:1:"B";a:4:{i:0;s:3:"-32";i:1;s:1:"0";i:2;s:3:"406";i:3;s:3:"904";}}s:7:"Imacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:7:"Imacron";s:1:"B";a:4:{i:0;s:3:"-32";i:1;s:1:"0";i:2;s:3:"461";i:3;s:3:"830";}}s:6:"Lcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"Lcaron";s:1:"B";a:4:{i:0;s:3:"-22";i:1;s:1:"0";i:2;s:3:"671";i:3;s:3:"718";}}s:7:"onehalf";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"750";s:1:"N";s:7:"onehalf";s:1:"B";a:4:{i:0;s:2:"-9";i:1;s:3:"-14";i:2;s:3:"723";i:3;s:3:"683";}}s:9:"lessequal";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"549";s:1:"N";s:9:"lessequal";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:1:"0";i:2;s:3:"526";i:3;s:3:"704";}}s:11:"ocircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:11:"ocircumflex";s:1:"B";a:4:{i:0;s:2:"-3";i:1;s:3:"-13";i:2;s:3:"451";i:3;s:3:"690";}}s:6:"ntilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"ntilde";s:1:"B";a:4:{i:0;s:2:"-6";i:1;s:2:"-9";i:2;s:3:"504";i:3;s:3:"655";}}s:13:"Uhungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:13:"Uhungarumlaut";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:3:"-18";i:2;s:3:"744";i:3;s:3:"904";}}s:6:"Eacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Eacute";s:1:"B";a:4:{i:0;s:3:"-27";i:1;s:1:"0";i:2;s:3:"653";i:3;s:3:"904";}}s:7:"emacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:7:"emacron";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:3:"-13";i:2;s:3:"439";i:3;s:3:"623";}}s:6:"gbreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"gbreve";s:1:"B";a:4:{i:0;s:3:"-52";i:1;s:4:"-203";i:2;s:3:"478";i:3;s:3:"678";}}s:10:"onequarter";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"750";s:1:"N";s:10:"onequarter";s:1:"B";a:4:{i:0;s:1:"7";i:1;s:3:"-14";i:2;s:3:"721";i:3;s:3:"683";}}s:6:"Scaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"Scaron";s:1:"B";a:4:{i:0;s:1:"2";i:1;s:3:"-18";i:2;s:3:"553";i:3;s:3:"897";}}s:12:"Scommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:12:"Scommaaccent";s:1:"B";a:4:{i:0;s:1:"2";i:1;s:4:"-218";i:2;s:3:"526";i:3;s:3:"685";}}s:13:"Ohungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:13:"Ohungarumlaut";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:3:"-18";i:2;s:3:"723";i:3;s:3:"904";}}s:6:"degree";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"400";s:1:"N";s:6:"degree";s:1:"B";a:4:{i:0;s:2:"83";i:1;s:3:"397";i:2;s:3:"369";i:3;s:3:"683";}}s:6:"ograve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"ograve";s:1:"B";a:4:{i:0;s:2:"-3";i:1;s:3:"-13";i:2;s:3:"441";i:3;s:3:"697";}}s:6:"Ccaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Ccaron";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:3:"-18";i:2;s:3:"677";i:3;s:3:"897";}}s:6:"ugrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"ugrave";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:2:"-9";i:2;s:3:"492";i:3;s:3:"697";}}s:7:"radical";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"549";s:1:"N";s:7:"radical";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:3:"-46";i:2;s:3:"512";i:3;s:3:"850";}}s:6:"Dcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Dcaron";s:1:"B";a:4:{i:0;s:3:"-46";i:1;s:1:"0";i:2;s:3:"685";i:3;s:3:"897";}}s:12:"rcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:12:"rcommaaccent";s:1:"B";a:4:{i:0;s:3:"-67";i:1;s:4:"-218";i:2;s:3:"389";i:3;s:3:"462";}}s:6:"Ntilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Ntilde";s:1:"B";a:4:{i:0;s:3:"-27";i:1;s:3:"-15";i:2;s:3:"748";i:3;s:3:"862";}}s:6:"otilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"otilde";s:1:"B";a:4:{i:0;s:2:"-3";i:1;s:3:"-13";i:2;s:3:"491";i:3;s:3:"655";}}s:12:"Rcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:12:"Rcommaaccent";s:1:"B";a:4:{i:0;s:3:"-29";i:1;s:4:"-218";i:2;s:3:"623";i:3;s:3:"669";}}s:12:"Lcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:12:"Lcommaaccent";s:1:"B";a:4:{i:0;s:3:"-22";i:1;s:4:"-218";i:2;s:3:"590";i:3;s:3:"669";}}s:6:"Atilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Atilde";s:1:"B";a:4:{i:0;s:3:"-67";i:1;s:1:"0";i:2;s:3:"593";i:3;s:3:"862";}}s:7:"Aogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:7:"Aogonek";s:1:"B";a:4:{i:0;s:3:"-67";i:1;s:4:"-183";i:2;s:3:"604";i:3;s:3:"683";}}s:5:"Aring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:5:"Aring";s:1:"B";a:4:{i:0;s:3:"-67";i:1;s:1:"0";i:2;s:3:"593";i:3;s:3:"921";}}s:6:"Otilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Otilde";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:3:"-18";i:2;s:3:"691";i:3;s:3:"862";}}s:10:"zdotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:10:"zdotaccent";s:1:"B";a:4:{i:0;s:3:"-43";i:1;s:3:"-78";i:2;s:3:"368";i:3;s:3:"655";}}s:6:"Ecaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Ecaron";s:1:"B";a:4:{i:0;s:3:"-27";i:1;s:1:"0";i:2;s:3:"653";i:3;s:3:"897";}}s:7:"Iogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:7:"Iogonek";s:1:"B";a:4:{i:0;s:3:"-32";i:1;s:4:"-183";i:2;s:3:"406";i:3;s:3:"669";}}s:12:"kcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:12:"kcommaaccent";s:1:"B";a:4:{i:0;s:3:"-23";i:1;s:4:"-218";i:2;s:3:"483";i:3;s:3:"699";}}s:5:"minus";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"606";s:1:"N";s:5:"minus";s:1:"B";a:4:{i:0;s:2:"51";i:1;s:3:"209";i:2;s:3:"555";i:3;s:3:"297";}}s:11:"Icircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:11:"Icircumflex";s:1:"B";a:4:{i:0;s:3:"-32";i:1;s:1:"0";i:2;s:3:"450";i:3;s:3:"897";}}s:6:"ncaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"ncaron";s:1:"B";a:4:{i:0;s:2:"-6";i:1;s:2:"-9";i:2;s:3:"523";i:3;s:3:"690";}}s:12:"tcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:12:"tcommaaccent";s:1:"B";a:4:{i:0;s:3:"-62";i:1;s:4:"-218";i:2;s:3:"281";i:3;s:3:"594";}}s:10:"logicalnot";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"606";s:1:"N";s:10:"logicalnot";s:1:"B";a:4:{i:0;s:2:"51";i:1;s:3:"108";i:2;s:3:"555";i:3;s:3:"399";}}s:9:"odieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:9:"odieresis";s:1:"B";a:4:{i:0;s:2:"-3";i:1;s:3:"-13";i:2;s:3:"471";i:3;s:3:"655";}}s:9:"udieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:9:"udieresis";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:2:"-9";i:2;s:3:"499";i:3;s:3:"655";}}s:8:"notequal";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"549";s:1:"N";s:8:"notequal";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:3:"-49";i:2;s:3:"540";i:3;s:3:"570";}}s:12:"gcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:12:"gcommaaccent";s:1:"B";a:4:{i:0;s:3:"-52";i:1;s:4:"-203";i:2;s:3:"478";i:3;s:3:"767";}}s:3:"eth";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:3:"eth";s:1:"B";a:4:{i:0;s:2:"-3";i:1;s:3:"-13";i:2;s:3:"454";i:3;s:3:"699";}}s:6:"zcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:6:"zcaron";s:1:"B";a:4:{i:0;s:3:"-43";i:1;s:3:"-78";i:2;s:3:"424";i:3;s:3:"690";}}s:12:"ncommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:12:"ncommaaccent";s:1:"B";a:4:{i:0;s:2:"-6";i:1;s:4:"-218";i:2;s:3:"493";i:3;s:3:"462";}}s:11:"onesuperior";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"300";s:1:"N";s:11:"onesuperior";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"274";i:2;s:3:"301";i:3;s:3:"683";}}s:7:"imacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:7:"imacron";s:1:"B";a:4:{i:0;s:1:"2";i:1;s:2:"-9";i:2;s:3:"294";i:3;s:3:"623";}}s:4:"Euro";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:4:"Euro";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:1:"0";i:3;s:1:"0";}}}s:3:"KPX";a:105:{s:1:"A";a:49:{s:1:"C";s:3:"-65";s:6:"Cacute";s:3:"-65";s:6:"Ccaron";s:3:"-65";s:8:"Ccedilla";s:3:"-65";s:1:"G";s:3:"-60";s:6:"Gbreve";s:3:"-60";s:12:"Gcommaaccent";s:3:"-60";s:1:"O";s:3:"-50";s:6:"Oacute";s:3:"-50";s:11:"Ocircumflex";s:3:"-50";s:9:"Odieresis";s:3:"-50";s:6:"Ograve";s:3:"-50";s:13:"Ohungarumlaut";s:3:"-50";s:7:"Omacron";s:3:"-50";s:6:"Oslash";s:3:"-50";s:6:"Otilde";s:3:"-50";s:1:"Q";s:3:"-55";s:1:"T";s:3:"-55";s:6:"Tcaron";s:3:"-55";s:12:"Tcommaaccent";s:3:"-55";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-95";s:1:"W";s:4:"-100";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:10:"quoteright";s:3:"-74";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-74";s:1:"w";s:3:"-74";s:1:"y";s:3:"-74";s:6:"yacute";s:3:"-74";s:9:"ydieresis";s:3:"-74";}s:6:"Aacute";a:49:{s:1:"C";s:3:"-65";s:6:"Cacute";s:3:"-65";s:6:"Ccaron";s:3:"-65";s:8:"Ccedilla";s:3:"-65";s:1:"G";s:3:"-60";s:6:"Gbreve";s:3:"-60";s:12:"Gcommaaccent";s:3:"-60";s:1:"O";s:3:"-50";s:6:"Oacute";s:3:"-50";s:11:"Ocircumflex";s:3:"-50";s:9:"Odieresis";s:3:"-50";s:6:"Ograve";s:3:"-50";s:13:"Ohungarumlaut";s:3:"-50";s:7:"Omacron";s:3:"-50";s:6:"Oslash";s:3:"-50";s:6:"Otilde";s:3:"-50";s:1:"Q";s:3:"-55";s:1:"T";s:3:"-55";s:6:"Tcaron";s:3:"-55";s:12:"Tcommaaccent";s:3:"-55";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-95";s:1:"W";s:4:"-100";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:10:"quoteright";s:3:"-74";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-74";s:1:"w";s:3:"-74";s:1:"y";s:3:"-74";s:6:"yacute";s:3:"-74";s:9:"ydieresis";s:3:"-74";}s:6:"Abreve";a:49:{s:1:"C";s:3:"-65";s:6:"Cacute";s:3:"-65";s:6:"Ccaron";s:3:"-65";s:8:"Ccedilla";s:3:"-65";s:1:"G";s:3:"-60";s:6:"Gbreve";s:3:"-60";s:12:"Gcommaaccent";s:3:"-60";s:1:"O";s:3:"-50";s:6:"Oacute";s:3:"-50";s:11:"Ocircumflex";s:3:"-50";s:9:"Odieresis";s:3:"-50";s:6:"Ograve";s:3:"-50";s:13:"Ohungarumlaut";s:3:"-50";s:7:"Omacron";s:3:"-50";s:6:"Oslash";s:3:"-50";s:6:"Otilde";s:3:"-50";s:1:"Q";s:3:"-55";s:1:"T";s:3:"-55";s:6:"Tcaron";s:3:"-55";s:12:"Tcommaaccent";s:3:"-55";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-95";s:1:"W";s:4:"-100";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:10:"quoteright";s:3:"-74";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-74";s:1:"w";s:3:"-74";s:1:"y";s:3:"-74";s:6:"yacute";s:3:"-74";s:9:"ydieresis";s:3:"-74";}s:11:"Acircumflex";a:49:{s:1:"C";s:3:"-65";s:6:"Cacute";s:3:"-65";s:6:"Ccaron";s:3:"-65";s:8:"Ccedilla";s:3:"-65";s:1:"G";s:3:"-60";s:6:"Gbreve";s:3:"-60";s:12:"Gcommaaccent";s:3:"-60";s:1:"O";s:3:"-50";s:6:"Oacute";s:3:"-50";s:11:"Ocircumflex";s:3:"-50";s:9:"Odieresis";s:3:"-50";s:6:"Ograve";s:3:"-50";s:13:"Ohungarumlaut";s:3:"-50";s:7:"Omacron";s:3:"-50";s:6:"Oslash";s:3:"-50";s:6:"Otilde";s:3:"-50";s:1:"Q";s:3:"-55";s:1:"T";s:3:"-55";s:6:"Tcaron";s:3:"-55";s:12:"Tcommaaccent";s:3:"-55";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-95";s:1:"W";s:4:"-100";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:10:"quoteright";s:3:"-74";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-74";s:1:"w";s:3:"-74";s:1:"y";s:3:"-74";s:6:"yacute";s:3:"-74";s:9:"ydieresis";s:3:"-74";}s:9:"Adieresis";a:49:{s:1:"C";s:3:"-65";s:6:"Cacute";s:3:"-65";s:6:"Ccaron";s:3:"-65";s:8:"Ccedilla";s:3:"-65";s:1:"G";s:3:"-60";s:6:"Gbreve";s:3:"-60";s:12:"Gcommaaccent";s:3:"-60";s:1:"O";s:3:"-50";s:6:"Oacute";s:3:"-50";s:11:"Ocircumflex";s:3:"-50";s:9:"Odieresis";s:3:"-50";s:6:"Ograve";s:3:"-50";s:13:"Ohungarumlaut";s:3:"-50";s:7:"Omacron";s:3:"-50";s:6:"Oslash";s:3:"-50";s:6:"Otilde";s:3:"-50";s:1:"Q";s:3:"-55";s:1:"T";s:3:"-55";s:6:"Tcaron";s:3:"-55";s:12:"Tcommaaccent";s:3:"-55";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-95";s:1:"W";s:4:"-100";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:10:"quoteright";s:3:"-74";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-74";s:1:"w";s:3:"-74";s:1:"y";s:3:"-74";s:6:"yacute";s:3:"-74";s:9:"ydieresis";s:3:"-74";}s:6:"Agrave";a:49:{s:1:"C";s:3:"-65";s:6:"Cacute";s:3:"-65";s:6:"Ccaron";s:3:"-65";s:8:"Ccedilla";s:3:"-65";s:1:"G";s:3:"-60";s:6:"Gbreve";s:3:"-60";s:12:"Gcommaaccent";s:3:"-60";s:1:"O";s:3:"-50";s:6:"Oacute";s:3:"-50";s:11:"Ocircumflex";s:3:"-50";s:9:"Odieresis";s:3:"-50";s:6:"Ograve";s:3:"-50";s:13:"Ohungarumlaut";s:3:"-50";s:7:"Omacron";s:3:"-50";s:6:"Oslash";s:3:"-50";s:6:"Otilde";s:3:"-50";s:1:"Q";s:3:"-55";s:1:"T";s:3:"-55";s:6:"Tcaron";s:3:"-55";s:12:"Tcommaaccent";s:3:"-55";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-95";s:1:"W";s:4:"-100";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:10:"quoteright";s:3:"-74";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-74";s:1:"w";s:3:"-74";s:1:"y";s:3:"-74";s:6:"yacute";s:3:"-74";s:9:"ydieresis";s:3:"-74";}s:7:"Amacron";a:49:{s:1:"C";s:3:"-65";s:6:"Cacute";s:3:"-65";s:6:"Ccaron";s:3:"-65";s:8:"Ccedilla";s:3:"-65";s:1:"G";s:3:"-60";s:6:"Gbreve";s:3:"-60";s:12:"Gcommaaccent";s:3:"-60";s:1:"O";s:3:"-50";s:6:"Oacute";s:3:"-50";s:11:"Ocircumflex";s:3:"-50";s:9:"Odieresis";s:3:"-50";s:6:"Ograve";s:3:"-50";s:13:"Ohungarumlaut";s:3:"-50";s:7:"Omacron";s:3:"-50";s:6:"Oslash";s:3:"-50";s:6:"Otilde";s:3:"-50";s:1:"Q";s:3:"-55";s:1:"T";s:3:"-55";s:6:"Tcaron";s:3:"-55";s:12:"Tcommaaccent";s:3:"-55";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-95";s:1:"W";s:4:"-100";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:10:"quoteright";s:3:"-74";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-74";s:1:"w";s:3:"-74";s:1:"y";s:3:"-74";s:6:"yacute";s:3:"-74";s:9:"ydieresis";s:3:"-74";}s:7:"Aogonek";a:49:{s:1:"C";s:3:"-65";s:6:"Cacute";s:3:"-65";s:6:"Ccaron";s:3:"-65";s:8:"Ccedilla";s:3:"-65";s:1:"G";s:3:"-60";s:6:"Gbreve";s:3:"-60";s:12:"Gcommaaccent";s:3:"-60";s:1:"O";s:3:"-50";s:6:"Oacute";s:3:"-50";s:11:"Ocircumflex";s:3:"-50";s:9:"Odieresis";s:3:"-50";s:6:"Ograve";s:3:"-50";s:13:"Ohungarumlaut";s:3:"-50";s:7:"Omacron";s:3:"-50";s:6:"Oslash";s:3:"-50";s:6:"Otilde";s:3:"-50";s:1:"Q";s:3:"-55";s:1:"T";s:3:"-55";s:6:"Tcaron";s:3:"-55";s:12:"Tcommaaccent";s:3:"-55";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-95";s:1:"W";s:4:"-100";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:10:"quoteright";s:3:"-74";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-74";s:1:"w";s:3:"-74";s:1:"y";s:3:"-34";s:6:"yacute";s:3:"-34";s:9:"ydieresis";s:3:"-34";}s:5:"Aring";a:49:{s:1:"C";s:3:"-65";s:6:"Cacute";s:3:"-65";s:6:"Ccaron";s:3:"-65";s:8:"Ccedilla";s:3:"-65";s:1:"G";s:3:"-60";s:6:"Gbreve";s:3:"-60";s:12:"Gcommaaccent";s:3:"-60";s:1:"O";s:3:"-50";s:6:"Oacute";s:3:"-50";s:11:"Ocircumflex";s:3:"-50";s:9:"Odieresis";s:3:"-50";s:6:"Ograve";s:3:"-50";s:13:"Ohungarumlaut";s:3:"-50";s:7:"Omacron";s:3:"-50";s:6:"Oslash";s:3:"-50";s:6:"Otilde";s:3:"-50";s:1:"Q";s:3:"-55";s:1:"T";s:3:"-55";s:6:"Tcaron";s:3:"-55";s:12:"Tcommaaccent";s:3:"-55";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-95";s:1:"W";s:4:"-100";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:10:"quoteright";s:3:"-74";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-74";s:1:"w";s:3:"-74";s:1:"y";s:3:"-74";s:6:"yacute";s:3:"-74";s:9:"ydieresis";s:3:"-74";}s:6:"Atilde";a:49:{s:1:"C";s:3:"-65";s:6:"Cacute";s:3:"-65";s:6:"Ccaron";s:3:"-65";s:8:"Ccedilla";s:3:"-65";s:1:"G";s:3:"-60";s:6:"Gbreve";s:3:"-60";s:12:"Gcommaaccent";s:3:"-60";s:1:"O";s:3:"-50";s:6:"Oacute";s:3:"-50";s:11:"Ocircumflex";s:3:"-50";s:9:"Odieresis";s:3:"-50";s:6:"Ograve";s:3:"-50";s:13:"Ohungarumlaut";s:3:"-50";s:7:"Omacron";s:3:"-50";s:6:"Oslash";s:3:"-50";s:6:"Otilde";s:3:"-50";s:1:"Q";s:3:"-55";s:1:"T";s:3:"-55";s:6:"Tcaron";s:3:"-55";s:12:"Tcommaaccent";s:3:"-55";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:3:"-95";s:1:"W";s:4:"-100";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";s:10:"quoteright";s:3:"-74";s:1:"u";s:3:"-30";s:6:"uacute";s:3:"-30";s:11:"ucircumflex";s:3:"-30";s:9:"udieresis";s:3:"-30";s:6:"ugrave";s:3:"-30";s:13:"uhungarumlaut";s:3:"-30";s:7:"umacron";s:3:"-30";s:7:"uogonek";s:3:"-30";s:5:"uring";s:3:"-30";s:1:"v";s:3:"-74";s:1:"w";s:3:"-74";s:1:"y";s:3:"-74";s:6:"yacute";s:3:"-74";s:9:"ydieresis";s:3:"-74";}s:1:"B";a:19:{s:1:"A";s:3:"-25";s:6:"Aacute";s:3:"-25";s:6:"Abreve";s:3:"-25";s:11:"Acircumflex";s:3:"-25";s:9:"Adieresis";s:3:"-25";s:6:"Agrave";s:3:"-25";s:7:"Amacron";s:3:"-25";s:7:"Aogonek";s:3:"-25";s:5:"Aring";s:3:"-25";s:6:"Atilde";s:3:"-25";s:1:"U";s:3:"-10";s:6:"Uacute";s:3:"-10";s:11:"Ucircumflex";s:3:"-10";s:9:"Udieresis";s:3:"-10";s:6:"Ugrave";s:3:"-10";s:13:"Uhungarumlaut";s:3:"-10";s:7:"Umacron";s:3:"-10";s:7:"Uogonek";s:3:"-10";s:5:"Uring";s:3:"-10";}s:1:"D";a:15:{s:1:"A";s:3:"-25";s:6:"Aacute";s:3:"-25";s:6:"Abreve";s:3:"-25";s:11:"Acircumflex";s:3:"-25";s:9:"Adieresis";s:3:"-25";s:6:"Agrave";s:3:"-25";s:7:"Amacron";s:3:"-25";s:7:"Aogonek";s:3:"-25";s:5:"Aring";s:3:"-25";s:6:"Atilde";s:3:"-25";s:1:"V";s:3:"-50";s:1:"W";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:6:"Dcaron";a:15:{s:1:"A";s:3:"-25";s:6:"Aacute";s:3:"-25";s:6:"Abreve";s:3:"-25";s:11:"Acircumflex";s:3:"-25";s:9:"Adieresis";s:3:"-25";s:6:"Agrave";s:3:"-25";s:7:"Amacron";s:3:"-25";s:7:"Aogonek";s:3:"-25";s:5:"Aring";s:3:"-25";s:6:"Atilde";s:3:"-25";s:1:"V";s:3:"-50";s:1:"W";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:6:"Dcroat";a:15:{s:1:"A";s:3:"-25";s:6:"Aacute";s:3:"-25";s:6:"Abreve";s:3:"-25";s:11:"Acircumflex";s:3:"-25";s:9:"Adieresis";s:3:"-25";s:6:"Agrave";s:3:"-25";s:7:"Amacron";s:3:"-25";s:7:"Aogonek";s:3:"-25";s:5:"Aring";s:3:"-25";s:6:"Atilde";s:3:"-25";s:1:"V";s:3:"-50";s:1:"W";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:1:"F";a:51:{s:1:"A";s:4:"-100";s:6:"Aacute";s:4:"-100";s:6:"Abreve";s:4:"-100";s:11:"Acircumflex";s:4:"-100";s:9:"Adieresis";s:4:"-100";s:6:"Agrave";s:4:"-100";s:7:"Amacron";s:4:"-100";s:7:"Aogonek";s:4:"-100";s:5:"Aring";s:4:"-100";s:6:"Atilde";s:4:"-100";s:1:"a";s:3:"-95";s:6:"aacute";s:3:"-95";s:6:"abreve";s:3:"-95";s:11:"acircumflex";s:3:"-95";s:9:"adieresis";s:3:"-95";s:6:"agrave";s:3:"-95";s:7:"amacron";s:3:"-95";s:7:"aogonek";s:3:"-95";s:5:"aring";s:3:"-95";s:6:"atilde";s:3:"-95";s:5:"comma";s:4:"-129";s:1:"e";s:4:"-100";s:6:"eacute";s:4:"-100";s:6:"ecaron";s:4:"-100";s:11:"ecircumflex";s:4:"-100";s:9:"edieresis";s:4:"-100";s:10:"edotaccent";s:4:"-100";s:6:"egrave";s:4:"-100";s:7:"emacron";s:4:"-100";s:7:"eogonek";s:4:"-100";s:1:"i";s:3:"-40";s:6:"iacute";s:3:"-40";s:11:"icircumflex";s:3:"-40";s:9:"idieresis";s:3:"-40";s:6:"igrave";s:3:"-40";s:7:"imacron";s:3:"-40";s:7:"iogonek";s:3:"-40";s:1:"o";s:3:"-70";s:6:"oacute";s:3:"-70";s:11:"ocircumflex";s:3:"-70";s:9:"odieresis";s:3:"-70";s:6:"ograve";s:3:"-70";s:13:"ohungarumlaut";s:3:"-70";s:7:"omacron";s:3:"-70";s:6:"oslash";s:3:"-70";s:6:"otilde";s:3:"-70";s:6:"period";s:4:"-129";s:1:"r";s:3:"-50";s:6:"racute";s:3:"-50";s:6:"rcaron";s:3:"-50";s:12:"rcommaaccent";s:3:"-50";}s:1:"J";a:49:{s:1:"A";s:3:"-25";s:6:"Aacute";s:3:"-25";s:6:"Abreve";s:3:"-25";s:11:"Acircumflex";s:3:"-25";s:9:"Adieresis";s:3:"-25";s:6:"Agrave";s:3:"-25";s:7:"Amacron";s:3:"-25";s:7:"Aogonek";s:3:"-25";s:5:"Aring";s:3:"-25";s:6:"Atilde";s:3:"-25";s:1:"a";s:3:"-40";s:6:"aacute";s:3:"-40";s:6:"abreve";s:3:"-40";s:11:"acircumflex";s:3:"-40";s:9:"adieresis";s:3:"-40";s:6:"agrave";s:3:"-40";s:7:"amacron";s:3:"-40";s:7:"aogonek";s:3:"-40";s:5:"aring";s:3:"-40";s:6:"atilde";s:3:"-40";s:5:"comma";s:3:"-10";s:1:"e";s:3:"-40";s:6:"eacute";s:3:"-40";s:6:"ecaron";s:3:"-40";s:11:"ecircumflex";s:3:"-40";s:9:"edieresis";s:3:"-40";s:10:"edotaccent";s:3:"-40";s:6:"egrave";s:3:"-40";s:7:"emacron";s:3:"-40";s:7:"eogonek";s:3:"-40";s:1:"o";s:3:"-40";s:6:"oacute";s:3:"-40";s:11:"ocircumflex";s:3:"-40";s:9:"odieresis";s:3:"-40";s:6:"ograve";s:3:"-40";s:13:"ohungarumlaut";s:3:"-40";s:7:"omacron";s:3:"-40";s:6:"oslash";s:3:"-40";s:6:"otilde";s:3:"-40";s:6:"period";s:3:"-10";s:1:"u";s:3:"-40";s:6:"uacute";s:3:"-40";s:11:"ucircumflex";s:3:"-40";s:9:"udieresis";s:3:"-40";s:6:"ugrave";s:3:"-40";s:13:"uhungarumlaut";s:3:"-40";s:7:"umacron";s:3:"-40";s:7:"uogonek";s:3:"-40";s:5:"uring";s:3:"-40";}s:1:"K";a:39:{s:1:"O";s:3:"-30";s:6:"Oacute";s:3:"-30";s:11:"Ocircumflex";s:3:"-30";s:9:"Odieresis";s:3:"-30";s:6:"Ograve";s:3:"-30";s:13:"Ohungarumlaut";s:3:"-30";s:7:"Omacron";s:3:"-30";s:6:"Oslash";s:3:"-30";s:6:"Otilde";s:3:"-30";s:1:"e";s:3:"-25";s:6:"eacute";s:3:"-25";s:6:"ecaron";s:3:"-25";s:11:"ecircumflex";s:3:"-25";s:9:"edieresis";s:3:"-25";s:10:"edotaccent";s:3:"-25";s:6:"egrave";s:3:"-25";s:7:"emacron";s:3:"-25";s:7:"eogonek";s:3:"-25";s:1:"o";s:3:"-25";s:6:"oacute";s:3:"-25";s:11:"ocircumflex";s:3:"-25";s:9:"odieresis";s:3:"-25";s:6:"ograve";s:3:"-25";s:13:"ohungarumlaut";s:3:"-25";s:7:"omacron";s:3:"-25";s:6:"oslash";s:3:"-25";s:6:"otilde";s:3:"-25";s:1:"u";s:3:"-20";s:6:"uacute";s:3:"-20";s:11:"ucircumflex";s:3:"-20";s:9:"udieresis";s:3:"-20";s:6:"ugrave";s:3:"-20";s:13:"uhungarumlaut";s:3:"-20";s:7:"umacron";s:3:"-20";s:7:"uogonek";s:3:"-20";s:5:"uring";s:3:"-20";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:12:"Kcommaaccent";a:39:{s:1:"O";s:3:"-30";s:6:"Oacute";s:3:"-30";s:11:"Ocircumflex";s:3:"-30";s:9:"Odieresis";s:3:"-30";s:6:"Ograve";s:3:"-30";s:13:"Ohungarumlaut";s:3:"-30";s:7:"Omacron";s:3:"-30";s:6:"Oslash";s:3:"-30";s:6:"Otilde";s:3:"-30";s:1:"e";s:3:"-25";s:6:"eacute";s:3:"-25";s:6:"ecaron";s:3:"-25";s:11:"ecircumflex";s:3:"-25";s:9:"edieresis";s:3:"-25";s:10:"edotaccent";s:3:"-25";s:6:"egrave";s:3:"-25";s:7:"emacron";s:3:"-25";s:7:"eogonek";s:3:"-25";s:1:"o";s:3:"-25";s:6:"oacute";s:3:"-25";s:11:"ocircumflex";s:3:"-25";s:9:"odieresis";s:3:"-25";s:6:"ograve";s:3:"-25";s:13:"ohungarumlaut";s:3:"-25";s:7:"omacron";s:3:"-25";s:6:"oslash";s:3:"-25";s:6:"otilde";s:3:"-25";s:1:"u";s:3:"-20";s:6:"uacute";s:3:"-20";s:11:"ucircumflex";s:3:"-20";s:9:"udieresis";s:3:"-20";s:6:"ugrave";s:3:"-20";s:13:"uhungarumlaut";s:3:"-20";s:7:"umacron";s:3:"-20";s:7:"uogonek";s:3:"-20";s:5:"uring";s:3:"-20";s:1:"y";s:3:"-20";s:6:"yacute";s:3:"-20";s:9:"ydieresis";s:3:"-20";}s:1:"L";a:12:{s:1:"T";s:3:"-18";s:6:"Tcaron";s:3:"-18";s:12:"Tcommaaccent";s:3:"-18";s:1:"V";s:3:"-37";s:1:"W";s:3:"-37";s:1:"Y";s:3:"-37";s:6:"Yacute";s:3:"-37";s:9:"Ydieresis";s:3:"-37";s:10:"quoteright";s:3:"-55";s:1:"y";s:3:"-37";s:6:"yacute";s:3:"-37";s:9:"ydieresis";s:3:"-37";}s:6:"Lacute";a:12:{s:1:"T";s:3:"-18";s:6:"Tcaron";s:3:"-18";s:12:"Tcommaaccent";s:3:"-18";s:1:"V";s:3:"-37";s:1:"W";s:3:"-37";s:1:"Y";s:3:"-37";s:6:"Yacute";s:3:"-37";s:9:"Ydieresis";s:3:"-37";s:10:"quoteright";s:3:"-55";s:1:"y";s:3:"-37";s:6:"yacute";s:3:"-37";s:9:"ydieresis";s:3:"-37";}s:12:"Lcommaaccent";a:12:{s:1:"T";s:3:"-18";s:6:"Tcaron";s:3:"-18";s:12:"Tcommaaccent";s:3:"-18";s:1:"V";s:3:"-37";s:1:"W";s:3:"-37";s:1:"Y";s:3:"-37";s:6:"Yacute";s:3:"-37";s:9:"Ydieresis";s:3:"-37";s:10:"quoteright";s:3:"-55";s:1:"y";s:3:"-37";s:6:"yacute";s:3:"-37";s:9:"ydieresis";s:3:"-37";}s:6:"Lslash";a:12:{s:1:"T";s:3:"-18";s:6:"Tcaron";s:3:"-18";s:12:"Tcommaaccent";s:3:"-18";s:1:"V";s:3:"-37";s:1:"W";s:3:"-37";s:1:"Y";s:3:"-37";s:6:"Yacute";s:3:"-37";s:9:"Ydieresis";s:3:"-37";s:10:"quoteright";s:3:"-55";s:1:"y";s:3:"-37";s:6:"yacute";s:3:"-37";s:9:"ydieresis";s:3:"-37";}s:1:"N";a:10:{s:1:"A";s:3:"-30";s:6:"Aacute";s:3:"-30";s:6:"Abreve";s:3:"-30";s:11:"Acircumflex";s:3:"-30";s:9:"Adieresis";s:3:"-30";s:6:"Agrave";s:3:"-30";s:7:"Amacron";s:3:"-30";s:7:"Aogonek";s:3:"-30";s:5:"Aring";s:3:"-30";s:6:"Atilde";s:3:"-30";}s:6:"Nacute";a:10:{s:1:"A";s:3:"-30";s:6:"Aacute";s:3:"-30";s:6:"Abreve";s:3:"-30";s:11:"Acircumflex";s:3:"-30";s:9:"Adieresis";s:3:"-30";s:6:"Agrave";s:3:"-30";s:7:"Amacron";s:3:"-30";s:7:"Aogonek";s:3:"-30";s:5:"Aring";s:3:"-30";s:6:"Atilde";s:3:"-30";}s:6:"Ncaron";a:10:{s:1:"A";s:3:"-30";s:6:"Aacute";s:3:"-30";s:6:"Abreve";s:3:"-30";s:11:"Acircumflex";s:3:"-30";s:9:"Adieresis";s:3:"-30";s:6:"Agrave";s:3:"-30";s:7:"Amacron";s:3:"-30";s:7:"Aogonek";s:3:"-30";s:5:"Aring";s:3:"-30";s:6:"Atilde";s:3:"-30";}s:12:"Ncommaaccent";a:10:{s:1:"A";s:3:"-30";s:6:"Aacute";s:3:"-30";s:6:"Abreve";s:3:"-30";s:11:"Acircumflex";s:3:"-30";s:9:"Adieresis";s:3:"-30";s:6:"Agrave";s:3:"-30";s:7:"Amacron";s:3:"-30";s:7:"Aogonek";s:3:"-30";s:5:"Aring";s:3:"-30";s:6:"Atilde";s:3:"-30";}s:6:"Ntilde";a:10:{s:1:"A";s:3:"-30";s:6:"Aacute";s:3:"-30";s:6:"Abreve";s:3:"-30";s:11:"Acircumflex";s:3:"-30";s:9:"Adieresis";s:3:"-30";s:6:"Agrave";s:3:"-30";s:7:"Amacron";s:3:"-30";s:7:"Aogonek";s:3:"-30";s:5:"Aring";s:3:"-30";s:6:"Atilde";s:3:"-30";}s:1:"O";a:19:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:6:"Oacute";a:19:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:11:"Ocircumflex";a:19:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:9:"Odieresis";a:19:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:6:"Ograve";a:19:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:13:"Ohungarumlaut";a:19:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:7:"Omacron";a:19:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:6:"Oslash";a:19:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:6:"Otilde";a:19:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:1:"P";a:40:{s:1:"A";s:3:"-85";s:6:"Aacute";s:3:"-85";s:6:"Abreve";s:3:"-85";s:11:"Acircumflex";s:3:"-85";s:9:"Adieresis";s:3:"-85";s:6:"Agrave";s:3:"-85";s:7:"Amacron";s:3:"-85";s:7:"Aogonek";s:3:"-85";s:5:"Aring";s:3:"-85";s:6:"Atilde";s:3:"-85";s:1:"a";s:3:"-40";s:6:"aacute";s:3:"-40";s:6:"abreve";s:3:"-40";s:11:"acircumflex";s:3:"-40";s:9:"adieresis";s:3:"-40";s:6:"agrave";s:3:"-40";s:7:"amacron";s:3:"-40";s:7:"aogonek";s:3:"-40";s:5:"aring";s:3:"-40";s:6:"atilde";s:3:"-40";s:5:"comma";s:4:"-129";s:1:"e";s:3:"-50";s:6:"eacute";s:3:"-50";s:6:"ecaron";s:3:"-50";s:11:"ecircumflex";s:3:"-50";s:9:"edieresis";s:3:"-50";s:10:"edotaccent";s:3:"-50";s:6:"egrave";s:3:"-50";s:7:"emacron";s:3:"-50";s:7:"eogonek";s:3:"-50";s:1:"o";s:3:"-55";s:6:"oacute";s:3:"-55";s:11:"ocircumflex";s:3:"-55";s:9:"odieresis";s:3:"-55";s:6:"ograve";s:3:"-55";s:13:"ohungarumlaut";s:3:"-55";s:7:"omacron";s:3:"-55";s:6:"oslash";s:3:"-55";s:6:"otilde";s:3:"-55";s:6:"period";s:4:"-129";}s:1:"Q";a:9:{s:1:"U";s:3:"-10";s:6:"Uacute";s:3:"-10";s:11:"Ucircumflex";s:3:"-10";s:9:"Udieresis";s:3:"-10";s:6:"Ugrave";s:3:"-10";s:13:"Uhungarumlaut";s:3:"-10";s:7:"Umacron";s:3:"-10";s:7:"Uogonek";s:3:"-10";s:5:"Uring";s:3:"-10";}s:1:"R";a:26:{s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"T";s:3:"-30";s:6:"Tcaron";s:3:"-30";s:12:"Tcommaaccent";s:3:"-30";s:1:"U";s:3:"-40";s:6:"Uacute";s:3:"-40";s:11:"Ucircumflex";s:3:"-40";s:9:"Udieresis";s:3:"-40";s:6:"Ugrave";s:3:"-40";s:13:"Uhungarumlaut";s:3:"-40";s:7:"Umacron";s:3:"-40";s:7:"Uogonek";s:3:"-40";s:5:"Uring";s:3:"-40";s:1:"V";s:3:"-18";s:1:"W";s:3:"-18";s:1:"Y";s:3:"-18";s:6:"Yacute";s:3:"-18";s:9:"Ydieresis";s:3:"-18";}s:6:"Racute";a:26:{s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"T";s:3:"-30";s:6:"Tcaron";s:3:"-30";s:12:"Tcommaaccent";s:3:"-30";s:1:"U";s:3:"-40";s:6:"Uacute";s:3:"-40";s:11:"Ucircumflex";s:3:"-40";s:9:"Udieresis";s:3:"-40";s:6:"Ugrave";s:3:"-40";s:13:"Uhungarumlaut";s:3:"-40";s:7:"Umacron";s:3:"-40";s:7:"Uogonek";s:3:"-40";s:5:"Uring";s:3:"-40";s:1:"V";s:3:"-18";s:1:"W";s:3:"-18";s:1:"Y";s:3:"-18";s:6:"Yacute";s:3:"-18";s:9:"Ydieresis";s:3:"-18";}s:6:"Rcaron";a:26:{s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"T";s:3:"-30";s:6:"Tcaron";s:3:"-30";s:12:"Tcommaaccent";s:3:"-30";s:1:"U";s:3:"-40";s:6:"Uacute";s:3:"-40";s:11:"Ucircumflex";s:3:"-40";s:9:"Udieresis";s:3:"-40";s:6:"Ugrave";s:3:"-40";s:13:"Uhungarumlaut";s:3:"-40";s:7:"Umacron";s:3:"-40";s:7:"Uogonek";s:3:"-40";s:5:"Uring";s:3:"-40";s:1:"V";s:3:"-18";s:1:"W";s:3:"-18";s:1:"Y";s:3:"-18";s:6:"Yacute";s:3:"-18";s:9:"Ydieresis";s:3:"-18";}s:12:"Rcommaaccent";a:26:{s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"T";s:3:"-30";s:6:"Tcaron";s:3:"-30";s:12:"Tcommaaccent";s:3:"-30";s:1:"U";s:3:"-40";s:6:"Uacute";s:3:"-40";s:11:"Ucircumflex";s:3:"-40";s:9:"Udieresis";s:3:"-40";s:6:"Ugrave";s:3:"-40";s:13:"Uhungarumlaut";s:3:"-40";s:7:"Umacron";s:3:"-40";s:7:"Uogonek";s:3:"-40";s:5:"Uring";s:3:"-40";s:1:"V";s:3:"-18";s:1:"W";s:3:"-18";s:1:"Y";s:3:"-18";s:6:"Yacute";s:3:"-18";s:9:"Ydieresis";s:3:"-18";}s:1:"T";a:72:{s:1:"A";s:3:"-55";s:6:"Aacute";s:3:"-55";s:6:"Abreve";s:3:"-55";s:11:"Acircumflex";s:3:"-55";s:9:"Adieresis";s:3:"-55";s:6:"Agrave";s:3:"-55";s:7:"Amacron";s:3:"-55";s:7:"Aogonek";s:3:"-55";s:5:"Aring";s:3:"-55";s:6:"Atilde";s:3:"-55";s:1:"O";s:3:"-18";s:6:"Oacute";s:3:"-18";s:11:"Ocircumflex";s:3:"-18";s:9:"Odieresis";s:3:"-18";s:6:"Ograve";s:3:"-18";s:13:"Ohungarumlaut";s:3:"-18";s:7:"Omacron";s:3:"-18";s:6:"Oslash";s:3:"-18";s:6:"Otilde";s:3:"-18";s:1:"a";s:3:"-92";s:6:"aacute";s:3:"-92";s:6:"abreve";s:3:"-92";s:11:"acircumflex";s:3:"-92";s:9:"adieresis";s:3:"-92";s:6:"agrave";s:3:"-92";s:7:"amacron";s:3:"-92";s:7:"aogonek";s:3:"-92";s:5:"aring";s:3:"-92";s:6:"atilde";s:3:"-92";s:5:"colon";s:3:"-74";s:5:"comma";s:3:"-92";s:1:"e";s:3:"-92";s:6:"eacute";s:3:"-92";s:6:"ecaron";s:3:"-92";s:11:"ecircumflex";s:3:"-92";s:9:"edieresis";s:3:"-52";s:10:"edotaccent";s:3:"-92";s:6:"egrave";s:3:"-52";s:7:"emacron";s:3:"-52";s:7:"eogonek";s:3:"-92";s:6:"hyphen";s:3:"-92";s:1:"i";s:3:"-37";s:6:"iacute";s:3:"-37";s:7:"iogonek";s:3:"-37";s:1:"o";s:3:"-95";s:6:"oacute";s:3:"-95";s:11:"ocircumflex";s:3:"-95";s:9:"odieresis";s:3:"-95";s:6:"ograve";s:3:"-95";s:13:"ohungarumlaut";s:3:"-95";s:7:"omacron";s:3:"-95";s:6:"oslash";s:3:"-95";s:6:"otilde";s:3:"-95";s:6:"period";s:3:"-92";s:1:"r";s:3:"-37";s:6:"racute";s:3:"-37";s:6:"rcaron";s:3:"-37";s:12:"rcommaaccent";s:3:"-37";s:9:"semicolon";s:3:"-74";s:1:"u";s:3:"-37";s:6:"uacute";s:3:"-37";s:11:"ucircumflex";s:3:"-37";s:9:"udieresis";s:3:"-37";s:6:"ugrave";s:3:"-37";s:13:"uhungarumlaut";s:3:"-37";s:7:"umacron";s:3:"-37";s:7:"uogonek";s:3:"-37";s:5:"uring";s:3:"-37";s:1:"w";s:3:"-37";s:1:"y";s:3:"-37";s:6:"yacute";s:3:"-37";s:9:"ydieresis";s:3:"-37";}s:6:"Tcaron";a:72:{s:1:"A";s:3:"-55";s:6:"Aacute";s:3:"-55";s:6:"Abreve";s:3:"-55";s:11:"Acircumflex";s:3:"-55";s:9:"Adieresis";s:3:"-55";s:6:"Agrave";s:3:"-55";s:7:"Amacron";s:3:"-55";s:7:"Aogonek";s:3:"-55";s:5:"Aring";s:3:"-55";s:6:"Atilde";s:3:"-55";s:1:"O";s:3:"-18";s:6:"Oacute";s:3:"-18";s:11:"Ocircumflex";s:3:"-18";s:9:"Odieresis";s:3:"-18";s:6:"Ograve";s:3:"-18";s:13:"Ohungarumlaut";s:3:"-18";s:7:"Omacron";s:3:"-18";s:6:"Oslash";s:3:"-18";s:6:"Otilde";s:3:"-18";s:1:"a";s:3:"-92";s:6:"aacute";s:3:"-92";s:6:"abreve";s:3:"-92";s:11:"acircumflex";s:3:"-92";s:9:"adieresis";s:3:"-92";s:6:"agrave";s:3:"-92";s:7:"amacron";s:3:"-92";s:7:"aogonek";s:3:"-92";s:5:"aring";s:3:"-92";s:6:"atilde";s:3:"-92";s:5:"colon";s:3:"-74";s:5:"comma";s:3:"-92";s:1:"e";s:3:"-92";s:6:"eacute";s:3:"-92";s:6:"ecaron";s:3:"-92";s:11:"ecircumflex";s:3:"-92";s:9:"edieresis";s:3:"-52";s:10:"edotaccent";s:3:"-92";s:6:"egrave";s:3:"-52";s:7:"emacron";s:3:"-52";s:7:"eogonek";s:3:"-92";s:6:"hyphen";s:3:"-92";s:1:"i";s:3:"-37";s:6:"iacute";s:3:"-37";s:7:"iogonek";s:3:"-37";s:1:"o";s:3:"-95";s:6:"oacute";s:3:"-95";s:11:"ocircumflex";s:3:"-95";s:9:"odieresis";s:3:"-95";s:6:"ograve";s:3:"-95";s:13:"ohungarumlaut";s:3:"-95";s:7:"omacron";s:3:"-95";s:6:"oslash";s:3:"-95";s:6:"otilde";s:3:"-95";s:6:"period";s:3:"-92";s:1:"r";s:3:"-37";s:6:"racute";s:3:"-37";s:6:"rcaron";s:3:"-37";s:12:"rcommaaccent";s:3:"-37";s:9:"semicolon";s:3:"-74";s:1:"u";s:3:"-37";s:6:"uacute";s:3:"-37";s:11:"ucircumflex";s:3:"-37";s:9:"udieresis";s:3:"-37";s:6:"ugrave";s:3:"-37";s:13:"uhungarumlaut";s:3:"-37";s:7:"umacron";s:3:"-37";s:7:"uogonek";s:3:"-37";s:5:"uring";s:3:"-37";s:1:"w";s:3:"-37";s:1:"y";s:3:"-37";s:6:"yacute";s:3:"-37";s:9:"ydieresis";s:3:"-37";}s:12:"Tcommaaccent";a:72:{s:1:"A";s:3:"-55";s:6:"Aacute";s:3:"-55";s:6:"Abreve";s:3:"-55";s:11:"Acircumflex";s:3:"-55";s:9:"Adieresis";s:3:"-55";s:6:"Agrave";s:3:"-55";s:7:"Amacron";s:3:"-55";s:7:"Aogonek";s:3:"-55";s:5:"Aring";s:3:"-55";s:6:"Atilde";s:3:"-55";s:1:"O";s:3:"-18";s:6:"Oacute";s:3:"-18";s:11:"Ocircumflex";s:3:"-18";s:9:"Odieresis";s:3:"-18";s:6:"Ograve";s:3:"-18";s:13:"Ohungarumlaut";s:3:"-18";s:7:"Omacron";s:3:"-18";s:6:"Oslash";s:3:"-18";s:6:"Otilde";s:3:"-18";s:1:"a";s:3:"-92";s:6:"aacute";s:3:"-92";s:6:"abreve";s:3:"-92";s:11:"acircumflex";s:3:"-92";s:9:"adieresis";s:3:"-92";s:6:"agrave";s:3:"-92";s:7:"amacron";s:3:"-92";s:7:"aogonek";s:3:"-92";s:5:"aring";s:3:"-92";s:6:"atilde";s:3:"-92";s:5:"colon";s:3:"-74";s:5:"comma";s:3:"-92";s:1:"e";s:3:"-92";s:6:"eacute";s:3:"-92";s:6:"ecaron";s:3:"-92";s:11:"ecircumflex";s:3:"-92";s:9:"edieresis";s:3:"-52";s:10:"edotaccent";s:3:"-92";s:6:"egrave";s:3:"-52";s:7:"emacron";s:3:"-52";s:7:"eogonek";s:3:"-92";s:6:"hyphen";s:3:"-92";s:1:"i";s:3:"-37";s:6:"iacute";s:3:"-37";s:7:"iogonek";s:3:"-37";s:1:"o";s:3:"-95";s:6:"oacute";s:3:"-95";s:11:"ocircumflex";s:3:"-95";s:9:"odieresis";s:3:"-95";s:6:"ograve";s:3:"-95";s:13:"ohungarumlaut";s:3:"-95";s:7:"omacron";s:3:"-95";s:6:"oslash";s:3:"-95";s:6:"otilde";s:3:"-95";s:6:"period";s:3:"-92";s:1:"r";s:3:"-37";s:6:"racute";s:3:"-37";s:6:"rcaron";s:3:"-37";s:12:"rcommaaccent";s:3:"-37";s:9:"semicolon";s:3:"-74";s:1:"u";s:3:"-37";s:6:"uacute";s:3:"-37";s:11:"ucircumflex";s:3:"-37";s:9:"udieresis";s:3:"-37";s:6:"ugrave";s:3:"-37";s:13:"uhungarumlaut";s:3:"-37";s:7:"umacron";s:3:"-37";s:7:"uogonek";s:3:"-37";s:5:"uring";s:3:"-37";s:1:"w";s:3:"-37";s:1:"y";s:3:"-37";s:6:"yacute";s:3:"-37";s:9:"ydieresis";s:3:"-37";}s:1:"U";a:10:{s:1:"A";s:3:"-45";s:6:"Aacute";s:3:"-45";s:6:"Abreve";s:3:"-45";s:11:"Acircumflex";s:3:"-45";s:9:"Adieresis";s:3:"-45";s:6:"Agrave";s:3:"-45";s:7:"Amacron";s:3:"-45";s:7:"Aogonek";s:3:"-45";s:5:"Aring";s:3:"-45";s:6:"Atilde";s:3:"-45";}s:6:"Uacute";a:10:{s:1:"A";s:3:"-45";s:6:"Aacute";s:3:"-45";s:6:"Abreve";s:3:"-45";s:11:"Acircumflex";s:3:"-45";s:9:"Adieresis";s:3:"-45";s:6:"Agrave";s:3:"-45";s:7:"Amacron";s:3:"-45";s:7:"Aogonek";s:3:"-45";s:5:"Aring";s:3:"-45";s:6:"Atilde";s:3:"-45";}s:11:"Ucircumflex";a:10:{s:1:"A";s:3:"-45";s:6:"Aacute";s:3:"-45";s:6:"Abreve";s:3:"-45";s:11:"Acircumflex";s:3:"-45";s:9:"Adieresis";s:3:"-45";s:6:"Agrave";s:3:"-45";s:7:"Amacron";s:3:"-45";s:7:"Aogonek";s:3:"-45";s:5:"Aring";s:3:"-45";s:6:"Atilde";s:3:"-45";}s:9:"Udieresis";a:10:{s:1:"A";s:3:"-45";s:6:"Aacute";s:3:"-45";s:6:"Abreve";s:3:"-45";s:11:"Acircumflex";s:3:"-45";s:9:"Adieresis";s:3:"-45";s:6:"Agrave";s:3:"-45";s:7:"Amacron";s:3:"-45";s:7:"Aogonek";s:3:"-45";s:5:"Aring";s:3:"-45";s:6:"Atilde";s:3:"-45";}s:6:"Ugrave";a:10:{s:1:"A";s:3:"-45";s:6:"Aacute";s:3:"-45";s:6:"Abreve";s:3:"-45";s:11:"Acircumflex";s:3:"-45";s:9:"Adieresis";s:3:"-45";s:6:"Agrave";s:3:"-45";s:7:"Amacron";s:3:"-45";s:7:"Aogonek";s:3:"-45";s:5:"Aring";s:3:"-45";s:6:"Atilde";s:3:"-45";}s:13:"Uhungarumlaut";a:10:{s:1:"A";s:3:"-45";s:6:"Aacute";s:3:"-45";s:6:"Abreve";s:3:"-45";s:11:"Acircumflex";s:3:"-45";s:9:"Adieresis";s:3:"-45";s:6:"Agrave";s:3:"-45";s:7:"Amacron";s:3:"-45";s:7:"Aogonek";s:3:"-45";s:5:"Aring";s:3:"-45";s:6:"Atilde";s:3:"-45";}s:7:"Umacron";a:10:{s:1:"A";s:3:"-45";s:6:"Aacute";s:3:"-45";s:6:"Abreve";s:3:"-45";s:11:"Acircumflex";s:3:"-45";s:9:"Adieresis";s:3:"-45";s:6:"Agrave";s:3:"-45";s:7:"Amacron";s:3:"-45";s:7:"Aogonek";s:3:"-45";s:5:"Aring";s:3:"-45";s:6:"Atilde";s:3:"-45";}s:7:"Uogonek";a:10:{s:1:"A";s:3:"-45";s:6:"Aacute";s:3:"-45";s:6:"Abreve";s:3:"-45";s:11:"Acircumflex";s:3:"-45";s:9:"Adieresis";s:3:"-45";s:6:"Agrave";s:3:"-45";s:7:"Amacron";s:3:"-45";s:7:"Aogonek";s:3:"-45";s:5:"Aring";s:3:"-45";s:6:"Atilde";s:3:"-45";}s:5:"Uring";a:10:{s:1:"A";s:3:"-45";s:6:"Aacute";s:3:"-45";s:6:"Abreve";s:3:"-45";s:11:"Acircumflex";s:3:"-45";s:9:"Adieresis";s:3:"-45";s:6:"Agrave";s:3:"-45";s:7:"Amacron";s:3:"-45";s:7:"Aogonek";s:3:"-45";s:5:"Aring";s:3:"-45";s:6:"Atilde";s:3:"-45";}s:1:"V";a:67:{s:1:"A";s:3:"-85";s:6:"Aacute";s:3:"-85";s:6:"Abreve";s:3:"-85";s:11:"Acircumflex";s:3:"-85";s:9:"Adieresis";s:3:"-85";s:6:"Agrave";s:3:"-85";s:7:"Amacron";s:3:"-85";s:7:"Aogonek";s:3:"-85";s:5:"Aring";s:3:"-85";s:6:"Atilde";s:3:"-85";s:1:"G";s:3:"-10";s:6:"Gbreve";s:3:"-10";s:12:"Gcommaaccent";s:3:"-10";s:1:"O";s:3:"-30";s:6:"Oacute";s:3:"-30";s:11:"Ocircumflex";s:3:"-30";s:9:"Odieresis";s:3:"-30";s:6:"Ograve";s:3:"-30";s:13:"Ohungarumlaut";s:3:"-30";s:7:"Omacron";s:3:"-30";s:6:"Oslash";s:3:"-30";s:6:"Otilde";s:3:"-30";s:1:"a";s:4:"-111";s:6:"aacute";s:4:"-111";s:6:"abreve";s:4:"-111";s:11:"acircumflex";s:4:"-111";s:9:"adieresis";s:4:"-111";s:6:"agrave";s:4:"-111";s:7:"amacron";s:4:"-111";s:7:"aogonek";s:4:"-111";s:5:"aring";s:4:"-111";s:6:"atilde";s:4:"-111";s:5:"colon";s:3:"-74";s:5:"comma";s:4:"-129";s:1:"e";s:4:"-111";s:6:"eacute";s:4:"-111";s:6:"ecaron";s:4:"-111";s:11:"ecircumflex";s:4:"-111";s:9:"edieresis";s:3:"-71";s:10:"edotaccent";s:4:"-111";s:6:"egrave";s:3:"-71";s:7:"emacron";s:3:"-71";s:7:"eogonek";s:4:"-111";s:6:"hyphen";s:3:"-70";s:1:"i";s:3:"-55";s:6:"iacute";s:3:"-55";s:7:"iogonek";s:3:"-55";s:1:"o";s:4:"-111";s:6:"oacute";s:4:"-111";s:11:"ocircumflex";s:4:"-111";s:9:"odieresis";s:4:"-111";s:6:"ograve";s:4:"-111";s:13:"ohungarumlaut";s:4:"-111";s:7:"omacron";s:4:"-111";s:6:"oslash";s:4:"-111";s:6:"otilde";s:4:"-111";s:6:"period";s:4:"-129";s:9:"semicolon";s:3:"-74";s:1:"u";s:3:"-55";s:6:"uacute";s:3:"-55";s:11:"ucircumflex";s:3:"-55";s:9:"udieresis";s:3:"-55";s:6:"ugrave";s:3:"-55";s:13:"uhungarumlaut";s:3:"-55";s:7:"umacron";s:3:"-55";s:7:"uogonek";s:3:"-55";s:5:"uring";s:3:"-55";}s:1:"W";a:67:{s:1:"A";s:3:"-74";s:6:"Aacute";s:3:"-74";s:6:"Abreve";s:3:"-74";s:11:"Acircumflex";s:3:"-74";s:9:"Adieresis";s:3:"-74";s:6:"Agrave";s:3:"-74";s:7:"Amacron";s:3:"-74";s:7:"Aogonek";s:3:"-74";s:5:"Aring";s:3:"-74";s:6:"Atilde";s:3:"-74";s:1:"O";s:3:"-15";s:6:"Oacute";s:3:"-15";s:11:"Ocircumflex";s:3:"-15";s:9:"Odieresis";s:3:"-15";s:6:"Ograve";s:3:"-15";s:13:"Ohungarumlaut";s:3:"-15";s:7:"Omacron";s:3:"-15";s:6:"Oslash";s:3:"-15";s:6:"Otilde";s:3:"-15";s:1:"a";s:3:"-85";s:6:"aacute";s:3:"-85";s:6:"abreve";s:3:"-85";s:11:"acircumflex";s:3:"-85";s:9:"adieresis";s:3:"-85";s:6:"agrave";s:3:"-85";s:7:"amacron";s:3:"-85";s:7:"aogonek";s:3:"-85";s:5:"aring";s:3:"-85";s:6:"atilde";s:3:"-85";s:5:"colon";s:3:"-55";s:5:"comma";s:3:"-74";s:1:"e";s:3:"-90";s:6:"eacute";s:3:"-90";s:6:"ecaron";s:3:"-90";s:11:"ecircumflex";s:3:"-90";s:9:"edieresis";s:3:"-50";s:10:"edotaccent";s:3:"-90";s:6:"egrave";s:3:"-50";s:7:"emacron";s:3:"-50";s:7:"eogonek";s:3:"-90";s:6:"hyphen";s:3:"-50";s:1:"i";s:3:"-37";s:6:"iacute";s:3:"-37";s:7:"iogonek";s:3:"-37";s:1:"o";s:3:"-80";s:6:"oacute";s:3:"-80";s:11:"ocircumflex";s:3:"-80";s:9:"odieresis";s:3:"-80";s:6:"ograve";s:3:"-80";s:13:"ohungarumlaut";s:3:"-80";s:7:"omacron";s:3:"-80";s:6:"oslash";s:3:"-80";s:6:"otilde";s:3:"-80";s:6:"period";s:3:"-74";s:9:"semicolon";s:3:"-55";s:1:"u";s:3:"-55";s:6:"uacute";s:3:"-55";s:11:"ucircumflex";s:3:"-55";s:9:"udieresis";s:3:"-55";s:6:"ugrave";s:3:"-55";s:13:"uhungarumlaut";s:3:"-55";s:7:"umacron";s:3:"-55";s:7:"uogonek";s:3:"-55";s:5:"uring";s:3:"-55";s:1:"y";s:3:"-55";s:6:"yacute";s:3:"-55";s:9:"ydieresis";s:3:"-55";}s:1:"Y";a:64:{s:1:"A";s:3:"-74";s:6:"Aacute";s:3:"-74";s:6:"Abreve";s:3:"-74";s:11:"Acircumflex";s:3:"-74";s:9:"Adieresis";s:3:"-74";s:6:"Agrave";s:3:"-74";s:7:"Amacron";s:3:"-74";s:7:"Aogonek";s:3:"-74";s:5:"Aring";s:3:"-74";s:6:"Atilde";s:3:"-74";s:1:"O";s:3:"-25";s:6:"Oacute";s:3:"-25";s:11:"Ocircumflex";s:3:"-25";s:9:"Odieresis";s:3:"-25";s:6:"Ograve";s:3:"-25";s:13:"Ohungarumlaut";s:3:"-25";s:7:"Omacron";s:3:"-25";s:6:"Oslash";s:3:"-25";s:6:"Otilde";s:3:"-25";s:1:"a";s:3:"-92";s:6:"aacute";s:3:"-92";s:6:"abreve";s:3:"-92";s:11:"acircumflex";s:3:"-92";s:9:"adieresis";s:3:"-92";s:6:"agrave";s:3:"-92";s:7:"amacron";s:3:"-92";s:7:"aogonek";s:3:"-92";s:5:"aring";s:3:"-92";s:6:"atilde";s:3:"-92";s:5:"colon";s:3:"-92";s:5:"comma";s:3:"-92";s:1:"e";s:4:"-111";s:6:"eacute";s:4:"-111";s:6:"ecaron";s:4:"-111";s:11:"ecircumflex";s:3:"-71";s:9:"edieresis";s:3:"-71";s:10:"edotaccent";s:4:"-111";s:6:"egrave";s:3:"-71";s:7:"emacron";s:3:"-71";s:7:"eogonek";s:4:"-111";s:6:"hyphen";s:3:"-92";s:1:"i";s:3:"-55";s:6:"iacute";s:3:"-55";s:7:"iogonek";s:3:"-55";s:1:"o";s:4:"-111";s:6:"oacute";s:4:"-111";s:11:"ocircumflex";s:4:"-111";s:9:"odieresis";s:4:"-111";s:6:"ograve";s:4:"-111";s:13:"ohungarumlaut";s:4:"-111";s:7:"omacron";s:4:"-111";s:6:"oslash";s:4:"-111";s:6:"otilde";s:4:"-111";s:6:"period";s:3:"-74";s:9:"semicolon";s:3:"-92";s:1:"u";s:3:"-92";s:6:"uacute";s:3:"-92";s:11:"ucircumflex";s:3:"-92";s:9:"udieresis";s:3:"-92";s:6:"ugrave";s:3:"-92";s:13:"uhungarumlaut";s:3:"-92";s:7:"umacron";s:3:"-92";s:7:"uogonek";s:3:"-92";s:5:"uring";s:3:"-92";}s:6:"Yacute";a:64:{s:1:"A";s:3:"-74";s:6:"Aacute";s:3:"-74";s:6:"Abreve";s:3:"-74";s:11:"Acircumflex";s:3:"-74";s:9:"Adieresis";s:3:"-74";s:6:"Agrave";s:3:"-74";s:7:"Amacron";s:3:"-74";s:7:"Aogonek";s:3:"-74";s:5:"Aring";s:3:"-74";s:6:"Atilde";s:3:"-74";s:1:"O";s:3:"-25";s:6:"Oacute";s:3:"-25";s:11:"Ocircumflex";s:3:"-25";s:9:"Odieresis";s:3:"-25";s:6:"Ograve";s:3:"-25";s:13:"Ohungarumlaut";s:3:"-25";s:7:"Omacron";s:3:"-25";s:6:"Oslash";s:3:"-25";s:6:"Otilde";s:3:"-25";s:1:"a";s:3:"-92";s:6:"aacute";s:3:"-92";s:6:"abreve";s:3:"-92";s:11:"acircumflex";s:3:"-92";s:9:"adieresis";s:3:"-92";s:6:"agrave";s:3:"-92";s:7:"amacron";s:3:"-92";s:7:"aogonek";s:3:"-92";s:5:"aring";s:3:"-92";s:6:"atilde";s:3:"-92";s:5:"colon";s:3:"-92";s:5:"comma";s:3:"-92";s:1:"e";s:4:"-111";s:6:"eacute";s:4:"-111";s:6:"ecaron";s:4:"-111";s:11:"ecircumflex";s:3:"-71";s:9:"edieresis";s:3:"-71";s:10:"edotaccent";s:4:"-111";s:6:"egrave";s:3:"-71";s:7:"emacron";s:3:"-71";s:7:"eogonek";s:4:"-111";s:6:"hyphen";s:3:"-92";s:1:"i";s:3:"-55";s:6:"iacute";s:3:"-55";s:7:"iogonek";s:3:"-55";s:1:"o";s:4:"-111";s:6:"oacute";s:4:"-111";s:11:"ocircumflex";s:4:"-111";s:9:"odieresis";s:4:"-111";s:6:"ograve";s:4:"-111";s:13:"ohungarumlaut";s:4:"-111";s:7:"omacron";s:4:"-111";s:6:"oslash";s:4:"-111";s:6:"otilde";s:4:"-111";s:6:"period";s:3:"-74";s:9:"semicolon";s:3:"-92";s:1:"u";s:3:"-92";s:6:"uacute";s:3:"-92";s:11:"ucircumflex";s:3:"-92";s:9:"udieresis";s:3:"-92";s:6:"ugrave";s:3:"-92";s:13:"uhungarumlaut";s:3:"-92";s:7:"umacron";s:3:"-92";s:7:"uogonek";s:3:"-92";s:5:"uring";s:3:"-92";}s:9:"Ydieresis";a:64:{s:1:"A";s:3:"-74";s:6:"Aacute";s:3:"-74";s:6:"Abreve";s:3:"-74";s:11:"Acircumflex";s:3:"-74";s:9:"Adieresis";s:3:"-74";s:6:"Agrave";s:3:"-74";s:7:"Amacron";s:3:"-74";s:7:"Aogonek";s:3:"-74";s:5:"Aring";s:3:"-74";s:6:"Atilde";s:3:"-74";s:1:"O";s:3:"-25";s:6:"Oacute";s:3:"-25";s:11:"Ocircumflex";s:3:"-25";s:9:"Odieresis";s:3:"-25";s:6:"Ograve";s:3:"-25";s:13:"Ohungarumlaut";s:3:"-25";s:7:"Omacron";s:3:"-25";s:6:"Oslash";s:3:"-25";s:6:"Otilde";s:3:"-25";s:1:"a";s:3:"-92";s:6:"aacute";s:3:"-92";s:6:"abreve";s:3:"-92";s:11:"acircumflex";s:3:"-92";s:9:"adieresis";s:3:"-92";s:6:"agrave";s:3:"-92";s:7:"amacron";s:3:"-92";s:7:"aogonek";s:3:"-92";s:5:"aring";s:3:"-92";s:6:"atilde";s:3:"-92";s:5:"colon";s:3:"-92";s:5:"comma";s:3:"-92";s:1:"e";s:4:"-111";s:6:"eacute";s:4:"-111";s:6:"ecaron";s:4:"-111";s:11:"ecircumflex";s:3:"-71";s:9:"edieresis";s:3:"-71";s:10:"edotaccent";s:4:"-111";s:6:"egrave";s:3:"-71";s:7:"emacron";s:3:"-71";s:7:"eogonek";s:4:"-111";s:6:"hyphen";s:3:"-92";s:1:"i";s:3:"-55";s:6:"iacute";s:3:"-55";s:7:"iogonek";s:3:"-55";s:1:"o";s:4:"-111";s:6:"oacute";s:4:"-111";s:11:"ocircumflex";s:4:"-111";s:9:"odieresis";s:4:"-111";s:6:"ograve";s:4:"-111";s:13:"ohungarumlaut";s:4:"-111";s:7:"omacron";s:4:"-111";s:6:"oslash";s:4:"-111";s:6:"otilde";s:4:"-111";s:6:"period";s:3:"-74";s:9:"semicolon";s:3:"-92";s:1:"u";s:3:"-92";s:6:"uacute";s:3:"-92";s:11:"ucircumflex";s:3:"-92";s:9:"udieresis";s:3:"-92";s:6:"ugrave";s:3:"-92";s:13:"uhungarumlaut";s:3:"-92";s:7:"umacron";s:3:"-92";s:7:"uogonek";s:3:"-92";s:5:"uring";s:3:"-92";}s:1:"b";a:11:{s:1:"b";s:3:"-10";s:6:"period";s:3:"-40";s:1:"u";s:3:"-20";s:6:"uacute";s:3:"-20";s:11:"ucircumflex";s:3:"-20";s:9:"udieresis";s:3:"-20";s:6:"ugrave";s:3:"-20";s:13:"uhungarumlaut";s:3:"-20";s:7:"umacron";s:3:"-20";s:7:"uogonek";s:3:"-20";s:5:"uring";s:3:"-20";}s:1:"c";a:3:{s:1:"h";s:3:"-10";s:1:"k";s:3:"-10";s:12:"kcommaaccent";s:3:"-10";}s:6:"cacute";a:3:{s:1:"h";s:3:"-10";s:1:"k";s:3:"-10";s:12:"kcommaaccent";s:3:"-10";}s:6:"ccaron";a:3:{s:1:"h";s:3:"-10";s:1:"k";s:3:"-10";s:12:"kcommaaccent";s:3:"-10";}s:8:"ccedilla";a:3:{s:1:"h";s:3:"-10";s:1:"k";s:3:"-10";s:12:"kcommaaccent";s:3:"-10";}s:5:"comma";a:2:{s:13:"quotedblright";s:3:"-95";s:10:"quoteright";s:3:"-95";}s:1:"e";a:1:{s:1:"b";s:3:"-10";}s:6:"eacute";a:1:{s:1:"b";s:3:"-10";}s:6:"ecaron";a:1:{s:1:"b";s:3:"-10";}s:11:"ecircumflex";a:1:{s:1:"b";s:3:"-10";}s:9:"edieresis";a:1:{s:1:"b";s:3:"-10";}s:10:"edotaccent";a:1:{s:1:"b";s:3:"-10";}s:6:"egrave";a:1:{s:1:"b";s:3:"-10";}s:7:"emacron";a:1:{s:1:"b";s:3:"-10";}s:7:"eogonek";a:1:{s:1:"b";s:3:"-10";}s:1:"f";a:16:{s:5:"comma";s:3:"-10";s:8:"dotlessi";s:3:"-30";s:1:"e";s:3:"-10";s:6:"eacute";s:3:"-10";s:10:"edotaccent";s:3:"-10";s:7:"eogonek";s:3:"-10";s:1:"f";s:3:"-18";s:1:"o";s:3:"-10";s:6:"oacute";s:3:"-10";s:11:"ocircumflex";s:3:"-10";s:6:"ograve";s:3:"-10";s:13:"ohungarumlaut";s:3:"-10";s:6:"oslash";s:3:"-10";s:6:"otilde";s:3:"-10";s:6:"period";s:3:"-10";s:10:"quoteright";s:2:"55";}s:1:"k";a:18:{s:1:"e";s:3:"-30";s:6:"eacute";s:3:"-30";s:6:"ecaron";s:3:"-30";s:11:"ecircumflex";s:3:"-30";s:9:"edieresis";s:3:"-30";s:10:"edotaccent";s:3:"-30";s:6:"egrave";s:3:"-30";s:7:"emacron";s:3:"-30";s:7:"eogonek";s:3:"-30";s:1:"o";s:3:"-10";s:6:"oacute";s:3:"-10";s:11:"ocircumflex";s:3:"-10";s:9:"odieresis";s:3:"-10";s:6:"ograve";s:3:"-10";s:13:"ohungarumlaut";s:3:"-10";s:7:"omacron";s:3:"-10";s:6:"oslash";s:3:"-10";s:6:"otilde";s:3:"-10";}s:12:"kcommaaccent";a:18:{s:1:"e";s:3:"-30";s:6:"eacute";s:3:"-30";s:6:"ecaron";s:3:"-30";s:11:"ecircumflex";s:3:"-30";s:9:"edieresis";s:3:"-30";s:10:"edotaccent";s:3:"-30";s:6:"egrave";s:3:"-30";s:7:"emacron";s:3:"-30";s:7:"eogonek";s:3:"-30";s:1:"o";s:3:"-10";s:6:"oacute";s:3:"-10";s:11:"ocircumflex";s:3:"-10";s:9:"odieresis";s:3:"-10";s:6:"ograve";s:3:"-10";s:13:"ohungarumlaut";s:3:"-10";s:7:"omacron";s:3:"-10";s:6:"oslash";s:3:"-10";s:6:"otilde";s:3:"-10";}s:1:"n";a:1:{s:1:"v";s:3:"-40";}s:6:"nacute";a:1:{s:1:"v";s:3:"-40";}s:6:"ncaron";a:1:{s:1:"v";s:3:"-40";}s:12:"ncommaaccent";a:1:{s:1:"v";s:3:"-40";}s:6:"ntilde";a:1:{s:1:"v";s:3:"-40";}s:1:"o";a:6:{s:1:"v";s:3:"-15";s:1:"w";s:3:"-25";s:1:"x";s:3:"-10";s:1:"y";s:3:"-10";s:6:"yacute";s:3:"-10";s:9:"ydieresis";s:3:"-10";}s:6:"oacute";a:6:{s:1:"v";s:3:"-15";s:1:"w";s:3:"-25";s:1:"x";s:3:"-10";s:1:"y";s:3:"-10";s:6:"yacute";s:3:"-10";s:9:"ydieresis";s:3:"-10";}s:11:"ocircumflex";a:6:{s:1:"v";s:3:"-15";s:1:"w";s:3:"-25";s:1:"x";s:3:"-10";s:1:"y";s:3:"-10";s:6:"yacute";s:3:"-10";s:9:"ydieresis";s:3:"-10";}s:9:"odieresis";a:6:{s:1:"v";s:3:"-15";s:1:"w";s:3:"-25";s:1:"x";s:3:"-10";s:1:"y";s:3:"-10";s:6:"yacute";s:3:"-10";s:9:"ydieresis";s:3:"-10";}s:6:"ograve";a:6:{s:1:"v";s:3:"-15";s:1:"w";s:3:"-25";s:1:"x";s:3:"-10";s:1:"y";s:3:"-10";s:6:"yacute";s:3:"-10";s:9:"ydieresis";s:3:"-10";}s:13:"ohungarumlaut";a:6:{s:1:"v";s:3:"-15";s:1:"w";s:3:"-25";s:1:"x";s:3:"-10";s:1:"y";s:3:"-10";s:6:"yacute";s:3:"-10";s:9:"ydieresis";s:3:"-10";}s:7:"omacron";a:6:{s:1:"v";s:3:"-15";s:1:"w";s:3:"-25";s:1:"x";s:3:"-10";s:1:"y";s:3:"-10";s:6:"yacute";s:3:"-10";s:9:"ydieresis";s:3:"-10";}s:6:"oslash";a:6:{s:1:"v";s:3:"-15";s:1:"w";s:3:"-25";s:1:"x";s:3:"-10";s:1:"y";s:3:"-10";s:6:"yacute";s:3:"-10";s:9:"ydieresis";s:3:"-10";}s:6:"otilde";a:6:{s:1:"v";s:3:"-15";s:1:"w";s:3:"-25";s:1:"x";s:3:"-10";s:1:"y";s:3:"-10";s:6:"yacute";s:3:"-10";s:9:"ydieresis";s:3:"-10";}s:6:"period";a:2:{s:13:"quotedblright";s:3:"-95";s:10:"quoteright";s:3:"-95";}s:9:"quoteleft";a:1:{s:9:"quoteleft";s:3:"-74";}s:10:"quoteright";a:16:{s:1:"d";s:3:"-15";s:6:"dcroat";s:3:"-15";s:10:"quoteright";s:3:"-74";s:1:"r";s:3:"-15";s:6:"racute";s:3:"-15";s:6:"rcaron";s:3:"-15";s:12:"rcommaaccent";s:3:"-15";s:1:"s";s:3:"-74";s:6:"sacute";s:3:"-74";s:6:"scaron";s:3:"-74";s:8:"scedilla";s:3:"-74";s:12:"scommaaccent";s:3:"-74";s:5:"space";s:3:"-74";s:1:"t";s:3:"-37";s:12:"tcommaaccent";s:3:"-37";s:1:"v";s:3:"-15";}s:1:"r";a:2:{s:5:"comma";s:3:"-65";s:6:"period";s:3:"-65";}s:6:"racute";a:2:{s:5:"comma";s:3:"-65";s:6:"period";s:3:"-65";}s:6:"rcaron";a:2:{s:5:"comma";s:3:"-65";s:6:"period";s:3:"-65";}s:12:"rcommaaccent";a:2:{s:5:"comma";s:3:"-65";s:6:"period";s:3:"-65";}s:5:"space";a:15:{s:1:"A";s:3:"-37";s:6:"Aacute";s:3:"-37";s:6:"Abreve";s:3:"-37";s:11:"Acircumflex";s:3:"-37";s:9:"Adieresis";s:3:"-37";s:6:"Agrave";s:3:"-37";s:7:"Amacron";s:3:"-37";s:7:"Aogonek";s:3:"-37";s:5:"Aring";s:3:"-37";s:6:"Atilde";s:3:"-37";s:1:"V";s:3:"-70";s:1:"W";s:3:"-70";s:1:"Y";s:3:"-70";s:6:"Yacute";s:3:"-70";s:9:"Ydieresis";s:3:"-70";}s:1:"v";a:20:{s:5:"comma";s:3:"-37";s:1:"e";s:3:"-15";s:6:"eacute";s:3:"-15";s:6:"ecaron";s:3:"-15";s:11:"ecircumflex";s:3:"-15";s:9:"edieresis";s:3:"-15";s:10:"edotaccent";s:3:"-15";s:6:"egrave";s:3:"-15";s:7:"emacron";s:3:"-15";s:7:"eogonek";s:3:"-15";s:1:"o";s:3:"-15";s:6:"oacute";s:3:"-15";s:11:"ocircumflex";s:3:"-15";s:9:"odieresis";s:3:"-15";s:6:"ograve";s:3:"-15";s:13:"ohungarumlaut";s:3:"-15";s:7:"omacron";s:3:"-15";s:6:"oslash";s:3:"-15";s:6:"otilde";s:3:"-15";s:6:"period";s:3:"-37";}s:1:"w";a:30:{s:1:"a";s:3:"-10";s:6:"aacute";s:3:"-10";s:6:"abreve";s:3:"-10";s:11:"acircumflex";s:3:"-10";s:9:"adieresis";s:3:"-10";s:6:"agrave";s:3:"-10";s:7:"amacron";s:3:"-10";s:7:"aogonek";s:3:"-10";s:5:"aring";s:3:"-10";s:6:"atilde";s:3:"-10";s:5:"comma";s:3:"-37";s:1:"e";s:3:"-10";s:6:"eacute";s:3:"-10";s:6:"ecaron";s:3:"-10";s:11:"ecircumflex";s:3:"-10";s:9:"edieresis";s:3:"-10";s:10:"edotaccent";s:3:"-10";s:6:"egrave";s:3:"-10";s:7:"emacron";s:3:"-10";s:7:"eogonek";s:3:"-10";s:1:"o";s:3:"-15";s:6:"oacute";s:3:"-15";s:11:"ocircumflex";s:3:"-15";s:9:"odieresis";s:3:"-15";s:6:"ograve";s:3:"-15";s:13:"ohungarumlaut";s:3:"-15";s:7:"omacron";s:3:"-15";s:6:"oslash";s:3:"-15";s:6:"otilde";s:3:"-15";s:6:"period";s:3:"-37";}s:1:"x";a:9:{s:1:"e";s:3:"-10";s:6:"eacute";s:3:"-10";s:6:"ecaron";s:3:"-10";s:11:"ecircumflex";s:3:"-10";s:9:"edieresis";s:3:"-10";s:10:"edotaccent";s:3:"-10";s:6:"egrave";s:3:"-10";s:7:"emacron";s:3:"-10";s:7:"eogonek";s:3:"-10";}s:1:"y";a:2:{s:5:"comma";s:3:"-37";s:6:"period";s:3:"-37";}s:6:"yacute";a:2:{s:5:"comma";s:3:"-37";s:6:"period";s:3:"-37";}s:9:"ydieresis";a:2:{s:5:"comma";s:3:"-37";s:6:"period";s:3:"-37";}}s:9:"_version_";i:1;} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Times-Italic.afm b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Times-Italic.afm
new file mode 100755
index 00000000..19afb671
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Times-Italic.afm
@@ -0,0 +1 @@
+a:22:{s:8:"FontName";s:12:"Times-Italic";s:8:"FullName";s:12:"Times Italic";s:10:"FamilyName";s:5:"Times";s:6:"Weight";s:6:"Medium";s:11:"ItalicAngle";s:5:"-15.5";s:12:"IsFixedPitch";s:5:"false";s:12:"CharacterSet";s:13:"ExtendedRoman";s:8:"FontBBox";a:4:{i:0;s:4:"-169";i:1;s:4:"-217";i:2;s:4:"1010";i:3;s:3:"883";}s:17:"UnderlinePosition";s:4:"-100";s:18:"UnderlineThickness";s:2:"50";s:7:"Version";s:7:"002.000";s:14:"EncodingScheme";s:21:"AdobeStandardEncoding";s:9:"CapHeight";s:3:"653";s:7:"XHeight";s:3:"441";s:8:"Ascender";s:3:"683";s:9:"Descender";s:4:"-217";s:5:"StdHW";s:2:"32";s:5:"StdVW";s:2:"76";s:16:"StartCharMetrics";s:3:"315";s:1:"C";a:464:{i:32;a:4:{s:1:"C";s:2:"32";s:2:"WX";s:3:"250";s:1:"N";s:5:"space";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:1:"0";i:3;s:1:"0";}}s:5:"space";a:4:{s:1:"C";s:2:"32";s:2:"WX";s:3:"250";s:1:"N";s:5:"space";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:1:"0";i:3;s:1:"0";}}i:33;a:4:{s:1:"C";s:2:"33";s:2:"WX";s:3:"333";s:1:"N";s:6:"exclam";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:3:"-11";i:2;s:3:"302";i:3;s:3:"667";}}s:6:"exclam";a:4:{s:1:"C";s:2:"33";s:2:"WX";s:3:"333";s:1:"N";s:6:"exclam";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:3:"-11";i:2;s:3:"302";i:3;s:3:"667";}}i:34;a:4:{s:1:"C";s:2:"34";s:2:"WX";s:3:"420";s:1:"N";s:8:"quotedbl";s:1:"B";a:4:{i:0;s:3:"144";i:1;s:3:"421";i:2;s:3:"432";i:3;s:3:"666";}}s:8:"quotedbl";a:4:{s:1:"C";s:2:"34";s:2:"WX";s:3:"420";s:1:"N";s:8:"quotedbl";s:1:"B";a:4:{i:0;s:3:"144";i:1;s:3:"421";i:2;s:3:"432";i:3;s:3:"666";}}i:35;a:4:{s:1:"C";s:2:"35";s:2:"WX";s:3:"500";s:1:"N";s:10:"numbersign";s:1:"B";a:4:{i:0;s:1:"2";i:1;s:1:"0";i:2;s:3:"540";i:3;s:3:"676";}}s:10:"numbersign";a:4:{s:1:"C";s:2:"35";s:2:"WX";s:3:"500";s:1:"N";s:10:"numbersign";s:1:"B";a:4:{i:0;s:1:"2";i:1;s:1:"0";i:2;s:3:"540";i:3;s:3:"676";}}i:36;a:4:{s:1:"C";s:2:"36";s:2:"WX";s:3:"500";s:1:"N";s:6:"dollar";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:3:"-89";i:2;s:3:"497";i:3;s:3:"731";}}s:6:"dollar";a:4:{s:1:"C";s:2:"36";s:2:"WX";s:3:"500";s:1:"N";s:6:"dollar";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:3:"-89";i:2;s:3:"497";i:3;s:3:"731";}}i:37;a:4:{s:1:"C";s:2:"37";s:2:"WX";s:3:"833";s:1:"N";s:7:"percent";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:3:"-13";i:2;s:3:"790";i:3;s:3:"676";}}s:7:"percent";a:4:{s:1:"C";s:2:"37";s:2:"WX";s:3:"833";s:1:"N";s:7:"percent";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:3:"-13";i:2;s:3:"790";i:3;s:3:"676";}}i:38;a:4:{s:1:"C";s:2:"38";s:2:"WX";s:3:"778";s:1:"N";s:9:"ampersand";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:3:"-18";i:2;s:3:"723";i:3;s:3:"666";}}s:9:"ampersand";a:4:{s:1:"C";s:2:"38";s:2:"WX";s:3:"778";s:1:"N";s:9:"ampersand";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:3:"-18";i:2;s:3:"723";i:3;s:3:"666";}}i:39;a:4:{s:1:"C";s:2:"39";s:2:"WX";s:3:"333";s:1:"N";s:10:"quoteright";s:1:"B";a:4:{i:0;s:3:"151";i:1;s:3:"436";i:2;s:3:"290";i:3;s:3:"666";}}s:10:"quoteright";a:4:{s:1:"C";s:2:"39";s:2:"WX";s:3:"333";s:1:"N";s:10:"quoteright";s:1:"B";a:4:{i:0;s:3:"151";i:1;s:3:"436";i:2;s:3:"290";i:3;s:3:"666";}}i:40;a:4:{s:1:"C";s:2:"40";s:2:"WX";s:3:"333";s:1:"N";s:9:"parenleft";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:4:"-181";i:2;s:3:"315";i:3;s:3:"669";}}s:9:"parenleft";a:4:{s:1:"C";s:2:"40";s:2:"WX";s:3:"333";s:1:"N";s:9:"parenleft";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:4:"-181";i:2;s:3:"315";i:3;s:3:"669";}}i:41;a:4:{s:1:"C";s:2:"41";s:2:"WX";s:3:"333";s:1:"N";s:10:"parenright";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:4:"-180";i:2;s:3:"289";i:3;s:3:"669";}}s:10:"parenright";a:4:{s:1:"C";s:2:"41";s:2:"WX";s:3:"333";s:1:"N";s:10:"parenright";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:4:"-180";i:2;s:3:"289";i:3;s:3:"669";}}i:42;a:4:{s:1:"C";s:2:"42";s:2:"WX";s:3:"500";s:1:"N";s:8:"asterisk";s:1:"B";a:4:{i:0;s:3:"128";i:1;s:3:"255";i:2;s:3:"492";i:3;s:3:"666";}}s:8:"asterisk";a:4:{s:1:"C";s:2:"42";s:2:"WX";s:3:"500";s:1:"N";s:8:"asterisk";s:1:"B";a:4:{i:0;s:3:"128";i:1;s:3:"255";i:2;s:3:"492";i:3;s:3:"666";}}i:43;a:4:{s:1:"C";s:2:"43";s:2:"WX";s:3:"675";s:1:"N";s:4:"plus";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"590";i:3;s:3:"506";}}s:4:"plus";a:4:{s:1:"C";s:2:"43";s:2:"WX";s:3:"675";s:1:"N";s:4:"plus";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"590";i:3;s:3:"506";}}i:44;a:4:{s:1:"C";s:2:"44";s:2:"WX";s:3:"250";s:1:"N";s:5:"comma";s:1:"B";a:4:{i:0;s:2:"-4";i:1;s:4:"-129";i:2;s:3:"135";i:3;s:3:"101";}}s:5:"comma";a:4:{s:1:"C";s:2:"44";s:2:"WX";s:3:"250";s:1:"N";s:5:"comma";s:1:"B";a:4:{i:0;s:2:"-4";i:1;s:4:"-129";i:2;s:3:"135";i:3;s:3:"101";}}i:45;a:4:{s:1:"C";s:2:"45";s:2:"WX";s:3:"333";s:1:"N";s:6:"hyphen";s:1:"B";a:4:{i:0;s:2:"49";i:1;s:3:"192";i:2;s:3:"282";i:3;s:3:"255";}}s:6:"hyphen";a:4:{s:1:"C";s:2:"45";s:2:"WX";s:3:"333";s:1:"N";s:6:"hyphen";s:1:"B";a:4:{i:0;s:2:"49";i:1;s:3:"192";i:2;s:3:"282";i:3;s:3:"255";}}i:46;a:4:{s:1:"C";s:2:"46";s:2:"WX";s:3:"250";s:1:"N";s:6:"period";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:3:"-11";i:2;s:3:"138";i:3;s:3:"100";}}s:6:"period";a:4:{s:1:"C";s:2:"46";s:2:"WX";s:3:"250";s:1:"N";s:6:"period";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:3:"-11";i:2;s:3:"138";i:3;s:3:"100";}}i:47;a:4:{s:1:"C";s:2:"47";s:2:"WX";s:3:"278";s:1:"N";s:5:"slash";s:1:"B";a:4:{i:0;s:3:"-65";i:1;s:3:"-18";i:2;s:3:"386";i:3;s:3:"666";}}s:5:"slash";a:4:{s:1:"C";s:2:"47";s:2:"WX";s:3:"278";s:1:"N";s:5:"slash";s:1:"B";a:4:{i:0;s:3:"-65";i:1;s:3:"-18";i:2;s:3:"386";i:3;s:3:"666";}}i:48;a:4:{s:1:"C";s:2:"48";s:2:"WX";s:3:"500";s:1:"N";s:4:"zero";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:2:"-7";i:2;s:3:"497";i:3;s:3:"676";}}s:4:"zero";a:4:{s:1:"C";s:2:"48";s:2:"WX";s:3:"500";s:1:"N";s:4:"zero";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:2:"-7";i:2;s:3:"497";i:3;s:3:"676";}}i:49;a:4:{s:1:"C";s:2:"49";s:2:"WX";s:3:"500";s:1:"N";s:3:"one";s:1:"B";a:4:{i:0;s:2:"49";i:1;s:1:"0";i:2;s:3:"409";i:3;s:3:"676";}}s:3:"one";a:4:{s:1:"C";s:2:"49";s:2:"WX";s:3:"500";s:1:"N";s:3:"one";s:1:"B";a:4:{i:0;s:2:"49";i:1;s:1:"0";i:2;s:3:"409";i:3;s:3:"676";}}i:50;a:4:{s:1:"C";s:2:"50";s:2:"WX";s:3:"500";s:1:"N";s:3:"two";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:1:"0";i:2;s:3:"452";i:3;s:3:"676";}}s:3:"two";a:4:{s:1:"C";s:2:"50";s:2:"WX";s:3:"500";s:1:"N";s:3:"two";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:1:"0";i:2;s:3:"452";i:3;s:3:"676";}}i:51;a:4:{s:1:"C";s:2:"51";s:2:"WX";s:3:"500";s:1:"N";s:5:"three";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:2:"-7";i:2;s:3:"465";i:3;s:3:"676";}}s:5:"three";a:4:{s:1:"C";s:2:"51";s:2:"WX";s:3:"500";s:1:"N";s:5:"three";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:2:"-7";i:2;s:3:"465";i:3;s:3:"676";}}i:52;a:4:{s:1:"C";s:2:"52";s:2:"WX";s:3:"500";s:1:"N";s:4:"four";s:1:"B";a:4:{i:0;s:1:"1";i:1;s:1:"0";i:2;s:3:"479";i:3;s:3:"676";}}s:4:"four";a:4:{s:1:"C";s:2:"52";s:2:"WX";s:3:"500";s:1:"N";s:4:"four";s:1:"B";a:4:{i:0;s:1:"1";i:1;s:1:"0";i:2;s:3:"479";i:3;s:3:"676";}}i:53;a:4:{s:1:"C";s:2:"53";s:2:"WX";s:3:"500";s:1:"N";s:4:"five";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:2:"-7";i:2;s:3:"491";i:3;s:3:"666";}}s:4:"five";a:4:{s:1:"C";s:2:"53";s:2:"WX";s:3:"500";s:1:"N";s:4:"five";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:2:"-7";i:2;s:3:"491";i:3;s:3:"666";}}i:54;a:4:{s:1:"C";s:2:"54";s:2:"WX";s:3:"500";s:1:"N";s:3:"six";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:2:"-7";i:2;s:3:"521";i:3;s:3:"686";}}s:3:"six";a:4:{s:1:"C";s:2:"54";s:2:"WX";s:3:"500";s:1:"N";s:3:"six";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:2:"-7";i:2;s:3:"521";i:3;s:3:"686";}}i:55;a:4:{s:1:"C";s:2:"55";s:2:"WX";s:3:"500";s:1:"N";s:5:"seven";s:1:"B";a:4:{i:0;s:2:"75";i:1;s:2:"-8";i:2;s:3:"537";i:3;s:3:"666";}}s:5:"seven";a:4:{s:1:"C";s:2:"55";s:2:"WX";s:3:"500";s:1:"N";s:5:"seven";s:1:"B";a:4:{i:0;s:2:"75";i:1;s:2:"-8";i:2;s:3:"537";i:3;s:3:"666";}}i:56;a:4:{s:1:"C";s:2:"56";s:2:"WX";s:3:"500";s:1:"N";s:5:"eight";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:2:"-7";i:2;s:3:"493";i:3;s:3:"676";}}s:5:"eight";a:4:{s:1:"C";s:2:"56";s:2:"WX";s:3:"500";s:1:"N";s:5:"eight";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:2:"-7";i:2;s:3:"493";i:3;s:3:"676";}}i:57;a:4:{s:1:"C";s:2:"57";s:2:"WX";s:3:"500";s:1:"N";s:4:"nine";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:3:"-17";i:2;s:3:"492";i:3;s:3:"676";}}s:4:"nine";a:4:{s:1:"C";s:2:"57";s:2:"WX";s:3:"500";s:1:"N";s:4:"nine";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:3:"-17";i:2;s:3:"492";i:3;s:3:"676";}}i:58;a:4:{s:1:"C";s:2:"58";s:2:"WX";s:3:"333";s:1:"N";s:5:"colon";s:1:"B";a:4:{i:0;s:2:"50";i:1;s:3:"-11";i:2;s:3:"261";i:3;s:3:"441";}}s:5:"colon";a:4:{s:1:"C";s:2:"58";s:2:"WX";s:3:"333";s:1:"N";s:5:"colon";s:1:"B";a:4:{i:0;s:2:"50";i:1;s:3:"-11";i:2;s:3:"261";i:3;s:3:"441";}}i:59;a:4:{s:1:"C";s:2:"59";s:2:"WX";s:3:"333";s:1:"N";s:9:"semicolon";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:4:"-129";i:2;s:3:"261";i:3;s:3:"441";}}s:9:"semicolon";a:4:{s:1:"C";s:2:"59";s:2:"WX";s:3:"333";s:1:"N";s:9:"semicolon";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:4:"-129";i:2;s:3:"261";i:3;s:3:"441";}}i:60;a:4:{s:1:"C";s:2:"60";s:2:"WX";s:3:"675";s:1:"N";s:4:"less";s:1:"B";a:4:{i:0;s:2:"84";i:1;s:2:"-8";i:2;s:3:"592";i:3;s:3:"514";}}s:4:"less";a:4:{s:1:"C";s:2:"60";s:2:"WX";s:3:"675";s:1:"N";s:4:"less";s:1:"B";a:4:{i:0;s:2:"84";i:1;s:2:"-8";i:2;s:3:"592";i:3;s:3:"514";}}i:61;a:4:{s:1:"C";s:2:"61";s:2:"WX";s:3:"675";s:1:"N";s:5:"equal";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:3:"120";i:2;s:3:"590";i:3;s:3:"386";}}s:5:"equal";a:4:{s:1:"C";s:2:"61";s:2:"WX";s:3:"675";s:1:"N";s:5:"equal";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:3:"120";i:2;s:3:"590";i:3;s:3:"386";}}i:62;a:4:{s:1:"C";s:2:"62";s:2:"WX";s:3:"675";s:1:"N";s:7:"greater";s:1:"B";a:4:{i:0;s:2:"84";i:1;s:2:"-8";i:2;s:3:"592";i:3;s:3:"514";}}s:7:"greater";a:4:{s:1:"C";s:2:"62";s:2:"WX";s:3:"675";s:1:"N";s:7:"greater";s:1:"B";a:4:{i:0;s:2:"84";i:1;s:2:"-8";i:2;s:3:"592";i:3;s:3:"514";}}i:63;a:4:{s:1:"C";s:2:"63";s:2:"WX";s:3:"500";s:1:"N";s:8:"question";s:1:"B";a:4:{i:0;s:3:"132";i:1;s:3:"-12";i:2;s:3:"472";i:3;s:3:"664";}}s:8:"question";a:4:{s:1:"C";s:2:"63";s:2:"WX";s:3:"500";s:1:"N";s:8:"question";s:1:"B";a:4:{i:0;s:3:"132";i:1;s:3:"-12";i:2;s:3:"472";i:3;s:3:"664";}}i:64;a:4:{s:1:"C";s:2:"64";s:2:"WX";s:3:"920";s:1:"N";s:2:"at";s:1:"B";a:4:{i:0;s:3:"118";i:1;s:3:"-18";i:2;s:3:"806";i:3;s:3:"666";}}s:2:"at";a:4:{s:1:"C";s:2:"64";s:2:"WX";s:3:"920";s:1:"N";s:2:"at";s:1:"B";a:4:{i:0;s:3:"118";i:1;s:3:"-18";i:2;s:3:"806";i:3;s:3:"666";}}i:65;a:4:{s:1:"C";s:2:"65";s:2:"WX";s:3:"611";s:1:"N";s:1:"A";s:1:"B";a:4:{i:0;s:3:"-51";i:1;s:1:"0";i:2;s:3:"564";i:3;s:3:"668";}}s:1:"A";a:4:{s:1:"C";s:2:"65";s:2:"WX";s:3:"611";s:1:"N";s:1:"A";s:1:"B";a:4:{i:0;s:3:"-51";i:1;s:1:"0";i:2;s:3:"564";i:3;s:3:"668";}}i:66;a:4:{s:1:"C";s:2:"66";s:2:"WX";s:3:"611";s:1:"N";s:1:"B";s:1:"B";a:4:{i:0;s:2:"-8";i:1;s:1:"0";i:2;s:3:"588";i:3;s:3:"653";}}s:1:"B";a:4:{s:1:"C";s:2:"66";s:2:"WX";s:3:"611";s:1:"N";s:1:"B";s:1:"B";a:4:{i:0;s:2:"-8";i:1;s:1:"0";i:2;s:3:"588";i:3;s:3:"653";}}i:67;a:4:{s:1:"C";s:2:"67";s:2:"WX";s:3:"667";s:1:"N";s:1:"C";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:3:"-18";i:2;s:3:"689";i:3;s:3:"666";}}s:1:"C";a:4:{s:1:"C";s:2:"67";s:2:"WX";s:3:"667";s:1:"N";s:1:"C";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:3:"-18";i:2;s:3:"689";i:3;s:3:"666";}}i:68;a:4:{s:1:"C";s:2:"68";s:2:"WX";s:3:"722";s:1:"N";s:1:"D";s:1:"B";a:4:{i:0;s:2:"-8";i:1;s:1:"0";i:2;s:3:"700";i:3;s:3:"653";}}s:1:"D";a:4:{s:1:"C";s:2:"68";s:2:"WX";s:3:"722";s:1:"N";s:1:"D";s:1:"B";a:4:{i:0;s:2:"-8";i:1;s:1:"0";i:2;s:3:"700";i:3;s:3:"653";}}i:69;a:4:{s:1:"C";s:2:"69";s:2:"WX";s:3:"611";s:1:"N";s:1:"E";s:1:"B";a:4:{i:0;s:2:"-1";i:1;s:1:"0";i:2;s:3:"634";i:3;s:3:"653";}}s:1:"E";a:4:{s:1:"C";s:2:"69";s:2:"WX";s:3:"611";s:1:"N";s:1:"E";s:1:"B";a:4:{i:0;s:2:"-1";i:1;s:1:"0";i:2;s:3:"634";i:3;s:3:"653";}}i:70;a:4:{s:1:"C";s:2:"70";s:2:"WX";s:3:"611";s:1:"N";s:1:"F";s:1:"B";a:4:{i:0;s:1:"8";i:1;s:1:"0";i:2;s:3:"645";i:3;s:3:"653";}}s:1:"F";a:4:{s:1:"C";s:2:"70";s:2:"WX";s:3:"611";s:1:"N";s:1:"F";s:1:"B";a:4:{i:0;s:1:"8";i:1;s:1:"0";i:2;s:3:"645";i:3;s:3:"653";}}i:71;a:4:{s:1:"C";s:2:"71";s:2:"WX";s:3:"722";s:1:"N";s:1:"G";s:1:"B";a:4:{i:0;s:2:"52";i:1;s:3:"-18";i:2;s:3:"722";i:3;s:3:"666";}}s:1:"G";a:4:{s:1:"C";s:2:"71";s:2:"WX";s:3:"722";s:1:"N";s:1:"G";s:1:"B";a:4:{i:0;s:2:"52";i:1;s:3:"-18";i:2;s:3:"722";i:3;s:3:"666";}}i:72;a:4:{s:1:"C";s:2:"72";s:2:"WX";s:3:"722";s:1:"N";s:1:"H";s:1:"B";a:4:{i:0;s:2:"-8";i:1;s:1:"0";i:2;s:3:"767";i:3;s:3:"653";}}s:1:"H";a:4:{s:1:"C";s:2:"72";s:2:"WX";s:3:"722";s:1:"N";s:1:"H";s:1:"B";a:4:{i:0;s:2:"-8";i:1;s:1:"0";i:2;s:3:"767";i:3;s:3:"653";}}i:73;a:4:{s:1:"C";s:2:"73";s:2:"WX";s:3:"333";s:1:"N";s:1:"I";s:1:"B";a:4:{i:0;s:2:"-8";i:1;s:1:"0";i:2;s:3:"384";i:3;s:3:"653";}}s:1:"I";a:4:{s:1:"C";s:2:"73";s:2:"WX";s:3:"333";s:1:"N";s:1:"I";s:1:"B";a:4:{i:0;s:2:"-8";i:1;s:1:"0";i:2;s:3:"384";i:3;s:3:"653";}}i:74;a:4:{s:1:"C";s:2:"74";s:2:"WX";s:3:"444";s:1:"N";s:1:"J";s:1:"B";a:4:{i:0;s:2:"-6";i:1;s:3:"-18";i:2;s:3:"491";i:3;s:3:"653";}}s:1:"J";a:4:{s:1:"C";s:2:"74";s:2:"WX";s:3:"444";s:1:"N";s:1:"J";s:1:"B";a:4:{i:0;s:2:"-6";i:1;s:3:"-18";i:2;s:3:"491";i:3;s:3:"653";}}i:75;a:4:{s:1:"C";s:2:"75";s:2:"WX";s:3:"667";s:1:"N";s:1:"K";s:1:"B";a:4:{i:0;s:1:"7";i:1;s:1:"0";i:2;s:3:"722";i:3;s:3:"653";}}s:1:"K";a:4:{s:1:"C";s:2:"75";s:2:"WX";s:3:"667";s:1:"N";s:1:"K";s:1:"B";a:4:{i:0;s:1:"7";i:1;s:1:"0";i:2;s:3:"722";i:3;s:3:"653";}}i:76;a:4:{s:1:"C";s:2:"76";s:2:"WX";s:3:"556";s:1:"N";s:1:"L";s:1:"B";a:4:{i:0;s:2:"-8";i:1;s:1:"0";i:2;s:3:"559";i:3;s:3:"653";}}s:1:"L";a:4:{s:1:"C";s:2:"76";s:2:"WX";s:3:"556";s:1:"N";s:1:"L";s:1:"B";a:4:{i:0;s:2:"-8";i:1;s:1:"0";i:2;s:3:"559";i:3;s:3:"653";}}i:77;a:4:{s:1:"C";s:2:"77";s:2:"WX";s:3:"833";s:1:"N";s:1:"M";s:1:"B";a:4:{i:0;s:3:"-18";i:1;s:1:"0";i:2;s:3:"873";i:3;s:3:"653";}}s:1:"M";a:4:{s:1:"C";s:2:"77";s:2:"WX";s:3:"833";s:1:"N";s:1:"M";s:1:"B";a:4:{i:0;s:3:"-18";i:1;s:1:"0";i:2;s:3:"873";i:3;s:3:"653";}}i:78;a:4:{s:1:"C";s:2:"78";s:2:"WX";s:3:"667";s:1:"N";s:1:"N";s:1:"B";a:4:{i:0;s:3:"-20";i:1;s:3:"-15";i:2;s:3:"727";i:3;s:3:"653";}}s:1:"N";a:4:{s:1:"C";s:2:"78";s:2:"WX";s:3:"667";s:1:"N";s:1:"N";s:1:"B";a:4:{i:0;s:3:"-20";i:1;s:3:"-15";i:2;s:3:"727";i:3;s:3:"653";}}i:79;a:4:{s:1:"C";s:2:"79";s:2:"WX";s:3:"722";s:1:"N";s:1:"O";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:3:"-18";i:2;s:3:"699";i:3;s:3:"666";}}s:1:"O";a:4:{s:1:"C";s:2:"79";s:2:"WX";s:3:"722";s:1:"N";s:1:"O";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:3:"-18";i:2;s:3:"699";i:3;s:3:"666";}}i:80;a:4:{s:1:"C";s:2:"80";s:2:"WX";s:3:"611";s:1:"N";s:1:"P";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:3:"605";i:3;s:3:"653";}}s:1:"P";a:4:{s:1:"C";s:2:"80";s:2:"WX";s:3:"611";s:1:"N";s:1:"P";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:3:"605";i:3;s:3:"653";}}i:81;a:4:{s:1:"C";s:2:"81";s:2:"WX";s:3:"722";s:1:"N";s:1:"Q";s:1:"B";a:4:{i:0;s:2:"59";i:1;s:4:"-182";i:2;s:3:"699";i:3;s:3:"666";}}s:1:"Q";a:4:{s:1:"C";s:2:"81";s:2:"WX";s:3:"722";s:1:"N";s:1:"Q";s:1:"B";a:4:{i:0;s:2:"59";i:1;s:4:"-182";i:2;s:3:"699";i:3;s:3:"666";}}i:82;a:4:{s:1:"C";s:2:"82";s:2:"WX";s:3:"611";s:1:"N";s:1:"R";s:1:"B";a:4:{i:0;s:3:"-13";i:1;s:1:"0";i:2;s:3:"588";i:3;s:3:"653";}}s:1:"R";a:4:{s:1:"C";s:2:"82";s:2:"WX";s:3:"611";s:1:"N";s:1:"R";s:1:"B";a:4:{i:0;s:3:"-13";i:1;s:1:"0";i:2;s:3:"588";i:3;s:3:"653";}}i:83;a:4:{s:1:"C";s:2:"83";s:2:"WX";s:3:"500";s:1:"N";s:1:"S";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:3:"-18";i:2;s:3:"508";i:3;s:3:"667";}}s:1:"S";a:4:{s:1:"C";s:2:"83";s:2:"WX";s:3:"500";s:1:"N";s:1:"S";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:3:"-18";i:2;s:3:"508";i:3;s:3:"667";}}i:84;a:4:{s:1:"C";s:2:"84";s:2:"WX";s:3:"556";s:1:"N";s:1:"T";s:1:"B";a:4:{i:0;s:2:"59";i:1;s:1:"0";i:2;s:3:"633";i:3;s:3:"653";}}s:1:"T";a:4:{s:1:"C";s:2:"84";s:2:"WX";s:3:"556";s:1:"N";s:1:"T";s:1:"B";a:4:{i:0;s:2:"59";i:1;s:1:"0";i:2;s:3:"633";i:3;s:3:"653";}}i:85;a:4:{s:1:"C";s:2:"85";s:2:"WX";s:3:"722";s:1:"N";s:1:"U";s:1:"B";a:4:{i:0;s:3:"102";i:1;s:3:"-18";i:2;s:3:"765";i:3;s:3:"653";}}s:1:"U";a:4:{s:1:"C";s:2:"85";s:2:"WX";s:3:"722";s:1:"N";s:1:"U";s:1:"B";a:4:{i:0;s:3:"102";i:1;s:3:"-18";i:2;s:3:"765";i:3;s:3:"653";}}i:86;a:4:{s:1:"C";s:2:"86";s:2:"WX";s:3:"611";s:1:"N";s:1:"V";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:3:"-18";i:2;s:3:"688";i:3;s:3:"653";}}s:1:"V";a:4:{s:1:"C";s:2:"86";s:2:"WX";s:3:"611";s:1:"N";s:1:"V";s:1:"B";a:4:{i:0;s:2:"76";i:1;s:3:"-18";i:2;s:3:"688";i:3;s:3:"653";}}i:87;a:4:{s:1:"C";s:2:"87";s:2:"WX";s:3:"833";s:1:"N";s:1:"W";s:1:"B";a:4:{i:0;s:2:"71";i:1;s:3:"-18";i:2;s:3:"906";i:3;s:3:"653";}}s:1:"W";a:4:{s:1:"C";s:2:"87";s:2:"WX";s:3:"833";s:1:"N";s:1:"W";s:1:"B";a:4:{i:0;s:2:"71";i:1;s:3:"-18";i:2;s:3:"906";i:3;s:3:"653";}}i:88;a:4:{s:1:"C";s:2:"88";s:2:"WX";s:3:"611";s:1:"N";s:1:"X";s:1:"B";a:4:{i:0;s:3:"-29";i:1;s:1:"0";i:2;s:3:"655";i:3;s:3:"653";}}s:1:"X";a:4:{s:1:"C";s:2:"88";s:2:"WX";s:3:"611";s:1:"N";s:1:"X";s:1:"B";a:4:{i:0;s:3:"-29";i:1;s:1:"0";i:2;s:3:"655";i:3;s:3:"653";}}i:89;a:4:{s:1:"C";s:2:"89";s:2:"WX";s:3:"556";s:1:"N";s:1:"Y";s:1:"B";a:4:{i:0;s:2:"78";i:1;s:1:"0";i:2;s:3:"633";i:3;s:3:"653";}}s:1:"Y";a:4:{s:1:"C";s:2:"89";s:2:"WX";s:3:"556";s:1:"N";s:1:"Y";s:1:"B";a:4:{i:0;s:2:"78";i:1;s:1:"0";i:2;s:3:"633";i:3;s:3:"653";}}i:90;a:4:{s:1:"C";s:2:"90";s:2:"WX";s:3:"556";s:1:"N";s:1:"Z";s:1:"B";a:4:{i:0;s:2:"-6";i:1;s:1:"0";i:2;s:3:"606";i:3;s:3:"653";}}s:1:"Z";a:4:{s:1:"C";s:2:"90";s:2:"WX";s:3:"556";s:1:"N";s:1:"Z";s:1:"B";a:4:{i:0;s:2:"-6";i:1;s:1:"0";i:2;s:3:"606";i:3;s:3:"653";}}i:91;a:4:{s:1:"C";s:2:"91";s:2:"WX";s:3:"389";s:1:"N";s:11:"bracketleft";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:4:"-153";i:2;s:3:"391";i:3;s:3:"663";}}s:11:"bracketleft";a:4:{s:1:"C";s:2:"91";s:2:"WX";s:3:"389";s:1:"N";s:11:"bracketleft";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:4:"-153";i:2;s:3:"391";i:3;s:3:"663";}}i:92;a:4:{s:1:"C";s:2:"92";s:2:"WX";s:3:"278";s:1:"N";s:9:"backslash";s:1:"B";a:4:{i:0;s:3:"-41";i:1;s:3:"-18";i:2;s:3:"319";i:3;s:3:"666";}}s:9:"backslash";a:4:{s:1:"C";s:2:"92";s:2:"WX";s:3:"278";s:1:"N";s:9:"backslash";s:1:"B";a:4:{i:0;s:3:"-41";i:1;s:3:"-18";i:2;s:3:"319";i:3;s:3:"666";}}i:93;a:4:{s:1:"C";s:2:"93";s:2:"WX";s:3:"389";s:1:"N";s:12:"bracketright";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:4:"-153";i:2;s:3:"382";i:3;s:3:"663";}}s:12:"bracketright";a:4:{s:1:"C";s:2:"93";s:2:"WX";s:3:"389";s:1:"N";s:12:"bracketright";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:4:"-153";i:2;s:3:"382";i:3;s:3:"663";}}i:94;a:4:{s:1:"C";s:2:"94";s:2:"WX";s:3:"422";s:1:"N";s:11:"asciicircum";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"301";i:2;s:3:"422";i:3;s:3:"666";}}s:11:"asciicircum";a:4:{s:1:"C";s:2:"94";s:2:"WX";s:3:"422";s:1:"N";s:11:"asciicircum";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"301";i:2;s:3:"422";i:3;s:3:"666";}}i:95;a:4:{s:1:"C";s:2:"95";s:2:"WX";s:3:"500";s:1:"N";s:10:"underscore";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:4:"-125";i:2;s:3:"500";i:3;s:3:"-75";}}s:10:"underscore";a:4:{s:1:"C";s:2:"95";s:2:"WX";s:3:"500";s:1:"N";s:10:"underscore";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:4:"-125";i:2;s:3:"500";i:3;s:3:"-75";}}i:96;a:4:{s:1:"C";s:2:"96";s:2:"WX";s:3:"333";s:1:"N";s:9:"quoteleft";s:1:"B";a:4:{i:0;s:3:"171";i:1;s:3:"436";i:2;s:3:"310";i:3;s:3:"666";}}s:9:"quoteleft";a:4:{s:1:"C";s:2:"96";s:2:"WX";s:3:"333";s:1:"N";s:9:"quoteleft";s:1:"B";a:4:{i:0;s:3:"171";i:1;s:3:"436";i:2;s:3:"310";i:3;s:3:"666";}}i:97;a:4:{s:1:"C";s:2:"97";s:2:"WX";s:3:"500";s:1:"N";s:1:"a";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:3:"-11";i:2;s:3:"476";i:3;s:3:"441";}}s:1:"a";a:4:{s:1:"C";s:2:"97";s:2:"WX";s:3:"500";s:1:"N";s:1:"a";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:3:"-11";i:2;s:3:"476";i:3;s:3:"441";}}i:98;a:4:{s:1:"C";s:2:"98";s:2:"WX";s:3:"500";s:1:"N";s:1:"b";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:3:"-11";i:2;s:3:"473";i:3;s:3:"683";}}s:1:"b";a:4:{s:1:"C";s:2:"98";s:2:"WX";s:3:"500";s:1:"N";s:1:"b";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:3:"-11";i:2;s:3:"473";i:3;s:3:"683";}}i:99;a:4:{s:1:"C";s:2:"99";s:2:"WX";s:3:"444";s:1:"N";s:1:"c";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"-11";i:2;s:3:"425";i:3;s:3:"441";}}s:1:"c";a:4:{s:1:"C";s:2:"99";s:2:"WX";s:3:"444";s:1:"N";s:1:"c";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"-11";i:2;s:3:"425";i:3;s:3:"441";}}i:100;a:4:{s:1:"C";s:3:"100";s:2:"WX";s:3:"500";s:1:"N";s:1:"d";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:3:"-13";i:2;s:3:"527";i:3;s:3:"683";}}s:1:"d";a:4:{s:1:"C";s:3:"100";s:2:"WX";s:3:"500";s:1:"N";s:1:"d";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:3:"-13";i:2;s:3:"527";i:3;s:3:"683";}}i:101;a:4:{s:1:"C";s:3:"101";s:2:"WX";s:3:"444";s:1:"N";s:1:"e";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:3:"-11";i:2;s:3:"412";i:3;s:3:"441";}}s:1:"e";a:4:{s:1:"C";s:3:"101";s:2:"WX";s:3:"444";s:1:"N";s:1:"e";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:3:"-11";i:2;s:3:"412";i:3;s:3:"441";}}i:102;a:5:{s:1:"C";s:3:"102";s:2:"WX";s:3:"278";s:1:"N";s:1:"f";s:1:"B";a:4:{i:0;s:4:"-147";i:1;s:4:"-207";i:2;s:3:"424";i:3;s:3:"678";}s:1:"L";a:2:{i:0;s:1:"l";i:1;s:2:"fl";}}s:1:"f";a:5:{s:1:"C";s:3:"102";s:2:"WX";s:3:"278";s:1:"N";s:1:"f";s:1:"B";a:4:{i:0;s:4:"-147";i:1;s:4:"-207";i:2;s:3:"424";i:3;s:3:"678";}s:1:"L";a:2:{i:0;s:1:"l";i:1;s:2:"fl";}}i:103;a:4:{s:1:"C";s:3:"103";s:2:"WX";s:3:"500";s:1:"N";s:1:"g";s:1:"B";a:4:{i:0;s:1:"8";i:1;s:4:"-206";i:2;s:3:"472";i:3;s:3:"441";}}s:1:"g";a:4:{s:1:"C";s:3:"103";s:2:"WX";s:3:"500";s:1:"N";s:1:"g";s:1:"B";a:4:{i:0;s:1:"8";i:1;s:4:"-206";i:2;s:3:"472";i:3;s:3:"441";}}i:104;a:4:{s:1:"C";s:3:"104";s:2:"WX";s:3:"500";s:1:"N";s:1:"h";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:2:"-9";i:2;s:3:"478";i:3;s:3:"683";}}s:1:"h";a:4:{s:1:"C";s:3:"104";s:2:"WX";s:3:"500";s:1:"N";s:1:"h";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:2:"-9";i:2;s:3:"478";i:3;s:3:"683";}}i:105;a:4:{s:1:"C";s:3:"105";s:2:"WX";s:3:"278";s:1:"N";s:1:"i";s:1:"B";a:4:{i:0;s:2:"49";i:1;s:3:"-11";i:2;s:3:"264";i:3;s:3:"654";}}s:1:"i";a:4:{s:1:"C";s:3:"105";s:2:"WX";s:3:"278";s:1:"N";s:1:"i";s:1:"B";a:4:{i:0;s:2:"49";i:1;s:3:"-11";i:2;s:3:"264";i:3;s:3:"654";}}i:106;a:4:{s:1:"C";s:3:"106";s:2:"WX";s:3:"278";s:1:"N";s:1:"j";s:1:"B";a:4:{i:0;s:4:"-124";i:1;s:4:"-207";i:2;s:3:"276";i:3;s:3:"654";}}s:1:"j";a:4:{s:1:"C";s:3:"106";s:2:"WX";s:3:"278";s:1:"N";s:1:"j";s:1:"B";a:4:{i:0;s:4:"-124";i:1;s:4:"-207";i:2;s:3:"276";i:3;s:3:"654";}}i:107;a:4:{s:1:"C";s:3:"107";s:2:"WX";s:3:"444";s:1:"N";s:1:"k";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:3:"-11";i:2;s:3:"461";i:3;s:3:"683";}}s:1:"k";a:4:{s:1:"C";s:3:"107";s:2:"WX";s:3:"444";s:1:"N";s:1:"k";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:3:"-11";i:2;s:3:"461";i:3;s:3:"683";}}i:108;a:4:{s:1:"C";s:3:"108";s:2:"WX";s:3:"278";s:1:"N";s:1:"l";s:1:"B";a:4:{i:0;s:2:"41";i:1;s:3:"-11";i:2;s:3:"279";i:3;s:3:"683";}}s:1:"l";a:4:{s:1:"C";s:3:"108";s:2:"WX";s:3:"278";s:1:"N";s:1:"l";s:1:"B";a:4:{i:0;s:2:"41";i:1;s:3:"-11";i:2;s:3:"279";i:3;s:3:"683";}}i:109;a:4:{s:1:"C";s:3:"109";s:2:"WX";s:3:"722";s:1:"N";s:1:"m";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:2:"-9";i:2;s:3:"704";i:3;s:3:"441";}}s:1:"m";a:4:{s:1:"C";s:3:"109";s:2:"WX";s:3:"722";s:1:"N";s:1:"m";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:2:"-9";i:2;s:3:"704";i:3;s:3:"441";}}i:110;a:4:{s:1:"C";s:3:"110";s:2:"WX";s:3:"500";s:1:"N";s:1:"n";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:2:"-9";i:2;s:3:"474";i:3;s:3:"441";}}s:1:"n";a:4:{s:1:"C";s:3:"110";s:2:"WX";s:3:"500";s:1:"N";s:1:"n";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:2:"-9";i:2;s:3:"474";i:3;s:3:"441";}}i:111;a:4:{s:1:"C";s:3:"111";s:2:"WX";s:3:"500";s:1:"N";s:1:"o";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:3:"-11";i:2;s:3:"468";i:3;s:3:"441";}}s:1:"o";a:4:{s:1:"C";s:3:"111";s:2:"WX";s:3:"500";s:1:"N";s:1:"o";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:3:"-11";i:2;s:3:"468";i:3;s:3:"441";}}i:112;a:4:{s:1:"C";s:3:"112";s:2:"WX";s:3:"500";s:1:"N";s:1:"p";s:1:"B";a:4:{i:0;s:3:"-75";i:1;s:4:"-205";i:2;s:3:"469";i:3;s:3:"441";}}s:1:"p";a:4:{s:1:"C";s:3:"112";s:2:"WX";s:3:"500";s:1:"N";s:1:"p";s:1:"B";a:4:{i:0;s:3:"-75";i:1;s:4:"-205";i:2;s:3:"469";i:3;s:3:"441";}}i:113;a:4:{s:1:"C";s:3:"113";s:2:"WX";s:3:"500";s:1:"N";s:1:"q";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:4:"-209";i:2;s:3:"483";i:3;s:3:"441";}}s:1:"q";a:4:{s:1:"C";s:3:"113";s:2:"WX";s:3:"500";s:1:"N";s:1:"q";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:4:"-209";i:2;s:3:"483";i:3;s:3:"441";}}i:114;a:4:{s:1:"C";s:3:"114";s:2:"WX";s:3:"389";s:1:"N";s:1:"r";s:1:"B";a:4:{i:0;s:2:"45";i:1;s:1:"0";i:2;s:3:"412";i:3;s:3:"441";}}s:1:"r";a:4:{s:1:"C";s:3:"114";s:2:"WX";s:3:"389";s:1:"N";s:1:"r";s:1:"B";a:4:{i:0;s:2:"45";i:1;s:1:"0";i:2;s:3:"412";i:3;s:3:"441";}}i:115;a:4:{s:1:"C";s:3:"115";s:2:"WX";s:3:"389";s:1:"N";s:1:"s";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"-13";i:2;s:3:"366";i:3;s:3:"442";}}s:1:"s";a:4:{s:1:"C";s:3:"115";s:2:"WX";s:3:"389";s:1:"N";s:1:"s";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"-13";i:2;s:3:"366";i:3;s:3:"442";}}i:116;a:4:{s:1:"C";s:3:"116";s:2:"WX";s:3:"278";s:1:"N";s:1:"t";s:1:"B";a:4:{i:0;s:2:"37";i:1;s:3:"-11";i:2;s:3:"296";i:3;s:3:"546";}}s:1:"t";a:4:{s:1:"C";s:3:"116";s:2:"WX";s:3:"278";s:1:"N";s:1:"t";s:1:"B";a:4:{i:0;s:2:"37";i:1;s:3:"-11";i:2;s:3:"296";i:3;s:3:"546";}}i:117;a:4:{s:1:"C";s:3:"117";s:2:"WX";s:3:"500";s:1:"N";s:1:"u";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:3:"-11";i:2;s:3:"475";i:3;s:3:"441";}}s:1:"u";a:4:{s:1:"C";s:3:"117";s:2:"WX";s:3:"500";s:1:"N";s:1:"u";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:3:"-11";i:2;s:3:"475";i:3;s:3:"441";}}i:118;a:4:{s:1:"C";s:3:"118";s:2:"WX";s:3:"444";s:1:"N";s:1:"v";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:3:"-18";i:2;s:3:"426";i:3;s:3:"441";}}s:1:"v";a:4:{s:1:"C";s:3:"118";s:2:"WX";s:3:"444";s:1:"N";s:1:"v";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:3:"-18";i:2;s:3:"426";i:3;s:3:"441";}}i:119;a:4:{s:1:"C";s:3:"119";s:2:"WX";s:3:"667";s:1:"N";s:1:"w";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"-18";i:2;s:3:"648";i:3;s:3:"441";}}s:1:"w";a:4:{s:1:"C";s:3:"119";s:2:"WX";s:3:"667";s:1:"N";s:1:"w";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"-18";i:2;s:3:"648";i:3;s:3:"441";}}i:120;a:4:{s:1:"C";s:3:"120";s:2:"WX";s:3:"444";s:1:"N";s:1:"x";s:1:"B";a:4:{i:0;s:3:"-27";i:1;s:3:"-11";i:2;s:3:"447";i:3;s:3:"441";}}s:1:"x";a:4:{s:1:"C";s:3:"120";s:2:"WX";s:3:"444";s:1:"N";s:1:"x";s:1:"B";a:4:{i:0;s:3:"-27";i:1;s:3:"-11";i:2;s:3:"447";i:3;s:3:"441";}}i:121;a:4:{s:1:"C";s:3:"121";s:2:"WX";s:3:"444";s:1:"N";s:1:"y";s:1:"B";a:4:{i:0;s:3:"-24";i:1;s:4:"-206";i:2;s:3:"426";i:3;s:3:"441";}}s:1:"y";a:4:{s:1:"C";s:3:"121";s:2:"WX";s:3:"444";s:1:"N";s:1:"y";s:1:"B";a:4:{i:0;s:3:"-24";i:1;s:4:"-206";i:2;s:3:"426";i:3;s:3:"441";}}i:122;a:4:{s:1:"C";s:3:"122";s:2:"WX";s:3:"389";s:1:"N";s:1:"z";s:1:"B";a:4:{i:0;s:2:"-2";i:1;s:3:"-81";i:2;s:3:"380";i:3;s:3:"428";}}s:1:"z";a:4:{s:1:"C";s:3:"122";s:2:"WX";s:3:"389";s:1:"N";s:1:"z";s:1:"B";a:4:{i:0;s:2:"-2";i:1;s:3:"-81";i:2;s:3:"380";i:3;s:3:"428";}}i:123;a:4:{s:1:"C";s:3:"123";s:2:"WX";s:3:"400";s:1:"N";s:9:"braceleft";s:1:"B";a:4:{i:0;s:2:"51";i:1;s:4:"-177";i:2;s:3:"407";i:3;s:3:"687";}}s:9:"braceleft";a:4:{s:1:"C";s:3:"123";s:2:"WX";s:3:"400";s:1:"N";s:9:"braceleft";s:1:"B";a:4:{i:0;s:2:"51";i:1;s:4:"-177";i:2;s:3:"407";i:3;s:3:"687";}}i:124;a:4:{s:1:"C";s:3:"124";s:2:"WX";s:3:"275";s:1:"N";s:3:"bar";s:1:"B";a:4:{i:0;s:3:"105";i:1;s:4:"-217";i:2;s:3:"171";i:3;s:3:"783";}}s:3:"bar";a:4:{s:1:"C";s:3:"124";s:2:"WX";s:3:"275";s:1:"N";s:3:"bar";s:1:"B";a:4:{i:0;s:3:"105";i:1;s:4:"-217";i:2;s:3:"171";i:3;s:3:"783";}}i:125;a:4:{s:1:"C";s:3:"125";s:2:"WX";s:3:"400";s:1:"N";s:10:"braceright";s:1:"B";a:4:{i:0;s:2:"-7";i:1;s:4:"-177";i:2;s:3:"349";i:3;s:3:"687";}}s:10:"braceright";a:4:{s:1:"C";s:3:"125";s:2:"WX";s:3:"400";s:1:"N";s:10:"braceright";s:1:"B";a:4:{i:0;s:2:"-7";i:1;s:4:"-177";i:2;s:3:"349";i:3;s:3:"687";}}i:126;a:4:{s:1:"C";s:3:"126";s:2:"WX";s:3:"541";s:1:"N";s:10:"asciitilde";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"183";i:2;s:3:"502";i:3;s:3:"323";}}s:10:"asciitilde";a:4:{s:1:"C";s:3:"126";s:2:"WX";s:3:"541";s:1:"N";s:10:"asciitilde";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"183";i:2;s:3:"502";i:3;s:3:"323";}}i:161;a:4:{s:1:"C";s:3:"161";s:2:"WX";s:3:"389";s:1:"N";s:10:"exclamdown";s:1:"B";a:4:{i:0;s:2:"59";i:1;s:4:"-205";i:2;s:3:"322";i:3;s:3:"473";}}s:10:"exclamdown";a:4:{s:1:"C";s:3:"161";s:2:"WX";s:3:"389";s:1:"N";s:10:"exclamdown";s:1:"B";a:4:{i:0;s:2:"59";i:1;s:4:"-205";i:2;s:3:"322";i:3;s:3:"473";}}i:162;a:4:{s:1:"C";s:3:"162";s:2:"WX";s:3:"500";s:1:"N";s:4:"cent";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:4:"-143";i:2;s:3:"472";i:3;s:3:"560";}}s:4:"cent";a:4:{s:1:"C";s:3:"162";s:2:"WX";s:3:"500";s:1:"N";s:4:"cent";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:4:"-143";i:2;s:3:"472";i:3;s:3:"560";}}i:163;a:4:{s:1:"C";s:3:"163";s:2:"WX";s:3:"500";s:1:"N";s:8:"sterling";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:2:"-6";i:2;s:3:"517";i:3;s:3:"670";}}s:8:"sterling";a:4:{s:1:"C";s:3:"163";s:2:"WX";s:3:"500";s:1:"N";s:8:"sterling";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:2:"-6";i:2;s:3:"517";i:3;s:3:"670";}}i:164;a:4:{s:1:"C";s:3:"164";s:2:"WX";s:3:"167";s:1:"N";s:8:"fraction";s:1:"B";a:4:{i:0;s:4:"-169";i:1;s:3:"-10";i:2;s:3:"337";i:3;s:3:"676";}}s:8:"fraction";a:4:{s:1:"C";s:3:"164";s:2:"WX";s:3:"167";s:1:"N";s:8:"fraction";s:1:"B";a:4:{i:0;s:4:"-169";i:1;s:3:"-10";i:2;s:3:"337";i:3;s:3:"676";}}i:165;a:4:{s:1:"C";s:3:"165";s:2:"WX";s:3:"500";s:1:"N";s:3:"yen";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:1:"0";i:2;s:3:"603";i:3;s:3:"653";}}s:3:"yen";a:4:{s:1:"C";s:3:"165";s:2:"WX";s:3:"500";s:1:"N";s:3:"yen";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:1:"0";i:2;s:3:"603";i:3;s:3:"653";}}i:166;a:4:{s:1:"C";s:3:"166";s:2:"WX";s:3:"500";s:1:"N";s:6:"florin";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:4:"-182";i:2;s:3:"507";i:3;s:3:"682";}}s:6:"florin";a:4:{s:1:"C";s:3:"166";s:2:"WX";s:3:"500";s:1:"N";s:6:"florin";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:4:"-182";i:2;s:3:"507";i:3;s:3:"682";}}i:167;a:4:{s:1:"C";s:3:"167";s:2:"WX";s:3:"500";s:1:"N";s:7:"section";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:4:"-162";i:2;s:3:"461";i:3;s:3:"666";}}s:7:"section";a:4:{s:1:"C";s:3:"167";s:2:"WX";s:3:"500";s:1:"N";s:7:"section";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:4:"-162";i:2;s:3:"461";i:3;s:3:"666";}}i:168;a:4:{s:1:"C";s:3:"168";s:2:"WX";s:3:"500";s:1:"N";s:8:"currency";s:1:"B";a:4:{i:0;s:3:"-22";i:1;s:2:"53";i:2;s:3:"522";i:3;s:3:"597";}}s:8:"currency";a:4:{s:1:"C";s:3:"168";s:2:"WX";s:3:"500";s:1:"N";s:8:"currency";s:1:"B";a:4:{i:0;s:3:"-22";i:1;s:2:"53";i:2;s:3:"522";i:3;s:3:"597";}}i:169;a:4:{s:1:"C";s:3:"169";s:2:"WX";s:3:"214";s:1:"N";s:11:"quotesingle";s:1:"B";a:4:{i:0;s:3:"132";i:1;s:3:"421";i:2;s:3:"241";i:3;s:3:"666";}}s:11:"quotesingle";a:4:{s:1:"C";s:3:"169";s:2:"WX";s:3:"214";s:1:"N";s:11:"quotesingle";s:1:"B";a:4:{i:0;s:3:"132";i:1;s:3:"421";i:2;s:3:"241";i:3;s:3:"666";}}i:170;a:4:{s:1:"C";s:3:"170";s:2:"WX";s:3:"556";s:1:"N";s:12:"quotedblleft";s:1:"B";a:4:{i:0;s:3:"166";i:1;s:3:"436";i:2;s:3:"514";i:3;s:3:"666";}}s:12:"quotedblleft";a:4:{s:1:"C";s:3:"170";s:2:"WX";s:3:"556";s:1:"N";s:12:"quotedblleft";s:1:"B";a:4:{i:0;s:3:"166";i:1;s:3:"436";i:2;s:3:"514";i:3;s:3:"666";}}i:171;a:4:{s:1:"C";s:3:"171";s:2:"WX";s:3:"500";s:1:"N";s:13:"guillemotleft";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:2:"37";i:2;s:3:"445";i:3;s:3:"403";}}s:13:"guillemotleft";a:4:{s:1:"C";s:3:"171";s:2:"WX";s:3:"500";s:1:"N";s:13:"guillemotleft";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:2:"37";i:2;s:3:"445";i:3;s:3:"403";}}i:172;a:4:{s:1:"C";s:3:"172";s:2:"WX";s:3:"333";s:1:"N";s:13:"guilsinglleft";s:1:"B";a:4:{i:0;s:2:"51";i:1;s:2:"37";i:2;s:3:"281";i:3;s:3:"403";}}s:13:"guilsinglleft";a:4:{s:1:"C";s:3:"172";s:2:"WX";s:3:"333";s:1:"N";s:13:"guilsinglleft";s:1:"B";a:4:{i:0;s:2:"51";i:1;s:2:"37";i:2;s:3:"281";i:3;s:3:"403";}}i:173;a:4:{s:1:"C";s:3:"173";s:2:"WX";s:3:"333";s:1:"N";s:14:"guilsinglright";s:1:"B";a:4:{i:0;s:2:"52";i:1;s:2:"37";i:2;s:3:"282";i:3;s:3:"403";}}s:14:"guilsinglright";a:4:{s:1:"C";s:3:"173";s:2:"WX";s:3:"333";s:1:"N";s:14:"guilsinglright";s:1:"B";a:4:{i:0;s:2:"52";i:1;s:2:"37";i:2;s:3:"282";i:3;s:3:"403";}}i:174;a:4:{s:1:"C";s:3:"174";s:2:"WX";s:3:"500";s:1:"N";s:2:"fi";s:1:"B";a:4:{i:0;s:4:"-141";i:1;s:4:"-207";i:2;s:3:"481";i:3;s:3:"681";}}s:2:"fi";a:4:{s:1:"C";s:3:"174";s:2:"WX";s:3:"500";s:1:"N";s:2:"fi";s:1:"B";a:4:{i:0;s:4:"-141";i:1;s:4:"-207";i:2;s:3:"481";i:3;s:3:"681";}}i:175;a:4:{s:1:"C";s:3:"175";s:2:"WX";s:3:"500";s:1:"N";s:2:"fl";s:1:"B";a:4:{i:0;s:4:"-141";i:1;s:4:"-204";i:2;s:3:"518";i:3;s:3:"682";}}s:2:"fl";a:4:{s:1:"C";s:3:"175";s:2:"WX";s:3:"500";s:1:"N";s:2:"fl";s:1:"B";a:4:{i:0;s:4:"-141";i:1;s:4:"-204";i:2;s:3:"518";i:3;s:3:"682";}}i:177;a:4:{s:1:"C";s:3:"177";s:2:"WX";s:3:"500";s:1:"N";s:6:"endash";s:1:"B";a:4:{i:0;s:2:"-6";i:1;s:3:"197";i:2;s:3:"505";i:3;s:3:"243";}}s:6:"endash";a:4:{s:1:"C";s:3:"177";s:2:"WX";s:3:"500";s:1:"N";s:6:"endash";s:1:"B";a:4:{i:0;s:2:"-6";i:1;s:3:"197";i:2;s:3:"505";i:3;s:3:"243";}}i:178;a:4:{s:1:"C";s:3:"178";s:2:"WX";s:3:"500";s:1:"N";s:6:"dagger";s:1:"B";a:4:{i:0;s:3:"101";i:1;s:4:"-159";i:2;s:3:"488";i:3;s:3:"666";}}s:6:"dagger";a:4:{s:1:"C";s:3:"178";s:2:"WX";s:3:"500";s:1:"N";s:6:"dagger";s:1:"B";a:4:{i:0;s:3:"101";i:1;s:4:"-159";i:2;s:3:"488";i:3;s:3:"666";}}i:179;a:4:{s:1:"C";s:3:"179";s:2:"WX";s:3:"500";s:1:"N";s:9:"daggerdbl";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:4:"-143";i:2;s:3:"491";i:3;s:3:"666";}}s:9:"daggerdbl";a:4:{s:1:"C";s:3:"179";s:2:"WX";s:3:"500";s:1:"N";s:9:"daggerdbl";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:4:"-143";i:2;s:3:"491";i:3;s:3:"666";}}i:180;a:4:{s:1:"C";s:3:"180";s:2:"WX";s:3:"250";s:1:"N";s:14:"periodcentered";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:3:"199";i:2;s:3:"181";i:3;s:3:"310";}}s:14:"periodcentered";a:4:{s:1:"C";s:3:"180";s:2:"WX";s:3:"250";s:1:"N";s:14:"periodcentered";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:3:"199";i:2;s:3:"181";i:3;s:3:"310";}}i:182;a:4:{s:1:"C";s:3:"182";s:2:"WX";s:3:"523";s:1:"N";s:9:"paragraph";s:1:"B";a:4:{i:0;s:2:"55";i:1;s:4:"-123";i:2;s:3:"616";i:3;s:3:"653";}}s:9:"paragraph";a:4:{s:1:"C";s:3:"182";s:2:"WX";s:3:"523";s:1:"N";s:9:"paragraph";s:1:"B";a:4:{i:0;s:2:"55";i:1;s:4:"-123";i:2;s:3:"616";i:3;s:3:"653";}}i:183;a:4:{s:1:"C";s:3:"183";s:2:"WX";s:3:"350";s:1:"N";s:6:"bullet";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"191";i:2;s:3:"310";i:3;s:3:"461";}}s:6:"bullet";a:4:{s:1:"C";s:3:"183";s:2:"WX";s:3:"350";s:1:"N";s:6:"bullet";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"191";i:2;s:3:"310";i:3;s:3:"461";}}i:184;a:4:{s:1:"C";s:3:"184";s:2:"WX";s:3:"333";s:1:"N";s:14:"quotesinglbase";s:1:"B";a:4:{i:0;s:2:"44";i:1;s:4:"-129";i:2;s:3:"183";i:3;s:3:"101";}}s:14:"quotesinglbase";a:4:{s:1:"C";s:3:"184";s:2:"WX";s:3:"333";s:1:"N";s:14:"quotesinglbase";s:1:"B";a:4:{i:0;s:2:"44";i:1;s:4:"-129";i:2;s:3:"183";i:3;s:3:"101";}}i:185;a:4:{s:1:"C";s:3:"185";s:2:"WX";s:3:"556";s:1:"N";s:12:"quotedblbase";s:1:"B";a:4:{i:0;s:2:"57";i:1;s:4:"-129";i:2;s:3:"405";i:3;s:3:"101";}}s:12:"quotedblbase";a:4:{s:1:"C";s:3:"185";s:2:"WX";s:3:"556";s:1:"N";s:12:"quotedblbase";s:1:"B";a:4:{i:0;s:2:"57";i:1;s:4:"-129";i:2;s:3:"405";i:3;s:3:"101";}}i:186;a:4:{s:1:"C";s:3:"186";s:2:"WX";s:3:"556";s:1:"N";s:13:"quotedblright";s:1:"B";a:4:{i:0;s:3:"151";i:1;s:3:"436";i:2;s:3:"499";i:3;s:3:"666";}}s:13:"quotedblright";a:4:{s:1:"C";s:3:"186";s:2:"WX";s:3:"556";s:1:"N";s:13:"quotedblright";s:1:"B";a:4:{i:0;s:3:"151";i:1;s:3:"436";i:2;s:3:"499";i:3;s:3:"666";}}i:187;a:4:{s:1:"C";s:3:"187";s:2:"WX";s:3:"500";s:1:"N";s:14:"guillemotright";s:1:"B";a:4:{i:0;s:2:"55";i:1;s:2:"37";i:2;s:3:"447";i:3;s:3:"403";}}s:14:"guillemotright";a:4:{s:1:"C";s:3:"187";s:2:"WX";s:3:"500";s:1:"N";s:14:"guillemotright";s:1:"B";a:4:{i:0;s:2:"55";i:1;s:2:"37";i:2;s:3:"447";i:3;s:3:"403";}}i:188;a:4:{s:1:"C";s:3:"188";s:2:"WX";s:3:"889";s:1:"N";s:8:"ellipsis";s:1:"B";a:4:{i:0;s:2:"57";i:1;s:3:"-11";i:2;s:3:"762";i:3;s:3:"100";}}s:8:"ellipsis";a:4:{s:1:"C";s:3:"188";s:2:"WX";s:3:"889";s:1:"N";s:8:"ellipsis";s:1:"B";a:4:{i:0;s:2:"57";i:1;s:3:"-11";i:2;s:3:"762";i:3;s:3:"100";}}i:189;a:4:{s:1:"C";s:3:"189";s:2:"WX";s:4:"1000";s:1:"N";s:11:"perthousand";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-19";i:2;s:4:"1010";i:3;s:3:"706";}}s:11:"perthousand";a:4:{s:1:"C";s:3:"189";s:2:"WX";s:4:"1000";s:1:"N";s:11:"perthousand";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-19";i:2;s:4:"1010";i:3;s:3:"706";}}i:191;a:4:{s:1:"C";s:3:"191";s:2:"WX";s:3:"500";s:1:"N";s:12:"questiondown";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:4:"-205";i:2;s:3:"368";i:3;s:3:"471";}}s:12:"questiondown";a:4:{s:1:"C";s:3:"191";s:2:"WX";s:3:"500";s:1:"N";s:12:"questiondown";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:4:"-205";i:2;s:3:"368";i:3;s:3:"471";}}i:193;a:4:{s:1:"C";s:3:"193";s:2:"WX";s:3:"333";s:1:"N";s:5:"grave";s:1:"B";a:4:{i:0;s:3:"121";i:1;s:3:"492";i:2;s:3:"311";i:3;s:3:"664";}}s:5:"grave";a:4:{s:1:"C";s:3:"193";s:2:"WX";s:3:"333";s:1:"N";s:5:"grave";s:1:"B";a:4:{i:0;s:3:"121";i:1;s:3:"492";i:2;s:3:"311";i:3;s:3:"664";}}i:194;a:4:{s:1:"C";s:3:"194";s:2:"WX";s:3:"333";s:1:"N";s:5:"acute";s:1:"B";a:4:{i:0;s:3:"180";i:1;s:3:"494";i:2;s:3:"403";i:3;s:3:"664";}}s:5:"acute";a:4:{s:1:"C";s:3:"194";s:2:"WX";s:3:"333";s:1:"N";s:5:"acute";s:1:"B";a:4:{i:0;s:3:"180";i:1;s:3:"494";i:2;s:3:"403";i:3;s:3:"664";}}i:195;a:4:{s:1:"C";s:3:"195";s:2:"WX";s:3:"333";s:1:"N";s:10:"circumflex";s:1:"B";a:4:{i:0;s:2:"91";i:1;s:3:"492";i:2;s:3:"385";i:3;s:3:"661";}}s:10:"circumflex";a:4:{s:1:"C";s:3:"195";s:2:"WX";s:3:"333";s:1:"N";s:10:"circumflex";s:1:"B";a:4:{i:0;s:2:"91";i:1;s:3:"492";i:2;s:3:"385";i:3;s:3:"661";}}i:196;a:4:{s:1:"C";s:3:"196";s:2:"WX";s:3:"333";s:1:"N";s:5:"tilde";s:1:"B";a:4:{i:0;s:3:"100";i:1;s:3:"517";i:2;s:3:"427";i:3;s:3:"624";}}s:5:"tilde";a:4:{s:1:"C";s:3:"196";s:2:"WX";s:3:"333";s:1:"N";s:5:"tilde";s:1:"B";a:4:{i:0;s:3:"100";i:1;s:3:"517";i:2;s:3:"427";i:3;s:3:"624";}}i:197;a:4:{s:1:"C";s:3:"197";s:2:"WX";s:3:"333";s:1:"N";s:6:"macron";s:1:"B";a:4:{i:0;s:2:"99";i:1;s:3:"532";i:2;s:3:"411";i:3;s:3:"583";}}s:6:"macron";a:4:{s:1:"C";s:3:"197";s:2:"WX";s:3:"333";s:1:"N";s:6:"macron";s:1:"B";a:4:{i:0;s:2:"99";i:1;s:3:"532";i:2;s:3:"411";i:3;s:3:"583";}}i:198;a:4:{s:1:"C";s:3:"198";s:2:"WX";s:3:"333";s:1:"N";s:5:"breve";s:1:"B";a:4:{i:0;s:3:"117";i:1;s:3:"492";i:2;s:3:"418";i:3;s:3:"650";}}s:5:"breve";a:4:{s:1:"C";s:3:"198";s:2:"WX";s:3:"333";s:1:"N";s:5:"breve";s:1:"B";a:4:{i:0;s:3:"117";i:1;s:3:"492";i:2;s:3:"418";i:3;s:3:"650";}}i:199;a:4:{s:1:"C";s:3:"199";s:2:"WX";s:3:"333";s:1:"N";s:9:"dotaccent";s:1:"B";a:4:{i:0;s:3:"207";i:1;s:3:"548";i:2;s:3:"305";i:3;s:3:"646";}}s:9:"dotaccent";a:4:{s:1:"C";s:3:"199";s:2:"WX";s:3:"333";s:1:"N";s:9:"dotaccent";s:1:"B";a:4:{i:0;s:3:"207";i:1;s:3:"548";i:2;s:3:"305";i:3;s:3:"646";}}i:200;a:4:{s:1:"C";s:3:"200";s:2:"WX";s:3:"333";s:1:"N";s:8:"dieresis";s:1:"B";a:4:{i:0;s:3:"107";i:1;s:3:"548";i:2;s:3:"405";i:3;s:3:"646";}}s:8:"dieresis";a:4:{s:1:"C";s:3:"200";s:2:"WX";s:3:"333";s:1:"N";s:8:"dieresis";s:1:"B";a:4:{i:0;s:3:"107";i:1;s:3:"548";i:2;s:3:"405";i:3;s:3:"646";}}i:202;a:4:{s:1:"C";s:3:"202";s:2:"WX";s:3:"333";s:1:"N";s:4:"ring";s:1:"B";a:4:{i:0;s:3:"155";i:1;s:3:"492";i:2;s:3:"355";i:3;s:3:"691";}}s:4:"ring";a:4:{s:1:"C";s:3:"202";s:2:"WX";s:3:"333";s:1:"N";s:4:"ring";s:1:"B";a:4:{i:0;s:3:"155";i:1;s:3:"492";i:2;s:3:"355";i:3;s:3:"691";}}i:203;a:4:{s:1:"C";s:3:"203";s:2:"WX";s:3:"333";s:1:"N";s:7:"cedilla";s:1:"B";a:4:{i:0;s:3:"-30";i:1;s:4:"-217";i:2;s:3:"182";i:3;s:1:"0";}}s:7:"cedilla";a:4:{s:1:"C";s:3:"203";s:2:"WX";s:3:"333";s:1:"N";s:7:"cedilla";s:1:"B";a:4:{i:0;s:3:"-30";i:1;s:4:"-217";i:2;s:3:"182";i:3;s:1:"0";}}i:205;a:4:{s:1:"C";s:3:"205";s:2:"WX";s:3:"333";s:1:"N";s:12:"hungarumlaut";s:1:"B";a:4:{i:0;s:2:"93";i:1;s:3:"494";i:2;s:3:"486";i:3;s:3:"664";}}s:12:"hungarumlaut";a:4:{s:1:"C";s:3:"205";s:2:"WX";s:3:"333";s:1:"N";s:12:"hungarumlaut";s:1:"B";a:4:{i:0;s:2:"93";i:1;s:3:"494";i:2;s:3:"486";i:3;s:3:"664";}}i:206;a:4:{s:1:"C";s:3:"206";s:2:"WX";s:3:"333";s:1:"N";s:6:"ogonek";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:4:"-169";i:2;s:3:"203";i:3;s:2:"40";}}s:6:"ogonek";a:4:{s:1:"C";s:3:"206";s:2:"WX";s:3:"333";s:1:"N";s:6:"ogonek";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:4:"-169";i:2;s:3:"203";i:3;s:2:"40";}}i:207;a:4:{s:1:"C";s:3:"207";s:2:"WX";s:3:"333";s:1:"N";s:5:"caron";s:1:"B";a:4:{i:0;s:3:"121";i:1;s:3:"492";i:2;s:3:"426";i:3;s:3:"661";}}s:5:"caron";a:4:{s:1:"C";s:3:"207";s:2:"WX";s:3:"333";s:1:"N";s:5:"caron";s:1:"B";a:4:{i:0;s:3:"121";i:1;s:3:"492";i:2;s:3:"426";i:3;s:3:"661";}}i:208;a:4:{s:1:"C";s:3:"208";s:2:"WX";s:3:"889";s:1:"N";s:6:"emdash";s:1:"B";a:4:{i:0;s:2:"-6";i:1;s:3:"197";i:2;s:3:"894";i:3;s:3:"243";}}s:6:"emdash";a:4:{s:1:"C";s:3:"208";s:2:"WX";s:3:"889";s:1:"N";s:6:"emdash";s:1:"B";a:4:{i:0;s:2:"-6";i:1;s:3:"197";i:2;s:3:"894";i:3;s:3:"243";}}i:225;a:4:{s:1:"C";s:3:"225";s:2:"WX";s:3:"889";s:1:"N";s:2:"AE";s:1:"B";a:4:{i:0;s:3:"-27";i:1;s:1:"0";i:2;s:3:"911";i:3;s:3:"653";}}s:2:"AE";a:4:{s:1:"C";s:3:"225";s:2:"WX";s:3:"889";s:1:"N";s:2:"AE";s:1:"B";a:4:{i:0;s:3:"-27";i:1;s:1:"0";i:2;s:3:"911";i:3;s:3:"653";}}i:227;a:4:{s:1:"C";s:3:"227";s:2:"WX";s:3:"276";s:1:"N";s:11:"ordfeminine";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:3:"406";i:2;s:3:"352";i:3;s:3:"676";}}s:11:"ordfeminine";a:4:{s:1:"C";s:3:"227";s:2:"WX";s:3:"276";s:1:"N";s:11:"ordfeminine";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:3:"406";i:2;s:3:"352";i:3;s:3:"676";}}i:232;a:4:{s:1:"C";s:3:"232";s:2:"WX";s:3:"556";s:1:"N";s:6:"Lslash";s:1:"B";a:4:{i:0;s:2:"-8";i:1;s:1:"0";i:2;s:3:"559";i:3;s:3:"653";}}s:6:"Lslash";a:4:{s:1:"C";s:3:"232";s:2:"WX";s:3:"556";s:1:"N";s:6:"Lslash";s:1:"B";a:4:{i:0;s:2:"-8";i:1;s:1:"0";i:2;s:3:"559";i:3;s:3:"653";}}i:233;a:4:{s:1:"C";s:3:"233";s:2:"WX";s:3:"722";s:1:"N";s:6:"Oslash";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:4:"-105";i:2;s:3:"699";i:3;s:3:"722";}}s:6:"Oslash";a:4:{s:1:"C";s:3:"233";s:2:"WX";s:3:"722";s:1:"N";s:6:"Oslash";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:4:"-105";i:2;s:3:"699";i:3;s:3:"722";}}i:234;a:4:{s:1:"C";s:3:"234";s:2:"WX";s:3:"944";s:1:"N";s:2:"OE";s:1:"B";a:4:{i:0;s:2:"49";i:1;s:2:"-8";i:2;s:3:"964";i:3;s:3:"666";}}s:2:"OE";a:4:{s:1:"C";s:3:"234";s:2:"WX";s:3:"944";s:1:"N";s:2:"OE";s:1:"B";a:4:{i:0;s:2:"49";i:1;s:2:"-8";i:2;s:3:"964";i:3;s:3:"666";}}i:235;a:4:{s:1:"C";s:3:"235";s:2:"WX";s:3:"310";s:1:"N";s:12:"ordmasculine";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:3:"406";i:2;s:3:"362";i:3;s:3:"676";}}s:12:"ordmasculine";a:4:{s:1:"C";s:3:"235";s:2:"WX";s:3:"310";s:1:"N";s:12:"ordmasculine";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:3:"406";i:2;s:3:"362";i:3;s:3:"676";}}i:241;a:4:{s:1:"C";s:3:"241";s:2:"WX";s:3:"667";s:1:"N";s:2:"ae";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:3:"-11";i:2;s:3:"640";i:3;s:3:"441";}}s:2:"ae";a:4:{s:1:"C";s:3:"241";s:2:"WX";s:3:"667";s:1:"N";s:2:"ae";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:3:"-11";i:2;s:3:"640";i:3;s:3:"441";}}i:245;a:4:{s:1:"C";s:3:"245";s:2:"WX";s:3:"278";s:1:"N";s:8:"dotlessi";s:1:"B";a:4:{i:0;s:2:"49";i:1;s:3:"-11";i:2;s:3:"235";i:3;s:3:"441";}}s:8:"dotlessi";a:4:{s:1:"C";s:3:"245";s:2:"WX";s:3:"278";s:1:"N";s:8:"dotlessi";s:1:"B";a:4:{i:0;s:2:"49";i:1;s:3:"-11";i:2;s:3:"235";i:3;s:3:"441";}}i:248;a:4:{s:1:"C";s:3:"248";s:2:"WX";s:3:"278";s:1:"N";s:6:"lslash";s:1:"B";a:4:{i:0;s:2:"41";i:1;s:3:"-11";i:2;s:3:"312";i:3;s:3:"683";}}s:6:"lslash";a:4:{s:1:"C";s:3:"248";s:2:"WX";s:3:"278";s:1:"N";s:6:"lslash";s:1:"B";a:4:{i:0;s:2:"41";i:1;s:3:"-11";i:2;s:3:"312";i:3;s:3:"683";}}i:249;a:4:{s:1:"C";s:3:"249";s:2:"WX";s:3:"500";s:1:"N";s:6:"oslash";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:4:"-135";i:2;s:3:"469";i:3;s:3:"554";}}s:6:"oslash";a:4:{s:1:"C";s:3:"249";s:2:"WX";s:3:"500";s:1:"N";s:6:"oslash";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:4:"-135";i:2;s:3:"469";i:3;s:3:"554";}}i:250;a:4:{s:1:"C";s:3:"250";s:2:"WX";s:3:"667";s:1:"N";s:2:"oe";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:3:"-12";i:2;s:3:"646";i:3;s:3:"441";}}s:2:"oe";a:4:{s:1:"C";s:3:"250";s:2:"WX";s:3:"667";s:1:"N";s:2:"oe";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:3:"-12";i:2;s:3:"646";i:3;s:3:"441";}}i:251;a:4:{s:1:"C";s:3:"251";s:2:"WX";s:3:"500";s:1:"N";s:10:"germandbls";s:1:"B";a:4:{i:0;s:4:"-168";i:1;s:4:"-207";i:2;s:3:"493";i:3;s:3:"679";}}s:10:"germandbls";a:4:{s:1:"C";s:3:"251";s:2:"WX";s:3:"500";s:1:"N";s:10:"germandbls";s:1:"B";a:4:{i:0;s:4:"-168";i:1;s:4:"-207";i:2;s:3:"493";i:3;s:3:"679";}}s:9:"Idieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"333";s:1:"N";s:9:"Idieresis";s:1:"B";a:4:{i:0;s:2:"-8";i:1;s:1:"0";i:2;s:3:"435";i:3;s:3:"818";}}s:6:"eacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:6:"eacute";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:3:"-11";i:2;s:3:"459";i:3;s:3:"664";}}s:6:"abreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"abreve";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:3:"-11";i:2;s:3:"502";i:3;s:3:"650";}}s:13:"uhungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:13:"uhungarumlaut";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:3:"-11";i:2;s:3:"580";i:3;s:3:"664";}}s:6:"ecaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:6:"ecaron";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:3:"-11";i:2;s:3:"482";i:3;s:3:"661";}}s:9:"Ydieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:9:"Ydieresis";s:1:"B";a:4:{i:0;s:2:"78";i:1;s:1:"0";i:2;s:3:"633";i:3;s:3:"818";}}s:6:"divide";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"675";s:1:"N";s:6:"divide";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:3:"-11";i:2;s:3:"590";i:3;s:3:"517";}}s:6:"Yacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"Yacute";s:1:"B";a:4:{i:0;s:2:"78";i:1;s:1:"0";i:2;s:3:"633";i:3;s:3:"876";}}s:11:"Acircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:11:"Acircumflex";s:1:"B";a:4:{i:0;s:3:"-51";i:1;s:1:"0";i:2;s:3:"564";i:3;s:3:"873";}}s:6:"aacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"aacute";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:3:"-11";i:2;s:3:"487";i:3;s:3:"664";}}s:11:"Ucircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:11:"Ucircumflex";s:1:"B";a:4:{i:0;s:3:"102";i:1;s:3:"-18";i:2;s:3:"765";i:3;s:3:"873";}}s:6:"yacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:6:"yacute";s:1:"B";a:4:{i:0;s:3:"-24";i:1;s:4:"-206";i:2;s:3:"459";i:3;s:3:"664";}}s:12:"scommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:12:"scommaaccent";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:4:"-217";i:2;s:3:"366";i:3;s:3:"442";}}s:11:"ecircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:11:"ecircumflex";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:3:"-11";i:2;s:3:"441";i:3;s:3:"661";}}s:5:"Uring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:5:"Uring";s:1:"B";a:4:{i:0;s:3:"102";i:1;s:3:"-18";i:2;s:3:"765";i:3;s:3:"883";}}s:9:"Udieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:9:"Udieresis";s:1:"B";a:4:{i:0;s:3:"102";i:1;s:3:"-18";i:2;s:3:"765";i:3;s:3:"818";}}s:7:"aogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:7:"aogonek";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:4:"-169";i:2;s:3:"476";i:3;s:3:"441";}}s:6:"Uacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Uacute";s:1:"B";a:4:{i:0;s:3:"102";i:1;s:3:"-18";i:2;s:3:"765";i:3;s:3:"876";}}s:7:"uogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:7:"uogonek";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:4:"-169";i:2;s:3:"477";i:3;s:3:"441";}}s:9:"Edieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:9:"Edieresis";s:1:"B";a:4:{i:0;s:2:"-1";i:1;s:1:"0";i:2;s:3:"634";i:3;s:3:"818";}}s:6:"Dcroat";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Dcroat";s:1:"B";a:4:{i:0;s:2:"-8";i:1;s:1:"0";i:2;s:3:"700";i:3;s:3:"653";}}s:11:"commaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"250";s:1:"N";s:11:"commaaccent";s:1:"B";a:4:{i:0;s:1:"8";i:1;s:4:"-217";i:2;s:3:"133";i:3;s:3:"-50";}}s:9:"copyright";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"760";s:1:"N";s:9:"copyright";s:1:"B";a:4:{i:0;s:2:"41";i:1;s:3:"-18";i:2;s:3:"719";i:3;s:3:"666";}}s:7:"Emacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:7:"Emacron";s:1:"B";a:4:{i:0;s:2:"-1";i:1;s:1:"0";i:2;s:3:"634";i:3;s:3:"795";}}s:6:"ccaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:6:"ccaron";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"-11";i:2;s:3:"482";i:3;s:3:"661";}}s:5:"aring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:5:"aring";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:3:"-11";i:2;s:3:"476";i:3;s:3:"691";}}s:12:"Ncommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:12:"Ncommaaccent";s:1:"B";a:4:{i:0;s:3:"-20";i:1;s:4:"-187";i:2;s:3:"727";i:3;s:3:"653";}}s:6:"lacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:6:"lacute";s:1:"B";a:4:{i:0;s:2:"41";i:1;s:3:"-11";i:2;s:3:"395";i:3;s:3:"876";}}s:6:"agrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"agrave";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:3:"-11";i:2;s:3:"476";i:3;s:3:"664";}}s:12:"Tcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:12:"Tcommaaccent";s:1:"B";a:4:{i:0;s:2:"59";i:1;s:4:"-217";i:2;s:3:"633";i:3;s:3:"653";}}s:6:"Cacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Cacute";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:3:"-18";i:2;s:3:"690";i:3;s:3:"876";}}s:6:"atilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"atilde";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:3:"-11";i:2;s:3:"511";i:3;s:3:"624";}}s:10:"Edotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:10:"Edotaccent";s:1:"B";a:4:{i:0;s:2:"-1";i:1;s:1:"0";i:2;s:3:"634";i:3;s:3:"818";}}s:6:"scaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:6:"scaron";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"-13";i:2;s:3:"454";i:3;s:3:"661";}}s:8:"scedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:8:"scedilla";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:4:"-217";i:2;s:3:"366";i:3;s:3:"442";}}s:6:"iacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:6:"iacute";s:1:"B";a:4:{i:0;s:2:"49";i:1;s:3:"-11";i:2;s:3:"355";i:3;s:3:"664";}}s:7:"lozenge";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"471";s:1:"N";s:7:"lozenge";s:1:"B";a:4:{i:0;s:2:"13";i:1;s:1:"0";i:2;s:3:"459";i:3;s:3:"724";}}s:6:"Rcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"Rcaron";s:1:"B";a:4:{i:0;s:3:"-13";i:1;s:1:"0";i:2;s:3:"588";i:3;s:3:"873";}}s:12:"Gcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:12:"Gcommaaccent";s:1:"B";a:4:{i:0;s:2:"52";i:1;s:4:"-217";i:2;s:3:"722";i:3;s:3:"666";}}s:11:"ucircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:11:"ucircumflex";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:3:"-11";i:2;s:3:"475";i:3;s:3:"661";}}s:11:"acircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:11:"acircumflex";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:3:"-11";i:2;s:3:"476";i:3;s:3:"661";}}s:7:"Amacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:7:"Amacron";s:1:"B";a:4:{i:0;s:3:"-51";i:1;s:1:"0";i:2;s:3:"564";i:3;s:3:"795";}}s:6:"rcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:6:"rcaron";s:1:"B";a:4:{i:0;s:2:"45";i:1;s:1:"0";i:2;s:3:"434";i:3;s:3:"661";}}s:8:"ccedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:8:"ccedilla";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:4:"-217";i:2;s:3:"425";i:3;s:3:"441";}}s:10:"Zdotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:10:"Zdotaccent";s:1:"B";a:4:{i:0;s:2:"-6";i:1;s:1:"0";i:2;s:3:"606";i:3;s:3:"818";}}s:5:"Thorn";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:5:"Thorn";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:3:"569";i:3;s:3:"653";}}s:7:"Omacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:7:"Omacron";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:3:"-18";i:2;s:3:"699";i:3;s:3:"795";}}s:6:"Racute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"Racute";s:1:"B";a:4:{i:0;s:3:"-13";i:1;s:1:"0";i:2;s:3:"588";i:3;s:3:"876";}}s:6:"Sacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"Sacute";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:3:"-18";i:2;s:3:"508";i:3;s:3:"876";}}s:6:"dcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"544";s:1:"N";s:6:"dcaron";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:3:"-13";i:2;s:3:"658";i:3;s:3:"683";}}s:7:"Umacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:7:"Umacron";s:1:"B";a:4:{i:0;s:3:"102";i:1;s:3:"-18";i:2;s:3:"765";i:3;s:3:"795";}}s:5:"uring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:5:"uring";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:3:"-11";i:2;s:3:"475";i:3;s:3:"691";}}s:13:"threesuperior";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"300";s:1:"N";s:13:"threesuperior";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:3:"268";i:2;s:3:"339";i:3;s:3:"676";}}s:6:"Ograve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Ograve";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:3:"-18";i:2;s:3:"699";i:3;s:3:"876";}}s:6:"Agrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"Agrave";s:1:"B";a:4:{i:0;s:3:"-51";i:1;s:1:"0";i:2;s:3:"564";i:3;s:3:"876";}}s:6:"Abreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"Abreve";s:1:"B";a:4:{i:0;s:3:"-51";i:1;s:1:"0";i:2;s:3:"564";i:3;s:3:"862";}}s:8:"multiply";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"675";s:1:"N";s:8:"multiply";s:1:"B";a:4:{i:0;s:2:"93";i:1;s:1:"8";i:2;s:3:"582";i:3;s:3:"497";}}s:6:"uacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"uacute";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:3:"-11";i:2;s:3:"477";i:3;s:3:"664";}}s:6:"Tcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"Tcaron";s:1:"B";a:4:{i:0;s:2:"59";i:1;s:1:"0";i:2;s:3:"633";i:3;s:3:"873";}}s:11:"partialdiff";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"476";s:1:"N";s:11:"partialdiff";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:3:"-38";i:2;s:3:"459";i:3;s:3:"710";}}s:9:"ydieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:9:"ydieresis";s:1:"B";a:4:{i:0;s:3:"-24";i:1;s:4:"-206";i:2;s:3:"441";i:3;s:3:"606";}}s:6:"Nacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Nacute";s:1:"B";a:4:{i:0;s:3:"-20";i:1;s:3:"-15";i:2;s:3:"727";i:3;s:3:"876";}}s:11:"icircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:11:"icircumflex";s:1:"B";a:4:{i:0;s:2:"33";i:1;s:3:"-11";i:2;s:3:"327";i:3;s:3:"661";}}s:11:"Ecircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:11:"Ecircumflex";s:1:"B";a:4:{i:0;s:2:"-1";i:1;s:1:"0";i:2;s:3:"634";i:3;s:3:"873";}}s:9:"adieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:9:"adieresis";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:3:"-11";i:2;s:3:"489";i:3;s:3:"606";}}s:9:"edieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:9:"edieresis";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:3:"-11";i:2;s:3:"451";i:3;s:3:"606";}}s:6:"cacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:6:"cacute";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"-11";i:2;s:3:"459";i:3;s:3:"664";}}s:6:"nacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"nacute";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:2:"-9";i:2;s:3:"477";i:3;s:3:"664";}}s:7:"umacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:7:"umacron";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:3:"-11";i:2;s:3:"485";i:3;s:3:"583";}}s:6:"Ncaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Ncaron";s:1:"B";a:4:{i:0;s:3:"-20";i:1;s:3:"-15";i:2;s:3:"727";i:3;s:3:"873";}}s:6:"Iacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"333";s:1:"N";s:6:"Iacute";s:1:"B";a:4:{i:0;s:2:"-8";i:1;s:1:"0";i:2;s:3:"433";i:3;s:3:"876";}}s:9:"plusminus";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"675";s:1:"N";s:9:"plusminus";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:1:"0";i:2;s:3:"590";i:3;s:3:"506";}}s:9:"brokenbar";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"275";s:1:"N";s:9:"brokenbar";s:1:"B";a:4:{i:0;s:3:"105";i:1;s:4:"-142";i:2;s:3:"171";i:3;s:3:"708";}}s:10:"registered";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"760";s:1:"N";s:10:"registered";s:1:"B";a:4:{i:0;s:2:"41";i:1;s:3:"-18";i:2;s:3:"719";i:3;s:3:"666";}}s:6:"Gbreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Gbreve";s:1:"B";a:4:{i:0;s:2:"52";i:1;s:3:"-18";i:2;s:3:"722";i:3;s:3:"862";}}s:10:"Idotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"333";s:1:"N";s:10:"Idotaccent";s:1:"B";a:4:{i:0;s:2:"-8";i:1;s:1:"0";i:2;s:3:"384";i:3;s:3:"818";}}s:9:"summation";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"summation";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:3:"-10";i:2;s:3:"585";i:3;s:3:"706";}}s:6:"Egrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"Egrave";s:1:"B";a:4:{i:0;s:2:"-1";i:1;s:1:"0";i:2;s:3:"634";i:3;s:3:"876";}}s:6:"racute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:6:"racute";s:1:"B";a:4:{i:0;s:2:"45";i:1;s:1:"0";i:2;s:3:"431";i:3;s:3:"664";}}s:7:"omacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:7:"omacron";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:3:"-11";i:2;s:3:"495";i:3;s:3:"583";}}s:6:"Zacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"Zacute";s:1:"B";a:4:{i:0;s:2:"-6";i:1;s:1:"0";i:2;s:3:"606";i:3;s:3:"876";}}s:6:"Zcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"Zcaron";s:1:"B";a:4:{i:0;s:2:"-6";i:1;s:1:"0";i:2;s:3:"606";i:3;s:3:"873";}}s:12:"greaterequal";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"549";s:1:"N";s:12:"greaterequal";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"523";i:3;s:3:"658";}}s:3:"Eth";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:3:"Eth";s:1:"B";a:4:{i:0;s:2:"-8";i:1;s:1:"0";i:2;s:3:"700";i:3;s:3:"653";}}s:8:"Ccedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:8:"Ccedilla";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:4:"-217";i:2;s:3:"689";i:3;s:3:"666";}}s:12:"lcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:12:"lcommaaccent";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:4:"-217";i:2;s:3:"279";i:3;s:3:"683";}}s:6:"tcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"300";s:1:"N";s:6:"tcaron";s:1:"B";a:4:{i:0;s:2:"37";i:1;s:3:"-11";i:2;s:3:"407";i:3;s:3:"681";}}s:7:"eogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:7:"eogonek";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:4:"-169";i:2;s:3:"412";i:3;s:3:"441";}}s:7:"Uogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:7:"Uogonek";s:1:"B";a:4:{i:0;s:3:"102";i:1;s:4:"-184";i:2;s:3:"765";i:3;s:3:"653";}}s:6:"Aacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"Aacute";s:1:"B";a:4:{i:0;s:3:"-51";i:1;s:1:"0";i:2;s:3:"564";i:3;s:3:"876";}}s:9:"Adieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:9:"Adieresis";s:1:"B";a:4:{i:0;s:3:"-51";i:1;s:1:"0";i:2;s:3:"564";i:3;s:3:"818";}}s:6:"egrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:6:"egrave";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:3:"-11";i:2;s:3:"412";i:3;s:3:"664";}}s:6:"zacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:6:"zacute";s:1:"B";a:4:{i:0;s:2:"-2";i:1;s:3:"-81";i:2;s:3:"431";i:3;s:3:"664";}}s:7:"iogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:7:"iogonek";s:1:"B";a:4:{i:0;s:2:"49";i:1;s:4:"-169";i:2;s:3:"264";i:3;s:3:"654";}}s:6:"Oacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Oacute";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:3:"-18";i:2;s:3:"699";i:3;s:3:"876";}}s:6:"oacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"oacute";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:3:"-11";i:2;s:3:"487";i:3;s:3:"664";}}s:7:"amacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:7:"amacron";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:3:"-11";i:2;s:3:"495";i:3;s:3:"583";}}s:6:"sacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:6:"sacute";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"-13";i:2;s:3:"431";i:3;s:3:"664";}}s:9:"idieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:9:"idieresis";s:1:"B";a:4:{i:0;s:2:"49";i:1;s:3:"-11";i:2;s:3:"352";i:3;s:3:"606";}}s:11:"Ocircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:11:"Ocircumflex";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:3:"-18";i:2;s:3:"699";i:3;s:3:"873";}}s:6:"Ugrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Ugrave";s:1:"B";a:4:{i:0;s:3:"102";i:1;s:3:"-18";i:2;s:3:"765";i:3;s:3:"876";}}s:5:"Delta";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"612";s:1:"N";s:5:"Delta";s:1:"B";a:4:{i:0;s:1:"6";i:1;s:1:"0";i:2;s:3:"608";i:3;s:3:"688";}}s:5:"thorn";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:5:"thorn";s:1:"B";a:4:{i:0;s:3:"-75";i:1;s:4:"-205";i:2;s:3:"469";i:3;s:3:"683";}}s:11:"twosuperior";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"300";s:1:"N";s:11:"twosuperior";s:1:"B";a:4:{i:0;s:2:"33";i:1;s:3:"271";i:2;s:3:"324";i:3;s:3:"676";}}s:9:"Odieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:9:"Odieresis";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:3:"-18";i:2;s:3:"699";i:3;s:3:"818";}}s:2:"mu";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:2:"mu";s:1:"B";a:4:{i:0;s:3:"-30";i:1;s:4:"-209";i:2;s:3:"497";i:3;s:3:"428";}}s:6:"igrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:6:"igrave";s:1:"B";a:4:{i:0;s:2:"49";i:1;s:3:"-11";i:2;s:3:"284";i:3;s:3:"664";}}s:13:"ohungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:13:"ohungarumlaut";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:3:"-11";i:2;s:3:"590";i:3;s:3:"664";}}s:7:"Eogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:7:"Eogonek";s:1:"B";a:4:{i:0;s:2:"-1";i:1;s:4:"-169";i:2;s:3:"634";i:3;s:3:"653";}}s:6:"dcroat";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"dcroat";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:3:"-13";i:2;s:3:"572";i:3;s:3:"683";}}s:13:"threequarters";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"750";s:1:"N";s:13:"threequarters";s:1:"B";a:4:{i:0;s:2:"23";i:1;s:3:"-10";i:2;s:3:"736";i:3;s:3:"676";}}s:8:"Scedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:8:"Scedilla";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:4:"-217";i:2;s:3:"508";i:3;s:3:"667";}}s:6:"lcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"300";s:1:"N";s:6:"lcaron";s:1:"B";a:4:{i:0;s:2:"41";i:1;s:3:"-11";i:2;s:3:"407";i:3;s:3:"683";}}s:12:"Kcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:12:"Kcommaaccent";s:1:"B";a:4:{i:0;s:1:"7";i:1;s:4:"-217";i:2;s:3:"722";i:3;s:3:"653";}}s:6:"Lacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"Lacute";s:1:"B";a:4:{i:0;s:2:"-8";i:1;s:1:"0";i:2;s:3:"559";i:3;s:3:"876";}}s:9:"trademark";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"980";s:1:"N";s:9:"trademark";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"247";i:2;s:3:"957";i:3;s:3:"653";}}s:10:"edotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:10:"edotaccent";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:3:"-11";i:2;s:3:"412";i:3;s:3:"606";}}s:6:"Igrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"333";s:1:"N";s:6:"Igrave";s:1:"B";a:4:{i:0;s:2:"-8";i:1;s:1:"0";i:2;s:3:"384";i:3;s:3:"876";}}s:7:"Imacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"333";s:1:"N";s:7:"Imacron";s:1:"B";a:4:{i:0;s:2:"-8";i:1;s:1:"0";i:2;s:3:"441";i:3;s:3:"795";}}s:6:"Lcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"Lcaron";s:1:"B";a:4:{i:0;s:2:"-8";i:1;s:1:"0";i:2;s:3:"586";i:3;s:3:"653";}}s:7:"onehalf";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"750";s:1:"N";s:7:"onehalf";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-10";i:2;s:3:"749";i:3;s:3:"676";}}s:9:"lessequal";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"549";s:1:"N";s:9:"lessequal";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"523";i:3;s:3:"658";}}s:11:"ocircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:11:"ocircumflex";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:3:"-11";i:2;s:3:"468";i:3;s:3:"661";}}s:6:"ntilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"ntilde";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:2:"-9";i:2;s:3:"476";i:3;s:3:"624";}}s:13:"Uhungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:13:"Uhungarumlaut";s:1:"B";a:4:{i:0;s:3:"102";i:1;s:3:"-18";i:2;s:3:"765";i:3;s:3:"876";}}s:6:"Eacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"Eacute";s:1:"B";a:4:{i:0;s:2:"-1";i:1;s:1:"0";i:2;s:3:"634";i:3;s:3:"876";}}s:7:"emacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:7:"emacron";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:3:"-11";i:2;s:3:"457";i:3;s:3:"583";}}s:6:"gbreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"gbreve";s:1:"B";a:4:{i:0;s:1:"8";i:1;s:4:"-206";i:2;s:3:"487";i:3;s:3:"650";}}s:10:"onequarter";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"750";s:1:"N";s:10:"onequarter";s:1:"B";a:4:{i:0;s:2:"33";i:1;s:3:"-10";i:2;s:3:"736";i:3;s:3:"676";}}s:6:"Scaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"Scaron";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:3:"-18";i:2;s:3:"520";i:3;s:3:"873";}}s:12:"Scommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:12:"Scommaaccent";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:4:"-217";i:2;s:3:"508";i:3;s:3:"667";}}s:13:"Ohungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:13:"Ohungarumlaut";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:3:"-18";i:2;s:3:"699";i:3;s:3:"876";}}s:6:"degree";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"400";s:1:"N";s:6:"degree";s:1:"B";a:4:{i:0;s:3:"101";i:1;s:3:"390";i:2;s:3:"387";i:3;s:3:"676";}}s:6:"ograve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"ograve";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:3:"-11";i:2;s:3:"468";i:3;s:3:"664";}}s:6:"Ccaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Ccaron";s:1:"B";a:4:{i:0;s:2:"66";i:1;s:3:"-18";i:2;s:3:"689";i:3;s:3:"873";}}s:6:"ugrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"ugrave";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:3:"-11";i:2;s:3:"475";i:3;s:3:"664";}}s:7:"radical";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"453";s:1:"N";s:7:"radical";s:1:"B";a:4:{i:0;s:1:"2";i:1;s:3:"-60";i:2;s:3:"452";i:3;s:3:"768";}}s:6:"Dcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Dcaron";s:1:"B";a:4:{i:0;s:2:"-8";i:1;s:1:"0";i:2;s:3:"700";i:3;s:3:"873";}}s:12:"rcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:12:"rcommaaccent";s:1:"B";a:4:{i:0;s:2:"-3";i:1;s:4:"-217";i:2;s:3:"412";i:3;s:3:"441";}}s:6:"Ntilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Ntilde";s:1:"B";a:4:{i:0;s:3:"-20";i:1;s:3:"-15";i:2;s:3:"727";i:3;s:3:"836";}}s:6:"otilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"otilde";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:3:"-11";i:2;s:3:"496";i:3;s:3:"624";}}s:12:"Rcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:12:"Rcommaaccent";s:1:"B";a:4:{i:0;s:3:"-13";i:1;s:4:"-187";i:2;s:3:"588";i:3;s:3:"653";}}s:12:"Lcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:12:"Lcommaaccent";s:1:"B";a:4:{i:0;s:2:"-8";i:1;s:4:"-217";i:2;s:3:"559";i:3;s:3:"653";}}s:6:"Atilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"Atilde";s:1:"B";a:4:{i:0;s:3:"-51";i:1;s:1:"0";i:2;s:3:"566";i:3;s:3:"836";}}s:7:"Aogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:7:"Aogonek";s:1:"B";a:4:{i:0;s:3:"-51";i:1;s:4:"-169";i:2;s:3:"566";i:3;s:3:"668";}}s:5:"Aring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:5:"Aring";s:1:"B";a:4:{i:0;s:3:"-51";i:1;s:1:"0";i:2;s:3:"564";i:3;s:3:"883";}}s:6:"Otilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Otilde";s:1:"B";a:4:{i:0;s:2:"60";i:1;s:3:"-18";i:2;s:3:"699";i:3;s:3:"836";}}s:10:"zdotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:10:"zdotaccent";s:1:"B";a:4:{i:0;s:2:"-2";i:1;s:3:"-81";i:2;s:3:"380";i:3;s:3:"606";}}s:6:"Ecaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"Ecaron";s:1:"B";a:4:{i:0;s:2:"-1";i:1;s:1:"0";i:2;s:3:"634";i:3;s:3:"873";}}s:7:"Iogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"333";s:1:"N";s:7:"Iogonek";s:1:"B";a:4:{i:0;s:2:"-8";i:1;s:4:"-169";i:2;s:3:"384";i:3;s:3:"653";}}s:12:"kcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:12:"kcommaaccent";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:4:"-187";i:2;s:3:"461";i:3;s:3:"683";}}s:5:"minus";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"675";s:1:"N";s:5:"minus";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:3:"220";i:2;s:3:"590";i:3;s:3:"286";}}s:11:"Icircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"333";s:1:"N";s:11:"Icircumflex";s:1:"B";a:4:{i:0;s:2:"-8";i:1;s:1:"0";i:2;s:3:"425";i:3;s:3:"873";}}s:6:"ncaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"ncaron";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:2:"-9";i:2;s:3:"510";i:3;s:3:"661";}}s:12:"tcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:12:"tcommaaccent";s:1:"B";a:4:{i:0;s:1:"2";i:1;s:4:"-217";i:2;s:3:"296";i:3;s:3:"546";}}s:10:"logicalnot";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"675";s:1:"N";s:10:"logicalnot";s:1:"B";a:4:{i:0;s:2:"86";i:1;s:3:"108";i:2;s:3:"590";i:3;s:3:"386";}}s:9:"odieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:9:"odieresis";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:3:"-11";i:2;s:3:"489";i:3;s:3:"606";}}s:9:"udieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:9:"udieresis";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:3:"-11";i:2;s:3:"479";i:3;s:3:"606";}}s:8:"notequal";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"549";s:1:"N";s:8:"notequal";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:3:"-29";i:2;s:3:"537";i:3;s:3:"541";}}s:12:"gcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:12:"gcommaaccent";s:1:"B";a:4:{i:0;s:1:"8";i:1;s:4:"-206";i:2;s:3:"472";i:3;s:3:"706";}}s:3:"eth";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:3:"eth";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:3:"-11";i:2;s:3:"482";i:3;s:3:"683";}}s:6:"zcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:6:"zcaron";s:1:"B";a:4:{i:0;s:2:"-2";i:1;s:3:"-81";i:2;s:3:"434";i:3;s:3:"661";}}s:12:"ncommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:12:"ncommaaccent";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:4:"-187";i:2;s:3:"474";i:3;s:3:"441";}}s:11:"onesuperior";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"300";s:1:"N";s:11:"onesuperior";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:3:"271";i:2;s:3:"284";i:3;s:3:"676";}}s:7:"imacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:7:"imacron";s:1:"B";a:4:{i:0;s:2:"46";i:1;s:3:"-11";i:2;s:3:"311";i:3;s:3:"583";}}s:4:"Euro";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:4:"Euro";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:1:"0";i:3;s:1:"0";}}}s:3:"KPX";a:117:{s:1:"A";a:49:{s:1:"C";s:3:"-30";s:6:"Cacute";s:3:"-30";s:6:"Ccaron";s:3:"-30";s:8:"Ccedilla";s:3:"-30";s:1:"G";s:3:"-35";s:6:"Gbreve";s:3:"-35";s:12:"Gcommaaccent";s:3:"-35";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"Q";s:3:"-40";s:1:"T";s:3:"-37";s:6:"Tcaron";s:3:"-37";s:12:"Tcommaaccent";s:3:"-37";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:4:"-105";s:1:"W";s:3:"-95";s:1:"Y";s:3:"-55";s:6:"Yacute";s:3:"-55";s:9:"Ydieresis";s:3:"-55";s:10:"quoteright";s:3:"-37";s:1:"u";s:3:"-20";s:6:"uacute";s:3:"-20";s:11:"ucircumflex";s:3:"-20";s:9:"udieresis";s:3:"-20";s:6:"ugrave";s:3:"-20";s:13:"uhungarumlaut";s:3:"-20";s:7:"umacron";s:3:"-20";s:7:"uogonek";s:3:"-20";s:5:"uring";s:3:"-20";s:1:"v";s:3:"-55";s:1:"w";s:3:"-55";s:1:"y";s:3:"-55";s:6:"yacute";s:3:"-55";s:9:"ydieresis";s:3:"-55";}s:6:"Aacute";a:49:{s:1:"C";s:3:"-30";s:6:"Cacute";s:3:"-30";s:6:"Ccaron";s:3:"-30";s:8:"Ccedilla";s:3:"-30";s:1:"G";s:3:"-35";s:6:"Gbreve";s:3:"-35";s:12:"Gcommaaccent";s:3:"-35";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"Q";s:3:"-40";s:1:"T";s:3:"-37";s:6:"Tcaron";s:3:"-37";s:12:"Tcommaaccent";s:3:"-37";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:4:"-105";s:1:"W";s:3:"-95";s:1:"Y";s:3:"-55";s:6:"Yacute";s:3:"-55";s:9:"Ydieresis";s:3:"-55";s:10:"quoteright";s:3:"-37";s:1:"u";s:3:"-20";s:6:"uacute";s:3:"-20";s:11:"ucircumflex";s:3:"-20";s:9:"udieresis";s:3:"-20";s:6:"ugrave";s:3:"-20";s:13:"uhungarumlaut";s:3:"-20";s:7:"umacron";s:3:"-20";s:7:"uogonek";s:3:"-20";s:5:"uring";s:3:"-20";s:1:"v";s:3:"-55";s:1:"w";s:3:"-55";s:1:"y";s:3:"-55";s:6:"yacute";s:3:"-55";s:9:"ydieresis";s:3:"-55";}s:6:"Abreve";a:49:{s:1:"C";s:3:"-30";s:6:"Cacute";s:3:"-30";s:6:"Ccaron";s:3:"-30";s:8:"Ccedilla";s:3:"-30";s:1:"G";s:3:"-35";s:6:"Gbreve";s:3:"-35";s:12:"Gcommaaccent";s:3:"-35";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"Q";s:3:"-40";s:1:"T";s:3:"-37";s:6:"Tcaron";s:3:"-37";s:12:"Tcommaaccent";s:3:"-37";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:4:"-105";s:1:"W";s:3:"-95";s:1:"Y";s:3:"-55";s:6:"Yacute";s:3:"-55";s:9:"Ydieresis";s:3:"-55";s:10:"quoteright";s:3:"-37";s:1:"u";s:3:"-20";s:6:"uacute";s:3:"-20";s:11:"ucircumflex";s:3:"-20";s:9:"udieresis";s:3:"-20";s:6:"ugrave";s:3:"-20";s:13:"uhungarumlaut";s:3:"-20";s:7:"umacron";s:3:"-20";s:7:"uogonek";s:3:"-20";s:5:"uring";s:3:"-20";s:1:"v";s:3:"-55";s:1:"w";s:3:"-55";s:1:"y";s:3:"-55";s:6:"yacute";s:3:"-55";s:9:"ydieresis";s:3:"-55";}s:11:"Acircumflex";a:49:{s:1:"C";s:3:"-30";s:6:"Cacute";s:3:"-30";s:6:"Ccaron";s:3:"-30";s:8:"Ccedilla";s:3:"-30";s:1:"G";s:3:"-35";s:6:"Gbreve";s:3:"-35";s:12:"Gcommaaccent";s:3:"-35";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"Q";s:3:"-40";s:1:"T";s:3:"-37";s:6:"Tcaron";s:3:"-37";s:12:"Tcommaaccent";s:3:"-37";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:4:"-105";s:1:"W";s:3:"-95";s:1:"Y";s:3:"-55";s:6:"Yacute";s:3:"-55";s:9:"Ydieresis";s:3:"-55";s:10:"quoteright";s:3:"-37";s:1:"u";s:3:"-20";s:6:"uacute";s:3:"-20";s:11:"ucircumflex";s:3:"-20";s:9:"udieresis";s:3:"-20";s:6:"ugrave";s:3:"-20";s:13:"uhungarumlaut";s:3:"-20";s:7:"umacron";s:3:"-20";s:7:"uogonek";s:3:"-20";s:5:"uring";s:3:"-20";s:1:"v";s:3:"-55";s:1:"w";s:3:"-55";s:1:"y";s:3:"-55";s:6:"yacute";s:3:"-55";s:9:"ydieresis";s:3:"-55";}s:9:"Adieresis";a:49:{s:1:"C";s:3:"-30";s:6:"Cacute";s:3:"-30";s:6:"Ccaron";s:3:"-30";s:8:"Ccedilla";s:3:"-30";s:1:"G";s:3:"-35";s:6:"Gbreve";s:3:"-35";s:12:"Gcommaaccent";s:3:"-35";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"Q";s:3:"-40";s:1:"T";s:3:"-37";s:6:"Tcaron";s:3:"-37";s:12:"Tcommaaccent";s:3:"-37";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:4:"-105";s:1:"W";s:3:"-95";s:1:"Y";s:3:"-55";s:6:"Yacute";s:3:"-55";s:9:"Ydieresis";s:3:"-55";s:10:"quoteright";s:3:"-37";s:1:"u";s:3:"-20";s:6:"uacute";s:3:"-20";s:11:"ucircumflex";s:3:"-20";s:9:"udieresis";s:3:"-20";s:6:"ugrave";s:3:"-20";s:13:"uhungarumlaut";s:3:"-20";s:7:"umacron";s:3:"-20";s:7:"uogonek";s:3:"-20";s:5:"uring";s:3:"-20";s:1:"v";s:3:"-55";s:1:"w";s:3:"-55";s:1:"y";s:3:"-55";s:6:"yacute";s:3:"-55";s:9:"ydieresis";s:3:"-55";}s:6:"Agrave";a:49:{s:1:"C";s:3:"-30";s:6:"Cacute";s:3:"-30";s:6:"Ccaron";s:3:"-30";s:8:"Ccedilla";s:3:"-30";s:1:"G";s:3:"-35";s:6:"Gbreve";s:3:"-35";s:12:"Gcommaaccent";s:3:"-35";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"Q";s:3:"-40";s:1:"T";s:3:"-37";s:6:"Tcaron";s:3:"-37";s:12:"Tcommaaccent";s:3:"-37";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:4:"-105";s:1:"W";s:3:"-95";s:1:"Y";s:3:"-55";s:6:"Yacute";s:3:"-55";s:9:"Ydieresis";s:3:"-55";s:10:"quoteright";s:3:"-37";s:1:"u";s:3:"-20";s:6:"uacute";s:3:"-20";s:11:"ucircumflex";s:3:"-20";s:9:"udieresis";s:3:"-20";s:6:"ugrave";s:3:"-20";s:13:"uhungarumlaut";s:3:"-20";s:7:"umacron";s:3:"-20";s:7:"uogonek";s:3:"-20";s:5:"uring";s:3:"-20";s:1:"v";s:3:"-55";s:1:"w";s:3:"-55";s:1:"y";s:3:"-55";s:6:"yacute";s:3:"-55";s:9:"ydieresis";s:3:"-55";}s:7:"Amacron";a:49:{s:1:"C";s:3:"-30";s:6:"Cacute";s:3:"-30";s:6:"Ccaron";s:3:"-30";s:8:"Ccedilla";s:3:"-30";s:1:"G";s:3:"-35";s:6:"Gbreve";s:3:"-35";s:12:"Gcommaaccent";s:3:"-35";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"Q";s:3:"-40";s:1:"T";s:3:"-37";s:6:"Tcaron";s:3:"-37";s:12:"Tcommaaccent";s:3:"-37";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:4:"-105";s:1:"W";s:3:"-95";s:1:"Y";s:3:"-55";s:6:"Yacute";s:3:"-55";s:9:"Ydieresis";s:3:"-55";s:10:"quoteright";s:3:"-37";s:1:"u";s:3:"-20";s:6:"uacute";s:3:"-20";s:11:"ucircumflex";s:3:"-20";s:9:"udieresis";s:3:"-20";s:6:"ugrave";s:3:"-20";s:13:"uhungarumlaut";s:3:"-20";s:7:"umacron";s:3:"-20";s:7:"uogonek";s:3:"-20";s:5:"uring";s:3:"-20";s:1:"v";s:3:"-55";s:1:"w";s:3:"-55";s:1:"y";s:3:"-55";s:6:"yacute";s:3:"-55";s:9:"ydieresis";s:3:"-55";}s:7:"Aogonek";a:49:{s:1:"C";s:3:"-30";s:6:"Cacute";s:3:"-30";s:6:"Ccaron";s:3:"-30";s:8:"Ccedilla";s:3:"-30";s:1:"G";s:3:"-35";s:6:"Gbreve";s:3:"-35";s:12:"Gcommaaccent";s:3:"-35";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"Q";s:3:"-40";s:1:"T";s:3:"-37";s:6:"Tcaron";s:3:"-37";s:12:"Tcommaaccent";s:3:"-37";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:4:"-105";s:1:"W";s:3:"-95";s:1:"Y";s:3:"-55";s:6:"Yacute";s:3:"-55";s:9:"Ydieresis";s:3:"-55";s:10:"quoteright";s:3:"-37";s:1:"u";s:3:"-20";s:6:"uacute";s:3:"-20";s:11:"ucircumflex";s:3:"-20";s:9:"udieresis";s:3:"-20";s:6:"ugrave";s:3:"-20";s:13:"uhungarumlaut";s:3:"-20";s:7:"umacron";s:3:"-20";s:7:"uogonek";s:3:"-20";s:5:"uring";s:3:"-20";s:1:"v";s:3:"-55";s:1:"w";s:3:"-55";s:1:"y";s:3:"-55";s:6:"yacute";s:3:"-55";s:9:"ydieresis";s:3:"-55";}s:5:"Aring";a:49:{s:1:"C";s:3:"-30";s:6:"Cacute";s:3:"-30";s:6:"Ccaron";s:3:"-30";s:8:"Ccedilla";s:3:"-30";s:1:"G";s:3:"-35";s:6:"Gbreve";s:3:"-35";s:12:"Gcommaaccent";s:3:"-35";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"Q";s:3:"-40";s:1:"T";s:3:"-37";s:6:"Tcaron";s:3:"-37";s:12:"Tcommaaccent";s:3:"-37";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:4:"-105";s:1:"W";s:3:"-95";s:1:"Y";s:3:"-55";s:6:"Yacute";s:3:"-55";s:9:"Ydieresis";s:3:"-55";s:10:"quoteright";s:3:"-37";s:1:"u";s:3:"-20";s:6:"uacute";s:3:"-20";s:11:"ucircumflex";s:3:"-20";s:9:"udieresis";s:3:"-20";s:6:"ugrave";s:3:"-20";s:13:"uhungarumlaut";s:3:"-20";s:7:"umacron";s:3:"-20";s:7:"uogonek";s:3:"-20";s:5:"uring";s:3:"-20";s:1:"v";s:3:"-55";s:1:"w";s:3:"-55";s:1:"y";s:3:"-55";s:6:"yacute";s:3:"-55";s:9:"ydieresis";s:3:"-55";}s:6:"Atilde";a:49:{s:1:"C";s:3:"-30";s:6:"Cacute";s:3:"-30";s:6:"Ccaron";s:3:"-30";s:8:"Ccedilla";s:3:"-30";s:1:"G";s:3:"-35";s:6:"Gbreve";s:3:"-35";s:12:"Gcommaaccent";s:3:"-35";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"Q";s:3:"-40";s:1:"T";s:3:"-37";s:6:"Tcaron";s:3:"-37";s:12:"Tcommaaccent";s:3:"-37";s:1:"U";s:3:"-50";s:6:"Uacute";s:3:"-50";s:11:"Ucircumflex";s:3:"-50";s:9:"Udieresis";s:3:"-50";s:6:"Ugrave";s:3:"-50";s:13:"Uhungarumlaut";s:3:"-50";s:7:"Umacron";s:3:"-50";s:7:"Uogonek";s:3:"-50";s:5:"Uring";s:3:"-50";s:1:"V";s:4:"-105";s:1:"W";s:3:"-95";s:1:"Y";s:3:"-55";s:6:"Yacute";s:3:"-55";s:9:"Ydieresis";s:3:"-55";s:10:"quoteright";s:3:"-37";s:1:"u";s:3:"-20";s:6:"uacute";s:3:"-20";s:11:"ucircumflex";s:3:"-20";s:9:"udieresis";s:3:"-20";s:6:"ugrave";s:3:"-20";s:13:"uhungarumlaut";s:3:"-20";s:7:"umacron";s:3:"-20";s:7:"uogonek";s:3:"-20";s:5:"uring";s:3:"-20";s:1:"v";s:3:"-55";s:1:"w";s:3:"-55";s:1:"y";s:3:"-55";s:6:"yacute";s:3:"-55";s:9:"ydieresis";s:3:"-55";}s:1:"B";a:19:{s:1:"A";s:3:"-25";s:6:"Aacute";s:3:"-25";s:6:"Abreve";s:3:"-25";s:11:"Acircumflex";s:3:"-25";s:9:"Adieresis";s:3:"-25";s:6:"Agrave";s:3:"-25";s:7:"Amacron";s:3:"-25";s:7:"Aogonek";s:3:"-25";s:5:"Aring";s:3:"-25";s:6:"Atilde";s:3:"-25";s:1:"U";s:3:"-10";s:6:"Uacute";s:3:"-10";s:11:"Ucircumflex";s:3:"-10";s:9:"Udieresis";s:3:"-10";s:6:"Ugrave";s:3:"-10";s:13:"Uhungarumlaut";s:3:"-10";s:7:"Umacron";s:3:"-10";s:7:"Uogonek";s:3:"-10";s:5:"Uring";s:3:"-10";}s:1:"D";a:15:{s:1:"A";s:3:"-35";s:6:"Aacute";s:3:"-35";s:6:"Abreve";s:3:"-35";s:11:"Acircumflex";s:3:"-35";s:9:"Adieresis";s:3:"-35";s:6:"Agrave";s:3:"-35";s:7:"Amacron";s:3:"-35";s:7:"Aogonek";s:3:"-35";s:5:"Aring";s:3:"-35";s:6:"Atilde";s:3:"-35";s:1:"V";s:3:"-40";s:1:"W";s:3:"-40";s:1:"Y";s:3:"-40";s:6:"Yacute";s:3:"-40";s:9:"Ydieresis";s:3:"-40";}s:6:"Dcaron";a:15:{s:1:"A";s:3:"-35";s:6:"Aacute";s:3:"-35";s:6:"Abreve";s:3:"-35";s:11:"Acircumflex";s:3:"-35";s:9:"Adieresis";s:3:"-35";s:6:"Agrave";s:3:"-35";s:7:"Amacron";s:3:"-35";s:7:"Aogonek";s:3:"-35";s:5:"Aring";s:3:"-35";s:6:"Atilde";s:3:"-35";s:1:"V";s:3:"-40";s:1:"W";s:3:"-40";s:1:"Y";s:3:"-40";s:6:"Yacute";s:3:"-40";s:9:"Ydieresis";s:3:"-40";}s:6:"Dcroat";a:15:{s:1:"A";s:3:"-35";s:6:"Aacute";s:3:"-35";s:6:"Abreve";s:3:"-35";s:11:"Acircumflex";s:3:"-35";s:9:"Adieresis";s:3:"-35";s:6:"Agrave";s:3:"-35";s:7:"Amacron";s:3:"-35";s:7:"Aogonek";s:3:"-35";s:5:"Aring";s:3:"-35";s:6:"Atilde";s:3:"-35";s:1:"V";s:3:"-40";s:1:"W";s:3:"-40";s:1:"Y";s:3:"-40";s:6:"Yacute";s:3:"-40";s:9:"Ydieresis";s:3:"-40";}s:1:"F";a:51:{s:1:"A";s:4:"-115";s:6:"Aacute";s:4:"-115";s:6:"Abreve";s:4:"-115";s:11:"Acircumflex";s:4:"-115";s:9:"Adieresis";s:4:"-115";s:6:"Agrave";s:4:"-115";s:7:"Amacron";s:4:"-115";s:7:"Aogonek";s:4:"-115";s:5:"Aring";s:4:"-115";s:6:"Atilde";s:4:"-115";s:1:"a";s:3:"-75";s:6:"aacute";s:3:"-75";s:6:"abreve";s:3:"-75";s:11:"acircumflex";s:3:"-75";s:9:"adieresis";s:3:"-75";s:6:"agrave";s:3:"-75";s:7:"amacron";s:3:"-75";s:7:"aogonek";s:3:"-75";s:5:"aring";s:3:"-75";s:6:"atilde";s:3:"-75";s:5:"comma";s:4:"-135";s:1:"e";s:3:"-75";s:6:"eacute";s:3:"-75";s:6:"ecaron";s:3:"-75";s:11:"ecircumflex";s:3:"-75";s:9:"edieresis";s:3:"-75";s:10:"edotaccent";s:3:"-75";s:6:"egrave";s:3:"-75";s:7:"emacron";s:3:"-75";s:7:"eogonek";s:3:"-75";s:1:"i";s:3:"-45";s:6:"iacute";s:3:"-45";s:11:"icircumflex";s:3:"-45";s:9:"idieresis";s:3:"-45";s:6:"igrave";s:3:"-45";s:7:"imacron";s:3:"-45";s:7:"iogonek";s:3:"-45";s:1:"o";s:4:"-105";s:6:"oacute";s:4:"-105";s:11:"ocircumflex";s:4:"-105";s:9:"odieresis";s:4:"-105";s:6:"ograve";s:4:"-105";s:13:"ohungarumlaut";s:4:"-105";s:7:"omacron";s:4:"-105";s:6:"oslash";s:4:"-105";s:6:"otilde";s:4:"-105";s:6:"period";s:4:"-135";s:1:"r";s:3:"-55";s:6:"racute";s:3:"-55";s:6:"rcaron";s:3:"-55";s:12:"rcommaaccent";s:3:"-55";}s:1:"J";a:49:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:1:"a";s:3:"-35";s:6:"aacute";s:3:"-35";s:6:"abreve";s:3:"-35";s:11:"acircumflex";s:3:"-35";s:9:"adieresis";s:3:"-35";s:6:"agrave";s:3:"-35";s:7:"amacron";s:3:"-35";s:7:"aogonek";s:3:"-35";s:5:"aring";s:3:"-35";s:6:"atilde";s:3:"-35";s:5:"comma";s:3:"-25";s:1:"e";s:3:"-25";s:6:"eacute";s:3:"-25";s:6:"ecaron";s:3:"-25";s:11:"ecircumflex";s:3:"-25";s:9:"edieresis";s:3:"-25";s:10:"edotaccent";s:3:"-25";s:6:"egrave";s:3:"-25";s:7:"emacron";s:3:"-25";s:7:"eogonek";s:3:"-25";s:1:"o";s:3:"-25";s:6:"oacute";s:3:"-25";s:11:"ocircumflex";s:3:"-25";s:9:"odieresis";s:3:"-25";s:6:"ograve";s:3:"-25";s:13:"ohungarumlaut";s:3:"-25";s:7:"omacron";s:3:"-25";s:6:"oslash";s:3:"-25";s:6:"otilde";s:3:"-25";s:6:"period";s:3:"-25";s:1:"u";s:3:"-35";s:6:"uacute";s:3:"-35";s:11:"ucircumflex";s:3:"-35";s:9:"udieresis";s:3:"-35";s:6:"ugrave";s:3:"-35";s:13:"uhungarumlaut";s:3:"-35";s:7:"umacron";s:3:"-35";s:7:"uogonek";s:3:"-35";s:5:"uring";s:3:"-35";}s:1:"K";a:39:{s:1:"O";s:3:"-50";s:6:"Oacute";s:3:"-50";s:11:"Ocircumflex";s:3:"-50";s:9:"Odieresis";s:3:"-50";s:6:"Ograve";s:3:"-50";s:13:"Ohungarumlaut";s:3:"-50";s:7:"Omacron";s:3:"-50";s:6:"Oslash";s:3:"-50";s:6:"Otilde";s:3:"-50";s:1:"e";s:3:"-35";s:6:"eacute";s:3:"-35";s:6:"ecaron";s:3:"-35";s:11:"ecircumflex";s:3:"-35";s:9:"edieresis";s:3:"-35";s:10:"edotaccent";s:3:"-35";s:6:"egrave";s:3:"-35";s:7:"emacron";s:3:"-35";s:7:"eogonek";s:3:"-35";s:1:"o";s:3:"-40";s:6:"oacute";s:3:"-40";s:11:"ocircumflex";s:3:"-40";s:9:"odieresis";s:3:"-40";s:6:"ograve";s:3:"-40";s:13:"ohungarumlaut";s:3:"-40";s:7:"omacron";s:3:"-40";s:6:"oslash";s:3:"-40";s:6:"otilde";s:3:"-40";s:1:"u";s:3:"-40";s:6:"uacute";s:3:"-40";s:11:"ucircumflex";s:3:"-40";s:9:"udieresis";s:3:"-40";s:6:"ugrave";s:3:"-40";s:13:"uhungarumlaut";s:3:"-40";s:7:"umacron";s:3:"-40";s:7:"uogonek";s:3:"-40";s:5:"uring";s:3:"-40";s:1:"y";s:3:"-40";s:6:"yacute";s:3:"-40";s:9:"ydieresis";s:3:"-40";}s:12:"Kcommaaccent";a:39:{s:1:"O";s:3:"-50";s:6:"Oacute";s:3:"-50";s:11:"Ocircumflex";s:3:"-50";s:9:"Odieresis";s:3:"-50";s:6:"Ograve";s:3:"-50";s:13:"Ohungarumlaut";s:3:"-50";s:7:"Omacron";s:3:"-50";s:6:"Oslash";s:3:"-50";s:6:"Otilde";s:3:"-50";s:1:"e";s:3:"-35";s:6:"eacute";s:3:"-35";s:6:"ecaron";s:3:"-35";s:11:"ecircumflex";s:3:"-35";s:9:"edieresis";s:3:"-35";s:10:"edotaccent";s:3:"-35";s:6:"egrave";s:3:"-35";s:7:"emacron";s:3:"-35";s:7:"eogonek";s:3:"-35";s:1:"o";s:3:"-40";s:6:"oacute";s:3:"-40";s:11:"ocircumflex";s:3:"-40";s:9:"odieresis";s:3:"-40";s:6:"ograve";s:3:"-40";s:13:"ohungarumlaut";s:3:"-40";s:7:"omacron";s:3:"-40";s:6:"oslash";s:3:"-40";s:6:"otilde";s:3:"-40";s:1:"u";s:3:"-40";s:6:"uacute";s:3:"-40";s:11:"ucircumflex";s:3:"-40";s:9:"udieresis";s:3:"-40";s:6:"ugrave";s:3:"-40";s:13:"uhungarumlaut";s:3:"-40";s:7:"umacron";s:3:"-40";s:7:"uogonek";s:3:"-40";s:5:"uring";s:3:"-40";s:1:"y";s:3:"-40";s:6:"yacute";s:3:"-40";s:9:"ydieresis";s:3:"-40";}s:1:"L";a:12:{s:1:"T";s:3:"-20";s:6:"Tcaron";s:3:"-20";s:12:"Tcommaaccent";s:3:"-20";s:1:"V";s:3:"-55";s:1:"W";s:3:"-55";s:1:"Y";s:3:"-20";s:6:"Yacute";s:3:"-20";s:9:"Ydieresis";s:3:"-20";s:10:"quoteright";s:3:"-37";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:6:"Lacute";a:12:{s:1:"T";s:3:"-20";s:6:"Tcaron";s:3:"-20";s:12:"Tcommaaccent";s:3:"-20";s:1:"V";s:3:"-55";s:1:"W";s:3:"-55";s:1:"Y";s:3:"-20";s:6:"Yacute";s:3:"-20";s:9:"Ydieresis";s:3:"-20";s:10:"quoteright";s:3:"-37";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:12:"Lcommaaccent";a:12:{s:1:"T";s:3:"-20";s:6:"Tcaron";s:3:"-20";s:12:"Tcommaaccent";s:3:"-20";s:1:"V";s:3:"-55";s:1:"W";s:3:"-55";s:1:"Y";s:3:"-20";s:6:"Yacute";s:3:"-20";s:9:"Ydieresis";s:3:"-20";s:10:"quoteright";s:3:"-37";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:6:"Lslash";a:12:{s:1:"T";s:3:"-20";s:6:"Tcaron";s:3:"-20";s:12:"Tcommaaccent";s:3:"-20";s:1:"V";s:3:"-55";s:1:"W";s:3:"-55";s:1:"Y";s:3:"-20";s:6:"Yacute";s:3:"-20";s:9:"Ydieresis";s:3:"-20";s:10:"quoteright";s:3:"-37";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:1:"N";a:10:{s:1:"A";s:3:"-27";s:6:"Aacute";s:3:"-27";s:6:"Abreve";s:3:"-27";s:11:"Acircumflex";s:3:"-27";s:9:"Adieresis";s:3:"-27";s:6:"Agrave";s:3:"-27";s:7:"Amacron";s:3:"-27";s:7:"Aogonek";s:3:"-27";s:5:"Aring";s:3:"-27";s:6:"Atilde";s:3:"-27";}s:6:"Nacute";a:10:{s:1:"A";s:3:"-27";s:6:"Aacute";s:3:"-27";s:6:"Abreve";s:3:"-27";s:11:"Acircumflex";s:3:"-27";s:9:"Adieresis";s:3:"-27";s:6:"Agrave";s:3:"-27";s:7:"Amacron";s:3:"-27";s:7:"Aogonek";s:3:"-27";s:5:"Aring";s:3:"-27";s:6:"Atilde";s:3:"-27";}s:6:"Ncaron";a:10:{s:1:"A";s:3:"-27";s:6:"Aacute";s:3:"-27";s:6:"Abreve";s:3:"-27";s:11:"Acircumflex";s:3:"-27";s:9:"Adieresis";s:3:"-27";s:6:"Agrave";s:3:"-27";s:7:"Amacron";s:3:"-27";s:7:"Aogonek";s:3:"-27";s:5:"Aring";s:3:"-27";s:6:"Atilde";s:3:"-27";}s:12:"Ncommaaccent";a:10:{s:1:"A";s:3:"-27";s:6:"Aacute";s:3:"-27";s:6:"Abreve";s:3:"-27";s:11:"Acircumflex";s:3:"-27";s:9:"Adieresis";s:3:"-27";s:6:"Agrave";s:3:"-27";s:7:"Amacron";s:3:"-27";s:7:"Aogonek";s:3:"-27";s:5:"Aring";s:3:"-27";s:6:"Atilde";s:3:"-27";}s:6:"Ntilde";a:10:{s:1:"A";s:3:"-27";s:6:"Aacute";s:3:"-27";s:6:"Abreve";s:3:"-27";s:11:"Acircumflex";s:3:"-27";s:9:"Adieresis";s:3:"-27";s:6:"Agrave";s:3:"-27";s:7:"Amacron";s:3:"-27";s:7:"Aogonek";s:3:"-27";s:5:"Aring";s:3:"-27";s:6:"Atilde";s:3:"-27";}s:1:"O";a:19:{s:1:"A";s:3:"-55";s:6:"Aacute";s:3:"-55";s:6:"Abreve";s:3:"-55";s:11:"Acircumflex";s:3:"-55";s:9:"Adieresis";s:3:"-55";s:6:"Agrave";s:3:"-55";s:7:"Amacron";s:3:"-55";s:7:"Aogonek";s:3:"-55";s:5:"Aring";s:3:"-55";s:6:"Atilde";s:3:"-55";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:6:"Oacute";a:19:{s:1:"A";s:3:"-55";s:6:"Aacute";s:3:"-55";s:6:"Abreve";s:3:"-55";s:11:"Acircumflex";s:3:"-55";s:9:"Adieresis";s:3:"-55";s:6:"Agrave";s:3:"-55";s:7:"Amacron";s:3:"-55";s:7:"Aogonek";s:3:"-55";s:5:"Aring";s:3:"-55";s:6:"Atilde";s:3:"-55";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:11:"Ocircumflex";a:19:{s:1:"A";s:3:"-55";s:6:"Aacute";s:3:"-55";s:6:"Abreve";s:3:"-55";s:11:"Acircumflex";s:3:"-55";s:9:"Adieresis";s:3:"-55";s:6:"Agrave";s:3:"-55";s:7:"Amacron";s:3:"-55";s:7:"Aogonek";s:3:"-55";s:5:"Aring";s:3:"-55";s:6:"Atilde";s:3:"-55";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:9:"Odieresis";a:19:{s:1:"A";s:3:"-55";s:6:"Aacute";s:3:"-55";s:6:"Abreve";s:3:"-55";s:11:"Acircumflex";s:3:"-55";s:9:"Adieresis";s:3:"-55";s:6:"Agrave";s:3:"-55";s:7:"Amacron";s:3:"-55";s:7:"Aogonek";s:3:"-55";s:5:"Aring";s:3:"-55";s:6:"Atilde";s:3:"-55";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:6:"Ograve";a:19:{s:1:"A";s:3:"-55";s:6:"Aacute";s:3:"-55";s:6:"Abreve";s:3:"-55";s:11:"Acircumflex";s:3:"-55";s:9:"Adieresis";s:3:"-55";s:6:"Agrave";s:3:"-55";s:7:"Amacron";s:3:"-55";s:7:"Aogonek";s:3:"-55";s:5:"Aring";s:3:"-55";s:6:"Atilde";s:3:"-55";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:13:"Ohungarumlaut";a:19:{s:1:"A";s:3:"-55";s:6:"Aacute";s:3:"-55";s:6:"Abreve";s:3:"-55";s:11:"Acircumflex";s:3:"-55";s:9:"Adieresis";s:3:"-55";s:6:"Agrave";s:3:"-55";s:7:"Amacron";s:3:"-55";s:7:"Aogonek";s:3:"-55";s:5:"Aring";s:3:"-55";s:6:"Atilde";s:3:"-55";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:7:"Omacron";a:19:{s:1:"A";s:3:"-55";s:6:"Aacute";s:3:"-55";s:6:"Abreve";s:3:"-55";s:11:"Acircumflex";s:3:"-55";s:9:"Adieresis";s:3:"-55";s:6:"Agrave";s:3:"-55";s:7:"Amacron";s:3:"-55";s:7:"Aogonek";s:3:"-55";s:5:"Aring";s:3:"-55";s:6:"Atilde";s:3:"-55";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:6:"Oslash";a:19:{s:1:"A";s:3:"-55";s:6:"Aacute";s:3:"-55";s:6:"Abreve";s:3:"-55";s:11:"Acircumflex";s:3:"-55";s:9:"Adieresis";s:3:"-55";s:6:"Agrave";s:3:"-55";s:7:"Amacron";s:3:"-55";s:7:"Aogonek";s:3:"-55";s:5:"Aring";s:3:"-55";s:6:"Atilde";s:3:"-55";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:6:"Otilde";a:19:{s:1:"A";s:3:"-55";s:6:"Aacute";s:3:"-55";s:6:"Abreve";s:3:"-55";s:11:"Acircumflex";s:3:"-55";s:9:"Adieresis";s:3:"-55";s:6:"Agrave";s:3:"-55";s:7:"Amacron";s:3:"-55";s:7:"Aogonek";s:3:"-55";s:5:"Aring";s:3:"-55";s:6:"Atilde";s:3:"-55";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-50";s:1:"X";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:1:"P";a:40:{s:1:"A";s:3:"-90";s:6:"Aacute";s:3:"-90";s:6:"Abreve";s:3:"-90";s:11:"Acircumflex";s:3:"-90";s:9:"Adieresis";s:3:"-90";s:6:"Agrave";s:3:"-90";s:7:"Amacron";s:3:"-90";s:7:"Aogonek";s:3:"-90";s:5:"Aring";s:3:"-90";s:6:"Atilde";s:3:"-90";s:1:"a";s:3:"-80";s:6:"aacute";s:3:"-80";s:6:"abreve";s:3:"-80";s:11:"acircumflex";s:3:"-80";s:9:"adieresis";s:3:"-80";s:6:"agrave";s:3:"-80";s:7:"amacron";s:3:"-80";s:7:"aogonek";s:3:"-80";s:5:"aring";s:3:"-80";s:6:"atilde";s:3:"-80";s:5:"comma";s:4:"-135";s:1:"e";s:3:"-80";s:6:"eacute";s:3:"-80";s:6:"ecaron";s:3:"-80";s:11:"ecircumflex";s:3:"-80";s:9:"edieresis";s:3:"-80";s:10:"edotaccent";s:3:"-80";s:6:"egrave";s:3:"-80";s:7:"emacron";s:3:"-80";s:7:"eogonek";s:3:"-80";s:1:"o";s:3:"-80";s:6:"oacute";s:3:"-80";s:11:"ocircumflex";s:3:"-80";s:9:"odieresis";s:3:"-80";s:6:"ograve";s:3:"-80";s:13:"ohungarumlaut";s:3:"-80";s:7:"omacron";s:3:"-80";s:6:"oslash";s:3:"-80";s:6:"otilde";s:3:"-80";s:6:"period";s:4:"-135";}s:1:"Q";a:9:{s:1:"U";s:3:"-10";s:6:"Uacute";s:3:"-10";s:11:"Ucircumflex";s:3:"-10";s:9:"Udieresis";s:3:"-10";s:6:"Ugrave";s:3:"-10";s:13:"Uhungarumlaut";s:3:"-10";s:7:"Umacron";s:3:"-10";s:7:"Uogonek";s:3:"-10";s:5:"Uring";s:3:"-10";}s:1:"R";a:23:{s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"U";s:3:"-40";s:6:"Uacute";s:3:"-40";s:11:"Ucircumflex";s:3:"-40";s:9:"Udieresis";s:3:"-40";s:6:"Ugrave";s:3:"-40";s:13:"Uhungarumlaut";s:3:"-40";s:7:"Umacron";s:3:"-40";s:7:"Uogonek";s:3:"-40";s:5:"Uring";s:3:"-40";s:1:"V";s:3:"-18";s:1:"W";s:3:"-18";s:1:"Y";s:3:"-18";s:6:"Yacute";s:3:"-18";s:9:"Ydieresis";s:3:"-18";}s:6:"Racute";a:23:{s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"U";s:3:"-40";s:6:"Uacute";s:3:"-40";s:11:"Ucircumflex";s:3:"-40";s:9:"Udieresis";s:3:"-40";s:6:"Ugrave";s:3:"-40";s:13:"Uhungarumlaut";s:3:"-40";s:7:"Umacron";s:3:"-40";s:7:"Uogonek";s:3:"-40";s:5:"Uring";s:3:"-40";s:1:"V";s:3:"-18";s:1:"W";s:3:"-18";s:1:"Y";s:3:"-18";s:6:"Yacute";s:3:"-18";s:9:"Ydieresis";s:3:"-18";}s:6:"Rcaron";a:23:{s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"U";s:3:"-40";s:6:"Uacute";s:3:"-40";s:11:"Ucircumflex";s:3:"-40";s:9:"Udieresis";s:3:"-40";s:6:"Ugrave";s:3:"-40";s:13:"Uhungarumlaut";s:3:"-40";s:7:"Umacron";s:3:"-40";s:7:"Uogonek";s:3:"-40";s:5:"Uring";s:3:"-40";s:1:"V";s:3:"-18";s:1:"W";s:3:"-18";s:1:"Y";s:3:"-18";s:6:"Yacute";s:3:"-18";s:9:"Ydieresis";s:3:"-18";}s:12:"Rcommaaccent";a:23:{s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"U";s:3:"-40";s:6:"Uacute";s:3:"-40";s:11:"Ucircumflex";s:3:"-40";s:9:"Udieresis";s:3:"-40";s:6:"Ugrave";s:3:"-40";s:13:"Uhungarumlaut";s:3:"-40";s:7:"Umacron";s:3:"-40";s:7:"Uogonek";s:3:"-40";s:5:"Uring";s:3:"-40";s:1:"V";s:3:"-18";s:1:"W";s:3:"-18";s:1:"Y";s:3:"-18";s:6:"Yacute";s:3:"-18";s:9:"Ydieresis";s:3:"-18";}s:1:"T";a:72:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:1:"O";s:3:"-18";s:6:"Oacute";s:3:"-18";s:11:"Ocircumflex";s:3:"-18";s:9:"Odieresis";s:3:"-18";s:6:"Ograve";s:3:"-18";s:13:"Ohungarumlaut";s:3:"-18";s:7:"Omacron";s:3:"-18";s:6:"Oslash";s:3:"-18";s:6:"Otilde";s:3:"-18";s:1:"a";s:3:"-92";s:6:"aacute";s:3:"-92";s:6:"abreve";s:3:"-92";s:11:"acircumflex";s:3:"-92";s:9:"adieresis";s:3:"-92";s:6:"agrave";s:3:"-92";s:7:"amacron";s:3:"-92";s:7:"aogonek";s:3:"-92";s:5:"aring";s:3:"-92";s:6:"atilde";s:3:"-92";s:5:"colon";s:3:"-55";s:5:"comma";s:3:"-74";s:1:"e";s:3:"-92";s:6:"eacute";s:3:"-92";s:6:"ecaron";s:3:"-92";s:11:"ecircumflex";s:3:"-52";s:9:"edieresis";s:3:"-52";s:10:"edotaccent";s:3:"-92";s:6:"egrave";s:3:"-52";s:7:"emacron";s:3:"-52";s:7:"eogonek";s:3:"-92";s:6:"hyphen";s:3:"-74";s:1:"i";s:3:"-55";s:6:"iacute";s:3:"-55";s:7:"iogonek";s:3:"-55";s:1:"o";s:3:"-92";s:6:"oacute";s:3:"-92";s:11:"ocircumflex";s:3:"-92";s:9:"odieresis";s:3:"-92";s:6:"ograve";s:3:"-92";s:13:"ohungarumlaut";s:3:"-92";s:7:"omacron";s:3:"-92";s:6:"oslash";s:3:"-92";s:6:"otilde";s:3:"-92";s:6:"period";s:3:"-74";s:1:"r";s:3:"-55";s:6:"racute";s:3:"-55";s:6:"rcaron";s:3:"-55";s:12:"rcommaaccent";s:3:"-55";s:9:"semicolon";s:3:"-65";s:1:"u";s:3:"-55";s:6:"uacute";s:3:"-55";s:11:"ucircumflex";s:3:"-55";s:9:"udieresis";s:3:"-55";s:6:"ugrave";s:3:"-55";s:13:"uhungarumlaut";s:3:"-55";s:7:"umacron";s:3:"-55";s:7:"uogonek";s:3:"-55";s:5:"uring";s:3:"-55";s:1:"w";s:3:"-74";s:1:"y";s:3:"-74";s:6:"yacute";s:3:"-74";s:9:"ydieresis";s:3:"-34";}s:6:"Tcaron";a:72:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:1:"O";s:3:"-18";s:6:"Oacute";s:3:"-18";s:11:"Ocircumflex";s:3:"-18";s:9:"Odieresis";s:3:"-18";s:6:"Ograve";s:3:"-18";s:13:"Ohungarumlaut";s:3:"-18";s:7:"Omacron";s:3:"-18";s:6:"Oslash";s:3:"-18";s:6:"Otilde";s:3:"-18";s:1:"a";s:3:"-92";s:6:"aacute";s:3:"-92";s:6:"abreve";s:3:"-92";s:11:"acircumflex";s:3:"-92";s:9:"adieresis";s:3:"-92";s:6:"agrave";s:3:"-92";s:7:"amacron";s:3:"-92";s:7:"aogonek";s:3:"-92";s:5:"aring";s:3:"-92";s:6:"atilde";s:3:"-92";s:5:"colon";s:3:"-55";s:5:"comma";s:3:"-74";s:1:"e";s:3:"-92";s:6:"eacute";s:3:"-92";s:6:"ecaron";s:3:"-92";s:11:"ecircumflex";s:3:"-52";s:9:"edieresis";s:3:"-52";s:10:"edotaccent";s:3:"-92";s:6:"egrave";s:3:"-52";s:7:"emacron";s:3:"-52";s:7:"eogonek";s:3:"-92";s:6:"hyphen";s:3:"-74";s:1:"i";s:3:"-55";s:6:"iacute";s:3:"-55";s:7:"iogonek";s:3:"-55";s:1:"o";s:3:"-92";s:6:"oacute";s:3:"-92";s:11:"ocircumflex";s:3:"-92";s:9:"odieresis";s:3:"-92";s:6:"ograve";s:3:"-92";s:13:"ohungarumlaut";s:3:"-92";s:7:"omacron";s:3:"-92";s:6:"oslash";s:3:"-92";s:6:"otilde";s:3:"-92";s:6:"period";s:3:"-74";s:1:"r";s:3:"-55";s:6:"racute";s:3:"-55";s:6:"rcaron";s:3:"-55";s:12:"rcommaaccent";s:3:"-55";s:9:"semicolon";s:3:"-65";s:1:"u";s:3:"-55";s:6:"uacute";s:3:"-55";s:11:"ucircumflex";s:3:"-55";s:9:"udieresis";s:3:"-55";s:6:"ugrave";s:3:"-55";s:13:"uhungarumlaut";s:3:"-55";s:7:"umacron";s:3:"-55";s:7:"uogonek";s:3:"-55";s:5:"uring";s:3:"-55";s:1:"w";s:3:"-74";s:1:"y";s:3:"-74";s:6:"yacute";s:3:"-74";s:9:"ydieresis";s:3:"-34";}s:12:"Tcommaaccent";a:72:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:1:"O";s:3:"-18";s:6:"Oacute";s:3:"-18";s:11:"Ocircumflex";s:3:"-18";s:9:"Odieresis";s:3:"-18";s:6:"Ograve";s:3:"-18";s:13:"Ohungarumlaut";s:3:"-18";s:7:"Omacron";s:3:"-18";s:6:"Oslash";s:3:"-18";s:6:"Otilde";s:3:"-18";s:1:"a";s:3:"-92";s:6:"aacute";s:3:"-92";s:6:"abreve";s:3:"-92";s:11:"acircumflex";s:3:"-92";s:9:"adieresis";s:3:"-92";s:6:"agrave";s:3:"-92";s:7:"amacron";s:3:"-92";s:7:"aogonek";s:3:"-92";s:5:"aring";s:3:"-92";s:6:"atilde";s:3:"-92";s:5:"colon";s:3:"-55";s:5:"comma";s:3:"-74";s:1:"e";s:3:"-92";s:6:"eacute";s:3:"-92";s:6:"ecaron";s:3:"-92";s:11:"ecircumflex";s:3:"-52";s:9:"edieresis";s:3:"-52";s:10:"edotaccent";s:3:"-92";s:6:"egrave";s:3:"-52";s:7:"emacron";s:3:"-52";s:7:"eogonek";s:3:"-92";s:6:"hyphen";s:3:"-74";s:1:"i";s:3:"-55";s:6:"iacute";s:3:"-55";s:7:"iogonek";s:3:"-55";s:1:"o";s:3:"-92";s:6:"oacute";s:3:"-92";s:11:"ocircumflex";s:3:"-92";s:9:"odieresis";s:3:"-92";s:6:"ograve";s:3:"-92";s:13:"ohungarumlaut";s:3:"-92";s:7:"omacron";s:3:"-92";s:6:"oslash";s:3:"-92";s:6:"otilde";s:3:"-92";s:6:"period";s:3:"-74";s:1:"r";s:3:"-55";s:6:"racute";s:3:"-55";s:6:"rcaron";s:3:"-55";s:12:"rcommaaccent";s:3:"-55";s:9:"semicolon";s:3:"-65";s:1:"u";s:3:"-55";s:6:"uacute";s:3:"-55";s:11:"ucircumflex";s:3:"-55";s:9:"udieresis";s:3:"-55";s:6:"ugrave";s:3:"-55";s:13:"uhungarumlaut";s:3:"-55";s:7:"umacron";s:3:"-55";s:7:"uogonek";s:3:"-55";s:5:"uring";s:3:"-55";s:1:"w";s:3:"-74";s:1:"y";s:3:"-74";s:6:"yacute";s:3:"-74";s:9:"ydieresis";s:3:"-34";}s:1:"U";a:12:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:5:"comma";s:3:"-25";s:6:"period";s:3:"-25";}s:6:"Uacute";a:12:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:5:"comma";s:3:"-25";s:6:"period";s:3:"-25";}s:11:"Ucircumflex";a:12:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:5:"comma";s:3:"-25";s:6:"period";s:3:"-25";}s:9:"Udieresis";a:12:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:5:"comma";s:3:"-25";s:6:"period";s:3:"-25";}s:6:"Ugrave";a:12:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:5:"comma";s:3:"-25";s:6:"period";s:3:"-25";}s:13:"Uhungarumlaut";a:12:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:5:"comma";s:3:"-25";s:6:"period";s:3:"-25";}s:7:"Umacron";a:12:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:5:"comma";s:3:"-25";s:6:"period";s:3:"-25";}s:7:"Uogonek";a:12:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:5:"comma";s:3:"-25";s:6:"period";s:3:"-25";}s:5:"Uring";a:12:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:5:"comma";s:3:"-25";s:6:"period";s:3:"-25";}s:1:"V";a:68:{s:1:"A";s:3:"-60";s:6:"Aacute";s:3:"-60";s:6:"Abreve";s:3:"-60";s:11:"Acircumflex";s:3:"-60";s:9:"Adieresis";s:3:"-60";s:6:"Agrave";s:3:"-60";s:7:"Amacron";s:3:"-60";s:7:"Aogonek";s:3:"-60";s:5:"Aring";s:3:"-60";s:6:"Atilde";s:3:"-60";s:1:"O";s:3:"-30";s:6:"Oacute";s:3:"-30";s:11:"Ocircumflex";s:3:"-30";s:9:"Odieresis";s:3:"-30";s:6:"Ograve";s:3:"-30";s:13:"Ohungarumlaut";s:3:"-30";s:7:"Omacron";s:3:"-30";s:6:"Oslash";s:3:"-30";s:6:"Otilde";s:3:"-30";s:1:"a";s:4:"-111";s:6:"aacute";s:4:"-111";s:6:"abreve";s:4:"-111";s:11:"acircumflex";s:4:"-111";s:9:"adieresis";s:4:"-111";s:6:"agrave";s:4:"-111";s:7:"amacron";s:4:"-111";s:7:"aogonek";s:4:"-111";s:5:"aring";s:4:"-111";s:6:"atilde";s:4:"-111";s:5:"colon";s:3:"-65";s:5:"comma";s:4:"-129";s:1:"e";s:4:"-111";s:6:"eacute";s:4:"-111";s:6:"ecaron";s:4:"-111";s:11:"ecircumflex";s:4:"-111";s:9:"edieresis";s:3:"-71";s:10:"edotaccent";s:4:"-111";s:6:"egrave";s:3:"-71";s:7:"emacron";s:3:"-71";s:7:"eogonek";s:4:"-111";s:6:"hyphen";s:3:"-55";s:1:"i";s:3:"-74";s:6:"iacute";s:3:"-74";s:11:"icircumflex";s:3:"-34";s:9:"idieresis";s:3:"-34";s:6:"igrave";s:3:"-34";s:7:"imacron";s:3:"-34";s:7:"iogonek";s:3:"-74";s:1:"o";s:4:"-111";s:6:"oacute";s:4:"-111";s:11:"ocircumflex";s:4:"-111";s:9:"odieresis";s:4:"-111";s:6:"ograve";s:4:"-111";s:13:"ohungarumlaut";s:4:"-111";s:7:"omacron";s:4:"-111";s:6:"oslash";s:4:"-111";s:6:"otilde";s:4:"-111";s:6:"period";s:4:"-129";s:9:"semicolon";s:3:"-74";s:1:"u";s:3:"-74";s:6:"uacute";s:3:"-74";s:11:"ucircumflex";s:3:"-74";s:9:"udieresis";s:3:"-74";s:6:"ugrave";s:3:"-74";s:13:"uhungarumlaut";s:3:"-74";s:7:"umacron";s:3:"-74";s:7:"uogonek";s:3:"-74";s:5:"uring";s:3:"-74";}s:1:"W";a:67:{s:1:"A";s:3:"-60";s:6:"Aacute";s:3:"-60";s:6:"Abreve";s:3:"-60";s:11:"Acircumflex";s:3:"-60";s:9:"Adieresis";s:3:"-60";s:6:"Agrave";s:3:"-60";s:7:"Amacron";s:3:"-60";s:7:"Aogonek";s:3:"-60";s:5:"Aring";s:3:"-60";s:6:"Atilde";s:3:"-60";s:1:"O";s:3:"-25";s:6:"Oacute";s:3:"-25";s:11:"Ocircumflex";s:3:"-25";s:9:"Odieresis";s:3:"-25";s:6:"Ograve";s:3:"-25";s:13:"Ohungarumlaut";s:3:"-25";s:7:"Omacron";s:3:"-25";s:6:"Oslash";s:3:"-25";s:6:"Otilde";s:3:"-25";s:1:"a";s:3:"-92";s:6:"aacute";s:3:"-92";s:6:"abreve";s:3:"-92";s:11:"acircumflex";s:3:"-92";s:9:"adieresis";s:3:"-92";s:6:"agrave";s:3:"-92";s:7:"amacron";s:3:"-92";s:7:"aogonek";s:3:"-92";s:5:"aring";s:3:"-92";s:6:"atilde";s:3:"-92";s:5:"colon";s:3:"-65";s:5:"comma";s:3:"-92";s:1:"e";s:3:"-92";s:6:"eacute";s:3:"-92";s:6:"ecaron";s:3:"-92";s:11:"ecircumflex";s:3:"-92";s:9:"edieresis";s:3:"-52";s:10:"edotaccent";s:3:"-92";s:6:"egrave";s:3:"-52";s:7:"emacron";s:3:"-52";s:7:"eogonek";s:3:"-92";s:6:"hyphen";s:3:"-37";s:1:"i";s:3:"-55";s:6:"iacute";s:3:"-55";s:7:"iogonek";s:3:"-55";s:1:"o";s:3:"-92";s:6:"oacute";s:3:"-92";s:11:"ocircumflex";s:3:"-92";s:9:"odieresis";s:3:"-92";s:6:"ograve";s:3:"-92";s:13:"ohungarumlaut";s:3:"-92";s:7:"omacron";s:3:"-92";s:6:"oslash";s:3:"-92";s:6:"otilde";s:3:"-92";s:6:"period";s:3:"-92";s:9:"semicolon";s:3:"-65";s:1:"u";s:3:"-55";s:6:"uacute";s:3:"-55";s:11:"ucircumflex";s:3:"-55";s:9:"udieresis";s:3:"-55";s:6:"ugrave";s:3:"-55";s:13:"uhungarumlaut";s:3:"-55";s:7:"umacron";s:3:"-55";s:7:"uogonek";s:3:"-55";s:5:"uring";s:3:"-55";s:1:"y";s:3:"-70";s:6:"yacute";s:3:"-70";s:9:"ydieresis";s:3:"-70";}s:1:"Y";a:68:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:1:"O";s:3:"-15";s:6:"Oacute";s:3:"-15";s:11:"Ocircumflex";s:3:"-15";s:9:"Odieresis";s:3:"-15";s:6:"Ograve";s:3:"-15";s:13:"Ohungarumlaut";s:3:"-15";s:7:"Omacron";s:3:"-15";s:6:"Oslash";s:3:"-15";s:6:"Otilde";s:3:"-15";s:1:"a";s:3:"-92";s:6:"aacute";s:3:"-92";s:6:"abreve";s:3:"-92";s:11:"acircumflex";s:3:"-92";s:9:"adieresis";s:3:"-92";s:6:"agrave";s:3:"-92";s:7:"amacron";s:3:"-92";s:7:"aogonek";s:3:"-92";s:5:"aring";s:3:"-92";s:6:"atilde";s:3:"-92";s:5:"colon";s:3:"-65";s:5:"comma";s:3:"-92";s:1:"e";s:3:"-92";s:6:"eacute";s:3:"-92";s:6:"ecaron";s:3:"-92";s:11:"ecircumflex";s:3:"-92";s:9:"edieresis";s:3:"-52";s:10:"edotaccent";s:3:"-92";s:6:"egrave";s:3:"-52";s:7:"emacron";s:3:"-52";s:7:"eogonek";s:3:"-92";s:6:"hyphen";s:3:"-74";s:1:"i";s:3:"-74";s:6:"iacute";s:3:"-74";s:11:"icircumflex";s:3:"-34";s:9:"idieresis";s:3:"-34";s:6:"igrave";s:3:"-34";s:7:"imacron";s:3:"-34";s:7:"iogonek";s:3:"-74";s:1:"o";s:3:"-92";s:6:"oacute";s:3:"-92";s:11:"ocircumflex";s:3:"-92";s:9:"odieresis";s:3:"-92";s:6:"ograve";s:3:"-92";s:13:"ohungarumlaut";s:3:"-92";s:7:"omacron";s:3:"-92";s:6:"oslash";s:3:"-92";s:6:"otilde";s:3:"-92";s:6:"period";s:3:"-92";s:9:"semicolon";s:3:"-65";s:1:"u";s:3:"-92";s:6:"uacute";s:3:"-92";s:11:"ucircumflex";s:3:"-92";s:9:"udieresis";s:3:"-92";s:6:"ugrave";s:3:"-92";s:13:"uhungarumlaut";s:3:"-92";s:7:"umacron";s:3:"-92";s:7:"uogonek";s:3:"-92";s:5:"uring";s:3:"-92";}s:6:"Yacute";a:68:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:1:"O";s:3:"-15";s:6:"Oacute";s:3:"-15";s:11:"Ocircumflex";s:3:"-15";s:9:"Odieresis";s:3:"-15";s:6:"Ograve";s:3:"-15";s:13:"Ohungarumlaut";s:3:"-15";s:7:"Omacron";s:3:"-15";s:6:"Oslash";s:3:"-15";s:6:"Otilde";s:3:"-15";s:1:"a";s:3:"-92";s:6:"aacute";s:3:"-92";s:6:"abreve";s:3:"-92";s:11:"acircumflex";s:3:"-92";s:9:"adieresis";s:3:"-92";s:6:"agrave";s:3:"-92";s:7:"amacron";s:3:"-92";s:7:"aogonek";s:3:"-92";s:5:"aring";s:3:"-92";s:6:"atilde";s:3:"-92";s:5:"colon";s:3:"-65";s:5:"comma";s:3:"-92";s:1:"e";s:3:"-92";s:6:"eacute";s:3:"-92";s:6:"ecaron";s:3:"-92";s:11:"ecircumflex";s:3:"-92";s:9:"edieresis";s:3:"-52";s:10:"edotaccent";s:3:"-92";s:6:"egrave";s:3:"-52";s:7:"emacron";s:3:"-52";s:7:"eogonek";s:3:"-92";s:6:"hyphen";s:3:"-74";s:1:"i";s:3:"-74";s:6:"iacute";s:3:"-74";s:11:"icircumflex";s:3:"-34";s:9:"idieresis";s:3:"-34";s:6:"igrave";s:3:"-34";s:7:"imacron";s:3:"-34";s:7:"iogonek";s:3:"-74";s:1:"o";s:3:"-92";s:6:"oacute";s:3:"-92";s:11:"ocircumflex";s:3:"-92";s:9:"odieresis";s:3:"-92";s:6:"ograve";s:3:"-92";s:13:"ohungarumlaut";s:3:"-92";s:7:"omacron";s:3:"-92";s:6:"oslash";s:3:"-92";s:6:"otilde";s:3:"-92";s:6:"period";s:3:"-92";s:9:"semicolon";s:3:"-65";s:1:"u";s:3:"-92";s:6:"uacute";s:3:"-92";s:11:"ucircumflex";s:3:"-92";s:9:"udieresis";s:3:"-92";s:6:"ugrave";s:3:"-92";s:13:"uhungarumlaut";s:3:"-92";s:7:"umacron";s:3:"-92";s:7:"uogonek";s:3:"-92";s:5:"uring";s:3:"-92";}s:9:"Ydieresis";a:68:{s:1:"A";s:3:"-50";s:6:"Aacute";s:3:"-50";s:6:"Abreve";s:3:"-50";s:11:"Acircumflex";s:3:"-50";s:9:"Adieresis";s:3:"-50";s:6:"Agrave";s:3:"-50";s:7:"Amacron";s:3:"-50";s:7:"Aogonek";s:3:"-50";s:5:"Aring";s:3:"-50";s:6:"Atilde";s:3:"-50";s:1:"O";s:3:"-15";s:6:"Oacute";s:3:"-15";s:11:"Ocircumflex";s:3:"-15";s:9:"Odieresis";s:3:"-15";s:6:"Ograve";s:3:"-15";s:13:"Ohungarumlaut";s:3:"-15";s:7:"Omacron";s:3:"-15";s:6:"Oslash";s:3:"-15";s:6:"Otilde";s:3:"-15";s:1:"a";s:3:"-92";s:6:"aacute";s:3:"-92";s:6:"abreve";s:3:"-92";s:11:"acircumflex";s:3:"-92";s:9:"adieresis";s:3:"-92";s:6:"agrave";s:3:"-92";s:7:"amacron";s:3:"-92";s:7:"aogonek";s:3:"-92";s:5:"aring";s:3:"-92";s:6:"atilde";s:3:"-92";s:5:"colon";s:3:"-65";s:5:"comma";s:3:"-92";s:1:"e";s:3:"-92";s:6:"eacute";s:3:"-92";s:6:"ecaron";s:3:"-92";s:11:"ecircumflex";s:3:"-92";s:9:"edieresis";s:3:"-52";s:10:"edotaccent";s:3:"-92";s:6:"egrave";s:3:"-52";s:7:"emacron";s:3:"-52";s:7:"eogonek";s:3:"-92";s:6:"hyphen";s:3:"-74";s:1:"i";s:3:"-74";s:6:"iacute";s:3:"-74";s:11:"icircumflex";s:3:"-34";s:9:"idieresis";s:3:"-34";s:6:"igrave";s:3:"-34";s:7:"imacron";s:3:"-34";s:7:"iogonek";s:3:"-74";s:1:"o";s:3:"-92";s:6:"oacute";s:3:"-92";s:11:"ocircumflex";s:3:"-92";s:9:"odieresis";s:3:"-92";s:6:"ograve";s:3:"-92";s:13:"ohungarumlaut";s:3:"-92";s:7:"omacron";s:3:"-92";s:6:"oslash";s:3:"-92";s:6:"otilde";s:3:"-92";s:6:"period";s:3:"-92";s:9:"semicolon";s:3:"-65";s:1:"u";s:3:"-92";s:6:"uacute";s:3:"-92";s:11:"ucircumflex";s:3:"-92";s:9:"udieresis";s:3:"-92";s:6:"ugrave";s:3:"-92";s:13:"uhungarumlaut";s:3:"-92";s:7:"umacron";s:3:"-92";s:7:"uogonek";s:3:"-92";s:5:"uring";s:3:"-92";}s:1:"a";a:3:{s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";}s:6:"aacute";a:3:{s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";}s:6:"abreve";a:3:{s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";}s:11:"acircumflex";a:3:{s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";}s:9:"adieresis";a:3:{s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";}s:6:"agrave";a:3:{s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";}s:7:"amacron";a:3:{s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";}s:7:"aogonek";a:3:{s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";}s:5:"aring";a:3:{s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";}s:6:"atilde";a:3:{s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";}s:1:"b";a:10:{s:6:"period";s:3:"-40";s:1:"u";s:3:"-20";s:6:"uacute";s:3:"-20";s:11:"ucircumflex";s:3:"-20";s:9:"udieresis";s:3:"-20";s:6:"ugrave";s:3:"-20";s:13:"uhungarumlaut";s:3:"-20";s:7:"umacron";s:3:"-20";s:7:"uogonek";s:3:"-20";s:5:"uring";s:3:"-20";}s:1:"c";a:3:{s:1:"h";s:3:"-15";s:1:"k";s:3:"-20";s:12:"kcommaaccent";s:3:"-20";}s:6:"cacute";a:3:{s:1:"h";s:3:"-15";s:1:"k";s:3:"-20";s:12:"kcommaaccent";s:3:"-20";}s:6:"ccaron";a:3:{s:1:"h";s:3:"-15";s:1:"k";s:3:"-20";s:12:"kcommaaccent";s:3:"-20";}s:8:"ccedilla";a:3:{s:1:"h";s:3:"-15";s:1:"k";s:3:"-20";s:12:"kcommaaccent";s:3:"-20";}s:5:"comma";a:2:{s:13:"quotedblright";s:4:"-140";s:10:"quoteright";s:4:"-140";}s:1:"e";a:11:{s:5:"comma";s:3:"-10";s:1:"g";s:3:"-40";s:6:"gbreve";s:3:"-40";s:12:"gcommaaccent";s:3:"-40";s:6:"period";s:3:"-15";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-20";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:6:"eacute";a:11:{s:5:"comma";s:3:"-10";s:1:"g";s:3:"-40";s:6:"gbreve";s:3:"-40";s:12:"gcommaaccent";s:3:"-40";s:6:"period";s:3:"-15";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-20";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:6:"ecaron";a:11:{s:5:"comma";s:3:"-10";s:1:"g";s:3:"-40";s:6:"gbreve";s:3:"-40";s:12:"gcommaaccent";s:3:"-40";s:6:"period";s:3:"-15";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-20";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:11:"ecircumflex";a:11:{s:5:"comma";s:3:"-10";s:1:"g";s:3:"-40";s:6:"gbreve";s:3:"-40";s:12:"gcommaaccent";s:3:"-40";s:6:"period";s:3:"-15";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-20";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:9:"edieresis";a:11:{s:5:"comma";s:3:"-10";s:1:"g";s:3:"-40";s:6:"gbreve";s:3:"-40";s:12:"gcommaaccent";s:3:"-40";s:6:"period";s:3:"-15";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-20";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:10:"edotaccent";a:11:{s:5:"comma";s:3:"-10";s:1:"g";s:3:"-40";s:6:"gbreve";s:3:"-40";s:12:"gcommaaccent";s:3:"-40";s:6:"period";s:3:"-15";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-20";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:6:"egrave";a:11:{s:5:"comma";s:3:"-10";s:1:"g";s:3:"-40";s:6:"gbreve";s:3:"-40";s:12:"gcommaaccent";s:3:"-40";s:6:"period";s:3:"-15";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-20";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:7:"emacron";a:11:{s:5:"comma";s:3:"-10";s:1:"g";s:3:"-40";s:6:"gbreve";s:3:"-40";s:12:"gcommaaccent";s:3:"-40";s:6:"period";s:3:"-15";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-20";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:7:"eogonek";a:11:{s:5:"comma";s:3:"-10";s:1:"g";s:3:"-40";s:6:"gbreve";s:3:"-40";s:12:"gcommaaccent";s:3:"-40";s:6:"period";s:3:"-15";s:1:"v";s:3:"-15";s:1:"w";s:3:"-15";s:1:"x";s:3:"-20";s:1:"y";s:3:"-30";s:6:"yacute";s:3:"-30";s:9:"ydieresis";s:3:"-30";}s:1:"f";a:7:{s:5:"comma";s:3:"-10";s:8:"dotlessi";s:3:"-60";s:1:"f";s:3:"-18";s:1:"i";s:3:"-20";s:7:"iogonek";s:3:"-20";s:6:"period";s:3:"-15";s:10:"quoteright";s:2:"92";}s:1:"g";a:14:{s:5:"comma";s:3:"-10";s:1:"e";s:3:"-10";s:6:"eacute";s:3:"-10";s:6:"ecaron";s:3:"-10";s:11:"ecircumflex";s:3:"-10";s:9:"edieresis";s:3:"-10";s:10:"edotaccent";s:3:"-10";s:6:"egrave";s:3:"-10";s:7:"emacron";s:3:"-10";s:7:"eogonek";s:3:"-10";s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";s:6:"period";s:3:"-15";}s:6:"gbreve";a:14:{s:5:"comma";s:3:"-10";s:1:"e";s:3:"-10";s:6:"eacute";s:3:"-10";s:6:"ecaron";s:3:"-10";s:11:"ecircumflex";s:3:"-10";s:9:"edieresis";s:3:"-10";s:10:"edotaccent";s:3:"-10";s:6:"egrave";s:3:"-10";s:7:"emacron";s:3:"-10";s:7:"eogonek";s:3:"-10";s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";s:6:"period";s:3:"-15";}s:12:"gcommaaccent";a:14:{s:5:"comma";s:3:"-10";s:1:"e";s:3:"-10";s:6:"eacute";s:3:"-10";s:6:"ecaron";s:3:"-10";s:11:"ecircumflex";s:3:"-10";s:9:"edieresis";s:3:"-10";s:10:"edotaccent";s:3:"-10";s:6:"egrave";s:3:"-10";s:7:"emacron";s:3:"-10";s:7:"eogonek";s:3:"-10";s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";s:6:"period";s:3:"-15";}s:1:"k";a:21:{s:1:"e";s:3:"-10";s:6:"eacute";s:3:"-10";s:6:"ecaron";s:3:"-10";s:11:"ecircumflex";s:3:"-10";s:9:"edieresis";s:3:"-10";s:10:"edotaccent";s:3:"-10";s:6:"egrave";s:3:"-10";s:7:"emacron";s:3:"-10";s:7:"eogonek";s:3:"-10";s:1:"o";s:3:"-10";s:6:"oacute";s:3:"-10";s:11:"ocircumflex";s:3:"-10";s:9:"odieresis";s:3:"-10";s:6:"ograve";s:3:"-10";s:13:"ohungarumlaut";s:3:"-10";s:7:"omacron";s:3:"-10";s:6:"oslash";s:3:"-10";s:6:"otilde";s:3:"-10";s:1:"y";s:3:"-10";s:6:"yacute";s:3:"-10";s:9:"ydieresis";s:3:"-10";}s:12:"kcommaaccent";a:21:{s:1:"e";s:3:"-10";s:6:"eacute";s:3:"-10";s:6:"ecaron";s:3:"-10";s:11:"ecircumflex";s:3:"-10";s:9:"edieresis";s:3:"-10";s:10:"edotaccent";s:3:"-10";s:6:"egrave";s:3:"-10";s:7:"emacron";s:3:"-10";s:7:"eogonek";s:3:"-10";s:1:"o";s:3:"-10";s:6:"oacute";s:3:"-10";s:11:"ocircumflex";s:3:"-10";s:9:"odieresis";s:3:"-10";s:6:"ograve";s:3:"-10";s:13:"ohungarumlaut";s:3:"-10";s:7:"omacron";s:3:"-10";s:6:"oslash";s:3:"-10";s:6:"otilde";s:3:"-10";s:1:"y";s:3:"-10";s:6:"yacute";s:3:"-10";s:9:"ydieresis";s:3:"-10";}s:1:"n";a:1:{s:1:"v";s:3:"-40";}s:6:"nacute";a:1:{s:1:"v";s:3:"-40";}s:6:"ncaron";a:1:{s:1:"v";s:3:"-40";}s:12:"ncommaaccent";a:1:{s:1:"v";s:3:"-40";}s:6:"ntilde";a:1:{s:1:"v";s:3:"-40";}s:1:"o";a:4:{s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";s:1:"v";s:3:"-10";}s:6:"oacute";a:4:{s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";s:1:"v";s:3:"-10";}s:11:"ocircumflex";a:4:{s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";s:1:"v";s:3:"-10";}s:9:"odieresis";a:4:{s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";s:1:"v";s:3:"-10";}s:6:"ograve";a:4:{s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";s:1:"v";s:3:"-10";}s:13:"ohungarumlaut";a:4:{s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";s:1:"v";s:3:"-10";}s:7:"omacron";a:4:{s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";s:1:"v";s:3:"-10";}s:6:"oslash";a:4:{s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";s:1:"v";s:3:"-10";}s:6:"otilde";a:4:{s:1:"g";s:3:"-10";s:6:"gbreve";s:3:"-10";s:12:"gcommaaccent";s:3:"-10";s:1:"v";s:3:"-10";}s:6:"period";a:2:{s:13:"quotedblright";s:4:"-140";s:10:"quoteright";s:4:"-140";}s:9:"quoteleft";a:1:{s:9:"quoteleft";s:4:"-111";}s:10:"quoteright";a:16:{s:1:"d";s:3:"-25";s:6:"dcroat";s:3:"-25";s:10:"quoteright";s:4:"-111";s:1:"r";s:3:"-25";s:6:"racute";s:3:"-25";s:6:"rcaron";s:3:"-25";s:12:"rcommaaccent";s:3:"-25";s:1:"s";s:3:"-40";s:6:"sacute";s:3:"-40";s:6:"scaron";s:3:"-40";s:8:"scedilla";s:3:"-40";s:12:"scommaaccent";s:3:"-40";s:5:"space";s:4:"-111";s:1:"t";s:3:"-30";s:12:"tcommaaccent";s:3:"-30";s:1:"v";s:3:"-10";}s:1:"r";a:46:{s:1:"a";s:3:"-15";s:6:"aacute";s:3:"-15";s:6:"abreve";s:3:"-15";s:11:"acircumflex";s:3:"-15";s:9:"adieresis";s:3:"-15";s:6:"agrave";s:3:"-15";s:7:"amacron";s:3:"-15";s:7:"aogonek";s:3:"-15";s:5:"aring";s:3:"-15";s:6:"atilde";s:3:"-15";s:1:"c";s:3:"-37";s:6:"cacute";s:3:"-37";s:6:"ccaron";s:3:"-37";s:8:"ccedilla";s:3:"-37";s:5:"comma";s:4:"-111";s:1:"d";s:3:"-37";s:6:"dcroat";s:3:"-37";s:1:"e";s:3:"-37";s:6:"eacute";s:3:"-37";s:6:"ecaron";s:3:"-37";s:11:"ecircumflex";s:3:"-37";s:9:"edieresis";s:3:"-37";s:10:"edotaccent";s:3:"-37";s:6:"egrave";s:3:"-37";s:7:"emacron";s:3:"-37";s:7:"eogonek";s:3:"-37";s:1:"g";s:3:"-37";s:6:"gbreve";s:3:"-37";s:12:"gcommaaccent";s:3:"-37";s:6:"hyphen";s:3:"-20";s:1:"o";s:3:"-45";s:6:"oacute";s:3:"-45";s:11:"ocircumflex";s:3:"-45";s:9:"odieresis";s:3:"-45";s:6:"ograve";s:3:"-45";s:13:"ohungarumlaut";s:3:"-45";s:7:"omacron";s:3:"-45";s:6:"oslash";s:3:"-45";s:6:"otilde";s:3:"-45";s:6:"period";s:4:"-111";s:1:"q";s:3:"-37";s:1:"s";s:3:"-10";s:6:"sacute";s:3:"-10";s:6:"scaron";s:3:"-10";s:8:"scedilla";s:3:"-10";s:12:"scommaaccent";s:3:"-10";}s:6:"racute";a:46:{s:1:"a";s:3:"-15";s:6:"aacute";s:3:"-15";s:6:"abreve";s:3:"-15";s:11:"acircumflex";s:3:"-15";s:9:"adieresis";s:3:"-15";s:6:"agrave";s:3:"-15";s:7:"amacron";s:3:"-15";s:7:"aogonek";s:3:"-15";s:5:"aring";s:3:"-15";s:6:"atilde";s:3:"-15";s:1:"c";s:3:"-37";s:6:"cacute";s:3:"-37";s:6:"ccaron";s:3:"-37";s:8:"ccedilla";s:3:"-37";s:5:"comma";s:4:"-111";s:1:"d";s:3:"-37";s:6:"dcroat";s:3:"-37";s:1:"e";s:3:"-37";s:6:"eacute";s:3:"-37";s:6:"ecaron";s:3:"-37";s:11:"ecircumflex";s:3:"-37";s:9:"edieresis";s:3:"-37";s:10:"edotaccent";s:3:"-37";s:6:"egrave";s:3:"-37";s:7:"emacron";s:3:"-37";s:7:"eogonek";s:3:"-37";s:1:"g";s:3:"-37";s:6:"gbreve";s:3:"-37";s:12:"gcommaaccent";s:3:"-37";s:6:"hyphen";s:3:"-20";s:1:"o";s:3:"-45";s:6:"oacute";s:3:"-45";s:11:"ocircumflex";s:3:"-45";s:9:"odieresis";s:3:"-45";s:6:"ograve";s:3:"-45";s:13:"ohungarumlaut";s:3:"-45";s:7:"omacron";s:3:"-45";s:6:"oslash";s:3:"-45";s:6:"otilde";s:3:"-45";s:6:"period";s:4:"-111";s:1:"q";s:3:"-37";s:1:"s";s:3:"-10";s:6:"sacute";s:3:"-10";s:6:"scaron";s:3:"-10";s:8:"scedilla";s:3:"-10";s:12:"scommaaccent";s:3:"-10";}s:6:"rcaron";a:46:{s:1:"a";s:3:"-15";s:6:"aacute";s:3:"-15";s:6:"abreve";s:3:"-15";s:11:"acircumflex";s:3:"-15";s:9:"adieresis";s:3:"-15";s:6:"agrave";s:3:"-15";s:7:"amacron";s:3:"-15";s:7:"aogonek";s:3:"-15";s:5:"aring";s:3:"-15";s:6:"atilde";s:3:"-15";s:1:"c";s:3:"-37";s:6:"cacute";s:3:"-37";s:6:"ccaron";s:3:"-37";s:8:"ccedilla";s:3:"-37";s:5:"comma";s:4:"-111";s:1:"d";s:3:"-37";s:6:"dcroat";s:3:"-37";s:1:"e";s:3:"-37";s:6:"eacute";s:3:"-37";s:6:"ecaron";s:3:"-37";s:11:"ecircumflex";s:3:"-37";s:9:"edieresis";s:3:"-37";s:10:"edotaccent";s:3:"-37";s:6:"egrave";s:3:"-37";s:7:"emacron";s:3:"-37";s:7:"eogonek";s:3:"-37";s:1:"g";s:3:"-37";s:6:"gbreve";s:3:"-37";s:12:"gcommaaccent";s:3:"-37";s:6:"hyphen";s:3:"-20";s:1:"o";s:3:"-45";s:6:"oacute";s:3:"-45";s:11:"ocircumflex";s:3:"-45";s:9:"odieresis";s:3:"-45";s:6:"ograve";s:3:"-45";s:13:"ohungarumlaut";s:3:"-45";s:7:"omacron";s:3:"-45";s:6:"oslash";s:3:"-45";s:6:"otilde";s:3:"-45";s:6:"period";s:4:"-111";s:1:"q";s:3:"-37";s:1:"s";s:3:"-10";s:6:"sacute";s:3:"-10";s:6:"scaron";s:3:"-10";s:8:"scedilla";s:3:"-10";s:12:"scommaaccent";s:3:"-10";}s:12:"rcommaaccent";a:46:{s:1:"a";s:3:"-15";s:6:"aacute";s:3:"-15";s:6:"abreve";s:3:"-15";s:11:"acircumflex";s:3:"-15";s:9:"adieresis";s:3:"-15";s:6:"agrave";s:3:"-15";s:7:"amacron";s:3:"-15";s:7:"aogonek";s:3:"-15";s:5:"aring";s:3:"-15";s:6:"atilde";s:3:"-15";s:1:"c";s:3:"-37";s:6:"cacute";s:3:"-37";s:6:"ccaron";s:3:"-37";s:8:"ccedilla";s:3:"-37";s:5:"comma";s:4:"-111";s:1:"d";s:3:"-37";s:6:"dcroat";s:3:"-37";s:1:"e";s:3:"-37";s:6:"eacute";s:3:"-37";s:6:"ecaron";s:3:"-37";s:11:"ecircumflex";s:3:"-37";s:9:"edieresis";s:3:"-37";s:10:"edotaccent";s:3:"-37";s:6:"egrave";s:3:"-37";s:7:"emacron";s:3:"-37";s:7:"eogonek";s:3:"-37";s:1:"g";s:3:"-37";s:6:"gbreve";s:3:"-37";s:12:"gcommaaccent";s:3:"-37";s:6:"hyphen";s:3:"-20";s:1:"o";s:3:"-45";s:6:"oacute";s:3:"-45";s:11:"ocircumflex";s:3:"-45";s:9:"odieresis";s:3:"-45";s:6:"ograve";s:3:"-45";s:13:"ohungarumlaut";s:3:"-45";s:7:"omacron";s:3:"-45";s:6:"oslash";s:3:"-45";s:6:"otilde";s:3:"-45";s:6:"period";s:4:"-111";s:1:"q";s:3:"-37";s:1:"s";s:3:"-10";s:6:"sacute";s:3:"-10";s:6:"scaron";s:3:"-10";s:8:"scedilla";s:3:"-10";s:12:"scommaaccent";s:3:"-10";}s:5:"space";a:18:{s:1:"A";s:3:"-18";s:6:"Aacute";s:3:"-18";s:6:"Abreve";s:3:"-18";s:11:"Acircumflex";s:3:"-18";s:9:"Adieresis";s:3:"-18";s:6:"Agrave";s:3:"-18";s:7:"Amacron";s:3:"-18";s:7:"Aogonek";s:3:"-18";s:5:"Aring";s:3:"-18";s:6:"Atilde";s:3:"-18";s:1:"T";s:3:"-18";s:6:"Tcaron";s:3:"-18";s:12:"Tcommaaccent";s:3:"-18";s:1:"V";s:3:"-35";s:1:"W";s:3:"-40";s:1:"Y";s:3:"-75";s:6:"Yacute";s:3:"-75";s:9:"Ydieresis";s:3:"-75";}s:1:"v";a:2:{s:5:"comma";s:3:"-74";s:6:"period";s:3:"-74";}s:1:"w";a:2:{s:5:"comma";s:3:"-74";s:6:"period";s:3:"-74";}s:1:"y";a:2:{s:5:"comma";s:3:"-55";s:6:"period";s:3:"-55";}s:6:"yacute";a:2:{s:5:"comma";s:3:"-55";s:6:"period";s:3:"-55";}s:9:"ydieresis";a:2:{s:5:"comma";s:3:"-55";s:6:"period";s:3:"-55";}}s:9:"_version_";i:1;} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Times-Roman.afm b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Times-Roman.afm
new file mode 100755
index 00000000..0f30f290
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_Times-Roman.afm
@@ -0,0 +1 @@
+a:22:{s:8:"FontName";s:11:"Times-Roman";s:8:"FullName";s:11:"Times Roman";s:10:"FamilyName";s:5:"Times";s:6:"Weight";s:5:"Roman";s:11:"ItalicAngle";s:1:"0";s:12:"IsFixedPitch";s:5:"false";s:12:"CharacterSet";s:13:"ExtendedRoman";s:8:"FontBBox";a:4:{i:0;s:4:"-168";i:1;s:4:"-218";i:2;s:4:"1000";i:3;s:3:"898";}s:17:"UnderlinePosition";s:4:"-100";s:18:"UnderlineThickness";s:2:"50";s:7:"Version";s:7:"002.000";s:14:"EncodingScheme";s:21:"AdobeStandardEncoding";s:9:"CapHeight";s:3:"662";s:7:"XHeight";s:3:"450";s:8:"Ascender";s:3:"683";s:9:"Descender";s:4:"-217";s:5:"StdHW";s:2:"28";s:5:"StdVW";s:2:"84";s:16:"StartCharMetrics";s:3:"315";s:1:"C";a:464:{i:32;a:4:{s:1:"C";s:2:"32";s:2:"WX";s:3:"250";s:1:"N";s:5:"space";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:1:"0";i:3;s:1:"0";}}s:5:"space";a:4:{s:1:"C";s:2:"32";s:2:"WX";s:3:"250";s:1:"N";s:5:"space";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:1:"0";i:3;s:1:"0";}}i:33;a:4:{s:1:"C";s:2:"33";s:2:"WX";s:3:"333";s:1:"N";s:6:"exclam";s:1:"B";a:4:{i:0;s:3:"130";i:1;s:2:"-9";i:2;s:3:"238";i:3;s:3:"676";}}s:6:"exclam";a:4:{s:1:"C";s:2:"33";s:2:"WX";s:3:"333";s:1:"N";s:6:"exclam";s:1:"B";a:4:{i:0;s:3:"130";i:1;s:2:"-9";i:2;s:3:"238";i:3;s:3:"676";}}i:34;a:4:{s:1:"C";s:2:"34";s:2:"WX";s:3:"408";s:1:"N";s:8:"quotedbl";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:3:"431";i:2;s:3:"331";i:3;s:3:"676";}}s:8:"quotedbl";a:4:{s:1:"C";s:2:"34";s:2:"WX";s:3:"408";s:1:"N";s:8:"quotedbl";s:1:"B";a:4:{i:0;s:2:"77";i:1;s:3:"431";i:2;s:3:"331";i:3;s:3:"676";}}i:35;a:4:{s:1:"C";s:2:"35";s:2:"WX";s:3:"500";s:1:"N";s:10:"numbersign";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:1:"0";i:2;s:3:"496";i:3;s:3:"662";}}s:10:"numbersign";a:4:{s:1:"C";s:2:"35";s:2:"WX";s:3:"500";s:1:"N";s:10:"numbersign";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:1:"0";i:2;s:3:"496";i:3;s:3:"662";}}i:36;a:4:{s:1:"C";s:2:"36";s:2:"WX";s:3:"500";s:1:"N";s:6:"dollar";s:1:"B";a:4:{i:0;s:2:"44";i:1;s:3:"-87";i:2;s:3:"457";i:3;s:3:"727";}}s:6:"dollar";a:4:{s:1:"C";s:2:"36";s:2:"WX";s:3:"500";s:1:"N";s:6:"dollar";s:1:"B";a:4:{i:0;s:2:"44";i:1;s:3:"-87";i:2;s:3:"457";i:3;s:3:"727";}}i:37;a:4:{s:1:"C";s:2:"37";s:2:"WX";s:3:"833";s:1:"N";s:7:"percent";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:3:"-13";i:2;s:3:"772";i:3;s:3:"676";}}s:7:"percent";a:4:{s:1:"C";s:2:"37";s:2:"WX";s:3:"833";s:1:"N";s:7:"percent";s:1:"B";a:4:{i:0;s:2:"61";i:1;s:3:"-13";i:2;s:3:"772";i:3;s:3:"676";}}i:38;a:4:{s:1:"C";s:2:"38";s:2:"WX";s:3:"778";s:1:"N";s:9:"ampersand";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:3:"-13";i:2;s:3:"750";i:3;s:3:"676";}}s:9:"ampersand";a:4:{s:1:"C";s:2:"38";s:2:"WX";s:3:"778";s:1:"N";s:9:"ampersand";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:3:"-13";i:2;s:3:"750";i:3;s:3:"676";}}i:39;a:4:{s:1:"C";s:2:"39";s:2:"WX";s:3:"333";s:1:"N";s:10:"quoteright";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:3:"433";i:2;s:3:"218";i:3;s:3:"676";}}s:10:"quoteright";a:4:{s:1:"C";s:2:"39";s:2:"WX";s:3:"333";s:1:"N";s:10:"quoteright";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:3:"433";i:2;s:3:"218";i:3;s:3:"676";}}i:40;a:4:{s:1:"C";s:2:"40";s:2:"WX";s:3:"333";s:1:"N";s:9:"parenleft";s:1:"B";a:4:{i:0;s:2:"48";i:1;s:4:"-177";i:2;s:3:"304";i:3;s:3:"676";}}s:9:"parenleft";a:4:{s:1:"C";s:2:"40";s:2:"WX";s:3:"333";s:1:"N";s:9:"parenleft";s:1:"B";a:4:{i:0;s:2:"48";i:1;s:4:"-177";i:2;s:3:"304";i:3;s:3:"676";}}i:41;a:4:{s:1:"C";s:2:"41";s:2:"WX";s:3:"333";s:1:"N";s:10:"parenright";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:4:"-177";i:2;s:3:"285";i:3;s:3:"676";}}s:10:"parenright";a:4:{s:1:"C";s:2:"41";s:2:"WX";s:3:"333";s:1:"N";s:10:"parenright";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:4:"-177";i:2;s:3:"285";i:3;s:3:"676";}}i:42;a:4:{s:1:"C";s:2:"42";s:2:"WX";s:3:"500";s:1:"N";s:8:"asterisk";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:3:"265";i:2;s:3:"432";i:3;s:3:"676";}}s:8:"asterisk";a:4:{s:1:"C";s:2:"42";s:2:"WX";s:3:"500";s:1:"N";s:8:"asterisk";s:1:"B";a:4:{i:0;s:2:"69";i:1;s:3:"265";i:2;s:3:"432";i:3;s:3:"676";}}i:43;a:4:{s:1:"C";s:2:"43";s:2:"WX";s:3:"564";s:1:"N";s:4:"plus";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:1:"0";i:2;s:3:"534";i:3;s:3:"506";}}s:4:"plus";a:4:{s:1:"C";s:2:"43";s:2:"WX";s:3:"564";s:1:"N";s:4:"plus";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:1:"0";i:2;s:3:"534";i:3;s:3:"506";}}i:44;a:4:{s:1:"C";s:2:"44";s:2:"WX";s:3:"250";s:1:"N";s:5:"comma";s:1:"B";a:4:{i:0;s:2:"56";i:1;s:4:"-141";i:2;s:3:"195";i:3;s:3:"102";}}s:5:"comma";a:4:{s:1:"C";s:2:"44";s:2:"WX";s:3:"250";s:1:"N";s:5:"comma";s:1:"B";a:4:{i:0;s:2:"56";i:1;s:4:"-141";i:2;s:3:"195";i:3;s:3:"102";}}i:45;a:4:{s:1:"C";s:2:"45";s:2:"WX";s:3:"333";s:1:"N";s:6:"hyphen";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:3:"194";i:2;s:3:"285";i:3;s:3:"257";}}s:6:"hyphen";a:4:{s:1:"C";s:2:"45";s:2:"WX";s:3:"333";s:1:"N";s:6:"hyphen";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:3:"194";i:2;s:3:"285";i:3;s:3:"257";}}i:46;a:4:{s:1:"C";s:2:"46";s:2:"WX";s:3:"250";s:1:"N";s:6:"period";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:3:"-11";i:2;s:3:"181";i:3;s:3:"100";}}s:6:"period";a:4:{s:1:"C";s:2:"46";s:2:"WX";s:3:"250";s:1:"N";s:6:"period";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:3:"-11";i:2;s:3:"181";i:3;s:3:"100";}}i:47;a:4:{s:1:"C";s:2:"47";s:2:"WX";s:3:"278";s:1:"N";s:5:"slash";s:1:"B";a:4:{i:0;s:2:"-9";i:1;s:3:"-14";i:2;s:3:"287";i:3;s:3:"676";}}s:5:"slash";a:4:{s:1:"C";s:2:"47";s:2:"WX";s:3:"278";s:1:"N";s:5:"slash";s:1:"B";a:4:{i:0;s:2:"-9";i:1;s:3:"-14";i:2;s:3:"287";i:3;s:3:"676";}}i:48;a:4:{s:1:"C";s:2:"48";s:2:"WX";s:3:"500";s:1:"N";s:4:"zero";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:3:"-14";i:2;s:3:"476";i:3;s:3:"676";}}s:4:"zero";a:4:{s:1:"C";s:2:"48";s:2:"WX";s:3:"500";s:1:"N";s:4:"zero";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:3:"-14";i:2;s:3:"476";i:3;s:3:"676";}}i:49;a:4:{s:1:"C";s:2:"49";s:2:"WX";s:3:"500";s:1:"N";s:3:"one";s:1:"B";a:4:{i:0;s:3:"111";i:1;s:1:"0";i:2;s:3:"394";i:3;s:3:"676";}}s:3:"one";a:4:{s:1:"C";s:2:"49";s:2:"WX";s:3:"500";s:1:"N";s:3:"one";s:1:"B";a:4:{i:0;s:3:"111";i:1;s:1:"0";i:2;s:3:"394";i:3;s:3:"676";}}i:50;a:4:{s:1:"C";s:2:"50";s:2:"WX";s:3:"500";s:1:"N";s:3:"two";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:1:"0";i:2;s:3:"475";i:3;s:3:"676";}}s:3:"two";a:4:{s:1:"C";s:2:"50";s:2:"WX";s:3:"500";s:1:"N";s:3:"two";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:1:"0";i:2;s:3:"475";i:3;s:3:"676";}}i:51;a:4:{s:1:"C";s:2:"51";s:2:"WX";s:3:"500";s:1:"N";s:5:"three";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:3:"-14";i:2;s:3:"431";i:3;s:3:"676";}}s:5:"three";a:4:{s:1:"C";s:2:"51";s:2:"WX";s:3:"500";s:1:"N";s:5:"three";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:3:"-14";i:2;s:3:"431";i:3;s:3:"676";}}i:52;a:4:{s:1:"C";s:2:"52";s:2:"WX";s:3:"500";s:1:"N";s:4:"four";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:1:"0";i:2;s:3:"472";i:3;s:3:"676";}}s:4:"four";a:4:{s:1:"C";s:2:"52";s:2:"WX";s:3:"500";s:1:"N";s:4:"four";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:1:"0";i:2;s:3:"472";i:3;s:3:"676";}}i:53;a:4:{s:1:"C";s:2:"53";s:2:"WX";s:3:"500";s:1:"N";s:4:"five";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:3:"-14";i:2;s:3:"438";i:3;s:3:"688";}}s:4:"five";a:4:{s:1:"C";s:2:"53";s:2:"WX";s:3:"500";s:1:"N";s:4:"five";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:3:"-14";i:2;s:3:"438";i:3;s:3:"688";}}i:54;a:4:{s:1:"C";s:2:"54";s:2:"WX";s:3:"500";s:1:"N";s:3:"six";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"468";i:3;s:3:"684";}}s:3:"six";a:4:{s:1:"C";s:2:"54";s:2:"WX";s:3:"500";s:1:"N";s:3:"six";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"468";i:3;s:3:"684";}}i:55;a:4:{s:1:"C";s:2:"55";s:2:"WX";s:3:"500";s:1:"N";s:5:"seven";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:2:"-8";i:2;s:3:"449";i:3;s:3:"662";}}s:5:"seven";a:4:{s:1:"C";s:2:"55";s:2:"WX";s:3:"500";s:1:"N";s:5:"seven";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:2:"-8";i:2;s:3:"449";i:3;s:3:"662";}}i:56;a:4:{s:1:"C";s:2:"56";s:2:"WX";s:3:"500";s:1:"N";s:5:"eight";s:1:"B";a:4:{i:0;s:2:"56";i:1;s:3:"-14";i:2;s:3:"445";i:3;s:3:"676";}}s:5:"eight";a:4:{s:1:"C";s:2:"56";s:2:"WX";s:3:"500";s:1:"N";s:5:"eight";s:1:"B";a:4:{i:0;s:2:"56";i:1;s:3:"-14";i:2;s:3:"445";i:3;s:3:"676";}}i:57;a:4:{s:1:"C";s:2:"57";s:2:"WX";s:3:"500";s:1:"N";s:4:"nine";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"-22";i:2;s:3:"459";i:3;s:3:"676";}}s:4:"nine";a:4:{s:1:"C";s:2:"57";s:2:"WX";s:3:"500";s:1:"N";s:4:"nine";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"-22";i:2;s:3:"459";i:3;s:3:"676";}}i:58;a:4:{s:1:"C";s:2:"58";s:2:"WX";s:3:"278";s:1:"N";s:5:"colon";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:3:"-11";i:2;s:3:"192";i:3;s:3:"459";}}s:5:"colon";a:4:{s:1:"C";s:2:"58";s:2:"WX";s:3:"278";s:1:"N";s:5:"colon";s:1:"B";a:4:{i:0;s:2:"81";i:1;s:3:"-11";i:2;s:3:"192";i:3;s:3:"459";}}i:59;a:4:{s:1:"C";s:2:"59";s:2:"WX";s:3:"278";s:1:"N";s:9:"semicolon";s:1:"B";a:4:{i:0;s:2:"80";i:1;s:4:"-141";i:2;s:3:"219";i:3;s:3:"459";}}s:9:"semicolon";a:4:{s:1:"C";s:2:"59";s:2:"WX";s:3:"278";s:1:"N";s:9:"semicolon";s:1:"B";a:4:{i:0;s:2:"80";i:1;s:4:"-141";i:2;s:3:"219";i:3;s:3:"459";}}i:60;a:4:{s:1:"C";s:2:"60";s:2:"WX";s:3:"564";s:1:"N";s:4:"less";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:2:"-8";i:2;s:3:"536";i:3;s:3:"514";}}s:4:"less";a:4:{s:1:"C";s:2:"60";s:2:"WX";s:3:"564";s:1:"N";s:4:"less";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:2:"-8";i:2;s:3:"536";i:3;s:3:"514";}}i:61;a:4:{s:1:"C";s:2:"61";s:2:"WX";s:3:"564";s:1:"N";s:5:"equal";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"120";i:2;s:3:"534";i:3;s:3:"386";}}s:5:"equal";a:4:{s:1:"C";s:2:"61";s:2:"WX";s:3:"564";s:1:"N";s:5:"equal";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"120";i:2;s:3:"534";i:3;s:3:"386";}}i:62;a:4:{s:1:"C";s:2:"62";s:2:"WX";s:3:"564";s:1:"N";s:7:"greater";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:2:"-8";i:2;s:3:"536";i:3;s:3:"514";}}s:7:"greater";a:4:{s:1:"C";s:2:"62";s:2:"WX";s:3:"564";s:1:"N";s:7:"greater";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:2:"-8";i:2;s:3:"536";i:3;s:3:"514";}}i:63;a:4:{s:1:"C";s:2:"63";s:2:"WX";s:3:"444";s:1:"N";s:8:"question";s:1:"B";a:4:{i:0;s:2:"68";i:1;s:2:"-8";i:2;s:3:"414";i:3;s:3:"676";}}s:8:"question";a:4:{s:1:"C";s:2:"63";s:2:"WX";s:3:"444";s:1:"N";s:8:"question";s:1:"B";a:4:{i:0;s:2:"68";i:1;s:2:"-8";i:2;s:3:"414";i:3;s:3:"676";}}i:64;a:4:{s:1:"C";s:2:"64";s:2:"WX";s:3:"921";s:1:"N";s:2:"at";s:1:"B";a:4:{i:0;s:3:"116";i:1;s:3:"-14";i:2;s:3:"809";i:3;s:3:"676";}}s:2:"at";a:4:{s:1:"C";s:2:"64";s:2:"WX";s:3:"921";s:1:"N";s:2:"at";s:1:"B";a:4:{i:0;s:3:"116";i:1;s:3:"-14";i:2;s:3:"809";i:3;s:3:"676";}}i:65;a:4:{s:1:"C";s:2:"65";s:2:"WX";s:3:"722";s:1:"N";s:1:"A";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:1:"0";i:2;s:3:"706";i:3;s:3:"674";}}s:1:"A";a:4:{s:1:"C";s:2:"65";s:2:"WX";s:3:"722";s:1:"N";s:1:"A";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:1:"0";i:2;s:3:"706";i:3;s:3:"674";}}i:66;a:4:{s:1:"C";s:2:"66";s:2:"WX";s:3:"667";s:1:"N";s:1:"B";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:1:"0";i:2;s:3:"593";i:3;s:3:"662";}}s:1:"B";a:4:{s:1:"C";s:2:"66";s:2:"WX";s:3:"667";s:1:"N";s:1:"B";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:1:"0";i:2;s:3:"593";i:3;s:3:"662";}}i:67;a:4:{s:1:"C";s:2:"67";s:2:"WX";s:3:"667";s:1:"N";s:1:"C";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:3:"-14";i:2;s:3:"633";i:3;s:3:"676";}}s:1:"C";a:4:{s:1:"C";s:2:"67";s:2:"WX";s:3:"667";s:1:"N";s:1:"C";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:3:"-14";i:2;s:3:"633";i:3;s:3:"676";}}i:68;a:4:{s:1:"C";s:2:"68";s:2:"WX";s:3:"722";s:1:"N";s:1:"D";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"685";i:3;s:3:"662";}}s:1:"D";a:4:{s:1:"C";s:2:"68";s:2:"WX";s:3:"722";s:1:"N";s:1:"D";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"685";i:3;s:3:"662";}}i:69;a:4:{s:1:"C";s:2:"69";s:2:"WX";s:3:"611";s:1:"N";s:1:"E";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:1:"0";i:2;s:3:"597";i:3;s:3:"662";}}s:1:"E";a:4:{s:1:"C";s:2:"69";s:2:"WX";s:3:"611";s:1:"N";s:1:"E";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:1:"0";i:2;s:3:"597";i:3;s:3:"662";}}i:70;a:4:{s:1:"C";s:2:"70";s:2:"WX";s:3:"556";s:1:"N";s:1:"F";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:1:"0";i:2;s:3:"546";i:3;s:3:"662";}}s:1:"F";a:4:{s:1:"C";s:2:"70";s:2:"WX";s:3:"556";s:1:"N";s:1:"F";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:1:"0";i:2;s:3:"546";i:3;s:3:"662";}}i:71;a:4:{s:1:"C";s:2:"71";s:2:"WX";s:3:"722";s:1:"N";s:1:"G";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:3:"-14";i:2;s:3:"709";i:3;s:3:"676";}}s:1:"G";a:4:{s:1:"C";s:2:"71";s:2:"WX";s:3:"722";s:1:"N";s:1:"G";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:3:"-14";i:2;s:3:"709";i:3;s:3:"676";}}i:72;a:4:{s:1:"C";s:2:"72";s:2:"WX";s:3:"722";s:1:"N";s:1:"H";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:1:"0";i:2;s:3:"702";i:3;s:3:"662";}}s:1:"H";a:4:{s:1:"C";s:2:"72";s:2:"WX";s:3:"722";s:1:"N";s:1:"H";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:1:"0";i:2;s:3:"702";i:3;s:3:"662";}}i:73;a:4:{s:1:"C";s:2:"73";s:2:"WX";s:3:"333";s:1:"N";s:1:"I";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:1:"0";i:2;s:3:"315";i:3;s:3:"662";}}s:1:"I";a:4:{s:1:"C";s:2:"73";s:2:"WX";s:3:"333";s:1:"N";s:1:"I";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:1:"0";i:2;s:3:"315";i:3;s:3:"662";}}i:74;a:4:{s:1:"C";s:2:"74";s:2:"WX";s:3:"389";s:1:"N";s:1:"J";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:3:"-14";i:2;s:3:"370";i:3;s:3:"662";}}s:1:"J";a:4:{s:1:"C";s:2:"74";s:2:"WX";s:3:"389";s:1:"N";s:1:"J";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:3:"-14";i:2;s:3:"370";i:3;s:3:"662";}}i:75;a:4:{s:1:"C";s:2:"75";s:2:"WX";s:3:"722";s:1:"N";s:1:"K";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:1:"0";i:2;s:3:"723";i:3;s:3:"662";}}s:1:"K";a:4:{s:1:"C";s:2:"75";s:2:"WX";s:3:"722";s:1:"N";s:1:"K";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:1:"0";i:2;s:3:"723";i:3;s:3:"662";}}i:76;a:4:{s:1:"C";s:2:"76";s:2:"WX";s:3:"611";s:1:"N";s:1:"L";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:1:"0";i:2;s:3:"598";i:3;s:3:"662";}}s:1:"L";a:4:{s:1:"C";s:2:"76";s:2:"WX";s:3:"611";s:1:"N";s:1:"L";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:1:"0";i:2;s:3:"598";i:3;s:3:"662";}}i:77;a:4:{s:1:"C";s:2:"77";s:2:"WX";s:3:"889";s:1:"N";s:1:"M";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:1:"0";i:2;s:3:"863";i:3;s:3:"662";}}s:1:"M";a:4:{s:1:"C";s:2:"77";s:2:"WX";s:3:"889";s:1:"N";s:1:"M";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:1:"0";i:2;s:3:"863";i:3;s:3:"662";}}i:78;a:4:{s:1:"C";s:2:"78";s:2:"WX";s:3:"722";s:1:"N";s:1:"N";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:3:"-11";i:2;s:3:"707";i:3;s:3:"662";}}s:1:"N";a:4:{s:1:"C";s:2:"78";s:2:"WX";s:3:"722";s:1:"N";s:1:"N";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:3:"-11";i:2;s:3:"707";i:3;s:3:"662";}}i:79;a:4:{s:1:"C";s:2:"79";s:2:"WX";s:3:"722";s:1:"N";s:1:"O";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"688";i:3;s:3:"676";}}s:1:"O";a:4:{s:1:"C";s:2:"79";s:2:"WX";s:3:"722";s:1:"N";s:1:"O";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"688";i:3;s:3:"676";}}i:80;a:4:{s:1:"C";s:2:"80";s:2:"WX";s:3:"556";s:1:"N";s:1:"P";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"542";i:3;s:3:"662";}}s:1:"P";a:4:{s:1:"C";s:2:"80";s:2:"WX";s:3:"556";s:1:"N";s:1:"P";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"542";i:3;s:3:"662";}}i:81;a:4:{s:1:"C";s:2:"81";s:2:"WX";s:3:"722";s:1:"N";s:1:"Q";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:4:"-178";i:2;s:3:"701";i:3;s:3:"676";}}s:1:"Q";a:4:{s:1:"C";s:2:"81";s:2:"WX";s:3:"722";s:1:"N";s:1:"Q";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:4:"-178";i:2;s:3:"701";i:3;s:3:"676";}}i:82;a:4:{s:1:"C";s:2:"82";s:2:"WX";s:3:"667";s:1:"N";s:1:"R";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:1:"0";i:2;s:3:"659";i:3;s:3:"662";}}s:1:"R";a:4:{s:1:"C";s:2:"82";s:2:"WX";s:3:"667";s:1:"N";s:1:"R";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:1:"0";i:2;s:3:"659";i:3;s:3:"662";}}i:83;a:4:{s:1:"C";s:2:"83";s:2:"WX";s:3:"556";s:1:"N";s:1:"S";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:3:"-14";i:2;s:3:"491";i:3;s:3:"676";}}s:1:"S";a:4:{s:1:"C";s:2:"83";s:2:"WX";s:3:"556";s:1:"N";s:1:"S";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:3:"-14";i:2;s:3:"491";i:3;s:3:"676";}}i:84;a:4:{s:1:"C";s:2:"84";s:2:"WX";s:3:"611";s:1:"N";s:1:"T";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:1:"0";i:2;s:3:"593";i:3;s:3:"662";}}s:1:"T";a:4:{s:1:"C";s:2:"84";s:2:"WX";s:3:"611";s:1:"N";s:1:"T";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:1:"0";i:2;s:3:"593";i:3;s:3:"662";}}i:85;a:4:{s:1:"C";s:2:"85";s:2:"WX";s:3:"722";s:1:"N";s:1:"U";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:3:"-14";i:2;s:3:"705";i:3;s:3:"662";}}s:1:"U";a:4:{s:1:"C";s:2:"85";s:2:"WX";s:3:"722";s:1:"N";s:1:"U";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:3:"-14";i:2;s:3:"705";i:3;s:3:"662";}}i:86;a:4:{s:1:"C";s:2:"86";s:2:"WX";s:3:"722";s:1:"N";s:1:"V";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"-11";i:2;s:3:"697";i:3;s:3:"662";}}s:1:"V";a:4:{s:1:"C";s:2:"86";s:2:"WX";s:3:"722";s:1:"N";s:1:"V";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:3:"-11";i:2;s:3:"697";i:3;s:3:"662";}}i:87;a:4:{s:1:"C";s:2:"87";s:2:"WX";s:3:"944";s:1:"N";s:1:"W";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:3:"-11";i:2;s:3:"932";i:3;s:3:"662";}}s:1:"W";a:4:{s:1:"C";s:2:"87";s:2:"WX";s:3:"944";s:1:"N";s:1:"W";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:3:"-11";i:2;s:3:"932";i:3;s:3:"662";}}i:88;a:4:{s:1:"C";s:2:"88";s:2:"WX";s:3:"722";s:1:"N";s:1:"X";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:1:"0";i:2;s:3:"704";i:3;s:3:"662";}}s:1:"X";a:4:{s:1:"C";s:2:"88";s:2:"WX";s:3:"722";s:1:"N";s:1:"X";s:1:"B";a:4:{i:0;s:2:"10";i:1;s:1:"0";i:2;s:3:"704";i:3;s:3:"662";}}i:89;a:4:{s:1:"C";s:2:"89";s:2:"WX";s:3:"722";s:1:"N";s:1:"Y";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:1:"0";i:2;s:3:"703";i:3;s:3:"662";}}s:1:"Y";a:4:{s:1:"C";s:2:"89";s:2:"WX";s:3:"722";s:1:"N";s:1:"Y";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:1:"0";i:2;s:3:"703";i:3;s:3:"662";}}i:90;a:4:{s:1:"C";s:2:"90";s:2:"WX";s:3:"611";s:1:"N";s:1:"Z";s:1:"B";a:4:{i:0;s:1:"9";i:1;s:1:"0";i:2;s:3:"597";i:3;s:3:"662";}}s:1:"Z";a:4:{s:1:"C";s:2:"90";s:2:"WX";s:3:"611";s:1:"N";s:1:"Z";s:1:"B";a:4:{i:0;s:1:"9";i:1;s:1:"0";i:2;s:3:"597";i:3;s:3:"662";}}i:91;a:4:{s:1:"C";s:2:"91";s:2:"WX";s:3:"333";s:1:"N";s:11:"bracketleft";s:1:"B";a:4:{i:0;s:2:"88";i:1;s:4:"-156";i:2;s:3:"299";i:3;s:3:"662";}}s:11:"bracketleft";a:4:{s:1:"C";s:2:"91";s:2:"WX";s:3:"333";s:1:"N";s:11:"bracketleft";s:1:"B";a:4:{i:0;s:2:"88";i:1;s:4:"-156";i:2;s:3:"299";i:3;s:3:"662";}}i:92;a:4:{s:1:"C";s:2:"92";s:2:"WX";s:3:"278";s:1:"N";s:9:"backslash";s:1:"B";a:4:{i:0;s:2:"-9";i:1;s:3:"-14";i:2;s:3:"287";i:3;s:3:"676";}}s:9:"backslash";a:4:{s:1:"C";s:2:"92";s:2:"WX";s:3:"278";s:1:"N";s:9:"backslash";s:1:"B";a:4:{i:0;s:2:"-9";i:1;s:3:"-14";i:2;s:3:"287";i:3;s:3:"676";}}i:93;a:4:{s:1:"C";s:2:"93";s:2:"WX";s:3:"333";s:1:"N";s:12:"bracketright";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:4:"-156";i:2;s:3:"245";i:3;s:3:"662";}}s:12:"bracketright";a:4:{s:1:"C";s:2:"93";s:2:"WX";s:3:"333";s:1:"N";s:12:"bracketright";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:4:"-156";i:2;s:3:"245";i:3;s:3:"662";}}i:94;a:4:{s:1:"C";s:2:"94";s:2:"WX";s:3:"469";s:1:"N";s:11:"asciicircum";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:3:"297";i:2;s:3:"446";i:3;s:3:"662";}}s:11:"asciicircum";a:4:{s:1:"C";s:2:"94";s:2:"WX";s:3:"469";s:1:"N";s:11:"asciicircum";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:3:"297";i:2;s:3:"446";i:3;s:3:"662";}}i:95;a:4:{s:1:"C";s:2:"95";s:2:"WX";s:3:"500";s:1:"N";s:10:"underscore";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:4:"-125";i:2;s:3:"500";i:3;s:3:"-75";}}s:10:"underscore";a:4:{s:1:"C";s:2:"95";s:2:"WX";s:3:"500";s:1:"N";s:10:"underscore";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:4:"-125";i:2;s:3:"500";i:3;s:3:"-75";}}i:96;a:4:{s:1:"C";s:2:"96";s:2:"WX";s:3:"333";s:1:"N";s:9:"quoteleft";s:1:"B";a:4:{i:0;s:3:"115";i:1;s:3:"433";i:2;s:3:"254";i:3;s:3:"676";}}s:9:"quoteleft";a:4:{s:1:"C";s:2:"96";s:2:"WX";s:3:"333";s:1:"N";s:9:"quoteleft";s:1:"B";a:4:{i:0;s:3:"115";i:1;s:3:"433";i:2;s:3:"254";i:3;s:3:"676";}}i:97;a:4:{s:1:"C";s:2:"97";s:2:"WX";s:3:"444";s:1:"N";s:1:"a";s:1:"B";a:4:{i:0;s:2:"37";i:1;s:3:"-10";i:2;s:3:"442";i:3;s:3:"460";}}s:1:"a";a:4:{s:1:"C";s:2:"97";s:2:"WX";s:3:"444";s:1:"N";s:1:"a";s:1:"B";a:4:{i:0;s:2:"37";i:1;s:3:"-10";i:2;s:3:"442";i:3;s:3:"460";}}i:98;a:4:{s:1:"C";s:2:"98";s:2:"WX";s:3:"500";s:1:"N";s:1:"b";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:3:"-10";i:2;s:3:"468";i:3;s:3:"683";}}s:1:"b";a:4:{s:1:"C";s:2:"98";s:2:"WX";s:3:"500";s:1:"N";s:1:"b";s:1:"B";a:4:{i:0;s:1:"3";i:1;s:3:"-10";i:2;s:3:"468";i:3;s:3:"683";}}i:99;a:4:{s:1:"C";s:2:"99";s:2:"WX";s:3:"444";s:1:"N";s:1:"c";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-10";i:2;s:3:"412";i:3;s:3:"460";}}s:1:"c";a:4:{s:1:"C";s:2:"99";s:2:"WX";s:3:"444";s:1:"N";s:1:"c";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-10";i:2;s:3:"412";i:3;s:3:"460";}}i:100;a:4:{s:1:"C";s:3:"100";s:2:"WX";s:3:"500";s:1:"N";s:1:"d";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:3:"-10";i:2;s:3:"491";i:3;s:3:"683";}}s:1:"d";a:4:{s:1:"C";s:3:"100";s:2:"WX";s:3:"500";s:1:"N";s:1:"d";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:3:"-10";i:2;s:3:"491";i:3;s:3:"683";}}i:101;a:4:{s:1:"C";s:3:"101";s:2:"WX";s:3:"444";s:1:"N";s:1:"e";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-10";i:2;s:3:"424";i:3;s:3:"460";}}s:1:"e";a:4:{s:1:"C";s:3:"101";s:2:"WX";s:3:"444";s:1:"N";s:1:"e";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-10";i:2;s:3:"424";i:3;s:3:"460";}}i:102;a:5:{s:1:"C";s:3:"102";s:2:"WX";s:3:"333";s:1:"N";s:1:"f";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"383";i:3;s:3:"683";}s:1:"L";a:2:{i:0;s:1:"l";i:1;s:2:"fl";}}s:1:"f";a:5:{s:1:"C";s:3:"102";s:2:"WX";s:3:"333";s:1:"N";s:1:"f";s:1:"B";a:4:{i:0;s:2:"20";i:1;s:1:"0";i:2;s:3:"383";i:3;s:3:"683";}s:1:"L";a:2:{i:0;s:1:"l";i:1;s:2:"fl";}}i:103;a:4:{s:1:"C";s:3:"103";s:2:"WX";s:3:"500";s:1:"N";s:1:"g";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:4:"-218";i:2;s:3:"470";i:3;s:3:"460";}}s:1:"g";a:4:{s:1:"C";s:3:"103";s:2:"WX";s:3:"500";s:1:"N";s:1:"g";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:4:"-218";i:2;s:3:"470";i:3;s:3:"460";}}i:104;a:4:{s:1:"C";s:3:"104";s:2:"WX";s:3:"500";s:1:"N";s:1:"h";s:1:"B";a:4:{i:0;s:1:"9";i:1;s:1:"0";i:2;s:3:"487";i:3;s:3:"683";}}s:1:"h";a:4:{s:1:"C";s:3:"104";s:2:"WX";s:3:"500";s:1:"N";s:1:"h";s:1:"B";a:4:{i:0;s:1:"9";i:1;s:1:"0";i:2;s:3:"487";i:3;s:3:"683";}}i:105;a:4:{s:1:"C";s:3:"105";s:2:"WX";s:3:"278";s:1:"N";s:1:"i";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"253";i:3;s:3:"683";}}s:1:"i";a:4:{s:1:"C";s:3:"105";s:2:"WX";s:3:"278";s:1:"N";s:1:"i";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"253";i:3;s:3:"683";}}i:106;a:4:{s:1:"C";s:3:"106";s:2:"WX";s:3:"278";s:1:"N";s:1:"j";s:1:"B";a:4:{i:0;s:3:"-70";i:1;s:4:"-218";i:2;s:3:"194";i:3;s:3:"683";}}s:1:"j";a:4:{s:1:"C";s:3:"106";s:2:"WX";s:3:"278";s:1:"N";s:1:"j";s:1:"B";a:4:{i:0;s:3:"-70";i:1;s:4:"-218";i:2;s:3:"194";i:3;s:3:"683";}}i:107;a:4:{s:1:"C";s:3:"107";s:2:"WX";s:3:"500";s:1:"N";s:1:"k";s:1:"B";a:4:{i:0;s:1:"7";i:1;s:1:"0";i:2;s:3:"505";i:3;s:3:"683";}}s:1:"k";a:4:{s:1:"C";s:3:"107";s:2:"WX";s:3:"500";s:1:"N";s:1:"k";s:1:"B";a:4:{i:0;s:1:"7";i:1;s:1:"0";i:2;s:3:"505";i:3;s:3:"683";}}i:108;a:4:{s:1:"C";s:3:"108";s:2:"WX";s:3:"278";s:1:"N";s:1:"l";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:1:"0";i:2;s:3:"257";i:3;s:3:"683";}}s:1:"l";a:4:{s:1:"C";s:3:"108";s:2:"WX";s:3:"278";s:1:"N";s:1:"l";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:1:"0";i:2;s:3:"257";i:3;s:3:"683";}}i:109;a:4:{s:1:"C";s:3:"109";s:2:"WX";s:3:"778";s:1:"N";s:1:"m";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"775";i:3;s:3:"460";}}s:1:"m";a:4:{s:1:"C";s:3:"109";s:2:"WX";s:3:"778";s:1:"N";s:1:"m";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"775";i:3;s:3:"460";}}i:110;a:4:{s:1:"C";s:3:"110";s:2:"WX";s:3:"500";s:1:"N";s:1:"n";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"485";i:3;s:3:"460";}}s:1:"n";a:4:{s:1:"C";s:3:"110";s:2:"WX";s:3:"500";s:1:"N";s:1:"n";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"485";i:3;s:3:"460";}}i:111;a:4:{s:1:"C";s:3:"111";s:2:"WX";s:3:"500";s:1:"N";s:1:"o";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:3:"-10";i:2;s:3:"470";i:3;s:3:"460";}}s:1:"o";a:4:{s:1:"C";s:3:"111";s:2:"WX";s:3:"500";s:1:"N";s:1:"o";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:3:"-10";i:2;s:3:"470";i:3;s:3:"460";}}i:112;a:4:{s:1:"C";s:3:"112";s:2:"WX";s:3:"500";s:1:"N";s:1:"p";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:4:"-217";i:2;s:3:"470";i:3;s:3:"460";}}s:1:"p";a:4:{s:1:"C";s:3:"112";s:2:"WX";s:3:"500";s:1:"N";s:1:"p";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:4:"-217";i:2;s:3:"470";i:3;s:3:"460";}}i:113;a:4:{s:1:"C";s:3:"113";s:2:"WX";s:3:"500";s:1:"N";s:1:"q";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:4:"-217";i:2;s:3:"488";i:3;s:3:"460";}}s:1:"q";a:4:{s:1:"C";s:3:"113";s:2:"WX";s:3:"500";s:1:"N";s:1:"q";s:1:"B";a:4:{i:0;s:2:"24";i:1;s:4:"-217";i:2;s:3:"488";i:3;s:3:"460";}}i:114;a:4:{s:1:"C";s:3:"114";s:2:"WX";s:3:"333";s:1:"N";s:1:"r";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:1:"0";i:2;s:3:"335";i:3;s:3:"460";}}s:1:"r";a:4:{s:1:"C";s:3:"114";s:2:"WX";s:3:"333";s:1:"N";s:1:"r";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:1:"0";i:2;s:3:"335";i:3;s:3:"460";}}i:115;a:4:{s:1:"C";s:3:"115";s:2:"WX";s:3:"389";s:1:"N";s:1:"s";s:1:"B";a:4:{i:0;s:2:"51";i:1;s:3:"-10";i:2;s:3:"348";i:3;s:3:"460";}}s:1:"s";a:4:{s:1:"C";s:3:"115";s:2:"WX";s:3:"389";s:1:"N";s:1:"s";s:1:"B";a:4:{i:0;s:2:"51";i:1;s:3:"-10";i:2;s:3:"348";i:3;s:3:"460";}}i:116;a:4:{s:1:"C";s:3:"116";s:2:"WX";s:3:"278";s:1:"N";s:1:"t";s:1:"B";a:4:{i:0;s:2:"13";i:1;s:3:"-10";i:2;s:3:"279";i:3;s:3:"579";}}s:1:"t";a:4:{s:1:"C";s:3:"116";s:2:"WX";s:3:"278";s:1:"N";s:1:"t";s:1:"B";a:4:{i:0;s:2:"13";i:1;s:3:"-10";i:2;s:3:"279";i:3;s:3:"579";}}i:117;a:4:{s:1:"C";s:3:"117";s:2:"WX";s:3:"500";s:1:"N";s:1:"u";s:1:"B";a:4:{i:0;s:1:"9";i:1;s:3:"-10";i:2;s:3:"479";i:3;s:3:"450";}}s:1:"u";a:4:{s:1:"C";s:3:"117";s:2:"WX";s:3:"500";s:1:"N";s:1:"u";s:1:"B";a:4:{i:0;s:1:"9";i:1;s:3:"-10";i:2;s:3:"479";i:3;s:3:"450";}}i:118;a:4:{s:1:"C";s:3:"118";s:2:"WX";s:3:"500";s:1:"N";s:1:"v";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:3:"-14";i:2;s:3:"477";i:3;s:3:"450";}}s:1:"v";a:4:{s:1:"C";s:3:"118";s:2:"WX";s:3:"500";s:1:"N";s:1:"v";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:3:"-14";i:2;s:3:"477";i:3;s:3:"450";}}i:119;a:4:{s:1:"C";s:3:"119";s:2:"WX";s:3:"722";s:1:"N";s:1:"w";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:3:"-14";i:2;s:3:"694";i:3;s:3:"450";}}s:1:"w";a:4:{s:1:"C";s:3:"119";s:2:"WX";s:3:"722";s:1:"N";s:1:"w";s:1:"B";a:4:{i:0;s:2:"21";i:1;s:3:"-14";i:2;s:3:"694";i:3;s:3:"450";}}i:120;a:4:{s:1:"C";s:3:"120";s:2:"WX";s:3:"500";s:1:"N";s:1:"x";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:1:"0";i:2;s:3:"479";i:3;s:3:"450";}}s:1:"x";a:4:{s:1:"C";s:3:"120";s:2:"WX";s:3:"500";s:1:"N";s:1:"x";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:1:"0";i:2;s:3:"479";i:3;s:3:"450";}}i:121;a:4:{s:1:"C";s:3:"121";s:2:"WX";s:3:"500";s:1:"N";s:1:"y";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:4:"-218";i:2;s:3:"475";i:3;s:3:"450";}}s:1:"y";a:4:{s:1:"C";s:3:"121";s:2:"WX";s:3:"500";s:1:"N";s:1:"y";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:4:"-218";i:2;s:3:"475";i:3;s:3:"450";}}i:122;a:4:{s:1:"C";s:3:"122";s:2:"WX";s:3:"444";s:1:"N";s:1:"z";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:1:"0";i:2;s:3:"418";i:3;s:3:"450";}}s:1:"z";a:4:{s:1:"C";s:3:"122";s:2:"WX";s:3:"444";s:1:"N";s:1:"z";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:1:"0";i:2;s:3:"418";i:3;s:3:"450";}}i:123;a:4:{s:1:"C";s:3:"123";s:2:"WX";s:3:"480";s:1:"N";s:9:"braceleft";s:1:"B";a:4:{i:0;s:3:"100";i:1;s:4:"-181";i:2;s:3:"350";i:3;s:3:"680";}}s:9:"braceleft";a:4:{s:1:"C";s:3:"123";s:2:"WX";s:3:"480";s:1:"N";s:9:"braceleft";s:1:"B";a:4:{i:0;s:3:"100";i:1;s:4:"-181";i:2;s:3:"350";i:3;s:3:"680";}}i:124;a:4:{s:1:"C";s:3:"124";s:2:"WX";s:3:"200";s:1:"N";s:3:"bar";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:4:"-218";i:2;s:3:"133";i:3;s:3:"782";}}s:3:"bar";a:4:{s:1:"C";s:3:"124";s:2:"WX";s:3:"200";s:1:"N";s:3:"bar";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:4:"-218";i:2;s:3:"133";i:3;s:3:"782";}}i:125;a:4:{s:1:"C";s:3:"125";s:2:"WX";s:3:"480";s:1:"N";s:10:"braceright";s:1:"B";a:4:{i:0;s:3:"130";i:1;s:4:"-181";i:2;s:3:"380";i:3;s:3:"680";}}s:10:"braceright";a:4:{s:1:"C";s:3:"125";s:2:"WX";s:3:"480";s:1:"N";s:10:"braceright";s:1:"B";a:4:{i:0;s:3:"130";i:1;s:4:"-181";i:2;s:3:"380";i:3;s:3:"680";}}i:126;a:4:{s:1:"C";s:3:"126";s:2:"WX";s:3:"541";s:1:"N";s:10:"asciitilde";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"183";i:2;s:3:"502";i:3;s:3:"323";}}s:10:"asciitilde";a:4:{s:1:"C";s:3:"126";s:2:"WX";s:3:"541";s:1:"N";s:10:"asciitilde";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"183";i:2;s:3:"502";i:3;s:3:"323";}}i:161;a:4:{s:1:"C";s:3:"161";s:2:"WX";s:3:"333";s:1:"N";s:10:"exclamdown";s:1:"B";a:4:{i:0;s:2:"97";i:1;s:4:"-218";i:2;s:3:"205";i:3;s:3:"467";}}s:10:"exclamdown";a:4:{s:1:"C";s:3:"161";s:2:"WX";s:3:"333";s:1:"N";s:10:"exclamdown";s:1:"B";a:4:{i:0;s:2:"97";i:1;s:4:"-218";i:2;s:3:"205";i:3;s:3:"467";}}i:162;a:4:{s:1:"C";s:3:"162";s:2:"WX";s:3:"500";s:1:"N";s:4:"cent";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:4:"-138";i:2;s:3:"448";i:3;s:3:"579";}}s:4:"cent";a:4:{s:1:"C";s:3:"162";s:2:"WX";s:3:"500";s:1:"N";s:4:"cent";s:1:"B";a:4:{i:0;s:2:"53";i:1;s:4:"-138";i:2;s:3:"448";i:3;s:3:"579";}}i:163;a:4:{s:1:"C";s:3:"163";s:2:"WX";s:3:"500";s:1:"N";s:8:"sterling";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:2:"-8";i:2;s:3:"490";i:3;s:3:"676";}}s:8:"sterling";a:4:{s:1:"C";s:3:"163";s:2:"WX";s:3:"500";s:1:"N";s:8:"sterling";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:2:"-8";i:2;s:3:"490";i:3;s:3:"676";}}i:164;a:4:{s:1:"C";s:3:"164";s:2:"WX";s:3:"167";s:1:"N";s:8:"fraction";s:1:"B";a:4:{i:0;s:4:"-168";i:1;s:3:"-14";i:2;s:3:"331";i:3;s:3:"676";}}s:8:"fraction";a:4:{s:1:"C";s:3:"164";s:2:"WX";s:3:"167";s:1:"N";s:8:"fraction";s:1:"B";a:4:{i:0;s:4:"-168";i:1;s:3:"-14";i:2;s:3:"331";i:3;s:3:"676";}}i:165;a:4:{s:1:"C";s:3:"165";s:2:"WX";s:3:"500";s:1:"N";s:3:"yen";s:1:"B";a:4:{i:0;s:3:"-53";i:1;s:1:"0";i:2;s:3:"512";i:3;s:3:"662";}}s:3:"yen";a:4:{s:1:"C";s:3:"165";s:2:"WX";s:3:"500";s:1:"N";s:3:"yen";s:1:"B";a:4:{i:0;s:3:"-53";i:1;s:1:"0";i:2;s:3:"512";i:3;s:3:"662";}}i:166;a:4:{s:1:"C";s:3:"166";s:2:"WX";s:3:"500";s:1:"N";s:6:"florin";s:1:"B";a:4:{i:0;s:1:"7";i:1;s:4:"-189";i:2;s:3:"490";i:3;s:3:"676";}}s:6:"florin";a:4:{s:1:"C";s:3:"166";s:2:"WX";s:3:"500";s:1:"N";s:6:"florin";s:1:"B";a:4:{i:0;s:1:"7";i:1;s:4:"-189";i:2;s:3:"490";i:3;s:3:"676";}}i:167;a:4:{s:1:"C";s:3:"167";s:2:"WX";s:3:"500";s:1:"N";s:7:"section";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:4:"-148";i:2;s:3:"426";i:3;s:3:"676";}}s:7:"section";a:4:{s:1:"C";s:3:"167";s:2:"WX";s:3:"500";s:1:"N";s:7:"section";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:4:"-148";i:2;s:3:"426";i:3;s:3:"676";}}i:168;a:4:{s:1:"C";s:3:"168";s:2:"WX";s:3:"500";s:1:"N";s:8:"currency";s:1:"B";a:4:{i:0;s:3:"-22";i:1;s:2:"58";i:2;s:3:"522";i:3;s:3:"602";}}s:8:"currency";a:4:{s:1:"C";s:3:"168";s:2:"WX";s:3:"500";s:1:"N";s:8:"currency";s:1:"B";a:4:{i:0;s:3:"-22";i:1;s:2:"58";i:2;s:3:"522";i:3;s:3:"602";}}i:169;a:4:{s:1:"C";s:3:"169";s:2:"WX";s:3:"180";s:1:"N";s:11:"quotesingle";s:1:"B";a:4:{i:0;s:2:"48";i:1;s:3:"431";i:2;s:3:"133";i:3;s:3:"676";}}s:11:"quotesingle";a:4:{s:1:"C";s:3:"169";s:2:"WX";s:3:"180";s:1:"N";s:11:"quotesingle";s:1:"B";a:4:{i:0;s:2:"48";i:1;s:3:"431";i:2;s:3:"133";i:3;s:3:"676";}}i:170;a:4:{s:1:"C";s:3:"170";s:2:"WX";s:3:"444";s:1:"N";s:12:"quotedblleft";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:3:"433";i:2;s:3:"414";i:3;s:3:"676";}}s:12:"quotedblleft";a:4:{s:1:"C";s:3:"170";s:2:"WX";s:3:"444";s:1:"N";s:12:"quotedblleft";s:1:"B";a:4:{i:0;s:2:"43";i:1;s:3:"433";i:2;s:3:"414";i:3;s:3:"676";}}i:171;a:4:{s:1:"C";s:3:"171";s:2:"WX";s:3:"500";s:1:"N";s:13:"guillemotleft";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:2:"33";i:2;s:3:"456";i:3;s:3:"416";}}s:13:"guillemotleft";a:4:{s:1:"C";s:3:"171";s:2:"WX";s:3:"500";s:1:"N";s:13:"guillemotleft";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:2:"33";i:2;s:3:"456";i:3;s:3:"416";}}i:172;a:4:{s:1:"C";s:3:"172";s:2:"WX";s:3:"333";s:1:"N";s:13:"guilsinglleft";s:1:"B";a:4:{i:0;s:2:"63";i:1;s:2:"33";i:2;s:3:"285";i:3;s:3:"416";}}s:13:"guilsinglleft";a:4:{s:1:"C";s:3:"172";s:2:"WX";s:3:"333";s:1:"N";s:13:"guilsinglleft";s:1:"B";a:4:{i:0;s:2:"63";i:1;s:2:"33";i:2;s:3:"285";i:3;s:3:"416";}}i:173;a:4:{s:1:"C";s:3:"173";s:2:"WX";s:3:"333";s:1:"N";s:14:"guilsinglright";s:1:"B";a:4:{i:0;s:2:"48";i:1;s:2:"33";i:2;s:3:"270";i:3;s:3:"416";}}s:14:"guilsinglright";a:4:{s:1:"C";s:3:"173";s:2:"WX";s:3:"333";s:1:"N";s:14:"guilsinglright";s:1:"B";a:4:{i:0;s:2:"48";i:1;s:2:"33";i:2;s:3:"270";i:3;s:3:"416";}}i:174;a:4:{s:1:"C";s:3:"174";s:2:"WX";s:3:"556";s:1:"N";s:2:"fi";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:1:"0";i:2;s:3:"521";i:3;s:3:"683";}}s:2:"fi";a:4:{s:1:"C";s:3:"174";s:2:"WX";s:3:"556";s:1:"N";s:2:"fi";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:1:"0";i:2;s:3:"521";i:3;s:3:"683";}}i:175;a:4:{s:1:"C";s:3:"175";s:2:"WX";s:3:"556";s:1:"N";s:2:"fl";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:1:"0";i:2;s:3:"521";i:3;s:3:"683";}}s:2:"fl";a:4:{s:1:"C";s:3:"175";s:2:"WX";s:3:"556";s:1:"N";s:2:"fl";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:1:"0";i:2;s:3:"521";i:3;s:3:"683";}}i:177;a:4:{s:1:"C";s:3:"177";s:2:"WX";s:3:"500";s:1:"N";s:6:"endash";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"201";i:2;s:3:"500";i:3;s:3:"250";}}s:6:"endash";a:4:{s:1:"C";s:3:"177";s:2:"WX";s:3:"500";s:1:"N";s:6:"endash";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"201";i:2;s:3:"500";i:3;s:3:"250";}}i:178;a:4:{s:1:"C";s:3:"178";s:2:"WX";s:3:"500";s:1:"N";s:6:"dagger";s:1:"B";a:4:{i:0;s:2:"59";i:1;s:4:"-149";i:2;s:3:"442";i:3;s:3:"676";}}s:6:"dagger";a:4:{s:1:"C";s:3:"178";s:2:"WX";s:3:"500";s:1:"N";s:6:"dagger";s:1:"B";a:4:{i:0;s:2:"59";i:1;s:4:"-149";i:2;s:3:"442";i:3;s:3:"676";}}i:179;a:4:{s:1:"C";s:3:"179";s:2:"WX";s:3:"500";s:1:"N";s:9:"daggerdbl";s:1:"B";a:4:{i:0;s:2:"58";i:1;s:4:"-153";i:2;s:3:"442";i:3;s:3:"676";}}s:9:"daggerdbl";a:4:{s:1:"C";s:3:"179";s:2:"WX";s:3:"500";s:1:"N";s:9:"daggerdbl";s:1:"B";a:4:{i:0;s:2:"58";i:1;s:4:"-153";i:2;s:3:"442";i:3;s:3:"676";}}i:180;a:4:{s:1:"C";s:3:"180";s:2:"WX";s:3:"250";s:1:"N";s:14:"periodcentered";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:3:"199";i:2;s:3:"181";i:3;s:3:"310";}}s:14:"periodcentered";a:4:{s:1:"C";s:3:"180";s:2:"WX";s:3:"250";s:1:"N";s:14:"periodcentered";s:1:"B";a:4:{i:0;s:2:"70";i:1;s:3:"199";i:2;s:3:"181";i:3;s:3:"310";}}i:182;a:4:{s:1:"C";s:3:"182";s:2:"WX";s:3:"453";s:1:"N";s:9:"paragraph";s:1:"B";a:4:{i:0;s:3:"-22";i:1;s:4:"-154";i:2;s:3:"450";i:3;s:3:"662";}}s:9:"paragraph";a:4:{s:1:"C";s:3:"182";s:2:"WX";s:3:"453";s:1:"N";s:9:"paragraph";s:1:"B";a:4:{i:0;s:3:"-22";i:1;s:4:"-154";i:2;s:3:"450";i:3;s:3:"662";}}i:183;a:4:{s:1:"C";s:3:"183";s:2:"WX";s:3:"350";s:1:"N";s:6:"bullet";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"196";i:2;s:3:"310";i:3;s:3:"466";}}s:6:"bullet";a:4:{s:1:"C";s:3:"183";s:2:"WX";s:3:"350";s:1:"N";s:6:"bullet";s:1:"B";a:4:{i:0;s:2:"40";i:1;s:3:"196";i:2;s:3:"310";i:3;s:3:"466";}}i:184;a:4:{s:1:"C";s:3:"184";s:2:"WX";s:3:"333";s:1:"N";s:14:"quotesinglbase";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:4:"-141";i:2;s:3:"218";i:3;s:3:"102";}}s:14:"quotesinglbase";a:4:{s:1:"C";s:3:"184";s:2:"WX";s:3:"333";s:1:"N";s:14:"quotesinglbase";s:1:"B";a:4:{i:0;s:2:"79";i:1;s:4:"-141";i:2;s:3:"218";i:3;s:3:"102";}}i:185;a:4:{s:1:"C";s:3:"185";s:2:"WX";s:3:"444";s:1:"N";s:12:"quotedblbase";s:1:"B";a:4:{i:0;s:2:"45";i:1;s:4:"-141";i:2;s:3:"416";i:3;s:3:"102";}}s:12:"quotedblbase";a:4:{s:1:"C";s:3:"185";s:2:"WX";s:3:"444";s:1:"N";s:12:"quotedblbase";s:1:"B";a:4:{i:0;s:2:"45";i:1;s:4:"-141";i:2;s:3:"416";i:3;s:3:"102";}}i:186;a:4:{s:1:"C";s:3:"186";s:2:"WX";s:3:"444";s:1:"N";s:13:"quotedblright";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"433";i:2;s:3:"401";i:3;s:3:"676";}}s:13:"quotedblright";a:4:{s:1:"C";s:3:"186";s:2:"WX";s:3:"444";s:1:"N";s:13:"quotedblright";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"433";i:2;s:3:"401";i:3;s:3:"676";}}i:187;a:4:{s:1:"C";s:3:"187";s:2:"WX";s:3:"500";s:1:"N";s:14:"guillemotright";s:1:"B";a:4:{i:0;s:2:"44";i:1;s:2:"33";i:2;s:3:"458";i:3;s:3:"416";}}s:14:"guillemotright";a:4:{s:1:"C";s:3:"187";s:2:"WX";s:3:"500";s:1:"N";s:14:"guillemotright";s:1:"B";a:4:{i:0;s:2:"44";i:1;s:2:"33";i:2;s:3:"458";i:3;s:3:"416";}}i:188;a:4:{s:1:"C";s:3:"188";s:2:"WX";s:4:"1000";s:1:"N";s:8:"ellipsis";s:1:"B";a:4:{i:0;s:3:"111";i:1;s:3:"-11";i:2;s:3:"888";i:3;s:3:"100";}}s:8:"ellipsis";a:4:{s:1:"C";s:3:"188";s:2:"WX";s:4:"1000";s:1:"N";s:8:"ellipsis";s:1:"B";a:4:{i:0;s:3:"111";i:1;s:3:"-11";i:2;s:3:"888";i:3;s:3:"100";}}i:189;a:4:{s:1:"C";s:3:"189";s:2:"WX";s:4:"1000";s:1:"N";s:11:"perthousand";s:1:"B";a:4:{i:0;s:1:"7";i:1;s:3:"-19";i:2;s:3:"994";i:3;s:3:"706";}}s:11:"perthousand";a:4:{s:1:"C";s:3:"189";s:2:"WX";s:4:"1000";s:1:"N";s:11:"perthousand";s:1:"B";a:4:{i:0;s:1:"7";i:1;s:3:"-19";i:2;s:3:"994";i:3;s:3:"706";}}i:191;a:4:{s:1:"C";s:3:"191";s:2:"WX";s:3:"444";s:1:"N";s:12:"questiondown";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:4:"-218";i:2;s:3:"376";i:3;s:3:"466";}}s:12:"questiondown";a:4:{s:1:"C";s:3:"191";s:2:"WX";s:3:"444";s:1:"N";s:12:"questiondown";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:4:"-218";i:2;s:3:"376";i:3;s:3:"466";}}i:193;a:4:{s:1:"C";s:3:"193";s:2:"WX";s:3:"333";s:1:"N";s:5:"grave";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:3:"507";i:2;s:3:"242";i:3;s:3:"678";}}s:5:"grave";a:4:{s:1:"C";s:3:"193";s:2:"WX";s:3:"333";s:1:"N";s:5:"grave";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:3:"507";i:2;s:3:"242";i:3;s:3:"678";}}i:194;a:4:{s:1:"C";s:3:"194";s:2:"WX";s:3:"333";s:1:"N";s:5:"acute";s:1:"B";a:4:{i:0;s:2:"93";i:1;s:3:"507";i:2;s:3:"317";i:3;s:3:"678";}}s:5:"acute";a:4:{s:1:"C";s:3:"194";s:2:"WX";s:3:"333";s:1:"N";s:5:"acute";s:1:"B";a:4:{i:0;s:2:"93";i:1;s:3:"507";i:2;s:3:"317";i:3;s:3:"678";}}i:195;a:4:{s:1:"C";s:3:"195";s:2:"WX";s:3:"333";s:1:"N";s:10:"circumflex";s:1:"B";a:4:{i:0;s:2:"11";i:1;s:3:"507";i:2;s:3:"322";i:3;s:3:"674";}}s:10:"circumflex";a:4:{s:1:"C";s:3:"195";s:2:"WX";s:3:"333";s:1:"N";s:10:"circumflex";s:1:"B";a:4:{i:0;s:2:"11";i:1;s:3:"507";i:2;s:3:"322";i:3;s:3:"674";}}i:196;a:4:{s:1:"C";s:3:"196";s:2:"WX";s:3:"333";s:1:"N";s:5:"tilde";s:1:"B";a:4:{i:0;s:1:"1";i:1;s:3:"532";i:2;s:3:"331";i:3;s:3:"638";}}s:5:"tilde";a:4:{s:1:"C";s:3:"196";s:2:"WX";s:3:"333";s:1:"N";s:5:"tilde";s:1:"B";a:4:{i:0;s:1:"1";i:1;s:3:"532";i:2;s:3:"331";i:3;s:3:"638";}}i:197;a:4:{s:1:"C";s:3:"197";s:2:"WX";s:3:"333";s:1:"N";s:6:"macron";s:1:"B";a:4:{i:0;s:2:"11";i:1;s:3:"547";i:2;s:3:"322";i:3;s:3:"601";}}s:6:"macron";a:4:{s:1:"C";s:3:"197";s:2:"WX";s:3:"333";s:1:"N";s:6:"macron";s:1:"B";a:4:{i:0;s:2:"11";i:1;s:3:"547";i:2;s:3:"322";i:3;s:3:"601";}}i:198;a:4:{s:1:"C";s:3:"198";s:2:"WX";s:3:"333";s:1:"N";s:5:"breve";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:3:"507";i:2;s:3:"307";i:3;s:3:"664";}}s:5:"breve";a:4:{s:1:"C";s:3:"198";s:2:"WX";s:3:"333";s:1:"N";s:5:"breve";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:3:"507";i:2;s:3:"307";i:3;s:3:"664";}}i:199;a:4:{s:1:"C";s:3:"199";s:2:"WX";s:3:"333";s:1:"N";s:9:"dotaccent";s:1:"B";a:4:{i:0;s:3:"118";i:1;s:3:"581";i:2;s:3:"216";i:3;s:3:"681";}}s:9:"dotaccent";a:4:{s:1:"C";s:3:"199";s:2:"WX";s:3:"333";s:1:"N";s:9:"dotaccent";s:1:"B";a:4:{i:0;s:3:"118";i:1;s:3:"581";i:2;s:3:"216";i:3;s:3:"681";}}i:200;a:4:{s:1:"C";s:3:"200";s:2:"WX";s:3:"333";s:1:"N";s:8:"dieresis";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:3:"581";i:2;s:3:"315";i:3;s:3:"681";}}s:8:"dieresis";a:4:{s:1:"C";s:3:"200";s:2:"WX";s:3:"333";s:1:"N";s:8:"dieresis";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:3:"581";i:2;s:3:"315";i:3;s:3:"681";}}i:202;a:4:{s:1:"C";s:3:"202";s:2:"WX";s:3:"333";s:1:"N";s:4:"ring";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:3:"512";i:2;s:3:"266";i:3;s:3:"711";}}s:4:"ring";a:4:{s:1:"C";s:3:"202";s:2:"WX";s:3:"333";s:1:"N";s:4:"ring";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:3:"512";i:2;s:3:"266";i:3;s:3:"711";}}i:203;a:4:{s:1:"C";s:3:"203";s:2:"WX";s:3:"333";s:1:"N";s:7:"cedilla";s:1:"B";a:4:{i:0;s:2:"52";i:1;s:4:"-215";i:2;s:3:"261";i:3;s:1:"0";}}s:7:"cedilla";a:4:{s:1:"C";s:3:"203";s:2:"WX";s:3:"333";s:1:"N";s:7:"cedilla";s:1:"B";a:4:{i:0;s:2:"52";i:1;s:4:"-215";i:2;s:3:"261";i:3;s:1:"0";}}i:205;a:4:{s:1:"C";s:3:"205";s:2:"WX";s:3:"333";s:1:"N";s:12:"hungarumlaut";s:1:"B";a:4:{i:0;s:2:"-3";i:1;s:3:"507";i:2;s:3:"377";i:3;s:3:"678";}}s:12:"hungarumlaut";a:4:{s:1:"C";s:3:"205";s:2:"WX";s:3:"333";s:1:"N";s:12:"hungarumlaut";s:1:"B";a:4:{i:0;s:2:"-3";i:1;s:3:"507";i:2;s:3:"377";i:3;s:3:"678";}}i:206;a:4:{s:1:"C";s:3:"206";s:2:"WX";s:3:"333";s:1:"N";s:6:"ogonek";s:1:"B";a:4:{i:0;s:2:"62";i:1;s:4:"-165";i:2;s:3:"243";i:3;s:1:"0";}}s:6:"ogonek";a:4:{s:1:"C";s:3:"206";s:2:"WX";s:3:"333";s:1:"N";s:6:"ogonek";s:1:"B";a:4:{i:0;s:2:"62";i:1;s:4:"-165";i:2;s:3:"243";i:3;s:1:"0";}}i:207;a:4:{s:1:"C";s:3:"207";s:2:"WX";s:3:"333";s:1:"N";s:5:"caron";s:1:"B";a:4:{i:0;s:2:"11";i:1;s:3:"507";i:2;s:3:"322";i:3;s:3:"674";}}s:5:"caron";a:4:{s:1:"C";s:3:"207";s:2:"WX";s:3:"333";s:1:"N";s:5:"caron";s:1:"B";a:4:{i:0;s:2:"11";i:1;s:3:"507";i:2;s:3:"322";i:3;s:3:"674";}}i:208;a:4:{s:1:"C";s:3:"208";s:2:"WX";s:4:"1000";s:1:"N";s:6:"emdash";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"201";i:2;s:4:"1000";i:3;s:3:"250";}}s:6:"emdash";a:4:{s:1:"C";s:3:"208";s:2:"WX";s:4:"1000";s:1:"N";s:6:"emdash";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"201";i:2;s:4:"1000";i:3;s:3:"250";}}i:225;a:4:{s:1:"C";s:3:"225";s:2:"WX";s:3:"889";s:1:"N";s:2:"AE";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:3:"863";i:3;s:3:"662";}}s:2:"AE";a:4:{s:1:"C";s:3:"225";s:2:"WX";s:3:"889";s:1:"N";s:2:"AE";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:3:"863";i:3;s:3:"662";}}i:227;a:4:{s:1:"C";s:3:"227";s:2:"WX";s:3:"276";s:1:"N";s:11:"ordfeminine";s:1:"B";a:4:{i:0;s:1:"4";i:1;s:3:"394";i:2;s:3:"270";i:3;s:3:"676";}}s:11:"ordfeminine";a:4:{s:1:"C";s:3:"227";s:2:"WX";s:3:"276";s:1:"N";s:11:"ordfeminine";s:1:"B";a:4:{i:0;s:1:"4";i:1;s:3:"394";i:2;s:3:"270";i:3;s:3:"676";}}i:232;a:4:{s:1:"C";s:3:"232";s:2:"WX";s:3:"611";s:1:"N";s:6:"Lslash";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:1:"0";i:2;s:3:"598";i:3;s:3:"662";}}s:6:"Lslash";a:4:{s:1:"C";s:3:"232";s:2:"WX";s:3:"611";s:1:"N";s:6:"Lslash";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:1:"0";i:2;s:3:"598";i:3;s:3:"662";}}i:233;a:4:{s:1:"C";s:3:"233";s:2:"WX";s:3:"722";s:1:"N";s:6:"Oslash";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-80";i:2;s:3:"688";i:3;s:3:"734";}}s:6:"Oslash";a:4:{s:1:"C";s:3:"233";s:2:"WX";s:3:"722";s:1:"N";s:6:"Oslash";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-80";i:2;s:3:"688";i:3;s:3:"734";}}i:234;a:4:{s:1:"C";s:3:"234";s:2:"WX";s:3:"889";s:1:"N";s:2:"OE";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:2:"-6";i:2;s:3:"885";i:3;s:3:"668";}}s:2:"OE";a:4:{s:1:"C";s:3:"234";s:2:"WX";s:3:"889";s:1:"N";s:2:"OE";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:2:"-6";i:2;s:3:"885";i:3;s:3:"668";}}i:235;a:4:{s:1:"C";s:3:"235";s:2:"WX";s:3:"310";s:1:"N";s:12:"ordmasculine";s:1:"B";a:4:{i:0;s:1:"6";i:1;s:3:"394";i:2;s:3:"304";i:3;s:3:"676";}}s:12:"ordmasculine";a:4:{s:1:"C";s:3:"235";s:2:"WX";s:3:"310";s:1:"N";s:12:"ordmasculine";s:1:"B";a:4:{i:0;s:1:"6";i:1;s:3:"394";i:2;s:3:"304";i:3;s:3:"676";}}i:241;a:4:{s:1:"C";s:3:"241";s:2:"WX";s:3:"667";s:1:"N";s:2:"ae";s:1:"B";a:4:{i:0;s:2:"38";i:1;s:3:"-10";i:2;s:3:"632";i:3;s:3:"460";}}s:2:"ae";a:4:{s:1:"C";s:3:"241";s:2:"WX";s:3:"667";s:1:"N";s:2:"ae";s:1:"B";a:4:{i:0;s:2:"38";i:1;s:3:"-10";i:2;s:3:"632";i:3;s:3:"460";}}i:245;a:4:{s:1:"C";s:3:"245";s:2:"WX";s:3:"278";s:1:"N";s:8:"dotlessi";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"253";i:3;s:3:"460";}}s:8:"dotlessi";a:4:{s:1:"C";s:3:"245";s:2:"WX";s:3:"278";s:1:"N";s:8:"dotlessi";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"253";i:3;s:3:"460";}}i:248;a:4:{s:1:"C";s:3:"248";s:2:"WX";s:3:"278";s:1:"N";s:6:"lslash";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:1:"0";i:2;s:3:"259";i:3;s:3:"683";}}s:6:"lslash";a:4:{s:1:"C";s:3:"248";s:2:"WX";s:3:"278";s:1:"N";s:6:"lslash";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:1:"0";i:2;s:3:"259";i:3;s:3:"683";}}i:249;a:4:{s:1:"C";s:3:"249";s:2:"WX";s:3:"500";s:1:"N";s:6:"oslash";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:4:"-112";i:2;s:3:"470";i:3;s:3:"551";}}s:6:"oslash";a:4:{s:1:"C";s:3:"249";s:2:"WX";s:3:"500";s:1:"N";s:6:"oslash";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:4:"-112";i:2;s:3:"470";i:3;s:3:"551";}}i:250;a:4:{s:1:"C";s:3:"250";s:2:"WX";s:3:"722";s:1:"N";s:2:"oe";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"-10";i:2;s:3:"690";i:3;s:3:"460";}}s:2:"oe";a:4:{s:1:"C";s:3:"250";s:2:"WX";s:3:"722";s:1:"N";s:2:"oe";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"-10";i:2;s:3:"690";i:3;s:3:"460";}}i:251;a:4:{s:1:"C";s:3:"251";s:2:"WX";s:3:"500";s:1:"N";s:10:"germandbls";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:2:"-9";i:2;s:3:"468";i:3;s:3:"683";}}s:10:"germandbls";a:4:{s:1:"C";s:3:"251";s:2:"WX";s:3:"500";s:1:"N";s:10:"germandbls";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:2:"-9";i:2;s:3:"468";i:3;s:3:"683";}}s:9:"Idieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"333";s:1:"N";s:9:"Idieresis";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:1:"0";i:2;s:3:"315";i:3;s:3:"835";}}s:6:"eacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:6:"eacute";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-10";i:2;s:3:"424";i:3;s:3:"678";}}s:6:"abreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:6:"abreve";s:1:"B";a:4:{i:0;s:2:"37";i:1;s:3:"-10";i:2;s:3:"442";i:3;s:3:"664";}}s:13:"uhungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:13:"uhungarumlaut";s:1:"B";a:4:{i:0;s:1:"9";i:1;s:3:"-10";i:2;s:3:"501";i:3;s:3:"678";}}s:6:"ecaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:6:"ecaron";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-10";i:2;s:3:"424";i:3;s:3:"674";}}s:9:"Ydieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:9:"Ydieresis";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:1:"0";i:2;s:3:"703";i:3;s:3:"835";}}s:6:"divide";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"564";s:1:"N";s:6:"divide";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"-10";i:2;s:3:"534";i:3;s:3:"516";}}s:6:"Yacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Yacute";s:1:"B";a:4:{i:0;s:2:"22";i:1;s:1:"0";i:2;s:3:"703";i:3;s:3:"890";}}s:11:"Acircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:11:"Acircumflex";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:1:"0";i:2;s:3:"706";i:3;s:3:"886";}}s:6:"aacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:6:"aacute";s:1:"B";a:4:{i:0;s:2:"37";i:1;s:3:"-10";i:2;s:3:"442";i:3;s:3:"678";}}s:11:"Ucircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:11:"Ucircumflex";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:3:"-14";i:2;s:3:"705";i:3;s:3:"886";}}s:6:"yacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"yacute";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:4:"-218";i:2;s:3:"475";i:3;s:3:"678";}}s:12:"scommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:12:"scommaaccent";s:1:"B";a:4:{i:0;s:2:"51";i:1;s:4:"-218";i:2;s:3:"348";i:3;s:3:"460";}}s:11:"ecircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:11:"ecircumflex";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-10";i:2;s:3:"424";i:3;s:3:"674";}}s:5:"Uring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:5:"Uring";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:3:"-14";i:2;s:3:"705";i:3;s:3:"898";}}s:9:"Udieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:9:"Udieresis";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:3:"-14";i:2;s:3:"705";i:3;s:3:"835";}}s:7:"aogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:7:"aogonek";s:1:"B";a:4:{i:0;s:2:"37";i:1;s:4:"-165";i:2;s:3:"469";i:3;s:3:"460";}}s:6:"Uacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Uacute";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:3:"-14";i:2;s:3:"705";i:3;s:3:"890";}}s:7:"uogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:7:"uogonek";s:1:"B";a:4:{i:0;s:1:"9";i:1;s:4:"-155";i:2;s:3:"487";i:3;s:3:"450";}}s:9:"Edieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:9:"Edieresis";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:1:"0";i:2;s:3:"597";i:3;s:3:"835";}}s:6:"Dcroat";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Dcroat";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"685";i:3;s:3:"662";}}s:11:"commaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"250";s:1:"N";s:11:"commaaccent";s:1:"B";a:4:{i:0;s:2:"59";i:1;s:4:"-218";i:2;s:3:"184";i:3;s:3:"-50";}}s:9:"copyright";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"760";s:1:"N";s:9:"copyright";s:1:"B";a:4:{i:0;s:2:"38";i:1;s:3:"-14";i:2;s:3:"722";i:3;s:3:"676";}}s:7:"Emacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:7:"Emacron";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:1:"0";i:2;s:3:"597";i:3;s:3:"813";}}s:6:"ccaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:6:"ccaron";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-10";i:2;s:3:"412";i:3;s:3:"674";}}s:5:"aring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:5:"aring";s:1:"B";a:4:{i:0;s:2:"37";i:1;s:3:"-10";i:2;s:3:"442";i:3;s:3:"711";}}s:12:"Ncommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:12:"Ncommaaccent";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:4:"-198";i:2;s:3:"707";i:3;s:3:"662";}}s:6:"lacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:6:"lacute";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:1:"0";i:2;s:3:"290";i:3;s:3:"890";}}s:6:"agrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:6:"agrave";s:1:"B";a:4:{i:0;s:2:"37";i:1;s:3:"-10";i:2;s:3:"442";i:3;s:3:"678";}}s:12:"Tcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:12:"Tcommaaccent";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:4:"-218";i:2;s:3:"593";i:3;s:3:"662";}}s:6:"Cacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Cacute";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:3:"-14";i:2;s:3:"633";i:3;s:3:"890";}}s:6:"atilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:6:"atilde";s:1:"B";a:4:{i:0;s:2:"37";i:1;s:3:"-10";i:2;s:3:"442";i:3;s:3:"638";}}s:10:"Edotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:10:"Edotaccent";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:1:"0";i:2;s:3:"597";i:3;s:3:"835";}}s:6:"scaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:6:"scaron";s:1:"B";a:4:{i:0;s:2:"39";i:1;s:3:"-10";i:2;s:3:"350";i:3;s:3:"674";}}s:8:"scedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:8:"scedilla";s:1:"B";a:4:{i:0;s:2:"51";i:1;s:4:"-215";i:2;s:3:"348";i:3;s:3:"460";}}s:6:"iacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:6:"iacute";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"290";i:3;s:3:"678";}}s:7:"lozenge";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"471";s:1:"N";s:7:"lozenge";s:1:"B";a:4:{i:0;s:2:"13";i:1;s:1:"0";i:2;s:3:"459";i:3;s:3:"724";}}s:6:"Rcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Rcaron";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:1:"0";i:2;s:3:"659";i:3;s:3:"886";}}s:12:"Gcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:12:"Gcommaaccent";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:4:"-218";i:2;s:3:"709";i:3;s:3:"676";}}s:11:"ucircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:11:"ucircumflex";s:1:"B";a:4:{i:0;s:1:"9";i:1;s:3:"-10";i:2;s:3:"479";i:3;s:3:"674";}}s:11:"acircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:11:"acircumflex";s:1:"B";a:4:{i:0;s:2:"37";i:1;s:3:"-10";i:2;s:3:"442";i:3;s:3:"674";}}s:7:"Amacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:7:"Amacron";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:1:"0";i:2;s:3:"706";i:3;s:3:"813";}}s:6:"rcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"333";s:1:"N";s:6:"rcaron";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:1:"0";i:2;s:3:"335";i:3;s:3:"674";}}s:8:"ccedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:8:"ccedilla";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:4:"-215";i:2;s:3:"412";i:3;s:3:"460";}}s:10:"Zdotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:10:"Zdotaccent";s:1:"B";a:4:{i:0;s:1:"9";i:1;s:1:"0";i:2;s:3:"597";i:3;s:3:"835";}}s:5:"Thorn";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:5:"Thorn";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"542";i:3;s:3:"662";}}s:7:"Omacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:7:"Omacron";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"688";i:3;s:3:"813";}}s:6:"Racute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Racute";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:1:"0";i:2;s:3:"659";i:3;s:3:"890";}}s:6:"Sacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"Sacute";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:3:"-14";i:2;s:3:"491";i:3;s:3:"890";}}s:6:"dcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"588";s:1:"N";s:6:"dcaron";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:3:"-10";i:2;s:3:"589";i:3;s:3:"695";}}s:7:"Umacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:7:"Umacron";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:3:"-14";i:2;s:3:"705";i:3;s:3:"813";}}s:5:"uring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:5:"uring";s:1:"B";a:4:{i:0;s:1:"9";i:1;s:3:"-10";i:2;s:3:"479";i:3;s:3:"711";}}s:13:"threesuperior";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"300";s:1:"N";s:13:"threesuperior";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:3:"262";i:2;s:3:"291";i:3;s:3:"676";}}s:6:"Ograve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Ograve";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"688";i:3;s:3:"890";}}s:6:"Agrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Agrave";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:1:"0";i:2;s:3:"706";i:3;s:3:"890";}}s:6:"Abreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Abreve";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:1:"0";i:2;s:3:"706";i:3;s:3:"876";}}s:8:"multiply";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"564";s:1:"N";s:8:"multiply";s:1:"B";a:4:{i:0;s:2:"38";i:1;s:1:"8";i:2;s:3:"527";i:3;s:3:"497";}}s:6:"uacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"uacute";s:1:"B";a:4:{i:0;s:1:"9";i:1;s:3:"-10";i:2;s:3:"479";i:3;s:3:"678";}}s:6:"Tcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"Tcaron";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:1:"0";i:2;s:3:"593";i:3;s:3:"886";}}s:11:"partialdiff";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"476";s:1:"N";s:11:"partialdiff";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:3:"-38";i:2;s:3:"459";i:3;s:3:"710";}}s:9:"ydieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:9:"ydieresis";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:4:"-218";i:2;s:3:"475";i:3;s:3:"623";}}s:6:"Nacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Nacute";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:3:"-11";i:2;s:3:"707";i:3;s:3:"890";}}s:11:"icircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:11:"icircumflex";s:1:"B";a:4:{i:0;s:3:"-16";i:1;s:1:"0";i:2;s:3:"295";i:3;s:3:"674";}}s:11:"Ecircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:11:"Ecircumflex";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:1:"0";i:2;s:3:"597";i:3;s:3:"886";}}s:9:"adieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:9:"adieresis";s:1:"B";a:4:{i:0;s:2:"37";i:1;s:3:"-10";i:2;s:3:"442";i:3;s:3:"623";}}s:9:"edieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:9:"edieresis";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-10";i:2;s:3:"424";i:3;s:3:"623";}}s:6:"cacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:6:"cacute";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-10";i:2;s:3:"413";i:3;s:3:"678";}}s:6:"nacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"nacute";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"485";i:3;s:3:"678";}}s:7:"umacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:7:"umacron";s:1:"B";a:4:{i:0;s:1:"9";i:1;s:3:"-10";i:2;s:3:"479";i:3;s:3:"601";}}s:6:"Ncaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Ncaron";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:3:"-11";i:2;s:3:"707";i:3;s:3:"886";}}s:6:"Iacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"333";s:1:"N";s:6:"Iacute";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:1:"0";i:2;s:3:"317";i:3;s:3:"890";}}s:9:"plusminus";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"564";s:1:"N";s:9:"plusminus";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:1:"0";i:2;s:3:"534";i:3;s:3:"506";}}s:9:"brokenbar";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"200";s:1:"N";s:9:"brokenbar";s:1:"B";a:4:{i:0;s:2:"67";i:1;s:4:"-143";i:2;s:3:"133";i:3;s:3:"707";}}s:10:"registered";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"760";s:1:"N";s:10:"registered";s:1:"B";a:4:{i:0;s:2:"38";i:1;s:3:"-14";i:2;s:3:"722";i:3;s:3:"676";}}s:6:"Gbreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Gbreve";s:1:"B";a:4:{i:0;s:2:"32";i:1;s:3:"-14";i:2;s:3:"709";i:3;s:3:"876";}}s:10:"Idotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"333";s:1:"N";s:10:"Idotaccent";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:1:"0";i:2;s:3:"315";i:3;s:3:"835";}}s:9:"summation";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"600";s:1:"N";s:9:"summation";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:3:"-10";i:2;s:3:"585";i:3;s:3:"706";}}s:6:"Egrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"Egrave";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:1:"0";i:2;s:3:"597";i:3;s:3:"890";}}s:6:"racute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"333";s:1:"N";s:6:"racute";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:1:"0";i:2;s:3:"335";i:3;s:3:"678";}}s:7:"omacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:7:"omacron";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:3:"-10";i:2;s:3:"470";i:3;s:3:"601";}}s:6:"Zacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"Zacute";s:1:"B";a:4:{i:0;s:1:"9";i:1;s:1:"0";i:2;s:3:"597";i:3;s:3:"890";}}s:6:"Zcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"Zcaron";s:1:"B";a:4:{i:0;s:1:"9";i:1;s:1:"0";i:2;s:3:"597";i:3;s:3:"886";}}s:12:"greaterequal";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"549";s:1:"N";s:12:"greaterequal";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"523";i:3;s:3:"666";}}s:3:"Eth";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:3:"Eth";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"685";i:3;s:3:"662";}}s:8:"Ccedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:8:"Ccedilla";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:4:"-215";i:2;s:3:"633";i:3;s:3:"676";}}s:12:"lcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:12:"lcommaaccent";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:4:"-218";i:2;s:3:"257";i:3;s:3:"683";}}s:6:"tcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"326";s:1:"N";s:6:"tcaron";s:1:"B";a:4:{i:0;s:2:"13";i:1;s:3:"-10";i:2;s:3:"318";i:3;s:3:"722";}}s:7:"eogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:7:"eogonek";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:4:"-165";i:2;s:3:"424";i:3;s:3:"460";}}s:7:"Uogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:7:"Uogonek";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:4:"-165";i:2;s:3:"705";i:3;s:3:"662";}}s:6:"Aacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Aacute";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:1:"0";i:2;s:3:"706";i:3;s:3:"890";}}s:9:"Adieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:9:"Adieresis";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:1:"0";i:2;s:3:"706";i:3;s:3:"835";}}s:6:"egrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:6:"egrave";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-10";i:2;s:3:"424";i:3;s:3:"678";}}s:6:"zacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:6:"zacute";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:1:"0";i:2;s:3:"418";i:3;s:3:"678";}}s:7:"iogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:7:"iogonek";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:4:"-165";i:2;s:3:"265";i:3;s:3:"683";}}s:6:"Oacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Oacute";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"688";i:3;s:3:"890";}}s:6:"oacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"oacute";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:3:"-10";i:2;s:3:"470";i:3;s:3:"678";}}s:7:"amacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:7:"amacron";s:1:"B";a:4:{i:0;s:2:"37";i:1;s:3:"-10";i:2;s:3:"442";i:3;s:3:"601";}}s:6:"sacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"389";s:1:"N";s:6:"sacute";s:1:"B";a:4:{i:0;s:2:"51";i:1;s:3:"-10";i:2;s:3:"348";i:3;s:3:"678";}}s:9:"idieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:9:"idieresis";s:1:"B";a:4:{i:0;s:2:"-9";i:1;s:1:"0";i:2;s:3:"288";i:3;s:3:"623";}}s:11:"Ocircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:11:"Ocircumflex";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"688";i:3;s:3:"886";}}s:6:"Ugrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Ugrave";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:3:"-14";i:2;s:3:"705";i:3;s:3:"890";}}s:5:"Delta";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"612";s:1:"N";s:5:"Delta";s:1:"B";a:4:{i:0;s:1:"6";i:1;s:1:"0";i:2;s:3:"608";i:3;s:3:"688";}}s:5:"thorn";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:5:"thorn";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:4:"-217";i:2;s:3:"470";i:3;s:3:"683";}}s:11:"twosuperior";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"300";s:1:"N";s:11:"twosuperior";s:1:"B";a:4:{i:0;s:1:"1";i:1;s:3:"270";i:2;s:3:"296";i:3;s:3:"676";}}s:9:"Odieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:9:"Odieresis";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"688";i:3;s:3:"835";}}s:2:"mu";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:2:"mu";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:4:"-218";i:2;s:3:"512";i:3;s:3:"450";}}s:6:"igrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:6:"igrave";s:1:"B";a:4:{i:0;s:2:"-8";i:1;s:1:"0";i:2;s:3:"253";i:3;s:3:"678";}}s:13:"ohungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:13:"ohungarumlaut";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:3:"-10";i:2;s:3:"491";i:3;s:3:"678";}}s:7:"Eogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:7:"Eogonek";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:4:"-165";i:2;s:3:"597";i:3;s:3:"662";}}s:6:"dcroat";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"dcroat";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:3:"-10";i:2;s:3:"500";i:3;s:3:"683";}}s:13:"threequarters";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"750";s:1:"N";s:13:"threequarters";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:3:"-14";i:2;s:3:"718";i:3;s:3:"676";}}s:8:"Scedilla";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:8:"Scedilla";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:4:"-215";i:2;s:3:"491";i:3;s:3:"676";}}s:6:"lcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"344";s:1:"N";s:6:"lcaron";s:1:"B";a:4:{i:0;s:2:"19";i:1;s:1:"0";i:2;s:3:"347";i:3;s:3:"695";}}s:12:"Kcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:12:"Kcommaaccent";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:4:"-198";i:2;s:3:"723";i:3;s:3:"662";}}s:6:"Lacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"Lacute";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:1:"0";i:2;s:3:"598";i:3;s:3:"890";}}s:9:"trademark";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"980";s:1:"N";s:9:"trademark";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"256";i:2;s:3:"957";i:3;s:3:"662";}}s:10:"edotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:10:"edotaccent";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-10";i:2;s:3:"424";i:3;s:3:"623";}}s:6:"Igrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"333";s:1:"N";s:6:"Igrave";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:1:"0";i:2;s:3:"315";i:3;s:3:"890";}}s:7:"Imacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"333";s:1:"N";s:7:"Imacron";s:1:"B";a:4:{i:0;s:2:"11";i:1;s:1:"0";i:2;s:3:"322";i:3;s:3:"813";}}s:6:"Lcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"Lcaron";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:1:"0";i:2;s:3:"598";i:3;s:3:"676";}}s:7:"onehalf";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"750";s:1:"N";s:7:"onehalf";s:1:"B";a:4:{i:0;s:2:"31";i:1;s:3:"-14";i:2;s:3:"746";i:3;s:3:"676";}}s:9:"lessequal";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"549";s:1:"N";s:9:"lessequal";s:1:"B";a:4:{i:0;s:2:"26";i:1;s:1:"0";i:2;s:3:"523";i:3;s:3:"666";}}s:11:"ocircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:11:"ocircumflex";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:3:"-10";i:2;s:3:"470";i:3;s:3:"674";}}s:6:"ntilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"ntilde";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"485";i:3;s:3:"638";}}s:13:"Uhungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:13:"Uhungarumlaut";s:1:"B";a:4:{i:0;s:2:"14";i:1;s:3:"-14";i:2;s:3:"705";i:3;s:3:"890";}}s:6:"Eacute";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"Eacute";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:1:"0";i:2;s:3:"597";i:3;s:3:"890";}}s:7:"emacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:7:"emacron";s:1:"B";a:4:{i:0;s:2:"25";i:1;s:3:"-10";i:2;s:3:"424";i:3;s:3:"601";}}s:6:"gbreve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"gbreve";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:4:"-218";i:2;s:3:"470";i:3;s:3:"664";}}s:10:"onequarter";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"750";s:1:"N";s:10:"onequarter";s:1:"B";a:4:{i:0;s:2:"37";i:1;s:3:"-14";i:2;s:3:"718";i:3;s:3:"676";}}s:6:"Scaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:6:"Scaron";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:3:"-14";i:2;s:3:"491";i:3;s:3:"886";}}s:12:"Scommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"556";s:1:"N";s:12:"Scommaaccent";s:1:"B";a:4:{i:0;s:2:"42";i:1;s:4:"-218";i:2;s:3:"491";i:3;s:3:"676";}}s:13:"Ohungarumlaut";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:13:"Ohungarumlaut";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"688";i:3;s:3:"890";}}s:6:"degree";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"400";s:1:"N";s:6:"degree";s:1:"B";a:4:{i:0;s:2:"57";i:1;s:3:"390";i:2;s:3:"343";i:3;s:3:"676";}}s:6:"ograve";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"ograve";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:3:"-10";i:2;s:3:"470";i:3;s:3:"678";}}s:6:"Ccaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:6:"Ccaron";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:3:"-14";i:2;s:3:"633";i:3;s:3:"886";}}s:6:"ugrave";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"ugrave";s:1:"B";a:4:{i:0;s:1:"9";i:1;s:3:"-10";i:2;s:3:"479";i:3;s:3:"678";}}s:7:"radical";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"453";s:1:"N";s:7:"radical";s:1:"B";a:4:{i:0;s:1:"2";i:1;s:3:"-60";i:2;s:3:"452";i:3;s:3:"768";}}s:6:"Dcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Dcaron";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"685";i:3;s:3:"886";}}s:12:"rcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"333";s:1:"N";s:12:"rcommaaccent";s:1:"B";a:4:{i:0;s:1:"5";i:1;s:4:"-218";i:2;s:3:"335";i:3;s:3:"460";}}s:6:"Ntilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Ntilde";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:3:"-11";i:2;s:3:"707";i:3;s:3:"850";}}s:6:"otilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"otilde";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:3:"-10";i:2;s:3:"470";i:3;s:3:"638";}}s:12:"Rcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"667";s:1:"N";s:12:"Rcommaaccent";s:1:"B";a:4:{i:0;s:2:"17";i:1;s:4:"-198";i:2;s:3:"659";i:3;s:3:"662";}}s:12:"Lcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:12:"Lcommaaccent";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:4:"-218";i:2;s:3:"598";i:3;s:3:"662";}}s:6:"Atilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Atilde";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:1:"0";i:2;s:3:"706";i:3;s:3:"850";}}s:7:"Aogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:7:"Aogonek";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:4:"-165";i:2;s:3:"738";i:3;s:3:"674";}}s:5:"Aring";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:5:"Aring";s:1:"B";a:4:{i:0;s:2:"15";i:1;s:1:"0";i:2;s:3:"706";i:3;s:3:"898";}}s:6:"Otilde";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"722";s:1:"N";s:6:"Otilde";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"688";i:3;s:3:"850";}}s:10:"zdotaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:10:"zdotaccent";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:1:"0";i:2;s:3:"418";i:3;s:3:"623";}}s:6:"Ecaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"611";s:1:"N";s:6:"Ecaron";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:1:"0";i:2;s:3:"597";i:3;s:3:"886";}}s:7:"Iogonek";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"333";s:1:"N";s:7:"Iogonek";s:1:"B";a:4:{i:0;s:2:"18";i:1;s:4:"-165";i:2;s:3:"315";i:3;s:3:"662";}}s:12:"kcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:12:"kcommaaccent";s:1:"B";a:4:{i:0;s:1:"7";i:1;s:4:"-218";i:2;s:3:"505";i:3;s:3:"683";}}s:5:"minus";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"564";s:1:"N";s:5:"minus";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"220";i:2;s:3:"534";i:3;s:3:"286";}}s:11:"Icircumflex";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"333";s:1:"N";s:11:"Icircumflex";s:1:"B";a:4:{i:0;s:2:"11";i:1;s:1:"0";i:2;s:3:"322";i:3;s:3:"886";}}s:6:"ncaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:6:"ncaron";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:1:"0";i:2;s:3:"485";i:3;s:3:"674";}}s:12:"tcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:12:"tcommaaccent";s:1:"B";a:4:{i:0;s:2:"13";i:1;s:4:"-218";i:2;s:3:"279";i:3;s:3:"579";}}s:10:"logicalnot";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"564";s:1:"N";s:10:"logicalnot";s:1:"B";a:4:{i:0;s:2:"30";i:1;s:3:"108";i:2;s:3:"534";i:3;s:3:"386";}}s:9:"odieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:9:"odieresis";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:3:"-10";i:2;s:3:"470";i:3;s:3:"623";}}s:9:"udieresis";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:9:"udieresis";s:1:"B";a:4:{i:0;s:1:"9";i:1;s:3:"-10";i:2;s:3:"479";i:3;s:3:"623";}}s:8:"notequal";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"549";s:1:"N";s:8:"notequal";s:1:"B";a:4:{i:0;s:2:"12";i:1;s:3:"-31";i:2;s:3:"537";i:3;s:3:"547";}}s:12:"gcommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:12:"gcommaaccent";s:1:"B";a:4:{i:0;s:2:"28";i:1;s:4:"-218";i:2;s:3:"470";i:3;s:3:"749";}}s:3:"eth";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:3:"eth";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:3:"-10";i:2;s:3:"471";i:3;s:3:"686";}}s:6:"zcaron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"444";s:1:"N";s:6:"zcaron";s:1:"B";a:4:{i:0;s:2:"27";i:1;s:1:"0";i:2;s:3:"418";i:3;s:3:"674";}}s:12:"ncommaaccent";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:12:"ncommaaccent";s:1:"B";a:4:{i:0;s:2:"16";i:1;s:4:"-218";i:2;s:3:"485";i:3;s:3:"460";}}s:11:"onesuperior";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"300";s:1:"N";s:11:"onesuperior";s:1:"B";a:4:{i:0;s:2:"57";i:1;s:3:"270";i:2;s:3:"248";i:3;s:3:"676";}}s:7:"imacron";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"278";s:1:"N";s:7:"imacron";s:1:"B";a:4:{i:0;s:1:"6";i:1;s:1:"0";i:2;s:3:"271";i:3;s:3:"601";}}s:4:"Euro";a:4:{s:1:"C";s:2:"-1";s:2:"WX";s:3:"500";s:1:"N";s:4:"Euro";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:1:"0";i:3;s:1:"0";}}}s:3:"KPX";a:133:{s:1:"A";a:40:{s:1:"C";s:3:"-40";s:6:"Cacute";s:3:"-40";s:6:"Ccaron";s:3:"-40";s:8:"Ccedilla";s:3:"-40";s:1:"G";s:3:"-40";s:6:"Gbreve";s:3:"-40";s:12:"Gcommaaccent";s:3:"-40";s:1:"O";s:3:"-55";s:6:"Oacute";s:3:"-55";s:11:"Ocircumflex";s:3:"-55";s:9:"Odieresis";s:3:"-55";s:6:"Ograve";s:3:"-55";s:13:"Ohungarumlaut";s:3:"-55";s:7:"Omacron";s:3:"-55";s:6:"Oslash";s:3:"-55";s:6:"Otilde";s:3:"-55";s:1:"Q";s:3:"-55";s:1:"T";s:4:"-111";s:6:"Tcaron";s:4:"-111";s:12:"Tcommaaccent";s:4:"-111";s:1:"U";s:3:"-55";s:6:"Uacute";s:3:"-55";s:11:"Ucircumflex";s:3:"-55";s:9:"Udieresis";s:3:"-55";s:6:"Ugrave";s:3:"-55";s:13:"Uhungarumlaut";s:3:"-55";s:7:"Umacron";s:3:"-55";s:7:"Uogonek";s:3:"-55";s:5:"Uring";s:3:"-55";s:1:"V";s:4:"-135";s:1:"W";s:3:"-90";s:1:"Y";s:4:"-105";s:6:"Yacute";s:4:"-105";s:9:"Ydieresis";s:4:"-105";s:10:"quoteright";s:4:"-111";s:1:"v";s:3:"-74";s:1:"w";s:3:"-92";s:1:"y";s:3:"-92";s:6:"yacute";s:3:"-92";s:9:"ydieresis";s:3:"-92";}s:6:"Aacute";a:40:{s:1:"C";s:3:"-40";s:6:"Cacute";s:3:"-40";s:6:"Ccaron";s:3:"-40";s:8:"Ccedilla";s:3:"-40";s:1:"G";s:3:"-40";s:6:"Gbreve";s:3:"-40";s:12:"Gcommaaccent";s:3:"-40";s:1:"O";s:3:"-55";s:6:"Oacute";s:3:"-55";s:11:"Ocircumflex";s:3:"-55";s:9:"Odieresis";s:3:"-55";s:6:"Ograve";s:3:"-55";s:13:"Ohungarumlaut";s:3:"-55";s:7:"Omacron";s:3:"-55";s:6:"Oslash";s:3:"-55";s:6:"Otilde";s:3:"-55";s:1:"Q";s:3:"-55";s:1:"T";s:4:"-111";s:6:"Tcaron";s:4:"-111";s:12:"Tcommaaccent";s:4:"-111";s:1:"U";s:3:"-55";s:6:"Uacute";s:3:"-55";s:11:"Ucircumflex";s:3:"-55";s:9:"Udieresis";s:3:"-55";s:6:"Ugrave";s:3:"-55";s:13:"Uhungarumlaut";s:3:"-55";s:7:"Umacron";s:3:"-55";s:7:"Uogonek";s:3:"-55";s:5:"Uring";s:3:"-55";s:1:"V";s:4:"-135";s:1:"W";s:3:"-90";s:1:"Y";s:4:"-105";s:6:"Yacute";s:4:"-105";s:9:"Ydieresis";s:4:"-105";s:10:"quoteright";s:4:"-111";s:1:"v";s:3:"-74";s:1:"w";s:3:"-92";s:1:"y";s:3:"-92";s:6:"yacute";s:3:"-92";s:9:"ydieresis";s:3:"-92";}s:6:"Abreve";a:40:{s:1:"C";s:3:"-40";s:6:"Cacute";s:3:"-40";s:6:"Ccaron";s:3:"-40";s:8:"Ccedilla";s:3:"-40";s:1:"G";s:3:"-40";s:6:"Gbreve";s:3:"-40";s:12:"Gcommaaccent";s:3:"-40";s:1:"O";s:3:"-55";s:6:"Oacute";s:3:"-55";s:11:"Ocircumflex";s:3:"-55";s:9:"Odieresis";s:3:"-55";s:6:"Ograve";s:3:"-55";s:13:"Ohungarumlaut";s:3:"-55";s:7:"Omacron";s:3:"-55";s:6:"Oslash";s:3:"-55";s:6:"Otilde";s:3:"-55";s:1:"Q";s:3:"-55";s:1:"T";s:4:"-111";s:6:"Tcaron";s:4:"-111";s:12:"Tcommaaccent";s:4:"-111";s:1:"U";s:3:"-55";s:6:"Uacute";s:3:"-55";s:11:"Ucircumflex";s:3:"-55";s:9:"Udieresis";s:3:"-55";s:6:"Ugrave";s:3:"-55";s:13:"Uhungarumlaut";s:3:"-55";s:7:"Umacron";s:3:"-55";s:7:"Uogonek";s:3:"-55";s:5:"Uring";s:3:"-55";s:1:"V";s:4:"-135";s:1:"W";s:3:"-90";s:1:"Y";s:4:"-105";s:6:"Yacute";s:4:"-105";s:9:"Ydieresis";s:4:"-105";s:10:"quoteright";s:4:"-111";s:1:"v";s:3:"-74";s:1:"w";s:3:"-92";s:1:"y";s:3:"-92";s:6:"yacute";s:3:"-92";s:9:"ydieresis";s:3:"-92";}s:11:"Acircumflex";a:40:{s:1:"C";s:3:"-40";s:6:"Cacute";s:3:"-40";s:6:"Ccaron";s:3:"-40";s:8:"Ccedilla";s:3:"-40";s:1:"G";s:3:"-40";s:6:"Gbreve";s:3:"-40";s:12:"Gcommaaccent";s:3:"-40";s:1:"O";s:3:"-55";s:6:"Oacute";s:3:"-55";s:11:"Ocircumflex";s:3:"-55";s:9:"Odieresis";s:3:"-55";s:6:"Ograve";s:3:"-55";s:13:"Ohungarumlaut";s:3:"-55";s:7:"Omacron";s:3:"-55";s:6:"Oslash";s:3:"-55";s:6:"Otilde";s:3:"-55";s:1:"Q";s:3:"-55";s:1:"T";s:4:"-111";s:6:"Tcaron";s:4:"-111";s:12:"Tcommaaccent";s:4:"-111";s:1:"U";s:3:"-55";s:6:"Uacute";s:3:"-55";s:11:"Ucircumflex";s:3:"-55";s:9:"Udieresis";s:3:"-55";s:6:"Ugrave";s:3:"-55";s:13:"Uhungarumlaut";s:3:"-55";s:7:"Umacron";s:3:"-55";s:7:"Uogonek";s:3:"-55";s:5:"Uring";s:3:"-55";s:1:"V";s:4:"-135";s:1:"W";s:3:"-90";s:1:"Y";s:4:"-105";s:6:"Yacute";s:4:"-105";s:9:"Ydieresis";s:4:"-105";s:10:"quoteright";s:4:"-111";s:1:"v";s:3:"-74";s:1:"w";s:3:"-92";s:1:"y";s:3:"-92";s:6:"yacute";s:3:"-92";s:9:"ydieresis";s:3:"-92";}s:9:"Adieresis";a:40:{s:1:"C";s:3:"-40";s:6:"Cacute";s:3:"-40";s:6:"Ccaron";s:3:"-40";s:8:"Ccedilla";s:3:"-40";s:1:"G";s:3:"-40";s:6:"Gbreve";s:3:"-40";s:12:"Gcommaaccent";s:3:"-40";s:1:"O";s:3:"-55";s:6:"Oacute";s:3:"-55";s:11:"Ocircumflex";s:3:"-55";s:9:"Odieresis";s:3:"-55";s:6:"Ograve";s:3:"-55";s:13:"Ohungarumlaut";s:3:"-55";s:7:"Omacron";s:3:"-55";s:6:"Oslash";s:3:"-55";s:6:"Otilde";s:3:"-55";s:1:"Q";s:3:"-55";s:1:"T";s:4:"-111";s:6:"Tcaron";s:4:"-111";s:12:"Tcommaaccent";s:4:"-111";s:1:"U";s:3:"-55";s:6:"Uacute";s:3:"-55";s:11:"Ucircumflex";s:3:"-55";s:9:"Udieresis";s:3:"-55";s:6:"Ugrave";s:3:"-55";s:13:"Uhungarumlaut";s:3:"-55";s:7:"Umacron";s:3:"-55";s:7:"Uogonek";s:3:"-55";s:5:"Uring";s:3:"-55";s:1:"V";s:4:"-135";s:1:"W";s:3:"-90";s:1:"Y";s:4:"-105";s:6:"Yacute";s:4:"-105";s:9:"Ydieresis";s:4:"-105";s:10:"quoteright";s:4:"-111";s:1:"v";s:3:"-74";s:1:"w";s:3:"-92";s:1:"y";s:3:"-92";s:6:"yacute";s:3:"-92";s:9:"ydieresis";s:3:"-92";}s:6:"Agrave";a:40:{s:1:"C";s:3:"-40";s:6:"Cacute";s:3:"-40";s:6:"Ccaron";s:3:"-40";s:8:"Ccedilla";s:3:"-40";s:1:"G";s:3:"-40";s:6:"Gbreve";s:3:"-40";s:12:"Gcommaaccent";s:3:"-40";s:1:"O";s:3:"-55";s:6:"Oacute";s:3:"-55";s:11:"Ocircumflex";s:3:"-55";s:9:"Odieresis";s:3:"-55";s:6:"Ograve";s:3:"-55";s:13:"Ohungarumlaut";s:3:"-55";s:7:"Omacron";s:3:"-55";s:6:"Oslash";s:3:"-55";s:6:"Otilde";s:3:"-55";s:1:"Q";s:3:"-55";s:1:"T";s:4:"-111";s:6:"Tcaron";s:4:"-111";s:12:"Tcommaaccent";s:4:"-111";s:1:"U";s:3:"-55";s:6:"Uacute";s:3:"-55";s:11:"Ucircumflex";s:3:"-55";s:9:"Udieresis";s:3:"-55";s:6:"Ugrave";s:3:"-55";s:13:"Uhungarumlaut";s:3:"-55";s:7:"Umacron";s:3:"-55";s:7:"Uogonek";s:3:"-55";s:5:"Uring";s:3:"-55";s:1:"V";s:4:"-135";s:1:"W";s:3:"-90";s:1:"Y";s:4:"-105";s:6:"Yacute";s:4:"-105";s:9:"Ydieresis";s:4:"-105";s:10:"quoteright";s:4:"-111";s:1:"v";s:3:"-74";s:1:"w";s:3:"-92";s:1:"y";s:3:"-92";s:6:"yacute";s:3:"-92";s:9:"ydieresis";s:3:"-92";}s:7:"Amacron";a:40:{s:1:"C";s:3:"-40";s:6:"Cacute";s:3:"-40";s:6:"Ccaron";s:3:"-40";s:8:"Ccedilla";s:3:"-40";s:1:"G";s:3:"-40";s:6:"Gbreve";s:3:"-40";s:12:"Gcommaaccent";s:3:"-40";s:1:"O";s:3:"-55";s:6:"Oacute";s:3:"-55";s:11:"Ocircumflex";s:3:"-55";s:9:"Odieresis";s:3:"-55";s:6:"Ograve";s:3:"-55";s:13:"Ohungarumlaut";s:3:"-55";s:7:"Omacron";s:3:"-55";s:6:"Oslash";s:3:"-55";s:6:"Otilde";s:3:"-55";s:1:"Q";s:3:"-55";s:1:"T";s:4:"-111";s:6:"Tcaron";s:4:"-111";s:12:"Tcommaaccent";s:4:"-111";s:1:"U";s:3:"-55";s:6:"Uacute";s:3:"-55";s:11:"Ucircumflex";s:3:"-55";s:9:"Udieresis";s:3:"-55";s:6:"Ugrave";s:3:"-55";s:13:"Uhungarumlaut";s:3:"-55";s:7:"Umacron";s:3:"-55";s:7:"Uogonek";s:3:"-55";s:5:"Uring";s:3:"-55";s:1:"V";s:4:"-135";s:1:"W";s:3:"-90";s:1:"Y";s:4:"-105";s:6:"Yacute";s:4:"-105";s:9:"Ydieresis";s:4:"-105";s:10:"quoteright";s:4:"-111";s:1:"v";s:3:"-74";s:1:"w";s:3:"-92";s:1:"y";s:3:"-92";s:6:"yacute";s:3:"-92";s:9:"ydieresis";s:3:"-92";}s:7:"Aogonek";a:40:{s:1:"C";s:3:"-40";s:6:"Cacute";s:3:"-40";s:6:"Ccaron";s:3:"-40";s:8:"Ccedilla";s:3:"-40";s:1:"G";s:3:"-40";s:6:"Gbreve";s:3:"-40";s:12:"Gcommaaccent";s:3:"-40";s:1:"O";s:3:"-55";s:6:"Oacute";s:3:"-55";s:11:"Ocircumflex";s:3:"-55";s:9:"Odieresis";s:3:"-55";s:6:"Ograve";s:3:"-55";s:13:"Ohungarumlaut";s:3:"-55";s:7:"Omacron";s:3:"-55";s:6:"Oslash";s:3:"-55";s:6:"Otilde";s:3:"-55";s:1:"Q";s:3:"-55";s:1:"T";s:4:"-111";s:6:"Tcaron";s:4:"-111";s:12:"Tcommaaccent";s:4:"-111";s:1:"U";s:3:"-55";s:6:"Uacute";s:3:"-55";s:11:"Ucircumflex";s:3:"-55";s:9:"Udieresis";s:3:"-55";s:6:"Ugrave";s:3:"-55";s:13:"Uhungarumlaut";s:3:"-55";s:7:"Umacron";s:3:"-55";s:7:"Uogonek";s:3:"-55";s:5:"Uring";s:3:"-55";s:1:"V";s:4:"-135";s:1:"W";s:3:"-90";s:1:"Y";s:4:"-105";s:6:"Yacute";s:4:"-105";s:9:"Ydieresis";s:4:"-105";s:10:"quoteright";s:4:"-111";s:1:"v";s:3:"-74";s:1:"w";s:3:"-52";s:1:"y";s:3:"-52";s:6:"yacute";s:3:"-52";s:9:"ydieresis";s:3:"-52";}s:5:"Aring";a:40:{s:1:"C";s:3:"-40";s:6:"Cacute";s:3:"-40";s:6:"Ccaron";s:3:"-40";s:8:"Ccedilla";s:3:"-40";s:1:"G";s:3:"-40";s:6:"Gbreve";s:3:"-40";s:12:"Gcommaaccent";s:3:"-40";s:1:"O";s:3:"-55";s:6:"Oacute";s:3:"-55";s:11:"Ocircumflex";s:3:"-55";s:9:"Odieresis";s:3:"-55";s:6:"Ograve";s:3:"-55";s:13:"Ohungarumlaut";s:3:"-55";s:7:"Omacron";s:3:"-55";s:6:"Oslash";s:3:"-55";s:6:"Otilde";s:3:"-55";s:1:"Q";s:3:"-55";s:1:"T";s:4:"-111";s:6:"Tcaron";s:4:"-111";s:12:"Tcommaaccent";s:4:"-111";s:1:"U";s:3:"-55";s:6:"Uacute";s:3:"-55";s:11:"Ucircumflex";s:3:"-55";s:9:"Udieresis";s:3:"-55";s:6:"Ugrave";s:3:"-55";s:13:"Uhungarumlaut";s:3:"-55";s:7:"Umacron";s:3:"-55";s:7:"Uogonek";s:3:"-55";s:5:"Uring";s:3:"-55";s:1:"V";s:4:"-135";s:1:"W";s:3:"-90";s:1:"Y";s:4:"-105";s:6:"Yacute";s:4:"-105";s:9:"Ydieresis";s:4:"-105";s:10:"quoteright";s:4:"-111";s:1:"v";s:3:"-74";s:1:"w";s:3:"-92";s:1:"y";s:3:"-92";s:6:"yacute";s:3:"-92";s:9:"ydieresis";s:3:"-92";}s:6:"Atilde";a:40:{s:1:"C";s:3:"-40";s:6:"Cacute";s:3:"-40";s:6:"Ccaron";s:3:"-40";s:8:"Ccedilla";s:3:"-40";s:1:"G";s:3:"-40";s:6:"Gbreve";s:3:"-40";s:12:"Gcommaaccent";s:3:"-40";s:1:"O";s:3:"-55";s:6:"Oacute";s:3:"-55";s:11:"Ocircumflex";s:3:"-55";s:9:"Odieresis";s:3:"-55";s:6:"Ograve";s:3:"-55";s:13:"Ohungarumlaut";s:3:"-55";s:7:"Omacron";s:3:"-55";s:6:"Oslash";s:3:"-55";s:6:"Otilde";s:3:"-55";s:1:"Q";s:3:"-55";s:1:"T";s:4:"-111";s:6:"Tcaron";s:4:"-111";s:12:"Tcommaaccent";s:4:"-111";s:1:"U";s:3:"-55";s:6:"Uacute";s:3:"-55";s:11:"Ucircumflex";s:3:"-55";s:9:"Udieresis";s:3:"-55";s:6:"Ugrave";s:3:"-55";s:13:"Uhungarumlaut";s:3:"-55";s:7:"Umacron";s:3:"-55";s:7:"Uogonek";s:3:"-55";s:5:"Uring";s:3:"-55";s:1:"V";s:4:"-135";s:1:"W";s:3:"-90";s:1:"Y";s:4:"-105";s:6:"Yacute";s:4:"-105";s:9:"Ydieresis";s:4:"-105";s:10:"quoteright";s:4:"-111";s:1:"v";s:3:"-74";s:1:"w";s:3:"-92";s:1:"y";s:3:"-92";s:6:"yacute";s:3:"-92";s:9:"ydieresis";s:3:"-92";}s:1:"B";a:19:{s:1:"A";s:3:"-35";s:6:"Aacute";s:3:"-35";s:6:"Abreve";s:3:"-35";s:11:"Acircumflex";s:3:"-35";s:9:"Adieresis";s:3:"-35";s:6:"Agrave";s:3:"-35";s:7:"Amacron";s:3:"-35";s:7:"Aogonek";s:3:"-35";s:5:"Aring";s:3:"-35";s:6:"Atilde";s:3:"-35";s:1:"U";s:3:"-10";s:6:"Uacute";s:3:"-10";s:11:"Ucircumflex";s:3:"-10";s:9:"Udieresis";s:3:"-10";s:6:"Ugrave";s:3:"-10";s:13:"Uhungarumlaut";s:3:"-10";s:7:"Umacron";s:3:"-10";s:7:"Uogonek";s:3:"-10";s:5:"Uring";s:3:"-10";}s:1:"D";a:15:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:1:"V";s:3:"-40";s:1:"W";s:3:"-30";s:1:"Y";s:3:"-55";s:6:"Yacute";s:3:"-55";s:9:"Ydieresis";s:3:"-55";}s:6:"Dcaron";a:15:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:1:"V";s:3:"-40";s:1:"W";s:3:"-30";s:1:"Y";s:3:"-55";s:6:"Yacute";s:3:"-55";s:9:"Ydieresis";s:3:"-55";}s:6:"Dcroat";a:15:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";s:1:"V";s:3:"-40";s:1:"W";s:3:"-30";s:1:"Y";s:3:"-55";s:6:"Yacute";s:3:"-55";s:9:"Ydieresis";s:3:"-55";}s:1:"F";a:31:{s:1:"A";s:3:"-74";s:6:"Aacute";s:3:"-74";s:6:"Abreve";s:3:"-74";s:11:"Acircumflex";s:3:"-74";s:9:"Adieresis";s:3:"-74";s:6:"Agrave";s:3:"-74";s:7:"Amacron";s:3:"-74";s:7:"Aogonek";s:3:"-74";s:5:"Aring";s:3:"-74";s:6:"Atilde";s:3:"-74";s:1:"a";s:3:"-15";s:6:"aacute";s:3:"-15";s:6:"abreve";s:3:"-15";s:11:"acircumflex";s:3:"-15";s:9:"adieresis";s:3:"-15";s:6:"agrave";s:3:"-15";s:7:"amacron";s:3:"-15";s:7:"aogonek";s:3:"-15";s:5:"aring";s:3:"-15";s:6:"atilde";s:3:"-15";s:5:"comma";s:3:"-80";s:1:"o";s:3:"-15";s:6:"oacute";s:3:"-15";s:11:"ocircumflex";s:3:"-15";s:9:"odieresis";s:3:"-15";s:6:"ograve";s:3:"-15";s:13:"ohungarumlaut";s:3:"-15";s:7:"omacron";s:3:"-15";s:6:"oslash";s:3:"-15";s:6:"otilde";s:3:"-15";s:6:"period";s:3:"-80";}s:1:"J";a:10:{s:1:"A";s:3:"-60";s:6:"Aacute";s:3:"-60";s:6:"Abreve";s:3:"-60";s:11:"Acircumflex";s:3:"-60";s:9:"Adieresis";s:3:"-60";s:6:"Agrave";s:3:"-60";s:7:"Amacron";s:3:"-60";s:7:"Aogonek";s:3:"-60";s:5:"Aring";s:3:"-60";s:6:"Atilde";s:3:"-60";}s:1:"K";a:39:{s:1:"O";s:3:"-30";s:6:"Oacute";s:3:"-30";s:11:"Ocircumflex";s:3:"-30";s:9:"Odieresis";s:3:"-30";s:6:"Ograve";s:3:"-30";s:13:"Ohungarumlaut";s:3:"-30";s:7:"Omacron";s:3:"-30";s:6:"Oslash";s:3:"-30";s:6:"Otilde";s:3:"-30";s:1:"e";s:3:"-25";s:6:"eacute";s:3:"-25";s:6:"ecaron";s:3:"-25";s:11:"ecircumflex";s:3:"-25";s:9:"edieresis";s:3:"-25";s:10:"edotaccent";s:3:"-25";s:6:"egrave";s:3:"-25";s:7:"emacron";s:3:"-25";s:7:"eogonek";s:3:"-25";s:1:"o";s:3:"-35";s:6:"oacute";s:3:"-35";s:11:"ocircumflex";s:3:"-35";s:9:"odieresis";s:3:"-35";s:6:"ograve";s:3:"-35";s:13:"ohungarumlaut";s:3:"-35";s:7:"omacron";s:3:"-35";s:6:"oslash";s:3:"-35";s:6:"otilde";s:3:"-35";s:1:"u";s:3:"-15";s:6:"uacute";s:3:"-15";s:11:"ucircumflex";s:3:"-15";s:9:"udieresis";s:3:"-15";s:6:"ugrave";s:3:"-15";s:13:"uhungarumlaut";s:3:"-15";s:7:"umacron";s:3:"-15";s:7:"uogonek";s:3:"-15";s:5:"uring";s:3:"-15";s:1:"y";s:3:"-25";s:6:"yacute";s:3:"-25";s:9:"ydieresis";s:3:"-25";}s:12:"Kcommaaccent";a:39:{s:1:"O";s:3:"-30";s:6:"Oacute";s:3:"-30";s:11:"Ocircumflex";s:3:"-30";s:9:"Odieresis";s:3:"-30";s:6:"Ograve";s:3:"-30";s:13:"Ohungarumlaut";s:3:"-30";s:7:"Omacron";s:3:"-30";s:6:"Oslash";s:3:"-30";s:6:"Otilde";s:3:"-30";s:1:"e";s:3:"-25";s:6:"eacute";s:3:"-25";s:6:"ecaron";s:3:"-25";s:11:"ecircumflex";s:3:"-25";s:9:"edieresis";s:3:"-25";s:10:"edotaccent";s:3:"-25";s:6:"egrave";s:3:"-25";s:7:"emacron";s:3:"-25";s:7:"eogonek";s:3:"-25";s:1:"o";s:3:"-35";s:6:"oacute";s:3:"-35";s:11:"ocircumflex";s:3:"-35";s:9:"odieresis";s:3:"-35";s:6:"ograve";s:3:"-35";s:13:"ohungarumlaut";s:3:"-35";s:7:"omacron";s:3:"-35";s:6:"oslash";s:3:"-35";s:6:"otilde";s:3:"-35";s:1:"u";s:3:"-15";s:6:"uacute";s:3:"-15";s:11:"ucircumflex";s:3:"-15";s:9:"udieresis";s:3:"-15";s:6:"ugrave";s:3:"-15";s:13:"uhungarumlaut";s:3:"-15";s:7:"umacron";s:3:"-15";s:7:"uogonek";s:3:"-15";s:5:"uring";s:3:"-15";s:1:"y";s:3:"-25";s:6:"yacute";s:3:"-25";s:9:"ydieresis";s:3:"-25";}s:1:"L";a:12:{s:1:"T";s:3:"-92";s:6:"Tcaron";s:3:"-92";s:12:"Tcommaaccent";s:3:"-92";s:1:"V";s:4:"-100";s:1:"W";s:3:"-74";s:1:"Y";s:4:"-100";s:6:"Yacute";s:4:"-100";s:9:"Ydieresis";s:4:"-100";s:10:"quoteright";s:3:"-92";s:1:"y";s:3:"-55";s:6:"yacute";s:3:"-55";s:9:"ydieresis";s:3:"-55";}s:6:"Lacute";a:12:{s:1:"T";s:3:"-92";s:6:"Tcaron";s:3:"-92";s:12:"Tcommaaccent";s:3:"-92";s:1:"V";s:4:"-100";s:1:"W";s:3:"-74";s:1:"Y";s:4:"-100";s:6:"Yacute";s:4:"-100";s:9:"Ydieresis";s:4:"-100";s:10:"quoteright";s:3:"-92";s:1:"y";s:3:"-55";s:6:"yacute";s:3:"-55";s:9:"ydieresis";s:3:"-55";}s:6:"Lcaron";a:4:{s:10:"quoteright";s:3:"-92";s:1:"y";s:3:"-55";s:6:"yacute";s:3:"-55";s:9:"ydieresis";s:3:"-55";}s:12:"Lcommaaccent";a:12:{s:1:"T";s:3:"-92";s:6:"Tcaron";s:3:"-92";s:12:"Tcommaaccent";s:3:"-92";s:1:"V";s:4:"-100";s:1:"W";s:3:"-74";s:1:"Y";s:4:"-100";s:6:"Yacute";s:4:"-100";s:9:"Ydieresis";s:4:"-100";s:10:"quoteright";s:3:"-92";s:1:"y";s:3:"-55";s:6:"yacute";s:3:"-55";s:9:"ydieresis";s:3:"-55";}s:6:"Lslash";a:12:{s:1:"T";s:3:"-92";s:6:"Tcaron";s:3:"-92";s:12:"Tcommaaccent";s:3:"-92";s:1:"V";s:4:"-100";s:1:"W";s:3:"-74";s:1:"Y";s:4:"-100";s:6:"Yacute";s:4:"-100";s:9:"Ydieresis";s:4:"-100";s:10:"quoteright";s:3:"-92";s:1:"y";s:3:"-55";s:6:"yacute";s:3:"-55";s:9:"ydieresis";s:3:"-55";}s:1:"N";a:10:{s:1:"A";s:3:"-35";s:6:"Aacute";s:3:"-35";s:6:"Abreve";s:3:"-35";s:11:"Acircumflex";s:3:"-35";s:9:"Adieresis";s:3:"-35";s:6:"Agrave";s:3:"-35";s:7:"Amacron";s:3:"-35";s:7:"Aogonek";s:3:"-35";s:5:"Aring";s:3:"-35";s:6:"Atilde";s:3:"-35";}s:6:"Nacute";a:10:{s:1:"A";s:3:"-35";s:6:"Aacute";s:3:"-35";s:6:"Abreve";s:3:"-35";s:11:"Acircumflex";s:3:"-35";s:9:"Adieresis";s:3:"-35";s:6:"Agrave";s:3:"-35";s:7:"Amacron";s:3:"-35";s:7:"Aogonek";s:3:"-35";s:5:"Aring";s:3:"-35";s:6:"Atilde";s:3:"-35";}s:6:"Ncaron";a:10:{s:1:"A";s:3:"-35";s:6:"Aacute";s:3:"-35";s:6:"Abreve";s:3:"-35";s:11:"Acircumflex";s:3:"-35";s:9:"Adieresis";s:3:"-35";s:6:"Agrave";s:3:"-35";s:7:"Amacron";s:3:"-35";s:7:"Aogonek";s:3:"-35";s:5:"Aring";s:3:"-35";s:6:"Atilde";s:3:"-35";}s:12:"Ncommaaccent";a:10:{s:1:"A";s:3:"-35";s:6:"Aacute";s:3:"-35";s:6:"Abreve";s:3:"-35";s:11:"Acircumflex";s:3:"-35";s:9:"Adieresis";s:3:"-35";s:6:"Agrave";s:3:"-35";s:7:"Amacron";s:3:"-35";s:7:"Aogonek";s:3:"-35";s:5:"Aring";s:3:"-35";s:6:"Atilde";s:3:"-35";}s:6:"Ntilde";a:10:{s:1:"A";s:3:"-35";s:6:"Aacute";s:3:"-35";s:6:"Abreve";s:3:"-35";s:11:"Acircumflex";s:3:"-35";s:9:"Adieresis";s:3:"-35";s:6:"Agrave";s:3:"-35";s:7:"Amacron";s:3:"-35";s:7:"Aogonek";s:3:"-35";s:5:"Aring";s:3:"-35";s:6:"Atilde";s:3:"-35";}s:1:"O";a:19:{s:1:"A";s:3:"-35";s:6:"Aacute";s:3:"-35";s:6:"Abreve";s:3:"-35";s:11:"Acircumflex";s:3:"-35";s:9:"Adieresis";s:3:"-35";s:6:"Agrave";s:3:"-35";s:7:"Amacron";s:3:"-35";s:7:"Aogonek";s:3:"-35";s:5:"Aring";s:3:"-35";s:6:"Atilde";s:3:"-35";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-35";s:1:"X";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:6:"Oacute";a:19:{s:1:"A";s:3:"-35";s:6:"Aacute";s:3:"-35";s:6:"Abreve";s:3:"-35";s:11:"Acircumflex";s:3:"-35";s:9:"Adieresis";s:3:"-35";s:6:"Agrave";s:3:"-35";s:7:"Amacron";s:3:"-35";s:7:"Aogonek";s:3:"-35";s:5:"Aring";s:3:"-35";s:6:"Atilde";s:3:"-35";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-35";s:1:"X";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:11:"Ocircumflex";a:19:{s:1:"A";s:3:"-35";s:6:"Aacute";s:3:"-35";s:6:"Abreve";s:3:"-35";s:11:"Acircumflex";s:3:"-35";s:9:"Adieresis";s:3:"-35";s:6:"Agrave";s:3:"-35";s:7:"Amacron";s:3:"-35";s:7:"Aogonek";s:3:"-35";s:5:"Aring";s:3:"-35";s:6:"Atilde";s:3:"-35";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-35";s:1:"X";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:9:"Odieresis";a:19:{s:1:"A";s:3:"-35";s:6:"Aacute";s:3:"-35";s:6:"Abreve";s:3:"-35";s:11:"Acircumflex";s:3:"-35";s:9:"Adieresis";s:3:"-35";s:6:"Agrave";s:3:"-35";s:7:"Amacron";s:3:"-35";s:7:"Aogonek";s:3:"-35";s:5:"Aring";s:3:"-35";s:6:"Atilde";s:3:"-35";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-35";s:1:"X";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:6:"Ograve";a:19:{s:1:"A";s:3:"-35";s:6:"Aacute";s:3:"-35";s:6:"Abreve";s:3:"-35";s:11:"Acircumflex";s:3:"-35";s:9:"Adieresis";s:3:"-35";s:6:"Agrave";s:3:"-35";s:7:"Amacron";s:3:"-35";s:7:"Aogonek";s:3:"-35";s:5:"Aring";s:3:"-35";s:6:"Atilde";s:3:"-35";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-35";s:1:"X";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:13:"Ohungarumlaut";a:19:{s:1:"A";s:3:"-35";s:6:"Aacute";s:3:"-35";s:6:"Abreve";s:3:"-35";s:11:"Acircumflex";s:3:"-35";s:9:"Adieresis";s:3:"-35";s:6:"Agrave";s:3:"-35";s:7:"Amacron";s:3:"-35";s:7:"Aogonek";s:3:"-35";s:5:"Aring";s:3:"-35";s:6:"Atilde";s:3:"-35";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-35";s:1:"X";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:7:"Omacron";a:19:{s:1:"A";s:3:"-35";s:6:"Aacute";s:3:"-35";s:6:"Abreve";s:3:"-35";s:11:"Acircumflex";s:3:"-35";s:9:"Adieresis";s:3:"-35";s:6:"Agrave";s:3:"-35";s:7:"Amacron";s:3:"-35";s:7:"Aogonek";s:3:"-35";s:5:"Aring";s:3:"-35";s:6:"Atilde";s:3:"-35";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-35";s:1:"X";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:6:"Oslash";a:19:{s:1:"A";s:3:"-35";s:6:"Aacute";s:3:"-35";s:6:"Abreve";s:3:"-35";s:11:"Acircumflex";s:3:"-35";s:9:"Adieresis";s:3:"-35";s:6:"Agrave";s:3:"-35";s:7:"Amacron";s:3:"-35";s:7:"Aogonek";s:3:"-35";s:5:"Aring";s:3:"-35";s:6:"Atilde";s:3:"-35";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-35";s:1:"X";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:6:"Otilde";a:19:{s:1:"A";s:3:"-35";s:6:"Aacute";s:3:"-35";s:6:"Abreve";s:3:"-35";s:11:"Acircumflex";s:3:"-35";s:9:"Adieresis";s:3:"-35";s:6:"Agrave";s:3:"-35";s:7:"Amacron";s:3:"-35";s:7:"Aogonek";s:3:"-35";s:5:"Aring";s:3:"-35";s:6:"Atilde";s:3:"-35";s:1:"T";s:3:"-40";s:6:"Tcaron";s:3:"-40";s:12:"Tcommaaccent";s:3:"-40";s:1:"V";s:3:"-50";s:1:"W";s:3:"-35";s:1:"X";s:3:"-40";s:1:"Y";s:3:"-50";s:6:"Yacute";s:3:"-50";s:9:"Ydieresis";s:3:"-50";}s:1:"P";a:22:{s:1:"A";s:3:"-92";s:6:"Aacute";s:3:"-92";s:6:"Abreve";s:3:"-92";s:11:"Acircumflex";s:3:"-92";s:9:"Adieresis";s:3:"-92";s:6:"Agrave";s:3:"-92";s:7:"Amacron";s:3:"-92";s:7:"Aogonek";s:3:"-92";s:5:"Aring";s:3:"-92";s:6:"Atilde";s:3:"-92";s:1:"a";s:3:"-15";s:6:"aacute";s:3:"-15";s:6:"abreve";s:3:"-15";s:11:"acircumflex";s:3:"-15";s:9:"adieresis";s:3:"-15";s:6:"agrave";s:3:"-15";s:7:"amacron";s:3:"-15";s:7:"aogonek";s:3:"-15";s:5:"aring";s:3:"-15";s:6:"atilde";s:3:"-15";s:5:"comma";s:4:"-111";s:6:"period";s:4:"-111";}s:1:"Q";a:9:{s:1:"U";s:3:"-10";s:6:"Uacute";s:3:"-10";s:11:"Ucircumflex";s:3:"-10";s:9:"Udieresis";s:3:"-10";s:6:"Ugrave";s:3:"-10";s:13:"Uhungarumlaut";s:3:"-10";s:7:"Umacron";s:3:"-10";s:7:"Uogonek";s:3:"-10";s:5:"Uring";s:3:"-10";}s:1:"R";a:26:{s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"T";s:3:"-60";s:6:"Tcaron";s:3:"-60";s:12:"Tcommaaccent";s:3:"-60";s:1:"U";s:3:"-40";s:6:"Uacute";s:3:"-40";s:11:"Ucircumflex";s:3:"-40";s:9:"Udieresis";s:3:"-40";s:6:"Ugrave";s:3:"-40";s:13:"Uhungarumlaut";s:3:"-40";s:7:"Umacron";s:3:"-40";s:7:"Uogonek";s:3:"-40";s:5:"Uring";s:3:"-40";s:1:"V";s:3:"-80";s:1:"W";s:3:"-55";s:1:"Y";s:3:"-65";s:6:"Yacute";s:3:"-65";s:9:"Ydieresis";s:3:"-65";}s:6:"Racute";a:26:{s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"T";s:3:"-60";s:6:"Tcaron";s:3:"-60";s:12:"Tcommaaccent";s:3:"-60";s:1:"U";s:3:"-40";s:6:"Uacute";s:3:"-40";s:11:"Ucircumflex";s:3:"-40";s:9:"Udieresis";s:3:"-40";s:6:"Ugrave";s:3:"-40";s:13:"Uhungarumlaut";s:3:"-40";s:7:"Umacron";s:3:"-40";s:7:"Uogonek";s:3:"-40";s:5:"Uring";s:3:"-40";s:1:"V";s:3:"-80";s:1:"W";s:3:"-55";s:1:"Y";s:3:"-65";s:6:"Yacute";s:3:"-65";s:9:"Ydieresis";s:3:"-65";}s:6:"Rcaron";a:26:{s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"T";s:3:"-60";s:6:"Tcaron";s:3:"-60";s:12:"Tcommaaccent";s:3:"-60";s:1:"U";s:3:"-40";s:6:"Uacute";s:3:"-40";s:11:"Ucircumflex";s:3:"-40";s:9:"Udieresis";s:3:"-40";s:6:"Ugrave";s:3:"-40";s:13:"Uhungarumlaut";s:3:"-40";s:7:"Umacron";s:3:"-40";s:7:"Uogonek";s:3:"-40";s:5:"Uring";s:3:"-40";s:1:"V";s:3:"-80";s:1:"W";s:3:"-55";s:1:"Y";s:3:"-65";s:6:"Yacute";s:3:"-65";s:9:"Ydieresis";s:3:"-65";}s:12:"Rcommaaccent";a:26:{s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"T";s:3:"-60";s:6:"Tcaron";s:3:"-60";s:12:"Tcommaaccent";s:3:"-60";s:1:"U";s:3:"-40";s:6:"Uacute";s:3:"-40";s:11:"Ucircumflex";s:3:"-40";s:9:"Udieresis";s:3:"-40";s:6:"Ugrave";s:3:"-40";s:13:"Uhungarumlaut";s:3:"-40";s:7:"Umacron";s:3:"-40";s:7:"Uogonek";s:3:"-40";s:5:"Uring";s:3:"-40";s:1:"V";s:3:"-80";s:1:"W";s:3:"-55";s:1:"Y";s:3:"-65";s:6:"Yacute";s:3:"-65";s:9:"Ydieresis";s:3:"-65";}s:1:"T";a:72:{s:1:"A";s:3:"-93";s:6:"Aacute";s:3:"-93";s:6:"Abreve";s:3:"-93";s:11:"Acircumflex";s:3:"-93";s:9:"Adieresis";s:3:"-93";s:6:"Agrave";s:3:"-93";s:7:"Amacron";s:3:"-93";s:7:"Aogonek";s:3:"-93";s:5:"Aring";s:3:"-93";s:6:"Atilde";s:3:"-93";s:1:"O";s:3:"-18";s:6:"Oacute";s:3:"-18";s:11:"Ocircumflex";s:3:"-18";s:9:"Odieresis";s:3:"-18";s:6:"Ograve";s:3:"-18";s:13:"Ohungarumlaut";s:3:"-18";s:7:"Omacron";s:3:"-18";s:6:"Oslash";s:3:"-18";s:6:"Otilde";s:3:"-18";s:1:"a";s:3:"-80";s:6:"aacute";s:3:"-80";s:6:"abreve";s:3:"-80";s:11:"acircumflex";s:3:"-80";s:9:"adieresis";s:3:"-40";s:6:"agrave";s:3:"-40";s:7:"amacron";s:3:"-40";s:7:"aogonek";s:3:"-80";s:5:"aring";s:3:"-80";s:6:"atilde";s:3:"-40";s:5:"colon";s:3:"-50";s:5:"comma";s:3:"-74";s:1:"e";s:3:"-70";s:6:"eacute";s:3:"-70";s:6:"ecaron";s:3:"-70";s:11:"ecircumflex";s:3:"-70";s:9:"edieresis";s:3:"-30";s:10:"edotaccent";s:3:"-70";s:6:"egrave";s:3:"-70";s:7:"emacron";s:3:"-30";s:7:"eogonek";s:3:"-70";s:6:"hyphen";s:3:"-92";s:1:"i";s:3:"-35";s:6:"iacute";s:3:"-35";s:7:"iogonek";s:3:"-35";s:1:"o";s:3:"-80";s:6:"oacute";s:3:"-80";s:11:"ocircumflex";s:3:"-80";s:9:"odieresis";s:3:"-80";s:6:"ograve";s:3:"-80";s:13:"ohungarumlaut";s:3:"-80";s:7:"omacron";s:3:"-80";s:6:"oslash";s:3:"-80";s:6:"otilde";s:3:"-80";s:6:"period";s:3:"-74";s:1:"r";s:3:"-35";s:6:"racute";s:3:"-35";s:6:"rcaron";s:3:"-35";s:12:"rcommaaccent";s:3:"-35";s:9:"semicolon";s:3:"-55";s:1:"u";s:3:"-45";s:6:"uacute";s:3:"-45";s:11:"ucircumflex";s:3:"-45";s:9:"udieresis";s:3:"-45";s:6:"ugrave";s:3:"-45";s:13:"uhungarumlaut";s:3:"-45";s:7:"umacron";s:3:"-45";s:7:"uogonek";s:3:"-45";s:5:"uring";s:3:"-45";s:1:"w";s:3:"-80";s:1:"y";s:3:"-80";s:6:"yacute";s:3:"-80";s:9:"ydieresis";s:3:"-80";}s:6:"Tcaron";a:72:{s:1:"A";s:3:"-93";s:6:"Aacute";s:3:"-93";s:6:"Abreve";s:3:"-93";s:11:"Acircumflex";s:3:"-93";s:9:"Adieresis";s:3:"-93";s:6:"Agrave";s:3:"-93";s:7:"Amacron";s:3:"-93";s:7:"Aogonek";s:3:"-93";s:5:"Aring";s:3:"-93";s:6:"Atilde";s:3:"-93";s:1:"O";s:3:"-18";s:6:"Oacute";s:3:"-18";s:11:"Ocircumflex";s:3:"-18";s:9:"Odieresis";s:3:"-18";s:6:"Ograve";s:3:"-18";s:13:"Ohungarumlaut";s:3:"-18";s:7:"Omacron";s:3:"-18";s:6:"Oslash";s:3:"-18";s:6:"Otilde";s:3:"-18";s:1:"a";s:3:"-80";s:6:"aacute";s:3:"-80";s:6:"abreve";s:3:"-80";s:11:"acircumflex";s:3:"-80";s:9:"adieresis";s:3:"-40";s:6:"agrave";s:3:"-40";s:7:"amacron";s:3:"-40";s:7:"aogonek";s:3:"-80";s:5:"aring";s:3:"-80";s:6:"atilde";s:3:"-40";s:5:"colon";s:3:"-50";s:5:"comma";s:3:"-74";s:1:"e";s:3:"-70";s:6:"eacute";s:3:"-70";s:6:"ecaron";s:3:"-70";s:11:"ecircumflex";s:3:"-30";s:9:"edieresis";s:3:"-30";s:10:"edotaccent";s:3:"-70";s:6:"egrave";s:3:"-70";s:7:"emacron";s:3:"-30";s:7:"eogonek";s:3:"-70";s:6:"hyphen";s:3:"-92";s:1:"i";s:3:"-35";s:6:"iacute";s:3:"-35";s:7:"iogonek";s:3:"-35";s:1:"o";s:3:"-80";s:6:"oacute";s:3:"-80";s:11:"ocircumflex";s:3:"-80";s:9:"odieresis";s:3:"-80";s:6:"ograve";s:3:"-80";s:13:"ohungarumlaut";s:3:"-80";s:7:"omacron";s:3:"-80";s:6:"oslash";s:3:"-80";s:6:"otilde";s:3:"-80";s:6:"period";s:3:"-74";s:1:"r";s:3:"-35";s:6:"racute";s:3:"-35";s:6:"rcaron";s:3:"-35";s:12:"rcommaaccent";s:3:"-35";s:9:"semicolon";s:3:"-55";s:1:"u";s:3:"-45";s:6:"uacute";s:3:"-45";s:11:"ucircumflex";s:3:"-45";s:9:"udieresis";s:3:"-45";s:6:"ugrave";s:3:"-45";s:13:"uhungarumlaut";s:3:"-45";s:7:"umacron";s:3:"-45";s:7:"uogonek";s:3:"-45";s:5:"uring";s:3:"-45";s:1:"w";s:3:"-80";s:1:"y";s:3:"-80";s:6:"yacute";s:3:"-80";s:9:"ydieresis";s:3:"-80";}s:12:"Tcommaaccent";a:72:{s:1:"A";s:3:"-93";s:6:"Aacute";s:3:"-93";s:6:"Abreve";s:3:"-93";s:11:"Acircumflex";s:3:"-93";s:9:"Adieresis";s:3:"-93";s:6:"Agrave";s:3:"-93";s:7:"Amacron";s:3:"-93";s:7:"Aogonek";s:3:"-93";s:5:"Aring";s:3:"-93";s:6:"Atilde";s:3:"-93";s:1:"O";s:3:"-18";s:6:"Oacute";s:3:"-18";s:11:"Ocircumflex";s:3:"-18";s:9:"Odieresis";s:3:"-18";s:6:"Ograve";s:3:"-18";s:13:"Ohungarumlaut";s:3:"-18";s:7:"Omacron";s:3:"-18";s:6:"Oslash";s:3:"-18";s:6:"Otilde";s:3:"-18";s:1:"a";s:3:"-80";s:6:"aacute";s:3:"-80";s:6:"abreve";s:3:"-80";s:11:"acircumflex";s:3:"-80";s:9:"adieresis";s:3:"-40";s:6:"agrave";s:3:"-40";s:7:"amacron";s:3:"-40";s:7:"aogonek";s:3:"-80";s:5:"aring";s:3:"-80";s:6:"atilde";s:3:"-40";s:5:"colon";s:3:"-50";s:5:"comma";s:3:"-74";s:1:"e";s:3:"-70";s:6:"eacute";s:3:"-70";s:6:"ecaron";s:3:"-70";s:11:"ecircumflex";s:3:"-30";s:9:"edieresis";s:3:"-30";s:10:"edotaccent";s:3:"-70";s:6:"egrave";s:3:"-30";s:7:"emacron";s:3:"-70";s:7:"eogonek";s:3:"-70";s:6:"hyphen";s:3:"-92";s:1:"i";s:3:"-35";s:6:"iacute";s:3:"-35";s:7:"iogonek";s:3:"-35";s:1:"o";s:3:"-80";s:6:"oacute";s:3:"-80";s:11:"ocircumflex";s:3:"-80";s:9:"odieresis";s:3:"-80";s:6:"ograve";s:3:"-80";s:13:"ohungarumlaut";s:3:"-80";s:7:"omacron";s:3:"-80";s:6:"oslash";s:3:"-80";s:6:"otilde";s:3:"-80";s:6:"period";s:3:"-74";s:1:"r";s:3:"-35";s:6:"racute";s:3:"-35";s:6:"rcaron";s:3:"-35";s:12:"rcommaaccent";s:3:"-35";s:9:"semicolon";s:3:"-55";s:1:"u";s:3:"-45";s:6:"uacute";s:3:"-45";s:11:"ucircumflex";s:3:"-45";s:9:"udieresis";s:3:"-45";s:6:"ugrave";s:3:"-45";s:13:"uhungarumlaut";s:3:"-45";s:7:"umacron";s:3:"-45";s:7:"uogonek";s:3:"-45";s:5:"uring";s:3:"-45";s:1:"w";s:3:"-80";s:1:"y";s:3:"-80";s:6:"yacute";s:3:"-80";s:9:"ydieresis";s:3:"-80";}s:1:"U";a:10:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";}s:6:"Uacute";a:10:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";}s:11:"Ucircumflex";a:10:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";}s:9:"Udieresis";a:10:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";}s:6:"Ugrave";a:10:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";}s:13:"Uhungarumlaut";a:10:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";}s:7:"Umacron";a:10:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";}s:7:"Uogonek";a:10:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";}s:5:"Uring";a:10:{s:1:"A";s:3:"-40";s:6:"Aacute";s:3:"-40";s:6:"Abreve";s:3:"-40";s:11:"Acircumflex";s:3:"-40";s:9:"Adieresis";s:3:"-40";s:6:"Agrave";s:3:"-40";s:7:"Amacron";s:3:"-40";s:7:"Aogonek";s:3:"-40";s:5:"Aring";s:3:"-40";s:6:"Atilde";s:3:"-40";}s:1:"V";a:71:{s:1:"A";s:4:"-135";s:6:"Aacute";s:4:"-135";s:6:"Abreve";s:4:"-135";s:11:"Acircumflex";s:4:"-135";s:9:"Adieresis";s:4:"-135";s:6:"Agrave";s:4:"-135";s:7:"Amacron";s:4:"-135";s:7:"Aogonek";s:4:"-135";s:5:"Aring";s:4:"-135";s:6:"Atilde";s:4:"-135";s:1:"G";s:3:"-15";s:6:"Gbreve";s:3:"-15";s:12:"Gcommaaccent";s:3:"-15";s:1:"O";s:3:"-40";s:6:"Oacute";s:3:"-40";s:11:"Ocircumflex";s:3:"-40";s:9:"Odieresis";s:3:"-40";s:6:"Ograve";s:3:"-40";s:13:"Ohungarumlaut";s:3:"-40";s:7:"Omacron";s:3:"-40";s:6:"Oslash";s:3:"-40";s:6:"Otilde";s:3:"-40";s:1:"a";s:4:"-111";s:6:"aacute";s:4:"-111";s:6:"abreve";s:4:"-111";s:11:"acircumflex";s:3:"-71";s:9:"adieresis";s:3:"-71";s:6:"agrave";s:3:"-71";s:7:"amacron";s:3:"-71";s:7:"aogonek";s:4:"-111";s:5:"aring";s:4:"-111";s:6:"atilde";s:3:"-71";s:5:"colon";s:3:"-74";s:5:"comma";s:4:"-129";s:1:"e";s:4:"-111";s:6:"eacute";s:4:"-111";s:6:"ecaron";s:3:"-71";s:11:"ecircumflex";s:3:"-71";s:9:"edieresis";s:3:"-71";s:10:"edotaccent";s:4:"-111";s:6:"egrave";s:3:"-71";s:7:"emacron";s:3:"-71";s:7:"eogonek";s:4:"-111";s:6:"hyphen";s:4:"-100";s:1:"i";s:3:"-60";s:6:"iacute";s:3:"-60";s:11:"icircumflex";s:3:"-20";s:9:"idieresis";s:3:"-20";s:6:"igrave";s:3:"-20";s:7:"imacron";s:3:"-20";s:7:"iogonek";s:3:"-60";s:1:"o";s:4:"-129";s:6:"oacute";s:4:"-129";s:11:"ocircumflex";s:4:"-129";s:9:"odieresis";s:3:"-89";s:6:"ograve";s:3:"-89";s:13:"ohungarumlaut";s:4:"-129";s:7:"omacron";s:3:"-89";s:6:"oslash";s:4:"-129";s:6:"otilde";s:3:"-89";s:6:"period";s:4:"-129";s:9:"semicolon";s:3:"-74";s:1:"u";s:3:"-75";s:6:"uacute";s:3:"-75";s:11:"ucircumflex";s:3:"-75";s:9:"udieresis";s:3:"-75";s:6:"ugrave";s:3:"-75";s:13:"uhungarumlaut";s:3:"-75";s:7:"umacron";s:3:"-75";s:7:"uogonek";s:3:"-75";s:5:"uring";s:3:"-75";}s:1:"W";a:67:{s:1:"A";s:4:"-120";s:6:"Aacute";s:4:"-120";s:6:"Abreve";s:4:"-120";s:11:"Acircumflex";s:4:"-120";s:9:"Adieresis";s:4:"-120";s:6:"Agrave";s:4:"-120";s:7:"Amacron";s:4:"-120";s:7:"Aogonek";s:4:"-120";s:5:"Aring";s:4:"-120";s:6:"Atilde";s:4:"-120";s:1:"O";s:3:"-10";s:6:"Oacute";s:3:"-10";s:11:"Ocircumflex";s:3:"-10";s:9:"Odieresis";s:3:"-10";s:6:"Ograve";s:3:"-10";s:13:"Ohungarumlaut";s:3:"-10";s:7:"Omacron";s:3:"-10";s:6:"Oslash";s:3:"-10";s:6:"Otilde";s:3:"-10";s:1:"a";s:3:"-80";s:6:"aacute";s:3:"-80";s:6:"abreve";s:3:"-80";s:11:"acircumflex";s:3:"-80";s:9:"adieresis";s:3:"-80";s:6:"agrave";s:3:"-80";s:7:"amacron";s:3:"-80";s:7:"aogonek";s:3:"-80";s:5:"aring";s:3:"-80";s:6:"atilde";s:3:"-80";s:5:"colon";s:3:"-37";s:5:"comma";s:3:"-92";s:1:"e";s:3:"-80";s:6:"eacute";s:3:"-80";s:6:"ecaron";s:3:"-80";s:11:"ecircumflex";s:3:"-80";s:9:"edieresis";s:3:"-40";s:10:"edotaccent";s:3:"-80";s:6:"egrave";s:3:"-40";s:7:"emacron";s:3:"-40";s:7:"eogonek";s:3:"-80";s:6:"hyphen";s:3:"-65";s:1:"i";s:3:"-40";s:6:"iacute";s:3:"-40";s:7:"iogonek";s:3:"-40";s:1:"o";s:3:"-80";s:6:"oacute";s:3:"-80";s:11:"ocircumflex";s:3:"-80";s:9:"odieresis";s:3:"-80";s:6:"ograve";s:3:"-80";s:13:"ohungarumlaut";s:3:"-80";s:7:"omacron";s:3:"-80";s:6:"oslash";s:3:"-80";s:6:"otilde";s:3:"-80";s:6:"period";s:3:"-92";s:9:"semicolon";s:3:"-37";s:1:"u";s:3:"-50";s:6:"uacute";s:3:"-50";s:11:"ucircumflex";s:3:"-50";s:9:"udieresis";s:3:"-50";s:6:"ugrave";s:3:"-50";s:13:"uhungarumlaut";s:3:"-50";s:7:"umacron";s:3:"-50";s:7:"uogonek";s:3:"-50";s:5:"uring";s:3:"-50";s:1:"y";s:3:"-73";s:6:"yacute";s:3:"-73";s:9:"ydieresis";s:3:"-73";}s:1:"Y";a:64:{s:1:"A";s:4:"-120";s:6:"Aacute";s:4:"-120";s:6:"Abreve";s:4:"-120";s:11:"Acircumflex";s:4:"-120";s:9:"Adieresis";s:4:"-120";s:6:"Agrave";s:4:"-120";s:7:"Amacron";s:4:"-120";s:7:"Aogonek";s:4:"-120";s:5:"Aring";s:4:"-120";s:6:"Atilde";s:4:"-120";s:1:"O";s:3:"-30";s:6:"Oacute";s:3:"-30";s:11:"Ocircumflex";s:3:"-30";s:9:"Odieresis";s:3:"-30";s:6:"Ograve";s:3:"-30";s:13:"Ohungarumlaut";s:3:"-30";s:7:"Omacron";s:3:"-30";s:6:"Oslash";s:3:"-30";s:6:"Otilde";s:3:"-30";s:1:"a";s:4:"-100";s:6:"aacute";s:4:"-100";s:6:"abreve";s:4:"-100";s:11:"acircumflex";s:4:"-100";s:9:"adieresis";s:3:"-60";s:6:"agrave";s:3:"-60";s:7:"amacron";s:3:"-60";s:7:"aogonek";s:4:"-100";s:5:"aring";s:4:"-100";s:6:"atilde";s:3:"-60";s:5:"colon";s:3:"-92";s:5:"comma";s:4:"-129";s:1:"e";s:4:"-100";s:6:"eacute";s:4:"-100";s:6:"ecaron";s:4:"-100";s:11:"ecircumflex";s:4:"-100";s:9:"edieresis";s:3:"-60";s:10:"edotaccent";s:4:"-100";s:6:"egrave";s:3:"-60";s:7:"emacron";s:3:"-60";s:7:"eogonek";s:4:"-100";s:6:"hyphen";s:4:"-111";s:1:"i";s:3:"-55";s:6:"iacute";s:3:"-55";s:7:"iogonek";s:3:"-55";s:1:"o";s:4:"-110";s:6:"oacute";s:4:"-110";s:11:"ocircumflex";s:4:"-110";s:9:"odieresis";s:3:"-70";s:6:"ograve";s:3:"-70";s:13:"ohungarumlaut";s:4:"-110";s:7:"omacron";s:3:"-70";s:6:"oslash";s:4:"-110";s:6:"otilde";s:3:"-70";s:6:"period";s:4:"-129";s:9:"semicolon";s:3:"-92";s:1:"u";s:4:"-111";s:6:"uacute";s:4:"-111";s:11:"ucircumflex";s:4:"-111";s:9:"udieresis";s:3:"-71";s:6:"ugrave";s:3:"-71";s:13:"uhungarumlaut";s:4:"-111";s:7:"umacron";s:3:"-71";s:7:"uogonek";s:4:"-111";s:5:"uring";s:4:"-111";}s:6:"Yacute";a:64:{s:1:"A";s:4:"-120";s:6:"Aacute";s:4:"-120";s:6:"Abreve";s:4:"-120";s:11:"Acircumflex";s:4:"-120";s:9:"Adieresis";s:4:"-120";s:6:"Agrave";s:4:"-120";s:7:"Amacron";s:4:"-120";s:7:"Aogonek";s:4:"-120";s:5:"Aring";s:4:"-120";s:6:"Atilde";s:4:"-120";s:1:"O";s:3:"-30";s:6:"Oacute";s:3:"-30";s:11:"Ocircumflex";s:3:"-30";s:9:"Odieresis";s:3:"-30";s:6:"Ograve";s:3:"-30";s:13:"Ohungarumlaut";s:3:"-30";s:7:"Omacron";s:3:"-30";s:6:"Oslash";s:3:"-30";s:6:"Otilde";s:3:"-30";s:1:"a";s:4:"-100";s:6:"aacute";s:4:"-100";s:6:"abreve";s:4:"-100";s:11:"acircumflex";s:4:"-100";s:9:"adieresis";s:3:"-60";s:6:"agrave";s:3:"-60";s:7:"amacron";s:3:"-60";s:7:"aogonek";s:4:"-100";s:5:"aring";s:4:"-100";s:6:"atilde";s:3:"-60";s:5:"colon";s:3:"-92";s:5:"comma";s:4:"-129";s:1:"e";s:4:"-100";s:6:"eacute";s:4:"-100";s:6:"ecaron";s:4:"-100";s:11:"ecircumflex";s:4:"-100";s:9:"edieresis";s:3:"-60";s:10:"edotaccent";s:4:"-100";s:6:"egrave";s:3:"-60";s:7:"emacron";s:3:"-60";s:7:"eogonek";s:4:"-100";s:6:"hyphen";s:4:"-111";s:1:"i";s:3:"-55";s:6:"iacute";s:3:"-55";s:7:"iogonek";s:3:"-55";s:1:"o";s:4:"-110";s:6:"oacute";s:4:"-110";s:11:"ocircumflex";s:4:"-110";s:9:"odieresis";s:3:"-70";s:6:"ograve";s:3:"-70";s:13:"ohungarumlaut";s:4:"-110";s:7:"omacron";s:3:"-70";s:6:"oslash";s:4:"-110";s:6:"otilde";s:3:"-70";s:6:"period";s:4:"-129";s:9:"semicolon";s:3:"-92";s:1:"u";s:4:"-111";s:6:"uacute";s:4:"-111";s:11:"ucircumflex";s:4:"-111";s:9:"udieresis";s:3:"-71";s:6:"ugrave";s:3:"-71";s:13:"uhungarumlaut";s:4:"-111";s:7:"umacron";s:3:"-71";s:7:"uogonek";s:4:"-111";s:5:"uring";s:4:"-111";}s:9:"Ydieresis";a:64:{s:1:"A";s:4:"-120";s:6:"Aacute";s:4:"-120";s:6:"Abreve";s:4:"-120";s:11:"Acircumflex";s:4:"-120";s:9:"Adieresis";s:4:"-120";s:6:"Agrave";s:4:"-120";s:7:"Amacron";s:4:"-120";s:7:"Aogonek";s:4:"-120";s:5:"Aring";s:4:"-120";s:6:"Atilde";s:4:"-120";s:1:"O";s:3:"-30";s:6:"Oacute";s:3:"-30";s:11:"Ocircumflex";s:3:"-30";s:9:"Odieresis";s:3:"-30";s:6:"Ograve";s:3:"-30";s:13:"Ohungarumlaut";s:3:"-30";s:7:"Omacron";s:3:"-30";s:6:"Oslash";s:3:"-30";s:6:"Otilde";s:3:"-30";s:1:"a";s:4:"-100";s:6:"aacute";s:4:"-100";s:6:"abreve";s:4:"-100";s:11:"acircumflex";s:4:"-100";s:9:"adieresis";s:3:"-60";s:6:"agrave";s:3:"-60";s:7:"amacron";s:3:"-60";s:7:"aogonek";s:4:"-100";s:5:"aring";s:4:"-100";s:6:"atilde";s:4:"-100";s:5:"colon";s:3:"-92";s:5:"comma";s:4:"-129";s:1:"e";s:4:"-100";s:6:"eacute";s:4:"-100";s:6:"ecaron";s:4:"-100";s:11:"ecircumflex";s:4:"-100";s:9:"edieresis";s:3:"-60";s:10:"edotaccent";s:4:"-100";s:6:"egrave";s:3:"-60";s:7:"emacron";s:3:"-60";s:7:"eogonek";s:4:"-100";s:6:"hyphen";s:4:"-111";s:1:"i";s:3:"-55";s:6:"iacute";s:3:"-55";s:7:"iogonek";s:3:"-55";s:1:"o";s:4:"-110";s:6:"oacute";s:4:"-110";s:11:"ocircumflex";s:4:"-110";s:9:"odieresis";s:3:"-70";s:6:"ograve";s:3:"-70";s:13:"ohungarumlaut";s:4:"-110";s:7:"omacron";s:3:"-70";s:6:"oslash";s:4:"-110";s:6:"otilde";s:3:"-70";s:6:"period";s:4:"-129";s:9:"semicolon";s:3:"-92";s:1:"u";s:4:"-111";s:6:"uacute";s:4:"-111";s:11:"ucircumflex";s:4:"-111";s:9:"udieresis";s:3:"-71";s:6:"ugrave";s:3:"-71";s:13:"uhungarumlaut";s:4:"-111";s:7:"umacron";s:3:"-71";s:7:"uogonek";s:4:"-111";s:5:"uring";s:4:"-111";}s:1:"a";a:2:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-15";}s:6:"aacute";a:2:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-15";}s:6:"abreve";a:2:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-15";}s:11:"acircumflex";a:2:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-15";}s:9:"adieresis";a:2:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-15";}s:6:"agrave";a:2:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-15";}s:7:"amacron";a:2:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-15";}s:7:"aogonek";a:2:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-15";}s:5:"aring";a:2:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-15";}s:6:"atilde";a:2:{s:1:"v";s:3:"-20";s:1:"w";s:3:"-15";}s:1:"b";a:11:{s:6:"period";s:3:"-40";s:1:"u";s:3:"-20";s:6:"uacute";s:3:"-20";s:11:"ucircumflex";s:3:"-20";s:9:"udieresis";s:3:"-20";s:6:"ugrave";s:3:"-20";s:13:"uhungarumlaut";s:3:"-20";s:7:"umacron";s:3:"-20";s:7:"uogonek";s:3:"-20";s:5:"uring";s:3:"-20";s:1:"v";s:3:"-15";}s:1:"c";a:3:{s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:6:"cacute";a:3:{s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:6:"ccaron";a:3:{s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:8:"ccedilla";a:3:{s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:5:"comma";a:2:{s:13:"quotedblright";s:3:"-70";s:10:"quoteright";s:3:"-70";}s:1:"e";a:9:{s:1:"g";s:3:"-15";s:6:"gbreve";s:3:"-15";s:12:"gcommaaccent";s:3:"-15";s:1:"v";s:3:"-25";s:1:"w";s:3:"-25";s:1:"x";s:3:"-15";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:6:"eacute";a:9:{s:1:"g";s:3:"-15";s:6:"gbreve";s:3:"-15";s:12:"gcommaaccent";s:3:"-15";s:1:"v";s:3:"-25";s:1:"w";s:3:"-25";s:1:"x";s:3:"-15";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:6:"ecaron";a:9:{s:1:"g";s:3:"-15";s:6:"gbreve";s:3:"-15";s:12:"gcommaaccent";s:3:"-15";s:1:"v";s:3:"-25";s:1:"w";s:3:"-25";s:1:"x";s:3:"-15";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:11:"ecircumflex";a:9:{s:1:"g";s:3:"-15";s:6:"gbreve";s:3:"-15";s:12:"gcommaaccent";s:3:"-15";s:1:"v";s:3:"-25";s:1:"w";s:3:"-25";s:1:"x";s:3:"-15";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:9:"edieresis";a:9:{s:1:"g";s:3:"-15";s:6:"gbreve";s:3:"-15";s:12:"gcommaaccent";s:3:"-15";s:1:"v";s:3:"-25";s:1:"w";s:3:"-25";s:1:"x";s:3:"-15";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:10:"edotaccent";a:9:{s:1:"g";s:3:"-15";s:6:"gbreve";s:3:"-15";s:12:"gcommaaccent";s:3:"-15";s:1:"v";s:3:"-25";s:1:"w";s:3:"-25";s:1:"x";s:3:"-15";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:6:"egrave";a:9:{s:1:"g";s:3:"-15";s:6:"gbreve";s:3:"-15";s:12:"gcommaaccent";s:3:"-15";s:1:"v";s:3:"-25";s:1:"w";s:3:"-25";s:1:"x";s:3:"-15";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:7:"emacron";a:9:{s:1:"g";s:3:"-15";s:6:"gbreve";s:3:"-15";s:12:"gcommaaccent";s:3:"-15";s:1:"v";s:3:"-25";s:1:"w";s:3:"-25";s:1:"x";s:3:"-15";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:7:"eogonek";a:9:{s:1:"g";s:3:"-15";s:6:"gbreve";s:3:"-15";s:12:"gcommaaccent";s:3:"-15";s:1:"v";s:3:"-25";s:1:"w";s:3:"-25";s:1:"x";s:3:"-15";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:1:"f";a:15:{s:1:"a";s:3:"-10";s:6:"aacute";s:3:"-10";s:6:"abreve";s:3:"-10";s:11:"acircumflex";s:3:"-10";s:9:"adieresis";s:3:"-10";s:6:"agrave";s:3:"-10";s:7:"amacron";s:3:"-10";s:7:"aogonek";s:3:"-10";s:5:"aring";s:3:"-10";s:6:"atilde";s:3:"-10";s:8:"dotlessi";s:3:"-50";s:1:"f";s:3:"-25";s:1:"i";s:3:"-20";s:6:"iacute";s:3:"-20";s:10:"quoteright";s:2:"55";}s:1:"g";a:10:{s:1:"a";s:2:"-5";s:6:"aacute";s:2:"-5";s:6:"abreve";s:2:"-5";s:11:"acircumflex";s:2:"-5";s:9:"adieresis";s:2:"-5";s:6:"agrave";s:2:"-5";s:7:"amacron";s:2:"-5";s:7:"aogonek";s:2:"-5";s:5:"aring";s:2:"-5";s:6:"atilde";s:2:"-5";}s:6:"gbreve";a:10:{s:1:"a";s:2:"-5";s:6:"aacute";s:2:"-5";s:6:"abreve";s:2:"-5";s:11:"acircumflex";s:2:"-5";s:9:"adieresis";s:2:"-5";s:6:"agrave";s:2:"-5";s:7:"amacron";s:2:"-5";s:7:"aogonek";s:2:"-5";s:5:"aring";s:2:"-5";s:6:"atilde";s:2:"-5";}s:12:"gcommaaccent";a:10:{s:1:"a";s:2:"-5";s:6:"aacute";s:2:"-5";s:6:"abreve";s:2:"-5";s:11:"acircumflex";s:2:"-5";s:9:"adieresis";s:2:"-5";s:6:"agrave";s:2:"-5";s:7:"amacron";s:2:"-5";s:7:"aogonek";s:2:"-5";s:5:"aring";s:2:"-5";s:6:"atilde";s:2:"-5";}s:1:"h";a:3:{s:1:"y";s:2:"-5";s:6:"yacute";s:2:"-5";s:9:"ydieresis";s:2:"-5";}s:1:"i";a:1:{s:1:"v";s:3:"-25";}s:6:"iacute";a:1:{s:1:"v";s:3:"-25";}s:11:"icircumflex";a:1:{s:1:"v";s:3:"-25";}s:9:"idieresis";a:1:{s:1:"v";s:3:"-25";}s:6:"igrave";a:1:{s:1:"v";s:3:"-25";}s:7:"imacron";a:1:{s:1:"v";s:3:"-25";}s:7:"iogonek";a:1:{s:1:"v";s:3:"-25";}s:1:"k";a:21:{s:1:"e";s:3:"-10";s:6:"eacute";s:3:"-10";s:6:"ecaron";s:3:"-10";s:11:"ecircumflex";s:3:"-10";s:9:"edieresis";s:3:"-10";s:10:"edotaccent";s:3:"-10";s:6:"egrave";s:3:"-10";s:7:"emacron";s:3:"-10";s:7:"eogonek";s:3:"-10";s:1:"o";s:3:"-10";s:6:"oacute";s:3:"-10";s:11:"ocircumflex";s:3:"-10";s:9:"odieresis";s:3:"-10";s:6:"ograve";s:3:"-10";s:13:"ohungarumlaut";s:3:"-10";s:7:"omacron";s:3:"-10";s:6:"oslash";s:3:"-10";s:6:"otilde";s:3:"-10";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:12:"kcommaaccent";a:21:{s:1:"e";s:3:"-10";s:6:"eacute";s:3:"-10";s:6:"ecaron";s:3:"-10";s:11:"ecircumflex";s:3:"-10";s:9:"edieresis";s:3:"-10";s:10:"edotaccent";s:3:"-10";s:6:"egrave";s:3:"-10";s:7:"emacron";s:3:"-10";s:7:"eogonek";s:3:"-10";s:1:"o";s:3:"-10";s:6:"oacute";s:3:"-10";s:11:"ocircumflex";s:3:"-10";s:9:"odieresis";s:3:"-10";s:6:"ograve";s:3:"-10";s:13:"ohungarumlaut";s:3:"-10";s:7:"omacron";s:3:"-10";s:6:"oslash";s:3:"-10";s:6:"otilde";s:3:"-10";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:1:"l";a:1:{s:1:"w";s:3:"-10";}s:6:"lacute";a:1:{s:1:"w";s:3:"-10";}s:12:"lcommaaccent";a:1:{s:1:"w";s:3:"-10";}s:6:"lslash";a:1:{s:1:"w";s:3:"-10";}s:1:"n";a:4:{s:1:"v";s:3:"-40";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:6:"nacute";a:4:{s:1:"v";s:3:"-40";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:6:"ncaron";a:4:{s:1:"v";s:3:"-40";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:12:"ncommaaccent";a:4:{s:1:"v";s:3:"-40";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:6:"ntilde";a:4:{s:1:"v";s:3:"-40";s:1:"y";s:3:"-15";s:6:"yacute";s:3:"-15";s:9:"ydieresis";s:3:"-15";}s:1:"o";a:5:{s:1:"v";s:3:"-15";s:1:"w";s:3:"-25";s:1:"y";s:3:"-10";s:6:"yacute";s:3:"-10";s:9:"ydieresis";s:3:"-10";}s:6:"oacute";a:5:{s:1:"v";s:3:"-15";s:1:"w";s:3:"-25";s:1:"y";s:3:"-10";s:6:"yacute";s:3:"-10";s:9:"ydieresis";s:3:"-10";}s:11:"ocircumflex";a:5:{s:1:"v";s:3:"-15";s:1:"w";s:3:"-25";s:1:"y";s:3:"-10";s:6:"yacute";s:3:"-10";s:9:"ydieresis";s:3:"-10";}s:9:"odieresis";a:5:{s:1:"v";s:3:"-15";s:1:"w";s:3:"-25";s:1:"y";s:3:"-10";s:6:"yacute";s:3:"-10";s:9:"ydieresis";s:3:"-10";}s:6:"ograve";a:5:{s:1:"v";s:3:"-15";s:1:"w";s:3:"-25";s:1:"y";s:3:"-10";s:6:"yacute";s:3:"-10";s:9:"ydieresis";s:3:"-10";}s:13:"ohungarumlaut";a:5:{s:1:"v";s:3:"-15";s:1:"w";s:3:"-25";s:1:"y";s:3:"-10";s:6:"yacute";s:3:"-10";s:9:"ydieresis";s:3:"-10";}s:7:"omacron";a:5:{s:1:"v";s:3:"-15";s:1:"w";s:3:"-25";s:1:"y";s:3:"-10";s:6:"yacute";s:3:"-10";s:9:"ydieresis";s:3:"-10";}s:6:"oslash";a:5:{s:1:"v";s:3:"-15";s:1:"w";s:3:"-25";s:1:"y";s:3:"-10";s:6:"yacute";s:3:"-10";s:9:"ydieresis";s:3:"-10";}s:6:"otilde";a:5:{s:1:"v";s:3:"-15";s:1:"w";s:3:"-25";s:1:"y";s:3:"-10";s:6:"yacute";s:3:"-10";s:9:"ydieresis";s:3:"-10";}s:1:"p";a:3:{s:1:"y";s:3:"-10";s:6:"yacute";s:3:"-10";s:9:"ydieresis";s:3:"-10";}s:6:"period";a:2:{s:13:"quotedblright";s:3:"-70";s:10:"quoteright";s:3:"-70";}s:12:"quotedblleft";a:10:{s:1:"A";s:3:"-80";s:6:"Aacute";s:3:"-80";s:6:"Abreve";s:3:"-80";s:11:"Acircumflex";s:3:"-80";s:9:"Adieresis";s:3:"-80";s:6:"Agrave";s:3:"-80";s:7:"Amacron";s:3:"-80";s:7:"Aogonek";s:3:"-80";s:5:"Aring";s:3:"-80";s:6:"Atilde";s:3:"-80";}s:9:"quoteleft";a:11:{s:1:"A";s:3:"-80";s:6:"Aacute";s:3:"-80";s:6:"Abreve";s:3:"-80";s:11:"Acircumflex";s:3:"-80";s:9:"Adieresis";s:3:"-80";s:6:"Agrave";s:3:"-80";s:7:"Amacron";s:3:"-80";s:7:"Aogonek";s:3:"-80";s:5:"Aring";s:3:"-80";s:6:"Atilde";s:3:"-80";s:9:"quoteleft";s:3:"-74";}s:10:"quoteright";a:20:{s:1:"d";s:3:"-50";s:6:"dcroat";s:3:"-50";s:1:"l";s:3:"-10";s:6:"lacute";s:3:"-10";s:12:"lcommaaccent";s:3:"-10";s:6:"lslash";s:3:"-10";s:10:"quoteright";s:3:"-74";s:1:"r";s:3:"-50";s:6:"racute";s:3:"-50";s:6:"rcaron";s:3:"-50";s:12:"rcommaaccent";s:3:"-50";s:1:"s";s:3:"-55";s:6:"sacute";s:3:"-55";s:6:"scaron";s:3:"-55";s:8:"scedilla";s:3:"-55";s:12:"scommaaccent";s:3:"-55";s:5:"space";s:3:"-74";s:1:"t";s:3:"-18";s:12:"tcommaaccent";s:3:"-18";s:1:"v";s:3:"-50";}s:1:"r";a:6:{s:5:"comma";s:3:"-40";s:1:"g";s:3:"-18";s:6:"gbreve";s:3:"-18";s:12:"gcommaaccent";s:3:"-18";s:6:"hyphen";s:3:"-20";s:6:"period";s:3:"-55";}s:6:"racute";a:6:{s:5:"comma";s:3:"-40";s:1:"g";s:3:"-18";s:6:"gbreve";s:3:"-18";s:12:"gcommaaccent";s:3:"-18";s:6:"hyphen";s:3:"-20";s:6:"period";s:3:"-55";}s:6:"rcaron";a:6:{s:5:"comma";s:3:"-40";s:1:"g";s:3:"-18";s:6:"gbreve";s:3:"-18";s:12:"gcommaaccent";s:3:"-18";s:6:"hyphen";s:3:"-20";s:6:"period";s:3:"-55";}s:12:"rcommaaccent";a:6:{s:5:"comma";s:3:"-40";s:1:"g";s:3:"-18";s:6:"gbreve";s:3:"-18";s:12:"gcommaaccent";s:3:"-18";s:6:"hyphen";s:3:"-20";s:6:"period";s:3:"-55";}s:5:"space";a:18:{s:1:"A";s:3:"-55";s:6:"Aacute";s:3:"-55";s:6:"Abreve";s:3:"-55";s:11:"Acircumflex";s:3:"-55";s:9:"Adieresis";s:3:"-55";s:6:"Agrave";s:3:"-55";s:7:"Amacron";s:3:"-55";s:7:"Aogonek";s:3:"-55";s:5:"Aring";s:3:"-55";s:6:"Atilde";s:3:"-55";s:1:"T";s:3:"-18";s:6:"Tcaron";s:3:"-18";s:12:"Tcommaaccent";s:3:"-18";s:1:"V";s:3:"-50";s:1:"W";s:3:"-30";s:1:"Y";s:3:"-90";s:6:"Yacute";s:3:"-90";s:9:"Ydieresis";s:3:"-90";}s:1:"v";a:30:{s:1:"a";s:3:"-25";s:6:"aacute";s:3:"-25";s:6:"abreve";s:3:"-25";s:11:"acircumflex";s:3:"-25";s:9:"adieresis";s:3:"-25";s:6:"agrave";s:3:"-25";s:7:"amacron";s:3:"-25";s:7:"aogonek";s:3:"-25";s:5:"aring";s:3:"-25";s:6:"atilde";s:3:"-25";s:5:"comma";s:3:"-65";s:1:"e";s:3:"-15";s:6:"eacute";s:3:"-15";s:6:"ecaron";s:3:"-15";s:11:"ecircumflex";s:3:"-15";s:9:"edieresis";s:3:"-15";s:10:"edotaccent";s:3:"-15";s:6:"egrave";s:3:"-15";s:7:"emacron";s:3:"-15";s:7:"eogonek";s:3:"-15";s:1:"o";s:3:"-20";s:6:"oacute";s:3:"-20";s:11:"ocircumflex";s:3:"-20";s:9:"odieresis";s:3:"-20";s:6:"ograve";s:3:"-20";s:13:"ohungarumlaut";s:3:"-20";s:7:"omacron";s:3:"-20";s:6:"oslash";s:3:"-20";s:6:"otilde";s:3:"-20";s:6:"period";s:3:"-65";}s:1:"w";a:21:{s:1:"a";s:3:"-10";s:6:"aacute";s:3:"-10";s:6:"abreve";s:3:"-10";s:11:"acircumflex";s:3:"-10";s:9:"adieresis";s:3:"-10";s:6:"agrave";s:3:"-10";s:7:"amacron";s:3:"-10";s:7:"aogonek";s:3:"-10";s:5:"aring";s:3:"-10";s:6:"atilde";s:3:"-10";s:5:"comma";s:3:"-65";s:1:"o";s:3:"-10";s:6:"oacute";s:3:"-10";s:11:"ocircumflex";s:3:"-10";s:9:"odieresis";s:3:"-10";s:6:"ograve";s:3:"-10";s:13:"ohungarumlaut";s:3:"-10";s:7:"omacron";s:3:"-10";s:6:"oslash";s:3:"-10";s:6:"otilde";s:3:"-10";s:6:"period";s:3:"-65";}s:1:"x";a:9:{s:1:"e";s:3:"-15";s:6:"eacute";s:3:"-15";s:6:"ecaron";s:3:"-15";s:11:"ecircumflex";s:3:"-15";s:9:"edieresis";s:3:"-15";s:10:"edotaccent";s:3:"-15";s:6:"egrave";s:3:"-15";s:7:"emacron";s:3:"-15";s:7:"eogonek";s:3:"-15";}s:1:"y";a:2:{s:5:"comma";s:3:"-65";s:6:"period";s:3:"-65";}s:6:"yacute";a:2:{s:5:"comma";s:3:"-65";s:6:"period";s:3:"-65";}s:9:"ydieresis";a:2:{s:5:"comma";s:3:"-65";s:6:"period";s:3:"-65";}}s:9:"_version_";i:1;} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_ZapfDingbats.afm b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_ZapfDingbats.afm
new file mode 100755
index 00000000..12b5b973
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/PDF/default/templates/fonts/php_ZapfDingbats.afm
@@ -0,0 +1 @@
+a:17:{s:8:"FontName";s:12:"ZapfDingbats";s:8:"FullName";s:17:"ITC Zapf Dingbats";s:10:"FamilyName";s:12:"ZapfDingbats";s:6:"Weight";s:6:"Medium";s:11:"ItalicAngle";s:1:"0";s:12:"IsFixedPitch";s:5:"false";s:12:"CharacterSet";s:7:"Special";s:8:"FontBBox";a:4:{i:0;s:2:"-1";i:1;s:4:"-143";i:2;s:3:"981";i:3;s:3:"820";}s:17:"UnderlinePosition";s:4:"-100";s:18:"UnderlineThickness";s:2:"50";s:7:"Version";s:7:"002.000";s:14:"EncodingScheme";s:12:"FontSpecific";s:5:"StdHW";s:2:"28";s:5:"StdVW";s:2:"90";s:16:"StartCharMetrics";s:3:"202";s:1:"C";a:404:{i:32;a:4:{s:1:"C";s:2:"32";s:2:"WX";s:3:"278";s:1:"N";s:5:"space";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:1:"0";i:3;s:1:"0";}}s:5:"space";a:4:{s:1:"C";s:2:"32";s:2:"WX";s:3:"278";s:1:"N";s:5:"space";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:1:"0";i:2;s:1:"0";i:3;s:1:"0";}}i:33;a:4:{s:1:"C";s:2:"33";s:2:"WX";s:3:"974";s:1:"N";s:2:"a1";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"72";i:2;s:3:"939";i:3;s:3:"621";}}s:2:"a1";a:4:{s:1:"C";s:2:"33";s:2:"WX";s:3:"974";s:1:"N";s:2:"a1";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"72";i:2;s:3:"939";i:3;s:3:"621";}}i:34;a:4:{s:1:"C";s:2:"34";s:2:"WX";s:3:"961";s:1:"N";s:2:"a2";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"81";i:2;s:3:"927";i:3;s:3:"611";}}s:2:"a2";a:4:{s:1:"C";s:2:"34";s:2:"WX";s:3:"961";s:1:"N";s:2:"a2";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"81";i:2;s:3:"927";i:3;s:3:"611";}}i:35;a:4:{s:1:"C";s:2:"35";s:2:"WX";s:3:"974";s:1:"N";s:4:"a202";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"72";i:2;s:3:"939";i:3;s:3:"621";}}s:4:"a202";a:4:{s:1:"C";s:2:"35";s:2:"WX";s:3:"974";s:1:"N";s:4:"a202";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"72";i:2;s:3:"939";i:3;s:3:"621";}}i:36;a:4:{s:1:"C";s:2:"36";s:2:"WX";s:3:"980";s:1:"N";s:2:"a3";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"945";i:3;s:3:"692";}}s:2:"a3";a:4:{s:1:"C";s:2:"36";s:2:"WX";s:3:"980";s:1:"N";s:2:"a3";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"945";i:3;s:3:"692";}}i:37;a:4:{s:1:"C";s:2:"37";s:2:"WX";s:3:"719";s:1:"N";s:2:"a4";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"139";i:2;s:3:"685";i:3;s:3:"566";}}s:2:"a4";a:4:{s:1:"C";s:2:"37";s:2:"WX";s:3:"719";s:1:"N";s:2:"a4";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"139";i:2;s:3:"685";i:3;s:3:"566";}}i:38;a:4:{s:1:"C";s:2:"38";s:2:"WX";s:3:"789";s:1:"N";s:2:"a5";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"755";i:3;s:3:"705";}}s:2:"a5";a:4:{s:1:"C";s:2:"38";s:2:"WX";s:3:"789";s:1:"N";s:2:"a5";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"755";i:3;s:3:"705";}}i:39;a:4:{s:1:"C";s:2:"39";s:2:"WX";s:3:"790";s:1:"N";s:4:"a119";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"755";i:3;s:3:"705";}}s:4:"a119";a:4:{s:1:"C";s:2:"39";s:2:"WX";s:3:"790";s:1:"N";s:4:"a119";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"755";i:3;s:3:"705";}}i:40;a:4:{s:1:"C";s:2:"40";s:2:"WX";s:3:"791";s:1:"N";s:4:"a118";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-13";i:2;s:3:"761";i:3;s:3:"705";}}s:4:"a118";a:4:{s:1:"C";s:2:"40";s:2:"WX";s:3:"791";s:1:"N";s:4:"a118";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-13";i:2;s:3:"761";i:3;s:3:"705";}}i:41;a:4:{s:1:"C";s:2:"41";s:2:"WX";s:3:"690";s:1:"N";s:4:"a117";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"138";i:2;s:3:"655";i:3;s:3:"553";}}s:4:"a117";a:4:{s:1:"C";s:2:"41";s:2:"WX";s:3:"690";s:1:"N";s:4:"a117";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"138";i:2;s:3:"655";i:3;s:3:"553";}}i:42;a:4:{s:1:"C";s:2:"42";s:2:"WX";s:3:"960";s:1:"N";s:3:"a11";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"123";i:2;s:3:"925";i:3;s:3:"568";}}s:3:"a11";a:4:{s:1:"C";s:2:"42";s:2:"WX";s:3:"960";s:1:"N";s:3:"a11";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"123";i:2;s:3:"925";i:3;s:3:"568";}}i:43;a:4:{s:1:"C";s:2:"43";s:2:"WX";s:3:"939";s:1:"N";s:3:"a12";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"134";i:2;s:3:"904";i:3;s:3:"559";}}s:3:"a12";a:4:{s:1:"C";s:2:"43";s:2:"WX";s:3:"939";s:1:"N";s:3:"a12";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"134";i:2;s:3:"904";i:3;s:3:"559";}}i:44;a:4:{s:1:"C";s:2:"44";s:2:"WX";s:3:"549";s:1:"N";s:3:"a13";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:3:"-11";i:2;s:3:"516";i:3;s:3:"705";}}s:3:"a13";a:4:{s:1:"C";s:2:"44";s:2:"WX";s:3:"549";s:1:"N";s:3:"a13";s:1:"B";a:4:{i:0;s:2:"29";i:1;s:3:"-11";i:2;s:3:"516";i:3;s:3:"705";}}i:45;a:4:{s:1:"C";s:2:"45";s:2:"WX";s:3:"855";s:1:"N";s:3:"a14";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:2:"59";i:2;s:3:"820";i:3;s:3:"632";}}s:3:"a14";a:4:{s:1:"C";s:2:"45";s:2:"WX";s:3:"855";s:1:"N";s:3:"a14";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:2:"59";i:2;s:3:"820";i:3;s:3:"632";}}i:46;a:4:{s:1:"C";s:2:"46";s:2:"WX";s:3:"911";s:1:"N";s:3:"a15";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"50";i:2;s:3:"876";i:3;s:3:"642";}}s:3:"a15";a:4:{s:1:"C";s:2:"46";s:2:"WX";s:3:"911";s:1:"N";s:3:"a15";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"50";i:2;s:3:"876";i:3;s:3:"642";}}i:47;a:4:{s:1:"C";s:2:"47";s:2:"WX";s:3:"933";s:1:"N";s:3:"a16";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"139";i:2;s:3:"899";i:3;s:3:"550";}}s:3:"a16";a:4:{s:1:"C";s:2:"47";s:2:"WX";s:3:"933";s:1:"N";s:3:"a16";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"139";i:2;s:3:"899";i:3;s:3:"550";}}i:48;a:4:{s:1:"C";s:2:"48";s:2:"WX";s:3:"911";s:1:"N";s:4:"a105";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"50";i:2;s:3:"876";i:3;s:3:"642";}}s:4:"a105";a:4:{s:1:"C";s:2:"48";s:2:"WX";s:3:"911";s:1:"N";s:4:"a105";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"50";i:2;s:3:"876";i:3;s:3:"642";}}i:49;a:4:{s:1:"C";s:2:"49";s:2:"WX";s:3:"945";s:1:"N";s:3:"a17";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"139";i:2;s:3:"909";i:3;s:3:"553";}}s:3:"a17";a:4:{s:1:"C";s:2:"49";s:2:"WX";s:3:"945";s:1:"N";s:3:"a17";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"139";i:2;s:3:"909";i:3;s:3:"553";}}i:50;a:4:{s:1:"C";s:2:"50";s:2:"WX";s:3:"974";s:1:"N";s:3:"a18";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"104";i:2;s:3:"938";i:3;s:3:"587";}}s:3:"a18";a:4:{s:1:"C";s:2:"50";s:2:"WX";s:3:"974";s:1:"N";s:3:"a18";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"104";i:2;s:3:"938";i:3;s:3:"587";}}i:51;a:4:{s:1:"C";s:2:"51";s:2:"WX";s:3:"755";s:1:"N";s:3:"a19";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-13";i:2;s:3:"721";i:3;s:3:"705";}}s:3:"a19";a:4:{s:1:"C";s:2:"51";s:2:"WX";s:3:"755";s:1:"N";s:3:"a19";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-13";i:2;s:3:"721";i:3;s:3:"705";}}i:52;a:4:{s:1:"C";s:2:"52";s:2:"WX";s:3:"846";s:1:"N";s:3:"a20";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:3:"-14";i:2;s:3:"811";i:3;s:3:"705";}}s:3:"a20";a:4:{s:1:"C";s:2:"52";s:2:"WX";s:3:"846";s:1:"N";s:3:"a20";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:3:"-14";i:2;s:3:"811";i:3;s:3:"705";}}i:53;a:4:{s:1:"C";s:2:"53";s:2:"WX";s:3:"762";s:1:"N";s:3:"a21";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"727";i:3;s:3:"692";}}s:3:"a21";a:4:{s:1:"C";s:2:"53";s:2:"WX";s:3:"762";s:1:"N";s:3:"a21";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"727";i:3;s:3:"692";}}i:54;a:4:{s:1:"C";s:2:"54";s:2:"WX";s:3:"761";s:1:"N";s:3:"a22";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"727";i:3;s:3:"692";}}s:3:"a22";a:4:{s:1:"C";s:2:"54";s:2:"WX";s:3:"761";s:1:"N";s:3:"a22";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"727";i:3;s:3:"692";}}i:55;a:4:{s:1:"C";s:2:"55";s:2:"WX";s:3:"571";s:1:"N";s:3:"a23";s:1:"B";a:4:{i:0;s:2:"-1";i:1;s:3:"-68";i:2;s:3:"571";i:3;s:3:"661";}}s:3:"a23";a:4:{s:1:"C";s:2:"55";s:2:"WX";s:3:"571";s:1:"N";s:3:"a23";s:1:"B";a:4:{i:0;s:2:"-1";i:1;s:3:"-68";i:2;s:3:"571";i:3;s:3:"661";}}i:56;a:4:{s:1:"C";s:2:"56";s:2:"WX";s:3:"677";s:1:"N";s:3:"a24";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:3:"-13";i:2;s:3:"642";i:3;s:3:"705";}}s:3:"a24";a:4:{s:1:"C";s:2:"56";s:2:"WX";s:3:"677";s:1:"N";s:3:"a24";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:3:"-13";i:2;s:3:"642";i:3;s:3:"705";}}i:57;a:4:{s:1:"C";s:2:"57";s:2:"WX";s:3:"763";s:1:"N";s:3:"a25";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"728";i:3;s:3:"692";}}s:3:"a25";a:4:{s:1:"C";s:2:"57";s:2:"WX";s:3:"763";s:1:"N";s:3:"a25";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"728";i:3;s:3:"692";}}i:58;a:4:{s:1:"C";s:2:"58";s:2:"WX";s:3:"760";s:1:"N";s:3:"a26";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"726";i:3;s:3:"692";}}s:3:"a26";a:4:{s:1:"C";s:2:"58";s:2:"WX";s:3:"760";s:1:"N";s:3:"a26";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"726";i:3;s:3:"692";}}i:59;a:4:{s:1:"C";s:2:"59";s:2:"WX";s:3:"759";s:1:"N";s:3:"a27";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"725";i:3;s:3:"692";}}s:3:"a27";a:4:{s:1:"C";s:2:"59";s:2:"WX";s:3:"759";s:1:"N";s:3:"a27";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"725";i:3;s:3:"692";}}i:60;a:4:{s:1:"C";s:2:"60";s:2:"WX";s:3:"754";s:1:"N";s:3:"a28";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"720";i:3;s:3:"692";}}s:3:"a28";a:4:{s:1:"C";s:2:"60";s:2:"WX";s:3:"754";s:1:"N";s:3:"a28";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"720";i:3;s:3:"692";}}i:61;a:4:{s:1:"C";s:2:"61";s:2:"WX";s:3:"494";s:1:"N";s:2:"a6";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"460";i:3;s:3:"692";}}s:2:"a6";a:4:{s:1:"C";s:2:"61";s:2:"WX";s:3:"494";s:1:"N";s:2:"a6";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"460";i:3;s:3:"692";}}i:62;a:4:{s:1:"C";s:2:"62";s:2:"WX";s:3:"552";s:1:"N";s:2:"a7";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"517";i:3;s:3:"692";}}s:2:"a7";a:4:{s:1:"C";s:2:"62";s:2:"WX";s:3:"552";s:1:"N";s:2:"a7";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"517";i:3;s:3:"692";}}i:63;a:4:{s:1:"C";s:2:"63";s:2:"WX";s:3:"537";s:1:"N";s:2:"a8";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"503";i:3;s:3:"692";}}s:2:"a8";a:4:{s:1:"C";s:2:"63";s:2:"WX";s:3:"537";s:1:"N";s:2:"a8";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"503";i:3;s:3:"692";}}i:64;a:4:{s:1:"C";s:2:"64";s:2:"WX";s:3:"577";s:1:"N";s:2:"a9";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"96";i:2;s:3:"542";i:3;s:3:"596";}}s:2:"a9";a:4:{s:1:"C";s:2:"64";s:2:"WX";s:3:"577";s:1:"N";s:2:"a9";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"96";i:2;s:3:"542";i:3;s:3:"596";}}i:65;a:4:{s:1:"C";s:2:"65";s:2:"WX";s:3:"692";s:1:"N";s:3:"a10";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"657";i:3;s:3:"705";}}s:3:"a10";a:4:{s:1:"C";s:2:"65";s:2:"WX";s:3:"692";s:1:"N";s:3:"a10";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"657";i:3;s:3:"705";}}i:66;a:4:{s:1:"C";s:2:"66";s:2:"WX";s:3:"786";s:1:"N";s:3:"a29";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"751";i:3;s:3:"705";}}s:3:"a29";a:4:{s:1:"C";s:2:"66";s:2:"WX";s:3:"786";s:1:"N";s:3:"a29";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"751";i:3;s:3:"705";}}i:67;a:4:{s:1:"C";s:2:"67";s:2:"WX";s:3:"788";s:1:"N";s:3:"a30";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"752";i:3;s:3:"705";}}s:3:"a30";a:4:{s:1:"C";s:2:"67";s:2:"WX";s:3:"788";s:1:"N";s:3:"a30";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"752";i:3;s:3:"705";}}i:68;a:4:{s:1:"C";s:2:"68";s:2:"WX";s:3:"788";s:1:"N";s:3:"a31";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"753";i:3;s:3:"705";}}s:3:"a31";a:4:{s:1:"C";s:2:"68";s:2:"WX";s:3:"788";s:1:"N";s:3:"a31";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"753";i:3;s:3:"705";}}i:69;a:4:{s:1:"C";s:2:"69";s:2:"WX";s:3:"790";s:1:"N";s:3:"a32";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"756";i:3;s:3:"705";}}s:3:"a32";a:4:{s:1:"C";s:2:"69";s:2:"WX";s:3:"790";s:1:"N";s:3:"a32";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"756";i:3;s:3:"705";}}i:70;a:4:{s:1:"C";s:2:"70";s:2:"WX";s:3:"793";s:1:"N";s:3:"a33";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-13";i:2;s:3:"759";i:3;s:3:"705";}}s:3:"a33";a:4:{s:1:"C";s:2:"70";s:2:"WX";s:3:"793";s:1:"N";s:3:"a33";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-13";i:2;s:3:"759";i:3;s:3:"705";}}i:71;a:4:{s:1:"C";s:2:"71";s:2:"WX";s:3:"794";s:1:"N";s:3:"a34";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-13";i:2;s:3:"759";i:3;s:3:"705";}}s:3:"a34";a:4:{s:1:"C";s:2:"71";s:2:"WX";s:3:"794";s:1:"N";s:3:"a34";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-13";i:2;s:3:"759";i:3;s:3:"705";}}i:72;a:4:{s:1:"C";s:2:"72";s:2:"WX";s:3:"816";s:1:"N";s:3:"a35";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"782";i:3;s:3:"705";}}s:3:"a35";a:4:{s:1:"C";s:2:"72";s:2:"WX";s:3:"816";s:1:"N";s:3:"a35";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"782";i:3;s:3:"705";}}i:73;a:4:{s:1:"C";s:2:"73";s:2:"WX";s:3:"823";s:1:"N";s:3:"a36";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"787";i:3;s:3:"705";}}s:3:"a36";a:4:{s:1:"C";s:2:"73";s:2:"WX";s:3:"823";s:1:"N";s:3:"a36";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"787";i:3;s:3:"705";}}i:74;a:4:{s:1:"C";s:2:"74";s:2:"WX";s:3:"789";s:1:"N";s:3:"a37";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:3:"a37";a:4:{s:1:"C";s:2:"74";s:2:"WX";s:3:"789";s:1:"N";s:3:"a37";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:75;a:4:{s:1:"C";s:2:"75";s:2:"WX";s:3:"841";s:1:"N";s:3:"a38";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"807";i:3;s:3:"705";}}s:3:"a38";a:4:{s:1:"C";s:2:"75";s:2:"WX";s:3:"841";s:1:"N";s:3:"a38";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"807";i:3;s:3:"705";}}i:76;a:4:{s:1:"C";s:2:"76";s:2:"WX";s:3:"823";s:1:"N";s:3:"a39";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"789";i:3;s:3:"705";}}s:3:"a39";a:4:{s:1:"C";s:2:"76";s:2:"WX";s:3:"823";s:1:"N";s:3:"a39";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"789";i:3;s:3:"705";}}i:77;a:4:{s:1:"C";s:2:"77";s:2:"WX";s:3:"833";s:1:"N";s:3:"a40";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"798";i:3;s:3:"705";}}s:3:"a40";a:4:{s:1:"C";s:2:"77";s:2:"WX";s:3:"833";s:1:"N";s:3:"a40";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"798";i:3;s:3:"705";}}i:78;a:4:{s:1:"C";s:2:"78";s:2:"WX";s:3:"816";s:1:"N";s:3:"a41";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-13";i:2;s:3:"782";i:3;s:3:"705";}}s:3:"a41";a:4:{s:1:"C";s:2:"78";s:2:"WX";s:3:"816";s:1:"N";s:3:"a41";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-13";i:2;s:3:"782";i:3;s:3:"705";}}i:79;a:4:{s:1:"C";s:2:"79";s:2:"WX";s:3:"831";s:1:"N";s:3:"a42";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"796";i:3;s:3:"705";}}s:3:"a42";a:4:{s:1:"C";s:2:"79";s:2:"WX";s:3:"831";s:1:"N";s:3:"a42";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"796";i:3;s:3:"705";}}i:80;a:4:{s:1:"C";s:2:"80";s:2:"WX";s:3:"923";s:1:"N";s:3:"a43";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"888";i:3;s:3:"705";}}s:3:"a43";a:4:{s:1:"C";s:2:"80";s:2:"WX";s:3:"923";s:1:"N";s:3:"a43";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"888";i:3;s:3:"705";}}i:81;a:4:{s:1:"C";s:2:"81";s:2:"WX";s:3:"744";s:1:"N";s:3:"a44";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"710";i:3;s:3:"692";}}s:3:"a44";a:4:{s:1:"C";s:2:"81";s:2:"WX";s:3:"744";s:1:"N";s:3:"a44";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"710";i:3;s:3:"692";}}i:82;a:4:{s:1:"C";s:2:"82";s:2:"WX";s:3:"723";s:1:"N";s:3:"a45";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"688";i:3;s:3:"692";}}s:3:"a45";a:4:{s:1:"C";s:2:"82";s:2:"WX";s:3:"723";s:1:"N";s:3:"a45";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"688";i:3;s:3:"692";}}i:83;a:4:{s:1:"C";s:2:"83";s:2:"WX";s:3:"749";s:1:"N";s:3:"a46";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"714";i:3;s:3:"692";}}s:3:"a46";a:4:{s:1:"C";s:2:"83";s:2:"WX";s:3:"749";s:1:"N";s:3:"a46";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"714";i:3;s:3:"692";}}i:84;a:4:{s:1:"C";s:2:"84";s:2:"WX";s:3:"790";s:1:"N";s:3:"a47";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"756";i:3;s:3:"705";}}s:3:"a47";a:4:{s:1:"C";s:2:"84";s:2:"WX";s:3:"790";s:1:"N";s:3:"a47";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"756";i:3;s:3:"705";}}i:85;a:4:{s:1:"C";s:2:"85";s:2:"WX";s:3:"792";s:1:"N";s:3:"a48";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"758";i:3;s:3:"705";}}s:3:"a48";a:4:{s:1:"C";s:2:"85";s:2:"WX";s:3:"792";s:1:"N";s:3:"a48";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"758";i:3;s:3:"705";}}i:86;a:4:{s:1:"C";s:2:"86";s:2:"WX";s:3:"695";s:1:"N";s:3:"a49";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"661";i:3;s:3:"706";}}s:3:"a49";a:4:{s:1:"C";s:2:"86";s:2:"WX";s:3:"695";s:1:"N";s:3:"a49";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"661";i:3;s:3:"706";}}i:87;a:4:{s:1:"C";s:2:"87";s:2:"WX";s:3:"776";s:1:"N";s:3:"a50";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"-6";i:2;s:3:"741";i:3;s:3:"699";}}s:3:"a50";a:4:{s:1:"C";s:2:"87";s:2:"WX";s:3:"776";s:1:"N";s:3:"a50";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"-6";i:2;s:3:"741";i:3;s:3:"699";}}i:88;a:4:{s:1:"C";s:2:"88";s:2:"WX";s:3:"768";s:1:"N";s:3:"a51";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"-7";i:2;s:3:"734";i:3;s:3:"699";}}s:3:"a51";a:4:{s:1:"C";s:2:"88";s:2:"WX";s:3:"768";s:1:"N";s:3:"a51";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"-7";i:2;s:3:"734";i:3;s:3:"699";}}i:89;a:4:{s:1:"C";s:2:"89";s:2:"WX";s:3:"792";s:1:"N";s:3:"a52";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"757";i:3;s:3:"705";}}s:3:"a52";a:4:{s:1:"C";s:2:"89";s:2:"WX";s:3:"792";s:1:"N";s:3:"a52";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"757";i:3;s:3:"705";}}i:90;a:4:{s:1:"C";s:2:"90";s:2:"WX";s:3:"759";s:1:"N";s:3:"a53";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"725";i:3;s:3:"692";}}s:3:"a53";a:4:{s:1:"C";s:2:"90";s:2:"WX";s:3:"759";s:1:"N";s:3:"a53";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"725";i:3;s:3:"692";}}i:91;a:4:{s:1:"C";s:2:"91";s:2:"WX";s:3:"707";s:1:"N";s:3:"a54";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-13";i:2;s:3:"672";i:3;s:3:"704";}}s:3:"a54";a:4:{s:1:"C";s:2:"91";s:2:"WX";s:3:"707";s:1:"N";s:3:"a54";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-13";i:2;s:3:"672";i:3;s:3:"704";}}i:92;a:4:{s:1:"C";s:2:"92";s:2:"WX";s:3:"708";s:1:"N";s:3:"a55";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"672";i:3;s:3:"705";}}s:3:"a55";a:4:{s:1:"C";s:2:"92";s:2:"WX";s:3:"708";s:1:"N";s:3:"a55";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"672";i:3;s:3:"705";}}i:93;a:4:{s:1:"C";s:2:"93";s:2:"WX";s:3:"682";s:1:"N";s:3:"a56";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"647";i:3;s:3:"705";}}s:3:"a56";a:4:{s:1:"C";s:2:"93";s:2:"WX";s:3:"682";s:1:"N";s:3:"a56";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"647";i:3;s:3:"705";}}i:94;a:4:{s:1:"C";s:2:"94";s:2:"WX";s:3:"701";s:1:"N";s:3:"a57";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"666";i:3;s:3:"705";}}s:3:"a57";a:4:{s:1:"C";s:2:"94";s:2:"WX";s:3:"701";s:1:"N";s:3:"a57";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"666";i:3;s:3:"705";}}i:95;a:4:{s:1:"C";s:2:"95";s:2:"WX";s:3:"826";s:1:"N";s:3:"a58";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"791";i:3;s:3:"705";}}s:3:"a58";a:4:{s:1:"C";s:2:"95";s:2:"WX";s:3:"826";s:1:"N";s:3:"a58";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"791";i:3;s:3:"705";}}i:96;a:4:{s:1:"C";s:2:"96";s:2:"WX";s:3:"815";s:1:"N";s:3:"a59";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"780";i:3;s:3:"705";}}s:3:"a59";a:4:{s:1:"C";s:2:"96";s:2:"WX";s:3:"815";s:1:"N";s:3:"a59";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"780";i:3;s:3:"705";}}i:97;a:4:{s:1:"C";s:2:"97";s:2:"WX";s:3:"789";s:1:"N";s:3:"a60";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:3:"a60";a:4:{s:1:"C";s:2:"97";s:2:"WX";s:3:"789";s:1:"N";s:3:"a60";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:98;a:4:{s:1:"C";s:2:"98";s:2:"WX";s:3:"789";s:1:"N";s:3:"a61";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:3:"a61";a:4:{s:1:"C";s:2:"98";s:2:"WX";s:3:"789";s:1:"N";s:3:"a61";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:99;a:4:{s:1:"C";s:2:"99";s:2:"WX";s:3:"707";s:1:"N";s:3:"a62";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"673";i:3;s:3:"705";}}s:3:"a62";a:4:{s:1:"C";s:2:"99";s:2:"WX";s:3:"707";s:1:"N";s:3:"a62";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"673";i:3;s:3:"705";}}i:100;a:4:{s:1:"C";s:3:"100";s:2:"WX";s:3:"687";s:1:"N";s:3:"a63";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:1:"0";i:2;s:3:"651";i:3;s:3:"692";}}s:3:"a63";a:4:{s:1:"C";s:3:"100";s:2:"WX";s:3:"687";s:1:"N";s:3:"a63";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:1:"0";i:2;s:3:"651";i:3;s:3:"692";}}i:101;a:4:{s:1:"C";s:3:"101";s:2:"WX";s:3:"696";s:1:"N";s:3:"a64";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"661";i:3;s:3:"691";}}s:3:"a64";a:4:{s:1:"C";s:3:"101";s:2:"WX";s:3:"696";s:1:"N";s:3:"a64";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"661";i:3;s:3:"691";}}i:102;a:4:{s:1:"C";s:3:"102";s:2:"WX";s:3:"689";s:1:"N";s:3:"a65";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"655";i:3;s:3:"692";}}s:3:"a65";a:4:{s:1:"C";s:3:"102";s:2:"WX";s:3:"689";s:1:"N";s:3:"a65";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"655";i:3;s:3:"692";}}i:103;a:4:{s:1:"C";s:3:"103";s:2:"WX";s:3:"786";s:1:"N";s:3:"a66";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"751";i:3;s:3:"705";}}s:3:"a66";a:4:{s:1:"C";s:3:"103";s:2:"WX";s:3:"786";s:1:"N";s:3:"a66";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"751";i:3;s:3:"705";}}i:104;a:4:{s:1:"C";s:3:"104";s:2:"WX";s:3:"787";s:1:"N";s:3:"a67";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"752";i:3;s:3:"705";}}s:3:"a67";a:4:{s:1:"C";s:3:"104";s:2:"WX";s:3:"787";s:1:"N";s:3:"a67";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"752";i:3;s:3:"705";}}i:105;a:4:{s:1:"C";s:3:"105";s:2:"WX";s:3:"713";s:1:"N";s:3:"a68";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"678";i:3;s:3:"705";}}s:3:"a68";a:4:{s:1:"C";s:3:"105";s:2:"WX";s:3:"713";s:1:"N";s:3:"a68";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"678";i:3;s:3:"705";}}i:106;a:4:{s:1:"C";s:3:"106";s:2:"WX";s:3:"791";s:1:"N";s:3:"a69";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"756";i:3;s:3:"705";}}s:3:"a69";a:4:{s:1:"C";s:3:"106";s:2:"WX";s:3:"791";s:1:"N";s:3:"a69";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"756";i:3;s:3:"705";}}i:107;a:4:{s:1:"C";s:3:"107";s:2:"WX";s:3:"785";s:1:"N";s:3:"a70";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:3:"-14";i:2;s:3:"751";i:3;s:3:"705";}}s:3:"a70";a:4:{s:1:"C";s:3:"107";s:2:"WX";s:3:"785";s:1:"N";s:3:"a70";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:3:"-14";i:2;s:3:"751";i:3;s:3:"705";}}i:108;a:4:{s:1:"C";s:3:"108";s:2:"WX";s:3:"791";s:1:"N";s:3:"a71";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"757";i:3;s:3:"705";}}s:3:"a71";a:4:{s:1:"C";s:3:"108";s:2:"WX";s:3:"791";s:1:"N";s:3:"a71";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"757";i:3;s:3:"705";}}i:109;a:4:{s:1:"C";s:3:"109";s:2:"WX";s:3:"873";s:1:"N";s:3:"a72";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"838";i:3;s:3:"705";}}s:3:"a72";a:4:{s:1:"C";s:3:"109";s:2:"WX";s:3:"873";s:1:"N";s:3:"a72";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"838";i:3;s:3:"705";}}i:110;a:4:{s:1:"C";s:3:"110";s:2:"WX";s:3:"761";s:1:"N";s:3:"a73";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"726";i:3;s:3:"692";}}s:3:"a73";a:4:{s:1:"C";s:3:"110";s:2:"WX";s:3:"761";s:1:"N";s:3:"a73";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"726";i:3;s:3:"692";}}i:111;a:4:{s:1:"C";s:3:"111";s:2:"WX";s:3:"762";s:1:"N";s:3:"a74";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"727";i:3;s:3:"692";}}s:3:"a74";a:4:{s:1:"C";s:3:"111";s:2:"WX";s:3:"762";s:1:"N";s:3:"a74";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"727";i:3;s:3:"692";}}i:112;a:4:{s:1:"C";s:3:"112";s:2:"WX";s:3:"762";s:1:"N";s:4:"a203";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"727";i:3;s:3:"692";}}s:4:"a203";a:4:{s:1:"C";s:3:"112";s:2:"WX";s:3:"762";s:1:"N";s:4:"a203";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"727";i:3;s:3:"692";}}i:113;a:4:{s:1:"C";s:3:"113";s:2:"WX";s:3:"759";s:1:"N";s:3:"a75";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"725";i:3;s:3:"692";}}s:3:"a75";a:4:{s:1:"C";s:3:"113";s:2:"WX";s:3:"759";s:1:"N";s:3:"a75";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"725";i:3;s:3:"692";}}i:114;a:4:{s:1:"C";s:3:"114";s:2:"WX";s:3:"759";s:1:"N";s:4:"a204";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"725";i:3;s:3:"692";}}s:4:"a204";a:4:{s:1:"C";s:3:"114";s:2:"WX";s:3:"759";s:1:"N";s:4:"a204";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"725";i:3;s:3:"692";}}i:115;a:4:{s:1:"C";s:3:"115";s:2:"WX";s:3:"892";s:1:"N";s:3:"a76";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"858";i:3;s:3:"705";}}s:3:"a76";a:4:{s:1:"C";s:3:"115";s:2:"WX";s:3:"892";s:1:"N";s:3:"a76";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"858";i:3;s:3:"705";}}i:116;a:4:{s:1:"C";s:3:"116";s:2:"WX";s:3:"892";s:1:"N";s:3:"a77";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"858";i:3;s:3:"692";}}s:3:"a77";a:4:{s:1:"C";s:3:"116";s:2:"WX";s:3:"892";s:1:"N";s:3:"a77";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"858";i:3;s:3:"692";}}i:117;a:4:{s:1:"C";s:3:"117";s:2:"WX";s:3:"788";s:1:"N";s:3:"a78";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:3:"a78";a:4:{s:1:"C";s:3:"117";s:2:"WX";s:3:"788";s:1:"N";s:3:"a78";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:118;a:4:{s:1:"C";s:3:"118";s:2:"WX";s:3:"784";s:1:"N";s:3:"a79";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"749";i:3;s:3:"705";}}s:3:"a79";a:4:{s:1:"C";s:3:"118";s:2:"WX";s:3:"784";s:1:"N";s:3:"a79";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"749";i:3;s:3:"705";}}i:119;a:4:{s:1:"C";s:3:"119";s:2:"WX";s:3:"438";s:1:"N";s:3:"a81";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"403";i:3;s:3:"705";}}s:3:"a81";a:4:{s:1:"C";s:3:"119";s:2:"WX";s:3:"438";s:1:"N";s:3:"a81";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"403";i:3;s:3:"705";}}i:120;a:4:{s:1:"C";s:3:"120";s:2:"WX";s:3:"138";s:1:"N";s:3:"a82";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"104";i:3;s:3:"692";}}s:3:"a82";a:4:{s:1:"C";s:3:"120";s:2:"WX";s:3:"138";s:1:"N";s:3:"a82";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"104";i:3;s:3:"692";}}i:121;a:4:{s:1:"C";s:3:"121";s:2:"WX";s:3:"277";s:1:"N";s:3:"a83";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"242";i:3;s:3:"692";}}s:3:"a83";a:4:{s:1:"C";s:3:"121";s:2:"WX";s:3:"277";s:1:"N";s:3:"a83";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"242";i:3;s:3:"692";}}i:122;a:4:{s:1:"C";s:3:"122";s:2:"WX";s:3:"415";s:1:"N";s:3:"a84";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"380";i:3;s:3:"692";}}s:3:"a84";a:4:{s:1:"C";s:3:"122";s:2:"WX";s:3:"415";s:1:"N";s:3:"a84";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"380";i:3;s:3:"692";}}i:123;a:4:{s:1:"C";s:3:"123";s:2:"WX";s:3:"392";s:1:"N";s:3:"a97";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"263";i:2;s:3:"357";i:3;s:3:"705";}}s:3:"a97";a:4:{s:1:"C";s:3:"123";s:2:"WX";s:3:"392";s:1:"N";s:3:"a97";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"263";i:2;s:3:"357";i:3;s:3:"705";}}i:124;a:4:{s:1:"C";s:3:"124";s:2:"WX";s:3:"392";s:1:"N";s:3:"a98";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"263";i:2;s:3:"357";i:3;s:3:"705";}}s:3:"a98";a:4:{s:1:"C";s:3:"124";s:2:"WX";s:3:"392";s:1:"N";s:3:"a98";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"263";i:2;s:3:"357";i:3;s:3:"705";}}i:125;a:4:{s:1:"C";s:3:"125";s:2:"WX";s:3:"668";s:1:"N";s:3:"a99";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"263";i:2;s:3:"633";i:3;s:3:"705";}}s:3:"a99";a:4:{s:1:"C";s:3:"125";s:2:"WX";s:3:"668";s:1:"N";s:3:"a99";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"263";i:2;s:3:"633";i:3;s:3:"705";}}i:126;a:4:{s:1:"C";s:3:"126";s:2:"WX";s:3:"668";s:1:"N";s:4:"a100";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:3:"263";i:2;s:3:"634";i:3;s:3:"705";}}s:4:"a100";a:4:{s:1:"C";s:3:"126";s:2:"WX";s:3:"668";s:1:"N";s:4:"a100";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:3:"263";i:2;s:3:"634";i:3;s:3:"705";}}i:128;a:4:{s:1:"C";s:3:"128";s:2:"WX";s:3:"390";s:1:"N";s:3:"a89";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"356";i:3;s:3:"705";}}s:3:"a89";a:4:{s:1:"C";s:3:"128";s:2:"WX";s:3:"390";s:1:"N";s:3:"a89";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"356";i:3;s:3:"705";}}i:129;a:4:{s:1:"C";s:3:"129";s:2:"WX";s:3:"390";s:1:"N";s:3:"a90";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"355";i:3;s:3:"705";}}s:3:"a90";a:4:{s:1:"C";s:3:"129";s:2:"WX";s:3:"390";s:1:"N";s:3:"a90";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"355";i:3;s:3:"705";}}i:130;a:4:{s:1:"C";s:3:"130";s:2:"WX";s:3:"317";s:1:"N";s:3:"a93";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"283";i:3;s:3:"692";}}s:3:"a93";a:4:{s:1:"C";s:3:"130";s:2:"WX";s:3:"317";s:1:"N";s:3:"a93";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"283";i:3;s:3:"692";}}i:131;a:4:{s:1:"C";s:3:"131";s:2:"WX";s:3:"317";s:1:"N";s:3:"a94";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"283";i:3;s:3:"692";}}s:3:"a94";a:4:{s:1:"C";s:3:"131";s:2:"WX";s:3:"317";s:1:"N";s:3:"a94";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"283";i:3;s:3:"692";}}i:132;a:4:{s:1:"C";s:3:"132";s:2:"WX";s:3:"276";s:1:"N";s:3:"a91";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"242";i:3;s:3:"692";}}s:3:"a91";a:4:{s:1:"C";s:3:"132";s:2:"WX";s:3:"276";s:1:"N";s:3:"a91";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"242";i:3;s:3:"692";}}i:133;a:4:{s:1:"C";s:3:"133";s:2:"WX";s:3:"276";s:1:"N";s:3:"a92";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"242";i:3;s:3:"692";}}s:3:"a92";a:4:{s:1:"C";s:3:"133";s:2:"WX";s:3:"276";s:1:"N";s:3:"a92";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"242";i:3;s:3:"692";}}i:134;a:4:{s:1:"C";s:3:"134";s:2:"WX";s:3:"509";s:1:"N";s:4:"a205";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"475";i:3;s:3:"692";}}s:4:"a205";a:4:{s:1:"C";s:3:"134";s:2:"WX";s:3:"509";s:1:"N";s:4:"a205";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"475";i:3;s:3:"692";}}i:135;a:4:{s:1:"C";s:3:"135";s:2:"WX";s:3:"509";s:1:"N";s:3:"a85";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"475";i:3;s:3:"692";}}s:3:"a85";a:4:{s:1:"C";s:3:"135";s:2:"WX";s:3:"509";s:1:"N";s:3:"a85";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"475";i:3;s:3:"692";}}i:136;a:4:{s:1:"C";s:3:"136";s:2:"WX";s:3:"410";s:1:"N";s:4:"a206";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"375";i:3;s:3:"692";}}s:4:"a206";a:4:{s:1:"C";s:3:"136";s:2:"WX";s:3:"410";s:1:"N";s:4:"a206";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"375";i:3;s:3:"692";}}i:137;a:4:{s:1:"C";s:3:"137";s:2:"WX";s:3:"410";s:1:"N";s:3:"a86";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"375";i:3;s:3:"692";}}s:3:"a86";a:4:{s:1:"C";s:3:"137";s:2:"WX";s:3:"410";s:1:"N";s:3:"a86";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"375";i:3;s:3:"692";}}i:138;a:4:{s:1:"C";s:3:"138";s:2:"WX";s:3:"234";s:1:"N";s:3:"a87";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"199";i:3;s:3:"705";}}s:3:"a87";a:4:{s:1:"C";s:3:"138";s:2:"WX";s:3:"234";s:1:"N";s:3:"a87";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"199";i:3;s:3:"705";}}i:139;a:4:{s:1:"C";s:3:"139";s:2:"WX";s:3:"234";s:1:"N";s:3:"a88";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"199";i:3;s:3:"705";}}s:3:"a88";a:4:{s:1:"C";s:3:"139";s:2:"WX";s:3:"234";s:1:"N";s:3:"a88";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"199";i:3;s:3:"705";}}i:140;a:4:{s:1:"C";s:3:"140";s:2:"WX";s:3:"334";s:1:"N";s:3:"a95";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"299";i:3;s:3:"692";}}s:3:"a95";a:4:{s:1:"C";s:3:"140";s:2:"WX";s:3:"334";s:1:"N";s:3:"a95";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"299";i:3;s:3:"692";}}i:141;a:4:{s:1:"C";s:3:"141";s:2:"WX";s:3:"334";s:1:"N";s:3:"a96";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"299";i:3;s:3:"692";}}s:3:"a96";a:4:{s:1:"C";s:3:"141";s:2:"WX";s:3:"334";s:1:"N";s:3:"a96";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"299";i:3;s:3:"692";}}i:161;a:4:{s:1:"C";s:3:"161";s:2:"WX";s:3:"732";s:1:"N";s:4:"a101";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:4:"-143";i:2;s:3:"697";i:3;s:3:"806";}}s:4:"a101";a:4:{s:1:"C";s:3:"161";s:2:"WX";s:3:"732";s:1:"N";s:4:"a101";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:4:"-143";i:2;s:3:"697";i:3;s:3:"806";}}i:162;a:4:{s:1:"C";s:3:"162";s:2:"WX";s:3:"544";s:1:"N";s:4:"a102";s:1:"B";a:4:{i:0;s:2:"56";i:1;s:3:"-14";i:2;s:3:"488";i:3;s:3:"706";}}s:4:"a102";a:4:{s:1:"C";s:3:"162";s:2:"WX";s:3:"544";s:1:"N";s:4:"a102";s:1:"B";a:4:{i:0;s:2:"56";i:1;s:3:"-14";i:2;s:3:"488";i:3;s:3:"706";}}i:163;a:4:{s:1:"C";s:3:"163";s:2:"WX";s:3:"544";s:1:"N";s:4:"a103";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"508";i:3;s:3:"705";}}s:4:"a103";a:4:{s:1:"C";s:3:"163";s:2:"WX";s:3:"544";s:1:"N";s:4:"a103";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"508";i:3;s:3:"705";}}i:164;a:4:{s:1:"C";s:3:"164";s:2:"WX";s:3:"910";s:1:"N";s:4:"a104";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"40";i:2;s:3:"875";i:3;s:3:"651";}}s:4:"a104";a:4:{s:1:"C";s:3:"164";s:2:"WX";s:3:"910";s:1:"N";s:4:"a104";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"40";i:2;s:3:"875";i:3;s:3:"651";}}i:165;a:4:{s:1:"C";s:3:"165";s:2:"WX";s:3:"667";s:1:"N";s:4:"a106";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"633";i:3;s:3:"705";}}s:4:"a106";a:4:{s:1:"C";s:3:"165";s:2:"WX";s:3:"667";s:1:"N";s:4:"a106";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"633";i:3;s:3:"705";}}i:166;a:4:{s:1:"C";s:3:"166";s:2:"WX";s:3:"760";s:1:"N";s:4:"a107";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"726";i:3;s:3:"705";}}s:4:"a107";a:4:{s:1:"C";s:3:"166";s:2:"WX";s:3:"760";s:1:"N";s:4:"a107";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"726";i:3;s:3:"705";}}i:167;a:4:{s:1:"C";s:3:"167";s:2:"WX";s:3:"760";s:1:"N";s:4:"a108";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"121";i:2;s:3:"758";i:3;s:3:"569";}}s:4:"a108";a:4:{s:1:"C";s:3:"167";s:2:"WX";s:3:"760";s:1:"N";s:4:"a108";s:1:"B";a:4:{i:0;s:1:"0";i:1;s:3:"121";i:2;s:3:"758";i:3;s:3:"569";}}i:168;a:4:{s:1:"C";s:3:"168";s:2:"WX";s:3:"776";s:1:"N";s:4:"a112";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"741";i:3;s:3:"705";}}s:4:"a112";a:4:{s:1:"C";s:3:"168";s:2:"WX";s:3:"776";s:1:"N";s:4:"a112";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"741";i:3;s:3:"705";}}i:169;a:4:{s:1:"C";s:3:"169";s:2:"WX";s:3:"595";s:1:"N";s:4:"a111";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"560";i:3;s:3:"705";}}s:4:"a111";a:4:{s:1:"C";s:3:"169";s:2:"WX";s:3:"595";s:1:"N";s:4:"a111";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-14";i:2;s:3:"560";i:3;s:3:"705";}}i:170;a:4:{s:1:"C";s:3:"170";s:2:"WX";s:3:"694";s:1:"N";s:4:"a110";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"659";i:3;s:3:"705";}}s:4:"a110";a:4:{s:1:"C";s:3:"170";s:2:"WX";s:3:"694";s:1:"N";s:4:"a110";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"659";i:3;s:3:"705";}}i:171;a:4:{s:1:"C";s:3:"171";s:2:"WX";s:3:"626";s:1:"N";s:4:"a109";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:1:"0";i:2;s:3:"591";i:3;s:3:"705";}}s:4:"a109";a:4:{s:1:"C";s:3:"171";s:2:"WX";s:3:"626";s:1:"N";s:4:"a109";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:1:"0";i:2;s:3:"591";i:3;s:3:"705";}}i:172;a:4:{s:1:"C";s:3:"172";s:2:"WX";s:3:"788";s:1:"N";s:4:"a120";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:4:"a120";a:4:{s:1:"C";s:3:"172";s:2:"WX";s:3:"788";s:1:"N";s:4:"a120";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:173;a:4:{s:1:"C";s:3:"173";s:2:"WX";s:3:"788";s:1:"N";s:4:"a121";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:4:"a121";a:4:{s:1:"C";s:3:"173";s:2:"WX";s:3:"788";s:1:"N";s:4:"a121";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:174;a:4:{s:1:"C";s:3:"174";s:2:"WX";s:3:"788";s:1:"N";s:4:"a122";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:4:"a122";a:4:{s:1:"C";s:3:"174";s:2:"WX";s:3:"788";s:1:"N";s:4:"a122";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:175;a:4:{s:1:"C";s:3:"175";s:2:"WX";s:3:"788";s:1:"N";s:4:"a123";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:4:"a123";a:4:{s:1:"C";s:3:"175";s:2:"WX";s:3:"788";s:1:"N";s:4:"a123";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:176;a:4:{s:1:"C";s:3:"176";s:2:"WX";s:3:"788";s:1:"N";s:4:"a124";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:4:"a124";a:4:{s:1:"C";s:3:"176";s:2:"WX";s:3:"788";s:1:"N";s:4:"a124";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:177;a:4:{s:1:"C";s:3:"177";s:2:"WX";s:3:"788";s:1:"N";s:4:"a125";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:4:"a125";a:4:{s:1:"C";s:3:"177";s:2:"WX";s:3:"788";s:1:"N";s:4:"a125";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:178;a:4:{s:1:"C";s:3:"178";s:2:"WX";s:3:"788";s:1:"N";s:4:"a126";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:4:"a126";a:4:{s:1:"C";s:3:"178";s:2:"WX";s:3:"788";s:1:"N";s:4:"a126";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:179;a:4:{s:1:"C";s:3:"179";s:2:"WX";s:3:"788";s:1:"N";s:4:"a127";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:4:"a127";a:4:{s:1:"C";s:3:"179";s:2:"WX";s:3:"788";s:1:"N";s:4:"a127";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:180;a:4:{s:1:"C";s:3:"180";s:2:"WX";s:3:"788";s:1:"N";s:4:"a128";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:4:"a128";a:4:{s:1:"C";s:3:"180";s:2:"WX";s:3:"788";s:1:"N";s:4:"a128";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:181;a:4:{s:1:"C";s:3:"181";s:2:"WX";s:3:"788";s:1:"N";s:4:"a129";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:4:"a129";a:4:{s:1:"C";s:3:"181";s:2:"WX";s:3:"788";s:1:"N";s:4:"a129";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:182;a:4:{s:1:"C";s:3:"182";s:2:"WX";s:3:"788";s:1:"N";s:4:"a130";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:4:"a130";a:4:{s:1:"C";s:3:"182";s:2:"WX";s:3:"788";s:1:"N";s:4:"a130";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:183;a:4:{s:1:"C";s:3:"183";s:2:"WX";s:3:"788";s:1:"N";s:4:"a131";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:4:"a131";a:4:{s:1:"C";s:3:"183";s:2:"WX";s:3:"788";s:1:"N";s:4:"a131";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:184;a:4:{s:1:"C";s:3:"184";s:2:"WX";s:3:"788";s:1:"N";s:4:"a132";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:4:"a132";a:4:{s:1:"C";s:3:"184";s:2:"WX";s:3:"788";s:1:"N";s:4:"a132";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:185;a:4:{s:1:"C";s:3:"185";s:2:"WX";s:3:"788";s:1:"N";s:4:"a133";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:4:"a133";a:4:{s:1:"C";s:3:"185";s:2:"WX";s:3:"788";s:1:"N";s:4:"a133";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:186;a:4:{s:1:"C";s:3:"186";s:2:"WX";s:3:"788";s:1:"N";s:4:"a134";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:4:"a134";a:4:{s:1:"C";s:3:"186";s:2:"WX";s:3:"788";s:1:"N";s:4:"a134";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:187;a:4:{s:1:"C";s:3:"187";s:2:"WX";s:3:"788";s:1:"N";s:4:"a135";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:4:"a135";a:4:{s:1:"C";s:3:"187";s:2:"WX";s:3:"788";s:1:"N";s:4:"a135";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:188;a:4:{s:1:"C";s:3:"188";s:2:"WX";s:3:"788";s:1:"N";s:4:"a136";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:4:"a136";a:4:{s:1:"C";s:3:"188";s:2:"WX";s:3:"788";s:1:"N";s:4:"a136";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:189;a:4:{s:1:"C";s:3:"189";s:2:"WX";s:3:"788";s:1:"N";s:4:"a137";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:4:"a137";a:4:{s:1:"C";s:3:"189";s:2:"WX";s:3:"788";s:1:"N";s:4:"a137";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:190;a:4:{s:1:"C";s:3:"190";s:2:"WX";s:3:"788";s:1:"N";s:4:"a138";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:4:"a138";a:4:{s:1:"C";s:3:"190";s:2:"WX";s:3:"788";s:1:"N";s:4:"a138";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:191;a:4:{s:1:"C";s:3:"191";s:2:"WX";s:3:"788";s:1:"N";s:4:"a139";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:4:"a139";a:4:{s:1:"C";s:3:"191";s:2:"WX";s:3:"788";s:1:"N";s:4:"a139";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:192;a:4:{s:1:"C";s:3:"192";s:2:"WX";s:3:"788";s:1:"N";s:4:"a140";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:4:"a140";a:4:{s:1:"C";s:3:"192";s:2:"WX";s:3:"788";s:1:"N";s:4:"a140";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:193;a:4:{s:1:"C";s:3:"193";s:2:"WX";s:3:"788";s:1:"N";s:4:"a141";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:4:"a141";a:4:{s:1:"C";s:3:"193";s:2:"WX";s:3:"788";s:1:"N";s:4:"a141";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:194;a:4:{s:1:"C";s:3:"194";s:2:"WX";s:3:"788";s:1:"N";s:4:"a142";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:4:"a142";a:4:{s:1:"C";s:3:"194";s:2:"WX";s:3:"788";s:1:"N";s:4:"a142";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:195;a:4:{s:1:"C";s:3:"195";s:2:"WX";s:3:"788";s:1:"N";s:4:"a143";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:4:"a143";a:4:{s:1:"C";s:3:"195";s:2:"WX";s:3:"788";s:1:"N";s:4:"a143";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:196;a:4:{s:1:"C";s:3:"196";s:2:"WX";s:3:"788";s:1:"N";s:4:"a144";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:4:"a144";a:4:{s:1:"C";s:3:"196";s:2:"WX";s:3:"788";s:1:"N";s:4:"a144";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:197;a:4:{s:1:"C";s:3:"197";s:2:"WX";s:3:"788";s:1:"N";s:4:"a145";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:4:"a145";a:4:{s:1:"C";s:3:"197";s:2:"WX";s:3:"788";s:1:"N";s:4:"a145";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:198;a:4:{s:1:"C";s:3:"198";s:2:"WX";s:3:"788";s:1:"N";s:4:"a146";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:4:"a146";a:4:{s:1:"C";s:3:"198";s:2:"WX";s:3:"788";s:1:"N";s:4:"a146";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:199;a:4:{s:1:"C";s:3:"199";s:2:"WX";s:3:"788";s:1:"N";s:4:"a147";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:4:"a147";a:4:{s:1:"C";s:3:"199";s:2:"WX";s:3:"788";s:1:"N";s:4:"a147";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:200;a:4:{s:1:"C";s:3:"200";s:2:"WX";s:3:"788";s:1:"N";s:4:"a148";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:4:"a148";a:4:{s:1:"C";s:3:"200";s:2:"WX";s:3:"788";s:1:"N";s:4:"a148";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:201;a:4:{s:1:"C";s:3:"201";s:2:"WX";s:3:"788";s:1:"N";s:4:"a149";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:4:"a149";a:4:{s:1:"C";s:3:"201";s:2:"WX";s:3:"788";s:1:"N";s:4:"a149";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:202;a:4:{s:1:"C";s:3:"202";s:2:"WX";s:3:"788";s:1:"N";s:4:"a150";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:4:"a150";a:4:{s:1:"C";s:3:"202";s:2:"WX";s:3:"788";s:1:"N";s:4:"a150";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:203;a:4:{s:1:"C";s:3:"203";s:2:"WX";s:3:"788";s:1:"N";s:4:"a151";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:4:"a151";a:4:{s:1:"C";s:3:"203";s:2:"WX";s:3:"788";s:1:"N";s:4:"a151";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:204;a:4:{s:1:"C";s:3:"204";s:2:"WX";s:3:"788";s:1:"N";s:4:"a152";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:4:"a152";a:4:{s:1:"C";s:3:"204";s:2:"WX";s:3:"788";s:1:"N";s:4:"a152";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:205;a:4:{s:1:"C";s:3:"205";s:2:"WX";s:3:"788";s:1:"N";s:4:"a153";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:4:"a153";a:4:{s:1:"C";s:3:"205";s:2:"WX";s:3:"788";s:1:"N";s:4:"a153";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:206;a:4:{s:1:"C";s:3:"206";s:2:"WX";s:3:"788";s:1:"N";s:4:"a154";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:4:"a154";a:4:{s:1:"C";s:3:"206";s:2:"WX";s:3:"788";s:1:"N";s:4:"a154";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:207;a:4:{s:1:"C";s:3:"207";s:2:"WX";s:3:"788";s:1:"N";s:4:"a155";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:4:"a155";a:4:{s:1:"C";s:3:"207";s:2:"WX";s:3:"788";s:1:"N";s:4:"a155";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:208;a:4:{s:1:"C";s:3:"208";s:2:"WX";s:3:"788";s:1:"N";s:4:"a156";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:4:"a156";a:4:{s:1:"C";s:3:"208";s:2:"WX";s:3:"788";s:1:"N";s:4:"a156";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:209;a:4:{s:1:"C";s:3:"209";s:2:"WX";s:3:"788";s:1:"N";s:4:"a157";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:4:"a157";a:4:{s:1:"C";s:3:"209";s:2:"WX";s:3:"788";s:1:"N";s:4:"a157";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:210;a:4:{s:1:"C";s:3:"210";s:2:"WX";s:3:"788";s:1:"N";s:4:"a158";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:4:"a158";a:4:{s:1:"C";s:3:"210";s:2:"WX";s:3:"788";s:1:"N";s:4:"a158";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:211;a:4:{s:1:"C";s:3:"211";s:2:"WX";s:3:"788";s:1:"N";s:4:"a159";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}s:4:"a159";a:4:{s:1:"C";s:3:"211";s:2:"WX";s:3:"788";s:1:"N";s:4:"a159";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-14";i:2;s:3:"754";i:3;s:3:"705";}}i:212;a:4:{s:1:"C";s:3:"212";s:2:"WX";s:3:"894";s:1:"N";s:4:"a160";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"58";i:2;s:3:"860";i:3;s:3:"634";}}s:4:"a160";a:4:{s:1:"C";s:3:"212";s:2:"WX";s:3:"894";s:1:"N";s:4:"a160";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"58";i:2;s:3:"860";i:3;s:3:"634";}}i:213;a:4:{s:1:"C";s:3:"213";s:2:"WX";s:3:"838";s:1:"N";s:4:"a161";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"152";i:2;s:3:"803";i:3;s:3:"540";}}s:4:"a161";a:4:{s:1:"C";s:3:"213";s:2:"WX";s:3:"838";s:1:"N";s:4:"a161";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"152";i:2;s:3:"803";i:3;s:3:"540";}}i:214;a:4:{s:1:"C";s:3:"214";s:2:"WX";s:4:"1016";s:1:"N";s:4:"a163";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"152";i:2;s:3:"981";i:3;s:3:"540";}}s:4:"a163";a:4:{s:1:"C";s:3:"214";s:2:"WX";s:4:"1016";s:1:"N";s:4:"a163";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"152";i:2;s:3:"981";i:3;s:3:"540";}}i:215;a:4:{s:1:"C";s:3:"215";s:2:"WX";s:3:"458";s:1:"N";s:4:"a164";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:4:"-127";i:2;s:3:"422";i:3;s:3:"820";}}s:4:"a164";a:4:{s:1:"C";s:3:"215";s:2:"WX";s:3:"458";s:1:"N";s:4:"a164";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:4:"-127";i:2;s:3:"422";i:3;s:3:"820";}}i:216;a:4:{s:1:"C";s:3:"216";s:2:"WX";s:3:"748";s:1:"N";s:4:"a196";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"94";i:2;s:3:"698";i:3;s:3:"597";}}s:4:"a196";a:4:{s:1:"C";s:3:"216";s:2:"WX";s:3:"748";s:1:"N";s:4:"a196";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"94";i:2;s:3:"698";i:3;s:3:"597";}}i:217;a:4:{s:1:"C";s:3:"217";s:2:"WX";s:3:"924";s:1:"N";s:4:"a165";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"140";i:2;s:3:"890";i:3;s:3:"552";}}s:4:"a165";a:4:{s:1:"C";s:3:"217";s:2:"WX";s:3:"924";s:1:"N";s:4:"a165";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"140";i:2;s:3:"890";i:3;s:3:"552";}}i:218;a:4:{s:1:"C";s:3:"218";s:2:"WX";s:3:"748";s:1:"N";s:4:"a192";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"94";i:2;s:3:"698";i:3;s:3:"597";}}s:4:"a192";a:4:{s:1:"C";s:3:"218";s:2:"WX";s:3:"748";s:1:"N";s:4:"a192";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"94";i:2;s:3:"698";i:3;s:3:"597";}}i:219;a:4:{s:1:"C";s:3:"219";s:2:"WX";s:3:"918";s:1:"N";s:4:"a166";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"166";i:2;s:3:"884";i:3;s:3:"526";}}s:4:"a166";a:4:{s:1:"C";s:3:"219";s:2:"WX";s:3:"918";s:1:"N";s:4:"a166";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"166";i:2;s:3:"884";i:3;s:3:"526";}}i:220;a:4:{s:1:"C";s:3:"220";s:2:"WX";s:3:"927";s:1:"N";s:4:"a167";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"32";i:2;s:3:"892";i:3;s:3:"660";}}s:4:"a167";a:4:{s:1:"C";s:3:"220";s:2:"WX";s:3:"927";s:1:"N";s:4:"a167";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"32";i:2;s:3:"892";i:3;s:3:"660";}}i:221;a:4:{s:1:"C";s:3:"221";s:2:"WX";s:3:"928";s:1:"N";s:4:"a168";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"129";i:2;s:3:"891";i:3;s:3:"562";}}s:4:"a168";a:4:{s:1:"C";s:3:"221";s:2:"WX";s:3:"928";s:1:"N";s:4:"a168";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"129";i:2;s:3:"891";i:3;s:3:"562";}}i:222;a:4:{s:1:"C";s:3:"222";s:2:"WX";s:3:"928";s:1:"N";s:4:"a169";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"128";i:2;s:3:"893";i:3;s:3:"563";}}s:4:"a169";a:4:{s:1:"C";s:3:"222";s:2:"WX";s:3:"928";s:1:"N";s:4:"a169";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"128";i:2;s:3:"893";i:3;s:3:"563";}}i:223;a:4:{s:1:"C";s:3:"223";s:2:"WX";s:3:"834";s:1:"N";s:4:"a170";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"155";i:2;s:3:"799";i:3;s:3:"537";}}s:4:"a170";a:4:{s:1:"C";s:3:"223";s:2:"WX";s:3:"834";s:1:"N";s:4:"a170";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"155";i:2;s:3:"799";i:3;s:3:"537";}}i:224;a:4:{s:1:"C";s:3:"224";s:2:"WX";s:3:"873";s:1:"N";s:4:"a171";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"93";i:2;s:3:"838";i:3;s:3:"599";}}s:4:"a171";a:4:{s:1:"C";s:3:"224";s:2:"WX";s:3:"873";s:1:"N";s:4:"a171";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"93";i:2;s:3:"838";i:3;s:3:"599";}}i:225;a:4:{s:1:"C";s:3:"225";s:2:"WX";s:3:"828";s:1:"N";s:4:"a172";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"104";i:2;s:3:"791";i:3;s:3:"588";}}s:4:"a172";a:4:{s:1:"C";s:3:"225";s:2:"WX";s:3:"828";s:1:"N";s:4:"a172";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"104";i:2;s:3:"791";i:3;s:3:"588";}}i:226;a:4:{s:1:"C";s:3:"226";s:2:"WX";s:3:"924";s:1:"N";s:4:"a173";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"98";i:2;s:3:"889";i:3;s:3:"594";}}s:4:"a173";a:4:{s:1:"C";s:3:"226";s:2:"WX";s:3:"924";s:1:"N";s:4:"a173";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"98";i:2;s:3:"889";i:3;s:3:"594";}}i:227;a:4:{s:1:"C";s:3:"227";s:2:"WX";s:3:"924";s:1:"N";s:4:"a162";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"98";i:2;s:3:"889";i:3;s:3:"594";}}s:4:"a162";a:4:{s:1:"C";s:3:"227";s:2:"WX";s:3:"924";s:1:"N";s:4:"a162";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"98";i:2;s:3:"889";i:3;s:3:"594";}}i:228;a:4:{s:1:"C";s:3:"228";s:2:"WX";s:3:"917";s:1:"N";s:4:"a174";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"882";i:3;s:3:"692";}}s:4:"a174";a:4:{s:1:"C";s:3:"228";s:2:"WX";s:3:"917";s:1:"N";s:4:"a174";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"882";i:3;s:3:"692";}}i:229;a:4:{s:1:"C";s:3:"229";s:2:"WX";s:3:"930";s:1:"N";s:4:"a175";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"84";i:2;s:3:"896";i:3;s:3:"608";}}s:4:"a175";a:4:{s:1:"C";s:3:"229";s:2:"WX";s:3:"930";s:1:"N";s:4:"a175";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"84";i:2;s:3:"896";i:3;s:3:"608";}}i:230;a:4:{s:1:"C";s:3:"230";s:2:"WX";s:3:"931";s:1:"N";s:4:"a176";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"84";i:2;s:3:"896";i:3;s:3:"608";}}s:4:"a176";a:4:{s:1:"C";s:3:"230";s:2:"WX";s:3:"931";s:1:"N";s:4:"a176";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"84";i:2;s:3:"896";i:3;s:3:"608";}}i:231;a:4:{s:1:"C";s:3:"231";s:2:"WX";s:3:"463";s:1:"N";s:4:"a177";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-99";i:2;s:3:"429";i:3;s:3:"791";}}s:4:"a177";a:4:{s:1:"C";s:3:"231";s:2:"WX";s:3:"463";s:1:"N";s:4:"a177";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"-99";i:2;s:3:"429";i:3;s:3:"791";}}i:232;a:4:{s:1:"C";s:3:"232";s:2:"WX";s:3:"883";s:1:"N";s:4:"a178";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"71";i:2;s:3:"848";i:3;s:3:"623";}}s:4:"a178";a:4:{s:1:"C";s:3:"232";s:2:"WX";s:3:"883";s:1:"N";s:4:"a178";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"71";i:2;s:3:"848";i:3;s:3:"623";}}i:233;a:4:{s:1:"C";s:3:"233";s:2:"WX";s:3:"836";s:1:"N";s:4:"a179";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"44";i:2;s:3:"802";i:3;s:3:"648";}}s:4:"a179";a:4:{s:1:"C";s:3:"233";s:2:"WX";s:3:"836";s:1:"N";s:4:"a179";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"44";i:2;s:3:"802";i:3;s:3:"648";}}i:234;a:4:{s:1:"C";s:3:"234";s:2:"WX";s:3:"836";s:1:"N";s:4:"a193";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"44";i:2;s:3:"802";i:3;s:3:"648";}}s:4:"a193";a:4:{s:1:"C";s:3:"234";s:2:"WX";s:3:"836";s:1:"N";s:4:"a193";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"44";i:2;s:3:"802";i:3;s:3:"648";}}i:235;a:4:{s:1:"C";s:3:"235";s:2:"WX";s:3:"867";s:1:"N";s:4:"a180";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"101";i:2;s:3:"832";i:3;s:3:"591";}}s:4:"a180";a:4:{s:1:"C";s:3:"235";s:2:"WX";s:3:"867";s:1:"N";s:4:"a180";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"101";i:2;s:3:"832";i:3;s:3:"591";}}i:236;a:4:{s:1:"C";s:3:"236";s:2:"WX";s:3:"867";s:1:"N";s:4:"a199";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"101";i:2;s:3:"832";i:3;s:3:"591";}}s:4:"a199";a:4:{s:1:"C";s:3:"236";s:2:"WX";s:3:"867";s:1:"N";s:4:"a199";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"101";i:2;s:3:"832";i:3;s:3:"591";}}i:237;a:4:{s:1:"C";s:3:"237";s:2:"WX";s:3:"696";s:1:"N";s:4:"a181";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"44";i:2;s:3:"661";i:3;s:3:"648";}}s:4:"a181";a:4:{s:1:"C";s:3:"237";s:2:"WX";s:3:"696";s:1:"N";s:4:"a181";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"44";i:2;s:3:"661";i:3;s:3:"648";}}i:238;a:4:{s:1:"C";s:3:"238";s:2:"WX";s:3:"696";s:1:"N";s:4:"a200";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"44";i:2;s:3:"661";i:3;s:3:"648";}}s:4:"a200";a:4:{s:1:"C";s:3:"238";s:2:"WX";s:3:"696";s:1:"N";s:4:"a200";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"44";i:2;s:3:"661";i:3;s:3:"648";}}i:239;a:4:{s:1:"C";s:3:"239";s:2:"WX";s:3:"874";s:1:"N";s:4:"a182";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"77";i:2;s:3:"840";i:3;s:3:"619";}}s:4:"a182";a:4:{s:1:"C";s:3:"239";s:2:"WX";s:3:"874";s:1:"N";s:4:"a182";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"77";i:2;s:3:"840";i:3;s:3:"619";}}i:241;a:4:{s:1:"C";s:3:"241";s:2:"WX";s:3:"874";s:1:"N";s:4:"a201";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"73";i:2;s:3:"840";i:3;s:3:"615";}}s:4:"a201";a:4:{s:1:"C";s:3:"241";s:2:"WX";s:3:"874";s:1:"N";s:4:"a201";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"73";i:2;s:3:"840";i:3;s:3:"615";}}i:242;a:4:{s:1:"C";s:3:"242";s:2:"WX";s:3:"760";s:1:"N";s:4:"a183";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"725";i:3;s:3:"692";}}s:4:"a183";a:4:{s:1:"C";s:3:"242";s:2:"WX";s:3:"760";s:1:"N";s:4:"a183";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:1:"0";i:2;s:3:"725";i:3;s:3:"692";}}i:243;a:4:{s:1:"C";s:3:"243";s:2:"WX";s:3:"946";s:1:"N";s:4:"a184";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"160";i:2;s:3:"911";i:3;s:3:"533";}}s:4:"a184";a:4:{s:1:"C";s:3:"243";s:2:"WX";s:3:"946";s:1:"N";s:4:"a184";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"160";i:2;s:3:"911";i:3;s:3:"533";}}i:244;a:4:{s:1:"C";s:3:"244";s:2:"WX";s:3:"771";s:1:"N";s:4:"a197";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:2:"37";i:2;s:3:"736";i:3;s:3:"655";}}s:4:"a197";a:4:{s:1:"C";s:3:"244";s:2:"WX";s:3:"771";s:1:"N";s:4:"a197";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:2:"37";i:2;s:3:"736";i:3;s:3:"655";}}i:245;a:4:{s:1:"C";s:3:"245";s:2:"WX";s:3:"865";s:1:"N";s:4:"a185";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"207";i:2;s:3:"830";i:3;s:3:"481";}}s:4:"a185";a:4:{s:1:"C";s:3:"245";s:2:"WX";s:3:"865";s:1:"N";s:4:"a185";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"207";i:2;s:3:"830";i:3;s:3:"481";}}i:246;a:4:{s:1:"C";s:3:"246";s:2:"WX";s:3:"771";s:1:"N";s:4:"a194";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:2:"37";i:2;s:3:"736";i:3;s:3:"655";}}s:4:"a194";a:4:{s:1:"C";s:3:"246";s:2:"WX";s:3:"771";s:1:"N";s:4:"a194";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:2:"37";i:2;s:3:"736";i:3;s:3:"655";}}i:247;a:4:{s:1:"C";s:3:"247";s:2:"WX";s:3:"888";s:1:"N";s:4:"a198";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-19";i:2;s:3:"853";i:3;s:3:"712";}}s:4:"a198";a:4:{s:1:"C";s:3:"247";s:2:"WX";s:3:"888";s:1:"N";s:4:"a198";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-19";i:2;s:3:"853";i:3;s:3:"712";}}i:248;a:4:{s:1:"C";s:3:"248";s:2:"WX";s:3:"967";s:1:"N";s:4:"a186";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"124";i:2;s:3:"932";i:3;s:3:"568";}}s:4:"a186";a:4:{s:1:"C";s:3:"248";s:2:"WX";s:3:"967";s:1:"N";s:4:"a186";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"124";i:2;s:3:"932";i:3;s:3:"568";}}i:249;a:4:{s:1:"C";s:3:"249";s:2:"WX";s:3:"888";s:1:"N";s:4:"a195";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-19";i:2;s:3:"853";i:3;s:3:"712";}}s:4:"a195";a:4:{s:1:"C";s:3:"249";s:2:"WX";s:3:"888";s:1:"N";s:4:"a195";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:3:"-19";i:2;s:3:"853";i:3;s:3:"712";}}i:250;a:4:{s:1:"C";s:3:"250";s:2:"WX";s:3:"831";s:1:"N";s:4:"a187";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"113";i:2;s:3:"796";i:3;s:3:"579";}}s:4:"a187";a:4:{s:1:"C";s:3:"250";s:2:"WX";s:3:"831";s:1:"N";s:4:"a187";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"113";i:2;s:3:"796";i:3;s:3:"579";}}i:251;a:4:{s:1:"C";s:3:"251";s:2:"WX";s:3:"873";s:1:"N";s:4:"a188";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:3:"118";i:2;s:3:"838";i:3;s:3:"578";}}s:4:"a188";a:4:{s:1:"C";s:3:"251";s:2:"WX";s:3:"873";s:1:"N";s:4:"a188";s:1:"B";a:4:{i:0;s:2:"36";i:1;s:3:"118";i:2;s:3:"838";i:3;s:3:"578";}}i:252;a:4:{s:1:"C";s:3:"252";s:2:"WX";s:3:"927";s:1:"N";s:4:"a189";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"150";i:2;s:3:"891";i:3;s:3:"542";}}s:4:"a189";a:4:{s:1:"C";s:3:"252";s:2:"WX";s:3:"927";s:1:"N";s:4:"a189";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:3:"150";i:2;s:3:"891";i:3;s:3:"542";}}i:253;a:4:{s:1:"C";s:3:"253";s:2:"WX";s:3:"970";s:1:"N";s:4:"a190";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"76";i:2;s:3:"931";i:3;s:3:"616";}}s:4:"a190";a:4:{s:1:"C";s:3:"253";s:2:"WX";s:3:"970";s:1:"N";s:4:"a190";s:1:"B";a:4:{i:0;s:2:"35";i:1;s:2:"76";i:2;s:3:"931";i:3;s:3:"616";}}i:254;a:4:{s:1:"C";s:3:"254";s:2:"WX";s:3:"918";s:1:"N";s:4:"a191";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:2:"99";i:2;s:3:"884";i:3;s:3:"593";}}s:4:"a191";a:4:{s:1:"C";s:3:"254";s:2:"WX";s:3:"918";s:1:"N";s:4:"a191";s:1:"B";a:4:{i:0;s:2:"34";i:1;s:2:"99";i:2;s:3:"884";i:3;s:3:"593";}}}s:9:"_version_";i:1;} \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/XMLDocBookConverter.inc b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/XMLDocBookConverter.inc
new file mode 100755
index 00000000..c0d648d2
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/XMLDocBookConverter.inc
@@ -0,0 +1,1792 @@
+<?php
+//
+// +------------------------------------------------------------------------+
+// | phpDocumentor |
+// +------------------------------------------------------------------------+
+// | Copyright (c) 2000-2003 Joshua Eichorn, Gregory Beaver |
+// | Email jeichorn@phpdoc.org, cellog@phpdoc.org |
+// | Web http://www.phpdoc.org |
+// | Mirror http://phpdocu.sourceforge.net/ |
+// | PEAR http://pear.php.net/package/PhpDocumentor |
+// +------------------------------------------------------------------------+
+// | This source file is subject to version 3.00 of the PHP License, |
+// | that is available at http://www.php.net/license/3_0.txt. |
+// | If you did not receive a copy of the PHP license and are unable to |
+// | obtain it through the world-wide-web, please send a note to |
+// | license@php.net so we can mail you a copy immediately. |
+// +------------------------------------------------------------------------+
+//
+/**
+ * XML output converter for DocBook.
+ * This Converter takes output from the {@link Parser} and converts it to DocBook output
+ *
+ * @package Converters
+ * @subpackage XMLDocBook
+ * @see parserDocBlock, parserInclude, parserPage, parserClass, parserDefine, parserFunction, parserMethod, parserVar
+ * @author Greg Beaver <cellog@php.net>
+ * @since 1.0
+ * @version $Id: XMLDocBookConverter.inc 234145 2007-04-19 20:20:57Z ashnazg $
+ */
+/**
+ * XML DocBook converter.
+ * This Converter takes output from the {@link Parser} and converts it to DocBook output
+ *
+ * @package Converters
+ * @subpackage XMLDocBook
+ * @see parserDocBlock, parserInclude, parserPage, parserClass, parserDefine, parserFunction, parserMethod, parserVar
+ * @author Greg Beaver <cellog@php.net>
+ * @since 1.0
+ * @version $Id: XMLDocBookConverter.inc 234145 2007-04-19 20:20:57Z ashnazg $
+ * @todo indexes for other DocBook converters not based on peardoc
+ * @todo templates
+ */
+class XMLDocBookConverter extends Converter
+{
+ /**
+ * XMLDocBookConverter wants elements sorted by type as well as alphabetically
+ * @see Converter::$sort_page_contents_by_type
+ * @var boolean
+ */
+ var $sort_page_contents_by_type = true;
+ /** @var string */
+ var $outputformat = 'XML';
+ /** @var string */
+ var $name = 'DocBook';
+ /**
+ * indexes of elements by package that need to be generated
+ * @var array
+ */
+ var $leftindex = array('classes' => true, 'pages' => true, 'functions' => false, 'defines' => false, 'globals' => false);
+ /**
+ * whether a @see is going to be in the {@link $base_dir}, or in a package/subpackage subdirectory of $base_dir
+ * @var boolean
+ */
+ var $local = true;
+
+ /**
+ * name of current page being converted
+ * @var string
+ */
+ var $page;
+
+ /**
+ * path of current page being converted
+ * @var string
+ */
+ var $path;
+
+ /**
+ * name of current class being converted
+ * @var string
+ */
+ var $class;
+
+ /**
+ * template for the procedural page currently being processed
+ * @var Template
+ */
+ var $page_data;
+
+ /**
+ * output directory for the current procedural page being processed
+ * @var string
+ */
+ var $page_dir;
+
+ /**
+ * target directory passed on the command-line.
+ * {@link $targetDir} is malleable, always adding package/ and package/subpackage/ subdirectories onto it.
+ * @var string
+ */
+ var $base_dir;
+
+ /**
+ * output directory for the current class being processed
+ * @var string
+ */
+ var $class_dir;
+
+ /**
+ * template for the class currently being processed
+ * @var Template
+ */
+ var $class_data;
+
+ /**
+ * array of converted package page names.
+ * Used to link to the package page in the left index
+ * @var array Format: array(package => 1)
+ */
+ var $package_pages = array();
+
+ /**
+ * controls formatting of parser informative output
+ *
+ * Converter prints:
+ * "Converting /path/to/file.php... Procedural Page Elements... Classes..."
+ * Since HTMLdefaultConverter outputs files while converting, it needs to send a \n to start a new line. However, if there
+ * is more than one class, output is messy, with multiple \n's just between class file output. This variable prevents that
+ * and is purely cosmetic
+ * @var boolean
+ */
+ var $juststarted = false;
+
+ /**
+ * contains all of the template procedural page element loop data needed for the current template
+ * @var array
+ */
+ var $current;
+
+ /**
+ * contains all of the template class element loop data needed for the current template
+ * @var array
+ */
+ var $currentclass;
+ /**
+ * template options. Currently only 1 recognized option usepear
+ *
+ * usepear tells the getLink() function to return a package link to PEAR and PEAR_ERROR if possible, and to link directly
+ * to the fully-delimited link package#class.method or package#file.method in PEAR style, if possible, even if the
+ * package is not parsed. This will allow parsing of separate PEAR packages without parsing the entire thing at once!
+ * @var array
+ */
+ var $template_options = array('usepear' => false);
+
+ var $function_data = array();
+ var $method_data = array();
+ var $sourceloc = '';
+ /**
+ * peardoc2 Category
+ * @var string
+ */
+ var $category;
+ /**
+ * sets {@link $base_dir} to $targetDir
+ * @see Converter()
+ */
+ function XMLDocBookConverter(&$allp, &$packp, &$classes, &$procpages, $po, $pp, $qm, $targetDir, $templateDir, $title)
+ {
+ die("XMLDocBookConverter is not supported in this development version. Use XML:DocBook/peardoc2:default");
+ }
+
+ /**
+ * do that stuff in $template_options
+ */
+ function &getLink($expr, $package = false, $packages = false)
+ {
+ return Converter::getLink($expr, $package, $packages);
+ }
+
+ function unmangle($s,$sourcecode)
+ {
+ return '<programlisting role="php"><![CDATA[
+'.$sourcecode.']]></programlisting>';
+ }
+
+ function type_adjust($typename)
+ {
+ if (isset($this->template_options['typechanging'][trim($typename)]))
+ return $this->template_options['typechanging'][trim($typename)];
+ $a = $this->getLink($typename);
+ if (is_object($a))
+ {
+ if (phpDocumentor_get_class($a) == 'classlink')
+ return '<classname>'.$typename.'</classname>';
+ if (phpDocumentor_get_class($a) == 'functionlink' || phpDocumentor_get_class($a) == 'methodlink')
+ return '<function>'.$typename.'</function>';
+ if (phpDocumentor_get_class($a) == 'definelink')
+ return '<constant>'.$typename.'</constant>';
+ if (phpDocumentor_get_class($a) == 'varlink')
+ return '<varname>'.$typename.'</varname>';
+ }
+ return $typename;
+ }
+
+ function &SmartyInit(&$templ)
+ {
+ $this->makeLeft();
+ $templ->assign("packageindex",$this->package_index);
+ return $templ;
+ }
+
+ /**
+ * Writes out the template file of {@link $class_data} and unsets the template to save memory
+ * @see registerCurrentClass()
+ * @see parent::endClass()
+ */
+ function endClass()
+ {
+ $a = '../';
+ if (!empty($this->subpackage)) $a .= '../';
+ if ($this->juststarted)
+ {
+ $this->juststarted = false;
+ phpDocumentor_out("\n");
+ flush();
+ }
+ foreach($this->method_data as $func)
+ {
+ $func[0]->assign("phpdocversion",PHPDOCUMENTOR_VER);
+ $func[0]->assign("phpdocwebsite",PHPDOCUMENTOR_WEBSITE);
+ $this->setTargetDir($this->base_dir . PATH_DELIMITER . strtolower($this->class_dir . PATH_DELIMITER . str_replace(array('_','.'),array('-','--'),$this->class)));
+ $this->writefile(strtolower($func[1] ). '.xml',$func[0]->fetch('method.tpl'));
+ }
+ if (isset($this->template_options['separatepage']) && $this->template_options['separatepage'])
+ {
+ $this->setTargetDir($this->base_dir . PATH_DELIMITER . strtolower($this->class_dir) . PATH_DELIMITER . str_replace(array('_','.'),array('-','--'),strtolower($this->class)));
+ $this->writefile(str_replace(array('_','.'),array('-','--'),strtolower($this->class)).'-summary.xml',$this->class_summary->fetch('class_summary.tpl'));
+ }
+ $this->setTargetDir($this->base_dir . PATH_DELIMITER . strtolower($this->class_dir));
+ $this->writefile(str_replace(array('_','.'),array('-','--'),strtolower($this->class)) . '.xml',$this->class_data->fetch('class.tpl'));
+ unset($this->class_data);
+ }
+
+ /**
+ * Writes out the template file of {@link $page_data} and unsets the template to save memory
+ * @see registerCurrent()
+ * @see parent::endPage()
+ */
+ function endPage()
+ {
+ $this->package = $this->curpage->package;
+ $this->subpackage = $this->curpage->subpackage;
+ $a = '../';
+ if (!empty($this->subpackage)) $a .= '../';
+ foreach($this->function_data as $func)
+ {
+ $func[0]->assign("phpdocversion",PHPDOCUMENTOR_VER);
+ $func[0]->assign("phpdocwebsite",PHPDOCUMENTOR_WEBSITE);
+ $this->setTargetDir($this->base_dir . PATH_DELIMITER . strtolower($this->page_dir . PATH_DELIMITER . $this->page));
+ $this->writefile(str_replace('_','-',strtolower($func[1])) . '.xml',$func[0]->fetch('function.tpl'));
+ }
+ if (isset($this->template_options['separatepage']) && $this->template_options['separatepage'])
+ {
+ $this->setTargetDir($this->base_dir . PATH_DELIMITER . strtolower($this->page_dir . PATH_DELIMITER . $this->page));
+ $this->writefile(strtolower($this->page).'-summary.xml',$this->page_summary->fetch('page_summary.tpl'));
+ }
+ $this->setTargetDir($this->base_dir . PATH_DELIMITER . strtolower($this->page_dir));
+ $this->writefile(strtolower($this->page) . '.xml',$this->page_data->fetch('page.tpl'));
+ unset($this->page_data);
+ }
+
+ /**
+ * @param string
+ * @param string
+ * @return string &lt;ulink url="'.$link.'">'.$text.'</ulink&gt;
+ */
+ function returnLink($link,$text)
+ {
+ return '<ulink url="'.$link.'">'.$text.'</ulink>';
+ }
+
+ function makeLeft()
+ {
+ static $done = false;
+ if ($done) return;
+ $done = true;
+ if (!isset($this->package_index))
+ foreach($this->all_packages as $key => $val)
+ {
+ if (isset($this->pkg_elements[$key]))
+ {
+ if (!isset($start)) $start = $key;
+ $this->package_index[] = array('link' => "li_$key.html", 'title' => $key);
+ }
+ }
+ foreach($this->page_elements as $package => $o1)
+ {
+ foreach($o1 as $subpackage => $links)
+ {
+ for($i=0;$i<count($links);$i++)
+ {
+ $this->left[$package][$subpackage][] =
+ array("link" => $this->returnSee($links[$i], false, false, false), "title" => $links[$i]->name);
+ }
+ }
+ }
+ foreach($this->class_elements as $package => $o1)
+ {
+ foreach($o1 as $subpackage => $links)
+ {
+ for($i=0;$i<count($links);$i++)
+ {
+ $this->left['#class'][$package][$subpackage][] =
+ array("link" => $this->returnSee($links[$i], false, false, false), "title" => $links[$i]->name);
+ }
+ }
+ }
+ }
+
+ /**
+ * HTMLdefaultConverter chooses to format both package indexes and the complete index here
+ *
+ * This function formats output for the elementindex.html and pkgelementindex.html template files. It then
+ * writes them to the target directory
+ * @see generateElementIndex(), generatePkgElementIndex()
+ */
+ function formatPkgIndex()
+ {
+ // will implement in next release with other templates than peardoc2
+ return;
+ list($package_indexes,$packages,$mletters) = $this->generatePkgElementIndexes();
+ for($i=0;$i<count($package_indexes);$i++)
+ {
+ $template = &$this->newSmarty();
+ $this->package = $package_indexes[$i]['package'];
+ $this->subpackage = '';
+ $template->assign("compiledclassindex",$this->getClassLeft());
+ $template->assign("compiledfileindex",$this->getPageLeft());
+ $template->assign("index",$package_indexes[$i]['pindex']);
+ $template->assign("package",$package_indexes[$i]['package']);
+ $template->assign("letters",$mletters[$package_indexes[$i]['package']]);
+ $template->assign("title","Package ".$package_indexes[$i]['package']." Element Index");
+ $template->assign("date",date("r",time()));
+// $this->writefile('elementindex_'.$package_indexes[$i]['package'].'.html',$template->fetch('pkgelementindex.tpl'));
+ }
+ phpDocumentor_out("\n");
+ flush();
+ }
+
+ /**
+ * HTMLdefaultConverter uses this function to format template index.html and packages.html
+ *
+ * This function generates the package list from {@link $all_packages}, eliminating any
+ * packages that don't have any entries in their package index (no files at all, due to @ignore
+ * or other factors). Then it uses the default package name as the first package index to display.
+ * It sets the right pane to be either a blank file with instructions on making package-level docs,
+ * or the package-level docs for the default package.
+ * @global string Used to set the starting package to display
+ */
+ function formatIndex()
+ {
+ // will implement in next release with other templates than peardoc2
+ return;
+ global $phpDocumentor_DefaultPackageName;
+ list($elindex,$mletters) = $this->generateElementIndex();
+ $template = &$this->newSmarty();
+ $template->assign("index",$elindex);
+ $template->assign("letters",$mletters);
+ $template->assign("title","Element Index");
+ $template->assign("date",date("r",time()));
+ phpDocumentor_out("\n");
+ flush();
+ $this->setTargetDir($this->base_dir);
+// $this->writefile('elementindex.html',$template->fetch('elementindex.tpl'));
+ uksort($this->package_index,"strnatcasecmp");
+ $index = &$this->newSmarty();
+ foreach($this->all_packages as $key => $val)
+ {
+ if (isset($this->pkg_elements[$key]))
+ {
+ if (!isset($start)) $start = $key;
+ if (!isset($this->package_pages[$key])) $this->writeNewPPage($key);
+ }
+ }
+ // Created index.html
+ if (isset($this->package_index[$phpDocumentor_DefaultPackageName])) $start = $phpDocumentor_DefaultPackageName;
+ $this->package = $start;
+ $this->subpackage = '';
+ $index->assign("compiledclassindex",$this->getClassLeft());
+ $index->assign("compiledfileindex",$this->getPageLeft());
+ $index->assign("date",date("r",time()));
+ $index->assign("title",$this->title);
+ $index->assign("start","li_$start.html");
+ if (isset($this->package_pages[$start]))
+ {
+ $index->assign("contents",$this->package_pages[$start]);
+ }
+ phpDocumentor_out("\n");
+ flush();
+ $this->setTargetDir($this->base_dir);
+// $this->writefile("index.html",$index->fetch('index.tpl'));
+ unset($index);
+
+ }
+
+ function writeNewPPage($key)
+ {
+ // will implement in next release with other templates than peardoc2
+ return;
+ $template = &$this->newSmarty();
+ $this->package = $key;
+ $this->subpackage = '';
+ $template->assign("compiledclassindex",$this->getClassLeft());
+ $template->assign("compiledfileindex",$this->getPageLeft());
+ $template->assign("date",date("r",time()));
+ $template->assign("title",$this->title);
+ $template->assign("package",$key);
+ phpDocumentor_out("\n");
+ flush();
+ $this->setTargetDir($this->base_dir);
+// $this->writefile("li_$key.html",$template->fetch('index.tpl'));
+ unset($template);
+ }
+
+ /**
+ * Generate indexes for li_package.html and classtree output files
+ *
+ * This function generates the li_package.html files from the template file left.html. It does this by
+ * iterating through each of the $page_elements, $class_elements and $function_elements arrays to retrieve
+ * the pre-sorted {@link abstractLink} descendants needed for index generation. Conversion of these links to
+ * text is done by {@link returnSee()}. The {@link $local} parameter is set to false to ensure that paths are correct.
+ *
+ * Then it uses {@link generateFormattedClassTrees()} to create class trees from the template file classtrees.html. Output
+ * filename is classtrees_packagename.html. This function also unsets {@link $elements} and {@link $pkg_elements} to free
+ * up the considerable memory these two class vars use
+ * @see $page_elements, $class_elements, $function_elements
+ */
+ function formatLeftIndex()
+ {
+ // will implement in next release with other templates than peardoc2
+ return;
+ phpDocumentor_out("\n");
+ flush();
+ $this->setTargetDir($this->base_dir);
+ if (!isset($this->left))
+ {
+ debug("Nothing parsed, check the command-line");
+ die();
+ }
+ foreach($this->all_packages as $package => $rest)
+ {
+ if (!isset($this->pkg_elements[$package])) continue;
+ // Create class tree page
+ $template = &$this->newSmarty();
+ $template->assign("classtrees",$this->generateFormattedClassTrees($package));
+ $template->assign("package",$package);
+ $template->assign("date",date("r",time()));
+ $template->assign("title","Class Trees for Package $package");
+// $this->writefile("classtrees_$package.html",$template->fetch('classtrees.tpl'));
+ phpDocumentor_out("\n");
+ flush();
+ }
+ // free up considerable memory
+ unset($this->elements);
+ unset($this->pkg_elements);
+ }
+
+ /**
+ * This function takes an {@link abstractLink} descendant and returns an html link
+ *
+ * @param abstractLink a descendant of abstractlink should be passed, and never text
+ * @param string text to display in the link
+ * @param boolean this parameter is not used, and is deprecated
+ * @param boolean determines whether the returned text is enclosed in an &lt;a> tag
+ */
+ function returnSee(&$element, $eltext = false, $local = true, $with_a = true)
+ {
+ if (!$element) return false;
+ if (!$eltext)
+ {
+ $eltext = '';
+ switch($element->type)
+ {
+ case 'tutorial' :
+ $eltext = $element->title;
+ break;
+ case 'class' :
+ $eltext = '<classname>'.$element->name.'</classname>';
+ break;
+ case 'method' :
+ $eltext .= '<function>';
+ case 'var' :
+ if ($element->type == 'var') $eltext .= '<varname>';
+ $eltext .= $element->class.'::';
+ case 'page' :
+ case 'define' :
+ if ($element->type == 'define')
+ $eltext .= '<constant>';
+ case 'function' :
+ if ($element->type == 'function')
+ $eltext .= '<function>';
+ case 'global' :
+ default :
+ $eltext .= $element->name;
+ if ($element->type == 'function' || $element->type == 'method') $eltext .= '()</function>';
+ if ($element->type == 'var') $eltext .= '</varname>';
+ if ($element->type == 'define') $eltext .= '</constant>';
+ break;
+ }
+ }
+ $a = '';
+ if (!empty($element->subpackage))
+ {
+ $a = $element->subpackage.'.';
+ }
+ switch ($element->type)
+ {
+ case 'page' :
+ if ($with_a)
+ return '<link linkend="package.'.strtolower($element->package.'.'.$a).$element->fileAlias.'">'.$eltext.'</link>';
+ else
+ return 'package.'.strtolower($element->package.'.'.$a).$element->fileAlias;
+ break;
+ case 'define' :
+ if ($with_a)
+ return '<link linkend="package.'.strtolower($element->package.'.'.$a).$element->fileAlias.'.'.urlencode($element->name).'">'.$eltext.'</link>';
+ else
+ return 'package.'.strtolower($element->package.'.'.$a).$element->fileAlias.'.'.urlencode($element->name);
+ break;
+ case 'global' :
+ if ($with_a)
+ return '<link linkend="package.'.strtolower($element->package.'.'.$a).$element->fileAlias.'.'.urlencode($element->name).'">'.$eltext.'</link>';
+ else
+ return 'package.'.strtolower($element->package.'.'.$a).$element->fileAlias.'.'.urlencode($element->name);
+ break;
+ case 'class' :
+ if ($with_a)
+ return '<link linkend="package.'.strtolower($element->package.'.'.$a.str_replace(array('_','.'),array('-','--'),$element->name)).'">'.$eltext.'</link>';
+ else
+ return 'package.'.strtolower($element->package.'.'.$a.str_replace(array('_','.'),array('-','--'),$element->name));
+ break;
+ case 'function' :
+ if ($with_a)
+ return '<link linkend="package.'.strtolower($element->package.'.'.$a.$element->fileAlias.'.'.str_replace('_','-',$element->name)).'">'.$eltext.'</link>';
+ else
+ return 'package.'.strtolower($element->package.'.'.$a.$element->fileAlias.'.'.str_replace('_','-',$element->name));
+ break;
+ case 'method' :
+ if ($with_a)
+ return '<link linkend="package.'.strtolower($element->package.'.'.$a.str_replace(array('_','.'),array('-','--'),$element->class).'.'.str_replace('_','-',$element->name)).'">'.$eltext.'</link>';
+ else
+ return 'package.'.strtolower($element->package.'.'.$a.str_replace(array('_','.'),array('-','--'),$element->class).'.'.str_replace('_','-',$element->name));
+ break;
+ case 'var' :
+ if ($with_a)
+ return '<link linkend="package.'.strtolower($element->package.'.'.$a.str_replace(array('_','.'),array('-','--'),$element->class).'.'.$element->name).'">'.$eltext.'</link>';
+ else
+ return 'package.'.strtolower($element->package.'.'.$a.str_replace(array('_','.'),array('-','--'),$element->class).'.'.$element->name);
+ break;
+ case 'tutorial' :
+ if ($with_a)
+ return '<link linked="package.'.strtolower($element->package.'.'.$a.str_replace(array('_','.'),array('-','--'),$element->name).'-tutorial">'.$eltext).'</link>';
+ else
+ return 'package.'.strtolower($element->package.'.'.$a.str_replace(array('_','.'),array('-','--'),$element->name)).'-tutorial';
+ }
+ }
+
+ /**
+ * Get the id value needed to allow linking
+ * @param mixed descendant of parserElement or parserData/parserPage
+ * @see parserElement, parserData, parserPage
+ * @return string the id value for this element type
+ */
+ function getId(&$el)
+ {
+ if (phpDocumentor_get_class($el) == 'parserdata')
+ {
+ $element = $this->addLink($el->parent);
+ $elp = $el->parent;
+ } else
+ {
+ $elp = $el;
+ $element = $this->addLink($el);
+ }
+ $a = '';
+ if (!empty($element->subpackage))
+ {
+ $a = $element->subpackage.'.';
+ }
+ switch ($element->type)
+ {
+ case 'page' :
+ return 'package.'.strtolower($element->package.'.'.$a.$element->fileAlias);
+ break;
+ case 'define' :
+ return 'package.'.$element->package.'.'.strtolower($a.$element->fileAlias.'.'.str_replace(array('$','_','"',"'"),array('var--','-','-','-'),$element->name));
+ break;
+ case 'global' :
+ return 'package.'.strtolower($element->package.'.'.$a.$element->fileAlias.'.'.str_replace(array('$','_','"',"'"),array('var--','-','-','-'),$element->name));
+ break;
+ case 'class' :
+ return 'package.'.strtolower($element->package.'.'.$a.str_replace(array('_','.'),array('-','--'),$element->name));
+ break;
+ case 'function' :
+ return 'package.'.strtolower($element->package.'.'.$a.$element->fileAlias.'.'.str_replace('_','-',$element->name));
+ break;
+ case 'method' :
+ return 'package.'.strtolower($element->package.'.'.$a.str_replace(array('_','.'),array('-','--'),$element->class).'.'.str_replace('_','-',$element->name));
+ break;
+ case 'var' :
+ return 'package.'.strtolower($element->package.'.'.$a.str_replace(array('_','.'),array('-','--'),$element->class).'-summary.vars.'.str_replace(array('$','_'),array('var--','-'),$element->name));
+ break;
+ case 'tutorial' :
+ return 'package.'.strtolower($element->package.'.'.$a.str_replace(array('_','.'),array('-','--'),$element->name)).'-tutorial';
+ break;
+ }
+ }
+
+ /**
+ * Create errors.html template file output
+ *
+ * This method takes all parsing errors and warnings and spits them out ordered by file and line number.
+ * @global ErrorTracker We'll be using it's output facility
+ */
+ function ConvertErrorLog()
+ {
+ global $phpDocumentor_errors;
+ $allfiles = array();
+ $files = array();
+ $warnings = $phpDocumentor_errors->returnWarnings();
+ $errors = $phpDocumentor_errors->returnErrors();
+ $template = &$this->newSmarty();
+ foreach($warnings as $warning)
+ {
+ $file = '##none';
+ $linenum = 'Warning';
+ if ($warning->file)
+ {
+ $file = $warning->file;
+ $allfiles[$file] = 1;
+ $linenum .= ' on line '.$warning->linenum;
+ }
+ $files[$file]['warnings'][] = array('name' => $linenum, 'listing' => $warning->data);
+ }
+ foreach($errors as $error)
+ {
+ $file = '##none';
+ $linenum = 'Error';
+ if ($error->file)
+ {
+ $file = $error->file;
+ $allfiles[$file] = 1;
+ $linenum .= ' on line '.$error->linenum;
+ }
+ $files[$file]['errors'][] = array('name' => $linenum, 'listing' => $error->data);
+ }
+ $i=1;
+ $af = array();
+ foreach($allfiles as $file => $num)
+ {
+ $af[$i++] = $file;
+ }
+ $allfiles = $af;
+ usort($allfiles,'strnatcasecmp');
+ $allfiles[0] = "Post-parsing";
+ foreach($allfiles as $i => $a)
+ {
+ $allfiles[$i] = array('file' => $a);
+ }
+ $out = array();
+ foreach($files as $file => $data)
+ {
+ if ($file == '##none') $file = 'Post-parsing';
+ $out[$file] = $data;
+ }
+ $template->assign("files",$allfiles);
+ $template->assign("all",$out);
+ $template->assign("title","phpDocumentor Parser Errors and Warnings");
+ $this->setTargetDir($this->base_dir);
+ $this->writefile("errors.html",$template->fetch('errors.tpl'));
+ unset($template);
+ phpDocumentor_out("\n\nTo view errors and warnings, look at ".$this->base_dir. PATH_DELIMITER . "errors.html\n");
+ flush();
+ }
+
+ function postProcess($text)
+ {
+ return htmlentities($text);
+ }
+
+ function prepareDocBlock(&$element, $nopackage = true)
+ {
+ return parent::prepareDocBlock($element, array('staticvar' => 'staticvar','deprec' => 'deprecated','abstract' => 'abstract','TODO' => 'todo', 'uses' => 'see', 'usedby' => 'see', 'tutorial' => 'see'), $nopackage);
+ }
+
+ function getTutorialId($package,$subpackage,$tutorial,$id)
+ {
+ $subpackage = (empty($subpackage) ? '' : '.'.$subpackage);
+ $id = (empty($id) ? '' : '.'.$id);
+ return 'package.'.strtolower($package.$subpackage.str_replace(array('_','.'),array('-','--'),$tutorial).$id);
+ }
+
+ function getCData($value)
+ {
+ return '<!CDATA['.$value.']]>';
+ }
+
+ /**
+ * Converts package page and sets its package as used in {@link $package_pages}
+ * @param parserPackagePage
+ */
+ function convertPackagePage(&$element)
+ {
+ return;
+ phpDocumentor_out("\n");
+ flush();
+ $template = &$this->newSmarty();
+ $this->package = $element->package;
+ $this->subpackage = '';
+ $template->assign("compiledclassindex",$this->getClassLeft());
+ $template->assign("compiledfileindex",$this->getPageLeft());
+ $template->assign("date",date("r",time()));
+ $template->assign("title",$this->title);
+ $template->assign("package",$element->package);
+ $x = $element->Convert($this);
+ $x = substr($x,strpos($x,'<body'));
+ $template->assign("contents",trim(substr($x,strpos($x,'>') + 1)));
+ phpDocumentor_out("\n");
+ flush();
+ $this->setTargetDir($this->base_dir);
+// $this->writefile("li_".$element->package.".html",$template->fetch('index.tpl'));
+ unset($template);
+ $this->package_pages[$element->package] = trim(substr($x,strpos($x,'>') + 1));
+ }
+
+ function convertTutorial(&$element)
+ {
+ $template = &parent::convertTutorial($element);
+ phpDocumentor_out("\n");
+ flush();
+ $x = $element->Convert($this,false);
+ if ($element->ini)
+ { // add child tutorial list to the tutorial through a slight hack :)
+ $subtutorials = '';
+ $b = '';
+ if (!empty($element->subpackage)) $b = '.'.$element->subpackage;
+ foreach($element->ini['Linked Tutorials'] as $child)
+ {
+ $subtutorials .= ' &'.$element->package.$b.'.'.str_replace(array('_','.'),array('-','--'),$child).'-'.$element->tutorial_type."-tutorial;\n";
+ }
+ $x = str_replace('</refsect1></refentry>','</refsect1>
+ <refsect1>
+ <title>Related Docs</title>
+ <para>
+'.$subtutorials.
+' </para>
+ </refsect1></refentry>',$x);
+ }
+ $template->assign('contents',$x);
+ $contents = $template->fetch('tutorial.tpl');
+ $a = '';
+ if ($element->subpackage) $a = PATH_DELIMITER . $element->subpackage;
+ phpDocumentor_out("\n");
+ flush();
+ $this->setTargetDir($this->base_dir . PATH_DELIMITER . strtolower($element->package . $a));
+ $this->writeFile(str_replace(array('_','.'),array('-','--'),strtolower($element->name)).'-tutorial.xml',$contents);
+ }
+
+ /**
+ * Converts class variables for template output.
+ * @see prepareDocBlock(), getFormattedOverrides()
+ * @param parserVar
+ */
+ function convertVar(&$element)
+ {
+ $docblock = $this->prepareDocBlock($element);
+ $b = 'mixed';
+ if ($element->docblock->var)
+ {
+ $b = $element->docblock->var->converted_returnType;
+ }
+// var_dump($this->getFormattedOverrides($element));
+ if (isset($this->template_options['separatepage']) && $this->template_options['separatepage'])
+ $this->class_summary->append('vars',array('sdesc' => $docblock['sdesc'],
+ 'desc' => $docblock['desc'],
+ 'tags' => $docblock['tags'],
+ 'var_name' => $this->type_adjust($element->getName()),
+ 'var_default' => htmlspecialchars($element->getValue()),
+ 'var_type' => $b,
+ 'var_overrides' => $this->getFormattedOverrides($element),
+ 'line_number' => $element->getLineNumber(),
+ 'id' => $this->getId($element)));
+ else
+ $this->class_data->append('vars',array('sdesc' => $docblock['sdesc'],
+ 'desc' => $docblock['desc'],
+ 'tags' => $docblock['tags'],
+ 'var_name' => $this->type_adjust($element->getName()),
+ 'var_default' => htmlspecialchars($element->getValue()),
+ 'var_type' => $b,
+ 'var_overrides' => $this->getFormattedOverrides($element),
+ 'line_number' => $element->getLineNumber(),
+ 'id' => $this->getId($element)));
+ }
+
+ /**
+ * Converts class for template output
+ * @see prepareDocBlock(), generateChildClassList(), generateFormattedClassTree(), getFormattedConflicts()
+ * @see getFormattedInheritedMethods(), getFormattedInheritedVars()
+ * @param parserClass
+ */
+ function convertClass(&$element)
+ {
+ parent::convertClass($element);
+ $docblock = $this->prepareDocBlock($element);
+ $this->class_dir = $element->docblock->package;
+ if (!empty($element->docblock->subpackage)) $this->class_dir .= PATH_DELIMITER . $element->docblock->subpackage;
+ $docblock = $this->prepareDocBlock($element,false);
+
+ $this->class_data->assign("sdesc",$docblock['sdesc']);
+ $this->class_data->assign("desc",$docblock['desc']);
+ $this->class_data->assign("tags",$docblock['tags']);
+
+ $this->class_data->assign("source_location",$element->getSourceLocation($this,$this->template_options['usepear']));
+ $this->class_data->assign("id",$this->getId($element));
+ $this->class_data->assign("method_ids",array());
+ if ($t = $element->getTutorial())
+ {
+ $this->class_data->append("method_ids",$this->getId($t));
+ }
+
+ if (isset($this->template_options['separatepage']) && $this->template_options['separatepage'])
+ {
+ $this->class_summary = &$this->newSmarty(true);
+ if ($t = $element->getTutorial())
+ {
+ $this->class_summary->assign("tutorial",$this->returnSee($t));
+ }
+
+ $this->class_summary->assign("class_name",$this->type_adjust($element->getName()));
+ $this->class_summary->assign("sdesc",$docblock['sdesc']);
+ $this->class_summary->assign("desc",$docblock['desc']);
+ $this->class_summary->assign("tags",$docblock['tags']);
+ $this->class_summary->assign("vars",array());
+ $this->class_summary->assign("methods",array());
+ $this->class_summary->assign("package",$element->docblock->package);
+
+ $this->class_summary->assign("children", $this->generateChildClassList($element));
+ $this->class_summary->assign("class_tree", $this->generateFormattedClassTree($element));
+ $this->class_summary->assign("conflicts", $this->getFormattedConflicts($element,"classes"));
+
+ $this->class_summary->assign("source_location",$element->getSourceLocation($this,$this->template_options['usepear']));
+ $this->class_summary->assign("id",$this->getId($element).'-summary');
+ $this->class_data->append("method_ids",$this->getId($element).'.'.strtolower(str_replace('_','-',$element->getName())).'-summary');
+ $inherited_methods = $this->getFormattedInheritedMethods($element);
+ if (!empty($inherited_methods))
+ {
+ $this->class_summary->assign("imethods",$inherited_methods);
+ }
+ $inherited_vars = $this->getFormattedInheritedVars($element);
+ if (!empty($inherited_vars))
+ {
+ $this->class_summary->assign("ivars",$inherited_vars);
+ }
+ }
+ $this->sourceloc = $element->getSourceLocation($this,$this->template_options['usepear']);
+ }
+
+ /**
+ * Converts method for template output
+ * @see prepareDocBlock(), parserMethod::getFunctionCall(), getFormattedDescMethods(), getFormattedOverrides()
+ * @param parserMethod
+ */
+ function convertMethod(&$element)
+ {
+ $fname = $element->getName();
+ if ($element->isConstructor)
+ {
+ $fname = 'constructor '.$element->getName();
+ }
+ $docblock = $this->prepareDocBlock($element);
+ $returntype = 'void';
+ if ($element->docblock->return)
+ {
+ $a = $element->docblock->return->Convert($this);
+ $returntype = $element->docblock->return->converted_returnType;
+ if ($returntype != $element->docblock->return->returnType)
+ {
+ $returntype = "<replaceable>$returntype</replaceable>";
+ }
+ }
+ $params = array();
+ if (count($element->docblock->params))
+ foreach($element->docblock->params as $param => $val)
+ {
+ $a = $val->Convert($this);
+ $params[$param] = array("var" => $param,"datatype" => $val->converted_returnType,"data" => $a);
+ }
+
+ if (isset($this->template_options['separatepage']) && $this->template_options['separatepage'])
+ {
+ $this->class_data->append('method_ids',$this->getId($element));
+ $this->class_summary->append('methods',array('id' => $this->getId($element),
+ 'sdesc' => $docblock['sdesc'],
+ 'desc' => $docblock['desc'],
+ 'tags' => $docblock['tags'],
+ 'is_constructor' => $element->isConstructor,
+ 'function_name' => $element->getName(),
+ 'function_return' => $returntype,
+ 'function_call' => $element->getIntricateFunctionCall($this,$params),
+ 'descmethod' => $this->getFormattedDescMethods($element),
+ 'method_overrides' => $this->getFormattedOverrides($element),
+ 'line_number' => $element->getLineNumber(),
+ 'params' => $params));
+ } else
+ {
+ $this->class_data->append('method_ids',$this->getId($element));
+ $this->class_data->append('methods',array('id' => $this->getId($element),
+ 'sdesc' => $docblock['sdesc'],
+ 'desc' => $docblock['desc'],
+ 'tags' => $docblock['tags'],
+ 'is_constructor' => $element->isConstructor,
+ 'function_name' => $element->getName(),
+ 'function_return' => $returntype,
+ 'function_call' => $element->getIntricateFunctionCall($this,$params),
+ 'descmethod' => $this->getFormattedDescMethods($element),
+ 'method_overrides' => $this->getFormattedOverrides($element),
+ 'line_number' => $element->getLineNumber(),
+ 'params' => $params));
+ }
+ if (!isset($this->method_data)) $this->method_data = array();
+ $this->method_data[$i = count($this->method_data) - 1][0] = $this->newSmarty(true);
+ $this->method_data[$i][1] = $element->getName();
+ $this->method_data[$i][0]->assign('class',$this->class);
+ $this->method_data[$i][0]->assign('source_location',$this->returnSee($this->getLink(basename($this->curpage->getFile())),$this->sourceloc));
+ $this->method_data[$i][0]->assign('sdesc',$docblock['sdesc']);
+ $this->method_data[$i][0]->assign('desc',$docblock['desc']);
+ $this->method_data[$i][0]->assign('tags',$docblock['tags']);
+ $this->method_data[$i][0]->assign('function_name',$fname);
+ $this->method_data[$i][0]->assign('function_return',$returntype);
+ $this->method_data[$i][0]->assign('function_call',$element->getIntricateFunctionCall($this,$params));
+ $this->method_data[$i][0]->assign('descmethod',$this->getFormattedDescMethods($element));
+ $this->method_data[$i][0]->assign('method_overrides',$this->getFormattedOverrides($element));
+ $this->method_data[$i][0]->assign('params',$params);
+ $this->method_data[$i][0]->assign('id',$this->getId($element));
+ }
+
+ /**
+ * Converts function for template output
+ * @see prepareDocBlock(), parserFunction::getFunctionCall(), getFormattedConflicts()
+ * @param parserFunction
+ */
+ function convertFunction(&$element)
+ {
+ parent::convertFunction($element);
+ $docblock = $this->prepareDocBlock($element);
+ $fname = $element->getName();
+ $params = array();
+ if (count($element->docblock->params))
+ foreach($element->docblock->params as $param => $val)
+ {
+ $a = $val->Convert($this);
+ $params[$param] = array("var" => $param,"datatype" => $val->converted_returnType,"data" => $a);
+ }
+ $returntype = 'void';
+ if ($element->docblock->return)
+ {
+ $a = $element->docblock->return->Convert($this);
+ $returntype = $element->docblock->return->converted_returnType;
+ }
+
+ $this->page_data->append("function_ids",$this->getId($element));
+ $this->page_summary->append("function_ids",$this->getId($element));
+ $this->page_summary->append('functions',array('id' => $this->getId($element),
+ 'sdesc' => $docblock['sdesc'],
+ 'desc' => $docblock['desc'],
+ 'tags' => $docblock['tags'],
+ 'function_name' => $element->getName(),
+ 'line_number' => $element->getLineNumber(),
+ 'function_return' => $returntype,
+ 'function_call' => $element->getIntricateFunctionCall($this,$params),
+ 'function_conflicts' => $this->getFormattedConflicts($element,'functions'),
+ 'params' => $params));
+ $this->function_data[$i = count($this->function_data) - 1][0] = $this->newSmarty(true);
+ $this->function_data[$i][1] = $element->getName();
+ $this->function_data[$i][0]->assign('sdesc',$docblock['sdesc']);
+ $this->function_data[$i][0]->assign('desc',$docblock['desc']);
+ $this->function_data[$i][0]->assign('tags',$docblock['tags']);
+ $this->function_data[$i][0]->assign('function_name',$fname);
+ $this->function_data[$i][0]->assign('line_number',$element->getLineNumber());
+ $this->function_data[$i][0]->assign('function_return',$returntype);
+ $this->function_data[$i][0]->assign('function_call',$element->getIntricateFunctionCall($this,$params));
+ $this->function_data[$i][0]->assign('function_conflicts',$this->getFormattedConflicts($element,"functions"));
+ $this->function_data[$i][0]->assign('params',$params);
+ $this->function_data[$i][0]->assign('source_location',$this->returnSee($this->getLink(basename($this->curpage->getFile())),$this->sourceloc));
+ $this->function_data[$i][0]->assign('id',$this->getId($element));
+ }
+
+ /**
+ * Converts include elements for template output
+ * @see prepareDocBlock()
+ * @param parserInclude
+ */
+ function convertInclude(&$element)
+ {
+ parent::convertInclude($element, array('include_file' => '-'.strtr($element->getValue(),array('"' => '', "'" => '','.' => '-'))));
+ $this->page_summary->append('includes',array('sdesc' => $docblock['sdesc'],
+ 'desc' => $docblock['desc'],
+ 'tags' => $docblock['tags'],
+ 'utags' => $docblock['utags'],
+ 'include_name' => $element->getName(),
+ 'include_value' => $per,
+ 'line_number' => $element->getLineNumber(),
+ 'include_file' => '-'.strtr($element->getValue(),array('"' => '', "'" => '','.' => '-'))));
+ }
+
+ /**
+ * Converts defines for template output
+ * @see prepareDocBlock(), getFormattedConflicts()
+ * @param parserDefine
+ */
+ function convertDefine(&$element)
+ {
+ $docblock = $this->prepareDocBlock($element);
+ parent::convertDefine($element, array('link' => urlencode($element->getName())));
+ $this->page_summary->append('defines',array('sdesc' => $docblock['sdesc'],
+ 'desc' => $docblock['desc'],
+ 'tags' => $docblock['tags'],
+ 'name' => $element->getName(),
+ 'value' => $element->getValue(),
+ 'conflicts' => $this->getFormattedConflicts($element,"defines"),
+ 'line_number' => $element->getLineNumber(),
+ 'id' => $this->getId($element)));
+ }
+
+ /**
+ * Converts global variables for template output
+ * @param parserGlobal
+ * @see prepareDocBlock(), getFormattedConflicts()
+ */
+ function convertGlobal(&$element)
+ {
+ parent::convertGlobal($element, array('id' => $this->getId($element)));
+ $docblock = $this->prepareDocBlock($element);
+ $value = $this->getGlobalValue($element->getValue());
+ $this->page_summary->append('globals',array('sdesc' => $docblock['sdesc'],
+ 'desc' => $docblock['desc'],
+ 'tags' => $docblock['tags'],
+ 'name' => $element->getName(),
+ 'link' => urlencode($element->getName()),
+ 'value' => $value,
+ 'type' => $element->getDataType($this),
+ 'line_number' => $element->getLineNumber(),
+ 'conflicts' => $this->getFormattedConflicts($element,"global variables"),
+ 'id' => $this->getId($element)));
+ }
+
+ /**
+ * converts procedural pages for template output
+ * @see prepareDocBlock(), getClassesOnPage()
+ * @param parserData
+ */
+ function convertPage(&$element)
+ {
+ parent::convertPage($element);
+ $this->juststarted = true;
+ $this->page_dir = $element->parent->package;
+ if (!empty($element->parent->subpackage)) $this->page_dir .= PATH_DELIMITER . $element->parent->subpackage;
+ // registering stuff on the template
+ $this->page_data->assign("source_location",$element->parent->getSourceLocation($this,$this->template_options['usepear']));
+ $this->page_data->assign("function_ids",array());
+ if ($t = $element->getTutorial())
+ {
+ $this->page_data->append("function_ids",$this->getId($t));
+ }
+
+ $this->sourceloc = $element->parent->getSourceLocation($this,$this->template_options['usepear']);
+ $this->page_data->assign("id", $this->getId($element));
+ if (isset($this->template_options['separatepage']) && $this->template_options['separatepage'])
+ {
+ $this->page_summary = new Smarty;
+ $this->page_summary->template_dir = $this->smarty_dir . PATH_DELIMITER . 'templates';
+ $this->page_summary->compile_dir = $this->smarty_dir . PATH_DELIMITER . 'templates_c';
+ $this->page_summary->config_dir = $this->smarty_dir . PATH_DELIMITER . 'configs';
+ // registering stuff on the template
+ $this->page_summary->assign("source_location",$element->parent->getSourceLocation($this,$this->template_options['usepear']));
+ $this->page_summary->assign("date",date("r",time()));
+ $this->page_summary->assign("functions",array());
+ $this->page_summary->assign("includes",array());
+ $this->page_summary->assign("defines",array());
+ $this->page_summary->assign("globals",array());
+ $this->page_summary->assign("classes",$this->getClassesOnPage($element));
+ $this->page_summary->assign("name",$element->parent->getFile());
+ $this->page_summary->assign("function_ids",array());
+ if ($element->docblock)
+ {
+ $docblock = $this->prepareDocBlock($element, false);
+ $this->page_summary->assign("sdesc",$docblock['sdesc']);
+ $this->page_summary->assign("desc",$docblock['desc']);
+ $this->page_summary->assign("tags",$docblock['tags']);
+ $this->page_summary->assign("utags",$docblock['utags']);
+ }
+ $this->sourceloc = $element->parent->getSourceLocation($this,$this->template_options['usepear']);
+ $this->page_summary->assign("name", $element->parent->getFile());
+ $this->page_summary->assign("id", $this->getId($element).'.'.$this->getPageName($element->parent).'-summary');
+ $this->page_data->append("function_ids",$this->getId($element).'.'.strtolower($this->getPageName($element->parent)).'-summary');
+ }
+ }
+
+ function getPageName(&$element)
+ {
+ return str_replace(array('/','_','.'),array('-','-','---'),$element->getSourceLocation($this,$this->template_options['usepear']));
+ }
+
+ /**
+ * returns an array containing the class inheritance tree from the root object to the class
+ *
+ * @param parserClass class variable
+ * @return array Format: array(root,child,child,child,...,$class)
+ * @uses parserClass::getParentClassTree()
+ */
+
+ function generateFormattedClassTree($class)
+ {
+ $tree = $class->getParentClassTree($this);
+ $out = '';
+ if (count($tree) - 1)
+ {
+ $result = array($class->getName());
+ $parent = $tree[$class->getName()];
+ while ($parent)
+ {
+ $subpackage = $parent->docblock->subpackage;
+ $package = $parent->docblock->package;
+ $x = $parent;
+ if (is_object($parent))
+ $x = $parent->getLink($this);
+ if (!$x) $x = $parent->getName();
+ $result[] =
+ $x;
+ if (is_object($parent))
+ $parent = $tree[$parent->getName()];
+ elseif (isset($tree[$parent]))
+ $parent = $tree[$parent];
+ }
+ return array_reverse($result);
+ } else
+ {
+ return array($class->getName());
+ }
+ }
+
+ /** @access private */
+ function sortVar($a, $b)
+ {
+ return strnatcasecmp($a->getName(),$b->getName());
+ }
+
+ /** @access private */
+ function sortMethod($a, $b)
+ {
+ if ($a->isConstructor) return -1;
+ if ($b->isConstructor) return 1;
+ return strnatcasecmp($a->getName(),$b->getName());
+ }
+
+ /**
+ * returns a template-enabled array of class trees
+ *
+ * @param string $package package to generate a class tree for
+ * @see $roots, HTMLConverter::getRootTree()
+ */
+ function generateFormattedClassTrees($package)
+ {
+ if (!isset($this->roots[$package])) return array();
+ $roots = $trees = array();
+ $roots = $this->roots[$package];
+ for($i=0;$i<count($roots);$i++)
+ {
+ $trees[] = array('class' => $roots[$i],'class_tree' => "<ul>\n".$this->getRootTree($this->getSortedClassTreeFromClass($roots[$i],$package,''),$package)."</ul>\n");
+ }
+ return $trees;
+ }
+
+ /**
+ * return formatted class tree for the Class Trees page
+ *
+ * @param array $tree output from {@link getSortedClassTreeFromClass()}
+ * @see Classes::$definitechild, generateFormattedClassTrees()
+ * @return string
+ */
+ function getRootTree($tree,$package)
+ {
+ if (!$tree) return '';
+ $my_tree = '';
+ $cur = '#root';
+ $lastcur = array(false);
+ $kids = array();
+ $dopar = false;
+ if ($tree[$cur]['parent'])
+ {
+ $dopar = true;
+ if (!is_object($tree[$cur]['parent']))
+ {
+// debug("parent ".$tree[$cur]['parent']." not found");
+ $my_tree .= '<listitem>' . $tree[$cur]['parent'] .'<itemizedlist>';
+ }
+ else
+ {
+// debug("parent ".$this->returnSee($tree[$cur]['parent'], false, false)." in other package");
+ $my_tree .= '<listitem>' . $this->returnSee($tree[$cur]['parent'], false, false);
+ if ($tree[$cur]['parent']->package != $package) $my_tree .= ' <emphasis>(Different package)</emphasis><itemizedlist>';
+ }
+ }
+ do
+ {
+// fancy_debug($cur,$lastcur,$kids);
+ if (count($tree[$cur]['children']))
+ {
+// debug("$cur has children");
+ if (!isset($kids[$cur]))
+ {
+// debug("set $cur kids");
+ $kids[$cur] = 1;
+ $my_tree .= '<listitem>'.$this->returnSee($tree[$cur]['link'], false, false);
+ $my_tree .= '<itemizedlist>'."\n";
+ }
+ array_push($lastcur,$cur);
+ list(,$cur) = each($tree[$cur]['children']);
+// var_dump('listed',$cur);
+ if ($cur)
+ {
+ $cur = $cur['package'] . '#' . $cur['class'];
+// debug("set cur to child $cur");
+// $my_tree .= '<li>'.$this->returnSee($tree[$cur]['link'], false, false);
+ continue;
+ } else
+ {
+// debug("end of children for $cur");
+ $cur = array_pop($lastcur);
+ $cur = array_pop($lastcur);
+ $my_tree .= '</itemizedlist></listitem>'."\n";
+ if ($dopar && ($cur == '#root' || !$cur)) $my_tree .= '</itemizedlist></listitem>';
+ }
+ } else
+ {
+// debug("$cur has no children");
+ $my_tree .= '<listitem>'.$this->returnSee($tree[$cur]['link'], false, false)."</listitem>";
+ if ($dopar && $cur == '#root') $my_tree .= '</itemizedlist></listitem>';
+ $cur = array_pop($lastcur);
+ }
+ } while ($cur);
+ return $my_tree;
+ }
+ /**
+ * Generate alphabetical index of all elements
+ *
+ * @see $elements, walk()
+ */
+ function generateElementIndex()
+ {
+ $elementindex = array();
+ $letters = array();
+ $i = 0;
+ foreach($this->elements as $letter => $nutoh)
+ {
+ $letters[]['letter'] = $letter;
+ $elindex['letter'] = $letter;
+ foreach($this->elements[$letter] as $i => $yuh)
+ {
+ switch($this->elements[$letter][$i]->type)
+ {
+ case 'class':
+ $aa = '';
+ $aa = $this->elements[$letter][$i]->docblock->getSDesc($this);
+ $oo['name'] = $this->elements[$letter][$i]->getName();
+ $oo['listing'] =
+ 'in file '.$this->elements[$letter][$i]->file.', class '.$this->getClassLink($this->elements[$letter][$i]->getName(),
+ $this->elements[$letter][$i]->docblock->package,
+ $this->elements[$letter][$i]->getPath(),
+ $this->elements[$letter][$i]->getName()
+ , false
+ , true);
+ $oo['sdesc'] = "$aa";
+ $elindex['index'][] = $oo;
+ break;
+ case 'define':
+ $aa = '';
+ $aa = $this->elements[$letter][$i]->docblock->getSDesc($this);
+ $oo['name'] = $this->elements[$letter][$i]->getName();
+ $oo['listing'] =
+ 'in file '.$this->elements[$letter][$i]->file.', constant '.$this->getDefineLink($this->elements[$letter][$i]->getName(),
+ $this->elements[$letter][$i]->docblock->package,
+ $this->elements[$letter][$i]->getPath(),
+ $this->elements[$letter][$i]->getName()
+ , false);
+ $oo['sdesc'] = "$aa";
+ $elindex['index'][] = $oo;
+ break;
+ case 'global':
+ $aa = '';
+ $aa = $this->elements[$letter][$i]->docblock->getSDesc($this);
+ $oo['name'] = $this->elements[$letter][$i]->getName();
+ $oo['listing'] =
+ 'in file '.$this->elements[$letter][$i]->file.', global variable '.$this->getGlobalLink($this->elements[$letter][$i]->getName(),
+ $this->elements[$letter][$i]->docblock->package,
+ $this->elements[$letter][$i]->getPath(),
+ $this->elements[$letter][$i]->getName()
+ , false);
+ $oo['sdesc'] = "$aa";
+ $elindex['index'][] = $oo;
+ break;
+ case 'function':
+ $aa = '';
+ $aa = $this->elements[$letter][$i]->docblock->getSDesc($this);
+ $oo['name'] = $this->elements[$letter][$i]->getName();
+ $oo['listing'] =
+ 'in file '.$this->elements[$letter][$i]->file.', function '.$this->getFunctionLink($this->elements[$letter][$i]->getName(),
+ $this->elements[$letter][$i]->docblock->package,
+ $this->elements[$letter][$i]->getPath(),
+ $this->elements[$letter][$i]->getName().'()'
+ , false);
+ $oo['sdesc'] = "$aa";
+ $elindex['index'][] = $oo;
+ break;
+ case 'method':
+ $aa = '';
+ $aa = $this->elements[$letter][$i]->docblock->getSDesc($this);
+ $oo['name'] = $this->elements[$letter][$i]->getName();
+ $oo['listing'] =
+ 'in file '.$this->elements[$letter][$i]->file.', method '.$this->getMethodLink($this->elements[$letter][$i]->getName(),
+ $this->elements[$letter][$i]->class,
+ $this->elements[$letter][$i]->docblock->package,
+ $this->elements[$letter][$i]->getPath(),
+ $this->elements[$letter][$i]->class.'::'.$this->elements[$letter][$i]->getName().'()'
+ , false);
+ $oo['sdesc'] = "$aa";
+ $elindex['index'][] = $oo;
+ break;
+ case 'var':
+ $aa = '';
+ $aa = $this->elements[$letter][$i]->docblock->getSDesc($this);
+ $oo['name'] = $this->elements[$letter][$i]->getName();
+ $oo['listing'] =
+ 'in file '.$this->elements[$letter][$i]->file.', variable '.$this->getVarLink($this->elements[$letter][$i]->getName(),
+ $this->elements[$letter][$i]->class,
+ $this->elements[$letter][$i]->docblock->package,
+ $this->elements[$letter][$i]->getPath(),
+ $this->elements[$letter][$i]->class.'::'.$this->elements[$letter][$i]->getName()
+ , false);
+ $oo['sdesc'] = "$aa";
+ $elindex['index'][] = $oo;
+ break;
+ case 'page':
+ $oo['name'] = $this->elements[$letter][$i]->getFile();
+ $oo['listing'] =
+ 'procedural page '.$this->getPageLink($this->elements[$letter][$i]->getFile(),
+ $this->elements[$letter][$i]->package,
+ $this->elements[$letter][$i]->getPath(),
+ $this->elements[$letter][$i]->getFile()
+ , false);
+ $elindex['index'][] = $oo;
+ break;
+ }
+ }
+ if (isset($elindex['index']))
+ {
+ $elementindex[] = $elindex;
+ } else
+ {
+ unset($letters[count($letters) - 1]);
+ }
+ $elindex = array();
+ }
+ return array($elementindex,$letters);
+ }
+
+ function setTemplateDir($dir)
+ {
+ Converter::setTemplateDir($dir);
+ $this->smarty_dir = $this->templateDir;
+ }
+
+ /**
+ * calls the converter setTargetDir, and then copies any template images and the stylesheet if they haven't been copied
+ * @see Converter::setTargetDir()
+ */
+ function setTargetDir($dir)
+ {
+ Converter::setTargetDir($dir);
+ static $wrote = false;
+ if ($wrote) return;
+ $wrote = true;
+ $template_images = array();
+ $stylesheets = array();
+ $dir = $this->templateDir;
+ $this->templateDir = $this->templateDir.'templates/';
+ $d = dir($this->templateDir);
+ $template_images = array();
+ while($entry = $d->read())
+ {
+ $sp = explode(".", $entry);
+ if ( preg_match("/\.(gif|jpg|png)$/i", $entry) )
+ {
+ $template_images[] = $entry;
+ }
+ }
+ $d = dir($this->templateDir);
+ while($entry = $d->read())
+ {
+ $sp = explode(".", $entry);
+ if ( preg_match("/\.css$/i", $entry) )
+ {
+ $stylesheets[] = $entry;
+ }
+ }
+ phpDocumentor_out("Copying Any Stylesheets\n");
+ flush();
+ foreach($stylesheets as $image)
+ {
+ if (file_exists($this->templateDir.$image))
+ {
+ phpDocumentor_out("Writing $image\n");
+ flush();
+ $this->copyFile($image);
+ }
+ }
+ phpDocumentor_out("Copying Any Template Images\n");
+ flush();
+ foreach($template_images as $image)
+ {
+ if (file_exists($this->templateDir.$image))
+ {
+ phpDocumentor_out("Writing $image\n");
+ flush();
+ $this->copyFile($image);
+ }
+ }
+ $this->templateDir = $dir;
+ }
+
+ /**
+ * Generate alphabetical index of all elements by package and subpackage
+ *
+ * @param string $package name of a package
+ * @see $pkg_elements, walk(), generatePkgElementIndexes()
+ */
+ function generatePkgElementIndex($package)
+ {
+ $elementindex = array();
+ $letters = array();
+ $letterind = array();
+ $used = array();
+ $subp = '';
+ foreach($this->pkg_elements[$package] as $subpackage => $els)
+ {
+ if (empty($els)) continue;
+ foreach($els as $letter => $yuh)
+ {
+ if (!isset($used[$letter]))
+ {
+ $letters[]['letter'] = $letter;
+ $letterind[$letter] = count($letters) - 1;
+ $used[$letter] = 1;
+ }
+ $elindex[$letter]['letter'] = $letter;
+ foreach($els[$letter] as $i => $yuh)
+ {
+ switch($els[$letter][$i]->type)
+ {
+ case 'class':
+ $aa = '';
+ $aa = $els[$letter][$i]->docblock->getSDesc($this);
+ $oo['name'] = $els[$letter][$i]->getName();
+ $oo['listing'] =
+ 'in file '.$els[$letter][$i]->file.', class '.$this->getClassLink($els[$letter][$i]->getName(),
+ $els[$letter][$i]->docblock->package,
+ $els[$letter][$i]->getPath(),
+ $els[$letter][$i]->getName()
+ , false
+ , true);
+ $oo['subpackage'] = $subpackage;
+ $oo['sdesc'] = $aa;
+ $elindex[$letter]['index'][] = $oo;
+ break;
+ case 'define':
+ $aa = $els[$letter][$i]->docblock->getSDesc($this);
+ $oo['name'] = $els[$letter][$i]->getName();
+ $oo['listing'] =
+ 'in file '.$els[$letter][$i]->file.', constant '.$this->getDefineLink($els[$letter][$i]->getName(),
+ $els[$letter][$i]->docblock->package,
+ $els[$letter][$i]->getPath(),
+ $els[$letter][$i]->getName()
+ , false);
+ $oo['subpackage'] = $subpackage;
+ $oo['sdesc'] = $aa;
+ $elindex[$letter]['index'][] = $oo;
+ break;
+ case 'global':
+ $aa = $els[$letter][$i]->docblock->getSDesc($this);
+ $oo['name'] = $els[$letter][$i]->getName();
+ $oo['listing'] =
+ 'in file '.$els[$letter][$i]->file.', global variable '.$this->getGlobalLink($els[$letter][$i]->getName(),
+ $els[$letter][$i]->docblock->package,
+ $els[$letter][$i]->getPath(),
+ $els[$letter][$i]->getName()
+ ,false);
+ $oo['subpackage'] = $subpackage;
+ $oo['sdesc'] = $aa;
+ $elindex[$letter]['index'][] = $oo;
+ break;
+ case 'function':
+ $aa = $els[$letter][$i]->docblock->getSDesc($this);
+ $oo['name'] = $els[$letter][$i]->getName();
+ $oo['listing'] =
+ 'in file '.$els[$letter][$i]->file.', function '.$this->getFunctionLink($els[$letter][$i]->getName(),
+ $els[$letter][$i]->docblock->package,
+ $els[$letter][$i]->getPath(),
+ $els[$letter][$i]->getName().'()'
+ , false);
+ $oo['subpackage'] = $subpackage;
+ $oo['sdesc'] = $aa;
+ $elindex[$letter]['index'][] = $oo;
+ break;
+ case 'method':
+ $aa = $els[$letter][$i]->docblock->getSDesc($this);
+ $oo['name'] = $els[$letter][$i]->getName();
+ $oo['listing'] =
+ 'in file '.$els[$letter][$i]->file.', method '.$this->getMethodLink($els[$letter][$i]->getName(),
+ $els[$letter][$i]->class,
+ $els[$letter][$i]->docblock->package,
+ $els[$letter][$i]->getPath(),
+ $els[$letter][$i]->class.'::'.$els[$letter][$i]->getName().'()'
+ , false);
+ $oo['subpackage'] = $subpackage;
+ $oo['sdesc'] = $aa;
+ $elindex[$letter]['index'][] = $oo;
+ break;
+ case 'var':
+ $aa = $els[$letter][$i]->docblock->getSDesc($this);
+ $oo['name'] = $els[$letter][$i]->getName();
+ $oo['listing'] =
+ 'in file '.$els[$letter][$i]->file.', variable '.$this->getVarLink($els[$letter][$i]->getName(),
+ $els[$letter][$i]->class,
+ $els[$letter][$i]->docblock->package,
+ $els[$letter][$i]->getPath(),
+ $els[$letter][$i]->class.'::'.$els[$letter][$i]->getName()
+ , false);
+ $oo['subpackage'] = $subpackage;
+ $oo['sdesc'] = $aa;
+ $elindex[$letter]['index'][] = $oo;
+ break;
+ case 'page':
+ $oo['name'] = $els[$letter][$i]->getFile();
+ $oo['listing'] =
+ 'procedural page '.$this->getPageLink($els[$letter][$i]->getFile(),
+ $els[$letter][$i]->package,
+ $els[$letter][$i]->getPath(),
+ $els[$letter][$i]->getFile()
+ , false);
+ $oo['subpackage'] = $subpackage;
+ $elindex[$letter]['index'][] = $oo;
+ break;
+ }
+ }
+ }
+ }
+ ksort($elindex);
+ usort($letters,'XMLDocBook_lettersort');
+ if (isset($elindex))
+ {
+ while(list($letter,$tempel) = each($elindex))
+ {
+ if (!isset($tempel))
+ {
+ unset($letters[$letterind[$tempel['letter']]]);
+ } else
+ $elementindex[] = $tempel;
+ }
+ } else $letters = array();
+ return array($elementindex,$letters);
+ }
+
+ /**
+ *
+ * @see generatePkgElementIndex()
+ */
+ function generatePkgElementIndexes()
+ {
+ $packages = array();
+ $package_names = array();
+ $pkg = array();
+ $letters = array();
+ foreach($this->pkg_elements as $package => $trash)
+ {
+ $pkgs['package'] = $package;
+ $pkg['package'] = $package;
+ list($pkg['pindex'],$letters[$package]) = $this->generatePkgElementIndex($package);
+ if (count($pkg['pindex']))
+ {
+ $packages[] = $pkg;
+ $package_names[] = $pkgs;
+ }
+ unset($pkgs);
+ unset($pkg);
+ }
+ foreach($packages as $i => $package)
+ {
+ $pnames = array();
+ for($j=0;$j<count($package_names);$j++)
+ {
+ if ($package_names[$j]['package'] != $package['package']) $pnames[] = $package_names[$j];
+ }
+ $packages[$i]['packageindexes'] = $pnames;
+ }
+ return array($packages,$package_names,$letters);
+ }
+
+ /**
+ * @param string name of class
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @param boolean return just the URL, or enclose it in an html a tag
+ * @return mixed false if not found, or an html a link to the class's documentation
+ * @see parent::getClassLink()
+ */
+ function getClassLink($expr,$package, $file = false,$text = false, $local = true, $with_a = true)
+ {
+ $a = Converter::getClassLink($expr,$package,$file);
+ if (!$a) return false;
+ return $this->returnSee($a, $text, $local, $with_a);
+ }
+
+ /**
+ * @param string name of function
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @param boolean return just the URL, or enclose it in an html a tag
+ * @return mixed false if not found, or an html a link to the function's documentation
+ * @see parent::getFunctionLink()
+ */
+ function getFunctionLink($expr,$package, $file = false,$text = false, $local = true)
+ {
+ $a = Converter::getFunctionLink($expr,$package,$file);
+ if (!$a) return false;
+ return $this->returnSee($a, $text, $local);
+ }
+
+ /**
+ * @param string name of define
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @param boolean return just the URL, or enclose it in an html a tag
+ * @return mixed false if not found, or an html a link to the define's documentation
+ * @see parent::getDefineLink()
+ */
+ function getDefineLink($expr,$package, $file = false,$text = false, $local = true)
+ {
+ $a = Converter::getDefineLink($expr,$package,$file);
+ if (!$a) return false;
+ return $this->returnSee($a, $text, $local);
+ }
+
+ /**
+ * @param string name of global variable
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @param boolean return just the URL, or enclose it in an html a tag
+ * @return mixed false if not found, or an html a link to the global variable's documentation
+ * @see parent::getGlobalLink()
+ */
+ function getGlobalLink($expr,$package, $file = false,$text = false, $local = true)
+ {
+ $a = Converter::getGlobalLink($expr,$package,$file);
+ if (!$a) return false;
+ return $this->returnSee($a, $text, $local);
+ }
+
+ /**
+ * @param string name of procedural page
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @param boolean return just the URL, or enclose it in an html a tag
+ * @return mixed false if not found, or an html a link to the procedural page's documentation
+ * @see parent::getPageLink()
+ */
+ function getPageLink($expr,$package, $path = false,$text = false, $local = true)
+ {
+ $a = Converter::getPageLink($expr,$package,$path);
+ if (!$a) return false;
+ return $this->returnSee($a, $text, $local);
+ }
+
+ /**
+ * @param string name of method
+ * @param string class containing method
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @param boolean return just the URL, or enclose it in an html a tag
+ * @return mixed false if not found, or an html a link to the method's documentation
+ * @see parent::getMethodLink()
+ */
+ function getMethodLink($expr,$class,$package, $file = false,$text = false, $local = true)
+ {
+ $a = Converter::getMethodLink($expr,$class,$package,$file);
+ if (!$a) return false;
+ return $this->returnSee($a, $text, $local);
+ }
+
+ /**
+ * @param string name of var
+ * @param string class containing var
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @param boolean return just the URL, or enclose it in an html a tag
+ * @return mixed false if not found, or an html a link to the var's documentation
+ * @see parent::getVarLink()
+ */
+ function getVarLink($expr,$class,$package, $file = false,$text = false, $local = true)
+ {
+ $a = Converter::getVarLink($expr,$class,$package,$file);
+ if (!$a) return false;
+ return $this->returnSee($a, $text, $local);
+ }
+
+ /**
+ * does a nat case sort on the specified second level value of the array
+ *
+ * @param mixed $a
+ * @param mixed $b
+ * @return int
+ */
+ function rcNatCmp ($a, $b)
+ {
+ $aa = strtoupper($a[$this->rcnatcmpkey]);
+ $bb = strtoupper($b[$this->rcnatcmpkey]);
+
+ return strnatcasecmp($aa, $bb);
+ }
+
+ /**
+ * does a nat case sort on the specified second level value of the array.
+ * this one puts constructors first
+ *
+ * @param mixed $a
+ * @param mixed $b
+ * @return int
+ */
+ function rcNatCmp1 ($a, $b)
+ {
+ $aa = strtoupper($a[$this->rcnatcmpkey]);
+ $bb = strtoupper($b[$this->rcnatcmpkey]);
+
+ if (strpos($aa,'CONSTRUCTOR') === 0)
+ {
+ return -1;
+ }
+ if (strpos($bb,'CONSTRUCTOR') === 0)
+ {
+ return 1;
+ }
+ if (strpos($aa,strtoupper($this->class)) === 0)
+ {
+ return -1;
+ }
+ if (strpos($bb,strtoupper($this->class)) === 0)
+ {
+ return -1;
+ }
+ return strnatcasecmp($aa, $bb);
+ }
+
+ /**
+ * This function is not used by HTMLdefaultConverter, but is required by Converter
+ */
+ function Output()
+ {
+ }
+}
+
+/** @access private */
+function XMLDocBook_lettersort($a, $b)
+{
+ return strnatcasecmp($a['letter'],$b['letter']);
+}
+?>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/Beautifier.php b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/Beautifier.php
new file mode 100644
index 00000000..81b2e782
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/Beautifier.php
@@ -0,0 +1,135 @@
+<?PHP
+/**
+ * XML/Beautifier.php
+ *
+ * Format XML files containing unknown entities (like all of peardoc)
+ *
+ * phpDocumentor :: automatic documentation generator
+ *
+ * PHP versions 4 and 5
+ *
+ * Copyright (c) 2004-2006 Gregory Beaver
+ *
+ * LICENSE:
+ *
+ * This library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Lesser General
+ * Public License as published by the Free Software Foundation;
+ * either version 2.1 of the License, or (at your option) any
+ * later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ * @package phpDocumentor
+ * @subpackage Parsers
+ * @author Greg Beaver <cellog@php.net>
+ * @copyright 2004-2006 Gregory Beaver
+ * @license http://www.opensource.org/licenses/lgpl-license.php LGPL
+ * @version CVS: $Id: Beautifier.php 212211 2006-04-30 22:18:14Z cellog $
+ * @filesource
+ * @link http://www.phpdoc.org
+ * @link http://pear.php.net/PhpDocumentor
+ * @since 1.3.0
+ */
+
+
+/**
+ * This is just like XML_Beautifier, but uses {@link phpDocumentor_XML_Beautifier_Tokenizer}
+ * @package phpDocumentor
+ * @subpackage Parsers
+ * @since 1.3.0
+ */
+class phpDocumentor_peardoc2_XML_Beautifier extends XML_Beautifier {
+
+ /**
+ * format a file or URL
+ *
+ * @access public
+ * @param string $file filename
+ * @param mixed $newFile filename for beautified XML file (if none is given, the XML string will be returned.)
+ * if you want overwrite the original file, use XML_BEAUTIFIER_OVERWRITE
+ * @param string $renderer Renderer to use, default is the plain xml renderer
+ * @return mixed XML string of no file should be written, true if file could be written
+ * @throws PEAR_Error
+ * @uses _loadRenderer() to load the desired renderer
+ */
+ function formatFile($file, $newFile = null, $renderer = "Plain")
+ {
+ if ($this->apiVersion() != '1.0') {
+ return $this->raiseError('API version must be 1.0');
+ }
+ /**
+ * Split the document into tokens
+ * using the XML_Tokenizer
+ */
+ require_once dirname(__FILE__) . '/Tokenizer.php';
+ $tokenizer = new phpDocumentor_XML_Beautifier_Tokenizer();
+
+ $tokens = $tokenizer->tokenize( $file, true );
+
+ if (PEAR::isError($tokens)) {
+ return $tokens;
+ }
+
+ include_once dirname(__FILE__) . '/Plain.php';
+ $renderer = new PHPDoc_XML_Beautifier_Renderer_Plain($this->_options);
+
+ $xml = $renderer->serialize($tokens);
+
+ if ($newFile == null) {
+ return $xml;
+ }
+
+ $fp = @fopen($newFile, "w");
+ if (!$fp) {
+ return PEAR::raiseError("Could not write to output file", XML_BEAUTIFIER_ERROR_NO_OUTPUT_FILE);
+ }
+
+ flock($fp, LOCK_EX);
+ fwrite($fp, $xml);
+ flock($fp, LOCK_UN);
+ fclose($fp);
+ return true; }
+
+ /**
+ * format an XML string
+ *
+ * @access public
+ * @param string $string XML
+ * @return string formatted XML string
+ * @throws PEAR_Error
+ */
+ function formatString($string, $renderer = "Plain")
+ {
+ if ($this->apiVersion() != '1.0') {
+ return $this->raiseError('API version must be 1.0');
+ }
+ /**
+ * Split the document into tokens
+ * using the XML_Tokenizer
+ */
+ require_once dirname(__FILE__) . '/Tokenizer.php';
+ $tokenizer = new phpDocumentor_XML_Beautifier_Tokenizer();
+
+ $tokens = $tokenizer->tokenize( $string, false );
+
+ if (PEAR::isError($tokens)) {
+ return $tokens;
+ }
+
+ include_once dirname(__FILE__) . '/Plain.php';
+ $renderer = new PHPDoc_XML_Beautifier_Renderer_Plain($this->_options);
+
+ $xml = $renderer->serialize($tokens);
+
+ return $xml;
+ }
+}
+?> \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/Plain.php b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/Plain.php
new file mode 100644
index 00000000..b99ced18
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/Plain.php
@@ -0,0 +1,250 @@
+<?PHP
+/* vim: set expandtab tabstop=4 shiftwidth=4: */
+// +----------------------------------------------------------------------+
+// | PHP Version 4 |
+// +----------------------------------------------------------------------+
+// | Copyright (c) 1997-2002 The PHP Group |
+// +----------------------------------------------------------------------+
+// | This source file is subject to version 2.0 of the PHP license, |
+// | that is bundled with this package in the file LICENSE, and is |
+// | available at through the world-wide-web at |
+// | http://www.php.net/license/2_02.txt. |
+// | If you did not receive a copy of the PHP license and are unable to |
+// | obtain it through the world-wide-web, please send a note to |
+// | license@php.net so we can mail you a copy immediately. |
+// +----------------------------------------------------------------------+
+// | Authors: Stephan Schmidt <schst@php.net> |
+// +----------------------------------------------------------------------+
+
+/**
+ * XML/Beautifier/Renderer/Plain.php
+ *
+ * @package XML_Beautifier
+ * @author Stephan Schmidt <schst@php.net>
+ */
+
+/**
+ * XML_Util is needed to create the tags
+ */
+require_once 'XML/Util.php';
+
+/**
+ * Renderer base class
+ */
+require_once 'XML/Beautifier/Renderer.php';
+
+/**
+ * Basic XML Renderer for XML Beautifier
+ *
+ * @package XML_Beautifier
+ * @author Stephan Schmidt <schst@php.net>
+ * @todo option to specify inline tags
+ * @todo option to specify treatment of whitespac in data sections
+ * @todo automatically create <![CDATA[ ]]> sections
+ */
+class PHPDoc_XML_Beautifier_Renderer_Plain extends XML_Beautifier_Renderer {
+
+ /**
+ * Serialize the XML tokens
+ *
+ * @access public
+ * @param array XML tokens
+ * @return string XML document
+ */
+ function serialize($tokens)
+ {
+ $tokens = $this->normalize($tokens);
+
+ $xml = '';
+ $cnt = count($tokens);
+ for($i = 0; $i < $cnt; $i++ )
+ {
+ $xml .= $this->_serializeToken($tokens[$i]);
+ }
+ return $xml;
+ }
+
+ /**
+ * serialize a token
+ *
+ * This method does the actual beautifying.
+ *
+ * @access private
+ * @param array $token structure that should be serialized
+ * @todo split this method into smaller methods
+ */
+ function _serializeToken($token)
+ {
+ switch ($token["type"]) {
+
+ /*
+ * serialize XML Element
+ */
+ case XML_BEAUTIFIER_ELEMENT:
+ $indent = $this->_getIndentString($token["depth"]);
+
+ // adjust tag case
+ if ($this->_options["caseFolding"] === true) {
+ switch ($this->_options["caseFoldingTo"]) {
+ case "uppercase":
+ $token["tagname"] = strtoupper($token["tagname"]);
+ $token["attribs"] = array_change_key_case($token["attribs"], CASE_UPPER);
+ break;
+ case "lowercase":
+ $token["tagname"] = strtolower($token["tagname"]);
+ $token["attribs"] = array_change_key_case($token["attribs"], CASE_LOWER);
+ break;
+ }
+ }
+
+ if ($this->_options["multilineTags"] == true) {
+ $attIndent = $indent . str_repeat(" ", (2+strlen($token["tagname"])));
+ } else {
+ $attIndent = null;
+ }
+ // check for children
+ switch ($token["contains"]) {
+
+ // contains only CData or is empty
+ case XML_BEAUTIFIER_CDATA:
+ case XML_BEAUTIFIER_EMPTY:
+ if (sizeof($token["children"]) >= 1) {
+ $data = $token["children"][0]["data"];
+ } else {
+ $data = '';
+ }
+
+ if( strstr( $data, "\n" ) && $token['contains'] != PHPDOC_BEAUTIFIER_CDATA)
+ {
+ $data = "\n" . $this->_indentTextBlock( $data, $token['depth']+1, true );
+ }
+
+ $xml = $indent . XML_Util::createTag($token["tagname"], $token["attribs"], $data, null, false, $this->_options["multilineTags"], $attIndent)
+ . $this->_options["linebreak"];
+ break;
+ // contains mixed content
+ default:
+ $xml = $indent . XML_Util::createStartElement($token["tagname"], $token["attribs"], null, $this->_options["multilineTags"], $attIndent)
+ . $this->_options["linebreak"];
+
+ $cnt = count($token["children"]);
+ for ($i = 0; $i < $cnt; $i++) {
+ $xml .= $this->_serializeToken($token["children"][$i]);
+ }
+ $xml .= $indent . XML_Util::createEndElement($token["tagname"])
+ . $this->_options["linebreak"];
+ break;
+ break;
+ }
+ break;
+
+ /*
+ * serialize <![CDATA
+ */
+ case PHPDOC_BEAUTIFIER_CDATA:
+ $xml = $token['data'] . $this->_options['linebreak'];
+ break;
+
+ /*
+ * serialize CData
+ */
+ case XML_BEAUTIFIER_CDATA:
+ if ($token["depth"] > 0) {
+ $xml = str_repeat($this->_options["indent"], $token["depth"]);
+ } else {
+ $xml = "";
+ }
+
+ $xml .= $token["data"] . $this->_options["linebreak"];
+ break;
+
+ /*
+ * serialize Processing instruction
+ */
+ case XML_BEAUTIFIER_PI:
+ $indent = $this->_getIndentString($token["depth"]);
+
+ $xml = $indent."<?".$token["target"].$this->_options["linebreak"]
+ . $this->_indentTextBlock(rtrim($token["data"]), $token["depth"])
+ . $indent."?>".$this->_options["linebreak"];
+ break;
+
+ /*
+ * comments
+ */
+ case XML_BEAUTIFIER_COMMENT:
+ $lines = count(explode("\n",$token["data"]));
+
+ /*
+ * normalize comment, i.e. combine it to one
+ * line and remove whitespace
+ */
+ if ($this->_options["normalizeComments"] && $lines > 1){
+ $comment = preg_replace("/\s\s+/s", " ", str_replace( "\n" , " ", $token["data"]));
+ $lines = 1;
+ } else {
+ $comment = $token["data"];
+ }
+
+ /*
+ * check for the maximum length of one line
+ */
+ if ($this->_options["maxCommentLine"] > 0) {
+ if ($lines > 1) {
+ $commentLines = explode("\n", $comment);
+ } else {
+ $commentLines = array($comment);
+ }
+
+ $comment = "";
+ for ($i = 0; $i < $lines; $i++) {
+ if (strlen($commentLines[$i]) <= $this->_options["maxCommentLine"]) {
+ $comment .= $commentLines[$i];
+ continue;
+ }
+ $comment .= wordwrap($commentLines[$i], $this->_options["maxCommentLine"] );
+ if ($i != ($lines-1)) {
+ $comment .= "\n";
+ }
+ }
+ $lines = count(explode("\n",$comment));
+ }
+
+ $indent = $this->_getIndentString($token["depth"]);
+
+ if ($lines > 1) {
+ $xml = $indent . "<!--" . $this->_options["linebreak"]
+ . $this->_indentTextBlock($comment, $token["depth"]+1, true)
+ . $indent . "-->" . $this->_options["linebreak"];
+ } else {
+ $xml = $indent . sprintf( "<!-- %s -->", trim($comment) ) . $this->_options["linebreak"];
+ }
+ break;
+
+ /*
+ * xml declaration
+ */
+ case XML_BEAUTIFIER_XML_DECLARATION:
+ $indent = $this->_getIndentString($token["depth"]);
+ $xml = $indent . XML_Util::getXMLDeclaration($token["version"], $token["encoding"], $token["standalone"]);
+ break;
+
+ /*
+ * xml declaration
+ */
+ case XML_BEAUTIFIER_DT_DECLARATION:
+ $xml = $token["data"];
+ break;
+
+ /*
+ * all other elements
+ */
+ case XML_BEAUTIFIER_DEFAULT:
+ default:
+ $xml = XML_Util::replaceEntities( $token["data"] );
+ break;
+ }
+ return $xml;
+ }
+}
+?> \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/Tokenizer.php b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/Tokenizer.php
new file mode 100644
index 00000000..f1f19e9c
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/Tokenizer.php
@@ -0,0 +1,752 @@
+<?php
+/**
+ * XML/Beautifier.php
+ *
+ * Format XML files containing unknown entities (like all of peardoc)
+ *
+ * phpDocumentor :: automatic documentation generator
+ *
+ * PHP versions 4 and 5
+ *
+ * Copyright (c) 2004-2006 Gregory Beaver
+ *
+ * LICENSE:
+ *
+ * This library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Lesser General
+ * Public License as published by the Free Software Foundation;
+ * either version 2.1 of the License, or (at your option) any
+ * later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ * @package phpDocumentor
+ * @subpackage Parsers
+ * @author Greg Beaver <cellog@php.net>
+ * @copyright 2004-2006 Gregory Beaver
+ * @license http://www.opensource.org/licenses/lgpl-license.php LGPL
+ * @version CVS: $Id: Tokenizer.php 238276 2007-06-22 14:58:30Z ashnazg $
+ * @filesource
+ * @link http://www.phpdoc.org
+ * @link http://pear.php.net/PhpDocumentor
+ * @since 1.3.0
+ */
+/**
+ * From the XML_Beautifier package
+ */
+require_once 'XML/Beautifier/Tokenizer.php';
+/**
+ * Highlights source code using {@link parse()}
+ * @package phpDocumentor
+ * @subpackage Parsers
+ */
+class phpDocumentor_XML_Beautifier_Tokenizer extends XML_Beautifier_Tokenizer
+{
+ /**#@+
+ * @access private
+ */
+ var $_curthing;
+ var $_tag;
+ var $_attrs;
+ var $_attr;
+
+ /**#@-*/
+ /**
+ * @var array
+ */
+ var $eventHandlers = array(
+ PHPDOC_XMLTOKEN_EVENT_NOEVENTS => 'normalHandler',
+ PHPDOC_XMLTOKEN_EVENT_XML => 'parseXMLHandler',
+ PHPDOC_XMLTOKEN_EVENT_PI => 'parsePiHandler',
+ PHPDOC_XMLTOKEN_EVENT_ATTRIBUTE => 'attrHandler',
+ PHPDOC_XMLTOKEN_EVENT_OPENTAG => 'tagHandler',
+ PHPDOC_XMLTOKEN_EVENT_IN_CDATA => 'realcdataHandler',
+ PHPDOC_XMLTOKEN_EVENT_DEF => 'defHandler',
+ PHPDOC_XMLTOKEN_EVENT_CLOSETAG => 'closetagHandler',
+ PHPDOC_XMLTOKEN_EVENT_ENTITY => 'entityHandler',
+ PHPDOC_XMLTOKEN_EVENT_COMMENT => 'commentHandler',
+ PHPDOC_XMLTOKEN_EVENT_SINGLEQUOTE => 'stringHandler',
+ PHPDOC_XMLTOKEN_EVENT_DOUBLEQUOTE => 'stringHandler',
+ PHPDOC_XMLTOKEN_EVENT_CDATA => 'parseCdataHandler',
+ );
+
+ /**
+ * Parse a new file
+ *
+ * The parse() method is a do...while() loop that retrieves tokens one by
+ * one from the {@link $_event_stack}, and uses the token event array set up
+ * by the class constructor to call event handlers.
+ *
+ * The event handlers each process the tokens passed to them, and use the
+ * {@link _addoutput()} method to append the processed tokens to the
+ * {@link $_line} variable. The word parser calls {@link newLineNum()}
+ * every time a line is reached.
+ *
+ * In addition, the event handlers use special linking functions
+ * {@link _link()} and its cousins (_classlink(), etc.) to create in-code
+ * hyperlinks to the documentation for source code elements that are in the
+ * source code.
+ *
+ * @uses setupStates() initialize parser state variables
+ * @uses configWordParser() pass $parse_data to prepare retrieval of tokens
+ * @param string
+ * @param Converter
+ * @param false|string full path to file with @filesource tag, if this
+ * is a @filesource parse
+ * @param false|integer starting line number from {@}source linenum}
+ * @staticvar integer used for recursion limiting if a handler for
+ * an event is not found
+ * @return bool
+ */
+ function parseString ($parse_data)
+ {
+ static $endrecur = 0;
+ $parse_data = str_replace(array("\r\n", "\t"), array("\n", ' '), $parse_data);
+ $this->setupStates($parse_data);
+
+ $this->configWordParser(PHPDOC_XMLTOKEN_EVENT_NOEVENTS);
+ // initialize variables so E_ALL error_reporting doesn't complain
+ $pevent = 0;
+ $word = 0;
+ $this->_curthing = '';
+
+ do
+ {
+ $lpevent = $pevent;
+ $pevent = $this->_event_stack->getEvent();
+ if ($lpevent != $pevent)
+ {
+ $this->_last_pevent = $lpevent;
+ $this->configWordParser($pevent);
+ }
+ $this->_wp->setWhitespace(true);
+
+ $dbg_linenum = $this->_wp->linenum;
+ $dbg_pos = $this->_wp->getPos();
+ $this->_pv_last_word = $word;
+ $this->_pv_curline = $this->_wp->linenum;
+ $word = $this->_wp->getWord();
+
+ if (PHPDOCUMENTOR_DEBUG == true)
+ {
+ echo "LAST: ";
+ echo "|" . $this->_pv_last_word;
+ echo "|\n";
+ echo "PEVENT: " . $this->getParserEventName($pevent) . "\n";
+ echo "LASTPEVENT: " . $this->getParserEventName($this->_last_pevent) . "\n";
+// echo "LINE: ".$this->_line."\n";
+// echo "OUTPUT: ".$this->_output."\n";
+ echo $dbg_linenum.'-'.$dbg_pos . ": ";
+ echo '|'.htmlspecialchars($word);
+ echo "|\n";
+ echo "-------------------\n\n\n";
+ flush();
+ }
+ if (isset($this->eventHandlers[$pevent]))
+ {
+ $handle = $this->eventHandlers[$pevent];
+ $this->$handle($word, $pevent);
+ } else
+ {
+ echo ('WARNING: possible error, no handler for event number '.$pevent);
+ if ($endrecur++ == 25)
+ {
+ return $this->raiseError("FATAL ERROR, recursion limit reached");
+ }
+ }
+ } while (!($word === false));
+ return true;
+ }
+
+ /**#@+
+ * Event Handlers
+ *
+ * All Event Handlers use {@link checkEventPush()} and
+ * {@link checkEventPop()} to set up the event stack and parser state.
+ * @access private
+ * @param string|array token value
+ * @param integer parser event from {@link Parser.inc}
+ */
+ /**
+ * Most tokens only need highlighting, and this method handles them
+ */
+ function normalHandler($word, $pevent)
+ {
+ if ($this->checkEventPush($word, $pevent)) {
+ $this->_wp->backupPos($word);
+ $this->_addoutput($pevent);
+ $this->_curthing = '';
+ return;
+ }
+ $this->_curthing .= $word;
+
+ if ($this->checkEventPop($word, $pevent)) {
+ $this->_addoutput($pevent);
+ $this->_curthing = '';
+ }
+ }
+
+ /**
+ * handle <!-- comments -->
+ */
+ function commentHandler($word, $pevent)
+ {
+ if ($this->checkEventPush($word, $pevent)) {
+ $this->_wp->backupPos($word);
+ return;
+ }
+
+ $this->_curthing .= $word;
+ if ($this->checkEventPop($word, $pevent)) {
+ $this->_addoutput($pevent);
+ $this->_curthing = '';
+ }
+ }
+
+ /**
+ * handle <?Processor instructions?>
+ */
+ function parsePiHandler($word, $pevent)
+ {
+ if ($this->checkEventPush($word, $pevent)) {
+ $this->_wp->backupPos($word);
+ return;
+ }
+ if ($this->checkEventPop($word, $pevent)) {
+ $this->_addoutput($pevent);
+ $this->_curthing = '';
+ $this->_attrs = null;
+ return;
+ }
+ if (!strlen($this->_curthing)) {
+ $this->_curthing .= str_replace('<?', '', $word);
+ } else {
+ if (!isset($this->_attrs) || !is_string($this->_attrs)) {
+ $this->_attrs = '';
+ }
+ $this->_attrs .= $word;
+ }
+ }
+
+ /**
+ * handle <?xml Processor instructions?>
+ */
+ function parseXMLHandler($word, $pevent)
+ {
+ if ($this->checkEventPush($word, $pevent)) {
+ $this->_wp->backupPos($word);
+ return;
+ }
+
+ $this->_curthing .= $word;
+ if ($this->checkEventPop($word, $pevent)) {
+ $this->_addoutput($pevent);
+ $this->_curthing = '';
+ }
+ }
+
+ /**
+ * handle <![CDATA[ unescaped text ]]>
+ */
+ function realcdataHandler($word, $pevent)
+ {
+ $this->_curthing .= $word;
+ if ($this->checkEventPop($word, $pevent)) {
+ $this->_addoutput($pevent);
+ $this->_curthing = '';
+ }
+ }
+
+ /**
+ * handle <tags>
+ */
+ function tagHandler($word, $pevent)
+ {
+ if ($this->checkEventPush($word, $pevent)) {
+ $this->_wp->backupPos($word);
+ $this->_curthing = '';
+ return;
+ }
+
+ if ($word{0} == '<') {
+ $this->_tag = substr($word, 1);
+ }
+
+ if ($this->checkEventPop($word, $pevent)) {
+ $this->_addoutput($pevent);
+ $this->_tag = null;
+ $this->_attrs = null;
+ if ($word == '>') {
+ $this->_event_stack->pushEvent(PHPDOC_XMLTOKEN_EVENT_CDATA);
+ return;
+ }
+ }
+ }
+
+ /**
+ * handle </tags>
+ */
+ function closetagHandler($word, $pevent)
+ {
+ if ($this->checkEventPush($word, $pevent)) {
+ $this->_wp->backupPos($word);
+ return;
+ }
+ if ($this->checkEventPop($word, $pevent)) {
+ $this->_addoutput($pevent);
+ $this->_tag = '';
+ return;
+ }
+ $this->_tag = trim(str_replace('</', '', $word));
+ }
+
+ /**
+ * handle <!def>
+ */
+ function defHandler($word, $pevent)
+ {
+ if ($this->checkEventPush($word, $pevent)) {
+ $this->_wp->backupPos($word);
+ return;
+ }
+
+ $this->_curthing .= $word;
+ if ($this->checkEventPop($word, $pevent)) {
+ $this->_addoutput($pevent);
+ $this->_curthing = '';
+ }
+ }
+
+ /**
+ * Most tokens only need highlighting, and this method handles them
+ */
+ function attrHandler($word, $pevent)
+ {
+ if ($e = $this->checkEventPush($word, $pevent)) {
+ return;
+ }
+ if (!isset($this->_attrs) || !is_array($this->_attrs)) {
+ $this->_attrs = array();
+ }
+ if (strpos($word, '=')) {
+ $this->_attrs[$this->_attr = trim(str_replace('=', '', $word))] = '';
+ }
+ if ($this->checkEventPop($word, $pevent)) {
+ $this->_wp->backupPos($word);
+ return;
+ }
+ }
+
+ /**
+ * handle attribute values
+ */
+ function stringHandler($word, $pevent)
+ {
+ if ($this->checkEventPop($word, $pevent)) {
+ return;
+ }
+ $this->_attrs[$this->_attr] = $word;
+ }
+
+ /**
+ * handle &entities;
+ */
+ function entityHandler($word, $pevent)
+ {
+ if ($this->checkEventPop($word, $pevent)) {
+ $this->_addoutput($pevent);
+ $this->_curthing = '';
+ return;
+ }
+ if (strlen($word) && $word{0} == '&') {
+ $word = substr($word, 1);
+ }
+ $this->_curthing .= $word;
+ }
+
+ /**
+ * handle tag contents
+ */
+ function parseCdataHandler($word, $pevent)
+ {
+ if ($this->checkEventPush($word, $pevent)) {
+ $this->_wp->backupPos($word);
+ if (strlen($this->_curthing)) {
+ $this->_addoutput($pevent);
+ }
+ $this->_curthing = '';
+ return;
+ }
+ if ($this->checkEventPop($word, $pevent)) {
+ if (strlen($this->_curthing)) {
+ $this->_addoutput($pevent);
+ }
+ $this->_curthing = '';
+ $this->_event_stack->pushEvent(PHPDOC_XMLTOKEN_EVENT_CLOSETAG);
+ return;
+ }
+ $this->_curthing .= $word;
+ }
+
+ /**#@-*/
+
+ /**
+ * Handler for real character data
+ *
+ * @access protected
+ * @param object XML parser object
+ * @param string CDATA
+ * @return void
+ */
+ function incdataHandler($parser, $cdata)
+ {
+ if ((string)$cdata === '') {
+ return true;
+ }
+
+ $struct = array(
+ "type" => PHPDOC_BEAUTIFIER_CDATA,
+ "data" => $cdata,
+ "depth" => $this->_depth
+ );
+
+ $this->_appendToParent($struct);
+ }
+ /**#@+
+ * Output Methods
+ * @access private
+ */
+ /**
+ * This method adds output to {@link $_line}
+ *
+ * If a string with variables like "$test this" is present, then special
+ * handling is used to allow processing of the variable in context.
+ * @see _flush_save()
+ */
+ function _addoutput($event)
+ {
+ $type =
+ array(
+ PHPDOC_XMLTOKEN_EVENT_NOEVENTS => '_handleXMLDefault',
+ PHPDOC_XMLTOKEN_EVENT_CLOSETAG => 'endHandler',
+ PHPDOC_XMLTOKEN_EVENT_ENTITY => 'entityrefHandler',
+ PHPDOC_XMLTOKEN_EVENT_DEF => '_handleXMLDefault',
+ PHPDOC_XMLTOKEN_EVENT_PI => 'parsePiHandler',
+ PHPDOC_XMLTOKEN_EVENT_XML => '_handleXMLDefault',
+ PHPDOC_XMLTOKEN_EVENT_OPENTAG => 'startHandler',
+ PHPDOC_XMLTOKEN_EVENT_COMMENT => '_handleXMLDefault',
+ PHPDOC_XMLTOKEN_EVENT_CDATA => 'cdataHandler',
+ PHPDOC_XMLTOKEN_EVENT_IN_CDATA => 'incdataHandler',
+ );
+ $method = $type[$event];
+ switch ($event) {
+ case PHPDOC_XMLTOKEN_EVENT_COMMENT :
+// echo "comment: $this->_curthing\n";
+ $this->$method(false, $this->_curthing);
+ break;
+ case PHPDOC_XMLTOKEN_EVENT_OPENTAG :
+// echo "open tag: $this->_tag\n";
+// var_dump($this->_attrs);
+ $this->$method(false, $this->_tag, $this->_attrs);
+ break;
+ case PHPDOC_XMLTOKEN_EVENT_CLOSETAG :
+// echo "close tag: $this->_tag\n";
+ $this->$method(false, $this->_curthing);
+ break;
+ case PHPDOC_XMLTOKEN_EVENT_NOEVENTS :
+ if (!strlen($this->_curthing)) {
+ return;
+ }
+// echo "default: $this->_curthing\n";
+ $this->$method(false, $this->_curthing);
+ break;
+ case PHPDOC_XMLTOKEN_EVENT_DEF :
+// echo "<!definition: $this->_curthing\n";
+ $this->$method(false, $this->_curthing);
+ break;
+ case PHPDOC_XMLTOKEN_EVENT_PI :
+// echo "<?pi: $this->_curthing\n";
+// echo "<?pi attrs: $this->_attrs\n";
+ $this->$method(false, $this->_curthing, $this->_attrs);
+ break;
+ case PHPDOC_XMLTOKEN_EVENT_XML :
+// echo "<?xml: $this->_curthing\n";
+ $this->$method(false, $this->_curthing, $this->_attrs);
+ break;
+ case PHPDOC_XMLTOKEN_EVENT_CDATA :
+ case PHPDOC_XMLTOKEN_EVENT_IN_CDATA :
+// echo "cdata: $this->_curthing\n";
+ $this->$method(false, $this->_curthing);
+ break;
+ case PHPDOC_XMLTOKEN_EVENT_ENTITY :
+// echo "entity: $this->_curthing\n";
+ $this->$method(false, $this->_curthing, false, false, false);
+ break;
+ }
+ }
+ /**#@-*/
+
+ /**
+ * tell the parser's WordParser {@link $wp} to set up tokens to parse words by.
+ * tokens are word separators. In English, a space or punctuation are examples of tokens.
+ * In PHP, a token can be a ;, a parenthesis, or even the word "function"
+ * @param $value integer an event number
+ * @see WordParser
+ */
+
+ function configWordParser($e)
+ {
+ $this->_wp->setSeperator($this->tokens[($e + 100)]);
+ }
+ /**
+ * this function checks whether parameter $word is a token for pushing a new event onto the Event Stack.
+ * @return mixed returns false, or the event number
+ */
+
+ function checkEventPush($word,$pevent)
+ {
+ $e = false;
+ if (isset($this->pushEvent[$pevent]))
+ {
+ if (isset($this->pushEvent[$pevent][strtolower($word)]))
+ $e = $this->pushEvent[$pevent][strtolower($word)];
+ }
+ if ($e)
+ {
+ $this->_event_stack->pushEvent($e);
+ return $e;
+ } else {
+ return false;
+ }
+ }
+
+ /**
+ * this function checks whether parameter $word is a token for popping the current event off of the Event Stack.
+ * @return mixed returns false, or the event number popped off of the stack
+ */
+
+ function checkEventPop($word,$pevent)
+ {
+ if (!isset($this->popEvent[$pevent])) return false;
+ if (in_array(strtolower($word),$this->popEvent[$pevent]))
+ {
+ return $this->_event_stack->popEvent();
+ } else {
+ return false;
+ }
+ }
+
+ /**
+ * Initialize all parser state variables
+ * @param boolean true if we are highlighting an inline {@}source} tag's
+ * output
+ * @param false|string name of class we are going to start from
+ * @uses $_wp sets to a new {@link phpDocumentor_HighlightWordParser}
+ */
+ function setupStates($parsedata)
+ {
+ $this->_output = '';
+ $this->_line = '';
+ unset($this->_wp);
+ $this->_wp = new WordParser;
+ $this->_wp->setup($parsedata);
+ $this->_event_stack = @(new EventStack);
+ $this->_event_stack->popEvent();
+ $this->_event_stack->pushEvent(PHPDOC_XMLTOKEN_EVENT_NOEVENTS);
+ $this->_pv_linenum = null;
+ $this->_pv_next_word = false;
+ }
+
+ /**
+ * Initialize the {@link $tokenpushEvent, $wordpushEvent} arrays
+ */
+ function phpDocumentor_XML_Beautifier_Tokenizer()
+ {
+ $this->tokens[STATE_XMLTOKEN_CDATA] =
+ $this->tokens[STATE_XMLTOKEN_NOEVENTS] = array('<?xml', '<!--', '<![CDATA[', '<!', '</', '<?', '<');//, '&');
+ $this->tokens[STATE_XMLTOKEN_OPENTAG] = array("\n","\t"," ", '>', '/>');
+ $this->tokens[STATE_XMLTOKEN_XML] =
+ $this->tokens[STATE_XMLTOKEN_PI] = array("\n","\t"," ", '?>');
+ $this->tokens[STATE_XMLTOKEN_IN_CDATA] = array(']]>');
+ $this->tokens[STATE_XMLTOKEN_CLOSETAG] = array("\n",'>');
+ $this->tokens[STATE_XMLTOKEN_COMMENT] = array("\n",'-->');
+ $this->tokens[STATE_XMLTOKEN_DEF] = array("\n",']>','>');
+ $this->tokens[STATE_XMLTOKEN_ENTITY] = array("\n",';');
+ $this->tokens[STATE_XMLTOKEN_ATTRIBUTE] = array("\n",'"',"'",'>','/>');
+ $this->tokens[STATE_XMLTOKEN_DOUBLEQUOTE] = array("\n",'"');
+ $this->tokens[STATE_XMLTOKEN_SINGLEQUOTE] = array("\n","'");
+/**************************************************************/
+
+ $this->pushEvent[PHPDOC_XMLTOKEN_EVENT_NOEVENTS] =
+ array(
+ '<' => PHPDOC_XMLTOKEN_EVENT_OPENTAG,
+ '<?' => PHPDOC_XMLTOKEN_EVENT_PI,
+ '<?xml' => PHPDOC_XMLTOKEN_EVENT_XML,
+ '</' => PHPDOC_XMLTOKEN_EVENT_CLOSETAG,
+// '&' => PHPDOC_XMLTOKEN_EVENT_ENTITY,
+ '<![cdata[' => PHPDOC_XMLTOKEN_EVENT_IN_CDATA,
+ '<!--' => PHPDOC_XMLTOKEN_EVENT_COMMENT,
+ '<!' => PHPDOC_XMLTOKEN_EVENT_DEF,
+ );
+/**************************************************************/
+
+ $this->pushEvent[PHPDOC_XMLTOKEN_EVENT_OPENTAG] =
+ array(
+ " " => PHPDOC_XMLTOKEN_EVENT_ATTRIBUTE,
+ "\n" => PHPDOC_XMLTOKEN_EVENT_ATTRIBUTE,
+ );
+/**************************************************************/
+
+ $this->pushEvent[PHPDOC_XMLTOKEN_EVENT_ATTRIBUTE] =
+ array(
+ "'" => PHPDOC_XMLTOKEN_EVENT_SINGLEQUOTE,
+ '"' => PHPDOC_XMLTOKEN_EVENT_DOUBLEQUOTE,
+ );
+/**************************************************************/
+
+ $this->popEvent[PHPDOC_XMLTOKEN_EVENT_IN_CDATA] = array(']]>');
+/**************************************************************/
+
+ $this->pushEvent[PHPDOC_XMLTOKEN_EVENT_CDATA] =
+ array(
+ '<' => PHPDOC_XMLTOKEN_EVENT_OPENTAG,
+ '<?' => PHPDOC_XMLTOKEN_EVENT_PI,
+// '&' => PHPDOC_XMLTOKEN_EVENT_ENTITY,
+ '<!--' => PHPDOC_XMLTOKEN_EVENT_COMMENT,
+ '<!' => PHPDOC_XMLTOKEN_EVENT_DEF,
+ '<![cdata[' => PHPDOC_XMLTOKEN_EVENT_IN_CDATA,
+ );
+/**************************************************************/
+
+ $this->popEvent[PHPDOC_XMLTOKEN_EVENT_XML] =
+ $this->popEvent[PHPDOC_XMLTOKEN_EVENT_PI] = array('?>');
+/**************************************************************/
+
+ $this->popEvent[PHPDOC_XMLTOKEN_EVENT_ENTITY] = array(';');
+/**************************************************************/
+
+ $this->popEvent[PHPDOC_XMLTOKEN_EVENT_SINGLEQUOTE] = array("'");
+/**************************************************************/
+
+ $this->popEvent[PHPDOC_XMLTOKEN_EVENT_DOUBLEQUOTE] = array('"');
+/**************************************************************/
+
+ $this->popEvent[PHPDOC_XMLTOKEN_EVENT_OPENTAG] = array('>', '/>');
+/**************************************************************/
+
+ $this->popEvent[PHPDOC_XMLTOKEN_EVENT_CLOSETAG] = array('>');
+/**************************************************************/
+
+ $this->popEvent[PHPDOC_XMLTOKEN_EVENT_COMMENT] = array('-->');
+/**************************************************************/
+
+ $this->popEvent[PHPDOC_XMLTOKEN_EVENT_DEF] = array('>',']>');
+/**************************************************************/
+
+ $this->popEvent[PHPDOC_XMLTOKEN_EVENT_ATTRIBUTE] = array('>','/>');
+/**************************************************************/
+
+ $this->popEvent[PHPDOC_XMLTOKEN_EVENT_CDATA] =
+ array('</');
+/**************************************************************/
+ }
+
+ function getParserEventName ($value)
+ {
+ $lookup = array(
+ PHPDOC_XMLTOKEN_EVENT_NOEVENTS => "PHPDOC_XMLTOKEN_EVENT_NOEVENTS",
+ PHPDOC_XMLTOKEN_EVENT_PI => "PHPDOC_XMLTOKEN_EVENT_PI",
+ PHPDOC_XMLTOKEN_EVENT_OPENTAG => "PHPDOC_XMLTOKEN_EVENT_OPENTAG",
+ PHPDOC_XMLTOKEN_EVENT_ATTRIBUTE => "PHPDOC_XMLTOKEN_EVENT_ATTRIBUTE",
+ PHPDOC_XMLTOKEN_EVENT_CLOSETAG => "PHPDOC_XMLTOKEN_EVENT_CLOSETAG",
+ PHPDOC_XMLTOKEN_EVENT_ENTITY => "PHPDOC_XMLTOKEN_EVENT_ENTITY",
+ PHPDOC_XMLTOKEN_EVENT_COMMENT => "PHPDOC_XMLTOKEN_EVENT_COMMENT",
+ PHPDOC_XMLTOKEN_EVENT_SINGLEQUOTE => "PHPDOC_XMLTOKEN_EVENT_SINGLEQUOTE",
+ PHPDOC_XMLTOKEN_EVENT_DOUBLEQUOTE => "PHPDOC_XMLTOKEN_EVENT_DOUBLEQUOTE",
+ PHPDOC_XMLTOKEN_EVENT_CDATA => 'PHPDOC_XMLTOKEN_EVENT_CDATA',
+ PHPDOC_XMLTOKEN_EVENT_DEF => 'PHPDOC_XMLTOKEN_EVENT_DEF',
+ PHPDOC_XMLTOKEN_EVENT_XML => 'PHPDOC_XMLTOKEN_EVENT_XML',
+ PHPDOC_XMLTOKEN_EVENT_IN_CDATA => 'PHPDOC_XMLTOKEN_EVENT_IN_CDATA',
+ );
+ if (isset($lookup[$value]))
+ return $lookup[$value];
+ else return $value;
+ }
+}
+
+
+/** starting state */
+define("PHPDOC_XMLTOKEN_EVENT_NOEVENTS" , 1);
+/** currently in starting state */
+define("STATE_XMLTOKEN_NOEVENTS" , 101);
+
+/** used when a processor instruction is found */
+define("PHPDOC_XMLTOKEN_EVENT_PI" , 2);
+/** currently in processor instruction */
+define("STATE_XMLTOKEN_PI" , 102);
+
+/** used when an open <tag> is found */
+define("PHPDOC_XMLTOKEN_EVENT_OPENTAG" , 3);
+/** currently parsing an open <tag> */
+define("STATE_XMLTOKEN_OPENTAG" , 103);
+
+/** used when a <tag attr="attribute"> is found */
+define("PHPDOC_XMLTOKEN_EVENT_ATTRIBUTE" , 4);
+/** currently parsing an open <tag> */
+define("STATE_XMLTOKEN_ATTRIBUTE" , 104);
+
+/** used when a close </tag> is found */
+define("PHPDOC_XMLTOKEN_EVENT_CLOSETAG" , 5);
+/** currently parsing a close </tag> */
+define("STATE_XMLTOKEN_CLOSETAG" , 105);
+
+/** used when an &entity; is found */
+define("PHPDOC_XMLTOKEN_EVENT_ENTITY" , 6);
+/** currently parsing an &entity; */
+define("STATE_XMLTOKEN_ENTITY" , 106);
+
+/** used when a <!-- comment --> is found */
+define("PHPDOC_XMLTOKEN_EVENT_COMMENT" , 7);
+/** currently parsing a <!-- comment --> */
+define("STATE_XMLTOKEN_COMMENT" , 107);
+
+/** used when a <!-- comment --> is found */
+define("PHPDOC_XMLTOKEN_EVENT_SINGLEQUOTE" , 8);
+/** currently parsing a <!-- comment --> */
+define("STATE_XMLTOKEN_SINGLEQUOTE" , 108);
+
+/** used when a <!-- comment --> is found */
+define("PHPDOC_XMLTOKEN_EVENT_DOUBLEQUOTE" , 9);
+/** currently parsing a <!-- comment --> */
+define("STATE_XMLTOKEN_DOUBLEQUOTE" , 109);
+
+/** used when a <! is found */
+define("PHPDOC_XMLTOKEN_EVENT_DEF" , 10);
+/** currently parsing a <! */
+define("STATE_XMLTOKEN_DEF" , 110);
+
+/** used when a <! is found */
+define("PHPDOC_XMLTOKEN_EVENT_CDATA" , 11);
+/** currently parsing a <! */
+define("STATE_XMLTOKEN_CDATA" , 111);
+
+/** used when a <?xml is found */
+define("PHPDOC_XMLTOKEN_EVENT_XML" , 12);
+/** currently parsing a <?xml */
+define("STATE_XMLTOKEN_XML" , 112);
+
+/** used when a <![CDATA[ section is found */
+define('PHPDOC_XMLTOKEN_EVENT_IN_CDATA', 13);
+/** currently parsing a <![CDATA[ ]]> */
+define('STATE_XMLTOKEN_IN_CDATA', 113);
+
+/** do not remove, needed in plain renderer */
+define('PHPDOC_BEAUTIFIER_CDATA', 100000);
+?>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/XMLDocBookpeardoc2Converter.inc b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/XMLDocBookpeardoc2Converter.inc
new file mode 100755
index 00000000..f359d7d5
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/XMLDocBookpeardoc2Converter.inc
@@ -0,0 +1,1701 @@
+<?php
+/**
+ * Outputs documentation in XML DocBook format, in the version expected by
+ * pear.php.net's documentation team
+ *
+ * phpDocumentor :: automatic documentation generator
+ *
+ * PHP versions 4 and 5
+ *
+ * Copyright (c) 2002-2006 Gregory Beaver
+ *
+ * LICENSE:
+ *
+ * This library is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU Lesser General
+ * Public License as published by the Free Software Foundation;
+ * either version 2.1 of the License, or (at your option) any
+ * later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ * @package Converters
+ * @subpackage XMLDocBook
+ * @author Greg Beaver <cellog@php.net>
+ * @copyright 2002-2006 Gregory Beaver
+ * @license http://www.opensource.org/licenses/lgpl-license.php LGPL
+ * @version CVS: $Id: XMLDocBookpeardoc2Converter.inc 234423 2007-04-24 21:32:15Z ashnazg $
+ * @filesource
+ * @link http://www.phpdoc.org
+ * @link http://pear.php.net/PhpDocumentor
+ * @since 1.2
+ */
+/**
+ * XML DocBook converter.
+ * This Converter takes output from the {@link Parser} and converts it to DocBook
+ * output for PEAR documentation.
+ *
+ * This Converter differs from the parent DocBook Converter in that it does not
+ * recognize the possibility of procedural pages or of functions! All functions
+ * must be defined as static methods for namespace purposes. In addition, all
+ * constants and global variables for a package are grouped together as per
+ * peardoc2 requirements. Include statements are not documented. If you want
+ * to document a normal project, don't use the peardoc2 converter, use the
+ * DocBook converter.
+ * @package Converters
+ * @subpackage XMLDocBook
+ * @author Greg Beaver <cellog@php.net>
+ * @since 1.2
+ * @version $Id: XMLDocBookpeardoc2Converter.inc 234423 2007-04-24 21:32:15Z ashnazg $
+ */
+class XMLDocBookpeardoc2Converter extends Converter
+{
+ /**
+ * This converter knows about the new root tree processing
+ * In order to fix PEAR Bug #6389
+ * @var boolean
+ */
+ var $processSpecialRoots = true;
+ /**
+ * XMLDocBookConverter wants elements sorted by type as well as alphabetically
+ * @see Converter::$sort_page_contents_by_type
+ * @var boolean
+ */
+ var $sort_page_contents_by_type = true;
+ /** @var string */
+ var $outputformat = 'XML';
+ /** @var string */
+ var $name = 'DocBook/peardoc2';
+ /**
+ * indexes of elements by package that need to be generated
+ * @var array
+ */
+ var $leftindex = array('classes' => true, 'pages' => false, 'functions' => false, 'defines' => true, 'globals' => true);
+ /**
+ * whether a @see is going to be in the {@link $base_dir}, or in a package/subpackage subdirectory of $base_dir
+ * @var boolean
+ */
+ var $local = true;
+
+ /**
+ * name of current page being converted
+ * @var string
+ */
+ var $page;
+
+ /**
+ * path of current page being converted
+ * @var string
+ */
+ var $path;
+
+ /**
+ * name of current class being converted
+ * @var string
+ */
+ var $class;
+
+ /**
+ * template for the procedural page currently being processed
+ * @var Template
+ */
+ var $page_data;
+
+ /**
+ * output directory for the current procedural page being processed
+ * @var string
+ */
+ var $page_dir;
+
+ /**
+ * Constants, used for constants.tpl
+ * @var array
+ */
+ var $_peardoc2_constants = false;
+
+ /**
+ * Global Variables, used for globals.tpl
+ * @var array
+ */
+ var $_peardoc2_globals = false;
+
+ /**
+ * target directory passed on the command-line.
+ * {@link $targetDir} is malleable, always adding package/ and package/subpackage/ subdirectories onto it.
+ * @var string
+ */
+ var $base_dir;
+
+ /**
+ * output directory for the current class being processed
+ * @var string
+ */
+ var $class_dir;
+
+ /**
+ * template for the class currently being processed
+ * @var Template
+ */
+ var $class_data;
+
+ /**
+ * array of converted package page names.
+ * Used to link to the package page in the left index
+ * @var array Format: array(package => 1)
+ */
+ var $package_pages = array();
+
+ /**
+ * Contents of the packagename.xml file are stored in this template variable
+ * @var Smarty
+ */
+ var $packagexml;
+ /**
+ * controls formatting of parser informative output
+ *
+ * Converter prints:
+ * "Converting /path/to/file.php... Procedural Page Elements... Classes..."
+ * Since HTMLdefaultConverter outputs files while converting, it needs to send a \n to start a new line. However, if there
+ * is more than one class, output is messy, with multiple \n's just between class file output. This variable prevents that
+ * and is purely cosmetic
+ * @var boolean
+ */
+ var $juststarted = false;
+
+ /**
+ * contains all of the template procedural page element loop data needed for the current template
+ * @var array
+ */
+ var $current;
+
+ /**
+ * contains all of the template class element loop data needed for the current template
+ * @var array
+ */
+ var $currentclass;
+
+ /**
+ * Pass elements by package, simplifies generation of package.xml/category.xml
+ */
+ var $sort_absolutely_everything = true;
+ /**
+ * template options. Currently only 1 recognized option usepear
+ *
+ * usepear tells the getLink() function to return a package link to PEAR and PEAR_ERROR if possible, and to link directly
+ * to the fully-delimited link package#class.method or package#file.method in PEAR style, if possible, even if the
+ * package is not parsed. This will allow parsing of separate PEAR packages without parsing the entire thing at once!
+ * @var array
+ */
+ var $template_options = array('usepear' => false);
+
+ var $function_data = array();
+ var $method_data = array();
+ var $_write_constants_xml = array();
+ var $_write_globals_xml = array();
+ var $sourceloc = '';
+ /**
+ * peardoc2 Category
+ * @var string
+ */
+ var $category;
+ /**
+ * Used to re-format output so that it's easy for translators to handle
+ *
+ * @var XML_Beautifier|false
+ * @access private
+ */
+ var $_beautifier = false;
+
+ /**
+ * sets {@link $base_dir} to $targetDir
+ * @see Converter()
+ */
+ function XMLDocBookpeardoc2Converter(&$allp, &$packp, &$classes, &$procpages, $po, $pp, $qm, $targetDir, $templateDir, $title)
+ {
+ if (!class_exists('XML_Beautifier')) {
+ @include_once 'XML/Beautifier.php';
+ }
+ Converter::Converter($allp, $packp, $classes, $procpages,$po, $pp, $qm, $targetDir, $templateDir, $title);
+ if (class_exists('XML_Beautifier')) {
+ require_once 'phpDocumentor/Converters/XML/DocBook/peardoc2/Beautifier.php';
+ $this->_beautifier = new phpDocumentor_peardoc2_XML_Beautifier;
+ $this->_beautifier->setOption('indent', ' ');
+ }
+ $this->base_dir = $targetDir;
+ }
+
+ /**
+ * do that stuff in $template_options
+ */
+ function &getLink($expr, $package = false, $packages = false)
+ {
+ return Converter::getLink($expr, $package, $packages);
+ }
+
+ function unmangle($s,$sourcecode)
+ {
+ return '<programlisting role="php"><![CDATA[
+'.$sourcecode.']]></programlisting>';
+ }
+
+ /**
+ * Writes a file to target dir, beautify any .xml files first
+ * @param string filename
+ * @param string file contents
+ * @param boolean true if the data is binary and not text
+ */
+ function writeFile($file,$data,$binary = false)
+ {
+ if ($this->_beautifier && substr($file, -4) == '.xml') {
+ $ret = $this->_beautifier->formatString($data);
+ if (PEAR::isError($ret)) {
+ addWarning(PDERROR_BEAUTIFYING_FAILED, $ret->getMessage());
+ $ret = $data;
+ }
+ $data = $ret;
+ }
+ return parent::writeFile($file, $data, $binary);
+ }
+
+ /**
+ * Used to convert the {@}example} inline tag in a docblock.
+ *
+ * By default, this just wraps ProgramExample
+ * @see XMLDocBookpeardoc2Converter::exampleProgramExample
+ * @param string
+ * @param boolean true if this is to highlight a tutorial <programlisting>
+ * @return string
+ */
+ function exampleProgramExample($example, $tutorial = false, $inlinesourceparse = null/*false*/,
+ $class = null/*false*/, $linenum = null/*false*/, $filesourcepath = null/*false*/)
+ {
+ return '<example><title>Example</title><programlisting role="php"><![CDATA[' .
+ $example . ']]></programlisting></example>';
+ $this->ProgramExample($example, $tutorial, $inlinesourceparse, $class, $linenum, $filesourcepath)
+ . '</example>';
+ }
+
+ function writeExample($title, $path, $source)
+ {
+ $this->_save_example = array($title, $source);
+ }
+
+ function getExampleLink($unused, $title)
+ {
+ $source = $this->_save_example[1];
+ return '<para><example><title>' . $title . '</title>' . $source . '</example></para>';
+ }
+
+ function type_adjust($typename)
+ {
+ if (isset($this->template_options['typechanging'][trim($typename)]))
+ return $this->template_options['typechanging'][trim($typename)];
+ $a = $this->getLink($typename);
+ if (is_object($a))
+ {
+ if (phpDocumentor_get_class($a) == 'classlink')
+ return '<classname>'.$typename.'</classname>';
+ if (phpDocumentor_get_class($a) == 'functionlink' || phpDocumentor_get_class($a) == 'methodlink')
+ return '<function>'.$typename.'</function>';
+ if (phpDocumentor_get_class($a) == 'definelink')
+ return '<constant>'.$typename.'</constant>';
+ if (phpDocumentor_get_class($a) == 'varlink')
+ return '<varname>'.$typename.'</varname>';
+ }
+ return $typename;
+ }
+
+ /**
+ * Writes out the template file of {@link $class_data} and unsets the template to save memory
+ * @see registerCurrentClass()
+ * @see parent::endClass()
+ * @todo move class summary into an array to be written out at the end
+ * of parsing each package
+ */
+ function endClass()
+ {
+ $a = '../';
+ if (!empty($this->subpackage)) $a .= '../';
+ if ($this->juststarted)
+ {
+ $this->juststarted = false;
+ phpDocumentor_out("\n");
+ flush();
+ }
+ foreach($this->method_data as $func)
+ {
+ $func[0]->assign("phpdocversion",PHPDOCUMENTOR_VER);
+ $func[0]->assign("phpdocwebsite",PHPDOCUMENTOR_WEBSITE);
+ $this->setTargetDir($this->base_dir . PATH_DELIMITER . strtolower($this->category) . PATH_DELIMITER . strtolower($this->class_dir . PATH_DELIMITER . str_replace(array('_','.'),array('-','--'),$this->class)));
+ $this->writefile(strtolower($func[1] ). '.xml','<!-- $' . "Revision$ -->\n" . $func[0]->fetch('method.tpl'));
+ }
+ // code below is in packagename.xml handling, see Output()
+/* $this->setTargetDir($this->base_dir . PATH_DELIMITER . strtolower($this->category) . PATH_DELIMITER . strtolower($this->class_dir));
+ $this->writefile(str_replace(array('_','.'),array('-','--'),strtolower($this->class)) . '.xml',$this->class_data->fetch('class.tpl'));*/
+ unset($this->class_data);
+ }
+
+ function addSummaryToPackageXml($template_output)
+ {
+ $this->packagexml->append('ids',$template_output);
+ }
+
+ /**
+ * @param parserClass|false $element is false if this is the end of all conversion
+ */
+ function flushPackageXml($element)
+ {
+ if (isset($this->packagexml))
+ {
+ if (!$element || $element->docblock->package != $this->package) // finished with package
+ {
+ if (isset($this->_write_constants_xml[$this->category][$this->package]) &&
+ $this->_write_constants_xml[$this->category][$this->package])
+ {
+ $this->packagexml->append('ids',
+ '&package.' .
+ strtolower($this->category.'.' .
+ str_replace(array('_','.'),array('-','--'),$this->package).'.constants;'));
+ $this->_write_constants_xml[$this->category][$this->package] = false;
+ }
+ if (isset($this->_write_globals_xml[$this->category][$this->package]) &&
+ $this->_write_globals_xml[$this->category][$this->package])
+ {
+ $this->packagexml->append('ids',
+ '&package.'.strtolower($this->category.'.' .
+ str_replace(array('_','.'),array('-','--'),$this->package).'.globals;'));
+ $this->_write_globals_xml[$this->category][$this->package] = false;
+ }
+ $this->setTargetDir($this->base_dir . PATH_DELIMITER . strtolower($this->category));
+ $this->writefile(str_replace('_','-',strtolower($this->package)).'.xml',
+ '<!-- $' . "Revision$ -->\n" . $this->packagexml->fetch('package.tpl'));
+ $this->packagexml->clear_all_assign();
+ if ($element) {
+ $this->packagexml->assign('package',$element->docblock->package);
+ $this->packagexml->assign('ids',array());
+ $this->packagexml->assign('id',$this->getId($element, true));
+ }
+ }
+ } else
+ {
+ $this->packagexml = $this->newSmarty();
+ $this->packagexml->assign('package',$element->docblock->package);
+ $this->packagexml->assign('ids',array());
+ $this->packagexml->assign('id',$this->getId($element, true));
+ }
+ }
+
+ /**
+ * @param string
+ * @param string
+ * @return string <ulink url="'.$link.'">'.$text.'</ulink>
+ */
+ function returnLink($link,$text)
+ {
+ return '<ulink url="'.$link.'">'.$text.'</ulink>';
+ }
+
+ function makeLeft()
+ {
+ }
+
+ /**
+ * Does nothing
+ */
+ function formatPkgIndex()
+ {
+ }
+
+ /**
+ * Does nothing
+ */
+ function formatIndex()
+ {
+ }
+
+ /**
+ * Does nothing
+ */
+ function writeNewPPage($key)
+ {
+ }
+
+ /**
+ * Does nothing
+ */
+ function writeSource()
+ {
+ }
+
+ /**
+ * Creates package/lang/categoryname/packagename.xml for each package
+ */
+ function formatLeftIndex()
+ {
+ $this->makeLeft();
+ }
+
+ /**
+ * This function takes an {@link abstractLink} descendant and returns an html link
+ *
+ * @param abstractLink a descendant of abstractlink should be passed, and never text
+ * @param string text to display in the link
+ * @param boolean this parameter is not used, and is deprecated
+ * @param boolean determines whether the returned text is enclosed in an <link> tag
+ */
+ function returnSee(&$element, $eltext = false, $local = true, $with_a = true)
+ {
+ if (!$element) return false;
+ if (!$eltext)
+ {
+ $eltext = '';
+ switch($element->type)
+ {
+ case 'tutorial' :
+ $eltext = $element->title;
+ break;
+ case 'class' :
+ $eltext = '<classname>'.$element->name.'</classname>';
+ break;
+ case 'method' :
+ $eltext .= '<function>';
+ case 'var' :
+ if ($element->type == 'var') $eltext .= '<varname>';
+ $eltext .= $element->class.'::';
+ case 'page' :
+ case 'define' :
+ if ($element->type == 'define')
+ $eltext .= '<constant>';
+ case 'function' :
+ if ($element->type == 'function')
+ $eltext .= '<function>';
+ case 'global' :
+ default :
+ $eltext .= $element->name;
+ if ($element->type == 'function' || $element->type == 'method') $eltext .= '</function>';
+ if ($element->type == 'var') $eltext .= '</varname>';
+ if ($element->type == 'define') $eltext .= '</constant>';
+ break;
+ }
+ } elseif (!is_object($element)) {
+ return false;
+ } elseif ($element->type == 'method')
+ {
+ $eltext = str_replace($element->name . '()', $element->name, $eltext);
+ }
+
+ if ($element->type == 'page' || $element->type == 'function' || $element->type == 'var')
+ { // we ignore all procedural pages, instead, constant, function and
+ // global variable pages are output
+ return $eltext;
+ }
+ if ($element->type == 'class')
+ {
+ return '<link linkend="'.$this->getId($element).'-summary">'.$eltext.'</link>';
+ }
+ return '<link linkend="'.$this->getId($element).'">'.$eltext.'</link>';
+ }
+
+ /**
+ * Get the id value needed to allow linking
+ * @param mixed descendant of parserElement or parserData/parserPage
+ * @param boolean true to return the id for the package page
+ * @see parserElement, parserData, parserPage
+ * @return string the id value for this element type
+ */
+ function getId(&$el, $returnpackage = false)
+ {
+ if (phpDocumentor_get_class($el) == 'parserdata')
+ {
+ $element = $this->addLink($el->parent);
+ $elp = $el->parent;
+ } elseif (!is_a($el,'abstractlink'))
+ {
+ $elp = $el;
+ $element = $this->addLink($el);
+ } else $element = $el;
+ $a = '';
+ if (!empty($element->subpackage))
+ {
+ $a = str_replace(array('_','.'),array('-','--'),$element->subpackage).'.';
+ }
+ if ($returnpackage) return 'package.'.strtolower($element->category.'.'.str_replace(array('_','.'),array('-','--'),$element->package));
+ switch ($element->type)
+ {
+ case 'page' :
+ return 'package.'.strtolower($element->category.'.'.str_replace(array('_','.'),array('-','--'),$element->package).'.'.$a.$element->fileAlias);
+ break;
+ case 'define' :
+ return 'package.'.strtolower($element->category.'.'.str_replace(array('_','.'),array('-','--'),$element->package).'.constants.details.'.$element->fileAlias);
+ break;
+ case 'global' :
+ return 'package.'.strtolower($element->category.'.'.str_replace(array('_','.'),array('-','--'),$element->package).'.globals.details.'.$element->fileAlias);
+ break;
+ case 'class' :
+ return 'package.'.strtolower($element->category.'.'.str_replace(array('_','.'),array('-','--'),$element->package).'.'.$a.str_replace(array('_','.'),array('-','--'),$element->name));
+ break;
+ case 'function' :
+ return 'package.'.strtolower($element->category.'.'.str_replace(array('_','.'),array('-','--'),$element->package).'.'.$a.$element->fileAlias.'.'.str_replace('_','-',$element->name));
+ break;
+ case 'method' :
+ return 'package.'.strtolower($element->category.'.'.str_replace(array('_','.'),array('-','--'),$element->package).'.'.$a.str_replace(array('_','.'),array('-','--'),$element->class).'.'.str_replace('_','-',$element->name));
+ break;
+ case 'var' :
+ return 'package.'.strtolower($element->category.'.'.str_replace(array('_','.'),array('-','--'),$element->package).'.'.$a.str_replace(array('_','.'),array('-','--'),$element->class).'-summary.vars.'.str_replace(array('$','_'),array('var--','-'),$element->name));
+ break;
+ case 'tutorial' :
+ return 'package.'.strtolower($element->category.'.'.str_replace(array('_','.'),array('-','--'),$element->package).'.'.$a.str_replace(array('_','.'),array('-','--'),$element->name)).'-tutorial';
+ break;
+ }
+ }
+
+ /**
+ * Create errors.html template file output
+ *
+ * This method takes all parsing errors and warnings and spits them out ordered by file and line number.
+ * @global ErrorTracker We'll be using it's output facility
+ */
+ function ConvertErrorLog()
+ {
+ global $phpDocumentor_errors;
+ $allfiles = array();
+ $files = array();
+ $warnings = $phpDocumentor_errors->returnWarnings();
+ $errors = $phpDocumentor_errors->returnErrors();
+ $template = &$this->newSmarty();
+ foreach($warnings as $warning)
+ {
+ $file = '##none';
+ $linenum = 'Warning';
+ if ($warning->file)
+ {
+ $file = $warning->file;
+ $allfiles[$file] = 1;
+ $linenum .= ' on line '.$warning->linenum;
+ }
+ $files[$file]['warnings'][] = array('name' => $linenum, 'listing' => $warning->data);
+ }
+ foreach($errors as $error)
+ {
+ $file = '##none';
+ $linenum = 'Error';
+ if ($error->file)
+ {
+ $file = $error->file;
+ $allfiles[$file] = 1;
+ $linenum .= ' on line '.$error->linenum;
+ }
+ $files[$file]['errors'][] = array('name' => $linenum, 'listing' => $error->data);
+ }
+ $i=1;
+ $af = array();
+ foreach($allfiles as $file => $num)
+ {
+ $af[$i++] = $file;
+ }
+ $allfiles = $af;
+ usort($allfiles,'strnatcasecmp');
+ $allfiles[0] = "Post-parsing";
+ foreach($allfiles as $i => $a)
+ {
+ $allfiles[$i] = array('file' => $a);
+ }
+ $out = array();
+ foreach($files as $file => $data)
+ {
+ if ($file == '##none') $file = 'Post-parsing';
+ $out[$file] = $data;
+ }
+ $template->assign("files",$allfiles);
+ $template->assign("all",$out);
+ $template->assign("title","phpDocumentor Parser Errors and Warnings");
+ $this->setTargetDir($this->base_dir);
+ $this->writefile("errors.html",$template->fetch('errors.tpl'));
+ unset($template);
+ phpDocumentor_out("\n\nTo view errors and warnings, look at ".$this->base_dir. PATH_DELIMITER . "errors.html\n");
+ flush();
+ }
+
+ function postProcess($text)
+ {
+ return str_replace("'", '&apos;', htmlentities($text));
+ }
+
+ function prepareDocBlock(&$element, $nopackage = true)
+ {
+ $a = new parserStringWithInlineTags;
+ $a->add('no exceptions thrown');
+ if (!$element->docblock->getKeyword('throws')) $element->docblock->addKeyword('throws',$a);
+ $tags = parent::prepareDocBlock($element,
+ array('staticvar' => 'note','deprec' => 'deprecated',
+ 'abstract' => 'abstract','TODO' => 'note', 'link' => 'see',
+ 'uses' => 'see', 'usedby' => 'see', 'tutorial' => 'see',
+ 'return' => 'returns', 'access' => false), $nopackage);
+ $ret = array();
+ foreach($tags['tags'] as $tag)
+ {
+ if ($tag['keyword'] == 'return')
+ {
+ // hack because stupid Converter isn't doing its job
+ $tag['keyword'] = 'returns';
+ }
+ $ret[$tag['keyword']][] = $tag;
+ }
+ $tags['tags'] = $ret;
+ $tags['sdesc'] = $this->wordwrap($tags['sdesc']);
+ return $tags;
+ }
+
+ function getTutorialId($package,$subpackage,$tutorial,$id,$category)
+ {
+ $subpackage = (empty($subpackage) ? '' : '.'.$subpackage);
+ $id = (empty($id) ? '' : '.'.$id);
+ return 'package.'.strtolower($category.'.'.$package.$subpackage.str_replace(array('_','.'),array('-','--'),$tutorial).$id);
+ }
+
+
+ /**
+ * Retrieve a Converter-specific anchor to a segment of a source code file
+ * parsed via a {@tutorial tags.filesource.pkg} tag.
+ *
+ * NOTE: unused
+ * @param string full path to source file
+ * @param string name of anchor
+ * @param string link text, if this is a link
+ * @param boolean returns either a link or a destination based on this
+ * parameter
+ * @return string link to an anchor, or the anchor
+ */
+ function getSourceAnchor($sourcefile,$anchor,$text = '',$link = false)
+ {
+ return '';
+ }
+
+ function Br($input)
+ {
+ return "$input\n";
+ }
+
+ function getCData($value)
+ {
+ return '<![CDATA['.$value.']]>';
+ }
+
+ function ProgramExample($listing, $tutorial = false, $inlinesourceparse = null/*false*/,
+ $class = null/*false*/, $linenum = null/*false*/, $filesourcepath = null/*false*/, $origsource = null)
+ {
+ if ($origsource !== null) {
+ $listing = $origsource;
+ }
+ if (!tokenizer_ext)
+ {
+ $listing = $this->getCData($listing);
+ }
+ return '<programlisting role="php">' . $this->getCData($listing) . '</programlisting>';
+ }
+
+ /**
+ * Does nothing - use tutorials for DocBook
+ * @param parserPackagePage
+ */
+ function convertPackagePage(&$element)
+ {
+ }
+
+ /**
+ * Convert tutorials for output
+ * @param parserTutorial
+ */
+ function convertTutorial(&$element)
+ {
+ $template = &parent::convertTutorial($element);
+ phpDocumentor_out("\n");
+ flush();
+ $x = $element->Convert($this,false);
+ if ($element->ini)
+ { // add child tutorial list to the tutorial through a slight hack :)
+ $subtutorials = '';
+ $b = '';
+ if (!empty($element->subpackage)) $b = '.'.$element->subpackage;
+ foreach($element->ini['Linked Tutorials'] as $child)
+ {
+ $subtutorials .= ' &'.$element->category.'.'.$element->package.$b.'.'.str_replace(array('_','.'),array('-','--'),$child).'-'.$element->tutorial_type."-tutorial;\n";
+ }
+ $x = str_replace('</refsect1></refentry>','</refsect1>
+ <refsect1>
+ <title>Related Docs</title>
+ <para>
+'.$subtutorials.
+' </para>
+ </refsect1></refentry>',$x);
+ }
+ $template->assign('contents',$x);
+ $contents = $template->fetch('tutorial.tpl');
+ $a = '';
+ if ($element->subpackage) $a = PATH_DELIMITER . $element->subpackage;
+ phpDocumentor_out("\n");
+ flush();
+ $this->setTargetDir($this->base_dir . PATH_DELIMITER . str_replace(array('_','.'),array('-','--'),strtolower($element->category))
+ . PATH_DELIMITER . strtolower(str_replace(array('_','.'),array('-','--'),$element->package) . $a));
+ $this->writeFile(str_replace(array('_','.'),array('-','--'),strtolower($element->name)).'-tutorial.xml',
+ '<!-- $' . "Revision$ -->\n" . $contents);
+ }
+
+ /**
+ * Does nothing in this converter
+ * @param parserVar
+ */
+ function convertVar(&$element)
+ {
+ return;
+ $docblock = $this->prepareDocBlock($element);
+ $b = 'mixed';
+ if ($element->docblock->var)
+ {
+ $b = $element->docblock->var->converted_returnType;
+ }
+// var_dump($this->getFormattedOverrides($element));
+ if (isset($this->template_options['separatepage']) && $this->template_options['separatepage'])
+ $this->class_summary->append('vars',array('sdesc' => $docblock['sdesc'],
+ 'desc' => $docblock['desc'],
+ 'tags' => $docblock['tags'],
+ 'var_name' => $this->type_adjust($element->getName()),
+ 'var_default' => htmlspecialchars($element->getValue()),
+ 'var_type' => $b,
+ 'var_overrides' => $this->getFormattedOverrides($element),
+ 'line_number' => $element->getLineNumber(),
+ 'id' => $this->getId($element)));
+ else
+ $this->class_data->append('vars',array('sdesc' => $docblock['sdesc'],
+ 'desc' => $docblock['desc'],
+ 'tags' => $docblock['tags'],
+ 'var_name' => $this->type_adjust($element->getName()),
+ 'var_default' => htmlspecialchars($element->getValue()),
+ 'var_type' => $b,
+ 'var_overrides' => $this->getFormattedOverrides($element),
+ 'line_number' => $element->getLineNumber(),
+ 'id' => $this->getId($element)));
+ }
+
+ /**
+ * Converts class for template output
+ * @param parserClass
+ * @uses flushPackageXml() creates packagename.xml file when all classes in
+ * a package have been converted
+ */
+ function convertClass(&$element)
+ {
+ $this->flushPackageXml($element);
+ parent::convertClass($element);
+ $docblock = $this->prepareDocBlock($element);
+ $this->method_data = array();
+ $this->class_dir = str_replace(array('_','.'),array('-','--'),$element->docblock->package);
+ $this->package = $element->docblock->package;
+ $this->category = strtolower($element->docblock->category);
+ if (!empty($element->docblock->subpackage)) $this->class_dir .= PATH_DELIMITER . $element->docblock->subpackage;
+ $docblock = $this->prepareDocBlock($element,false);
+ $this->class_data->assign("sdesc",$docblock['sdesc']);
+ $this->class_data->assign("desc",$docblock['desc']);
+ $this->class_data->assign("tags",$docblock['tags']);
+
+ $this->class_data->assign("source_location",$element->getSourceLocation($this,$this->template_options['usepear']));
+ $this->class_data->assign("id",$this->getId($element));
+ $this->class_data->assign("method_ids",array());
+ $this->left[$this->package][] = array('link' => $this->getId($element).'-summary');
+ if ($t = $element->getTutorial())
+ {
+ $this->class_data->append("method_ids",$this->getId($t));
+ }
+
+ if (isset($this->template_options['separatepage']) && $this->template_options['separatepage'])
+ {
+ $this->class_summary = &$this->newSmarty(true);
+ if ($t = $element->getTutorial())
+ {
+ $this->class_summary->assign("tutorial",$this->returnSee($t));
+ }
+
+ $this->class_summary->assign("class_name",$this->type_adjust($element->getName()));
+ $this->class_summary->assign("sdesc",$docblock['sdesc']);
+ $this->class_summary->assign("desc",$docblock['desc']);
+ $this->class_summary->assign("tags",$docblock['tags']);
+ $this->class_summary->assign("vars",array());
+ $this->class_summary->assign("methods",array());
+ $this->class_summary->assign("package",$element->docblock->package);
+
+ $this->class_summary->assign("children", $this->generateChildClassList($element));
+ $this->class_summary->assign("class_tree", $this->generateFormattedClassTree($element));
+ $this->class_summary->assign("conflicts", $this->getFormattedConflicts($element,"classes"));
+
+ $this->class_summary->assign("source_location",$element->getSourceLocation($this,$this->template_options['usepear']));
+ $this->class_summary->assign("id",$this->getId($element).'-summary');
+ $this->class_data->append("method_ids",$this->getId($element).'.'.strtolower(str_replace('_','-',$element->getName())).'-summary');
+ $inherited_methods = $this->getFormattedInheritedMethods($element);
+ if (!empty($inherited_methods))
+ {
+ $this->class_summary->assign("imethods",$inherited_methods);
+ }
+ $inherited_vars = $this->getFormattedInheritedVars($element);
+ // variables are irrelevant in peardoc2
+ if (false)//!empty($inherited_vars))
+ {
+ $this->class_summary->assign("ivars",$inherited_vars);
+ }
+ $this->addSummaryToPackageXml($this->class_summary->fetch('class_summary.tpl'));
+ }
+ $this->sourceloc = $element->getSourceLocation($this,$this->template_options['usepear']);
+ }
+
+ /**
+ * Converts method for template output
+ * @see prepareDocBlock(), parserMethod::getFunctionCall(), getFormattedDescMethods(), getFormattedOverrides()
+ * @param parserMethod
+ */
+ function convertMethod(&$element)
+ {
+ $docblock = $this->prepareDocBlock($element);
+ $returntype = 'void';
+ if ($element->docblock->return)
+ {
+ $a = $element->docblock->return->Convert($this);
+ $returntype = $element->docblock->return->converted_returnType;
+ if ($returntype != $element->docblock->return->returnType)
+ {
+ $returntype = "<replaceable>$returntype</replaceable>";
+ }
+ }
+ $params = array();
+ if (count($element->docblock->params))
+ foreach($element->docblock->params as $param => $val)
+ {
+ $a = $val->Convert($this);
+ $b = explode(' ',$a);
+ $c = '';
+ foreach($b as $blah) {
+ if (!empty($c)) {
+ $c .= ' ';
+ }
+ $c .= str_replace(array('true', 'false', 'null'), array('&true;', '&false;', '&null;'), $blah);
+ }
+ $params[$param] = array("var" => $param,"datatype" => str_replace(array('true', 'false', 'null'), array('&true;', '&false;', '&null;'),
+ $val->returnType), "cdatatype" => $val->converted_returnType,"data" => $this->wordwrap($c));
+ }
+
+ $call = $element->getIntricateFunctionCall($this, $params);
+ if (isset($call['params']))
+ {
+ foreach($call['params'] as $i => $param)
+ {
+ if (!is_string($call['params'][$i]['default']))
+ {
+ continue;
+ }
+ $call['params'][$i]['default'] = str_replace(array('true', 'false', 'null'), array('&true;', '&false;', '&null;'), $param['default']);
+ }
+ }
+ $this->packagexml->append('ids','&'.$this->getId($element).';');
+ $this->class_data->append('method_ids',$this->getId($element));
+ $this->class_summary->append('methods',array('id' => $this->getId($element),
+ 'sdesc' => $docblock['sdesc'],
+ 'desc' => $docblock['desc'],
+ 'tags' => $docblock['tags'],
+ 'is_constructor' => $element->isConstructor,
+ 'function_name' => $element->getName(),
+ 'function_return' => $returntype,
+ 'function_call' => $call,
+ 'descmethod' => $this->getFormattedDescMethods($element),
+ 'method_overrides' => $this->getFormattedOverrides($element),
+ 'line_number' => $element->getLineNumber(),
+ 'params' => $params));
+ $this->method_data[$i = count($this->method_data) - 1][0] = &$this->newSmarty(true);
+ $this->method_data[$i][1] = str_replace(array('_','.'),array('-','--'),$element->getName());
+ $this->method_data[$i][0]->assign('class',$this->class);
+ $this->method_data[$i][0]->assign('source_location',$this->returnSee($this->getLink(basename($this->curpage->getFile())),$this->sourceloc));
+ $this->method_data[$i][0]->assign('sdesc',$docblock['sdesc']);
+ $this->method_data[$i][0]->assign('desc',$docblock['desc']);
+ $this->method_data[$i][0]->assign('tags',$docblock['tags']);
+ $this->method_data[$i][0]->assign('function_name',$element->getName());
+ $this->method_data[$i][0]->assign('function_return',$returntype);
+ $this->method_data[$i][0]->assign('function_call',$call);
+ $this->method_data[$i][0]->assign('descmethod',$this->getFormattedDescMethods($element));
+ $this->method_data[$i][0]->assign('method_overrides',$this->getFormattedOverrides($element));
+ $this->method_data[$i][0]->assign('params',$params);
+ $this->method_data[$i][0]->assign('id',$this->getId($element));
+ }
+
+ /**
+ * Converts function for template output - does nothing in peardoc2!
+ * @param parserFunction
+ */
+ function convertFunction(&$element)
+ {
+/* parent::convertFunction($element);
+ $docblock = $this->prepareDocBlock($element);
+ $fname = $element->getName();
+ $params = array();
+ if (count($element->docblock->params))
+ foreach($element->docblock->params as $param => $val)
+ {
+ $a = $val->Convert($this);
+ $params[$param] = array("var" => $param,"datatype" => $val->converted_returnType,"data" => $a);
+ }
+ $returntype = 'void';
+ if ($element->docblock->return)
+ {
+ $a = $element->docblock->return->Convert($this);
+ $returntype = $element->docblock->return->converted_returnType;
+ }
+
+ $this->page_data->append("function_ids",$this->getId($element));
+ $this->page_summary->append("function_ids",$this->getId($element));
+ $this->page_summary->append('functions',array('id' => $this->getId($element),
+ 'sdesc' => $docblock['sdesc'],
+ 'desc' => $docblock['desc'],
+ 'tags' => $docblock['tags'],
+ 'function_name' => $element->getName(),
+ 'line_number' => $element->getLineNumber(),
+ 'function_return' => $returntype,
+ 'function_call' => $element->getIntricateFunctionCall($this,$params),
+ 'function_conflicts' => $this->getFormattedConflicts($element,'functions'),
+ 'params' => $params));
+ $this->function_data[$i = count($this->function_data) - 1][0] = $this->newSmarty(true);
+ $this->function_data[$i][1] = $element->getName();
+ $this->function_data[$i][0]->assign('sdesc',$docblock['sdesc']);
+ $this->function_data[$i][0]->assign('desc',$docblock['desc']);
+ $this->function_data[$i][0]->assign('tags',$docblock['tags']);
+ $this->function_data[$i][0]->assign('function_name',$fname);
+ $this->function_data[$i][0]->assign('line_number',$element->getLineNumber());
+ $this->function_data[$i][0]->assign('function_return',$returntype);
+ $this->function_data[$i][0]->assign('function_call',$element->getIntricateFunctionCall($this,$params));
+ $this->function_data[$i][0]->assign('function_conflicts',$this->getFormattedConflicts($element,"functions"));
+ $this->function_data[$i][0]->assign('params',$params);
+ $this->function_data[$i][0]->assign('source_location',$this->returnSee($this->getLink(basename($this->curpage->getFile())),$this->sourceloc));
+ $this->function_data[$i][0]->assign('id',$this->getId($element));*/
+ }
+
+ /**
+ * Converts include elements for template output
+ *
+ * Completely ignored by this converter
+ * @param parserInclude
+ */
+ function convertInclude(&$element)
+ {
+/* parent::convertInclude($element, array('include_file' => '-'.strtr($element->getValue(),array('"' => '', "'" => '','.' => '-'))));
+ $docblock = $this->prepareDocBlock($element);
+ $per = $this->getIncludeValue($element->getValue(), $element->getPath());
+ $this->page_summary->append('includes',array('sdesc' => $docblock['sdesc'],
+ 'desc' => $docblock['desc'],
+ 'tags' => $docblock['tags'],
+ 'utags' => $docblock['utags'],
+ 'include_name' => $element->getName(),
+ 'include_value' => $per,
+ 'line_number' => $element->getLineNumber(),
+ 'include_file' => '-'.strtr($element->getValue(),array('"' => '', "'" => '','.' => '-'))));*/
+ }
+
+ /**
+ * Converts defines for template output
+ * @see prepareDocBlock(), getFormattedConflicts()
+ * @param parserDefine
+ */
+ function convertDefine(&$element)
+ {
+ $docblock = $this->prepareDocBlock($element);
+ $this->_appendDefines(array('sdesc' => $docblock['sdesc'],
+ 'desc' => $docblock['desc'],
+ 'tags' => $docblock['tags'],
+ 'name' => $this->postProcess($element->getName()),
+ 'value' => $this->postProcess($element->getValue()),
+ 'conflicts' => $this->getFormattedConflicts($element,"defines"),
+ 'line_number' => $element->getLineNumber(),
+ 'id' => $this->getId($element)));
+ }
+
+ /**
+ * Append the constant information to the Smarty information
+ *
+ * Uses category, package, and current file to organize constants defined
+ * in a package for the constants.xml output file
+ * @param array
+ * @uses $_peardoc2_constants appends $define to them
+ * @access private
+ */
+ function _appendDefines($define)
+ {
+ if (!isset($this->_peardoc2_constants[$this->category][$this->package][$this->sourceloc]))
+ {
+ $this->_peardoc2_constants[$this->category][$this->package][$this->sourceloc]['name'] =
+ $this->sourceloc;
+ $this->_peardoc2_constants[$this->category][$this->package][$this->sourceloc]['page'] =
+ $this->page;
+ }
+ $this->_write_constants_xml[$this->category][$this->package] = true;
+ $this->_peardoc2_constants[$this->category][$this->package][$this->sourceloc]['defines'][] = $define;
+ }
+
+ /**
+ * Converts global variables for template output
+ * @param parserGlobal
+ * @see prepareDocBlock(), getFormattedConflicts()
+ */
+ function convertGlobal(&$element)
+ {
+ $docblock = $this->prepareDocBlock($element);
+ $value = $this->getGlobalValue($element->getValue());
+ if ($value == $element->getValue())
+ {
+ $value = $this->ProgramExample($value);
+ } else
+ {
+ $value = $this->getGlobalValue('<![CDATA[' .$element->getValue() . ']]>');
+ }
+ $this->_appendGlobals(array('sdesc' => $docblock['sdesc'],
+ 'desc' => $docblock['desc'],
+ 'tags' => $docblock['tags'],
+ 'name' => $this->postProcess($element->getName()),
+ 'link' => $element->getName(),
+ 'value' => $value,
+ 'type' => $element->getDataType($this),
+ 'line_number' => $element->getLineNumber(),
+ 'conflicts' => $this->getFormattedConflicts($element,"global variables"),
+ 'id' => $this->getId($element)));
+ }
+
+ /**
+ * Append the global variable information to the Smarty information
+ *
+ * Uses category, package, and current file to organize globals defined
+ * in a package for the globals.xml output file
+ * @param array
+ * @uses $_peardoc2_globals appends $global to them
+ * @access private
+ */
+ function _appendGlobals($global)
+ {
+ if (!isset($this->_peardoc2_globals[$this->category][$this->package][$this->sourceloc]))
+ {
+ $this->_peardoc2_globals[$this->category][$this->package][$this->sourceloc]['name'] =
+ $this->sourceloc;
+ $this->_peardoc2_globals[$this->category][$this->package][$this->sourceloc]['page'] =
+ $this->page;
+ }
+ $this->_write_globals_xml[$this->category][$this->package] = true;
+ $this->_peardoc2_globals[$this->category][$this->package][$this->sourceloc]['globals'][] = $global;
+ }
+
+ /**
+ * converts procedural pages for template output
+ * @see prepareDocBlock(), getClassesOnPage()
+ * @param parserData
+ */
+ function convertPage(&$element)
+ {
+ parent::convertPage($element);
+ $this->juststarted = true;
+ $this->page_dir = $element->parent->package;
+ $this->page = $this->getPageName($element->parent);
+ $this->category = strtolower($element->parent->category);
+ $this->sourceloc = $element->parent->getSourceLocation($this,true);
+ if (!empty($element->parent->subpackage)) $this->page_dir .= PATH_DELIMITER . $element->parent->subpackage;
+ // registering stuff on the template
+ }
+
+ function getPageName(&$element)
+ {
+ return str_replace(array('/','_','.'),array('-','-','---'),$element->getSourceLocation($this,true));
+ }
+
+ /**
+ * returns an array containing the class inheritance tree from the root object to the class
+ *
+ * @param parserClass class variable
+ * @return array Format: array(root,child,child,child,...,$class)
+ * @uses parserClass::getParentClassTree()
+ */
+
+ function generateFormattedClassTree($class)
+ {
+ $tree = $class->getParentClassTree($this);
+ $out = '';
+ if (count($tree) - 1)
+ {
+ $result = array($class->getName());
+ $parent = $tree[$class->getName()];
+ while ($parent)
+ {
+ if (is_string($parent)) {
+ $result[] = $parent;
+ break;
+ }
+ $subpackage = $parent->docblock->subpackage;
+ $package = $parent->docblock->package;
+ $x = $parent;
+ if (is_object($parent))
+ $x = $parent->getLink($this);
+ if (!$x) $x = $parent->getName();
+ $result[] =
+ $x;
+ if (is_object($parent))
+ $parent = $tree[$parent->getName()];
+ elseif (isset($tree[$parent]))
+ $parent = $tree[$parent];
+ }
+ return array_reverse($result);
+ } else
+ {
+ return array($class->getName());
+ }
+ }
+
+ /**
+ * returns a list of child classes
+ *
+ * @param parserClass class variable
+ * @uses parserClass::getChildClassList()
+ */
+
+ function generateChildClassList($class)
+ {
+ $kids = $class->getChildClassList($this);
+ $list = array();
+ if (count($kids))
+ {
+ for($i=0; $i<count($kids); $i++)
+ {
+ $lt['link'] = '<link linkend="'.$this->getId($kids[$i]) . '-summary">'. $kids[$i]->getName().'</link>';
+ $lt['sdesc'] = $kids[$i]->docblock->getSDesc($this);
+ $list[] = $lt;
+ }
+ } else return false;
+ return $list;
+ }
+
+ /** @access private */
+ function sortVar($a, $b)
+ {
+ return strnatcasecmp($a->getName(),$b->getName());
+ }
+
+ /** @access private */
+ function sortMethod($a, $b)
+ {
+ if ($a->isConstructor) return -1;
+ if ($b->isConstructor) return 1;
+ return strnatcasecmp($a->getName(),$b->getName());
+ }
+
+ /**
+ * returns a template-enabled array of class trees
+ *
+ * @param string $package package to generate a class tree for
+ * @see $roots, HTMLConverter::getRootTree()
+ */
+ function generateFormattedClassTrees($package)
+ {
+ if (!isset($this->roots['normal'][$package]) &&
+ !isset($this->roots['special'][$package])) {
+ return array();
+ }
+ $trees = array();
+ if (isset($this->roots['normal'][$package])) {
+ $roots = $this->roots['normal'][$package];
+ for($i=0;$i<count($roots);$i++)
+ {
+ $root = $this->classes->getClassByPackage($roots[$i], $package);
+ if ($root && $root->isInterface()) {
+ continue;
+ }
+ $trees[] = array('class' => $roots[$i],'class_tree' => "<ul>\n".$this->getRootTree($this->getSortedClassTreeFromClass($roots[$i],$package,''),$package)."</ul>\n");
+ }
+ }
+ if (isset($this->roots['special'][$package])) {
+ $roots = $this->roots['special'][$package];
+ foreach ($roots as $parent => $classes) {
+ $thistree = '';
+ foreach ($classes as $classinfo) {
+ $root = $this->classes->getClassByPackage($classinfo, $package);
+ if ($root && $root->isInterface()) {
+ continue;
+ }
+ $thistree .=
+ $this->getRootTree(
+ $this->getSortedClassTreeFromClass(
+ $classinfo,
+ $package,
+ ''),
+ $package,
+ true);
+ }
+ if (!$thistree) {
+ continue;
+ }
+ $trees[] = array(
+ 'class' => $parent,
+ 'class_tree' => "<ul>\n" . $thistree . "</ul>\n"
+ );
+ }
+ }
+ return $trees;
+ }
+
+ /**
+ * returns a template-enabled array of interface inheritance trees
+ *
+ * @param string $package package to generate a class tree for
+ * @see $roots, HTMLConverter::getRootTree()
+ */
+ function generateFormattedInterfaceTrees($package)
+ {
+ if (!isset($this->roots['normal'][$package]) &&
+ !isset($this->roots['special'][$package])) {
+ return array();
+ }
+ $trees = array();
+ if (isset($this->roots['normal'][$package])) {
+ $roots = $this->roots['normal'][$package];
+ for($i=0;$i<count($roots);$i++)
+ {
+ $root = $this->classes->getClassByPackage($roots[$i], $package);
+ if ($root && !$root->isInterface()) {
+ continue;
+ }
+ $trees[] = array('class' => $roots[$i],'class_tree' => "<ul>\n".$this->getRootTree($this->getSortedClassTreeFromClass($roots[$i],$package,''),$package)."</ul>\n");
+ }
+ }
+ if (isset($this->roots['special'][$package])) {
+ $roots = $this->roots['special'][$package];
+ foreach ($roots as $parent => $classes) {
+ $thistree = '';
+ foreach ($classes as $classinfo) {
+ $root = $this->classes->getClassByPackage($classinfo, $package);
+ if ($root && !$root->isInterface()) {
+ continue;
+ }
+ $thistree .=
+ $this->getRootTree(
+ $this->getSortedClassTreeFromClass(
+ $classinfo,
+ $package,
+ ''),
+ $package,
+ true);
+ }
+ if (!$thistree) {
+ continue;
+ }
+ $trees[] = array(
+ 'class' => $parent,
+ 'class_tree' => "<ul>\n" . $thistree . "</ul>\n"
+ );
+ }
+ }
+ return $trees;
+ }
+
+ /**
+ * return formatted class tree for the Class Trees page
+ *
+ * @param array $tree output from {@link getSortedClassTreeFromClass()}
+ * @param string $package package
+ * @param boolean $nounknownparent if true, an object's parent will not be checked
+ * @see Classes::$definitechild, generateFormattedClassTrees()
+ * @return string
+ */
+ function getRootTree($tree, $package, $noparent = false)
+ {
+ if (!$tree) return '';
+ $my_tree = '';
+ $cur = '#root';
+ $lastcur = array(false);
+ $kids = array();
+ $dopar = false;
+ if (!$noparent && $tree[$cur]['parent'])
+ {
+ $dopar = true;
+ if (!is_object($tree[$cur]['parent']))
+ {
+// debug("parent ".$tree[$cur]['parent']." not found");
+ $my_tree .= '<listitem>' . $tree[$cur]['parent'] .'<itemizedlist>';
+ }
+ else
+ {
+// debug("parent ".$this->returnSee($tree[$cur]['parent'], false, false)." in other package");
+ $my_tree .= '<listitem>' . $this->returnSee($tree[$cur]['parent'], false, false);
+ if ($tree[$cur]['parent']->package != $package) $my_tree .= ' <emphasis>(Different package)</emphasis><itemizedlist>';
+ }
+ }
+ do
+ {
+// fancy_debug($cur,$lastcur,$kids);
+ if (count($tree[$cur]['children']))
+ {
+// debug("$cur has children");
+ if (!isset($kids[$cur]))
+ {
+// debug("set $cur kids");
+ $kids[$cur] = 1;
+ $my_tree .= '<listitem>'.$this->returnSee($tree[$cur]['link'], false, false);
+ $my_tree .= '<itemizedlist>'."\n";
+ }
+ array_push($lastcur,$cur);
+ list(,$cur) = each($tree[$cur]['children']);
+// var_dump('listed',$cur);
+ if ($cur)
+ {
+ $cur = $cur['package'] . '#' . $cur['class'];
+// debug("set cur to child $cur");
+// $my_tree .= '<li>'.$this->returnSee($tree[$cur]['link'], false, false);
+ continue;
+ } else
+ {
+// debug("end of children for $cur");
+ $cur = array_pop($lastcur);
+ $cur = array_pop($lastcur);
+ $my_tree .= '</itemizedlist></listitem>'."\n";
+ if ($dopar && ($cur == '#root' || !$cur)) $my_tree .= '</itemizedlist></listitem>';
+ }
+ } else
+ {
+// debug("$cur has no children");
+ $my_tree .= '<listitem>'.$this->returnSee($tree[$cur]['link'], false, false)."</listitem>";
+ if ($dopar && $cur == '#root') $my_tree .= '</itemizedlist></listitem>';
+ $cur = array_pop($lastcur);
+ }
+ } while ($cur);
+ return $my_tree;
+ }
+ /**
+ * does nothing
+ */
+ function generateElementIndex()
+ {
+ }
+
+ function setTemplateDir($dir)
+ {
+ Converter::setTemplateDir($dir);
+ $this->smarty_dir = $this->templateDir;
+ }
+
+ /**
+ * Generate alphabetical index of all elements by package and subpackage
+ *
+ * @param string $package name of a package
+ * @see $pkg_elements, walk(), generatePkgElementIndexes()
+ */
+ function generatePkgElementIndex($package)
+ {
+ }
+
+ /**
+ *
+ * @see generatePkgElementIndex()
+ */
+ function generatePkgElementIndexes()
+ {
+ }
+
+ /**
+ * @param string name of class
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @param boolean return just the URL, or enclose it in an html a tag
+ * @return mixed false if not found, or an html a link to the class's documentation
+ * @see parent::getClassLink()
+ */
+ function getClassLink($expr,$package, $file = false,$text = false, $local = true, $with_a = true)
+ {
+ $a = Converter::getClassLink($expr,$package,$file);
+ if (!$a) return false;
+ return $this->returnSee($a, $text, $local, $with_a);
+ }
+
+ /**
+ * @param string name of function
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @param boolean return just the URL, or enclose it in an html a tag
+ * @return mixed false if not found, or an html a link to the function's documentation
+ * @see parent::getFunctionLink()
+ */
+ function getFunctionLink($expr,$package, $file = false,$text = false, $local = true)
+ {
+ $a = Converter::getFunctionLink($expr,$package,$file);
+ if (!$a) return false;
+ return $this->returnSee($a, $text, $local);
+ }
+
+ /**
+ * @param string name of define
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @param boolean return just the URL, or enclose it in an html a tag
+ * @return mixed false if not found, or an html a link to the define's documentation
+ * @see parent::getDefineLink()
+ */
+ function getDefineLink($expr,$package, $file = false,$text = false, $local = true)
+ {
+ $a = Converter::getDefineLink($expr,$package,$file);
+ if (!$a) return false;
+ return $this->returnSee($a, $text, $local);
+ }
+
+ /**
+ * @param string name of global variable
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @param boolean return just the URL, or enclose it in an html a tag
+ * @return mixed false if not found, or an html a link to the global variable's documentation
+ * @see parent::getGlobalLink()
+ */
+ function getGlobalLink($expr,$package, $file = false,$text = false, $local = true)
+ {
+ $a = Converter::getGlobalLink($expr,$package,$file);
+ if (!$a) return false;
+ return $this->returnSee($a, $text, $local);
+ }
+
+ /**
+ * @param string name of procedural page
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @param boolean return just the URL, or enclose it in an html a tag
+ * @return mixed false if not found, or an html a link to the procedural page's documentation
+ * @see parent::getPageLink()
+ */
+ function getPageLink($expr,$package, $path = false,$text = false, $local = true)
+ {
+ $a = Converter::getPageLink($expr,$package,$path);
+ if (!$a) return false;
+ return $this->returnSee($a, $text, $local);
+ }
+
+ /**
+ * @param string name of method
+ * @param string class containing method
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @param boolean return just the URL, or enclose it in an html a tag
+ * @return mixed false if not found, or an html a link to the method's documentation
+ * @see parent::getMethodLink()
+ */
+ function getMethodLink($expr,$class,$package, $file = false,$text = false, $local = true)
+ {
+ $a = Converter::getMethodLink($expr,$class,$package,$file);
+ if (!$a) return false;
+ return $this->returnSee($a, $text, $local);
+ }
+
+ /**
+ * @param string name of var
+ * @param string class containing var
+ * @param string package name
+ * @param string full path to look in (used in index generation)
+ * @param boolean deprecated
+ * @param boolean return just the URL, or enclose it in an html a tag
+ * @return mixed false if not found, or an html a link to the var's documentation
+ * @see parent::getVarLink()
+ */
+ function getVarLink($expr,$class,$package, $file = false,$text = false, $local = true)
+ {
+ $a = Converter::getVarLink($expr,$class,$package,$file);
+ if (!$a) return false;
+ return $this->returnSee($a, $text, $local);
+ }
+
+ /**
+ * does a nat case sort on the specified second level value of the array
+ *
+ * @param mixed $a
+ * @param mixed $b
+ * @return int
+ */
+ function rcNatCmp ($a, $b)
+ {
+ $aa = strtoupper($a[$this->rcnatcmpkey]);
+ $bb = strtoupper($b[$this->rcnatcmpkey]);
+
+ return strnatcasecmp($aa, $bb);
+ }
+
+ /**
+ * does a nat case sort on the specified second level value of the array.
+ * this one puts constructors first
+ *
+ * @param mixed $a
+ * @param mixed $b
+ * @return int
+ */
+ function rcNatCmp1 ($a, $b)
+ {
+ $aa = strtoupper($a[$this->rcnatcmpkey]);
+ $bb = strtoupper($b[$this->rcnatcmpkey]);
+
+ if (strpos($aa,'CONSTRUCTOR') === 0)
+ {
+ return -1;
+ }
+ if (strpos($bb,'CONSTRUCTOR') === 0)
+ {
+ return 1;
+ }
+ if (strpos($aa,strtoupper($this->class)) === 0)
+ {
+ return -1;
+ }
+ if (strpos($bb,strtoupper($this->class)) === 0)
+ {
+ return -1;
+ }
+ return strnatcasecmp($aa, $bb);
+ }
+
+ function wordwrap($string)
+ {
+ return wordwrap($string);
+ }
+
+ /**
+ * Generate the constants.xml, packagename.xml, and globals.xml files
+ */
+ function Output()
+ {
+ $this->flushPackageXml(false);
+ $templ = &$this->newSmarty();
+ $categories = array();
+ $packages = array_flip($this->all_packages);
+ foreach($this->packagecategories as $package => $category)
+ {
+ $categories[$category]['package.'.$category.'.'.str_replace('_','-',strtolower($package ))] = 1;
+ if (isset($packages[$package])) unset($packages[$package]);
+ }
+ $category = $GLOBALS['phpDocumentor_DefaultCategoryName'];
+ foreach($packages as $package)
+ {
+ $categories[$category]['package.'.$category.'.'.str_replace('_','-',strtolower($package ))] = 1;
+ }
+ foreach($categories as $category => $ids)
+ {
+ $templ->assign('id','package.'.$category);
+ $templ->assign('ids',array());
+ $templ->assign('category',$category);
+ $this->setTargetDir($this->base_dir);
+ if (file_exists($this->base_dir . PATH_DELIMITER . strtolower($category ) . '.xml'))
+ {
+ $contents = @file($this->base_dir . PATH_DELIMITER . strtolower($category ) . '.xml');
+ if (is_array($contents))
+ {
+ $found = false;
+ foreach($contents as $i => $line)
+ {
+ $line = trim($line);
+ if (strlen($line) && $line{0} == '&')
+ {
+ $found = $i;
+ if (in_array(str_replace(array ('&', ';'), array ('', ''), trim($line )), array_keys($ids )))
+ {
+ unset($ids[str_replace(array('&', ';'), array('', ''), trim($line))]);
+ }
+ }
+ if ($found !== false && (!strlen($line) || $line{0} != '&'))
+ {
+ break;
+ }
+ }
+ $newids = array();
+ foreach($ids as $id => $unll)
+ {
+ $newids[] = ' &' . $id . ";\n";
+ }
+ $newcontents = array_merge(array_slice($contents, 0, $i), $newids);
+ $newcontents = array_merge($newcontents, array_slice($contents, $i));
+ }
+ $categorycontents = implode($newcontents, '');
+ } else
+ {
+ foreach($ids as $id => $unll)
+ {
+ if (!in_array($id, $templ->_tpl_vars['ids']))
+ {
+ $templ->append('ids',$id);
+ }
+ }
+ $categorycontents = '<!-- $' . "Revision$ -->\n" . $templ->fetch('category.tpl');
+ }
+ $this->writefile(strtolower($category) . '.xml',
+ $categorycontents);
+ phpDocumentor_out("\n");
+ flush();
+ }
+ $my = &$this->newSmarty();
+ if ($this->_peardoc2_constants)
+ {
+ foreach($this->_peardoc2_constants as $category => $r)
+ {
+ foreach($r as $package => $s)
+ {
+ $my->assign('id','package.'.strtolower($category.'.'.str_replace('_','-',strtolower($package ))).'.constants');
+ $my->assign('package',$package);
+ $defines = array();
+ foreach($s as $file => $t)
+ {
+ $arr = array();
+ $arr['name'] = $file;
+ $arr['page'] = strtolower($t['page']);
+ $arr['defines'] = $t['defines'];
+ $defines[] = $arr;
+ }
+ $my->assign('defines',$defines);
+ $this->setTargetDir($this->base_dir . PATH_DELIMITER . $category
+ . PATH_DELIMITER . strtolower(str_replace('_','-',strtolower($package ))));
+ $this->writefile('constants.xml',
+ '<!-- $' . "Revision$ -->\n" . $my->fetch('constants.tpl'));
+ $my->clear_all_assign();
+ }
+ }
+ $this->_peardoc2_constants = false;
+ }
+ if ($this->_peardoc2_globals)
+ {
+ foreach($this->_peardoc2_globals as $category => $r)
+ {
+ foreach($r as $package => $s)
+ {
+ $my->assign('id','package.'.strtolower($category.'.'.str_replace('_','-',strtolower($package ))).'.globals');
+ $my->assign('package',$package);
+ $defines = array();
+ foreach($s as $file => $t)
+ {
+ $arr = array();
+ $arr['name'] = $file;
+ $arr['page'] = strtolower($t['page']);
+ $arr['globals'] = $t['globals'];
+ $defines[] = $arr;
+ }
+ $my->assign('globals',$defines);
+ $this->setTargetDir($this->base_dir . PATH_DELIMITER . $category
+ . PATH_DELIMITER . strtolower(str_replace('_','-',strtolower($package ))));
+ $this->writefile('globals.xml',
+ '<!-- $' . "Revision$ -->\n" . $my->fetch('globals.tpl'));
+ $my->clear_all_assign();
+ }
+ }
+ $this->_peardoc2_globals = false;
+ }
+ }
+}
+?>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/options.ini b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/options.ini
new file mode 100755
index 00000000..cdb08f38
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/options.ini
@@ -0,0 +1,39 @@
+;; XML DocBook peardoc2 options
+usepear = true
+
+;; preserve package page docbook tags that don't have an entry in the ppage section
+;; we preserve every tag, as this is how it works
+;; this is after all a docbook converter!
+preservedocbooktags = true
+
+;; separate file for class and page docblocks and minor details (variables, globals, defines)
+separatepage = true
+
+[typechanging]
+true = &true;
+false = &false;
+null = &null;
+
+[desctranslate]
+ul = "\n<itemizedlist>"
+/ul = "</itemizedlist>\n"
+ol = "\n<orderedlist>"
+/ol = "</orderedlist>\n"
+li = "\n<listitem><para>"
+/li = "</para></listitem>\n"
+code = <programlisting role="php-highlighted">
+/code = "</programlisting>\n"
+pre = <![CDATA[
+/pre = ]]>
+p = <para>
+/p = "</para>\n"
+b = <emphasis>
+/b = </emphasis>
+i = <important>
+/i = </important>
+var = <varname>
+/var = </varname>
+kbd = <screen>
+/kbd = </screen>
+samp = <example>
+/samp = "</example>\n"
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/category.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/category.tpl
new file mode 100755
index 00000000..7c95b11e
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/category.tpl
@@ -0,0 +1,26 @@
+<chapter id="{$id}">
+<title>{$category}</title>
+{section name=ids loop=$ids}
+&{$ids[ids]};
+{/section}
+</chapter>
+<!-- Generated by phpDocumentor v {$phpdocversion} {$phpdocwebsite} -->
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-omittag:t
+sgml-shorttag:t
+sgml-minimize-attributes:nil
+sgml-always-quote-attributes:t
+sgml-indent-step:1
+sgml-indent-data:t
+sgml-parent-document:nil
+sgml-default-dtd-file:"../../../../manual.ced"
+sgml-exposed-tags:nil
+sgml-local-catalogs:nil
+sgml-local-ecat-files:nil
+End:
+vim600: syn=xml fen fdm=syntax fdl=2 si
+vim: et tw=78 syn=sgml
+vi: ts=1 sw=1
+--> \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/class.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/class.tpl
new file mode 100755
index 00000000..72b9fea2
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/class.tpl
@@ -0,0 +1,29 @@
+<refentry id="{$id}">
+ <refnamediv>
+ <refname>{$class_name}</refname>
+ <refpurpose>{$classname}</refpurpose>
+ </refnamediv>
+{section name=methods loop=$method_ids}
+&{$method_ids[methods]};
+{/section}
+</refentry>
+<!-- Generated by phpDocumentor v {$phpdocversion} {$phpdocwebsite} -->
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-omittag:t
+sgml-shorttag:t
+sgml-minimize-attributes:nil
+sgml-always-quote-attributes:t
+sgml-indent-step:1
+sgml-indent-data:t
+sgml-parent-document:nil
+sgml-default-dtd-file:"../../../../manual.ced"
+sgml-exposed-tags:nil
+sgml-local-catalogs:nil
+sgml-local-ecat-files:nil
+End:
+vim600: syn=xml fen fdm=syntax fdl=2 si
+vim: et tw=78 syn=sgml
+vi: ts=1 sw=1
+--> \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/class_summary.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/class_summary.tpl
new file mode 100755
index 00000000..03b42703
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/class_summary.tpl
@@ -0,0 +1,53 @@
+<refentry id="{$id}">
+ <refnamediv>
+ <refname>Class Summary {$class_name}</refname>
+ <refpurpose>{$sdesc}</refpurpose>
+ </refnamediv>
+<refsect1>
+ <title>{$sdesc}</title>
+ {$desc|default:"&notdocumented;"}
+</refsect1>
+<refsect1>
+<title>Class Trees for {$class_name}</title>
+ <para>
+ {section name=tree loop=$class_tree}
+ {section name=mine loop=$class_tree[tree]} {/section}<itemizedlist>
+ {section name=mine loop=$class_tree[tree]} {/section} <listitem><para>
+ {section name=mine loop=$class_tree[tree]} {/section} {$class_tree[tree]}
+ {/section}
+ {section name=tree loop=$class_tree}
+ {section name=mine loop=$class_tree[tree]} {/section}</para></listitem>
+ </itemizedlist>
+ {/section}
+ </para>
+{if $children}
+ <para>
+ <table>
+ <title>Classes that extend {$class_name}</title>
+ <tgroup cols="2">
+ <thead>
+ <row>
+ <entry>Class</entry>
+ <entry>Summary</entry>
+ </row>
+ </thead>
+ <tbody>
+{section name=kids loop=$children}
+ <row>
+ <entry>{$children[kids].link}</entry>
+ <entry>{$children[kids].sdesc}</entry>
+ </row>
+{/section}
+ </tbody>
+ </tgroup>
+ </table>
+ </para>
+{/if}
+{if $imethods}
+ <para>
+ {$class_name} Inherited Methods
+ </para>
+{include file="imethods.tpl" ivars=$ivars}
+{/if}
+</refsect1>
+</refentry>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/constants.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/constants.tpl
new file mode 100755
index 00000000..24588e88
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/constants.tpl
@@ -0,0 +1,68 @@
+<refentry id="{$id}">
+ <refnamediv>
+ <refname>Package {$package} Constants</refname>
+ <refpurpose>Constants defined in and used by {$package}</refpurpose>
+ </refnamediv>
+ <refsect1 id="{$id}.details">
+ <title>All Constants</title>
+{section name=files loop=$defines}
+ <refsect2 id="{$id}.details.{$defines[files].page}">
+ <title>
+ Constants defined in {$defines[files].name}
+ </title>
+ <para>
+ <table>
+ <title>Constants defined in {$defines[files].name}</title>
+{section name=d loop=$defines[files].defines}
+{if $defines[files].defines[d].conflicts}{assign var="defineconflict" value=true}{/if}
+{/section}
+ <tgroup cols="{if $defineconflict}4{else}3{/if}">
+ <thead>
+ <row>
+ <entry>Name</entry>
+ <entry>Value</entry>
+ <entry>Line Number</entry>
+{if $defineconflict}
+ <entry>Conflicts with other packages</entry>
+{/if}
+ </row>
+ </thead>
+ <tbody>
+{section name=d loop=$defines[files].defines}
+ <row>
+ <entry>{$defines[files].defines[d].name}</entry>
+ <entry>{$defines[files].defines[d].value}</entry>
+ <entry>{$defines[files].defines[d].line_number}</entry>
+{if $defineconflict}
+ <entry>{$defines[files].defines[d].conflicts}</entry>
+{/if}
+ </row>
+{/section}
+ </tbody>
+ </tgroup>
+ </table>
+ </para>
+ </refsect2>
+{/section}
+ </refsect1>
+</refentry>
+<!-- Generated by phpDocumentor v {$phpdocversion} {$phpdocwebsite} -->
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-omittag:t
+sgml-shorttag:t
+sgml-minimize-attributes:nil
+sgml-always-quote-attributes:t
+sgml-indent-step:1
+sgml-indent-data:t
+sgml-parent-document:nil
+sgml-default-dtd-file:"../../../../manual.ced"
+sgml-exposed-tags:nil
+sgml-local-catalogs:nil
+sgml-local-ecat-files:nil
+End:
+vim600: syn=xml fen fdm=syntax fdl=2 si
+vim: et tw=78 syn=sgml
+vi: ts=1 sw=1
+-->
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/docblock.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/docblock.tpl
new file mode 100755
index 00000000..ab140b3b
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/docblock.tpl
@@ -0,0 +1,116 @@
+{if $var}
+{assign var="num" value="refsect3"}
+{else}
+{assign var="num" value="refsect1"}
+{/if}
+ <{$num} id="{$id}.desc">
+ &title.desc;
+{if $line_number}
+ <simpara>
+ Source on line #: {if $class_slink}{$class_slink}{else}{$line_number}{/if}
+ </simpara>
+{/if}
+{if $var}
+ <simpara>
+ {$sdesc|default:"&notdocumented;"}
+ </simpara>
+{/if}
+{if $desc}
+ {$desc}
+{else}
+{if $var && $sdesc}
+{else}
+ &notdocumented;
+{/if}
+{/if}
+ </{$num}>
+{if $params}
+ <{$num} id="{$id}.param">
+ &title.param;
+ <para>
+{section name=params loop=$params}
+ <variablelist>
+ <varlistentry>
+ <term>
+ {assign var="temp" value=$params[params].name}
+ {if strpos($params[params].type, '|') ||
+ strpos($cparams.$temp.cdatatype, '>')}
+ <type>{$params[params].type}</type>
+ {else}
+ {if $params[params].type == 'integer'}
+ {assign var="paramtype" value="int"}
+ {elseif $params[params].type == 'boolean'}
+ {assign var="paramtype" value="bool"}
+ {else}
+ {assign var="paramtype" value=$params[params].type}
+ {/if}
+ {if in_array($paramtype, array('bool', 'int', 'float', 'string', 'mixed', 'object', 'resource', 'array', 'res'))}
+ &type.{$paramtype};
+ {else}
+ <type>{$paramtype}</type>
+ {/if}
+ {/if}
+ <parameter>{$params[params].name|replace:"&":"&amp;"}</parameter>
+ </term>
+ <listitem>
+ <para>
+ {$params[params].description}
+ </para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+{/section}
+ </para>
+ </{$num}>
+{/if}
+{foreach from=$tags item="tag" key="tagname"}
+{if $tagname != 'static' && $tagname != 'author' && $tagname != 'version' && $tagname != 'copyright' && $tagname != 'package' && $tagname != 'subpackage' && $tagname != 'example'}
+ <{$num} id="{$id}.{$tagname}">
+ &title.{$tagname};
+ {section name=t loop=$tag}
+ <para>
+ <emphasis>{$tag[t].keyword}</emphasis> {$tag[t].data}
+ </para>
+ {/section}
+ </{$num}>
+{elseif $tagname == 'deprecated'}
+ <{$num} id="{$id}.{$tagname}">
+ &title.note;
+ &note.deprecated;
+ {section name=t loop=$tag}
+ <para>
+ {$tag[t].data}
+ </para>
+ {/section}
+ </{$num}>
+{elseif $tagname == 'static'}
+{assign var="canstatic" value=true}
+{elseif $tagname == 'example'}
+ <{$num} id="{$id}.{$tagname}">
+ <title>Examples</title>
+ {section name=t loop=$tag}
+ {$tag[t].data}
+ {/section}
+ </{$num}>
+{elseif $tagname != 'package' && $tagname != 'subpackage'}
+ <{$num} id="{$id}.{$tagname}">
+ <title>{$tagname}</title>{* <-- need language snippets support for phpDocumentor, will use this instead *}
+ {section name=t loop=$tag}
+ <para>
+ <emphasis>{$tagname}</emphasis> {$tag[t].data}
+ </para>
+ {/section}
+ </{$num}>
+{/if}
+{/foreach}
+{if $canstatic}
+ <{$num} id="{$id}.note">
+ &title.note;
+ &note.canstatic;
+ </{$num}>
+{else}
+ <{$num} id="{$id}.note">
+ &title.note;
+ &note.notstatic;
+ </{$num}>
+{/if}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/errors.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/errors.tpl
new file mode 100644
index 00000000..0f526584
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/errors.tpl
@@ -0,0 +1,21 @@
+{include file="header.tpl" noleftindex=true}
+{section name=files loop=$files}
+<a href="#{$files[files].file}">{$files[files].file}</a><br>
+{/section}
+{foreach key=file item=issues from=$all}
+<a name="{$file}"></a>
+<h1>{$file}</h1>
+{if count($issues.warnings)}
+<h2>Warnings:</h2><br>
+{section name=warnings loop=$issues.warnings}
+<b>{$issues.warnings[warnings].name}</b> - {$issues.warnings[warnings].listing}<br>
+{/section}
+{/if}
+{if count($issues.errors)}
+<h2>Errors:</h2><br>
+{section name=errors loop=$issues.errors}
+<b>{$issues.errors[errors].name}</b> - {$issues.errors[errors].listing}<br>
+{/section}
+{/if}
+{/foreach}
+{include file="footer.tpl"}
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/globals.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/globals.tpl
new file mode 100755
index 00000000..7392d87a
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/globals.tpl
@@ -0,0 +1,69 @@
+<refentry id="{$id}">
+ <refnamediv>
+ <refname>Package {$package} Global Variables</refname>
+ <refpurpose>Global Variables defined in and used by {$package}</refpurpose>
+ </refnamediv>
+ <refsect1 id="{$id}.details">
+ <title>All Global Variables</title>
+{section name=files loop=$globals}
+ <refsect2 id="{$id}.details.{$globals[files].page}">
+ <title>
+ Global Variables defined in {$globals[files].name}
+ </title>
+ <para>
+ <table>
+ <title>Global Variables defined in {$globals[files].name}</title>
+{section name=d loop=$globals[files].globals}
+{if $globals[files].globals[d].conflicts}{assign var="globalconflict" value=true}{/if}
+{/section}
+ <tgroup cols="{if $globalconflict}4{else}3{/if}">
+ <thead>
+ <row>
+ <entry>Name</entry>
+ <entry>Value</entry>
+ <entry>Line Number</entry>
+{if $globalconflict}
+ <entry>Conflicts with other packages</entry>
+{/if}
+ </row>
+ </thead>
+ <tbody>
+{section name=d loop=$globals}
+ <row>
+
+<entry>{$globals[files].globals[d].name}</entry>
+ <entry>{$globals[files].globals[d].value}</entry>
+ <entry>{$globals[files].globals[d].line_number}</entry>
+{if $globalconflict}
+ <entry>{$globals[files].globals[d].conflicts}</entry>
+{/if}
+ </row>
+{/section}
+ </tbody>
+ </tgroup>
+ </table>
+ </para>
+ </refsect2>
+{/section}
+ </refsect1>
+</refentry>
+<!-- Generated by phpDocumentor v {$phpdocversion} {$phpdocwebsite} -->
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-omittag:t
+sgml-shorttag:t
+sgml-minimize-attributes:nil
+sgml-always-quote-attributes:t
+sgml-indent-step:1
+sgml-indent-data:t
+sgml-parent-document:nil
+sgml-default-dtd-file:"../../../../manual.ced"
+sgml-exposed-tags:nil
+sgml-local-catalogs:nil
+sgml-local-ecat-files:nil
+End:
+vim600: syn=xml fen fdm=syntax fdl=2 si
+vim: et tw=78 syn=sgml
+vi: ts=1 sw=1
+-->
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/imethods.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/imethods.tpl
new file mode 100755
index 00000000..c0be1bf7
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/imethods.tpl
@@ -0,0 +1,24 @@
+ <para>
+{section name=classes loop=$imethods}
+ <table>
+ <title>Inherited from {$imethods[classes].parent_class}</title>
+ <tgroup cols="2">
+ <thead>
+ <row>
+ <entry>Method Name</entry>
+ <entry>Summary</entry>
+ </row>
+ </thead>
+ <tbody>
+{section name=m loop=$imethods[classes].imethods}
+ <row>
+ <entry>{if $imethods[classes].imethods[m].constructor} Constructor{/if} {$imethods[classes].imethods[m].link}</entry>
+ <entry>{$imethods[classes].imethods[m].sdesc|default:"&notdocumented;"}</entry>
+ </row>
+{/section}
+ </tbody>
+ </tgroup>
+ </table>
+{/section}
+ </para>
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/ivars.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/ivars.tpl
new file mode 100755
index 00000000..3b9eecf9
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/ivars.tpl
@@ -0,0 +1,26 @@
+ <para>
+{section name=classes loop=$ivars}
+ <table>
+ <title>Inherited from {$ivars[classes].parent_class}</title>
+ <tgroup cols="2">
+ <thead>
+ <row>
+ <entry>Variable Name</entry>
+ <entry>Summary</entry>
+ <entry>Default Value</entry>
+ </row>
+ </thead>
+ <tbody>
+{section name=m loop=$ivars[classes].ivars}
+ <row>
+ <entry>{if $ivars[classes].ivars[m].constructor} Constructor{/if} {$ivars[classes].ivars[m].link}</entry>
+ <entry>{$ivars[classes].ivars[m].sdesc|default:"&notdocumented;"}</entry>
+ <entry>{$ivars[classes].ivars[m].default|default:"&null;"}</entry>
+ </row>
+{/section}
+ </tbody>
+ </tgroup>
+ </table>
+{/section}
+ </para>
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/method.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/method.tpl
new file mode 100755
index 00000000..fc53f5dc
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/method.tpl
@@ -0,0 +1,45 @@
+<refentry id="{$id}">
+ <refnamediv>
+ <refname>{if $function_call.constructor}constructor {/if}<function>{$class}::{$function_name}</function></refname>
+ <refpurpose>{$sdesc|default:$function_name}</refpurpose>
+ </refnamediv>
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcsynopsisinfo>
+ require_once &apos;{$source_location}&apos;;
+ </funcsynopsisinfo>
+ <funcprototype>
+ <funcdef>{$function_return}{if $function_call.returnsref}&amp;{/if}
+ {if $function_call.constructor}constructor {/if}<function>{$class}::{$function_name}</function></funcdef>
+{if count($function_call.params)}
+{section name=params loop=$function_call.params}
+ <paramdef>{if @strpos('>',$function_call.params[params].type)}<replaceable>{/if}{$function_call.params[params].type}{if @strpos('>',$function_call.params[params].type)}</replaceable>{/if} <parameter>{if $function_call.params[params].hasdefault} <optional>{/if}{$function_call.params[params].name|replace:"&":"&amp;"}{if $function_call.params[params].hasdefault} = {$function_call.params[params].default}</optional>{/if}</parameter></paramdef>
+{/section}
+{else}
+<paramdef></paramdef>
+{/if}
+ </funcprototype>
+ </funcsynopsis>
+ </refsynopsisdiv>
+{include file="docblock.tpl" cparams=$params params=$function_call.params desc=$desc tags=$tags}
+</refentry>
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-omittag:t
+sgml-shorttag:t
+sgml-minimize-attributes:nil
+sgml-always-quote-attributes:t
+sgml-indent-step:1
+sgml-indent-data:t
+sgml-parent-document:nil
+sgml-default-dtd-file:"../../../../manual.ced"
+sgml-exposed-tags:nil
+sgml-local-catalogs:nil
+sgml-local-ecat-files:nil
+End:
+vim600: syn=xml fen fdm=syntax fdl=2 si
+vim: et tw=78 syn=sgml
+vi: ts=1 sw=1
+-->
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/package.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/package.tpl
new file mode 100755
index 00000000..5b6bfc1c
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/package.tpl
@@ -0,0 +1,26 @@
+<sect1 id="{$id}">
+<title>{$package}</title>
+{section name=ids loop=$ids}
+{$ids[ids]}
+{/section}
+</sect1>
+<!-- Generated by phpDocumentor v {$phpdocversion} {$phpdocwebsite} -->
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-omittag:t
+sgml-shorttag:t
+sgml-minimize-attributes:nil
+sgml-always-quote-attributes:t
+sgml-indent-step:1
+sgml-indent-data:t
+sgml-parent-document:nil
+sgml-default-dtd-file:"../../../../manual.ced"
+sgml-exposed-tags:nil
+sgml-local-catalogs:nil
+sgml-local-ecat-files:nil
+End:
+vim600: syn=xml fen fdm=syntax fdl=2 si
+vim: et tw=78 syn=sgml
+vi: ts=1 sw=1
+--> \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/tutorial.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/tutorial.tpl
new file mode 100755
index 00000000..e2cb70c4
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/tutorial.tpl
@@ -0,0 +1,21 @@
+{$contents}
+<!-- Generated by phpDocumentor v {$phpdocversion} {$phpdocwebsite} -->
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-omittag:t
+sgml-shorttag:t
+sgml-minimize-attributes:nil
+sgml-always-quote-attributes:t
+sgml-indent-step:1
+sgml-indent-data:t
+sgml-parent-document:nil
+sgml-default-dtd-file:"../../../../manual.ced"
+sgml-exposed-tags:nil
+sgml-local-catalogs:nil
+sgml-local-ecat-files:nil
+End:
+vim600: syn=xml fen fdm=syntax fdl=2 si
+vim: et tw=78 syn=sgml
+vi: ts=1 sw=1
+--> \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/var.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/var.tpl
new file mode 100755
index 00000000..0d490e46
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/peardoc2/templates/default/templates/var.tpl
@@ -0,0 +1,15 @@
+ <refsect1 id="{$my_id}.vars">
+ <title>Class Variables</title>
+{section name=var loop=$vars}
+ <refsect2 id="{$vars[vars].id}">
+ <title>{$vars[var].var_type} {$vars[var].var_name}{if $vars[var].default} = {$vars[var].var_default}{/if}</title>
+
+{section name=v loop=$vars[var].var_overrides}
+ <para>
+ <emphasis>Overrides {$vars[var].var_overrides[v].link}</emphasis>{if $vars[var].var_overrides[v].sdesc}: {$vars[var].var_overrides[v].sdesc|default:""}{/if}
+ </para>
+{/section}
+{include file="docblock.tpl" var=true desc=$vars[var].desc sdesc=$vars[var].sdesc tags=$vars[var].tags line_number=$line_number id=$vars[var].id}
+ </refsect2>
+{/section}
+ </refsect1>
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/templates/peardoc2/templates/class_summary.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/templates/peardoc2/templates/class_summary.tpl
new file mode 100755
index 00000000..ca8210a7
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/templates/peardoc2/templates/class_summary.tpl
@@ -0,0 +1,93 @@
+<!-- $Revision: 1.1 $ -->
+<refentry id="{$id}">
+ <refnamediv>
+ <refname>Class {$class_name} Summary</refname>
+ <refpurpose>{$sdesc|default:"&notdocumented"}</refpurpose>
+ </refnamediv>
+{include file="docblock.tpl" desc=$desc tags=$tags line_number=$line_number params=false}
+{include file="var.tpl" vars=$vars my_id=$id}
+ <refsect1 id="{$id}.heritage">
+ <title>
+ Heritage for {$class_name}
+ </title>
+ <refsect2 id="{$id}.heritage.class-trees">
+ <title>
+ Class Trees for {$class_name}
+ </title>
+ <para>
+ {section name=tree loop=$class_tree}
+ {section name=mine loop=$class_tree[tree]} {/section}<itemizedlist>
+ {section name=mine loop=$class_tree[tree]} {/section} <listitem>
+ {section name=mine loop=$class_tree[tree]} {/section} {$class_tree[tree]}
+ {/section}
+ {section name=tree loop=$class_tree}
+ {section name=mine loop=$class_tree[tree]} {/section}</listitem>
+ </itemizedlist>
+ {/section}
+ </para>
+ </refsect2>
+{if $children}
+ <refsect2 id="{$id}.heritage.child-classes">
+ <title>
+ Classes that extend {$class_name}
+ </title>
+ <para>
+ <table>
+ <tgroup cols="2">
+ <thead>
+ <row>
+ <entry>Class</entry>
+ <entry>Summary</entry>
+ </row>
+ </thead>
+ <tbody>
+{section name=kids loop=$children}
+ <row>
+ <entry>{$children[kids].link}</entry>
+ <entry>{$children[kids].sdesc}</entry>
+ </row>
+{/section}
+ </tbody>
+ </tgroup>
+ </table>
+ </para>
+ </refsect2>
+{/if}
+{if $imethods}
+ <refsect2 id="{$id}.heritage.inherited-methods">
+ <title>
+ {$class_name} Inherited Methods
+ </title>
+{include file="imethods.tpl" ivars=$ivars}
+ </refsect2>
+{/if}
+{if $ivars}
+ <refsect2 id="{$id}.heritage.inherited-vars">
+ <title>
+ {$class_name} Inherited Variables
+ </title>
+{include file="ivars.tpl" ivars=$ivars}
+ </refsect2>
+{/if}
+ </refsect1>
+</refentry>
+<!-- Generated by phpDocumentor v {$phpdocversion} {$phpdocwebsite} -->
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-omittag:t
+sgml-shorttag:t
+sgml-minimize-attributes:nil
+sgml-always-quote-attributes:t
+sgml-indent-step:1
+sgml-indent-data:t
+sgml-parent-document:nil
+sgml-default-dtd-file:"../../../../manual.ced"
+sgml-exposed-tags:nil
+sgml-local-catalogs:nil
+sgml-local-ecat-files:nil
+End:
+vim600: syn=xml fen fdm=syntax fdl=2 si
+vim: et tw=78 syn=sgml
+vi: ts=1 sw=1
+--> \ No newline at end of file
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/templates/peardoc2/templates/ivars.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/templates/peardoc2/templates/ivars.tpl
new file mode 100755
index 00000000..3b9eecf9
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/templates/peardoc2/templates/ivars.tpl
@@ -0,0 +1,26 @@
+ <para>
+{section name=classes loop=$ivars}
+ <table>
+ <title>Inherited from {$ivars[classes].parent_class}</title>
+ <tgroup cols="2">
+ <thead>
+ <row>
+ <entry>Variable Name</entry>
+ <entry>Summary</entry>
+ <entry>Default Value</entry>
+ </row>
+ </thead>
+ <tbody>
+{section name=m loop=$ivars[classes].ivars}
+ <row>
+ <entry>{if $ivars[classes].ivars[m].constructor} Constructor{/if} {$ivars[classes].ivars[m].link}</entry>
+ <entry>{$ivars[classes].ivars[m].sdesc|default:"&notdocumented;"}</entry>
+ <entry>{$ivars[classes].ivars[m].default|default:"&null;"}</entry>
+ </row>
+{/section}
+ </tbody>
+ </tgroup>
+ </table>
+{/section}
+ </para>
+
diff --git a/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/templates/peardoc2/templates/tutorial.tpl b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/templates/peardoc2/templates/tutorial.tpl
new file mode 100755
index 00000000..e2cb70c4
--- /dev/null
+++ b/buildscripts/PhpDocumentor/phpDocumentor/Converters/XML/DocBook/templates/peardoc2/templates/tutorial.tpl
@@ -0,0 +1,21 @@
+{$contents}
+<!-- Generated by phpDocumentor v {$phpdocversion} {$phpdocwebsite} -->
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-omittag:t
+sgml-shorttag:t
+sgml-minimize-attributes:nil
+sgml-always-quote-attributes:t
+sgml-indent-step:1
+sgml-indent-data:t
+sgml-parent-document:nil
+sgml-default-dtd-file:"../../../../manual.ced"
+sgml-exposed-tags:nil
+sgml-local-catalogs:nil
+sgml-local-ecat-files:nil
+End:
+vim600: syn=xml fen fdm=syntax fdl=2 si
+vim: et tw=78 syn=sgml
+vi: ts=1 sw=1
+--> \ No newline at end of file