aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorakirilov <akirilov@google.com>2018-06-01 13:46:04 -0700
committersyphyr <syphyr@gmail.com>2018-09-06 04:08:09 +0200
commit126c3993d2ad55db2abfe80e3d671bf584e7b13b (patch)
treef4464c225863c997e3f99d9897131f9f28df76fe
parent521b88fbb6d18312923f0df653d045384b500ffc (diff)
downloadandroid_external_libxml2-cm-14.1.tar.gz
android_external_libxml2-cm-14.1.tar.bz2
android_external_libxml2-cm-14.1.zip
Merge to pi-dev and restore Android.mk Bug: 79662501 Bug: 36809766 Bug: 36810305 Bug: 62151041 Test: manually verify functionality for regression Change-Id: Ife351c91c932eb92992656f8ea5c08724a220306 (cherry picked from commit 4e91cfdbb1a8624e5cd5a850d6e17da11d1e34a8)
-rw-r--r--.gitignore2
-rw-r--r--.travis.yml22
-rw-r--r--CONTRIBUTING24
-rw-r--r--ChangeLog18
-rw-r--r--HACKING37
-rw-r--r--Makefile.am156
-rw-r--r--README.cvs-commits2
-rw-r--r--README.zOS212
-rw-r--r--SAX2.c14
-rw-r--r--bakefile/libxml2.bkl1
-rw-r--r--buf.c6
-rw-r--r--c14n.c45
-rw-r--r--catalog.c51
-rw-r--r--configure.ac115
-rw-r--r--debugXML.c13
-rw-r--r--dict.c41
-rw-r--r--doc/APIchunk0.html4
-rw-r--r--doc/APIchunk12.html2
-rw-r--r--doc/APIchunk13.html3
-rw-r--r--doc/APIchunk14.html2
-rw-r--r--doc/APIchunk16.html5
-rw-r--r--doc/APIchunk17.html3
-rw-r--r--doc/APIchunk18.html2
-rw-r--r--doc/APIchunk2.html2
-rw-r--r--doc/APIchunk20.html5
-rw-r--r--doc/APIchunk21.html14
-rw-r--r--doc/APIchunk22.html4
-rw-r--r--doc/APIchunk23.html2
-rw-r--r--doc/APIchunk24.html4
-rw-r--r--doc/APIchunk25.html2
-rw-r--r--doc/APIchunk28.html3
-rw-r--r--doc/APIchunk4.html1
-rw-r--r--doc/APIchunk5.html6
-rw-r--r--doc/APIfiles.html4
-rw-r--r--doc/APIfunctions.html17
-rw-r--r--doc/APIsymbols.html4
-rw-r--r--doc/Makefile.am8
-rw-r--r--doc/bugs.html2
-rw-r--r--doc/devhelp/libxml2-HTMLparser.html8
-rw-r--r--doc/devhelp/libxml2-dict.html4
-rw-r--r--doc/devhelp/libxml2-encoding.html10
-rw-r--r--doc/devhelp/libxml2-hash.html21
-rw-r--r--doc/devhelp/libxml2-list.html16
-rw-r--r--doc/devhelp/libxml2-schemasInternals.html2
-rw-r--r--doc/devhelp/libxml2-tree.html2
-rw-r--r--doc/devhelp/libxml2-xmlerror.html4
-rw-r--r--doc/devhelp/libxml2-xmlreader.html4
-rw-r--r--doc/devhelp/libxml2-xmlstring.html6
-rw-r--r--doc/devhelp/libxml2-xpath.html10
-rw-r--r--doc/devhelp/libxml2-xpathInternals.html2
-rw-r--r--doc/devhelp/libxml2-xpointer.html2
-rw-r--r--doc/devhelp/libxml2.devhelp2
-rw-r--r--doc/elfgcchack.xsl2
-rw-r--r--doc/examples/Makefile.am39
-rw-r--r--doc/examples/examples.xml512
-rwxr-xr-xdoc/examples/index.py17
-rw-r--r--doc/examples/testWriter.c32
-rw-r--r--doc/examples/tree2.c3
-rw-r--r--doc/html/libxml-HTMLparser.html8
-rw-r--r--doc/html/libxml-dict.html4
-rw-r--r--doc/html/libxml-encoding.html6
-rw-r--r--doc/html/libxml-hash.html21
-rw-r--r--doc/html/libxml-list.html16
-rw-r--r--doc/html/libxml-schemasInternals.html2
-rw-r--r--doc/html/libxml-tree.html2
-rw-r--r--doc/html/libxml-xmlerror.html4
-rw-r--r--doc/html/libxml-xmlreader.html4
-rw-r--r--doc/html/libxml-xmlstring.html6
-rw-r--r--doc/html/libxml-xpath.html10
-rw-r--r--doc/html/libxml-xpathInternals.html2
-rw-r--r--doc/html/libxml-xpointer.html2
-rw-r--r--doc/libxml2-api.xml73
-rw-r--r--doc/libxml2-refs.xml115
-rw-r--r--doc/libxml2.xsa92
-rw-r--r--doc/news.html246
-rw-r--r--doc/symbols.xml3
-rw-r--r--doc/xml.html254
-rw-r--r--doc/xmlcatalog.122
-rw-r--r--doc/xmlcatalog_man.html241
-rw-r--r--doc/xmlcatalog_man.xml19
-rw-r--r--doc/xmllint.html337
-rw-r--r--elfgcchack.h2
-rw-r--r--encoding.c623
-rw-r--r--entities.c26
-rw-r--r--error.c4
-rw-r--r--example/Makefile.am2
-rw-r--r--example/gjobread.c2
-rwxr-xr-xgenUnicode.py4
-rwxr-xr-xgentest.py18
-rw-r--r--globals.c22
-rw-r--r--hash.c23
-rw-r--r--include/libxml/HTMLparser.h4
-rw-r--r--include/libxml/encoding.h5
-rw-r--r--include/libxml/hash.h9
-rw-r--r--include/libxml/list.h6
-rw-r--r--include/libxml/nanoftp.h2
-rw-r--r--include/libxml/schemasInternals.h2
-rw-r--r--include/libxml/threads.h9
-rw-r--r--include/libxml/xmlreader.h2
-rw-r--r--include/libxml/xmlversion.h.in3
-rw-r--r--include/libxml/xmlwin32version.h3
-rw-r--r--include/libxml/xmlwin32version.h.in3
-rw-r--r--include/win32config.h6
-rw-r--r--include/wsockcompat.h71
-rw-r--r--libxml.h18
-rw-r--r--libxml.m42
-rw-r--r--libxml.spec.in29
-rw-r--r--libxml2.syms7
-rw-r--r--list.c8
-rw-r--r--macos/src/config-mac.h42
-rw-r--r--nanoftp.c18
-rw-r--r--nanohttp.c63
-rw-r--r--os400/initscript.sh4
-rw-r--r--os400/libxmlrpg/schemasInternals.rpgle2
-rw-r--r--os400/libxmlrpg/xmlreader.rpgle2
-rw-r--r--os400/libxmlrpg/xmlstring.rpgle4
-rw-r--r--os400/make-src.sh2
-rw-r--r--os400/make.sh2
-rw-r--r--os400/os400config.h.in56
-rw-r--r--os400/wrappers.c2
-rw-r--r--os400/wrappers.h2
-rw-r--r--parser.c1310
-rw-r--r--parserInternals.c36
-rw-r--r--pattern.c1
-rwxr-xr-xpython/setup.py242
-rwxr-xr-xpython/tests/xpathleak.py10
-rw-r--r--python/types.c2
-rw-r--r--relaxng.c52
-rw-r--r--result/HTML/53867.html.sax10
-rw-r--r--result/HTML/758518-entity.html2
-rw-r--r--result/HTML/758518-entity.html.err3
-rw-r--r--result/HTML/758518-entity.html.sax12
-rw-r--r--result/HTML/758518-tag.html2
-rw-r--r--result/HTML/758518-tag.html.err3
-rw-r--r--result/HTML/758518-tag.html.sax10
-rw-r--r--result/HTML/758605.html.sax2
-rw-r--r--result/HTML/Down.html.sax12
-rw-r--r--result/HTML/attrents.html.sax6
-rw-r--r--result/HTML/autoclose.html.sax2
-rw-r--r--result/HTML/cf_128.html.sax12
-rw-r--r--result/HTML/doc2.htm.sax14
-rw-r--r--result/HTML/doc3.htm.sax18
-rw-r--r--result/HTML/entities.html.sax2
-rw-r--r--result/HTML/entities2.html.sax4
-rw-r--r--result/HTML/fp40.htm.sax16
-rw-r--r--result/HTML/html5_enc.html.sax12
-rw-r--r--result/HTML/liclose.html.sax10
-rw-r--r--result/HTML/lt.html.sax10
-rw-r--r--result/HTML/noscript.html.sax14
-rw-r--r--result/HTML/pre.html.sax6
-rw-r--r--result/HTML/python.html.sax12
-rw-r--r--result/HTML/reg1.html.sax12
-rw-r--r--result/HTML/reg2.html.sax12
-rw-r--r--result/HTML/reg3.html.sax12
-rw-r--r--result/HTML/reg4.html.sax12
-rw-r--r--result/HTML/repeat.html.sax2
-rw-r--r--result/HTML/script.html.sax8
-rw-r--r--result/HTML/script2.html.sax14
-rw-r--r--result/HTML/test2.html.sax8
-rw-r--r--result/HTML/test3.html.sax10
-rw-r--r--result/HTML/utf8bug.html.sax16
-rw-r--r--result/HTML/wired.html.sax4
-rw-r--r--result/XPath/expr/base40
-rw-r--r--result/XPath/expr/floats8
-rw-r--r--result/XPath/expr/functions68
-rw-r--r--result/XPath/expr/strings8
-rw-r--r--result/XPath/tests/chaptersbase15
-rw-r--r--result/XPath/tests/nssimple18
-rw-r--r--result/XPath/tests/simplebase5
-rw-r--r--result/XPath/tests/strbase13
-rw-r--r--result/XPath/xptr/vidbase13
-rw-r--r--result/errors/754946.xml.err31
-rw-r--r--result/errors/754946.xml.str4
-rw-r--r--result/errors/759398.xml.err11
-rw-r--r--result/errors/759573-2.xml.err54
-rw-r--r--result/errors/759573.xml.err29
-rw-r--r--result/errors/759579.xml0
-rw-r--r--result/errors/759579.xml.err6
-rw-r--r--result/errors/759579.xml.str7
-rw-r--r--result/errors/attr1.xml.err9
-rw-r--r--result/errors/attr2.xml.err9
-rw-r--r--result/errors/name2.xml.err11
-rw-r--r--result/errors/name2.xml.str2
-rw-r--r--result/errors10/781205.xml0
-rw-r--r--result/errors10/781205.xml.err17
-rw-r--r--result/errors10/781361.xml0
-rw-r--r--result/errors10/781361.xml.err13
-rw-r--r--result/icu_parse_test.xml13
-rw-r--r--result/icu_parse_test.xml.rde14
-rw-r--r--result/icu_parse_test.xml.rdr14
-rw-r--r--result/icu_parse_test.xml.sax9
-rw-r--r--result/icu_parse_test.xml.sax29
-rw-r--r--result/noent/att1.sax25
-rw-r--r--result/noent/att10.sax257
-rw-r--r--result/noent/att11.sax220
-rw-r--r--result/noent/att2.sax25
-rw-r--r--result/noent/att3.sax28
-rw-r--r--result/noent/att4.sax236976
-rw-r--r--result/noent/att5.sax2149
-rw-r--r--result/noent/att6.sax220
-rw-r--r--result/noent/att7.sax223
-rw-r--r--result/noent/att8.sax229
-rw-r--r--result/noent/att9.sax29
-rw-r--r--result/noent/attrib.xml.sax25
-rw-r--r--result/noent/badcomment.xml.sax224
-rw-r--r--result/noent/bigentname.xml.sax215
-rw-r--r--result/noent/bigname.xml.sax25
-rw-r--r--result/noent/bigname2.xml.sax25
-rw-r--r--result/noent/cdata-2-byte-UTF-8.xml.sax218
-rw-r--r--result/noent/cdata-3-byte-UTF-8.xml.sax223
-rw-r--r--result/noent/cdata-4-byte-UTF-8.xml.sax228
-rw-r--r--result/noent/cdata.sax210
-rw-r--r--result/noent/cdata2.sax217
-rw-r--r--result/noent/comment.xml.sax217
-rw-r--r--result/noent/comment2.xml.sax213
-rw-r--r--result/noent/comment3.xml.sax2167
-rw-r--r--result/noent/comment4.xml.sax28
-rw-r--r--result/noent/comment5.xml.sax212
-rw-r--r--result/noent/comment6.xml.sax217
-rw-r--r--result/noent/dav1.sax281
-rw-r--r--result/noent/dav10.sax212
-rw-r--r--result/noent/dav11.sax262
-rw-r--r--result/noent/dav12.sax26
-rw-r--r--result/noent/dav13.sax246
-rw-r--r--result/noent/dav15.sax276
-rw-r--r--result/noent/dav16.sax217
-rw-r--r--result/noent/dav17.sax278
-rw-r--r--result/noent/dav18.sax217
-rw-r--r--result/noent/dav19.sax262
-rw-r--r--result/noent/dav2.sax284
-rw-r--r--result/noent/dav3.sax263
-rw-r--r--result/noent/dav4.sax251
-rw-r--r--result/noent/dav5.sax254
-rw-r--r--result/noent/dav6.sax266
-rw-r--r--result/noent/dav7.sax260
-rw-r--r--result/noent/dav8.sax254
-rw-r--r--result/noent/dav9.sax270
-rw-r--r--result/noent/defattr.xml.sax29
-rw-r--r--result/noent/defattr2.xml.sax211
-rw-r--r--result/noent/dia1.sax2323
-rw-r--r--result/noent/dia2.sax2323
-rw-r--r--result/noent/dtd1.sax29
-rw-r--r--result/noent/dtd10.sax221
-rw-r--r--result/noent/dtd11.sax29
-rw-r--r--result/noent/dtd12.sax215
-rw-r--r--result/noent/dtd13.sax210
-rw-r--r--result/noent/dtd2.sax29
-rw-r--r--result/noent/dtd3.sax29
-rw-r--r--result/noent/dtd4.sax28
-rw-r--r--result/noent/dtd5.sax218
-rw-r--r--result/noent/dtd6.sax219
-rw-r--r--result/noent/dtd7.sax216
-rw-r--r--result/noent/dtd8.sax218
-rw-r--r--result/noent/dtd9.sax218
-rw-r--r--result/noent/ebcdic_566012.xml.sax25
-rw-r--r--result/noent/emptycdata.xml.sax210
-rw-r--r--result/noent/ent1.sax215
-rw-r--r--result/noent/ent10.sax230
-rw-r--r--result/noent/ent11.sax212
-rw-r--r--result/noent/ent12.sax220
-rw-r--r--result/noent/ent13.sax211
-rw-r--r--result/noent/ent2.sax237
-rw-r--r--result/noent/ent3.sax212
-rw-r--r--result/noent/ent4.sax216
-rw-r--r--result/noent/ent5.sax213
-rw-r--r--result/noent/ent6.sax217
-rw-r--r--result/noent/ent7.sax217
-rw-r--r--result/noent/ent8.sax235
-rw-r--r--result/noent/ent9.sax2308
-rw-r--r--result/noent/ent_738805.xml.sax254
-rw-r--r--result/noent/eve.xml.sax211
-rw-r--r--result/noent/icu_parse_test.xml13
-rw-r--r--result/noent/icu_parse_test.xml.sax29
-rw-r--r--result/noent/intsubset.xml.sax29
-rw-r--r--result/noent/intsubset2.xml.sax2286
-rw-r--r--result/noent/isolat1.sax27
-rw-r--r--result/noent/isolat2.sax235
-rw-r--r--result/noent/isolat3.sax229
-rw-r--r--result/noent/japancrlf.xml.sax211
-rw-r--r--result/noent/ns.sax211
-rw-r--r--result/noent/ns2.sax25
-rw-r--r--result/noent/ns3.sax25
-rw-r--r--result/noent/ns4.sax25
-rw-r--r--result/noent/ns5.sax211
-rw-r--r--result/noent/ns6.sax215
-rw-r--r--result/noent/ns7.sax25
-rw-r--r--result/noent/nsclean.xml.sax213
-rw-r--r--result/noent/p3p.sax265
-rw-r--r--result/noent/pi.xml.sax217
-rw-r--r--result/noent/pi2.xml.sax213
-rw-r--r--result/noent/rdf1.sax2186
-rw-r--r--result/noent/rdf2.sax2191
-rw-r--r--result/noent/slashdot.rdf.sax2221
-rw-r--r--result/noent/slashdot.xml.sax2517
-rw-r--r--result/noent/slashdot16.xml.sax2721
-rw-r--r--result/noent/svg1.sax2613
-rw-r--r--result/noent/svg2.sax2189
-rw-r--r--result/noent/svg3.sax22407
-rw-r--r--result/noent/title.xml.sax26
-rw-r--r--result/noent/tstblanks.xml.sax26
-rw-r--r--result/noent/utf16bebom.xml.sax28
-rw-r--r--result/noent/utf16bom.xml.sax27
-rw-r--r--result/noent/utf16lebom.xml.sax28
-rw-r--r--result/noent/utf8bom.xml.sax25
-rw-r--r--result/noent/wap.xml.sax287
-rw-r--r--result/noent/winblanks.xml.sax218
-rw-r--r--result/noent/wml.xml.sax231
-rw-r--r--result/noent/xhtml1.sax2104
-rw-r--r--result/noent/xhtmlcomp.sax223
-rw-r--r--result/noent/xml1.sax222
-rw-r--r--result/noent/xml2.sax218
-rw-r--r--result/relaxng/pattern3_err1
-rw-r--r--result/relaxng/pattern3_valid0
-rw-r--r--result/scripts/set3.err2
-rw-r--r--result/valid/766956.xml0
-rw-r--r--result/valid/766956.xml.err9
-rw-r--r--result/valid/766956.xml.err.rdr10
-rw-r--r--result/valid/781333.xml5
-rw-r--r--result/valid/781333.xml.err3
-rw-r--r--result/valid/781333.xml.err.rdr6
-rw-r--r--result/valid/t8.xml.err24
-rw-r--r--result/valid/t8.xml.err.rdr22
-rw-r--r--result/valid/t8a.xml.err24
-rw-r--r--result/valid/t8a.xml.err.rdr22
-rw-r--r--runtest.c167
-rw-r--r--test/HTML/758518-entity.html1
-rw-r--r--test/HTML/758518-tag.html1
-rw-r--r--test/XPath/docs/ns2
-rw-r--r--test/XPath/docs/str2
-rw-r--r--test/XPath/expr/base10
-rw-r--r--test/XPath/expr/floats2
-rw-r--r--test/XPath/expr/functions17
-rw-r--r--test/XPath/expr/strings2
-rw-r--r--test/XPath/tests/chaptersbase3
-rw-r--r--test/XPath/tests/nssimple2
-rw-r--r--test/XPath/tests/simplebase1
-rw-r--r--test/XPath/tests/strbase1
-rw-r--r--test/errors/754946.xml5
-rw-r--r--test/errors/759579.xml11
-rw-r--r--test/errors10/781205.xml3
-rw-r--r--test/errors10/781361.xml3
-rw-r--r--test/icu_parse_test.xml13
-rw-r--r--test/valid/766956.xml2
-rw-r--r--test/valid/781333.xml4
-rw-r--r--test/valid/dtds/766956.dtd2
-rw-r--r--testThreads.c6
-rw-r--r--testapi.c233
-rw-r--r--testlimits.c9
-rw-r--r--testrecurse.c4
-rw-r--r--threads.c115
-rw-r--r--timsort.h584
-rw-r--r--tree.c30
-rw-r--r--uri.c52
-rw-r--r--valid.c186
-rwxr-xr-xvms/build_libxml.com6
-rwxr-xr-xvms/config.vms45
-rw-r--r--win32/Makefile.bcb6
-rw-r--r--win32/Makefile.mingw8
-rw-r--r--win32/Makefile.msvc24
-rw-r--r--win32/VC10/config.h6
-rw-r--r--win32/configure.js12
-rw-r--r--win32/libxml2.rc36
-rw-r--r--xinclude.c10
-rw-r--r--xlink.c2
-rw-r--r--xmlIO.c247
-rw-r--r--xmlcatalog.c12
-rw-r--r--xmllint.c200
-rw-r--r--xmlmemory.c27
-rw-r--r--xmlmodule.c10
-rw-r--r--xmlreader.c9
-rw-r--r--xmlregexp.c15
-rw-r--r--xmlsave.c57
-rw-r--r--xmlschemas.c154
-rw-r--r--xmlschemastypes.c14
-rw-r--r--xmlstring.c9
-rw-r--r--xmlunicode.c6
-rw-r--r--xmlwriter.c21
-rw-r--r--xpath.c742
-rw-r--r--xpointer.c38
-rw-r--r--xzlib.c28
380 files changed, 51448 insertions, 4527 deletions
diff --git a/.gitignore b/.gitignore
index 84cf80fc..680a7e11 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,4 @@
+*.exe
*.o
*.lo
*.log
@@ -76,6 +77,7 @@ python/libxml2.py
python/libxml2class.py
python/libxml2class.txt
python/libxml2mod.la
+python/setup.py
python/tests/Makefile
python/tests/Makefile.in
python/tests/tmp.xml
diff --git a/.travis.yml b/.travis.yml
new file mode 100644
index 00000000..da481433
--- /dev/null
+++ b/.travis.yml
@@ -0,0 +1,22 @@
+language: c
+sudo: false
+addons:
+ apt:
+ packages:
+ # Some tests require the DTDs.
+ w3c-sgml-lib
+matrix:
+ include:
+ # Try to emulate a C89 compiler on a POSIX system by disabling as many
+ # GNU extensions as possible.
+ - compiler: gcc
+ env: CFLAGS="-O2 -std=c89 -D_XOPEN_SOURCE=700 -Werror -Wno-error=unused-function"
+ # clang with AddressSanitizer and UndefinedBehaviorSanitizer.
+ - compiler: clang
+ dist: trusty
+ env: CONFIG="--without-python"
+ CFLAGS="-O2 -g -fno-omit-frame-pointer -fsanitize=address,undefined -fno-sanitize=float-divide-by-zero,pointer-overflow -fno-sanitize-recover=all -Werror -Wno-error=unused-function -Wno-error=cast-align"
+ UBSAN_OPTIONS=print_stacktrace=1
+script: sh autogen.sh $CONFIG && make -j2 V=1 && make check
+git:
+ depth: 10
diff --git a/CONTRIBUTING b/CONTRIBUTING
new file mode 100644
index 00000000..6f7a9885
--- /dev/null
+++ b/CONTRIBUTING
@@ -0,0 +1,24 @@
+The current version of the code can be found in the GNOME Git Repository:
+
+ https://git.gnome.org/browse/libxml2/
+
+There's mirror on GitHub:
+
+ https://github.com/GNOME/libxml2
+
+Start discussions and send patches to the mailing list, or file a bug and
+add a patch as attachment.
+
+ https://mail.gnome.org/mailman/listinfo/xml
+ https://bugzilla.gnome.org/enter_bug.cgi?product=libxml2
+
+Format patches with git-format-patch and use plain text attachments
+if possible.
+
+All code must conform to C89 and pass the "make check" tests. Avoid
+compiler warnings and add regression tests if possible.
+
+The .travis.yml file can be used to thoroughly check the build with strict
+compiler flags, ASan and UBSan. Fork the libxml2 mirror on GitHub and set
+up Travis to test the commits you make on your fork.
+
diff --git a/ChangeLog b/ChangeLog
index ef6cb8e4..896fbbb6 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1929,7 +1929,7 @@ Mon Jun 12 12:54:25 CEST 2006 Kasimier Buchcik <libxml2-cvs@cazic.net>
* tree.c: Fixed xmlGetNodePath() to generate the node test "*"
for elements in the default namespace, rather than generating
- an unprefixed named node test and loosing the namespace
+ an unprefixed named node test and losing the namespace
information.
Fri Jun 9 21:45:02 CEST 2006 Kasimier Buchcik <libxml2-cvs@cazic.net>
@@ -2305,7 +2305,7 @@ Mon Mar 6 14:21:08 CET 2006 Kasimier Buchcik <libxml2-cvs@cazic.net>
* tree.c: Simplified usage of the internal xmlNsMap. Added a
"strict" lookup for namespaces based on a prefix. Fixed a
namespace processing issue in the clone-node function, which
- occured if a @ctxt argument was given.
+ occurred if a @ctxt argument was given.
Fri Mar 3 17:44:10 CET 2006 Rob Richards <rrichards@ctindustries.net>
@@ -3951,7 +3951,7 @@ Thu Jun 30 15:01:52 CEST 2005 Daniel Veillard <daniel@veillard.com>
* README: updated
* debugXML.c: fix a bug raised by bill on IRC
* relaxng.c: fix a leak in weird circumstances
- * runsuite.c Makefile.am: standalone test tool agaisnt
+ * runsuite.c Makefile.am: standalone test tool against
the regression suites, work in progress
Tue Jun 28 08:30:26 CEST 2005 Daniel Veillard <daniel@veillard.com>
@@ -4356,7 +4356,7 @@ Fri Apr 8 21:58:04 CEST 2005 Kasimier Buchcik <libxml2-cvs@cazic.net>
* xmlschemas.c: Added substitution group constraints; changed
the build of the pre-computed substitution groups. Channeled
errors during xsi assembling of schemas to the validation
- context. Fixed a big memory leak, which occured when using
+ context. Fixed a big memory leak, which occurred when using
IDCs: the precomputed value of attributes was not freed if
the attribute did not resolve to an IDC field (discovered
with the help of Randy J. Ray's schema, posted to the
@@ -4551,7 +4551,7 @@ Mon Mar 21 22:58:37 CET 2005 Kasimier Buchcik <libxml2-cvs@cazic.net>
Mon Mar 21 21:09:07 CET 2005 Kasimier Buchcik <libxml2-cvs@cazic.net>
- * xmlschemas.c: Fixed a segfault, which occured during bubbling
+ * xmlschemas.c: Fixed a segfault, which occurred during bubbling
of IDC nodes (bug #170779 and #170778, reported by GUY Fabrice):
a variable was missed to be reset in a loop. Deactivated bubbling,
if not referenced by a keyref.
@@ -11220,7 +11220,7 @@ Fri Mar 7 19:29:40 CET 2003 Daniel Veillard <daniel@veillard.com>
* test/xsdtest/xsdtest.xml uri.c: after and exchange with James
Clark it appeared I had bug in URI parsing code ...
* relaxng.c include/libxml/relaxng.h: completely revamped error
- reporting to not loose message from optional parts.
+ reporting to not lose message from optional parts.
* xmllint.c: added timing for RNG validation steps
* result/relaxng/*: updated the result, all error messages changed
@@ -13182,7 +13182,7 @@ Thu Aug 1 12:17:30 CEST 2002 Daniel Veillard <daniel@veillard.com>
xmlNewCharEncodingHandler as requested in #89415
* python/generator.py python/setup.py.in: applied cleanup
patches from Marc-Andre Lemburg
- * tree.c: fixing bug #89332 on a specific case of loosing
+ * tree.c: fixing bug #89332 on a specific case of losing
the XML-1.0 namespace on xml:xxx attributes
Wed Jul 31 23:27:42 2002 Aleksey Sanin <aleksey@aleksey.com>
@@ -15356,7 +15356,7 @@ Sat Oct 6 15:27:12 CEST 2001 Daniel Veillard <daniel@veillard.com>
Sat Oct 6 15:07:14 CEST 2001 Daniel Veillard <daniel@veillard.com>
- * xpath.c: fixing #61673 part I, do not loose doc information
+ * xpath.c: fixing #61673 part I, do not lose doc information
when copying result value trees.
Sat Oct 6 11:58:58 CEST 2001 Daniel Veillard <daniel@veillard.com>
@@ -15970,7 +15970,7 @@ Tue Jul 10 17:47:09 CEST 2001 Daniel Veillard <Daniel.Veillard@imag.fr>
Mon Jul 9 22:06:53 CEST 2001 Daniel Veillard <Daniel.Veillard@imag.fr>
* valid.c: fixed "Internal: MIXED struct bad" when #CDATA elements
- validation occured on content with element child
+ validation occurred on content with element child
Mon Jul 9 17:59:08 CEST 2001 Daniel Veillard <Daniel.Veillard@imag.fr>
diff --git a/HACKING b/HACKING
deleted file mode 100644
index 5d282947..00000000
--- a/HACKING
+++ /dev/null
@@ -1,37 +0,0 @@
-NOTE:
- - the head of this module is package libxml-2 . There is incompatibilities
- with the old libxml-1 headers. I posted on gnome-hackers a recipe to
- change your code to compile with both, check it out ! Also read
- http://xmlsoft.org/upgrade.html
- - in the meantime the old 1.x code has been tagged with LIB_XML_1_BRANCH
- extract this version and drop me a mail if you want me to take care of
- the update of your module to libxml-2 <daniel@veillard.com>
- - the 1.x branch has a separate commit policy, please check the HACKING
- file for this branch
-
- Rules for commits on the gnome-xml module
- =========================================
-
- BEFORE READING FURTHER: DO NOT COMMIT DIRECTLY !
-
- In the exceptional case where a serious breakage in this module
-prevents other core projects from making progress, then feel free
-to patch first and send mail afterward as long as the changes are limited.
-Please keep in mind that a large part of my user base is on Windows, so
-be careful with potential portability problems there.
-
-Otherwise, send me (veillard@redhat.com) a mail and if it's a bug
-issue, register it at bugzilla.gnome.org (module libxml). I check both
-my mail and the bug database on a regular basis. If you don't get an
-answer within a week (which is highly unprobable) then commit your changes.
-This simply mean that I'm on holliday or on the road.
-
- thanks in advance for following the rule,
-
-Daniel
-
-P.S.: Bjorn Reese, William Brack, Thomas Broyer, Igor Zlatkovic and
- Aleksey Sanin get an exception for the send before commit rule
- as well as John Fleck for the doc maintenance Send them mail if
- I don't answer to request in a timely fashion
-
diff --git a/Makefile.am b/Makefile.am
index 9f988b06..9c630be4 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -8,12 +8,12 @@ DIST_SUBDIRS = include . doc example python xstc
AM_CPPFLAGS = -I$(top_builddir)/include -I$(srcdir)/include
-AM_CFLAGS = $(THREAD_CFLAGS) $(Z_CFLAGS) $(LZMA_CFLAGS)
+AM_CFLAGS = $(EXTRA_CFLAGS) $(THREAD_CFLAGS) $(Z_CFLAGS) $(LZMA_CFLAGS)
-noinst_PROGRAMS=testSchemas testRelax testSAX testHTML testXPath testURI \
- testThreads testC14N testAutomata testRegexp \
- testReader testapi testModule runtest runsuite testchar \
- testdict runxmlconf testrecurse testlimits
+check_PROGRAMS=testSchemas testRelax testSAX testHTML testXPath testURI \
+ testThreads testC14N testAutomata testRegexp \
+ testReader testapi testModule runtest runsuite testchar \
+ testdict runxmlconf testrecurse testlimits
bin_PROGRAMS = xmllint xmlcatalog
@@ -202,10 +202,16 @@ runxmlconf_LDADD= $(LDADDS)
#testOOM_DEPENDENCIES = $(DEPS)
#testOOM_LDADD= $(LDADDS)
-runtests:
+runtests: runtest$(EXEEXT) testrecurse$(EXEEXT) testapi$(EXEEXT) \
+ testchar$(EXEEXT) testdict$(EXEEXT) runxmlconf$(EXEEXT)
[ -d test ] || $(LN_S) $(srcdir)/test .
[ -d result ] || $(LN_S) $(srcdir)/result .
- $(CHECKER) ./runtest$(EXEEXT) && $(CHECKER) ./testrecurse$(EXEEXT) &&$(CHECKER) ./testapi$(EXEEXT) && $(CHECKER) ./testchar$(EXEEXT)&& $(CHECKER) ./testdict$(EXEEXT) && $(CHECKER) ./runxmlconf$(EXEEXT)
+ $(CHECKER) ./runtest$(EXEEXT) && \
+ $(CHECKER) ./testrecurse$(EXEEXT) && \
+ ASAN_OPTIONS="$$ASAN_OPTIONS:detect_leaks=0" $(CHECKER) ./testapi$(EXEEXT) && \
+ $(CHECKER) ./testchar$(EXEEXT) && \
+ $(CHECKER) ./testdict$(EXEEXT) && \
+ $(CHECKER) ./runxmlconf$(EXEEXT)
@(if [ "$(PYTHON_SUBDIR)" != "" ] ; then cd python ; \
$(MAKE) tests ; fi)
@@ -224,12 +230,12 @@ testall : tests SVGtests SAXtests
tests: XMLtests XMLenttests NStests IDtests Errtests APItests $(READER_TEST) $(TEST_SAX) $(TEST_PUSH) $(TEST_HTML) $(TEST_PHTML) $(TEST_VALID) URItests $(TEST_PATTERN) $(TEST_XPATH) $(TEST_XPTR) $(TEST_XINCLUDE) $(TEST_C14N) $(TEST_DEBUG) $(TEST_CATALOG) $(TEST_REGEXPS) $(TEST_SCHEMAS) $(TEST_SCHEMATRON) $(TEST_THREADS) Timingtests $(TEST_VTIME) $(PYTHON_TESTS) $(TEST_MODULES)
@(if [ "$(PYTHON_SUBDIR)" != "" ] ; then cd python ; \
- $(MAKE) tests ; fi)
- @(cd doc/examples ; $(MAKE) tests)
+ $(MAKE) -s tests ; fi)
+ @(cd doc/examples ; $(MAKE) -s tests)
APItests: testapi$(EXEEXT)
@echo "## Running the API regression tests this may take a little while"
- -@($(CHECKER) $(top_builddir)/testapi -q)
+ -@(ASAN_OPTIONS="$$ASAN_OPTIONS:detect_leaks=0" $(CHECKER) $(top_builddir)/testapi -q)
HTMLtests : testHTML$(EXEEXT)
@(echo > .memdump)
@@ -247,7 +253,7 @@ HTMLtests : testHTML$(EXEEXT)
diff -b $(srcdir)/result/HTML/$$name.err error.$$name ; \
$(CHECKER) $(top_builddir)/testHTML result.$$name > result2.$$name 2>error.$$name ; \
diff result.$$name result2.$$name` ; \
- if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \
+ if [ -n "$$log" ] ; then echo $$name result ; echo "$$log" ; fi ; \
rm result.$$name result2.$$name error.$$name ; \
fi ; fi ; done)
@@ -268,7 +274,7 @@ HTMLPushtests : testHTML$(EXEEXT)
diff -b errorcut.$$name errorcut2.$$name ; \
$(CHECKER) $(top_builddir)/testHTML --push result.$$name > result2.$$name 2>error.$$name ; \
diff result.$$name result2.$$name` ; \
- if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \
+ if [ -n "$$log" ] ; then echo $$name result ; echo "$$log" ; fi ; \
rm result.$$name result2.$$name error.$$name errorcut.$$name errorcut2.$$name ; \
fi ; fi ; done)
@echo "## HTML SAX regression tests"
@@ -282,7 +288,7 @@ HTMLPushtests : testHTML$(EXEEXT)
log=`$(CHECKER) $(top_builddir)/testHTML --sax $$i > result.$$name.sax ; \
grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\
diff $(srcdir)/result/HTML/$$name.sax result.$$name.sax` ; \
- if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \
+ if [ -n "$$log" ] ; then echo $$name result ; echo "$$log" ; fi ; \
rm result.$$name.sax ; \
fi ; fi ; done)
@echo "## Push HTML SAX regression tests"
@@ -296,7 +302,7 @@ HTMLPushtests : testHTML$(EXEEXT)
log=`$(CHECKER) $(top_builddir)/testHTML --push --sax $$i 2>&1 > result.$$name.sax ; \
grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\
diff $(srcdir)/result/HTML/$$name.sax result.$$name.sax` ; \
- if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \
+ if [ -n "$$log" ] ; then echo $$name result ; echo "$$log" ; fi ; \
rm result.$$name.sax ; \
fi ; fi ; done)
@@ -317,7 +323,7 @@ XMLtests : xmllint$(EXEEXT)
$(CHECKER) $(top_builddir)/xmllint result.$$name 2>&1 > result2.$$name | grep -v 'failed to load external entity' ; \
grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \
diff result.$$name result2.$$name` ;\
- if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \
+ if [ -n "$$log" ] ; then echo $$name result ; echo "$$log" ; fi ; \
rm result.$$name result2.$$name ; \
fi ; fi ; done)
@echo "## XML regression tests on memory"
@@ -334,7 +340,7 @@ XMLtests : xmllint$(EXEEXT)
diff $(srcdir)/result/$$name result.$$name ; \
$(CHECKER) $(top_builddir)/xmllint --memory result.$$name 2>&1 > result2.$$name | grep -v 'failed to load external entity' ; \
grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"`; \
- if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \
+ if [ -n "$$log" ] ; then echo $$name result ; echo "$$log" ; fi ; \
diff result.$$name result2.$$name ; \
rm result.$$name result2.$$name ; \
fi ; fi ; done)
@@ -356,7 +362,7 @@ XMLPushtests: xmllint$(EXEEXT)
$(CHECKER) $(top_builddir)/xmllint --push result.$$name 2>&1 > result2.$$name | grep -v 'failed to load external entity' ; \
grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \
diff result.$$name result2.$$name` ; \
- if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \
+ if [ -n "$$log" ] ; then echo $$name result ; echo "$$log" ; fi ; \
rm result.$$name result2.$$name ; \
fi ; fi ; done)
@@ -377,7 +383,7 @@ NStests : xmllint$(EXEEXT)
grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \
diff $(srcdir)/result/namespaces/$$name result.$$name ; \
diff $(srcdir)/result/namespaces/$$name.err error.$$name`; \
- if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \
+ if [ -n "$$log" ] ; then echo $$name result ; echo "$$log" ; fi ; \
rm result.$$name error.$$name ; \
fi ; fi ; done)
@@ -398,7 +404,7 @@ IDtests : xmllint$(EXEEXT) testXPath$(EXEEXT)
grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \
diff $(srcdir)/result/xmlid/$$name result.$$name ; \
diff $(srcdir)/result/xmlid/$$name.err error.$$name` ; \
- if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \
+ if [ -n "$$log" ] ; then echo $$name result ; echo "$$log" ; fi ; \
rm result.$$name error.$$name ; \
fi ; fi ; done)
@@ -419,7 +425,25 @@ Errtests : xmllint$(EXEEXT)
grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \
diff $(srcdir)/result/errors/$$name result.$$name ; \
diff $(srcdir)/result/errors/$$name.err error.$$name` ; \
- if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \
+ if [ -n "$$log" ] ; then echo $$name result ; echo "$$log" ; fi ; \
+ rm result.$$name error.$$name ; \
+ fi ; fi ; done)
+ @echo "## Error cases regression tests (old 1.0)"
+ -@(for i in $(srcdir)/test/errors10/*.xml ; do \
+ name=`basename $$i`; \
+ if [ ! -d $$i ] ; then \
+ if [ ! -f $(srcdir)/result/errors10/$$name ] ; then \
+ echo New test file $$name ; \
+ $(CHECKER) $(top_builddir)/xmllint --oldxml10 $$i \
+ 2> $(srcdir)/result/errors10/$$name.err \
+ > $(srcdir)/result/errors10/$$name ; \
+ grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \
+ else \
+ log=`$(CHECKER) $(top_builddir)/xmllint --oldxml10 $$i 2> error.$$name > result.$$name ; \
+ grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \
+ diff $(srcdir)/result/errors10/$$name result.$$name ; \
+ diff $(srcdir)/result/errors10/$$name.err error.$$name` ; \
+ if [ -n "$$log" ] ; then echo $$name result ; echo "$$log" ; fi ; \
rm result.$$name error.$$name ; \
fi ; fi ; done)
@echo "## Error cases stream regression tests"
@@ -436,7 +460,7 @@ Errtests : xmllint$(EXEEXT)
log=`$(CHECKER) $(top_builddir)/xmllint --stream $$i 2> error.$$name > /dev/null ; \
grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \
diff $(srcdir)/result/errors/$$name.str error.$$name` ; \
- if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \
+ if [ -n "$$log" ] ; then echo $$name result ; echo "$$log" ; fi ; \
rm error.$$name ; \
fi ; fi ; done)
@@ -459,7 +483,7 @@ XMLenttests : xmllint$(EXEEXT)
$(CHECKER) $(top_builddir)/xmllint --noent result.$$name 2>&1 > result2.$$name ; \
grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \
diff result.$$name result2.$$name` ; \
- if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \
+ if [ -n "$$log" ] ; then echo $$name result ; echo "$$log" ; fi ; \
rm result.$$name result2.$$name ; \
fi ; fi ; done)
@@ -477,7 +501,7 @@ URItests : testURI$(EXEEXT)
log=`$(CHECKER) $(top_builddir)/testURI -base 'http://foo.com/path/to/index.html?orig#help' < $$i 2>&1 > result.$$name ; \
grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\
diff $(srcdir)/result/URI/$$name result.$$name` ; \
- if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \
+ if [ -n "$$log" ] ; then echo $$name result ; echo "$$log" ; fi ; \
rm result.$$name ; \
fi ; fi ; done)
-@(for i in $(srcdir)/test/URI/*.uri ; do \
@@ -491,7 +515,7 @@ URItests : testURI$(EXEEXT)
log=`$(CHECKER) $(top_builddir)/testURI < $$i 2>&1 > result.$$name ; \
grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\
diff $(srcdir)/result/URI/$$name result.$$name` ; \
- if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \
+ if [ -n "$$log" ] ; then echo $$name result ; echo "$$log" ; fi ; \
rm result.$$name ; \
fi ; fi ; done)
@@ -505,13 +529,13 @@ XPathtests : testXPath$(EXEEXT)
if [ ! -d $$i ] ; then \
if [ ! -f $(srcdir)/result/XPath/expr/$$name ] ; then \
echo New test file $$name ; \
- $(CHECKER) $(top_builddir)/testXPath -f --expr $$i > $(srcdir)/result/XPath/expr/$$name ; \
+ $(CHECKER) $(top_builddir)/testXPath -f --expr $$i > $(srcdir)/result/XPath/expr/$$name 2> /dev/null ; \
grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\
else \
- log=`$(CHECKER) $(top_builddir)/testXPath -f --expr $$i 2>&1 > result.$$name ; \
+ log=`$(CHECKER) $(top_builddir)/testXPath -f --expr $$i > result.$$name 2> /dev/null ; \
grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\
diff $(srcdir)/result/XPath/expr/$$name result.$$name` ; \
- if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \
+ if [ -n "$$log" ] ; then echo $$name result ; echo "$$log" ; fi ; \
rm result.$$name ; \
fi ; fi ; done ; \
for i in $(srcdir)/test/XPath/docs/* ; do \
@@ -526,10 +550,10 @@ XPathtests : testXPath$(EXEEXT)
$(CHECKER) $(top_builddir)/testXPath -f -i $$i $$j > $(srcdir)/result/XPath/tests/$$name ; \
grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\
else \
- log=`$(CHECKER) $(top_builddir)/testXPath -f -i $$i $$j 2>&1 > result.$$name ; \
+ log=`$(CHECKER) $(top_builddir)/testXPath -f -i $$i $$j > result.$$name ; \
grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\
diff $(srcdir)/result/XPath/tests/$$name result.$$name` ; \
- if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \
+ if [ -n "$$log" ] ; then echo $$name result ; echo "$$log" ; fi ; \
rm result.$$name ; \
fi ; fi ; done ; fi ; done)
@@ -547,13 +571,13 @@ XPtrtests : testXPath$(EXEEXT)
if [ ! -d $$j ] ; then \
if [ ! -f $(srcdir)/result/XPath/xptr/$$name ] ; then \
echo New test file $$name ; \
- $(CHECKER) $(top_builddir)/testXPath -xptr -f -i $$i $$j > $(srcdir)/result/XPath/xptr/$$name ; \
+ $(CHECKER) $(top_builddir)/testXPath -xptr -f -i $$i $$j > $(srcdir)/result/XPath/xptr/$$name 2> /dev/null ; \
grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \
else \
- log=`$(CHECKER) $(top_builddir)/testXPath -xptr -f -i $$i $$j 2>&1 > result.$$name ; \
+ log=`$(CHECKER) $(top_builddir)/testXPath -xptr -f -i $$i $$j > result.$$name 2> /dev/null ; \
grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\
diff $(srcdir)/result/XPath/xptr/$$name result.$$name` ; \
- if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \
+ if [ -n "$$log" ] ; then echo $$name result ; echo "$$log" ; fi ; \
rm result.$$name ; \
fi ; fi ; done ; fi ; done)
@@ -572,7 +596,7 @@ XIncludetests : xmllint$(EXEEXT)
grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\
diff $(srcdir)/result/XInclude/$$name result.$$name ; \
diff $(srcdir)/result/XInclude/$$name.err error.$$name` ; \
- if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \
+ if [ -n "$$log" ] ; then echo $$name result ; echo "$$log" ; fi ; \
rm result.$$name error.$$name ; \
fi ; fi ; done)
-@(for i in $(srcdir)/test/XInclude/docs/* ; do \
@@ -587,7 +611,7 @@ XIncludetests : xmllint$(EXEEXT)
grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\
diff $(srcdir)/result/XInclude/$$name result.$$name ; \
diff $(srcdir)/result/XInclude/$$name.err error.$$name` ; \
- if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \
+ if [ -n "$$log" ] ; then echo $$name result ; echo "$$log" ; fi ; \
rm result.$$name error.$$name ; \
fi ; fi ; done)
@(echo > .memdump)
@@ -604,7 +628,7 @@ XIncludetests : xmllint$(EXEEXT)
grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\
diff $(srcdir)/result/XInclude/$$name.err error.$$name ; \
diff $(srcdir)/result/XInclude/$$name.rdr result.$$name` ; \
- if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \
+ if [ -n "$$log" ] ; then echo $$name result ; echo "$$log" ; fi ; \
rm result.$$name error.$$name ; \
fi ; fi ; done)
-@(for i in $(srcdir)/test/XInclude/docs/* ; do \
@@ -619,7 +643,7 @@ XIncludetests : xmllint$(EXEEXT)
grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\
diff $(srcdir)/result/XInclude/$$name.err error.$$name ; \
diff $(srcdir)/result/XInclude/$$name.rdr result.$$name` ; \
- if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \
+ if [ -n "$$log" ] ; then echo $$name result ; echo "$$log" ; fi ; \
rm result.$$name error.$$name ; \
fi ; fi ; done)
@@ -640,7 +664,7 @@ Scripttests : xmllint$(EXEEXT)
grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\
diff $(srcdir)/result/scripts/$$name result.$$name ; \
diff $(srcdir)/result/scripts/$$name.err result.$$name.err` ; \
- if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \
+ if [ -n "$$log" ] ; then echo $$name result ; echo "$$log" ; fi ; \
rm result.$$name result.$$name.err ; \
fi ; fi ; done)
@@ -659,7 +683,7 @@ Catatests : xmlcatalog$(EXEEXT)
log=`$(CHECKER) $(top_builddir)/xmlcatalog --shell $$xml < $$i 2>&1 > result.$$name ; \
grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\
diff $(srcdir)/result/catalogs/$$name result.$$name` ; \
- if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \
+ if [ -n "$$log" ] ; then echo $$name result ; echo "$$log" ; fi ; \
rm result.$$name ; \
fi ; fi ; done)
-@(for i in $(srcdir)/test/catalogs/*.script ; do \
@@ -674,7 +698,7 @@ Catatests : xmlcatalog$(EXEEXT)
log=`$(CHECKER) $(top_builddir)/xmlcatalog --shell $$sgml < $$i > result.$$name ; \
grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\
diff $(srcdir)/result/catalogs/$$name result.$$name` ; \
- if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \
+ if [ -n "$$log" ] ; then echo $$name result ; echo "$$log" ; fi ; \
rm result.$$name ; \
fi ; fi ; done)
@echo "## Add and del operations on XML Catalogs"
@@ -738,7 +762,7 @@ Readertests : xmllint$(EXEEXT)
log=`$(CHECKER) $(top_builddir)/xmllint --nonet --debug --stream $$i > result.$$name 2>/dev/null ; \
grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\
diff $(srcdir)/result/$$name.rdr result.$$name` ; \
- if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \
+ if [ -n "$$log" ] ; then echo $$name result ; echo "$$log" ; fi ; \
rm result.$$name ; \
fi ; fi ; done)
@echo "## Reader on memory regression tests"
@@ -753,7 +777,7 @@ Readertests : xmllint$(EXEEXT)
log=`$(CHECKER) $(top_builddir)/xmllint --memory --nonet --debug --stream $$i > result.$$name 2>/dev/null ; \
grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\
diff $(srcdir)/result/$$name.rdr result.$$name` ; \
- if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \
+ if [ -n "$$log" ] ; then echo $$name result ; echo "$$log" ; fi ; \
rm result.$$name ; \
fi ; fi ; done)
@(echo > .memdump)
@@ -769,7 +793,7 @@ Readertests : xmllint$(EXEEXT)
log=`$(CHECKER) $(top_builddir)/xmllint --nonet --debug --walker $$i > result.$$name 2>/dev/null ; \
grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\
diff $(srcdir)/result/$$name.rdr result.$$name` ; \
- if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \
+ if [ -n "$$log" ] ; then echo $$name result ; echo "$$log" ; fi ; \
rm result.$$name ; \
fi ; fi ; done)
@echo "## Reader entities substitution regression tests"
@@ -784,7 +808,7 @@ Readertests : xmllint$(EXEEXT)
log=`$(CHECKER) $(top_builddir)/xmllint --noent --nonet --debug --stream $$i > result.$$name 2>/dev/null ; \
grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\
diff $(srcdir)/result/$$name.rde result.$$name` ; \
- if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \
+ if [ -n "$$log" ] ; then echo $$name result ; echo "$$log" ; fi ; \
rm result.$$name ; \
fi ; fi ; done)
@@ -802,7 +826,7 @@ SAXtests : testSAX$(EXEEXT)
log=`$(CHECKER) $(top_builddir)/testSAX $$i > result.$$name 2> /dev/null ; \
grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\
diff $(srcdir)/result/$$name.sax result.$$name` ; \
- if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \
+ if [ -n "$$log" ] ; then echo $$name result ; echo "$$log" ; fi ; \
rm result.$$name ; \
fi ; fi ; done)
@echo "## SAX2 callbacks regression tests"
@@ -817,7 +841,22 @@ SAXtests : testSAX$(EXEEXT)
log=`$(CHECKER) $(top_builddir)/testSAX --sax2 $$i > result.$$name 2> /dev/null ; \
grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\
diff $(srcdir)/result/$$name.sax2 result.$$name` ; \
- if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \
+ if [ -n "$$log" ] ; then echo $$name result ; echo "$$log" ; fi ; \
+ rm result.$$name ; \
+ fi ; fi ; done)
+ @echo "## SAX2 callbacks regression tests with entity substitution"
+ -@(for i in $(srcdir)/test/* ; do \
+ name=`basename $$i`; \
+ if [ ! -d $$i ] ; then \
+ if [ ! -f $(srcdir)/result/noent/$$name.sax2 ] ; then \
+ echo New test file $$name ; \
+ $(CHECKER) $(top_builddir)/testSAX --sax2 --noent $$i > $(srcdir)/result/noent/$$name.sax2 2> /dev/null ; \
+ grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\
+ else \
+ log=`$(CHECKER) $(top_builddir)/testSAX --sax2 --noent $$i > result.$$name 2> /dev/null ; \
+ grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\
+ diff $(srcdir)/result/noent/$$name.sax2 result.$$name` ; \
+ if [ -n "$$log" ] ; then echo $$name result ; echo "$$log" ; fi ; \
rm result.$$name ; \
fi ; fi ; done)
@@ -829,7 +868,7 @@ Validtests : xmllint$(EXEEXT)
if [ ! -d $$i ] ; then \
log=`$(CHECKER) $(top_builddir)/xmllint --valid --noout --nowarning $$i ; \
grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"`;\
- if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \
+ if [ -n "$$log" ] ; then echo $$name result ; echo "$$log" ; fi ; \
fi ; done ; exit 0)
@echo "## Validity checking regression tests"
-@(for i in $(srcdir)/test/VC/* ; do \
@@ -843,7 +882,7 @@ Validtests : xmllint$(EXEEXT)
log=`$(CHECKER) $(top_builddir)/xmllint --noout --valid $$i 2> result.$$name ; \
grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\
diff $(srcdir)/result/VC/$$name result.$$name` ; \
- if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \
+ if [ -n "$$log" ] ; then echo $$name result ; echo "$$log" ; fi ; \
rm result.$$name ; \
fi ; fi ; done)
@echo "## General documents valid regression tests"
@@ -859,7 +898,7 @@ Validtests : xmllint$(EXEEXT)
grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\
diff $(srcdir)/result/valid/$$name result.$$name ; \
diff $(srcdir)/result/valid/$$name.err error.$$name` ; \
- if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \
+ if [ -n "$$log" ] ; then echo $$name result ; echo "$$log" ; fi ; \
rm result.$$name error.$$name ; \
fi ; fi ; done)
@@ -877,7 +916,7 @@ Regexptests: testRegexp$(EXEEXT)
log=`$(CHECKER) $(top_builddir)/testRegexp -i $$i 2>&1 > result.$$name ; \
grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\
diff $(srcdir)/result/regexp/$$name result.$$name` ; \
- if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \
+ if [ -n "$$log" ] ; then echo $$name result ; echo "$$log" ; fi ; \
rm result.$$name ; \
fi ; fi ; done)
@echo "## Formal expresssions regression tests"
@@ -892,7 +931,7 @@ Regexptests: testRegexp$(EXEEXT)
log=`$(CHECKER) $(top_builddir)/testRegexp --expr -i $$i 2>&1 > result.$$name ; \
grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\
diff $(srcdir)/result/expr/$$name result.$$name` ; \
- if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \
+ if [ -n "$$log" ] ; then echo $$name result ; echo "$$log" ; fi ; \
rm result.$$name ; \
fi ; fi ; done)
@@ -910,7 +949,7 @@ Automatatests: testAutomata$(EXEEXT)
log=`$(CHECKER) $(top_builddir)/testAutomata $$i 2>&1 > result.$$name ; \
grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\
diff $(srcdir)/result/automata/$$name result.$$name` ; \
- if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \
+ if [ -n "$$log" ] ; then echo $$name result ; echo "$$log" ; fi ; \
rm result.$$name ; \
fi ; fi ; done)
@@ -961,7 +1000,7 @@ C14Ntests : testC14N$(EXEEXT)
cmdline="$$cmdline '`cat $(srcdir)/test/c14n/$$m/$$name.ns`'"; \
fi; \
fi; \
- $$cmdline > $(srcdir)/test/c14n/test.tmp; \
+ $$cmdline > $(srcdir)/test/c14n/test.tmp 2> /dev/null; \
if [ $$? -eq 0 ]; then \
diff $(srcdir)/result/c14n/$$m/$$name $(srcdir)/test/c14n/test.tmp; \
if [ $$? -ne 0 ]; then \
@@ -1002,7 +1041,7 @@ Schemastests: testSchemas$(EXEEXT)
diff $(srcdir)/result/schemas/"$$name"_"$$sno"_"$$xno".err \
err.$$name;\
grep Unimplemented err.$$name`; \
- if [ -n "$$log" ] ; then echo "$$name"_"$$sno"_"$$xno" result ; echo $$log ; fi ; \
+ if [ -n "$$log" ] ; then echo "$$name"_"$$sno"_"$$xno" result ; echo "$$log" ; fi ; \
rm res.$$name err.$$name ; \
fi ; fi ;\
done; done)
@@ -1027,7 +1066,7 @@ Relaxtests: xmllint$(EXEEXT)
diff $(srcdir)/result/relaxng/"$$name"_err \
err.$$name | grep -v "error detected at";\
grep Unimplemented err.$$name`; \
- if [ -n "$$log" ] ; then echo schemas $$name result ; echo $$log ; fi ; \
+ if [ -n "$$log" ] ; then echo schemas $$name result ; echo "$$log" ; fi ; \
rm res.$$name err.$$name ; \
fi; \
for j in $(srcdir)/test/relaxng/"$$name"_*.xml ; do \
@@ -1049,7 +1088,7 @@ Relaxtests: xmllint$(EXEEXT)
diff $(srcdir)/result/relaxng/"$$name"_"$$xno".err \
err.$$name | grep -v "error detected at";\
grep Unimplemented err.$$name`; \
- if [ -n "$$log" ] ; then echo "$$name"_"$$xno" result ; echo $$log ; fi ; \
+ if [ -n "$$log" ] ; then echo "$$name"_"$$xno" result ; echo "$$log" ; fi ; \
rm res.$$name err.$$name ; \
fi ; fi ; \
done; done)
@@ -1075,7 +1114,7 @@ Relaxtests: xmllint$(EXEEXT)
diff $(srcdir)/result/relaxng/"$$name"_"$$xno".err \
err.$$name | grep -v "error detected at";\
fi ; grep Unimplemented err.$$name`; \
- if [ -n "$$log" ] ; then echo "$$name"_"$$xno" result ; echo $$log ; fi ; \
+ if [ -n "$$log" ] ; then echo "$$name"_"$$xno" result ; echo "$$log" ; fi ; \
rm res.$$name err.$$name ; \
fi ; fi ; \
done; done)
@@ -1104,7 +1143,7 @@ Schematrontests: xmllint$(EXEEXT)
diff $(srcdir)/result/schematron/"$$name"_"$$xno".err \
err.$$name | grep -v "error detected at";\
grep Unimplemented err.$$name`; \
- if [ -n "$$log" ] ; then echo "$$name"_"$$xno" result ; echo $$log ; fi ; \
+ if [ -n "$$log" ] ; then echo "$$name"_"$$xno" result ; echo "$$log" ; fi ; \
rm res.$$name err.$$name ; \
fi ; fi ; \
done; done)
@@ -1153,7 +1192,7 @@ Patterntests: xmllint$(EXEEXT)
grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\
done ;\
diff $(srcdir)/result/pattern/$$name result.$$name` ; \
- if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \
+ if [ -n "$$log" ] ; then echo $$name result ; echo "$$log" ; fi ; \
rm result.$$name ; \
fi ; fi ; done ;)
@@ -1217,6 +1256,7 @@ EXTRA_DIST = xml2-config.in xml2Conf.sh.in libxml.spec.in libxml2.spec \
enc.h save.h testThreadsWin32.c genUnicode.py TODO_SCHEMAS \
dbgen.pl dbgenattr.pl regressions.py regressions.xml \
README.tests Makefile.tests libxml2.syms timsort.h \
+ README.zOS \
$(CVS_EXTRA_DIST)
diff --git a/README.cvs-commits b/README.cvs-commits
index a4bd8416..9c7bdd0f 100644
--- a/README.cvs-commits
+++ b/README.cvs-commits
@@ -1,4 +1,4 @@
- Please read the HACKING file for instructions
+ Please read the CONTRIBUTING file for instructions
Daniel
diff --git a/README.zOS b/README.zOS
new file mode 100644
index 00000000..6b6669ae
--- /dev/null
+++ b/README.zOS
@@ -0,0 +1,212 @@
+Notes for compiling on zOS:
+
+- since testapi.c file is huge (over 52000 lines), it's compilation
+ fails: I skipped the problem by removing all references to testapi in the
+ Makefile.in, but it would be neater if one can build without test files
+ (I didn't find an option in configure...)
+
+- since the name of files (or qualifier) in PDS are limited to 8 I had to
+ rename xmlschemas.c and xmlschemastypes.c in (resp.) xmlsche.c xmlschet.c
+ (and I had to modify all occurences of these files accordingly in the
+ rest of the Makefile !!!).
+
+- in order to copy objects to PDS, I had the cp command at line 860
+ of Makefile.in
+
+libxml2.la: $(libxml2_la_OBJECTS) $(libxml2_la_DEPENDENCIES)
+ $(AM_V_CCLD)$(libxml2_la_LINK) -rpath $(libdir) $(libxml2_la_OBJECTS) $(libxml2_la_LIBADD) $(LIBS)
+ # Copy objects to PDS
+ @list='$(libxml2_OBJECTS)' ; for p in $$list; do \
+ cp -ACMv $$p "//'<PDS NAME>'"; \
+ done
+
+ with <PDS NAME> stands for the name of my PDS and
+
+libxml2_OBJECTS = SAX.o entities.o encoding.o error.o \
+ parserInternals.o parser.o tree.o hash.o list.o xmlIO.o \
+ xmlmemory.o uri.o valid.o xlink.o HTMLparser.o \
+ HTMLtree.o debugXML.o xpath.o xpointer.o xinclude.o \
+ nanohttp.o nanoftp.o triostr.o trio.o catalog.o globals.o \
+ threads.o c14n.o xmlstring.o buf.o xmlregexp.o \
+ xmlsche.o xmlschet.o xmlunicode.o \
+ xmlreader.o relaxng.o dict.o SAX2.o \
+ xmlwriter.o legacy.o chvalid.o pattern.o xmlsave.o \
+ xmlmodule.o schematron.o xzlib.o
+
+In order to handle the support of zOS without breaking the existing
+Makefile maybe a new option/flag zOs would copy xmlschemas.c and
+xmlschemastypes.c files and use specifics targets rather than existing
+ones with the longer names... A variable to handle the PDS name has to
+be provided also...
+
+See patch below for set of changes to Makefile.in
+
+Stéphane Michaut <smichaut@axway.com>
+July 2017
+
+
+--- Makefile.in 2017-08-01 08:17:15.000000000 +0200
++++ Makefile-new.in 2017-08-01 08:07:26.000000000 +0200
+@@ -41,7 +41,7 @@
+ testSAX$(EXEEXT) testHTML$(EXEEXT) testXPath$(EXEEXT) \
+ testURI$(EXEEXT) testThreads$(EXEEXT) testC14N$(EXEEXT) \
+ testAutomata$(EXEEXT) testRegexp$(EXEEXT) testReader$(EXEEXT) \
+- testapi$(EXEEXT) testModule$(EXEEXT) runtest$(EXEEXT) \
++ testModule$(EXEEXT) runtest$(EXEEXT) \
+ runsuite$(EXEEXT) testchar$(EXEEXT) testdict$(EXEEXT) \
+ runxmlconf$(EXEEXT) testrecurse$(EXEEXT) testlimits$(EXEEXT)
+ bin_PROGRAMS = xmllint$(EXEEXT) xmlcatalog$(EXEEXT)
+@@ -106,6 +106,7 @@
+ debugXML.c xpath.c xpointer.c xinclude.c nanohttp.c nanoftp.c \
+ DOCBparser.c catalog.c globals.c threads.c c14n.c xmlstring.c \
+ buf.c xmlregexp.c xmlschemas.c xmlschemastypes.c xmlunicode.c \
++ xmlsche.c xmlschet.c \
+ triostr.c trio.c xmlreader.c relaxng.c dict.c SAX2.c \
+ xmlwriter.c legacy.c chvalid.c pattern.c xmlsave.c xmlmodule.c \
+ schematron.c xzlib.c
+@@ -118,10 +119,24 @@
+ nanohttp.lo nanoftp.lo $(am__objects_1) catalog.lo globals.lo \
+ threads.lo c14n.lo xmlstring.lo buf.lo xmlregexp.lo \
+ xmlschemas.lo xmlschemastypes.lo xmlunicode.lo \
++ xmlsche.lo xmlschet.lo \
+ $(am__objects_2) xmlreader.lo relaxng.lo dict.lo SAX2.lo \
+ xmlwriter.lo legacy.lo chvalid.lo pattern.lo xmlsave.lo \
+ xmlmodule.lo schematron.lo xzlib.lo
+ libxml2_la_OBJECTS = $(am_libxml2_la_OBJECTS)
++
++libxml2_OBJECTS = SAX.o entities.o encoding.o error.o \
++ parserInternals.o parser.o tree.o hash.o list.o xmlIO.o \
++ xmlmemory.o uri.o valid.o xlink.o HTMLparser.o \
++ HTMLtree.o debugXML.o xpath.o xpointer.o xinclude.o \
++ nanohttp.o nanoftp.o triostr.o trio.o catalog.o globals.o \
++ threads.o c14n.o xmlstring.o buf.o xmlregexp.o \
++ xmlschemas.o xmlschemastypes.o xmlunicode.o \
++ xmlsche.o xmlschemast.o \
++ xmlreader.o relaxng.o dict.o SAX2.o \
++ xmlwriter.o legacy.o chvalid.o pattern.o xmlsave.o \
++ xmlmodule.o schematron.o xzlib.o
++
+ AM_V_lt = $(am__v_lt_$(V))
+ am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY))
+ am__v_lt_0 = --silent
+@@ -216,11 +231,6 @@
+ testXPath_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+ $(testXPath_LDFLAGS) $(LDFLAGS) -o $@
+-am_testapi_OBJECTS = testapi.$(OBJEXT)
+-testapi_OBJECTS = $(am_testapi_OBJECTS)
+-testapi_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+- $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+- $(testapi_LDFLAGS) $(LDFLAGS) -o $@
+ am_testchar_OBJECTS = testchar.$(OBJEXT)
+ testchar_OBJECTS = $(am_testchar_OBJECTS)
+ testchar_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+@@ -285,7 +295,7 @@
+ $(testReader_SOURCES) $(testRegexp_SOURCES) \
+ $(testRelax_SOURCES) $(testSAX_SOURCES) $(testSchemas_SOURCES) \
+ $(testThreads_SOURCES) $(testURI_SOURCES) $(testXPath_SOURCES) \
+- $(testapi_SOURCES) $(testchar_SOURCES) $(testdict_SOURCES) \
++ $(testchar_SOURCES) $(testdict_SOURCES) \
+ $(testlimits_SOURCES) $(testrecurse_SOURCES) \
+ $(xmlcatalog_SOURCES) $(xmllint_SOURCES)
+ DIST_SOURCES = $(am__libxml2_la_SOURCES_DIST) $(testdso_la_SOURCES) \
+@@ -295,7 +305,7 @@
+ $(testReader_SOURCES) $(testRegexp_SOURCES) \
+ $(testRelax_SOURCES) $(testSAX_SOURCES) $(testSchemas_SOURCES) \
+ $(am__testThreads_SOURCES_DIST) $(testURI_SOURCES) \
+- $(testXPath_SOURCES) $(testapi_SOURCES) $(testchar_SOURCES) \
++ $(testXPath_SOURCES) $(testchar_SOURCES) \
+ $(testdict_SOURCES) $(testlimits_SOURCES) \
+ $(testrecurse_SOURCES) $(xmlcatalog_SOURCES) \
+ $(xmllint_SOURCES)
+@@ -700,11 +710,6 @@
+ noinst_LTLIBRARIES = testdso.la
+ testdso_la_SOURCES = testdso.c
+ testdso_la_LDFLAGS = -module -no-undefined -avoid-version -rpath $(libdir)
+-BUILT_SOURCES = testapi.c
+-testapi_SOURCES = testapi.c
+-testapi_LDFLAGS =
+-testapi_DEPENDENCIES = $(DEPS)
+-testapi_LDADD = $(LDADDS)
+ runxmlconf_SOURCES = runxmlconf.c
+ runxmlconf_LDFLAGS =
+ runxmlconf_DEPENDENCIES = $(DEPS)
+@@ -854,6 +859,12 @@
+ done
+ libxml2.la: $(libxml2_la_OBJECTS) $(libxml2_la_DEPENDENCIES)
+ $(AM_V_CCLD)$(libxml2_la_LINK) -rpath $(libdir) $(libxml2_la_OBJECTS) $(libxml2_la_LIBADD) $(LIBS)
++ # Copie des obj
++ @list='$(libxml2_OBJECTS)' ; for p in $$list; do \
++ echo "copy to PDS: $$p"; \
++ cp -ACMv $$p "//'A009153.XRDEV230.FIC.OBJLIB.LIBXML'"; \
++ done
++
+ testdso.la: $(testdso_la_OBJECTS) $(testdso_la_DEPENDENCIES)
+ $(AM_V_CCLD)$(testdso_la_LINK) $(testdso_la_OBJECTS) $(testdso_la_LIBADD) $(LIBS)
+ install-binPROGRAMS: $(bin_PROGRAMS)
+@@ -953,9 +964,6 @@
+ testXPath$(EXEEXT): $(testXPath_OBJECTS) $(testXPath_DEPENDENCIES)
+ @rm -f testXPath$(EXEEXT)
+ $(AM_V_CCLD)$(testXPath_LINK) $(testXPath_OBJECTS) $(testXPath_LDADD) $(LIBS)
+-testapi$(EXEEXT): $(testapi_OBJECTS) $(testapi_DEPENDENCIES)
+- @rm -f testapi$(EXEEXT)
+- $(AM_V_CCLD)$(testapi_LINK) $(testapi_OBJECTS) $(testapi_LDADD) $(LIBS)
+ testchar$(EXEEXT): $(testchar_OBJECTS) $(testchar_DEPENDENCIES)
+ @rm -f testchar$(EXEEXT)
+ $(AM_V_CCLD)$(testchar_LINK) $(testchar_OBJECTS) $(testchar_LDADD) $(LIBS)
+@@ -1056,7 +1064,6 @@
+ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/testThreadsWin32.Po@am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/testURI.Po@am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/testXPath.Po@am__quote@
+-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/testapi.Po@am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/testchar.Po@am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/testdict.Po@am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/testdso.Plo@am__quote@
+@@ -1755,18 +1762,6 @@
+ uninstall-local uninstall-m4dataDATA uninstall-man \
+ uninstall-man1 uninstall-man3 uninstall-pkgconfigDATA
+
+-
+-# that one forces the rebuild when "make rebuild" is run on doc/
+-rebuild_testapi:
+- -@(if [ "$(PYTHON)" != "" ] ; then \
+- $(PYTHON) $(srcdir)/gentest.py $(srcdir) ; fi )
+-
+-# that one is just to make sure it is rebuilt if missing
+-# but adding the dependances generate mess
+-testapi.c: $(srcdir)/gentest.py
+- -@(if [ "$(PYTHON)" != "" ] ; then \
+- $(PYTHON) $(srcdir)/gentest.py $(srcdir) ; fi )
+-
+ #testOOM_SOURCES=testOOM.c testOOMlib.h testOOMlib.c
+ #testOOM_LDFLAGS =
+ #testOOM_DEPENDENCIES = $(DEPS)
+@@ -1775,7 +1770,7 @@
+ runtests:
+ [ -d test ] || $(LN_S) $(srcdir)/test .
+ [ -d result ] || $(LN_S) $(srcdir)/result .
+- $(CHECKER) ./runtest$(EXEEXT) && $(CHECKER) ./testrecurse$(EXEEXT) &&$(CHECKER) ./testapi$(EXEEXT) && $(CHECKER) ./testchar$(EXEEXT)&& $(CHECKER) ./testdict$(EXEEXT) && $(CHECKER) ./runxmlconf$(EXEEXT)
++ $(CHECKER) ./runtest$(EXEEXT) && $(CHECKER) ./testrecurse$(EXEEXT) &&$(CHECKER) && $(CHECKER) ./testchar$(EXEEXT)&& $(CHECKER) ./testdict$(EXEEXT) && $(CHECKER) ./runxmlconf$(EXEEXT)
+ @(if [ "$(PYTHON_SUBDIR)" != "" ] ; then cd python ; \
+ $(MAKE) tests ; fi)
+
+@@ -1797,10 +1792,6 @@
+ $(MAKE) tests ; fi)
+ @(cd doc/examples ; $(MAKE) tests)
+
+-APItests: testapi$(EXEEXT)
+- @echo "## Running the API regression tests this may take a little while"
+- -@($(CHECKER) $(top_builddir)/testapi -q)
+-
+ HTMLtests : testHTML$(EXEEXT)
+ @(echo > .memdump)
+ @echo "## HTML regression tests"
+@@ -2746,7 +2737,7 @@
+ dist-test: distdir
+ (mkdir -p $(distdir))
+ (cd $(srcdir) ; tar -cf - --exclude CVS --exclude .svn --exclude .git xstc/Tests) | (cd $(distdir); tar xf -)
+- tar -cf - $(distdir)/test $(distdir)/result $(distdir)/xstc/Tests $(distdir)/Makefile.tests $(distdir)/README $(distdir)/README.tests $(distdir)/AUTHORS $(distdir)/testapi.c $(distdir)/runtest.c $(distdir)/runsuite.c | GZIP=$(GZIP_ENV) gzip -c >`echo "$(distdir)" | sed "s+libxml2+libxml2-tests+"`.tar.gz
++ tar -cf - $(distdir)/test $(distdir)/result $(distdir)/xstc/Tests $(distdir)/Makefile.tests $(distdir)/README $(distdir)/README.tests $(distdir)/AUTHORS $(distdir)/runtest.c $(distdir)/runsuite.c | GZIP=$(GZIP_ENV) gzip -c >`echo "$(distdir)" | sed "s+libxml2+libxml2-tests+"`.tar.gz
+ @(rm -rf $(distdir)/xstc/Test)
+
+ cleantar:
diff --git a/SAX2.c b/SAX2.c
index 5cbb700a..0f261b7b 100644
--- a/SAX2.c
+++ b/SAX2.c
@@ -12,6 +12,7 @@
#include <stdlib.h>
#include <string.h>
#include <limits.h>
+#include <stddef.h>
#include <libxml/xmlmemory.h>
#include <libxml/tree.h>
#include <libxml/parser.h>
@@ -1181,6 +1182,8 @@ xmlSAX2AttributeInternal(void *ctx, const xmlChar *fullname,
xmlSAX2ErrMemory(ctxt, "xmlSAX2StartElement");
if (name != NULL)
xmlFree(name);
+ if (nval != NULL)
+ xmlFree(nval);
return;
}
} else {
@@ -1242,6 +1245,8 @@ xmlSAX2AttributeInternal(void *ctx, const xmlChar *fullname,
xmlFree(ns);
if (name != NULL)
xmlFree(name);
+ if (nval != NULL)
+ xmlFree(nval);
return;
}
} else {
@@ -1311,6 +1316,8 @@ xmlSAX2AttributeInternal(void *ctx, const xmlChar *fullname,
name, namespace->href);
ctxt->wellFormed = 0;
if (ctxt->recovery == 0) ctxt->disableSAX = 1;
+ if (name != NULL)
+ xmlFree(name);
goto error;
}
}
@@ -1908,7 +1915,7 @@ skip:
else {
ret->line = 65535;
if (ctxt->options & XML_PARSE_BIG_LINES)
- ret->psvi = (void *) (long) ctxt->input->line;
+ ret->psvi = (void *) (ptrdiff_t) ctxt->input->line;
}
}
}
@@ -2311,7 +2318,7 @@ xmlSAX2StartElementNs(void *ctx,
} else {
/*
* any out of memory error would already have been raised
- * but we can't be garanteed it's the actual error due to the
+ * but we can't be guaranteed it's the actual error due to the
* API, best is to skip in this case
*/
continue;
@@ -2805,7 +2812,8 @@ xmlSAX2CDataBlock(void *ctx, const xmlChar *value, int len)
xmlTextConcat(lastChild, value, len);
} else {
ret = xmlNewCDataBlock(ctxt->myDoc, value, len);
- xmlAddChild(ctxt->node, ret);
+ if (xmlAddChild(ctxt->node, ret) == NULL)
+ xmlFreeNode(ret);
}
}
diff --git a/bakefile/libxml2.bkl b/bakefile/libxml2.bkl
index f314465e..dd6ce2c2 100644
--- a/bakefile/libxml2.bkl
+++ b/bakefile/libxml2.bkl
@@ -406,7 +406,6 @@
<!-- some other conditional defines -->
- <set var="ZLIB_DEF"><if cond="WITH_ZLIB=='1'">HAVE_ZLIB_H</if></set>
<set var="DEBUG_DEF"><if cond="BUILD=='debug'">_DEBUG</if></set>
<set var="DEBUG_DEF"><if cond="BUILD=='release'">NDEBUG</if></set>
diff --git a/buf.c b/buf.c
index 07922ff6..21cb9d80 100644
--- a/buf.c
+++ b/buf.c
@@ -49,7 +49,7 @@ struct _xmlBuf {
size_t use; /* The buffer size used */
size_t size; /* The buffer size */
xmlBufferPtr buffer; /* wrapper for an old buffer */
- int error; /* an error code if a failure occured */
+ int error; /* an error code if a failure occurred */
};
#ifdef WITH_BUFFER_COMPAT
@@ -231,7 +231,7 @@ xmlBufPtr
xmlBufCreateStatic(void *mem, size_t size) {
xmlBufPtr ret;
- if ((mem == NULL) || (size == 0))
+ if (mem == NULL)
return(NULL);
ret = (xmlBufPtr) xmlMalloc(sizeof(xmlBuf));
@@ -701,7 +701,7 @@ xmlBufUse(const xmlBufPtr buf)
* used in the buffer. It does not account for the terminating zero
* usually needed
*
- * Returns the amount or 0 if none or an error occured
+ * Returns the amount or 0 if none or an error occurred
*/
size_t
diff --git a/c14n.c b/c14n.c
index ca77f922..c04ce666 100644
--- a/c14n.c
+++ b/c14n.c
@@ -89,7 +89,7 @@ static int xmlExcC14NVisibleNsStackFind (xmlC14NVisibleNsStackPtr cur,
xmlNsPtr ns,
xmlC14NCtxPtr ctx);
-static int xmlC14NIsNodeInNodeset (xmlNodeSetPtr nodes,
+static int xmlC14NIsNodeInNodeset (void *user_data,
xmlNodePtr node,
xmlNodePtr parent);
@@ -252,7 +252,8 @@ xmlC14NErr(xmlC14NCtxPtr ctxt, xmlNodePtr node, int error,
#define XML_NAMESPACES_DEFAULT 16
static int
-xmlC14NIsNodeInNodeset(xmlNodeSetPtr nodes, xmlNodePtr node, xmlNodePtr parent) {
+xmlC14NIsNodeInNodeset(void *user_data, xmlNodePtr node, xmlNodePtr parent) {
+ xmlNodeSetPtr nodes = (xmlNodeSetPtr) user_data;
if((nodes != NULL) && (node != NULL)) {
if(node->type != XML_NAMESPACE_DECL) {
return(xmlXPathNodeSetContains(nodes, node));
@@ -513,8 +514,10 @@ xmlC14NIsXmlNs(xmlNsPtr ns)
* Returns -1 if ns1 < ns2, 0 if ns1 == ns2 or 1 if ns1 > ns2.
*/
static int
-xmlC14NNsCompare(xmlNsPtr ns1, xmlNsPtr ns2)
+xmlC14NNsCompare(const void *data1, const void *data2)
{
+ const xmlNsPtr ns1 = (const xmlNsPtr) data1;
+ const xmlNsPtr ns2 = (const xmlNsPtr) data2;
if (ns1 == ns2)
return (0);
if (ns1 == NULL)
@@ -559,6 +562,11 @@ xmlC14NPrintNamespaces(const xmlNsPtr ns, xmlC14NCtxPtr ctx)
return (1);
}
+static int
+xmlC14NPrintNamespacesWalker(const void *ns, void *ctx) {
+ return xmlC14NPrintNamespaces((const xmlNsPtr) ns, (xmlC14NCtxPtr) ctx);
+}
+
/**
* xmlC14NProcessNamespacesAxis:
* @ctx: the C14N context
@@ -615,7 +623,7 @@ xmlC14NProcessNamespacesAxis(xmlC14NCtxPtr ctx, xmlNodePtr cur, int visible)
/*
* Create a sorted list to store element namespaces
*/
- list = xmlListCreate(NULL, (xmlListDataCompare) xmlC14NNsCompare);
+ list = xmlListCreate(NULL, xmlC14NNsCompare);
if (list == NULL) {
xmlC14NErrInternal("creating namespaces list (c14n)");
return (-1);
@@ -663,7 +671,7 @@ xmlC14NProcessNamespacesAxis(xmlC14NCtxPtr ctx, xmlNodePtr cur, int visible)
/*
* print out all elements from list
*/
- xmlListWalk(list, (xmlListWalker) xmlC14NPrintNamespaces, (const void *) ctx);
+ xmlListWalk(list, xmlC14NPrintNamespacesWalker, (void *) ctx);
/*
* Cleanup
@@ -728,7 +736,7 @@ xmlExcC14NProcessNamespacesAxis(xmlC14NCtxPtr ctx, xmlNodePtr cur, int visible)
/*
* Create a sorted list to store element namespaces
*/
- list = xmlListCreate(NULL, (xmlListDataCompare) xmlC14NNsCompare);
+ list = xmlListCreate(NULL, xmlC14NNsCompare);
if (list == NULL) {
xmlC14NErrInternal("creating namespaces list (exc c14n)");
return (-1);
@@ -840,7 +848,7 @@ xmlExcC14NProcessNamespacesAxis(xmlC14NCtxPtr ctx, xmlNodePtr cur, int visible)
/*
* print out all elements from list
*/
- xmlListWalk(list, (xmlListWalker) xmlC14NPrintNamespaces, (const void *) ctx);
+ xmlListWalk(list, xmlC14NPrintNamespacesWalker, (void *) ctx);
/*
* Cleanup
@@ -879,8 +887,10 @@ xmlC14NIsXmlAttr(xmlAttrPtr attr)
* Returns -1 if attr1 < attr2, 0 if attr1 == attr2 or 1 if attr1 > attr2.
*/
static int
-xmlC14NAttrsCompare(xmlAttrPtr attr1, xmlAttrPtr attr2)
+xmlC14NAttrsCompare(const void *data1, const void *data2)
{
+ const xmlAttrPtr attr1 = (const xmlAttrPtr) data1;
+ const xmlAttrPtr attr2 = (const xmlAttrPtr) data2;
int ret = 0;
/*
@@ -931,8 +941,10 @@ xmlC14NAttrsCompare(xmlAttrPtr attr1, xmlAttrPtr attr2)
* Returns 1 on success or 0 on fail.
*/
static int
-xmlC14NPrintAttrs(const xmlAttrPtr attr, xmlC14NCtxPtr ctx)
+xmlC14NPrintAttrs(const void *data, void *user)
{
+ const xmlAttrPtr attr = (const xmlAttrPtr) data;
+ xmlC14NCtxPtr ctx = (xmlC14NCtxPtr) user;
xmlChar *value;
xmlChar *buffer;
@@ -1142,7 +1154,7 @@ xmlC14NProcessAttrsAxis(xmlC14NCtxPtr ctx, xmlNodePtr cur, int parent_visible)
/*
* Create a sorted list to store element attributes
*/
- list = xmlListCreate(NULL, (xmlListDataCompare) xmlC14NAttrsCompare);
+ list = xmlListCreate(NULL, xmlC14NAttrsCompare);
if (list == NULL) {
xmlC14NErrInternal("creating attributes list");
return (-1);
@@ -1331,7 +1343,7 @@ xmlC14NProcessAttrsAxis(xmlC14NCtxPtr ctx, xmlNodePtr cur, int parent_visible)
/*
* print out all elements from list
*/
- xmlListWalk(list, (xmlListWalker) xmlC14NPrintAttrs, (const void *) ctx);
+ xmlListWalk(list, xmlC14NPrintAttrs, (void *) ctx);
/*
* Cleanup
@@ -1375,13 +1387,6 @@ xmlC14NCheckForRelativeNamespaces(xmlC14NCtxPtr ctx, xmlNodePtr cur)
xmlFreeURI(uri);
return (-1);
}
- if ((xmlStrcasecmp((const xmlChar *) uri->scheme, BAD_CAST "urn") != 0)
- && (xmlStrcasecmp((const xmlChar *) uri->scheme, BAD_CAST "dav") !=0)
- && (xmlStrlen((const xmlChar *) uri->server) == 0)) {
- xmlC14NErrRelativeNamespace(uri->scheme);
- xmlFreeURI(uri);
- return (-1);
- }
xmlFreeURI(uri);
}
ns = ns->next;
@@ -1971,7 +1976,7 @@ xmlC14NDocSaveTo(xmlDocPtr doc, xmlNodeSetPtr nodes,
int mode, xmlChar ** inclusive_ns_prefixes,
int with_comments, xmlOutputBufferPtr buf) {
return(xmlC14NExecute(doc,
- (xmlC14NIsVisibleCallback)xmlC14NIsNodeInNodeset,
+ xmlC14NIsNodeInNodeset,
nodes,
mode,
inclusive_ns_prefixes,
@@ -2084,7 +2089,7 @@ xmlC14NDocSave(xmlDocPtr doc, xmlNodeSetPtr nodes,
xmlC14NErrParam("saving doc");
return (-1);
}
-#ifdef HAVE_ZLIB_H
+#ifdef LIBXML_ZLIB_ENABLED
if (compression < 0)
compression = xmlGetCompressMode();
#endif
diff --git a/catalog.c b/catalog.c
index 6dfdfbb8..f814121c 100644
--- a/catalog.c
+++ b/catalog.c
@@ -319,12 +319,13 @@ xmlFreeCatalogEntryList(xmlCatalogEntryPtr ret);
/**
* xmlFreeCatalogEntry:
- * @ret: a Catalog entry
+ * @payload: a Catalog entry
*
* Free the memory allocated to a Catalog entry
*/
static void
-xmlFreeCatalogEntry(xmlCatalogEntryPtr ret) {
+xmlFreeCatalogEntry(void *payload, const xmlChar *name ATTRIBUTE_UNUSED) {
+ xmlCatalogEntryPtr ret = (xmlCatalogEntryPtr) payload;
if (ret == NULL)
return;
/*
@@ -367,20 +368,22 @@ xmlFreeCatalogEntryList(xmlCatalogEntryPtr ret) {
while (ret != NULL) {
next = ret->next;
- xmlFreeCatalogEntry(ret);
+ xmlFreeCatalogEntry(ret, NULL);
ret = next;
}
}
/**
* xmlFreeCatalogHashEntryList:
- * @ret: a Catalog entry list
+ * @payload: a Catalog entry list
*
* Free the memory allocated to list of Catalog entries from the
* catalog file hash.
*/
static void
-xmlFreeCatalogHashEntryList(xmlCatalogEntryPtr catal) {
+xmlFreeCatalogHashEntryList(void *payload,
+ const xmlChar *name ATTRIBUTE_UNUSED) {
+ xmlCatalogEntryPtr catal = (xmlCatalogEntryPtr) payload;
xmlCatalogEntryPtr children, next;
if (catal == NULL)
@@ -391,11 +394,11 @@ xmlFreeCatalogHashEntryList(xmlCatalogEntryPtr catal) {
next = children->next;
children->dealloc = 0;
children->children = NULL;
- xmlFreeCatalogEntry(children);
+ xmlFreeCatalogEntry(children, NULL);
children = next;
}
catal->dealloc = 0;
- xmlFreeCatalogEntry(catal);
+ xmlFreeCatalogEntry(catal, NULL);
}
/**
@@ -440,8 +443,7 @@ xmlFreeCatalog(xmlCatalogPtr catal) {
if (catal->xml != NULL)
xmlFreeCatalogEntryList(catal->xml);
if (catal->sgml != NULL)
- xmlHashFree(catal->sgml,
- (xmlHashDeallocator) xmlFreeCatalogEntry);
+ xmlHashFree(catal->sgml, xmlFreeCatalogEntry);
xmlFree(catal);
}
@@ -460,7 +462,10 @@ xmlFreeCatalog(xmlCatalogPtr catal) {
* Serialize an SGML Catalog entry
*/
static void
-xmlCatalogDumpEntry(xmlCatalogEntryPtr entry, FILE *out) {
+xmlCatalogDumpEntry(void *payload, void *data,
+ const xmlChar *name ATTRIBUTE_UNUSED) {
+ xmlCatalogEntryPtr entry = (xmlCatalogEntryPtr) payload;
+ FILE *out = (FILE *) data;
if ((entry == NULL) || (out == NULL))
return;
switch (entry->type) {
@@ -723,7 +728,10 @@ BAD_CAST "http://www.oasis-open.org/committees/entity/release/1.0/catalog.dtd");
* Convert one entry from the catalog
*/
static void
-xmlCatalogConvertEntry(xmlCatalogEntryPtr entry, xmlCatalogPtr catal) {
+xmlCatalogConvertEntry(void *payload, void *data,
+ const xmlChar *name ATTRIBUTE_UNUSED) {
+ xmlCatalogEntryPtr entry = (xmlCatalogEntryPtr) payload;
+ xmlCatalogPtr catal = (xmlCatalogPtr) data;
if ((entry == NULL) || (catal == NULL) || (catal->sgml == NULL) ||
(catal->xml == NULL))
return;
@@ -756,8 +764,7 @@ xmlCatalogConvertEntry(xmlCatalogEntryPtr entry, xmlCatalogPtr catal) {
entry->type = XML_CATA_CATALOG;
break;
default:
- xmlHashRemoveEntry(catal->sgml, entry->name,
- (xmlHashDeallocator) xmlFreeCatalogEntry);
+ xmlHashRemoveEntry(catal->sgml, entry->name, xmlFreeCatalogEntry);
return;
}
/*
@@ -797,9 +804,7 @@ xmlConvertSGMLCatalog(xmlCatalogPtr catal) {
xmlGenericError(xmlGenericErrorContext,
"Converting SGML catalog to XML\n");
}
- xmlHashScan(catal->sgml,
- (xmlHashScanner) xmlCatalogConvertEntry,
- &catal);
+ xmlHashScan(catal->sgml, xmlCatalogConvertEntry, &catal);
return(0);
}
@@ -2396,6 +2401,7 @@ xmlParseSGMLCatalog(xmlCatalogPtr catal, const xmlChar *value,
case SGML_CATA_ENTITY:
if (*cur == '%')
type = SGML_CATA_PENTITY;
+ /* Falls through. */
case SGML_CATA_PENTITY:
case SGML_CATA_DOCTYPE:
case SGML_CATA_LINKTYPE:
@@ -2485,7 +2491,7 @@ xmlParseSGMLCatalog(xmlCatalogPtr catal, const xmlChar *value,
NULL, XML_CATA_PREFER_NONE, NULL);
res = xmlHashAddEntry(catal->sgml, name, entry);
if (res < 0) {
- xmlFreeCatalogEntry(entry);
+ xmlFreeCatalogEntry(entry, NULL);
}
xmlFree(filename);
}
@@ -2498,7 +2504,7 @@ xmlParseSGMLCatalog(xmlCatalogPtr catal, const xmlChar *value,
XML_CATA_PREFER_NONE, NULL);
res = xmlHashAddEntry(catal->sgml, sysid, entry);
if (res < 0) {
- xmlFreeCatalogEntry(entry);
+ xmlFreeCatalogEntry(entry, NULL);
}
} else {
xmlChar *filename;
@@ -2936,8 +2942,7 @@ xmlACatalogDump(xmlCatalogPtr catal, FILE *out) {
if (catal->type == XML_XML_CATALOG_TYPE) {
xmlDumpXMLCatalog(out, catal->xml);
} else {
- xmlHashScan(catal->sgml,
- (xmlHashScanner) xmlCatalogDumpEntry, out);
+ xmlHashScan(catal->sgml, xmlCatalogDumpEntry, out);
}
}
#endif /* LIBXML_OUTPUT_ENABLED */
@@ -3001,8 +3006,7 @@ xmlACatalogRemove(xmlCatalogPtr catal, const xmlChar *value) {
if (catal->type == XML_XML_CATALOG_TYPE) {
res = xmlDelXMLCatalog(catal->xml, value);
} else {
- res = xmlHashRemoveEntry(catal->sgml, value,
- (xmlHashDeallocator) xmlFreeCatalogEntry);
+ res = xmlHashRemoveEntry(catal->sgml, value, xmlFreeCatalogEntry);
if (res == 0)
res = 1;
}
@@ -3283,8 +3287,7 @@ xmlCatalogCleanup(void) {
xmlGenericError(xmlGenericErrorContext,
"Catalogs cleanup\n");
if (xmlCatalogXMLFiles != NULL)
- xmlHashFree(xmlCatalogXMLFiles,
- (xmlHashDeallocator)xmlFreeCatalogHashEntryList);
+ xmlHashFree(xmlCatalogXMLFiles, xmlFreeCatalogHashEntryList);
xmlCatalogXMLFiles = NULL;
if (xmlDefaultCatalog != NULL)
xmlFreeCatalog(xmlDefaultCatalog);
diff --git a/configure.ac b/configure.ac
index 911984e1..370e2dee 100644
--- a/configure.ac
+++ b/configure.ac
@@ -9,7 +9,7 @@ AC_CANONICAL_HOST
LIBXML_MAJOR_VERSION=2
LIBXML_MINOR_VERSION=9
-LIBXML_MICRO_VERSION=4
+LIBXML_MICRO_VERSION=8
LIBXML_MICRO_VERSION_SUFFIX=
LIBXML_VERSION=$LIBXML_MAJOR_VERSION.$LIBXML_MINOR_VERSION.$LIBXML_MICRO_VERSION$LIBXML_MICRO_VERSION_SUFFIX
LIBXML_VERSION_INFO=`expr $LIBXML_MAJOR_VERSION + $LIBXML_MINOR_VERSION`:$LIBXML_MICRO_VERSION:$LIBXML_MINOR_VERSION
@@ -389,18 +389,20 @@ dnl Checks for zlib library.
WITH_ZLIB=0
if test "$with_zlib" = "no"; then
- echo "Disabling compression support"
+ echo "Disabling zlib compression support"
else
- # Try pkg-config first so that static linking works.
- # If this succeeeds, we ignore the WITH_ZLIB directory.
- PKG_CHECK_MODULES([Z],[zlib],
- [have_libz=yes],
- [have_libz=no])
+ # Don't run pkg-config if with_zlib contains a path.
+ if test "x$Z_DIR" = "x"; then
+ # Try pkg-config first so that static linking works.
+ PKG_CHECK_MODULES([Z],[zlib],
+ [WITH_ZLIB=1],
+ [ ])
+ fi
- if test "x$have_libz" = "xno"; then
+ if test "$WITH_ZLIB" = "0"; then
AC_CHECK_HEADERS(zlib.h,
AC_CHECK_LIB(z, gzread,[
- have_libz=yes
+ WITH_ZLIB=1
if test "x${Z_DIR}" != "x"; then
Z_CFLAGS="-I${Z_DIR}/include"
Z_LIBS="-L${Z_DIR}/lib -lz"
@@ -411,18 +413,8 @@ else
esac]
else
Z_LIBS="-lz"
- fi],
- [have_libz=no])
- )
- else
- # we still need to check for zlib.h header
- AC_CHECK_HEADERS([zlib.h])
- fi
-
- # Found the library via either method?
- if test "x$have_libz" = "xyes"; then
- AC_DEFINE([HAVE_LIBZ], [1], [Have compression library])
- WITH_ZLIB=1
+ fi])
+ )
fi
fi
@@ -436,38 +428,30 @@ dnl Checks for lzma library.
WITH_LZMA=0
if test "$with_lzma" = "no"; then
- echo "Disabling compression support"
+ echo "Disabling lzma compression support"
else
- # Try pkg-config first so that static linking works.
- # If this succeeeds, we ignore the WITH_LZMA directory.
- PKG_CHECK_MODULES([LZMA],[liblzma],
- [have_liblzma=yes],
- [have_liblzma=no])
-
- # If pkg-config failed, fall back to AC_CHECK_LIB. This
- # will not pick up the necessary LIBS flags for liblzma's
- # private dependencies, though, so static linking may fail.
- if test "x$have_liblzma" = "xno"; then
- AC_CHECK_HEADERS(lzma.h,
+ # Don't run pkg-config if with_lzma contains a path.
+ if test "x$LZMA_DIR" = "x"; then
+ # Try pkg-config first so that static linking works.
+ PKG_CHECK_MODULES([LZMA],[liblzma],
+ [WITH_LZMA=1],
+ [ ])
+ fi
+
+ # If pkg-config failed, fall back to AC_CHECK_LIB. This
+ # will not pick up the necessary LIBS flags for liblzma's
+ # private dependencies, though, so static linking may fail.
+ if test "$WITH_LZMA" = "0"; then
+ AC_CHECK_HEADERS(lzma.h,
AC_CHECK_LIB(lzma, lzma_code,[
- have_liblzma=yes
+ WITH_LZMA=1
if test "x${LZMA_DIR}" != "x"; then
LZMA_CFLAGS="-I${LZMA_DIR}/include"
LZMA_LIBS="-L${LZMA_DIR}/lib -llzma"
else
LZMA_LIBS="-llzma"
- fi],
- [have_liblzma=no])
- )
- else
- # we still need to check for lzma,h header
- AC_CHECK_HEADERS([lzma.h])
- fi
-
- # Found the library via either method?
- if test "x$have_liblzma" = "xyes"; then
- AC_DEFINE([HAVE_LIBLZMA], [1], [Have compression library])
- WITH_LZMA=1
+ fi])
+ )
fi
fi
@@ -495,12 +479,8 @@ AC_CHECK_HEADERS([sys/types.h])
AC_CHECK_HEADERS([stdint.h])
AC_CHECK_HEADERS([inttypes.h])
AC_CHECK_HEADERS([time.h])
-AC_CHECK_HEADERS([ansidecl.h])
-AC_CHECK_HEADERS([ieeefp.h])
-AC_CHECK_HEADERS([nan.h])
AC_CHECK_HEADERS([math.h])
AC_CHECK_HEADERS([limits.h])
-AC_CHECK_HEADERS([fp_class.h])
AC_CHECK_HEADERS([float.h])
AC_CHECK_HEADERS([stdlib.h])
AC_CHECK_HEADERS([sys/socket.h], [], [],
@@ -557,10 +537,8 @@ echo Checking libraries
dnl Checks for library functions.
AC_FUNC_STRFTIME
-AC_CHECK_FUNCS(strdup strndup strerror)
-AC_CHECK_FUNCS(finite isnand fp_class class fpclass)
AC_CHECK_FUNCS(strftime localtime gettimeofday ftime)
-AC_CHECK_FUNCS(stat _stat signal)
+AC_CHECK_FUNCS(stat signal)
AC_CHECK_FUNCS(rand rand_r srand time)
AC_CHECK_FUNCS(isascii mmap munmap putenv)
@@ -771,13 +749,13 @@ dnl
if test "${GCC}" != "yes" ; then
case "${host}" in
hppa*-*-hpux* )
- CFLAGS="${CFLAGS} -Wp,-H30000"
+ EXTRA_CFLAGS="${EXTRA_CFLAGS} -Wp,-H30000"
;;
*-dec-osf* )
- CFLAGS="${CFLAGS} -ieee"
+ EXTRA_CFLAGS="${EXTRA_CFLAGS} -ieee"
;;
alpha*-*-linux* )
- CFLAGS="${CFLAGS} -ieee"
+ EXTRA_CFLAGS="${EXTRA_CFLAGS} -ieee"
;;
esac
else
@@ -787,19 +765,19 @@ else
# Not activated by default because this inflates the code size
# Used to allow propagation of C++ exceptions through the library
#
- CFLAGS="${CFLAGS} -fexceptions"
+ EXTRA_CFLAGS="${EXTRA_CFLAGS} -fexceptions"
fi
# warnings we'd like to see
- CFLAGS="${CFLAGS} -pedantic -W -Wformat -Wno-format-extra-args -Wunused -Wimplicit -Wreturn-type -Wswitch -Wcomment -Wtrigraphs -Wchar-subscripts -Wuninitialized -Wparentheses -Wshadow -Wpointer-arith -Wcast-align -Wwrite-strings -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Winline -Wredundant-decls"
+ EXTRA_CFLAGS="${EXTRA_CFLAGS} -pedantic -Wall -Wextra -Wshadow -Wpointer-arith -Wcast-align -Wwrite-strings -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Winline -Wredundant-decls"
# warnings we'd like to supress
- CFLAGS="${CFLAGS} -Wno-long-long"
+ EXTRA_CFLAGS="${EXTRA_CFLAGS} -Wno-long-long -Wno-format-extra-args -Wno-array-bounds"
case "${host}" in
alpha*-*-linux* )
- CFLAGS="${CFLAGS} -mieee"
+ EXTRA_CFLAGS="${EXTRA_CFLAGS} -mieee"
;;
alpha*-*-osf* )
- CFLAGS="${CFLAGS} -mieee"
+ EXTRA_CFLAGS="${EXTRA_CFLAGS} -mieee"
;;
esac
fi
@@ -812,13 +790,13 @@ case ${host} in
;;
*-*-mingw* | *-*-cygwin* | *-*-msvc* )
# If the host is Windows, and shared libraries are disabled, we
- # need to add -DLIBXML_STATIC to CFLAGS in order for linking to
+ # need to add -DLIBXML_STATIC to EXTRA_CFLAGS in order for linking to
# work properly (without it, xmlexports.h would force the use of
# DLL imports, which obviously aren't present in a static
# library).
if test "x$enable_shared" = "xno"; then
XML_CFLAGS="$XML_CFLAGS -DLIBXML_STATIC"
- CFLAGS="$CFLAGS -DLIBXML_STATIC"
+ EXTRA_CFLAGS="$EXTRA_CFLAGS -DLIBXML_STATIC"
fi
;;
esac
@@ -1010,7 +988,7 @@ if [[ "${LOGNAME}" = "veillard" -a "`pwd`" = "/u/veillard/XML" ]] || \
fi
fi
if test "${GCC}" = "yes" ; then
- CFLAGS="-g -O -pedantic -W -Wformat -Wno-format-extra-args -Wunused -Wimplicit -Wreturn-type -Wswitch -Wcomment -Wtrigraphs -Wchar-subscripts -Wuninitialized -Wparentheses -Wshadow -Wpointer-arith -Wcast-align -Wwrite-strings -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Winline -Wredundant-decls -Wall"
+ EXTRA_CFLAGS="-g -O -pedantic -W -Wformat -Wno-format-extra-args -Wunused -Wimplicit -Wreturn-type -Wswitch -Wcomment -Wtrigraphs -Wchar-subscripts -Wuninitialized -Wparentheses -Wshadow -Wpointer-arith -Wcast-align -Wwrite-strings -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Winline -Wredundant-decls -Wall"
fi
STATIC_BINARIES="-static"
dnl -Wcast-qual -ansi
@@ -1053,9 +1031,9 @@ if test "$with_threads" = "no" ; then
else
echo Enabling multithreaded support
- dnl Default to native threads on Win32
+ dnl Default to native threads on Windows
case $host_os in
- *mingw32*) if test "$with_threads" != "pthread" && test "$with_threads" != "no"; then
+ *mingw*) if test "$with_threads" != "pthread" && test "$with_threads" != "no"; then
WITH_THREADS="1"
THREADS_W32="1"
THREAD_CFLAGS="$THREAD_CFLAGS -DHAVE_WIN32_THREADS"
@@ -1640,7 +1618,6 @@ case "$host" in
CPPFLAGS="$CPPFLAGS -DWIN32"
WIN32_EXTRA_LIBADD="-lws2_32"
WIN32_EXTRA_LDFLAGS="-no-undefined"
- AC_DEFINE([_WINSOCKAPI_],1,[Using the Win32 Socket implementation])
if test "${PYTHON}" != ""
then
WIN32_EXTRA_PYTHON_LIBADD="-L${pythondir}/../../libs -lpython$(echo ${PYTHON_VERSION} | tr -d .)"
@@ -1681,14 +1658,14 @@ AC_CHECK_FUNCS(printf sprintf fprintf snprintf vfprintf vsprintf vsnprintf sscan
if test "$with_coverage" = "yes" -a "${GCC}" = "yes"
then
echo Enabling code coverage for GCC
- CFLAGS="$CFLAGS -fprofile-arcs -ftest-coverage"
+ EXTRA_CFLAGS="$EXTRA_CFLAGS -fprofile-arcs -ftest-coverage"
LDFLAGS="$LDFLAGS -fprofile-arcs -ftest-coverage"
else
echo Disabling code coverage for GCC
fi
AC_SUBST(CPPFLAGS)
-AC_SUBST(CFLAGS)
+AC_SUBST(EXTRA_CFLAGS)
AC_SUBST(LDFLAGS)
AC_SUBST(XML_CFLAGS)
diff --git a/debugXML.c b/debugXML.c
index a1b550ac..c98db0bc 100644
--- a/debugXML.c
+++ b/debugXML.c
@@ -1229,8 +1229,11 @@ xmlCtxtDumpDocument(xmlDebugCtxtPtr ctxt, xmlDocPtr doc)
}
static void
-xmlCtxtDumpEntityCallback(xmlEntityPtr cur, xmlDebugCtxtPtr ctxt)
+xmlCtxtDumpEntityCallback(void *payload, void *data,
+ const xmlChar *name ATTRIBUTE_UNUSED)
{
+ xmlEntityPtr cur = (xmlEntityPtr) payload;
+ xmlDebugCtxtPtr ctxt = (xmlDebugCtxtPtr) data;
if (cur == NULL) {
if (!ctxt->check)
fprintf(ctxt->output, "Entity is NULL");
@@ -1289,8 +1292,7 @@ xmlCtxtDumpEntities(xmlDebugCtxtPtr ctxt, xmlDocPtr doc)
if (!ctxt->check)
fprintf(ctxt->output, "Entities in internal subset\n");
- xmlHashScan(table, (xmlHashScanner) xmlCtxtDumpEntityCallback,
- ctxt);
+ xmlHashScan(table, xmlCtxtDumpEntityCallback, ctxt);
} else
fprintf(ctxt->output, "No entities in internal subset\n");
if ((doc->extSubset != NULL) && (doc->extSubset->entities != NULL)) {
@@ -1299,8 +1301,7 @@ xmlCtxtDumpEntities(xmlDebugCtxtPtr ctxt, xmlDocPtr doc)
if (!ctxt->check)
fprintf(ctxt->output, "Entities in external subset\n");
- xmlHashScan(table, (xmlHashScanner) xmlCtxtDumpEntityCallback,
- ctxt);
+ xmlHashScan(table, xmlCtxtDumpEntityCallback, ctxt);
} else if (!ctxt->check)
fprintf(ctxt->output, "No entities in external subset\n");
}
@@ -2931,7 +2932,7 @@ xmlShell(xmlDocPtr doc, char *filename, xmlShellReadlineFunc input,
fprintf(ctxt->output, "\tvalidate check the document for errors\n");
#endif /* LIBXML_VALID_ENABLED */
#ifdef LIBXML_SCHEMAS_ENABLED
- fprintf(ctxt->output, "\trelaxng rng validate the document agaisnt the Relax-NG schemas\n");
+ fprintf(ctxt->output, "\trelaxng rng validate the document against the Relax-NG schemas\n");
#endif
fprintf(ctxt->output, "\tgrep string search for a string in the subtree\n");
#ifdef LIBXML_VALID_ENABLED
diff --git a/dict.c b/dict.c
index c0585fe2..0ef3718d 100644
--- a/dict.c
+++ b/dict.c
@@ -48,7 +48,7 @@
#else
#ifdef HAVE_INTTYPES_H
#include <inttypes.h>
-#elif defined(WIN32)
+#elif defined(_WIN32)
typedef unsigned __int32 uint32_t;
#endif
#endif
@@ -249,7 +249,7 @@ xmlDictAddString(xmlDictPtr dict, const xmlChar *name, unsigned int namelen) {
#endif
pool = dict->strings;
while (pool != NULL) {
- if (pool->end - pool->free > namelen)
+ if ((size_t)(pool->end - pool->free) > namelen)
goto found_pool;
if (pool->size > size) size = pool->size;
limit += pool->size;
@@ -317,7 +317,7 @@ xmlDictAddQString(xmlDictPtr dict, const xmlChar *prefix, unsigned int plen,
#endif
pool = dict->strings;
while (pool != NULL) {
- if (pool->end - pool->free > namelen + plen + 1)
+ if ((size_t)(pool->end - pool->free) > namelen + plen + 1)
goto found_pool;
if (pool->size > size) size = pool->size;
limit += pool->size;
@@ -453,14 +453,23 @@ xmlDictComputeFastKey(const xmlChar *name, int namelen, int seed) {
}
switch (namelen) {
case 10: value += name[9];
+ /* Falls through. */
case 9: value += name[8];
+ /* Falls through. */
case 8: value += name[7];
+ /* Falls through. */
case 7: value += name[6];
+ /* Falls through. */
case 6: value += name[5];
+ /* Falls through. */
case 5: value += name[4];
+ /* Falls through. */
case 4: value += name[3];
+ /* Falls through. */
case 3: value += name[2];
+ /* Falls through. */
case 2: value += name[1];
+ /* Falls through. */
default: break;
}
return(value);
@@ -496,15 +505,25 @@ xmlDictComputeFastQKey(const xmlChar *prefix, int plen,
}
switch (plen) {
case 10: value += prefix[9];
+ /* Falls through. */
case 9: value += prefix[8];
+ /* Falls through. */
case 8: value += prefix[7];
+ /* Falls through. */
case 7: value += prefix[6];
+ /* Falls through. */
case 6: value += prefix[5];
+ /* Falls through. */
case 5: value += prefix[4];
+ /* Falls through. */
case 4: value += prefix[3];
+ /* Falls through. */
case 3: value += prefix[2];
+ /* Falls through. */
case 2: value += prefix[1];
+ /* Falls through. */
case 1: value += prefix[0];
+ /* Falls through. */
default: break;
}
len -= plen;
@@ -514,15 +533,25 @@ xmlDictComputeFastQKey(const xmlChar *prefix, int plen,
}
switch (len) {
case 10: value += name[9];
+ /* Falls through. */
case 9: value += name[8];
+ /* Falls through. */
case 8: value += name[7];
+ /* Falls through. */
case 7: value += name[6];
+ /* Falls through. */
case 6: value += name[5];
+ /* Falls through. */
case 5: value += name[4];
+ /* Falls through. */
case 4: value += name[3];
+ /* Falls through. */
case 3: value += name[2];
+ /* Falls through. */
case 2: value += name[1];
+ /* Falls through. */
case 1: value += name[0];
+ /* Falls through. */
default: break;
}
return(value);
@@ -533,7 +562,7 @@ xmlDictComputeFastQKey(const xmlChar *prefix, int plen,
*
* Create a new dictionary
*
- * Returns the newly created dictionary, or NULL if an error occured.
+ * Returns the newly created dictionary, or NULL if an error occurred.
*/
xmlDictPtr
xmlDictCreate(void) {
@@ -580,7 +609,7 @@ xmlDictCreate(void) {
* new dictionary, then in @sub, and if not found are created in the
* new dictionary.
*
- * Returns the newly created dictionary, or NULL if an error occured.
+ * Returns the newly created dictionary, or NULL if an error occurred.
*/
xmlDictPtr
xmlDictCreateSub(xmlDictPtr sub) {
@@ -699,7 +728,7 @@ xmlDictGrow(xmlDictPtr dict, size_t size) {
} else {
/*
* we don't have much ways to alert from herei
- * result is loosing an entry and unicity garantee
+ * result is losing an entry and unicity guarantee
*/
ret = -1;
}
diff --git a/doc/APIchunk0.html b/doc/APIchunk0.html
index c90e042c..f7783272 100644
--- a/doc/APIchunk0.html
+++ b/doc/APIchunk0.html
@@ -104,6 +104,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-globals.html#xmlCleanupGlobals">xmlCleanupGlobals</a><br />
<a href="html/libxml-globals.html#xmlInitGlobals">xmlInitGlobals</a><br />
</dd><dt>AegeanNumbers</dt><dd><a href="html/libxml-xmlunicode.html#xmlUCSIsAegeanNumbers">xmlUCSIsAegeanNumbers</a><br />
+</dd><dt>Alias</dt><dd><a href="html/libxml-xpath.html#xmlXPathEvalExpression">xmlXPathEvalExpression</a><br />
</dd><dt>All</dt><dd><a href="html/libxml-schemasInternals.html#_xmlSchema">_xmlSchema</a><br />
<a href="html/libxml-schemasInternals.html#_xmlSchemaType">_xmlSchemaType</a><br />
<a href="html/libxml-nanoftp.html#xmlNanoFTPGet">xmlNanoFTPGet</a><br />
@@ -222,8 +223,6 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-parserInternals.html#IS_LETTER">IS_LETTER</a><br />
<a href="html/libxml-parserInternals.html#xmlIsLetter">xmlIsLetter</a><br />
</dd><dt>Based</dt><dd><a href="html/libxml-xmlregexp.html#xmlExpExpDerive">xmlExpExpDerive</a><br />
-<a href="html/libxml-xpath.html#xmlXPathIsInf">xmlXPathIsInf</a><br />
-<a href="html/libxml-xpath.html#xmlXPathIsNaN">xmlXPathIsNaN</a><br />
</dd><dt>BasicLatin</dt><dd><a href="html/libxml-xmlunicode.html#xmlUCSIsBasicLatin">xmlUCSIsBasicLatin</a><br />
</dd><dt>Basically</dt><dd><a href="html/libxml-valid.html#xmlValidateDtd">xmlValidateDtd</a><br />
</dd><dt>Before</dt><dd><a href="html/libxml-parserInternals.html#xmlParseAttValue">xmlParseAttValue</a><br />
@@ -242,6 +241,7 @@ A:link, A:visited, A:active { text-decoration: underline }
</dd><dt>Bopomofo</dt><dd><a href="html/libxml-xmlunicode.html#xmlUCSIsBopomofo">xmlUCSIsBopomofo</a><br />
</dd><dt>BopomofoExtended</dt><dd><a href="html/libxml-xmlunicode.html#xmlUCSIsBopomofoExtended">xmlUCSIsBopomofoExtended</a><br />
</dd><dt>Both</dt><dd><a href="html/libxml-parserInternals.html#XML_SUBSTITUTE_BOTH">XML_SUBSTITUTE_BOTH</a><br />
+<a href="html/libxml-tree.html#xmlSplitQName2">xmlSplitQName2</a><br />
<a href="html/libxml-pattern.html#xmlStreamPush">xmlStreamPush</a><br />
<a href="html/libxml-pattern.html#xmlStreamPushAttr">xmlStreamPushAttr</a><br />
<a href="html/libxml-pattern.html#xmlStreamPushNode">xmlStreamPushNode</a><br />
diff --git a/doc/APIchunk12.html b/doc/APIchunk12.html
index de376f70..d7404f8f 100644
--- a/doc/APIchunk12.html
+++ b/doc/APIchunk12.html
@@ -865,8 +865,6 @@ A:link, A:visited, A:active { text-decoration: underline }
</dd><dt>crossed</dt><dd><a href="html/libxml-xmlautomata.html#xmlAutomataNewOnceTrans">xmlAutomataNewOnceTrans</a><br />
<a href="html/libxml-xmlautomata.html#xmlAutomataNewOnceTrans2">xmlAutomataNewOnceTrans2</a><br />
</dd><dt>cshema</dt><dd><a href="html/libxml-schemasInternals.html#XML_SCHEMAS_FINAL_DEFAULT_LIST">XML_SCHEMAS_FINAL_DEFAULT_LIST</a><br />
-</dd><dt>ctrio</dt><dd><a href="html/libxml-xpath.html#xmlXPathIsInf">xmlXPathIsInf</a><br />
-<a href="html/libxml-xpath.html#xmlXPathIsNaN">xmlXPathIsNaN</a><br />
</dd><dt>ctxt</dt><dd><a href="html/libxml-xmlregexp.html#xmlExpNewOr">xmlExpNewOr</a><br />
<a href="html/libxml-xmlregexp.html#xmlExpNewRange">xmlExpNewRange</a><br />
<a href="html/libxml-xmlregexp.html#xmlExpNewSeq">xmlExpNewSeq</a><br />
diff --git a/doc/APIchunk13.html b/doc/APIchunk13.html
index dba59525..5889ebf7 100644
--- a/doc/APIchunk13.html
+++ b/doc/APIchunk13.html
@@ -341,8 +341,6 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-xmlIO.html#xmlInputMatchCallback">xmlInputMatchCallback</a><br />
<a href="html/libxml-parser.html#xmlKeepBlanksDefault">xmlKeepBlanksDefault</a><br />
<a href="html/libxml-xmlIO.html#xmlOutputMatchCallback">xmlOutputMatchCallback</a><br />
-<a href="html/libxml-xpath.html#xmlXPathIsInf">xmlXPathIsInf</a><br />
-<a href="html/libxml-xpath.html#xmlXPathIsNaN">xmlXPathIsNaN</a><br />
</dd><dt>detected</dt><dd><a href="html/libxml-xpathInternals.html#CHECK_ERROR">CHECK_ERROR</a><br />
<a href="html/libxml-xpathInternals.html#CHECK_ERROR0">CHECK_ERROR0</a><br />
<a href="html/libxml-SAX.html#endDocument">endDocument</a><br />
@@ -517,6 +515,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-tree.html#xmlNodeListGetRawString">xmlNodeListGetRawString</a><br />
<a href="html/libxml-pattern.html#xmlPatternMatch">xmlPatternMatch</a><br />
<a href="html/libxml-tree.html#xmlRemoveProp">xmlRemoveProp</a><br />
+<a href="html/libxml-tree.html#xmlSplitQName2">xmlSplitQName2</a><br />
<a href="html/libxml-xmlstring.html#xmlUTF8Strlen">xmlUTF8Strlen</a><br />
<a href="html/libxml-valid.html#xmlValidateRoot">xmlValidateRoot</a><br />
<a href="html/libxml-xpathInternals.html#xmlXPathLeading">xmlXPathLeading</a><br />
diff --git a/doc/APIchunk14.html b/doc/APIchunk14.html
index 0e33ddbe..835465aa 100644
--- a/doc/APIchunk14.html
+++ b/doc/APIchunk14.html
@@ -210,6 +210,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-catalog.html#xmlCatalogAdd">xmlCatalogAdd</a><br />
<a href="html/libxml-catalog.html#xmlCatalogAddLocal">xmlCatalogAddLocal</a><br />
<a href="html/libxml-catalog.html#xmlCatalogRemove">xmlCatalogRemove</a><br />
+<a href="html/libxml-hash.html#xmlHashDefaultDeallocator">xmlHashDefaultDeallocator</a><br />
<a href="html/libxml-hash.html#xmlHashUpdateEntry">xmlHashUpdateEntry</a><br />
<a href="html/libxml-hash.html#xmlHashUpdateEntry2">xmlHashUpdateEntry2</a><br />
<a href="html/libxml-hash.html#xmlHashUpdateEntry3">xmlHashUpdateEntry3</a><br />
@@ -322,7 +323,6 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-tree.html#xmlNodeGetBase">xmlNodeGetBase</a><br />
<a href="html/libxml-parser.html#xmlParseBalancedChunkMemoryRecover">xmlParseBalancedChunkMemoryRecover</a><br />
<a href="html/libxml-xmlwriter.html#xmlTextWriterFullEndElement">xmlTextWriterFullEndElement</a><br />
-<a href="html/libxml-xpathInternals.html#xmlXPathRoundFunction">xmlXPathRoundFunction</a><br />
</dd><dt>event</dt><dd><a href="html/libxml-xmlschemas.html#xmlSchemaSAXPlug">xmlSchemaSAXPlug</a><br />
<a href="html/libxml-xmlschemas.html#xmlSchemaSAXUnplug">xmlSchemaSAXUnplug</a><br />
<a href="html/libxml-xmlschemas.html#xmlSchemaValidateStream">xmlSchemaValidateStream</a><br />
diff --git a/doc/APIchunk16.html b/doc/APIchunk16.html
index 92d38453..e7e236d5 100644
--- a/doc/APIchunk16.html
+++ b/doc/APIchunk16.html
@@ -42,7 +42,6 @@ A:link, A:visited, A:active { text-decoration: underline }
</dd><dt>gMonthDay</dt><dd><a href="html/libxml-xmlschemastypes.html#xmlSchemaGetCanonValue">xmlSchemaGetCanonValue</a><br />
</dd><dt>gYear</dt><dd><a href="html/libxml-xmlschemastypes.html#xmlSchemaGetCanonValue">xmlSchemaGetCanonValue</a><br />
</dd><dt>gYearMonth</dt><dd><a href="html/libxml-xmlschemastypes.html#xmlSchemaGetCanonValue">xmlSchemaGetCanonValue</a><br />
-</dd><dt>garanteed</dt><dd><a href="html/libxml-xmlstring.html#xmlUTF8Strsize">xmlUTF8Strsize</a><br />
</dd><dt>garbage</dt><dd><a href="html/libxml-xmlmemory.html#xmlGcMemGet">xmlGcMemGet</a><br />
<a href="html/libxml-xmlmemory.html#xmlGcMemSetup">xmlGcMemSetup</a><br />
</dd><dt>gcc</dt><dd><a href="html/libxml-hash.html#XML_CAST_FPTR">XML_CAST_FPTR</a><br />
@@ -183,6 +182,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-xmlmodule.html#xmlModuleSymbol">xmlModuleSymbol</a><br />
</dd><dt>guaranteed</dt><dd><a href="html/libxml-xmlmodule.html#xmlModuleOpen">xmlModuleOpen</a><br />
<a href="html/libxml-xmlmodule.html#xmlModuleSymbol">xmlModuleSymbol</a><br />
+<a href="html/libxml-xmlstring.html#xmlUTF8Strsize">xmlUTF8Strsize</a><br />
</dd><dt>guess</dt><dd><a href="html/libxml-parser.html#xmlCleanupParser">xmlCleanupParser</a><br />
<a href="html/libxml-threads.html#xmlCleanupThreads">xmlCleanupThreads</a><br />
</dd></dl><h2>Letter h:</h2><dl><dt>had</dt><dd><a href="html/libxml-tree.html#xmlNewGlobalNs">xmlNewGlobalNs</a><br />
@@ -194,6 +194,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-parserInternals.html#xmlParseElementContentDecl">xmlParseElementContentDecl</a><br />
<a href="html/libxml-parserInternals.html#xmlParsePEReference">xmlParsePEReference</a><br />
<a href="html/libxml-parserInternals.html#xmlParserHandlePEReference">xmlParserHandlePEReference</a><br />
+<a href="html/libxml-xpointer.html#xmlXPtrRangeToFunction">xmlXPtrRangeToFunction</a><br />
</dd><dt>handlers</dt><dd><a href="html/libxml-xlink.html#xlinkSetDefaultHandler">xlinkSetDefaultHandler</a><br />
<a href="html/libxml-encoding.html#xmlCleanupCharEncodingHandlers">xmlCleanupCharEncodingHandlers</a><br />
<a href="html/libxml-xmlIO.html#xmlRegisterDefaultInputCallbacks">xmlRegisterDefaultInputCallbacks</a><br />
@@ -339,8 +340,6 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-SAX2.html#xmlSAX2GetSystemId">xmlSAX2GetSystemId</a><br />
<a href="html/libxml-xmlschemastypes.html#xmlSchemaGetPredefinedType">xmlSchemaGetPredefinedType</a><br />
<a href="html/libxml-xmlreader.html#xmlTextReaderNodeType">xmlTextReaderNodeType</a><br />
-<a href="html/libxml-xpath.html#xmlXPathIsInf">xmlXPathIsInf</a><br />
-<a href="html/libxml-xpath.html#xmlXPathIsNaN">xmlXPathIsNaN</a><br />
</dd><dt>human-readable</dt><dd><a href="html/libxml-xmlerror.html#_xmlError">_xmlError</a><br />
</dd></dl><h2 align="center"><a href="APIchunk0.html">A-B</a>
<a href="APIchunk1.html">C-C</a>
diff --git a/doc/APIchunk17.html b/doc/APIchunk17.html
index 070f8ce9..e6647e2e 100644
--- a/doc/APIchunk17.html
+++ b/doc/APIchunk17.html
@@ -267,6 +267,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-xmlregexp.html#xmlExpParse">xmlExpParse</a><br />
</dd><dt>infinity</dt><dd><a href="html/libxml-xpathInternals.html#xmlXPathCeilingFunction">xmlXPathCeilingFunction</a><br />
<a href="html/libxml-xpathInternals.html#xmlXPathFloorFunction">xmlXPathFloorFunction</a><br />
+<a href="html/libxml-xpathInternals.html#xmlXPathRoundFunction">xmlXPathRoundFunction</a><br />
<a href="html/libxml-xpathInternals.html#xmlXPathStringFunction">xmlXPathStringFunction</a><br />
</dd><dt>info</dt><dd><a href="html/libxml-parser.html#_xmlParserCtxt">_xmlParserCtxt</a><br />
<a href="html/libxml-encoding.html#xmlCharEncodingOutputFunc">xmlCharEncodingOutputFunc</a><br />
@@ -512,9 +513,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-tree.html#xmlReconciliateNs">xmlReconciliateNs</a><br />
<a href="html/libxml-valid.html#xmlValidateDtdFinal">xmlValidateDtdFinal</a><br />
</dd><dt>invited</dt><dd><a href="html/libxml-valid.html#xmlValidGetValidElements">xmlValidGetValidElements</a><br />
-</dd><dt>isinf</dt><dd><a href="html/libxml-xpath.html#xmlXPathIsInf">xmlXPathIsInf</a><br />
</dd><dt>isn</dt><dd><a href="html/libxml-encoding.html#xmlRegisterCharEncodingHandler">xmlRegisterCharEncodingHandler</a><br />
-</dd><dt>isnan</dt><dd><a href="html/libxml-xpath.html#xmlXPathIsNaN">xmlXPathIsNaN</a><br />
</dd><dt>issue</dt><dd><a href="html/libxml-entities.html#xmlEncodeEntities">xmlEncodeEntities</a><br />
</dd><dt>issued</dt><dd><a href="html/libxml-xlink.html#xlinkIsLink">xlinkIsLink</a><br />
</dd><dt>issues</dt><dd><a href="html/libxml-xmlmodule.html#xmlModuleOpen">xmlModuleOpen</a><br />
diff --git a/doc/APIchunk18.html b/doc/APIchunk18.html
index 90249a15..91566f7c 100644
--- a/doc/APIchunk18.html
+++ b/doc/APIchunk18.html
@@ -76,6 +76,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-HTMLparser.html#htmlIsAutoClosed">htmlIsAutoClosed</a><br />
<a href="html/libxml-HTMLparser.html#htmlParseElement">htmlParseElement</a><br />
<a href="html/libxml-parser.html#xmlKeepBlanksDefault">xmlKeepBlanksDefault</a><br />
+<a href="html/libxml-xpath.html#xmlXPathInit">xmlXPathInit</a><br />
<a href="html/libxml-xpath.html#xmlXPathOrderDocElems">xmlXPathOrderDocElems</a><br />
</dd><dt>keyword</dt><dd><a href="html/libxml-parserInternals.html#xmlParseDefaultDecl">xmlParseDefaultDecl</a><br />
</dd><dt>kill</dt><dd><a href="html/libxml-xmlversion.html#xmlCheckVersion">xmlCheckVersion</a><br />
@@ -366,6 +367,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-parser.html#xmlSetFeature">xmlSetFeature</a><br />
<a href="html/libxml-xmlstring.html#xmlUTF8Strloc">xmlUTF8Strloc</a><br />
<a href="html/libxml-xpointer.html#xmlXPtrLocationSetAdd">xmlXPtrLocationSetAdd</a><br />
+<a href="html/libxml-xpointer.html#xmlXPtrRangeToFunction">xmlXPtrRangeToFunction</a><br />
</dd><dt>locations</dt><dd><a href="html/libxml-xpointer.html#_xmlLocationSet">_xmlLocationSet</a><br />
</dd><dt>locator</dt><dd><a href="html/libxml-SAX.html#setDocumentLocator">setDocumentLocator</a><br />
<a href="html/libxml-parser.html#setDocumentLocatorSAXFunc">setDocumentLocatorSAXFunc</a><br />
diff --git a/doc/APIchunk2.html b/doc/APIchunk2.html
index 1d10f932..bb6c1415 100644
--- a/doc/APIchunk2.html
+++ b/doc/APIchunk2.html
@@ -163,6 +163,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-valid.html#xmlValidNormalizeAttributeValue">xmlValidNormalizeAttributeValue</a><br />
<a href="html/libxml-valid.html#xmlValidateDocumentFinal">xmlValidateDocumentFinal</a><br />
<a href="html/libxml-valid.html#xmlValidateDtdFinal">xmlValidateDtdFinal</a><br />
+<a href="html/libxml-xpath.html#xmlXPathInit">xmlXPathInit</a><br />
</dd><dt>Douglas</dt><dd><a href="html/libxml-uri.html#xmlURIEscape">xmlURIEscape</a><br />
</dd><dt>Draft</dt><dd><a href="html/libxml-parserInternals.html#xmlParseNamespace">xmlParseNamespace</a><br />
</dd><dt>DtD</dt><dd><a href="html/libxml-valid.html#xmlGetDtdAttrDesc">xmlGetDtdAttrDesc</a><br />
@@ -327,7 +328,6 @@ A:link, A:visited, A:active { text-decoration: underline }
</dd><dt>Ethiopic</dt><dd><a href="html/libxml-xmlunicode.html#xmlUCSIsEthiopic">xmlUCSIsEthiopic</a><br />
</dd><dt>Evaluate</dt><dd><a href="html/libxml-xpath.html#xmlXPathCompiledEval">xmlXPathCompiledEval</a><br />
<a href="html/libxml-xpath.html#xmlXPathEval">xmlXPathEval</a><br />
-<a href="html/libxml-xpath.html#xmlXPathEvalExpression">xmlXPathEvalExpression</a><br />
<a href="html/libxml-xpath.html#xmlXPathEvalPredicate">xmlXPathEvalPredicate</a><br />
<a href="html/libxml-xpathInternals.html#xmlXPathEvaluatePredicateResult">xmlXPathEvaluatePredicateResult</a><br />
<a href="html/libxml-xpath.html#xmlXPathNodeEval">xmlXPathNodeEval</a><br />
diff --git a/doc/APIchunk20.html b/doc/APIchunk20.html
index 03170660..3559b08b 100644
--- a/doc/APIchunk20.html
+++ b/doc/APIchunk20.html
@@ -105,7 +105,6 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-xmlschemas.html#xmlSchemaSAXPlug">xmlSchemaSAXPlug</a><br />
<a href="html/libxml-tree.html#xmlSetBufferAllocationScheme">xmlSetBufferAllocationScheme</a><br />
<a href="html/libxml-debugXML.html#xmlShellPwd">xmlShellPwd</a><br />
-<a href="html/libxml-xmlstring.html#xmlStrncat">xmlStrncat</a><br />
<a href="html/libxml-xmlreader.html#xmlTextReaderCurrentDoc">xmlTextReaderCurrentDoc</a><br />
<a href="html/libxml-valid.html#xmlValidCtxtNormalizeAttributeValue">xmlValidCtxtNormalizeAttributeValue</a><br />
<a href="html/libxml-valid.html#xmlValidNormalizeAttributeValue">xmlValidNormalizeAttributeValue</a><br />
@@ -147,8 +146,6 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-xpathInternals.html#xmlXPathCompareValues">xmlXPathCompareValues</a><br />
</dd><dt>nested</dt><dd><a href="html/libxml-parserInternals.html#xmlParseElementChildrenContentDecl">xmlParseElementChildrenContentDecl</a><br />
<a href="html/libxml-parserInternals.html#xmlParseMarkupDecl">xmlParseMarkupDecl</a><br />
-</dd><dt>net</dt><dd><a href="html/libxml-xpath.html#xmlXPathIsInf">xmlXPathIsInf</a><br />
-<a href="html/libxml-xpath.html#xmlXPathIsNaN">xmlXPathIsNaN</a><br />
</dd><dt>network</dt><dd><a href="html/libxml-HTMLparser.html#htmlCtxtReadFile">htmlCtxtReadFile</a><br />
<a href="html/libxml-HTMLparser.html#htmlReadFile">htmlReadFile</a><br />
<a href="html/libxml-parser.html#xmlCtxtReadFile">xmlCtxtReadFile</a><br />
@@ -195,6 +192,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-xmlregexp.html#xmlRegExecPushString2">xmlRegExecPushString2</a><br />
</dd><dt>non-negative</dt><dd><a href="html/libxml-c14n.html#xmlC14NDocSaveTo">xmlC14NDocSaveTo</a><br />
<a href="html/libxml-c14n.html#xmlC14NExecute">xmlC14NExecute</a><br />
+<a href="html/libxml-xmlreader.html#xmlTextReaderPreservePattern">xmlTextReaderPreservePattern</a><br />
</dd><dt>non-normative</dt><dd><a href="html/libxml-encoding.html#xmlDetectCharEncoding">xmlDetectCharEncoding</a><br />
</dd><dt>non-null</dt><dd><a href="html/libxml-debugXML.html#xmlShellPrintNode">xmlShellPrintNode</a><br />
</dd><dt>non-recursive</dt><dd><a href="html/libxml-parser.html#_xmlParserCtxt">_xmlParserCtxt</a><br />
@@ -254,6 +252,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-valid.html#xmlValidateDtdFinal">xmlValidateDtdFinal</a><br />
</dd><dt>note</dt><dd><a href="html/libxml-xmlstring.html#xmlCheckUTF8">xmlCheckUTF8</a><br />
<a href="html/libxml-parser.html#xmlLoadExternalEntity">xmlLoadExternalEntity</a><br />
+</dd><dt>nothing</dt><dd><a href="html/libxml-xpath.html#xmlXPathInit">xmlXPathInit</a><br />
</dd><dt>notice</dt><dd><a href="html/libxml-parser.html#xmlCleanupParser">xmlCleanupParser</a><br />
<a href="html/libxml-threads.html#xmlCleanupThreads">xmlCleanupThreads</a><br />
</dd><dt>now</dt><dd><a href="html/libxml-hash.html#XML_CAST_FPTR">XML_CAST_FPTR</a><br />
diff --git a/doc/APIchunk21.html b/doc/APIchunk21.html
index c655198f..85fa55e0 100644
--- a/doc/APIchunk21.html
+++ b/doc/APIchunk21.html
@@ -59,7 +59,11 @@ A:link, A:visited, A:active { text-decoration: underline }
</dd><dt>occur</dt><dd><a href="html/libxml-schemasInternals.html#XML_SCHEMAS_TYPE_VARIETY_ABSENT">XML_SCHEMAS_TYPE_VARIETY_ABSENT</a><br />
<a href="html/libxml-parserInternals.html#xmlParseComment">xmlParseComment</a><br />
<a href="html/libxml-parserInternals.html#xmlParseMarkupDecl">xmlParseMarkupDecl</a><br />
-</dd><dt>occured</dt><dd><a href="html/libxml-xmlerror.html#xmlCtxtGetLastError">xmlCtxtGetLastError</a><br />
+</dd><dt>occurences</dt><dd><a href="html/libxml-xmlautomata.html#xmlAutomataNewCountTrans">xmlAutomataNewCountTrans</a><br />
+<a href="html/libxml-xmlautomata.html#xmlAutomataNewCountTrans2">xmlAutomataNewCountTrans2</a><br />
+<a href="html/libxml-xmlautomata.html#xmlAutomataNewOnceTrans">xmlAutomataNewOnceTrans</a><br />
+<a href="html/libxml-xmlautomata.html#xmlAutomataNewOnceTrans2">xmlAutomataNewOnceTrans2</a><br />
+</dd><dt>occurred</dt><dd><a href="html/libxml-xmlerror.html#xmlCtxtGetLastError">xmlCtxtGetLastError</a><br />
<a href="html/libxml-dict.html#xmlDictCreate">xmlDictCreate</a><br />
<a href="html/libxml-dict.html#xmlDictCreateSub">xmlDictCreateSub</a><br />
<a href="html/libxml-xmlerror.html#xmlGetLastError">xmlGetLastError</a><br />
@@ -67,13 +71,9 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-hash.html#xmlHashCreateDict">xmlHashCreateDict</a><br />
<a href="html/libxml-list.html#xmlListRemoveFirst">xmlListRemoveFirst</a><br />
<a href="html/libxml-list.html#xmlListRemoveLast">xmlListRemoveLast</a><br />
-<a href="html/libxml-xmlreader.html#xmlTextReaderErrorFunc">xmlTextReaderErrorFunc</a><br />
-</dd><dt>occurences</dt><dd><a href="html/libxml-xmlautomata.html#xmlAutomataNewCountTrans">xmlAutomataNewCountTrans</a><br />
-<a href="html/libxml-xmlautomata.html#xmlAutomataNewCountTrans2">xmlAutomataNewCountTrans2</a><br />
-<a href="html/libxml-xmlautomata.html#xmlAutomataNewOnceTrans">xmlAutomataNewOnceTrans</a><br />
-<a href="html/libxml-xmlautomata.html#xmlAutomataNewOnceTrans2">xmlAutomataNewOnceTrans2</a><br />
-</dd><dt>occurred</dt><dd><a href="html/libxml-xmlmemory.html#xmlMemStrdupLoc">xmlMemStrdupLoc</a><br />
+<a href="html/libxml-xmlmemory.html#xmlMemStrdupLoc">xmlMemStrdupLoc</a><br />
<a href="html/libxml-xmlmemory.html#xmlMemoryStrdup">xmlMemoryStrdup</a><br />
+<a href="html/libxml-xmlreader.html#xmlTextReaderErrorFunc">xmlTextReaderErrorFunc</a><br />
</dd><dt>occurrence</dt><dd><a href="html/libxml-xmlstring.html#xmlStrcasestr">xmlStrcasestr</a><br />
<a href="html/libxml-xmlstring.html#xmlStrchr">xmlStrchr</a><br />
<a href="html/libxml-xmlstring.html#xmlStrstr">xmlStrstr</a><br />
diff --git a/doc/APIchunk22.html b/doc/APIchunk22.html
index 2f200185..ec9547bb 100644
--- a/doc/APIchunk22.html
+++ b/doc/APIchunk22.html
@@ -210,8 +210,6 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-nanoftp.html#SOCKET">SOCKET</a><br />
<a href="html/libxml-xmlmodule.html#xmlModuleOpen">xmlModuleOpen</a><br />
<a href="html/libxml-xmlmodule.html#xmlModuleSymbol">xmlModuleSymbol</a><br />
-</dd><dt>portable</dt><dd><a href="html/libxml-xpath.html#xmlXPathIsInf">xmlXPathIsInf</a><br />
-<a href="html/libxml-xpath.html#xmlXPathIsNaN">xmlXPathIsNaN</a><br />
</dd><dt>pos</dt><dd><a href="html/libxml-xmlstring.html#xmlUTF8Strsub">xmlUTF8Strsub</a><br />
</dd><dt>position:</dt><dd><a href="html/libxml-xpathInternals.html#xmlXPathSubstringFunction">xmlXPathSubstringFunction</a><br />
</dd><dt>positioned</dt><dd><a href="html/libxml-xmlreader.html#xmlTextReaderReadString">xmlTextReaderReadString</a><br />
@@ -471,8 +469,6 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-xmlIO.html#xmlParserInputBufferPush">xmlParserInputBufferPush</a><br />
<a href="html/libxml-xmlregexp.html#xmlRegNewExecCtxt">xmlRegNewExecCtxt</a><br />
</dd><dt>prohibited</dt><dd><a href="html/libxml-schemasInternals.html#XML_SCHEMAS_ATTR_USE_PROHIBITED">XML_SCHEMAS_ATTR_USE_PROHIBITED</a><br />
-</dd><dt>projects</dt><dd><a href="html/libxml-xpath.html#xmlXPathIsInf">xmlXPathIsInf</a><br />
-<a href="html/libxml-xpath.html#xmlXPathIsNaN">xmlXPathIsNaN</a><br />
</dd><dt>prolog</dt><dd><a href="html/libxml-parser.html#xmlParseDocument">xmlParseDocument</a><br />
</dd><dt>prompt</dt><dd><a href="html/libxml-debugXML.html#xmlShellReadlineFunc">xmlShellReadlineFunc</a><br />
</dd><dt>proper</dt><dd><a href="html/libxml-valid.html#xmlValidateAttributeValue">xmlValidateAttributeValue</a><br />
diff --git a/doc/APIchunk23.html b/doc/APIchunk23.html
index 16c7c217..a18be6e4 100644
--- a/doc/APIchunk23.html
+++ b/doc/APIchunk23.html
@@ -124,6 +124,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-debugXML.html#xmlShell">xmlShell</a><br />
</dd><dt>ready</dt><dd><a href="html/libxml-parserInternals.html#INPUT_CHUNK">INPUT_CHUNK</a><br />
<a href="html/libxml-xmlautomata.html#xmlAutomataCompile">xmlAutomataCompile</a><br />
+</dd><dt>real</dt><dd><a href="html/libxml-xpointer.html#xmlXPtrRangeToFunction">xmlXPtrRangeToFunction</a><br />
</dd><dt>realloc</dt><dd><a href="html/libxml-tree.html#_xmlBuffer">_xmlBuffer</a><br />
<a href="html/libxml-xmlmemory.html#xmlGcMemGet">xmlGcMemGet</a><br />
<a href="html/libxml-xmlmemory.html#xmlGcMemSetup">xmlGcMemSetup</a><br />
@@ -133,6 +134,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-xmlmemory.html#xmlReallocFunc">xmlReallocFunc</a><br />
<a href="html/libxml-xmlmemory.html#xmlReallocLoc">xmlReallocLoc</a><br />
</dd><dt>reallocated</dt><dd><a href="html/libxml-xmlmemory.html#xmlReallocFunc">xmlReallocFunc</a><br />
+<a href="html/libxml-xmlstring.html#xmlStrcat">xmlStrcat</a><br />
<a href="html/libxml-xmlstring.html#xmlStrncat">xmlStrncat</a><br />
</dd><dt>really</dt><dd><a href="html/libxml-HTMLtree.html#HTML_COMMENT_NODE">HTML_COMMENT_NODE</a><br />
<a href="html/libxml-HTMLtree.html#HTML_ENTITY_REF_NODE">HTML_ENTITY_REF_NODE</a><br />
diff --git a/doc/APIchunk24.html b/doc/APIchunk24.html
index e81f34da..64aac67f 100644
--- a/doc/APIchunk24.html
+++ b/doc/APIchunk24.html
@@ -493,8 +493,6 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-xmlreader.html#xmlReaderNewIO">xmlReaderNewIO</a><br />
</dd><dt>sourceDoc</dt><dd><a href="html/libxml-tree.html#xmlDOMWrapAdoptNode">xmlDOMWrapAdoptNode</a><br />
<a href="html/libxml-tree.html#xmlDOMWrapCloneNode">xmlDOMWrapCloneNode</a><br />
-</dd><dt>sourceforge</dt><dd><a href="html/libxml-xpath.html#xmlXPathIsInf">xmlXPathIsInf</a><br />
-<a href="html/libxml-xpath.html#xmlXPathIsNaN">xmlXPathIsNaN</a><br />
</dd><dt>spaces</dt><dd><a href="html/libxml-parser.html#_xmlParserCtxt">_xmlParserCtxt</a><br />
<a href="html/libxml-HTMLtree.html#htmlDocContentDumpFormatOutput">htmlDocContentDumpFormatOutput</a><br />
<a href="html/libxml-HTMLtree.html#htmlDocContentDumpOutput">htmlDocContentDumpOutput</a><br />
@@ -548,6 +546,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-tree.html#xmlNodeSetContent">xmlNodeSetContent</a><br />
<a href="html/libxml-tree.html#xmlNodeSetContentLen">xmlNodeSetContentLen</a><br />
<a href="html/libxml-xmlwriter.html#xmlTextWriterWriteRawLen">xmlTextWriterWriteRawLen</a><br />
+<a href="html/libxml-xpointer.html#xmlXPtrRangeToFunction">xmlXPtrRangeToFunction</a><br />
</dd><dt>specialized</dt><dd><a href="html/libxml-tree.html#_xmlDOMWrapCtxt">_xmlDOMWrapCtxt</a><br />
<a href="html/libxml-xmlmemory.html#xmlGcMemGet">xmlGcMemGet</a><br />
<a href="html/libxml-xmlmemory.html#xmlGcMemSetup">xmlGcMemSetup</a><br />
@@ -667,6 +666,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-valid.html#xmlValidNormalizeAttributeValue">xmlValidNormalizeAttributeValue</a><br />
<a href="html/libxml-valid.html#xmlValidateDocumentFinal">xmlValidateDocumentFinal</a><br />
<a href="html/libxml-valid.html#xmlValidateDtdFinal">xmlValidateDtdFinal</a><br />
+<a href="html/libxml-xpointer.html#xmlXPtrRangeToFunction">xmlXPtrRangeToFunction</a><br />
</dd><dt>steps</dt><dd><a href="html/libxml-uri.html#xmlNormalizeURIPath">xmlNormalizeURIPath</a><br />
<a href="html/libxml-valid.html#xmlValidateDocumentFinal">xmlValidateDocumentFinal</a><br />
</dd><dt>still</dt><dd><a href="html/libxml-parserInternals.html#xmlCheckLanguageID">xmlCheckLanguageID</a><br />
diff --git a/doc/APIchunk25.html b/doc/APIchunk25.html
index dec65ba5..71ba3bdb 100644
--- a/doc/APIchunk25.html
+++ b/doc/APIchunk25.html
@@ -343,8 +343,6 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-parser.html#xmlSAXParseMemoryWithData">xmlSAXParseMemoryWithData</a><br />
</dd><dt>trio</dt><dd><a href="html/libxml-xmlversion.html#WITHOUT_TRIO">WITHOUT_TRIO</a><br />
<a href="html/libxml-xmlversion.html#WITH_TRIO">WITH_TRIO</a><br />
-<a href="html/libxml-xpath.html#xmlXPathIsInf">xmlXPathIsInf</a><br />
-<a href="html/libxml-xpath.html#xmlXPathIsNaN">xmlXPathIsNaN</a><br />
</dd><dt>troubles</dt><dd><a href="html/libxml-parser.html#_xmlParserInput">_xmlParserInput</a><br />
<a href="html/libxml-tree.html#xmlSearchNs">xmlSearchNs</a><br />
</dd><dt>try</dt><dd><a href="html/libxml-xpathInternals.html#CAST_TO_BOOLEAN">CAST_TO_BOOLEAN</a><br />
diff --git a/doc/APIchunk28.html b/doc/APIchunk28.html
index c5993f9f..c3f49b20 100644
--- a/doc/APIchunk28.html
+++ b/doc/APIchunk28.html
@@ -198,6 +198,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-tree.html#xmlGetNoNsProp">xmlGetNoNsProp</a><br />
<a href="html/libxml-tree.html#xmlGetNsProp">xmlGetNsProp</a><br />
<a href="html/libxml-tree.html#xmlGetProp">xmlGetProp</a><br />
+<a href="html/libxml-hash.html#xmlHashDefaultDeallocator">xmlHashDefaultDeallocator</a><br />
<a href="html/libxml-tree.html#xmlNodeGetBase">xmlNodeGetBase</a><br />
<a href="html/libxml-tree.html#xmlNodeGetContent">xmlNodeGetContent</a><br />
<a href="html/libxml-tree.html#xmlNodeGetLang">xmlNodeGetLang</a><br />
@@ -480,6 +481,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-xpath.html#xmlXPathNewContext">xmlXPathNewContext</a><br />
<a href="html/libxml-xpointer.html#xmlXPtrNewContext">xmlXPtrNewContext</a><br />
</dd><dt>xmlXPathError</dt><dd><a href="">err</a><br />
+</dd><dt>xmlXPathEval</dt><dd><a href="html/libxml-xpath.html#xmlXPathEvalExpression">xmlXPathEvalExpression</a><br />
</dd><dt>xmlXPathEvalPredicate</dt><dd><a href="html/libxml-xpointer.html#xmlXPtrEvalRangePredicate">xmlXPtrEvalRangePredicate</a><br />
</dd><dt>xmlXPathFreeObject</dt><dd><a href="html/libxml-xpath.html#xmlXPathFreeNodeSetList">xmlXPathFreeNodeSetList</a><br />
</dd><dt>xmlXPathFunction</dt><dd><a href="html/libxml-xpathInternals.html#xmlXPathFunctionLookup">xmlXPathFunctionLookup</a><br />
@@ -531,6 +533,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-xmlreader.html#xmlReaderWalker">xmlReaderWalker</a><br />
</dd><dt>xpath</dt><dd><a href="html/libxml-debugXML.html#xmlShellPrintXPathError">xmlShellPrintXPathError</a><br />
<a href="html/libxml-debugXML.html#xmlShellPrintXPathResult">xmlShellPrintXPathResult</a><br />
+<a href="html/libxml-xpointer.html#xmlXPtrRangeToFunction">xmlXPtrRangeToFunction</a><br />
</dd><dt>xpointer</dt><dd><a href="html/libxml-xinclude.html#XINCLUDE_PARSE_XPOINTER">XINCLUDE_PARSE_XPOINTER</a><br />
</dd></dl><h2 align="center"><a href="APIchunk0.html">A-B</a>
<a href="APIchunk1.html">C-C</a>
diff --git a/doc/APIchunk4.html b/doc/APIchunk4.html
index d26883bb..6fe8261a 100644
--- a/doc/APIchunk4.html
+++ b/doc/APIchunk4.html
@@ -295,7 +295,6 @@ A:link, A:visited, A:active { text-decoration: underline }
</dd><dt>Normalization</dt><dd><a href="html/libxml-uri.html#xmlNormalizeURIPath">xmlNormalizeURIPath</a><br />
</dd><dt>Normalization:</dt><dd><a href="html/libxml-parserInternals.html#xmlParseAttValue">xmlParseAttValue</a><br />
</dd><dt>Not</dt><dd><a href="html/libxml-schemasInternals.html#_xmlSchemaElement">_xmlSchemaElement</a><br />
-</dd><dt>NotaNumber</dt><dd><a href="html/libxml-xpath.html#xmlXPathIsNaN">xmlXPathIsNaN</a><br />
</dd><dt>Notation</dt><dd><a href="html/libxml-tree.html#_xmlNotation">_xmlNotation</a><br />
<a href="html/libxml-parserInternals.html#xmlParseEntityDecl">xmlParseEntityDecl</a><br />
<a href="html/libxml-parserInternals.html#xmlParseNotationType">xmlParseNotationType</a><br />
diff --git a/doc/APIchunk5.html b/doc/APIchunk5.html
index da60d1ae..98da499d 100644
--- a/doc/APIchunk5.html
+++ b/doc/APIchunk5.html
@@ -56,6 +56,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-schemasInternals.html#_xmlSchemaElement">_xmlSchemaElement</a><br />
<a href="html/libxml-schemasInternals.html#_xmlSchemaFacet">_xmlSchemaFacet</a><br />
<a href="html/libxml-schemasInternals.html#_xmlSchemaType">_xmlSchemaType</a><br />
+<a href="html/libxml-xpointer.html#xmlXPtrRangeToFunction">xmlXPtrRangeToFunction</a><br />
</dd><dt>Obtain</dt><dd><a href="html/libxml-xmlreader.html#xmlTextReaderLocatorBaseURI">xmlTextReaderLocatorBaseURI</a><br />
<a href="html/libxml-xmlreader.html#xmlTextReaderLocatorLineNumber">xmlTextReaderLocatorLineNumber</a><br />
</dd><dt>Ogham</dt><dd><a href="html/libxml-xmlunicode.html#xmlUCSIsOgham">xmlUCSIsOgham</a><br />
@@ -72,7 +73,8 @@ A:link, A:visited, A:active { text-decoration: underline }
</dd><dt>Oriya</dt><dd><a href="html/libxml-xmlunicode.html#xmlUCSIsOriya">xmlUCSIsOriya</a><br />
</dd><dt>Osmanya</dt><dd><a href="html/libxml-xmlunicode.html#xmlUCSIsOsmanya">xmlUCSIsOsmanya</a><br />
</dd><dt>Other</dt><dd><a href="html/libxml-xpath.html#xmlXPathContextSetCache">xmlXPathContextSetCache</a><br />
-</dd><dt>Otherwise</dt><dd><a href="html/libxml-pattern.html#xmlStreamPush">xmlStreamPush</a><br />
+</dd><dt>Otherwise</dt><dd><a href="html/libxml-tree.html#xmlSplitQName2">xmlSplitQName2</a><br />
+<a href="html/libxml-pattern.html#xmlStreamPush">xmlStreamPush</a><br />
<a href="html/libxml-pattern.html#xmlStreamPushAttr">xmlStreamPushAttr</a><br />
</dd><dt>Output</dt><dd><a href="html/libxml-xmlIO.html#xmlOutputCloseCallback">xmlOutputCloseCallback</a><br />
<a href="html/libxml-xmlIO.html#xmlOutputMatchCallback">xmlOutputMatchCallback</a><br />
@@ -223,8 +225,6 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-xmlreader.html#xmlTextReaderGetAttributeNo">xmlTextReaderGetAttributeNo</a><br />
<a href="html/libxml-xmlreader.html#xmlTextReaderGetAttributeNs">xmlTextReaderGetAttributeNs</a><br />
<a href="html/libxml-xmlreader.html#xmlTextReaderValue">xmlTextReaderValue</a><br />
-<a href="html/libxml-xpath.html#xmlXPathIsInf">xmlXPathIsInf</a><br />
-<a href="html/libxml-xpath.html#xmlXPathIsNaN">xmlXPathIsNaN</a><br />
</dd><dt>Proxy</dt><dd><a href="html/libxml-nanoftp.html#xmlNanoFTPScanProxy">xmlNanoFTPScanProxy</a><br />
<a href="html/libxml-nanohttp.html#xmlNanoHTTPScanProxy">xmlNanoHTTPScanProxy</a><br />
</dd><dt>Proxy-Authenticate</dt><dd><a href="html/libxml-nanohttp.html#xmlNanoHTTPAuthHeader">xmlNanoHTTPAuthHeader</a><br />
diff --git a/doc/APIfiles.html b/doc/APIfiles.html
index 2252a6b0..8c29c067 100644
--- a/doc/APIfiles.html
+++ b/doc/APIfiles.html
@@ -340,7 +340,8 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-dict.html#xmlDictSetLimit">xmlDictSetLimit</a><br />
<a href="html/libxml-dict.html#xmlDictSize">xmlDictSize</a><br />
<a href="html/libxml-dict.html#xmlInitializeDict">xmlInitializeDict</a><br />
-</p><h2><a name="encoding" id="encoding">Module encoding</a>:</h2><p><a href="html/libxml-encoding.html#UTF8Toisolat1">UTF8Toisolat1</a><br />
+</p><h2><a name="encoding" id="encoding">Module encoding</a>:</h2><p><a href="html/libxml-encoding.html#ICU_PIVOT_BUF_SIZE">ICU_PIVOT_BUF_SIZE</a><br />
+<a href="html/libxml-encoding.html#UTF8Toisolat1">UTF8Toisolat1</a><br />
<a href="html/libxml-encoding.html#XML_CHAR_ENCODING_2022_JP">XML_CHAR_ENCODING_2022_JP</a><br />
<a href="html/libxml-encoding.html#XML_CHAR_ENCODING_8859_1">XML_CHAR_ENCODING_8859_1</a><br />
<a href="html/libxml-encoding.html#XML_CHAR_ENCODING_8859_2">XML_CHAR_ENCODING_8859_2</a><br />
@@ -493,6 +494,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-hash.html#xmlHashCreate">xmlHashCreate</a><br />
<a href="html/libxml-hash.html#xmlHashCreateDict">xmlHashCreateDict</a><br />
<a href="html/libxml-hash.html#xmlHashDeallocator">xmlHashDeallocator</a><br />
+<a href="html/libxml-hash.html#xmlHashDefaultDeallocator">xmlHashDefaultDeallocator</a><br />
<a href="html/libxml-hash.html#xmlHashFree">xmlHashFree</a><br />
<a href="html/libxml-hash.html#xmlHashLookup">xmlHashLookup</a><br />
<a href="html/libxml-hash.html#xmlHashLookup2">xmlHashLookup2</a><br />
diff --git a/doc/APIfunctions.html b/doc/APIfunctions.html
index f9ac249b..c1d172dc 100644
--- a/doc/APIfunctions.html
+++ b/doc/APIfunctions.html
@@ -97,8 +97,6 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-encoding.html#xmlDetectCharEncoding">xmlDetectCharEncoding</a><br />
<a href="html/libxml-xmlstring.html#xmlGetUTF8Char">xmlGetUTF8Char</a><br />
</p><h2>Type const void *:</h2><p><a href="html/libxml-list.html#xmlListDataCompare">xmlListDataCompare</a><br />
-<a href="html/libxml-list.html#xmlListReverseWalk">xmlListReverseWalk</a><br />
-<a href="html/libxml-list.html#xmlListWalk">xmlListWalk</a><br />
<a href="html/libxml-list.html#xmlListWalker">xmlListWalker</a><br />
</p><h2>Type const xlinkHRef:</h2><p><a href="html/libxml-xlink.html#xlinkSimpleLinkFunk">xlinkSimpleLinkFunk</a><br />
</p><h2>Type const xlinkHRef *:</h2><p><a href="html/libxml-xlink.html#xlinkExtendedLinkFunk">xlinkExtendedLinkFunk</a><br />
@@ -147,7 +145,9 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-HTMLparser.html#htmlIsScriptAttribute">htmlIsScriptAttribute</a><br />
<a href="html/libxml-HTMLtree.html#htmlNewDoc">htmlNewDoc</a><br />
<a href="html/libxml-HTMLtree.html#htmlNewDocNoDtD">htmlNewDocNoDtD</a><br />
+<a href="html/libxml-HTMLparser.html#htmlParseDoc">htmlParseDoc</a><br />
<a href="html/libxml-HTMLparser.html#htmlReadDoc">htmlReadDoc</a><br />
+<a href="html/libxml-HTMLparser.html#htmlSAXParseDoc">htmlSAXParseDoc</a><br />
<a href="html/libxml-HTMLtree.html#htmlSetMetaEncoding">htmlSetMetaEncoding</a><br />
<a href="html/libxml-HTMLparser.html#htmlTagLookup">htmlTagLookup</a><br />
<a href="html/libxml-SAX.html#ignorableWhitespace">ignorableWhitespace</a><br />
@@ -247,6 +247,9 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-hash.html#xmlHashAddEntry">xmlHashAddEntry</a><br />
<a href="html/libxml-hash.html#xmlHashAddEntry2">xmlHashAddEntry2</a><br />
<a href="html/libxml-hash.html#xmlHashAddEntry3">xmlHashAddEntry3</a><br />
+<a href="html/libxml-hash.html#xmlHashCopier">xmlHashCopier</a><br />
+<a href="html/libxml-hash.html#xmlHashDeallocator">xmlHashDeallocator</a><br />
+<a href="html/libxml-hash.html#xmlHashDefaultDeallocator">xmlHashDefaultDeallocator</a><br />
<a href="html/libxml-hash.html#xmlHashLookup">xmlHashLookup</a><br />
<a href="html/libxml-hash.html#xmlHashLookup2">xmlHashLookup2</a><br />
<a href="html/libxml-hash.html#xmlHashLookup3">xmlHashLookup3</a><br />
@@ -258,6 +261,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-hash.html#xmlHashRemoveEntry3">xmlHashRemoveEntry3</a><br />
<a href="html/libxml-hash.html#xmlHashScan3">xmlHashScan3</a><br />
<a href="html/libxml-hash.html#xmlHashScanFull3">xmlHashScanFull3</a><br />
+<a href="html/libxml-hash.html#xmlHashScanner">xmlHashScanner</a><br />
<a href="html/libxml-hash.html#xmlHashScannerFull">xmlHashScannerFull</a><br />
<a href="html/libxml-hash.html#xmlHashUpdateEntry">xmlHashUpdateEntry</a><br />
<a href="html/libxml-hash.html#xmlHashUpdateEntry2">xmlHashUpdateEntry2</a><br />
@@ -770,6 +774,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-hash.html#xmlHashAddEntry3">xmlHashAddEntry3</a><br />
<a href="html/libxml-hash.html#xmlHashCopier">xmlHashCopier</a><br />
<a href="html/libxml-hash.html#xmlHashDeallocator">xmlHashDeallocator</a><br />
+<a href="html/libxml-hash.html#xmlHashDefaultDeallocator">xmlHashDefaultDeallocator</a><br />
<a href="html/libxml-hash.html#xmlHashScan">xmlHashScan</a><br />
<a href="html/libxml-hash.html#xmlHashScan3">xmlHashScan3</a><br />
<a href="html/libxml-hash.html#xmlHashScanFull">xmlHashScanFull</a><br />
@@ -793,7 +798,10 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-list.html#xmlListRemoveFirst">xmlListRemoveFirst</a><br />
<a href="html/libxml-list.html#xmlListRemoveLast">xmlListRemoveLast</a><br />
<a href="html/libxml-list.html#xmlListReverseSearch">xmlListReverseSearch</a><br />
+<a href="html/libxml-list.html#xmlListReverseWalk">xmlListReverseWalk</a><br />
<a href="html/libxml-list.html#xmlListSearch">xmlListSearch</a><br />
+<a href="html/libxml-list.html#xmlListWalk">xmlListWalk</a><br />
+<a href="html/libxml-list.html#xmlListWalker">xmlListWalker</a><br />
<a href="html/libxml-xmlmemory.html#xmlMemFree">xmlMemFree</a><br />
<a href="html/libxml-xmlmemory.html#xmlMemRealloc">xmlMemRealloc</a><br />
<a href="html/libxml-nanoftp.html#xmlNanoFTPCheckResponse">xmlNanoFTPCheckResponse</a><br />
@@ -1039,14 +1047,9 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-DOCBparser.html#docbSAXParseDoc">docbSAXParseDoc</a><br />
<a href="html/libxml-SAX.html#entityDecl">entityDecl</a><br />
<a href="html/libxml-parser.html#entityDeclSAXFunc">entityDeclSAXFunc</a><br />
-<a href="html/libxml-HTMLparser.html#htmlParseDoc">htmlParseDoc</a><br />
-<a href="html/libxml-HTMLparser.html#htmlSAXParseDoc">htmlSAXParseDoc</a><br />
<a href="html/libxml-tree.html#xmlBuildQName">xmlBuildQName</a><br />
<a href="html/libxml-parserInternals.html#xmlCopyChar">xmlCopyChar</a><br />
<a href="html/libxml-parserInternals.html#xmlCopyCharMultiByte">xmlCopyCharMultiByte</a><br />
-<a href="html/libxml-hash.html#xmlHashCopier">xmlHashCopier</a><br />
-<a href="html/libxml-hash.html#xmlHashDeallocator">xmlHashDeallocator</a><br />
-<a href="html/libxml-hash.html#xmlHashScanner">xmlHashScanner</a><br />
<a href="html/libxml-tree.html#xmlNewDocNodeEatName">xmlNewDocNodeEatName</a><br />
<a href="html/libxml-tree.html#xmlNewNodeEatName">xmlNewNodeEatName</a><br />
<a href="html/libxml-tree.html#xmlNewNsPropEatName">xmlNewNsPropEatName</a><br />
diff --git a/doc/APIsymbols.html b/doc/APIsymbols.html
index cdde358d..a77be6d4 100644
--- a/doc/APIsymbols.html
+++ b/doc/APIsymbols.html
@@ -40,7 +40,8 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-HTMLparser.html#HTML_REQUIRED">HTML_REQUIRED</a><br />
<a href="html/libxml-HTMLtree.html#HTML_TEXT_NODE">HTML_TEXT_NODE</a><br />
<a href="html/libxml-HTMLparser.html#HTML_VALID">HTML_VALID</a><br />
-</p><h2>Letter I:</h2><p><a href="html/libxml-parserInternals.html#INPUT_CHUNK">INPUT_CHUNK</a><br />
+</p><h2>Letter I:</h2><p><a href="html/libxml-encoding.html#ICU_PIVOT_BUF_SIZE">ICU_PIVOT_BUF_SIZE</a><br />
+<a href="html/libxml-parserInternals.html#INPUT_CHUNK">INPUT_CHUNK</a><br />
<a href="html/libxml-nanoftp.html#INVALID_SOCKET">INVALID_SOCKET</a><br />
<a href="html/libxml-parserInternals.html#IS_ASCII_DIGIT">IS_ASCII_DIGIT</a><br />
<a href="html/libxml-parserInternals.html#IS_ASCII_LETTER">IS_ASCII_LETTER</a><br />
@@ -2130,6 +2131,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-hash.html#xmlHashCreate">xmlHashCreate</a><br />
<a href="html/libxml-hash.html#xmlHashCreateDict">xmlHashCreateDict</a><br />
<a href="html/libxml-hash.html#xmlHashDeallocator">xmlHashDeallocator</a><br />
+<a href="html/libxml-hash.html#xmlHashDefaultDeallocator">xmlHashDefaultDeallocator</a><br />
<a href="html/libxml-hash.html#xmlHashFree">xmlHashFree</a><br />
<a href="html/libxml-hash.html#xmlHashLookup">xmlHashLookup</a><br />
<a href="html/libxml-hash.html#xmlHashLookup2">xmlHashLookup2</a><br />
diff --git a/doc/Makefile.am b/doc/Makefile.am
index 0cc0a50f..6bda5665 100644
--- a/doc/Makefile.am
+++ b/doc/Makefile.am
@@ -243,7 +243,7 @@ docs: web $(top_builddir)/NEWS libxml2.xsa $(man_MANS)
api: libxml2-api.xml libxml2-refs.xml $(APIPAGES) $(srcdir)/html/index.html $(WIN32_DIR)/libxml2.def.src ../elfgcchack.h $(srcdir)/site.xsl
-web: $(PAGES)
+web: $(PAGES) xmllint.html xmlcatalog_man.html
../elfgcchack.h: $(srcdir)/elfgcchack.xsl $(srcdir)/libxml2-api.xml
-@(if [ -x $(XSLTPROC) ] ; then \
@@ -314,9 +314,15 @@ libxml2-api.xml libxml2-refs.xml ../libxml2.syms: apibuild.py symbols.xml syms.x
xmllint.1: xmllint.xml
-@($(XSLTPROC) --nonet xmllint.xml)
+xmllint.html: xmllint.xml
+ -@($(XSLTPROC) --nonet -o $@ http://docbook.sourceforge.net/release/xsl/current/html/docbook.xsl xmllint.xml)
+
xmlcatalog.1: xmlcatalog_man.xml
-@($(XSLTPROC) --nonet xmlcatalog_man.xml)
+xmlcatalog_man.html: xmlcatalog_man.xml
+ -@($(XSLTPROC) --nonet -o $@ http://docbook.sourceforge.net/release/xsl/current/html/docbook.xsl xmlcatalog_man.xml)
+
check-extra-dist:
for f in $(EXTRA_DIST_wc) ; do echo $$f; done | sort -u >tmp.EXTRA_DIST_wc
for f in $(EXTRA_DIST) ; do echo $$f; done | sort >tmp.EXTRA_DIST
diff --git a/doc/bugs.html b/doc/bugs.html
index 55ff296a..52970d3b 100644
--- a/doc/bugs.html
+++ b/doc/bugs.html
@@ -13,7 +13,7 @@ use the <a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Gnome
bug tracking database</a> (make sure to use the "libxml2" module name). I
look at reports there regularly and it's good to have a reminder when a bug
is still open. Be sure to specify that the bug is for the package libxml2.</p><p>For small problems you can try to get help on IRC, the #xml channel on
-irc.gnome.org (port 6667) usually have a few person subscribed which may help
+irc.gnome.org (port 6667) usually has a few people subscribed which may help
(but there is no guarantee and if a real issue is raised it should go on the
mailing-list for archival).</p><p>There is also a mailing-list <a href="mailto:xml@gnome.org">xml@gnome.org</a> for libxml, with an <a href="http://mail.gnome.org/archives/xml/">on-line archive</a> (<a href="http://xmlsoft.org/messages">old</a>). To subscribe to this list,
please visit the <a href="http://mail.gnome.org/mailman/listinfo/xml">associated Web</a> page and
diff --git a/doc/devhelp/libxml2-HTMLparser.html b/doc/devhelp/libxml2-HTMLparser.html
index 6d8a42a5..3af5a9c9 100644
--- a/doc/devhelp/libxml2-HTMLparser.html
+++ b/doc/devhelp/libxml2-HTMLparser.html
@@ -96,9 +96,9 @@ void <a href="#htmlFreeParserCtxt">htmlFreeParserCtxt</a> (<a href="libxml2-HTM
<a href="libxml2-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> <a href="#htmlCtxtReadFile">htmlCtxtReadFile</a> (<a href="libxml2-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt, <br/> const char * filename, <br/> const char * encoding, <br/> int options);
int <a href="#htmlParseDocument">htmlParseDocument</a> (<a href="libxml2-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt);
<a href="libxml2-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> <a href="#htmlNewParserCtxt">htmlNewParserCtxt</a> (void);
-<a href="libxml2-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> <a href="#htmlSAXParseDoc">htmlSAXParseDoc</a> (<a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * cur, <br/> const char * encoding, <br/> <a href="libxml2-HTMLparser.html#htmlSAXHandlerPtr">htmlSAXHandlerPtr</a> sax, <br/> void * userData);
+<a href="libxml2-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> <a href="#htmlSAXParseDoc">htmlSAXParseDoc</a> (const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * cur, <br/> const char * encoding, <br/> <a href="libxml2-HTMLparser.html#htmlSAXHandlerPtr">htmlSAXHandlerPtr</a> sax, <br/> void * userData);
int <a href="#htmlCtxtUseOptions">htmlCtxtUseOptions</a> (<a href="libxml2-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt, <br/> int options);
-<a href="libxml2-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> <a href="#htmlParseDoc">htmlParseDoc</a> (<a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * cur, <br/> const char * encoding);
+<a href="libxml2-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> <a href="#htmlParseDoc">htmlParseDoc</a> (const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * cur, <br/> const char * encoding);
</pre>
</div>
<div class="refsect1" lang="en">
@@ -315,7 +315,7 @@ int <a href="#htmlCtxtUseOptions">htmlCtxtUseOptions</a> (<a href="libxml2-HTML
</pre><p>Parse a Chunk of memory</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an HTML parser context</td></tr><tr><td><span class="term"><i><tt>chunk</tt></i>:</span></td><td>an char array</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size in byte of the chunk</td></tr><tr><td><span class="term"><i><tt>terminate</tt></i>:</span></td><td>last chunk indicator</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>zero if no error, the <a href="libxml2-xmlerror.html#xmlParserErrors">xmlParserErrors</a> otherwise.</td></tr></tbody></table></div></div>
<hr/>
- <div class="refsect2" lang="en"><h3><a name="htmlParseDoc"/>htmlParseDoc ()</h3><pre class="programlisting"><a href="libxml2-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> htmlParseDoc (<a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * cur, <br/> const char * encoding)<br/>
+ <div class="refsect2" lang="en"><h3><a name="htmlParseDoc"/>htmlParseDoc ()</h3><pre class="programlisting"><a href="libxml2-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> htmlParseDoc (const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * cur, <br/> const char * encoding)<br/>
</pre><p>parse an HTML in-memory document and build a tree.</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>a pointer to an array of <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a></td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>a free form C string describing the HTML document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div></div>
<hr/>
@@ -355,7 +355,7 @@ int <a href="#htmlCtxtUseOptions">htmlCtxtUseOptions</a> (<a href="libxml2-HTML
</pre><p>parse an XML in-memory document and build a tree.</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>a pointer to a char array</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size of the array</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of htmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div></div>
<hr/>
- <div class="refsect2" lang="en"><h3><a name="htmlSAXParseDoc"/>htmlSAXParseDoc ()</h3><pre class="programlisting"><a href="libxml2-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> htmlSAXParseDoc (<a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * cur, <br/> const char * encoding, <br/> <a href="libxml2-HTMLparser.html#htmlSAXHandlerPtr">htmlSAXHandlerPtr</a> sax, <br/> void * userData)<br/>
+ <div class="refsect2" lang="en"><h3><a name="htmlSAXParseDoc"/>htmlSAXParseDoc ()</h3><pre class="programlisting"><a href="libxml2-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> htmlSAXParseDoc (const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * cur, <br/> const char * encoding, <br/> <a href="libxml2-HTMLparser.html#htmlSAXHandlerPtr">htmlSAXHandlerPtr</a> sax, <br/> void * userData)<br/>
</pre><p>Parse an HTML in-memory document. If sax is not NULL, use the SAX callbacks to handle parse events. If sax is NULL, fallback to the default DOM behavior and return a tree.</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>a pointer to an array of <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a></td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>a free form C string describing the HTML document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>the SAX handler block</td></tr><tr><td><span class="term"><i><tt>userData</tt></i>:</span></td><td>if using SAX, this pointer will be provided on callbacks.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree unless SAX is NULL or the document is not well formed.</td></tr></tbody></table></div></div>
<hr/>
diff --git a/doc/devhelp/libxml2-dict.html b/doc/devhelp/libxml2-dict.html
index 3776c5bd..6bff563b 100644
--- a/doc/devhelp/libxml2-dict.html
+++ b/doc/devhelp/libxml2-dict.html
@@ -82,11 +82,11 @@ The content of this structure is not made public by the API.
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlDictCreate"/>xmlDictCreate ()</h3><pre class="programlisting"><a href="libxml2-dict.html#xmlDictPtr">xmlDictPtr</a> xmlDictCreate (void)<br/>
</pre><p>Create a new dictionary</p>
-<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created dictionary, or NULL if an error occured.</td></tr></tbody></table></div></div>
+<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created dictionary, or NULL if an error occurred.</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlDictCreateSub"/>xmlDictCreateSub ()</h3><pre class="programlisting"><a href="libxml2-dict.html#xmlDictPtr">xmlDictPtr</a> xmlDictCreateSub (<a href="libxml2-dict.html#xmlDictPtr">xmlDictPtr</a> sub)<br/>
</pre><p>Create a new dictionary, inheriting strings from the read-only dictionary @sub. On lookup, strings are first searched in the new dictionary, then in @sub, and if not found are created in the new dictionary.</p>
-<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>sub</tt></i>:</span></td><td>an existing dictionary</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created dictionary, or NULL if an error occured.</td></tr></tbody></table></div></div>
+<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>sub</tt></i>:</span></td><td>an existing dictionary</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created dictionary, or NULL if an error occurred.</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlDictExists"/>xmlDictExists ()</h3><pre class="programlisting">const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * xmlDictExists (<a href="libxml2-dict.html#xmlDictPtr">xmlDictPtr</a> dict, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name, <br/> int len)<br/>
</pre><p>Check if the @name exists in the dictionary @dict.</p>
diff --git a/doc/devhelp/libxml2-encoding.html b/doc/devhelp/libxml2-encoding.html
index 261e50a6..b11fbfbb 100644
--- a/doc/devhelp/libxml2-encoding.html
+++ b/doc/devhelp/libxml2-encoding.html
@@ -43,7 +43,8 @@
<p>Author(s): Daniel Veillard </p>
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
- <pre class="synopsis">typedef struct _uconv_t <a href="#uconv_t">uconv_t</a>;
+ <pre class="synopsis">#define <a href="#ICU_PIVOT_BUF_SIZE">ICU_PIVOT_BUF_SIZE</a>;
+typedef struct _uconv_t <a href="#uconv_t">uconv_t</a>;
typedef enum <a href="#xmlCharEncoding">xmlCharEncoding</a>;
typedef struct _xmlCharEncodingHandler <a href="#xmlCharEncodingHandler">xmlCharEncodingHandler</a>;
typedef <a href="libxml2-encoding.html#xmlCharEncodingHandler">xmlCharEncodingHandler</a> * <a href="#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a>;
@@ -76,9 +77,16 @@ const char * <a href="#xmlGetCharEncodingName">xmlGetCharEncodingName</a> (<a hr
<div class="refsect1" lang="en">
<h2>Details</h2>
<div class="refsect2" lang="en">
+ <div class="refsect2" lang="en"><h3><a name="ICU_PIVOT_BUF_SIZE">Macro </a>ICU_PIVOT_BUF_SIZE</h3><pre class="programlisting">#define <a href="#ICU_PIVOT_BUF_SIZE">ICU_PIVOT_BUF_SIZE</a>;
+</pre><p/>
+</div>
+ <hr/>
<div class="refsect2" lang="en"><h3><a name="uconv_t">Structure </a>uconv_t</h3><pre class="programlisting">struct _uconv_t {
UConverter * uconv : for conversion between an encoding and UTF-16
UConverter * utf8 : for conversion between UTF-8 and UTF-16
+ UCharpivot_buf[ICU_PIVOT_BUF_SIZE] pivot_buf
+ UChar * pivot_source
+ UChar * pivot_target
} uconv_t;
</pre><p/>
</div>
diff --git a/doc/devhelp/libxml2-hash.html b/doc/devhelp/libxml2-hash.html
index c5a9911b..e2dd7abd 100644
--- a/doc/devhelp/libxml2-hash.html
+++ b/doc/devhelp/libxml2-hash.html
@@ -55,8 +55,8 @@ int <a href="#xmlHashUpdateEntry">xmlHashUpdateEntry</a> (<a href="libxml2-hash
void * <a href="#xmlHashQLookup3">xmlHashQLookup3</a> (<a href="libxml2-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * prefix, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * prefix2, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name2, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * prefix3, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name3);
void * <a href="#xmlHashQLookup2">xmlHashQLookup2</a> (<a href="libxml2-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * prefix, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * prefix2, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name2);
void <a href="#xmlHashScan3">xmlHashScan3</a> (<a href="libxml2-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name2, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name3, <br/> <a href="libxml2-hash.html#xmlHashScanner">xmlHashScanner</a> f, <br/> void * data);
-typedef void <a href="#xmlHashScanner">xmlHashScanner</a> (void * payload, <br/> void * data, <br/> <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name);
-typedef void <a href="#xmlHashDeallocator">xmlHashDeallocator</a> (void * payload, <br/> <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name);
+typedef void <a href="#xmlHashScanner">xmlHashScanner</a> (void * payload, <br/> void * data, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name);
+typedef void <a href="#xmlHashDeallocator">xmlHashDeallocator</a> (void * payload, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name);
<a href="libxml2-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> <a href="#xmlHashCreate">xmlHashCreate</a> (int size);
void <a href="#xmlHashFree">xmlHashFree</a> (<a href="libxml2-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br/> <a href="libxml2-hash.html#xmlHashDeallocator">xmlHashDeallocator</a> f);
void * <a href="#xmlHashLookup">xmlHashLookup</a> (<a href="libxml2-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name);
@@ -67,10 +67,11 @@ int <a href="#xmlHashRemoveEntry3">xmlHashRemoveEntry3</a> (<a href="libxml2-ha
<a href="libxml2-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> <a href="#xmlHashCopy">xmlHashCopy</a> (<a href="libxml2-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br/> <a href="libxml2-hash.html#xmlHashCopier">xmlHashCopier</a> f);
void <a href="#xmlHashScanFull3">xmlHashScanFull3</a> (<a href="libxml2-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name2, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name3, <br/> <a href="libxml2-hash.html#xmlHashScannerFull">xmlHashScannerFull</a> f, <br/> void * data);
int <a href="#xmlHashUpdateEntry3">xmlHashUpdateEntry3</a> (<a href="libxml2-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name2, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name3, <br/> void * userdata, <br/> <a href="libxml2-hash.html#xmlHashDeallocator">xmlHashDeallocator</a> f);
+void <a href="#xmlHashDefaultDeallocator">xmlHashDefaultDeallocator</a> (void * entry, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name);
void * <a href="#xmlHashLookup3">xmlHashLookup3</a> (<a href="libxml2-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name2, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name3);
void * <a href="#xmlHashLookup2">xmlHashLookup2</a> (<a href="libxml2-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name2);
int <a href="#xmlHashRemoveEntry">xmlHashRemoveEntry</a> (<a href="libxml2-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name, <br/> <a href="libxml2-hash.html#xmlHashDeallocator">xmlHashDeallocator</a> f);
-typedef void * <a href="#xmlHashCopier">xmlHashCopier</a> (void * payload, <br/> <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name);
+typedef void * <a href="#xmlHashCopier">xmlHashCopier</a> (void * payload, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name);
int <a href="#xmlHashAddEntry2">xmlHashAddEntry2</a> (<a href="libxml2-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name2, <br/> void * userdata);
int <a href="#xmlHashAddEntry3">xmlHashAddEntry3</a> (<a href="libxml2-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name2, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name3, <br/> void * userdata);
int <a href="#xmlHashSize">xmlHashSize</a> (<a href="libxml2-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table);
@@ -96,15 +97,15 @@ The content of this structure is not made public by the API.
</pre><p/>
</div>
<hr/>
- <div class="refsect2" lang="en"><h3><a name="xmlHashCopier"/>Function type xmlHashCopier</h3><pre class="programlisting">void * xmlHashCopier (void * payload, <br/> <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name)<br/>
+ <div class="refsect2" lang="en"><h3><a name="xmlHashCopier"/>Function type xmlHashCopier</h3><pre class="programlisting">void * xmlHashCopier (void * payload, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name)<br/>
</pre><p>Callback to copy data from a hash.</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>payload</tt></i>:</span></td><td>the data in the hash</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name associated</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a copy of the data or NULL in case of error.</td></tr></tbody></table></div></div>
<hr/>
- <div class="refsect2" lang="en"><h3><a name="xmlHashDeallocator"/>Function type xmlHashDeallocator</h3><pre class="programlisting">void xmlHashDeallocator (void * payload, <br/> <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name)<br/>
+ <div class="refsect2" lang="en"><h3><a name="xmlHashDeallocator"/>Function type xmlHashDeallocator</h3><pre class="programlisting">void xmlHashDeallocator (void * payload, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name)<br/>
</pre><p>Callback to free data from a hash.</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>payload</tt></i>:</span></td><td>the data in the hash</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name associated</td></tr></tbody></table></div></div>
<hr/>
- <div class="refsect2" lang="en"><h3><a name="xmlHashScanner"/>Function type xmlHashScanner</h3><pre class="programlisting">void xmlHashScanner (void * payload, <br/> void * data, <br/> <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name)<br/>
+ <div class="refsect2" lang="en"><h3><a name="xmlHashScanner"/>Function type xmlHashScanner</h3><pre class="programlisting">void xmlHashScanner (void * payload, <br/> void * data, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name)<br/>
</pre><p>Callback when scanning data in a hash with the simple scanner.</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>payload</tt></i>:</span></td><td>the data in the hash</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>extra scannner data</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name associated</td></tr></tbody></table></div></div>
<hr/>
@@ -130,11 +131,15 @@ The content of this structure is not made public by the API.
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlHashCreate"/>xmlHashCreate ()</h3><pre class="programlisting"><a href="libxml2-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> xmlHashCreate (int size)<br/>
</pre><p>Create a new xmlHashTablePtr.</p>
-<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size of the hash table</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object, or NULL if an error occured.</td></tr></tbody></table></div></div>
+<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size of the hash table</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object, or NULL if an error occurred.</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlHashCreateDict"/>xmlHashCreateDict ()</h3><pre class="programlisting"><a href="libxml2-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> xmlHashCreateDict (int size, <br/> <a href="libxml2-dict.html#xmlDictPtr">xmlDictPtr</a> dict)<br/>
</pre><p>Create a new <a href="libxml2-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> which will use @dict as the internal dictionary</p>
-<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size of the hash table</td></tr><tr><td><span class="term"><i><tt>dict</tt></i>:</span></td><td>a dictionary to use for the hash</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object, or NULL if an error occured.</td></tr></tbody></table></div></div>
+<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size of the hash table</td></tr><tr><td><span class="term"><i><tt>dict</tt></i>:</span></td><td>a dictionary to use for the hash</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object, or NULL if an error occurred.</td></tr></tbody></table></div></div>
+ <hr/>
+ <div class="refsect2" lang="en"><h3><a name="xmlHashDefaultDeallocator"/>xmlHashDefaultDeallocator ()</h3><pre class="programlisting">void xmlHashDefaultDeallocator (void * entry, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name)<br/>
+</pre><p>Free a hash table entry with xmlFree.</p>
+<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>entry</tt></i>:</span></td><td>the hash table entry</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the entry's name</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlHashFree"/>xmlHashFree ()</h3><pre class="programlisting">void xmlHashFree (<a href="libxml2-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br/> <a href="libxml2-hash.html#xmlHashDeallocator">xmlHashDeallocator</a> f)<br/>
</pre><p>Free the hash @table and its contents. The userdata is deallocated with @f if provided.</p>
diff --git a/doc/devhelp/libxml2-list.html b/doc/devhelp/libxml2-list.html
index 8a4fa734..0ae2f11b 100644
--- a/doc/devhelp/libxml2-list.html
+++ b/doc/devhelp/libxml2-list.html
@@ -55,14 +55,14 @@ void <a href="#xmlListMerge">xmlListMerge</a> (<a href="libxml2-list.html#xmlL
<a href="libxml2-list.html#xmlListPtr">xmlListPtr</a> <a href="#xmlListCreate">xmlListCreate</a> (<a href="libxml2-list.html#xmlListDeallocator">xmlListDeallocator</a> deallocator, <br/> <a href="libxml2-list.html#xmlListDataCompare">xmlListDataCompare</a> compare);
<a href="libxml2-list.html#xmlListPtr">xmlListPtr</a> <a href="#xmlListDup">xmlListDup</a> (const <a href="libxml2-list.html#xmlListPtr">xmlListPtr</a> old);
int <a href="#xmlListRemoveLast">xmlListRemoveLast</a> (<a href="libxml2-list.html#xmlListPtr">xmlListPtr</a> l, <br/> void * data);
-void <a href="#xmlListWalk">xmlListWalk</a> (<a href="libxml2-list.html#xmlListPtr">xmlListPtr</a> l, <br/> <a href="libxml2-list.html#xmlListWalker">xmlListWalker</a> walker, <br/> const void * user);
+void <a href="#xmlListWalk">xmlListWalk</a> (<a href="libxml2-list.html#xmlListPtr">xmlListPtr</a> l, <br/> <a href="libxml2-list.html#xmlListWalker">xmlListWalker</a> walker, <br/> void * user);
int <a href="#xmlListRemoveAll">xmlListRemoveAll</a> (<a href="libxml2-list.html#xmlListPtr">xmlListPtr</a> l, <br/> void * data);
int <a href="#xmlListCopy">xmlListCopy</a> (<a href="libxml2-list.html#xmlListPtr">xmlListPtr</a> cur, <br/> const <a href="libxml2-list.html#xmlListPtr">xmlListPtr</a> old);
void <a href="#xmlListPopFront">xmlListPopFront</a> (<a href="libxml2-list.html#xmlListPtr">xmlListPtr</a> l);
void * <a href="#xmlListSearch">xmlListSearch</a> (<a href="libxml2-list.html#xmlListPtr">xmlListPtr</a> l, <br/> void * data);
-typedef int <a href="#xmlListWalker">xmlListWalker</a> (const void * data, <br/> const void * user);
+typedef int <a href="#xmlListWalker">xmlListWalker</a> (const void * data, <br/> void * user);
int <a href="#xmlListRemoveFirst">xmlListRemoveFirst</a> (<a href="libxml2-list.html#xmlListPtr">xmlListPtr</a> l, <br/> void * data);
-void <a href="#xmlListReverseWalk">xmlListReverseWalk</a> (<a href="libxml2-list.html#xmlListPtr">xmlListPtr</a> l, <br/> <a href="libxml2-list.html#xmlListWalker">xmlListWalker</a> walker, <br/> const void * user);
+void <a href="#xmlListReverseWalk">xmlListReverseWalk</a> (<a href="libxml2-list.html#xmlListPtr">xmlListPtr</a> l, <br/> <a href="libxml2-list.html#xmlListWalker">xmlListWalker</a> walker, <br/> void * user);
void * <a href="#xmlLinkGetData">xmlLinkGetData</a> (<a href="libxml2-list.html#xmlLinkPtr">xmlLinkPtr</a> lk);
void <a href="#xmlListClear">xmlListClear</a> (<a href="libxml2-list.html#xmlListPtr">xmlListPtr</a> l);
int <a href="#xmlListAppend">xmlListAppend</a> (<a href="libxml2-list.html#xmlListPtr">xmlListPtr</a> l, <br/> void * data);
@@ -112,7 +112,7 @@ The content of this structure is not made public by the API.
</pre><p>Callback function used to free data from a list.</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>lk</tt></i>:</span></td><td>the data to deallocate</td></tr></tbody></table></div></div>
<hr/>
- <div class="refsect2" lang="en"><h3><a name="xmlListWalker"/>Function type xmlListWalker</h3><pre class="programlisting">int xmlListWalker (const void * data, <br/> const void * user)<br/>
+ <div class="refsect2" lang="en"><h3><a name="xmlListWalker"/>Function type xmlListWalker</h3><pre class="programlisting">int xmlListWalker (const void * data, <br/> void * user)<br/>
</pre><p>Callback function used when walking a list with xmlListWalk().</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>the data found in the list</td></tr><tr><td><span class="term"><i><tt>user</tt></i>:</span></td><td>extra user provided data to the walker</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 to stop walking the list, 1 otherwise.</td></tr></tbody></table></div></div>
<hr/>
@@ -186,11 +186,11 @@ The content of this structure is not made public by the API.
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlListRemoveFirst"/>xmlListRemoveFirst ()</h3><pre class="programlisting">int xmlListRemoveFirst (<a href="libxml2-list.html#xmlListPtr">xmlListPtr</a> l, <br/> void * data)<br/>
</pre><p>Remove the first instance associated to data in the list</p>
-<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>list data</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if a deallocation occured, or 0 if not found</td></tr></tbody></table></div></div>
+<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>list data</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if a deallocation occurred, or 0 if not found</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlListRemoveLast"/>xmlListRemoveLast ()</h3><pre class="programlisting">int xmlListRemoveLast (<a href="libxml2-list.html#xmlListPtr">xmlListPtr</a> l, <br/> void * data)<br/>
</pre><p>Remove the last instance associated to data in the list</p>
-<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>list data</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if a deallocation occured, or 0 if not found</td></tr></tbody></table></div></div>
+<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>list data</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if a deallocation occurred, or 0 if not found</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlListReverse"/>xmlListReverse ()</h3><pre class="programlisting">void xmlListReverse (<a href="libxml2-list.html#xmlListPtr">xmlListPtr</a> l)<br/>
</pre><p>Reverse the order of the elements in the list</p>
@@ -200,7 +200,7 @@ The content of this structure is not made public by the API.
</pre><p>Search the list in reverse order for an existing value of @data</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>a search value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the value associated to @data or NULL in case of error</td></tr></tbody></table></div></div>
<hr/>
- <div class="refsect2" lang="en"><h3><a name="xmlListReverseWalk"/>xmlListReverseWalk ()</h3><pre class="programlisting">void xmlListReverseWalk (<a href="libxml2-list.html#xmlListPtr">xmlListPtr</a> l, <br/> <a href="libxml2-list.html#xmlListWalker">xmlListWalker</a> walker, <br/> const void * user)<br/>
+ <div class="refsect2" lang="en"><h3><a name="xmlListReverseWalk"/>xmlListReverseWalk ()</h3><pre class="programlisting">void xmlListReverseWalk (<a href="libxml2-list.html#xmlListPtr">xmlListPtr</a> l, <br/> <a href="libxml2-list.html#xmlListWalker">xmlListWalker</a> walker, <br/> void * user)<br/>
</pre><p>Walk all the element of the list in reverse order and apply the walker function to it</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>walker</tt></i>:</span></td><td>a processing function</td></tr><tr><td><span class="term"><i><tt>user</tt></i>:</span></td><td>a user parameter passed to the walker function</td></tr></tbody></table></div></div>
<hr/>
@@ -216,7 +216,7 @@ The content of this structure is not made public by the API.
</pre><p>Sort all the elements in the list</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr></tbody></table></div></div>
<hr/>
- <div class="refsect2" lang="en"><h3><a name="xmlListWalk"/>xmlListWalk ()</h3><pre class="programlisting">void xmlListWalk (<a href="libxml2-list.html#xmlListPtr">xmlListPtr</a> l, <br/> <a href="libxml2-list.html#xmlListWalker">xmlListWalker</a> walker, <br/> const void * user)<br/>
+ <div class="refsect2" lang="en"><h3><a name="xmlListWalk"/>xmlListWalk ()</h3><pre class="programlisting">void xmlListWalk (<a href="libxml2-list.html#xmlListPtr">xmlListPtr</a> l, <br/> <a href="libxml2-list.html#xmlListWalker">xmlListWalker</a> walker, <br/> void * user)<br/>
</pre><p>Walk all the element of the first from first to last and apply the walker function to it</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>walker</tt></i>:</span></td><td>a processing function</td></tr><tr><td><span class="term"><i><tt>user</tt></i>:</span></td><td>a user parameter passed to the walker function</td></tr></tbody></table></div></div>
<hr/>
diff --git a/doc/devhelp/libxml2-schemasInternals.html b/doc/devhelp/libxml2-schemasInternals.html
index 2f9cbc94..ab917549 100644
--- a/doc/devhelp/libxml2-schemasInternals.html
+++ b/doc/devhelp/libxml2-schemasInternals.html
@@ -39,7 +39,7 @@
<span class="refentrytitle">schemasInternals</span>
</h2>
<p>schemasInternals - internal interfaces for XML Schemas</p>
- <p>internal interfaces for the XML Schemas handling and schema validity checking The Schemas development is a Work In Progress. Some of those interfaces are not garanteed to be API or ABI stable ! </p>
+ <p>internal interfaces for the XML Schemas handling and schema validity checking The Schemas development is a Work In Progress. Some of those interfaces are not guaranteed to be API or ABI stable ! </p>
<p>Author(s): Daniel Veillard </p>
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
diff --git a/doc/devhelp/libxml2-tree.html b/doc/devhelp/libxml2-tree.html
index ac85d60e..44e1e03a 100644
--- a/doc/devhelp/libxml2-tree.html
+++ b/doc/devhelp/libxml2-tree.html
@@ -1542,7 +1542,7 @@ The content of this structure is not made public by the API.
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlSplitQName2"/>xmlSplitQName2 ()</h3><pre class="programlisting"><a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * xmlSplitQName2 (const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name, <br/> <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> ** prefix)<br/>
</pre><p>parse an XML qualified name string [NS 5] QName ::= (Prefix ':')? LocalPart [NS 6] Prefix ::= NCName [NS 7] LocalPart ::= NCName</p>
-<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the full QName</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>a <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> **</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if not a QName, otherwise the local part, and prefix is updated to get the Prefix if any.</td></tr></tbody></table></div></div>
+<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the full QName</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>a <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> **</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if the name doesn't have a prefix. Otherwise, returns the local part, and prefix is updated to get the Prefix. Both the return value and the prefix must be freed by the caller.</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlSplitQName3"/>xmlSplitQName3 ()</h3><pre class="programlisting">const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * xmlSplitQName3 (const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name, <br/> int * len)<br/>
</pre><p>parse an XML qualified name string,i</p>
diff --git a/doc/devhelp/libxml2-xmlerror.html b/doc/devhelp/libxml2-xmlerror.html
index 13bab8ac..6a936496 100644
--- a/doc/devhelp/libxml2-xmlerror.html
+++ b/doc/devhelp/libxml2-xmlerror.html
@@ -897,7 +897,7 @@ void <a href="#xmlResetError">xmlResetError</a> (<a href="libxml2-xmlerror.htm
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlCtxtGetLastError"/>xmlCtxtGetLastError ()</h3><pre class="programlisting"><a href="libxml2-xmlerror.html#xmlErrorPtr">xmlErrorPtr</a> xmlCtxtGetLastError (void * ctx)<br/>
</pre><p>Get the last parsing error registered.</p>
-<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if no error occured or a pointer to the error</td></tr></tbody></table></div></div>
+<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if no error occurred or a pointer to the error</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlCtxtResetLastError"/>xmlCtxtResetLastError ()</h3><pre class="programlisting">void xmlCtxtResetLastError (void * ctx)<br/>
</pre><p>Cleanup the last global error registered. For parsing error this does not change the well-formedness result.</p>
@@ -905,7 +905,7 @@ void <a href="#xmlResetError">xmlResetError</a> (<a href="libxml2-xmlerror.htm
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlGetLastError"/>xmlGetLastError ()</h3><pre class="programlisting"><a href="libxml2-xmlerror.html#xmlErrorPtr">xmlErrorPtr</a> xmlGetLastError (void)<br/>
</pre><p>Get the last global error registered. This is per thread if compiled with thread support.</p>
-<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if no error occured or a pointer to the error</td></tr></tbody></table></div></div>
+<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if no error occurred or a pointer to the error</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlParserError"/>xmlParserError ()</h3><pre class="programlisting">void xmlParserError (void * ctx, <br/> const char * msg, <br/> ... ...)<br/>
</pre><p>Display and format an error messages, gives file, line, position and extra parameters.</p>
diff --git a/doc/devhelp/libxml2-xmlreader.html b/doc/devhelp/libxml2-xmlreader.html
index 3814f431..2051f701 100644
--- a/doc/devhelp/libxml2-xmlreader.html
+++ b/doc/devhelp/libxml2-xmlreader.html
@@ -213,7 +213,7 @@ The content of this structure is not made public by the API.
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlTextReaderErrorFunc"/>Function type xmlTextReaderErrorFunc</h3><pre class="programlisting">void xmlTextReaderErrorFunc (void * arg, <br/> const char * msg, <br/> <a href="libxml2-xmlreader.html#xmlParserSeverities">xmlParserSeverities</a> severity, <br/> <a href="libxml2-xmlreader.html#xmlTextReaderLocatorPtr">xmlTextReaderLocatorPtr</a> locator)<br/>
</pre><p>Signature of an error callback from a reader parser</p>
-<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>arg</tt></i>:</span></td><td>the user argument</td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td>the message</td></tr><tr><td><span class="term"><i><tt>severity</tt></i>:</span></td><td>the severity of the error</td></tr><tr><td><span class="term"><i><tt>locator</tt></i>:</span></td><td>a locator indicating where the error occured</td></tr></tbody></table></div></div>
+<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>arg</tt></i>:</span></td><td>the user argument</td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td>the message</td></tr><tr><td><span class="term"><i><tt>severity</tt></i>:</span></td><td>the severity of the error</td></tr><tr><td><span class="term"><i><tt>locator</tt></i>:</span></td><td>a locator indicating where the error occurred</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlFreeTextReader"/>xmlFreeTextReader ()</h3><pre class="programlisting">void xmlFreeTextReader (<a href="libxml2-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br/>
</pre><p>Deallocate all the resources associated to the reader</p>
@@ -477,7 +477,7 @@ The content of this structure is not made public by the API.
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlTextReaderPreservePattern"/>xmlTextReaderPreservePattern ()</h3><pre class="programlisting">int xmlTextReaderPreservePattern (<a href="libxml2-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * pattern, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> ** namespaces)<br/>
</pre><p>This tells the XML Reader to preserve all nodes matched by the pattern. The caller must also use xmlTextReaderCurrentDoc() to keep an handle on the resulting document once parsing has finished</p>
-<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml2-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>pattern</tt></i>:</span></td><td>an XPath subset pattern</td></tr><tr><td><span class="term"><i><tt>namespaces</tt></i>:</span></td><td>the prefix definitions, array of [URI, prefix] or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a positive number in case of success and -1 in case of error</td></tr></tbody></table></div></div>
+<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml2-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>pattern</tt></i>:</span></td><td>an XPath subset pattern</td></tr><tr><td><span class="term"><i><tt>namespaces</tt></i>:</span></td><td>the prefix definitions, array of [URI, prefix] or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a non-negative number in case of success and -1 in case of error</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlTextReaderQuoteChar"/>xmlTextReaderQuoteChar ()</h3><pre class="programlisting">int xmlTextReaderQuoteChar (<a href="libxml2-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br/>
</pre><p>The quotation mark character used to enclose the value of an attribute.</p>
diff --git a/doc/devhelp/libxml2-xmlstring.html b/doc/devhelp/libxml2-xmlstring.html
index ca90ed44..95a845f1 100644
--- a/doc/devhelp/libxml2-xmlstring.html
+++ b/doc/devhelp/libxml2-xmlstring.html
@@ -133,7 +133,7 @@ int <a href="#xmlUTF8Strloc">xmlUTF8Strloc</a> (const <a href="libxml2-xmlstri
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlStrcat"/>xmlStrcat ()</h3><pre class="programlisting"><a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * xmlStrcat (<a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * cur, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * add)<br/>
</pre><p>a strcat for array of xmlChar's. Since they are supposed to be encoded in UTF-8 or an encoding with 8bit based chars, we assume a termination mark of '0'.</p>
-<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the original <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * array</td></tr><tr><td><span class="term"><i><tt>add</tt></i>:</span></td><td>the <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * array added</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * containing the concatenated string.</td></tr></tbody></table></div></div>
+<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the original <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * array</td></tr><tr><td><span class="term"><i><tt>add</tt></i>:</span></td><td>the <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * array added</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * containing the concatenated string. The original @cur is reallocated and should not be freed.</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlStrchr"/>xmlStrchr ()</h3><pre class="programlisting">const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * xmlStrchr (const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * str, <br/> <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> val)<br/>
</pre><p>a strchr for xmlChar's</p>
@@ -157,7 +157,7 @@ int <a href="#xmlUTF8Strloc">xmlUTF8Strloc</a> (const <a href="libxml2-xmlstri
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlStrncat"/>xmlStrncat ()</h3><pre class="programlisting"><a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * xmlStrncat (<a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * cur, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * add, <br/> int len)<br/>
</pre><p>a strncat for array of xmlChar's, it will extend @cur with the len first bytes of @add. Note that if @len &lt; 0 then this is an API error and NULL will be returned.</p>
-<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the original <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * array</td></tr><tr><td><span class="term"><i><tt>add</tt></i>:</span></td><td>the <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * array added</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the length of @add</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> *, the original @cur is reallocated if needed and should not be freed</td></tr></tbody></table></div></div>
+<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the original <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * array</td></tr><tr><td><span class="term"><i><tt>add</tt></i>:</span></td><td>the <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * array added</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the length of @add</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> *, the original @cur is reallocated and should not be freed.</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlStrncatNew"/>xmlStrncatNew ()</h3><pre class="programlisting"><a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * xmlStrncatNew (const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * str1, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * str2, <br/> int len)<br/>
</pre><p>same as xmlStrncat, but creates a new string. The original two strings are not freed. If @len is &lt; 0 then the length will be calculated automatically.</p>
@@ -204,7 +204,7 @@ int <a href="#xmlUTF8Strloc">xmlUTF8Strloc</a> (const <a href="libxml2-xmlstri
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>utf</tt></i>:</span></td><td>the input UTF8 *</td></tr><tr><td><span class="term"><i><tt>pos</tt></i>:</span></td><td>the position of the desired UTF8 char (in chars)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the UTF8 character or NULL</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlUTF8Strsize"/>xmlUTF8Strsize ()</h3><pre class="programlisting">int xmlUTF8Strsize (const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * utf, <br/> int len)<br/>
-</pre><p>storage size of an UTF8 string the behaviour is not garanteed if the input string is not UTF-8</p>
+</pre><p>storage size of an UTF8 string the behaviour is not guaranteed if the input string is not UTF-8</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>utf</tt></i>:</span></td><td>a sequence of UTF-8 encoded bytes</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the number of <a href="libxml2-SAX.html#characters">characters</a> in the array</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the storage size of the first 'len' <a href="libxml2-SAX.html#characters">characters</a> of ARRAY</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlUTF8Strsub"/>xmlUTF8Strsub ()</h3><pre class="programlisting"><a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * xmlUTF8Strsub (const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * utf, <br/> int start, <br/> int len)<br/>
diff --git a/doc/devhelp/libxml2-xpath.html b/doc/devhelp/libxml2-xpath.html
index 640c715a..edf76439 100644
--- a/doc/devhelp/libxml2-xpath.html
+++ b/doc/devhelp/libxml2-xpath.html
@@ -473,7 +473,7 @@ The content of this structure is not made public by the API.
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the XPath expression</td></tr><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml2-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> resulting from the evaluation or NULL. the caller has to free the object.</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlXPathEvalExpression"/>xmlXPathEvalExpression ()</h3><pre class="programlisting"><a href="libxml2-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> xmlXPathEvalExpression (const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * str, <br/> <a href="libxml2-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt)<br/>
-</pre><p>Evaluate the XPath expression in the given context.</p>
+</pre><p>Alias for xmlXPathEval().</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the XPath expression</td></tr><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml2-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> resulting from the evaluation or NULL. the caller has to free the object.</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlXPathEvalPredicate"/>xmlXPathEvalPredicate ()</h3><pre class="programlisting">int xmlXPathEvalPredicate (<a href="libxml2-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br/> <a href="libxml2-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> res)<br/>
@@ -501,15 +501,15 @@ The content of this structure is not made public by the API.
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>obj</tt></i>:</span></td><td>the object to free</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlXPathInit"/>xmlXPathInit ()</h3><pre class="programlisting">void xmlXPathInit (void)<br/>
-</pre><p>Initialize the XPath environment</p>
+</pre><p>Initialize the XPath environment Does nothing but must be kept as public function.</p>
</div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlXPathIsInf"/>xmlXPathIsInf ()</h3><pre class="programlisting">int xmlXPathIsInf (double val)<br/>
-</pre><p>Provides a portable isinf() function to detect whether a double is a +Infinite or -Infinite. Based on trio code http://sourceforge.net/projects/ctrio/</p>
-<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>a double value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 vi the value is +Infinite, -1 if -Infinite, 0 otherwise</td></tr></tbody></table></div></div>
+</pre><p/>
+<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>a double value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if the value is +Infinite, -1 if -Infinite, 0 otherwise</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlXPathIsNaN"/>xmlXPathIsNaN ()</h3><pre class="programlisting">int xmlXPathIsNaN (double val)<br/>
-</pre><p>Provides a portable isnan() function to detect whether a double is a NotaNumber. Based on trio code http://sourceforge.net/projects/ctrio/</p>
+</pre><p/>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>a double value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if the value is a NaN, 0 otherwise</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlXPathNewContext"/>xmlXPathNewContext ()</h3><pre class="programlisting"><a href="libxml2-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> xmlXPathNewContext (<a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br/>
diff --git a/doc/devhelp/libxml2-xpathInternals.html b/doc/devhelp/libxml2-xpathInternals.html
index 05973439..17d27cd6 100644
--- a/doc/devhelp/libxml2-xpathInternals.html
+++ b/doc/devhelp/libxml2-xpathInternals.html
@@ -694,7 +694,7 @@ void <a href="#xmlXPathDebugDumpObject">xmlXPathDebugDumpObject</a> (FILE * out
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlXPathRoundFunction"/>xmlXPathRoundFunction ()</h3><pre class="programlisting">void xmlXPathRoundFunction (<a href="libxml2-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br/> int nargs)<br/>
-</pre><p>Implement the round() XPath function number round(number) The round function returns the number that is closest to the argument and that is an integer. If there are two such numbers, then the one that is even is returned.</p>
+</pre><p>Implement the round() XPath function number round(number) The round function returns the number that is closest to the argument and that is an integer. If there are two such numbers, then the one that is closest to positive infinity is returned.</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlXPathStartsWithFunction"/>xmlXPathStartsWithFunction ()</h3><pre class="programlisting">void xmlXPathStartsWithFunction (<a href="libxml2-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br/> int nargs)<br/>
diff --git a/doc/devhelp/libxml2-xpointer.html b/doc/devhelp/libxml2-xpointer.html
index 807eed76..4d7c3370 100644
--- a/doc/devhelp/libxml2-xpointer.html
+++ b/doc/devhelp/libxml2-xpointer.html
@@ -158,7 +158,7 @@ void <a href="#xmlXPtrEvalRangePredicate">xmlXPtrEvalRangePredicate</a> (<a href
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>start</tt></i>:</span></td><td>the starting point</td></tr><tr><td><span class="term"><i><tt>end</tt></i>:</span></td><td>the ending point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlXPtrRangeToFunction"/>xmlXPtrRangeToFunction ()</h3><pre class="programlisting">void xmlXPtrRangeToFunction (<a href="libxml2-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br/> int nargs)<br/>
-</pre><p>Implement the range-to() XPointer function</p>
+</pre><p>Implement the range-to() XPointer function Obsolete. range-to is not a real function but a special type of location step which is handled in xpath.c.</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPointer Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of args</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlXPtrWrapLocationSet"/>xmlXPtrWrapLocationSet ()</h3><pre class="programlisting"><a href="libxml2-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> xmlXPtrWrapLocationSet (<a href="libxml2-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> val)<br/>
diff --git a/doc/devhelp/libxml2.devhelp b/doc/devhelp/libxml2.devhelp
index fbd3ad4a..575b222a 100644
--- a/doc/devhelp/libxml2.devhelp
+++ b/doc/devhelp/libxml2.devhelp
@@ -70,6 +70,7 @@
<function name="HTML_PI_NODE" link="libxml2-HTMLtree.html#HTML_PI_NODE"/>
<function name="HTML_PRESERVE_NODE" link="libxml2-HTMLtree.html#HTML_PRESERVE_NODE"/>
<function name="HTML_TEXT_NODE" link="libxml2-HTMLtree.html#HTML_TEXT_NODE"/>
+ <function name="ICU_PIVOT_BUF_SIZE" link="libxml2-encoding.html#ICU_PIVOT_BUF_SIZE"/>
<function name="INPUT_CHUNK" link="libxml2-parserInternals.html#INPUT_CHUNK"/>
<function name="INVALID_SOCKET" link="libxml2-nanoftp.html#INVALID_SOCKET"/>
<function name="IS_ASCII_DIGIT" link="libxml2-parserInternals.html#IS_ASCII_DIGIT"/>
@@ -2389,6 +2390,7 @@
<function name="xmlHashCopy ()" link="libxml2-hash.html#xmlHashCopy"/>
<function name="xmlHashCreate ()" link="libxml2-hash.html#xmlHashCreate"/>
<function name="xmlHashCreateDict ()" link="libxml2-hash.html#xmlHashCreateDict"/>
+ <function name="xmlHashDefaultDeallocator ()" link="libxml2-hash.html#xmlHashDefaultDeallocator"/>
<function name="xmlHashFree ()" link="libxml2-hash.html#xmlHashFree"/>
<function name="xmlHashLookup ()" link="libxml2-hash.html#xmlHashLookup"/>
<function name="xmlHashLookup2 ()" link="libxml2-hash.html#xmlHashLookup2"/>
diff --git a/doc/elfgcchack.xsl b/doc/elfgcchack.xsl
index 9b1a9bc1..8dd5c6a7 100644
--- a/doc/elfgcchack.xsl
+++ b/doc/elfgcchack.xsl
@@ -18,7 +18,7 @@
#ifdef IN_LIBXML
#ifdef __GNUC__
#ifdef PIC
-#ifdef linux
+#ifdef __linux__
#if (__GNUC__ == 3 &amp;&amp; __GNUC_MINOR__ >= 3) || (__GNUC__ > 3)
#include "libxml/c14n.h"
diff --git a/doc/examples/Makefile.am b/doc/examples/Makefile.am
index 57af9c2e..ef59fcef 100644
--- a/doc/examples/Makefile.am
+++ b/doc/examples/Makefile.am
@@ -13,7 +13,7 @@ if REBUILD_DOCS
rebuild: examples.xml index.html
.PHONY: rebuild
-examples.xml: index.py $(noinst_PROGRAMS:=.c)
+examples.xml: index.py $(check_PROGRAMS:=.c)
cd $(srcdir) && $(PYTHON) index.py
$(MAKE) Makefile
@@ -49,7 +49,7 @@ EXTRA_DIST = \
xpath1.res \
xpath2.res
-noinst_PROGRAMS = \
+check_PROGRAMS = \
io1 \
io2 \
parse1 \
@@ -99,37 +99,38 @@ xpath2_SOURCES = xpath2.c
valgrind:
$(MAKE) CHECKER='valgrind' tests
-tests: $(noinst_PROGRAMS)
- test -f Makefile.am || test -f test1.xml || $(LN_S) $(srcdir)/test?.xml .
+tests: $(check_PROGRAMS)
+ @test -f Makefile.am || test -f test1.xml || $(LN_S) $(srcdir)/test?.xml .
@(echo '## examples regression tests')
@(echo > .memdump)
- $(CHECKER) ./io1 > io1.tmp && diff io1.tmp $(srcdir)/io1.res
+ @$(CHECKER) ./io1 > io1.tmp && diff io1.tmp $(srcdir)/io1.res
@grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0" ; exit 0
- $(CHECKER) ./io2 > io2.tmp && diff io2.tmp $(srcdir)/io2.res
+ @$(CHECKER) ./io2 > io2.tmp && diff io2.tmp $(srcdir)/io2.res
@grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0" ; exit 0
- $(CHECKER) ./parse1 test1.xml
+ @$(CHECKER) ./parse1 test1.xml
@grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0" ; exit 0
- $(CHECKER) ./parse2 test2.xml
+ @$(CHECKER) ./parse2 test2.xml
@grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0" ; exit 0
- $(CHECKER) ./parse3
+ @$(CHECKER) ./parse3
@grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0" ; exit 0
- $(CHECKER) ./parse4 test3.xml
+ @$(CHECKER) ./parse4 test3.xml
@grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0" ; exit 0
- $(CHECKER) ./reader1 test2.xml > reader1.tmp && diff reader1.tmp $(srcdir)/reader1.res
+ @$(CHECKER) ./reader1 test2.xml > reader1.tmp && diff reader1.tmp $(srcdir)/reader1.res
@grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0" ; exit 0
- $(CHECKER) ./reader2 test2.xml > reader1.tmp && diff reader1.tmp $(srcdir)/reader1.res
+ @$(CHECKER) ./reader2 test2.xml > reader1.tmp && diff reader1.tmp $(srcdir)/reader1.res
@grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0" ; exit 0
- $(CHECKER) ./reader3 > reader3.tmp && diff reader3.tmp $(srcdir)/reader3.res
+ @$(CHECKER) ./reader3 > reader3.tmp && diff reader3.tmp $(srcdir)/reader3.res
@grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0" ; exit 0
- $(CHECKER) ./reader4 test1.xml test2.xml test3.xml > reader4.tmp && diff reader4.tmp $(srcdir)/reader4.res
+ @$(CHECKER) ./reader4 test1.xml test2.xml test3.xml > reader4.tmp && diff reader4.tmp $(srcdir)/reader4.res
@grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0" ; exit 0
- $(CHECKER) ./testWriter && for i in 1 2 3 4 ; do diff $(srcdir)/writer.xml writer$$i.tmp || break ; done
+ @$(CHECKER) ./testWriter && for i in 1 2 3 4 ; do diff $(srcdir)/writer.xml writer$$i.tmp || break ; done
@grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0" ; exit 0
- $(CHECKER) ./tree1 test2.xml > tree1.tmp && diff tree1.tmp $(srcdir)/tree1.res
+ @$(CHECKER) ./tree1 test2.xml > tree1.tmp && diff tree1.tmp $(srcdir)/tree1.res
@grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0" ; exit 0
- $(CHECKER) ./tree2 > tree2.tmp && diff tree2.tmp $(srcdir)/tree2.res
+ @$(CHECKER) ./tree2 > tree2.tmp && diff tree2.tmp $(srcdir)/tree2.res
@grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0" ; exit 0
- $(CHECKER) ./xpath1 test3.xml '//child2' > xpath1.tmp && diff xpath1.tmp $(srcdir)/xpath1.res
+ @$(CHECKER) ./xpath1 test3.xml '//child2' > xpath1.tmp && diff xpath1.tmp $(srcdir)/xpath1.res
@grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0" ; exit 0
- $(CHECKER) ./xpath2 test3.xml '//discarded' discarded > xpath2.tmp && diff xpath2.tmp $(srcdir)/xpath2.res
+ @$(CHECKER) ./xpath2 test3.xml '//discarded' discarded > xpath2.tmp && diff xpath2.tmp $(srcdir)/xpath2.res
@grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0" ; exit 0
+ @rm *.tmp
diff --git a/doc/examples/examples.xml b/doc/examples/examples.xml
index 28929ccb..d38247b4 100644
--- a/doc/examples/examples.xml
+++ b/doc/examples/examples.xml
@@ -1,147 +1,118 @@
<examples>
- <example filename='xpath1.c'>
- <synopsis>Evaluate XPath expression and prints result node set.</synopsis>
- <purpose>Shows how to evaluate XPath expression and register known namespaces in XPath context.</purpose>
- <usage>xpath1 &lt;xml-file&gt; &lt;xpath-expr&gt; [&lt;known-ns-list&gt;]</usage>
- <test>xpath1 test3.xml &apos;//child2&apos; &gt; xpath1.tmp &amp;&amp; diff xpath1.tmp $(srcdir)/xpath1.res</test>
- <author>Aleksey Sanin</author>
+ <example filename='io1.c'>
+ <synopsis>Example of custom Input/Output</synopsis>
+ <purpose>Demonstrate the use of xmlRegisterInputCallbacks to build a custom I/O layer, this is used in an XInclude method context to show how dynamic document can be built in a clean way.</purpose>
+ <usage>io1</usage>
+ <test>io1 &gt; io1.tmp &amp;&amp; diff io1.tmp $(srcdir)/io1.res</test>
+ <author>Daniel Veillard</author>
<copy>see Copyright for the status of this software. </copy>
- <section>XPath</section>
+ <section>InputOutput</section>
<includes>
<include>&lt;libxml/parser.h&gt;</include>
- <include>&lt;libxml/xpath.h&gt;</include>
- <include>&lt;libxml/xpathInternals.h&gt;</include>
+ <include>&lt;libxml/xmlIO.h&gt;</include>
+ <include>&lt;libxml/xinclude.h&gt;</include>
<include>&lt;libxml/tree.h&gt;</include>
</includes>
<uses>
- <enum line='229' file='tree' name='XML_ELEMENT_NODE'/>
- <typedef line='88' file='xpath' name='xmlXPathObjectPtr'/>
- <function line='54' file='xmlmemory' name='xmlMemoryDump'/>
- <function line='117' file='xpath' name='xmlXPathEvalExpression'/>
- <function line='94' file='parser' name='xmlParseFile'/>
- <function line='186' file='xpathInternals' name='xmlXPathRegisterNs'/>
- <function line='129' file='xpath' name='xmlXPathFreeObject'/>
- <variable line='193' file='globals' name='xmlFree'/>
- <typedef line='218' file='tree' name='xmlNsPtr'/>
- <function line='101' file='xpath' name='xmlXPathNewContext'/>
- <function line='49' file='parser' name='xmlCleanupParser'/>
- <macro line='43' file='xmlversion' name='LIBXML_TEST_VERSION'/>
- <typedef line='87' file='xpath' name='xmlXPathContextPtr'/>
- <function line='130' file='xpath' name='xmlXPathFreeContext'/>
- <function line='39' file='parser' name='xmlInitParser'/>
- <function line='156' file='xmlstring' name='xmlStrdup'/>
- <function line='131' file='tree' name='xmlFreeDoc'/>
- <function line='180' file='xmlstring' name='xmlStrchr'/>
- <typedef line='206' file='tree' name='xmlNodePtr'/>
- <typedef line='86' file='tree' name='xmlDocPtr'/>
- <enum line='217' file='tree' name='XML_NAMESPACE_DECL'/>
+ <function line='143' file='tree' name='xmlDocDump'/>
+ <function line='158' file='xmlmemory' name='xmlMemoryDump'/>
+ <function line='149' file='tree' name='xmlFreeDoc'/>
+ <function line='154' file='parser' name='xmlCleanupParser'/>
+ <macro line='117' file='xmlversion' name='LIBXML_TEST_VERSION'/>
+ <function line='134' file='xinclude' name='xmlXIncludeProcess'/>
+ <function line='117' file='xmlIO' name='xmlRegisterInputCallbacks'/>
+ <function line='124' file='parser' name='xmlReadMemory'/>
+ <typedef line='105' file='tree' name='xmlDocPtr'/>
</uses>
</example>
- <example filename='parse3.c'>
- <synopsis>Parse an XML document in memory to a tree and free it</synopsis>
- <purpose>Demonstrate the use of xmlReadMemory() to read an XML file into a tree and and xmlFreeDoc() to free the resulting tree</purpose>
- <usage>parse3</usage>
- <test>parse3</test>
- <author>Daniel Veillard</author>
+ <example filename='io2.c'>
+ <synopsis>Output to char buffer</synopsis>
+ <purpose>Demonstrate the use of xmlDocDumpMemory to output document to a character buffer</purpose>
+ <usage>io2</usage>
+ <test>io2 &gt; io2.tmp &amp;&amp; diff io2.tmp $(srcdir)/io2.res</test>
+ <author>John Fleck</author>
<copy>see Copyright for the status of this software. </copy>
- <section>Parsing</section>
+ <section>InputOutput</section>
<includes>
- <include>&lt;libxml/tree.h&gt;</include>
<include>&lt;libxml/parser.h&gt;</include>
</includes>
<uses>
- <function line='33' file='parser' name='xmlReadMemory'/>
- <function line='58' file='xmlmemory' name='xmlMemoryDump'/>
- <function line='54' file='parser' name='xmlCleanupParser'/>
- <macro line='49' file='xmlversion' name='LIBXML_TEST_VERSION'/>
- <function line='38' file='tree' name='xmlFreeDoc'/>
- <typedef line='27' file='tree' name='xmlDocPtr'/>
+ <function line='29' file='tree' name='xmlNodeSetContent'/>
+ <function line='36' file='tree' name='xmlDocDumpFormatMemory'/>
+ <variable line='42' file='globals' name='xmlFree'/>
+ <function line='30' file='tree' name='xmlDocSetRootElement'/>
+ <typedef line='20' file='tree' name='xmlDocPtr'/>
+ <function line='43' file='tree' name='xmlFreeDoc'/>
+ <typedef line='19' file='tree' name='xmlNodePtr'/>
+ <function line='27' file='tree' name='xmlNewDoc'/>
+ <function line='28' file='tree' name='xmlNewNode'/>
</uses>
</example>
- <example filename='reader2.c'>
- <synopsis>Parse and validate an XML file with an xmlReader</synopsis>
- <purpose>Demonstrate the use of xmlReaderForFile() to parse an XML file validating the content in the process and activating options like entities substitution, and DTD attributes defaulting. (Note that the XMLReader functions require libxml2 version later than 2.6.)</purpose>
- <usage>reader2 &lt;valid_xml_filename&gt;</usage>
- <test>reader2 test2.xml &gt; reader1.tmp &amp;&amp; diff reader1.tmp $(srcdir)/reader1.res</test>
+ <example filename='parse1.c'>
+ <synopsis>Parse an XML file to a tree and free it</synopsis>
+ <purpose>Demonstrate the use of xmlReadFile() to read an XML file into a tree and and xmlFreeDoc() to free the resulting tree</purpose>
+ <usage>parse1 test1.xml</usage>
+ <test>parse1 test1.xml</test>
<author>Daniel Veillard</author>
<copy>see Copyright for the status of this software. </copy>
- <section>xmlReader</section>
+ <section>Parsing</section>
<includes>
- <include>&lt;libxml/xmlreader.h&gt;</include>
+ <include>&lt;libxml/tree.h&gt;</include>
+ <include>&lt;libxml/parser.h&gt;</include>
</includes>
<uses>
- <function line='45' file='xmlstring' name='xmlStrlen'/>
- <function line='109' file='parser' name='xmlCleanupParser'/>
- <function line='38' file='xmlreader' name='xmlTextReaderNodeType'/>
- <typedef line='60' file='xmlreader' name='xmlTextReaderPtr'/>
- <function line='113' file='xmlmemory' name='xmlMemoryDump'/>
- <function line='34' file='xmlreader' name='xmlTextReaderConstValue'/>
- <enum line='70' file='parser' name='XML_PARSE_NOENT'/>
- <function line='37' file='xmlreader' name='xmlTextReaderDepth'/>
- <enum line='71' file='parser' name='XML_PARSE_DTDVALID'/>
- <enum line='69' file='parser' name='XML_PARSE_DTDATTR'/>
- <function line='84' file='xmlreader' name='xmlFreeTextReader'/>
- <macro line='104' file='xmlversion' name='LIBXML_TEST_VERSION'/>
- <function line='30' file='xmlreader' name='xmlTextReaderConstName'/>
- <function line='41' file='xmlreader' name='xmlTextReaderHasValue'/>
- <function line='76' file='xmlreader' name='xmlTextReaderRead'/>
- <function line='40' file='xmlreader' name='xmlTextReaderIsEmptyElement'/>
- <function line='68' file='xmlreader' name='xmlReaderForFile'/>
- <function line='81' file='xmlreader' name='xmlTextReaderIsValid'/>
+ <function line='54' file='xmlmemory' name='xmlMemoryDump'/>
+ <function line='50' file='parser' name='xmlCleanupParser'/>
+ <macro line='45' file='xmlversion' name='LIBXML_TEST_VERSION'/>
+ <typedef line='24' file='tree' name='xmlDocPtr'/>
+ <function line='31' file='tree' name='xmlFreeDoc'/>
+ <function line='26' file='parser' name='xmlReadFile'/>
</uses>
</example>
- <example filename='tree2.c'>
- <synopsis>Creates a tree</synopsis>
- <purpose>Shows how to create document, nodes and dump it to stdout or file.</purpose>
- <usage>tree2 &lt;filename&gt; -Default output: stdout</usage>
- <test>tree2 &gt; tree2.tmp &amp;&amp; diff tree2.tmp $(srcdir)/tree2.res</test>
- <author>Lucas Brasilino &lt;brasilino@recife.pe.gov.br&gt;</author>
- <copy>see Copyright for the status of this software </copy>
- <section>Tree</section>
+ <example filename='parse2.c'>
+ <synopsis>Parse and validate an XML file to a tree and free the result</synopsis>
+ <purpose>Create a parser context for an XML file, then parse and validate the file, creating a tree, check the validation result and xmlFreeDoc() to free the resulting tree.</purpose>
+ <usage>parse2 test2.xml</usage>
+ <test>parse2 test2.xml</test>
+ <author>Daniel Veillard</author>
+ <copy>see Copyright for the status of this software. </copy>
+ <section>Parsing</section>
<includes>
<include>&lt;libxml/tree.h&gt;</include>
<include>&lt;libxml/parser.h&gt;</include>
</includes>
<uses>
- <function line='75' file='tree' name='xmlNewText'/>
- <function line='110' file='xmlmemory' name='xmlMemoryDump'/>
- <function line='96' file='tree' name='xmlSaveFormatFileEnc'/>
- <function line='78' file='tree' name='xmlAddChild'/>
- <function line='41' file='tree' name='xmlDocSetRootElement'/>
- <function line='105' file='parser' name='xmlCleanupParser'/>
- <macro line='34' file='xmlversion' name='LIBXML_TEST_VERSION'/>
- <function line='89' file='tree' name='xmlNewProp'/>
- <function line='88' file='tree' name='xmlNewChild'/>
- <function line='74' file='tree' name='xmlNewNode'/>
- <function line='46' file='tree' name='xmlCreateIntSubset'/>
- <function line='99' file='tree' name='xmlFreeDoc'/>
- <function line='39' file='tree' name='xmlNewDoc'/>
+ <function line='47' file='parser' name='xmlFreeParserCtxt'/>
+ <enum line='35' file='parser' name='XML_PARSE_DTDVALID'/>
+ <function line='29' file='parser' name='xmlNewParserCtxt'/>
+ <typedef line='25' file='tree' name='xmlParserCtxtPtr'/>
+ <function line='35' file='parser' name='xmlCtxtReadFile'/>
+ <function line='66' file='parser' name='xmlCleanupParser'/>
+ <macro line='61' file='xmlversion' name='LIBXML_TEST_VERSION'/>
+ <function line='44' file='tree' name='xmlFreeDoc'/>
+ <typedef line='26' file='tree' name='xmlDocPtr'/>
+ <function line='70' file='xmlmemory' name='xmlMemoryDump'/>
</uses>
</example>
- <example filename='io1.c'>
- <synopsis>Example of custom Input/Output</synopsis>
- <purpose>Demonstrate the use of xmlRegisterInputCallbacks to build a custom I/O layer, this is used in an XInclude method context to show how dynamic document can be built in a clean way.</purpose>
- <usage>io1</usage>
- <test>io1 &gt; io1.tmp &amp;&amp; diff io1.tmp $(srcdir)/io1.res</test>
+ <example filename='parse3.c'>
+ <synopsis>Parse an XML document in memory to a tree and free it</synopsis>
+ <purpose>Demonstrate the use of xmlReadMemory() to read an XML file into a tree and and xmlFreeDoc() to free the resulting tree</purpose>
+ <usage>parse3</usage>
+ <test>parse3</test>
<author>Daniel Veillard</author>
<copy>see Copyright for the status of this software. </copy>
- <section>InputOutput</section>
+ <section>Parsing</section>
<includes>
- <include>&lt;libxml/parser.h&gt;</include>
- <include>&lt;libxml/xmlIO.h&gt;</include>
- <include>&lt;libxml/xinclude.h&gt;</include>
<include>&lt;libxml/tree.h&gt;</include>
+ <include>&lt;libxml/parser.h&gt;</include>
</includes>
<uses>
- <function line='143' file='tree' name='xmlDocDump'/>
- <function line='158' file='xmlmemory' name='xmlMemoryDump'/>
- <function line='149' file='tree' name='xmlFreeDoc'/>
- <function line='154' file='parser' name='xmlCleanupParser'/>
- <macro line='117' file='xmlversion' name='LIBXML_TEST_VERSION'/>
- <function line='134' file='xinclude' name='xmlXIncludeProcess'/>
- <function line='117' file='xmlIO' name='xmlRegisterInputCallbacks'/>
- <function line='124' file='parser' name='xmlReadMemory'/>
- <typedef line='105' file='tree' name='xmlDocPtr'/>
+ <function line='33' file='parser' name='xmlReadMemory'/>
+ <function line='58' file='xmlmemory' name='xmlMemoryDump'/>
+ <function line='54' file='parser' name='xmlCleanupParser'/>
+ <macro line='49' file='xmlversion' name='LIBXML_TEST_VERSION'/>
+ <function line='38' file='tree' name='xmlFreeDoc'/>
+ <typedef line='27' file='tree' name='xmlDocPtr'/>
</uses>
</example>
<example filename='parse4.c'>
@@ -168,58 +139,6 @@
<typedef line='47' file='tree' name='xmlDocPtr'/>
</uses>
</example>
- <example filename='xpath2.c'>
- <synopsis>Load a document, locate subelements with XPath, modify said elements and save the resulting document.</synopsis>
- <purpose>Shows how to make a full round-trip from a load/edit/save</purpose>
- <usage>xpath2 &lt;xml-file&gt; &lt;xpath-expr&gt; &lt;new-value&gt;</usage>
- <test>xpath2 test3.xml &apos;//discarded&apos; discarded &gt; xpath2.tmp &amp;&amp; diff xpath2.tmp $(srcdir)/xpath2.res</test>
- <author>Aleksey Sanin and Daniel Veillard</author>
- <copy>see Copyright for the status of this software. </copy>
- <section>XPath</section>
- <includes>
- <include>&lt;libxml/parser.h&gt;</include>
- <include>&lt;libxml/xpath.h&gt;</include>
- <include>&lt;libxml/xpathInternals.h&gt;</include>
- <include>&lt;libxml/tree.h&gt;</include>
- </includes>
- <uses>
- <function line='162' file='tree' name='xmlNodeSetContent'/>
- <function line='127' file='tree' name='xmlDocDump'/>
- <typedef line='88' file='xpath' name='xmlXPathObjectPtr'/>
- <function line='110' file='xpath' name='xmlXPathEvalExpression'/>
- <function line='95' file='parser' name='xmlParseFile'/>
- <function line='123' file='xpath' name='xmlXPathFreeObject'/>
- <function line='102' file='xpath' name='xmlXPathNewContext'/>
- <typedef line='87' file='xpath' name='xmlXPathContextPtr'/>
- <function line='124' file='xpath' name='xmlXPathFreeContext'/>
- <function line='41' file='parser' name='xmlInitParser'/>
- <function line='131' file='tree' name='xmlFreeDoc'/>
- <enum line='180' file='tree' name='XML_NAMESPACE_DECL'/>
- <typedef line='86' file='tree' name='xmlDocPtr'/>
- </uses>
- </example>
- <example filename='io2.c'>
- <synopsis>Output to char buffer</synopsis>
- <purpose>Demonstrate the use of xmlDocDumpMemory to output document to a character buffer</purpose>
- <usage>io2</usage>
- <test>io2 &gt; io2.tmp &amp;&amp; diff io2.tmp $(srcdir)/io2.res</test>
- <author>John Fleck</author>
- <copy>see Copyright for the status of this software. </copy>
- <section>InputOutput</section>
- <includes>
- <include>&lt;libxml/parser.h&gt;</include>
- </includes>
- <uses>
- <function line='29' file='tree' name='xmlNodeSetContent'/>
- <function line='36' file='tree' name='xmlDocDumpFormatMemory'/>
- <variable line='42' file='globals' name='xmlFree'/>
- <function line='30' file='tree' name='xmlDocSetRootElement'/>
- <typedef line='20' file='tree' name='xmlDocPtr'/>
- <typedef line='19' file='tree' name='xmlNodePtr'/>
- <function line='27' file='tree' name='xmlNewDoc'/>
- <function line='28' file='tree' name='xmlNewNode'/>
- </uses>
- </example>
<example filename='reader1.c'>
<synopsis>Parse an XML file with an xmlReader</synopsis>
<purpose>Demonstrate the use of xmlReaderForFile() to parse an XML file and dump the informations about the nodes found in the process. (Note that the XMLReader functions require libxml2 version later than 2.6.)</purpose>
@@ -233,11 +152,14 @@
</includes>
<uses>
<function line='44' file='xmlstring' name='xmlStrlen'/>
+ <function line='94' file='parser' name='xmlCleanupParser'/>
<function line='37' file='xmlreader' name='xmlTextReaderNodeType'/>
<typedef line='59' file='xmlreader' name='xmlTextReaderPtr'/>
+ <function line='98' file='xmlmemory' name='xmlMemoryDump'/>
<function line='33' file='xmlreader' name='xmlTextReaderConstValue'/>
<function line='36' file='xmlreader' name='xmlTextReaderDepth'/>
<function line='69' file='xmlreader' name='xmlFreeTextReader'/>
+ <macro line='89' file='xmlversion' name='LIBXML_TEST_VERSION'/>
<function line='29' file='xmlreader' name='xmlTextReaderConstName'/>
<function line='40' file='xmlreader' name='xmlTextReaderHasValue'/>
<function line='67' file='xmlreader' name='xmlTextReaderRead'/>
@@ -245,22 +167,33 @@
<function line='62' file='xmlreader' name='xmlReaderForFile'/>
</uses>
</example>
- <example filename='tree1.c'>
- <synopsis>Navigates a tree to print element names</synopsis>
- <purpose>Parse a file to a tree, use xmlDocGetRootElement() to get the root element, then walk the document and print all the element name in document order.</purpose>
- <usage>tree1 filename_or_URL</usage>
- <test>tree1 test2.xml &gt; tree1.tmp &amp;&amp; diff tree1.tmp $(srcdir)/tree1.res</test>
- <author>Dodji Seketeli</author>
+ <example filename='reader2.c'>
+ <synopsis>Parse and validate an XML file with an xmlReader</synopsis>
+ <purpose>Demonstrate the use of xmlReaderForFile() to parse an XML file validating the content in the process and activating options like entities substitution, and DTD attributes defaulting. (Note that the XMLReader functions require libxml2 version later than 2.6.)</purpose>
+ <usage>reader2 &lt;valid_xml_filename&gt;</usage>
+ <test>reader2 test2.xml &gt; reader1.tmp &amp;&amp; diff reader1.tmp $(srcdir)/reader1.res</test>
+ <author>Daniel Veillard</author>
<copy>see Copyright for the status of this software. </copy>
- <section>Tree</section>
+ <section>xmlReader</section>
<includes>
- <include>&lt;libxml/tree.h&gt;</include>
- <include>&lt;libxml/parser.h&gt;</include>
+ <include>&lt;libxml/xmlreader.h&gt;</include>
</includes>
<uses>
- <enum line='36' file='tree' name='XML_ELEMENT_NODE'/>
- <function line='74' file='tree' name='xmlDocGetRootElement'/>
- <function line='67' file='parser' name='xmlReadFile'/>
+ <function line='45' file='xmlstring' name='xmlStrlen'/>
+ <function line='38' file='xmlreader' name='xmlTextReaderNodeType'/>
+ <typedef line='60' file='xmlreader' name='xmlTextReaderPtr'/>
+ <function line='34' file='xmlreader' name='xmlTextReaderConstValue'/>
+ <enum line='70' file='parser' name='XML_PARSE_NOENT'/>
+ <function line='37' file='xmlreader' name='xmlTextReaderDepth'/>
+ <enum line='71' file='parser' name='XML_PARSE_DTDVALID'/>
+ <enum line='69' file='parser' name='XML_PARSE_DTDATTR'/>
+ <function line='84' file='xmlreader' name='xmlFreeTextReader'/>
+ <function line='30' file='xmlreader' name='xmlTextReaderConstName'/>
+ <function line='41' file='xmlreader' name='xmlTextReaderHasValue'/>
+ <function line='76' file='xmlreader' name='xmlTextReaderRead'/>
+ <function line='40' file='xmlreader' name='xmlTextReaderIsEmptyElement'/>
+ <function line='68' file='xmlreader' name='xmlReaderForFile'/>
+ <function line='81' file='xmlreader' name='xmlTextReaderIsValid'/>
</uses>
</example>
<example filename='reader3.c'>
@@ -284,42 +217,6 @@
<function line='38' file='xmlreader' name='xmlReaderForFile'/>
</uses>
</example>
- <example filename='parse2.c'>
- <synopsis>Parse and validate an XML file to a tree and free the result</synopsis>
- <purpose>Create a parser context for an XML file, then parse and validate the file, creating a tree, check the validation result and xmlFreeDoc() to free the resulting tree.</purpose>
- <usage>parse2 test2.xml</usage>
- <test>parse2 test2.xml</test>
- <author>Daniel Veillard</author>
- <copy>see Copyright for the status of this software. </copy>
- <section>Parsing</section>
- <includes>
- <include>&lt;libxml/tree.h&gt;</include>
- <include>&lt;libxml/parser.h&gt;</include>
- </includes>
- <uses>
- <function line='47' file='parser' name='xmlFreeParserCtxt'/>
- <enum line='35' file='parser' name='XML_PARSE_DTDVALID'/>
- <function line='29' file='parser' name='xmlNewParserCtxt'/>
- <typedef line='25' file='tree' name='xmlParserCtxtPtr'/>
- <function line='35' file='parser' name='xmlCtxtReadFile'/>
- </uses>
- </example>
- <example filename='parse1.c'>
- <synopsis>Parse an XML file to a tree and free it</synopsis>
- <purpose>Demonstrate the use of xmlReadFile() to read an XML file into a tree and and xmlFreeDoc() to free the resulting tree</purpose>
- <usage>parse1 test1.xml</usage>
- <test>parse1 test1.xml</test>
- <author>Daniel Veillard</author>
- <copy>see Copyright for the status of this software. </copy>
- <section>Parsing</section>
- <includes>
- <include>&lt;libxml/tree.h&gt;</include>
- <include>&lt;libxml/parser.h&gt;</include>
- </includes>
- <uses>
- <function line='26' file='parser' name='xmlReadFile'/>
- </uses>
- </example>
<example filename='reader4.c'>
<synopsis>Parse multiple XML files reusing an xmlReader</synopsis>
<purpose>Demonstrate the use of xmlReaderForFile() and xmlReaderNewFile to parse XML files while reusing the reader object and parser context. (Note that the XMLReader functions require libxml2 version later than 2.6.)</purpose>
@@ -384,21 +281,124 @@
<function line='885' file='tree' name='xmlNewDoc'/>
</uses>
</example>
+ <example filename='tree1.c'>
+ <synopsis>Navigates a tree to print element names</synopsis>
+ <purpose>Parse a file to a tree, use xmlDocGetRootElement() to get the root element, then walk the document and print all the element name in document order.</purpose>
+ <usage>tree1 filename_or_URL</usage>
+ <test>tree1 test2.xml &gt; tree1.tmp &amp;&amp; diff tree1.tmp $(srcdir)/tree1.res</test>
+ <author>Dodji Seketeli</author>
+ <copy>see Copyright for the status of this software. </copy>
+ <section>Tree</section>
+ <includes>
+ <include>&lt;libxml/tree.h&gt;</include>
+ <include>&lt;libxml/parser.h&gt;</include>
+ </includes>
+ <uses>
+ <enum line='36' file='tree' name='XML_ELEMENT_NODE'/>
+ <function line='74' file='tree' name='xmlDocGetRootElement'/>
+ <function line='67' file='parser' name='xmlReadFile'/>
+ </uses>
+ </example>
+ <example filename='tree2.c'>
+ <synopsis>Creates a tree</synopsis>
+ <purpose>Shows how to create document, nodes and dump it to stdout or file.</purpose>
+ <usage>tree2 &lt;filename&gt; -Default output: stdout</usage>
+ <test>tree2 &gt; tree2.tmp &amp;&amp; diff tree2.tmp $(srcdir)/tree2.res</test>
+ <author>Lucas Brasilino &lt;brasilino@recife.pe.gov.br&gt;</author>
+ <copy>see Copyright for the status of this software </copy>
+ <section>Tree</section>
+ <includes>
+ <include>&lt;libxml/tree.h&gt;</include>
+ <include>&lt;libxml/parser.h&gt;</include>
+ </includes>
+ <uses>
+ <function line='74' file='tree' name='xmlNewText'/>
+ <function line='95' file='tree' name='xmlSaveFormatFileEnc'/>
+ <function line='77' file='tree' name='xmlAddChild'/>
+ <function line='40' file='tree' name='xmlDocSetRootElement'/>
+ <function line='88' file='tree' name='xmlNewProp'/>
+ <function line='87' file='tree' name='xmlNewChild'/>
+ <function line='73' file='tree' name='xmlNewNode'/>
+ <function line='45' file='tree' name='xmlCreateIntSubset'/>
+ <function line='38' file='tree' name='xmlNewDoc'/>
+ </uses>
+ </example>
+ <example filename='xpath1.c'>
+ <synopsis>Evaluate XPath expression and prints result node set.</synopsis>
+ <purpose>Shows how to evaluate XPath expression and register known namespaces in XPath context.</purpose>
+ <usage>xpath1 &lt;xml-file&gt; &lt;xpath-expr&gt; [&lt;known-ns-list&gt;]</usage>
+ <test>xpath1 test3.xml &apos;//child2&apos; &gt; xpath1.tmp &amp;&amp; diff xpath1.tmp $(srcdir)/xpath1.res</test>
+ <author>Aleksey Sanin</author>
+ <copy>see Copyright for the status of this software. </copy>
+ <section>XPath</section>
+ <includes>
+ <include>&lt;libxml/parser.h&gt;</include>
+ <include>&lt;libxml/xpath.h&gt;</include>
+ <include>&lt;libxml/xpathInternals.h&gt;</include>
+ <include>&lt;libxml/tree.h&gt;</include>
+ </includes>
+ <uses>
+ <enum line='229' file='tree' name='XML_ELEMENT_NODE'/>
+ <typedef line='88' file='xpath' name='xmlXPathObjectPtr'/>
+ <function line='117' file='xpath' name='xmlXPathEvalExpression'/>
+ <function line='94' file='parser' name='xmlParseFile'/>
+ <function line='186' file='xpathInternals' name='xmlXPathRegisterNs'/>
+ <function line='129' file='xpath' name='xmlXPathFreeObject'/>
+ <variable line='193' file='globals' name='xmlFree'/>
+ <typedef line='218' file='tree' name='xmlNsPtr'/>
+ <function line='101' file='xpath' name='xmlXPathNewContext'/>
+ <typedef line='87' file='xpath' name='xmlXPathContextPtr'/>
+ <function line='130' file='xpath' name='xmlXPathFreeContext'/>
+ <function line='39' file='parser' name='xmlInitParser'/>
+ <function line='156' file='xmlstring' name='xmlStrdup'/>
+ <function line='180' file='xmlstring' name='xmlStrchr'/>
+ <typedef line='206' file='tree' name='xmlNodePtr'/>
+ <enum line='217' file='tree' name='XML_NAMESPACE_DECL'/>
+ </uses>
+ </example>
+ <example filename='xpath2.c'>
+ <synopsis>Load a document, locate subelements with XPath, modify said elements and save the resulting document.</synopsis>
+ <purpose>Shows how to make a full round-trip from a load/edit/save</purpose>
+ <usage>xpath2 &lt;xml-file&gt; &lt;xpath-expr&gt; &lt;new-value&gt;</usage>
+ <test>xpath2 test3.xml &apos;//discarded&apos; discarded &gt; xpath2.tmp &amp;&amp; diff xpath2.tmp $(srcdir)/xpath2.res</test>
+ <author>Aleksey Sanin and Daniel Veillard</author>
+ <copy>see Copyright for the status of this software. </copy>
+ <section>XPath</section>
+ <includes>
+ <include>&lt;libxml/parser.h&gt;</include>
+ <include>&lt;libxml/xpath.h&gt;</include>
+ <include>&lt;libxml/xpathInternals.h&gt;</include>
+ <include>&lt;libxml/tree.h&gt;</include>
+ </includes>
+ <uses>
+ <function line='162' file='tree' name='xmlNodeSetContent'/>
+ <function line='127' file='tree' name='xmlDocDump'/>
+ <typedef line='88' file='xpath' name='xmlXPathObjectPtr'/>
+ <function line='110' file='xpath' name='xmlXPathEvalExpression'/>
+ <function line='95' file='parser' name='xmlParseFile'/>
+ <function line='123' file='xpath' name='xmlXPathFreeObject'/>
+ <function line='102' file='xpath' name='xmlXPathNewContext'/>
+ <typedef line='87' file='xpath' name='xmlXPathContextPtr'/>
+ <function line='124' file='xpath' name='xmlXPathFreeContext'/>
+ <function line='41' file='parser' name='xmlInitParser'/>
+ <enum line='180' file='tree' name='XML_NAMESPACE_DECL'/>
+ </uses>
+ </example>
<symbols>
<symbol name='LIBXML_TEST_VERSION'>
- <ref filename='xpath1.c'/>
- <ref filename='parse3.c'/>
- <ref filename='reader2.c'/>
- <ref filename='tree2.c'/>
<ref filename='io1.c'/>
+ <ref filename='parse1.c'/>
+ <ref filename='parse2.c'/>
+ <ref filename='parse3.c'/>
<ref filename='parse4.c'/>
+ <ref filename='reader1.c'/>
</symbol>
<symbol name='XML_DEFAULT_VERSION'>
<ref filename='testWriter.c'/>
</symbol>
<symbol name='XML_ELEMENT_NODE'>
- <ref filename='xpath1.c'/>
<ref filename='tree1.c'/>
+ <ref filename='xpath1.c'/>
</symbol>
<symbol name='XML_NAMESPACE_DECL'>
<ref filename='xpath1.c'/>
@@ -408,8 +408,8 @@
<ref filename='reader2.c'/>
</symbol>
<symbol name='XML_PARSE_DTDVALID'>
- <ref filename='reader2.c'/>
<ref filename='parse2.c'/>
+ <ref filename='reader2.c'/>
</symbol>
<symbol name='XML_PARSE_NOENT'>
<ref filename='reader2.c'/>
@@ -430,12 +430,12 @@
<ref filename='testWriter.c'/>
</symbol>
<symbol name='xmlCleanupParser'>
- <ref filename='xpath1.c'/>
- <ref filename='parse3.c'/>
- <ref filename='reader2.c'/>
- <ref filename='tree2.c'/>
<ref filename='io1.c'/>
+ <ref filename='parse1.c'/>
+ <ref filename='parse2.c'/>
+ <ref filename='parse3.c'/>
<ref filename='parse4.c'/>
+ <ref filename='reader1.c'/>
</symbol>
<symbol name='xmlCreateIntSubset'>
<ref filename='tree2.c'/>
@@ -448,8 +448,8 @@
</symbol>
<symbol name='xmlDocDump'>
<ref filename='io1.c'/>
- <ref filename='xpath2.c'/>
<ref filename='reader3.c'/>
+ <ref filename='xpath2.c'/>
</symbol>
<symbol name='xmlDocDumpFormatMemory'>
<ref filename='io2.c'/>
@@ -458,41 +458,41 @@
<ref filename='tree1.c'/>
</symbol>
<symbol name='xmlDocPtr'>
- <ref filename='xpath1.c'/>
- <ref filename='parse3.c'/>
<ref filename='io1.c'/>
- <ref filename='parse4.c'/>
- <ref filename='xpath2.c'/>
<ref filename='io2.c'/>
+ <ref filename='parse1.c'/>
+ <ref filename='parse2.c'/>
+ <ref filename='parse3.c'/>
+ <ref filename='parse4.c'/>
</symbol>
<symbol name='xmlDocSetRootElement'>
- <ref filename='tree2.c'/>
<ref filename='io2.c'/>
<ref filename='testWriter.c'/>
+ <ref filename='tree2.c'/>
</symbol>
<symbol name='xmlFindCharEncodingHandler'>
<ref filename='testWriter.c'/>
</symbol>
<symbol name='xmlFree'>
- <ref filename='xpath1.c'/>
<ref filename='io2.c'/>
<ref filename='testWriter.c'/>
+ <ref filename='xpath1.c'/>
</symbol>
<symbol name='xmlFreeDoc'>
- <ref filename='xpath1.c'/>
- <ref filename='parse3.c'/>
- <ref filename='tree2.c'/>
<ref filename='io1.c'/>
+ <ref filename='io2.c'/>
+ <ref filename='parse1.c'/>
+ <ref filename='parse2.c'/>
+ <ref filename='parse3.c'/>
<ref filename='parse4.c'/>
- <ref filename='xpath2.c'/>
</symbol>
<symbol name='xmlFreeParserCtxt'>
- <ref filename='parse4.c'/>
<ref filename='parse2.c'/>
+ <ref filename='parse4.c'/>
</symbol>
<symbol name='xmlFreeTextReader'>
- <ref filename='reader2.c'/>
<ref filename='reader1.c'/>
+ <ref filename='reader2.c'/>
<ref filename='reader3.c'/>
<ref filename='reader4.c'/>
</symbol>
@@ -507,27 +507,27 @@
<ref filename='testWriter.c'/>
</symbol>
<symbol name='xmlMemoryDump'>
- <ref filename='xpath1.c'/>
- <ref filename='parse3.c'/>
- <ref filename='reader2.c'/>
- <ref filename='tree2.c'/>
<ref filename='io1.c'/>
+ <ref filename='parse1.c'/>
+ <ref filename='parse2.c'/>
+ <ref filename='parse3.c'/>
<ref filename='parse4.c'/>
+ <ref filename='reader1.c'/>
</symbol>
<symbol name='xmlNewChild'>
<ref filename='tree2.c'/>
</symbol>
<symbol name='xmlNewDoc'>
- <ref filename='tree2.c'/>
<ref filename='io2.c'/>
<ref filename='testWriter.c'/>
+ <ref filename='tree2.c'/>
</symbol>
<symbol name='xmlNewDocNode'>
<ref filename='testWriter.c'/>
</symbol>
<symbol name='xmlNewNode'>
- <ref filename='tree2.c'/>
<ref filename='io2.c'/>
+ <ref filename='tree2.c'/>
</symbol>
<symbol name='xmlNewParserCtxt'>
<ref filename='parse2.c'/>
@@ -551,13 +551,13 @@
<ref filename='testWriter.c'/>
</symbol>
<symbol name='xmlNodePtr'>
- <ref filename='xpath1.c'/>
<ref filename='io2.c'/>
<ref filename='testWriter.c'/>
+ <ref filename='xpath1.c'/>
</symbol>
<symbol name='xmlNodeSetContent'>
- <ref filename='xpath2.c'/>
<ref filename='io2.c'/>
+ <ref filename='xpath2.c'/>
</symbol>
<symbol name='xmlNsPtr'>
<ref filename='xpath1.c'/>
@@ -570,20 +570,20 @@
<ref filename='xpath2.c'/>
</symbol>
<symbol name='xmlParserCtxtPtr'>
- <ref filename='parse4.c'/>
<ref filename='parse2.c'/>
+ <ref filename='parse4.c'/>
</symbol>
<symbol name='xmlReadFile'>
- <ref filename='tree1.c'/>
<ref filename='parse1.c'/>
+ <ref filename='tree1.c'/>
</symbol>
<symbol name='xmlReadMemory'>
- <ref filename='parse3.c'/>
<ref filename='io1.c'/>
+ <ref filename='parse3.c'/>
</symbol>
<symbol name='xmlReaderForFile'>
- <ref filename='reader2.c'/>
<ref filename='reader1.c'/>
+ <ref filename='reader2.c'/>
<ref filename='reader3.c'/>
<ref filename='reader4.c'/>
</symbol>
@@ -609,52 +609,52 @@
<ref filename='xpath1.c'/>
</symbol>
<symbol name='xmlStrlen'>
- <ref filename='reader2.c'/>
<ref filename='reader1.c'/>
+ <ref filename='reader2.c'/>
</symbol>
<symbol name='xmlTextReaderConstName'>
- <ref filename='reader2.c'/>
<ref filename='reader1.c'/>
+ <ref filename='reader2.c'/>
</symbol>
<symbol name='xmlTextReaderConstValue'>
- <ref filename='reader2.c'/>
<ref filename='reader1.c'/>
+ <ref filename='reader2.c'/>
</symbol>
<symbol name='xmlTextReaderCurrentDoc'>
<ref filename='reader3.c'/>
<ref filename='reader4.c'/>
</symbol>
<symbol name='xmlTextReaderDepth'>
- <ref filename='reader2.c'/>
<ref filename='reader1.c'/>
+ <ref filename='reader2.c'/>
</symbol>
<symbol name='xmlTextReaderHasValue'>
- <ref filename='reader2.c'/>
<ref filename='reader1.c'/>
+ <ref filename='reader2.c'/>
</symbol>
<symbol name='xmlTextReaderIsEmptyElement'>
- <ref filename='reader2.c'/>
<ref filename='reader1.c'/>
+ <ref filename='reader2.c'/>
</symbol>
<symbol name='xmlTextReaderIsValid'>
<ref filename='reader2.c'/>
</symbol>
<symbol name='xmlTextReaderNodeType'>
- <ref filename='reader2.c'/>
<ref filename='reader1.c'/>
+ <ref filename='reader2.c'/>
</symbol>
<symbol name='xmlTextReaderPreservePattern'>
<ref filename='reader3.c'/>
</symbol>
<symbol name='xmlTextReaderPtr'>
- <ref filename='reader2.c'/>
<ref filename='reader1.c'/>
+ <ref filename='reader2.c'/>
<ref filename='reader3.c'/>
<ref filename='reader4.c'/>
</symbol>
<symbol name='xmlTextReaderRead'>
- <ref filename='reader2.c'/>
<ref filename='reader1.c'/>
+ <ref filename='reader2.c'/>
<ref filename='reader3.c'/>
<ref filename='reader4.c'/>
</symbol>
@@ -725,22 +725,22 @@
<example filename='io2.c'/>
</section>
<section name='Parsing'>
+ <example filename='parse1.c'/>
+ <example filename='parse2.c'/>
<example filename='parse3.c'/>
<example filename='parse4.c'/>
- <example filename='parse2.c'/>
- <example filename='parse1.c'/>
</section>
<section name='Tree'>
- <example filename='tree2.c'/>
<example filename='tree1.c'/>
+ <example filename='tree2.c'/>
</section>
<section name='XPath'>
<example filename='xpath1.c'/>
<example filename='xpath2.c'/>
</section>
<section name='xmlReader'>
- <example filename='reader2.c'/>
<example filename='reader1.c'/>
+ <example filename='reader2.c'/>
<example filename='reader3.c'/>
<example filename='reader4.c'/>
</section>
diff --git a/doc/examples/index.py b/doc/examples/index.py
index 7e0efaa2..ac44ec51 100755
--- a/doc/examples/index.py
+++ b/doc/examples/index.py
@@ -235,7 +235,7 @@ if REBUILD_DOCS
rebuild: examples.xml index.html
.PHONY: rebuild
-examples.xml: index.py $(noinst_PROGRAMS:=.c)
+examples.xml: index.py $(check_PROGRAMS:=.c)
cd $(srcdir) && $(PYTHON) index.py
$(MAKE) Makefile
@@ -259,20 +259,21 @@ clean-local:
for extra in extras:
EXTRA_DIST = EXTRA_DIST + " \\\n\t" + extra
Makefile = Makefile + "EXTRA_DIST =%s\n\n" % (EXTRA_DIST)
- noinst_PROGRAMS=""
+ check_PROGRAMS=""
for example in examples:
- noinst_PROGRAMS = noinst_PROGRAMS + " \\\n\t" + example
- Makefile = Makefile + "noinst_PROGRAMS =%s\n\n" % (noinst_PROGRAMS)
+ check_PROGRAMS = check_PROGRAMS + " \\\n\t" + example
+ Makefile = Makefile + "check_PROGRAMS =%s\n\n" % (check_PROGRAMS)
for example in examples:
Makefile = Makefile + "%s_SOURCES = %s.c\n\n" % (example, example)
Makefile = Makefile + "valgrind: \n\t$(MAKE) CHECKER='valgrind' tests\n\n"
- Makefile = Makefile + "tests: $(noinst_PROGRAMS)\n"
- Makefile = Makefile + "\ttest -f Makefile.am || test -f test1.xml || $(LN_S) $(srcdir)/test?.xml .\n"
+ Makefile = Makefile + "tests: $(check_PROGRAMS)\n"
+ Makefile = Makefile + "\t@test -f Makefile.am || test -f test1.xml || $(LN_S) $(srcdir)/test?.xml .\n"
Makefile = Makefile + "\t@(echo '## examples regression tests')\n"
Makefile = Makefile + "\t@(echo > .memdump)\n"
for test in tests:
- Makefile = Makefile + "\t$(CHECKER) %s\n" % (test)
+ Makefile = Makefile + "\t@$(CHECKER) %s\n" % (test)
Makefile = Makefile + '\t@grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0" ; exit 0\n'
+ Makefile = Makefile + "\t@rm *.tmp\n"
try:
old = open("Makefile.am", "r").read()
if old != Makefile:
@@ -302,7 +303,7 @@ if __name__ == "__main__":
output = open("examples.xml", "w")
output.write("<examples>\n")
- for file in glob.glob('*.c'):
+ for file in sorted(glob.glob('*.c')):
parse(file, output)
examples.append(file[:-2])
diff --git a/doc/examples/testWriter.c b/doc/examples/testWriter.c
index f662f767..82e8d3ab 100644
--- a/doc/examples/testWriter.c
+++ b/doc/examples/testWriter.c
@@ -102,7 +102,7 @@ testXmlwriterFilename(const char *uri)
* Please observe, that the input to the xmlTextWriter functions
* HAS to be in UTF-8, even if the output XML is encoded
* in iso-8859-1 */
- tmp = ConvertInput("This is a comment with special chars: <äöü>",
+ tmp = ConvertInput("This is a comment with special chars: <\xE4\xF6\xFC>",
MY_ENCODING);
rc = xmlTextWriterWriteComment(writer, tmp);
if (rc < 0) {
@@ -139,7 +139,7 @@ testXmlwriterFilename(const char *uri)
}
/* Write a comment as child of ORDER */
- tmp = ConvertInput("<äöü>", MY_ENCODING);
+ tmp = ConvertInput("<\xE4\xF6\xFC>", MY_ENCODING);
rc = xmlTextWriterWriteFormatComment(writer,
"This is another comment with special chars: %s",
tmp);
@@ -177,7 +177,7 @@ testXmlwriterFilename(const char *uri)
}
/* Write an element named "NAME_1" as child of HEADER. */
- tmp = ConvertInput("Müller", MY_ENCODING);
+ tmp = ConvertInput("M\xFCller", MY_ENCODING);
rc = xmlTextWriterWriteElement(writer, BAD_CAST "NAME_1", tmp);
if (rc < 0) {
printf
@@ -187,7 +187,7 @@ testXmlwriterFilename(const char *uri)
if (tmp != NULL) xmlFree(tmp);
/* Write an element named "NAME_2" as child of HEADER. */
- tmp = ConvertInput("Jörg", MY_ENCODING);
+ tmp = ConvertInput("J\xF6rg", MY_ENCODING);
rc = xmlTextWriterWriteElement(writer, BAD_CAST "NAME_2", tmp);
if (rc < 0) {
printf
@@ -381,7 +381,7 @@ testXmlwriterMemory(const char *file)
* Please observe, that the input to the xmlTextWriter functions
* HAS to be in UTF-8, even if the output XML is encoded
* in iso-8859-1 */
- tmp = ConvertInput("This is a comment with special chars: <äöü>",
+ tmp = ConvertInput("This is a comment with special chars: <\xE4\xF6\xFC>",
MY_ENCODING);
rc = xmlTextWriterWriteComment(writer, tmp);
if (rc < 0) {
@@ -418,7 +418,7 @@ testXmlwriterMemory(const char *file)
}
/* Write a comment as child of ORDER */
- tmp = ConvertInput("<äöü>", MY_ENCODING);
+ tmp = ConvertInput("<\xE4\xF6\xFC>", MY_ENCODING);
rc = xmlTextWriterWriteFormatComment(writer,
"This is another comment with special chars: %s",
tmp);
@@ -456,7 +456,7 @@ testXmlwriterMemory(const char *file)
}
/* Write an element named "NAME_1" as child of HEADER. */
- tmp = ConvertInput("Müller", MY_ENCODING);
+ tmp = ConvertInput("M\xFCller", MY_ENCODING);
rc = xmlTextWriterWriteElement(writer, BAD_CAST "NAME_1", tmp);
if (rc < 0) {
printf
@@ -466,7 +466,7 @@ testXmlwriterMemory(const char *file)
if (tmp != NULL) xmlFree(tmp);
/* Write an element named "NAME_2" as child of HEADER. */
- tmp = ConvertInput("Jörg", MY_ENCODING);
+ tmp = ConvertInput("J\xF6rg", MY_ENCODING);
rc = xmlTextWriterWriteElement(writer, BAD_CAST "NAME_2", tmp);
if (rc < 0) {
@@ -656,7 +656,7 @@ testXmlwriterDoc(const char *file)
* Please observe, that the input to the xmlTextWriter functions
* HAS to be in UTF-8, even if the output XML is encoded
* in iso-8859-1 */
- tmp = ConvertInput("This is a comment with special chars: <äöü>",
+ tmp = ConvertInput("This is a comment with special chars: <\xE4\xF6\xFC>",
MY_ENCODING);
rc = xmlTextWriterWriteComment(writer, tmp);
if (rc < 0) {
@@ -689,7 +689,7 @@ testXmlwriterDoc(const char *file)
}
/* Write a comment as child of ORDER */
- tmp = ConvertInput("<äöü>", MY_ENCODING);
+ tmp = ConvertInput("<\xE4\xF6\xFC>", MY_ENCODING);
rc = xmlTextWriterWriteFormatComment(writer,
"This is another comment with special chars: %s",
tmp);
@@ -726,7 +726,7 @@ testXmlwriterDoc(const char *file)
}
/* Write an element named "NAME_1" as child of HEADER. */
- tmp = ConvertInput("Müller", MY_ENCODING);
+ tmp = ConvertInput("M\xFCller", MY_ENCODING);
rc = xmlTextWriterWriteElement(writer, BAD_CAST "NAME_1", tmp);
if (rc < 0) {
printf("testXmlwriterDoc: Error at xmlTextWriterWriteElement\n");
@@ -735,7 +735,7 @@ testXmlwriterDoc(const char *file)
if (tmp != NULL) xmlFree(tmp);
/* Write an element named "NAME_2" as child of HEADER. */
- tmp = ConvertInput("Jörg", MY_ENCODING);
+ tmp = ConvertInput("J\xF6rg", MY_ENCODING);
rc = xmlTextWriterWriteElement(writer, BAD_CAST "NAME_2", tmp);
if (rc < 0) {
printf("testXmlwriterDoc: Error at xmlTextWriterWriteElement\n");
@@ -920,7 +920,7 @@ testXmlwriterTree(const char *file)
* Please observe, that the input to the xmlTextWriter functions
* HAS to be in UTF-8, even if the output XML is encoded
* in iso-8859-1 */
- tmp = ConvertInput("This is a comment with special chars: <äöü>",
+ tmp = ConvertInput("This is a comment with special chars: <\xE4\xF6\xFC>",
MY_ENCODING);
rc = xmlTextWriterWriteComment(writer, tmp);
if (rc < 0) {
@@ -955,7 +955,7 @@ testXmlwriterTree(const char *file)
}
/* Write a comment as child of ORDER */
- tmp = ConvertInput("<äöü>", MY_ENCODING);
+ tmp = ConvertInput("<\xE4\xF6\xFC>", MY_ENCODING);
rc = xmlTextWriterWriteFormatComment(writer,
"This is another comment with special chars: %s",
tmp);
@@ -992,7 +992,7 @@ testXmlwriterTree(const char *file)
}
/* Write an element named "NAME_1" as child of HEADER. */
- tmp = ConvertInput("Müller", MY_ENCODING);
+ tmp = ConvertInput("M\xFCller", MY_ENCODING);
rc = xmlTextWriterWriteElement(writer, BAD_CAST "NAME_1", tmp);
if (rc < 0) {
printf("testXmlwriterTree: Error at xmlTextWriterWriteElement\n");
@@ -1001,7 +1001,7 @@ testXmlwriterTree(const char *file)
if (tmp != NULL) xmlFree(tmp);
/* Write an element named "NAME_2" as child of HEADER. */
- tmp = ConvertInput("Jörg", MY_ENCODING);
+ tmp = ConvertInput("J\xF6rg", MY_ENCODING);
rc = xmlTextWriterWriteElement(writer, BAD_CAST "NAME_2", tmp);
if (rc < 0) {
printf("testXmlwriterTree: Error at xmlTextWriterWriteElement\n");
diff --git a/doc/examples/tree2.c b/doc/examples/tree2.c
index 1cd1abe5..6548e296 100644
--- a/doc/examples/tree2.c
+++ b/doc/examples/tree2.c
@@ -27,7 +27,6 @@ main(int argc, char **argv)
{
xmlDocPtr doc = NULL; /* document pointer */
xmlNodePtr root_node = NULL, node = NULL, node1 = NULL;/* node pointers */
- xmlDtdPtr dtd = NULL; /* DTD pointer */
char buff[256];
int i, j;
@@ -43,7 +42,7 @@ main(int argc, char **argv)
/*
* Creates a DTD declaration. Isn't mandatory.
*/
- dtd = xmlCreateIntSubset(doc, BAD_CAST "root", NULL, BAD_CAST "tree2.dtd");
+ xmlCreateIntSubset(doc, BAD_CAST "root", NULL, BAD_CAST "tree2.dtd");
/*
* xmlNewChild() creates a new node, which is "attached" as child node
diff --git a/doc/html/libxml-HTMLparser.html b/doc/html/libxml-HTMLparser.html
index f5f77afd..7d9d2990 100644
--- a/doc/html/libxml-HTMLparser.html
+++ b/doc/html/libxml-HTMLparser.html
@@ -50,7 +50,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<pre class="programlisting"><a href="libxml-HTMLparser.html#htmlStatus">htmlStatus</a> <a href="#htmlNodeStatus">htmlNodeStatus</a> (const <a href="libxml-HTMLparser.html#htmlNodePtr">htmlNodePtr</a> node, <br /> int legacy)</pre>
<pre class="programlisting">int <a href="#htmlParseCharRef">htmlParseCharRef</a> (<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt)</pre>
<pre class="programlisting">int <a href="#htmlParseChunk">htmlParseChunk</a> (<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt, <br /> const char * chunk, <br /> int size, <br /> int terminate)</pre>
-<pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> <a href="#htmlParseDoc">htmlParseDoc</a> (<a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * cur, <br /> const char * encoding)</pre>
+<pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> <a href="#htmlParseDoc">htmlParseDoc</a> (const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * cur, <br /> const char * encoding)</pre>
<pre class="programlisting">int <a href="#htmlParseDocument">htmlParseDocument</a> (<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt)</pre>
<pre class="programlisting">void <a href="#htmlParseElement">htmlParseElement</a> (<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt)</pre>
<pre class="programlisting">const <a href="libxml-HTMLparser.html#htmlEntityDesc">htmlEntityDesc</a> * <a href="#htmlParseEntityRef">htmlParseEntityRef</a> (<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> ** str)</pre>
@@ -60,7 +60,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> <a href="#htmlReadFile">htmlReadFile</a> (const char * filename, <br /> const char * encoding, <br /> int options)</pre>
<pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> <a href="#htmlReadIO">htmlReadIO</a> (<a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a> ioread, <br /> <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a> ioclose, <br /> void * ioctx, <br /> const char * URL, <br /> const char * encoding, <br /> int options)</pre>
<pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> <a href="#htmlReadMemory">htmlReadMemory</a> (const char * buffer, <br /> int size, <br /> const char * URL, <br /> const char * encoding, <br /> int options)</pre>
-<pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> <a href="#htmlSAXParseDoc">htmlSAXParseDoc</a> (<a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * cur, <br /> const char * encoding, <br /> <a href="libxml-HTMLparser.html#htmlSAXHandlerPtr">htmlSAXHandlerPtr</a> sax, <br /> void * userData)</pre>
+<pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> <a href="#htmlSAXParseDoc">htmlSAXParseDoc</a> (const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * cur, <br /> const char * encoding, <br /> <a href="libxml-HTMLparser.html#htmlSAXHandlerPtr">htmlSAXHandlerPtr</a> sax, <br /> void * userData)</pre>
<pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> <a href="#htmlSAXParseFile">htmlSAXParseFile</a> (const char * filename, <br /> const char * encoding, <br /> <a href="libxml-HTMLparser.html#htmlSAXHandlerPtr">htmlSAXHandlerPtr</a> sax, <br /> void * userData)</pre>
<pre class="programlisting">const <a href="libxml-HTMLparser.html#htmlElemDesc">htmlElemDesc</a> * <a href="#htmlTagLookup">htmlTagLookup</a> (const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * tag)</pre>
<h2>Description</h2>
@@ -155,7 +155,7 @@ A:link, A:visited, A:active { text-decoration: underline }
</pre><p>parse Reference declarations [66] CharRef ::= '&amp;#' [0-9]+ ';' | '&amp;#x' [0-9a-fA-F]+ ';'</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an HTML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the value parsed (as an int)</td></tr></tbody></table></div><h3><a name="htmlParseChunk" id="htmlParseChunk"></a>Function: htmlParseChunk</h3><pre class="programlisting">int htmlParseChunk (<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt, <br /> const char * chunk, <br /> int size, <br /> int terminate)<br />
</pre><p>Parse a Chunk of memory</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an HTML parser context</td></tr><tr><td><span class="term"><i><tt>chunk</tt></i>:</span></td><td>an char array</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size in byte of the chunk</td></tr><tr><td><span class="term"><i><tt>terminate</tt></i>:</span></td><td>last chunk indicator</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>zero if no error, the <a href="libxml-xmlerror.html#xmlParserErrors">xmlParserErrors</a> otherwise.</td></tr></tbody></table></div><h3><a name="htmlParseDoc" id="htmlParseDoc"></a>Function: htmlParseDoc</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> htmlParseDoc (<a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * cur, <br /> const char * encoding)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an HTML parser context</td></tr><tr><td><span class="term"><i><tt>chunk</tt></i>:</span></td><td>an char array</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size in byte of the chunk</td></tr><tr><td><span class="term"><i><tt>terminate</tt></i>:</span></td><td>last chunk indicator</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>zero if no error, the <a href="libxml-xmlerror.html#xmlParserErrors">xmlParserErrors</a> otherwise.</td></tr></tbody></table></div><h3><a name="htmlParseDoc" id="htmlParseDoc"></a>Function: htmlParseDoc</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> htmlParseDoc (const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * cur, <br /> const char * encoding)<br />
</pre><p>parse an HTML in-memory document and build a tree.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>a pointer to an array of <a href="libxml-xmlstring.html#xmlChar">xmlChar</a></td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>a free form C string describing the HTML document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="htmlParseDocument" id="htmlParseDocument"></a>Function: htmlParseDocument</h3><pre class="programlisting">int htmlParseDocument (<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt)<br />
</pre><p>parse an HTML document (and build a tree if using the standard SAX interface).</p>
@@ -175,7 +175,7 @@ A:link, A:visited, A:active { text-decoration: underline }
</pre><p>parse an HTML document from I/O functions and source and build a tree.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ioread</tt></i>:</span></td><td>an I/O read function</td></tr><tr><td><span class="term"><i><tt>ioclose</tt></i>:</span></td><td>an I/O close function</td></tr><tr><td><span class="term"><i><tt>ioctx</tt></i>:</span></td><td>an I/O handler</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of htmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="htmlReadMemory" id="htmlReadMemory"></a>Function: htmlReadMemory</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> htmlReadMemory (const char * buffer, <br /> int size, <br /> const char * URL, <br /> const char * encoding, <br /> int options)<br />
</pre><p>parse an XML in-memory document and build a tree.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>a pointer to a char array</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size of the array</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of htmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="htmlSAXParseDoc" id="htmlSAXParseDoc"></a>Function: htmlSAXParseDoc</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> htmlSAXParseDoc (<a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * cur, <br /> const char * encoding, <br /> <a href="libxml-HTMLparser.html#htmlSAXHandlerPtr">htmlSAXHandlerPtr</a> sax, <br /> void * userData)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>a pointer to a char array</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size of the array</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of htmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="htmlSAXParseDoc" id="htmlSAXParseDoc"></a>Function: htmlSAXParseDoc</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> htmlSAXParseDoc (const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * cur, <br /> const char * encoding, <br /> <a href="libxml-HTMLparser.html#htmlSAXHandlerPtr">htmlSAXHandlerPtr</a> sax, <br /> void * userData)<br />
</pre><p>Parse an HTML in-memory document. If sax is not NULL, use the SAX callbacks to handle parse events. If sax is NULL, fallback to the default DOM behavior and return a tree.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>a pointer to an array of <a href="libxml-xmlstring.html#xmlChar">xmlChar</a></td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>a free form C string describing the HTML document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>the SAX handler block</td></tr><tr><td><span class="term"><i><tt>userData</tt></i>:</span></td><td>if using SAX, this pointer will be provided on callbacks.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree unless SAX is NULL or the document is not well formed.</td></tr></tbody></table></div><h3><a name="htmlSAXParseFile" id="htmlSAXParseFile"></a>Function: htmlSAXParseFile</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> htmlSAXParseFile (const char * filename, <br /> const char * encoding, <br /> <a href="libxml-HTMLparser.html#htmlSAXHandlerPtr">htmlSAXHandlerPtr</a> sax, <br /> void * userData)<br />
</pre><p>parse an HTML file and build a tree. Automatic support for ZLIB/Compress compressed document is provided by default if found at compile-time. It use the given SAX function block to handle the parsing callback. If sax is NULL, fallback to the default DOM tree building routines.</p>
diff --git a/doc/html/libxml-dict.html b/doc/html/libxml-dict.html
index 74e243b9..0854d29f 100644
--- a/doc/html/libxml-dict.html
+++ b/doc/html/libxml-dict.html
@@ -33,9 +33,9 @@ The content of this structure is not made public by the API.
</pre><p>Free the dictionary mutex. Do not call unless sure the library is not in use anymore !</p>
<h3><a name="xmlDictCreate" id="xmlDictCreate"></a>Function: xmlDictCreate</h3><pre class="programlisting"><a href="libxml-dict.html#xmlDictPtr">xmlDictPtr</a> xmlDictCreate (void)<br />
</pre><p>Create a new dictionary</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created dictionary, or NULL if an error occured.</td></tr></tbody></table></div><h3><a name="xmlDictCreateSub" id="xmlDictCreateSub"></a>Function: xmlDictCreateSub</h3><pre class="programlisting"><a href="libxml-dict.html#xmlDictPtr">xmlDictPtr</a> xmlDictCreateSub (<a href="libxml-dict.html#xmlDictPtr">xmlDictPtr</a> sub)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created dictionary, or NULL if an error occurred.</td></tr></tbody></table></div><h3><a name="xmlDictCreateSub" id="xmlDictCreateSub"></a>Function: xmlDictCreateSub</h3><pre class="programlisting"><a href="libxml-dict.html#xmlDictPtr">xmlDictPtr</a> xmlDictCreateSub (<a href="libxml-dict.html#xmlDictPtr">xmlDictPtr</a> sub)<br />
</pre><p>Create a new dictionary, inheriting strings from the read-only dictionary @sub. On lookup, strings are first searched in the new dictionary, then in @sub, and if not found are created in the new dictionary.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sub</tt></i>:</span></td><td>an existing dictionary</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created dictionary, or NULL if an error occured.</td></tr></tbody></table></div><h3><a name="xmlDictExists" id="xmlDictExists"></a>Function: xmlDictExists</h3><pre class="programlisting">const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * xmlDictExists (<a href="libxml-dict.html#xmlDictPtr">xmlDictPtr</a> dict, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name, <br /> int len)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sub</tt></i>:</span></td><td>an existing dictionary</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created dictionary, or NULL if an error occurred.</td></tr></tbody></table></div><h3><a name="xmlDictExists" id="xmlDictExists"></a>Function: xmlDictExists</h3><pre class="programlisting">const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * xmlDictExists (<a href="libxml-dict.html#xmlDictPtr">xmlDictPtr</a> dict, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name, <br /> int len)<br />
</pre><p>Check if the @name exists in the dictionary @dict.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>dict</tt></i>:</span></td><td>the dictionary</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the userdata</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the length of the name, if -1 it is recomputed</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the internal copy of the name or NULL if not found.</td></tr></tbody></table></div><h3><a name="xmlDictFree" id="xmlDictFree"></a>Function: xmlDictFree</h3><pre class="programlisting">void xmlDictFree (<a href="libxml-dict.html#xmlDictPtr">xmlDictPtr</a> dict)<br />
</pre><p>Free the hash @dict and its contents. The userdata is deallocated with @f if provided.</p>
diff --git a/doc/html/libxml-encoding.html b/doc/html/libxml-encoding.html
index 70f56f81..0ebfb149 100644
--- a/doc/html/libxml-encoding.html
+++ b/doc/html/libxml-encoding.html
@@ -10,7 +10,7 @@ A:link, A:visited, A:active { text-decoration: underline }
</style><style type="text/css">
div.deprecated pre.programlisting {border-style: double;border-color:red}
pre.programlisting {border-style: double;background: #EECFA1}
- </style><title>Module encoding from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#a06060" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module encoding from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li><li><a href="../ChangeLog.html">ChangeLog</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://opencsw.org/packages/libxml2">Solaris binaries</a></li><li><a href="http://www.explain.com.au/oss/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://lxml.de/">lxml Python bindings</a></li><li><a href="http://cpan.uwinnipeg.ca/dist/XML-LibXML">Perl bindings</a></li><li><a href="http://libxmlplusplus.sourceforge.net/">C++ bindings</a></li><li><a href="http://www.zend.com/php5/articles/php5-xmlphp.php#Heading4">PHP bindings</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://libxml.rubyforge.org/">Ruby bindings</a></li><li><a href="http://tclxml.sourceforge.net/">Tcl bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-dict.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-dict.html">dict</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-entities.html">entities</a></th><td><a accesskey="n" href="libxml-entities.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>interface for the encoding conversion functions needed for XML basic encoding and iconv() support. Related specs are rfc2044 (UTF-8 and UTF-16) F. Yergeau Alis Technologies [ISO-10646] UTF-8 and UTF-16 in Annexes [ISO-8859-1] ISO Latin-1 characters codes. [UNICODE] The Unicode Consortium, "The Unicode Standard -- Worldwide Character Encoding -- Version 1.0", Addison- Wesley, Volume 1, 1991, Volume 2, 1992. UTF-8 is described in Unicode Technical Report #4. [US-ASCII] Coded Character Set--7-bit American Standard Code for Information Interchange, ANSI X3.4-1986. </p><h2>Table of Contents</h2><pre class="programlisting">Structure <a href="#uconv_t">uconv_t</a><br />struct _uconv_t
+ </style><title>Module encoding from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#a06060" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module encoding from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li><li><a href="../ChangeLog.html">ChangeLog</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://opencsw.org/packages/libxml2">Solaris binaries</a></li><li><a href="http://www.explain.com.au/oss/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://lxml.de/">lxml Python bindings</a></li><li><a href="http://cpan.uwinnipeg.ca/dist/XML-LibXML">Perl bindings</a></li><li><a href="http://libxmlplusplus.sourceforge.net/">C++ bindings</a></li><li><a href="http://www.zend.com/php5/articles/php5-xmlphp.php#Heading4">PHP bindings</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://libxml.rubyforge.org/">Ruby bindings</a></li><li><a href="http://tclxml.sourceforge.net/">Tcl bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-dict.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-dict.html">dict</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-entities.html">entities</a></th><td><a accesskey="n" href="libxml-entities.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>interface for the encoding conversion functions needed for XML basic encoding and iconv() support. Related specs are rfc2044 (UTF-8 and UTF-16) F. Yergeau Alis Technologies [ISO-10646] UTF-8 and UTF-16 in Annexes [ISO-8859-1] ISO Latin-1 characters codes. [UNICODE] The Unicode Consortium, "The Unicode Standard -- Worldwide Character Encoding -- Version 1.0", Addison- Wesley, Volume 1, 1991, Volume 2, 1992. UTF-8 is described in Unicode Technical Report #4. [US-ASCII] Coded Character Set--7-bit American Standard Code for Information Interchange, ANSI X3.4-1986. </p><h2>Table of Contents</h2><pre class="programlisting">#define <a href="#ICU_PIVOT_BUF_SIZE">ICU_PIVOT_BUF_SIZE</a></pre><pre class="programlisting">Structure <a href="#uconv_t">uconv_t</a><br />struct _uconv_t
</pre><pre class="programlisting">Enum <a href="#xmlCharEncoding">xmlCharEncoding</a>
</pre><pre class="programlisting">Structure <a href="#xmlCharEncodingHandler">xmlCharEncodingHandler</a><br />struct _xmlCharEncodingHandler
</pre><pre class="programlisting">Typedef <a href="libxml-encoding.html#xmlCharEncodingHandler">xmlCharEncodingHandler</a> * <a name="xmlCharEncodingHandlerPtr" id="xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a>
@@ -40,9 +40,13 @@ int <a href="#xmlCharEncodingOutputFunc">xmlCharEncodingOutputFunc</a> (unsigned
<pre class="programlisting"><a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> <a href="#xmlParseCharEncoding">xmlParseCharEncoding</a> (const char * name)</pre>
<pre class="programlisting">void <a href="#xmlRegisterCharEncodingHandler">xmlRegisterCharEncodingHandler</a> (<a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a> handler)</pre>
<h2>Description</h2>
+<h3><a name="ICU_PIVOT_BUF_SIZE" id="ICU_PIVOT_BUF_SIZE"></a>Macro: ICU_PIVOT_BUF_SIZE</h3><pre>#define ICU_PIVOT_BUF_SIZE</pre><p></p>
<h3><a name="uconv_t" id="uconv_t">Structure uconv_t</a></h3><pre class="programlisting">Structure uconv_t<br />struct _uconv_t {
UConverter * uconv : for conversion between an encoding and
UConverter * utf8 : for conversion between UTF-8 and UTF-16
+ UCharpivot_buf[ICU_PIVOT_BUF_SIZE] pivot_buf
+ UChar * pivot_source
+ UChar * pivot_target
}</pre><h3>Enum <a name="xmlCharEncoding" id="xmlCharEncoding">xmlCharEncoding</a></h3><pre class="programlisting">Enum xmlCharEncoding {
<a name="XML_CHAR_ENCODING_ERROR" id="XML_CHAR_ENCODING_ERROR">XML_CHAR_ENCODING_ERROR</a> = -1 : No char encoding detected
<a name="XML_CHAR_ENCODING_NONE" id="XML_CHAR_ENCODING_NONE">XML_CHAR_ENCODING_NONE</a> = 0 : No char encoding detected
diff --git a/doc/html/libxml-hash.html b/doc/html/libxml-hash.html
index 922e3f19..021adb8f 100644
--- a/doc/html/libxml-hash.html
+++ b/doc/html/libxml-hash.html
@@ -17,14 +17,15 @@ The content of this structure is not made public by the API.
<pre class="programlisting">int <a href="#xmlHashAddEntry2">xmlHashAddEntry2</a> (<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name2, <br /> void * userdata)</pre>
<pre class="programlisting">int <a href="#xmlHashAddEntry3">xmlHashAddEntry3</a> (<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name2, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name3, <br /> void * userdata)</pre>
<pre class="programlisting">Function type: <a href="#xmlHashCopier">xmlHashCopier</a>
-void * <a href="#xmlHashCopier">xmlHashCopier</a> (void * payload, <br /> <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name)
+void * <a href="#xmlHashCopier">xmlHashCopier</a> (void * payload, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name)
</pre>
<pre class="programlisting"><a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> <a href="#xmlHashCopy">xmlHashCopy</a> (<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br /> <a href="libxml-hash.html#xmlHashCopier">xmlHashCopier</a> f)</pre>
<pre class="programlisting"><a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> <a href="#xmlHashCreate">xmlHashCreate</a> (int size)</pre>
<pre class="programlisting"><a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> <a href="#xmlHashCreateDict">xmlHashCreateDict</a> (int size, <br /> <a href="libxml-dict.html#xmlDictPtr">xmlDictPtr</a> dict)</pre>
<pre class="programlisting">Function type: <a href="#xmlHashDeallocator">xmlHashDeallocator</a>
-void <a href="#xmlHashDeallocator">xmlHashDeallocator</a> (void * payload, <br /> <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name)
+void <a href="#xmlHashDeallocator">xmlHashDeallocator</a> (void * payload, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name)
</pre>
+<pre class="programlisting">void <a href="#xmlHashDefaultDeallocator">xmlHashDefaultDeallocator</a> (void * entry, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name)</pre>
<pre class="programlisting">void <a href="#xmlHashFree">xmlHashFree</a> (<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br /> <a href="libxml-hash.html#xmlHashDeallocator">xmlHashDeallocator</a> f)</pre>
<pre class="programlisting">void * <a href="#xmlHashLookup">xmlHashLookup</a> (<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name)</pre>
<pre class="programlisting">void * <a href="#xmlHashLookup2">xmlHashLookup2</a> (<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name2)</pre>
@@ -40,7 +41,7 @@ void <a href="#xmlHashDeallocator">xmlHashDeallocator</a> (void * payload, <br
<pre class="programlisting">void <a href="#xmlHashScanFull">xmlHashScanFull</a> (<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br /> <a href="libxml-hash.html#xmlHashScannerFull">xmlHashScannerFull</a> f, <br /> void * data)</pre>
<pre class="programlisting">void <a href="#xmlHashScanFull3">xmlHashScanFull3</a> (<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name2, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name3, <br /> <a href="libxml-hash.html#xmlHashScannerFull">xmlHashScannerFull</a> f, <br /> void * data)</pre>
<pre class="programlisting">Function type: <a href="#xmlHashScanner">xmlHashScanner</a>
-void <a href="#xmlHashScanner">xmlHashScanner</a> (void * payload, <br /> void * data, <br /> <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name)
+void <a href="#xmlHashScanner">xmlHashScanner</a> (void * payload, <br /> void * data, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name)
</pre>
<pre class="programlisting">Function type: <a href="#xmlHashScannerFull">xmlHashScannerFull</a>
void <a href="#xmlHashScannerFull">xmlHashScannerFull</a> (void * payload, <br /> void * data, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name2, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name3)
@@ -60,18 +61,20 @@ The content of this structure is not made public by the API.
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the userdata</td></tr><tr><td><span class="term"><i><tt>name2</tt></i>:</span></td><td>a second name of the userdata</td></tr><tr><td><span class="term"><i><tt>userdata</tt></i>:</span></td><td>a pointer to the userdata</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 the addition succeeded and -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlHashAddEntry3" id="xmlHashAddEntry3"></a>Function: xmlHashAddEntry3</h3><pre class="programlisting">int xmlHashAddEntry3 (<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name2, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name3, <br /> void * userdata)<br />
</pre><p>Add the @userdata to the hash @table. This can later be retrieved by using the tuple (@name, @name2, @name3). Duplicate entries generate errors.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the userdata</td></tr><tr><td><span class="term"><i><tt>name2</tt></i>:</span></td><td>a second name of the userdata</td></tr><tr><td><span class="term"><i><tt>name3</tt></i>:</span></td><td>a third name of the userdata</td></tr><tr><td><span class="term"><i><tt>userdata</tt></i>:</span></td><td>a pointer to the userdata</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 the addition succeeded and -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlHashCopier" id="xmlHashCopier"></a>Function type: xmlHashCopier</h3><pre class="programlisting">Function type: xmlHashCopier
-void * xmlHashCopier (void * payload, <br /> <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name)
+void * xmlHashCopier (void * payload, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name)
</pre><p>Callback to copy data from a hash.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>payload</tt></i>:</span></td><td>the data in the hash</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name associated</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a copy of the data or NULL in case of error.</td></tr></tbody></table></div><br />
<h3><a name="xmlHashCopy" id="xmlHashCopy"></a>Function: xmlHashCopy</h3><pre class="programlisting"><a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> xmlHashCopy (<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br /> <a href="libxml-hash.html#xmlHashCopier">xmlHashCopier</a> f)<br />
</pre><p>Scan the hash @table and applied @f to each value.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the copier function for items in the hash</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new table or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlHashCreate" id="xmlHashCreate"></a>Function: xmlHashCreate</h3><pre class="programlisting"><a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> xmlHashCreate (int size)<br />
</pre><p>Create a new xmlHashTablePtr.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size of the hash table</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object, or NULL if an error occured.</td></tr></tbody></table></div><h3><a name="xmlHashCreateDict" id="xmlHashCreateDict"></a>Function: xmlHashCreateDict</h3><pre class="programlisting"><a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> xmlHashCreateDict (int size, <br /> <a href="libxml-dict.html#xmlDictPtr">xmlDictPtr</a> dict)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size of the hash table</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object, or NULL if an error occurred.</td></tr></tbody></table></div><h3><a name="xmlHashCreateDict" id="xmlHashCreateDict"></a>Function: xmlHashCreateDict</h3><pre class="programlisting"><a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> xmlHashCreateDict (int size, <br /> <a href="libxml-dict.html#xmlDictPtr">xmlDictPtr</a> dict)<br />
</pre><p>Create a new <a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> which will use @dict as the internal dictionary</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size of the hash table</td></tr><tr><td><span class="term"><i><tt>dict</tt></i>:</span></td><td>a dictionary to use for the hash</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object, or NULL if an error occured.</td></tr></tbody></table></div><h3><a name="xmlHashDeallocator" id="xmlHashDeallocator"></a>Function type: xmlHashDeallocator</h3><pre class="programlisting">Function type: xmlHashDeallocator
-void xmlHashDeallocator (void * payload, <br /> <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name)
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size of the hash table</td></tr><tr><td><span class="term"><i><tt>dict</tt></i>:</span></td><td>a dictionary to use for the hash</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object, or NULL if an error occurred.</td></tr></tbody></table></div><h3><a name="xmlHashDeallocator" id="xmlHashDeallocator"></a>Function type: xmlHashDeallocator</h3><pre class="programlisting">Function type: xmlHashDeallocator
+void xmlHashDeallocator (void * payload, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name)
</pre><p>Callback to free data from a hash.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>payload</tt></i>:</span></td><td>the data in the hash</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name associated</td></tr></tbody></table></div><br />
-<h3><a name="xmlHashFree" id="xmlHashFree"></a>Function: xmlHashFree</h3><pre class="programlisting">void xmlHashFree (<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br /> <a href="libxml-hash.html#xmlHashDeallocator">xmlHashDeallocator</a> f)<br />
+<h3><a name="xmlHashDefaultDeallocator" id="xmlHashDefaultDeallocator"></a>Function: xmlHashDefaultDeallocator</h3><pre class="programlisting">void xmlHashDefaultDeallocator (void * entry, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name)<br />
+</pre><p>Free a hash table entry with xmlFree.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>entry</tt></i>:</span></td><td>the hash table entry</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the entry's name</td></tr></tbody></table></div><h3><a name="xmlHashFree" id="xmlHashFree"></a>Function: xmlHashFree</h3><pre class="programlisting">void xmlHashFree (<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br /> <a href="libxml-hash.html#xmlHashDeallocator">xmlHashDeallocator</a> f)<br />
</pre><p>Free the hash @table and its contents. The userdata is deallocated with @f if provided.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the deallocator function for items in the hash</td></tr></tbody></table></div><h3><a name="xmlHashLookup" id="xmlHashLookup"></a>Function: xmlHashLookup</h3><pre class="programlisting">void * xmlHashLookup (<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name)<br />
</pre><p>Find the userdata specified by the @name.</p>
@@ -100,7 +103,7 @@ void xmlHashDeallocator (void * payload, <br /> <a href="libxml-xmlstring.
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the scanner function for items in the hash</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>extra data passed to f</td></tr></tbody></table></div><h3><a name="xmlHashScanFull3" id="xmlHashScanFull3"></a>Function: xmlHashScanFull3</h3><pre class="programlisting">void xmlHashScanFull3 (<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name2, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name3, <br /> <a href="libxml-hash.html#xmlHashScannerFull">xmlHashScannerFull</a> f, <br /> void * data)<br />
</pre><p>Scan the hash @table and applied @f to each value matching (@name, @name2, @name3) tuple. If one of the names is null, the comparison is considered to match.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the userdata or NULL</td></tr><tr><td><span class="term"><i><tt>name2</tt></i>:</span></td><td>a second name of the userdata or NULL</td></tr><tr><td><span class="term"><i><tt>name3</tt></i>:</span></td><td>a third name of the userdata or NULL</td></tr><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the scanner function for items in the hash</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>extra data passed to f</td></tr></tbody></table></div><h3><a name="xmlHashScanner" id="xmlHashScanner"></a>Function type: xmlHashScanner</h3><pre class="programlisting">Function type: xmlHashScanner
-void xmlHashScanner (void * payload, <br /> void * data, <br /> <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name)
+void xmlHashScanner (void * payload, <br /> void * data, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name)
</pre><p>Callback when scanning data in a hash with the simple scanner.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>payload</tt></i>:</span></td><td>the data in the hash</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>extra scannner data</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name associated</td></tr></tbody></table></div><br />
<h3><a name="xmlHashScannerFull" id="xmlHashScannerFull"></a>Function type: xmlHashScannerFull</h3><pre class="programlisting">Function type: xmlHashScannerFull
void xmlHashScannerFull (void * payload, <br /> void * data, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name2, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name3)
diff --git a/doc/html/libxml-list.html b/doc/html/libxml-list.html
index 33e60d1d..1738afc7 100644
--- a/doc/html/libxml-list.html
+++ b/doc/html/libxml-list.html
@@ -43,13 +43,13 @@ void <a href="#xmlListDeallocator">xmlListDeallocator</a> (<a href="libxml-list
<pre class="programlisting">int <a href="#xmlListRemoveLast">xmlListRemoveLast</a> (<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br /> void * data)</pre>
<pre class="programlisting">void <a href="#xmlListReverse">xmlListReverse</a> (<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)</pre>
<pre class="programlisting">void * <a href="#xmlListReverseSearch">xmlListReverseSearch</a> (<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br /> void * data)</pre>
-<pre class="programlisting">void <a href="#xmlListReverseWalk">xmlListReverseWalk</a> (<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br /> <a href="libxml-list.html#xmlListWalker">xmlListWalker</a> walker, <br /> const void * user)</pre>
+<pre class="programlisting">void <a href="#xmlListReverseWalk">xmlListReverseWalk</a> (<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br /> <a href="libxml-list.html#xmlListWalker">xmlListWalker</a> walker, <br /> void * user)</pre>
<pre class="programlisting">void * <a href="#xmlListSearch">xmlListSearch</a> (<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br /> void * data)</pre>
<pre class="programlisting">int <a href="#xmlListSize">xmlListSize</a> (<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)</pre>
<pre class="programlisting">void <a href="#xmlListSort">xmlListSort</a> (<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)</pre>
-<pre class="programlisting">void <a href="#xmlListWalk">xmlListWalk</a> (<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br /> <a href="libxml-list.html#xmlListWalker">xmlListWalker</a> walker, <br /> const void * user)</pre>
+<pre class="programlisting">void <a href="#xmlListWalk">xmlListWalk</a> (<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br /> <a href="libxml-list.html#xmlListWalker">xmlListWalker</a> walker, <br /> void * user)</pre>
<pre class="programlisting">Function type: <a href="#xmlListWalker">xmlListWalker</a>
-int <a href="#xmlListWalker">xmlListWalker</a> (const void * data, <br /> const void * user)
+int <a href="#xmlListWalker">xmlListWalker</a> (const void * data, <br /> void * user)
</pre>
<h2>Description</h2>
<h3><a name="xmlLink" id="xmlLink">Structure xmlLink</a></h3><pre class="programlisting">Structure xmlLink<br />struct _xmlLink {
@@ -98,13 +98,13 @@ void xmlListDeallocator (<a href="libxml-list.html#xmlLinkPtr">xmlLinkPtr</a> l
</pre><p>Remove the all instance associated to data in the list</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>list data</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of deallocation, or 0 if not found</td></tr></tbody></table></div><h3><a name="xmlListRemoveFirst" id="xmlListRemoveFirst"></a>Function: xmlListRemoveFirst</h3><pre class="programlisting">int xmlListRemoveFirst (<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br /> void * data)<br />
</pre><p>Remove the first instance associated to data in the list</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>list data</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if a deallocation occured, or 0 if not found</td></tr></tbody></table></div><h3><a name="xmlListRemoveLast" id="xmlListRemoveLast"></a>Function: xmlListRemoveLast</h3><pre class="programlisting">int xmlListRemoveLast (<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br /> void * data)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>list data</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if a deallocation occurred, or 0 if not found</td></tr></tbody></table></div><h3><a name="xmlListRemoveLast" id="xmlListRemoveLast"></a>Function: xmlListRemoveLast</h3><pre class="programlisting">int xmlListRemoveLast (<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br /> void * data)<br />
</pre><p>Remove the last instance associated to data in the list</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>list data</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if a deallocation occured, or 0 if not found</td></tr></tbody></table></div><h3><a name="xmlListReverse" id="xmlListReverse"></a>Function: xmlListReverse</h3><pre class="programlisting">void xmlListReverse (<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>list data</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if a deallocation occurred, or 0 if not found</td></tr></tbody></table></div><h3><a name="xmlListReverse" id="xmlListReverse"></a>Function: xmlListReverse</h3><pre class="programlisting">void xmlListReverse (<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)<br />
</pre><p>Reverse the order of the elements in the list</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr></tbody></table></div><h3><a name="xmlListReverseSearch" id="xmlListReverseSearch"></a>Function: xmlListReverseSearch</h3><pre class="programlisting">void * xmlListReverseSearch (<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br /> void * data)<br />
</pre><p>Search the list in reverse order for an existing value of @data</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>a search value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the value associated to @data or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlListReverseWalk" id="xmlListReverseWalk"></a>Function: xmlListReverseWalk</h3><pre class="programlisting">void xmlListReverseWalk (<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br /> <a href="libxml-list.html#xmlListWalker">xmlListWalker</a> walker, <br /> const void * user)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>a search value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the value associated to @data or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlListReverseWalk" id="xmlListReverseWalk"></a>Function: xmlListReverseWalk</h3><pre class="programlisting">void xmlListReverseWalk (<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br /> <a href="libxml-list.html#xmlListWalker">xmlListWalker</a> walker, <br /> void * user)<br />
</pre><p>Walk all the element of the list in reverse order and apply the walker function to it</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>walker</tt></i>:</span></td><td>a processing function</td></tr><tr><td><span class="term"><i><tt>user</tt></i>:</span></td><td>a user parameter passed to the walker function</td></tr></tbody></table></div><h3><a name="xmlListSearch" id="xmlListSearch"></a>Function: xmlListSearch</h3><pre class="programlisting">void * xmlListSearch (<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br /> void * data)<br />
</pre><p>Search the list for an existing value of @data</p>
@@ -112,9 +112,9 @@ void xmlListDeallocator (<a href="libxml-list.html#xmlLinkPtr">xmlLinkPtr</a> l
</pre><p>Get the number of elements in the list</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of elements in the list or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlListSort" id="xmlListSort"></a>Function: xmlListSort</h3><pre class="programlisting">void xmlListSort (<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)<br />
</pre><p>Sort all the elements in the list</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr></tbody></table></div><h3><a name="xmlListWalk" id="xmlListWalk"></a>Function: xmlListWalk</h3><pre class="programlisting">void xmlListWalk (<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br /> <a href="libxml-list.html#xmlListWalker">xmlListWalker</a> walker, <br /> const void * user)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr></tbody></table></div><h3><a name="xmlListWalk" id="xmlListWalk"></a>Function: xmlListWalk</h3><pre class="programlisting">void xmlListWalk (<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br /> <a href="libxml-list.html#xmlListWalker">xmlListWalker</a> walker, <br /> void * user)<br />
</pre><p>Walk all the element of the first from first to last and apply the walker function to it</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>walker</tt></i>:</span></td><td>a processing function</td></tr><tr><td><span class="term"><i><tt>user</tt></i>:</span></td><td>a user parameter passed to the walker function</td></tr></tbody></table></div><h3><a name="xmlListWalker" id="xmlListWalker"></a>Function type: xmlListWalker</h3><pre class="programlisting">Function type: xmlListWalker
-int xmlListWalker (const void * data, <br /> const void * user)
+int xmlListWalker (const void * data, <br /> void * user)
</pre><p>Callback function used when walking a list with xmlListWalk().</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>the data found in the list</td></tr><tr><td><span class="term"><i><tt>user</tt></i>:</span></td><td>extra user provided data to the walker</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 to stop walking the list, 1 otherwise.</td></tr></tbody></table></div><br />
<p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
diff --git a/doc/html/libxml-schemasInternals.html b/doc/html/libxml-schemasInternals.html
index db4a5a15..954f0d2e 100644
--- a/doc/html/libxml-schemasInternals.html
+++ b/doc/html/libxml-schemasInternals.html
@@ -10,7 +10,7 @@ A:link, A:visited, A:active { text-decoration: underline }
</style><style type="text/css">
div.deprecated pre.programlisting {border-style: double;border-color:red}
pre.programlisting {border-style: double;background: #EECFA1}
- </style><title>Module schemasInternals from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#a06060" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module schemasInternals from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li><li><a href="../ChangeLog.html">ChangeLog</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://opencsw.org/packages/libxml2">Solaris binaries</a></li><li><a href="http://www.explain.com.au/oss/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://lxml.de/">lxml Python bindings</a></li><li><a href="http://cpan.uwinnipeg.ca/dist/XML-LibXML">Perl bindings</a></li><li><a href="http://libxmlplusplus.sourceforge.net/">C++ bindings</a></li><li><a href="http://www.zend.com/php5/articles/php5-xmlphp.php#Heading4">PHP bindings</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://libxml.rubyforge.org/">Ruby bindings</a></li><li><a href="http://tclxml.sourceforge.net/">Tcl bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-relaxng.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-relaxng.html">relaxng</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-schematron.html">schematron</a></th><td><a accesskey="n" href="libxml-schematron.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>internal interfaces for the XML Schemas handling and schema validity checking The Schemas development is a Work In Progress. Some of those interfaces are not garanteed to be API or ABI stable ! </p><h2>Table of Contents</h2><pre class="programlisting">#define <a href="#XML_SCHEMAS_ANYATTR_LAX">XML_SCHEMAS_ANYATTR_LAX</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ANYATTR_SKIP">XML_SCHEMAS_ANYATTR_SKIP</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ANYATTR_STRICT">XML_SCHEMAS_ANYATTR_STRICT</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ANY_LAX">XML_SCHEMAS_ANY_LAX</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ANY_SKIP">XML_SCHEMAS_ANY_SKIP</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ANY_STRICT">XML_SCHEMAS_ANY_STRICT</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ATTRGROUP_GLOBAL">XML_SCHEMAS_ATTRGROUP_GLOBAL</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ATTRGROUP_HAS_REFS">XML_SCHEMAS_ATTRGROUP_HAS_REFS</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ATTRGROUP_MARKED">XML_SCHEMAS_ATTRGROUP_MARKED</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ATTRGROUP_REDEFINED">XML_SCHEMAS_ATTRGROUP_REDEFINED</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ATTRGROUP_WILDCARD_BUILDED">XML_SCHEMAS_ATTRGROUP_WILDCARD_BUILDED</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ATTR_FIXED">XML_SCHEMAS_ATTR_FIXED</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ATTR_GLOBAL">XML_SCHEMAS_ATTR_GLOBAL</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ATTR_INTERNAL_RESOLVED">XML_SCHEMAS_ATTR_INTERNAL_RESOLVED</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ATTR_NSDEFAULT">XML_SCHEMAS_ATTR_NSDEFAULT</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ATTR_USE_OPTIONAL">XML_SCHEMAS_ATTR_USE_OPTIONAL</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ATTR_USE_PROHIBITED">XML_SCHEMAS_ATTR_USE_PROHIBITED</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ATTR_USE_REQUIRED">XML_SCHEMAS_ATTR_USE_REQUIRED</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_BLOCK_DEFAULT_EXTENSION">XML_SCHEMAS_BLOCK_DEFAULT_EXTENSION</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_BLOCK_DEFAULT_RESTRICTION">XML_SCHEMAS_BLOCK_DEFAULT_RESTRICTION</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_BLOCK_DEFAULT_SUBSTITUTION">XML_SCHEMAS_BLOCK_DEFAULT_SUBSTITUTION</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_ABSTRACT">XML_SCHEMAS_ELEM_ABSTRACT</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_BLOCK_ABSENT">XML_SCHEMAS_ELEM_BLOCK_ABSENT</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_BLOCK_EXTENSION">XML_SCHEMAS_ELEM_BLOCK_EXTENSION</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_BLOCK_RESTRICTION">XML_SCHEMAS_ELEM_BLOCK_RESTRICTION</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_BLOCK_SUBSTITUTION">XML_SCHEMAS_ELEM_BLOCK_SUBSTITUTION</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_CIRCULAR">XML_SCHEMAS_ELEM_CIRCULAR</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_DEFAULT">XML_SCHEMAS_ELEM_DEFAULT</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_FINAL_ABSENT">XML_SCHEMAS_ELEM_FINAL_ABSENT</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_FINAL_EXTENSION">XML_SCHEMAS_ELEM_FINAL_EXTENSION</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_FINAL_RESTRICTION">XML_SCHEMAS_ELEM_FINAL_RESTRICTION</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_FIXED">XML_SCHEMAS_ELEM_FIXED</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_GLOBAL">XML_SCHEMAS_ELEM_GLOBAL</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_INTERNAL_CHECKED">XML_SCHEMAS_ELEM_INTERNAL_CHECKED</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_INTERNAL_RESOLVED">XML_SCHEMAS_ELEM_INTERNAL_RESOLVED</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_NILLABLE">XML_SCHEMAS_ELEM_NILLABLE</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_NSDEFAULT">XML_SCHEMAS_ELEM_NSDEFAULT</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_REF">XML_SCHEMAS_ELEM_REF</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_SUBST_GROUP_HEAD">XML_SCHEMAS_ELEM_SUBST_GROUP_HEAD</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_TOPLEVEL">XML_SCHEMAS_ELEM_TOPLEVEL</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_FACET_COLLAPSE">XML_SCHEMAS_FACET_COLLAPSE</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_FACET_PRESERVE">XML_SCHEMAS_FACET_PRESERVE</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_FACET_REPLACE">XML_SCHEMAS_FACET_REPLACE</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_FACET_UNKNOWN">XML_SCHEMAS_FACET_UNKNOWN</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_FINAL_DEFAULT_EXTENSION">XML_SCHEMAS_FINAL_DEFAULT_EXTENSION</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_FINAL_DEFAULT_LIST">XML_SCHEMAS_FINAL_DEFAULT_LIST</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_FINAL_DEFAULT_RESTRICTION">XML_SCHEMAS_FINAL_DEFAULT_RESTRICTION</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_FINAL_DEFAULT_UNION">XML_SCHEMAS_FINAL_DEFAULT_UNION</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_INCLUDING_CONVERT_NS">XML_SCHEMAS_INCLUDING_CONVERT_NS</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_QUALIF_ATTR">XML_SCHEMAS_QUALIF_ATTR</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_QUALIF_ELEM">XML_SCHEMAS_QUALIF_ELEM</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_ABSTRACT">XML_SCHEMAS_TYPE_ABSTRACT</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_BLOCK_DEFAULT">XML_SCHEMAS_TYPE_BLOCK_DEFAULT</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_BLOCK_EXTENSION">XML_SCHEMAS_TYPE_BLOCK_EXTENSION</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_BLOCK_RESTRICTION">XML_SCHEMAS_TYPE_BLOCK_RESTRICTION</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_BUILTIN_PRIMITIVE">XML_SCHEMAS_TYPE_BUILTIN_PRIMITIVE</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_DERIVATION_METHOD_EXTENSION">XML_SCHEMAS_TYPE_DERIVATION_METHOD_EXTENSION</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_DERIVATION_METHOD_RESTRICTION">XML_SCHEMAS_TYPE_DERIVATION_METHOD_RESTRICTION</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_FACETSNEEDVALUE">XML_SCHEMAS_TYPE_FACETSNEEDVALUE</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_FINAL_DEFAULT">XML_SCHEMAS_TYPE_FINAL_DEFAULT</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_FINAL_EXTENSION">XML_SCHEMAS_TYPE_FINAL_EXTENSION</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_FINAL_LIST">XML_SCHEMAS_TYPE_FINAL_LIST</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_FINAL_RESTRICTION">XML_SCHEMAS_TYPE_FINAL_RESTRICTION</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_FINAL_UNION">XML_SCHEMAS_TYPE_FINAL_UNION</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_FIXUP_1">XML_SCHEMAS_TYPE_FIXUP_1</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_GLOBAL">XML_SCHEMAS_TYPE_GLOBAL</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_HAS_FACETS">XML_SCHEMAS_TYPE_HAS_FACETS</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_INTERNAL_INVALID">XML_SCHEMAS_TYPE_INTERNAL_INVALID</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_INTERNAL_RESOLVED">XML_SCHEMAS_TYPE_INTERNAL_RESOLVED</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_MARKED">XML_SCHEMAS_TYPE_MARKED</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_MIXED">XML_SCHEMAS_TYPE_MIXED</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_NORMVALUENEEDED">XML_SCHEMAS_TYPE_NORMVALUENEEDED</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_OWNED_ATTR_WILDCARD">XML_SCHEMAS_TYPE_OWNED_ATTR_WILDCARD</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_REDEFINED">XML_SCHEMAS_TYPE_REDEFINED</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_VARIETY_ABSENT">XML_SCHEMAS_TYPE_VARIETY_ABSENT</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_VARIETY_ATOMIC">XML_SCHEMAS_TYPE_VARIETY_ATOMIC</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_VARIETY_LIST">XML_SCHEMAS_TYPE_VARIETY_LIST</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_VARIETY_UNION">XML_SCHEMAS_TYPE_VARIETY_UNION</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_WHITESPACE_COLLAPSE">XML_SCHEMAS_TYPE_WHITESPACE_COLLAPSE</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_WHITESPACE_PRESERVE">XML_SCHEMAS_TYPE_WHITESPACE_PRESERVE</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_WHITESPACE_REPLACE">XML_SCHEMAS_TYPE_WHITESPACE_REPLACE</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_WILDCARD_COMPLETE">XML_SCHEMAS_WILDCARD_COMPLETE</a></pre><pre class="programlisting">Structure <a href="#xmlSchemaAnnot">xmlSchemaAnnot</a><br />struct _xmlSchemaAnnot
+ </style><title>Module schemasInternals from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#a06060" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module schemasInternals from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li><li><a href="../ChangeLog.html">ChangeLog</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://opencsw.org/packages/libxml2">Solaris binaries</a></li><li><a href="http://www.explain.com.au/oss/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://lxml.de/">lxml Python bindings</a></li><li><a href="http://cpan.uwinnipeg.ca/dist/XML-LibXML">Perl bindings</a></li><li><a href="http://libxmlplusplus.sourceforge.net/">C++ bindings</a></li><li><a href="http://www.zend.com/php5/articles/php5-xmlphp.php#Heading4">PHP bindings</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://libxml.rubyforge.org/">Ruby bindings</a></li><li><a href="http://tclxml.sourceforge.net/">Tcl bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-relaxng.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-relaxng.html">relaxng</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-schematron.html">schematron</a></th><td><a accesskey="n" href="libxml-schematron.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>internal interfaces for the XML Schemas handling and schema validity checking The Schemas development is a Work In Progress. Some of those interfaces are not guaranteed to be API or ABI stable ! </p><h2>Table of Contents</h2><pre class="programlisting">#define <a href="#XML_SCHEMAS_ANYATTR_LAX">XML_SCHEMAS_ANYATTR_LAX</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ANYATTR_SKIP">XML_SCHEMAS_ANYATTR_SKIP</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ANYATTR_STRICT">XML_SCHEMAS_ANYATTR_STRICT</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ANY_LAX">XML_SCHEMAS_ANY_LAX</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ANY_SKIP">XML_SCHEMAS_ANY_SKIP</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ANY_STRICT">XML_SCHEMAS_ANY_STRICT</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ATTRGROUP_GLOBAL">XML_SCHEMAS_ATTRGROUP_GLOBAL</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ATTRGROUP_HAS_REFS">XML_SCHEMAS_ATTRGROUP_HAS_REFS</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ATTRGROUP_MARKED">XML_SCHEMAS_ATTRGROUP_MARKED</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ATTRGROUP_REDEFINED">XML_SCHEMAS_ATTRGROUP_REDEFINED</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ATTRGROUP_WILDCARD_BUILDED">XML_SCHEMAS_ATTRGROUP_WILDCARD_BUILDED</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ATTR_FIXED">XML_SCHEMAS_ATTR_FIXED</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ATTR_GLOBAL">XML_SCHEMAS_ATTR_GLOBAL</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ATTR_INTERNAL_RESOLVED">XML_SCHEMAS_ATTR_INTERNAL_RESOLVED</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ATTR_NSDEFAULT">XML_SCHEMAS_ATTR_NSDEFAULT</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ATTR_USE_OPTIONAL">XML_SCHEMAS_ATTR_USE_OPTIONAL</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ATTR_USE_PROHIBITED">XML_SCHEMAS_ATTR_USE_PROHIBITED</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ATTR_USE_REQUIRED">XML_SCHEMAS_ATTR_USE_REQUIRED</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_BLOCK_DEFAULT_EXTENSION">XML_SCHEMAS_BLOCK_DEFAULT_EXTENSION</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_BLOCK_DEFAULT_RESTRICTION">XML_SCHEMAS_BLOCK_DEFAULT_RESTRICTION</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_BLOCK_DEFAULT_SUBSTITUTION">XML_SCHEMAS_BLOCK_DEFAULT_SUBSTITUTION</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_ABSTRACT">XML_SCHEMAS_ELEM_ABSTRACT</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_BLOCK_ABSENT">XML_SCHEMAS_ELEM_BLOCK_ABSENT</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_BLOCK_EXTENSION">XML_SCHEMAS_ELEM_BLOCK_EXTENSION</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_BLOCK_RESTRICTION">XML_SCHEMAS_ELEM_BLOCK_RESTRICTION</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_BLOCK_SUBSTITUTION">XML_SCHEMAS_ELEM_BLOCK_SUBSTITUTION</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_CIRCULAR">XML_SCHEMAS_ELEM_CIRCULAR</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_DEFAULT">XML_SCHEMAS_ELEM_DEFAULT</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_FINAL_ABSENT">XML_SCHEMAS_ELEM_FINAL_ABSENT</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_FINAL_EXTENSION">XML_SCHEMAS_ELEM_FINAL_EXTENSION</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_FINAL_RESTRICTION">XML_SCHEMAS_ELEM_FINAL_RESTRICTION</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_FIXED">XML_SCHEMAS_ELEM_FIXED</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_GLOBAL">XML_SCHEMAS_ELEM_GLOBAL</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_INTERNAL_CHECKED">XML_SCHEMAS_ELEM_INTERNAL_CHECKED</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_INTERNAL_RESOLVED">XML_SCHEMAS_ELEM_INTERNAL_RESOLVED</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_NILLABLE">XML_SCHEMAS_ELEM_NILLABLE</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_NSDEFAULT">XML_SCHEMAS_ELEM_NSDEFAULT</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_REF">XML_SCHEMAS_ELEM_REF</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_SUBST_GROUP_HEAD">XML_SCHEMAS_ELEM_SUBST_GROUP_HEAD</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_TOPLEVEL">XML_SCHEMAS_ELEM_TOPLEVEL</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_FACET_COLLAPSE">XML_SCHEMAS_FACET_COLLAPSE</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_FACET_PRESERVE">XML_SCHEMAS_FACET_PRESERVE</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_FACET_REPLACE">XML_SCHEMAS_FACET_REPLACE</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_FACET_UNKNOWN">XML_SCHEMAS_FACET_UNKNOWN</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_FINAL_DEFAULT_EXTENSION">XML_SCHEMAS_FINAL_DEFAULT_EXTENSION</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_FINAL_DEFAULT_LIST">XML_SCHEMAS_FINAL_DEFAULT_LIST</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_FINAL_DEFAULT_RESTRICTION">XML_SCHEMAS_FINAL_DEFAULT_RESTRICTION</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_FINAL_DEFAULT_UNION">XML_SCHEMAS_FINAL_DEFAULT_UNION</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_INCLUDING_CONVERT_NS">XML_SCHEMAS_INCLUDING_CONVERT_NS</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_QUALIF_ATTR">XML_SCHEMAS_QUALIF_ATTR</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_QUALIF_ELEM">XML_SCHEMAS_QUALIF_ELEM</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_ABSTRACT">XML_SCHEMAS_TYPE_ABSTRACT</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_BLOCK_DEFAULT">XML_SCHEMAS_TYPE_BLOCK_DEFAULT</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_BLOCK_EXTENSION">XML_SCHEMAS_TYPE_BLOCK_EXTENSION</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_BLOCK_RESTRICTION">XML_SCHEMAS_TYPE_BLOCK_RESTRICTION</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_BUILTIN_PRIMITIVE">XML_SCHEMAS_TYPE_BUILTIN_PRIMITIVE</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_DERIVATION_METHOD_EXTENSION">XML_SCHEMAS_TYPE_DERIVATION_METHOD_EXTENSION</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_DERIVATION_METHOD_RESTRICTION">XML_SCHEMAS_TYPE_DERIVATION_METHOD_RESTRICTION</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_FACETSNEEDVALUE">XML_SCHEMAS_TYPE_FACETSNEEDVALUE</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_FINAL_DEFAULT">XML_SCHEMAS_TYPE_FINAL_DEFAULT</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_FINAL_EXTENSION">XML_SCHEMAS_TYPE_FINAL_EXTENSION</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_FINAL_LIST">XML_SCHEMAS_TYPE_FINAL_LIST</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_FINAL_RESTRICTION">XML_SCHEMAS_TYPE_FINAL_RESTRICTION</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_FINAL_UNION">XML_SCHEMAS_TYPE_FINAL_UNION</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_FIXUP_1">XML_SCHEMAS_TYPE_FIXUP_1</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_GLOBAL">XML_SCHEMAS_TYPE_GLOBAL</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_HAS_FACETS">XML_SCHEMAS_TYPE_HAS_FACETS</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_INTERNAL_INVALID">XML_SCHEMAS_TYPE_INTERNAL_INVALID</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_INTERNAL_RESOLVED">XML_SCHEMAS_TYPE_INTERNAL_RESOLVED</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_MARKED">XML_SCHEMAS_TYPE_MARKED</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_MIXED">XML_SCHEMAS_TYPE_MIXED</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_NORMVALUENEEDED">XML_SCHEMAS_TYPE_NORMVALUENEEDED</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_OWNED_ATTR_WILDCARD">XML_SCHEMAS_TYPE_OWNED_ATTR_WILDCARD</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_REDEFINED">XML_SCHEMAS_TYPE_REDEFINED</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_VARIETY_ABSENT">XML_SCHEMAS_TYPE_VARIETY_ABSENT</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_VARIETY_ATOMIC">XML_SCHEMAS_TYPE_VARIETY_ATOMIC</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_VARIETY_LIST">XML_SCHEMAS_TYPE_VARIETY_LIST</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_VARIETY_UNION">XML_SCHEMAS_TYPE_VARIETY_UNION</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_WHITESPACE_COLLAPSE">XML_SCHEMAS_TYPE_WHITESPACE_COLLAPSE</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_WHITESPACE_PRESERVE">XML_SCHEMAS_TYPE_WHITESPACE_PRESERVE</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_WHITESPACE_REPLACE">XML_SCHEMAS_TYPE_WHITESPACE_REPLACE</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_WILDCARD_COMPLETE">XML_SCHEMAS_WILDCARD_COMPLETE</a></pre><pre class="programlisting">Structure <a href="#xmlSchemaAnnot">xmlSchemaAnnot</a><br />struct _xmlSchemaAnnot
</pre><pre class="programlisting">Typedef <a href="libxml-schemasInternals.html#xmlSchemaAnnot">xmlSchemaAnnot</a> * <a name="xmlSchemaAnnotPtr" id="xmlSchemaAnnotPtr">xmlSchemaAnnotPtr</a>
</pre><pre class="programlisting">Structure <a href="#xmlSchemaAttribute">xmlSchemaAttribute</a><br />struct _xmlSchemaAttribute
</pre><pre class="programlisting">Structure <a href="#xmlSchemaAttributeGroup">xmlSchemaAttributeGroup</a><br />struct _xmlSchemaAttributeGroup
diff --git a/doc/html/libxml-tree.html b/doc/html/libxml-tree.html
index d95872dc..09e7bdcd 100644
--- a/doc/html/libxml-tree.html
+++ b/doc/html/libxml-tree.html
@@ -964,7 +964,7 @@ The content of this structure is not made public by the API.
</pre><p>update all nodes under the tree to point to the right document</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>tree</tt></i>:</span></td><td>the top element</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr></tbody></table></div><h3><a name="xmlSplitQName2" id="xmlSplitQName2"></a>Function: xmlSplitQName2</h3><pre class="programlisting"><a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * xmlSplitQName2 (const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name, <br /> <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> ** prefix)<br />
</pre><p>parse an XML qualified name string [NS 5] QName ::= (Prefix ':')? LocalPart [NS 6] Prefix ::= NCName [NS 7] LocalPart ::= NCName</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the full QName</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>a <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> **</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if not a QName, otherwise the local part, and prefix is updated to get the Prefix if any.</td></tr></tbody></table></div><h3><a name="xmlSplitQName3" id="xmlSplitQName3"></a>Function: xmlSplitQName3</h3><pre class="programlisting">const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * xmlSplitQName3 (const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name, <br /> int * len)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the full QName</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>a <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> **</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if the name doesn't have a prefix. Otherwise, returns the local part, and prefix is updated to get the Prefix. Both the return value and the prefix must be freed by the caller.</td></tr></tbody></table></div><h3><a name="xmlSplitQName3" id="xmlSplitQName3"></a>Function: xmlSplitQName3</h3><pre class="programlisting">const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * xmlSplitQName3 (const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name, <br /> int * len)<br />
</pre><p>parse an XML qualified name string,i</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the full QName</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>an int *</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if it is not a Qualified Name, otherwise, update len with the length in byte of the prefix and return a pointer to the start of the name without the prefix</td></tr></tbody></table></div><h3><a name="xmlStringGetNodeList" id="xmlStringGetNodeList"></a>Function: xmlStringGetNodeList</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlStringGetNodeList (const <a href="libxml-tree.html#xmlDoc">xmlDoc</a> * doc, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * value)<br />
</pre><p>Parse the value string and build the node list associated. Should produce a flat tree with only TEXTs and ENTITY_REFs.</p>
diff --git a/doc/html/libxml-xmlerror.html b/doc/html/libxml-xmlerror.html
index 5c3a1040..2550ac0d 100644
--- a/doc/html/libxml-xmlerror.html
+++ b/doc/html/libxml-xmlerror.html
@@ -832,14 +832,14 @@ void <a href="#xmlStructuredErrorFunc">xmlStructuredErrorFunc</a> (void * userD
</pre><p>Save the original error to the new place.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>from</tt></i>:</span></td><td>a source error</td></tr><tr><td><span class="term"><i><tt>to</tt></i>:</span></td><td>a target error</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success and -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlCtxtGetLastError" id="xmlCtxtGetLastError"></a>Function: xmlCtxtGetLastError</h3><pre class="programlisting"><a href="libxml-xmlerror.html#xmlErrorPtr">xmlErrorPtr</a> xmlCtxtGetLastError (void * ctx)<br />
</pre><p>Get the last parsing error registered.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if no error occured or a pointer to the error</td></tr></tbody></table></div><h3><a name="xmlCtxtResetLastError" id="xmlCtxtResetLastError"></a>Function: xmlCtxtResetLastError</h3><pre class="programlisting">void xmlCtxtResetLastError (void * ctx)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if no error occurred or a pointer to the error</td></tr></tbody></table></div><h3><a name="xmlCtxtResetLastError" id="xmlCtxtResetLastError"></a>Function: xmlCtxtResetLastError</h3><pre class="programlisting">void xmlCtxtResetLastError (void * ctx)<br />
</pre><p>Cleanup the last global error registered. For parsing error this does not change the well-formedness result.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an XML parser context</td></tr></tbody></table></div><h3><a name="xmlGenericErrorFunc" id="xmlGenericErrorFunc"></a>Function type: xmlGenericErrorFunc</h3><pre class="programlisting">Function type: xmlGenericErrorFunc
void xmlGenericErrorFunc (void * ctx, <br /> const char * msg, <br /> ... ...)
</pre><p>Signature of the function to use when there is an error and no parsing or validity context available .</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>a parsing context</td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td>the message</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td>the extra arguments of the varags to format the message</td></tr></tbody></table></div><br />
<h3><a name="xmlGetLastError" id="xmlGetLastError"></a>Function: xmlGetLastError</h3><pre class="programlisting"><a href="libxml-xmlerror.html#xmlErrorPtr">xmlErrorPtr</a> xmlGetLastError (void)<br />
</pre><p>Get the last global error registered. This is per thread if compiled with thread support.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if no error occured or a pointer to the error</td></tr></tbody></table></div><h3><a name="xmlParserError" id="xmlParserError"></a>Function: xmlParserError</h3><pre class="programlisting">void xmlParserError (void * ctx, <br /> const char * msg, <br /> ... ...)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if no error occurred or a pointer to the error</td></tr></tbody></table></div><h3><a name="xmlParserError" id="xmlParserError"></a>Function: xmlParserError</h3><pre class="programlisting">void xmlParserError (void * ctx, <br /> const char * msg, <br /> ... ...)<br />
</pre><p>Display and format an error messages, gives file, line, position and extra parameters.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td>the message to display/transmit</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td>extra parameters for the message display</td></tr></tbody></table></div><h3><a name="xmlParserPrintFileContext" id="xmlParserPrintFileContext"></a>Function: xmlParserPrintFileContext</h3><pre class="programlisting">void xmlParserPrintFileContext (<a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> input)<br />
</pre><p>Displays current context within the input content for error tracking</p>
diff --git a/doc/html/libxml-xmlreader.html b/doc/html/libxml-xmlreader.html
index f7e00fba..b9bd032a 100644
--- a/doc/html/libxml-xmlreader.html
+++ b/doc/html/libxml-xmlreader.html
@@ -218,7 +218,7 @@ The content of this structure is not made public by the API.
</pre><p>The depth of the node in the tree.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the depth or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextReaderErrorFunc" id="xmlTextReaderErrorFunc"></a>Function type: xmlTextReaderErrorFunc</h3><pre class="programlisting">Function type: xmlTextReaderErrorFunc
void xmlTextReaderErrorFunc (void * arg, <br /> const char * msg, <br /> <a href="libxml-xmlreader.html#xmlParserSeverities">xmlParserSeverities</a> severity, <br /> <a href="libxml-xmlreader.html#xmlTextReaderLocatorPtr">xmlTextReaderLocatorPtr</a> locator)
-</pre><p>Signature of an error callback from a reader parser</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>arg</tt></i>:</span></td><td>the user argument</td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td>the message</td></tr><tr><td><span class="term"><i><tt>severity</tt></i>:</span></td><td>the severity of the error</td></tr><tr><td><span class="term"><i><tt>locator</tt></i>:</span></td><td>a locator indicating where the error occured</td></tr></tbody></table></div><br />
+</pre><p>Signature of an error callback from a reader parser</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>arg</tt></i>:</span></td><td>the user argument</td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td>the message</td></tr><tr><td><span class="term"><i><tt>severity</tt></i>:</span></td><td>the severity of the error</td></tr><tr><td><span class="term"><i><tt>locator</tt></i>:</span></td><td>a locator indicating where the error occurred</td></tr></tbody></table></div><br />
<h3><a name="xmlTextReaderExpand" id="xmlTextReaderExpand"></a>Function: xmlTextReaderExpand</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlTextReaderExpand (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
</pre><p>Reads the contents of the current node and the full subtree. It then makes the subtree available until the next xmlTextReaderRead() call</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a node pointer valid until the next xmlTextReaderRead() call or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlTextReaderGetAttribute" id="xmlTextReaderGetAttribute"></a>Function: xmlTextReaderGetAttribute</h3><pre class="programlisting"><a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * xmlTextReaderGetAttribute (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * name)<br />
@@ -287,7 +287,7 @@ void xmlTextReaderErrorFunc (void * arg, <br /> const char * msg, <br />
</pre><p>This tells the XML Reader to preserve the current node. The caller must also use xmlTextReaderCurrentDoc() to keep an handle on the resulting document once parsing has finished</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlTextReaderPreservePattern" id="xmlTextReaderPreservePattern"></a>Function: xmlTextReaderPreservePattern</h3><pre class="programlisting">int xmlTextReaderPreservePattern (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * pattern, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> ** namespaces)<br />
</pre><p>This tells the XML Reader to preserve all nodes matched by the pattern. The caller must also use xmlTextReaderCurrentDoc() to keep an handle on the resulting document once parsing has finished</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>pattern</tt></i>:</span></td><td>an XPath subset pattern</td></tr><tr><td><span class="term"><i><tt>namespaces</tt></i>:</span></td><td>the prefix definitions, array of [URI, prefix] or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a positive number in case of success and -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextReaderQuoteChar" id="xmlTextReaderQuoteChar"></a>Function: xmlTextReaderQuoteChar</h3><pre class="programlisting">int xmlTextReaderQuoteChar (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>pattern</tt></i>:</span></td><td>an XPath subset pattern</td></tr><tr><td><span class="term"><i><tt>namespaces</tt></i>:</span></td><td>the prefix definitions, array of [URI, prefix] or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a non-negative number in case of success and -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextReaderQuoteChar" id="xmlTextReaderQuoteChar"></a>Function: xmlTextReaderQuoteChar</h3><pre class="programlisting">int xmlTextReaderQuoteChar (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
</pre><p>The quotation mark character used to enclose the value of an attribute.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>" or ' and -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextReaderRead" id="xmlTextReaderRead"></a>Function: xmlTextReaderRead</h3><pre class="programlisting">int xmlTextReaderRead (<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
</pre><p>Moves the position of the current instance to the next node in the stream, exposing its properties.</p>
diff --git a/doc/html/libxml-xmlstring.html b/doc/html/libxml-xmlstring.html
index 89e98099..dc8248c4 100644
--- a/doc/html/libxml-xmlstring.html
+++ b/doc/html/libxml-xmlstring.html
@@ -67,7 +67,7 @@ A:link, A:visited, A:active { text-decoration: underline }
</pre><p>a case-ignoring strstr for xmlChar's</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * array (haystack)</td></tr><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> to search (needle)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * for the first occurrence or NULL.</td></tr></tbody></table></div><h3><a name="xmlStrcat" id="xmlStrcat"></a>Function: xmlStrcat</h3><pre class="programlisting"><a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * xmlStrcat (<a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * cur, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * add)<br />
</pre><p>a strcat for array of xmlChar's. Since they are supposed to be encoded in UTF-8 or an encoding with 8bit based chars, we assume a termination mark of '0'.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the original <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * array</td></tr><tr><td><span class="term"><i><tt>add</tt></i>:</span></td><td>the <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * array added</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * containing the concatenated string.</td></tr></tbody></table></div><h3><a name="xmlStrchr" id="xmlStrchr"></a>Function: xmlStrchr</h3><pre class="programlisting">const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * xmlStrchr (const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * str, <br /> <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> val)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the original <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * array</td></tr><tr><td><span class="term"><i><tt>add</tt></i>:</span></td><td>the <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * array added</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * containing the concatenated string. The original @cur is reallocated and should not be freed.</td></tr></tbody></table></div><h3><a name="xmlStrchr" id="xmlStrchr"></a>Function: xmlStrchr</h3><pre class="programlisting">const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * xmlStrchr (const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * str, <br /> <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> val)<br />
</pre><p>a strchr for xmlChar's</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * array</td></tr><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> to search</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * for the first occurrence or NULL.</td></tr></tbody></table></div><h3><a name="xmlStrcmp" id="xmlStrcmp"></a>Function: xmlStrcmp</h3><pre class="programlisting">int xmlStrcmp (const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * str1, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * str2)<br />
</pre><p>a strcmp for xmlChar's</p>
@@ -79,7 +79,7 @@ A:link, A:visited, A:active { text-decoration: underline }
</pre><p>a strncasecmp for xmlChar's</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str1</tt></i>:</span></td><td>the first <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> *</td></tr><tr><td><span class="term"><i><tt>str2</tt></i>:</span></td><td>the second <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> *</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the max comparison length</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the integer result of the comparison</td></tr></tbody></table></div><h3><a name="xmlStrncat" id="xmlStrncat"></a>Function: xmlStrncat</h3><pre class="programlisting"><a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * xmlStrncat (<a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * cur, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * add, <br /> int len)<br />
</pre><p>a strncat for array of xmlChar's, it will extend @cur with the len first bytes of @add. Note that if @len &lt; 0 then this is an API error and NULL will be returned.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the original <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * array</td></tr><tr><td><span class="term"><i><tt>add</tt></i>:</span></td><td>the <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * array added</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the length of @add</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> *, the original @cur is reallocated if needed and should not be freed</td></tr></tbody></table></div><h3><a name="xmlStrncatNew" id="xmlStrncatNew"></a>Function: xmlStrncatNew</h3><pre class="programlisting"><a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * xmlStrncatNew (const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * str1, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * str2, <br /> int len)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the original <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * array</td></tr><tr><td><span class="term"><i><tt>add</tt></i>:</span></td><td>the <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * array added</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the length of @add</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> *, the original @cur is reallocated and should not be freed.</td></tr></tbody></table></div><h3><a name="xmlStrncatNew" id="xmlStrncatNew"></a>Function: xmlStrncatNew</h3><pre class="programlisting"><a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * xmlStrncatNew (const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * str1, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * str2, <br /> int len)<br />
</pre><p>same as xmlStrncat, but creates a new string. The original two strings are not freed. If @len is &lt; 0 then the length will be calculated automatically.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str1</tt></i>:</span></td><td>first <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> string</td></tr><tr><td><span class="term"><i><tt>str2</tt></i>:</span></td><td>second <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> string</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the len of @str2 or &lt; 0</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * or NULL</td></tr></tbody></table></div><h3><a name="xmlStrncmp" id="xmlStrncmp"></a>Function: xmlStrncmp</h3><pre class="programlisting">int xmlStrncmp (const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * str1, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * str2, <br /> int len)<br />
</pre><p>a strncmp for xmlChar's</p>
@@ -102,7 +102,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>utf</tt></i>:</span></td><td>the input UTF8 *</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the len of @utf (in chars)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new UTF8 * or NULL</td></tr></tbody></table></div><h3><a name="xmlUTF8Strpos" id="xmlUTF8Strpos"></a>Function: xmlUTF8Strpos</h3><pre class="programlisting">const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * xmlUTF8Strpos (const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * utf, <br /> int pos)<br />
</pre><p>a function to provide the equivalent of fetching a character from a string array</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>utf</tt></i>:</span></td><td>the input UTF8 *</td></tr><tr><td><span class="term"><i><tt>pos</tt></i>:</span></td><td>the position of the desired UTF8 char (in chars)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the UTF8 character or NULL</td></tr></tbody></table></div><h3><a name="xmlUTF8Strsize" id="xmlUTF8Strsize"></a>Function: xmlUTF8Strsize</h3><pre class="programlisting">int xmlUTF8Strsize (const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * utf, <br /> int len)<br />
-</pre><p>storage size of an UTF8 string the behaviour is not garanteed if the input string is not UTF-8</p>
+</pre><p>storage size of an UTF8 string the behaviour is not guaranteed if the input string is not UTF-8</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>utf</tt></i>:</span></td><td>a sequence of UTF-8 encoded bytes</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the number of <a href="libxml-SAX.html#characters">characters</a> in the array</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the storage size of the first 'len' <a href="libxml-SAX.html#characters">characters</a> of ARRAY</td></tr></tbody></table></div><h3><a name="xmlUTF8Strsub" id="xmlUTF8Strsub"></a>Function: xmlUTF8Strsub</h3><pre class="programlisting"><a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * xmlUTF8Strsub (const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * utf, <br /> int start, <br /> int len)<br />
</pre><p>Create a substring from a given UTF-8 string Note: positions are given in units of UTF-8 chars</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>utf</tt></i>:</span></td><td>a sequence of UTF-8 encoded bytes</td></tr><tr><td><span class="term"><i><tt>start</tt></i>:</span></td><td>relative pos of first char</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>total number to copy</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to a newly created string or NULL if any problem</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
diff --git a/doc/html/libxml-xpath.html b/doc/html/libxml-xpath.html
index e47e600b..482a983f 100644
--- a/doc/html/libxml-xpath.html
+++ b/doc/html/libxml-xpath.html
@@ -270,7 +270,7 @@ int xmlXPathConvertFunc (<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPath
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XPath context</td></tr><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the XPath expression</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-xpath.html#xmlXPathCompExprPtr">xmlXPathCompExprPtr</a> resulting from the compilation or NULL. the caller has to free the object.</td></tr></tbody></table></div><h3><a name="xmlXPathEval" id="xmlXPathEval"></a>Function: xmlXPathEval</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> xmlXPathEval (const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * str, <br /> <a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctx)<br />
</pre><p>Evaluate the XPath Location Path in the given context.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the XPath expression</td></tr><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> resulting from the evaluation or NULL. the caller has to free the object.</td></tr></tbody></table></div><h3><a name="xmlXPathEvalExpression" id="xmlXPathEvalExpression"></a>Function: xmlXPathEvalExpression</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> xmlXPathEvalExpression (const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * str, <br /> <a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt)<br />
-</pre><p>Evaluate the XPath expression in the given context.</p>
+</pre><p>Alias for xmlXPathEval().</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the XPath expression</td></tr><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> resulting from the evaluation or NULL. the caller has to free the object.</td></tr></tbody></table></div><h3><a name="xmlXPathEvalFunc" id="xmlXPathEvalFunc"></a>Function type: xmlXPathEvalFunc</h3><pre class="programlisting">Function type: xmlXPathEvalFunc
void xmlXPathEvalFunc (<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br /> int nargs)
</pre><p>An XPath evaluation function, the parameters are on the XPath context stack.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XPath parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments passed to the function</td></tr></tbody></table></div><br />
@@ -293,11 +293,11 @@ void xmlXPathEvalFunc (<a href="libxml-xpath.html#xmlXPathParserContextPtr">xml
void xmlXPathFunction (<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br /> int nargs)
</pre><p>An XPath function. The arguments (if any) are popped out from the context stack and the result is pushed on the stack.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath interprestation context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><br />
<h3><a name="xmlXPathInit" id="xmlXPathInit"></a>Function: xmlXPathInit</h3><pre class="programlisting">void xmlXPathInit (void)<br />
-</pre><p>Initialize the XPath environment</p>
+</pre><p>Initialize the XPath environment Does nothing but must be kept as public function.</p>
<h3><a name="xmlXPathIsInf" id="xmlXPathIsInf"></a>Function: xmlXPathIsInf</h3><pre class="programlisting">int xmlXPathIsInf (double val)<br />
-</pre><p>Provides a portable isinf() function to detect whether a double is a +Infinite or -Infinite. Based on trio code http://sourceforge.net/projects/ctrio/</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>a double value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 vi the value is +Infinite, -1 if -Infinite, 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlXPathIsNaN" id="xmlXPathIsNaN"></a>Function: xmlXPathIsNaN</h3><pre class="programlisting">int xmlXPathIsNaN (double val)<br />
-</pre><p>Provides a portable isnan() function to detect whether a double is a NotaNumber. Based on trio code http://sourceforge.net/projects/ctrio/</p>
+</pre><p></p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>a double value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if the value is +Infinite, -1 if -Infinite, 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlXPathIsNaN" id="xmlXPathIsNaN"></a>Function: xmlXPathIsNaN</h3><pre class="programlisting">int xmlXPathIsNaN (double val)<br />
+</pre><p></p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>a double value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if the value is a NaN, 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlXPathNewContext" id="xmlXPathNewContext"></a>Function: xmlXPathNewContext</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> xmlXPathNewContext (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
</pre><p>Create a new <a href="libxml-xpath.html#xmlXPathContext">xmlXPathContext</a></p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the XML document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-xpath.html#xmlXPathContext">xmlXPathContext</a> just allocated. The caller will need to free it.</td></tr></tbody></table></div><h3><a name="xmlXPathNodeEval" id="xmlXPathNodeEval"></a>Function: xmlXPathNodeEval</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> xmlXPathNodeEval (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br /> const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * str, <br /> <a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctx)<br />
diff --git a/doc/html/libxml-xpathInternals.html b/doc/html/libxml-xpathInternals.html
index f12d808a..49546aba 100644
--- a/doc/html/libxml-xpathInternals.html
+++ b/doc/html/libxml-xpathInternals.html
@@ -348,7 +348,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath context</td></tr></tbody></table></div><h3><a name="xmlXPathRoot" id="xmlXPathRoot"></a>Function: xmlXPathRoot</h3><pre class="programlisting">void xmlXPathRoot (<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
</pre><p>Initialize the context to the root of the document</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr></tbody></table></div><h3><a name="xmlXPathRoundFunction" id="xmlXPathRoundFunction"></a>Function: xmlXPathRoundFunction</h3><pre class="programlisting">void xmlXPathRoundFunction (<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br /> int nargs)<br />
-</pre><p>Implement the round() XPath function number round(number) The round function returns the number that is closest to the argument and that is an integer. If there are two such numbers, then the one that is even is returned.</p>
+</pre><p>Implement the round() XPath function number round(number) The round function returns the number that is closest to the argument and that is an integer. If there are two such numbers, then the one that is closest to positive infinity is returned.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathStartsWithFunction" id="xmlXPathStartsWithFunction"></a>Function: xmlXPathStartsWithFunction</h3><pre class="programlisting">void xmlXPathStartsWithFunction (<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br /> int nargs)<br />
</pre><p>Implement the starts-with() XPath function boolean starts-with(string, string) The starts-with function returns true if the first argument string starts with the second argument string, and otherwise returns false.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathStringEvalNumber" id="xmlXPathStringEvalNumber"></a>Function: xmlXPathStringEvalNumber</h3><pre class="programlisting">double xmlXPathStringEvalNumber (const <a href="libxml-xmlstring.html#xmlChar">xmlChar</a> * str)<br />
diff --git a/doc/html/libxml-xpointer.html b/doc/html/libxml-xpointer.html
index 45526de2..66eb80bd 100644
--- a/doc/html/libxml-xpointer.html
+++ b/doc/html/libxml-xpointer.html
@@ -77,7 +77,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>start</tt></i>:</span></td><td>the starting point</td></tr><tr><td><span class="term"><i><tt>end</tt></i>:</span></td><td>the ending node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPtrNewRangePoints" id="xmlXPtrNewRangePoints"></a>Function: xmlXPtrNewRangePoints</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> xmlXPtrNewRangePoints (<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> start, <br /> <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> end)<br />
</pre><p>Create a new <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> of type range using 2 Points</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>start</tt></i>:</span></td><td>the starting point</td></tr><tr><td><span class="term"><i><tt>end</tt></i>:</span></td><td>the ending point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPtrRangeToFunction" id="xmlXPtrRangeToFunction"></a>Function: xmlXPtrRangeToFunction</h3><pre class="programlisting">void xmlXPtrRangeToFunction (<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br /> int nargs)<br />
-</pre><p>Implement the range-to() XPointer function</p>
+</pre><p>Implement the range-to() XPointer function Obsolete. range-to is not a real function but a special type of location step which is handled in xpath.c.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPointer Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of args</td></tr></tbody></table></div><h3><a name="xmlXPtrWrapLocationSet" id="xmlXPtrWrapLocationSet"></a>Function: xmlXPtrWrapLocationSet</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> xmlXPtrWrapLocationSet (<a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> val)<br />
</pre><p>Wrap the LocationSet @val in a new <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a></p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the LocationSet value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
diff --git a/doc/libxml2-api.xml b/doc/libxml2-api.xml
index a0a01178..9cf6c72e 100644
--- a/doc/libxml2-api.xml
+++ b/doc/libxml2-api.xml
@@ -390,6 +390,7 @@
<summary>interface for the encoding conversion functions</summary>
<description>interface for the encoding conversion functions needed for XML basic encoding and iconv() support. Related specs are rfc2044 (UTF-8 and UTF-16) F. Yergeau Alis Technologies [ISO-10646] UTF-8 and UTF-16 in Annexes [ISO-8859-1] ISO Latin-1 characters codes. [UNICODE] The Unicode Consortium, &quot;The Unicode Standard -- Worldwide Character Encoding -- Version 1.0&quot;, Addison- Wesley, Volume 1, 1991, Volume 2, 1992. UTF-8 is described in Unicode Technical Report #4. [US-ASCII] Coded Character Set--7-bit American Standard Code for Information Interchange, ANSI X3.4-1986. </description>
<author>Daniel Veillard </author>
+ <exports symbol='ICU_PIVOT_BUF_SIZE' type='macro'/>
<exports symbol='XML_CHAR_ENCODING_UCS4LE' type='enum'/>
<exports symbol='XML_CHAR_ENCODING_ERROR' type='enum'/>
<exports symbol='XML_CHAR_ENCODING_8859_5' type='enum'/>
@@ -573,6 +574,7 @@
<exports symbol='xmlHashCopy' type='function'/>
<exports symbol='xmlHashScanFull3' type='function'/>
<exports symbol='xmlHashUpdateEntry3' type='function'/>
+ <exports symbol='xmlHashDefaultDeallocator' type='function'/>
<exports symbol='xmlHashLookup3' type='function'/>
<exports symbol='xmlHashLookup2' type='function'/>
<exports symbol='xmlHashRemoveEntry' type='function'/>
@@ -1127,7 +1129,7 @@
</file>
<file name='schemasInternals'>
<summary>internal interfaces for XML Schemas</summary>
- <description>internal interfaces for the XML Schemas handling and schema validity checking The Schemas development is a Work In Progress. Some of those interfaces are not garanteed to be API or ABI stable ! </description>
+ <description>internal interfaces for the XML Schemas handling and schema validity checking The Schemas development is a Work In Progress. Some of those interfaces are not guaranteed to be API or ABI stable ! </description>
<author>Daniel Veillard </author>
<exports symbol='XML_SCHEMAS_BLOCK_DEFAULT_RESTRICTION' type='macro'/>
<exports symbol='XML_SCHEMAS_FINAL_DEFAULT_EXTENSION' type='macro'/>
@@ -3878,6 +3880,8 @@
<macro name='HTML_TEXT_NODE' file='HTMLtree'>
<info>Macro. A text node in a HTML document is really implemented the same way as a text node in an XML document.</info>
</macro>
+ <macro name='ICU_PIVOT_BUF_SIZE' file='encoding'>
+ </macro>
<macro name='INPUT_CHUNK' file='parserInternals'>
<info>The parser tries to always have that amount of input ready. One of the point is providing context when reporting errors.</info>
</macro>
@@ -5961,6 +5965,9 @@ if necessary or NULL'/>
<struct name='uconv_t' file='encoding' type='struct _uconv_t'>
<field name='uconv' type='UConverter *' info=' for conversion between an encoding and UTF-16'/>
<field name='utf8' type='UConverter *' info=' for conversion between UTF-8 and UTF-16'/>
+ <field name='pivot_buf' type='UCharpivot_buf[ICU_PIVOT_BUF_SIZE]' info=''/>
+ <field name='pivot_source' type='UChar *' info=''/>
+ <field name='pivot_target' type='UChar *' info=''/>
</struct>
<typedef name='xlinkActuate' file='xlink' type='enum'/>
<typedef name='xlinkHRef' file='xlink' type='xmlChar *'/>
@@ -7743,7 +7750,7 @@ Could we use @subtypes for this?'/>
<cond>defined(LIBXML_HTML_ENABLED)</cond>
<info>parse an HTML in-memory document and build a tree.</info>
<return type='htmlDocPtr' info='the resulting document tree'/>
- <arg name='cur' type='xmlChar *' info='a pointer to an array of xmlChar'/>
+ <arg name='cur' type='const xmlChar *' info='a pointer to an array of xmlChar'/>
<arg name='encoding' type='const char *' info='a free form C string describing the HTML document encoding, or NULL'/>
</function>
<function name='htmlParseDocument' file='HTMLparser' module='HTMLparser'>
@@ -7823,7 +7830,7 @@ Could we use @subtypes for this?'/>
<cond>defined(LIBXML_HTML_ENABLED)</cond>
<info>Parse an HTML in-memory document. If sax is not NULL, use the SAX callbacks to handle parse events. If sax is NULL, fallback to the default DOM behavior and return a tree.</info>
<return type='htmlDocPtr' info='the resulting document tree unless SAX is NULL or the document is not well formed.'/>
- <arg name='cur' type='xmlChar *' info='a pointer to an array of xmlChar'/>
+ <arg name='cur' type='const xmlChar *' info='a pointer to an array of xmlChar'/>
<arg name='encoding' type='const char *' info='a free form C string describing the HTML document encoding, or NULL'/>
<arg name='sax' type='htmlSAXHandlerPtr' info='the SAX handler block'/>
<arg name='userData' type='void *' info='if using SAX, this pointer will be provided on callbacks.'/>
@@ -9245,7 +9252,7 @@ Could we use @subtypes for this?'/>
</function>
<function name='xmlCtxtGetLastError' file='xmlerror' module='error'>
<info>Get the last parsing error registered.</info>
- <return type='xmlErrorPtr' info='NULL if no error occured or a pointer to the error'/>
+ <return type='xmlErrorPtr' info='NULL if no error occurred or a pointer to the error'/>
<arg name='ctx' type='void *' info='an XML parser context'/>
</function>
<function name='xmlCtxtReadDoc' file='parser' module='parser'>
@@ -9504,11 +9511,11 @@ Could we use @subtypes for this?'/>
</function>
<function name='xmlDictCreate' file='dict' module='dict'>
<info>Create a new dictionary</info>
- <return type='xmlDictPtr' info='the newly created dictionary, or NULL if an error occured.'/>
+ <return type='xmlDictPtr' info='the newly created dictionary, or NULL if an error occurred.'/>
</function>
<function name='xmlDictCreateSub' file='dict' module='dict'>
<info>Create a new dictionary, inheriting strings from the read-only dictionary @sub. On lookup, strings are first searched in the new dictionary, then in @sub, and if not found are created in the new dictionary.</info>
- <return type='xmlDictPtr' info='the newly created dictionary, or NULL if an error occured.'/>
+ <return type='xmlDictPtr' info='the newly created dictionary, or NULL if an error occurred.'/>
<arg name='sub' type='xmlDictPtr' info='an existing dictionary'/>
</function>
<function name='xmlDictExists' file='dict' module='dict'>
@@ -10233,7 +10240,7 @@ Could we use @subtypes for this?'/>
</function>
<function name='xmlGetLastError' file='xmlerror' module='error'>
<info>Get the last global error registered. This is per thread if compiled with thread support.</info>
- <return type='xmlErrorPtr' info='NULL if no error occured or a pointer to the error'/>
+ <return type='xmlErrorPtr' info='NULL if no error occurred or a pointer to the error'/>
</function>
<function name='xmlGetLineNo' file='tree' module='tree'>
<info>Get line number of @node. Try to override the limitation of lines being store in 16 bits ints if XML_PARSE_BIG_LINES parser option was used</info>
@@ -10352,7 +10359,7 @@ Could we use @subtypes for this?'/>
<info>Callback to copy data from a hash.</info>
<return type='void *' info='a copy of the data or NULL in case of error.'/>
<arg name='payload' type='void *' info='the data in the hash'/>
- <arg name='name' type='xmlChar *' info='the name associated'/>
+ <arg name='name' type='const xmlChar *' info='the name associated'/>
</functype>
<function name='xmlHashCopy' file='hash' module='hash'>
<info>Scan the hash @table and applied @f to each value.</info>
@@ -10362,12 +10369,12 @@ Could we use @subtypes for this?'/>
</function>
<function name='xmlHashCreate' file='hash' module='hash'>
<info>Create a new xmlHashTablePtr.</info>
- <return type='xmlHashTablePtr' info='the newly created object, or NULL if an error occured.'/>
+ <return type='xmlHashTablePtr' info='the newly created object, or NULL if an error occurred.'/>
<arg name='size' type='int' info='the size of the hash table'/>
</function>
<function name='xmlHashCreateDict' file='hash' module='hash'>
<info>Create a new xmlHashTablePtr which will use @dict as the internal dictionary</info>
- <return type='xmlHashTablePtr' info='the newly created object, or NULL if an error occured.'/>
+ <return type='xmlHashTablePtr' info='the newly created object, or NULL if an error occurred.'/>
<arg name='size' type='int' info='the size of the hash table'/>
<arg name='dict' type='xmlDictPtr' info='a dictionary to use for the hash'/>
</function>
@@ -10375,8 +10382,14 @@ Could we use @subtypes for this?'/>
<info>Callback to free data from a hash.</info>
<return type='void'/>
<arg name='payload' type='void *' info='the data in the hash'/>
- <arg name='name' type='xmlChar *' info='the name associated'/>
+ <arg name='name' type='const xmlChar *' info='the name associated'/>
</functype>
+ <function name='xmlHashDefaultDeallocator' file='hash' module='hash'>
+ <info>Free a hash table entry with xmlFree.</info>
+ <return type='void'/>
+ <arg name='entry' type='void *' info='the hash table entry'/>
+ <arg name='name' type='const xmlChar *' info='the entry&apos;s name'/>
+ </function>
<function name='xmlHashFree' file='hash' module='hash'>
<info>Free the hash @table and its contents. The userdata is deallocated with @f if provided.</info>
<return type='void'/>
@@ -10494,7 +10507,7 @@ Could we use @subtypes for this?'/>
<return type='void'/>
<arg name='payload' type='void *' info='the data in the hash'/>
<arg name='data' type='void *' info='extra scannner data'/>
- <arg name='name' type='xmlChar *' info='the name associated'/>
+ <arg name='name' type='const xmlChar *' info='the name associated'/>
</functype>
<functype name='xmlHashScannerFull' file='hash' module='hash'>
<info>Callback when scanning data in a hash with the full scanner.</info>
@@ -10877,13 +10890,13 @@ Could we use @subtypes for this?'/>
</function>
<function name='xmlListRemoveFirst' file='list' module='list'>
<info>Remove the first instance associated to data in the list</info>
- <return type='int' info='1 if a deallocation occured, or 0 if not found'/>
+ <return type='int' info='1 if a deallocation occurred, or 0 if not found'/>
<arg name='l' type='xmlListPtr' info='a list'/>
<arg name='data' type='void *' info='list data'/>
</function>
<function name='xmlListRemoveLast' file='list' module='list'>
<info>Remove the last instance associated to data in the list</info>
- <return type='int' info='1 if a deallocation occured, or 0 if not found'/>
+ <return type='int' info='1 if a deallocation occurred, or 0 if not found'/>
<arg name='l' type='xmlListPtr' info='a list'/>
<arg name='data' type='void *' info='list data'/>
</function>
@@ -10903,7 +10916,7 @@ Could we use @subtypes for this?'/>
<return type='void'/>
<arg name='l' type='xmlListPtr' info='a list'/>
<arg name='walker' type='xmlListWalker' info='a processing function'/>
- <arg name='user' type='const void *' info='a user parameter passed to the walker function'/>
+ <arg name='user' type='void *' info='a user parameter passed to the walker function'/>
</function>
<function name='xmlListSearch' file='list' module='list'>
<info>Search the list for an existing value of @data</info>
@@ -10926,13 +10939,13 @@ Could we use @subtypes for this?'/>
<return type='void'/>
<arg name='l' type='xmlListPtr' info='a list'/>
<arg name='walker' type='xmlListWalker' info='a processing function'/>
- <arg name='user' type='const void *' info='a user parameter passed to the walker function'/>
+ <arg name='user' type='void *' info='a user parameter passed to the walker function'/>
</function>
<functype name='xmlListWalker' file='list' module='list'>
<info>Callback function used when walking a list with xmlListWalk().</info>
<return type='int' info='0 to stop walking the list, 1 otherwise.'/>
<arg name='data' type='const void *' info='the data found in the list'/>
- <arg name='user' type='const void *' info='extra user provided data to the walker'/>
+ <arg name='user' type='void *' info='extra user provided data to the walker'/>
</functype>
<function name='xmlLoadACatalog' file='catalog' module='catalog'>
<cond>defined(LIBXML_CATALOG_ENABLED)</cond>
@@ -14453,7 +14466,7 @@ Could we use @subtypes for this?'/>
</function>
<function name='xmlSplitQName2' file='tree' module='tree'>
<info>parse an XML qualified name string [NS 5] QName ::= (Prefix &apos;:&apos;)? LocalPart [NS 6] Prefix ::= NCName [NS 7] LocalPart ::= NCName</info>
- <return type='xmlChar *' info='NULL if not a QName, otherwise the local part, and prefix is updated to get the Prefix if any.'/>
+ <return type='xmlChar *' info='NULL if the name doesn&apos;t have a prefix. Otherwise, returns the local part, and prefix is updated to get the Prefix. Both the return value and the prefix must be freed by the caller.'/>
<arg name='name' type='const xmlChar *' info='the full QName'/>
<arg name='prefix' type='xmlChar **' info='a xmlChar **'/>
</function>
@@ -14519,7 +14532,7 @@ Could we use @subtypes for this?'/>
</function>
<function name='xmlStrcat' file='xmlstring' module='xmlstring'>
<info>a strcat for array of xmlChar&apos;s. Since they are supposed to be encoded in UTF-8 or an encoding with 8bit based chars, we assume a termination mark of &apos;0&apos;.</info>
- <return type='xmlChar *' info='a new xmlChar * containing the concatenated string.'/>
+ <return type='xmlChar *' info='a new xmlChar * containing the concatenated string. The original @cur is reallocated and should not be freed.'/>
<arg name='cur' type='xmlChar *' info='the original xmlChar * array'/>
<arg name='add' type='const xmlChar *' info='the xmlChar * array added'/>
</function>
@@ -14637,7 +14650,7 @@ Could we use @subtypes for this?'/>
</function>
<function name='xmlStrncat' file='xmlstring' module='xmlstring'>
<info>a strncat for array of xmlChar&apos;s, it will extend @cur with the len first bytes of @add. Note that if @len &lt; 0 then this is an API error and NULL will be returned.</info>
- <return type='xmlChar *' info='a new xmlChar *, the original @cur is reallocated if needed and should not be freed'/>
+ <return type='xmlChar *' info='a new xmlChar *, the original @cur is reallocated and should not be freed.'/>
<arg name='cur' type='xmlChar *' info='the original xmlChar * array'/>
<arg name='add' type='const xmlChar *' info='the xmlChar * array added'/>
<arg name='len' type='int' info='the length of @add'/>
@@ -14828,7 +14841,7 @@ Could we use @subtypes for this?'/>
<arg name='arg' type='void *' info='the user argument'/>
<arg name='msg' type='const char *' info='the message'/>
<arg name='severity' type='xmlParserSeverities' info='the severity of the error'/>
- <arg name='locator' type='xmlTextReaderLocatorPtr' info='a locator indicating where the error occured'/>
+ <arg name='locator' type='xmlTextReaderLocatorPtr' info='a locator indicating where the error occurred'/>
</functype>
<function name='xmlTextReaderExpand' file='xmlreader' module='xmlreader'>
<cond>defined(LIBXML_READER_ENABLED)</cond>
@@ -15043,7 +15056,7 @@ Could we use @subtypes for this?'/>
<function name='xmlTextReaderPreservePattern' file='xmlreader' module='xmlreader'>
<cond>defined(LIBXML_READER_ENABLED) &amp;&amp; defined(LIBXML_PATTERN_ENABLED)</cond>
<info>This tells the XML Reader to preserve all nodes matched by the pattern. The caller must also use xmlTextReaderCurrentDoc() to keep an handle on the resulting document once parsing has finished</info>
- <return type='int' info='a positive number in case of success and -1 in case of error'/>
+ <return type='int' info='a non-negative number in case of success and -1 in case of error'/>
<arg name='reader' type='xmlTextReaderPtr' info='the xmlTextReaderPtr used'/>
<arg name='pattern' type='const xmlChar *' info='an XPath subset pattern'/>
<arg name='namespaces' type='const xmlChar **' info='the prefix definitions, array of [URI, prefix] or NULL'/>
@@ -16932,7 +16945,7 @@ Could we use @subtypes for this?'/>
<arg name='pos' type='int' info='the position of the desired UTF8 char (in chars)'/>
</function>
<function name='xmlUTF8Strsize' file='xmlstring' module='xmlstring'>
- <info>storage size of an UTF8 string the behaviour is not garanteed if the input string is not UTF-8</info>
+ <info>storage size of an UTF8 string the behaviour is not guaranteed if the input string is not UTF-8</info>
<return type='int' info='the storage size of the first &apos;len&apos; characters of ARRAY'/>
<arg name='utf' type='const xmlChar *' info='a sequence of UTF-8 encoded bytes'/>
<arg name='len' type='int' info='the number of characters in the array'/>
@@ -17561,7 +17574,7 @@ Could we use @subtypes for this?'/>
</function>
<function name='xmlXPathEvalExpression' file='xpath' module='xpath'>
<cond>defined(LIBXML_XPATH_ENABLED)</cond>
- <info>Evaluate the XPath expression in the given context.</info>
+ <info>Alias for xmlXPathEval().</info>
<return type='xmlXPathObjectPtr' info='the xmlXPathObjectPtr resulting from the evaluation or NULL. the caller has to free the object.'/>
<arg name='str' type='const xmlChar *' info='the XPath expression'/>
<arg name='ctxt' type='xmlXPathContextPtr' info='the XPath context'/>
@@ -17683,7 +17696,7 @@ Could we use @subtypes for this?'/>
</function>
<function name='xmlXPathInit' file='xpath' module='xpath'>
<cond>defined(LIBXML_XPATH_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED)</cond>
- <info>Initialize the XPath environment</info>
+ <info>Initialize the XPath environment Does nothing but must be kept as public function.</info>
<return type='void'/>
</function>
<function name='xmlXPathIntersection' file='xpathInternals' module='xpath'>
@@ -17695,13 +17708,13 @@ Could we use @subtypes for this?'/>
</function>
<function name='xmlXPathIsInf' file='xpath' module='xpath'>
<cond>defined(LIBXML_XPATH_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED)</cond>
- <info>Provides a portable isinf() function to detect whether a double is a +Infinite or -Infinite. Based on trio code http://sourceforge.net/projects/ctrio/</info>
- <return type='int' info='1 vi the value is +Infinite, -1 if -Infinite, 0 otherwise'/>
+ <info></info>
+ <return type='int' info='1 if the value is +Infinite, -1 if -Infinite, 0 otherwise'/>
<arg name='val' type='double' info='a double value'/>
</function>
<function name='xmlXPathIsNaN' file='xpath' module='xpath'>
<cond>defined(LIBXML_XPATH_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED)</cond>
- <info>Provides a portable isnan() function to detect whether a double is a NotaNumber. Based on trio code http://sourceforge.net/projects/ctrio/</info>
+ <info></info>
<return type='int' info='1 if the value is a NaN, 0 otherwise'/>
<arg name='val' type='double' info='a double value'/>
</function>
@@ -18200,7 +18213,7 @@ Could we use @subtypes for this?'/>
</function>
<function name='xmlXPathRoundFunction' file='xpathInternals' module='xpath'>
<cond>defined(LIBXML_XPATH_ENABLED)</cond>
- <info>Implement the round() XPath function number round(number) The round function returns the number that is closest to the argument and that is an integer. If there are two such numbers, then the one that is even is returned.</info>
+ <info>Implement the round() XPath function number round(number) The round function returns the number that is closest to the argument and that is an integer. If there are two such numbers, then the one that is closest to positive infinity is returned.</info>
<return type='void'/>
<arg name='ctxt' type='xmlXPathParserContextPtr' info='the XPath Parser context'/>
<arg name='nargs' type='int' info='the number of arguments'/>
@@ -18495,7 +18508,7 @@ Could we use @subtypes for this?'/>
</function>
<function name='xmlXPtrRangeToFunction' file='xpointer' module='xpointer'>
<cond>defined(LIBXML_XPTR_ENABLED)</cond>
- <info>Implement the range-to() XPointer function</info>
+ <info>Implement the range-to() XPointer function Obsolete. range-to is not a real function but a special type of location step which is handled in xpath.c.</info>
<return type='void'/>
<arg name='ctxt' type='xmlXPathParserContextPtr' info='the XPointer Parser context'/>
<arg name='nargs' type='int' info='the number of args'/>
diff --git a/doc/libxml2-refs.xml b/doc/libxml2-refs.xml
index 6dce37f0..3fe0876f 100644
--- a/doc/libxml2-refs.xml
+++ b/doc/libxml2-refs.xml
@@ -34,6 +34,7 @@
<reference name='HTML_REQUIRED' href='html/libxml-HTMLparser.html#HTML_REQUIRED'/>
<reference name='HTML_TEXT_NODE' href='html/libxml-HTMLtree.html#HTML_TEXT_NODE'/>
<reference name='HTML_VALID' href='html/libxml-HTMLparser.html#HTML_VALID'/>
+ <reference name='ICU_PIVOT_BUF_SIZE' href='html/libxml-encoding.html#ICU_PIVOT_BUF_SIZE'/>
<reference name='INPUT_CHUNK' href='html/libxml-parserInternals.html#INPUT_CHUNK'/>
<reference name='INVALID_SOCKET' href='html/libxml-nanoftp.html#INVALID_SOCKET'/>
<reference name='IS_ASCII_DIGIT' href='html/libxml-parserInternals.html#IS_ASCII_DIGIT'/>
@@ -2124,6 +2125,7 @@
<reference name='xmlHashCreate' href='html/libxml-hash.html#xmlHashCreate'/>
<reference name='xmlHashCreateDict' href='html/libxml-hash.html#xmlHashCreateDict'/>
<reference name='xmlHashDeallocator' href='html/libxml-hash.html#xmlHashDeallocator'/>
+ <reference name='xmlHashDefaultDeallocator' href='html/libxml-hash.html#xmlHashDefaultDeallocator'/>
<reference name='xmlHashFree' href='html/libxml-hash.html#xmlHashFree'/>
<reference name='xmlHashLookup' href='html/libxml-hash.html#xmlHashLookup'/>
<reference name='xmlHashLookup2' href='html/libxml-hash.html#xmlHashLookup2'/>
@@ -3624,6 +3626,7 @@
<ref name='HTML_VALID'/>
</letter>
<letter name='I'>
+ <ref name='ICU_PIVOT_BUF_SIZE'/>
<ref name='INPUT_CHUNK'/>
<ref name='INVALID_SOCKET'/>
<ref name='IS_ASCII_DIGIT'/>
@@ -5762,6 +5765,7 @@
<ref name='xmlHashCreate'/>
<ref name='xmlHashCreateDict'/>
<ref name='xmlHashDeallocator'/>
+ <ref name='xmlHashDefaultDeallocator'/>
<ref name='xmlHashFree'/>
<ref name='xmlHashLookup'/>
<ref name='xmlHashLookup2'/>
@@ -8113,8 +8117,6 @@
</type>
<type name='const void *'>
<ref name='xmlListDataCompare'/>
- <ref name='xmlListReverseWalk'/>
- <ref name='xmlListWalk'/>
<ref name='xmlListWalker'/>
</type>
<type name='const xlinkHRef'>
@@ -8185,7 +8187,9 @@
<ref name='htmlIsScriptAttribute'/>
<ref name='htmlNewDoc'/>
<ref name='htmlNewDocNoDtD'/>
+ <ref name='htmlParseDoc'/>
<ref name='htmlReadDoc'/>
+ <ref name='htmlSAXParseDoc'/>
<ref name='htmlSetMetaEncoding'/>
<ref name='htmlTagLookup'/>
<ref name='ignorableWhitespace'/>
@@ -8285,6 +8289,9 @@
<ref name='xmlHashAddEntry'/>
<ref name='xmlHashAddEntry2'/>
<ref name='xmlHashAddEntry3'/>
+ <ref name='xmlHashCopier'/>
+ <ref name='xmlHashDeallocator'/>
+ <ref name='xmlHashDefaultDeallocator'/>
<ref name='xmlHashLookup'/>
<ref name='xmlHashLookup2'/>
<ref name='xmlHashLookup3'/>
@@ -8296,6 +8303,7 @@
<ref name='xmlHashRemoveEntry3'/>
<ref name='xmlHashScan3'/>
<ref name='xmlHashScanFull3'/>
+ <ref name='xmlHashScanner'/>
<ref name='xmlHashScannerFull'/>
<ref name='xmlHashUpdateEntry'/>
<ref name='xmlHashUpdateEntry2'/>
@@ -8860,6 +8868,7 @@
<ref name='xmlHashAddEntry3'/>
<ref name='xmlHashCopier'/>
<ref name='xmlHashDeallocator'/>
+ <ref name='xmlHashDefaultDeallocator'/>
<ref name='xmlHashScan'/>
<ref name='xmlHashScan3'/>
<ref name='xmlHashScanFull'/>
@@ -8883,7 +8892,10 @@
<ref name='xmlListRemoveFirst'/>
<ref name='xmlListRemoveLast'/>
<ref name='xmlListReverseSearch'/>
+ <ref name='xmlListReverseWalk'/>
<ref name='xmlListSearch'/>
+ <ref name='xmlListWalk'/>
+ <ref name='xmlListWalker'/>
<ref name='xmlMemFree'/>
<ref name='xmlMemRealloc'/>
<ref name='xmlNanoFTPCheckResponse'/>
@@ -9171,14 +9183,9 @@
<ref name='docbSAXParseDoc'/>
<ref name='entityDecl'/>
<ref name='entityDeclSAXFunc'/>
- <ref name='htmlParseDoc'/>
- <ref name='htmlSAXParseDoc'/>
<ref name='xmlBuildQName'/>
<ref name='xmlCopyChar'/>
<ref name='xmlCopyCharMultiByte'/>
- <ref name='xmlHashCopier'/>
- <ref name='xmlHashDeallocator'/>
- <ref name='xmlHashScanner'/>
<ref name='xmlNewDocNodeEatName'/>
<ref name='xmlNewNodeEatName'/>
<ref name='xmlNewNsPropEatName'/>
@@ -11103,6 +11110,7 @@
<ref name='xmlInitializeDict'/>
</file>
<file name='encoding'>
+ <ref name='ICU_PIVOT_BUF_SIZE'/>
<ref name='UTF8Toisolat1'/>
<ref name='XML_CHAR_ENCODING_2022_JP'/>
<ref name='XML_CHAR_ENCODING_8859_1'/>
@@ -11262,6 +11270,7 @@
<ref name='xmlHashCreate'/>
<ref name='xmlHashCreateDict'/>
<ref name='xmlHashDeallocator'/>
+ <ref name='xmlHashDefaultDeallocator'/>
<ref name='xmlHashFree'/>
<ref name='xmlHashLookup'/>
<ref name='xmlHashLookup2'/>
@@ -14535,6 +14544,9 @@
<word name='AegeanNumbers'>
<ref name='xmlUCSIsAegeanNumbers'/>
</word>
+ <word name='Alias'>
+ <ref name='xmlXPathEvalExpression'/>
+ </word>
<word name='All'>
<ref name='_xmlSchema'/>
<ref name='_xmlSchemaType'/>
@@ -14726,8 +14738,6 @@
</word>
<word name='Based'>
<ref name='xmlExpExpDerive'/>
- <ref name='xmlXPathIsInf'/>
- <ref name='xmlXPathIsNaN'/>
</word>
<word name='BasicLatin'>
<ref name='xmlUCSIsBasicLatin'/>
@@ -14774,6 +14784,7 @@
</word>
<word name='Both'>
<ref name='XML_SUBSTITUTE_BOTH'/>
+ <ref name='xmlSplitQName2'/>
<ref name='xmlStreamPush'/>
<ref name='xmlStreamPushAttr'/>
<ref name='xmlStreamPushNode'/>
@@ -15502,6 +15513,7 @@
<ref name='xmlValidNormalizeAttributeValue'/>
<ref name='xmlValidateDocumentFinal'/>
<ref name='xmlValidateDtdFinal'/>
+ <ref name='xmlXPathInit'/>
</word>
<word name='Douglas'>
<ref name='xmlURIEscape'/>
@@ -15758,7 +15770,6 @@
<word name='Evaluate'>
<ref name='xmlXPathCompiledEval'/>
<ref name='xmlXPathEval'/>
- <ref name='xmlXPathEvalExpression'/>
<ref name='xmlXPathEvalPredicate'/>
<ref name='xmlXPathEvaluatePredicateResult'/>
<ref name='xmlXPathNodeEval'/>
@@ -16865,9 +16876,6 @@
<word name='Not'>
<ref name='_xmlSchemaElement'/>
</word>
- <word name='NotaNumber'>
- <ref name='xmlXPathIsNaN'/>
- </word>
<word name='Notation'>
<ref name='_xmlNotation'/>
<ref name='xmlParseEntityDecl'/>
@@ -16936,6 +16944,7 @@
<ref name='_xmlSchemaElement'/>
<ref name='_xmlSchemaFacet'/>
<ref name='_xmlSchemaType'/>
+ <ref name='xmlXPtrRangeToFunction'/>
</word>
<word name='Obtain'>
<ref name='xmlTextReaderLocatorBaseURI'/>
@@ -16976,6 +16985,7 @@
<ref name='xmlXPathContextSetCache'/>
</word>
<word name='Otherwise'>
+ <ref name='xmlSplitQName2'/>
<ref name='xmlStreamPush'/>
<ref name='xmlStreamPushAttr'/>
</word>
@@ -17229,8 +17239,6 @@
<ref name='xmlTextReaderGetAttributeNo'/>
<ref name='xmlTextReaderGetAttributeNs'/>
<ref name='xmlTextReaderValue'/>
- <ref name='xmlXPathIsInf'/>
- <ref name='xmlXPathIsNaN'/>
</word>
<word name='Proxy'>
<ref name='xmlNanoFTPScanProxy'/>
@@ -21299,10 +21307,6 @@
<word name='cshema'>
<ref name='XML_SCHEMAS_FINAL_DEFAULT_LIST'/>
</word>
- <word name='ctrio'>
- <ref name='xmlXPathIsInf'/>
- <ref name='xmlXPathIsNaN'/>
- </word>
<word name='ctxt'>
<ref name='xmlExpNewOr'/>
<ref name='xmlExpNewRange'/>
@@ -21763,8 +21767,6 @@
<ref name='xmlInputMatchCallback'/>
<ref name='xmlKeepBlanksDefault'/>
<ref name='xmlOutputMatchCallback'/>
- <ref name='xmlXPathIsInf'/>
- <ref name='xmlXPathIsNaN'/>
</word>
<word name='detected'>
<ref name='CHECK_ERROR'/>
@@ -22023,6 +22025,7 @@
<ref name='xmlNodeListGetRawString'/>
<ref name='xmlPatternMatch'/>
<ref name='xmlRemoveProp'/>
+ <ref name='xmlSplitQName2'/>
<ref name='xmlUTF8Strlen'/>
<ref name='xmlValidateRoot'/>
<ref name='xmlXPathLeading'/>
@@ -22455,6 +22458,7 @@
<ref name='xmlCatalogAdd'/>
<ref name='xmlCatalogAddLocal'/>
<ref name='xmlCatalogRemove'/>
+ <ref name='xmlHashDefaultDeallocator'/>
<ref name='xmlHashUpdateEntry'/>
<ref name='xmlHashUpdateEntry2'/>
<ref name='xmlHashUpdateEntry3'/>
@@ -22607,7 +22611,6 @@
<ref name='xmlNodeGetBase'/>
<ref name='xmlParseBalancedChunkMemoryRecover'/>
<ref name='xmlTextWriterFullEndElement'/>
- <ref name='xmlXPathRoundFunction'/>
</word>
<word name='event'>
<ref name='xmlSchemaSAXPlug'/>
@@ -23390,9 +23393,6 @@
<word name='gYearMonth'>
<ref name='xmlSchemaGetCanonValue'/>
</word>
- <word name='garanteed'>
- <ref name='xmlUTF8Strsize'/>
- </word>
<word name='garbage'>
<ref name='xmlGcMemGet'/>
<ref name='xmlGcMemSetup'/>
@@ -23594,6 +23594,7 @@
<word name='guaranteed'>
<ref name='xmlModuleOpen'/>
<ref name='xmlModuleSymbol'/>
+ <ref name='xmlUTF8Strsize'/>
</word>
<word name='guess'>
<ref name='xmlCleanupParser'/>
@@ -23615,6 +23616,7 @@
<ref name='xmlParseElementContentDecl'/>
<ref name='xmlParsePEReference'/>
<ref name='xmlParserHandlePEReference'/>
+ <ref name='xmlXPtrRangeToFunction'/>
</word>
<word name='handlers'>
<ref name='xlinkSetDefaultHandler'/>
@@ -23844,8 +23846,6 @@
<ref name='xmlSAX2GetSystemId'/>
<ref name='xmlSchemaGetPredefinedType'/>
<ref name='xmlTextReaderNodeType'/>
- <ref name='xmlXPathIsInf'/>
- <ref name='xmlXPathIsNaN'/>
</word>
<word name='human-readable'>
<ref name='_xmlError'/>
@@ -24191,6 +24191,7 @@
<word name='infinity'>
<ref name='xmlXPathCeilingFunction'/>
<ref name='xmlXPathFloorFunction'/>
+ <ref name='xmlXPathRoundFunction'/>
<ref name='xmlXPathStringFunction'/>
</word>
<word name='info'>
@@ -24537,15 +24538,9 @@
<word name='invited'>
<ref name='xmlValidGetValidElements'/>
</word>
- <word name='isinf'>
- <ref name='xmlXPathIsInf'/>
- </word>
<word name='isn'>
<ref name='xmlRegisterCharEncodingHandler'/>
</word>
- <word name='isnan'>
- <ref name='xmlXPathIsNaN'/>
- </word>
<word name='issue'>
<ref name='xmlEncodeEntities'/>
</word>
@@ -24642,6 +24637,7 @@
<ref name='htmlIsAutoClosed'/>
<ref name='htmlParseElement'/>
<ref name='xmlKeepBlanksDefault'/>
+ <ref name='xmlXPathInit'/>
<ref name='xmlXPathOrderDocElems'/>
</word>
<word name='keyword'>
@@ -25058,6 +25054,7 @@
<ref name='xmlSetFeature'/>
<ref name='xmlUTF8Strloc'/>
<ref name='xmlXPtrLocationSetAdd'/>
+ <ref name='xmlXPtrRangeToFunction'/>
</word>
<word name='locations'>
<ref name='_xmlLocationSet'/>
@@ -25733,7 +25730,6 @@
<ref name='xmlSchemaSAXPlug'/>
<ref name='xmlSetBufferAllocationScheme'/>
<ref name='xmlShellPwd'/>
- <ref name='xmlStrncat'/>
<ref name='xmlTextReaderCurrentDoc'/>
<ref name='xmlValidCtxtNormalizeAttributeValue'/>
<ref name='xmlValidNormalizeAttributeValue'/>
@@ -25790,10 +25786,6 @@
<ref name='xmlParseElementChildrenContentDecl'/>
<ref name='xmlParseMarkupDecl'/>
</word>
- <word name='net'>
- <ref name='xmlXPathIsInf'/>
- <ref name='xmlXPathIsNaN'/>
- </word>
<word name='network'>
<ref name='htmlCtxtReadFile'/>
<ref name='htmlReadFile'/>
@@ -25881,6 +25873,7 @@
<word name='non-negative'>
<ref name='xmlC14NDocSaveTo'/>
<ref name='xmlC14NExecute'/>
+ <ref name='xmlTextReaderPreservePattern'/>
</word>
<word name='non-normative'>
<ref name='xmlDetectCharEncoding'/>
@@ -25979,6 +25972,9 @@
<ref name='xmlCheckUTF8'/>
<ref name='xmlLoadExternalEntity'/>
</word>
+ <word name='nothing'>
+ <ref name='xmlXPathInit'/>
+ </word>
<word name='notice'>
<ref name='xmlCleanupParser'/>
<ref name='xmlCleanupThreads'/>
@@ -26088,7 +26084,13 @@
<ref name='xmlParseComment'/>
<ref name='xmlParseMarkupDecl'/>
</word>
- <word name='occured'>
+ <word name='occurences'>
+ <ref name='xmlAutomataNewCountTrans'/>
+ <ref name='xmlAutomataNewCountTrans2'/>
+ <ref name='xmlAutomataNewOnceTrans'/>
+ <ref name='xmlAutomataNewOnceTrans2'/>
+ </word>
+ <word name='occurred'>
<ref name='xmlCtxtGetLastError'/>
<ref name='xmlDictCreate'/>
<ref name='xmlDictCreateSub'/>
@@ -26097,17 +26099,9 @@
<ref name='xmlHashCreateDict'/>
<ref name='xmlListRemoveFirst'/>
<ref name='xmlListRemoveLast'/>
- <ref name='xmlTextReaderErrorFunc'/>
- </word>
- <word name='occurences'>
- <ref name='xmlAutomataNewCountTrans'/>
- <ref name='xmlAutomataNewCountTrans2'/>
- <ref name='xmlAutomataNewOnceTrans'/>
- <ref name='xmlAutomataNewOnceTrans2'/>
- </word>
- <word name='occurred'>
<ref name='xmlMemStrdupLoc'/>
<ref name='xmlMemoryStrdup'/>
+ <ref name='xmlTextReaderErrorFunc'/>
</word>
<word name='occurrence'>
<ref name='xmlStrcasestr'/>
@@ -26782,10 +26776,6 @@
<ref name='xmlModuleOpen'/>
<ref name='xmlModuleSymbol'/>
</word>
- <word name='portable'>
- <ref name='xmlXPathIsInf'/>
- <ref name='xmlXPathIsNaN'/>
- </word>
<word name='pos'>
<ref name='xmlUTF8Strsub'/>
</word>
@@ -27169,10 +27159,6 @@
<word name='prohibited'>
<ref name='XML_SCHEMAS_ATTR_USE_PROHIBITED'/>
</word>
- <word name='projects'>
- <ref name='xmlXPathIsInf'/>
- <ref name='xmlXPathIsNaN'/>
- </word>
<word name='prolog'>
<ref name='xmlParseDocument'/>
</word>
@@ -27467,6 +27453,9 @@
<ref name='INPUT_CHUNK'/>
<ref name='xmlAutomataCompile'/>
</word>
+ <word name='real'>
+ <ref name='xmlXPtrRangeToFunction'/>
+ </word>
<word name='realloc'>
<ref name='_xmlBuffer'/>
<ref name='xmlGcMemGet'/>
@@ -27479,6 +27468,7 @@
</word>
<word name='reallocated'>
<ref name='xmlReallocFunc'/>
+ <ref name='xmlStrcat'/>
<ref name='xmlStrncat'/>
</word>
<word name='really'>
@@ -28902,10 +28892,6 @@
<ref name='xmlDOMWrapAdoptNode'/>
<ref name='xmlDOMWrapCloneNode'/>
</word>
- <word name='sourceforge'>
- <ref name='xmlXPathIsInf'/>
- <ref name='xmlXPathIsNaN'/>
- </word>
<word name='spaces'>
<ref name='_xmlParserCtxt'/>
<ref name='htmlDocContentDumpFormatOutput'/>
@@ -28968,6 +28954,7 @@
<ref name='xmlNodeSetContent'/>
<ref name='xmlNodeSetContentLen'/>
<ref name='xmlTextWriterWriteRawLen'/>
+ <ref name='xmlXPtrRangeToFunction'/>
</word>
<word name='specialized'>
<ref name='_xmlDOMWrapCtxt'/>
@@ -29153,6 +29140,7 @@
<ref name='xmlValidNormalizeAttributeValue'/>
<ref name='xmlValidateDocumentFinal'/>
<ref name='xmlValidateDtdFinal'/>
+ <ref name='xmlXPtrRangeToFunction'/>
</word>
<word name='steps'>
<ref name='xmlNormalizeURIPath'/>
@@ -30070,8 +30058,6 @@
<word name='trio'>
<ref name='WITHOUT_TRIO'/>
<ref name='WITH_TRIO'/>
- <ref name='xmlXPathIsInf'/>
- <ref name='xmlXPathIsNaN'/>
</word>
<word name='troubles'>
<ref name='_xmlParserInput'/>
@@ -31310,6 +31296,7 @@
<ref name='xmlGetNoNsProp'/>
<ref name='xmlGetNsProp'/>
<ref name='xmlGetProp'/>
+ <ref name='xmlHashDefaultDeallocator'/>
<ref name='xmlNodeGetBase'/>
<ref name='xmlNodeGetContent'/>
<ref name='xmlNodeGetLang'/>
@@ -31941,6 +31928,9 @@
<word name='xmlXPathError'>
<ref name='err'/>
</word>
+ <word name='xmlXPathEval'>
+ <ref name='xmlXPathEvalExpression'/>
+ </word>
<word name='xmlXPathEvalPredicate'>
<ref name='xmlXPtrEvalRangePredicate'/>
</word>
@@ -32015,6 +32005,7 @@
<word name='xpath'>
<ref name='xmlShellPrintXPathError'/>
<ref name='xmlShellPrintXPathResult'/>
+ <ref name='xmlXPtrRangeToFunction'/>
</word>
<word name='xpointer'>
<ref name='XINCLUDE_PARSE_XPOINTER'/>
diff --git a/doc/libxml2.xsa b/doc/libxml2.xsa
index 0d4b8fe9..33f38487 100644
--- a/doc/libxml2.xsa
+++ b/doc/libxml2.xsa
@@ -8,73 +8,45 @@
</vendor>
<product id="libxml2">
<name>libxml2</name>
- <version>v2.9.3</version>
- <last-release> Nov 20 2015</last-release>
+ <version>2.9.7</version>
+ <last-release> Nov 02 2017</last-release>
<info-url>http://xmlsoft.org/</info-url>
- <changes> - Security:
- CVE-2015-8242 Buffer overead with HTML parser in push mode (Hugh Davenport),
- CVE-2015-7500 Fix memory access error due to incorrect entities boundaries (Daniel Veillard),
- CVE-2015-7499-2 Detect incoherency on GROW (Daniel Veillard),
- CVE-2015-7499-1 Add xmlHaltParser() to stop the parser (Daniel Veillard),
- CVE-2015-5312 Another entity expansion issue (David Drysdale),
- CVE-2015-7497 Avoid an heap buffer overflow in xmlDictComputeFastQKey (David Drysdale),
- CVE-2015-7498 Avoid processing entities after encoding conversion failures (Daniel Veillard),
- CVE-2015-8035 Fix XZ compression support loop (Daniel Veillard),
- CVE-2015-7942-2 Fix an error in previous Conditional section patch (Daniel Veillard),
- CVE-2015-7942 Another variation of overflow in Conditional sections (Daniel Veillard),
- CVE-2015-1819 Enforce the reader to run in constant memory (Daniel Veillard)
- CVE-2015-7941_2 Cleanup conditional section error handling (Daniel Veillard),
- CVE-2015-7941_1 Stop parsing on entities boundaries errors (Daniel Veillard),
-
- - Documentation:
- Correct spelling of "calling" (Alex Henrie),
- Fix a small error in xmllint --format description (Fabien Degomme),
- Avoid XSS on the search of xmlsoft.org (Daniel Veillard)
+ <changes> - Documentation:
+ xmlcatalog: refresh man page wrt. quering system catalog easily (Jan Pokorný)
- Portability:
- threads: use forward declarations only for glibc (Michael Heimpold),
- Update Win32 configure.js to search for configure.ac (Daniel Veillard)
+ Fix deprecated Travis compiler flag (Nick Wellnhofer),
+ Add declaration for DllMain (J. Peter Mugaas),
+ Fix preprocessor conditional in threads.h (J. Peter Mugaas),
+ Fix pointer comparison warnings on 64-bit Windows (J. Peter Mugaas),
+ Fix macro redefinition warning (J. Peter Mugaas),
+ Default to native threads on MinGW-w64 (Nick Wellnhofer),
+ Simplify Windows IO functions (Nick Wellnhofer),
+ Fix runtest on Windows (Nick Wellnhofer),
+ socklen_t is always int on Windows (Nick Wellnhofer),
+ Don't redefine socket error codes on Windows (Nick Wellnhofer),
+ Fix pointer/int cast warnings on 64-bit Windows (Nick Wellnhofer),
+ Fix Windows compiler warnings in xmlCanonicPath (Nick Wellnhofer)
- Bug Fixes:
- Bug on creating new stream from entity (Daniel Veillard),
- Fix some loop issues embedding NEXT (Daniel Veillard),
- Do not print error context when there is none (Daniel Veillard),
- Avoid extra processing of MarkupDecl when EOF (Hugh Davenport),
- Fix parsing short unclosed comment uninitialized access (Daniel Veillard),
- Add missing Null check in xmlParseExternalEntityPrivate (Gaurav Gupta),
- Fix a bug in CData error handling in the push parser (Daniel Veillard),
- Fix a bug on name parsing at the end of current input buffer (Daniel Veillard),
- Fix the spurious ID already defined error (Daniel Veillard),
- Fix previous change to node sort order (Nick Wellnhofer),
- Fix a self assignment issue raised by clang (Scott Graham),
- Fail parsing early on if encoding conversion failed (Daniel Veillard),
- Do not process encoding values if the declaration if broken (Daniel Veillard),
- Silence clang's -Wunknown-attribute (Michael Catanzaro),
- xmlMemUsed is not thread-safe (Martin von Gagern),
- Fix support for except in nameclasses (Daniel Veillard),
- Fix order of root nodes (Nick Wellnhofer),
- Allow attributes on descendant-or-self axis (Nick Wellnhofer),
- Fix the fix to Windows locking (Steve Nairn),
- Fix timsort invariant loop re: Envisage article (Christopher Swenson),
- Don't add IDs in xmlSetTreeDoc (Nick Wellnhofer),
- Account for ID attributes in xmlSetTreeDoc (Nick Wellnhofer),
- Remove various unused value assignments (Philip Withnall),
- Fix missing entities after CVE-2014-3660 fix (Daniel Veillard),
- Revert "Missing initialization for the catalog module" (Daniel Veillard)
+ xmlcatalog: restore ability to query system catalog easily (Jan Pokorný),
+ Fix comparison of nodesets to strings (Nick Wellnhofer)
- Improvements:
- Reuse xmlHaltParser() where it makes sense (Daniel Veillard),
- xmlStopParser reset errNo (Daniel Veillard),
- Reenable xz support by default (Daniel Veillard),
- Recover unescaped less-than character in HTML recovery parsing (Daniel Veillard),
- Allow HTML serializer to output HTML5 DOCTYPE (Shaun McCance),
- Regression test for bug #695699 (Nick Wellnhofer),
- Add a couple of XPath tests (Nick Wellnhofer),
- Add Python 3 rpm subpackage (Tomas Radej),
- libxml2-config.cmake.in: update include directories (Samuel Martin),
- Adding example from bugs 738805 to regression tests (Daniel Veillard)
-
- - Cleanups:
+ Add Makefile rules to rebuild HTML man pages (Nick Wellnhofer),
+ Fix mixed decls and code in timsort.h (Nick Wellnhofer),
+ Rework handling of return values in thread tests (Nick Wellnhofer),
+ Fix unused variable warnings in testrecurse (Nick Wellnhofer),
+ Fix -Wimplicit-fallthrough warnings (J. Peter Mugaas),
+ Upgrade timsort.h to latest revision (Nick Wellnhofer),
+ Increase warning level to /W3 under MSVC (Nick Wellnhofer),
+ Fix a couple of warnings in dict.c and threads.c (Nick Wellnhofer),
+ Update .gitignore for Windows (Nick Wellnhofer),
+ Fix unused variable warnings in nanohttp.c (Nick Wellnhofer),
+ Fix the Windows header mess (Nick Wellnhofer),
+ Don't include winsock2.h in xmllint.c (Nick Wellnhofer),
+ Remove generated file python/setup.py from version control (Nick Wellnhofer),
+ Use __linux__ macro in generated code (Nick Wellnhofer)
</changes>
diff --git a/doc/news.html b/doc/news.html
index 0c692c8b..65839ad4 100644
--- a/doc/news.html
+++ b/doc/news.html
@@ -8,7 +8,237 @@ H2 {font-family: Verdana,Arial,Helvetica}
H3 {font-family: Verdana,Arial,Helvetica}
A:link, A:visited, A:active { text-decoration: underline }
</style><title>Releases</title></head><body bgcolor="#8b7765" text="#000000" link="#a06060" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1>The XML C parser and toolkit of Gnome</h1><h2>Releases</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Main Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a href="index.html">Home</a></li><li><a href="html/index.html">Reference Manual</a></li><li><a href="intro.html">Introduction</a></li><li><a href="FAQ.html">FAQ</a></li><li><a href="docs.html" style="font-weight:bold">Developer Menu</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="news.html">Releases</a></li><li><a href="XMLinfo.html">XML</a></li><li><a href="XSLT.html">XSLT</a></li><li><a href="xmldtd.html">Validation &amp; DTDs</a></li><li><a href="encoding.html">Encodings support</a></li><li><a href="catalog.html">Catalog support</a></li><li><a href="namespaces.html">Namespaces</a></li><li><a href="contribs.html">Contributions</a></li><li><a href="examples/index.html" style="font-weight:bold">Code Examples</a></li><li><a href="html/index.html" style="font-weight:bold">API Menu</a></li><li><a href="guidelines.html">XML Guidelines</a></li><li><a href="ChangeLog.html">Recent Changes</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://opencsw.org/packages/libxml2">Solaris binaries</a></li><li><a href="http://www.explain.com.au/oss/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://lxml.de/">lxml Python bindings</a></li><li><a href="http://cpan.uwinnipeg.ca/dist/XML-LibXML">Perl bindings</a></li><li><a href="http://libxmlplusplus.sourceforge.net/">C++ bindings</a></li><li><a href="http://www.zend.com/php5/articles/php5-xmlphp.php#Heading4">PHP bindings</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://libxml.rubyforge.org/">Ruby bindings</a></li><li><a href="http://tclxml.sourceforge.net/">Tcl bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><p>The <a href="ChangeLog.html">change log</a> describes the recents commits
-to the <a href="http://git.gnome.org/browse/libxml2/">GIT</a> code base.</p><p>Here is the list of public releases:</p><h3>2.9.4: May 23 2016</h3><ul>
+to the <a href="http://git.gnome.org/browse/libxml2/">GIT</a> code base.</p><p>Here is the list of public releases:</p><h3>v2.9.8: Mar 05 2018</h3><ul>
+ <li>Portability:<br />
+ python: remove single use of _PyVerify_fd (Patrick Welche),<br />
+ Build more test executables on Windows/MSVC (Nick Wellnhofer),<br />
+ Stop including ansidecl.h (Nick Wellnhofer),<br />
+ Fix libz and liblzma detection (Nick Wellnhofer),<br />
+ Revert "Compile testapi with -Wno-unused-function" (Nick Wellnhofer)<br />
+ </li>
+
+ <li>Bug Fixes:<br />
+ Fix xmlParserEntityCheck (Nick Wellnhofer),<br />
+ Halt parser in case of encoding error (Nick Wellnhofer),<br />
+ Clear entity content in case of errors (Nick Wellnhofer),<br />
+ Change calls to xmlCharEncInput to set flush false when not final call. Having flush incorrectly set to true causes errors for ICU. (Joel Hockey),<br />
+ Fix buffer over-read in xmlParseNCNameComplex (Nick Wellnhofer),<br />
+ Fix ICU library filenames on Windows/MSVC (Nick Wellnhofer),<br />
+ Fix xmlXPathIsNaN broken by recent commit (Nick Wellnhofer),<br />
+ Fix -Wenum-compare warnings (Nick Wellnhofer),<br />
+ Fix callback signature in testapi.c (Nick Wellnhofer),<br />
+ Fix unused parameter warning without ICU (Nick Wellnhofer),<br />
+ Fix IO callback signatures (Nick Wellnhofer),<br />
+ Fix misc callback signatures (Nick Wellnhofer),<br />
+ Fix list callback signatures (Nick Wellnhofer),<br />
+ Fix hash callback signatures (Nick Wellnhofer),<br />
+ Refactor name and type signature for xmlNop (Vlad Tsyrklevich),<br />
+ Fixed ICU to set flush correctly and provide pivot buffer. (Joel Hockey),<br />
+ Skip EBCDIC tests if EBCDIC isn't supported (Nick Wellnhofer)<br />
+ </li>
+
+ <li>Improvements:<br />
+ Disable pointer-overflow UBSan checks under Travis (Nick Wellnhofer),<br />
+ Improve handling of context input_id (Daniel Veillard),<br />
+ Add resource file to Windows DLL (ccpaging),<br />
+ Run Travis tests with -Werror (Nick Wellnhofer),<br />
+ Build with "-Wall -Wextra" (Nick Wellnhofer),<br />
+ Fix -Wtautological-pointer-compare warnings (Nick Wellnhofer),<br />
+ Remove unused AC_CHECKs (Nick Wellnhofer),<br />
+ Update information about contributing (Nick Wellnhofer),<br />
+ Fix -Wmisleading-indentation warnings (Nick Wellnhofer),<br />
+ Don't touch CFLAGS in configure.ac (Nick Wellnhofer),<br />
+ Ignore function pointer cast warnings (Nick Wellnhofer),<br />
+ Simplify XPath NaN, inf and -0 handling (Nick Wellnhofer),<br />
+ Introduce xmlPosixStrdup and update xmlMemStrdup (Nick Wellnhofer),<br />
+ Add test for ICU flush and pivot buffer (Nick Wellnhofer),<br />
+ Compile testapi with -Wno-unused-function (Nick Wellnhofer)<br />
+ </li>
+</ul><h3>2.9.7: Nov 02 2017</h3><ul>
+ <li>Documentation:<br />
+ xmlcatalog: refresh man page wrt. quering system catalog easily (Jan Pokorný)<br />
+ </li>
+
+ <li>Portability:<br />
+ Fix deprecated Travis compiler flag (Nick Wellnhofer),<br />
+ Add declaration for DllMain (J. Peter Mugaas),<br />
+ Fix preprocessor conditional in threads.h (J. Peter Mugaas),<br />
+ Fix pointer comparison warnings on 64-bit Windows (J. Peter Mugaas),<br />
+ Fix macro redefinition warning (J. Peter Mugaas),<br />
+ Default to native threads on MinGW-w64 (Nick Wellnhofer),<br />
+ Simplify Windows IO functions (Nick Wellnhofer),<br />
+ Fix runtest on Windows (Nick Wellnhofer),<br />
+ socklen_t is always int on Windows (Nick Wellnhofer),<br />
+ Don't redefine socket error codes on Windows (Nick Wellnhofer),<br />
+ Fix pointer/int cast warnings on 64-bit Windows (Nick Wellnhofer),<br />
+ Fix Windows compiler warnings in xmlCanonicPath (Nick Wellnhofer)<br />
+ </li>
+
+ <li>Bug Fixes:<br />
+ xmlcatalog: restore ability to query system catalog easily (Jan Pokorný),<br />
+ Fix comparison of nodesets to strings (Nick Wellnhofer)<br />
+ </li>
+
+ <li>Improvements:<br />
+ Add Makefile rules to rebuild HTML man pages (Nick Wellnhofer),<br />
+ Fix mixed decls and code in timsort.h (Nick Wellnhofer),<br />
+ Rework handling of return values in thread tests (Nick Wellnhofer),<br />
+ Fix unused variable warnings in testrecurse (Nick Wellnhofer),<br />
+ Fix -Wimplicit-fallthrough warnings (J. Peter Mugaas),<br />
+ Upgrade timsort.h to latest revision (Nick Wellnhofer),<br />
+ Increase warning level to /W3 under MSVC (Nick Wellnhofer),<br />
+ Fix a couple of warnings in dict.c and threads.c (Nick Wellnhofer),<br />
+ Update .gitignore for Windows (Nick Wellnhofer),<br />
+ Fix unused variable warnings in nanohttp.c (Nick Wellnhofer),<br />
+ Fix the Windows header mess (Nick Wellnhofer),<br />
+ Don't include winsock2.h in xmllint.c (Nick Wellnhofer),<br />
+ Remove generated file python/setup.py from version control (Nick Wellnhofer),<br />
+ Use __linux__ macro in generated code (Nick Wellnhofer)<br />
+ </li>
+
+</ul><h3>v2.9.6: Oct 06 2017</h3><ul>
+ <li>Portability:<br />
+ Change preprocessor OS tests to __linux__ (Nick Wellnhofer)<br />
+ </li>
+
+ <li>Bug Fixes:<br />
+ Fix XPath stack frame logic (Nick Wellnhofer),<br />
+ Report undefined XPath variable error message (Nick Wellnhofer),<br />
+ Fix regression with librsvg (Nick Wellnhofer),<br />
+ Handle more invalid entity values in recovery mode (Nick Wellnhofer),<br />
+ Fix structured validation errors (Nick Wellnhofer),<br />
+ Fix memory leak in LZMA decompressor (Nick Wellnhofer),<br />
+ Set memory limit for LZMA decompression (Nick Wellnhofer),<br />
+ Handle illegal entity values in recovery mode (Nick Wellnhofer),<br />
+ Fix debug dump of streaming XPath expressions (Nick Wellnhofer),<br />
+ Fix memory leak in nanoftp (Nick Wellnhofer),<br />
+ Fix memory leaks in SAX1 parser (Nick Wellnhofer)<br />
+ </li>
+</ul><h3>v2.9.5: Sep 04 2017</h3><ul>
+
+ <li>Security:<br />
+ Detect infinite recursion in parameter entities (Nick Wellnhofer),<br />
+ Fix handling of parameter-entity references (Nick Wellnhofer),<br />
+ Disallow namespace nodes in XPointer ranges (Nick Wellnhofer),<br />
+ Fix XPointer paths beginning with range-to (Nick Wellnhofer)<br />
+ </li>
+
+ <li>Documentation:<br />
+ Documentation fixes (Nick Wellnhofer),<br />
+ Spelling and grammar fixes (Nick Wellnhofer)<br />
+ </li>
+
+ <li>Portability:<br />
+ Adding README.zOS to list of extra files for the release (Daniel Veillard),<br />
+ Description of work needed to compile on zOS (Stéphane Michaut),<br />
+ Porting libxml2 on zOS encoding of code (Stéphane Michaut),<br />
+ small changes for OS/400 (Patrick Monnerat),<br />
+ relaxng.c, xmlschemas.c: Fix build on pre-C99 compilers (Chun-wei Fan)<br />
+ </li>
+
+ <li>Bug Fixes:<br />
+ Problem resolving relative URIs (Daniel Veillard),<br />
+ Fix unwanted warnings when switching encodings (Nick Wellnhofer),<br />
+ Fix signature of xmlSchemaAugmentImportedIDC (Daniel Veillard),<br />
+ Heap-buffer-overflow read of size 1 in xmlFAParsePosCharGroup (David Kilzer),<br />
+ Fix NULL pointer deref in xmlFAParseCharClassEsc (Nick Wellnhofer),<br />
+ Fix infinite loops with push parser in recovery mode (Nick Wellnhofer),<br />
+ Send xmllint usage error to stderr (Nick Wellnhofer),<br />
+ Fix NULL deref in xmlParseExternalEntityPrivate (Nick Wellnhofer),<br />
+ Make sure not to call IS_BLANK_CH when parsing the DTD (Nick Wellnhofer),<br />
+ Fix xmlHaltParser (Nick Wellnhofer),<br />
+ Fix pathological performance when outputting charrefs (Nick Wellnhofer),<br />
+ Fix invalid-source-encoding warnings in testWriter.c (Nick Wellnhofer),<br />
+ Fix duplicate SAX callbacks for entity content (David Kilzer),<br />
+ Treat URIs with scheme as absolute in C14N (Nick Wellnhofer),<br />
+ Fix copy-paste errors in error messages (Nick Wellnhofer),<br />
+ Fix sanity check in htmlParseNameComplex (Nick Wellnhofer),<br />
+ Fix potential infinite loop in xmlStringLenDecodeEntities (Nick Wellnhofer),<br />
+ Reset parser input pointers on encoding failure (Nick Wellnhofer),<br />
+ Fix memory leak in xmlParseEntityDecl error path (Nick Wellnhofer),<br />
+ Fix xmlBuildRelativeURI for URIs starting with './' (Nick Wellnhofer),<br />
+ Fix type confusion in xmlValidateOneNamespace (Nick Wellnhofer),<br />
+ Fix memory leak in xmlStringLenGetNodeList (Nick Wellnhofer),<br />
+ Fix NULL pointer deref in xmlDumpElementContent (Daniel Veillard),<br />
+ Fix memory leak in xmlBufAttrSerializeTxtContent (Nick Wellnhofer),<br />
+ Stop parser on unsupported encodings (Nick Wellnhofer),<br />
+ Check for integer overflow in memory debug code (Nick Wellnhofer),<br />
+ Fix buffer size checks in xmlSnprintfElementContent (Nick Wellnhofer),<br />
+ Avoid reparsing in xmlParseStartTag2 (Nick Wellnhofer),<br />
+ Fix undefined behavior in xmlRegExecPushStringInternal (Nick Wellnhofer),<br />
+ Check XPath exponents for overflow (Nick Wellnhofer),<br />
+ Check for overflow in xmlXPathIsPositionalPredicate (Nick Wellnhofer),<br />
+ Fix spurious error message (Nick Wellnhofer),<br />
+ Fix memory leak in xmlCanonicPath (Nick Wellnhofer),<br />
+ Fix memory leak in xmlXPathCompareNodeSetValue (Nick Wellnhofer),<br />
+ Fix memory leak in pattern error path (Nick Wellnhofer),<br />
+ Fix memory leak in parser error path (Nick Wellnhofer),<br />
+ Fix memory leaks in XPointer error paths (Nick Wellnhofer),<br />
+ Fix memory leak in xmlXPathNodeSetMergeAndClear (Nick Wellnhofer),<br />
+ Fix memory leak in XPath filter optimizations (Nick Wellnhofer),<br />
+ Fix memory leaks in XPath error paths (Nick Wellnhofer),<br />
+ Do not leak the new CData node if adding fails (David Tardon),<br />
+ Prevent unwanted external entity reference (Neel Mehta),<br />
+ Increase buffer space for port in HTTP redirect support (Daniel Veillard),<br />
+ Fix more NULL pointer derefs in xpointer.c (Nick Wellnhofer),<br />
+ Avoid function/data pointer conversion in xpath.c (Nick Wellnhofer),<br />
+ Fix format string warnings (Nick Wellnhofer),<br />
+ Disallow namespace nodes in XPointer points (Nick Wellnhofer),<br />
+ Fix comparison with root node in xmlXPathCmpNodes (Nick Wellnhofer),<br />
+ Fix attribute decoding during XML schema validation (Alex Henrie),<br />
+ Fix NULL pointer deref in XPointer range-to (Nick Wellnhofer)<br />
+ </li>
+
+ <li>Improvements:<br />
+ Updating the spec file to reflect Fedora 24 (Daniel Veillard),<br />
+ Add const in five places to move 1 KiB to .rdata (Bruce Dawson),<br />
+ Fix missing part of comment for function xmlXPathEvalExpression() (Daniel Veillard),<br />
+ Get rid of "blanks wrapper" for parameter entities (Nick Wellnhofer),<br />
+ Simplify handling of parameter entity references (Nick Wellnhofer),<br />
+ Deduplicate code in encoding.c (Nick Wellnhofer),<br />
+ Make HTML parser functions take const pointers (Nick Wellnhofer),<br />
+ Build test programs only when needed (Nick Wellnhofer),<br />
+ Fix doc/examples/index.py (Nick Wellnhofer),<br />
+ Fix compiler warnings in threads.c (Nick Wellnhofer),<br />
+ Fix empty-body warning in nanohttp.c (Nick Wellnhofer),<br />
+ Fix cast-align warnings (Nick Wellnhofer),<br />
+ Fix unused-parameter warnings (Nick Wellnhofer),<br />
+ Rework entity boundary checks (Nick Wellnhofer),<br />
+ Don't switch encoding for internal parameter entities (Nick Wellnhofer),<br />
+ Merge duplicate code paths handling PE references (Nick Wellnhofer),<br />
+ Test SAX2 callbacks with entity substitution (Nick Wellnhofer),<br />
+ Support catalog and threads tests under --without-sax1 (Nick Wellnhofer),<br />
+ Misc fixes for 'make tests' (Nick Wellnhofer),<br />
+ Initialize keepBlanks in HTML parser (Nick Wellnhofer),<br />
+ Add test cases for bug 758518 (David Kilzer),<br />
+ Fix compiler warning in htmlParseElementInternal (Nick Wellnhofer),<br />
+ Remove useless check in xmlParseAttributeListDecl (Nick Wellnhofer),<br />
+ Allow zero sized memory input buffers (Nick Wellnhofer),<br />
+ Add TODO comment in xmlSwitchEncoding (Nick Wellnhofer),<br />
+ Check for integer overflow in xmlXPathFormatNumber (Nick Wellnhofer),<br />
+ Make Travis print UBSan stacktraces (Nick Wellnhofer),<br />
+ Add .travis.yml (Nick Wellnhofer),<br />
+ Fix expected error output in Python tests (Nick Wellnhofer),<br />
+ Simplify control flow in xmlParseStartTag2 (Nick Wellnhofer),<br />
+ Disable LeakSanitizer when running API tests (Nick Wellnhofer),<br />
+ Avoid out-of-bound array access in API tests (Nick Wellnhofer),<br />
+ Avoid spurious UBSan errors in parser.c (Nick Wellnhofer),<br />
+ Parse small XPath numbers more accurately (Nick Wellnhofer),<br />
+ Rework XPath rounding functions (Nick Wellnhofer),<br />
+ Fix white space in test output (Nick Wellnhofer),<br />
+ Fix axis traversal from attribute and namespace nodes (Nick Wellnhofer),<br />
+ Check for trailing characters in XPath expressions earlier (Nick Wellnhofer),<br />
+ Rework final handling of XPath results (Nick Wellnhofer),<br />
+ Make xmlXPathEvalExpression call xmlXPathEval (Nick Wellnhofer),<br />
+ Remove unused variables (Nick Wellnhofer),<br />
+ Don't print generic error messages in XPath tests (Nick Wellnhofer)<br />
+ </li>
+
+ <li>Cleanups:<br />
+ Fix a couple of misleading indentation errors (Daniel Veillard),<br />
+ Remove unnecessary calls to xmlPopInput (Nick Wellnhofer)<br />
+ </li>
+</ul><h3>2.9.4: May 23 2016</h3><ul>
<li>Security:<br />
More format string warnings with possible format string vulnerability (David Kilzer),<br />
Avoid building recursive entities (Daniel Veillard),<br />
@@ -1368,7 +1598,7 @@ Gansterer),<br />
Hendricks), aliasing bug exposed by gcc4 on s390, xmlTextReaderNext bug
(Rob Richards), Schemas decimal type fixes (William Brack),
xmlByteConsumed static buffer (Ben Maurer).</li>
- <li>improvement: speedup parsing comments and DTDs, dictionnary support for
+ <li>improvement: speedup parsing comments and DTDs, dictionary support for
hash tables, Schemas Identity constraints (Kasimier), streaming XPath
subset, xmlTextReaderReadString added (Bjorn Reese), Schemas canonical
values handling (Kasimier), add xmlTextReaderByteConsumed (Aron
@@ -1558,7 +1788,7 @@ Gansterer),<br />
URI on SYSTEM lookup failure, XInclude parse flags inheritance (William),
XInclude and XPointer fixes for entities (William), XML parser bug
reported by Holger Rauch, nanohttp fd leak (William), regexps char
- groups '-' handling (William), dictionnary reference counting problems,
+ groups '-' handling (William), dictionary reference counting problems,
do not close stderr.</li>
<li>performance patches from Petr Pajas</li>
<li>Documentation fixes: XML_CATALOG_FILES in man pages (Mike Hommey)</li>
@@ -1613,14 +1843,14 @@ Gansterer),<br />
Fleck), doc (Sven Zimmerman), I/O example.</li>
<li>Python bindings: fixes (William), enum support (Stéphane Bidoul),
structured error reporting (Stéphane Bidoul)</li>
- <li>XInclude: various fixes for conformance, problem related to dictionnary
+ <li>XInclude: various fixes for conformance, problem related to dictionary
references (William &amp; me), recursion (William)</li>
<li>xmlWriter: indentation (Lucas Brasilino), memory leaks (Alfred
Mickautsch),</li>
<li>xmlSchemas: normalizedString datatype (John Belmonte)</li>
<li>code cleanup for strings functions (William)</li>
<li>Windows: compiler patches (Mark Vakoc)</li>
- <li>Parser optimizations, a few new XPath and dictionnary APIs for future
+ <li>Parser optimizations, a few new XPath and dictionary APIs for future
XSLT optimizations.</li>
</ul><h3>2.6.4: Dec 24 2003</h3><ul>
<li>Windows build fixes (Igor Zlatkovic)</li>
@@ -1705,8 +1935,8 @@ Gansterer),<br />
of change</li>
<li>Increased the library modularity, far more options can be stripped out,
a --with-minimum configuration will weight around 160KBytes</li>
- <li>Use per parser and per document dictionnary, allocate names and small
- text nodes from the dictionnary</li>
+ <li>Use per parser and per document dictionary, allocate names and small
+ text nodes from the dictionary</li>
<li>Switch to a SAX2 like parser rewrote most of the XML parser core,
provides namespace resolution and defaulted attributes, minimize memory
allocations and copies, namespace checking and specific error handling,
@@ -1753,7 +1983,7 @@ Gansterer),<br />
(William), xmlCleanupParser (Marc Liyanage), CDATA output (William), HTTP
error handling.</li>
<li>xmllint options: --dtdvalidfpi for Tobias Reif, --sax1 for compat
- testing, --nodict for building without tree dictionnary, --nocdata to
+ testing, --nodict for building without tree dictionary, --nocdata to
replace CDATA by text, --nsclean to remove surperfluous namespace
declarations</li>
<li>added xml2-config --libtool-libs option from Kevin P. Fleming</li>
diff --git a/doc/symbols.xml b/doc/symbols.xml
index ec275e77..99aea710 100644
--- a/doc/symbols.xml
+++ b/doc/symbols.xml
@@ -1765,4 +1765,7 @@
<symbol file="xpath">xmlXPathNodeEval</symbol>
<symbol file="xpath">xmlXPathSetContextNode</symbol>
</release>
+ <release version="2.9.8">
+ <symbol file="hash">xmlHashDefaultDeallocator</symbol>
+ </release>
</symbols>
diff --git a/doc/xml.html b/doc/xml.html
index d035934b..4059fb76 100644
--- a/doc/xml.html
+++ b/doc/xml.html
@@ -532,7 +532,7 @@ look at reports there regularly and it's good to have a reminder when a bug
is still open. Be sure to specify that the bug is for the package libxml2.</p>
<p>For small problems you can try to get help on IRC, the #xml channel on
-irc.gnome.org (port 6667) usually have a few person subscribed which may help
+irc.gnome.org (port 6667) usually has a few people subscribed which may help
(but there is no guarantee and if a real issue is raised it should go on the
mailing-list for archival).</p>
@@ -709,6 +709,244 @@ to the <a href="http://git.gnome.org/browse/libxml2/">GIT</a> code base.</p>
<p>Here is the list of public releases:</p>
+<h3>v2.9.8: Mar 05 2018</h3>
+<ul>
+ <li>Portability:<br/>
+ python: remove single use of _PyVerify_fd (Patrick Welche),<br/>
+ Build more test executables on Windows/MSVC (Nick Wellnhofer),<br/>
+ Stop including ansidecl.h (Nick Wellnhofer),<br/>
+ Fix libz and liblzma detection (Nick Wellnhofer),<br/>
+ Revert "Compile testapi with -Wno-unused-function" (Nick Wellnhofer)<br/>
+ </li>
+
+ <li>Bug Fixes:<br/>
+ Fix xmlParserEntityCheck (Nick Wellnhofer),<br/>
+ Halt parser in case of encoding error (Nick Wellnhofer),<br/>
+ Clear entity content in case of errors (Nick Wellnhofer),<br/>
+ Change calls to xmlCharEncInput to set flush false when not final call. Having flush incorrectly set to true causes errors for ICU. (Joel Hockey),<br/>
+ Fix buffer over-read in xmlParseNCNameComplex (Nick Wellnhofer),<br/>
+ Fix ICU library filenames on Windows/MSVC (Nick Wellnhofer),<br/>
+ Fix xmlXPathIsNaN broken by recent commit (Nick Wellnhofer),<br/>
+ Fix -Wenum-compare warnings (Nick Wellnhofer),<br/>
+ Fix callback signature in testapi.c (Nick Wellnhofer),<br/>
+ Fix unused parameter warning without ICU (Nick Wellnhofer),<br/>
+ Fix IO callback signatures (Nick Wellnhofer),<br/>
+ Fix misc callback signatures (Nick Wellnhofer),<br/>
+ Fix list callback signatures (Nick Wellnhofer),<br/>
+ Fix hash callback signatures (Nick Wellnhofer),<br/>
+ Refactor name and type signature for xmlNop (Vlad Tsyrklevich),<br/>
+ Fixed ICU to set flush correctly and provide pivot buffer. (Joel Hockey),<br/>
+ Skip EBCDIC tests if EBCDIC isn't supported (Nick Wellnhofer)<br/>
+ </li>
+
+ <li>Improvements:<br/>
+ Disable pointer-overflow UBSan checks under Travis (Nick Wellnhofer),<br/>
+ Improve handling of context input_id (Daniel Veillard),<br/>
+ Add resource file to Windows DLL (ccpaging),<br/>
+ Run Travis tests with -Werror (Nick Wellnhofer),<br/>
+ Build with "-Wall -Wextra" (Nick Wellnhofer),<br/>
+ Fix -Wtautological-pointer-compare warnings (Nick Wellnhofer),<br/>
+ Remove unused AC_CHECKs (Nick Wellnhofer),<br/>
+ Update information about contributing (Nick Wellnhofer),<br/>
+ Fix -Wmisleading-indentation warnings (Nick Wellnhofer),<br/>
+ Don't touch CFLAGS in configure.ac (Nick Wellnhofer),<br/>
+ Ignore function pointer cast warnings (Nick Wellnhofer),<br/>
+ Simplify XPath NaN, inf and -0 handling (Nick Wellnhofer),<br/>
+ Introduce xmlPosixStrdup and update xmlMemStrdup (Nick Wellnhofer),<br/>
+ Add test for ICU flush and pivot buffer (Nick Wellnhofer),<br/>
+ Compile testapi with -Wno-unused-function (Nick Wellnhofer)<br/>
+ </li>
+</ul>
+<h3>2.9.7: Nov 02 2017</h3>
+<ul>
+ <li>Documentation:<br/>
+ xmlcatalog: refresh man page wrt. quering system catalog easily (Jan Pokorný)<br/>
+ </li>
+
+ <li>Portability:<br/>
+ Fix deprecated Travis compiler flag (Nick Wellnhofer),<br/>
+ Add declaration for DllMain (J. Peter Mugaas),<br/>
+ Fix preprocessor conditional in threads.h (J. Peter Mugaas),<br/>
+ Fix pointer comparison warnings on 64-bit Windows (J. Peter Mugaas),<br/>
+ Fix macro redefinition warning (J. Peter Mugaas),<br/>
+ Default to native threads on MinGW-w64 (Nick Wellnhofer),<br/>
+ Simplify Windows IO functions (Nick Wellnhofer),<br/>
+ Fix runtest on Windows (Nick Wellnhofer),<br/>
+ socklen_t is always int on Windows (Nick Wellnhofer),<br/>
+ Don't redefine socket error codes on Windows (Nick Wellnhofer),<br/>
+ Fix pointer/int cast warnings on 64-bit Windows (Nick Wellnhofer),<br/>
+ Fix Windows compiler warnings in xmlCanonicPath (Nick Wellnhofer)<br/>
+ </li>
+
+ <li>Bug Fixes:<br/>
+ xmlcatalog: restore ability to query system catalog easily (Jan Pokorný),<br/>
+ Fix comparison of nodesets to strings (Nick Wellnhofer)<br/>
+ </li>
+
+ <li>Improvements:<br/>
+ Add Makefile rules to rebuild HTML man pages (Nick Wellnhofer),<br/>
+ Fix mixed decls and code in timsort.h (Nick Wellnhofer),<br/>
+ Rework handling of return values in thread tests (Nick Wellnhofer),<br/>
+ Fix unused variable warnings in testrecurse (Nick Wellnhofer),<br/>
+ Fix -Wimplicit-fallthrough warnings (J. Peter Mugaas),<br/>
+ Upgrade timsort.h to latest revision (Nick Wellnhofer),<br/>
+ Increase warning level to /W3 under MSVC (Nick Wellnhofer),<br/>
+ Fix a couple of warnings in dict.c and threads.c (Nick Wellnhofer),<br/>
+ Update .gitignore for Windows (Nick Wellnhofer),<br/>
+ Fix unused variable warnings in nanohttp.c (Nick Wellnhofer),<br/>
+ Fix the Windows header mess (Nick Wellnhofer),<br/>
+ Don't include winsock2.h in xmllint.c (Nick Wellnhofer),<br/>
+ Remove generated file python/setup.py from version control (Nick Wellnhofer),<br/>
+ Use __linux__ macro in generated code (Nick Wellnhofer)<br/>
+ </li>
+
+</ul>
+<h3>v2.9.6: Oct 06 2017</h3>
+<ul>
+ <li>Portability:<br/>
+ Change preprocessor OS tests to __linux__ (Nick Wellnhofer)<br/>
+ </li>
+
+ <li>Bug Fixes:<br/>
+ Fix XPath stack frame logic (Nick Wellnhofer),<br/>
+ Report undefined XPath variable error message (Nick Wellnhofer),<br/>
+ Fix regression with librsvg (Nick Wellnhofer),<br/>
+ Handle more invalid entity values in recovery mode (Nick Wellnhofer),<br/>
+ Fix structured validation errors (Nick Wellnhofer),<br/>
+ Fix memory leak in LZMA decompressor (Nick Wellnhofer),<br/>
+ Set memory limit for LZMA decompression (Nick Wellnhofer),<br/>
+ Handle illegal entity values in recovery mode (Nick Wellnhofer),<br/>
+ Fix debug dump of streaming XPath expressions (Nick Wellnhofer),<br/>
+ Fix memory leak in nanoftp (Nick Wellnhofer),<br/>
+ Fix memory leaks in SAX1 parser (Nick Wellnhofer)<br/>
+ </li>
+</ul>
+<h3>v2.9.5: Sep 04 2017</h3>
+<ul>
+
+ <li>Security:<br/>
+ Detect infinite recursion in parameter entities (Nick Wellnhofer),<br/>
+ Fix handling of parameter-entity references (Nick Wellnhofer),<br/>
+ Disallow namespace nodes in XPointer ranges (Nick Wellnhofer),<br/>
+ Fix XPointer paths beginning with range-to (Nick Wellnhofer)<br/>
+ </li>
+
+ <li>Documentation:<br/>
+ Documentation fixes (Nick Wellnhofer),<br/>
+ Spelling and grammar fixes (Nick Wellnhofer)<br/>
+ </li>
+
+ <li>Portability:<br/>
+ Adding README.zOS to list of extra files for the release (Daniel Veillard),<br/>
+ Description of work needed to compile on zOS (Stéphane Michaut),<br/>
+ Porting libxml2 on zOS encoding of code (Stéphane Michaut),<br/>
+ small changes for OS/400 (Patrick Monnerat),<br/>
+ relaxng.c, xmlschemas.c: Fix build on pre-C99 compilers (Chun-wei Fan)<br/>
+ </li>
+
+ <li>Bug Fixes:<br/>
+ Problem resolving relative URIs (Daniel Veillard),<br/>
+ Fix unwanted warnings when switching encodings (Nick Wellnhofer),<br/>
+ Fix signature of xmlSchemaAugmentImportedIDC (Daniel Veillard),<br/>
+ Heap-buffer-overflow read of size 1 in xmlFAParsePosCharGroup (David Kilzer),<br/>
+ Fix NULL pointer deref in xmlFAParseCharClassEsc (Nick Wellnhofer),<br/>
+ Fix infinite loops with push parser in recovery mode (Nick Wellnhofer),<br/>
+ Send xmllint usage error to stderr (Nick Wellnhofer),<br/>
+ Fix NULL deref in xmlParseExternalEntityPrivate (Nick Wellnhofer),<br/>
+ Make sure not to call IS_BLANK_CH when parsing the DTD (Nick Wellnhofer),<br/>
+ Fix xmlHaltParser (Nick Wellnhofer),<br/>
+ Fix pathological performance when outputting charrefs (Nick Wellnhofer),<br/>
+ Fix invalid-source-encoding warnings in testWriter.c (Nick Wellnhofer),<br/>
+ Fix duplicate SAX callbacks for entity content (David Kilzer),<br/>
+ Treat URIs with scheme as absolute in C14N (Nick Wellnhofer),<br/>
+ Fix copy-paste errors in error messages (Nick Wellnhofer),<br/>
+ Fix sanity check in htmlParseNameComplex (Nick Wellnhofer),<br/>
+ Fix potential infinite loop in xmlStringLenDecodeEntities (Nick Wellnhofer),<br/>
+ Reset parser input pointers on encoding failure (Nick Wellnhofer),<br/>
+ Fix memory leak in xmlParseEntityDecl error path (Nick Wellnhofer),<br/>
+ Fix xmlBuildRelativeURI for URIs starting with './' (Nick Wellnhofer),<br/>
+ Fix type confusion in xmlValidateOneNamespace (Nick Wellnhofer),<br/>
+ Fix memory leak in xmlStringLenGetNodeList (Nick Wellnhofer),<br/>
+ Fix NULL pointer deref in xmlDumpElementContent (Daniel Veillard),<br/>
+ Fix memory leak in xmlBufAttrSerializeTxtContent (Nick Wellnhofer),<br/>
+ Stop parser on unsupported encodings (Nick Wellnhofer),<br/>
+ Check for integer overflow in memory debug code (Nick Wellnhofer),<br/>
+ Fix buffer size checks in xmlSnprintfElementContent (Nick Wellnhofer),<br/>
+ Avoid reparsing in xmlParseStartTag2 (Nick Wellnhofer),<br/>
+ Fix undefined behavior in xmlRegExecPushStringInternal (Nick Wellnhofer),<br/>
+ Check XPath exponents for overflow (Nick Wellnhofer),<br/>
+ Check for overflow in xmlXPathIsPositionalPredicate (Nick Wellnhofer),<br/>
+ Fix spurious error message (Nick Wellnhofer),<br/>
+ Fix memory leak in xmlCanonicPath (Nick Wellnhofer),<br/>
+ Fix memory leak in xmlXPathCompareNodeSetValue (Nick Wellnhofer),<br/>
+ Fix memory leak in pattern error path (Nick Wellnhofer),<br/>
+ Fix memory leak in parser error path (Nick Wellnhofer),<br/>
+ Fix memory leaks in XPointer error paths (Nick Wellnhofer),<br/>
+ Fix memory leak in xmlXPathNodeSetMergeAndClear (Nick Wellnhofer),<br/>
+ Fix memory leak in XPath filter optimizations (Nick Wellnhofer),<br/>
+ Fix memory leaks in XPath error paths (Nick Wellnhofer),<br/>
+ Do not leak the new CData node if adding fails (David Tardon),<br/>
+ Prevent unwanted external entity reference (Neel Mehta),<br/>
+ Increase buffer space for port in HTTP redirect support (Daniel Veillard),<br/>
+ Fix more NULL pointer derefs in xpointer.c (Nick Wellnhofer),<br/>
+ Avoid function/data pointer conversion in xpath.c (Nick Wellnhofer),<br/>
+ Fix format string warnings (Nick Wellnhofer),<br/>
+ Disallow namespace nodes in XPointer points (Nick Wellnhofer),<br/>
+ Fix comparison with root node in xmlXPathCmpNodes (Nick Wellnhofer),<br/>
+ Fix attribute decoding during XML schema validation (Alex Henrie),<br/>
+ Fix NULL pointer deref in XPointer range-to (Nick Wellnhofer)<br/>
+ </li>
+
+ <li>Improvements:<br/>
+ Updating the spec file to reflect Fedora 24 (Daniel Veillard),<br/>
+ Add const in five places to move 1 KiB to .rdata (Bruce Dawson),<br/>
+ Fix missing part of comment for function xmlXPathEvalExpression() (Daniel Veillard),<br/>
+ Get rid of "blanks wrapper" for parameter entities (Nick Wellnhofer),<br/>
+ Simplify handling of parameter entity references (Nick Wellnhofer),<br/>
+ Deduplicate code in encoding.c (Nick Wellnhofer),<br/>
+ Make HTML parser functions take const pointers (Nick Wellnhofer),<br/>
+ Build test programs only when needed (Nick Wellnhofer),<br/>
+ Fix doc/examples/index.py (Nick Wellnhofer),<br/>
+ Fix compiler warnings in threads.c (Nick Wellnhofer),<br/>
+ Fix empty-body warning in nanohttp.c (Nick Wellnhofer),<br/>
+ Fix cast-align warnings (Nick Wellnhofer),<br/>
+ Fix unused-parameter warnings (Nick Wellnhofer),<br/>
+ Rework entity boundary checks (Nick Wellnhofer),<br/>
+ Don't switch encoding for internal parameter entities (Nick Wellnhofer),<br/>
+ Merge duplicate code paths handling PE references (Nick Wellnhofer),<br/>
+ Test SAX2 callbacks with entity substitution (Nick Wellnhofer),<br/>
+ Support catalog and threads tests under --without-sax1 (Nick Wellnhofer),<br/>
+ Misc fixes for 'make tests' (Nick Wellnhofer),<br/>
+ Initialize keepBlanks in HTML parser (Nick Wellnhofer),<br/>
+ Add test cases for bug 758518 (David Kilzer),<br/>
+ Fix compiler warning in htmlParseElementInternal (Nick Wellnhofer),<br/>
+ Remove useless check in xmlParseAttributeListDecl (Nick Wellnhofer),<br/>
+ Allow zero sized memory input buffers (Nick Wellnhofer),<br/>
+ Add TODO comment in xmlSwitchEncoding (Nick Wellnhofer),<br/>
+ Check for integer overflow in xmlXPathFormatNumber (Nick Wellnhofer),<br/>
+ Make Travis print UBSan stacktraces (Nick Wellnhofer),<br/>
+ Add .travis.yml (Nick Wellnhofer),<br/>
+ Fix expected error output in Python tests (Nick Wellnhofer),<br/>
+ Simplify control flow in xmlParseStartTag2 (Nick Wellnhofer),<br/>
+ Disable LeakSanitizer when running API tests (Nick Wellnhofer),<br/>
+ Avoid out-of-bound array access in API tests (Nick Wellnhofer),<br/>
+ Avoid spurious UBSan errors in parser.c (Nick Wellnhofer),<br/>
+ Parse small XPath numbers more accurately (Nick Wellnhofer),<br/>
+ Rework XPath rounding functions (Nick Wellnhofer),<br/>
+ Fix white space in test output (Nick Wellnhofer),<br/>
+ Fix axis traversal from attribute and namespace nodes (Nick Wellnhofer),<br/>
+ Check for trailing characters in XPath expressions earlier (Nick Wellnhofer),<br/>
+ Rework final handling of XPath results (Nick Wellnhofer),<br/>
+ Make xmlXPathEvalExpression call xmlXPathEval (Nick Wellnhofer),<br/>
+ Remove unused variables (Nick Wellnhofer),<br/>
+ Don't print generic error messages in XPath tests (Nick Wellnhofer)<br/>
+ </li>
+
+ <li>Cleanups:<br/>
+ Fix a couple of misleading indentation errors (Daniel Veillard),<br/>
+ Remove unnecessary calls to xmlPopInput (Nick Wellnhofer)<br/>
+ </li>
+</ul>
<h3>2.9.4: May 23 2016</h3>
<ul>
<li>Security:<br/>
@@ -2141,7 +2379,7 @@ Gansterer),<br/>
Hendricks), aliasing bug exposed by gcc4 on s390, xmlTextReaderNext bug
(Rob Richards), Schemas decimal type fixes (William Brack),
xmlByteConsumed static buffer (Ben Maurer).</li>
- <li>improvement: speedup parsing comments and DTDs, dictionnary support for
+ <li>improvement: speedup parsing comments and DTDs, dictionary support for
hash tables, Schemas Identity constraints (Kasimier), streaming XPath
subset, xmlTextReaderReadString added (Bjorn Reese), Schemas canonical
values handling (Kasimier), add xmlTextReaderByteConsumed (Aron
@@ -2361,7 +2599,7 @@ Gansterer),<br/>
URI on SYSTEM lookup failure, XInclude parse flags inheritance (William),
XInclude and XPointer fixes for entities (William), XML parser bug
reported by Holger Rauch, nanohttp fd leak (William), regexps char
- groups '-' handling (William), dictionnary reference counting problems,
+ groups '-' handling (William), dictionary reference counting problems,
do not close stderr.</li>
<li>performance patches from Petr Pajas</li>
<li>Documentation fixes: XML_CATALOG_FILES in man pages (Mike Hommey)</li>
@@ -2425,14 +2663,14 @@ Gansterer),<br/>
Fleck), doc (Sven Zimmerman), I/O example.</li>
<li>Python bindings: fixes (William), enum support (Stéphane Bidoul),
structured error reporting (Stéphane Bidoul)</li>
- <li>XInclude: various fixes for conformance, problem related to dictionnary
+ <li>XInclude: various fixes for conformance, problem related to dictionary
references (William &amp; me), recursion (William)</li>
<li>xmlWriter: indentation (Lucas Brasilino), memory leaks (Alfred
Mickautsch),</li>
<li>xmlSchemas: normalizedString datatype (John Belmonte)</li>
<li>code cleanup for strings functions (William)</li>
<li>Windows: compiler patches (Mark Vakoc)</li>
- <li>Parser optimizations, a few new XPath and dictionnary APIs for future
+ <li>Parser optimizations, a few new XPath and dictionary APIs for future
XSLT optimizations.</li>
</ul>
@@ -2532,8 +2770,8 @@ Gansterer),<br/>
of change</li>
<li>Increased the library modularity, far more options can be stripped out,
a --with-minimum configuration will weight around 160KBytes</li>
- <li>Use per parser and per document dictionnary, allocate names and small
- text nodes from the dictionnary</li>
+ <li>Use per parser and per document dictionary, allocate names and small
+ text nodes from the dictionary</li>
<li>Switch to a SAX2 like parser rewrote most of the XML parser core,
provides namespace resolution and defaulted attributes, minimize memory
allocations and copies, namespace checking and specific error handling,
@@ -2580,7 +2818,7 @@ Gansterer),<br/>
(William), xmlCleanupParser (Marc Liyanage), CDATA output (William), HTTP
error handling.</li>
<li>xmllint options: --dtdvalidfpi for Tobias Reif, --sax1 for compat
- testing, --nodict for building without tree dictionnary, --nocdata to
+ testing, --nodict for building without tree dictionary, --nocdata to
replace CDATA by text, --nsclean to remove surperfluous namespace
declarations</li>
<li>added xml2-config --libtool-libs option from Kevin P. Fleming</li>
diff --git a/doc/xmlcatalog.1 b/doc/xmlcatalog.1
index b4a6b221..2fbfaf2b 100644
--- a/doc/xmlcatalog.1
+++ b/doc/xmlcatalog.1
@@ -1,7 +1,7 @@
'\" t
.\" Title: xmlcatalog
.\" Author: John Fleck <jfleck@inkstain.net>
-.\" Generator: DocBook XSL Stylesheets v1.76.1 <http://docbook.sf.net/>
+.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: $Date$
.\" Manual: xmlcatalog Manual
.\" Source: libxml2
@@ -34,7 +34,6 @@ xmlcatalog \- Command line tool to parse and manipulate XML or SGML catalog file
\fBxmlcatalog\fR [\fB\-\-sgml\fR | \fB\-\-shell\fR | \fB\-\-create\fR | \fB\-\-del\ \fR\fB\fIVALUE(S)\fR\fR | [\ \fB\-\-add\ \fR\fB\fITYPE\fR\fR\fB\ \fR\fB\fIORIG\fR\fR\fB\ \fR\fB\fIREPLACE\fR\fR\fB\ \fR\ |\ \fB\-\-add\ \fR\fB\fIFILENAME\fR\fR] | \fB\-\-noout\fR | \fB\-\-no\-super\-update\fR | [\fB\-v\fR\ |\ \fB\-\-verbose\fR]] {\fICATALOGFILE\fR} {\fIENTITIES\fR...}
.SH "DESCRIPTION"
.PP
-
\fBxmlcatalog\fR
is a command line application allowing users to monitor and manipulate
XML
@@ -50,7 +49,6 @@ SGML
files\&.
.SH "OPTIONS"
.PP
-
\fBxmlcatalog\fR
accepts the following options (in alphabetical order):
.PP
@@ -155,6 +153,19 @@ options\&.
.RS 4
Output debugging information\&.
.RE
+.PP
+Invoking
+\fBxmlcatalog\fR
+non\-interactively without a designated action (imposed with options like
+\fB\-\-add\fR) will result in a lookup of the catalog entry for
+\fIENTITIES\fR
+in the catalog denoted with
+\fICATALOGFILE\fR\&. The corresponding entries will be output to the command line\&. This mode of operation, together with
+\fB\-\-shell\fR
+mode and non\-modifying (i\&.e\&. without
+\fB\-\-noout\fR) direct actions, allows for a special shortcut of the void
+\fICATALOGFILE\fR
+specification (possibly expressed as "" in the shell environment) appointing the default system catalog\&. That simplifies the handling when its exact location is irrelevant but the respective built\-in still needs to be consulted\&.
.SH "SHELL COMMANDS"
.PP
Invoking
@@ -213,7 +224,7 @@ Quit the shell\&.
.PP
\fBpublic \fR\fB\fIPUBLIC\-ID\fR\fR
.RS 4
-Execute a Formal Public Identifier look\-up of the catalog entry for
+Execute a Formal Public Identifier lookup of the catalog entry for
\fIPUBLIC\-ID\fR\&. The corresponding entry will be output to the command line\&.
.RE
.PP
@@ -224,7 +235,7 @@ Stop printing debugging statements\&.
.PP
\fBsystem \fR\fB\fISYSTEM\-ID\fR\fR
.RS 4
-Execute a Formal Public Identifier look\-up of the catalog entry for
+Execute a Formal Public Identifier lookup of the catalog entry for
\fISYSTEM\-ID\fR\&. The corresponding entry will be output to the command line\&.
.RE
.SH "ENVIRONMENT"
@@ -240,7 +251,6 @@ catalog\&.
.RE
.SH "DIAGNOSTICS"
.PP
-
\fBxmlcatalog\fR
return codes provide information that can be used when calling it from scripts\&.
.PP
diff --git a/doc/xmlcatalog_man.html b/doc/xmlcatalog_man.html
index d7b02bad..f72cd474 100644
--- a/doc/xmlcatalog_man.html
+++ b/doc/xmlcatalog_man.html
@@ -1,101 +1,140 @@
-<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>xmlcatalog</title><meta name="generator" content="DocBook XSL Stylesheets V1.61.2"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" lang="en"><a name="id2431614"></a><div class="titlepage"><div></div><div></div></div><div class="refnamediv"><h2>Name</h2><p>xmlcatalog &#8212; Command line tool to parse and manipulate <span class="acronym">XML</span> or
- <span class="acronym">SGML</span> catalog files.</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><tt class="command">xmlcatalog</tt> [[--shell] | [--create] | [--add <i class="replaceable"><tt>type</tt></i>
- <i class="replaceable"><tt>orig</tt></i> <i class="replaceable"><tt>replace</tt></i>] | [--del <i class="replaceable"><tt>values</tt></i>] | [--noout] | [--verbose]] [<tt class="option"><i class="replaceable"><tt>catalogfile</tt></i></tt>] [<tt class="option"><i class="replaceable"><tt>entities</tt></i></tt>]</p></div></div><div class="refsect1" lang="en"><a name="introduction"></a><h2>Introduction</h2><p>
- <span class="application">xmlcatalog</span> is a command line application
- allowing users to monitor and manipulate <span class="acronym">XML</span> and
- <span class="acronym">SGML</span> catalogs. It is included in
- <span class="application">libxml2</span>.
- </p><p>
- Its functions can be invoked from a single command from the command line,
- or it can perform multiple functions in interactive mode. It can operate
- on both <span class="acronym">XML</span> and <span class="acronym">SGML</span> files.
- </p></div><div class="refsect1" lang="en"><a name="cloptions"></a><h2>Command Line Options</h2><div class="variablelist"><dl><dt><span class="term"><tt class="option">--shell</tt> <i class="replaceable"><tt>filename</tt></i></span></dt><dd>
- Run a shell
- allowing interactive queries on catalog file
- <i class="replaceable"><tt>filename</tt></i>.
- </dd><dt><span class="term"><tt class="option">--create</tt> <i class="replaceable"><tt>filename</tt></i></span></dt><dd>
- Create a new
- <span class="acronym">XML</span> catalog. Outputs to stdout, ignoring
- <i class="replaceable"><tt>filename</tt></i> unless <tt class="option">--noout</tt> is
- used, in which case it creates a new catalog file
- <i class="replaceable"><tt>filename</tt></i>.
- </dd><dt><span class="term"><tt class="option">--add</tt> <i class="replaceable"><tt>'type'</tt></i> <i class="replaceable"><tt>'orig'</tt></i> <i class="replaceable"><tt>'replace'</tt></i> <i class="replaceable"><tt>filename</tt></i></span></dt><dd><p>
- Add an entry to catalog file
- <tt class="filename">filename</tt>. <i class="replaceable"><tt>type</tt></i>
- indicates the type of entry. Possible types are 'public', 'system', 'uri',
- 'rewriteSystem', 'rewriteURI', 'delegatePublic', 'delegateSystem',
- 'delegateURI' and 'nextCatalog'. <i class="replaceable"><tt>'orig'</tt></i> is the original
- reference to be replaced, and <i class="replaceable"><tt>'replace'</tt></i>
- is the <span class="acronym">URI</span> of the replacement entity to be
- used. The <tt class="option">--add</tt> option will not overwrite
- <i class="replaceable"><tt>filename</tt></i>, outputing to stdout, unless
- <tt class="option">--noout</tt> is used. The <tt class="option">--add</tt> will
- always take three parameters even if some of the
- <span class="acronym">XML</span> catalog constructs will have only a single
- argument.
-
- </p><p>
- If the <tt class="option">--add</tt> option is used following the
- <tt class="option">--sgml</tt> option, only a single argument, a
- <i class="replaceable"><tt>filename</tt></i>, is used. This is used to add
- the name of a catalog file to an <span class="acronym">SGML</span>
- supercatalog, a file that contains references to other included
- <span class="acronym">SGML</span> catalog files.
- </p></dd><dt><span class="term"><tt class="option">--del</tt> <i class="replaceable"><tt>'values'</tt></i> <i class="replaceable"><tt>filename</tt></i></span></dt><dd>
- Remove entries from the catalog file
- <i class="replaceable"><tt>filename</tt></i> matching
- <i class="replaceable"><tt>'values'</tt></i>. The <tt class="option">--del</tt> option
- will not overwrite <i class="replaceable"><tt>filename</tt></i>, outputing to
- stdout, unless <tt class="option">--noout</tt> is used.
- </dd><dt><span class="term"><tt class="option">--noout</tt></span></dt><dd>
- Save output to the named file rather than
- outputing to stdout.
- </dd><dt><span class="term"><tt class="option">--sgml</tt></span></dt><dd>
- Uses SGML Super catalogs for --add and --del options
- </dd><dt><span class="term"><tt class="option">-v</tt> or <tt class="option">--verbose</tt></span></dt><dd>
- output debugging
- information.
- </dd></dl></div></div><div class="refsect1" lang="en"><a name="shell"></a><h2>Shell Commands</h2><p>Invoking <span class="application">xmlcatalog</span> with the
- <tt class="option">--shell</tt> <i class="replaceable"><tt>filename</tt></i> option opens
- a command line shell allowing interactive access to the catalog file
- identified by <i class="replaceable"><tt>filename</tt></i>. Invoking the shell
- provides a command line prompt after which commands can be entered.
- </p><div class="variablelist"><dl><dt><span class="term"><tt class="option">public</tt> <i class="replaceable"><tt>'PublicID'</tt></i></span></dt><dd>
- Execute a
- public identifier lookup of the catalog entry for
- <i class="replaceable"><tt>'PublicID'</tt></i>. The corresponding entry will be
- output to the command line.
- </dd><dt><span class="term"><tt class="option">system</tt> <i class="replaceable"><tt>'SystemID'</tt></i></span></dt><dd>
- Execute a
- public identifier lookup of the catalog entry for
- <i class="replaceable"><tt>'SystemID'</tt></i>. The corresponding entry will be
- output to the command line.
- </dd><dt><span class="term"><tt class="option">add </tt> <i class="replaceable"><tt>'type'</tt></i> <i class="replaceable"><tt>'orig'</tt></i> <i class="replaceable"><tt>'replace'</tt></i></span></dt><dd>
- Add an entry to the catalog
- file. <i class="replaceable"><tt>type</tt></i> indicates the type of
- entry. Possible types are 'public', 'system', 'uri', 'rewriteSystem', 'rewriteURI',
- 'delegatePublic', 'delegateSystem', 'delegateURI' and 'nextCatalog'. <i class="replaceable"><tt>'orig'</tt></i>
- is the original reference to be replaced, and
- <i class="replaceable"><tt>'replace'</tt></i> is the <span class="acronym">URI</span> of the
- replacement entity to be used.
- </dd><dt><span class="term"><tt class="option">del</tt> <i class="replaceable"><tt>'values'</tt></i></span></dt><dd>
- Remove the
- catalog entry corresponding to <i class="replaceable"><tt>'values'</tt></i>.
- </dd><dt><span class="term"><tt class="option">dump</tt></span></dt><dd>
- Print the current catalog.
- </dd><dt><span class="term"><tt class="option">debug</tt></span></dt><dd>
- Print debugging statements showing the steps
- <span class="application">xmlcatalog</span> is executing.
- </dd><dt><span class="term"><tt class="option">quiet</tt></span></dt><dd>
- Stop printing debugging statements.
- </dd><dt><span class="term"><tt class="option">exit</tt></span></dt><dd>
- Quit the shell.
- </dd></dl></div></div><div class="refsect1" lang="en"><a name="return"></a><h2>Return values</h2><p><span class="application">xmlcatalog</span>'s return codes provide
- information that can be used when calling it from scripts.</p><p>0: normal</p><p>1: Failed to remove an entry from the catalog</p><p>2: Failed to save to the catalog, check file permissions</p><p>3: Failed to add an entry to the catalog</p><p>4: Failed to lookup and entry in the catalog</p></div><div class="refsect1" lang="en"><h2>Catalogs</h2><p>Catalog behavior can be changed by redirecting
- queries to the user's own set of catalogs. This can be done by setting the
- <tt class="varname">XML_CATALOG_FILES</tt> environment variable to a list of
- catalogs. An empty one should deactivate loading the default
- <tt class="filename">/etc/xml/catalog</tt> default catalog.</p></div><div class="refsect1" lang="en"><h2>References</h2><p><a href="http://www.xmlsoft.org/" target="_top">libxml web page</a></p><p><a href="http://www.xmlsoft.org/catalog.html" target="_top"><span class="application">libxml</span>
- catalog support web page:</a></p><p><a href="http://www.jclark.com/sp/catalog.htm" target="_top">James Clark's
- <span class="acronym">SGML</span> catalog page:</a></p><p><a href="http://www.oasis-open.org/committees/entity/spec.html" target="_top"><span class="acronym">OASIS</span>
- <span class="acronym">XML</span> catalog specification: </a></p></div></div></body></html>
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>xmlcatalog</title><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry"><a name="idm45940765506544"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>xmlcatalog &#8212;
+ Command line tool to parse and manipulate <acronym class="acronym">XML</acronym>
+ or <acronym class="acronym">SGML</acronym> catalog files.
+ </p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">xmlcatalog</code> [ <code class="option">--sgml</code> | <code class="option">--shell</code> | <code class="option">--create</code> | <code class="option">--del <em class="replaceable"><code>VALUE(S)</code></em></code> |
+ [
+ <code class="option">--add
+ <em class="replaceable"><code>TYPE</code></em>
+ <em class="replaceable"><code>ORIG</code></em>
+ <em class="replaceable"><code>REPLACE</code></em>
+ </code>
+ | <code class="option">--add <em class="replaceable"><code>FILENAME</code></em></code> ]
+ | <code class="option">--noout</code> | <code class="option">--no-super-update</code> |
+ [ <code class="option">-v</code> | <code class="option">--verbose</code> ]
+ ] {<em class="replaceable"><code>CATALOGFILE</code></em>} {<em class="replaceable"><code>ENTITIES</code></em>...}</p></div></div><div class="refsect1"><a name="description"></a><h2>DESCRIPTION</h2><p>
+ <span class="command"><strong>xmlcatalog</strong></span> is a command line application allowing users to monitor and
+ manipulate <acronym class="acronym">XML</acronym> and <acronym class="acronym">SGML</acronym> catalogs. It
+ is included in <span class="citerefentry"><span class="refentrytitle">libxml</span>(3)</span>.
+ </p><p>
+ Its functions can be invoked from a single command from the command line,
+ or it can perform multiple functions in interactive mode. It can operate
+ on both <acronym class="acronym">XML</acronym> and <acronym class="acronym">SGML</acronym> files.
+ </p></div><div class="refsect1"><a name="options"></a><h2>OPTIONS</h2><p>
+ <span class="command"><strong>xmlcatalog</strong></span> accepts the following options (in alphabetical order):
+ </p><div class="variablelist"><dl class="variablelist"><dt><span class="term">
+ <code class="option">--add
+ <em class="replaceable"><code>TYPE</code></em>
+ <em class="replaceable"><code>ORIG</code></em>
+ <em class="replaceable"><code>REPLACE</code></em>
+ </code>
+ </span></dt><dd><p>
+ Add an entry to <code class="filename">CATALOGFILE</code>. <em class="replaceable"><code>TYPE</code></em>
+ indicates the type of entry. Possible types are: <span class="simplelist"><em class="parameter"><code>public</code></em>, <em class="parameter"><code>system</code></em>, <em class="parameter"><code>uri</code></em>, <em class="parameter"><code>rewriteSystem</code></em>, <em class="parameter"><code>rewriteURI</code></em>, <em class="parameter"><code>delegatePublic</code></em>, <em class="parameter"><code>delegateSystem</code></em>, <em class="parameter"><code>delegateURI</code></em>, <em class="parameter"><code>nextCatalog</code></em></span>. <em class="replaceable"><code>ORIG</code></em> is the original
+ reference to be replaced, and <em class="replaceable"><code>REPLACE</code></em>
+ is the <acronym class="acronym">URI</acronym> of the replacement entity to be
+ used. The <code class="option">--add</code> option will not overwrite
+ <code class="filename">CATALOGFILE</code>, outputting
+ to <code class="filename">stdout</code>, unless
+ <code class="option">--noout</code> is used. The <code class="option">--add</code> will
+ always take three parameters even if some of the <acronym class="acronym">XML</acronym>
+ catalog constructs will have only a single argument.
+ </p></dd><dt><span class="term"><code class="option">--add <em class="replaceable"><code>FILENAME</code></em></code></span></dt><dd><p>
+ If the <code class="option">--add</code> option is used following
+ the <code class="option">--sgml</code> option, only a single argument,
+ a <em class="replaceable"><code>FILENAME</code></em>, is used. This is used to add
+ the name of a catalog file to an <acronym class="acronym">SGML</acronym> supercatalog,
+ a file that contains references to other included <acronym class="acronym">SGML</acronym>
+ catalog files.
+ </p></dd><dt><span class="term"><code class="option">--create</code></span></dt><dd><p>
+ Create a new <acronym class="acronym">XML</acronym> catalog. Outputs
+ to <code class="filename">stdout</code>,
+ ignoring <em class="replaceable"><code>filename</code></em> unless <code class="option">--noout</code> is
+ used, in which case it creates a new catalog
+ file <em class="replaceable"><code>filename</code></em>.
+ </p></dd><dt><span class="term"><code class="option">--del <em class="replaceable"><code>VALUE(S)</code></em></code></span></dt><dd><p>
+ Remove entries from <em class="replaceable"><code>CATALOGFILE</code></em>
+ matching <em class="replaceable"><code>VALUE(S)</code></em>. The <code class="option">--del</code>
+ option will not overwrite <em class="replaceable"><code>CATALOGFILE</code></em>,
+ outputting to <code class="filename">stdout</code>,
+ unless <code class="option">--noout</code> is used.
+ </p></dd><dt><span class="term"><code class="option">--noout</code></span></dt><dd><p>
+ Save output to the named file rather than outputting
+ to <code class="filename">stdout</code>.
+ </p></dd><dt><span class="term"><code class="option">--no-super-update</code></span></dt><dd><p>
+ Do not update the <acronym class="acronym">SGML</acronym> super catalog.
+ </p></dd><dt><span class="term"><code class="option">--shell</code></span></dt><dd><p>
+ Run a shell allowing interactive queries on catalog
+ file <em class="replaceable"><code>CATALOGFILE</code></em>. For the set of available
+ commands see <a class="xref" href="#shell" title="SHELL COMMANDS">the section called &#8220;SHELL COMMANDS&#8221;</a>.
+ </p></dd><dt><span class="term"><code class="option">--sgml</code></span></dt><dd><p>
+ Uses <acronym class="acronym">SGML</acronym> super catalogs for <code class="option">--add</code>
+ and <code class="option">--del</code> options.
+ </p></dd><dt><span class="term"><code class="option">-v</code>, </span><span class="term"><code class="option">--verbose</code></span></dt><dd><p>Output debugging information.</p></dd></dl></div><p>
+ Invoking <span class="command"><strong>xmlcatalog</strong></span> non-interactively without a designated action
+ (imposed with options like <code class="option">--add</code>) will result in a lookup
+ of the catalog entry for <em class="replaceable"><code>ENTITIES</code></em> in the
+ catalog denoted with <em class="replaceable"><code>CATALOGFILE</code></em>. The
+ corresponding entries will be output to the command line. This mode of
+ operation, together with <code class="option">--shell</code> mode and non-modifying
+ (i.e. without <code class="option">--noout</code>) direct actions, allows for
+ a special shortcut of the void <em class="replaceable"><code>CATALOGFILE</code></em>
+ specification (possibly expressed as "" in the shell
+ environment) appointing the default system catalog. That simplifies the
+ handling when its exact location is irrelevant but the respective built-in
+ still needs to be consulted.
+ </p></div><div class="refsect1"><a name="shell"></a><h2>SHELL COMMANDS</h2><p>
+ Invoking <span class="command"><strong>xmlcatalog</strong></span> with
+ the <code class="option">--shell <em class="replaceable"><code>CATALOGFILE</code></em></code> option opens
+ a command line shell allowing interactive access to the catalog file
+ identified by <em class="replaceable"><code>CATALOGFILE</code></em>. Invoking the shell
+ provides a command line prompt after which the following commands (described in
+ alphabetical order) can be entered.
+ </p><div class="variablelist"><dl class="variablelist"><dt><span class="term">
+ <code class="option">add
+ <em class="replaceable"><code>TYPE</code></em>
+ <em class="replaceable"><code>ORIG</code></em>
+ <em class="replaceable"><code>REPLACE</code></em>
+ </code>
+ </span></dt><dd><p>
+ Add an entry to the catalog file. <em class="replaceable"><code>TYPE</code></em>
+ indicates the type of entry. Possible types are: <span class="simplelist"><em class="parameter"><code>public</code></em>, <em class="parameter"><code>system</code></em>, <em class="parameter"><code>uri</code></em>, <em class="parameter"><code>rewriteSystem</code></em>, <em class="parameter"><code>rewriteURI</code></em>, <em class="parameter"><code>delegatePublic</code></em>, <em class="parameter"><code>delegateSystem</code></em>, <em class="parameter"><code>delegateURI</code></em>, <em class="parameter"><code>nextCatalog</code></em></span>. <em class="replaceable"><code>ORIG</code></em> is the original
+ reference to be replaced, and <em class="replaceable"><code>REPLACE</code></em>
+ is the <acronym class="acronym">URI</acronym> of the replacement entity to be
+ used. The <code class="option">--add</code> option will not overwrite
+ <code class="filename">CATALOGFILE</code>, outputting
+ to <code class="filename">stdout</code>, unless
+ <code class="option">--noout</code> is used. The <code class="option">--add</code> will
+ always take three parameters even if some of the <acronym class="acronym">XML</acronym>
+ catalog constructs will have only a single argument.
+ </p></dd><dt><span class="term"><code class="option">debug</code></span></dt><dd><p>
+ Print debugging statements showing the steps <span class="command"><strong>xmlcatalog</strong></span> is executing.
+ </p></dd><dt><span class="term"><code class="option">del <em class="replaceable"><code>VALUE(S)</code></em></code></span></dt><dd><p>
+ Remove the catalog entry corresponding to <em class="replaceable"><code>VALUE(S)</code></em>.
+ </p></dd><dt><span class="term"><code class="option">dump</code></span></dt><dd><p>Print the current catalog.</p></dd><dt><span class="term"><code class="option">exit</code></span></dt><dd><p>Quit the shell.</p></dd><dt><span class="term"><code class="option">public <em class="replaceable"><code>PUBLIC-ID</code></em></code></span></dt><dd><p>
+ Execute a Formal Public Identifier lookup of the catalog entry
+ for <em class="replaceable"><code>PUBLIC-ID</code></em>. The corresponding entry will be
+ output to the command line.
+ </p></dd><dt><span class="term"><code class="option">quiet</code></span></dt><dd><p>Stop printing debugging statements.</p></dd><dt><span class="term"><code class="option">system <em class="replaceable"><code>SYSTEM-ID</code></em></code></span></dt><dd><p>
+ Execute a Formal Public Identifier lookup of the catalog entry
+ for <em class="replaceable"><code>SYSTEM-ID</code></em>. The corresponding entry will be
+ output to the command line.
+ </p></dd></dl></div></div><div class="refsect1"><a name="environment"></a><h2>ENVIRONMENT</h2><div class="variablelist"><dl class="variablelist"><dt><span class="term"><code class="envar">XML_CATALOG_FILES</code></span></dt><dd><p><acronym class="acronym">XML</acronym> catalog behavior can be changed by redirecting
+ queries to the user's own set of catalogs. This can be done by setting
+ the <code class="envar">XML_CATALOG_FILES</code> environment variable to a list
+ of catalogs. An empty one should deactivate loading the
+ default <code class="filename">/etc/xml/catalog</code> catalog.
+ </p></dd></dl></div></div><div class="refsect1"><a name="diagnostics"></a><h2>DIAGNOSTICS</h2><p>
+ <span class="command"><strong>xmlcatalog</strong></span> return codes provide information that can be used when
+ calling it from scripts.
+ </p><div class="variablelist"><dl class="variablelist"><dt><span class="term"><span class="errorcode">0</span></span></dt><dd><p>No error</p></dd><dt><span class="term"><span class="errorcode">1</span></span></dt><dd><p>Failed to remove an entry from the catalog</p></dd><dt><span class="term"><span class="errorcode">2</span></span></dt><dd><p>Failed to save to the catalog, check file permissions</p></dd><dt><span class="term"><span class="errorcode">3</span></span></dt><dd><p>Failed to add an entry to the catalog</p></dd><dt><span class="term"><span class="errorcode">4</span></span></dt><dd><p>Failed to look up an entry in the catalog</p></dd></dl></div></div><div class="refsect1"><a name="seealso"></a><h2>SEE ALSO</h2><p><span class="citerefentry"><span class="refentrytitle">libxml</span>(3)</span>
+ </p><p>
+ More information can be found at
+ </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><span class="citerefentry"><span class="refentrytitle">libxml</span>(3)</span> web page <a class="ulink" href="http://www.xmlsoft.org/" target="_top">http://www.xmlsoft.org/</a>
+ </p></li><li class="listitem"><p><span class="citerefentry"><span class="refentrytitle">libxml</span>(3)</span> catalog support web page
+ at <a class="ulink" href="http://www.xmlsoft.org/catalog.html" target="_top">http://www.xmlsoft.org/catalog.html</a>
+ </p></li><li class="listitem"><p>James Clark's <acronym class="acronym">SGML</acronym> catalog
+ page <a class="ulink" href="http://www.jclark.com/sp/catalog.htm" target="_top">http://www.jclark.com/sp/catalog.htm</a>
+ </p></li><li class="listitem"><p><acronym class="acronym">OASIS</acronym> <acronym class="acronym">XML</acronym> catalog specification
+ <a class="ulink" href="http://www.oasis-open.org/committees/entity/spec.html" target="_top">http://www.oasis-open.org/committees/entity/spec.html</a>
+ </p></li></ul></div><p>
+ </p></div></div></body></html>
diff --git a/doc/xmlcatalog_man.xml b/doc/xmlcatalog_man.xml
index 049ed8fe..b3ce8b2a 100644
--- a/doc/xmlcatalog_man.xml
+++ b/doc/xmlcatalog_man.xml
@@ -230,6 +230,21 @@
</varlistentry>
</variablelist>
+
+ <para>
+ Invoking &xmlcatalog; non-interactively without a designated action
+ (imposed with options like <option>--add</option>) will result in a lookup
+ of the catalog entry for <replaceable>ENTITIES</replaceable> in the
+ catalog denoted with <replaceable>CATALOGFILE</replaceable>. The
+ corresponding entries will be output to the command line. This mode of
+ operation, together with <option>--shell</option> mode and non-modifying
+ (i.e. without <option>--noout</option>) direct actions, allows for
+ a special shortcut of the void <replaceable>CATALOGFILE</replaceable>
+ specification (possibly expressed as &quot;&quot; in the shell
+ environment) appointing the default system catalog. That simplifies the
+ handling when its exact location is irrelevant but the respective built-in
+ still needs to be consulted.
+ </para>
</refsect1>
<refsect1 id="shell">
@@ -315,7 +330,7 @@
<term><option>public <replaceable>PUBLIC-ID</replaceable></option></term>
<listitem>
<para>
- Execute a Formal Public Identifier look-up of the catalog entry
+ Execute a Formal Public Identifier lookup of the catalog entry
for <replaceable>PUBLIC-ID</replaceable>. The corresponding entry will be
output to the command line.
</para>
@@ -333,7 +348,7 @@
<term><option>system <replaceable>SYSTEM-ID</replaceable></option></term>
<listitem>
<para>
- Execute a Formal Public Identifier look-up of the catalog entry
+ Execute a Formal Public Identifier lookup of the catalog entry
for <replaceable>SYSTEM-ID</replaceable>. The corresponding entry will be
output to the command line.
</para>
diff --git a/doc/xmllint.html b/doc/xmllint.html
index 0a55877c..5fc52c5c 100644
--- a/doc/xmllint.html
+++ b/doc/xmllint.html
@@ -1,175 +1,162 @@
-<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>xmllint</title><meta name="generator" content="DocBook XSL Stylesheets V1.61.2"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" lang="en"><a name="id2876302"></a><div class="titlepage"><div></div><div></div></div><div class="refnamediv"><h2>Name</h2><p>xmllint &#8212; command line <span class="acronym">XML</span> tool</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><tt class="command">xmllint</tt> [[--version] | [--debug] | [--shell] | [--debugent] | [--copy] | [--recover] | [--noent] | [--noout] | [--nonet] | [--htmlout] | [--nowrap] | [--valid] | [--postvalid] | [--dtdvalid <i class="replaceable"><tt>URL</tt></i>] | [--dtdvalidfpi <i class="replaceable"><tt>FPI</tt></i>] | [--timing] | [--output <i class="replaceable"><tt>file</tt></i>] | [--repeat] | [--insert] | [--compress] | [--html] | [--xmlout] | [--push] | [--memory] | [--maxmem <i class="replaceable"><tt>nbbytes</tt></i>] | [--nowarning] | [--noblanks] | [--nocdata] | [--format] | [--encode <i class="replaceable"><tt>encoding</tt></i>] | [--dropdtd] | [--nsclean] | [--testIO] | [--catalogs] | [--nocatalogs] | [--auto] | [--xinclude] | [--noxincludenode] | [--loaddtd] | [--dtdattr] | [--stream] | [--walker] | [--pattern <i class="replaceable"><tt>patternvalue</tt></i>] | [--chkregister] | [--relaxng] | [--schema] | [--c14n]] [<tt class="option"><i class="replaceable"><tt>xmlfile</tt></i></tt>]</p></div></div><div class="refsect1" lang="en"><a name="introduction"></a><h2>Introduction</h2><p>
- The xmllint program parses one or more XML files, specified on the
- command line as <i class="replaceable"><tt>xmlfile</tt></i>. It prints various
- types of output, depending upon the options selected. It is useful for
- detecting errors both in <span class="acronym">XML</span> code and in the
- <span class="acronym">XML</span> parser itself.
- </p><p>
- It is included in <span class="application">libxml2</span>.
- </p></div><div class="refsect1" lang="en"><a name="options"></a><h2>Options</h2><div class="variablelist"><dl><dt><span class="term"><tt class="option">--version</tt></span></dt><dd>
- Display the version of
- <span class="application">libxml2</span> used.
- </dd><dt><span class="term"><tt class="option">--debug</tt></span></dt><dd>
- Parse a file and output an annotated tree of the
- in-memory version of the document.
- </dd><dt><span class="term"><tt class="option">--shell</tt></span></dt><dd>
- Run a navigating shell. Details on available commands in shell mode
- are below.
- </dd><dt><span class="term"><tt class="option">--debugent</tt></span></dt><dd>
- Debug the entities defined in the document.
- </dd><dt><span class="term"><tt class="option">--copy</tt> </span></dt><dd>
- Test the internal copy implementation.
- </dd><dt><span class="term"><tt class="option">--recover</tt></span></dt><dd>
- Output any parsable portions of an invalid
- document.
- </dd><dt><span class="term"><tt class="option">--noent</tt></span></dt><dd>
- Substitute entity values for entity
- references. By default, <span class="application">xmllint</span> leaves entity
- references in place.
- </dd><dt><span class="term"><tt class="option">--nocdata</tt></span></dt><dd>
- Substitute CDATA section by equivalent text nodes.
- </dd><dt><span class="term"><tt class="option">--nsclean</tt></span></dt><dd>
- Remove redundant namespace declarations.
- </dd><dt><span class="term"><tt class="option">--noout</tt></span></dt><dd>
- Suppress output. By default,
- <span class="application">xmllint</span> outputs the result tree.
- </dd><dt><span class="term"><tt class="option">--htmlout</tt></span></dt><dd>
- Output results as an <span class="acronym">HTML</span>
- file. This causes <span class="application">xmllint</span> to output
- the necessary <span class="acronym">HTML</span> tags surrounding the result tree
- output so the results can be displayed in a browser.
- </dd><dt><span class="term"><tt class="option">--nowrap </tt></span></dt><dd>
- Do not output HTML doc wrapper.
- </dd><dt><span class="term"><tt class="option">--valid </tt></span></dt><dd>
- Determine if the document is a valid instance
- of the included Document Type Definition (<span class="acronym">DTD</span>). A
- <span class="acronym">DTD</span> to be validated against also can be specified at
- the command line using the <tt class="option">--dtdvalid</tt> option. By default,
- <span class="application">xmllint</span> also checks to determine if the
- document is well-formed.
- </dd><dt><span class="term"><tt class="option">--postvalid</tt></span></dt><dd>
- Validate after parsing is completed.
- </dd><dt><span class="term"> <tt class="option">--dtdvalid</tt> <i class="replaceable"><tt>URL</tt></i></span></dt><dd>
- Use the
- <span class="acronym">DTD</span> specified by <i class="replaceable"><tt>URL</tt></i> for
- validation.
- </dd><dt><span class="term"> <tt class="option">--dtdvalidfpi</tt> <i class="replaceable"><tt>FPI</tt></i></span></dt><dd>
- Use the
- <span class="acronym">DTD</span> specified by the Public Identifier
- <i class="replaceable"><tt>FPI</tt></i> for validation, note that this
- will require a Catalog exporting that Public Identifier to work.
- </dd><dt><span class="term"><tt class="option">--timing</tt></span></dt><dd>
- Output information about the time it takes
- <span class="application">xmllint</span> to perform the various steps.
- </dd><dt><span class="term"><tt class="option">--output</tt> <i class="replaceable"><tt>file</tt></i></span></dt><dd>Define a file path where xmllint will save the result of
- parsing. Usually the programs build a tree and save it on stdout, with
- this option the result XML instance will be saved onto a file.</dd><dt><span class="term"><tt class="option">--repeat</tt></span></dt><dd>
- Repeat 100 times, for timing or profiling.
- </dd><dt><span class="term"><tt class="option">--insert</tt></span></dt><dd>
- Test for valid insertions.
- </dd><dt><span class="term"><tt class="option">--compress</tt></span></dt><dd>
- Turn on gzip compression of output.
- </dd><dt><span class="term"><tt class="option">--html</tt></span></dt><dd>
- Use the <span class="acronym">HTML</span> parser.
- </dd><dt><span class="term"><tt class="option">--xmlout</tt></span></dt><dd>Used in conjunction with <tt class="option">--html</tt>. Usually
- when HTML is parsed the document is saved with the HTML serializer, but with
- this option the resulting document is saved with the XML serializer. This is
- primarily used to generate XHTML from HTML input.</dd><dt><span class="term"><tt class="option">--push</tt></span></dt><dd>
- Use the push mode of the parser.
- </dd><dt><span class="term"><tt class="option">--memory</tt></span></dt><dd>
- Parse from memory.
- </dd><dt><span class="term"><tt class="option">--maxmem</tt> <i class="replaceable"><tt>nnbytes</tt></i></span></dt><dd>Test the parser memory
- support. <i class="replaceable"><tt>nnbytes</tt></i> is the maximum number of bytes the
- library is allowed to allocate. This can also be used to make sure batch
- processing of XML files will not exhaust the virtual memory of the server
- running them.</dd><dt><span class="term"><tt class="option">--nowarning</tt></span></dt><dd>
- Do not emit warnings from the parser and/or validator.
- </dd><dt><span class="term"><tt class="option">--noblanks</tt></span></dt><dd>
- Drop ignorable blank spaces.
- </dd><dt><span class="term"><tt class="option">--format</tt></span></dt><dd>
- Reformat and reindent the output. The $XMLLINT_INDENT
- environment variable controls the indentation (default
- value is two spaces " ").
- </dd><dt><span class="term"><tt class="option">--testIO</tt></span></dt><dd>
- Test user input/output support.
- </dd><dt><span class="term"><tt class="option">--encode</tt> <i class="replaceable"><tt>encoding</tt></i></span></dt><dd>
- Output in the given encoding.
- </dd><dt><span class="term"><tt class="option">--catalogs</tt></span></dt><dd>
- Use the catalogs from $SGML_CATALOG_FILES. Otherwise /etc/xml/catalog
- is used by default.
- </dd><dt><span class="term"><tt class="option">--nocatalogs</tt></span></dt><dd>
- Do not use any catalogs.
- </dd><dt><span class="term"><tt class="option">--auto</tt></span></dt><dd>
- Generate a small document for testing purposes.
- </dd><dt><span class="term"><tt class="option">--xinclude</tt></span></dt><dd>
- Do XInclude processing.
- </dd><dt><span class="term"><tt class="option">--noxincludenode</tt></span></dt><dd>
- Do XInclude processing but do not generate XInclude start and end
- nodes.
- </dd><dt><span class="term"><tt class="option">--loaddtd</tt></span></dt><dd>
- Fetch external DTD.
- </dd><dt><span class="term"><tt class="option">--dtdattr</tt></span></dt><dd>
- Fetch external DTD and populate the tree with inherited attributes.
- </dd><dt><span class="term"><tt class="option">--dropdtd</tt></span></dt><dd>
- Remove <span class="acronym">DTD</span> from output.
- </dd><dt><span class="term"><tt class="option">--stream</tt></span></dt><dd>Use streaming API - useful when used in combination with
- --relaxng or --valid options for validation of files that are
- too large to be held in memory.</dd><dt><span class="term"><tt class="option">--walker</tt></span></dt><dd>Test the walker module, which is a reader interface but for a
- document tree, instead of using the reader API on an unparsed document it
- works on a existing in-memory tree. Used in debugging.</dd><dt><span class="term"><tt class="option">--chkregister</tt></span></dt><dd>Turn on node registration. Useful for developers testing
- libxml2 node tracking code.</dd><dt><span class="term"><tt class="option">--pattern</tt> <i class="replaceable"><tt>patternvalue</tt></i></span></dt><dd>Used to exercise the pattern recognition engine, which can be
- used with the reader interface to the parser. It allows to select some
- nodes in the document based on an XPath (subset) expression. Used for
- debugging.</dd><dt><span class="term"><tt class="option">--relaxng</tt> <i class="replaceable"><tt>schema</tt></i></span></dt><dd>Use RelaxNG file named <i class="replaceable"><tt>schema</tt></i> for
- validation.</dd><dt><span class="term"><tt class="option">--schema</tt> <i class="replaceable"><tt>schema</tt></i></span></dt><dd>Use a W3C XML Schema file named <i class="replaceable"><tt>schema</tt></i> for validation.</dd><dt><span class="term">
- <tt class="option">--c14n</tt></span></dt><dd>Use the W3C XML Canonicalisation (C14N) to
-serialize the result of parsing to stdout. It keeps comments in
-the result.</dd></dl></div></div><div class="refsect1" lang="en"><a name="shell"></a><h2>Shell</h2><p>
- <span class="application">xmllint</span> offers an interactive shell mode
- invoked with the <tt class="option">--shell</tt> command. Available commands in
- shell mode include:
- </p><div class="variablelist"><dl><dt><span class="term"><tt class="option">base</tt></span></dt><dd>
- display XML base of the node
- </dd><dt><span class="term"><tt class="option">bye</tt></span></dt><dd>
- leave shell
- </dd><dt><span class="term"><tt class="option">cat <i class="replaceable"><tt>node</tt></i></tt></span></dt><dd>
- Display node if given or current node.
- </dd><dt><span class="term"><tt class="option">cd <i class="replaceable"><tt>path</tt></i></tt></span></dt><dd>
- Change the current node to <i class="replaceable"><tt>path</tt></i> (if given
- and unique) or root if no argument given.
- </dd><dt><span class="term"><tt class="option">dir <i class="replaceable"><tt>path</tt></i></tt></span></dt><dd>
- Dumps information about the node (namespace, attributes, content).
- </dd><dt><span class="term"><tt class="option">du <i class="replaceable"><tt>path</tt></i></tt></span></dt><dd>
- Show the structure of the subtree under path or the current node.
- </dd><dt><span class="term"><tt class="option">exit</tt></span></dt><dd>
- Leave the shell.
- </dd><dt><span class="term"><tt class="option">help</tt></span></dt><dd>
- Show this help.
- </dd><dt><span class="term"><tt class="option">free</tt></span></dt><dd>
- Display memory usage.
- </dd><dt><span class="term"><tt class="option">load <i class="replaceable"><tt>name</tt></i></tt></span></dt><dd>
- Load a new document with the given name.
- </dd><dt><span class="term"><tt class="option">ls <i class="replaceable"><tt>path</tt></i></tt></span></dt><dd>
- List contents of <i class="replaceable"><tt>path</tt></i> (if given) or the
- current directory.
- </dd><dt><span class="term"><tt class="option">pwd</tt></span></dt><dd>
- Display the path to the current node.
- </dd><dt><span class="term"><tt class="option">quit</tt></span></dt><dd>
- Leave the shell.
- </dd><dt><span class="term"><tt class="option">save <i class="replaceable"><tt>name</tt></i></tt></span></dt><dd>
- Saves the current document to <i class="replaceable"><tt>name</tt></i> if
- given or to the original name.
- </dd><dt><span class="term"><tt class="option">validate</tt></span></dt><dd>
- Check the document for error.
- </dd><dt><span class="term"><tt class="option">write <i class="replaceable"><tt>name</tt></i></tt></span></dt><dd>
- Write the current node to the given filename.
- </dd></dl></div></div><div class="refsect1" lang="en"><h2>Catalogs</h2><p>Catalog behavior can be changed by redirecting
- queries to the user's own set of catalogs. This can be done by setting the
- <tt class="varname">XML_CATALOG_FILES</tt> environment variable to a list of
- catalogs. An empty one should deactivate loading the default
- <tt class="filename">/etc/xml/catalog</tt> default catalog.</p></div><div class="refsect1" lang="en"><h2>Debugging Catalogs</h2><p>Setting the environment variable <tt class="varname">XML_DEBUG_CATALOG</tt>
- using the command <b class="command">"export XML_DEBUG_CATALOG="</b>
- outputs debugging information related to catalog operations.</p></div><div class="refsect1" lang="en"><h2>Error Return Codes</h2><p>On the completion of execution, <span class="application">Xmllint</span>
- returns the following error codes:</p><div class="variablelist"><dl><dt><span class="term">0</span></dt><dd>No error</dd><dt><span class="term">1</span></dt><dd>Unclassified</dd><dt><span class="term">2</span></dt><dd>Error in DTD</dd><dt><span class="term">3</span></dt><dd>Validation error</dd><dt><span class="term">4</span></dt><dd>Validation error</dd><dt><span class="term">5</span></dt><dd>Error in schema compilation</dd><dt><span class="term">6</span></dt><dd>Error writing output</dd><dt><span class="term">7</span></dt><dd>Error in pattern (generated when
- [<span class="optional">--pattern</span>] option is used)</dd><dt><span class="term">8</span></dt><dd>Error in Reader registration (generated when
- [<span class="optional">--chkregister</span>] option is used)</dd><dt><span class="term">9</span></dt><dd>Out of memory error</dd></dl></div></div></div></body></html>
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>xmllint</title><meta name="generator" content="DocBook XSL Stylesheets V1.79.1"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry"><a name="idm1"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>xmllint &#8212; command line <acronym class="acronym">XML</acronym> tool</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">xmllint</code> [ <code class="option">--version</code> | <code class="option">--debug</code> | <code class="option">--shell</code> | <code class="option">--xpath "<em class="replaceable"><code>XPath_expression</code></em>"</code> | <code class="option">--debugent</code> | <code class="option">--copy</code> | <code class="option">--recover</code> | <code class="option">--noent</code> | <code class="option">--noout</code> | <code class="option">--nonet</code> | <code class="option">--path "<em class="replaceable"><code>PATH(S)</code></em>"</code> | <code class="option">--load-trace</code> | <code class="option">--htmlout</code> | <code class="option">--nowrap</code> | <code class="option">--valid</code> | <code class="option">--postvalid</code> | <code class="option">--dtdvalid <em class="replaceable"><code>URL</code></em></code> | <code class="option">--dtdvalidfpi <em class="replaceable"><code>FPI</code></em></code> | <code class="option">--timing</code> | <code class="option">--output <em class="replaceable"><code>FILE</code></em></code> | <code class="option">--repeat</code> | <code class="option">--insert</code> | <code class="option">--compress</code> | <code class="option">--html</code> | <code class="option">--xmlout</code> | <code class="option">--push</code> | <code class="option">--memory</code> | <code class="option">--maxmem <em class="replaceable"><code>NBBYTES</code></em></code> | <code class="option">--nowarning</code> | <code class="option">--noblanks</code> | <code class="option">--nocdata</code> | <code class="option">--format</code> | <code class="option">--encode <em class="replaceable"><code>ENCODING</code></em></code> | <code class="option">--dropdtd</code> | <code class="option">--nsclean</code> | <code class="option">--testIO</code> | <code class="option">--catalogs</code> | <code class="option">--nocatalogs</code> | <code class="option">--auto</code> | <code class="option">--xinclude</code> | <code class="option">--noxincludenode</code> | <code class="option">--loaddtd</code> | <code class="option">--dtdattr</code> | <code class="option">--stream</code> | <code class="option">--walker</code> | <code class="option">--pattern <em class="replaceable"><code>PATTERNVALUE</code></em></code> | <code class="option">--chkregister</code> | <code class="option">--relaxng <em class="replaceable"><code>SCHEMA</code></em></code> | <code class="option">--schema <em class="replaceable"><code>SCHEMA</code></em></code> | <code class="option">--c14n</code> ] { <em class="replaceable"><code>XML-FILE(S)</code></em>... | - }</p></div><div class="cmdsynopsis"><p><code class="command">xmllint</code> <code class="option">--help</code> </p></div></div><div class="refsect1"><a name="description"></a><h2>DESCRIPTION</h2><p>
+ The <span class="command"><strong>xmllint</strong></span> program parses one or more <acronym class="acronym">XML</acronym> files,
+ specified on the command line as <em class="replaceable"><code>XML-FILE</code></em>
+ (or the standard input if the filename provided
+ is <span class="bold"><strong>-</strong></span> ). It prints various types of
+ output, depending upon the options selected. It is useful for detecting
+ errors both in <acronym class="acronym">XML</acronym> code and in
+ the <acronym class="acronym">XML</acronym> parser itself.
+ </p><p><span class="command"><strong>xmllint</strong></span> is included in <span class="citerefentry"><span class="refentrytitle">libxml</span>(3)</span>.</p></div><div class="refsect1"><a name="options"></a><h2>OPTIONS</h2><p>
+ <span class="command"><strong>xmllint</strong></span> accepts the following options (in alphabetical order):
+ </p><div class="variablelist"><dl class="variablelist"><dt><span class="term"><code class="option">--auto</code></span></dt><dd><p>Generate a small document for testing purposes.</p></dd><dt><span class="term"><code class="option">--catalogs</code></span></dt><dd><p>
+ Use the <acronym class="acronym">SGML</acronym> catalog(s) from <code class="envar">SGML_CATALOG_FILES</code>.
+ Otherwise <acronym class="acronym">XML</acronym> catalogs starting
+ from <code class="filename">/etc/xml/catalog</code> are used by default.
+ </p></dd><dt><span class="term"><code class="option">--chkregister</code></span></dt><dd><p>
+ Turn on node registration. Useful for developers testing <span class="citerefentry"><span class="refentrytitle">libxml</span>(3)</span> node tracking code.
+ </p></dd><dt><span class="term"><code class="option">--compress</code></span></dt><dd><p>
+ Turn on <span class="citerefentry"><span class="refentrytitle">gzip</span>(1)</span> compression of output.
+ </p></dd><dt><span class="term"><code class="option">--copy</code></span></dt><dd><p>Test the internal copy implementation.</p></dd><dt><span class="term"><code class="option">--c14n</code></span></dt><dd><p>
+ Use the W3C <acronym class="acronym">XML</acronym> Canonicalisation (<acronym class="acronym">C14N</acronym>) to
+ serialize the result of parsing to <code class="filename">stdout</code>.
+ It keeps comments in the result.
+ </p></dd><dt><span class="term"><code class="option">--dtdvalid <em class="replaceable"><code>URL</code></em></code></span></dt><dd><p>
+ Use the <acronym class="acronym">DTD</acronym> specified by
+ an <em class="replaceable"><code>URL</code></em> for validation.
+ </p></dd><dt><span class="term"><code class="option">--dtdvalidfpi <em class="replaceable"><code>FPI</code></em></code></span></dt><dd><p>
+ Use the <acronym class="acronym">DTD</acronym> specified by a Formal Public
+ Identifier <em class="replaceable"><code>FPI</code></em> for validation, note that this
+ will require a catalog exporting that Formal Public Identifier to work.
+ </p></dd><dt><span class="term"><code class="option">--debug</code></span></dt><dd><p>
+ Parse a file and output an annotated tree of the
+ in-memory version of the document.
+ </p></dd><dt><span class="term"><code class="option">--debugent</code></span></dt><dd><p>Debug the entities defined in the document.</p></dd><dt><span class="term"><code class="option">--dropdtd</code></span></dt><dd><p>Remove <acronym class="acronym">DTD</acronym> from output.</p></dd><dt><span class="term"><code class="option">--dtdattr</code></span></dt><dd><p>
+ Fetch external <acronym class="acronym">DTD</acronym> and populate the tree with
+ inherited attributes.
+ </p></dd><dt><span class="term"><code class="option">--encode <em class="replaceable"><code>ENCODING</code></em></code></span></dt><dd><p>Output in the given encoding. Note that this works for full document not fragments or result from XPath queries.</p></dd><dt><span class="term"><code class="option">--format</code></span></dt><dd><p>
+ Reformat and reindent the output. The <code class="envar">XMLLINT_INDENT</code>
+ environment variable controls the indentation. The default value is two
+ spaces " ").
+ </p></dd><dt><span class="term"><code class="option">--help</code></span></dt><dd><p>Print out a short usage summary for <span class="command"><strong>xmllint</strong></span>.</p></dd><dt><span class="term"><code class="option">--html</code></span></dt><dd><p>Use the <acronym class="acronym">HTML</acronym> parser.</p></dd><dt><span class="term"><code class="option">--htmlout</code></span></dt><dd><p>
+ Output results as an <acronym class="acronym">HTML</acronym> file. This
+ causes <span class="command"><strong>xmllint</strong></span> to output the necessary <acronym class="acronym">HTML</acronym>
+ tags surrounding the result tree output so the results can be
+ displayed/viewed in a browser.
+ </p></dd><dt><span class="term"><code class="option">--insert</code></span></dt><dd><p>Test for valid insertions.</p></dd><dt><span class="term"><code class="option">--loaddtd</code></span></dt><dd><p>Fetch an external <acronym class="acronym">DTD</acronym>.</p></dd><dt><span class="term"><code class="option">--load-trace</code></span></dt><dd><p>
+ Display all the documents loaded during the processing
+ to <code class="filename">stderr</code>.
+ </p></dd><dt><span class="term"><code class="option">--maxmem <em class="replaceable"><code>NNBYTES</code></em></code></span></dt><dd><p>
+ Test the parser memory support. <em class="replaceable"><code>NNBYTES</code></em>
+ is the maximum number of bytes the library is allowed to allocate.
+ This can also be used to make sure batch processing
+ of <acronym class="acronym">XML</acronym> files will not exhaust the virtual memory
+ of the server running them.
+ </p></dd><dt><span class="term"><code class="option">--memory</code></span></dt><dd><p>Parse from memory.</p></dd><dt><span class="term"><code class="option">--noblanks</code></span></dt><dd><p>Drop ignorable blank spaces.</p></dd><dt><span class="term"><code class="option">--nocatalogs</code></span></dt><dd><p>Do not use any catalogs.</p></dd><dt><span class="term"><code class="option">--nocdata</code></span></dt><dd><p>Substitute CDATA section by equivalent text nodes.</p></dd><dt><span class="term"><code class="option">--noent</code></span></dt><dd><p>
+ Substitute entity values for entity references. By default, <span class="command"><strong>xmllint</strong></span>
+ leaves entity references in place.
+ </p></dd><dt><span class="term"><code class="option">--nonet</code></span></dt><dd><p>
+ Do not use the Internet to fetch <acronym class="acronym">DTD</acronym>s or entities.
+ </p></dd><dt><span class="term"><code class="option">--noout</code></span></dt><dd><p>
+ Suppress output. By default, <span class="command"><strong>xmllint</strong></span> outputs the result tree.
+ </p></dd><dt><span class="term"><code class="option">--nowarning</code></span></dt><dd><p>Do not emit warnings from the parser and/or validator.</p></dd><dt><span class="term"><code class="option">--nowrap</code></span></dt><dd><p>Do not output <acronym class="acronym">HTML</acronym> doc wrapper.</p></dd><dt><span class="term"><code class="option">--noxincludenode</code></span></dt><dd><p>
+ Do XInclude processing but do not generate XInclude start and end nodes.
+ </p></dd><dt><span class="term"><code class="option">--nsclean</code></span></dt><dd><p>Remove redundant namespace declarations.</p></dd><dt><span class="term"><code class="option">--output <em class="replaceable"><code>FILE</code></em></code></span></dt><dd><p>
+ Define a file path where <span class="command"><strong>xmllint</strong></span> will save the result of parsing.
+ Usually the programs build a tree and save it
+ on <code class="filename">stdout</code>, with this option
+ the result <acronym class="acronym">XML</acronym> instance will be saved onto a file.
+ </p></dd><dt><span class="term"><code class="option">--path "<em class="replaceable"><code>PATH(S)</code></em>"</code></span></dt><dd><p>
+ Use the (space- or colon-separated) list of filesystem paths specified
+ by <em class="replaceable"><code>PATHS</code></em> to load <acronym class="acronym">DTD</acronym>s or
+ entities. Enclose space-separated lists by quotation marks.
+ </p></dd><dt><span class="term"><code class="option">--pattern <em class="replaceable"><code>PATTERNVALUE</code></em></code></span></dt><dd><p>
+ Used to exercise the pattern recognition engine, which can be used
+ with the reader interface to the parser. It allows to select some
+ nodes in the document based on an XPath (subset) expression. Used
+ for debugging.
+ </p></dd><dt><span class="term"><code class="option">--postvalid</code></span></dt><dd><p>Validate after parsing has completed.</p></dd><dt><span class="term"><code class="option">--push</code></span></dt><dd><p>Use the push mode of the parser.</p></dd><dt><span class="term"><code class="option">--recover</code></span></dt><dd><p>Output any parsable portions of an invalid document.</p></dd><dt><span class="term"><code class="option">--relaxng <em class="replaceable"><code>SCHEMA</code></em></code></span></dt><dd><p>
+ Use RelaxNG file named <em class="replaceable"><code>SCHEMA</code></em>
+ for validation.
+ </p></dd><dt><span class="term"><code class="option">--repeat</code></span></dt><dd><p>Repeat 100 times, for timing or profiling.</p></dd><dt><span class="term"><code class="option">--schema <em class="replaceable"><code>SCHEMA</code></em></code></span></dt><dd><p>
+ Use a W3C <acronym class="acronym">XML</acronym> Schema file
+ named <em class="replaceable"><code>SCHEMA</code></em> for validation.
+ </p></dd><dt><span class="term"><code class="option">--shell</code></span></dt><dd><p>
+ Run a navigating shell. Details on available commands in shell mode
+ are below (see <a class="xref" href="#shell" title="SHELL COMMANDS">the section called &#8220;SHELL COMMANDS&#8221;</a>).
+ </p></dd><dt><span class="term"><code class="option">--xpath "<em class="replaceable"><code>XPath_expression</code></em>"</code></span></dt><dd><p>
+ Run an XPath expression given as argument and print the
+ result. In case of a nodeset result, each node in the
+ node set is serialized in full in the output. In case
+ of an empty node set the "XPath set is empty" result
+ will be shown and an error exit code will be returned.
+ </p></dd><dt><span class="term"><code class="option">--stream</code></span></dt><dd><p>
+ Use streaming <acronym class="acronym">API</acronym> - useful when used in combination
+ with <code class="option">--relaxng</code> or <code class="option">--valid</code> options
+ for validation of files that are too large to be held in memory.
+ </p></dd><dt><span class="term"><code class="option">--testIO</code></span></dt><dd><p>Test user input/output support.</p></dd><dt><span class="term"><code class="option">--timing</code></span></dt><dd><p>
+ Output information about the time it takes <span class="command"><strong>xmllint</strong></span> to perform the
+ various steps.
+ </p></dd><dt><span class="term"><code class="option">--valid</code></span></dt><dd><p>
+ Determine if the document is a valid instance of the included
+ Document Type Definition (<acronym class="acronym">DTD</acronym>).
+ A <acronym class="acronym">DTD</acronym> to be validated against also can be
+ specified at the command line using the <code class="option">--dtdvalid</code>
+ option. By default, <span class="command"><strong>xmllint</strong></span> also checks to determine if the
+ document is well-formed.
+ </p></dd><dt><span class="term"><code class="option">--version</code></span></dt><dd><p>
+ Display the version of <span class="citerefentry"><span class="refentrytitle">libxml</span>(3)</span> used.
+ </p></dd><dt><span class="term"><code class="option">--walker</code></span></dt><dd><p>
+ Test the walker module, which is a reader interface but for a
+ document tree, instead of using the reader <acronym class="acronym">API</acronym> on
+ an unparsed document it works on an existing in-memory tree. Used for
+ debugging.
+ </p></dd><dt><span class="term"><code class="option">--xinclude</code></span></dt><dd><p>Do XInclude processing.</p></dd><dt><span class="term"><code class="option">--xmlout</code></span></dt><dd><p>
+ Used in conjunction with <code class="option">--html</code>. Usually
+ when <acronym class="acronym">HTML</acronym> is parsed the document is saved with
+ the <acronym class="acronym">HTML</acronym> serializer. But with this option the
+ resulting document is saved with the <acronym class="acronym">XML</acronym>
+ serializer. This is primarily used to
+ generate <acronym class="acronym">XHTML</acronym> from <acronym class="acronym">HTML</acronym> input.
+ </p></dd></dl></div></div><div class="refsect1"><a name="shell"></a><h2>SHELL COMMANDS</h2><p>
+ <span class="command"><strong>xmllint</strong></span> offers an interactive shell mode invoked with
+ the <code class="option">--shell</code> command. Available commands in shell mode
+ include (in alphabetical order):
+ </p><div class="variablelist"><dl class="variablelist"><dt><span class="term"><span class="command"><strong>base</strong></span></span></dt><dd><p>Display <acronym class="acronym">XML</acronym> base of the node.</p></dd><dt><span class="term"><span class="command"><strong>bye</strong></span></span></dt><dd><p>Leave the shell.</p></dd><dt><span class="term"><span class="command"><strong>cat <em class="replaceable"><code>NODE</code></em></strong></span></span></dt><dd><p>Display the given node or the current one.</p></dd><dt><span class="term"><span class="command"><strong>cd <em class="replaceable"><code>PATH</code></em></strong></span></span></dt><dd><p>
+ Change the current node to the given path (if unique) or root if no
+ argument is given.
+ </p></dd><dt><span class="term"><span class="command"><strong>dir <em class="replaceable"><code>PATH</code></em></strong></span></span></dt><dd><p>
+ Dumps information about the node (namespace, attributes, content).
+ </p></dd><dt><span class="term"><span class="command"><strong>du <em class="replaceable"><code>PATH</code></em></strong></span></span></dt><dd><p>
+ Show the structure of the subtree under the given path or the current node.
+ </p></dd><dt><span class="term"><span class="command"><strong>exit</strong></span></span></dt><dd><p>Leave the shell.</p></dd><dt><span class="term"><span class="command"><strong>help</strong></span></span></dt><dd><p>Show this help.</p></dd><dt><span class="term"><span class="command"><strong>free</strong></span></span></dt><dd><p>Display memory usage.</p></dd><dt><span class="term"><span class="command"><strong>load <em class="replaceable"><code>FILENAME</code></em></strong></span></span></dt><dd><p>Load a new document with the given filename.</p></dd><dt><span class="term"><span class="command"><strong>ls <em class="replaceable"><code>PATH</code></em></strong></span></span></dt><dd><p>List contents of the given path or the current directory.</p></dd><dt><span class="term"><span class="command"><strong>pwd</strong></span></span></dt><dd><p>Display the path to the current node.</p></dd><dt><span class="term"><span class="command"><strong>quit</strong></span></span></dt><dd><p>Leave the shell.</p></dd><dt><span class="term"><span class="command"><strong>save <em class="replaceable"><code>FILENAME</code></em></strong></span></span></dt><dd><p>
+ Save the current document to the given filename or to the original name.
+ </p></dd><dt><span class="term"><code class="option">validate</code></span></dt><dd><p>Check the document for errors.</p></dd><dt><span class="term"><span class="command"><strong>write <em class="replaceable"><code>FILENAME</code></em></strong></span></span></dt><dd><p>Write the current node to the given filename.</p></dd></dl></div></div><div class="refsect1"><a name="environment"></a><h2>ENVIRONMENT</h2><div class="variablelist"><dl class="variablelist"><dt><span class="term"><code class="envar">SGML_CATALOG_FILES</code></span></dt><dd><p><acronym class="acronym">SGML</acronym> catalog behavior can be changed by redirecting
+ queries to the user's own set of catalogs. This can be done by setting
+ the <code class="envar">SGML_CATALOG_FILES</code> environment variable to a list
+ of catalogs. An empty one should deactivate loading the
+ default <code class="filename">/etc/sgml/catalog</code> catalog.
+ </p></dd><dt><span class="term"><code class="envar">XML_CATALOG_FILES</code></span></dt><dd><p><acronym class="acronym">XML</acronym> catalog behavior can be changed by redirecting
+ queries to the user's own set of catalogs. This can be done by setting
+ the <code class="envar">XML_CATALOG_FILES</code> environment variable to a list
+ of catalogs. An empty one should deactivate loading the
+ default <code class="filename">/etc/xml/catalog</code> catalog.
+ </p></dd><dt><span class="term"><code class="envar">XML_DEBUG_CATALOG</code></span></dt><dd><p>Setting the environment variable <code class="envar">XML_DEBUG_CATALOG</code>
+ to <em class="parameter"><code>non-zero</code></em> using the <span class="command"><strong>export</strong></span>
+ command outputs debugging information related to catalog operations.
+ </p></dd><dt><span class="term"><code class="envar">XMLLINT_INDENT</code></span></dt><dd><p>Setting the environment variable <code class="envar">XMLLINT_INDENT</code>
+ controls the indentation. The default value is two spaces " ".
+ </p></dd></dl></div></div><div class="refsect1"><a name="diagnostics"></a><h2>DIAGNOSTICS</h2><p>
+ <span class="command"><strong>xmllint</strong></span> return codes provide information that can be used when
+ calling it from scripts.
+ </p><div class="variablelist"><dl class="variablelist"><dt><span class="term"><span class="errorcode">0</span></span></dt><dd><p>No error</p></dd><dt><span class="term"><span class="errorcode">1</span></span></dt><dd><p>Unclassified</p></dd><dt><span class="term"><span class="errorcode">2</span></span></dt><dd><p>Error in <acronym class="acronym">DTD</acronym></p></dd><dt><span class="term"><span class="errorcode">3</span></span></dt><dd><p>Validation error</p></dd><dt><span class="term"><span class="errorcode">4</span></span></dt><dd><p>Validation error</p></dd><dt><span class="term"><span class="errorcode">5</span></span></dt><dd><p>Error in schema compilation</p></dd><dt><span class="term"><span class="errorcode">6</span></span></dt><dd><p>Error writing output</p></dd><dt><span class="term"><span class="errorcode">7</span></span></dt><dd><p>
+ Error in pattern (generated when <code class="option">--pattern</code> option is used)
+ </p></dd><dt><span class="term"><span class="errorcode">8</span></span></dt><dd><p>
+ Error in Reader registration (generated
+ when <code class="option">--chkregister</code> option is used)
+ </p></dd><dt><span class="term"><span class="errorcode">9</span></span></dt><dd><p>Out of memory error</p></dd></dl></div></div><div class="refsect1"><a name="seealso"></a><h2>SEE ALSO</h2><p><span class="citerefentry"><span class="refentrytitle">libxml</span>(3)</span>
+ </p><p>
+ More information can be found at
+ </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><span class="citerefentry"><span class="refentrytitle">libxml</span>(3)</span> web page <a class="ulink" href="http://www.xmlsoft.org/" target="_top">http://www.xmlsoft.org/</a>
+ </p></li><li class="listitem"><p>W3C <acronym class="acronym">XSLT</acronym> page <a class="ulink" href="http://www.w3.org/TR/xslt" target="_top">http://www.w3.org/TR/xslt</a>
+ </p></li></ul></div><p>
+ </p></div></div></body></html>
diff --git a/elfgcchack.h b/elfgcchack.h
index 8c52884a..5ac93bfb 100644
--- a/elfgcchack.h
+++ b/elfgcchack.h
@@ -11,7 +11,7 @@
#ifdef IN_LIBXML
#ifdef __GNUC__
#ifdef PIC
-#ifdef linux
+#ifdef __linux__
#if (__GNUC__ == 3 && __GNUC_MINOR__ >= 3) || (__GNUC__ > 3)
#include "libxml/c14n.h"
diff --git a/encoding.c b/encoding.c
index e49c7f89..de7b511a 100644
--- a/encoding.c
+++ b/encoding.c
@@ -110,6 +110,9 @@ openIcuConverter(const char* name, int toUnicode)
if (conv == NULL)
return NULL;
+ conv->pivot_source = conv->pivot_buf;
+ conv->pivot_target = conv->pivot_buf;
+
conv->uconv = ucnv_open(name, &status);
if (U_FAILURE(status))
goto error;
@@ -354,8 +357,14 @@ UTF8ToUTF8(unsigned char* out, int *outlen,
{
int len;
- if ((out == NULL) || (inb == NULL) || (outlen == NULL) || (inlenb == NULL))
+ if ((out == NULL) || (outlen == NULL) || (inlenb == NULL))
return(-1);
+ if (inb == NULL) {
+ /* inb == NULL means output is initialized. */
+ *outlen = 0;
+ *inlenb = 0;
+ return(0);
+ }
if (*outlen > *inlenb) {
len = *inlenb;
} else {
@@ -1844,6 +1853,7 @@ xmlIconvWrapper(iconv_t cd, unsigned char *out, int *outlen,
* @outlen: the length of @out
* @in: a pointer to an array of ISO Latin 1 chars
* @inlen: the length of @in
+ * @flush: if true, indicates end of input
*
* Returns 0 if success, or
* -1 by lack of space, or
@@ -1857,7 +1867,7 @@ xmlIconvWrapper(iconv_t cd, unsigned char *out, int *outlen,
*/
static int
xmlUconvWrapper(uconv_t *cd, int toUnicode, unsigned char *out, int *outlen,
- const unsigned char *in, int *inlen) {
+ const unsigned char *in, int *inlen, int flush) {
const char *ucv_in = (const char *) in;
char *ucv_out = (char *) out;
UErrorCode err = U_ZERO_ERROR;
@@ -1867,33 +1877,31 @@ xmlUconvWrapper(uconv_t *cd, int toUnicode, unsigned char *out, int *outlen,
return(-1);
}
- /*
- * TODO(jungshik)
- * 1. is ucnv_convert(To|From)Algorithmic better?
- * 2. had we better use an explicit pivot buffer?
- * 3. error returned comes from 'fromUnicode' only even
- * when toUnicode is true !
- */
if (toUnicode) {
/* encoding => UTF-16 => UTF-8 */
ucnv_convertEx(cd->utf8, cd->uconv, &ucv_out, ucv_out + *outlen,
- &ucv_in, ucv_in + *inlen, NULL, NULL, NULL, NULL,
- 0, TRUE, &err);
+ &ucv_in, ucv_in + *inlen, cd->pivot_buf,
+ &cd->pivot_source, &cd->pivot_target,
+ cd->pivot_buf + ICU_PIVOT_BUF_SIZE, 0, flush, &err);
} else {
/* UTF-8 => UTF-16 => encoding */
ucnv_convertEx(cd->uconv, cd->utf8, &ucv_out, ucv_out + *outlen,
- &ucv_in, ucv_in + *inlen, NULL, NULL, NULL, NULL,
- 0, TRUE, &err);
+ &ucv_in, ucv_in + *inlen, cd->pivot_buf,
+ &cd->pivot_source, &cd->pivot_target,
+ cd->pivot_buf + ICU_PIVOT_BUF_SIZE, 0, flush, &err);
}
*inlen = ucv_in - (const char*) in;
*outlen = ucv_out - (char *) out;
- if (U_SUCCESS(err))
+ if (U_SUCCESS(err)) {
+ /* reset pivot buf if this is the last call for input (flush==TRUE) */
+ if (flush)
+ cd->pivot_source = cd->pivot_target = cd->pivot_buf;
return 0;
+ }
if (err == U_BUFFER_OVERFLOW_ERROR)
return -1;
if (err == U_INVALID_CHAR_FOUND || err == U_ILLEGAL_CHAR_FOUND)
return -2;
- /* if (err == U_TRUNCATED_CHAR_FOUND) */
return -3;
}
#endif /* LIBXML_ICU_ENABLED */
@@ -1904,6 +1912,64 @@ xmlUconvWrapper(uconv_t *cd, int toUnicode, unsigned char *out, int *outlen,
* *
************************************************************************/
+static int
+xmlEncInputChunk(xmlCharEncodingHandler *handler, unsigned char *out,
+ int *outlen, const unsigned char *in, int *inlen, int flush) {
+ int ret;
+ (void)flush;
+
+ if (handler->input != NULL) {
+ ret = handler->input(out, outlen, in, inlen);
+ }
+#ifdef LIBXML_ICONV_ENABLED
+ else if (handler->iconv_in != NULL) {
+ ret = xmlIconvWrapper(handler->iconv_in, out, outlen, in, inlen);
+ }
+#endif /* LIBXML_ICONV_ENABLED */
+#ifdef LIBXML_ICU_ENABLED
+ else if (handler->uconv_in != NULL) {
+ ret = xmlUconvWrapper(handler->uconv_in, 1, out, outlen, in, inlen,
+ flush);
+ }
+#endif /* LIBXML_ICU_ENABLED */
+ else {
+ *outlen = 0;
+ *inlen = 0;
+ ret = -2;
+ }
+
+ return(ret);
+}
+
+/* Returns -4 if no output function was found. */
+static int
+xmlEncOutputChunk(xmlCharEncodingHandler *handler, unsigned char *out,
+ int *outlen, const unsigned char *in, int *inlen) {
+ int ret;
+
+ if (handler->output != NULL) {
+ ret = handler->output(out, outlen, in, inlen);
+ }
+#ifdef LIBXML_ICONV_ENABLED
+ else if (handler->iconv_out != NULL) {
+ ret = xmlIconvWrapper(handler->iconv_out, out, outlen, in, inlen);
+ }
+#endif /* LIBXML_ICONV_ENABLED */
+#ifdef LIBXML_ICU_ENABLED
+ else if (handler->uconv_out != NULL) {
+ ret = xmlUconvWrapper(handler->uconv_out, 0, out, outlen, in, inlen,
+ TRUE);
+ }
+#endif /* LIBXML_ICU_ENABLED */
+ else {
+ *outlen = 0;
+ *inlen = 0;
+ ret = -4;
+ }
+
+ return(ret);
+}
+
/**
* xmlCharEncFirstLineInt:
* @handler: char enconding transformation data structure
@@ -1922,7 +1988,7 @@ xmlUconvWrapper(uconv_t *cd, int toUnicode, unsigned char *out, int *outlen,
int
xmlCharEncFirstLineInt(xmlCharEncodingHandler *handler, xmlBufferPtr out,
xmlBufferPtr in, int len) {
- int ret = -2;
+ int ret;
int written;
int toconv;
@@ -1953,33 +2019,13 @@ xmlCharEncFirstLineInt(xmlCharEncodingHandler *handler, xmlBufferPtr out,
written = out->size - out->use - 1;
}
- if (handler->input != NULL) {
- ret = handler->input(&out->content[out->use], &written,
- in->content, &toconv);
- xmlBufferShrink(in, toconv);
- out->use += written;
- out->content[out->use] = 0;
- }
-#ifdef LIBXML_ICONV_ENABLED
- else if (handler->iconv_in != NULL) {
- ret = xmlIconvWrapper(handler->iconv_in, &out->content[out->use],
- &written, in->content, &toconv);
- xmlBufferShrink(in, toconv);
- out->use += written;
- out->content[out->use] = 0;
- if (ret == -1) ret = -3;
- }
-#endif /* LIBXML_ICONV_ENABLED */
-#ifdef LIBXML_ICU_ENABLED
- else if (handler->uconv_in != NULL) {
- ret = xmlUconvWrapper(handler->uconv_in, 1, &out->content[out->use],
- &written, in->content, &toconv);
- xmlBufferShrink(in, toconv);
- out->use += written;
- out->content[out->use] = 0;
- if (ret == -1) ret = -3;
- }
-#endif /* LIBXML_ICU_ENABLED */
+ ret = xmlEncInputChunk(handler, &out->content[out->use], &written,
+ in->content, &toconv, 0);
+ xmlBufferShrink(in, toconv);
+ out->use += written;
+ out->content[out->use] = 0;
+ if (ret == -1) ret = -3;
+
#ifdef DEBUG_ENCODING
switch (ret) {
case 0:
@@ -2049,7 +2095,7 @@ xmlCharEncFirstLine(xmlCharEncodingHandler *handler, xmlBufferPtr out,
int
xmlCharEncFirstLineInput(xmlParserInputBufferPtr input, int len)
{
- int ret = -2;
+ int ret;
size_t written;
size_t toconv;
int c_in;
@@ -2091,32 +2137,13 @@ xmlCharEncFirstLineInput(xmlParserInputBufferPtr input, int len)
c_in = toconv;
c_out = written;
- if (input->encoder->input != NULL) {
- ret = input->encoder->input(xmlBufEnd(out), &c_out,
- xmlBufContent(in), &c_in);
- xmlBufShrink(in, c_in);
- xmlBufAddLen(out, c_out);
- }
-#ifdef LIBXML_ICONV_ENABLED
- else if (input->encoder->iconv_in != NULL) {
- ret = xmlIconvWrapper(input->encoder->iconv_in, xmlBufEnd(out),
- &c_out, xmlBufContent(in), &c_in);
- xmlBufShrink(in, c_in);
- xmlBufAddLen(out, c_out);
- if (ret == -1)
- ret = -3;
- }
-#endif /* LIBXML_ICONV_ENABLED */
-#ifdef LIBXML_ICU_ENABLED
- else if (input->encoder->uconv_in != NULL) {
- ret = xmlUconvWrapper(input->encoder->uconv_in, 1, xmlBufEnd(out),
- &c_out, xmlBufContent(in), &c_in);
- xmlBufShrink(in, c_in);
- xmlBufAddLen(out, c_out);
- if (ret == -1)
- ret = -3;
- }
-#endif /* LIBXML_ICU_ENABLED */
+ ret = xmlEncInputChunk(input->encoder, xmlBufEnd(out), &c_out,
+ xmlBufContent(in), &c_in, 0);
+ xmlBufShrink(in, c_in);
+ xmlBufAddLen(out, c_out);
+ if (ret == -1)
+ ret = -3;
+
switch (ret) {
case 0:
#ifdef DEBUG_ENCODING
@@ -2175,7 +2202,7 @@ xmlCharEncFirstLineInput(xmlParserInputBufferPtr input, int len)
int
xmlCharEncInput(xmlParserInputBufferPtr input, int flush)
{
- int ret = -2;
+ int ret;
size_t written;
size_t toconv;
int c_in;
@@ -2208,32 +2235,13 @@ xmlCharEncInput(xmlParserInputBufferPtr input, int flush)
c_in = toconv;
c_out = written;
- if (input->encoder->input != NULL) {
- ret = input->encoder->input(xmlBufEnd(out), &c_out,
- xmlBufContent(in), &c_in);
- xmlBufShrink(in, c_in);
- xmlBufAddLen(out, c_out);
- }
-#ifdef LIBXML_ICONV_ENABLED
- else if (input->encoder->iconv_in != NULL) {
- ret = xmlIconvWrapper(input->encoder->iconv_in, xmlBufEnd(out),
- &c_out, xmlBufContent(in), &c_in);
- xmlBufShrink(in, c_in);
- xmlBufAddLen(out, c_out);
- if (ret == -1)
- ret = -3;
- }
-#endif /* LIBXML_ICONV_ENABLED */
-#ifdef LIBXML_ICU_ENABLED
- else if (input->encoder->uconv_in != NULL) {
- ret = xmlUconvWrapper(input->encoder->uconv_in, 1, xmlBufEnd(out),
- &c_out, xmlBufContent(in), &c_in);
- xmlBufShrink(in, c_in);
- xmlBufAddLen(out, c_out);
- if (ret == -1)
- ret = -3;
- }
-#endif /* LIBXML_ICU_ENABLED */
+ ret = xmlEncInputChunk(input->encoder, xmlBufEnd(out), &c_out,
+ xmlBufContent(in), &c_in, flush);
+ xmlBufShrink(in, c_in);
+ xmlBufAddLen(out, c_out);
+ if (ret == -1)
+ ret = -3;
+
switch (ret) {
case 0:
#ifdef DEBUG_ENCODING
@@ -2294,7 +2302,7 @@ int
xmlCharEncInFunc(xmlCharEncodingHandler * handler, xmlBufferPtr out,
xmlBufferPtr in)
{
- int ret = -2;
+ int ret;
int written;
int toconv;
@@ -2313,35 +2321,14 @@ xmlCharEncInFunc(xmlCharEncodingHandler * handler, xmlBufferPtr out,
xmlBufferGrow(out, out->size + toconv * 2);
written = out->size - out->use - 1;
}
- if (handler->input != NULL) {
- ret = handler->input(&out->content[out->use], &written,
- in->content, &toconv);
- xmlBufferShrink(in, toconv);
- out->use += written;
- out->content[out->use] = 0;
- }
-#ifdef LIBXML_ICONV_ENABLED
- else if (handler->iconv_in != NULL) {
- ret = xmlIconvWrapper(handler->iconv_in, &out->content[out->use],
- &written, in->content, &toconv);
- xmlBufferShrink(in, toconv);
- out->use += written;
- out->content[out->use] = 0;
- if (ret == -1)
- ret = -3;
- }
-#endif /* LIBXML_ICONV_ENABLED */
-#ifdef LIBXML_ICU_ENABLED
- else if (handler->uconv_in != NULL) {
- ret = xmlUconvWrapper(handler->uconv_in, 1, &out->content[out->use],
- &written, in->content, &toconv);
- xmlBufferShrink(in, toconv);
- out->use += written;
- out->content[out->use] = 0;
- if (ret == -1)
- ret = -3;
- }
-#endif /* LIBXML_ICU_ENABLED */
+ ret = xmlEncInputChunk(handler, &out->content[out->use], &written,
+ in->content, &toconv, 1);
+ xmlBufferShrink(in, toconv);
+ out->use += written;
+ out->content[out->use] = 0;
+ if (ret == -1)
+ ret = -3;
+
switch (ret) {
case 0:
#ifdef DEBUG_ENCODING
@@ -2405,7 +2392,7 @@ xmlCharEncInFunc(xmlCharEncodingHandler * handler, xmlBufferPtr out,
int
xmlCharEncOutput(xmlOutputBufferPtr output, int init)
{
- int ret = -2;
+ int ret;
size_t written;
size_t writtentot = 0;
size_t toconv;
@@ -2413,7 +2400,6 @@ xmlCharEncOutput(xmlOutputBufferPtr output, int init)
int c_out;
xmlBufPtr in;
xmlBufPtr out;
- int charref_len = 0;
if ((output == NULL) || (output->encoder == NULL) ||
(output->buffer == NULL) || (output->conv == NULL))
@@ -2433,26 +2419,10 @@ retry:
if (init) {
c_in = 0;
c_out = written;
- if (output->encoder->output != NULL) {
- ret = output->encoder->output(xmlBufEnd(out), &c_out,
- NULL, &c_in);
- if (ret > 0) /* Gennady: check return value */
- xmlBufAddLen(out, c_out);
- }
-#ifdef LIBXML_ICONV_ENABLED
- else if (output->encoder->iconv_out != NULL) {
- ret = xmlIconvWrapper(output->encoder->iconv_out, xmlBufEnd(out),
- &c_out, NULL, &c_in);
- xmlBufAddLen(out, c_out);
- }
-#endif /* LIBXML_ICONV_ENABLED */
-#ifdef LIBXML_ICU_ENABLED
- else if (output->encoder->uconv_out != NULL) {
- ret = xmlUconvWrapper(output->encoder->uconv_out, 0, xmlBufEnd(out),
- &c_out, NULL, &c_in);
- xmlBufAddLen(out, c_out);
- }
-#endif /* LIBXML_ICU_ENABLED */
+ /* TODO: Check return value. */
+ xmlEncOutputChunk(output->encoder, xmlBufEnd(out), &c_out,
+ NULL, &c_in);
+ xmlBufAddLen(out, c_out);
#ifdef DEBUG_ENCODING
xmlGenericError(xmlGenericErrorContext,
"initialized encoder\n");
@@ -2477,57 +2447,17 @@ retry:
c_in = toconv;
c_out = written;
- if (output->encoder->output != NULL) {
- ret = output->encoder->output(xmlBufEnd(out), &c_out,
- xmlBufContent(in), &c_in);
+ ret = xmlEncOutputChunk(output->encoder, xmlBufEnd(out), &c_out,
+ xmlBufContent(in), &c_in);
+ xmlBufShrink(in, c_in);
+ xmlBufAddLen(out, c_out);
+ writtentot += c_out;
+ if (ret == -1) {
if (c_out > 0) {
- xmlBufShrink(in, c_in);
- xmlBufAddLen(out, c_out);
- writtentot += c_out;
+ /* Can be a limitation of iconv or uconv */
+ goto retry;
}
- }
-#ifdef LIBXML_ICONV_ENABLED
- else if (output->encoder->iconv_out != NULL) {
- ret = xmlIconvWrapper(output->encoder->iconv_out, xmlBufEnd(out),
- &c_out, xmlBufContent(in), &c_in);
- xmlBufShrink(in, c_in);
- xmlBufAddLen(out, c_out);
- writtentot += c_out;
- if (ret == -1) {
- if (c_out > 0) {
- /*
- * Can be a limitation of iconv
- */
- charref_len = 0;
- goto retry;
- }
- ret = -3;
- }
- }
-#endif /* LIBXML_ICONV_ENABLED */
-#ifdef LIBXML_ICU_ENABLED
- else if (output->encoder->uconv_out != NULL) {
- ret = xmlUconvWrapper(output->encoder->uconv_out, 0, xmlBufEnd(out),
- &c_out, xmlBufContent(in), &c_in);
- xmlBufShrink(in, c_in);
- xmlBufAddLen(out, c_out);
- writtentot += c_out;
- if (ret == -1) {
- if (c_out > 0) {
- /*
- * Can be a limitation of uconv
- */
- charref_len = 0;
- goto retry;
- }
- ret = -3;
- }
- }
-#endif /* LIBXML_ICU_ENABLED */
- else {
- xmlEncodingErr(XML_I18N_NO_OUTPUT,
- "xmlCharEncOutFunc: no output function !\n", NULL);
- return(-1);
+ ret = -3;
}
if (ret >= 0) output += ret;
@@ -2555,47 +2485,44 @@ retry:
c_in, c_out, (int) xmlBufUse(in));
#endif
break;
+ case -4:
+ xmlEncodingErr(XML_I18N_NO_OUTPUT,
+ "xmlCharEncOutFunc: no output function !\n", NULL);
+ ret = -1;
+ break;
case -2: {
+ xmlChar charref[20];
int len = (int) xmlBufUse(in);
xmlChar *content = xmlBufContent(in);
- int cur;
+ int cur, charrefLen;
cur = xmlGetUTF8Char(content, &len);
- if ((charref_len != 0) && (c_out < charref_len)) {
- /*
- * We attempted to insert a character reference and failed.
- * Undo what was written and skip the remaining charref.
- */
- xmlBufErase(out, c_out);
- writtentot -= c_out;
- xmlBufShrink(in, charref_len - c_out);
- charref_len = 0;
-
- ret = -1;
+ if (cur <= 0)
break;
- } else if (cur > 0) {
- xmlChar charref[20];
#ifdef DEBUG_ENCODING
- xmlGenericError(xmlGenericErrorContext,
- "handling output conversion error\n");
- xmlGenericError(xmlGenericErrorContext,
- "Bytes: 0x%02X 0x%02X 0x%02X 0x%02X\n",
- content[0], content[1],
- content[2], content[3]);
+ xmlGenericError(xmlGenericErrorContext,
+ "handling output conversion error\n");
+ xmlGenericError(xmlGenericErrorContext,
+ "Bytes: 0x%02X 0x%02X 0x%02X 0x%02X\n",
+ content[0], content[1],
+ content[2], content[3]);
#endif
- /*
- * Removes the UTF8 sequence, and replace it by a charref
- * and continue the transcoding phase, hoping the error
- * did not mangle the encoder state.
- */
- charref_len = snprintf((char *) &charref[0], sizeof(charref),
- "&#%d;", cur);
- xmlBufShrink(in, len);
- xmlBufAddHead(in, charref, -1);
-
- goto retry;
- } else {
+ /*
+ * Removes the UTF8 sequence, and replace it by a charref
+ * and continue the transcoding phase, hoping the error
+ * did not mangle the encoder state.
+ */
+ charrefLen = snprintf((char *) &charref[0], sizeof(charref),
+ "&#%d;", cur);
+ xmlBufShrink(in, len);
+ xmlBufGrow(out, charrefLen * 4);
+ c_out = xmlBufAvail(out) - 1;
+ c_in = charrefLen;
+ ret = xmlEncOutputChunk(output->encoder, xmlBufEnd(out), &c_out,
+ charref, &c_in);
+
+ if ((ret < 0) || (c_in != charrefLen)) {
char buf[50];
snprintf(&buf[0], 49, "0x%02X 0x%02X 0x%02X 0x%02X",
@@ -2607,8 +2534,12 @@ retry:
buf);
if (xmlBufGetAllocationScheme(in) != XML_BUFFER_ALLOC_IMMUTABLE)
content[0] = ' ';
+ break;
}
- break;
+
+ xmlBufAddLen(out, c_out);
+ writtentot += c_out;
+ goto retry;
}
}
return(ret);
@@ -2636,12 +2567,11 @@ retry:
int
xmlCharEncOutFunc(xmlCharEncodingHandler *handler, xmlBufferPtr out,
xmlBufferPtr in) {
- int ret = -2;
+ int ret;
int written;
int writtentot = 0;
int toconv;
int output = 0;
- int charref_len = 0;
if (handler == NULL) return(-1);
if (out == NULL) return(-1);
@@ -2658,31 +2588,11 @@ retry:
*/
if (in == NULL) {
toconv = 0;
- if (handler->output != NULL) {
- ret = handler->output(&out->content[out->use], &written,
- NULL, &toconv);
- if (ret >= 0) { /* Gennady: check return value */
- out->use += written;
- out->content[out->use] = 0;
- }
- }
-#ifdef LIBXML_ICONV_ENABLED
- else if (handler->iconv_out != NULL) {
- ret = xmlIconvWrapper(handler->iconv_out, &out->content[out->use],
- &written, NULL, &toconv);
- out->use += written;
- out->content[out->use] = 0;
- }
-#endif /* LIBXML_ICONV_ENABLED */
-#ifdef LIBXML_ICU_ENABLED
- else if (handler->uconv_out != NULL) {
- ret = xmlUconvWrapper(handler->uconv_out, 0,
- &out->content[out->use],
- &written, NULL, &toconv);
- out->use += written;
- out->content[out->use] = 0;
- }
-#endif /* LIBXML_ICU_ENABLED */
+ /* TODO: Check return value. */
+ xmlEncOutputChunk(handler, &out->content[out->use], &written,
+ NULL, &toconv);
+ out->use += written;
+ out->content[out->use] = 0;
#ifdef DEBUG_ENCODING
xmlGenericError(xmlGenericErrorContext,
"initialized encoder\n");
@@ -2700,61 +2610,18 @@ retry:
xmlBufferGrow(out, toconv * 4);
written = out->size - out->use - 1;
}
- if (handler->output != NULL) {
- ret = handler->output(&out->content[out->use], &written,
- in->content, &toconv);
- if (written > 0) {
- xmlBufferShrink(in, toconv);
- out->use += written;
- writtentot += written;
- }
- out->content[out->use] = 0;
- }
-#ifdef LIBXML_ICONV_ENABLED
- else if (handler->iconv_out != NULL) {
- ret = xmlIconvWrapper(handler->iconv_out, &out->content[out->use],
- &written, in->content, &toconv);
- xmlBufferShrink(in, toconv);
- out->use += written;
- writtentot += written;
- out->content[out->use] = 0;
- if (ret == -1) {
- if (written > 0) {
- /*
- * Can be a limitation of iconv
- */
- charref_len = 0;
- goto retry;
- }
- ret = -3;
- }
- }
-#endif /* LIBXML_ICONV_ENABLED */
-#ifdef LIBXML_ICU_ENABLED
- else if (handler->uconv_out != NULL) {
- ret = xmlUconvWrapper(handler->uconv_out, 0,
- &out->content[out->use],
- &written, in->content, &toconv);
- xmlBufferShrink(in, toconv);
- out->use += written;
- writtentot += written;
- out->content[out->use] = 0;
- if (ret == -1) {
- if (written > 0) {
- /*
- * Can be a limitation of iconv
- */
- charref_len = 0;
- goto retry;
- }
- ret = -3;
- }
- }
-#endif /* LIBXML_ICU_ENABLED */
- else {
- xmlEncodingErr(XML_I18N_NO_OUTPUT,
- "xmlCharEncOutFunc: no output function !\n", NULL);
- return(-1);
+ ret = xmlEncOutputChunk(handler, &out->content[out->use], &written,
+ in->content, &toconv);
+ xmlBufferShrink(in, toconv);
+ out->use += written;
+ writtentot += written;
+ out->content[out->use] = 0;
+ if (ret == -1) {
+ if (written > 0) {
+ /* Can be a limitation of iconv or uconv */
+ goto retry;
+ }
+ ret = -3;
}
if (ret >= 0) output += ret;
@@ -2782,47 +2649,44 @@ retry:
toconv, written, in->use);
#endif
break;
+ case -4:
+ xmlEncodingErr(XML_I18N_NO_OUTPUT,
+ "xmlCharEncOutFunc: no output function !\n", NULL);
+ ret = -1;
+ break;
case -2: {
+ xmlChar charref[20];
int len = in->use;
const xmlChar *utf = (const xmlChar *) in->content;
- int cur;
+ int cur, charrefLen;
cur = xmlGetUTF8Char(utf, &len);
- if ((charref_len != 0) && (written < charref_len)) {
- /*
- * We attempted to insert a character reference and failed.
- * Undo what was written and skip the remaining charref.
- */
- out->use -= written;
- writtentot -= written;
- xmlBufferShrink(in, charref_len - written);
- charref_len = 0;
-
- ret = -1;
+ if (cur <= 0)
break;
- } else if (cur > 0) {
- xmlChar charref[20];
#ifdef DEBUG_ENCODING
- xmlGenericError(xmlGenericErrorContext,
- "handling output conversion error\n");
- xmlGenericError(xmlGenericErrorContext,
- "Bytes: 0x%02X 0x%02X 0x%02X 0x%02X\n",
- in->content[0], in->content[1],
- in->content[2], in->content[3]);
+ xmlGenericError(xmlGenericErrorContext,
+ "handling output conversion error\n");
+ xmlGenericError(xmlGenericErrorContext,
+ "Bytes: 0x%02X 0x%02X 0x%02X 0x%02X\n",
+ in->content[0], in->content[1],
+ in->content[2], in->content[3]);
#endif
- /*
- * Removes the UTF8 sequence, and replace it by a charref
- * and continue the transcoding phase, hoping the error
- * did not mangle the encoder state.
- */
- charref_len = snprintf((char *) &charref[0], sizeof(charref),
- "&#%d;", cur);
- xmlBufferShrink(in, len);
- xmlBufferAddHead(in, charref, -1);
-
- goto retry;
- } else {
+ /*
+ * Removes the UTF8 sequence, and replace it by a charref
+ * and continue the transcoding phase, hoping the error
+ * did not mangle the encoder state.
+ */
+ charrefLen = snprintf((char *) &charref[0], sizeof(charref),
+ "&#%d;", cur);
+ xmlBufferShrink(in, len);
+ xmlBufferGrow(out, charrefLen * 4);
+ written = out->size - out->use - 1;
+ toconv = charrefLen;
+ ret = xmlEncOutputChunk(handler, &out->content[out->use], &written,
+ charref, &toconv);
+
+ if ((ret < 0) || (toconv != charrefLen)) {
char buf[50];
snprintf(&buf[0], 49, "0x%02X 0x%02X 0x%02X 0x%02X",
@@ -2834,8 +2698,13 @@ retry:
buf);
if (in->alloc != XML_BUFFER_ALLOC_IMMUTABLE)
in->content[0] = ' ';
+ break;
}
- break;
+
+ out->use += written;
+ writtentot += written;
+ out->content[out->use] = 0;
+ goto retry;
}
}
return(ret);
@@ -2954,54 +2823,20 @@ xmlByteConsumed(xmlParserCtxtPtr ctxt) {
int ret;
- if (handler->output != NULL) {
- do {
- toconv = in->end - cur;
- written = 32000;
- ret = handler->output(&convbuf[0], &written,
- cur, &toconv);
- if (ret == -1) return(-1);
- unused += written;
- cur += toconv;
- } while (ret == -2);
-#ifdef LIBXML_ICONV_ENABLED
- } else if (handler->iconv_out != NULL) {
- do {
- toconv = in->end - cur;
- written = 32000;
- ret = xmlIconvWrapper(handler->iconv_out, &convbuf[0],
- &written, cur, &toconv);
- if (ret < 0) {
- if (written > 0)
- ret = -2;
- else
- return(-1);
- }
- unused += written;
- cur += toconv;
- } while (ret == -2);
-#endif
-#ifdef LIBXML_ICU_ENABLED
- } else if (handler->uconv_out != NULL) {
- do {
- toconv = in->end - cur;
- written = 32000;
- ret = xmlUconvWrapper(handler->uconv_out, 0, &convbuf[0],
- &written, cur, &toconv);
- if (ret < 0) {
- if (written > 0)
- ret = -2;
- else
- return(-1);
- }
- unused += written;
- cur += toconv;
- } while (ret == -2);
-#endif
- } else {
- /* could not find a converter */
- return(-1);
- }
+ do {
+ toconv = in->end - cur;
+ written = 32000;
+ ret = xmlEncOutputChunk(handler, &convbuf[0], &written,
+ cur, &toconv);
+ if (ret < 0) {
+ if (written > 0)
+ ret = -2;
+ else
+ return(-1);
+ }
+ unused += written;
+ cur += toconv;
+ } while (ret == -2);
}
if (in->buf->rawconsumed < unused)
return(-1);
diff --git a/entities.c b/entities.c
index 64808ff6..43549bc5 100644
--- a/entities.c
+++ b/entities.c
@@ -6,6 +6,11 @@
* daniel@veillard.com
*/
+/* To avoid EBCDIC trouble when parsing on zOS */
+#if defined(__MVS__)
+#pragma convert("ISO8859-1")
+#endif
+
#define IN_LIBXML
#include "libxml.h"
@@ -880,10 +885,9 @@ xmlCreateEntitiesTable(void) {
* Deallocate the memory used by an entities in the hash table.
*/
static void
-xmlFreeEntityWrapper(xmlEntityPtr entity,
- const xmlChar *name ATTRIBUTE_UNUSED) {
+xmlFreeEntityWrapper(void *entity, const xmlChar *name ATTRIBUTE_UNUSED) {
if (entity != NULL)
- xmlFreeEntity(entity);
+ xmlFreeEntity((xmlEntityPtr) entity);
}
/**
@@ -894,7 +898,7 @@ xmlFreeEntityWrapper(xmlEntityPtr entity,
*/
void
xmlFreeEntitiesTable(xmlEntitiesTablePtr table) {
- xmlHashFree(table, (xmlHashDeallocator) xmlFreeEntityWrapper);
+ xmlHashFree(table, xmlFreeEntityWrapper);
}
#ifdef LIBXML_TREE_ENABLED
@@ -906,8 +910,9 @@ xmlFreeEntitiesTable(xmlEntitiesTablePtr table) {
*
* Returns the new xmlEntitiesPtr or NULL in case of error.
*/
-static xmlEntityPtr
-xmlCopyEntity(xmlEntityPtr ent) {
+static void *
+xmlCopyEntity(void *payload, const xmlChar *name ATTRIBUTE_UNUSED) {
+ xmlEntityPtr ent = (xmlEntityPtr) payload;
xmlEntityPtr cur;
cur = (xmlEntityPtr) xmlMalloc(sizeof(xmlEntity));
@@ -944,7 +949,7 @@ xmlCopyEntity(xmlEntityPtr ent) {
*/
xmlEntitiesTablePtr
xmlCopyEntitiesTable(xmlEntitiesTablePtr table) {
- return(xmlHashCopy(table, (xmlHashCopier) xmlCopyEntity));
+ return(xmlHashCopy(table, xmlCopyEntity));
}
#endif /* LIBXML_TREE_ENABLED */
@@ -1085,8 +1090,9 @@ xmlDumpEntityDecl(xmlBufferPtr buf, xmlEntityPtr ent) {
* When using the hash table scan function, arguments need to be reversed
*/
static void
-xmlDumpEntityDeclScan(xmlEntityPtr ent, xmlBufferPtr buf) {
- xmlDumpEntityDecl(buf, ent);
+xmlDumpEntityDeclScan(void *ent, void *buf,
+ const xmlChar *name ATTRIBUTE_UNUSED) {
+ xmlDumpEntityDecl((xmlBufferPtr) buf, (xmlEntityPtr) ent);
}
/**
@@ -1098,7 +1104,7 @@ xmlDumpEntityDeclScan(xmlEntityPtr ent, xmlBufferPtr buf) {
*/
void
xmlDumpEntitiesTable(xmlBufferPtr buf, xmlEntitiesTablePtr table) {
- xmlHashScan(table, (xmlHashScanner)xmlDumpEntityDeclScan, buf);
+ xmlHashScan(table, xmlDumpEntityDeclScan, buf);
}
#endif /* LIBXML_OUTPUT_ENABLED */
#define bottom_entities
diff --git a/error.c b/error.c
index 9606f135..50e9e6f8 100644
--- a/error.c
+++ b/error.c
@@ -853,7 +853,7 @@ xmlParserValidityWarning(void *ctx, const char *msg, ...)
* Get the last global error registered. This is per thread if compiled
* with thread support.
*
- * Returns NULL if no error occured or a pointer to the error
+ * Returns NULL if no error occurred or a pointer to the error
*/
xmlErrorPtr
xmlGetLastError(void)
@@ -910,7 +910,7 @@ xmlResetLastError(void)
*
* Get the last parsing error registered.
*
- * Returns NULL if no error occured or a pointer to the error
+ * Returns NULL if no error occurred or a pointer to the error
*/
xmlErrorPtr
xmlCtxtGetLastError(void *ctx)
diff --git a/example/Makefile.am b/example/Makefile.am
index 488ee6e8..49bca390 100644
--- a/example/Makefile.am
+++ b/example/Makefile.am
@@ -1,4 +1,4 @@
-noinst_PROGRAMS = gjobread
+check_PROGRAMS = gjobread
AM_CPPFLAGS = -I$(top_builddir)/include -I$(top_srcdir)/include -I$(srcdir)/include
AM_CFLAGS = $(THREAD_CFLAGS) $(Z_CFLAGS)
diff --git a/example/gjobread.c b/example/gjobread.c
index d3f6d57d..a435ca4f 100644
--- a/example/gjobread.c
+++ b/example/gjobread.c
@@ -177,7 +177,7 @@ typedef struct gjob {
static gJobPtr
-parseGjobFile(char *filename) {
+parseGjobFile(char *filename ATTRIBUTE_UNUSED) {
xmlDocPtr doc;
gJobPtr ret;
jobPtr curjob;
diff --git a/genUnicode.py b/genUnicode.py
index 56e4e9ba..4487eeb5 100755
--- a/genUnicode.py
+++ b/genUnicode.py
@@ -267,14 +267,14 @@ typedef struct {
} xmlUnicodeRange;
typedef struct {
- xmlUnicodeRange *table;
+ const xmlUnicodeRange *table;
int numentries;
} xmlUnicodeNameTable;
static xmlIntFunc *xmlUnicodeLookup(xmlUnicodeNameTable *tptr, const char *tname);
-static xmlUnicodeRange xmlUnicodeBlocks[] = {
+static const xmlUnicodeRange xmlUnicodeBlocks[] = {
""" % (webpage, date, sources));
flag = 0
diff --git a/gentest.py b/gentest.py
index f1786205..e4a89325 100755
--- a/gentest.py
+++ b/gentest.py
@@ -782,6 +782,24 @@ test_%s(void) {
test.write(" %s = gen_%s(n_%s, %d);\n" % (nam, type, nam, i))
i = i + 1;
+ # add checks to avoid out-of-bounds array access
+ i = 0;
+ for arg in t_args:
+ (nam, type, rtype, crtype, info) = arg;
+ # assume that "size", "len", and "start" parameters apply to either
+ # the nearest preceding or following char pointer
+ if type == "int" and (nam == "size" or nam == "len" or nam == "start"):
+ for j in range(i - 1, -1, -1) + range(i + 1, len(t_args)):
+ (bnam, btype) = t_args[j][:2]
+ if btype == "const_char_ptr" or btype == "const_xmlChar_ptr":
+ test.write(
+ " if ((%s != NULL) &&\n"
+ " (%s > (int) strlen((const char *) %s) + 1))\n"
+ " continue;\n"
+ % (bnam, nam, bnam))
+ break
+ i = i + 1;
+
# do the call, and clanup the result
if extra_pre_call.has_key(name):
test.write(" %s\n"% (extra_pre_call[name]))
diff --git a/globals.c b/globals.c
index e351b03f..20b43088 100644
--- a/globals.c
+++ b/globals.c
@@ -92,7 +92,7 @@ xmlStrdupFunc xmlMemStrdup = (xmlStrdupFunc) xmlMemoryStrdup;
*
* The variable holding the libxml free() implementation
*/
-xmlFreeFunc xmlFree = (xmlFreeFunc) free;
+xmlFreeFunc xmlFree = free;
/**
* xmlMalloc:
* @size: the size requested in bytes
@@ -101,7 +101,7 @@ xmlFreeFunc xmlFree = (xmlFreeFunc) free;
*
* Returns a pointer to the newly allocated block or NULL in case of error
*/
-xmlMallocFunc xmlMalloc = (xmlMallocFunc) malloc;
+xmlMallocFunc xmlMalloc = malloc;
/**
* xmlMallocAtomic:
* @size: the size requested in bytes
@@ -112,7 +112,7 @@ xmlMallocFunc xmlMalloc = (xmlMallocFunc) malloc;
*
* Returns a pointer to the newly allocated block or NULL in case of error
*/
-xmlMallocFunc xmlMallocAtomic = (xmlMallocFunc) malloc;
+xmlMallocFunc xmlMallocAtomic = malloc;
/**
* xmlRealloc:
* @mem: an already allocated block of memory
@@ -122,7 +122,19 @@ xmlMallocFunc xmlMallocAtomic = (xmlMallocFunc) malloc;
*
* Returns a pointer to the newly reallocated block or NULL in case of error
*/
-xmlReallocFunc xmlRealloc = (xmlReallocFunc) realloc;
+xmlReallocFunc xmlRealloc = realloc;
+/**
+ * xmlPosixStrdup
+ * @cur: the input char *
+ *
+ * a strdup implementation with a type signature matching POSIX
+ *
+ * Returns a new xmlChar * or NULL
+ */
+static char *
+xmlPosixStrdup(const char *cur) {
+ return((char*) xmlCharStrdup(cur));
+}
/**
* xmlMemStrdup:
* @str: a zero terminated string
@@ -131,7 +143,7 @@ xmlReallocFunc xmlRealloc = (xmlReallocFunc) realloc;
*
* Returns the copy of the string or NULL in case of error
*/
-xmlStrdupFunc xmlMemStrdup = (xmlStrdupFunc) xmlStrdup;
+xmlStrdupFunc xmlMemStrdup = xmlPosixStrdup;
#endif /* DEBUG_MEMORY_LOCATION || DEBUG_MEMORY */
#include <libxml/threads.h>
diff --git a/hash.c b/hash.c
index f9a20172..b0b4abc9 100644
--- a/hash.c
+++ b/hash.c
@@ -168,7 +168,7 @@ xmlHashComputeQKey(xmlHashTablePtr table,
*
* Create a new xmlHashTablePtr.
*
- * Returns the newly created object, or NULL if an error occured.
+ * Returns the newly created object, or NULL if an error occurred.
*/
xmlHashTablePtr
xmlHashCreate(int size) {
@@ -202,7 +202,7 @@ xmlHashCreate(int size) {
*
* Create a new xmlHashTablePtr which will use @dict as the internal dictionary
*
- * Returns the newly created object, or NULL if an error occured.
+ * Returns the newly created object, or NULL if an error occurred.
*/
xmlHashTablePtr
xmlHashCreateDict(int size, xmlDictPtr dict) {
@@ -361,6 +361,18 @@ xmlHashFree(xmlHashTablePtr table, xmlHashDeallocator f) {
}
/**
+ * xmlHashDefaultDeallocator:
+ * @entry: the hash table entry
+ * @name: the entry's name
+ *
+ * Free a hash table entry with xmlFree.
+ */
+void
+xmlHashDefaultDeallocator(void *entry, const xmlChar *name ATTRIBUTE_UNUSED) {
+ xmlFree(entry);
+}
+
+/**
* xmlHashAddEntry:
* @table: the hash table
* @name: the name of the userdata
@@ -912,8 +924,11 @@ void
xmlHashScan3(xmlHashTablePtr table, const xmlChar *name,
const xmlChar *name2, const xmlChar *name3,
xmlHashScanner f, void *data) {
- xmlHashScanFull3 (table, name, name2, name3,
- (xmlHashScannerFull) f, data);
+ stubData stubdata;
+ stubdata.data = data;
+ stubdata.hashscanner = f;
+ xmlHashScanFull3(table, name, name2, name3, stubHashScannerFull,
+ &stubdata);
}
/**
diff --git a/include/libxml/HTMLparser.h b/include/libxml/HTMLparser.h
index 551186cb..1d4fec2f 100644
--- a/include/libxml/HTMLparser.h
+++ b/include/libxml/HTMLparser.h
@@ -115,12 +115,12 @@ XMLPUBFUN htmlParserCtxtPtr XMLCALL
XMLPUBFUN int XMLCALL
htmlParseDocument(htmlParserCtxtPtr ctxt);
XMLPUBFUN htmlDocPtr XMLCALL
- htmlSAXParseDoc (xmlChar *cur,
+ htmlSAXParseDoc (const xmlChar *cur,
const char *encoding,
htmlSAXHandlerPtr sax,
void *userData);
XMLPUBFUN htmlDocPtr XMLCALL
- htmlParseDoc (xmlChar *cur,
+ htmlParseDoc (const xmlChar *cur,
const char *encoding);
XMLPUBFUN htmlDocPtr XMLCALL
htmlSAXParseFile(const char *filename,
diff --git a/include/libxml/encoding.h b/include/libxml/encoding.h
index 7967cc66..c875af6f 100644
--- a/include/libxml/encoding.h
+++ b/include/libxml/encoding.h
@@ -129,9 +129,14 @@ typedef int (* xmlCharEncodingOutputFunc)(unsigned char *out, int *outlen,
* If iconv is supported, there are two extra fields.
*/
#ifdef LIBXML_ICU_ENABLED
+/* Size of pivot buffer, same as icu/source/common/ucnv.cpp CHUNK_SIZE */
+#define ICU_PIVOT_BUF_SIZE 1024
struct _uconv_t {
UConverter *uconv; /* for conversion between an encoding and UTF-16 */
UConverter *utf8; /* for conversion between UTF-8 and UTF-16 */
+ UChar pivot_buf[ICU_PIVOT_BUF_SIZE];
+ UChar *pivot_source;
+ UChar *pivot_target;
};
typedef struct _uconv_t uconv_t;
#endif
diff --git a/include/libxml/hash.h b/include/libxml/hash.h
index dc8ab7ec..6352874e 100644
--- a/include/libxml/hash.h
+++ b/include/libxml/hash.h
@@ -66,7 +66,7 @@ extern "C" {
*
* Callback to free data from a hash.
*/
-typedef void (*xmlHashDeallocator)(void *payload, xmlChar *name);
+typedef void (*xmlHashDeallocator)(void *payload, const xmlChar *name);
/**
* xmlHashCopier:
* @payload: the data in the hash
@@ -76,7 +76,7 @@ typedef void (*xmlHashDeallocator)(void *payload, xmlChar *name);
*
* Returns a copy of the data or NULL in case of error.
*/
-typedef void *(*xmlHashCopier)(void *payload, xmlChar *name);
+typedef void *(*xmlHashCopier)(void *payload, const xmlChar *name);
/**
* xmlHashScanner:
* @payload: the data in the hash
@@ -85,7 +85,7 @@ typedef void *(*xmlHashCopier)(void *payload, xmlChar *name);
*
* Callback when scanning data in a hash with the simple scanner.
*/
-typedef void (*xmlHashScanner)(void *payload, void *data, xmlChar *name);
+typedef void (*xmlHashScanner)(void *payload, void *data, const xmlChar *name);
/**
* xmlHashScannerFull:
* @payload: the data in the hash
@@ -111,6 +111,9 @@ XMLPUBFUN xmlHashTablePtr XMLCALL
XMLPUBFUN void XMLCALL
xmlHashFree (xmlHashTablePtr table,
xmlHashDeallocator f);
+XMLPUBFUN void XMLCALL
+ xmlHashDefaultDeallocator(void *entry,
+ const xmlChar *name);
/*
* Add a new entry to the hash table.
diff --git a/include/libxml/list.h b/include/libxml/list.h
index 0504e0cf..3211c755 100644
--- a/include/libxml/list.h
+++ b/include/libxml/list.h
@@ -49,7 +49,7 @@ typedef int (*xmlListDataCompare) (const void *data0, const void *data1);
*
* Returns 0 to stop walking the list, 1 otherwise.
*/
-typedef int (*xmlListWalker) (const void *data, const void *user);
+typedef int (*xmlListWalker) (const void *data, void *user);
/* Creation/Deletion */
XMLPUBFUN xmlListPtr XMLCALL
@@ -110,11 +110,11 @@ XMLPUBFUN void XMLCALL
XMLPUBFUN void XMLCALL
xmlListWalk (xmlListPtr l,
xmlListWalker walker,
- const void *user);
+ void *user);
XMLPUBFUN void XMLCALL
xmlListReverseWalk (xmlListPtr l,
xmlListWalker walker,
- const void *user);
+ void *user);
XMLPUBFUN void XMLCALL
xmlListMerge (xmlListPtr l1,
xmlListPtr l2);
diff --git a/include/libxml/nanoftp.h b/include/libxml/nanoftp.h
index abb4bf71..7335faf1 100644
--- a/include/libxml/nanoftp.h
+++ b/include/libxml/nanoftp.h
@@ -16,7 +16,7 @@
#ifdef LIBXML_FTP_ENABLED
/* Needed for portability to Windows 64 bits */
-#if defined(__MINGW32__) || defined(_WIN32_WCE)
+#if defined(_WIN32) && !defined(__CYGWIN__)
#include <winsock2.h>
#else
/**
diff --git a/include/libxml/schemasInternals.h b/include/libxml/schemasInternals.h
index c7cf5525..6fb71139 100644
--- a/include/libxml/schemasInternals.h
+++ b/include/libxml/schemasInternals.h
@@ -3,7 +3,7 @@
* Description: internal interfaces for the XML Schemas handling
* and schema validity checking
* The Schemas development is a Work In Progress.
- * Some of those interfaces are not garanteed to be API or ABI stable !
+ * Some of those interfaces are not guaranteed to be API or ABI stable !
*
* Copy: See Copyright for the status of this software.
*
diff --git a/include/libxml/threads.h b/include/libxml/threads.h
index d31f16ac..9969ae7c 100644
--- a/include/libxml/threads.h
+++ b/include/libxml/threads.h
@@ -72,8 +72,13 @@ XMLPUBFUN void XMLCALL
XMLPUBFUN xmlGlobalStatePtr XMLCALL
xmlGetGlobalState(void);
-#if defined(HAVE_WIN32_THREADS) && !defined(HAVE_COMPILER_TLS) && defined(LIBXML_STATIC_FOR_DLL)
-int XMLCALL xmlDllMain(void *hinstDLL, unsigned long fdwReason, void *lpvReserved);
+#ifdef HAVE_PTHREAD_H
+#elif defined(HAVE_WIN32_THREADS) && !defined(HAVE_COMPILER_TLS) && (!defined(LIBXML_STATIC) || defined(LIBXML_STATIC_FOR_DLL))
+#if defined(LIBXML_STATIC_FOR_DLL)
+int XMLCALL
+xmlDllMain(void *hinstDLL, unsigned long fdwReason,
+ void *lpvReserved);
+#endif
#endif
#ifdef __cplusplus
diff --git a/include/libxml/xmlreader.h b/include/libxml/xmlreader.h
index 2c99e3a7..e8a8bcc9 100644
--- a/include/libxml/xmlreader.h
+++ b/include/libxml/xmlreader.h
@@ -393,7 +393,7 @@ typedef void * xmlTextReaderLocatorPtr;
* @arg: the user argument
* @msg: the message
* @severity: the severity of the error
- * @locator: a locator indicating where the error occured
+ * @locator: a locator indicating where the error occurred
*
* Signature of an error callback from a reader parser
*/
diff --git a/include/libxml/xmlversion.h.in b/include/libxml/xmlversion.h.in
index b173be9e..d10f9754 100644
--- a/include/libxml/xmlversion.h.in
+++ b/include/libxml/xmlversion.h.in
@@ -410,9 +410,6 @@ XMLPUBFUN void XMLCALL xmlCheckVersion(int version);
#endif
#ifdef __GNUC__
-#ifdef HAVE_ANSIDECL_H
-#include <ansidecl.h>
-#endif
/**
* ATTRIBUTE_UNUSED:
diff --git a/include/libxml/xmlwin32version.h b/include/libxml/xmlwin32version.h
index 96412411..e0f2b389 100644
--- a/include/libxml/xmlwin32version.h
+++ b/include/libxml/xmlwin32version.h
@@ -214,9 +214,6 @@ extern void xmlCheckVersion(int version);
* Macro used to signal to GCC unused function parameters
*/
#ifdef __GNUC__
-#ifdef HAVE_ANSIDECL_H
-#include <ansidecl.h>
-#endif
#ifndef ATTRIBUTE_UNUSED
#define ATTRIBUTE_UNUSED
#endif
diff --git a/include/libxml/xmlwin32version.h.in b/include/libxml/xmlwin32version.h.in
index 375f3a4e..2176ad11 100644
--- a/include/libxml/xmlwin32version.h.in
+++ b/include/libxml/xmlwin32version.h.in
@@ -243,9 +243,6 @@ extern void xmlCheckVersion(int version);
#endif
#ifdef __GNUC__
-#ifdef HAVE_ANSIDECL_H
-#include <ansidecl.h>
-#endif
/**
* ATTRIBUTE_UNUSED:
diff --git a/include/win32config.h b/include/win32config.h
index 40cf7df8..7fc74031 100644
--- a/include/win32config.h
+++ b/include/win32config.h
@@ -10,11 +10,9 @@
#if defined(_WIN32_WCE)
#undef HAVE_ERRNO_H
-#include <windows.h>
#include "wincecompat.h"
#else
#define HAVE_SYS_STAT_H
-#define HAVE__STAT
#define HAVE_STAT
#define HAVE_STDLIB_H
#define HAVE_TIME_H
@@ -29,10 +27,6 @@
#define ICONV_CONST const
#endif
-#ifdef NEED_SOCKETS
-#include <wsockcompat.h>
-#endif
-
/*
* Windows platforms may define except
*/
diff --git a/include/wsockcompat.h b/include/wsockcompat.h
index e6a1a993..0484ee36 100644
--- a/include/wsockcompat.h
+++ b/include/wsockcompat.h
@@ -8,7 +8,7 @@
#ifdef _WIN32_WCE
#include <winsock.h>
#else
-#undef HAVE_ERRNO_H
+#include <errno.h>
#include <winsock2.h>
/* the following is a workaround a problem for 'inline' keyword in said
@@ -27,60 +27,23 @@
#endif
#endif
-#if defined( __MINGW32__ ) || defined( _MSC_VER )
-/* Include <errno.h> here to ensure that it doesn't get included later
- * (e.g. by iconv.h) and overwrites the definition of EWOULDBLOCK. */
-#include <errno.h>
-#undef EWOULDBLOCK
-#endif
+#undef XML_SOCKLEN_T
+#define XML_SOCKLEN_T int
-#if !defined SOCKLEN_T
-#define SOCKLEN_T int
+#ifndef ECONNRESET
+#define ECONNRESET WSAECONNRESET
+#endif
+#ifndef EINPROGRESS
+#define EINPROGRESS WSAEINPROGRESS
+#endif
+#ifndef EINTR
+#define EINTR WSAEINTR
+#endif
+#ifndef ESHUTDOWN
+#define ESHUTDOWN WSAESHUTDOWN
+#endif
+#ifndef EWOULDBLOCK
+#define EWOULDBLOCK WSAEWOULDBLOCK
#endif
-
-#define EWOULDBLOCK WSAEWOULDBLOCK
-#define ESHUTDOWN WSAESHUTDOWN
-
-#if (!defined(_MSC_VER) || (_MSC_VER < 1600))
-#define EINPROGRESS WSAEINPROGRESS
-#define EALREADY WSAEALREADY
-#define ENOTSOCK WSAENOTSOCK
-#define EDESTADDRREQ WSAEDESTADDRREQ
-#define EMSGSIZE WSAEMSGSIZE
-#define EPROTOTYPE WSAEPROTOTYPE
-#define ENOPROTOOPT WSAENOPROTOOPT
-#define EPROTONOSUPPORT WSAEPROTONOSUPPORT
-#define ESOCKTNOSUPPORT WSAESOCKTNOSUPPORT
-#define EOPNOTSUPP WSAEOPNOTSUPP
-#define EPFNOSUPPORT WSAEPFNOSUPPORT
-#define EAFNOSUPPORT WSAEAFNOSUPPORT
-#define EADDRINUSE WSAEADDRINUSE
-#define EADDRNOTAVAIL WSAEADDRNOTAVAIL
-#define ENETDOWN WSAENETDOWN
-#define ENETUNREACH WSAENETUNREACH
-#define ENETRESET WSAENETRESET
-#define ECONNABORTED WSAECONNABORTED
-#define ECONNRESET WSAECONNRESET
-#define ENOBUFS WSAENOBUFS
-#define EISCONN WSAEISCONN
-#define ENOTCONN WSAENOTCONN
-#define ETOOMANYREFS WSAETOOMANYREFS
-#define ETIMEDOUT WSAETIMEDOUT
-#define ECONNREFUSED WSAECONNREFUSED
-#define ELOOP WSAELOOP
-#define EHOSTDOWN WSAEHOSTDOWN
-#define EHOSTUNREACH WSAEHOSTUNREACH
-#define EPROCLIM WSAEPROCLIM
-#define EUSERS WSAEUSERS
-#define EDQUOT WSAEDQUOT
-#define ESTALE WSAESTALE
-#define EREMOTE WSAEREMOTE
-/* These cause conflicts with the codes from errno.h. Since they are
- not used in the relevant code (nanoftp, nanohttp), we can leave
- them disabled.
-#define ENAMETOOLONG WSAENAMETOOLONG
-#define ENOTEMPTY WSAENOTEMPTY
-*/
-#endif /* _MSC_VER */
#endif /* __XML_WSOCKCOMPAT_H__ */
diff --git a/libxml.h b/libxml.h
index 88e515f5..64e30f77 100644
--- a/libxml.h
+++ b/libxml.h
@@ -60,6 +60,18 @@ int vfprintf(FILE *, const char *, va_list);
#include "trio.h"
#endif
+#if defined(__clang__) || \
+ (defined(__GNUC__) && (__GNUC__ * 100 + __GNUC_MINOR__ >= 406))
+#define XML_IGNORE_PEDANTIC_WARNINGS \
+ _Pragma("GCC diagnostic push") \
+ _Pragma("GCC diagnostic ignored \"-Wpedantic\"")
+#define XML_POP_WARNINGS \
+ _Pragma("GCC diagnostic pop")
+#else
+#define XML_IGNORE_PEDANTIC_WARNINGS
+#define XML_POP_WARNINGS
+#endif
+
/*
* Internal variable indicating if a callback has been registered for
* node creation/destruction. It avoids spending a lot of time in locking
@@ -96,12 +108,12 @@ int __xmlRandom(void);
#endif
XMLPUBFUN xmlChar * XMLCALL xmlEscapeFormatString(xmlChar **msg);
-int xmlNop(void);
+int xmlInputReadCallbackNop(void *context, char *buffer, int len);
#ifdef IN_LIBXML
#ifdef __GNUC__
#ifdef PIC
-#ifdef linux
+#ifdef __linux__
#if (__GNUC__ == 3 && __GNUC_MINOR__ >= 3) || (__GNUC__ > 3)
#include "elfgcchack.h"
#endif
@@ -109,7 +121,7 @@ int xmlNop(void);
#endif
#endif
#endif
-#if !defined(PIC) && !defined(NOLIBTOOL)
+#if !defined(PIC) && !defined(NOLIBTOOL) && !defined(LIBXML_STATIC)
# define LIBXML_STATIC
#endif
#endif /* ! __XML_LIBXML_H__ */
diff --git a/libxml.m4 b/libxml.m4
index 68cd8242..2d7a6f53 100644
--- a/libxml.m4
+++ b/libxml.m4
@@ -170,7 +170,7 @@ main()
echo "*** If you have an old version installed, it is best to remove it, although"
echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH" ],
[ echo "*** The test program failed to compile or link. See the file config.log for the"
- echo "*** exact error that occured. This usually means LIBXML was incorrectly installed"
+ echo "*** exact error that occurred. This usually means LIBXML was incorrectly installed"
echo "*** or that you have moved LIBXML since it was installed. In the latter case, you"
echo "*** may want to edit the xml2-config script: $XML2_CONFIG" ])
CPPFLAGS="$ac_save_CPPFLAGS"
diff --git a/libxml.spec.in b/libxml.spec.in
index 9029a180..d5f5ccbb 100644
--- a/libxml.spec.in
+++ b/libxml.spec.in
@@ -57,12 +57,15 @@ Requires: libxml2 = %{version}-%{release}
Static library for libxml2 provided for specific uses or shaving a few
microseconds when parsing, do not link to them for generic purpose packages.
-%package python
+%package -n python-%{name}
+%{?python_provide:%python_provide python-%{name}}
Summary: Python bindings for the libxml2 library
Group: Development/Libraries
Requires: libxml2 = %{version}-%{release}
+Obsoletes: %{name}-python < %{version}-%{release}
+Provides: %{name}-python = %{version}-%{release}
-%description python
+%description -n python-%{name}
The libxml2-python package contains a Python 2 module that permits applications
written in the Python programming language, version 2, to use the interface
supplied by the libxml2 library to manipulate XML files.
@@ -73,12 +76,14 @@ this includes parsing and validation even with complex DTDs, either
at parse time or later once the document has been modified.
%if 0%{?with_python3}
-%package python3
+%package -n python3-%{name}
Summary: Python 3 bindings for the libxml2 library
Group: Development/Libraries
Requires: libxml2 = %{version}-%{release}
+Obsoletes: %{name}-python3 < %{version}-%{release}
+Provides: %{name}-python3 = %{version}-%{release}
-%description python3
+%description -n python3-%{name}
The libxml2-python3 package contains a Python 3 module that permits
applications written in the Python programming language, version 3, to use the
interface supplied by the libxml2 library to manipulate XML files.
@@ -92,10 +97,16 @@ at parse time or later once the document has been modified.
%prep
%setup -q
+mkdir py3doc
+cp doc/*.py py3doc
+sed -i 's|#!/usr/bin/python |#!%{__python3} |' py3doc/*.py
+
%build
%configure
make %{_smp_mflags}
+find doc -type f -exec chmod 0644 \{\} \;
+
%install
rm -fr %{buildroot}
@@ -165,7 +176,7 @@ rm -fr %{buildroot}
%{_libdir}/*a
-%files python
+%files -n python-%{name}
%defattr(-, root, root)
%{_libdir}/python2*/site-packages/libxml2.py*
@@ -178,18 +189,16 @@ rm -fr %{buildroot}
%doc doc/python.html
%if 0%{?with_python3}
-%files python3
+%files -n python3-%{name}
%defattr(-, root, root)
%{_libdir}/python3*/site-packages/libxml2.py*
%{_libdir}/python3*/site-packages/drv_libxml2.py*
-%{_libdir}/python3*/site-packages/__pycache__/libxml2.cpython-34.py*
-%{_libdir}/python3*/site-packages/__pycache__/drv_libxml2.cpython-34.py*
+%{_libdir}/python3*/site-packages/__pycache__/*py*
%{_libdir}/python3*/site-packages/libxml2mod*
%doc python/TODO
%doc python/libxml2class.txt
-%doc python/tests/*.py
-%doc doc/*.py
+%doc py3doc/*.py
%doc doc/python.html
%endif # with_python3
diff --git a/libxml2.syms b/libxml2.syms
index 370dcf17..9889cb20 100644
--- a/libxml2.syms
+++ b/libxml2.syms
@@ -2279,3 +2279,10 @@ LIBXML2_2.9.1 {
xmlXPathSetContextNode;
} LIBXML2_2.9.0;
+LIBXML2_2.9.8 {
+ global:
+
+# hash
+ xmlHashDefaultDeallocator;
+} LIBXML2_2.9.1;
+
diff --git a/list.c b/list.c
index d33d9281..24da6b1e 100644
--- a/list.c
+++ b/list.c
@@ -347,7 +347,7 @@ void xmlListDelete(xmlListPtr l)
*
* Remove the first instance associated to data in the list
*
- * Returns 1 if a deallocation occured, or 0 if not found
+ * Returns 1 if a deallocation occurred, or 0 if not found
*/
int
xmlListRemoveFirst(xmlListPtr l, void *data)
@@ -372,7 +372,7 @@ xmlListRemoveFirst(xmlListPtr l, void *data)
*
* Remove the last instance associated to data in the list
*
- * Returns 1 if a deallocation occured, or 0 if not found
+ * Returns 1 if a deallocation occurred, or 0 if not found
*/
int
xmlListRemoveLast(xmlListPtr l, void *data)
@@ -673,7 +673,7 @@ xmlListSort(xmlListPtr l)
* apply the walker function to it
*/
void
-xmlListWalk(xmlListPtr l, xmlListWalker walker, const void *user) {
+xmlListWalk(xmlListPtr l, xmlListWalker walker, void *user) {
xmlLinkPtr lk;
if ((l == NULL) || (walker == NULL))
@@ -694,7 +694,7 @@ xmlListWalk(xmlListPtr l, xmlListWalker walker, const void *user) {
* apply the walker function to it
*/
void
-xmlListReverseWalk(xmlListPtr l, xmlListWalker walker, const void *user) {
+xmlListReverseWalk(xmlListPtr l, xmlListWalker walker, void *user) {
xmlLinkPtr lk;
if ((l == NULL) || (walker == NULL))
diff --git a/macos/src/config-mac.h b/macos/src/config-mac.h
index e9a8f9d9..ca6f9939 100644
--- a/macos/src/config-mac.h
+++ b/macos/src/config-mac.h
@@ -21,27 +21,9 @@
#define HAVE_PTHREAD_H
#define LIBXML_THREAD_ENABLED
-/* Define if you have the _stat function. */
-#define HAVE__STAT
-
-/* Define if you have the class function. */
-#undef HAVE_CLASS
-
-/* Define if you have the finite function. */
-#undef HAVE_FINITE
-
-/* Define if you have the fp_class function. */
-#undef HAVE_FP_CLASS
-
-/* Define if you have the fpclass function. */
-#undef HAVE_FPCLASS
-
/* Define if you have the fprintf function. */
#define HAVE_FPRINTF
-/* Define if you have the isnand function. */
-#undef HAVE_ISNAND
-
/* Define if you have the localtime function. */
#define HAVE_LOCALTIME
@@ -63,18 +45,9 @@
/* Define if you have the stat function. */
#define HAVE_STAT
-/* Define if you have the strdup function. */
-#define HAVE_STRDUP
-
-/* Define if you have the strerror function. */
-#define HAVE_STRERROR
-
/* Define if you have the strftime function. */
#define HAVE_STRFTIME
-/* Define if you have the strndup function. */
-#define HAVE_STRNDUP
-
/* Define if you have the vfprintf function. */
#define HAVE_VFPRINTF
@@ -84,9 +57,6 @@
/* Define if you have the vsprintf function. */
#define HAVE_VSPRINTF
-/* Define if you have the <ansidecl.h> header file. */
-#define HAVE_ANSIDECL_H
-
/* Define if you have the <arpa/inet.h> header file. */
#define HAVE_ARPA_INET_H
@@ -108,21 +78,12 @@
/* Define if you have the <float.h> header file. */
#define HAVE_FLOAT_H
-/* Define if you have the <fp_class.h> header file. */
-#define HAVE_FP_CLASS_H
-
-/* Define if you have the <ieeefp.h> header file. */
-#define HAVE_IEEEFP_H
-
/* Define if you have the <malloc.h> header file. */
#undef HAVE_MALLOC_H
/* Define if you have the <math.h> header file. */
#define HAVE_MATH_H
-/* Define if you have the <nan.h> header file. */
-#define HAVE_NAN_H
-
/* Define if you have the <ndir.h> header file. */
#define HAVE_NDIR_H
@@ -174,9 +135,6 @@
/* Define if you have the <unistd.h> header file. */
#define HAVE_UNISTD_H
-/* Define if you have the <zlib.h> header file. */
-#undef HAVE_ZLIB_H
-
/* Name of package */
#define PACKAGE
diff --git a/nanoftp.c b/nanoftp.c
index 2135ab9b..54fa026d 100644
--- a/nanoftp.c
+++ b/nanoftp.c
@@ -12,8 +12,6 @@
#define HAVE_NETINET_IN_H
#define HAVE_NETDB_H
#define HAVE_SYS_TIME_H
-#else /* TESTING */
-#define NEED_SOCKETS
#endif /* TESTING */
#define IN_LIBXML
@@ -77,14 +75,8 @@
#endif
-#if defined(__MINGW32__) || defined(_WIN32_WCE)
-#ifndef _WINSOCKAPI_
-#define _WINSOCKAPI_
-#endif
+#if defined(_WIN32) && !defined(__CYGWIN__)
#include <wsockcompat.h>
-#include <winsock2.h>
-#undef XML_SOCKLEN_T
-#define XML_SOCKLEN_T unsigned int
#endif
/**
@@ -511,6 +503,8 @@ xmlNanoFTPFreeCtxt(void * ctx) {
if (ctxt->hostname != NULL) xmlFree(ctxt->hostname);
if (ctxt->protocol != NULL) xmlFree(ctxt->protocol);
if (ctxt->path != NULL) xmlFree(ctxt->path);
+ if (ctxt->user != NULL) xmlFree(ctxt->user);
+ if (ctxt->passwd != NULL) xmlFree(ctxt->passwd);
ctxt->passive = 1;
if (ctxt->controlFd != INVALID_SOCKET) closesocket(ctxt->controlFd);
ctxt->controlFd = INVALID_SOCKET;
@@ -907,7 +901,7 @@ xmlNanoFTPConnect(void *ctx) {
__xmlIOErr(XML_FROM_FTP, 0, "getaddrinfo failed");
return (-1);
}
- if (tmp->ai_addrlen > sizeof(ctxt->ftpAddr)) {
+ if ((size_t)tmp->ai_addrlen > sizeof(ctxt->ftpAddr)) {
if (result)
freeaddrinfo (result);
__xmlIOErr(XML_FROM_FTP, 0, "gethostbyname address mismatch");
@@ -1042,6 +1036,7 @@ xmlNanoFTPConnect(void *ctx) {
case 2:
if (proxyPasswd == NULL)
break;
+ /* Falls through. */
case 3:
if (proxyPasswd != NULL)
snprintf(buf, sizeof(buf), "PASS %s\r\n", proxyPasswd);
@@ -1111,6 +1106,7 @@ xmlNanoFTPConnect(void *ctx) {
ctxt->controlFd = INVALID_SOCKET;
return(-1);
}
+ /* Falls through. */
case 2:
/* USER user@host command */
if (ctxt->user == NULL)
@@ -1164,6 +1160,7 @@ xmlNanoFTPConnect(void *ctx) {
ctxt->controlFd = INVALID_SOCKET;
return(-1);
}
+ /* Falls through. */
case 3:
/*
* If you need support for other Proxy authentication scheme
@@ -1212,6 +1209,7 @@ xmlNanoFTPConnect(void *ctx) {
case 3:
__xmlIOErr(XML_FROM_FTP, XML_FTP_ACCNT,
"FTP server asking for ACCNT on anonymous\n");
+ /* Falls through. */
case 1:
case 4:
case 5:
diff --git a/nanohttp.c b/nanohttp.c
index e109ad75..2143718a 100644
--- a/nanohttp.c
+++ b/nanohttp.c
@@ -11,7 +11,6 @@
* daniel@veillard.com
*/
-#define NEED_SOCKETS
#define IN_LIBXML
#include "libxml.h"
@@ -64,7 +63,7 @@
#ifdef HAVE_STRINGS_H
#include <strings.h>
#endif
-#ifdef HAVE_ZLIB_H
+#ifdef LIBXML_ZLIB_ENABLED
#include <zlib.h>
#endif
@@ -74,14 +73,8 @@
#define XML_SOCKLEN_T unsigned int
#endif
-#if defined(__MINGW32__) || defined(_WIN32_WCE)
-#ifndef _WINSOCKAPI_
-#define _WINSOCKAPI_
-#endif
+#if defined(_WIN32) && !defined(__CYGWIN__)
#include <wsockcompat.h>
-#include <winsock2.h>
-#undef XML_SOCKLEN_T
-#define XML_SOCKLEN_T unsigned int
#endif
#include <libxml/globals.h>
@@ -152,7 +145,7 @@ typedef struct xmlNanoHTTPCtxt {
char *authHeader; /* contents of {WWW,Proxy}-Authenticate header */
char *encoding; /* encoding extracted from the contentType */
char *mimeType; /* Mime-Type extracted from the contentType */
-#ifdef HAVE_ZLIB_H
+#ifdef LIBXML_ZLIB_ENABLED
z_stream *strm; /* Zlib stream object */
int usesGzip; /* "Content-Encoding: gzip" was detected */
#endif
@@ -182,7 +175,21 @@ xmlHTTPErrMemory(const char *extra)
*/
static int socket_errno(void) {
#ifdef _WINSOCKAPI_
- return(WSAGetLastError());
+ int err = WSAGetLastError();
+ switch(err) {
+ case WSAECONNRESET:
+ return(ECONNRESET);
+ case WSAEINPROGRESS:
+ return(EINPROGRESS);
+ case WSAEINTR:
+ return(EINTR);
+ case WSAESHUTDOWN:
+ return(ESHUTDOWN);
+ case WSAEWOULDBLOCK:
+ return(EWOULDBLOCK);
+ default:
+ return(err);
+ }
#else
return(errno);
#endif
@@ -427,7 +434,7 @@ xmlNanoHTTPFreeCtxt(xmlNanoHTTPCtxtPtr ctxt) {
if (ctxt->mimeType != NULL) xmlFree(ctxt->mimeType);
if (ctxt->location != NULL) xmlFree(ctxt->location);
if (ctxt->authHeader != NULL) xmlFree(ctxt->authHeader);
-#ifdef HAVE_ZLIB_H
+#ifdef LIBXML_ZLIB_ENABLED
if (ctxt->strm != NULL) {
inflateEnd(ctxt->strm);
xmlFree(ctxt->strm);
@@ -629,7 +636,7 @@ xmlNanoHTTPRecv(xmlNanoHTTPCtxtPtr ctxt)
if ((select(ctxt->fd + 1, &rfd, NULL, NULL, &tv) < 1)
#if defined(EINTR)
- && (errno != EINTR)
+ && (socket_errno() != EINTR)
#endif
)
return (0);
@@ -810,7 +817,7 @@ xmlNanoHTTPScanAnswer(xmlNanoHTTPCtxtPtr ctxt, const char *line) {
if (ctxt->authHeader != NULL)
xmlFree(ctxt->authHeader);
ctxt->authHeader = xmlMemStrdup(cur);
-#ifdef HAVE_ZLIB_H
+#ifdef LIBXML_ZLIB_ENABLED
} else if ( !xmlStrncasecmp( BAD_CAST line, BAD_CAST"Content-Encoding:", 17) ) {
cur += 17;
while ((*cur == ' ') || (*cur == '\t')) cur++;
@@ -1038,16 +1045,13 @@ xmlNanoHTTPConnectAttempt(struct sockaddr *addr)
static SOCKET
xmlNanoHTTPConnectHost(const char *host, int port)
{
- struct hostent *h;
struct sockaddr *addr = NULL;
- struct in_addr ia;
struct sockaddr_in sockin;
#ifdef SUPPORT_IP6
struct in6_addr ia6;
struct sockaddr_in6 sockin6;
#endif
- int i;
SOCKET s;
memset (&sockin, 0, sizeof(sockin));
@@ -1084,7 +1088,7 @@ xmlNanoHTTPConnectHost(const char *host, int port)
for (res = result; res; res = res->ai_next) {
if (res->ai_family == AF_INET) {
- if (res->ai_addrlen > sizeof(sockin)) {
+ if ((size_t)res->ai_addrlen > sizeof(sockin)) {
__xmlIOErr(XML_FROM_HTTP, 0, "address size mismatch\n");
freeaddrinfo (result);
return INVALID_SOCKET;
@@ -1094,7 +1098,7 @@ xmlNanoHTTPConnectHost(const char *host, int port)
addr = (struct sockaddr *)&sockin;
#ifdef SUPPORT_IP6
} else if (have_ipv6 () && (res->ai_family == AF_INET6)) {
- if (res->ai_addrlen > sizeof(sockin6)) {
+ if ((size_t)res->ai_addrlen > sizeof(sockin6)) {
__xmlIOErr(XML_FROM_HTTP, 0, "address size mismatch\n");
freeaddrinfo (result);
return INVALID_SOCKET;
@@ -1122,6 +1126,10 @@ xmlNanoHTTPConnectHost(const char *host, int port)
#endif
#if !defined(HAVE_GETADDRINFO) || !defined(_WIN32)
{
+ struct hostent *h;
+ struct in_addr ia;
+ int i;
+
h = gethostbyname (GETHOSTBYNAME_ARG_CAST host);
if (h == NULL) {
@@ -1130,7 +1138,7 @@ xmlNanoHTTPConnectHost(const char *host, int port)
* extraction code. it work on Linux, if it work on your platform
* and one want to enable it, send me the defined(foobar) needed
*/
-#if defined(HAVE_NETDB_H) && defined(HOST_NOT_FOUND) && defined(linux)
+#if defined(HAVE_NETDB_H) && defined(HOST_NOT_FOUND) && defined(__linux__)
const char *h_err_txt = "";
switch (h_errno) {
@@ -1265,7 +1273,7 @@ xmlNanoHTTPOpenRedir(const char *URL, char **contentType, char **redir) {
int
xmlNanoHTTPRead(void *ctx, void *dest, int len) {
xmlNanoHTTPCtxtPtr ctxt = (xmlNanoHTTPCtxtPtr) ctx;
-#ifdef HAVE_ZLIB_H
+#ifdef LIBXML_ZLIB_ENABLED
int bytes_read = 0;
int orig_avail_in;
int z_ret;
@@ -1275,7 +1283,7 @@ xmlNanoHTTPRead(void *ctx, void *dest, int len) {
if (dest == NULL) return(-1);
if (len <= 0) return(0);
-#ifdef HAVE_ZLIB_H
+#ifdef LIBXML_ZLIB_ENABLED
if (ctxt->usesGzip == 1) {
if (ctxt->strm == NULL) return(0);
@@ -1416,16 +1424,16 @@ retry:
/* 1 for '?' */
blen += strlen(ctxt->query) + 1;
blen += strlen(method) + strlen(ctxt->path) + 24;
-#ifdef HAVE_ZLIB_H
+#ifdef LIBXML_ZLIB_ENABLED
/* reserve for possible 'Accept-Encoding: gzip' string */
blen += 23;
#endif
if (ctxt->port != 80) {
/* reserve space for ':xxxxx', incl. potential proxy */
if (proxy)
- blen += 12;
+ blen += 17;
else
- blen += 6;
+ blen += 11;
}
bp = (char*)xmlMallocAtomic(blen);
if ( bp == NULL ) {
@@ -1460,7 +1468,7 @@ retry:
ctxt->hostname, ctxt->port);
}
-#ifdef HAVE_ZLIB_H
+#ifdef LIBXML_ZLIB_ENABLED
p += snprintf(p, blen - (p - bp), "Accept-Encoding: gzip\r\n");
#endif
@@ -1534,7 +1542,8 @@ retry:
xmlGenericError(xmlGenericErrorContext,
"\nRedirect to: %s\n", ctxt->location);
#endif
- while ( xmlNanoHTTPRecv(ctxt) > 0 ) ;
+ while ( xmlNanoHTTPRecv(ctxt) > 0 )
+ ;
if (nbRedirects < XML_NANO_HTTP_MAX_REDIR) {
nbRedirects++;
if (redirURL != NULL)
diff --git a/os400/initscript.sh b/os400/initscript.sh
index cc52e45e..42ce54d5 100644
--- a/os400/initscript.sh
+++ b/os400/initscript.sh
@@ -50,7 +50,7 @@ setenv TGTCCSID '500' # Target CCSID of objects.
setenv DEBUG '*ALL' # Debug level.
setenv OPTIMIZE '10' # Optimisation level.
setenv OUTPUT '*NONE' # Compilation output option.
-setenv TGTRLS 'V5R3M0' # Target OS release.
+setenv TGTRLS 'V6R1M0' # Target OS release.
setenv IFSDIR '/libxml2' # Installation IFS directory.
@@ -217,7 +217,7 @@ make_module()
cat "${2}" >> __tmpsrcf.c
CMD="CRTCMOD MODULE(${TARGETLIB}/${1}) SRCSTMF('__tmpsrcf.c')"
# CMD="${CMD} OPTION(*INCDIRFIRST *SHOWINC *SHOWSYS)"
- CMD="${CMD} OPTION(*INCDIRFIRST)"
+ CMD="${CMD} OPTION(*INCDIRFIRST) FLAG(10)"
CMD="${CMD} SYSIFCOPT(*IFS64IO) LANGLVL(*EXTENDED) LOCALETYPE(*LOCALE)"
CMD="${CMD} INCDIR("
if [ -z "${SYSICONV}" ]
diff --git a/os400/libxmlrpg/schemasInternals.rpgle b/os400/libxmlrpg/schemasInternals.rpgle
index 8d3013ef..765ed007 100644
--- a/os400/libxmlrpg/schemasInternals.rpgle
+++ b/os400/libxmlrpg/schemasInternals.rpgle
@@ -2,7 +2,7 @@
* Description: internal interfaces for the XML Schemas handling
* and schema validity checking
* The Schemas development is a Work In Progress.
- * Some of those interfaces are not garanteed to be API or
+ * Some of those interfaces are not guaranteed to be API or
* ABI stable !
*
* Copy: See Copyright for the status of this software.
diff --git a/os400/libxmlrpg/xmlreader.rpgle b/os400/libxmlrpg/xmlreader.rpgle
index 9ec76b3b..f9ab207a 100644
--- a/os400/libxmlrpg/xmlreader.rpgle
+++ b/os400/libxmlrpg/xmlreader.rpgle
@@ -624,7 +624,7 @@
* @arg: the user argument
* @msg: the message
* @severity: the severity of the error
- * @locator: a locator indicating where the error occured
+ * @locator: a locator indicating where the error occurred
*
* Signature of an error callback from a reader parser
diff --git a/os400/libxmlrpg/xmlstring.rpgle b/os400/libxmlrpg/xmlstring.rpgle
index 8980fc04..59a7625c 100644
--- a/os400/libxmlrpg/xmlstring.rpgle
+++ b/os400/libxmlrpg/xmlstring.rpgle
@@ -115,7 +115,7 @@
d like(xmlCint)
d buf * value options(*string) xmlChar *
d len value like(xmlCint)
- d msg * value options(*string) const xmlChar *
+ d msg * value options(*string) const char *
d arg1 * value options(*string: *nopass)
d arg2 * value options(*string: *nopass)
d arg3 * value options(*string: *nopass)
@@ -129,7 +129,7 @@
d like(xmlCint)
d buf * value options(*string) xmlChar *
d len value like(xmlCint)
- d msg * value options(*string) const xmlChar *
+ d msg * value options(*string) const char *
d ap likeds(xmlVaList)
d xmlGetUTF8Char pr extproc('xmlGetUTF8Char')
diff --git a/os400/make-src.sh b/os400/make-src.sh
index 6094de8e..4c03c565 100644
--- a/os400/make-src.sh
+++ b/os400/make-src.sh
@@ -17,7 +17,7 @@ cd "${TOPDIR}"
echo '#pragma comment(user, "libxml2 version '"${LIBXML_VERSION}"'")' > os400.c
echo '#pragma comment(user, __DATE__)' >> os400.c
echo '#pragma comment(user, __TIME__)' >> os400.c
-echo '#pragma comment(copyright, "Copyright (C) 1998-2015 Daniel Veillard. OS/400 version by P. Monnerat.")' >> os400.c
+echo '#pragma comment(copyright, "Copyright (C) 1998-2017 Daniel Veillard. OS/400 version by P. Monnerat.")' >> os400.c
make_module OS400 os400.c
LINK= # No need to rebuild service program yet.
MODULES=
diff --git a/os400/make.sh b/os400/make.sh
index 95a35a28..860365eb 100644
--- a/os400/make.sh
+++ b/os400/make.sh
@@ -34,7 +34,7 @@ fi
# Copy some documentation files if needed.
for TEXT in "${TOPDIR}/AUTHORS" "${TOPDIR}/ChangeLog" \
- "${TOPDIR}/Copyright" "${TOPDIR}/HACKING" "${TOPDIR}/README" \
+ "${TOPDIR}/Copyright" "${TOPDIR}/CONTRIBUTING" "${TOPDIR}/README" \
"${TOPDIR}/MAINTAINERS" "${TOPDIR}/NEWS" "${TOPDIR}/TODO" \
"${TOPDIR}/TODO_SCHEMAS" "${TOPDIR}/os400/README400"
do if [ -f "${TEXT}" ]
diff --git a/os400/os400config.h.in b/os400/os400config.h.in
index 3966ac81..1840c17c 100644
--- a/os400/os400config.h.in
+++ b/os400/os400config.h.in
@@ -6,9 +6,6 @@
*** Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
**/
-/* Define to 1 if you have the <ansidecl.h> header file. */
-#undef HAVE_ANSIDECL_H
-
/* Define to 1 if you have the <arpa/inet.h> header file. */
#define HAVE_ARPA_INET_H 1
@@ -18,9 +15,6 @@
/* Whether struct sockaddr::__ss_family exists */
#undef HAVE_BROKEN_SS_FAMILY
-/* Define to 1 if you have the `class' function. */
-#undef HAVE_CLASS
-
/* Define to 1 if you have the <ctype.h> header file. */
#define HAVE_CTYPE_H 1
@@ -42,24 +36,12 @@
/* Define to 1 if you have the <fcntl.h> header file. */
#define HAVE_FCNTL_H 1
-/* Define to 1 if you have the `finite' function. */
-#undef HAVE_FINITE
-
/* Define to 1 if you have the <float.h> header file. */
#define HAVE_FLOAT_H 1
-/* Define to 1 if you have the `fpclass' function. */
-#undef HAVE_FPCLASS
-
/* Define to 1 if you have the `fprintf' function. */
#undef HAVE_FPRINTF /* Use trio. */
-/* Define to 1 if you have the `fp_class' function. */
-#undef HAVE_FP_CLASS
-
-/* Define to 1 if you have the <fp_class.h> header file. */
-#undef HAVE_FP_CLASS_H
-
/* Define to 1 if you have the `ftime' function. */
#undef HAVE_FTIME
@@ -69,9 +51,6 @@
/* Define to 1 if you have the `gettimeofday' function. */
#undef HAVE_GETTIMEOFDAY
-/* Define to 1 if you have the <ieeefp.h> header file. */
-#undef HAVE_IEEEFP_H
-
/* Define to 1 if you have the <inttypes.h> header file. */
#define HAVE_INTTYPES_H 1
@@ -84,15 +63,9 @@
/* Define if isnan is there */
#undef HAVE_ISNAN
-/* Define to 1 if you have the `isnand' function. */
-#undef HAVE_ISNAND
-
/* Define if history library is there (-lhistory) */
#undef HAVE_LIBHISTORY
-/* Have compression library */
-#undef HAVE_LIBLZMA
-
/* Define if pthread library is there (-lpthread) */
#undef HAVE_LIBPTHREAD
@@ -108,9 +81,6 @@
/* Define to 1 if you have the `localtime' function. */
#define HAVE_LOCALTIME 1
-/* Define to 1 if you have the <lzma.h> header file. */
-#undef HAVE_LZMA_H
-
/* Define to 1 if you have the <malloc.h> header file. */
#undef HAVE_MALLOC_H
@@ -131,9 +101,6 @@
# undef /**/ HAVE_MMAP
#endif
-/* Define to 1 if you have the <nan.h> header file. */
-#undef HAVE_NAN_H
-
/* Define to 1 if you have the <ndir.h> header file, and it defines `DIR'. */
#undef HAVE_NDIR_H
@@ -206,12 +173,6 @@
/* Define to 1 if you have the <stdlib.h> header file. */
#define HAVE_STDLIB_H 1
-/* Define to 1 if you have the `strdup' function. */
-#define HAVE_STRDUP 1
-
-/* Define to 1 if you have the `strerror' function. */
-#define HAVE_STRERROR 1
-
/* Define to 1 if you have the `strftime' function. */
#define HAVE_STRFTIME 1
@@ -221,9 +182,6 @@
/* Define to 1 if you have the <string.h> header file. */
#define HAVE_STRING_H 1
-/* Define to 1 if you have the `strndup' function. */
-#undef HAVE_STRNDUP
-
/* Define to 1 if you have the <sys/dir.h> header file, and it defines `DIR'.
*/
#undef HAVE_SYS_DIR_H
@@ -274,17 +232,6 @@
/* Define to 1 if you have the `vsprintf' function. */
#undef HAVE_VSPRINTF /* Use trio. */
-/* Define to 1 if you have the <zlib.h> header file. */
-/* Actually dependent on the compilation script. */
-#if @WITH_ZLIB@
-#define HAVE_ZLIB_H 1
-#else
-#undef HAVE_ZLIB_H
-#endif
-
-/* Define to 1 if you have the `_stat' function. */
-#undef HAVE__STAT
-
/* Whether __va_copy() is available */
#undef HAVE___VA_COPY
@@ -333,9 +280,6 @@
#define below would cause a syntax error. */
#undef _UINT32_T
-/* Using the Win32 Socket implementation */
-#undef _WINSOCKAPI_
-
/* ss_family is not defined here, use __ss_family instead */
#undef ss_family
diff --git a/os400/wrappers.c b/os400/wrappers.c
index 9f592b79..06f6c269 100644
--- a/os400/wrappers.c
+++ b/os400/wrappers.c
@@ -110,7 +110,7 @@ _lx_dlerror(void)
}
-#ifdef HAVE_ZLIB_H
+#ifdef LIBXML_ZLIB_ENABLED
#include <zlib.h>
gzFile
diff --git a/os400/wrappers.h b/os400/wrappers.h
index 388ec8c2..6f3e6c9d 100644
--- a/os400/wrappers.h
+++ b/os400/wrappers.h
@@ -43,7 +43,7 @@ extern void * _lx_dlsym(void * handle, const char * symbol);
extern char * _lx_dlerror(void);
-#ifdef HAVE_ZLIB_H
+#ifdef LIBXML_ZLIB_ENABLED
#include <zlib.h>
diff --git a/parser.c b/parser.c
index 63ae15f0..ca9fde2c 100644
--- a/parser.c
+++ b/parser.c
@@ -30,10 +30,15 @@
* daniel@veillard.com
*/
+/* To avoid EBCDIC trouble when parsing on zOS */
+#if defined(__MVS__)
+#pragma convert("ISO8859-1")
+#endif
+
#define IN_LIBXML
#include "libxml.h"
-#if defined(WIN32) && !defined (__CYGWIN__)
+#if defined(_WIN32) && !defined (__CYGWIN__)
#define XML_DIR_SEP '\\'
#else
#define XML_DIR_SEP '/'
@@ -43,6 +48,7 @@
#include <limits.h>
#include <string.h>
#include <stdarg.h>
+#include <stddef.h>
#include <libxml/xmlmemory.h>
#include <libxml/threads.h>
#include <libxml/globals.h>
@@ -77,12 +83,6 @@
#ifdef HAVE_UNISTD_H
#include <unistd.h>
#endif
-#ifdef HAVE_ZLIB_H
-#include <zlib.h>
-#endif
-#ifdef HAVE_LZMA_H
-#include <lzma.h>
-#endif
#include "buf.h"
#include "enc.h"
@@ -149,7 +149,7 @@ xmlParserEntityCheck(xmlParserCtxtPtr ctxt, size_t size,
rep = xmlStringDecodeEntities(ctxt, ent->content,
XML_SUBSTITUTE_REF, 0, 0, 0);
--ctxt->depth;
- if (ctxt->errNo == XML_ERR_ENTITY_LOOP) {
+ if ((rep == NULL) || (ctxt->errNo == XML_ERR_ENTITY_LOOP)) {
ent->content[0] = 0;
}
@@ -1087,7 +1087,12 @@ typedef xmlDefAttrs *xmlDefAttrsPtr;
struct _xmlDefAttrs {
int nbAttrs; /* number of defaulted attributes on that element */
int maxAttrs; /* the size of the array */
- const xmlChar *values[5]; /* array of localname/prefix/values/external */
+#if __STDC_VERSION__ >= 199901L
+ /* Using a C99 flexible array member avoids UBSan errors. */
+ const xmlChar *values[]; /* array of localname/prefix/values/external */
+#else
+ const xmlChar *values[5];
+#endif
};
/**
@@ -1324,7 +1329,7 @@ xmlAddSpecialAttr(xmlParserCtxtPtr ctxt,
return;
xmlHashAddEntry2(ctxt->attsSpecial, fullname, fullattr,
- (void *) (long) type);
+ (void *) (ptrdiff_t) type);
return;
mem_error:
@@ -1343,7 +1348,7 @@ xmlCleanSpecialAttrCallback(void *payload, void *data,
const xmlChar *unused ATTRIBUTE_UNUSED) {
xmlParserCtxtPtr ctxt = (xmlParserCtxtPtr) data;
- if (((long) payload) == XML_ATTRIBUTE_CDATA) {
+ if (((ptrdiff_t) payload) == XML_ATTRIBUTE_CDATA) {
xmlHashRemoveEntry2(ctxt->attsSpecial, fullname, fullattr, NULL);
}
}
@@ -1855,7 +1860,7 @@ nameNsPush(xmlParserCtxtPtr ctxt, const xmlChar * value,
ctxt->name = value;
ctxt->pushTab[ctxt->nameNr * 3] = (void *) prefix;
ctxt->pushTab[ctxt->nameNr * 3 + 1] = (void *) URI;
- ctxt->pushTab[ctxt->nameNr * 3 + 2] = (void *) (long) nsNr;
+ ctxt->pushTab[ctxt->nameNr * 3 + 2] = (void *) (ptrdiff_t) nsNr;
return (ctxt->nameNr++);
mem_error:
xmlErrMemory(ctxt, NULL);
@@ -2037,10 +2042,8 @@ static int spacePop(xmlParserCtxtPtr ctxt) {
#define SKIP(val) do { \
ctxt->nbChars += (val),ctxt->input->cur += (val),ctxt->input->col+=(val); \
- if (*ctxt->input->cur == '%') xmlParserHandlePEReference(ctxt); \
- if ((*ctxt->input->cur == 0) && \
- (xmlParserInputGrow(ctxt->input, INPUT_CHUNK) <= 0)) \
- xmlPopInput(ctxt); \
+ if (*ctxt->input->cur == 0) \
+ xmlParserInputGrow(ctxt->input, INPUT_CHUNK); \
} while (0)
#define SKIPL(val) do { \
@@ -2052,10 +2055,8 @@ static int spacePop(xmlParserCtxtPtr ctxt) {
ctxt->nbChars++; \
ctxt->input->cur++; \
} \
- if (*ctxt->input->cur == '%') xmlParserHandlePEReference(ctxt); \
- if ((*ctxt->input->cur == 0) && \
- (xmlParserInputGrow(ctxt->input, INPUT_CHUNK) <= 0)) \
- xmlPopInput(ctxt); \
+ if (*ctxt->input->cur == 0) \
+ xmlParserInputGrow(ctxt->input, INPUT_CHUNK); \
} while (0)
#define SHRINK if ((ctxt->progressive == 0) && \
@@ -2065,10 +2066,9 @@ static int spacePop(xmlParserCtxtPtr ctxt) {
static void xmlSHRINK (xmlParserCtxtPtr ctxt) {
xmlParserInputShrink(ctxt->input);
- if ((*ctxt->input->cur == 0) &&
- (xmlParserInputGrow(ctxt->input, INPUT_CHUNK) <= 0))
- xmlPopInput(ctxt);
- }
+ if (*ctxt->input->cur == 0)
+ xmlParserInputGrow(ctxt->input, INPUT_CHUNK);
+}
#define GROW if ((ctxt->progressive == 0) && \
(ctxt->input->end - ctxt->input->cur < INPUT_CHUNK)) \
@@ -2080,7 +2080,8 @@ static void xmlGROW (xmlParserCtxtPtr ctxt) {
if (((curEnd > (unsigned long) XML_MAX_LOOKUP_LIMIT) ||
(curBase > (unsigned long) XML_MAX_LOOKUP_LIMIT)) &&
- ((ctxt->input->buf) && (ctxt->input->buf->readcallback != (xmlInputReadCallback) xmlNop)) &&
+ ((ctxt->input->buf) &&
+ (ctxt->input->buf->readcallback != xmlInputReadCallbackNop)) &&
((ctxt->options & XML_PARSE_HUGE) == 0)) {
xmlFatalErr(ctxt, XML_ERR_INTERNAL_ERROR, "Huge input lookup");
xmlHaltParser(ctxt);
@@ -2093,9 +2094,8 @@ static void xmlGROW (xmlParserCtxtPtr ctxt) {
xmlFatalErr(ctxt, XML_ERR_INTERNAL_ERROR, "cur index out of bound");
return;
}
- if ((ctxt->input->cur != NULL) && (*ctxt->input->cur == 0) &&
- (xmlParserInputGrow(ctxt->input, INPUT_CHUNK) <= 0))
- xmlPopInput(ctxt);
+ if ((ctxt->input->cur != NULL) && (*ctxt->input->cur == 0))
+ xmlParserInputGrow(ctxt->input, INPUT_CHUNK);
}
#define SKIP_BLANKS xmlSkipBlankChars(ctxt)
@@ -2115,7 +2115,6 @@ static void xmlGROW (xmlParserCtxtPtr ctxt) {
ctxt->input->line++; ctxt->input->col = 1; \
} else ctxt->input->col++; \
ctxt->input->cur += l; \
- if (*ctxt->input->cur == '%') xmlParserHandlePEReference(ctxt); \
} while (0)
#define CUR_CHAR(l) xmlCurrentChar(ctxt, &l)
@@ -2165,26 +2164,35 @@ xmlSkipBlankChars(xmlParserCtxtPtr ctxt) {
}
ctxt->input->cur = cur;
} else {
- int cur;
- do {
- cur = CUR;
- while ((IS_BLANK_CH(cur) && /* CHECKED tstblanks.xml */
- (ctxt->instate != XML_PARSER_EOF))) {
+ int expandPE = ((ctxt->external != 0) || (ctxt->inputNr != 1));
+
+ while (1) {
+ if (IS_BLANK_CH(CUR)) { /* CHECKED tstblanks.xml */
NEXT;
- cur = CUR;
- res++;
- }
- while ((cur == 0) && (ctxt->inputNr > 1) &&
- (ctxt->instate != XML_PARSER_COMMENT)) {
- xmlPopInput(ctxt);
- cur = CUR;
- }
- /*
- * Need to handle support of entities branching here
- */
- if (*ctxt->input->cur == '%') xmlParserHandlePEReference(ctxt);
- } while ((IS_BLANK(cur)) && /* CHECKED tstblanks.xml */
- (ctxt->instate != XML_PARSER_EOF));
+ } else if (CUR == '%') {
+ /*
+ * Need to handle support of entities branching here
+ */
+ if ((expandPE == 0) || (IS_BLANK_CH(NXT(1))) || (NXT(1) == 0))
+ break;
+ xmlParsePEReference(ctxt);
+ } else if (CUR == 0) {
+ if (ctxt->inputNr <= 1)
+ break;
+ xmlPopInput(ctxt);
+ } else {
+ break;
+ }
+
+ /*
+ * Also increase the counter when entering or exiting a PERef.
+ * The spec says: "When a parameter-entity reference is recognized
+ * in the DTD and included, its replacement text MUST be enlarged
+ * by the attachment of one leading and one following space (#x20)
+ * character."
+ */
+ res++;
+ }
}
return(res);
}
@@ -2210,10 +2218,13 @@ xmlPopInput(xmlParserCtxtPtr ctxt) {
if (xmlParserDebugEntities)
xmlGenericError(xmlGenericErrorContext,
"Popping input %d\n", ctxt->inputNr);
+ if ((ctxt->inputNr > 1) && (ctxt->inSubset == 0) &&
+ (ctxt->instate != XML_PARSER_EOF))
+ xmlFatalErr(ctxt, XML_ERR_INTERNAL_ERROR,
+ "Unfinished entity outside the DTD");
xmlFreeInputStream(inputPop(ctxt));
- if ((*ctxt->input->cur == 0) &&
- (xmlParserInputGrow(ctxt->input, INPUT_CHUNK) <= 0))
- return(xmlPopInput(ctxt));
+ if (*ctxt->input->cur == 0)
+ xmlParserInputGrow(ctxt->input, INPUT_CHUNK);
return(CUR);
}
@@ -2239,6 +2250,13 @@ xmlPushInput(xmlParserCtxtPtr ctxt, xmlParserInputPtr input) {
xmlGenericError(xmlGenericErrorContext,
"Pushing input %d : %.30s\n", ctxt->inputNr+1, input->cur);
}
+ if (((ctxt->inputNr > 40) && ((ctxt->options & XML_PARSE_HUGE) == 0)) ||
+ (ctxt->inputNr > 1024)) {
+ xmlFatalErr(ctxt, XML_ERR_ENTITY_LOOP, NULL);
+ while (ctxt->inputNr > 1)
+ xmlFreeInputStream(inputPop(ctxt));
+ return(-1);
+ }
ret = inputPush(ctxt, input);
if (ctxt->instate == XML_PARSER_EOF)
return(-1);
@@ -2444,57 +2462,6 @@ xmlParseStringCharRef(xmlParserCtxtPtr ctxt, const xmlChar **str) {
}
/**
- * xmlNewBlanksWrapperInputStream:
- * @ctxt: an XML parser context
- * @entity: an Entity pointer
- *
- * Create a new input stream for wrapping
- * blanks around a PEReference
- *
- * Returns the new input stream or NULL
- */
-
-static void deallocblankswrapper (xmlChar *str) {xmlFree(str);}
-
-static xmlParserInputPtr
-xmlNewBlanksWrapperInputStream(xmlParserCtxtPtr ctxt, xmlEntityPtr entity) {
- xmlParserInputPtr input;
- xmlChar *buffer;
- size_t length;
- if (entity == NULL) {
- xmlFatalErr(ctxt, XML_ERR_INTERNAL_ERROR,
- "xmlNewBlanksWrapperInputStream entity\n");
- return(NULL);
- }
- if (xmlParserDebugEntities)
- xmlGenericError(xmlGenericErrorContext,
- "new blanks wrapper for entity: %s\n", entity->name);
- input = xmlNewInputStream(ctxt);
- if (input == NULL) {
- return(NULL);
- }
- length = xmlStrlen(entity->name) + 5;
- buffer = xmlMallocAtomic(length);
- if (buffer == NULL) {
- xmlErrMemory(ctxt, NULL);
- xmlFree(input);
- return(NULL);
- }
- buffer [0] = ' ';
- buffer [1] = '%';
- buffer [length-3] = ';';
- buffer [length-2] = ' ';
- buffer [length-1] = 0;
- memcpy(buffer + 2, entity->name, length - 5);
- input->free = deallocblankswrapper;
- input->base = buffer;
- input->cur = buffer;
- input->length = length;
- input->end = &buffer[length];
- return(input);
-}
-
-/**
* xmlParserHandlePEReference:
* @ctxt: the parser context
*
@@ -2528,11 +2495,6 @@ xmlNewBlanksWrapperInputStream(xmlParserCtxtPtr ctxt, xmlEntityPtr entity) {
*/
void
xmlParserHandlePEReference(xmlParserCtxtPtr ctxt) {
- const xmlChar *name;
- xmlEntityPtr entity = NULL;
- xmlParserInputPtr input;
-
- if (RAW != '%') return;
switch(ctxt->instate) {
case XML_PARSER_CDATA_SECTION:
return;
@@ -2587,128 +2549,7 @@ xmlParserHandlePEReference(xmlParserCtxtPtr ctxt) {
return;
}
- NEXT;
- name = xmlParseName(ctxt);
- if (xmlParserDebugEntities)
- xmlGenericError(xmlGenericErrorContext,
- "PEReference: %s\n", name);
- if (name == NULL) {
- xmlFatalErr(ctxt, XML_ERR_PEREF_NO_NAME, NULL);
- } else {
- if (RAW == ';') {
- NEXT;
- if ((ctxt->sax != NULL) && (ctxt->sax->getParameterEntity != NULL))
- entity = ctxt->sax->getParameterEntity(ctxt->userData, name);
- if (ctxt->instate == XML_PARSER_EOF)
- return;
- if (entity == NULL) {
-
- /*
- * [ WFC: Entity Declared ]
- * In a document without any DTD, a document with only an
- * internal DTD subset which contains no parameter entity
- * references, or a document with "standalone='yes'", ...
- * ... The declaration of a parameter entity must precede
- * any reference to it...
- */
- if ((ctxt->standalone == 1) ||
- ((ctxt->hasExternalSubset == 0) &&
- (ctxt->hasPErefs == 0))) {
- xmlFatalErrMsgStr(ctxt, XML_ERR_UNDECLARED_ENTITY,
- "PEReference: %%%s; not found\n", name);
- } else {
- /*
- * [ VC: Entity Declared ]
- * In a document with an external subset or external
- * parameter entities with "standalone='no'", ...
- * ... The declaration of a parameter entity must precede
- * any reference to it...
- */
- if ((ctxt->validate) && (ctxt->vctxt.error != NULL)) {
- xmlValidityError(ctxt, XML_WAR_UNDECLARED_ENTITY,
- "PEReference: %%%s; not found\n",
- name, NULL);
- } else
- xmlWarningMsg(ctxt, XML_WAR_UNDECLARED_ENTITY,
- "PEReference: %%%s; not found\n",
- name, NULL);
- ctxt->valid = 0;
- }
- xmlParserEntityCheck(ctxt, 0, NULL, 0);
- } else if (ctxt->input->free != deallocblankswrapper) {
- input = xmlNewBlanksWrapperInputStream(ctxt, entity);
- if (xmlPushInput(ctxt, input) < 0)
- return;
- } else {
- if ((entity->etype == XML_INTERNAL_PARAMETER_ENTITY) ||
- (entity->etype == XML_EXTERNAL_PARAMETER_ENTITY)) {
- xmlChar start[4];
- xmlCharEncoding enc;
-
- /*
- * Note: external parameter entities will not be loaded, it
- * is not required for a non-validating parser, unless the
- * option of validating, or substituting entities were
- * given. Doing so is far more secure as the parser will
- * only process data coming from the document entity by
- * default.
- */
- if ((entity->etype == XML_EXTERNAL_PARAMETER_ENTITY) &&
- ((ctxt->options & XML_PARSE_NOENT) == 0) &&
- ((ctxt->options & XML_PARSE_DTDVALID) == 0) &&
- ((ctxt->options & XML_PARSE_DTDLOAD) == 0) &&
- ((ctxt->options & XML_PARSE_DTDATTR) == 0) &&
- (ctxt->replaceEntities == 0) &&
- (ctxt->validate == 0))
- return;
-
- /*
- * handle the extra spaces added before and after
- * c.f. http://www.w3.org/TR/REC-xml#as-PE
- * this is done independently.
- */
- input = xmlNewEntityInputStream(ctxt, entity);
- if (xmlPushInput(ctxt, input) < 0)
- return;
-
- /*
- * Get the 4 first bytes and decode the charset
- * if enc != XML_CHAR_ENCODING_NONE
- * plug some encoding conversion routines.
- * Note that, since we may have some non-UTF8
- * encoding (like UTF16, bug 135229), the 'length'
- * is not known, but we can calculate based upon
- * the amount of data in the buffer.
- */
- GROW
- if (ctxt->instate == XML_PARSER_EOF)
- return;
- if ((ctxt->input->end - ctxt->input->cur)>=4) {
- start[0] = RAW;
- start[1] = NXT(1);
- start[2] = NXT(2);
- start[3] = NXT(3);
- enc = xmlDetectCharEncoding(start, 4);
- if (enc != XML_CHAR_ENCODING_NONE) {
- xmlSwitchEncoding(ctxt, enc);
- }
- }
-
- if ((entity->etype == XML_EXTERNAL_PARAMETER_ENTITY) &&
- (CMP5(CUR_PTR, '<', '?', 'x', 'm', 'l' )) &&
- (IS_BLANK_CH(NXT(5)))) {
- xmlParseTextDecl(ctxt);
- }
- } else {
- xmlFatalErrMsgStr(ctxt, XML_ERR_ENTITY_IS_PARAMETER,
- "PEReference: %s is not a parameter entity\n",
- name);
- }
- }
- } else {
- xmlFatalErr(ctxt, XML_ERR_PEREF_SEMICOL_MISSING, NULL);
- }
- }
+ xmlParsePEReference(ctxt);
}
/*
@@ -2790,9 +2631,9 @@ xmlStringLenDecodeEntities(xmlParserCtxtPtr ctxt, const xmlChar *str, int len,
if (c == 0) break;
if ((c == '&') && (str[1] == '#')) {
int val = xmlParseStringCharRef(ctxt, &str);
- if (val != 0) {
- COPY_BUF(0,buffer,nbchars,val);
- }
+ if (val == 0)
+ goto int_error;
+ COPY_BUF(0,buffer,nbchars,val);
if (nbchars + XML_PARSER_BUFFER_SIZE > buffer_size) {
growBuffer(buffer, XML_PARSER_BUFFER_SIZE);
}
@@ -2802,9 +2643,6 @@ xmlStringLenDecodeEntities(xmlParserCtxtPtr ctxt, const xmlChar *str, int len,
"String decoding Entity Reference: %.30s\n",
str);
ent = xmlParseStringEntityRef(ctxt, &str);
- if ((ctxt->lastError.code == XML_ERR_ENTITY_LOOP) ||
- (ctxt->lastError.code == XML_ERR_INTERNAL_ERROR))
- goto int_error;
xmlParserEntityCheck(ctxt, 0, ent, 0);
if (ent != NULL)
ctxt->nbentities += ent->checked / 2;
@@ -2818,30 +2656,27 @@ xmlStringLenDecodeEntities(xmlParserCtxtPtr ctxt, const xmlChar *str, int len,
} else {
xmlFatalErrMsg(ctxt, XML_ERR_INTERNAL_ERROR,
"predefined entity has no content\n");
+ goto int_error;
}
} else if ((ent != NULL) && (ent->content != NULL)) {
ctxt->depth++;
rep = xmlStringDecodeEntities(ctxt, ent->content, what,
0, 0, 0);
ctxt->depth--;
-
- if ((ctxt->lastError.code == XML_ERR_ENTITY_LOOP) ||
- (ctxt->lastError.code == XML_ERR_INTERNAL_ERROR))
- goto int_error;
-
- if (rep != NULL) {
- current = rep;
- while (*current != 0) { /* non input consuming loop */
- buffer[nbchars++] = *current++;
- if (nbchars + XML_PARSER_BUFFER_SIZE > buffer_size) {
- if (xmlParserEntityCheck(ctxt, nbchars, ent, 0))
- goto int_error;
- growBuffer(buffer, XML_PARSER_BUFFER_SIZE);
- }
- }
- xmlFree(rep);
- rep = NULL;
- }
+ if (rep == NULL)
+ goto int_error;
+
+ current = rep;
+ while (*current != 0) { /* non input consuming loop */
+ buffer[nbchars++] = *current++;
+ if (nbchars + XML_PARSER_BUFFER_SIZE > buffer_size) {
+ if (xmlParserEntityCheck(ctxt, nbchars, ent, 0))
+ goto int_error;
+ growBuffer(buffer, XML_PARSER_BUFFER_SIZE);
+ }
+ }
+ xmlFree(rep);
+ rep = NULL;
} else if (ent != NULL) {
int i = xmlStrlen(ent->name);
const xmlChar *cur = ent->name;
@@ -2859,8 +2694,6 @@ xmlStringLenDecodeEntities(xmlParserCtxtPtr ctxt, const xmlChar *str, int len,
xmlGenericError(xmlGenericErrorContext,
"String decoding PE Reference: %.30s\n", str);
ent = xmlParseStringPEReference(ctxt, &str);
- if (ctxt->lastError.code == XML_ERR_ENTITY_LOOP)
- goto int_error;
xmlParserEntityCheck(ctxt, 0, ent, 0);
if (ent != NULL)
ctxt->nbentities += ent->checked / 2;
@@ -2886,19 +2719,19 @@ xmlStringLenDecodeEntities(xmlParserCtxtPtr ctxt, const xmlChar *str, int len,
rep = xmlStringDecodeEntities(ctxt, ent->content, what,
0, 0, 0);
ctxt->depth--;
- if (rep != NULL) {
- current = rep;
- while (*current != 0) { /* non input consuming loop */
- buffer[nbchars++] = *current++;
- if (nbchars + XML_PARSER_BUFFER_SIZE > buffer_size) {
- if (xmlParserEntityCheck(ctxt, nbchars, ent, 0))
- goto int_error;
- growBuffer(buffer, XML_PARSER_BUFFER_SIZE);
- }
- }
- xmlFree(rep);
- rep = NULL;
- }
+ if (rep == NULL)
+ goto int_error;
+ current = rep;
+ while (*current != 0) { /* non input consuming loop */
+ buffer[nbchars++] = *current++;
+ if (nbchars + XML_PARSER_BUFFER_SIZE > buffer_size) {
+ if (xmlParserEntityCheck(ctxt, nbchars, ent, 0))
+ goto int_error;
+ growBuffer(buffer, XML_PARSER_BUFFER_SIZE);
+ }
+ }
+ xmlFree(rep);
+ rep = NULL;
}
} else {
COPY_BUF(l,buffer,nbchars,c);
@@ -3406,13 +3239,6 @@ xmlParseNameComplex(xmlParserCtxtPtr ctxt) {
len += l;
NEXTL(l);
c = CUR_CHAR(l);
- if (c == 0) {
- count = 0;
- GROW;
- if (ctxt->instate == XML_PARSER_EOF)
- return(NULL);
- c = CUR_CHAR(l);
- }
}
}
if ((len > XML_MAX_NAME_LENGTH) &&
@@ -3420,15 +3246,18 @@ xmlParseNameComplex(xmlParserCtxtPtr ctxt) {
xmlFatalErr(ctxt, XML_ERR_NAME_TOO_LONG, "Name");
return(NULL);
}
- if (ctxt->input->cur > ctxt->input->base && (*ctxt->input->cur == '\n') && (ctxt->input->cur[-1] == '\r')) {
- if (ctxt->input->base > ctxt->input->cur - (len + 1)) {
- return(NULL);
- }
- return(xmlDictLookup(ctxt->dict, ctxt->input->cur - (len + 1), len));
- }
- if (ctxt->input->base > ctxt->input->cur - len) {
- return(NULL);
+ if (ctxt->input->cur - ctxt->input->base < len) {
+ /*
+ * There were a couple of bugs where PERefs lead to to a change
+ * of the buffer. Check the buffer size to avoid passing an invalid
+ * pointer to xmlDictLookup.
+ */
+ xmlFatalErr(ctxt, XML_ERR_INTERNAL_ERROR,
+ "unexpected change of input buffer");
+ return (NULL);
}
+ if ((*ctxt->input->cur == '\n') && (ctxt->input->cur[-1] == '\r'))
+ return(xmlDictLookup(ctxt->dict, ctxt->input->cur - (len + 1), len));
return(xmlDictLookup(ctxt->dict, ctxt->input->cur - len, len));
}
@@ -3541,9 +3370,9 @@ xmlParseNCNameComplex(xmlParserCtxtPtr ctxt) {
*/
ctxt->input->cur -= l;
GROW;
- ctxt->input->cur += l;
if (ctxt->instate == XML_PARSER_EOF)
return(NULL);
+ ctxt->input->cur += l;
c = CUR_CHAR(l);
}
}
@@ -3899,10 +3728,8 @@ xmlParseEntityValue(xmlParserCtxtPtr ctxt, xmlChar **orig) {
ctxt->instate = XML_PARSER_ENTITY_VALUE;
input = ctxt->input;
GROW;
- if (ctxt->instate == XML_PARSER_EOF) {
- xmlFree(buf);
- return(NULL);
- }
+ if (ctxt->instate == XML_PARSER_EOF)
+ goto error;
NEXT;
c = CUR_CHAR(l);
/*
@@ -3923,18 +3750,12 @@ xmlParseEntityValue(xmlParserCtxtPtr ctxt, xmlChar **orig) {
tmp = (xmlChar *) xmlRealloc(buf, size * sizeof(xmlChar));
if (tmp == NULL) {
xmlErrMemory(ctxt, NULL);
- xmlFree(buf);
- return(NULL);
+ goto error;
}
buf = tmp;
}
COPY_BUF(l,buf,len,c);
NEXTL(l);
- /*
- * Pop-up of finished entities.
- */
- while ((RAW == 0) && (ctxt->inputNr > 1)) /* non input consuming */
- xmlPopInput(ctxt);
GROW;
c = CUR_CHAR(l);
@@ -3944,10 +3765,13 @@ xmlParseEntityValue(xmlParserCtxtPtr ctxt, xmlChar **orig) {
}
}
buf[len] = 0;
- if (ctxt->instate == XML_PARSER_EOF) {
- xmlFree(buf);
- return(NULL);
+ if (ctxt->instate == XML_PARSER_EOF)
+ goto error;
+ if (c != stop) {
+ xmlFatalErr(ctxt, XML_ERR_ENTITY_NOT_FINISHED, NULL);
+ goto error;
}
+ NEXT;
/*
* Raise problem w.r.t. '&' and '%' being used in non-entities
@@ -3959,20 +3783,25 @@ xmlParseEntityValue(xmlParserCtxtPtr ctxt, xmlChar **orig) {
if ((*cur == '%') || ((*cur == '&') && (cur[1] != '#'))) {
xmlChar *name;
xmlChar tmp = *cur;
+ int nameOk = 0;
cur++;
name = xmlParseStringName(ctxt, &cur);
- if ((name == NULL) || (*cur != ';')) {
+ if (name != NULL) {
+ nameOk = 1;
+ xmlFree(name);
+ }
+ if ((nameOk == 0) || (*cur != ';')) {
xmlFatalErrMsgInt(ctxt, XML_ERR_ENTITY_CHAR_ERROR,
"EntityValue: '%c' forbidden except for entities references\n",
tmp);
+ goto error;
}
if ((tmp == '%') && (ctxt->inSubset == 1) &&
(ctxt->inputNr == 1)) {
xmlFatalErr(ctxt, XML_ERR_ENTITY_PE_INTERNAL, NULL);
+ goto error;
}
- if (name != NULL)
- xmlFree(name);
if (*cur == 0)
break;
}
@@ -3981,28 +3810,24 @@ xmlParseEntityValue(xmlParserCtxtPtr ctxt, xmlChar **orig) {
/*
* Then PEReference entities are substituted.
+ *
+ * NOTE: 4.4.7 Bypassed
+ * When a general entity reference appears in the EntityValue in
+ * an entity declaration, it is bypassed and left as is.
+ * so XML_SUBSTITUTE_REF is not set here.
*/
- if (c != stop) {
- xmlFatalErr(ctxt, XML_ERR_ENTITY_NOT_FINISHED, NULL);
- xmlFree(buf);
- } else {
- NEXT;
- /*
- * NOTE: 4.4.7 Bypassed
- * When a general entity reference appears in the EntityValue in
- * an entity declaration, it is bypassed and left as is.
- * so XML_SUBSTITUTE_REF is not set here.
- */
- ++ctxt->depth;
- ret = xmlStringDecodeEntities(ctxt, buf, XML_SUBSTITUTE_PEREF,
- 0, 0, 0);
- --ctxt->depth;
- if (orig != NULL)
- *orig = buf;
- else
- xmlFree(buf);
+ ++ctxt->depth;
+ ret = xmlStringDecodeEntities(ctxt, buf, XML_SUBSTITUTE_PEREF,
+ 0, 0, 0);
+ --ctxt->depth;
+ if (orig != NULL) {
+ *orig = buf;
+ buf = NULL;
}
+error:
+ if (buf != NULL)
+ xmlFree(buf);
return(ret);
}
@@ -4172,7 +3997,9 @@ xmlParseAttValueComplex(xmlParserCtxtPtr ctxt, int *attlen, int normalize) {
ent->checked |= 1;
xmlFree(rep);
rep = NULL;
- }
+ } else {
+ ent->content[0] = 0;
+ }
}
/*
@@ -4596,7 +4423,7 @@ get_more:
if (*in == ']') {
if ((in[1] == ']') && (in[2] == '>')) {
xmlFatalErr(ctxt, XML_ERR_MISPLACED_CDATA_END, NULL);
- ctxt->input->cur = in;
+ ctxt->input->cur = in + 1;
return;
}
in++;
@@ -4789,22 +4616,20 @@ xmlParseExternalID(xmlParserCtxtPtr ctxt, xmlChar **publicID, int strict) {
*publicID = NULL;
if (CMP6(CUR_PTR, 'S', 'Y', 'S', 'T', 'E', 'M')) {
SKIP(6);
- if (!IS_BLANK_CH(CUR)) {
+ if (SKIP_BLANKS == 0) {
xmlFatalErrMsg(ctxt, XML_ERR_SPACE_REQUIRED,
"Space required after 'SYSTEM'\n");
}
- SKIP_BLANKS;
URI = xmlParseSystemLiteral(ctxt);
if (URI == NULL) {
xmlFatalErr(ctxt, XML_ERR_URI_REQUIRED, NULL);
}
} else if (CMP6(CUR_PTR, 'P', 'U', 'B', 'L', 'I', 'C')) {
SKIP(6);
- if (!IS_BLANK_CH(CUR)) {
+ if (SKIP_BLANKS == 0) {
xmlFatalErrMsg(ctxt, XML_ERR_SPACE_REQUIRED,
"Space required after 'PUBLIC'\n");
}
- SKIP_BLANKS;
*publicID = xmlParsePubidLiteral(ctxt);
if (*publicID == NULL) {
xmlFatalErr(ctxt, XML_ERR_PUBID_REQUIRED, NULL);
@@ -4813,26 +4638,20 @@ xmlParseExternalID(xmlParserCtxtPtr ctxt, xmlChar **publicID, int strict) {
/*
* We don't handle [83] so "S SystemLiteral" is required.
*/
- if (!IS_BLANK_CH(CUR)) {
+ if (SKIP_BLANKS == 0) {
xmlFatalErrMsg(ctxt, XML_ERR_SPACE_REQUIRED,
"Space required after the Public Identifier\n");
}
} else {
/*
* We handle [83] so we return immediately, if
- * "S SystemLiteral" is not detected. From a purely parsing
- * point of view that's a nice mess.
+ * "S SystemLiteral" is not detected. We skip blanks if no
+ * system literal was found, but this is harmless since we must
+ * be at the end of a NotationDecl.
*/
- const xmlChar *ptr;
- GROW;
-
- ptr = CUR_PTR;
- if (!IS_BLANK_CH(*ptr)) return(NULL);
-
- while (IS_BLANK_CH(*ptr)) ptr++; /* TODO: dangerous, fix ! */
- if ((*ptr != '\'') && (*ptr != '"')) return(NULL);
+ if (SKIP_BLANKS == 0) return(NULL);
+ if ((CUR != '\'') && (CUR != '"')) return(NULL);
}
- SKIP_BLANKS;
URI = xmlParseSystemLiteral(ctxt);
if (URI == NULL) {
xmlFatalErr(ctxt, XML_ERR_URI_REQUIRED, NULL);
@@ -4962,7 +4781,8 @@ xmlParseCommentComplex(xmlParserCtxtPtr ctxt, xmlChar *buf,
} else {
if (inputid != ctxt->input->id) {
xmlFatalErrMsg(ctxt, XML_ERR_ENTITY_BOUNDARY,
- "Comment doesn't start and stop in the same entity\n");
+ "Comment doesn't start and stop in the same"
+ " entity\n");
}
NEXT;
if ((ctxt->sax != NULL) && (ctxt->sax->comment != NULL) &&
@@ -5110,7 +4930,8 @@ get_more:
if (in[2] == '>') {
if (ctxt->input->id != inputid) {
xmlFatalErrMsg(ctxt, XML_ERR_ENTITY_BOUNDARY,
- "comment doesn't start and stop in the same entity\n");
+ "comment doesn't start and stop in the"
+ " same entity\n");
}
SKIP(3);
if ((ctxt->sax != NULL) && (ctxt->sax->comment != NULL) &&
@@ -5278,7 +5099,7 @@ xmlParsePI(xmlParserCtxtPtr ctxt) {
int count = 0;
if ((RAW == '<') && (NXT(1) == '?')) {
- xmlParserInputPtr input = ctxt->input;
+ int inputid = ctxt->input->id;
state = ctxt->instate;
ctxt->instate = XML_PARSER_PI;
/*
@@ -5294,9 +5115,10 @@ xmlParsePI(xmlParserCtxtPtr ctxt) {
target = xmlParsePITarget(ctxt);
if (target != NULL) {
if ((RAW == '?') && (NXT(1) == '>')) {
- if (input != ctxt->input) {
+ if (inputid != ctxt->input->id) {
xmlFatalErrMsg(ctxt, XML_ERR_ENTITY_BOUNDARY,
- "PI declaration doesn't start and stop in the same entity\n");
+ "PI declaration doesn't start and stop in"
+ " the same entity\n");
}
SKIP(2);
@@ -5317,12 +5139,10 @@ xmlParsePI(xmlParserCtxtPtr ctxt) {
ctxt->instate = state;
return;
}
- cur = CUR;
- if (!IS_BLANK(cur)) {
+ if (SKIP_BLANKS == 0) {
xmlFatalErrMsgStr(ctxt, XML_ERR_SPACE_REQUIRED,
"ParsePI: PI %s space expected\n", target);
}
- SKIP_BLANKS;
cur = CUR_CHAR(l);
while (IS_CHAR(cur) && /* checked */
((cur != '?') || (NXT(1) != '>'))) {
@@ -5378,9 +5198,10 @@ xmlParsePI(xmlParserCtxtPtr ctxt) {
xmlFatalErrMsgStr(ctxt, XML_ERR_PI_NOT_FINISHED,
"ParsePI: PI %s never end ...\n", target);
} else {
- if (input != ctxt->input) {
- xmlFatalErrMsg(ctxt, XML_ERR_SPACE_REQUIRED,
- "PI declaration doesn't start and stop in the same entity\n");
+ if (inputid != ctxt->input->id) {
+ xmlFatalErrMsg(ctxt, XML_ERR_ENTITY_BOUNDARY,
+ "PI declaration doesn't start and stop in"
+ " the same entity\n");
}
SKIP(2);
@@ -5436,32 +5257,30 @@ xmlParseNotationDecl(xmlParserCtxtPtr ctxt) {
xmlChar *Systemid;
if (CMP10(CUR_PTR, '<', '!', 'N', 'O', 'T', 'A', 'T', 'I', 'O', 'N')) {
- xmlParserInputPtr input = ctxt->input;
+ int inputid = ctxt->input->id;
SHRINK;
SKIP(10);
- if (!IS_BLANK_CH(CUR)) {
+ if (SKIP_BLANKS == 0) {
xmlFatalErrMsg(ctxt, XML_ERR_SPACE_REQUIRED,
"Space required after '<!NOTATION'\n");
return;
}
- SKIP_BLANKS;
name = xmlParseName(ctxt);
if (name == NULL) {
xmlFatalErr(ctxt, XML_ERR_NOTATION_NOT_STARTED, NULL);
return;
}
- if (!IS_BLANK_CH(CUR)) {
- xmlFatalErrMsg(ctxt, XML_ERR_SPACE_REQUIRED,
- "Space required after the NOTATION name'\n");
- return;
- }
if (xmlStrchr(name, ':') != NULL) {
xmlNsErr(ctxt, XML_NS_ERR_COLON,
"colons are forbidden from notation names '%s'\n",
name, NULL, NULL);
}
- SKIP_BLANKS;
+ if (SKIP_BLANKS == 0) {
+ xmlFatalErrMsg(ctxt, XML_ERR_SPACE_REQUIRED,
+ "Space required after the NOTATION name'\n");
+ return;
+ }
/*
* Parse the IDs.
@@ -5470,9 +5289,10 @@ xmlParseNotationDecl(xmlParserCtxtPtr ctxt) {
SKIP_BLANKS;
if (RAW == '>') {
- if (input != ctxt->input) {
- xmlFatalErrMsg(ctxt, XML_ERR_SPACE_REQUIRED,
- "Notation declaration doesn't start and stop in the same entity\n");
+ if (inputid != ctxt->input->id) {
+ xmlFatalErrMsg(ctxt, XML_ERR_ENTITY_BOUNDARY,
+ "Notation declaration doesn't start and stop"
+ " in the same entity\n");
}
NEXT;
if ((ctxt->sax != NULL) && (!ctxt->disableSAX) &&
@@ -5516,23 +5336,20 @@ xmlParseEntityDecl(xmlParserCtxtPtr ctxt) {
const xmlChar *ndata = NULL;
int isParameter = 0;
xmlChar *orig = NULL;
- int skipped;
/* GROW; done in the caller */
if (CMP8(CUR_PTR, '<', '!', 'E', 'N', 'T', 'I', 'T', 'Y')) {
- xmlParserInputPtr input = ctxt->input;
+ int inputid = ctxt->input->id;
SHRINK;
SKIP(8);
- skipped = SKIP_BLANKS;
- if (skipped == 0) {
+ if (SKIP_BLANKS == 0) {
xmlFatalErrMsg(ctxt, XML_ERR_SPACE_REQUIRED,
"Space required after '<!ENTITY'\n");
}
if (RAW == '%') {
NEXT;
- skipped = SKIP_BLANKS;
- if (skipped == 0) {
+ if (SKIP_BLANKS == 0) {
xmlFatalErrMsg(ctxt, XML_ERR_SPACE_REQUIRED,
"Space required after '%%'\n");
}
@@ -5550,8 +5367,7 @@ xmlParseEntityDecl(xmlParserCtxtPtr ctxt) {
"colons are forbidden from entities names '%s'\n",
name, NULL, NULL);
}
- skipped = SKIP_BLANKS;
- if (skipped == 0) {
+ if (SKIP_BLANKS == 0) {
xmlFatalErrMsg(ctxt, XML_ERR_SPACE_REQUIRED,
"Space required after the entity name\n");
}
@@ -5662,18 +5478,16 @@ xmlParseEntityDecl(xmlParserCtxtPtr ctxt) {
xmlFreeURI(uri);
}
}
- if ((RAW != '>') && (!IS_BLANK_CH(CUR))) {
+ if ((RAW != '>') && (SKIP_BLANKS == 0)) {
xmlFatalErrMsg(ctxt, XML_ERR_SPACE_REQUIRED,
"Space required before 'NDATA'\n");
}
- SKIP_BLANKS;
if (CMP5(CUR_PTR, 'N', 'D', 'A', 'T', 'A')) {
SKIP(5);
- if (!IS_BLANK_CH(CUR)) {
+ if (SKIP_BLANKS == 0) {
xmlFatalErrMsg(ctxt, XML_ERR_SPACE_REQUIRED,
"Space required after 'NDATA'\n");
}
- SKIP_BLANKS;
ndata = xmlParseName(ctxt);
if ((ctxt->sax != NULL) && (!ctxt->disableSAX) &&
(ctxt->sax->unparsedEntityDecl != NULL))
@@ -5712,16 +5526,17 @@ xmlParseEntityDecl(xmlParserCtxtPtr ctxt) {
}
}
if (ctxt->instate == XML_PARSER_EOF)
- return;
+ goto done;
SKIP_BLANKS;
if (RAW != '>') {
xmlFatalErrMsgStr(ctxt, XML_ERR_ENTITY_NOT_FINISHED,
"xmlParseEntityDecl: entity %s not terminated\n", name);
xmlHaltParser(ctxt);
} else {
- if (input != ctxt->input) {
+ if (inputid != ctxt->input->id) {
xmlFatalErrMsg(ctxt, XML_ERR_ENTITY_BOUNDARY,
- "Entity declaration doesn't start and stop in the same entity\n");
+ "Entity declaration doesn't start and stop in"
+ " the same entity\n");
}
NEXT;
}
@@ -5743,17 +5558,17 @@ xmlParseEntityDecl(xmlParserCtxtPtr ctxt) {
cur = xmlSAX2GetEntity(ctxt, name);
}
}
- if (cur != NULL) {
- if (cur->orig != NULL)
- xmlFree(orig);
- else
- cur->orig = orig;
- } else
- xmlFree(orig);
+ if ((cur != NULL) && (cur->orig == NULL)) {
+ cur->orig = orig;
+ orig = NULL;
+ }
}
+
+done:
if (value != NULL) xmlFree(value);
if (URI != NULL) xmlFree(URI);
if (literal != NULL) xmlFree(literal);
+ if (orig != NULL) xmlFree(orig);
}
}
@@ -5804,11 +5619,10 @@ xmlParseDefaultDecl(xmlParserCtxtPtr ctxt, xmlChar **value) {
if (CMP6(CUR_PTR, '#', 'F', 'I', 'X', 'E', 'D')) {
SKIP(6);
val = XML_ATTRIBUTE_FIXED;
- if (!IS_BLANK_CH(CUR)) {
+ if (SKIP_BLANKS == 0) {
xmlFatalErrMsg(ctxt, XML_ERR_SPACE_REQUIRED,
"Space required after '#FIXED'\n");
}
- SKIP_BLANKS;
}
ret = xmlParseAttValue(ctxt);
ctxt->instate = XML_PARSER_DTD;
@@ -5980,12 +5794,11 @@ int
xmlParseEnumeratedType(xmlParserCtxtPtr ctxt, xmlEnumerationPtr *tree) {
if (CMP8(CUR_PTR, 'N', 'O', 'T', 'A', 'T', 'I', 'O', 'N')) {
SKIP(8);
- if (!IS_BLANK_CH(CUR)) {
+ if (SKIP_BLANKS == 0) {
xmlFatalErrMsg(ctxt, XML_ERR_SPACE_REQUIRED,
"Space required after 'NOTATION'\n");
return(0);
}
- SKIP_BLANKS;
*tree = xmlParseNotationType(ctxt);
if (*tree == NULL) return(0);
return(XML_ATTRIBUTE_NOTATION);
@@ -6089,14 +5902,13 @@ xmlParseAttributeListDecl(xmlParserCtxtPtr ctxt) {
xmlEnumerationPtr tree;
if (CMP9(CUR_PTR, '<', '!', 'A', 'T', 'T', 'L', 'I', 'S', 'T')) {
- xmlParserInputPtr input = ctxt->input;
+ int inputid = ctxt->input->id;
SKIP(9);
- if (!IS_BLANK_CH(CUR)) {
+ if (SKIP_BLANKS == 0) {
xmlFatalErrMsg(ctxt, XML_ERR_SPACE_REQUIRED,
"Space required after '<!ATTLIST'\n");
}
- SKIP_BLANKS;
elemName = xmlParseName(ctxt);
if (elemName == NULL) {
xmlFatalErrMsg(ctxt, XML_ERR_NAME_REQUIRED,
@@ -6106,7 +5918,6 @@ xmlParseAttributeListDecl(xmlParserCtxtPtr ctxt) {
SKIP_BLANKS;
GROW;
while ((RAW != '>') && (ctxt->instate != XML_PARSER_EOF)) {
- const xmlChar *check = CUR_PTR;
int type;
int def;
xmlChar *defaultValue = NULL;
@@ -6120,12 +5931,11 @@ xmlParseAttributeListDecl(xmlParserCtxtPtr ctxt) {
break;
}
GROW;
- if (!IS_BLANK_CH(CUR)) {
+ if (SKIP_BLANKS == 0) {
xmlFatalErrMsg(ctxt, XML_ERR_SPACE_REQUIRED,
"Space required after the attribute name\n");
break;
}
- SKIP_BLANKS;
type = xmlParseAttributeType(ctxt, &tree);
if (type <= 0) {
@@ -6133,14 +5943,13 @@ xmlParseAttributeListDecl(xmlParserCtxtPtr ctxt) {
}
GROW;
- if (!IS_BLANK_CH(CUR)) {
+ if (SKIP_BLANKS == 0) {
xmlFatalErrMsg(ctxt, XML_ERR_SPACE_REQUIRED,
"Space required after the attribute type\n");
if (tree != NULL)
xmlFreeEnumeration(tree);
break;
}
- SKIP_BLANKS;
def = xmlParseDefaultDecl(ctxt, &defaultValue);
if (def <= 0) {
@@ -6155,7 +5964,7 @@ xmlParseAttributeListDecl(xmlParserCtxtPtr ctxt) {
GROW;
if (RAW != '>') {
- if (!IS_BLANK_CH(CUR)) {
+ if (SKIP_BLANKS == 0) {
xmlFatalErrMsg(ctxt, XML_ERR_SPACE_REQUIRED,
"Space required after the attribute default value\n");
if (defaultValue != NULL)
@@ -6164,16 +5973,6 @@ xmlParseAttributeListDecl(xmlParserCtxtPtr ctxt) {
xmlFreeEnumeration(tree);
break;
}
- SKIP_BLANKS;
- }
- if (check == CUR_PTR) {
- xmlFatalErr(ctxt, XML_ERR_INTERNAL_ERROR,
- "in xmlParseAttributeListDecl\n");
- if (defaultValue != NULL)
- xmlFree(defaultValue);
- if (tree != NULL)
- xmlFreeEnumeration(tree);
- break;
}
if ((ctxt->sax != NULL) && (!ctxt->disableSAX) &&
(ctxt->sax->attributeDecl != NULL))
@@ -6195,10 +5994,10 @@ xmlParseAttributeListDecl(xmlParserCtxtPtr ctxt) {
GROW;
}
if (RAW == '>') {
- if (input != ctxt->input) {
- xmlValidityError(ctxt, XML_ERR_ENTITY_BOUNDARY,
- "Attribute list declaration doesn't start and stop in the same entity\n",
- NULL, NULL);
+ if (inputid != ctxt->input->id) {
+ xmlFatalErrMsg(ctxt, XML_ERR_ENTITY_BOUNDARY,
+ "Attribute list declaration doesn't start and"
+ " stop in the same entity\n");
}
NEXT;
}
@@ -6235,10 +6034,10 @@ xmlParseElementMixedContentDecl(xmlParserCtxtPtr ctxt, int inputchk) {
SKIP_BLANKS;
SHRINK;
if (RAW == ')') {
- if ((ctxt->validate) && (ctxt->input->id != inputchk)) {
- xmlValidityError(ctxt, XML_ERR_ENTITY_BOUNDARY,
-"Element content declaration doesn't start and stop in the same entity\n",
- NULL, NULL);
+ if (ctxt->input->id != inputchk) {
+ xmlFatalErrMsg(ctxt, XML_ERR_ENTITY_BOUNDARY,
+ "Element content declaration doesn't start and"
+ " stop in the same entity\n");
}
NEXT;
ret = xmlNewDocElementContent(ctxt->myDoc, NULL, XML_ELEMENT_CONTENT_PCDATA);
@@ -6279,7 +6078,7 @@ xmlParseElementMixedContentDecl(xmlParserCtxtPtr ctxt, int inputchk) {
if (elem == NULL) {
xmlFatalErrMsg(ctxt, XML_ERR_NAME_REQUIRED,
"xmlParseElementMixedContentDecl : Name expected\n");
- xmlFreeDocElementContent(ctxt->myDoc, cur);
+ xmlFreeDocElementContent(ctxt->myDoc, ret);
return(NULL);
}
SKIP_BLANKS;
@@ -6294,10 +6093,10 @@ xmlParseElementMixedContentDecl(xmlParserCtxtPtr ctxt, int inputchk) {
}
if (ret != NULL)
ret->ocur = XML_ELEMENT_CONTENT_MULT;
- if ((ctxt->validate) && (ctxt->input->id != inputchk)) {
- xmlValidityError(ctxt, XML_ERR_ENTITY_BOUNDARY,
-"Element content declaration doesn't start and stop in the same entity\n",
- NULL, NULL);
+ if (ctxt->input->id != inputchk) {
+ xmlFatalErrMsg(ctxt, XML_ERR_ENTITY_BOUNDARY,
+ "Element content declaration doesn't start and"
+ " stop in the same entity\n");
}
SKIP(2);
} else {
@@ -6537,10 +6336,10 @@ xmlParseElementChildrenContentDeclPriv(xmlParserCtxtPtr ctxt, int inputchk,
if (last != NULL)
last->parent = cur;
}
- if ((ctxt->validate) && (ctxt->input->id != inputchk)) {
- xmlValidityError(ctxt, XML_ERR_ENTITY_BOUNDARY,
-"Element content declaration doesn't start and stop in the same entity\n",
- NULL, NULL);
+ if (ctxt->input->id != inputchk) {
+ xmlFatalErrMsg(ctxt, XML_ERR_ENTITY_BOUNDARY,
+ "Element content declaration doesn't start and stop in"
+ " the same entity\n");
}
NEXT;
if (RAW == '?') {
@@ -6713,28 +6512,24 @@ xmlParseElementDecl(xmlParserCtxtPtr ctxt) {
/* GROW; done in the caller */
if (CMP9(CUR_PTR, '<', '!', 'E', 'L', 'E', 'M', 'E', 'N', 'T')) {
- xmlParserInputPtr input = ctxt->input;
+ int inputid = ctxt->input->id;
SKIP(9);
- if (!IS_BLANK_CH(CUR)) {
+ if (SKIP_BLANKS == 0) {
xmlFatalErrMsg(ctxt, XML_ERR_SPACE_REQUIRED,
"Space required after 'ELEMENT'\n");
return(-1);
}
- SKIP_BLANKS;
name = xmlParseName(ctxt);
if (name == NULL) {
xmlFatalErrMsg(ctxt, XML_ERR_NAME_REQUIRED,
"xmlParseElementDecl: no name for Element\n");
return(-1);
}
- while ((RAW == 0) && (ctxt->inputNr > 1))
- xmlPopInput(ctxt);
- if (!IS_BLANK_CH(CUR)) {
+ if (SKIP_BLANKS == 0) {
xmlFatalErrMsg(ctxt, XML_ERR_SPACE_REQUIRED,
"Space required after the element name\n");
}
- SKIP_BLANKS;
if (CMP5(CUR_PTR, 'E', 'M', 'P', 'T', 'Y')) {
SKIP(5);
/*
@@ -6766,12 +6561,6 @@ xmlParseElementDecl(xmlParserCtxtPtr ctxt) {
}
SKIP_BLANKS;
- /*
- * Pop-up of finished entities.
- */
- while ((RAW == 0) && (ctxt->inputNr > 1))
- xmlPopInput(ctxt);
- SKIP_BLANKS;
if (RAW != '>') {
xmlFatalErr(ctxt, XML_ERR_GT_REQUIRED, NULL);
@@ -6779,9 +6568,10 @@ xmlParseElementDecl(xmlParserCtxtPtr ctxt) {
xmlFreeDocElementContent(ctxt->myDoc, content);
}
} else {
- if (input != ctxt->input) {
+ if (inputid != ctxt->input->id) {
xmlFatalErrMsg(ctxt, XML_ERR_ENTITY_BOUNDARY,
- "Element declaration doesn't start and stop in the same entity\n");
+ "Element declaration doesn't start and stop in"
+ " the same entity\n");
}
NEXT;
@@ -6834,9 +6624,9 @@ xmlParseConditionalSections(xmlParserCtxtPtr ctxt) {
return;
} else {
if (ctxt->input->id != id) {
- xmlValidityError(ctxt, XML_ERR_ENTITY_BOUNDARY,
- "All markup of the conditional section is not in the same entity\n",
- NULL, NULL);
+ xmlFatalErrMsg(ctxt, XML_ERR_ENTITY_BOUNDARY,
+ "All markup of the conditional section is not"
+ " in the same entity\n");
}
NEXT;
}
@@ -6849,6 +6639,8 @@ xmlParseConditionalSections(xmlParserCtxtPtr ctxt) {
"Entering INCLUDE Conditional Section\n");
}
+ SKIP_BLANKS;
+ GROW;
while (((RAW != 0) && ((RAW != ']') || (NXT(1) != ']') ||
(NXT(2) != '>'))) && (ctxt->instate != XML_PARSER_EOF)) {
const xmlChar *check = CUR_PTR;
@@ -6856,18 +6648,11 @@ xmlParseConditionalSections(xmlParserCtxtPtr ctxt) {
if ((RAW == '<') && (NXT(1) == '!') && (NXT(2) == '[')) {
xmlParseConditionalSections(ctxt);
- } else if (IS_BLANK_CH(CUR)) {
- NEXT;
- } else if (RAW == '%') {
- xmlParsePEReference(ctxt);
} else
xmlParseMarkupDecl(ctxt);
- /*
- * Pop-up of finished entities.
- */
- while ((RAW == 0) && (ctxt->inputNr > 1))
- xmlPopInput(ctxt);
+ SKIP_BLANKS;
+ GROW;
if ((CUR_PTR == check) && (cons == ctxt->input->consumed)) {
xmlFatalErr(ctxt, XML_ERR_EXT_SUBSET_NOT_FINISHED, NULL);
@@ -6897,9 +6682,9 @@ xmlParseConditionalSections(xmlParserCtxtPtr ctxt) {
return;
} else {
if (ctxt->input->id != id) {
- xmlValidityError(ctxt, XML_ERR_ENTITY_BOUNDARY,
- "All markup of the conditional section is not in the same entity\n",
- NULL, NULL);
+ xmlFatalErrMsg(ctxt, XML_ERR_ENTITY_BOUNDARY,
+ "All markup of the conditional section is not"
+ " in the same entity\n");
}
NEXT;
}
@@ -6961,9 +6746,9 @@ xmlParseConditionalSections(xmlParserCtxtPtr ctxt) {
xmlFatalErr(ctxt, XML_ERR_CONDSEC_NOT_FINISHED, NULL);
} else {
if (ctxt->input->id != id) {
- xmlValidityError(ctxt, XML_ERR_ENTITY_BOUNDARY,
- "All markup of the conditional section is not in the same entity\n",
- NULL, NULL);
+ xmlFatalErrMsg(ctxt, XML_ERR_ENTITY_BOUNDARY,
+ "All markup of the conditional section is not in"
+ " the same entity\n");
}
if ((ctxt-> instate != XML_PARSER_EOF) &&
((ctxt->input->cur + 3) <= ctxt->input->end))
@@ -7031,13 +6816,6 @@ xmlParseMarkupDecl(xmlParserCtxtPtr ctxt) {
return;
/*
- * This is only for internal subset. On external entities,
- * the replacement is done before parsing stage
- */
- if ((ctxt->external == 0) && (ctxt->inputNr == 1))
- xmlParsePEReference(ctxt);
-
- /*
* Conditional sections are allowed from entities included
* by PE References in the internal subset.
*/
@@ -7074,11 +6852,10 @@ xmlParseTextDecl(xmlParserCtxtPtr ctxt) {
return;
}
- if (!IS_BLANK_CH(CUR)) {
+ if (SKIP_BLANKS == 0) {
xmlFatalErrMsg(ctxt, XML_ERR_SPACE_REQUIRED,
"Space needed after '<?xml'\n");
}
- SKIP_BLANKS;
/*
* We may have the VersionInfo here.
@@ -7087,7 +6864,7 @@ xmlParseTextDecl(xmlParserCtxtPtr ctxt) {
if (version == NULL)
version = xmlCharStrdup(XML_DEFAULT_VERSION);
else {
- if (!IS_BLANK_CH(CUR)) {
+ if (SKIP_BLANKS == 0) {
xmlFatalErrMsg(ctxt, XML_ERR_SPACE_REQUIRED,
"Space needed here\n");
}
@@ -7178,27 +6955,19 @@ xmlParseExternalSubset(xmlParserCtxtPtr ctxt, const xmlChar *ExternalID,
ctxt->instate = XML_PARSER_DTD;
ctxt->external = 1;
+ SKIP_BLANKS;
while (((RAW == '<') && (NXT(1) == '?')) ||
((RAW == '<') && (NXT(1) == '!')) ||
- (RAW == '%') || IS_BLANK_CH(CUR)) {
+ (RAW == '%')) {
const xmlChar *check = CUR_PTR;
unsigned int cons = ctxt->input->consumed;
GROW;
if ((RAW == '<') && (NXT(1) == '!') && (NXT(2) == '[')) {
xmlParseConditionalSections(ctxt);
- } else if (IS_BLANK_CH(CUR)) {
- NEXT;
- } else if (RAW == '%') {
- xmlParsePEReference(ctxt);
} else
xmlParseMarkupDecl(ctxt);
-
- /*
- * Pop-up of finished entities.
- */
- while ((RAW == 0) && (ctxt->inputNr > 1))
- xmlPopInput(ctxt);
+ SKIP_BLANKS;
if ((CUR_PTR == check) && (cons == ctxt->input->consumed)) {
xmlFatalErr(ctxt, XML_ERR_EXT_SUBSET_NOT_FINISHED, NULL);
@@ -7420,6 +7189,8 @@ xmlParseReference(xmlParserCtxtPtr ctxt) {
(ret != XML_WAR_UNDECLARED_ENTITY)) {
xmlFatalErrMsgStr(ctxt, XML_ERR_UNDECLARED_ENTITY,
"Entity '%s' failed to parse\n", ent->name);
+ if (ent->content != NULL)
+ ent->content[0] = 0;
xmlParserEntityCheck(ctxt, 0, ent, 0);
} else if (list != NULL) {
xmlFreeNodeList(list);
@@ -7427,6 +7198,9 @@ xmlParseReference(xmlParserCtxtPtr ctxt) {
}
if (ent->checked == 0)
ent->checked = 2;
+
+ /* Prevent entity from being parsed and expanded twice (Bug 760367). */
+ was_checked = 0;
} else if (ent->checked != 1) {
ctxt->nbentities += ent->checked / 2;
}
@@ -8063,12 +7837,14 @@ xmlParsePEReference(xmlParserCtxtPtr ctxt)
NEXT;
name = xmlParseName(ctxt);
if (name == NULL) {
- xmlFatalErrMsg(ctxt, XML_ERR_NAME_REQUIRED,
- "xmlParsePEReference: no name\n");
+ xmlFatalErrMsg(ctxt, XML_ERR_PEREF_NO_NAME, "PEReference: no name\n");
return;
}
+ if (xmlParserDebugEntities)
+ xmlGenericError(xmlGenericErrorContext,
+ "PEReference: %s\n", name);
if (RAW != ';') {
- xmlFatalErr(ctxt, XML_ERR_ENTITYREF_SEMICOL_MISSING, NULL);
+ xmlFatalErr(ctxt, XML_ERR_PEREF_SEMICOL_MISSING, NULL);
return;
}
@@ -8110,10 +7886,15 @@ xmlParsePEReference(xmlParserCtxtPtr ctxt)
* ... The declaration of a parameter entity must
* precede any reference to it...
*/
- xmlWarningMsg(ctxt, XML_WAR_UNDECLARED_ENTITY,
- "PEReference: %%%s; not found\n",
- name, NULL);
- ctxt->valid = 0;
+ if ((ctxt->validate) && (ctxt->vctxt.error != NULL)) {
+ xmlValidityError(ctxt, XML_WAR_UNDECLARED_ENTITY,
+ "PEReference: %%%s; not found\n",
+ name, NULL);
+ } else
+ xmlWarningMsg(ctxt, XML_WAR_UNDECLARED_ENTITY,
+ "PEReference: %%%s; not found\n",
+ name, NULL);
+ ctxt->valid = 0;
}
xmlParserEntityCheck(ctxt, 0, NULL, 0);
} else {
@@ -8125,41 +7906,54 @@ xmlParsePEReference(xmlParserCtxtPtr ctxt)
xmlWarningMsg(ctxt, XML_WAR_UNDECLARED_ENTITY,
"Internal: %%%s; is not a parameter entity\n",
name, NULL);
- } else if (ctxt->input->free != deallocblankswrapper) {
- input = xmlNewBlanksWrapperInputStream(ctxt, entity);
- if (xmlPushInput(ctxt, input) < 0)
- return;
} else {
+ xmlChar start[4];
+ xmlCharEncoding enc;
+
if ((entity->etype == XML_EXTERNAL_PARAMETER_ENTITY) &&
((ctxt->options & XML_PARSE_NOENT) == 0) &&
- ((ctxt->options & XML_PARSE_DTDVALID) == 0) &&
- ((ctxt->options & XML_PARSE_DTDLOAD) == 0) &&
- ((ctxt->options & XML_PARSE_DTDATTR) == 0) &&
- (ctxt->replaceEntities == 0) &&
- (ctxt->validate == 0))
- return;
- /*
- * TODO !!!
- * handle the extra spaces added before and after
- * c.f. http://www.w3.org/TR/REC-xml#as-PE
- */
+ ((ctxt->options & XML_PARSE_DTDVALID) == 0) &&
+ ((ctxt->options & XML_PARSE_DTDLOAD) == 0) &&
+ ((ctxt->options & XML_PARSE_DTDATTR) == 0) &&
+ (ctxt->replaceEntities == 0) &&
+ (ctxt->validate == 0))
+ return;
+
input = xmlNewEntityInputStream(ctxt, entity);
- if (xmlPushInput(ctxt, input) < 0)
+ if (xmlPushInput(ctxt, input) < 0) {
+ xmlFreeInputStream(input);
return;
- if ((entity->etype == XML_EXTERNAL_PARAMETER_ENTITY) &&
- (CMP5(CUR_PTR, '<', '?', 'x', 'm', 'l')) &&
- (IS_BLANK_CH(NXT(5)))) {
- xmlParseTextDecl(ctxt);
- if (ctxt->errNo ==
- XML_ERR_UNSUPPORTED_ENCODING) {
- /*
- * The XML REC instructs us to stop parsing
- * right here
- */
- xmlHaltParser(ctxt);
- return;
- }
- }
+ }
+
+ if (entity->etype == XML_EXTERNAL_PARAMETER_ENTITY) {
+ /*
+ * Get the 4 first bytes and decode the charset
+ * if enc != XML_CHAR_ENCODING_NONE
+ * plug some encoding conversion routines.
+ * Note that, since we may have some non-UTF8
+ * encoding (like UTF16, bug 135229), the 'length'
+ * is not known, but we can calculate based upon
+ * the amount of data in the buffer.
+ */
+ GROW
+ if (ctxt->instate == XML_PARSER_EOF)
+ return;
+ if ((ctxt->input->end - ctxt->input->cur)>=4) {
+ start[0] = RAW;
+ start[1] = NXT(1);
+ start[2] = NXT(2);
+ start[3] = NXT(3);
+ enc = xmlDetectCharEncoding(start, 4);
+ if (enc != XML_CHAR_ENCODING_NONE) {
+ xmlSwitchEncoding(ctxt, enc);
+ }
+ }
+
+ if ((CMP5(CUR_PTR, '<', '?', 'x', 'm', 'l')) &&
+ (IS_BLANK_CH(NXT(5)))) {
+ xmlParseTextDecl(ctxt);
+ }
+ }
}
}
ctxt->hasPErefs = 1;
@@ -8335,6 +8129,7 @@ xmlParseStringPEReference(xmlParserCtxtPtr ctxt, const xmlChar **str) {
entity = ctxt->sax->getParameterEntity(ctxt->userData, name);
if (ctxt->instate == XML_PARSER_EOF) {
xmlFree(name);
+ *str = ptr;
return(NULL);
}
if (entity == NULL) {
@@ -8473,6 +8268,7 @@ xmlParseInternalSubset(xmlParserCtxtPtr ctxt) {
* Is there any DTD definition ?
*/
if (RAW == '[') {
+ int baseInputNr = ctxt->inputNr;
ctxt->instate = XML_PARSER_DTD;
NEXT;
/*
@@ -8480,7 +8276,8 @@ xmlParseInternalSubset(xmlParserCtxtPtr ctxt) {
* PEReferences.
* Subsequence (markupdecl | PEReference | S)*
*/
- while ((RAW != ']') && (ctxt->instate != XML_PARSER_EOF)) {
+ while (((RAW != ']') || (ctxt->inputNr > baseInputNr)) &&
+ (ctxt->instate != XML_PARSER_EOF)) {
const xmlChar *check = CUR_PTR;
unsigned int cons = ctxt->input->consumed;
@@ -8488,16 +8285,13 @@ xmlParseInternalSubset(xmlParserCtxtPtr ctxt) {
xmlParseMarkupDecl(ctxt);
xmlParsePEReference(ctxt);
- /*
- * Pop-up of finished entities.
- */
- while ((RAW == 0) && (ctxt->inputNr > 1))
- xmlPopInput(ctxt);
-
if ((CUR_PTR == check) && (cons == ctxt->input->consumed)) {
xmlFatalErr(ctxt, XML_ERR_INTERNAL_ERROR,
"xmlParseInternalSubset: error detected in Markup declaration\n");
- break;
+ if (ctxt->inputNr > baseInputNr)
+ xmlPopInput(ctxt);
+ else
+ break;
}
}
if (RAW == ']') {
@@ -8575,7 +8369,7 @@ xmlParseAttribute(xmlParserCtxtPtr ctxt, xmlChar **value) {
ctxt->instate = XML_PARSER_CONTENT;
} else {
xmlFatalErrMsgStr(ctxt, XML_ERR_ATTRIBUTE_WITHOUT_VALUE,
- "Specification mandate value for attribute %s\n", name);
+ "Specification mandates value for attribute %s\n", name);
return(NULL);
}
@@ -8732,11 +8526,10 @@ failed:
GROW
if ((RAW == '>') || (((RAW == '/') && (NXT(1) == '>'))))
break;
- if (!IS_BLANK_CH(RAW)) {
+ if (SKIP_BLANKS == 0) {
xmlFatalErrMsg(ctxt, XML_ERR_SPACE_REQUIRED,
"attributes construct error\n");
}
- SKIP_BLANKS;
if ((cons == ctxt->input->consumed) && (q == CUR_PTR) &&
(attname == NULL) && (attvalue == NULL)) {
xmlFatalErrMsg(ctxt, XML_ERR_INTERNAL_ERROR,
@@ -9274,8 +9067,8 @@ xmlParseAttribute2(xmlParserCtxtPtr ctxt,
if (ctxt->attsSpecial != NULL) {
int type;
- type = (int) (long) xmlHashQLookup2(ctxt->attsSpecial,
- pref, elem, *prefix, name);
+ type = (int) (ptrdiff_t) xmlHashQLookup2(ctxt->attsSpecial,
+ pref, elem, *prefix, name);
if (type != 0)
normalize = 1;
}
@@ -9308,7 +9101,7 @@ xmlParseAttribute2(xmlParserCtxtPtr ctxt,
ctxt->instate = XML_PARSER_CONTENT;
} else {
xmlFatalErrMsgStr(ctxt, XML_ERR_ATTRIBUTE_WITHOUT_VALUE,
- "Specification mandate value for attribute %s\n",
+ "Specification mandates value for attribute %s\n",
name);
return (NULL);
}
@@ -9391,9 +9184,8 @@ xmlParseStartTag2(xmlParserCtxtPtr ctxt, const xmlChar **pref,
xmlChar *attvalue;
const xmlChar **atts = ctxt->atts;
int maxatts = ctxt->maxatts;
- int nratts, nbatts, nbdef;
- int i, j, nbNs, attval, oldline, oldcol, inputNr;
- const xmlChar *base;
+ int nratts, nbatts, nbdef, inputid;
+ int i, j, nbNs, attval;
unsigned long cur;
int nsNr = ctxt->nsNr;
@@ -9407,13 +9199,9 @@ xmlParseStartTag2(xmlParserCtxtPtr ctxt, const xmlChar **pref,
* The Shrinking is only possible once the full set of attribute
* callbacks have been done.
*/
-reparse:
SHRINK;
- base = ctxt->input->base;
cur = ctxt->input->cur - ctxt->input->base;
- inputNr = ctxt->inputNr;
- oldline = ctxt->input->line;
- oldcol = ctxt->input->col;
+ inputid = ctxt->input->id;
nbatts = 0;
nratts = 0;
nbdef = 0;
@@ -9437,8 +9225,6 @@ reparse:
*/
SKIP_BLANKS;
GROW;
- if ((ctxt->input->base != base) || (inputNr != ctxt->inputNr))
- goto base_changed;
while (((RAW != '>') &&
((RAW != '/') || (NXT(1) != '>')) &&
@@ -9449,211 +9235,181 @@ reparse:
attname = xmlParseAttribute2(ctxt, prefix, localname,
&aprefix, &attvalue, &len, &alloc);
- if ((ctxt->input->base != base) || (inputNr != ctxt->inputNr)) {
- if ((attvalue != NULL) && (alloc != 0))
- xmlFree(attvalue);
- attvalue = NULL;
- goto base_changed;
- }
- if ((attname != NULL) && (attvalue != NULL)) {
- if (len < 0) len = xmlStrlen(attvalue);
- if ((attname == ctxt->str_xmlns) && (aprefix == NULL)) {
- const xmlChar *URL = xmlDictLookup(ctxt->dict, attvalue, len);
- xmlURIPtr uri;
-
- if (URL == NULL) {
- xmlErrMemory(ctxt, "dictionary allocation failure");
- if ((attvalue != NULL) && (alloc != 0))
- xmlFree(attvalue);
- return(NULL);
- }
- if (*URL != 0) {
- uri = xmlParseURI((const char *) URL);
- if (uri == NULL) {
- xmlNsErr(ctxt, XML_WAR_NS_URI,
- "xmlns: '%s' is not a valid URI\n",
- URL, NULL, NULL);
- } else {
- if (uri->scheme == NULL) {
- xmlNsWarn(ctxt, XML_WAR_NS_URI_RELATIVE,
- "xmlns: URI %s is not absolute\n",
- URL, NULL, NULL);
- }
- xmlFreeURI(uri);
- }
- if (URL == ctxt->str_xml_ns) {
- if (attname != ctxt->str_xml) {
- xmlNsErr(ctxt, XML_NS_ERR_XML_NAMESPACE,
- "xml namespace URI cannot be the default namespace\n",
- NULL, NULL, NULL);
- }
- goto skip_default_ns;
- }
- if ((len == 29) &&
- (xmlStrEqual(URL,
- BAD_CAST "http://www.w3.org/2000/xmlns/"))) {
- xmlNsErr(ctxt, XML_NS_ERR_XML_NAMESPACE,
- "reuse of the xmlns namespace name is forbidden\n",
- NULL, NULL, NULL);
- goto skip_default_ns;
- }
- }
- /*
- * check that it's not a defined namespace
- */
- for (j = 1;j <= nbNs;j++)
- if (ctxt->nsTab[ctxt->nsNr - 2 * j] == NULL)
- break;
- if (j <= nbNs)
- xmlErrAttributeDup(ctxt, NULL, attname);
- else
- if (nsPush(ctxt, NULL, URL) > 0) nbNs++;
-skip_default_ns:
- if ((attvalue != NULL) && (alloc != 0)) {
- xmlFree(attvalue);
- attvalue = NULL;
- }
- if ((RAW == '>') || (((RAW == '/') && (NXT(1) == '>'))))
- break;
- if (!IS_BLANK_CH(RAW)) {
- xmlFatalErrMsg(ctxt, XML_ERR_SPACE_REQUIRED,
- "attributes construct error\n");
- break;
- }
- SKIP_BLANKS;
- if ((ctxt->input->base != base) || (inputNr != ctxt->inputNr))
- goto base_changed;
- continue;
- }
- if (aprefix == ctxt->str_xmlns) {
- const xmlChar *URL = xmlDictLookup(ctxt->dict, attvalue, len);
- xmlURIPtr uri;
-
- if (attname == ctxt->str_xml) {
- if (URL != ctxt->str_xml_ns) {
- xmlNsErr(ctxt, XML_NS_ERR_XML_NAMESPACE,
- "xml namespace prefix mapped to wrong URI\n",
- NULL, NULL, NULL);
- }
- /*
- * Do not keep a namespace definition node
- */
- goto skip_ns;
- }
+ if ((attname == NULL) || (attvalue == NULL))
+ goto next_attr;
+ if (len < 0) len = xmlStrlen(attvalue);
+
+ if ((attname == ctxt->str_xmlns) && (aprefix == NULL)) {
+ const xmlChar *URL = xmlDictLookup(ctxt->dict, attvalue, len);
+ xmlURIPtr uri;
+
+ if (URL == NULL) {
+ xmlErrMemory(ctxt, "dictionary allocation failure");
+ if ((attvalue != NULL) && (alloc != 0))
+ xmlFree(attvalue);
+ return(NULL);
+ }
+ if (*URL != 0) {
+ uri = xmlParseURI((const char *) URL);
+ if (uri == NULL) {
+ xmlNsErr(ctxt, XML_WAR_NS_URI,
+ "xmlns: '%s' is not a valid URI\n",
+ URL, NULL, NULL);
+ } else {
+ if (uri->scheme == NULL) {
+ xmlNsWarn(ctxt, XML_WAR_NS_URI_RELATIVE,
+ "xmlns: URI %s is not absolute\n",
+ URL, NULL, NULL);
+ }
+ xmlFreeURI(uri);
+ }
if (URL == ctxt->str_xml_ns) {
- if (attname != ctxt->str_xml) {
- xmlNsErr(ctxt, XML_NS_ERR_XML_NAMESPACE,
- "xml namespace URI mapped to wrong prefix\n",
- NULL, NULL, NULL);
- }
- goto skip_ns;
- }
- if (attname == ctxt->str_xmlns) {
- xmlNsErr(ctxt, XML_NS_ERR_XML_NAMESPACE,
- "redefinition of the xmlns prefix is forbidden\n",
- NULL, NULL, NULL);
- goto skip_ns;
- }
- if ((len == 29) &&
- (xmlStrEqual(URL,
- BAD_CAST "http://www.w3.org/2000/xmlns/"))) {
- xmlNsErr(ctxt, XML_NS_ERR_XML_NAMESPACE,
- "reuse of the xmlns namespace name is forbidden\n",
- NULL, NULL, NULL);
- goto skip_ns;
- }
- if ((URL == NULL) || (URL[0] == 0)) {
- xmlNsErr(ctxt, XML_NS_ERR_XML_NAMESPACE,
- "xmlns:%s: Empty XML namespace is not allowed\n",
- attname, NULL, NULL);
- goto skip_ns;
- } else {
- uri = xmlParseURI((const char *) URL);
- if (uri == NULL) {
- xmlNsErr(ctxt, XML_WAR_NS_URI,
- "xmlns:%s: '%s' is not a valid URI\n",
- attname, URL, NULL);
- } else {
- if ((ctxt->pedantic) && (uri->scheme == NULL)) {
- xmlNsWarn(ctxt, XML_WAR_NS_URI_RELATIVE,
- "xmlns:%s: URI %s is not absolute\n",
- attname, URL, NULL);
- }
- xmlFreeURI(uri);
- }
- }
-
- /*
- * check that it's not a defined namespace
- */
- for (j = 1;j <= nbNs;j++)
- if (ctxt->nsTab[ctxt->nsNr - 2 * j] == attname)
- break;
- if (j <= nbNs)
- xmlErrAttributeDup(ctxt, aprefix, attname);
- else
- if (nsPush(ctxt, attname, URL) > 0) nbNs++;
-skip_ns:
- if ((attvalue != NULL) && (alloc != 0)) {
- xmlFree(attvalue);
- attvalue = NULL;
- }
- if ((RAW == '>') || (((RAW == '/') && (NXT(1) == '>'))))
- break;
- if (!IS_BLANK_CH(RAW)) {
- xmlFatalErrMsg(ctxt, XML_ERR_SPACE_REQUIRED,
- "attributes construct error\n");
- break;
- }
- SKIP_BLANKS;
- if ((ctxt->input->base != base) || (inputNr != ctxt->inputNr))
- goto base_changed;
- continue;
- }
+ if (attname != ctxt->str_xml) {
+ xmlNsErr(ctxt, XML_NS_ERR_XML_NAMESPACE,
+ "xml namespace URI cannot be the default namespace\n",
+ NULL, NULL, NULL);
+ }
+ goto next_attr;
+ }
+ if ((len == 29) &&
+ (xmlStrEqual(URL,
+ BAD_CAST "http://www.w3.org/2000/xmlns/"))) {
+ xmlNsErr(ctxt, XML_NS_ERR_XML_NAMESPACE,
+ "reuse of the xmlns namespace name is forbidden\n",
+ NULL, NULL, NULL);
+ goto next_attr;
+ }
+ }
+ /*
+ * check that it's not a defined namespace
+ */
+ for (j = 1;j <= nbNs;j++)
+ if (ctxt->nsTab[ctxt->nsNr - 2 * j] == NULL)
+ break;
+ if (j <= nbNs)
+ xmlErrAttributeDup(ctxt, NULL, attname);
+ else
+ if (nsPush(ctxt, NULL, URL) > 0) nbNs++;
+
+ } else if (aprefix == ctxt->str_xmlns) {
+ const xmlChar *URL = xmlDictLookup(ctxt->dict, attvalue, len);
+ xmlURIPtr uri;
+
+ if (attname == ctxt->str_xml) {
+ if (URL != ctxt->str_xml_ns) {
+ xmlNsErr(ctxt, XML_NS_ERR_XML_NAMESPACE,
+ "xml namespace prefix mapped to wrong URI\n",
+ NULL, NULL, NULL);
+ }
+ /*
+ * Do not keep a namespace definition node
+ */
+ goto next_attr;
+ }
+ if (URL == ctxt->str_xml_ns) {
+ if (attname != ctxt->str_xml) {
+ xmlNsErr(ctxt, XML_NS_ERR_XML_NAMESPACE,
+ "xml namespace URI mapped to wrong prefix\n",
+ NULL, NULL, NULL);
+ }
+ goto next_attr;
+ }
+ if (attname == ctxt->str_xmlns) {
+ xmlNsErr(ctxt, XML_NS_ERR_XML_NAMESPACE,
+ "redefinition of the xmlns prefix is forbidden\n",
+ NULL, NULL, NULL);
+ goto next_attr;
+ }
+ if ((len == 29) &&
+ (xmlStrEqual(URL,
+ BAD_CAST "http://www.w3.org/2000/xmlns/"))) {
+ xmlNsErr(ctxt, XML_NS_ERR_XML_NAMESPACE,
+ "reuse of the xmlns namespace name is forbidden\n",
+ NULL, NULL, NULL);
+ goto next_attr;
+ }
+ if ((URL == NULL) || (URL[0] == 0)) {
+ xmlNsErr(ctxt, XML_NS_ERR_XML_NAMESPACE,
+ "xmlns:%s: Empty XML namespace is not allowed\n",
+ attname, NULL, NULL);
+ goto next_attr;
+ } else {
+ uri = xmlParseURI((const char *) URL);
+ if (uri == NULL) {
+ xmlNsErr(ctxt, XML_WAR_NS_URI,
+ "xmlns:%s: '%s' is not a valid URI\n",
+ attname, URL, NULL);
+ } else {
+ if ((ctxt->pedantic) && (uri->scheme == NULL)) {
+ xmlNsWarn(ctxt, XML_WAR_NS_URI_RELATIVE,
+ "xmlns:%s: URI %s is not absolute\n",
+ attname, URL, NULL);
+ }
+ xmlFreeURI(uri);
+ }
+ }
- /*
- * Add the pair to atts
- */
- if ((atts == NULL) || (nbatts + 5 > maxatts)) {
- if (xmlCtxtGrowAttrs(ctxt, nbatts + 5) < 0) {
- if (attvalue[len] == 0)
- xmlFree(attvalue);
- goto failed;
- }
- maxatts = ctxt->maxatts;
- atts = ctxt->atts;
- }
- ctxt->attallocs[nratts++] = alloc;
- atts[nbatts++] = attname;
- atts[nbatts++] = aprefix;
- atts[nbatts++] = NULL; /* the URI will be fetched later */
- atts[nbatts++] = attvalue;
- attvalue += len;
- atts[nbatts++] = attvalue;
- /*
- * tag if some deallocation is needed
- */
- if (alloc != 0) attval = 1;
- } else {
- if ((attvalue != NULL) && (attvalue[len] == 0))
- xmlFree(attvalue);
- }
+ /*
+ * check that it's not a defined namespace
+ */
+ for (j = 1;j <= nbNs;j++)
+ if (ctxt->nsTab[ctxt->nsNr - 2 * j] == attname)
+ break;
+ if (j <= nbNs)
+ xmlErrAttributeDup(ctxt, aprefix, attname);
+ else
+ if (nsPush(ctxt, attname, URL) > 0) nbNs++;
+
+ } else {
+ /*
+ * Add the pair to atts
+ */
+ if ((atts == NULL) || (nbatts + 5 > maxatts)) {
+ if (xmlCtxtGrowAttrs(ctxt, nbatts + 5) < 0) {
+ goto next_attr;
+ }
+ maxatts = ctxt->maxatts;
+ atts = ctxt->atts;
+ }
+ ctxt->attallocs[nratts++] = alloc;
+ atts[nbatts++] = attname;
+ atts[nbatts++] = aprefix;
+ /*
+ * The namespace URI field is used temporarily to point at the
+ * base of the current input buffer for non-alloced attributes.
+ * When the input buffer is reallocated, all the pointers become
+ * invalid, but they can be reconstructed later.
+ */
+ if (alloc)
+ atts[nbatts++] = NULL;
+ else
+ atts[nbatts++] = ctxt->input->base;
+ atts[nbatts++] = attvalue;
+ attvalue += len;
+ atts[nbatts++] = attvalue;
+ /*
+ * tag if some deallocation is needed
+ */
+ if (alloc != 0) attval = 1;
+ attvalue = NULL; /* moved into atts */
+ }
-failed:
+next_attr:
+ if ((attvalue != NULL) && (alloc != 0)) {
+ xmlFree(attvalue);
+ attvalue = NULL;
+ }
GROW
if (ctxt->instate == XML_PARSER_EOF)
break;
- if ((ctxt->input->base != base) || (inputNr != ctxt->inputNr))
- goto base_changed;
if ((RAW == '>') || (((RAW == '/') && (NXT(1) == '>'))))
break;
- if (!IS_BLANK_CH(RAW)) {
+ if (SKIP_BLANKS == 0) {
xmlFatalErrMsg(ctxt, XML_ERR_SPACE_REQUIRED,
"attributes construct error\n");
break;
}
- SKIP_BLANKS;
if ((cons == ctxt->input->consumed) && (q == CUR_PTR) &&
(attname == NULL) && (attvalue == NULL)) {
xmlFatalErr(ctxt, XML_ERR_INTERNAL_ERROR,
@@ -9661,8 +9417,27 @@ failed:
break;
}
GROW;
- if ((ctxt->input->base != base) || (inputNr != ctxt->inputNr))
- goto base_changed;
+ }
+
+ if (ctxt->input->id != inputid) {
+ xmlFatalErr(ctxt, XML_ERR_INTERNAL_ERROR,
+ "Unexpected change of input\n");
+ localname = NULL;
+ goto done;
+ }
+
+ /* Reconstruct attribute value pointers. */
+ for (i = 0, j = 0; j < nratts; i += 5, j++) {
+ if (atts[i+2] != NULL) {
+ /*
+ * Arithmetic on dangling pointers is technically undefined
+ * behavior, but well...
+ */
+ ptrdiff_t offset = ctxt->input->base - atts[i+2];
+ atts[i+2] = NULL; /* Reset repurposed namespace URI */
+ atts[i+3] += offset; /* value */
+ atts[i+4] += offset; /* valuend */
+ }
}
/*
@@ -9809,6 +9584,7 @@ failed:
nsname, 0, NULL, nbatts / 5, nbdef, atts);
}
+done:
/*
* Free up attribute allocated strings if needed
*/
@@ -9819,34 +9595,6 @@ failed:
}
return(localname);
-
-base_changed:
- /*
- * the attribute strings are valid iif the base didn't changed
- */
- if (attval != 0) {
- for (i = 3,j = 0; j < nratts;i += 5,j++)
- if ((ctxt->attallocs[j] != 0) && (atts[i] != NULL))
- xmlFree((xmlChar *) atts[i]);
- }
-
- /*
- * We can't switch from one entity to another in the middle
- * of a start tag
- */
- if (inputNr != ctxt->inputNr) {
- xmlFatalErrMsg(ctxt, XML_ERR_ENTITY_BOUNDARY,
- "Start tag doesn't start and stop in the same entity\n");
- return(NULL);
- }
-
- ctxt->input->cur = ctxt->input->base + cur;
- ctxt->input->line = oldline;
- ctxt->input->col = oldcol;
- if (ctxt->wellFormed == 1) {
- goto reparse;
- }
- return(NULL);
}
/**
@@ -10115,11 +9863,6 @@ xmlParseContent(xmlParserCtxtPtr ctxt) {
}
GROW;
- /*
- * Pop-up of finished entities.
- */
- while ((RAW == 0) && (ctxt->inputNr > 1))
- xmlPopInput(ctxt);
SHRINK;
if ((cons == ctxt->input->consumed) && (test == CUR_PTR)) {
@@ -11272,7 +11015,7 @@ xmlParseGetLasts(xmlParserCtxtPtr ctxt, const xmlChar **lastlt,
* Check that the block of characters is okay as SCdata content [20]
*
* Returns the number of bytes to pass if okay, a negative index where an
- * UTF-8 error occured otherwise
+ * UTF-8 error occurred otherwise
*/
static int
xmlCheckCdataPush(const xmlChar *utf, int len, int complete) {
@@ -11414,13 +11157,6 @@ xmlParseTryOrFinish(xmlParserCtxtPtr ctxt, int terminate) {
if ((ctxt->errNo != XML_ERR_OK) && (ctxt->disableSAX == 1))
return(0);
-
- /*
- * Pop-up of finished entities.
- */
- while ((RAW == 0) && (ctxt->inputNr > 1))
- xmlPopInput(ctxt);
-
if (ctxt->input == NULL) break;
if (ctxt->input->buf == NULL)
avail = ctxt->input->length -
@@ -11771,11 +11507,6 @@ xmlParseTryOrFinish(xmlParserCtxtPtr ctxt, int terminate) {
ctxt->checkIndex = 0;
xmlParseCharData(ctxt, 0);
}
- /*
- * Pop-up of finished entities.
- */
- while ((RAW == 0) && (ctxt->inputNr > 1))
- xmlPopInput(ctxt);
if ((cons == ctxt->input->consumed) && (test == CUR_PTR)) {
xmlFatalErr(ctxt, XML_ERR_INTERNAL_ERROR,
"detected an error in element content\n");
@@ -11798,9 +11529,10 @@ xmlParseTryOrFinish(xmlParserCtxtPtr ctxt, int terminate) {
}
if (ctxt->sax2) {
xmlParseEndTag2(ctxt,
- (void *) ctxt->pushTab[ctxt->nameNr * 3 - 3],
- (void *) ctxt->pushTab[ctxt->nameNr * 3 - 2], 0,
- (int) (long) ctxt->pushTab[ctxt->nameNr * 3 - 1], 0);
+ (void *) ctxt->pushTab[ctxt->nameNr * 3 - 3],
+ (void *) ctxt->pushTab[ctxt->nameNr * 3 - 2], 0,
+ (int) (ptrdiff_t)
+ ctxt->pushTab[ctxt->nameNr * 3 - 1], 0);
nameNsPop(ctxt);
}
#ifdef LIBXML_SAX1_ENABLED
@@ -12486,6 +12218,7 @@ xmldecl_done:
/* TODO 2.6.0 */
xmlGenericError(xmlGenericErrorContext,
"xmlParseChunk: encoder error\n");
+ xmlHaltParser(ctxt);
return(XML_ERR_INVALID_ENCODING);
}
xmlBufSetInputBaseCur(in->buffer, ctxt->input, base, current);
@@ -12718,6 +12451,8 @@ xmlHaltParser(xmlParserCtxtPtr ctxt) {
return;
ctxt->instate = XML_PARSER_EOF;
ctxt->disableSAX = 1;
+ while (ctxt->inputNr > 1)
+ xmlFreeInputStream(inputPop(ctxt));
if (ctxt->input != NULL) {
/*
* in case there was a specific allocation deallocate before
@@ -12729,6 +12464,7 @@ xmlHaltParser(xmlParserCtxtPtr ctxt) {
}
ctxt->input->cur = BAD_CAST"";
ctxt->input->base = ctxt->input->cur;
+ ctxt->input->end = ctxt->input->cur;
}
}
@@ -13497,7 +13233,7 @@ xmlParseExternalEntityPrivate(xmlDocPtr doc, xmlParserCtxtPtr oldctxt,
/*
* And record the last error if any
*/
- if (ctxt->lastError.code != XML_ERR_OK)
+ if ((oldctxt != NULL) && (ctxt->lastError.code != XML_ERR_OK))
xmlCopyError(&ctxt->lastError, &oldctxt->lastError);
if (sax != NULL)
@@ -13631,6 +13367,7 @@ xmlParseBalancedChunkMemoryInternal(xmlParserCtxtPtr oldctxt,
ctxt->userData = ctxt;
if (ctxt->dict != NULL) xmlDictFree(ctxt->dict);
ctxt->dict = oldctxt->dict;
+ ctxt->input_id = oldctxt->input_id + 1;
ctxt->str_xml = xmlDictLookup(ctxt->dict, BAD_CAST "xml", 3);
ctxt->str_xmlns = xmlDictLookup(ctxt->dict, BAD_CAST "xmlns", 5);
ctxt->str_xml_ns = xmlDictLookup(ctxt->dict, XML_XML_NAMESPACE, 36);
@@ -13884,6 +13621,7 @@ xmlParseInNodeContext(xmlNodePtr node, const char *data, int datalen,
xmlDetectSAX2(ctxt);
ctxt->myDoc = doc;
/* parsing in context, i.e. as within existing content */
+ ctxt->input_id = 2;
ctxt->instate = XML_PARSER_CONTENT;
fake = xmlNewComment(NULL);
@@ -14096,6 +13834,7 @@ xmlParseBalancedChunkMemoryRecover(xmlDocPtr doc, xmlSAXHandlerPtr sax,
newDoc->oldNs = doc->oldNs;
}
ctxt->instate = XML_PARSER_CONTENT;
+ ctxt->input_id = 2;
ctxt->depth = depth;
/*
@@ -14256,6 +13995,11 @@ xmlCreateEntityParserCtxtInternal(const xmlChar *URL, const xmlChar *ID,
if (pctx != NULL) {
ctxt->options = pctx->options;
ctxt->_private = pctx->_private;
+ /*
+ * this is a subparser of pctx, so the input_id should be
+ * incremented to distinguish from main entity
+ */
+ ctxt->input_id = pctx->input_id + 1;
}
uri = xmlBuildURI(URL, base);
@@ -15137,7 +14881,7 @@ xmlCtxtReset(xmlParserCtxtPtr ctxt)
xmlInitNodeInfoSeq(&ctxt->node_seq);
if (ctxt->attsDefault != NULL) {
- xmlHashFree(ctxt->attsDefault, (xmlHashDeallocator) xmlFree);
+ xmlHashFree(ctxt->attsDefault, xmlHashDefaultDeallocator);
ctxt->attsDefault = NULL;
}
if (ctxt->attsSpecial != NULL) {
diff --git a/parserInternals.c b/parserInternals.c
index bfc778ac..8c0cd57a 100644
--- a/parserInternals.c
+++ b/parserInternals.c
@@ -10,7 +10,7 @@
#define IN_LIBXML
#include "libxml.h"
-#if defined(WIN32) && !defined (__CYGWIN__)
+#if defined(_WIN32) && !defined (__CYGWIN__)
#define XML_DIR_SEP '\\'
#else
#define XML_DIR_SEP '/'
@@ -32,7 +32,7 @@
#ifdef HAVE_UNISTD_H
#include <unistd.h>
#endif
-#ifdef HAVE_ZLIB_H
+#ifdef LIBXML_ZLIB_ENABLED
#include <zlib.h>
#endif
@@ -435,8 +435,6 @@ xmlNextChar(xmlParserCtxtPtr ctxt)
if ((*ctxt->input->cur == 0) &&
(xmlParserInputGrow(ctxt->input, INPUT_CHUNK) <= 0)) {
- if ((ctxt->instate != XML_PARSER_COMMENT))
- xmlPopInput(ctxt);
return;
}
@@ -470,8 +468,8 @@ xmlNextChar(xmlParserCtxtPtr ctxt)
c = *cur;
if (c & 0x80) {
- if (c == 0xC0)
- goto encoding_error;
+ if (c == 0xC0)
+ goto encoding_error;
if (cur[1] == 0) {
xmlParserInputGrow(ctxt->input, INPUT_CHUNK);
cur = ctxt->input->cur;
@@ -523,8 +521,6 @@ xmlNextChar(xmlParserCtxtPtr ctxt)
ctxt->input->cur++;
ctxt->nbChars++;
- if (*ctxt->input->cur == 0)
- xmlParserInputGrow(ctxt->input, INPUT_CHUNK);
} else {
/*
* Assume it's a fixed length encoding (1) with
@@ -538,14 +534,9 @@ xmlNextChar(xmlParserCtxtPtr ctxt)
ctxt->input->col++;
ctxt->input->cur++;
ctxt->nbChars++;
- if (*ctxt->input->cur == 0)
- xmlParserInputGrow(ctxt->input, INPUT_CHUNK);
}
- if ((*ctxt->input->cur == '%') && (!ctxt->html))
- xmlParserHandlePEReference(ctxt);
- if ((*ctxt->input->cur == 0) &&
- (xmlParserInputGrow(ctxt->input, INPUT_CHUNK) <= 0))
- xmlPopInput(ctxt);
+ if (*ctxt->input->cur == 0)
+ xmlParserInputGrow(ctxt->input, INPUT_CHUNK);
return;
encoding_error:
/*
@@ -1101,8 +1092,15 @@ xmlSwitchEncoding(xmlParserCtxtPtr ctxt, xmlCharEncoding enc)
break;
}
}
- if (handler == NULL)
+ /*
+ * TODO: We could recover from errors in external entites if we
+ * didn't stop the parser. But most callers of this function don't
+ * check the return value.
+ */
+ if (handler == NULL) {
+ xmlStopParser(ctxt);
return(-1);
+ }
ctxt->charset = XML_CHAR_ENCODING_UTF8;
ret = xmlSwitchToEncodingInt(ctxt, handler, len);
if ((ret < 0) || (ctxt->errNo == XML_I18N_CONV_FAILED)) {
@@ -1216,7 +1214,7 @@ xmlSwitchInputEncodingInt(xmlParserCtxtPtr ctxt, xmlParserInputPtr input,
/*
* convert as much as possible of the buffer
*/
- nbchars = xmlCharEncInput(input->buf, 1);
+ nbchars = xmlCharEncInput(input->buf, 0);
} else {
/*
* convert just enough to get
@@ -1226,6 +1224,7 @@ xmlSwitchInputEncodingInt(xmlParserCtxtPtr ctxt, xmlParserInputPtr input,
*/
nbchars = xmlCharEncFirstLineInput(input->buf, len);
}
+ xmlBufResetInput(input->buf->buffer, input);
if (nbchars < 0) {
xmlErrInternal(ctxt,
"switching encoding: encoder error\n",
@@ -1233,7 +1232,6 @@ xmlSwitchInputEncodingInt(xmlParserCtxtPtr ctxt, xmlParserInputPtr input,
return (-1);
}
input->buf->rawconsumed += use - xmlBufUse(input->buf->raw);
- xmlBufResetInput(input->buf->buffer, input);
}
return (0);
} else if (input->length == 0) {
@@ -1797,7 +1795,7 @@ xmlFreeParserCtxt(xmlParserCtxtPtr ctxt)
if (ctxt->pushTab != NULL) xmlFree(ctxt->pushTab);
if (ctxt->attallocs != NULL) xmlFree(ctxt->attallocs);
if (ctxt->attsDefault != NULL)
- xmlHashFree(ctxt->attsDefault, (xmlHashDeallocator) xmlFree);
+ xmlHashFree(ctxt->attsDefault, xmlHashDefaultDeallocator);
if (ctxt->attsSpecial != NULL)
xmlHashFree(ctxt->attsSpecial, NULL);
if (ctxt->freeElems != NULL) {
diff --git a/pattern.c b/pattern.c
index 33dee3aa..0eb8d812 100644
--- a/pattern.c
+++ b/pattern.c
@@ -969,6 +969,7 @@ xmlCompileAttributeTest(xmlPatParserContextPtr ctxt) {
ERROR5(NULL, NULL, NULL,
"xmlCompileAttributeTest : no namespace bound to prefix %s\n",
prefix);
+ XML_PAT_FREE_STRING(ctxt, prefix);
ctxt->error = 1;
goto error;
}
diff --git a/python/setup.py b/python/setup.py
deleted file mode 100755
index 1ac4eaca..00000000
--- a/python/setup.py
+++ /dev/null
@@ -1,242 +0,0 @@
-#!/usr/bin/python -u
-#
-# Setup script for libxml2 and libxslt if found
-#
-import sys, os
-from distutils.core import setup, Extension
-
-# Below ROOT, we expect to find include, include/libxml2, lib and bin.
-# On *nix, it is not needed (but should not harm),
-# on Windows, it is set by configure.js.
-ROOT = r'/usr/local'
-
-# Thread-enabled libxml2
-with_threads = 1
-
-# If this flag is set (windows only),
-# a private copy of the dlls are included in the package.
-# If this flag is not set, the libxml2 and libxslt
-# dlls must be found somewhere in the PATH at runtime.
-WITHDLLS = 1 and sys.platform.startswith('win')
-
-def missing(file):
- if os.access(file, os.R_OK) == 0:
- return 1
- return 0
-
-try:
- HOME = os.environ['HOME']
-except:
- HOME="C:"
-
-if WITHDLLS:
- # libxml dlls (expected in ROOT/bin)
- dlls = [ 'iconv.dll','libxml2.dll','libxslt.dll','libexslt.dll' ]
- dlls = [os.path.join(ROOT,'bin',dll) for dll in dlls]
-
- # create __init__.py for the libxmlmods package
- if not os.path.exists("libxmlmods"):
- os.mkdir("libxmlmods")
- open("libxmlmods/__init__.py","w").close()
-
- def altImport(s):
- s = s.replace("import libxml2mod","from libxmlmods import libxml2mod")
- s = s.replace("import libxsltmod","from libxmlmods import libxsltmod")
- return s
-
-if sys.platform.startswith('win'):
- libraryPrefix = 'lib'
- platformLibs = []
-else:
- libraryPrefix = ''
- platformLibs = ["m","z"]
-
-# those are examined to find
-# - libxml2/libxml/tree.h
-# - iconv.h
-# - libxslt/xsltconfig.h
-includes_dir = [
-"/usr/include",
-"/usr/local/include",
-"/opt/include",
-os.path.join(ROOT,'include'),
-HOME
-];
-
-xml_includes=""
-for dir in includes_dir:
- if not missing(dir + "/libxml2/libxml/tree.h"):
- xml_includes=dir + "/libxml2"
- break;
-
-if xml_includes == "":
- print("failed to find headers for libxml2: update includes_dir")
- sys.exit(1)
-
-iconv_includes=""
-for dir in includes_dir:
- if not missing(dir + "/iconv.h"):
- iconv_includes=dir
- break;
-
-if iconv_includes == "":
- print("failed to find headers for libiconv: update includes_dir")
- sys.exit(1)
-
-# those are added in the linker search path for libraries
-libdirs = [
-os.path.join(ROOT,'lib'),
-]
-
-xml_files = ["libxml2-api.xml", "libxml2-python-api.xml",
- "libxml.c", "libxml.py", "libxml_wrap.h", "types.c",
- "xmlgenerator.py", "README", "TODO", "drv_libxml2.py"]
-
-xslt_files = ["libxslt-api.xml", "libxslt-python-api.xml",
- "libxslt.c", "libxsl.py", "libxslt_wrap.h",
- "xsltgenerator.py"]
-
-if missing("libxml2-py.c") or missing("libxml2.py"):
- try:
- try:
- import xmlgenerator
- except:
- import generator
- except:
- print("failed to find and generate stubs for libxml2, aborting ...")
- print(sys.exc_info()[0], sys.exc_info()[1])
- sys.exit(1)
-
- head = open("libxml.py", "r")
- generated = open("libxml2class.py", "r")
- result = open("libxml2.py", "w")
- for line in head.readlines():
- if WITHDLLS:
- result.write(altImport(line))
- else:
- result.write(line)
- for line in generated.readlines():
- result.write(line)
- head.close()
- generated.close()
- result.close()
-
-with_xslt=0
-if missing("libxslt-py.c") or missing("libxslt.py"):
- if missing("xsltgenerator.py") or missing("libxslt-api.xml"):
- print("libxslt stub generator not found, libxslt not built")
- else:
- try:
- import xsltgenerator
- except:
- print("failed to generate stubs for libxslt, aborting ...")
- print(sys.exc_info()[0], sys.exc_info()[1])
- else:
- head = open("libxsl.py", "r")
- generated = open("libxsltclass.py", "r")
- result = open("libxslt.py", "w")
- for line in head.readlines():
- if WITHDLLS:
- result.write(altImport(line))
- else:
- result.write(line)
- for line in generated.readlines():
- result.write(line)
- head.close()
- generated.close()
- result.close()
- with_xslt=1
-else:
- with_xslt=1
-
-if with_xslt == 1:
- xslt_includes=""
- for dir in includes_dir:
- if not missing(dir + "/libxslt/xsltconfig.h"):
- xslt_includes=dir + "/libxslt"
- break;
-
- if xslt_includes == "":
- print("failed to find headers for libxslt: update includes_dir")
- with_xslt = 0
-
-
-descr = "libxml2 package"
-modules = [ 'libxml2', 'drv_libxml2' ]
-if WITHDLLS:
- modules.append('libxmlmods.__init__')
-c_files = ['libxml2-py.c', 'libxml.c', 'types.c' ]
-includes= [xml_includes, iconv_includes]
-libs = [libraryPrefix + "xml2"] + platformLibs
-macros = []
-if with_threads:
- macros.append(('_REENTRANT','1'))
-if with_xslt == 1:
- descr = "libxml2 and libxslt package"
- if not sys.platform.startswith('win'):
- #
- # We are gonna build 2 identical shared libs with merge initializing
- # both libxml2mod and libxsltmod
- #
- c_files = c_files + ['libxslt-py.c', 'libxslt.c']
- xslt_c_files = c_files
- macros.append(('MERGED_MODULES', '1'))
- else:
- #
- # On windows the MERGED_MODULE option is not needed
- # (and does not work)
- #
- xslt_c_files = ['libxslt-py.c', 'libxslt.c', 'types.c']
- libs.insert(0, libraryPrefix + 'exslt')
- libs.insert(0, libraryPrefix + 'xslt')
- includes.append(xslt_includes)
- modules.append('libxslt')
-
-
-extens=[Extension('libxml2mod', c_files, include_dirs=includes,
- library_dirs=libdirs,
- libraries=libs, define_macros=macros)]
-if with_xslt == 1:
- extens.append(Extension('libxsltmod', xslt_c_files, include_dirs=includes,
- library_dirs=libdirs,
- libraries=libs, define_macros=macros))
-
-if missing("MANIFEST"):
-
- manifest = open("MANIFEST", "w")
- manifest.write("setup.py\n")
- for file in xml_files:
- manifest.write(file + "\n")
- if with_xslt == 1:
- for file in xslt_files:
- manifest.write(file + "\n")
- manifest.close()
-
-if WITHDLLS:
- ext_package = "libxmlmods"
- if sys.version >= "2.2":
- base = "lib/site-packages/"
- else:
- base = ""
- data_files = [(base+"libxmlmods",dlls)]
-else:
- ext_package = None
- data_files = []
-
-setup (name = "libxml2-python",
- # On *nix, the version number is created from setup.py.in
- # On windows, it is set by configure.js
- version = "2.9.4",
- description = descr,
- author = "Daniel Veillard",
- author_email = "veillard@redhat.com",
- url = "http://xmlsoft.org/python.html",
- licence="MIT Licence",
- py_modules=modules,
- ext_modules=extens,
- ext_package=ext_package,
- data_files=data_files,
- )
-
-sys.exit(0)
-
diff --git a/python/tests/xpathleak.py b/python/tests/xpathleak.py
index 33ab61c0..6940b790 100755
--- a/python/tests/xpathleak.py
+++ b/python/tests/xpathleak.py
@@ -4,25 +4,15 @@ import sys, libxml2
libxml2.debugMemory(True)
expect="""--> Invalid expression
---> xmlXPathEval: evaluation failed
--> Invalid expression
---> xmlXPathEval: evaluation failed
--> Invalid expression
---> xmlXPathEval: evaluation failed
--> Invalid expression
---> xmlXPathEval: evaluation failed
--> Invalid expression
---> xmlXPathEval: evaluation failed
--> Invalid expression
---> xmlXPathEval: evaluation failed
--> Invalid expression
---> xmlXPathEval: evaluation failed
--> Invalid expression
---> xmlXPathEval: evaluation failed
--> Invalid expression
---> xmlXPathEval: evaluation failed
--> Invalid expression
---> xmlXPathEval: evaluation failed
"""
err=""
def callback(ctx, str):
diff --git a/python/types.c b/python/types.c
index f2376776..124af565 100644
--- a/python/types.c
+++ b/python/types.c
@@ -31,8 +31,6 @@ libxml_PyFileGet(PyObject *f) {
const char *mode;
fd = PyObject_AsFileDescriptor(f);
- if (!_PyVerify_fd(fd))
- return(NULL);
/*
* Get the flags on the fd to understand how it was opened
*/
diff --git a/relaxng.c b/relaxng.c
index 3d3e69c0..88d351df 100644
--- a/relaxng.c
+++ b/relaxng.c
@@ -20,6 +20,7 @@
#include <string.h>
#include <stdio.h>
+#include <stddef.h>
#include <libxml/xmlmemory.h>
#include <libxml/parser.h>
#include <libxml/parserInternals.h>
@@ -2728,9 +2729,10 @@ static xmlHashTablePtr xmlRelaxNGRegisteredTypes = NULL;
* Free the structure associated to the type library
*/
static void
-xmlRelaxNGFreeTypeLibrary(xmlRelaxNGTypeLibraryPtr lib,
+xmlRelaxNGFreeTypeLibrary(void *payload,
const xmlChar * namespace ATTRIBUTE_UNUSED)
{
+ xmlRelaxNGTypeLibraryPtr lib = (xmlRelaxNGTypeLibraryPtr) payload;
if (lib == NULL)
return;
if (lib->namespace != NULL)
@@ -2841,8 +2843,7 @@ xmlRelaxNGCleanupTypes(void)
xmlSchemaCleanupTypes();
if (xmlRelaxNGTypeInitialized == 0)
return;
- xmlHashFree(xmlRelaxNGRegisteredTypes, (xmlHashDeallocator)
- xmlRelaxNGFreeTypeLibrary);
+ xmlHashFree(xmlRelaxNGRegisteredTypes, xmlRelaxNGFreeTypeLibrary);
xmlRelaxNGTypeInitialized = 0;
}
@@ -4310,10 +4311,11 @@ xmlRelaxNGCheckGroupAttrs(xmlRelaxNGParserCtxtPtr ctxt,
* algorithm
*/
static void
-xmlRelaxNGComputeInterleaves(xmlRelaxNGDefinePtr def,
- xmlRelaxNGParserCtxtPtr ctxt,
- xmlChar * name ATTRIBUTE_UNUSED)
+xmlRelaxNGComputeInterleaves(void *payload, void *data,
+ const xmlChar * name ATTRIBUTE_UNUSED)
{
+ xmlRelaxNGDefinePtr def = (xmlRelaxNGDefinePtr) payload;
+ xmlRelaxNGParserCtxtPtr ctxt = (xmlRelaxNGParserCtxtPtr) data;
xmlRelaxNGDefinePtr cur, *tmp;
xmlRelaxNGPartitionPtr partitions = NULL;
@@ -4404,7 +4406,7 @@ xmlRelaxNGComputeInterleaves(xmlRelaxNGDefinePtr def,
if ((*tmp)->type == XML_RELAXNG_TEXT) {
res = xmlHashAddEntry2(partitions->triage,
BAD_CAST "#text", NULL,
- (void *) (long) (i + 1));
+ (void *) (ptrdiff_t) (i + 1));
if (res != 0)
is_determinist = -1;
} else if (((*tmp)->type == XML_RELAXNG_ELEMENT) &&
@@ -4412,22 +4414,22 @@ xmlRelaxNGComputeInterleaves(xmlRelaxNGDefinePtr def,
if (((*tmp)->ns == NULL) || ((*tmp)->ns[0] == 0))
res = xmlHashAddEntry2(partitions->triage,
(*tmp)->name, NULL,
- (void *) (long) (i + 1));
+ (void *) (ptrdiff_t) (i + 1));
else
res = xmlHashAddEntry2(partitions->triage,
(*tmp)->name, (*tmp)->ns,
- (void *) (long) (i + 1));
+ (void *) (ptrdiff_t) (i + 1));
if (res != 0)
is_determinist = -1;
} else if ((*tmp)->type == XML_RELAXNG_ELEMENT) {
if (((*tmp)->ns == NULL) || ((*tmp)->ns[0] == 0))
res = xmlHashAddEntry2(partitions->triage,
BAD_CAST "#any", NULL,
- (void *) (long) (i + 1));
+ (void *) (ptrdiff_t) (i + 1));
else
res = xmlHashAddEntry2(partitions->triage,
BAD_CAST "#any", (*tmp)->ns,
- (void *) (long) (i + 1));
+ (void *) (ptrdiff_t) (i + 1));
if ((*tmp)->nameClass != NULL)
is_determinist = 2;
if (res != 0)
@@ -4662,7 +4664,7 @@ xmlRelaxNGParseDefine(xmlRelaxNGParserCtxtPtr ctxt, xmlNodePtr node)
* Import import one references into the current grammar
*/
static void
-xmlRelaxNGParseImportRef(void *payload, void *data, xmlChar *name) {
+xmlRelaxNGParseImportRef(void *payload, void *data, const xmlChar *name) {
xmlRelaxNGParserCtxtPtr ctxt = (xmlRelaxNGParserCtxtPtr) data;
xmlRelaxNGDefinePtr def = (xmlRelaxNGDefinePtr) payload;
int tmp;
@@ -5669,10 +5671,10 @@ xmlRelaxNGParseGrammarContent(xmlRelaxNGParserCtxtPtr ctxt,
* element of a given grammar using the same name.
*/
static void
-xmlRelaxNGCheckReference(xmlRelaxNGDefinePtr ref,
- xmlRelaxNGParserCtxtPtr ctxt,
- const xmlChar * name)
+xmlRelaxNGCheckReference(void *payload, void *data, const xmlChar * name)
{
+ xmlRelaxNGDefinePtr ref = (xmlRelaxNGDefinePtr) payload;
+ xmlRelaxNGParserCtxtPtr ctxt = (xmlRelaxNGParserCtxtPtr) data;
xmlRelaxNGGrammarPtr grammar;
xmlRelaxNGDefinePtr def, cur;
@@ -5725,9 +5727,10 @@ xmlRelaxNGCheckReference(xmlRelaxNGDefinePtr ref,
* element of a given grammar using the same name.
*/
static void
-xmlRelaxNGCheckCombine(xmlRelaxNGDefinePtr define,
- xmlRelaxNGParserCtxtPtr ctxt, const xmlChar * name)
+xmlRelaxNGCheckCombine(void *payload, void *data, const xmlChar * name)
{
+ xmlRelaxNGDefinePtr define = (xmlRelaxNGDefinePtr) payload;
+ xmlRelaxNGParserCtxtPtr ctxt = (xmlRelaxNGParserCtxtPtr) data;
xmlChar *combine;
int choiceOrInterleave = -1;
int missing = 0;
@@ -6610,16 +6613,14 @@ xmlRelaxNGParseGrammar(xmlRelaxNGParserCtxtPtr ctxt, xmlNodePtr nodes)
*/
xmlRelaxNGCombineStart(ctxt, ret);
if (ret->defs != NULL) {
- xmlHashScan(ret->defs, (xmlHashScanner) xmlRelaxNGCheckCombine,
- ctxt);
+ xmlHashScan(ret->defs, xmlRelaxNGCheckCombine, ctxt);
}
/*
* link together defines and refs in this grammar
*/
if (ret->refs != NULL) {
- xmlHashScan(ret->refs, (xmlHashScanner) xmlRelaxNGCheckReference,
- ctxt);
+ xmlHashScan(ret->refs, xmlRelaxNGCheckReference, ctxt);
}
@@ -7550,8 +7551,7 @@ xmlRelaxNGParse(xmlRelaxNGParserCtxtPtr ctxt)
* try to preprocess interleaves
*/
if (ctxt->interleaves != NULL) {
- xmlHashScan(ctxt->interleaves,
- (xmlHashScanner) xmlRelaxNGComputeInterleaves, ctxt);
+ xmlHashScan(ctxt->interleaves, xmlRelaxNGComputeInterleaves, ctxt);
}
/*
@@ -8890,7 +8890,7 @@ xmlRelaxNGValidateValue(xmlRelaxNGValidCtxtPtr ctxt,
if (ret != 0) {
break;
}
- /* no break on purpose */
+ /* Falls through. */
case XML_RELAXNG_ZEROORMORE:{
xmlChar *cur, *temp;
@@ -9387,7 +9387,7 @@ xmlRelaxNGValidateInterleave(xmlRelaxNGValidCtxtPtr ctxt,
if (tmp == NULL) {
i = nbgroups;
} else {
- i = ((long) tmp) - 1;
+ i = ((ptrdiff_t) tmp) - 1;
if (partitions->flags & IS_NEEDCHECK) {
group = partitions->groups[i];
if (!xmlRelaxNGNodeMatchesList(cur, group->defs))
@@ -10167,7 +10167,7 @@ xmlRelaxNGValidateState(xmlRelaxNGValidCtxtPtr ctxt,
}
if (ctxt->errNr > errNr)
xmlRelaxNGPopErrors(ctxt, errNr);
- /* no break on purpose */
+ /* Falls through. */
case XML_RELAXNG_ZEROORMORE:{
int progress;
xmlRelaxNGStatesPtr states = NULL, res = NULL;
diff --git a/result/HTML/53867.html.sax b/result/HTML/53867.html.sax
index 81a9f15f..1bb0d14a 100644
--- a/result/HTML/53867.html.sax
+++ b/result/HTML/53867.html.sax
@@ -1,10 +1,10 @@
SAX.setDocumentLocator()
SAX.startDocument()
SAX.startElement(html)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(head)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(style)
SAX.cdata(
@@ -15,12 +15,12 @@ SAX.cdata(.............................., 1000)
SAX.cdata(................
............., 977)
SAX.endElement(style)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endElement(head)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endElement(html)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endDocument()
diff --git a/result/HTML/758518-entity.html b/result/HTML/758518-entity.html
new file mode 100644
index 00000000..e72b0cbd
--- /dev/null
+++ b/result/HTML/758518-entity.html
@@ -0,0 +1,2 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
+<html><body><p>&amp;&Ugrave;</p></body></html>
diff --git a/result/HTML/758518-entity.html.err b/result/HTML/758518-entity.html.err
new file mode 100644
index 00000000..0186677b
--- /dev/null
+++ b/result/HTML/758518-entity.html.err
@@ -0,0 +1,3 @@
+./test/HTML/758518-entity.html:1: HTML parser error : htmlParseEntityRef: expecting ';'
+Ù
+ ^
diff --git a/result/HTML/758518-entity.html.sax b/result/HTML/758518-entity.html.sax
new file mode 100644
index 00000000..3d017ab2
--- /dev/null
+++ b/result/HTML/758518-entity.html.sax
@@ -0,0 +1,12 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.error: htmlParseEntityRef: expecting ';'
+SAX.startElement(html)
+SAX.startElement(body)
+SAX.startElement(p)
+SAX.characters(&amp;, 1)
+SAX.characters(&Ugrave;, 2)
+SAX.endElement(p)
+SAX.endElement(body)
+SAX.endElement(html)
+SAX.endDocument()
diff --git a/result/HTML/758518-tag.html b/result/HTML/758518-tag.html
new file mode 100644
index 00000000..f99f4211
--- /dev/null
+++ b/result/HTML/758518-tag.html
@@ -0,0 +1,2 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
+<html><body><p>&#147;</p></body></html>
diff --git a/result/HTML/758518-tag.html.err b/result/HTML/758518-tag.html.err
new file mode 100644
index 00000000..c912c91f
--- /dev/null
+++ b/result/HTML/758518-tag.html.err
@@ -0,0 +1,3 @@
+./test/HTML/758518-tag.html:1: HTML parser error : PI is not started correctly
+“
+^
diff --git a/result/HTML/758518-tag.html.sax b/result/HTML/758518-tag.html.sax
new file mode 100644
index 00000000..fd4aa949
--- /dev/null
+++ b/result/HTML/758518-tag.html.sax
@@ -0,0 +1,10 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.error: PI is not started correctlySAX.startElement(html)
+SAX.startElement(body)
+SAX.startElement(p)
+SAX.characters(&#147;, 2)
+SAX.endElement(p)
+SAX.endElement(body)
+SAX.endElement(html)
+SAX.endDocument()
diff --git a/result/HTML/758605.html.sax b/result/HTML/758605.html.sax
index c6e0986a..1f184261 100644
--- a/result/HTML/758605.html.sax
+++ b/result/HTML/758605.html.sax
@@ -6,7 +6,7 @@ SAX.startElement(body)
SAX.startElement(p)
SAX.characters(&amp;, 1)
SAX.characters(&ecirc;, 2)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endElement(p)
SAX.endElement(body)
diff --git a/result/HTML/Down.html.sax b/result/HTML/Down.html.sax
index c23c3329..ae3c0560 100644
--- a/result/HTML/Down.html.sax
+++ b/result/HTML/Down.html.sax
@@ -1,18 +1,18 @@
SAX.setDocumentLocator()
SAX.startDocument()
SAX.startElement(html)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(head)
-SAX.ignorableWhitespace(
+SAX.characters(
, 3)
SAX.startElement(title)
SAX.characters(This service is temporary down, 30)
SAX.endElement(title)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endElement(head)
-SAX.ignorableWhitespace(
+SAX.characters(
, 2)
SAX.startElement(body, bgcolor='#FFFFFF')
@@ -29,9 +29,9 @@ SAX.endElement(p)
SAX.characters(
, 1)
SAX.endElement(body)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endElement(html)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endDocument()
diff --git a/result/HTML/attrents.html.sax b/result/HTML/attrents.html.sax
index c1cfb427..30df6839 100644
--- a/result/HTML/attrents.html.sax
+++ b/result/HTML/attrents.html.sax
@@ -1,7 +1,7 @@
SAX.setDocumentLocator()
SAX.startDocument()
SAX.startElement(html)
-SAX.ignorableWhitespace(
+SAX.characters(
, 2)
SAX.startElement(body, bgcolor='#FFFFFF')
SAX.characters(
@@ -13,9 +13,9 @@ SAX.endElement(br)
SAX.characters(
, 2)
SAX.endElement(body)
-SAX.ignorableWhitespace(
+SAX.characters(
, 2)
SAX.endElement(html)
-SAX.ignorableWhitespace(
+SAX.characters(
, 2)
SAX.endDocument()
diff --git a/result/HTML/autoclose.html.sax b/result/HTML/autoclose.html.sax
index 5a45627b..c541c5eb 100644
--- a/result/HTML/autoclose.html.sax
+++ b/result/HTML/autoclose.html.sax
@@ -4,7 +4,7 @@ SAX.startElement(html)
SAX.startElement(body)
SAX.startElement(hr)
SAX.endElement(hr)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endElement(body)
SAX.endElement(html)
diff --git a/result/HTML/cf_128.html.sax b/result/HTML/cf_128.html.sax
index 8f66a42e..3913ebd3 100644
--- a/result/HTML/cf_128.html.sax
+++ b/result/HTML/cf_128.html.sax
@@ -2,18 +2,18 @@ SAX.setDocumentLocator()
SAX.startDocument()
SAX.internalSubset(HTML, -//W3C//DTD HTML 4.0 Transitional//EN, http://www.w3.org/TR/REC-html40/strict.dtd)
SAX.startElement(html)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(head)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(title)
SAX.characters(gnome-xml push mode bug, 23)
SAX.endElement(title)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endElement(head)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(body)
SAX.characters(
@@ -61,9 +61,9 @@ SAX.endElement(table)
SAX.characters(
, 3)
SAX.endElement(body)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endElement(html)
-SAX.ignorableWhitespace(
+SAX.characters(
, 3)
SAX.endDocument()
diff --git a/result/HTML/doc2.htm.sax b/result/HTML/doc2.htm.sax
index 7cbbc510..63c71649 100644
--- a/result/HTML/doc2.htm.sax
+++ b/result/HTML/doc2.htm.sax
@@ -8,31 +8,31 @@ SAX.startElement(head)
SAX.startElement(title)
SAX.characters(Welcome to Copernic.com, 23)
SAX.endElement(title)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(script, language='javascript')
SAX.cdata(
NS_ActualOpen=windo, 194)
SAX.endElement(script)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.comment( END Naviscope Javascript )
SAX.error: Misplaced DOCTYPE declaration
SAX.internalSubset(HTML, -//W3C//DTD HTML 4.0 Transitional//EN, )
SAX.comment( saved from url=(0027)http://www.agents-tech.com/ )
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(meta, content='text/html; charset=iso-8859-1', http-equiv='Content-Type')
SAX.endElement(meta)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(meta, content='Copernic.com Inc. develops innovative agent technology solutions to efficiently access and manage the overwhelming quantity of information available on the Internet and intranets.', name='DESCRIPTION')
SAX.endElement(meta)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(meta, content='agent,technology,intranet,extranet,management,filtering,ranking,solution,service,intelligent,intelligence,client,server,architecture,developer,development,information,telecommunication,announcement,press,product,profile,contact,multi-agent,meta-search,metasearch,multi-thread,mobile,wireless,shopping,robot,PCS,Copernic,engine,toolkit,CDK,EDK', name='KEYWORDS')
SAX.endElement(meta)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(meta, content='MSHTML 5.00.3103.1000', name='GENERATOR')
SAX.endElement(meta)
@@ -64,6 +64,6 @@ SAX.characters(
SAX.endElement(noframes)
SAX.endElement(frameset)
SAX.endElement(html)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endDocument()
diff --git a/result/HTML/doc3.htm.sax b/result/HTML/doc3.htm.sax
index 13477f1f..fb33cf22 100644
--- a/result/HTML/doc3.htm.sax
+++ b/result/HTML/doc3.htm.sax
@@ -8,46 +8,46 @@ SAX.startElement(head)
SAX.startElement(title)
SAX.characters(BP6.com #1 online resource for, 47)
SAX.endElement(title)
-SAX.ignorableWhitespace(
+SAX.characters(
, 2)
SAX.startElement(script, language='javascript')
SAX.cdata(
NS_ActualOpen=wind, 199)
SAX.endElement(script)
-SAX.ignorableWhitespace(
+SAX.characters(
, 2)
SAX.comment( END Naviscope Javascript )
SAX.error: Misplaced DOCTYPE declaration
SAX.internalSubset(HTML, -//W3C//DTD HTML 3.2//EN, )
SAX.comment(last modified on Tuesday, February 22, 2000 11:47 PM )
-SAX.ignorableWhitespace(
+SAX.characters(
, 2)
SAX.startElement(meta, content='text/html;CHARSET=iso-8859-1', http-equiv='Content-Type')
SAX.endElement(meta)
-SAX.ignorableWhitespace(
+SAX.characters(
, 2)
SAX.startElement(meta, content='Tim', name='Author')
SAX.endElement(meta)
-SAX.ignorableWhitespace(
+SAX.characters(
, 2)
SAX.startElement(style, type='text/css')
SAX.cdata(A.nav {
COLOR: #003399; TEXT, 115)
SAX.endElement(style)
-SAX.ignorableWhitespace(
+SAX.characters(
, 4)
SAX.startElement(script, language='JavaScript')
SAX.cdata(
&lt;!-- Idea by: Nic Wolfe (, 476)
SAX.endElement(script)
-SAX.ignorableWhitespace(
+SAX.characters(
, 4)
SAX.startElement(meta, content='MSHTML 5.00.3103.1000', name='GENERATOR')
SAX.endElement(meta)
SAX.endElement(head)
-SAX.ignorableWhitespace(
+SAX.characters(
, 2)
SAX.startElement(body, alink='red', bgcolor='black', link='red', text='white', vlink='red')
SAX.characters(
@@ -2873,6 +2873,6 @@ SAX.characters(
, 2)
SAX.endElement(body)
SAX.endElement(html)
-SAX.ignorableWhitespace(
+SAX.characters(
, 2)
SAX.endDocument()
diff --git a/result/HTML/entities.html.sax b/result/HTML/entities.html.sax
index 709b60da..3843f6d0 100644
--- a/result/HTML/entities.html.sax
+++ b/result/HTML/entities.html.sax
@@ -20,7 +20,7 @@ SAX.characters(&amp;, 1)
SAX.characters( b
, 3)
SAX.endElement(p)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endElement(body)
SAX.endElement(html)
diff --git a/result/HTML/entities2.html.sax b/result/HTML/entities2.html.sax
index c6efbe53..131b8136 100644
--- a/result/HTML/entities2.html.sax
+++ b/result/HTML/entities2.html.sax
@@ -1,7 +1,7 @@
SAX.setDocumentLocator()
SAX.startDocument()
SAX.startElement(html)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(body)
SAX.characters(
@@ -17,7 +17,7 @@ SAX.endElement(form)
SAX.characters(
, 1)
SAX.endElement(body)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endElement(html)
SAX.endDocument()
diff --git a/result/HTML/fp40.htm.sax b/result/HTML/fp40.htm.sax
index 6f777945..a51668cd 100644
--- a/result/HTML/fp40.htm.sax
+++ b/result/HTML/fp40.htm.sax
@@ -2,27 +2,27 @@ SAX.setDocumentLocator()
SAX.startDocument()
SAX.internalSubset(html, -//IETF//DTD HTML//EN, )
SAX.startElement(html)
-SAX.ignorableWhitespace(
+SAX.characters(
, 2)
SAX.startElement(head)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(meta, name='GENERATOR', content='Microsoft FrontPage 4.0')
SAX.endElement(meta)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(title)
SAX.characters(README - Microsoft FrontPage 2, 51)
SAX.endElement(title)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(meta, name='Microsoft Theme', content='none')
SAX.endElement(meta)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endElement(head)
-SAX.ignorableWhitespace(
+SAX.characters(
, 2)
SAX.startElement(body)
@@ -455,9 +455,9 @@ SAX.endElement(font)
SAX.characters(
, 1)
SAX.endElement(body)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endElement(html)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endDocument()
diff --git a/result/HTML/html5_enc.html.sax b/result/HTML/html5_enc.html.sax
index 292be575..6c5802f5 100644
--- a/result/HTML/html5_enc.html.sax
+++ b/result/HTML/html5_enc.html.sax
@@ -1,17 +1,17 @@
SAX.setDocumentLocator()
SAX.startDocument()
SAX.startElement(html)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(head)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(meta, charset='iso-8859-1')
SAX.endElement(meta)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endElement(head)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(body)
SAX.characters(
@@ -22,9 +22,9 @@ SAX.endElement(p)
SAX.characters(
, 1)
SAX.endElement(body)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endElement(html)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endDocument()
diff --git a/result/HTML/liclose.html.sax b/result/HTML/liclose.html.sax
index eabcdf67..50fa7788 100644
--- a/result/HTML/liclose.html.sax
+++ b/result/HTML/liclose.html.sax
@@ -2,17 +2,17 @@ SAX.setDocumentLocator()
SAX.startDocument()
SAX.internalSubset(HTML, -//W3C//DTD HTML 4.0 Transitional//EN, http://www.w3.org/TR/REC-html40/loose.dtd)
SAX.startElement(html)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(head)
-SAX.ignorableWhitespace(
+SAX.characters(
, 3)
SAX.startElement(title)
SAX.endElement(title)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endElement(head)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(body)
SAX.characters(
@@ -33,6 +33,6 @@ SAX.characters(
, 2)
SAX.endElement(body)
SAX.endElement(html)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endDocument()
diff --git a/result/HTML/lt.html.sax b/result/HTML/lt.html.sax
index a4ab5e37..43e1b11a 100644
--- a/result/HTML/lt.html.sax
+++ b/result/HTML/lt.html.sax
@@ -1,19 +1,19 @@
SAX.setDocumentLocator()
SAX.startDocument()
SAX.startElement(html)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(head)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(meta, name='Author', content='Root &lt;root@aol.com&gt;')
SAX.endElement(meta)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endElement(head)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endElement(html)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endDocument()
diff --git a/result/HTML/noscript.html.sax b/result/HTML/noscript.html.sax
index b69396f5..a4d036f7 100644
--- a/result/HTML/noscript.html.sax
+++ b/result/HTML/noscript.html.sax
@@ -2,24 +2,24 @@ SAX.setDocumentLocator()
SAX.startDocument()
SAX.internalSubset(html, , )
SAX.startElement(html)
-SAX.ignorableWhitespace(
+SAX.characters(
, 5)
SAX.startElement(head)
-SAX.ignorableWhitespace(
+SAX.characters(
, 9)
SAX.startElement(title)
SAX.characters(omg, 3)
SAX.endElement(title)
-SAX.ignorableWhitespace(
+SAX.characters(
, 9)
SAX.startElement(noscript)
SAX.startElement(link, rel='stylesheet', href='http://foo.com')
SAX.endElement(link)
SAX.endElement(noscript)
-SAX.ignorableWhitespace(
+SAX.characters(
, 5)
SAX.endElement(head)
-SAX.ignorableWhitespace(
+SAX.characters(
, 5)
SAX.startElement(body, id='xxx')
SAX.characters(
@@ -30,9 +30,9 @@ SAX.endElement(p)
SAX.characters(
, 5)
SAX.endElement(body)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endElement(html)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endDocument()
diff --git a/result/HTML/pre.html.sax b/result/HTML/pre.html.sax
index f8782b7d..bdf1b75b 100644
--- a/result/HTML/pre.html.sax
+++ b/result/HTML/pre.html.sax
@@ -1,7 +1,7 @@
SAX.setDocumentLocator()
SAX.startDocument()
SAX.startElement(html)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(body)
SAX.characters(
@@ -15,9 +15,9 @@ SAX.endElement(pre)
SAX.characters(
, 1)
SAX.endElement(body)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endElement(html)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endDocument()
diff --git a/result/HTML/python.html.sax b/result/HTML/python.html.sax
index 665539c1..ec300d35 100644
--- a/result/HTML/python.html.sax
+++ b/result/HTML/python.html.sax
@@ -3,27 +3,27 @@ SAX.startDocument()
SAX.internalSubset(html, -//W3C//DTD HTML 4.01 Transitional//EN, http://www.w3.org/TR/html4/loose.dtd)
SAX.processingInstruction(xml-stylesheet, href="./css/ht2html.css" type="text/css"?)
SAX.startElement(html)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.comment( THIS PAGE IS AUTOMATICALLY GENERATED. DO NOT EDIT. )
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(head)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(title)
SAX.characters(Python Programming Language, 27)
SAX.endElement(title)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endElement(head)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(body)
SAX.characters(
, 1)
SAX.endElement(body)
SAX.endElement(html)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endDocument()
diff --git a/result/HTML/reg1.html.sax b/result/HTML/reg1.html.sax
index c8ee3ac1..758fd4f5 100644
--- a/result/HTML/reg1.html.sax
+++ b/result/HTML/reg1.html.sax
@@ -1,18 +1,18 @@
SAX.setDocumentLocator()
SAX.startDocument()
SAX.startElement(html)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(head)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(title)
SAX.characters(Regression test 1, 17)
SAX.endElement(title)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endElement(head)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(body)
SAX.characters(
@@ -28,9 +28,9 @@ Ok file no problem
, 20)
SAX.endElement(p)
SAX.endElement(body)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endElement(html)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endDocument()
diff --git a/result/HTML/reg2.html.sax b/result/HTML/reg2.html.sax
index f85691e4..c9fe5cb9 100644
--- a/result/HTML/reg2.html.sax
+++ b/result/HTML/reg2.html.sax
@@ -1,18 +1,18 @@
SAX.setDocumentLocator()
SAX.startDocument()
SAX.startElement(html)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(head)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(title)
SAX.characters(Regression test 2, 17)
SAX.endElement(title)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endElement(head)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(body)
SAX.characters(
@@ -33,9 +33,9 @@ Ok file no problem
, 20)
SAX.endElement(p)
SAX.endElement(body)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endElement(html)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endDocument()
diff --git a/result/HTML/reg3.html.sax b/result/HTML/reg3.html.sax
index ec0f0396..a2ea57e5 100644
--- a/result/HTML/reg3.html.sax
+++ b/result/HTML/reg3.html.sax
@@ -1,18 +1,18 @@
SAX.setDocumentLocator()
SAX.startDocument()
SAX.startElement(html)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(head)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(title)
SAX.characters(Regression test 3, 17)
SAX.endElement(title)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endElement(head)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(body)
SAX.characters(
@@ -37,9 +37,9 @@ Ok file no problem
, 20)
SAX.endElement(p)
SAX.endElement(body)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endElement(html)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endDocument()
diff --git a/result/HTML/reg4.html.sax b/result/HTML/reg4.html.sax
index 4c5147cd..3ed6c9d0 100644
--- a/result/HTML/reg4.html.sax
+++ b/result/HTML/reg4.html.sax
@@ -1,18 +1,18 @@
SAX.setDocumentLocator()
SAX.startDocument()
SAX.startElement(html)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(head)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(title)
SAX.characters(Regression test 4, 17)
SAX.endElement(title)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endElement(head)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(body)
SAX.characters(
@@ -35,9 +35,9 @@ SAX.error: Unexpected end tag : p
SAX.characters(
, 1)
SAX.endElement(body)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endElement(html)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endDocument()
diff --git a/result/HTML/repeat.html.sax b/result/HTML/repeat.html.sax
index 2dbf35c1..50b3a762 100644
--- a/result/HTML/repeat.html.sax
+++ b/result/HTML/repeat.html.sax
@@ -6,7 +6,7 @@ SAX.startElement(td)
SAX.endElement(td)
SAX.startElement(td)
SAX.comment( <a><b> )
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endElement(td)
SAX.endElement(body)
diff --git a/result/HTML/script.html.sax b/result/HTML/script.html.sax
index b259f7f7..5925eccb 100644
--- a/result/HTML/script.html.sax
+++ b/result/HTML/script.html.sax
@@ -1,14 +1,14 @@
SAX.setDocumentLocator()
SAX.startDocument()
SAX.startElement(html)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(head)
SAX.startElement(title)
SAX.characters(Script tests, 12)
SAX.endElement(title)
SAX.endElement(head)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(body)
SAX.characters(
@@ -24,9 +24,9 @@ SAX.endElement(input)
SAX.characters(
, 1)
SAX.endElement(body)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endElement(html)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endDocument()
diff --git a/result/HTML/script2.html.sax b/result/HTML/script2.html.sax
index 19719917..405549d1 100644
--- a/result/HTML/script2.html.sax
+++ b/result/HTML/script2.html.sax
@@ -2,22 +2,22 @@ SAX.setDocumentLocator()
SAX.startDocument()
SAX.internalSubset(html, -//W3C//DTD XHTML 1.0 Strict//EN, http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd)
SAX.startElement(html, xmlns='http://www.w3.org/1999/xhtml')
-SAX.ignorableWhitespace(
+SAX.characters(
, 2)
SAX.startElement(head)
-SAX.ignorableWhitespace(
+SAX.characters(
, 3)
SAX.startElement(meta, http-equiv='Content-Type', content='text/html; charset=UTF-8')
SAX.endElement(meta)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(title)
SAX.characters(Test Page, 9)
SAX.endElement(title)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endElement(head)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(body)
SAX.characters(
@@ -41,10 +41,10 @@ SAX.endElement(div)
SAX.characters(
, 1)
SAX.endElement(body)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endElement(html)
-SAX.ignorableWhitespace(
+SAX.characters(
, 2)
SAX.endDocument()
diff --git a/result/HTML/test2.html.sax b/result/HTML/test2.html.sax
index 78bb090a..fd328dd6 100644
--- a/result/HTML/test2.html.sax
+++ b/result/HTML/test2.html.sax
@@ -3,12 +3,12 @@ SAX.startDocument()
SAX.internalSubset(HTML, -//W3C//DTD HTML 4.0 Transitional//EN, http://www.w3.org/TR/REC-html40/loose.dtd)
SAX.startElement(html)
SAX.startElement(head)
-SAX.ignorableWhitespace( , 1)
+SAX.characters( , 1)
SAX.startElement(title)
SAX.characters(Linux Today, 11)
SAX.endElement(title)
SAX.endElement(head)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(body, bgcolor='White', link='Blue', text='Black', vlink='Black', alink='Red')
SAX.characters(
@@ -137,9 +137,9 @@ SAX.characters(
, 1)
SAX.endElement(p)
SAX.endElement(body)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endElement(html)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endDocument()
diff --git a/result/HTML/test3.html.sax b/result/HTML/test3.html.sax
index c9f66384..b75b2119 100644
--- a/result/HTML/test3.html.sax
+++ b/result/HTML/test3.html.sax
@@ -1,17 +1,17 @@
SAX.setDocumentLocator()
SAX.startDocument()
SAX.startElement(html)
-SAX.ignorableWhitespace(
+SAX.characters(
, 2)
SAX.startElement(head)
-SAX.ignorableWhitespace(
+SAX.characters(
, 2)
SAX.startElement(base, target='contents')
SAX.endElement(base)
-SAX.ignorableWhitespace(
+SAX.characters(
, 2)
SAX.endElement(head)
-SAX.ignorableWhitespace(
+SAX.characters(
, 2)
SAX.startElement(body)
SAX.startElement(a, name='ProblemDomain.Package')
@@ -225,6 +225,6 @@ SAX.characters(
, 2)
SAX.endElement(body)
SAX.endElement(html)
-SAX.ignorableWhitespace(
+SAX.characters(
, 2)
SAX.endDocument()
diff --git a/result/HTML/utf8bug.html.sax b/result/HTML/utf8bug.html.sax
index 06cdb15d..e1483583 100644
--- a/result/HTML/utf8bug.html.sax
+++ b/result/HTML/utf8bug.html.sax
@@ -1,35 +1,35 @@
SAX.setDocumentLocator()
SAX.startDocument()
SAX.startElement(html)
-SAX.ignorableWhitespace(
+SAX.characters(
, 2)
SAX.startElement(head)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(meta, http-equiv='Content-Language', content='en-us')
SAX.endElement(meta)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(meta, http-equiv='Content-Type', content='text/html; charset=utf-8')
SAX.endElement(meta)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(link, href='CSS.css', type='text/css', rel='stylesheet')
SAX.endElement(link)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(link, rel='SHORTCUT ICON', href='favicon.ico')
SAX.endElement(link)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.startElement(title)
SAX.characters(&#1588;&#1607;&#1610;&#1585; , 17)
SAX.endElement(title)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endElement(head)
-SAX.ignorableWhitespace(
+SAX.characters(
, 2)
SAX.startElement(body)
diff --git a/result/HTML/wired.html.sax b/result/HTML/wired.html.sax
index 3860c76f..d5b16297 100644
--- a/result/HTML/wired.html.sax
+++ b/result/HTML/wired.html.sax
@@ -2839,10 +2839,10 @@ SAX.endElement(br)
SAX.characters(
, 1)
SAX.endElement(body)
-SAX.ignorableWhitespace(
+SAX.characters(
, 1)
SAX.endElement(html)
-SAX.ignorableWhitespace(
+SAX.characters(
, 2)
SAX.endDocument()
diff --git a/result/XPath/expr/base b/result/XPath/expr/base
index e04346fa..57c93cf8 100644
--- a/result/XPath/expr/base
+++ b/result/XPath/expr/base
@@ -24,5 +24,45 @@ Expression: 1*1+1*1+1*1+1*1+1*1+1*1+1*1+1*1+1*1+1*1+1*1+1*1+1*1+1*1+1*1+1*1+1*1+
Object is a number : 21
========================
+Expression: 0.000000000000000000000000000000000000000000000000001
+Object is a number : 1e-51
+
+========================
+Expression: -0.000000000000000000000000000000000000000000000000001
+Object is a number : -1e-51
+
+========================
+Expression: 1e2147483648
+Object is a number : Infinity
+
+========================
+Expression: 1e4294967296
+Object is a number : Infinity
+
+========================
+Expression: 1e9223372036854775808
+Object is a number : Infinity
+
+========================
+Expression: 1e18446744073709551616
+Object is a number : Infinity
+
+========================
+Expression: 1e-2147483649
+Object is a number : 0
+
+========================
+Expression: 1e-4294967296
+Object is a number : 0
+
+========================
+Expression: 1e-9223372036854775809
+Object is a number : 0
+
+========================
+Expression: 1e-18446744073709551616
+Object is a number : 0
+
+========================
Expression: self::-name
Object is empty (NULL)
diff --git a/result/XPath/expr/floats b/result/XPath/expr/floats
index b6255ce0..157bd767 100644
--- a/result/XPath/expr/floats
+++ b/result/XPath/expr/floats
@@ -242,3 +242,11 @@ Object is a number : -1
========================
Expression: 8 mod 3 = 2
Object is a Boolean : true
+
+========================
+Expression: 12345678901234567890
+Object is a number : 1.23457e+19
+
+========================
+Expression: -12345678901234567890
+Object is a number : -1.23457e+19
diff --git a/result/XPath/expr/functions b/result/XPath/expr/functions
index 10cc27ef..e09eb4a4 100644
--- a/result/XPath/expr/functions
+++ b/result/XPath/expr/functions
@@ -44,6 +44,26 @@ Expression: floor(-5.2)
Object is a number : -6
========================
+Expression: floor(100000000000000000000)
+Object is a number : 1e+20
+
+========================
+Expression: floor(-100000000000000000000)
+Object is a number : -1e+20
+
+========================
+Expression: floor(0 div 0)
+Object is a number : NaN
+
+========================
+Expression: floor(1 div 0)
+Object is a number : Infinity
+
+========================
+Expression: floor(-1 div 0)
+Object is a number : -Infinity
+
+========================
Expression: ceiling(0.1)
Object is a number : 1
@@ -68,6 +88,26 @@ Expression: ceiling(-5.2)
Object is a number : -5
========================
+Expression: ceiling(100000000000000000000)
+Object is a number : 1e+20
+
+========================
+Expression: ceiling(-100000000000000000000)
+Object is a number : -1e+20
+
+========================
+Expression: ceiling(0 div 0)
+Object is a number : NaN
+
+========================
+Expression: ceiling(1 div 0)
+Object is a number : Infinity
+
+========================
+Expression: ceiling(-1 div 0)
+Object is a number : -Infinity
+
+========================
Expression: round(0.1)
Object is a number : 0
@@ -98,3 +138,31 @@ Object is a number : -5
========================
Expression: round(-5.6)
Object is a number : -6
+
+========================
+Expression: round(0.5)
+Object is a number : 1
+
+========================
+Expression: round(-0.5)
+Object is a number : 0
+
+========================
+Expression: round(100000000000000000000)
+Object is a number : 1e+20
+
+========================
+Expression: round(-100000000000000000000)
+Object is a number : -1e+20
+
+========================
+Expression: round(0 div 0)
+Object is a number : NaN
+
+========================
+Expression: round(1 div 0)
+Object is a number : Infinity
+
+========================
+Expression: round(-1 div 0)
+Object is a number : -Infinity
diff --git a/result/XPath/expr/strings b/result/XPath/expr/strings
index fad7048f..1ae5cc40 100644
--- a/result/XPath/expr/strings
+++ b/result/XPath/expr/strings
@@ -20,6 +20,14 @@ Expression: string(false())
Object is a string : false
========================
+Expression: string(12345678901234567890)
+Object is a string : 1.23456789012346e+19
+
+========================
+Expression: string(-12345678901234567890)
+Object is a string : -1.23456789012346e+19
+
+========================
Expression: concat("titi","toto")
Object is a string : tititoto
diff --git a/result/XPath/tests/chaptersbase b/result/XPath/tests/chaptersbase
index e023bf01..fd021d8a 100644
--- a/result/XPath/tests/chaptersbase
+++ b/result/XPath/tests/chaptersbase
@@ -123,3 +123,18 @@ Set contains 5 nodes:
3 ELEMENT p
4 ELEMENT p
5 ELEMENT p
+
+========================
+Expression: //p[0 div 0]
+Object is a Node Set :
+Set contains 0 nodes:
+
+========================
+Expression: //p[100000000000000000000]
+Object is a Node Set :
+Set contains 0 nodes:
+
+========================
+Expression: //p[-100000000000000000000]
+Object is a Node Set :
+Set contains 0 nodes:
diff --git a/result/XPath/tests/nssimple b/result/XPath/tests/nssimple
index 8f0dd0e3..cd09a177 100644
--- a/result/XPath/tests/nssimple
+++ b/result/XPath/tests/nssimple
@@ -17,8 +17,22 @@ Set contains 3 nodes:
========================
Expression: //*[namespace::ns1]
Object is a Node Set :
-Set contains 2 nodes:
+Set contains 4 nodes:
1 ELEMENT doc
namespace ns1 href=nsuri1
-2 ELEMENT elem
+2 ELEMENT preceding
+3 ELEMENT elem
namespace ns2 href=nsuri2
+4 ELEMENT following
+
+========================
+Expression: /doc/elem/namespace::ns2/following::*
+Object is a Node Set :
+Set contains 1 nodes:
+1 ELEMENT following
+
+========================
+Expression: /doc/elem/namespace::ns2/preceding::*
+Object is a Node Set :
+Set contains 1 nodes:
+1 ELEMENT preceding
diff --git a/result/XPath/tests/simplebase b/result/XPath/tests/simplebase
index 3c32d17e..6d4b347e 100644
--- a/result/XPath/tests/simplebase
+++ b/result/XPath/tests/simplebase
@@ -125,3 +125,8 @@ Expression: /descendant::p/ancestor::chapter
Object is a Node Set :
Set contains 1 nodes:
1 ELEMENT chapter
+
+========================
+Expression: /child::EXAMPLE/attribute::prop2/preceding::text()
+Object is a Node Set :
+Set contains 0 nodes:
diff --git a/result/XPath/tests/strbase b/result/XPath/tests/strbase
new file mode 100644
index 00000000..e6035cae
--- /dev/null
+++ b/result/XPath/tests/strbase
@@ -0,0 +1,13 @@
+
+========================
+Expression: //p[.='abc']
+Object is a Node Set :
+Set contains 2 nodes:
+1 ELEMENT p
+ ATTRIBUTE id
+ TEXT
+ content=1
+2 ELEMENT p
+ ATTRIBUTE id
+ TEXT
+ content=2
diff --git a/result/XPath/xptr/vidbase b/result/XPath/xptr/vidbase
index 8b9e92d6..f19193e7 100644
--- a/result/XPath/xptr/vidbase
+++ b/result/XPath/xptr/vidbase
@@ -17,3 +17,16 @@ Object is a Location Set:
To node
ELEMENT p
+
+========================
+Expression: xpointer(range-to(id('chapter2')))
+Object is a Location Set:
+1 : Object is a range :
+ From node
+ /
+ To node
+ ELEMENT chapter
+ ATTRIBUTE id
+ TEXT
+ content=chapter2
+
diff --git a/result/errors/754946.xml.err b/result/errors/754946.xml.err
index c03e35bf..be777817 100644
--- a/result/errors/754946.xml.err
+++ b/result/errors/754946.xml.err
@@ -1,19 +1,20 @@
-Entity: line 1: parser error : internal error: xmlParseInternalSubset: error detected in Markup declaration
+./test/errors/754946.xml:3: parser error : internal error: xmlParseInternalSubset: error detected in Markup declaration
- %SYSTEM;
- ^
-Entity: line 1:
-A<lbbbbbbbbbbbbbbbbbbb_
-^
-Entity: line 1: parser error : DOCTYPE improperly terminated
- %SYSTEM;
- ^
-Entity: line 1:
-A<lbbbbbbbbbbbbbbbbbbb_
-^
-Entity: line 1: parser error : Start tag expected, '<' not found
- %SYSTEM;
- ^
+ %SYSTEM;
+ ^
Entity: line 1:
A<lbbbbbbbbbbbbbbbbbbb_
^
+./test/errors/754946.xml:4: parser error : internal error: xmlParseInternalSubset: error detected in Markup declaration
+
+ <![
+ ^
+./test/errors/754946.xml:4: parser error : DOCTYPE improperly terminated
+ <![
+ ^
+./test/errors/754946.xml:4: parser error : StartTag: invalid element name
+ <![
+ ^
+./test/errors/754946.xml:4: parser error : Extra content at the end of the document
+ <![
+ ^
diff --git a/result/errors/754946.xml.str b/result/errors/754946.xml.str
index 3b748cc7..49395b61 100644
--- a/result/errors/754946.xml.str
+++ b/result/errors/754946.xml.str
@@ -1,4 +1,4 @@
./test/errors/754946.xml:1: parser error : Extra content at the end of the document
-<!DOCTYPEA[<!ENTITY %
- ^
+<!DOCTYPE A [
+ ^
./test/errors/754946.xml : failed to parse
diff --git a/result/errors/759398.xml.err b/result/errors/759398.xml.err
index e08d9bf8..f6036a3b 100644
--- a/result/errors/759398.xml.err
+++ b/result/errors/759398.xml.err
@@ -1,9 +1,12 @@
./test/errors/759398.xml:210: parser error : StartTag: invalid element name
need to worry about parsers whi<! don't expand PErefs finding
^
-./test/errors/759398.xml:309: parser error : Opening and ending tag mismatch: spec line 50 and termdef
+./test/errors/759398.xml:309: parser error : Opening and ending tag mismatch: â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–â„–m line 308 and termdef
and provide access to their content and structure.</termdef> <termdef
^
-./test/errors/759398.xml:309: parser error : Extra content at the end of the document
-and provide access to their content and structure.</termdef> <termdef
- ^
+./test/errors/759398.xml:314: parser error : Opening and ending tag mismatch: spec line 50 and p
+data and the information it must provide to the application.</p>
+ ^
+./test/errors/759398.xml:316: parser error : Extra content at the end of the document
+<div2 id='sec-origin-goals'>
+^
diff --git a/result/errors/759573-2.xml.err b/result/errors/759573-2.xml.err
index d8773d8a..86d64209 100644
--- a/result/errors/759573-2.xml.err
+++ b/result/errors/759573-2.xml.err
@@ -1,58 +1,58 @@
Entity: line 1: parser error : Space required after '<!ENTITY'
- %zz;
- ^
+%zz;
+ ^
Entity: line 1:
<!ENTITY<?xDOCTYPEm~?>
^
Entity: line 1: parser error : xmlParseEntityDecl: no name
- %zz;
- ^
+%zz;
+ ^
Entity: line 1:
<!ENTITY<?xDOCTYPEm~?>
^
Entity: line 1: parser error : ParsePI: PI xDOCTYPEm space expected
- %zz;
- ^
+%zz;
+ ^
Entity: line 1:
<!ENTITY<?xDOCTYPEm~?>
^
-Entity: line 1: parser error : Space required after '<!ENTITY'
- %zz;
- ^
+Entity: line 3: parser error : Space required after '<!ENTITY'
+%zz;<!ELEMENTD(%MENT%MENTDŹMENTD%zNMT9KENSMYSYSTEM;MENT9%zz;
+ ^
Entity: line 1:
<!ENTITY<?xDOCTYPEm~?>
^
-Entity: line 1: parser error : xmlParseEntityDecl: no name
- %zz;
- ^
+Entity: line 3: parser error : xmlParseEntityDecl: no name
+%zz;<!ELEMENTD(%MENT%MENTDŹMENTD%zNMT9KENSMYSYSTEM;MENT9%zz;
+ ^
Entity: line 1:
<!ENTITY<?xDOCTYPEm~?>
^
-Entity: line 1: parser error : ParsePI: PI xDOCTYPEm space expected
- %zz;
- ^
+Entity: line 3: parser error : ParsePI: PI xDOCTYPEm space expected
+%zz;<!ELEMENTD(%MENT%MENTDŹMENTD%zNMT9KENSMYSYSTEM;MENT9%zz;
+ ^
Entity: line 1:
<!ENTITY<?xDOCTYPEm~?>
^
-Entity: line 1: parser error : Space required after 'ELEMENT'
- %xx;
- ^
+./test/errors/759573-2.xml:6: parser error : Space required after 'ELEMENT'
+%xx;ÿggKENSMYNT&#35;MENTD&#372zz;'>
+ ^
Entity: line 3:
%zz;<!ELEMENTD(%MENT%MENTDŹMENTD%zNMT9KENSMYSYSTEM;MENT9%zz;
^
-Entity: line 1: parser error : Content error in the external subset
- %xx;
- ^
+./test/errors/759573-2.xml:6: parser error : Content error in the external subset
+%xx;ÿggKENSMYNT&#35;MENTD&#372zz;'>
+ ^
Entity: line 3:
%zz;<!ELEMENTD(%MENT%MENTDŹMENTD%zNMT9KENSMYSYSTEM;MENT9%zz;
^
./test/errors/759573-2.xml:6: parser error : internal error: xmlParseInternalSubset: error detected in Markup declaration
-%xx;ÿggKENSMYNT&#35;MENTD&#372zz;'>
- ^
+
+^
./test/errors/759573-2.xml:6: parser error : DOCTYPE improperly terminated
-%xx;ÿggKENSMYNT&#35;MENTD&#372zz;'>
- ^
+
+^
./test/errors/759573-2.xml:6: parser error : Start tag expected, '<' not found
-%xx;ÿggKENSMYNT&#35;MENTD&#372zz;'>
- ^
+
+^
diff --git a/result/errors/759573.xml.err b/result/errors/759573.xml.err
index 2c21e9ac..554039f6 100644
--- a/result/errors/759573.xml.err
+++ b/result/errors/759573.xml.err
@@ -7,25 +7,28 @@ LEMENT t (A)><!ENTITY % xx '&#37;<![INCLUDE[000&#37;&#3000;000&#37;z;'><!ENTITYz
./test/errors/759573.xml:1: parser error : Entity value required
LEMENT t (A)><!ENTITY % xx '&#37;<![INCLUDE[000&#37;&#3000;000&#37;z;'><!ENTITYz
^
-Entity: line 1: parser error : PEReference: no name
- %xx;
- ^
+./test/errors/759573.xml:1: parser error : PEReference: no name
+T t (A)><!ENTITY % xx '&#37;<![INCLUDE[000&#37;&#3000;000&#37;z;'><!ENTITYz>%xx;
+ ^
Entity: line 1:
%<![INCLUDE[000%ஸ000%z;
^
-Entity: line 1: parser error : Content error in the external subset
- %xx;
- ^
+./test/errors/759573.xml:1: parser error : Content error in the external subset
+T t (A)><!ENTITY % xx '&#37;<![INCLUDE[000&#37;&#3000;000&#37;z;'><!ENTITYz>%xx;
+ ^
Entity: line 1:
%<![INCLUDE[000%ஸ000%z;
^
./test/errors/759573.xml:1: parser error : internal error: xmlParseInternalSubset: error detected in Markup declaration
-T t (A)><!ENTITY % xx '&#37;<![INCLUDE[000&#37;&#3000;000&#37;z;'><!ENTITYz>%xx;
- ^
+<?h?><!DOCTYPEt[<!ELEMENT t (A)><!ENTITY % xx '&#37;<![INCLUDE[000&#37;&#3000;00
+ ^
./test/errors/759573.xml:1: parser error : DOCTYPE improperly terminated
-T t (A)><!ENTITY % xx '&#37;<![INCLUDE[000&#37;&#3000;000&#37;z;'><!ENTITYz>%xx;
- ^
-./test/errors/759573.xml:1: parser error : Start tag expected, '<' not found
-T t (A)><!ENTITY % xx '&#37;<![INCLUDE[000&#37;&#3000;000&#37;z;'><!ENTITYz>%xx;
- ^
+<?h?><!DOCTYPEt[<!ELEMENT t (A)><!ENTITY % xx '&#37;<![INCLUDE[000&#37;&#3000;00
+ ^
+./test/errors/759573.xml:1: parser error : StartTag: invalid element name
+<?h?><!DOCTYPEt[<!ELEMENT t (A)><!ENTITY % xx '&#37;<![INCLUDE[000&#37;&#3000;00
+ ^
+./test/errors/759573.xml:1: parser error : Extra content at the end of the document
+<?h?><!DOCTYPEt[<!ELEMENT t (A)><!ENTITY % xx '&#37;<![INCLUDE[000&#37;&#3000;00
+ ^
diff --git a/result/errors/759579.xml b/result/errors/759579.xml
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/result/errors/759579.xml
diff --git a/result/errors/759579.xml.err b/result/errors/759579.xml.err
new file mode 100644
index 00000000..288026e6
--- /dev/null
+++ b/result/errors/759579.xml.err
@@ -0,0 +1,6 @@
+Entity: line 2: parser error : Detected an entity reference loop
+ %z; %z; %z; %z; %z;
+ ^
+Entity: line 2:
+ %z; %z; %z; %z; %z;
+ ^
diff --git a/result/errors/759579.xml.str b/result/errors/759579.xml.str
new file mode 100644
index 00000000..09408f52
--- /dev/null
+++ b/result/errors/759579.xml.str
@@ -0,0 +1,7 @@
+Entity: line 2: parser error : Detected an entity reference loop
+ %z; %z; %z; %z; %z;
+ ^
+Entity: line 2:
+ %z; %z; %z; %z; %z;
+ ^
+./test/errors/759579.xml : failed to parse
diff --git a/result/errors/attr1.xml.err b/result/errors/attr1.xml.err
index 4f085389..c4c4fc84 100644
--- a/result/errors/attr1.xml.err
+++ b/result/errors/attr1.xml.err
@@ -1,6 +1,9 @@
./test/errors/attr1.xml:2: parser error : AttValue: ' expected
^
-./test/errors/attr1.xml:1: parser error : Extra content at the end of the document
-<foo foo="oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
- ^
+./test/errors/attr1.xml:2: parser error : attributes construct error
+
+^
+./test/errors/attr1.xml:2: parser error : Couldn't find end of Start Tag foo line 1
+
+^
diff --git a/result/errors/attr2.xml.err b/result/errors/attr2.xml.err
index c8a9c7d4..77e342e3 100644
--- a/result/errors/attr2.xml.err
+++ b/result/errors/attr2.xml.err
@@ -1,6 +1,9 @@
./test/errors/attr2.xml:2: parser error : AttValue: ' expected
^
-./test/errors/attr2.xml:1: parser error : Extra content at the end of the document
-<foo foo=">ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
- ^
+./test/errors/attr2.xml:2: parser error : attributes construct error
+
+^
+./test/errors/attr2.xml:2: parser error : Couldn't find end of Start Tag foo line 1
+
+^
diff --git a/result/errors/name2.xml.err b/result/errors/name2.xml.err
index a6649a12..8acef792 100644
--- a/result/errors/name2.xml.err
+++ b/result/errors/name2.xml.err
@@ -1,6 +1,9 @@
-./test/errors/name2.xml:2: parser error : Specification mandate value for attribute foooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
+./test/errors/name2.xml:2: parser error : Specification mandates value for attribute foooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
+
+^
+./test/errors/name2.xml:2: parser error : attributes construct error
+
+^
+./test/errors/name2.xml:2: parser error : Couldn't find end of Start Tag foo line 1
^
-./test/errors/name2.xml:1: parser error : Extra content at the end of the document
-<foo foooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
- ^
diff --git a/result/errors/name2.xml.str b/result/errors/name2.xml.str
index daee0909..90f8c08e 100644
--- a/result/errors/name2.xml.str
+++ b/result/errors/name2.xml.str
@@ -1,4 +1,4 @@
-./test/errors/name2.xml:2: parser error : Specification mandate value for attribute foooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
+./test/errors/name2.xml:2: parser error : Specification mandates value for attribute foooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
^
./test/errors/name2.xml:2: parser error : attributes construct error
diff --git a/result/errors10/781205.xml b/result/errors10/781205.xml
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/result/errors10/781205.xml
diff --git a/result/errors10/781205.xml.err b/result/errors10/781205.xml.err
new file mode 100644
index 00000000..3ddc2038
--- /dev/null
+++ b/result/errors10/781205.xml.err
@@ -0,0 +1,17 @@
+./test/errors10/781205.xml:3: parser error : internal error: xmlParseInternalSubset: error detected in Markup declaration
+
+ %a;
+ ^
+Entity: line 1:
+<:0000
+^
+./test/errors10/781205.xml:4: parser error : internal error: xmlParseInternalSubset: error detected in Markup declaration
+
+
+^
+./test/errors10/781205.xml:4: parser error : DOCTYPE improperly terminated
+
+^
+./test/errors10/781205.xml:4: parser error : Start tag expected, '<' not found
+
+^
diff --git a/result/errors10/781361.xml b/result/errors10/781361.xml
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/result/errors10/781361.xml
diff --git a/result/errors10/781361.xml.err b/result/errors10/781361.xml.err
new file mode 100644
index 00000000..655f41a2
--- /dev/null
+++ b/result/errors10/781361.xml.err
@@ -0,0 +1,13 @@
+./test/errors10/781361.xml:4: parser error : xmlParseElementDecl: 'EMPTY', 'ANY' or '(' expected
+
+^
+./test/errors10/781361.xml:4: parser error : internal error: xmlParseInternalSubset: error detected in Markup declaration
+
+
+^
+./test/errors10/781361.xml:4: parser error : DOCTYPE improperly terminated
+
+^
+./test/errors10/781361.xml:4: parser error : Start tag expected, '<' not found
+
+^
diff --git a/result/icu_parse_test.xml b/result/icu_parse_test.xml
new file mode 100644
index 00000000..031a967c
--- /dev/null
+++ b/result/icu_parse_test.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="EUC-JP"?>
+<foo>
+Text with EUC-JP chars at position 214 (0xd6)
+___
+_______________
+_______________
+_______________
+_______________
+_______________
+_______________
+_______________
+_______é®Äé___
+_</foo>
diff --git a/result/icu_parse_test.xml.rde b/result/icu_parse_test.xml.rde
new file mode 100644
index 00000000..54cd5f0d
--- /dev/null
+++ b/result/icu_parse_test.xml.rde
@@ -0,0 +1,14 @@
+0 1 foo 0 0
+1 3 #text 0 1
+Text with EUC-JP chars at position 214 (0xd6)
+___
+_______________
+_______________
+_______________
+_______________
+_______________
+_______________
+_______________
+_______駪槗___
+_
+0 15 foo 0 0
diff --git a/result/icu_parse_test.xml.rdr b/result/icu_parse_test.xml.rdr
new file mode 100644
index 00000000..54cd5f0d
--- /dev/null
+++ b/result/icu_parse_test.xml.rdr
@@ -0,0 +1,14 @@
+0 1 foo 0 0
+1 3 #text 0 1
+Text with EUC-JP chars at position 214 (0xd6)
+___
+_______________
+_______________
+_______________
+_______________
+_______________
+_______________
+_______________
+_______駪槗___
+_
+0 15 foo 0 0
diff --git a/result/icu_parse_test.xml.sax b/result/icu_parse_test.xml.sax
new file mode 100644
index 00000000..91e11d53
--- /dev/null
+++ b/result/icu_parse_test.xml.sax
@@ -0,0 +1,9 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElement(foo)
+SAX.characters(
+Text with EUC-JP chars at pos, 170)
+SAX.characters(駪槗___
+_, 11)
+SAX.endElement(foo)
+SAX.endDocument()
diff --git a/result/icu_parse_test.xml.sax2 b/result/icu_parse_test.xml.sax2
new file mode 100644
index 00000000..eb0d6c6c
--- /dev/null
+++ b/result/icu_parse_test.xml.sax2
@@ -0,0 +1,9 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(foo, NULL, NULL, 0, 0, 0)
+SAX.characters(
+Text with EUC-JP chars at pos, 170)
+SAX.characters(駪槗___
+_, 11)
+SAX.endElementNs(foo, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/att1.sax2 b/result/noent/att1.sax2
new file mode 100644
index 00000000..76ba131a
--- /dev/null
+++ b/result/noent/att1.sax2
@@ -0,0 +1,5 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(doc, NULL, NULL, 0, 1, 0, attr='to n...', 28)
+SAX.endElementNs(doc, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/att10.sax2 b/result/noent/att10.sax2
new file mode 100644
index 00000000..cc8b58e8
--- /dev/null
+++ b/result/noent/att10.sax2
@@ -0,0 +1,57 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(doc, , )
+SAX.elementDecl(doc, 4, ...)
+SAX.elementDecl(tst, 3, ...)
+SAX.attributeDecl(tst, a, 8, 3, NULL, ...)
+SAX.attributeDecl(tst, b, 1, 3, NULL, ...)
+SAX.entityDecl(d, 1, (null), (null), )
+SAX.getEntity(d)
+SAX.entityDecl(a, 1, (null), (null),
+)
+SAX.getEntity(a)
+SAX.entityDecl(da, 1, (null), (null),
+)
+SAX.getEntity(da)
+SAX.externalSubset(doc, , )
+SAX.startElementNs(doc, NULL, NULL, 0, 0, 0)
+SAX.characters(
+, 1)
+SAX.startElementNs(tst, NULL, NULL, 0, 2, 0, a='xyz"...', 3, b=' xy...', 5)
+SAX.endElementNs(tst, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.getEntity(d)
+SAX.getEntity(d)
+SAX.getEntity(a)
+SAX.getEntity(a)
+SAX.getEntity(da)
+SAX.getEntity(d)
+SAX.getEntity(d)
+SAX.getEntity(a)
+SAX.getEntity(a)
+SAX.getEntity(da)
+SAX.startElementNs(tst, NULL, NULL, 0, 2, 0, a='A B...', 3, b=' A ...', 9)
+SAX.endElementNs(tst, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.startElementNs(tst, NULL, NULL, 0, 2, 0, a=' A
+...', 8, b=' A
+...', 8)
+SAX.endElementNs(tst, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.startElementNs(tst, NULL, NULL, 0, 2, 0, a='x y...', 3, b=' x ...', 6)
+SAX.endElementNs(tst, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.startElementNs(tst, NULL, NULL, 0, 2, 0, a='a b ...', 3, b=' a b...', 5)
+SAX.endElementNs(tst, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.startElementNs(tst, NULL, NULL, 0, 2, 0, a='a b...', 3, b=' a ...', 8)
+SAX.endElementNs(tst, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.endElementNs(doc, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/att11.sax2 b/result/noent/att11.sax2
new file mode 100644
index 00000000..518e231d
--- /dev/null
+++ b/result/noent/att11.sax2
@@ -0,0 +1,20 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(attributes, , )
+SAX.elementDecl(attributes, 1, ...)
+SAX.attributeDecl(attributes, nmtoken, 7, 3, NULL, ...)
+SAX.attributeDecl(attributes, nmtokens, 8, 3, NULL, ...)
+SAX.entityDecl(ent, 1, (null), (null), entity&recursive; )
+SAX.getEntity(ent)
+SAX.entityDecl(recursive, 1, (null), (null), reference)
+SAX.getEntity(recursive)
+SAX.externalSubset(attributes, , )
+SAX.getEntity(ent)
+SAX.getEntity(recursive)
+SAX.getEntity(ent)
+SAX.getEntity(recursive)
+SAX.getEntity(ent)
+SAX.getEntity(recursive)
+SAX.startElementNs(attributes, NULL, NULL, 0, 2, 0, nmtoken='enti...', 47, nmtokens='Test...', 25)
+SAX.endElementNs(attributes, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/att2.sax2 b/result/noent/att2.sax2
new file mode 100644
index 00000000..84aebcb4
--- /dev/null
+++ b/result/noent/att2.sax2
@@ -0,0 +1,5 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(doc, NULL, NULL, 0, 1, 0, attr='to n...', 27)
+SAX.endElementNs(doc, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/att3.sax2 b/result/noent/att3.sax2
new file mode 100644
index 00000000..8e7ca862
--- /dev/null
+++ b/result/noent/att3.sax2
@@ -0,0 +1,8 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(select, NULL, NULL, 0, 1, 0, onclick='aaaa...', 17)
+SAX.characters(f, 1)
+SAX.characters( , 2)
+SAX.characters(oo, 2)
+SAX.endElementNs(select, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/att4.sax2 b/result/noent/att4.sax2
new file mode 100644
index 00000000..553148c5
--- /dev/null
+++ b/result/noent/att4.sax2
@@ -0,0 +1,36976 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.comment( edited with XML Spy v4.4 U (http://www.xmlspy.com) by Slava (GIVC) )
+SAX.startElementNs(electroxml, NULL, NULL, 0, 1, 0, modified='2002...', 15)
+SAX.characters(
+ , 2)
+SAX.startElementNs(data, NULL, NULL, 0, 2, 0, from='2002...', 11, to='2002...', 11)
+SAX.characters(
+ , 3)
+SAX.startElementNs(select, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 4)
+SAX.startElementNs(device, NULL, NULL, 0, 1, 0, serialnumb='E000...', 9)
+SAX.characters(
+ , 5)
+SAX.startElementNs(par, NULL, NULL, 0, 2, 0, memind='1134...', 6, h='3dc1...', 8)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='0" v...', 1, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e08"...', 3, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c32...', 4, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2a3c...', 4, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3835...', 4, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4645...', 4, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5455...', 4, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6265...', 4, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7075...', 4, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7e85...', 4, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8c96...', 4, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9aa5...', 4, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a8b6...', 4, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b6c5...', 4, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c4d7...', 4, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d30b...', 4, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e0f6...', 4, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ef06...', 4, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fd17...', 4, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10b2...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1193...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1274...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1355...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1436...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1518...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15f8...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16d9...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17ba...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='189b...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='197c...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a5d...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1b3e...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c1f...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d00...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1de1...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ec2...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fa3...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2084...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2165...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2246...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2327...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2408...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24e9...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25ca...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26ab...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='278c...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='286d...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='294e...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2a30...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2b10...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2bf1...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2cd2...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2db3...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2e94...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2f75...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3056...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3137...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3219...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='32f9...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='33da...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='34bb...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='359d...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='367d...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='375e...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3840...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3921...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3a01...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3ae2...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3bc3...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3ca4...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3d85...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3e66...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3f48...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4028...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4109...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='41ea...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='42cb...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='43ac...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='448d...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='456e...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='464f...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='480f...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='48f0...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='49d1...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4ab4...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4b95...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4c76...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4d57...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4e38...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4f19...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4ffa...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='50dd...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='51bc...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='529d...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='537e...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5460...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5540...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5621...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5702...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='57e3...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='58c4...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='59a7...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5a86...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5b67...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5c48...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5d29...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5e0a...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5eeb...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5fcc...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='60ad...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='618e...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='626f...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6350...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6431...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6512...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='65f3...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='66d4...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='67b5...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6896...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6978...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6a58...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6b39...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6c1a...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6cfb...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6ddc...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6ebd...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6f9e...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='707f...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7160...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7241...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7322...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7403...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='74e4...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='75c5...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='76a6...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7787...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7868...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7948...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7a29...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7b0a...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7beb...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7ccc...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7dad...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7e8f...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7f70...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8051...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8132...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8213...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='82f4...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='83d5...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='84b6...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8597...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8678...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8759...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='883a...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='891b...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='89fc...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8add...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8bbe...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8c9f...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8d80...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8e61...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8f42...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9023...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9104...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='91e5...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='92c6...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='93a8...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9488...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9569...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='964a...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='972b...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='980c...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='98ed...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='99ce...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9aaf...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9b90...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9c71...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9d52...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9e33...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9f14...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9ff5...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a0d6...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a1b7...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a298...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a379...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a45a...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a53b...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a61c...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a6fd...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a7e0...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a8c0...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a9a0...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='aa81...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ab62...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ac43...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ad24...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ae05...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='aee6...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='afc7...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b0a8...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b26a...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b34b...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b42c...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b50d...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b5ee...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b6cf...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b7b0...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b891...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b972...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ba53...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bb34...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bc15...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bcf6...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bdd8...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='beb8...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bf99...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c07a...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c15b...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c23c...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c31d...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c3fe...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c4df...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c5c0...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c6a1...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c782...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c863...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c944...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ca25...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cb06...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cbe7...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ccc8...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cda9...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ce8a...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cf6b...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d04c...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d12d...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d20e...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d2f0...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d3d0...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d4b1...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d592...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d673...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d754...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d835...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d916...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d9f7...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dad8...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dbb9...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dc9a...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dd7b...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='de5c...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='df3d...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e01d...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e0fe...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e1df...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e2c0...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e3a1...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e482...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e563...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e644...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e725...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e806...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e8e7...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e9c8...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='eaa9...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='eb8a...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ec6b...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ed4c...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ee2d...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ef0e...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='eff0...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f0d1...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f1b2...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f293...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f374...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f455...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f536...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f617...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f6f8...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f7d9...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f8ba...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f99b...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fa7c...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fb5d...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fc3e...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fd1f...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fe00...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fee1...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ffc2...', 5, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='100a...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1018...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1026...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1034...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1042...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1050...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='105e...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='106c...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='107a...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1088...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1096...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10a4...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10b2...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10c1...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10cf...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10dd...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10eb...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10f9...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1107...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1115...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1123...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1131...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='113f...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='114d...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='115b...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1169...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1177...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1185...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1193...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11a2...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11b0...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11be...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11cc...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11da...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11e8...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11f6...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1205...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1213...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1221...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='122f...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='123d...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='124b...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1259...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1267...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1276...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1283...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1291...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='129f...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12ad...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12bb...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12c9...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12d7...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12e5...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12f3...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1301...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='130f...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='131d...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='132b...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1339...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1347...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1355...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1364...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1372...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1380...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='138e...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='139c...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13aa...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13b8...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13c6...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13d4...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13e2...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13f0...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13fe...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='140c...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='141a...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1428...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1436...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1445...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1453...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1461...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='146f...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='147d...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='148b...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1499...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14a7...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14b5...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14c3...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14d1...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14df...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14ed...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14fb...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1509...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1517...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1526...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1534...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1542...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1550...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='155e...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='156c...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='157a...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1588...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1596...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15a4...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15b2...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15c0...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15ce...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15dc...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15ea...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15f8...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1607...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1615...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1623...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1631...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='163f...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='164d...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='165b...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1669...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1677...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1685...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1693...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16a1...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16af...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16bd...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16cb...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16d9...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16e8...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16f6...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1704...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1712...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1720...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='172e...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='173c...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='174a...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1758...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1766...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1774...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1782...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1790...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='179e...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17ac...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17ba...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17c9...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17d7...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17e5...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17f3...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1801...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='180f...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='181d...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='182b...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1839...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1847...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1855...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1863...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1871...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='187f...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='188d...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='189c...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18b8...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18c6...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18d4...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18e2...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18f0...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18fe...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='190c...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='191a...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1928...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1936...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1944...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1952...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1960...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='196e...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='197c...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='198b...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1999...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19b5...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19c3...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19d1...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19df...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19ed...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19ee...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19fb...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a09...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a17...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a25...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a33...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a41...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a4f...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a5e...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a6c...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a7a...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a88...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a96...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1aa4...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ab2...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ac0...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ace...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1adc...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1aea...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1af8...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1b06...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1b14...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c74...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c82...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c90...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c9e...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cac...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cba...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cc8...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cd6...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ce4...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cf2...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d01...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d0f...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d1d...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d2b...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d39...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d47...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d55...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d63...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d71...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d7f...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d8d...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d9b...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1da9...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1db7...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1dc5...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1dd3...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1de1...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1df0...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1dfe...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e0c...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e1a...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e28...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e36...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e44...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e52...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e60...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e6e...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e7c...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e8a...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e98...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ea6...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1eb4...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ec2...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ed1...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1edf...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1eed...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1efb...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f09...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f17...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f25...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f33...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f41...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f4f...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f5d...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f6b...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f79...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f87...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f95...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fa4...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fb2...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fc0...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fce...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fdc...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fea...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ff8...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2006...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2014...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2022...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2030...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='203e...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='204c...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='205a...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2068...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2076...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2084...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2093...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20a1...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20af...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20bd...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20cb...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20d9...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20e7...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20f5...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2103...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2111...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='211f...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='212d...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='213b...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2149...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2157...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2165...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2174...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2182...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2190...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='219e...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21ac...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21ba...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21c8...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21d6...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21e4...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21f2...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2200...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='220e...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='221c...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='222a...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2238...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2247...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2255...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2263...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2271...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='227f...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='228d...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='229b...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22a9...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22b7...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22c5...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22d3...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22e1...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22ef...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22fd...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='230b...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2319...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2327...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2336...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2344...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2352...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2360...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='236e...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='237c...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='238a...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2398...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23a6...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23b4...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23c2...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23d0...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23de...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23ec...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23fa...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2408...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2417...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2425...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2433...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2441...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='244f...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='246b...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2479...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2487...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2495...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24a3...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24b1...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24bf...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24cd...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24db...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24e9...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24f8...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2506...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2514...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2522...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2530...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='253e...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='254c...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='255a...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2568...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2576...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2584...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2592...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25a0...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25ae...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25bc...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25ca...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25d9...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25e7...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25f5...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2603...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2611...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='261f...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='262d...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='263b...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2649...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2657...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2665...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2673...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2681...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='268f...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='269d...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26ab...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26ba...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26c8...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26d6...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26e4...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26f2...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2700...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='270e...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='271c...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='272a...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2738...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2746...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2754...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2762...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2770...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='277e...', 6, v='55"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.endElementNs(par, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(par, NULL, NULL, 0, 2, 0, memind='1693...', 8, h='3dc1...', 8)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='0" v...', 1, v='196....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e08"...', 3, v='199....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c32...', 4, v='200....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2a3c...', 4, v='201....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3835...', 4, v='199....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4645...', 4, v='197....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5455...', 4, v='193....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6265...', 4, v='197....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7075...', 4, v='195....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7e85...', 4, v='192....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8c96...', 4, v='195....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9aa5...', 4, v='195....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a8b6...', 4, v='195....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b6c5...', 4, v='197....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c4d7...', 4, v='222....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d30b...', 4, v='220....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e0f6...', 4, v='222....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ef06...', 4, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fd17...', 4, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10b2...', 5, v='221....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1193...', 5, v='222....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1274...', 5, v='222....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1355...', 5, v='220....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1436...', 5, v='220....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1518...', 5, v='220"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15f8...', 5, v='221....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16d9...', 5, v='220....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17ba...', 5, v='221....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='189b...', 5, v='220....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='197c...', 5, v='220....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a5d...', 5, v='219....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1b3e...', 5, v='219....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c1f...', 5, v='220....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d00...', 5, v='220....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1de1...', 5, v='220....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ec2...', 5, v='220....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fa3...', 5, v='220....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2084...', 5, v='220....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2165...', 5, v='220....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2246...', 5, v='220....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2327...', 5, v='220....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2408...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24e9...', 5, v='222"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25ca...', 5, v='221....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26ab...', 5, v='220....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='278c...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='286d...', 5, v='220....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='294e...', 5, v='218....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2a30...', 5, v='220"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2b10...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2bf1...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2cd2...', 5, v='218....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2db3...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2e94...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2f75...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3056...', 5, v='219....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3137...', 5, v='220....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3219...', 5, v='219....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='32f9...', 5, v='220....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='33da...', 5, v='220....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='34bb...', 5, v='219"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='359d...', 5, v='220....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='367d...', 5, v='219....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='375e...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3840...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3921...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3a01...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3ae2...', 5, v='220....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3bc3...', 5, v='220....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3ca4...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3d85...', 5, v='221....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3e66...', 5, v='220....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3f48...', 5, v='217....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4028...', 5, v='218....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4109...', 5, v='218....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='41ea...', 5, v='218....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='42cb...', 5, v='219....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='43ac...', 5, v='218....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='448d...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='456e...', 5, v='220....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='464f...', 5, v='222....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='480f...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='48f0...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='49d1...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4ab4...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4b95...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4c76...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4d57...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4e38...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4f19...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4ffa...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='50dd...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='51bc...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='529d...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='537e...', 5, v='220....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5460...', 5, v='218....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5540...', 5, v='219....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5621...', 5, v='219....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5702...', 5, v='219....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='57e3...', 5, v='219....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='58c4...', 5, v='220....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='59a7...', 5, v='220....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5a86...', 5, v='221....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5b67...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5c48...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5d29...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5e0a...', 5, v='222....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5eeb...', 5, v='224....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5fcc...', 5, v='223....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='60ad...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='618e...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='626f...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6350...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6431...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6512...', 5, v='222....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='65f3...', 5, v='222....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='66d4...', 5, v='220....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='67b5...', 5, v='220....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6896...', 5, v='220....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6978...', 5, v='220....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6a58...', 5, v='219....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6b39...', 5, v='219....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6c1a...', 5, v='219"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6cfb...', 5, v='218....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6ddc...', 5, v='220....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6ebd...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6f9e...', 5, v='221....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='707f...', 5, v='222....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7160...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7241...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7322...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7403...', 5, v='223....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='74e4...', 5, v='223....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='75c5...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='76a6...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7787...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7868...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7948...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7a29...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7b0a...', 5, v='222....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7beb...', 5, v='221"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7ccc...', 5, v='219....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7dad...', 5, v='219....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7e8f...', 5, v='220....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7f70...', 5, v='220....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8051...', 5, v='217....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8132...', 5, v='219"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8213...', 5, v='218....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='82f4...', 5, v='219....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='83d5...', 5, v='219....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='84b6...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8597...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8678...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8759...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='883a...', 5, v='223....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='891b...', 5, v='222"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='89fc...', 5, v='224....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8add...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8bbe...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8c9f...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8d80...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8e61...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8f42...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9023...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9104...', 5, v='220....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='91e5...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='92c6...', 5, v='219....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='93a8...', 5, v='219....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9488...', 5, v='219"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9569...', 5, v='218....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='964a...', 5, v='219....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='972b...', 5, v='219....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='980c...', 5, v='221"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='98ed...', 5, v='220....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='99ce...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9aaf...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9b90...', 5, v='225....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9c71...', 5, v='225"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9d52...', 5, v='222....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9e33...', 5, v='223....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9f14...', 5, v='224....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9ff5...', 5, v='223....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a0d6...', 5, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a1b7...', 5, v='195....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a298...', 5, v='190"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a379...', 5, v='122....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a45a...', 5, v='354....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a53b...', 5, v='333....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a61c...', 5, v='323....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a6fd...', 5, v='278....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a7e0...', 5, v='286....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a8c0...', 5, v='292....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a9a0...', 5, v='21.4...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='aa81...', 5, v='273....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ab62...', 5, v='272....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ac43...', 5, v='285....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ad24...', 5, v='28.5...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ae05...', 5, v='68.4...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='aee6...', 5, v='147....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='afc7...', 5, v='95.7...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b0a8...', 5, v='89.6...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b26a...', 5, v='88.3...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b34b...', 5, v='92.4...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b42c...', 5, v='149....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b50d...', 5, v='148....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b5ee...', 5, v='127....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b6cf...', 5, v='198....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b7b0...', 5, v='187....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b891...', 5, v='182....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b972...', 5, v='195....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ba53...', 5, v='203....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bb34...', 5, v='124....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bc15...', 5, v='159....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bcf6...', 5, v='230....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bdd8...', 5, v='79.8...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='beb8...', 5, v='51.3...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bf99...', 5, v='22.5...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c07a...', 5, v='323....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c15b...', 5, v='341....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c23c...', 5, v='46.4...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c31d...', 5, v='71.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c3fe...', 5, v='71.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c4df...', 5, v='63.4...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c5c0...', 5, v='76.4...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c6a1...', 5, v='58.4...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c782...', 5, v='92"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c863...', 5, v='79.6...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c944...', 5, v='63.1...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ca25...', 5, v='51.3...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cb06...', 5, v='81.7...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cbe7...', 5, v='205....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ccc8...', 5, v='96.1...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cda9...', 5, v='95.7...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ce8a...', 5, v='96.7...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cf6b...', 5, v='92.8...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d04c...', 5, v='91.4...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d12d...', 5, v='86.1...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d20e...', 5, v='270"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d2f0...', 5, v='270....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d3d0...', 5, v='296....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d4b1...', 5, v='306....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d592...', 5, v='331....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d673...', 5, v='13.7...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d754...', 5, v='46.4...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d835...', 5, v='262....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d916...', 5, v='166....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d9f7...', 5, v='143....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dad8...', 5, v='127....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dbb9...', 5, v='132....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dc9a...', 5, v='128....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dd7b...', 5, v='155....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='de5c...', 5, v='170....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='df3d...', 5, v='176....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e01d...', 5, v='176....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e0fe...', 5, v='168....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e1df...', 5, v='172....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e2c0...', 5, v='185....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e3a1...', 5, v='196....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e482...', 5, v='178....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e563...', 5, v='193....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e644...', 5, v='176....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e725...', 5, v='196....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e806...', 5, v='202....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e8e7...', 5, v='99.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e9c8...', 5, v='130....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='eaa9...', 5, v='132....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='eb8a...', 5, v='121....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ec6b...', 5, v='100....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ed4c...', 5, v='192....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ee2d...', 5, v='153....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ef0e...', 5, v='170....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='eff0...', 5, v='155....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f0d1...', 5, v='167....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f1b2...', 5, v='165....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f293...', 5, v='184....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f374...', 5, v='159....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f455...', 5, v='163....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f536...', 5, v='163....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f617...', 5, v='160....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f6f8...', 5, v='165"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f7d9...', 5, v='156....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f8ba...', 5, v='163....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f99b...', 5, v='162....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fa7c...', 5, v='154....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fb5d...', 5, v='157....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fc3e...', 5, v='197....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fd1f...', 5, v='203....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fe00...', 5, v='212....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fee1...', 5, v='185....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ffc2...', 5, v='187....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='100a...', 6, v='162"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1018...', 6, v='149....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1026...', 6, v='136....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1034...', 6, v='145....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1042...', 6, v='164....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1050...', 6, v='158....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='105e...', 6, v='163"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='106c...', 6, v='161....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='107a...', 6, v='168....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1088...', 6, v='168....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1096...', 6, v='165....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10a4...', 6, v='168....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10b2...', 6, v='163....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10c1...', 6, v='147....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10cf...', 6, v='163"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10dd...', 6, v='166....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10eb...', 6, v='177....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10f9...', 6, v='179....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1107...', 6, v='161"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1115...', 6, v='174....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1123...', 6, v='203....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1131...', 6, v='158....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='113f...', 6, v='172....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='114d...', 6, v='172....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='115b...', 6, v='168....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1169...', 6, v='138"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1177...', 6, v='135....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1185...', 6, v='157....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1193...', 6, v='160....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11a2...', 6, v='175....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11b0...', 6, v='184....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11be...', 6, v='188....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11cc...', 6, v='170"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11da...', 6, v='173....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11e8...', 6, v='167"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11f6...', 6, v='172....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1205...', 6, v='164....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1213...', 6, v='166....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1221...', 6, v='151....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='122f...', 6, v='158....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='123d...', 6, v='170....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='124b...', 6, v='185....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1259...', 6, v='160....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1267...', 6, v='188....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1276...', 6, v='207....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1283...', 6, v='214....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1291...', 6, v='213....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='129f...', 6, v='218....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12ad...', 6, v='210....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12bb...', 6, v='178....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12c9...', 6, v='162....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12d7...', 6, v='156....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12e5...', 6, v='153....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12f3...', 6, v='143....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1301...', 6, v='160....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='130f...', 6, v='153....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='131d...', 6, v='163....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='132b...', 6, v='168....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1339...', 6, v='169....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1347...', 6, v='139....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1355...', 6, v='142....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1364...', 6, v='122....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1372...', 6, v='125....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1380...', 6, v='110....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='138e...', 6, v='110....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='139c...', 6, v='190....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13aa...', 6, v='99.6...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13b8...', 6, v='209....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13c6...', 6, v='76.2...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13d4...', 6, v='61.5...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13e2...', 6, v='44.5...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13f0...', 6, v='44.2...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13fe...', 6, v='60.4...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='140c...', 6, v='64.6...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='141a...', 6, v='67.3...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1428...', 6, v='341....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1436...', 6, v='115....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1445...', 6, v='117....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1453...', 6, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1461...', 6, v='252....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='146f...', 6, v='261....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='147d...', 6, v='313....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='148b...', 6, v='311....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1499...', 6, v='292"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14a7...', 6, v='57.6...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14b5...', 6, v='151....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14c3...', 6, v='92.7...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14d1...', 6, v='93.4...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14df...', 6, v='100....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14ed...', 6, v='97.4...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14fb...', 6, v='184"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1509...', 6, v='289....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1517...', 6, v='274....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1526...', 6, v='39.8...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1534...', 6, v='6.5"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1542...', 6, v='355....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1550...', 6, v='19.4...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='155e...', 6, v='44.2...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='156c...', 6, v='61.4...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='157a...', 6, v='55.5...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1588...', 6, v='60.2...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1596...', 6, v='71.7...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15a4...', 6, v='66.3...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15b2...', 6, v='61.5...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15c0...', 6, v='38.5...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15ce...', 6, v='17.3...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15dc...', 6, v='35.6...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15ea...', 6, v='44.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15f8...', 6, v='71.4...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1607...', 6, v='166....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1615...', 6, v='125"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1623...', 6, v='176"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1631...', 6, v='195....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='163f...', 6, v='99.1...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='164d...', 6, v='90"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='165b...', 6, v='273....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1669...', 6, v='344....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1677...', 6, v='307....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1685...', 6, v='271....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1693...', 6, v='278....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16a1...', 6, v='291....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16af...', 6, v='52.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16bd...', 6, v='76.6...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16cb...', 6, v='87.6...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16d9...', 6, v='170....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16e8...', 6, v='174....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16f6...', 6, v='175....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1704...', 6, v='186....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1712...', 6, v='183....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1720...', 6, v='181....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='172e...', 6, v='173....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='173c...', 6, v='170....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='174a...', 6, v='165....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1758...', 6, v='163....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1766...', 6, v='161....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1774...', 6, v='165....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1782...', 6, v='170....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1790...', 6, v='173....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='179e...', 6, v='187....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17ac...', 6, v='201....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17ba...', 6, v='205....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17c9...', 6, v='204....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17d7...', 6, v='204....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17e5...', 6, v='208....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17f3...', 6, v='204....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1801...', 6, v='193....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='180f...', 6, v='186....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='181d...', 6, v='192....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='182b...', 6, v='194....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1839...', 6, v='184....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1847...', 6, v='184....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1855...', 6, v='185....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1863...', 6, v='194....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1871...', 6, v='192....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='187f...', 6, v='192....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='188d...', 6, v='190....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='189c...', 6, v='185....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18b8...', 6, v='170....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18c6...', 6, v='187....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18d4...', 6, v='191....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18e2...', 6, v='191....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18f0...', 6, v='197....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18fe...', 6, v='195....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='190c...', 6, v='189....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='191a...', 6, v='201....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1928...', 6, v='202....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1936...', 6, v='204....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1944...', 6, v='196....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1952...', 6, v='182....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1960...', 6, v='162....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='196e...', 6, v='187....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='197c...', 6, v='187....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='198b...', 6, v='179....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1999...', 6, v='181....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19b5...', 6, v='188....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19c3...', 6, v='186....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19d1...', 6, v='183....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19df...', 6, v='182....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19ed...', 6, v='176....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19ee...', 6, v='175....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19fb...', 6, v='178....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a09...', 6, v='223....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a17...', 6, v='228....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a25...', 6, v='229....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a33...', 6, v='216....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a41...', 6, v='226....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a4f...', 6, v='249....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a5e...', 6, v='245....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a6c...', 6, v='250....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a7a...', 6, v='251....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a88...', 6, v='252....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a96...', 6, v='259....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1aa4...', 6, v='254....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ab2...', 6, v='218....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ac0...', 6, v='228....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ace...', 6, v='227....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1adc...', 6, v='214....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1aea...', 6, v='218....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1af8...', 6, v='217"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1b06...', 6, v='231....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1b14...', 6, v='230....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c74...', 6, v='52"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c82...', 6, v='340....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c90...', 6, v='18.5...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c9e...', 6, v='357....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cac...', 6, v='344....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cba...', 6, v='338....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cc8...', 6, v='28.4...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cd6...', 6, v='21.8...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ce4...', 6, v='10.4...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cf2...', 6, v='343....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d01...', 6, v='342....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d0f...', 6, v='358....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d1d...', 6, v='353....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d2b...', 6, v='353....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d39...', 6, v='1.4"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d47...', 6, v='6.4"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d55...', 6, v='10.5...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d63...', 6, v='350....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d71...', 6, v='350....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d7f...', 6, v='357....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d8d...', 6, v='181....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d9b...', 6, v='184....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1da9...', 6, v='192....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1db7...', 6, v='193....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1dc5...', 6, v='194....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1dd3...', 6, v='190....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1de1...', 6, v='195"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1df0...', 6, v='195....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1dfe...', 6, v='195....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e0c...', 6, v='198....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e1a...', 6, v='198....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e28...', 6, v='199....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e36...', 6, v='200....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e44...', 6, v='202....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e52...', 6, v='200....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e60...', 6, v='203....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e6e...', 6, v='204....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e7c...', 6, v='188....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e8a...', 6, v='193....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e98...', 6, v='184....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ea6...', 6, v='190....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1eb4...', 6, v='188....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ec2...', 6, v='192....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ed1...', 6, v='185....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1edf...', 6, v='186....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1eed...', 6, v='182....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1efb...', 6, v='187....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f09...', 6, v='186....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f17...', 6, v='168....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f25...', 6, v='164....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f33...', 6, v='154....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f41...', 6, v='134....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f4f...', 6, v='154....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f5d...', 6, v='182....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f6b...', 6, v='188....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f79...', 6, v='176"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f87...', 6, v='206....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f95...', 6, v='216....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fa4...', 6, v='211....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fb2...', 6, v='210....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fc0...', 6, v='211....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fce...', 6, v='192....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fdc...', 6, v='185....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fea...', 6, v='176....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ff8...', 6, v='171....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2006...', 6, v='129....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2014...', 6, v='173....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2022...', 6, v='157....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2030...', 6, v='161....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='203e...', 6, v='163....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='204c...', 6, v='176....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='205a...', 6, v='166....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2068...', 6, v='161....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2076...', 6, v='159....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2084...', 6, v='177....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2093...', 6, v='183....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20a1...', 6, v='185....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20af...', 6, v='182....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20bd...', 6, v='189....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20cb...', 6, v='173....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20d9...', 6, v='179....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20e7...', 6, v='193....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20f5...', 6, v='202....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2103...', 6, v='197....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2111...', 6, v='186....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='211f...', 6, v='188....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='212d...', 6, v='178....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='213b...', 6, v='160....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2149...', 6, v='168....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2157...', 6, v='184"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2165...', 6, v='191....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2174...', 6, v='177....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2182...', 6, v='182....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2190...', 6, v='185....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='219e...', 6, v='176....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21ac...', 6, v='170....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21ba...', 6, v='169....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21c8...', 6, v='159....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21d6...', 6, v='190....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21e4...', 6, v='173....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21f2...', 6, v='175....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2200...', 6, v='187....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='220e...', 6, v='188....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='221c...', 6, v='160"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='222a...', 6, v='175....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2238...', 6, v='192....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2247...', 6, v='200....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2255...', 6, v='116....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2263...', 6, v='166....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2271...', 6, v='162....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='227f...', 6, v='130....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='228d...', 6, v='122"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='229b...', 6, v='193....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22a9...', 6, v='183....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22b7...', 6, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22c5...', 6, v='157....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22d3...', 6, v='142....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22e1...', 6, v='145....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22ef...', 6, v='182....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22fd...', 6, v='182....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='230b...', 6, v='173....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2319...', 6, v='188....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2327...', 6, v='179....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2336...', 6, v='169....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2344...', 6, v='164....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2352...', 6, v='170....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2360...', 6, v='178....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='236e...', 6, v='158"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='237c...', 6, v='161....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='238a...', 6, v='175....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2398...', 6, v='169....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23a6...', 6, v='185....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23b4...', 6, v='191....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23c2...', 6, v='176....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23d0...', 6, v='167....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23de...', 6, v='154....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23ec...', 6, v='167"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23fa...', 6, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2408...', 6, v='166....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2417...', 6, v='146....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2425...', 6, v='155....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2433...', 6, v='157....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2441...', 6, v='189....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='244f...', 6, v='187....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='246b...', 6, v='186....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2479...', 6, v='179....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2487...', 6, v='139....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2495...', 6, v='161....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24a3...', 6, v='172"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24b1...', 6, v='189....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24bf...', 6, v='187....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24cd...', 6, v='188....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24db...', 6, v='186....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24e9...', 6, v='198....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24f8...', 6, v='193....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2506...', 6, v='195....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2514...', 6, v='198....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2522...', 6, v='180....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2530...', 6, v='180"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='253e...', 6, v='161....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='254c...', 6, v='165....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='255a...', 6, v='165....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2568...', 6, v='160....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2576...', 6, v='147....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2584...', 6, v='196....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2592...', 6, v='195....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25a0...', 6, v='186....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25ae...', 6, v='178....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25bc...', 6, v='177....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25ca...', 6, v='172"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25d9...', 6, v='156....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25e7...', 6, v='154....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25f5...', 6, v='157"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2603...', 6, v='179....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2611...', 6, v='166"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='261f...', 6, v='172....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='262d...', 6, v='196....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='263b...', 6, v='179....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2649...', 6, v='195....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2657...', 6, v='202....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2665...', 6, v='209....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2673...', 6, v='204....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2681...', 6, v='199....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='268f...', 6, v='186....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='269d...', 6, v='175....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26ab...', 6, v='170....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26ba...', 6, v='159....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26c8...', 6, v='156....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26d6...', 6, v='137....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26e4...', 6, v='146"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26f2...', 6, v='139....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2700...', 6, v='143....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='270e...', 6, v='137....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='271c...', 6, v='177....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='272a...', 6, v='186....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2738...', 6, v='184....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2746...', 6, v='188....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2754...', 6, v='191....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2762...', 6, v='146....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2770...', 6, v='161....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='277e...', 6, v='188....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.endElementNs(par, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(par, NULL, NULL, 0, 2, 0, memind='1069...', 8, h='3dc1...', 8)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='0" v...', 1, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e08"...', 3, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c32...', 4, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2a3c...', 4, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3835...', 4, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4645...', 4, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5455...', 4, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6265...', 4, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7075...', 4, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7e85...', 4, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8c96...', 4, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9aa5...', 4, v='50.1...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a8b6...', 4, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b6c5...', 4, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c4d7...', 4, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d30b...', 4, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e0f6...', 4, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ef06...', 4, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fd17...', 4, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10b2...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1193...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1274...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1355...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1436...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1518...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15f8...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16d9...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17ba...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='189b...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='197c...', 5, v='50.1...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a5d...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1b3e...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c1f...', 5, v='50.1...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d00...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1de1...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ec2...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fa3...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2084...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2165...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2246...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2327...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2408...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24e9...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25ca...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26ab...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='278c...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='286d...', 5, v='50.1...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='294e...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2a30...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2b10...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2bf1...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2cd2...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2db3...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2e94...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2f75...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3056...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3137...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3219...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='32f9...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='33da...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='34bb...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='359d...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='367d...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='375e...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3840...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3921...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3a01...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3ae2...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3bc3...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3ca4...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3d85...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3e66...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3f48...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4028...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4109...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='41ea...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='42cb...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='43ac...', 5, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='448d...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='456e...', 5, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='464f...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='480f...', 5, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='48f0...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='49d1...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4ab4...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4b95...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4c76...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4d57...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4e38...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4f19...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4ffa...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='50dd...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='51bc...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='529d...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='537e...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5460...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5540...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5621...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5702...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='57e3...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='58c4...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='59a7...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5a86...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5b67...', 5, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5c48...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5d29...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5e0a...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5eeb...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5fcc...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='60ad...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='618e...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='626f...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6350...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6431...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6512...', 5, v='50.1...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='65f3...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='66d4...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='67b5...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6896...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6978...', 5, v='50.1...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6a58...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6b39...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6c1a...', 5, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6cfb...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6ddc...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6ebd...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6f9e...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='707f...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7160...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7241...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7322...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7403...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='74e4...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='75c5...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='76a6...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7787...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7868...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7948...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7a29...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7b0a...', 5, v='50.1...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7beb...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7ccc...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7dad...', 5, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7e8f...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7f70...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8051...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8132...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8213...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='82f4...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='83d5...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='84b6...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8597...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8678...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8759...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='883a...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='891b...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='89fc...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8add...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8bbe...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8c9f...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8d80...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8e61...', 5, v='50.1...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8f42...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9023...', 5, v='50.1...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9104...', 5, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='91e5...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='92c6...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='93a8...', 5, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9488...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9569...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='964a...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='972b...', 5, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='980c...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='98ed...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='99ce...', 5, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9aaf...', 5, v='50.1...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9b90...', 5, v='50.1...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9c71...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9d52...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9e33...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9f14...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9ff5...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a0d6...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a1b7...', 5, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a298...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a379...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a45a...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a53b...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a61c...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a6fd...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a7e0...', 5, v='50.1...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a8c0...', 5, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a9a0...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='aa81...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ab62...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ac43...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ad24...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ae05...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='aee6...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='afc7...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b0a8...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b26a...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b34b...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b42c...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b50d...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b5ee...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b6cf...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b7b0...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b891...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b972...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ba53...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bb34...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bc15...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bcf6...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bdd8...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='beb8...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bf99...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c07a...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c15b...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c23c...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c31d...', 5, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c3fe...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c4df...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c5c0...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c6a1...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c782...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c863...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c944...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ca25...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cb06...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cbe7...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ccc8...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cda9...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ce8a...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cf6b...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d04c...', 5, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d12d...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d20e...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d2f0...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d3d0...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d4b1...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d592...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d673...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d754...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d835...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d916...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d9f7...', 5, v='50.1...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dad8...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dbb9...', 5, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dc9a...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dd7b...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='de5c...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='df3d...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e01d...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e0fe...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e1df...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e2c0...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e3a1...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e482...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e563...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e644...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e725...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e806...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e8e7...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e9c8...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='eaa9...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='eb8a...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ec6b...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ed4c...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ee2d...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ef0e...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='eff0...', 5, v='50.1...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f0d1...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f1b2...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f293...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f374...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f455...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f536...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f617...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f6f8...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f7d9...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f8ba...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f99b...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fa7c...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fb5d...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fc3e...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fd1f...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fe00...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fee1...', 5, v='50.1...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ffc2...', 5, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='100a...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1018...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1026...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1034...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1042...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1050...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='105e...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='106c...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='107a...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1088...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1096...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10a4...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10b2...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10c1...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10cf...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10dd...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10eb...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10f9...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1107...', 6, v='50.1...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1115...', 6, v='50.1...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1123...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1131...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='113f...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='114d...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='115b...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1169...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1177...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1185...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1193...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11a2...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11b0...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11be...', 6, v='50.1...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11cc...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11da...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11e8...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11f6...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1205...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1213...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1221...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='122f...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='123d...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='124b...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1259...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1267...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1276...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1283...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1291...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='129f...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12ad...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12bb...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12c9...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12d7...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12e5...', 6, v='50.1...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12f3...', 6, v='50.1...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1301...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='130f...', 6, v='50.1...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='131d...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='132b...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1339...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1347...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1355...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1364...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1372...', 6, v='50.1...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1380...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='138e...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='139c...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13aa...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13b8...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13c6...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13d4...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13e2...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13f0...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13fe...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='140c...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='141a...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1428...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1436...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1445...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1453...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1461...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='146f...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='147d...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='148b...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1499...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14a7...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14b5...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14c3...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14d1...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14df...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14ed...', 6, v='50.1...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14fb...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1509...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1517...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1526...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1534...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1542...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1550...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='155e...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='156c...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='157a...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1588...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1596...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15a4...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15b2...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15c0...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15ce...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15dc...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15ea...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15f8...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1607...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1615...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1623...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1631...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='163f...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='164d...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='165b...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1669...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1677...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1685...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1693...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16a1...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16af...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16bd...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16cb...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16d9...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16e8...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16f6...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1704...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1712...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1720...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='172e...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='173c...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='174a...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1758...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1766...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1774...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1782...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1790...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='179e...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17ac...', 6, v='50.1...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17ba...', 6, v='50.1...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17c9...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17d7...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17e5...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17f3...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1801...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='180f...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='181d...', 6, v='50.1...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='182b...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1839...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1847...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1855...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1863...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1871...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='187f...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='188d...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='189c...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18b8...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18c6...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18d4...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18e2...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18f0...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18fe...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='190c...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='191a...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1928...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1936...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1944...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1952...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1960...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='196e...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='197c...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='198b...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1999...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19b5...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19c3...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19d1...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19df...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19ed...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19ee...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19fb...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a09...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a17...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a25...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a33...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a41...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a4f...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a5e...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a6c...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a7a...', 6, v='50.1...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a88...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a96...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1aa4...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ab2...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ac0...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ace...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1adc...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1aea...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1af8...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1b06...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1b14...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c74...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c82...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c90...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c9e...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cac...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cba...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cc8...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cd6...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ce4...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cf2...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d01...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d0f...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d1d...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d2b...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d39...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d47...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d55...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d63...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d71...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d7f...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d8d...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d9b...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1da9...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1db7...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1dc5...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1dd3...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1de1...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1df0...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1dfe...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e0c...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e1a...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e28...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e36...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e44...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e52...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e60...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e6e...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e7c...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e8a...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e98...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ea6...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1eb4...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ec2...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ed1...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1edf...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1eed...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1efb...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f09...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f17...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f25...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f33...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f41...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f4f...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f5d...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f6b...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f79...', 6, v='50.1...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f87...', 6, v='50.1...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f95...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fa4...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fb2...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fc0...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fce...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fdc...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fea...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ff8...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2006...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2014...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2022...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2030...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='203e...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='204c...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='205a...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2068...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2076...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2084...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2093...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20a1...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20af...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20bd...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20cb...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20d9...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20e7...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20f5...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2103...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2111...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='211f...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='212d...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='213b...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2149...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2157...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2165...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2174...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2182...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2190...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='219e...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21ac...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21ba...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21c8...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21d6...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21e4...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21f2...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2200...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='220e...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='221c...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='222a...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2238...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2247...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2255...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2263...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2271...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='227f...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='228d...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='229b...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22a9...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22b7...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22c5...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22d3...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22e1...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22ef...', 6, v='50.1...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22fd...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='230b...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2319...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2327...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2336...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2344...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2352...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2360...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='236e...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='237c...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='238a...', 6, v='50.1...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2398...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23a6...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23b4...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23c2...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23d0...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23de...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23ec...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23fa...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2408...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2417...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2425...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2433...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2441...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='244f...', 6, v='50.1...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='246b...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2479...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2487...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2495...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24a3...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24b1...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24bf...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24cd...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24db...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24e9...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24f8...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2506...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2514...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2522...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2530...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='253e...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='254c...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='255a...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2568...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2576...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2584...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2592...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25a0...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25ae...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25bc...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25ca...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25d9...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25e7...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25f5...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2603...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2611...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='261f...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='262d...', 6, v='50.1...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='263b...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2649...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2657...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2665...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2673...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2681...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='268f...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='269d...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26ab...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26ba...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26c8...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26d6...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26e4...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26f2...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2700...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='270e...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='271c...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='272a...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2738...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2746...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2754...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2762...', 6, v='49.9...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2770...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='277e...', 6, v='50"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.endElementNs(par, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(par, NULL, NULL, 0, 2, 0, memind='8612...', 4, h='3dc1...', 8)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='0" v...', 1, v='25.0...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e08"...', 3, v='24.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c32...', 4, v='23.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2a3c...', 4, v='23.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3835...', 4, v='22.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4645...', 4, v='22.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5455...', 4, v='26.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6265...', 4, v='28.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7075...', 4, v='34.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7e85...', 4, v='40.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8c96...', 4, v='40.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9aa5...', 4, v='38.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a8b6...', 4, v='35.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b6c5...', 4, v='34.1...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c4d7...', 4, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d30b...', 4, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e0f6...', 4, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ef06...', 4, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fd17...', 4, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10b2...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1193...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1274...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1355...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1436...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1518...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15f8...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16d9...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17ba...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='189b...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='197c...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a5d...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1b3e...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c1f...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d00...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1de1...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ec2...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fa3...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2084...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2165...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2246...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2327...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2408...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24e9...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25ca...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26ab...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='278c...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='286d...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='294e...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2a30...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2b10...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2bf1...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2cd2...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2db3...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2e94...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2f75...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3056...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3137...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3219...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='32f9...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='33da...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='34bb...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='359d...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='367d...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='375e...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3840...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3921...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3a01...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3ae2...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3bc3...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3ca4...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3d85...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3e66...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3f48...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4028...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4109...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='41ea...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='42cb...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='43ac...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='448d...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='456e...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='464f...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='480f...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='48f0...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='49d1...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4ab4...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4b95...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4c76...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4d57...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4e38...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4f19...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4ffa...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='50dd...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='51bc...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='529d...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='537e...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5460...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5540...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5621...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5702...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='57e3...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='58c4...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='59a7...', 5, v='0.04...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5a86...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5b67...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5c48...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5d29...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5e0a...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5eeb...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5fcc...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='60ad...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='618e...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='626f...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6350...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6431...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6512...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='65f3...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='66d4...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='67b5...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6896...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6978...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6a58...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6b39...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6c1a...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6cfb...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6ddc...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6ebd...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6f9e...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='707f...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7160...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7241...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7322...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7403...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='74e4...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='75c5...', 5, v='0.04...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='76a6...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7787...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7868...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7948...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7a29...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7b0a...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7beb...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7ccc...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7dad...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7e8f...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7f70...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8051...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8132...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8213...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='82f4...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='83d5...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='84b6...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8597...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8678...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8759...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='883a...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='891b...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='89fc...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8add...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8bbe...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8c9f...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8d80...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8e61...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8f42...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9023...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9104...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='91e5...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='92c6...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='93a8...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9488...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9569...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='964a...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='972b...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='980c...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='98ed...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='99ce...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9aaf...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9b90...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9c71...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9d52...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9e33...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9f14...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9ff5...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a0d6...', 5, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a1b7...', 5, v='36.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a298...', 5, v='17.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a379...', 5, v='8.35...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a45a...', 5, v='5.95...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a53b...', 5, v='7.13...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a61c...', 5, v='8.64...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a6fd...', 5, v='6.42...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a7e0...', 5, v='10.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a8c0...', 5, v='14.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a9a0...', 5, v='3.54...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='aa81...', 5, v='3.8"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ab62...', 5, v='6.09...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ac43...', 5, v='5.20...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ad24...', 5, v='7.52...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ae05...', 5, v='11.3...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='aee6...', 5, v='0.95...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='afc7...', 5, v='5.77...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b0a8...', 5, v='21.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b26a...', 5, v='22.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b34b...', 5, v='19.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b42c...', 5, v='1.26...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b50d...', 5, v='3.13...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b5ee...', 5, v='6.09...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b6cf...', 5, v='7.27...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b7b0...', 5, v='9.37...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b891...', 5, v='7.71...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b972...', 5, v='8.18...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ba53...', 5, v='9.84...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bb34...', 5, v='5.25...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bc15...', 5, v='2.64...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bcf6...', 5, v='7.17...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bdd8...', 5, v='19.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='beb8...', 5, v='4.70...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bf99...', 5, v='5.01...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c07a...', 5, v='5.02...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c15b...', 5, v='4.40...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c23c...', 5, v='5.16...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c31d...', 5, v='10.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c3fe...', 5, v='5.09...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c4df...', 5, v='10.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c5c0...', 5, v='4.08...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c6a1...', 5, v='5.22...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c782...', 5, v='6.62...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c863...', 5, v='2.57...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c944...', 5, v='3.76...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ca25...', 5, v='2.92...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cb06...', 5, v='4.23...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cbe7...', 5, v='2.44...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ccc8...', 5, v='10.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cda9...', 5, v='15.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ce8a...', 5, v='10.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cf6b...', 5, v='14.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d04c...', 5, v='11.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d12d...', 5, v='7.26...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d20e...', 5, v='3.27...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d2f0...', 5, v='12.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d3d0...', 5, v='8.86...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d4b1...', 5, v='8.42...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d592...', 5, v='7.50...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d673...', 5, v='7.80...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d754...', 5, v='10.9...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d835...', 5, v='5.74...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d916...', 5, v='2.08...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d9f7...', 5, v='7.75...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dad8...', 5, v='16.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dbb9...', 5, v='18.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dc9a...', 5, v='18.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dd7b...', 5, v='16.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='de5c...', 5, v='13.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='df3d...', 5, v='14.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e01d...', 5, v='14.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e0fe...', 5, v='14.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e1df...', 5, v='15.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e2c0...', 5, v='20.0...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e3a1...', 5, v='20.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e482...', 5, v='16.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e563...', 5, v='17.0...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e644...', 5, v='11.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e725...', 5, v='10.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e806...', 5, v='8.73...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e8e7...', 5, v='14.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e9c8...', 5, v='4.86...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='eaa9...', 5, v='4.14...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='eb8a...', 5, v='6.01...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ec6b...', 5, v='14.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ed4c...', 5, v='9.98...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ee2d...', 5, v='11.9...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ef0e...', 5, v='15.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='eff0...', 5, v='22.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f0d1...', 5, v='22.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f1b2...', 5, v='24.1...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f293...', 5, v='23.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f374...', 5, v='23.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f455...', 5, v='24.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f536...', 5, v='25.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f617...', 5, v='24.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f6f8...', 5, v='25.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f7d9...', 5, v='23.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f8ba...', 5, v='19.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f99b...', 5, v='19.2...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fa7c...', 5, v='16.1...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fb5d...', 5, v='16.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fc3e...', 5, v='16.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fd1f...', 5, v='14.2...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fe00...', 5, v='14.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fee1...', 5, v='9.55...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ffc2...', 5, v='9.07...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='100a...', 6, v='8.33...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1018...', 6, v='9.77...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1026...', 6, v='14.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1034...', 6, v='16.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1042...', 6, v='19.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1050...', 6, v='23.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='105e...', 6, v='23.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='106c...', 6, v='25.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='107a...', 6, v='21.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1088...', 6, v='19.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1096...', 6, v='21.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10a4...', 6, v='21.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10b2...', 6, v='22.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10c1...', 6, v='25.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10cf...', 6, v='23.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10dd...', 6, v='20.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10eb...', 6, v='22.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10f9...', 6, v='18.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1107...', 6, v='16.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1115...', 6, v='13.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1123...', 6, v='13.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1131...', 6, v='8.71...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='113f...', 6, v='8.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='114d...', 6, v='8.19...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='115b...', 6, v='8.30...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1169...', 6, v='10.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1177...', 6, v='14.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1185...', 6, v='15.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1193...', 6, v='19.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11a2...', 6, v='23.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11b0...', 6, v='20.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11be...', 6, v='26.0...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11cc...', 6, v='21.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11da...', 6, v='21.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11e8...', 6, v='22.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11f6...', 6, v='19.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1205...', 6, v='0.01...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1213...', 6, v='0.02...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1221...', 6, v='0.02...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='122f...', 6, v='0.01...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='123d...', 6, v='0.01...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='124b...', 6, v='0.01...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1259...', 6, v='0.01...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1267...', 6, v='0.01...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1276...', 6, v='0.01...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1283...', 6, v='0.01...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1291...', 6, v='0.01...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='129f...', 6, v='0.01...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12ad...', 6, v='0.00...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12bb...', 6, v='0.00...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12c9...', 6, v='0.00...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12d7...', 6, v='0.01...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12e5...', 6, v='0.01...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12f3...', 6, v='0.01...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1301...', 6, v='0.01...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='130f...', 6, v='0.01...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='131d...', 6, v='0.01...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='132b...', 6, v='0.01...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1339...', 6, v='0.27...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1347...', 6, v='0.09...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1355...', 6, v='0.14...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1364...', 6, v='0.20...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1372...', 6, v='0.21...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1380...', 6, v='0.21...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='138e...', 6, v='0.21...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='139c...', 6, v='0.07...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13aa...', 6, v='0.05...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13b8...', 6, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13c6...', 6, v='0.44...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13d4...', 6, v='0.21...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13e2...', 6, v='0.16...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13f0...', 6, v='0.15...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13fe...', 6, v='0.23...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='140c...', 6, v='0.33...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='141a...', 6, v='0.21...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1428...', 6, v='0.04...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1436...', 6, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1445...', 6, v='0.02...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1453...', 6, v='0.02...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1461...', 6, v='0.05...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='146f...', 6, v='0.14...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='147d...', 6, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='148b...', 6, v='0.08...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1499...', 6, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14a7...', 6, v='0.11...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14b5...', 6, v='0.05...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14c3...', 6, v='0.23...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14d1...', 6, v='0.20...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14df...', 6, v='0.16...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14ed...', 6, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14fb...', 6, v='0.02...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1509...', 6, v='0.07...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1517...', 6, v='0.15...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1526...', 6, v='0.18...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1534...', 6, v='0.14...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1542...', 6, v='0.15...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1550...', 6, v='0.16...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='155e...', 6, v='0.21...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='156c...', 6, v='0.30...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='157a...', 6, v='0.16...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1588...', 6, v='0.14...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1596...', 6, v='0.25...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15a4...', 6, v='0.21...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15b2...', 6, v='0.19...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15c0...', 6, v='0.11...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15ce...', 6, v='0.11...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15dc...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15ea...', 6, v='0.11...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15f8...', 6, v='0.30...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1607...', 6, v='0.03...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1615...', 6, v='0.06...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1623...', 6, v='0.04...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1631...', 6, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='163f...', 6, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='164d...', 6, v='0.02...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='165b...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1669...', 6, v='0.09...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1677...', 6, v='0.14...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1685...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1693...', 6, v='0.09...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16a1...', 6, v='0.07...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16af...', 6, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16bd...', 6, v='0.17...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16cb...', 6, v='0.21...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16d9...', 6, v='0.08...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16e8...', 6, v='0.60...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16f6...', 6, v='0.67...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1704...', 6, v='0.72...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1712...', 6, v='0.47...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1720...', 6, v='0.47...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='172e...', 6, v='0.49...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='173c...', 6, v='0.49...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='174a...', 6, v='0.57...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1758...', 6, v='0.62...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1766...', 6, v='35.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1774...', 6, v='33.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1782...', 6, v='35.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1790...', 6, v='32.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='179e...', 6, v='28.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17ac...', 6, v='29.2...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17ba...', 6, v='30.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17c9...', 6, v='28.0...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17d7...', 6, v='27.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17e5...', 6, v='28.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17f3...', 6, v='25.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1801...', 6, v='25.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='180f...', 6, v='30.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='181d...', 6, v='32.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='182b...', 6, v='38.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1839...', 6, v='64.3...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1847...', 6, v='63.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1855...', 6, v='60.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1863...', 6, v='57.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1871...', 6, v='59.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='187f...', 6, v='56.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='188d...', 6, v='60.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='189c...', 6, v='56.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18b8...', 6, v='37.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18c6...', 6, v='40.1...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18d4...', 6, v='38.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18e2...', 6, v='32.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18f0...', 6, v='30.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18fe...', 6, v='26.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='190c...', 6, v='21.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='191a...', 6, v='21.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1928...', 6, v='21.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1936...', 6, v='20.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1944...', 6, v='19.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1952...', 6, v='20.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1960...', 6, v='25.6...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='196e...', 6, v='29.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='197c...', 6, v='31.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='198b...', 6, v='28.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1999...', 6, v='32.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19b5...', 6, v='32.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19c3...', 6, v='29.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19d1...', 6, v='29.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19df...', 6, v='29.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19ed...', 6, v='29.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19ee...', 6, v='29.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19fb...', 6, v='10.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a09...', 6, v='18.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a17...', 6, v='23.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a25...', 6, v='25.8...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a33...', 6, v='13.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a41...', 6, v='15.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a4f...', 6, v='22.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a5e...', 6, v='20.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a6c...', 6, v='14.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a7a...', 6, v='17.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a88...', 6, v='18.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a96...', 6, v='14.8...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1aa4...', 6, v='11.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ab2...', 6, v='6.40...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ac0...', 6, v='13.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ace...', 6, v='18.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1adc...', 6, v='16.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1aea...', 6, v='16.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1af8...', 6, v='17.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1b06...', 6, v='16.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1b14...', 6, v='16.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c74...', 6, v='4.33...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c82...', 6, v='4.33...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c90...', 6, v='21.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c9e...', 6, v='20.8...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cac...', 6, v='22.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cba...', 6, v='22.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cc8...', 6, v='34.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cd6...', 6, v='33.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ce4...', 6, v='32.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cf2...', 6, v='33.0...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d01...', 6, v='34.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d0f...', 6, v='36.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d1d...', 6, v='36.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d2b...', 6, v='36.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d39...', 6, v='37.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d47...', 6, v='37.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d55...', 6, v='37.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d63...', 6, v='32.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d71...', 6, v='31.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d7f...', 6, v='31.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d8d...', 6, v='15.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d9b...', 6, v='17.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1da9...', 6, v='17.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1db7...', 6, v='16.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1dc5...', 6, v='17.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1dd3...', 6, v='18.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1de1...', 6, v='32.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1df0...', 6, v='37.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1dfe...', 6, v='36.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e0c...', 6, v='37.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e1a...', 6, v='37.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e28...', 6, v='35.9...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e36...', 6, v='34.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e44...', 6, v='31.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e52...', 6, v='27.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e60...', 6, v='27.7...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e6e...', 6, v='27.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e7c...', 6, v='9.65...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e8a...', 6, v='8.98...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e98...', 6, v='8.87...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ea6...', 6, v='11.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1eb4...', 6, v='11.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ec2...', 6, v='13.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ed1...', 6, v='12.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1edf...', 6, v='13.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1eed...', 6, v='12.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1efb...', 6, v='12.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f09...', 6, v='12.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f17...', 6, v='11.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f25...', 6, v='11.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f33...', 6, v='13.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f41...', 6, v='20.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f4f...', 6, v='17.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f5d...', 6, v='17.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f6b...', 6, v='17.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f79...', 6, v='15.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f87...', 6, v='18.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f95...', 6, v='19.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fa4...', 6, v='15.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fb2...', 6, v='14.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fc0...', 6, v='14.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fce...', 6, v='10.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fdc...', 6, v='10.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fea...', 6, v='10.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ff8...', 6, v='12.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2006...', 6, v='18.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2014...', 6, v='17.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2022...', 6, v='24.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2030...', 6, v='27.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='203e...', 6, v='31.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='204c...', 6, v='28.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='205a...', 6, v='26.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2068...', 6, v='27.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2076...', 6, v='31.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2084...', 6, v='30.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2093...', 6, v='33.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20a1...', 6, v='31.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20af...', 6, v='27.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20bd...', 6, v='26.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20cb...', 6, v='22.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20d9...', 6, v='21.1...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20e7...', 6, v='20.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20f5...', 6, v='20.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2103...', 6, v='17.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2111...', 6, v='14.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='211f...', 6, v='14.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='212d...', 6, v='13.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='213b...', 6, v='14.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2149...', 6, v='18.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2157...', 6, v='22.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2165...', 6, v='29.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2174...', 6, v='30.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2182...', 6, v='31.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2190...', 6, v='30.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='219e...', 6, v='30.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21ac...', 6, v='29.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21ba...', 6, v='29.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21c8...', 6, v='30.4...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21d6...', 6, v='31.0...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21e4...', 6, v='28.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21f2...', 6, v='28.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2200...', 6, v='27.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='220e...', 6, v='26.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='221c...', 6, v='24.0...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='222a...', 6, v='18.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2238...', 6, v='17.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2247...', 6, v='16.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2255...', 6, v='18.4...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2263...', 6, v='9.83...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2271...', 6, v='9.73...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='227f...', 6, v='12.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='228d...', 6, v='17.2...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='229b...', 6, v='17.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22a9...', 6, v='19.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22b7...', 6, v='22.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22c5...', 6, v='25.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22d3...', 6, v='28.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22e1...', 6, v='28.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22ef...', 6, v='23.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22fd...', 6, v='22.6...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='230b...', 6, v='22.1...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2319...', 6, v='27.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2327...', 6, v='27.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2336...', 6, v='29.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2344...', 6, v='27.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2352...', 6, v='25.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2360...', 6, v='25.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='236e...', 6, v='23.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='237c...', 6, v='21.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='238a...', 6, v='19.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2398...', 6, v='15.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23a6...', 6, v='16.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23b4...', 6, v='15.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23c2...', 6, v='13.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23d0...', 6, v='14.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23de...', 6, v='15.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23ec...', 6, v='18.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23fa...', 6, v='22.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2408...', 6, v='26.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2417...', 6, v='34.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2425...', 6, v='35.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2433...', 6, v='36.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2441...', 6, v='34.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='244f...', 6, v='32.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='246b...', 6, v='33.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2479...', 6, v='31.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2487...', 6, v='36.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2495...', 6, v='30.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24a3...', 6, v='28.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24b1...', 6, v='28.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24bf...', 6, v='27.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24cd...', 6, v='26.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24db...', 6, v='21.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24e9...', 6, v='20.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24f8...', 6, v='17.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2506...', 6, v='17.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2514...', 6, v='17.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2522...', 6, v='16.1...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2530...', 6, v='17.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='253e...', 6, v='20.9...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='254c...', 6, v='21.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='255a...', 6, v='25.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2568...', 6, v='31.2...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2576...', 6, v='33.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2584...', 6, v='82.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2592...', 6, v='46.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25a0...', 6, v='22.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25ae...', 6, v='31.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25bc...', 6, v='30.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25ca...', 6, v='28.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25d9...', 6, v='30.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25e7...', 6, v='31.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25f5...', 6, v='28.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2603...', 6, v='27.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2611...', 6, v='24.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='261f...', 6, v='22.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='262d...', 6, v='23.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='263b...', 6, v='17.5...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2649...', 6, v='17.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2657...', 6, v='18.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2665...', 6, v='20.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2673...', 6, v='19.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2681...', 6, v='18.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='268f...', 6, v='18.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='269d...', 6, v='18.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26ab...', 6, v='18.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26ba...', 6, v='23.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26c8...', 6, v='23.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26d6...', 6, v='26.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26e4...', 6, v='24.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26f2...', 6, v='23.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2700...', 6, v='23.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='270e...', 6, v='24"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='271c...', 6, v='22.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='272a...', 6, v='26.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2738...', 6, v='25.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2746...', 6, v='25.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2754...', 6, v='24.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2762...', 6, v='23.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2770...', 6, v='18.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='277e...', 6, v='15.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.endElementNs(par, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(par, NULL, NULL, 0, 2, 0, memind='8608...', 4, h='3dc1...', 8)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='0" v...', 1, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e08"...', 3, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c32...', 4, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2a3c...', 4, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3835...', 4, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4645...', 4, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5455...', 4, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6265...', 4, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7075...', 4, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7e85...', 4, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8c96...', 4, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9aa5...', 4, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a8b6...', 4, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b6c5...', 4, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c4d7...', 4, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d30b...', 4, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e0f6...', 4, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ef06...', 4, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fd17...', 4, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10b2...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1193...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1274...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1355...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1436...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1518...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15f8...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16d9...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17ba...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='189b...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='197c...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a5d...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1b3e...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c1f...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d00...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1de1...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ec2...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fa3...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2084...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2165...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2246...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2327...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2408...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24e9...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25ca...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26ab...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='278c...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='286d...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='294e...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2a30...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2b10...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2bf1...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2cd2...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2db3...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2e94...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2f75...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3056...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3137...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3219...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='32f9...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='33da...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='34bb...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='359d...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='367d...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='375e...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3840...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3921...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3a01...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3ae2...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3bc3...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3ca4...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3d85...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3e66...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3f48...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4028...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4109...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='41ea...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='42cb...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='43ac...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='448d...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='456e...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='464f...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='480f...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='48f0...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='49d1...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4ab4...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4b95...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4c76...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4d57...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4e38...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4f19...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4ffa...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='50dd...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='51bc...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='529d...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='537e...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5460...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5540...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5621...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5702...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='57e3...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='58c4...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='59a7...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5a86...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5b67...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5c48...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5d29...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5e0a...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5eeb...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5fcc...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='60ad...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='618e...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='626f...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6350...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6431...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6512...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='65f3...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='66d4...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='67b5...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6896...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6978...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6a58...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6b39...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6c1a...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6cfb...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6ddc...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6ebd...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6f9e...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='707f...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7160...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7241...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7322...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7403...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='74e4...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='75c5...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='76a6...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7787...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7868...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7948...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7a29...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7b0a...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7beb...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7ccc...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7dad...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7e8f...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7f70...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8051...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8132...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8213...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='82f4...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='83d5...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='84b6...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8597...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8678...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8759...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='883a...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='891b...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='89fc...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8add...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8bbe...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8c9f...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8d80...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8e61...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8f42...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9023...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9104...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='91e5...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='92c6...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='93a8...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9488...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9569...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='964a...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='972b...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='980c...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='98ed...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='99ce...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9aaf...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9b90...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9c71...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9d52...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9e33...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9f14...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9ff5...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a0d6...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a1b7...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a298...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a379...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a45a...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a53b...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a61c...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a6fd...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a7e0...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a8c0...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a9a0...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='aa81...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ab62...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ac43...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ad24...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ae05...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='aee6...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='afc7...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b0a8...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b26a...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b34b...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b42c...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b50d...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b5ee...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b6cf...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b7b0...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b891...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b972...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ba53...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bb34...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bc15...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bcf6...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bdd8...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='beb8...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bf99...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c07a...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c15b...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c23c...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c31d...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c3fe...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c4df...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c5c0...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c6a1...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c782...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c863...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c944...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ca25...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cb06...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cbe7...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ccc8...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cda9...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ce8a...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cf6b...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d04c...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d12d...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d20e...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d2f0...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d3d0...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d4b1...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d592...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d673...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d754...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d835...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d916...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d9f7...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dad8...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dbb9...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dc9a...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dd7b...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='de5c...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='df3d...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e01d...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e0fe...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e1df...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e2c0...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e3a1...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e482...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e563...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e644...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e725...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e806...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e8e7...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e9c8...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='eaa9...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='eb8a...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ec6b...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ed4c...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ee2d...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ef0e...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='eff0...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f0d1...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f1b2...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f293...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f374...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f455...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f536...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f617...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f6f8...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f7d9...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f8ba...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f99b...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fa7c...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fb5d...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fc3e...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fd1f...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fe00...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fee1...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ffc2...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='100a...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1018...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1026...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1034...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1042...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1050...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='105e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='106c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='107a...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1088...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1096...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10a4...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10b2...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10c1...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10cf...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10dd...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10eb...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10f9...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1107...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1115...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1123...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1131...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='113f...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='114d...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='115b...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1169...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1177...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1185...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1193...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11a2...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11b0...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11be...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11cc...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11da...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11e8...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11f6...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1205...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1213...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1221...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='122f...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='123d...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='124b...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1259...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1267...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1276...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1283...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1291...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='129f...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12ad...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12bb...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12c9...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12d7...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12e5...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12f3...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1301...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='130f...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='131d...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='132b...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1339...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1347...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1355...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1364...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1372...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1380...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='138e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='139c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13aa...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13b8...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13c6...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13d4...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13e2...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13f0...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13fe...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='140c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='141a...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1428...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1436...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1445...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1453...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1461...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='146f...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='147d...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='148b...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1499...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14a7...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14b5...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14c3...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14d1...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14df...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14ed...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14fb...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1509...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1517...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1526...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1534...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1542...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1550...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='155e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='156c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='157a...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1588...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1596...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15a4...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15b2...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15c0...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15ce...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15dc...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15ea...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15f8...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1607...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1615...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1623...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1631...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='163f...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='164d...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='165b...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1669...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1677...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1685...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1693...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16a1...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16af...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16bd...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16cb...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16d9...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16e8...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16f6...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1704...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1712...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1720...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='172e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='173c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='174a...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1758...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1766...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1774...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1782...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1790...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='179e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17ac...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17ba...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17c9...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17d7...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17e5...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17f3...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1801...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='180f...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='181d...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='182b...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1839...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1847...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1855...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1863...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1871...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='187f...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='188d...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='189c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18b8...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18c6...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18d4...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18e2...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18f0...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18fe...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='190c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='191a...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1928...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1936...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1944...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1952...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1960...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='196e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='197c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='198b...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1999...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19b5...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19c3...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19d1...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19df...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19ed...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19ee...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19fb...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a09...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a17...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a25...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a33...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a41...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a4f...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a5e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a6c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a7a...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a88...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a96...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1aa4...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ab2...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ac0...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ace...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1adc...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1aea...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1af8...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1b06...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1b14...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c74...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c82...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c90...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c9e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cac...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cba...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cc8...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cd6...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ce4...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cf2...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d01...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d0f...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d1d...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d2b...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d39...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d47...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d55...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d63...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d71...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d7f...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d8d...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d9b...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1da9...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1db7...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1dc5...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1dd3...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1de1...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1df0...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1dfe...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e0c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e1a...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e28...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e36...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e44...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e52...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e60...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e6e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e7c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e8a...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e98...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ea6...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1eb4...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ec2...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ed1...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1edf...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1eed...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1efb...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f09...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f17...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f25...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f33...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f41...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f4f...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f5d...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f6b...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f79...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f87...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f95...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fa4...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fb2...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fc0...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fce...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fdc...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fea...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ff8...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2006...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2014...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2022...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2030...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='203e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='204c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='205a...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2068...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2076...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2084...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2093...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20a1...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20af...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20bd...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20cb...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20d9...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20e7...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20f5...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2103...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2111...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='211f...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='212d...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='213b...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2149...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2157...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2165...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2174...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2182...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2190...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='219e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21ac...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21ba...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21c8...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21d6...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21e4...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21f2...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2200...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='220e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='221c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='222a...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2238...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2247...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2255...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2263...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2271...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='227f...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='228d...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='229b...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22a9...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22b7...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22c5...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22d3...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22e1...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22ef...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22fd...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='230b...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2319...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2327...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2336...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2344...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2352...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2360...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='236e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='237c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='238a...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2398...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23a6...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23b4...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23c2...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23d0...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23de...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23ec...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23fa...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2408...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2417...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2425...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2433...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2441...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='244f...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='246b...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2479...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2487...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2495...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24a3...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24b1...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24bf...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24cd...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24db...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24e9...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24f8...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2506...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2514...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2522...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2530...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='253e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='254c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='255a...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2568...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2576...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2584...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2592...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25a0...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25ae...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25bc...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25ca...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25d9...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25e7...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25f5...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2603...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2611...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='261f...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='262d...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='263b...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2649...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2657...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2665...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2673...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2681...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='268f...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='269d...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26ab...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26ba...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26c8...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26d6...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26e4...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26f2...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2700...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='270e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='271c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='272a...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2738...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2746...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2754...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2762...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2770...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='277e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.endElementNs(par, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(par, NULL, NULL, 0, 2, 0, memind='8604...', 4, h='3dc1...', 8)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='0" v...', 1, v='21.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e08"...', 3, v='20.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c32...', 4, v='19.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2a3c...', 4, v='19.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3835...', 4, v='18.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4645...', 4, v='18.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5455...', 4, v='22.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6265...', 4, v='24.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7075...', 4, v='29.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7e85...', 4, v='35.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8c96...', 4, v='35.0...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9aa5...', 4, v='33.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a8b6...', 4, v='30.7...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b6c5...', 4, v='29.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c4d7...', 4, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d30b...', 4, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e0f6...', 4, v='0.06...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ef06...', 4, v='0.05...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fd17...', 4, v='0.06...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10b2...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1193...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1274...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1355...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1436...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1518...', 5, v='0.07...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15f8...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16d9...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17ba...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='189b...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='197c...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a5d...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1b3e...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c1f...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d00...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1de1...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ec2...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fa3...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2084...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2165...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2246...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2327...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2408...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24e9...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25ca...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26ab...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='278c...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='286d...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='294e...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2a30...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2b10...', 5, v='0.06...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2bf1...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2cd2...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2db3...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2e94...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2f75...', 5, v='0.05...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3056...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3137...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3219...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='32f9...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='33da...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='34bb...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='359d...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='367d...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='375e...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3840...', 5, v='0.05...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3921...', 5, v='0.06...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3a01...', 5, v='0.06...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3ae2...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3bc3...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3ca4...', 5, v='0.05...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3d85...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3e66...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3f48...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4028...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4109...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='41ea...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='42cb...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='43ac...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='448d...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='456e...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='464f...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='480f...', 5, v='0.05...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='48f0...', 5, v='0.05...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='49d1...', 5, v='0.05...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4ab4...', 5, v='0.05...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4b95...', 5, v='0.05...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4c76...', 5, v='0.05...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4d57...', 5, v='0.05...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4e38...', 5, v='0.05...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4f19...', 5, v='0.05...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4ffa...', 5, v='0.05...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='50dd...', 5, v='0.06...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='51bc...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='529d...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='537e...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5460...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5540...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5621...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5702...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='57e3...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='58c4...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='59a7...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5a86...', 5, v='0.06...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5b67...', 5, v='0.06...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5c48...', 5, v='0.05...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5d29...', 5, v='0.05...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5e0a...', 5, v='0.06...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5eeb...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5fcc...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='60ad...', 5, v='0.05...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='618e...', 5, v='0.05...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='626f...', 5, v='0.05...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6350...', 5, v='0.05...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6431...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6512...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='65f3...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='66d4...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='67b5...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6896...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6978...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6a58...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6b39...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6c1a...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6cfb...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6ddc...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6ebd...', 5, v='0.05...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6f9e...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='707f...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7160...', 5, v='0.05...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7241...', 5, v='0.05...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7322...', 5, v='0.05...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7403...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='74e4...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='75c5...', 5, v='0.05...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='76a6...', 5, v='0.05...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7787...', 5, v='0.05...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7868...', 5, v='0.05...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7948...', 5, v='0.05...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7a29...', 5, v='0.06...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7b0a...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7beb...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7ccc...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7dad...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7e8f...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7f70...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8051...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8132...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8213...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='82f4...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='83d5...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='84b6...', 5, v='0.06...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8597...', 5, v='0.05...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8678...', 5, v='0.05...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8759...', 5, v='0.05...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='883a...', 5, v='0.06...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='891b...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='89fc...', 5, v='0.06...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8add...', 5, v='0.05...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8bbe...', 5, v='0.05...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8c9f...', 5, v='0.05...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8d80...', 5, v='0.05...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8e61...', 5, v='0.05...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8f42...', 5, v='0.06...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9023...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9104...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='91e5...', 5, v='0.06...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='92c6...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='93a8...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9488...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9569...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='964a...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='972b...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='980c...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='98ed...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='99ce...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9aaf...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9b90...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9c71...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9d52...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9e33...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9f14...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9ff5...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a0d6...', 5, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a1b7...', 5, v='30.2...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a298...', 5, v='16.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a379...', 5, v='10.2...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a45a...', 5, v='3.83...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a53b...', 5, v='3.30...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a61c...', 5, v='4.19...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a6fd...', 5, v='2.00...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a7e0...', 5, v='4.91...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a8c0...', 5, v='7.89...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a9a0...', 5, v='2.93...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='aa81...', 5, v='1.48...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ab62...', 5, v='2.19...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ac43...', 5, v='1.67...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ad24...', 5, v='5.98...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ae05...', 5, v='10.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='aee6...', 5, v='3.65...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='afc7...', 5, v='7.25...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b0a8...', 5, v='19.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b26a...', 5, v='21.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b34b...', 5, v='18.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b42c...', 5, v='3.45...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b50d...', 5, v='4.91...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b5ee...', 5, v='7.33...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b6cf...', 5, v='7.20...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b7b0...', 5, v='9.19...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b891...', 5, v='8.02...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b972...', 5, v='7.68...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ba53...', 5, v='8.66...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bb34...', 5, v='7.73...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bc15...', 5, v='5.14...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bcf6...', 5, v='5.08...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bdd8...', 5, v='18.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='beb8...', 5, v='4.67...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bf99...', 5, v='3.97...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c07a...', 5, v='2.24...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c15b...', 5, v='2.51...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c23c...', 5, v='4.78...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c31d...', 5, v='10.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c3fe...', 5, v='5.86...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c4df...', 5, v='9.66...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c5c0...', 5, v='5.19...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c6a1...', 5, v='5.35...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c782...', 5, v='7.74...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c863...', 5, v='3.65...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c944...', 5, v='4.23...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ca25...', 5, v='3.28...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cb06...', 5, v='5.65...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cbe7...', 5, v='2.24...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ccc8...', 5, v='12.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cda9...', 5, v='15.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ce8a...', 5, v='11.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cf6b...', 5, v='15.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d04c...', 5, v='12.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d12d...', 5, v='8.53...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d20e...', 5, v='1.47...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d2f0...', 5, v='7.44...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d3d0...', 5, v='4.26...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d4b1...', 5, v='3.80...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d592...', 5, v='3.75...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d673...', 5, v='5.53...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d754...', 5, v='9.52...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d835...', 5, v='1.98...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d916...', 5, v='4.15...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d9f7...', 5, v='9.62...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dad8...', 5, v='17.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dbb9...', 5, v='19.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dc9a...', 5, v='19.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dd7b...', 5, v='14.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='de5c...', 5, v='12.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='df3d...', 5, v='13.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e01d...', 5, v='13.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e0fe...', 5, v='13.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e1df...', 5, v='13.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e2c0...', 5, v='18.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e3a1...', 5, v='17.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e482...', 5, v='15.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e563...', 5, v='15.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e644...', 5, v='11.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e725...', 5, v='9.89...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e806...', 5, v='7.99...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e8e7...', 5, v='13.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e9c8...', 5, v='6.33...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='eaa9...', 5, v='5.63...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='eb8a...', 5, v='7.36...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ec6b...', 5, v='14.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ed4c...', 5, v='9.67...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ee2d...', 5, v='12.8...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ef0e...', 5, v='14.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='eff0...', 5, v='21.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f0d1...', 5, v='21.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f1b2...', 5, v='22.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f293...', 5, v='20.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f374...', 5, v='22.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f455...', 5, v='22.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f536...', 5, v='24.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f617...', 5, v='23.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f6f8...', 5, v='23.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f7d9...', 5, v='22.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f8ba...', 5, v='18.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f99b...', 5, v='18.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fa7c...', 5, v='15.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fb5d...', 5, v='16.3...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fc3e...', 5, v='15.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fd1f...', 5, v='12.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fe00...', 5, v='12.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fee1...', 5, v='8.94...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ffc2...', 5, v='8.83...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='100a...', 6, v='8.79...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1018...', 6, v='10.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1026...', 6, v='13.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1034...', 6, v='15.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1042...', 6, v='19.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1050...', 6, v='22.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='105e...', 6, v='21.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='106c...', 6, v='23.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='107a...', 6, v='20.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1088...', 6, v='18.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1096...', 6, v='20.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10a4...', 6, v='19.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10b2...', 6, v='21.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10c1...', 6, v='23.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10cf...', 6, v='21.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10dd...', 6, v='19.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10eb...', 6, v='20.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10f9...', 6, v='17.3...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1107...', 6, v='16.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1115...', 6, v='13.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1123...', 6, v='12.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1131...', 6, v='8.96...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='113f...', 6, v='8.31...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='114d...', 6, v='8.35...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='115b...', 6, v='8.49...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1169...', 6, v='10.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1177...', 6, v='13.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1185...', 6, v='15.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1193...', 6, v='18.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11a2...', 6, v='22.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11b0...', 6, v='19.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11be...', 6, v='23.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11cc...', 6, v='20.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11da...', 6, v='19.8...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11e8...', 6, v='20.8...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11f6...', 6, v='18.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1205...', 6, v='0.01...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1213...', 6, v='0.02...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1221...', 6, v='0.02...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='122f...', 6, v='0.01...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='123d...', 6, v='0.01...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='124b...', 6, v='0.01...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1259...', 6, v='0.01...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1267...', 6, v='0.01...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1276...', 6, v='0.00...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1283...', 6, v='0.00...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1291...', 6, v='0.00...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='129f...', 6, v='0.00...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12ad...', 6, v='0.00...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12bb...', 6, v='0.00...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12c9...', 6, v='0.01...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12d7...', 6, v='0.01...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12e5...', 6, v='0.01...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12f3...', 6, v='0.01...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1301...', 6, v='0.01...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='130f...', 6, v='0.01...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='131d...', 6, v='0.01...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='132b...', 6, v='0.01...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1339...', 6, v='0.26...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1347...', 6, v='0.12...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1355...', 6, v='0.16...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1364...', 6, v='0.22...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1372...', 6, v='0.24...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1380...', 6, v='0.23...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='138e...', 6, v='0.23...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='139c...', 6, v='0.07...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13aa...', 6, v='0.08...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13b8...', 6, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13c6...', 6, v='0.41...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13d4...', 6, v='0.19...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13e2...', 6, v='0.15...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13f0...', 6, v='0.14...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13fe...', 6, v='0.21...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='140c...', 6, v='0.30...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='141a...', 6, v='0.20...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1428...', 6, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1436...', 6, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1445...', 6, v='0.05...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1453...', 6, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1461...', 6, v='0.02...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='146f...', 6, v='0.09...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='147d...', 6, v='0.03...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='148b...', 6, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1499...', 6, v='0.02...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14a7...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14b5...', 6, v='0.08...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14c3...', 6, v='0.25...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14d1...', 6, v='0.22...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14df...', 6, v='0.19...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14ed...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14fb...', 6, v='0.04...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1509...', 6, v='0.02...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1517...', 6, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1526...', 6, v='0.15...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1534...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1542...', 6, v='0.09...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1550...', 6, v='0.12...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='155e...', 6, v='0.18...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='156c...', 6, v='0.28...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='157a...', 6, v='0.16...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1588...', 6, v='0.15...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1596...', 6, v='0.24...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15a4...', 6, v='0.21...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15b2...', 6, v='0.18...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15c0...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15ce...', 6, v='0.09...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15dc...', 6, v='0.09...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15ea...', 6, v='0.11...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15f8...', 6, v='0.29...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1607...', 6, v='0.06...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1615...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1623...', 6, v='0.07...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1631...', 6, v='0.06...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='163f...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='164d...', 6, v='0.04...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='165b...', 6, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1669...', 6, v='0.05...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1677...', 6, v='0.07...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1685...', 6, v='0.03...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1693...', 6, v='0.02...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16a1...', 6, v='0.02...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16af...', 6, v='0.07...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16bd...', 6, v='0.17...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16cb...', 6, v='0.22...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16d9...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16e8...', 6, v='0.57...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16f6...', 6, v='0.63...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1704...', 6, v='0.67...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1712...', 6, v='0.45...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1720...', 6, v='0.46...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='172e...', 6, v='0.47...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='173c...', 6, v='0.48...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='174a...', 6, v='0.56...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1758...', 6, v='0.59...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1766...', 6, v='34.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1774...', 6, v='33.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1782...', 6, v='34.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1790...', 6, v='31.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='179e...', 6, v='26.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17ac...', 6, v='26.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17ba...', 6, v='28.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17c9...', 6, v='25.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17d7...', 6, v='24.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17e5...', 6, v='25.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17f3...', 6, v='22.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1801...', 6, v='22.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='180f...', 6, v='28.0...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='181d...', 6, v='30.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='182b...', 6, v='35.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1839...', 6, v='61.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1847...', 6, v='61.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1855...', 6, v='58.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1863...', 6, v='54.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1871...', 6, v='56.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='187f...', 6, v='53.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='188d...', 6, v='57.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='189c...', 6, v='53.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18b8...', 6, v='36.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18c6...', 6, v='36.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18d4...', 6, v='35.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18e2...', 6, v='29.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18f0...', 6, v='28.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18fe...', 6, v='25.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='190c...', 6, v='19.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='191a...', 6, v='19.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1928...', 6, v='19.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1936...', 6, v='18.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1944...', 6, v='18.1...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1952...', 6, v='20.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1960...', 6, v='25.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='196e...', 6, v='27.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='197c...', 6, v='29.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='198b...', 6, v='27.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1999...', 6, v='30.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19b5...', 6, v='29.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19c3...', 6, v='28.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19d1...', 6, v='28.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19df...', 6, v='28.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19ed...', 6, v='28.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19ee...', 6, v='28.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19fb...', 6, v='11.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a09...', 6, v='14.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a17...', 6, v='19.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a25...', 6, v='20.2...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a33...', 6, v='11.2...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a41...', 6, v='12.2...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a4f...', 6, v='16.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a5e...', 6, v='15.1...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a6c...', 6, v='9.95...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a7a...', 6, v='12.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a88...', 6, v='12.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a96...', 6, v='9.68...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1aa4...', 6, v='6.80...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ab2...', 6, v='4.55...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ac0...', 6, v='10.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ace...', 6, v='14.6...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1adc...', 6, v='14.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1aea...', 6, v='13.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1af8...', 6, v='15.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1b06...', 6, v='13.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1b14...', 6, v='12.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c74...', 6, v='3.99...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c82...', 6, v='2.18...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c90...', 6, v='16.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c9e...', 6, v='14.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cac...', 6, v='16.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cba...', 6, v='15.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cc8...', 6, v='29.2...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cd6...', 6, v='27.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ce4...', 6, v='25.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cf2...', 6, v='24.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d01...', 6, v='25.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d0f...', 6, v='28.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d1d...', 6, v='28.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d2b...', 6, v='28.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d39...', 6, v='30.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d47...', 6, v='30.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d55...', 6, v='30.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d63...', 6, v='24.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d71...', 6, v='23.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d7f...', 6, v='23.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d8d...', 6, v='15.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d9b...', 6, v='16.6...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1da9...', 6, v='16.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1db7...', 6, v='15.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1dc5...', 6, v='16.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1dd3...', 6, v='16.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1de1...', 6, v='27.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1df0...', 6, v='31.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1dfe...', 6, v='31.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e0c...', 6, v='32.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e1a...', 6, v='31.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e28...', 6, v='30.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e36...', 6, v='29.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e44...', 6, v='27.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e52...', 6, v='23.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e60...', 6, v='23.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e6e...', 6, v='23.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e7c...', 6, v='8.57...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e8a...', 6, v='7.91...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e98...', 6, v='7.85...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ea6...', 6, v='9.84...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1eb4...', 6, v='10.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ec2...', 6, v='11.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ed1...', 6, v='11.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1edf...', 6, v='12.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1eed...', 6, v='11.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1efb...', 6, v='11.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f09...', 6, v='10.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f17...', 6, v='10.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f25...', 6, v='10.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f33...', 6, v='13.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f41...', 6, v='19.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f4f...', 6, v='16.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f5d...', 6, v='15.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f6b...', 6, v='15.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f79...', 6, v='14.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f87...', 6, v='15.7...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f95...', 6, v='16.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fa4...', 6, v='13.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fb2...', 6, v='11.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fc0...', 6, v='11.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fce...', 6, v='9.24...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fdc...', 6, v='8.96...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fea...', 6, v='9.42...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ff8...', 6, v='11.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2006...', 6, v='18.0...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2014...', 6, v='15.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2022...', 6, v='23.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2030...', 6, v='26.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='203e...', 6, v='29.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='204c...', 6, v='25.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='205a...', 6, v='25.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2068...', 6, v='26.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2076...', 6, v='30.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2084...', 6, v='28.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2093...', 6, v='30.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20a1...', 6, v='28.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20af...', 6, v='24.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20bd...', 6, v='23.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20cb...', 6, v='21.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20d9...', 6, v='19.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20e7...', 6, v='18.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20f5...', 6, v='17.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2103...', 6, v='15.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2111...', 6, v='13.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='211f...', 6, v='13.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='212d...', 6, v='12.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='213b...', 6, v='13.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2149...', 6, v='17.2...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2157...', 6, v='21.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2165...', 6, v='25.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2174...', 6, v='27.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2182...', 6, v='28.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2190...', 6, v='27.6...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='219e...', 6, v='28.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21ac...', 6, v='27.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21ba...', 6, v='27.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21c8...', 6, v='28.2...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21d6...', 6, v='27.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21e4...', 6, v='26.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21f2...', 6, v='25.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2200...', 6, v='24.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='220e...', 6, v='24.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='221c...', 6, v='22.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='222a...', 6, v='17.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2238...', 6, v='16.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2247...', 6, v='14.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2255...', 6, v='18.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2263...', 6, v='10.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2271...', 6, v='10.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='227f...', 6, v='13.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='228d...', 6, v='17.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='229b...', 6, v='15.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22a9...', 6, v='17.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22b7...', 6, v='21.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22c5...', 6, v='24.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22d3...', 6, v='26.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22e1...', 6, v='27.0...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22ef...', 6, v='22.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22fd...', 6, v='21.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='230b...', 6, v='20.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2319...', 6, v='25.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2327...', 6, v='25.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2336...', 6, v='27.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2344...', 6, v='25.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2352...', 6, v='24.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2360...', 6, v='23.8...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='236e...', 6, v='22.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='237c...', 6, v='20.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='238a...', 6, v='18.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2398...', 6, v='14.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23a6...', 6, v='14.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23b4...', 6, v='14.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23c2...', 6, v='13.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23d0...', 6, v='13.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23de...', 6, v='15.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23ec...', 6, v='17.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23fa...', 6, v='20.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2408...', 6, v='24.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2417...', 6, v='32.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2425...', 6, v='34.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2433...', 6, v='34.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2441...', 6, v='31.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='244f...', 6, v='29.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='246b...', 6, v='30.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2479...', 6, v='29.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2487...', 6, v='34.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2495...', 6, v='28.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24a3...', 6, v='25.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24b1...', 6, v='26.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24bf...', 6, v='24.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24cd...', 6, v='24.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24db...', 6, v='20.2...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24e9...', 6, v='18.2...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24f8...', 6, v='15.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2506...', 6, v='15.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2514...', 6, v='15.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2522...', 6, v='15.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2530...', 6, v='16.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='253e...', 6, v='19.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='254c...', 6, v='20.0...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='255a...', 6, v='23.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2568...', 6, v='29.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2576...', 6, v='31.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2584...', 6, v='75.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2592...', 6, v='41.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25a0...', 6, v='21.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25ae...', 6, v='29.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25bc...', 6, v='28.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25ca...', 6, v='27.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25d9...', 6, v='28.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25e7...', 6, v='29.3...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25f5...', 6, v='26.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2603...', 6, v='25.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2611...', 6, v='23.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='261f...', 6, v='21.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='262d...', 6, v='20.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='263b...', 6, v='16.3...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2649...', 6, v='15.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2657...', 6, v='16.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2665...', 6, v='17.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2673...', 6, v='16.8...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2681...', 6, v='16.6...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='268f...', 6, v='17.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='269d...', 6, v='18.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26ab...', 6, v='18.4...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26ba...', 6, v='22.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26c8...', 6, v='22.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26d6...', 6, v='25.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26e4...', 6, v='22.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26f2...', 6, v='22.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2700...', 6, v='22.9...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='270e...', 6, v='23.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='271c...', 6, v='21.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='272a...', 6, v='23.5...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2738...', 6, v='23.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2746...', 6, v='22.7...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2754...', 6, v='22.3...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2762...', 6, v='23.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2770...', 6, v='18.2...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='277e...', 6, v='14.1...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.endElementNs(par, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(par, NULL, NULL, 0, 2, 0, memind='9812...', 4, h='3dc1...', 8)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='0" v...', 1, v='114....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e08"...', 3, v='117....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c32...', 4, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2a3c...', 4, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3835...', 4, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4645...', 4, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5455...', 4, v='109....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6265...', 4, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7075...', 4, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7e85...', 4, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8c96...', 4, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9aa5...', 4, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a8b6...', 4, v='124....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b6c5...', 4, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c4d7...', 4, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d30b...', 4, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e0f6...', 4, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ef06...', 4, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fd17...', 4, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10b2...', 5, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1193...', 5, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1274...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1355...', 5, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1436...', 5, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1518...', 5, v='127....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15f8...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16d9...', 5, v='121....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17ba...', 5, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='189b...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='197c...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a5d...', 5, v='126....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1b3e...', 5, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c1f...', 5, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d00...', 5, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1de1...', 5, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ec2...', 5, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fa3...', 5, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2084...', 5, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2165...', 5, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2246...', 5, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2327...', 5, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2408...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24e9...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25ca...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26ab...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='278c...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='286d...', 5, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='294e...', 5, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2a30...', 5, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2b10...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2bf1...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2cd2...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2db3...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2e94...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2f75...', 5, v='113....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3056...', 5, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3137...', 5, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3219...', 5, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='32f9...', 5, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='33da...', 5, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='34bb...', 5, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='359d...', 5, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='367d...', 5, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='375e...', 5, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3840...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3921...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3a01...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3ae2...', 5, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3bc3...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3ca4...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3d85...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3e66...', 5, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3f48...', 5, v='126....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4028...', 5, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4109...', 5, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='41ea...', 5, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='42cb...', 5, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='43ac...', 5, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='448d...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='456e...', 5, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='464f...', 5, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='480f...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='48f0...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='49d1...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4ab4...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4b95...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4c76...', 5, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4d57...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4e38...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4f19...', 5, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4ffa...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='50dd...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='51bc...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='529d...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='537e...', 5, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5460...', 5, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5540...', 5, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5621...', 5, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5702...', 5, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='57e3...', 5, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='58c4...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='59a7...', 5, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5a86...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5b67...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5c48...', 5, v='115....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5d29...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5e0a...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5eeb...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5fcc...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='60ad...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='618e...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='626f...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6350...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6431...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6512...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='65f3...', 5, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='66d4...', 5, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='67b5...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6896...', 5, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6978...', 5, v='119....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6a58...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6b39...', 5, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6c1a...', 5, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6cfb...', 5, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6ddc...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6ebd...', 5, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6f9e...', 5, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='707f...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7160...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7241...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7322...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7403...', 5, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='74e4...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='75c5...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='76a6...', 5, v='118....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7787...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7868...', 5, v='113....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7948...', 5, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7a29...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7b0a...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7beb...', 5, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7ccc...', 5, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7dad...', 5, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7e8f...', 5, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7f70...', 5, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8051...', 5, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8132...', 5, v='126....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8213...', 5, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='82f4...', 5, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='83d5...', 5, v='120....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='84b6...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8597...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8678...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8759...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='883a...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='891b...', 5, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='89fc...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8add...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8bbe...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8c9f...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8d80...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8e61...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8f42...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9023...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9104...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='91e5...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='92c6...', 5, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='93a8...', 5, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9488...', 5, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9569...', 5, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='964a...', 5, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='972b...', 5, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='980c...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='98ed...', 5, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='99ce...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9aaf...', 5, v='118....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9b90...', 5, v='115....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9c71...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9d52...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9e33...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9f14...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9ff5...', 5, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a0d6...', 5, v='116....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a1b7...', 5, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a298...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a379...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a45a...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a53b...', 5, v='119....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a61c...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a6fd...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a7e0...', 5, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a8c0...', 5, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a9a0...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='aa81...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ab62...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ac43...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ad24...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ae05...', 5, v='114....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='aee6...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='afc7...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b0a8...', 5, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b26a...', 5, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b34b...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b42c...', 5, v='115....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b50d...', 5, v='115....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b5ee...', 5, v='114....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b6cf...', 5, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b7b0...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b891...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b972...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ba53...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bb34...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bc15...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bcf6...', 5, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bdd8...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='beb8...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bf99...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c07a...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c15b...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c23c...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c31d...', 5, v='115....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c3fe...', 5, v='117....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c4df...', 5, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c5c0...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c6a1...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c782...', 5, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c863...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c944...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ca25...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cb06...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cbe7...', 5, v='122....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ccc8...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cda9...', 5, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ce8a...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cf6b...', 5, v='118....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d04c...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d12d...', 5, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d20e...', 5, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d2f0...', 5, v='126....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d3d0...', 5, v='119....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d4b1...', 5, v='120....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d592...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d673...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d754...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d835...', 5, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d916...', 5, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d9f7...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dad8...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dbb9...', 5, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dc9a...', 5, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dd7b...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='de5c...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='df3d...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e01d...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e0fe...', 5, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e1df...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e2c0...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e3a1...', 5, v='121....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e482...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e563...', 5, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e644...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e725...', 5, v='122....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e806...', 5, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e8e7...', 5, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e9c8...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='eaa9...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='eb8a...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ec6b...', 5, v='113....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ed4c...', 5, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ee2d...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ef0e...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='eff0...', 5, v='115....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f0d1...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f1b2...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f293...', 5, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f374...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f455...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f536...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f617...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f6f8...', 5, v='117....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f7d9...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f8ba...', 5, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f99b...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fa7c...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fb5d...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fc3e...', 5, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fd1f...', 5, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fe00...', 5, v='126....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fee1...', 5, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ffc2...', 5, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='100a...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1018...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1026...', 6, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1034...', 6, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1042...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1050...', 6, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='105e...', 6, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='106c...', 6, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='107a...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1088...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1096...', 6, v='118....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10a4...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10b2...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10c1...', 6, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10cf...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10dd...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10eb...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10f9...', 6, v='121....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1107...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1115...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1123...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1131...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='113f...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='114d...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='115b...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1169...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1177...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1185...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1193...', 6, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11a2...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11b0...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11be...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11cc...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11da...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11e8...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11f6...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1205...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1213...', 6, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1221...', 6, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='122f...', 6, v='118....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='123d...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='124b...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1259...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1267...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1276...', 6, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1283...', 6, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1291...', 6, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='129f...', 6, v='125....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12ad...', 6, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12bb...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12c9...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12d7...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12e5...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12f3...', 6, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1301...', 6, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='130f...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='131d...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='132b...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1339...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1347...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1355...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1364...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1372...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1380...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='138e...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='139c...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13aa...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13b8...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13c6...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13d4...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13e2...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13f0...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13fe...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='140c...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='141a...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1428...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1436...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1445...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1453...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1461...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='146f...', 6, v='0.11...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='147d...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='148b...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1499...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14a7...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14b5...', 6, v='0.11...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14c3...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14d1...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14df...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14ed...', 6, v='0.11...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14fb...', 6, v='0.11...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1509...', 6, v='0.11...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1517...', 6, v='0.11...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1526...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1534...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1542...', 6, v='0.11...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1550...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='155e...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='156c...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='157a...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1588...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1596...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15a4...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15b2...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15c0...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15ce...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15dc...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15ea...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15f8...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1607...', 6, v='0.11...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1615...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1623...', 6, v='0.11...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1631...', 6, v='0.11...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='163f...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='164d...', 6, v='0.11...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='165b...', 6, v='0.11...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1669...', 6, v='0.11...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1677...', 6, v='0.11...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1685...', 6, v='0.11...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1693...', 6, v='0.11...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16a1...', 6, v='0.11...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16af...', 6, v='0.11...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16bd...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16cb...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16d9...', 6, v='0.11...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16e8...', 6, v='0.11...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16f6...', 6, v='0.11...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1704...', 6, v='0.11...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1712...', 6, v='0.11...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1720...', 6, v='0.11...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='172e...', 6, v='0.11...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='173c...', 6, v='0.11...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='174a...', 6, v='0.11...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1758...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1766...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1774...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1782...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1790...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='179e...', 6, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17ac...', 6, v='127....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17ba...', 6, v='128....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17c9...', 6, v='127....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17d7...', 6, v='127....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17e5...', 6, v='127....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17f3...', 6, v='126....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1801...', 6, v='124....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='180f...', 6, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='181d...', 6, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='182b...', 6, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1839...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1847...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1855...', 6, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1863...', 6, v='126....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1871...', 6, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='187f...', 6, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='188d...', 6, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='189c...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18b8...', 6, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18c6...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18d4...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18e2...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18f0...', 6, v='123....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18fe...', 6, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='190c...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='191a...', 6, v='124....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1928...', 6, v='126....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1936...', 6, v='126....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1944...', 6, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1952...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1960...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='196e...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='197c...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='198b...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1999...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19b5...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19c3...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19d1...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19df...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19ed...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19ee...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19fb...', 6, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a09...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a17...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a25...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a33...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a41...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a4f...', 6, v='126....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a5e...', 6, v='126....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a6c...', 6, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a7a...', 6, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a88...', 6, v='126....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a96...', 6, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1aa4...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ab2...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ac0...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ace...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1adc...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1aea...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1af8...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1b06...', 6, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1b14...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c74...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c82...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c90...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c9e...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cac...', 6, v='121....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cba...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cc8...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cd6...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ce4...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cf2...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d01...', 6, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d0f...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d1d...', 6, v='123....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d2b...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d39...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d47...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d55...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d63...', 6, v='123....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d71...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d7f...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d8d...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d9b...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1da9...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1db7...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1dc5...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1dd3...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1de1...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1df0...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1dfe...', 6, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e0c...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e1a...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e28...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e36...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e44...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e52...', 6, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e60...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e6e...', 6, v='122....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e7c...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e8a...', 6, v='123....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e98...', 6, v='122....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ea6...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1eb4...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ec2...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ed1...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1edf...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1eed...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1efb...', 6, v='123....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f09...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f17...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f25...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f33...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f41...', 6, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f4f...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f5d...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f6b...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f79...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f87...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f95...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fa4...', 6, v='126....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fb2...', 6, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fc0...', 6, v='126....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fce...', 6, v='126....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fdc...', 6, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fea...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ff8...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2006...', 6, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2014...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2022...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2030...', 6, v='120....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='203e...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='204c...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='205a...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2068...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2076...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2084...', 6, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2093...', 6, v='121....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20a1...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20af...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20bd...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20cb...', 6, v='119....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20d9...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20e7...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20f5...', 6, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2103...', 6, v='126....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2111...', 6, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='211f...', 6, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='212d...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='213b...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2149...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2157...', 6, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2165...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2174...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2182...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2190...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='219e...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21ac...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21ba...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21c8...', 6, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21d6...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21e4...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21f2...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2200...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='220e...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='221c...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='222a...', 6, v='120....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2238...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2247...', 6, v='126....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2255...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2263...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2271...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='227f...', 6, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='228d...', 6, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='229b...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22a9...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22b7...', 6, v='119....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22c5...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22d3...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22e1...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22ef...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22fd...', 6, v='120....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='230b...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2319...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2327...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2336...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2344...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2352...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2360...', 6, v='120....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='236e...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='237c...', 6, v='119....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='238a...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2398...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23a6...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23b4...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23c2...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23d0...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23de...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23ec...', 6, v='119....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23fa...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2408...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2417...', 6, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2425...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2433...', 6, v='118....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2441...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='244f...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='246b...', 6, v='118....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2479...', 6, v='118....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2487...', 6, v='115....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2495...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24a3...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24b1...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24bf...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24cd...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24db...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24e9...', 6, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24f8...', 6, v='124....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2506...', 6, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2514...', 6, v='125....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2522...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2530...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='253e...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='254c...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='255a...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2568...', 6, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2576...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2584...', 6, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2592...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25a0...', 6, v='119....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25ae...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25bc...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25ca...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25d9...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25e7...', 6, v='119....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25f5...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2603...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2611...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='261f...', 6, v='120....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='262d...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='263b...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2649...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2657...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2665...', 6, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2673...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2681...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='268f...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='269d...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26ab...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26ba...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26c8...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26d6...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26e4...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26f2...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2700...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='270e...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='271c...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='272a...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2738...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2746...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2754...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2762...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2770...', 6, v='121....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='277e...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.endElementNs(par, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(par, NULL, NULL, 0, 2, 0, memind='9808...', 4, h='3dc1...', 8)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='0" v...', 1, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e08"...', 3, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c32...', 4, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2a3c...', 4, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3835...', 4, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4645...', 4, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5455...', 4, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6265...', 4, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7075...', 4, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7e85...', 4, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8c96...', 4, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9aa5...', 4, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a8b6...', 4, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b6c5...', 4, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c4d7...', 4, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d30b...', 4, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e0f6...', 4, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ef06...', 4, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fd17...', 4, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10b2...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1193...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1274...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1355...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1436...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1518...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15f8...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16d9...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17ba...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='189b...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='197c...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a5d...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1b3e...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c1f...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d00...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1de1...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ec2...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fa3...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2084...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2165...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2246...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2327...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2408...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24e9...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25ca...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26ab...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='278c...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='286d...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='294e...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2a30...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2b10...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2bf1...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2cd2...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2db3...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2e94...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2f75...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3056...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3137...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3219...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='32f9...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='33da...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='34bb...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='359d...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='367d...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='375e...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3840...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3921...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3a01...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3ae2...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3bc3...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3ca4...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3d85...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3e66...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3f48...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4028...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4109...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='41ea...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='42cb...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='43ac...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='448d...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='456e...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='464f...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='480f...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='48f0...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='49d1...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4ab4...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4b95...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4c76...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4d57...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4e38...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4f19...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4ffa...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='50dd...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='51bc...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='529d...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='537e...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5460...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5540...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5621...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5702...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='57e3...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='58c4...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='59a7...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5a86...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5b67...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5c48...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5d29...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5e0a...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5eeb...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5fcc...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='60ad...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='618e...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='626f...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6350...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6431...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6512...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='65f3...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='66d4...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='67b5...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6896...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6978...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6a58...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6b39...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6c1a...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6cfb...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6ddc...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6ebd...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6f9e...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='707f...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7160...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7241...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7322...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7403...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='74e4...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='75c5...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='76a6...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7787...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7868...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7948...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7a29...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7b0a...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7beb...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7ccc...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7dad...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7e8f...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7f70...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8051...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8132...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8213...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='82f4...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='83d5...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='84b6...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8597...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8678...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8759...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='883a...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='891b...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='89fc...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8add...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8bbe...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8c9f...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8d80...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8e61...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8f42...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9023...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9104...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='91e5...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='92c6...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='93a8...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9488...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9569...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='964a...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='972b...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='980c...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='98ed...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='99ce...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9aaf...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9b90...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9c71...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9d52...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9e33...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9f14...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9ff5...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a0d6...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a1b7...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a298...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a379...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a45a...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a53b...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a61c...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a6fd...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a7e0...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a8c0...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a9a0...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='aa81...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ab62...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ac43...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ad24...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ae05...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='aee6...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='afc7...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b0a8...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b26a...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b34b...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b42c...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b50d...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b5ee...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b6cf...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b7b0...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b891...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b972...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ba53...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bb34...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bc15...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bcf6...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bdd8...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='beb8...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bf99...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c07a...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c15b...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c23c...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c31d...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c3fe...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c4df...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c5c0...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c6a1...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c782...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c863...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c944...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ca25...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cb06...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cbe7...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ccc8...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cda9...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ce8a...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cf6b...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d04c...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d12d...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d20e...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d2f0...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d3d0...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d4b1...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d592...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d673...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d754...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d835...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d916...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d9f7...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dad8...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dbb9...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dc9a...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dd7b...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='de5c...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='df3d...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e01d...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e0fe...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e1df...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e2c0...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e3a1...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e482...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e563...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e644...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e725...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e806...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e8e7...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e9c8...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='eaa9...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='eb8a...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ec6b...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ed4c...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ee2d...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ef0e...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='eff0...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f0d1...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f1b2...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f293...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f374...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f455...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f536...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f617...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f6f8...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f7d9...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f8ba...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f99b...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fa7c...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fb5d...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fc3e...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fd1f...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fe00...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fee1...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ffc2...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='100a...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1018...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1026...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1034...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1042...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1050...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='105e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='106c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='107a...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1088...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1096...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10a4...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10b2...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10c1...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10cf...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10dd...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10eb...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10f9...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1107...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1115...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1123...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1131...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='113f...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='114d...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='115b...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1169...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1177...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1185...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1193...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11a2...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11b0...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11be...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11cc...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11da...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11e8...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11f6...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1205...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1213...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1221...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='122f...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='123d...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='124b...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1259...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1267...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1276...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1283...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1291...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='129f...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12ad...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12bb...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12c9...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12d7...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12e5...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12f3...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1301...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='130f...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='131d...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='132b...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1339...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1347...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1355...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1364...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1372...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1380...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='138e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='139c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13aa...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13b8...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13c6...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13d4...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13e2...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13f0...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13fe...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='140c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='141a...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1428...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1436...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1445...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1453...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1461...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='146f...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='147d...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='148b...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1499...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14a7...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14b5...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14c3...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14d1...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14df...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14ed...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14fb...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1509...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1517...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1526...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1534...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1542...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1550...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='155e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='156c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='157a...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1588...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1596...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15a4...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15b2...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15c0...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15ce...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15dc...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15ea...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15f8...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1607...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1615...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1623...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1631...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='163f...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='164d...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='165b...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1669...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1677...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1685...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1693...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16a1...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16af...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16bd...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16cb...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16d9...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16e8...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16f6...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1704...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1712...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1720...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='172e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='173c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='174a...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1758...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1766...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1774...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1782...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1790...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='179e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17ac...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17ba...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17c9...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17d7...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17e5...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17f3...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1801...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='180f...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='181d...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='182b...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1839...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1847...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1855...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1863...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1871...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='187f...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='188d...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='189c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18b8...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18c6...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18d4...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18e2...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18f0...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18fe...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='190c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='191a...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1928...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1936...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1944...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1952...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1960...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='196e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='197c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='198b...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1999...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19b5...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19c3...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19d1...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19df...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19ed...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19ee...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19fb...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a09...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a17...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a25...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a33...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a41...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a4f...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a5e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a6c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a7a...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a88...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a96...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1aa4...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ab2...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ac0...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ace...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1adc...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1aea...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1af8...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1b06...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1b14...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c74...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c82...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c90...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c9e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cac...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cba...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cc8...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cd6...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ce4...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cf2...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d01...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d0f...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d1d...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d2b...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d39...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d47...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d55...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d63...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d71...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d7f...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d8d...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d9b...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1da9...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1db7...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1dc5...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1dd3...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1de1...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1df0...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1dfe...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e0c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e1a...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e28...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e36...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e44...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e52...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e60...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e6e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e7c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e8a...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e98...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ea6...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1eb4...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ec2...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ed1...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1edf...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1eed...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1efb...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f09...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f17...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f25...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f33...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f41...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f4f...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f5d...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f6b...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f79...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f87...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f95...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fa4...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fb2...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fc0...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fce...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fdc...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fea...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ff8...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2006...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2014...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2022...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2030...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='203e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='204c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='205a...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2068...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2076...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2084...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2093...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20a1...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20af...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20bd...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20cb...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20d9...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20e7...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20f5...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2103...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2111...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='211f...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='212d...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='213b...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2149...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2157...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2165...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2174...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2182...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2190...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='219e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21ac...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21ba...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21c8...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21d6...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21e4...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21f2...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2200...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='220e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='221c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='222a...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2238...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2247...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2255...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2263...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2271...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='227f...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='228d...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='229b...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22a9...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22b7...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22c5...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22d3...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22e1...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22ef...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22fd...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='230b...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2319...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2327...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2336...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2344...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2352...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2360...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='236e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='237c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='238a...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2398...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23a6...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23b4...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23c2...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23d0...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23de...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23ec...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23fa...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2408...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2417...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2425...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2433...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2441...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='244f...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='246b...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2479...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2487...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2495...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24a3...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24b1...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24bf...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24cd...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24db...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24e9...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24f8...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2506...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2514...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2522...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2530...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='253e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='254c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='255a...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2568...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2576...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2584...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2592...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25a0...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25ae...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25bc...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25ca...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25d9...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25e7...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25f5...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2603...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2611...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='261f...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='262d...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='263b...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2649...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2657...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2665...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2673...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2681...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='268f...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='269d...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26ab...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26ba...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26c8...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26d6...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26e4...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26f2...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2700...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='270e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='271c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='272a...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2738...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2746...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2754...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2762...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2770...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='277e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.endElementNs(par, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(par, NULL, NULL, 0, 2, 0, memind='9804...', 4, h='3dc1...', 8)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='0" v...', 1, v='113....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e08"...', 3, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c32...', 4, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2a3c...', 4, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3835...', 4, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4645...', 4, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5455...', 4, v='109....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6265...', 4, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7075...', 4, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7e85...', 4, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8c96...', 4, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9aa5...', 4, v='120....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a8b6...', 4, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b6c5...', 4, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c4d7...', 4, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d30b...', 4, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e0f6...', 4, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ef06...', 4, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fd17...', 4, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10b2...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1193...', 5, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1274...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1355...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1436...', 5, v='125....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1518...', 5, v='127....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15f8...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16d9...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17ba...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='189b...', 5, v='120....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='197c...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a5d...', 5, v='126....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1b3e...', 5, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c1f...', 5, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d00...', 5, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1de1...', 5, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ec2...', 5, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fa3...', 5, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2084...', 5, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2165...', 5, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2246...', 5, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2327...', 5, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2408...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24e9...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25ca...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26ab...', 5, v='119....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='278c...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='286d...', 5, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='294e...', 5, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2a30...', 5, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2b10...', 5, v='117....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2bf1...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2cd2...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2db3...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2e94...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2f75...', 5, v='112....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3056...', 5, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3137...', 5, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3219...', 5, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='32f9...', 5, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='33da...', 5, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='34bb...', 5, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='359d...', 5, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='367d...', 5, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='375e...', 5, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3840...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3921...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3a01...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3ae2...', 5, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3bc3...', 5, v='120....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3ca4...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3d85...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3e66...', 5, v='122....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3f48...', 5, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4028...', 5, v='123....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4109...', 5, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='41ea...', 5, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='42cb...', 5, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='43ac...', 5, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='448d...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='456e...', 5, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='464f...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='480f...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='48f0...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='49d1...', 5, v='118....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4ab4...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4b95...', 5, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4c76...', 5, v='115....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4d57...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4e38...', 5, v='118....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4f19...', 5, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4ffa...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='50dd...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='51bc...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='529d...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='537e...', 5, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5460...', 5, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5540...', 5, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5621...', 5, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5702...', 5, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='57e3...', 5, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='58c4...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='59a7...', 5, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5a86...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5b67...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5c48...', 5, v='115....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5d29...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5e0a...', 5, v='120....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5eeb...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5fcc...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='60ad...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='618e...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='626f...', 5, v='119....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6350...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6431...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6512...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='65f3...', 5, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='66d4...', 5, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='67b5...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6896...', 5, v='122....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6978...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6a58...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6b39...', 5, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6c1a...', 5, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6cfb...', 5, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6ddc...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6ebd...', 5, v='115....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6f9e...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='707f...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7160...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7241...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7322...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7403...', 5, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='74e4...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='75c5...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='76a6...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7787...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7868...', 5, v='113....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7948...', 5, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7a29...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7b0a...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7beb...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7ccc...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7dad...', 5, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7e8f...', 5, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7f70...', 5, v='123....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8051...', 5, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8132...', 5, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8213...', 5, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='82f4...', 5, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='83d5...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='84b6...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8597...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8678...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8759...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='883a...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='891b...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='89fc...', 5, v='119....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8add...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8bbe...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8c9f...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8d80...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8e61...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8f42...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9023...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9104...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='91e5...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='92c6...', 5, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='93a8...', 5, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9488...', 5, v='123....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9569...', 5, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='964a...', 5, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='972b...', 5, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='980c...', 5, v='119....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='98ed...', 5, v='122....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='99ce...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9aaf...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9b90...', 5, v='115....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9c71...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9d52...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9e33...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9f14...', 5, v='117....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9ff5...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a0d6...', 5, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a1b7...', 5, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a298...', 5, v='118....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a379...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a45a...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a53b...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a61c...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a6fd...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a7e0...', 5, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a8c0...', 5, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a9a0...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='aa81...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ab62...', 5, v='120....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ac43...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ad24...', 5, v='117....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ae05...', 5, v='114....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='aee6...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='afc7...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b0a8...', 5, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b26a...', 5, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b34b...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b42c...', 5, v='115....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b50d...', 5, v='115....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b5ee...', 5, v='114....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b6cf...', 5, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b7b0...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b891...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b972...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ba53...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bb34...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bc15...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bcf6...', 5, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bdd8...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='beb8...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bf99...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c07a...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c15b...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c23c...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c31d...', 5, v='115....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c3fe...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c4df...', 5, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c5c0...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c6a1...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c782...', 5, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c863...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c944...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ca25...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cb06...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cbe7...', 5, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ccc8...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cda9...', 5, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ce8a...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cf6b...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d04c...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d12d...', 5, v='121....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d20e...', 5, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d2f0...', 5, v='126....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d3d0...', 5, v='119....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d4b1...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d592...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d673...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d754...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d835...', 5, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d916...', 5, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d9f7...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dad8...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dbb9...', 5, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dc9a...', 5, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dd7b...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='de5c...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='df3d...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e01d...', 5, v='117....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e0fe...', 5, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e1df...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e2c0...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e3a1...', 5, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e482...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e563...', 5, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e644...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e725...', 5, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e806...', 5, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e8e7...', 5, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e9c8...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='eaa9...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='eb8a...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ec6b...', 5, v='113....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ed4c...', 5, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ee2d...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ef0e...', 5, v='118....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='eff0...', 5, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f0d1...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f1b2...', 5, v='117....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f293...', 5, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f374...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f455...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f536...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f617...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f6f8...', 5, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f7d9...', 5, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f8ba...', 5, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f99b...', 5, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fa7c...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fb5d...', 5, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fc3e...', 5, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fd1f...', 5, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fe00...', 5, v='126....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fee1...', 5, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ffc2...', 5, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='100a...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1018...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1026...', 6, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1034...', 6, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1042...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1050...', 6, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='105e...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='106c...', 6, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='107a...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1088...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1096...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10a4...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10b2...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10c1...', 6, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10cf...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10dd...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10eb...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10f9...', 6, v='121....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1107...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1115...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1123...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1131...', 6, v='122....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='113f...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='114d...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='115b...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1169...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1177...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1185...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1193...', 6, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11a2...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11b0...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11be...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11cc...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11da...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11e8...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11f6...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1205...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1213...', 6, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1221...', 6, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='122f...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='123d...', 6, v='120....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='124b...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1259...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1267...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1276...', 6, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1283...', 6, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1291...', 6, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='129f...', 6, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12ad...', 6, v='124....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12bb...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12c9...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12d7...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12e5...', 6, v='119....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12f3...', 6, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1301...', 6, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='130f...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='131d...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='132b...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1339...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1347...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1355...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1364...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1372...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1380...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='138e...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='139c...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13aa...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13b8...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13c6...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13d4...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13e2...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13f0...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13fe...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='140c...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='141a...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1428...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1436...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1445...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1453...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1461...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='146f...', 6, v='0.11...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='147d...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='148b...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1499...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14a7...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14b5...', 6, v='0.11...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14c3...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14d1...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14df...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14ed...', 6, v='0.11...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14fb...', 6, v='0.11...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1509...', 6, v='0.11...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1517...', 6, v='0.11...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1526...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1534...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1542...', 6, v='0.11...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1550...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='155e...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='156c...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='157a...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1588...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1596...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15a4...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15b2...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15c0...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15ce...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15dc...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15ea...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15f8...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1607...', 6, v='0.11...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1615...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1623...', 6, v='0.11...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1631...', 6, v='0.11...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='163f...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='164d...', 6, v='0.11...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='165b...', 6, v='0.11...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1669...', 6, v='0.11...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1677...', 6, v='0.11...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1685...', 6, v='0.11...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1693...', 6, v='0.11...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16a1...', 6, v='0.11...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16af...', 6, v='0.11...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16bd...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16cb...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16d9...', 6, v='0.11...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16e8...', 6, v='0.11...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16f6...', 6, v='0.11...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1704...', 6, v='0.11...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1712...', 6, v='0.11...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1720...', 6, v='0.11...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='172e...', 6, v='0.11...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='173c...', 6, v='0.11...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='174a...', 6, v='0.11...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1758...', 6, v='0.10...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1766...', 6, v='117....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1774...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1782...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1790...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='179e...', 6, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17ac...', 6, v='126....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17ba...', 6, v='128....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17c9...', 6, v='126....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17d7...', 6, v='126....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17e5...', 6, v='126....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17f3...', 6, v='126....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1801...', 6, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='180f...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='181d...', 6, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='182b...', 6, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1839...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1847...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1855...', 6, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1863...', 6, v='125....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1871...', 6, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='187f...', 6, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='188d...', 6, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='189c...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18b8...', 6, v='116....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18c6...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18d4...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18e2...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18f0...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18fe...', 6, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='190c...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='191a...', 6, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1928...', 6, v='126....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1936...', 6, v='126....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1944...', 6, v='125....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1952...', 6, v='123....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1960...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='196e...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='197c...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='198b...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1999...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19b5...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19c3...', 6, v='121....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19d1...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19df...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19ed...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19ee...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19fb...', 6, v='115....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a09...', 6, v='118....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a17...', 6, v='119....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a25...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a33...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a41...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a4f...', 6, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a5e...', 6, v='126....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a6c...', 6, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a7a...', 6, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a88...', 6, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a96...', 6, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1aa4...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ab2...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ac0...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ace...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1adc...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1aea...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1af8...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1b06...', 6, v='123....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1b14...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c74...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c82...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c90...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c9e...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cac...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cba...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cc8...', 6, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cd6...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ce4...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cf2...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d01...', 6, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d0f...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d1d...', 6, v='123....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d2b...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d39...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d47...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d55...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d63...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d71...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d7f...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d8d...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d9b...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1da9...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1db7...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1dc5...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1dd3...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1de1...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1df0...', 6, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1dfe...', 6, v='115....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e0c...', 6, v='117....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e1a...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e28...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e36...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e44...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e52...', 6, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e60...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e6e...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e7c...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e8a...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e98...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ea6...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1eb4...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ec2...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ed1...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1edf...', 6, v='122....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1eed...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1efb...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f09...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f17...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f25...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f33...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f41...', 6, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f4f...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f5d...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f6b...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f79...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f87...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f95...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fa4...', 6, v='126....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fb2...', 6, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fc0...', 6, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fce...', 6, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fdc...', 6, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fea...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ff8...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2006...', 6, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2014...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2022...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2030...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='203e...', 6, v='119....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='204c...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='205a...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2068...', 6, v='119....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2076...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2084...', 6, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2093...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20a1...', 6, v='120....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20af...', 6, v='119....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20bd...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20cb...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20d9...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20e7...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20f5...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2103...', 6, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2111...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='211f...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='212d...', 6, v='123....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='213b...', 6, v='121....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2149...', 6, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2157...', 6, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2165...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2174...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2182...', 6, v='118....', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2190...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='219e...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21ac...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21ba...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21c8...', 6, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21d6...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21e4...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21f2...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2200...', 6, v='120....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='220e...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='221c...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='222a...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2238...', 6, v='123....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2247...', 6, v='125....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2255...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2263...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2271...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='227f...', 6, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='228d...', 6, v='115....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='229b...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22a9...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22b7...', 6, v='119....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22c5...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22d3...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22e1...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22ef...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22fd...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='230b...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2319...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2327...', 6, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2336...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2344...', 6, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2352...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2360...', 6, v='119....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='236e...', 6, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='237c...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='238a...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2398...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23a6...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23b4...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23c2...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23d0...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23de...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23ec...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23fa...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2408...', 6, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2417...', 6, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2425...', 6, v='117....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2433...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2441...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='244f...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='246b...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2479...', 6, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2487...', 6, v='114....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2495...', 6, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24a3...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24b1...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24bf...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24cd...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24db...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24e9...', 6, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24f8...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2506...', 6, v='124....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2514...', 6, v='124....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2522...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2530...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='253e...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='254c...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='255a...', 6, v='118....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2568...', 6, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2576...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2584...', 6, v='116....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2592...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25a0...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25ae...', 6, v='118....', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25bc...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25ca...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25d9...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25e7...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25f5...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2603...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2611...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='261f...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='262d...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='263b...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2649...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2657...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2665...', 6, v='123....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2673...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2681...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='268f...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='269d...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26ab...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26ba...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26c8...', 6, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26d6...', 6, v='117....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26e4...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26f2...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2700...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='270e...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='271c...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='272a...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2738...', 6, v='119....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2746...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2754...', 6, v='121....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2762...', 6, v='118....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2770...', 6, v='120....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='277e...', 6, v='122....', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.endElementNs(par, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(par, NULL, NULL, 0, 2, 0, memind='4406...', 6, h='3dc1...', 8)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='0" v...', 1, v='-127...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e08"...', 3, v='-148...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c32...', 4, v='-156...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2a3c...', 4, v='-164...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3835...', 4, v='-144...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4645...', 4, v='-127...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5455...', 4, v='-104...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6265...', 4, v='-169...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7075...', 4, v='-176...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7e85...', 4, v='-166...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8c96...', 4, v='-206...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9aa5...', 4, v='-199...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a8b6...', 4, v='-192...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b6c5...', 4, v='-201...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c4d7...', 4, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d30b...', 4, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e0f6...', 4, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ef06...', 4, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fd17...', 4, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10b2...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1193...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1274...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1355...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1436...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1518...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15f8...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16d9...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17ba...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='189b...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='197c...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a5d...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1b3e...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c1f...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d00...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1de1...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ec2...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fa3...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2084...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2165...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2246...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2327...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2408...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24e9...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25ca...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26ab...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='278c...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='286d...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='294e...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2a30...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2b10...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2bf1...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2cd2...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2db3...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2e94...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2f75...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3056...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3137...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3219...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='32f9...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='33da...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='34bb...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='359d...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='367d...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='375e...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3840...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3921...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3a01...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3ae2...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3bc3...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3ca4...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3d85...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3e66...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3f48...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4028...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4109...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='41ea...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='42cb...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='43ac...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='448d...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='456e...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='464f...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='480f...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='48f0...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='49d1...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4ab4...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4b95...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4c76...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4d57...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4e38...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4f19...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4ffa...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='50dd...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='51bc...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='529d...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='537e...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5460...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5540...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5621...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5702...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='57e3...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='58c4...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='59a7...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5a86...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5b67...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5c48...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5d29...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5e0a...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5eeb...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5fcc...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='60ad...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='618e...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='626f...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6350...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6431...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6512...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='65f3...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='66d4...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='67b5...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6896...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6978...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6a58...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6b39...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6c1a...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6cfb...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6ddc...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6ebd...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6f9e...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='707f...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7160...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7241...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7322...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7403...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='74e4...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='75c5...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='76a6...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7787...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7868...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7948...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7a29...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7b0a...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7beb...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7ccc...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7dad...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7e8f...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7f70...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8051...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8132...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8213...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='82f4...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='83d5...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='84b6...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8597...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8678...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8759...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='883a...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='891b...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='89fc...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8add...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8bbe...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8c9f...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8d80...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8e61...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8f42...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9023...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9104...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='91e5...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='92c6...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='93a8...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9488...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9569...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='964a...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='972b...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='980c...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='98ed...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='99ce...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9aaf...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9b90...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9c71...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9d52...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9e33...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9f14...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9ff5...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a0d6...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a1b7...', 5, v='-184...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a298...', 5, v='-631...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a379...', 5, v='1564...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a45a...', 5, v='-66"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a53b...', 5, v='-393...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a61c...', 5, v='-691...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a6fd...', 5, v='-883...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a7e0...', 5, v='-157...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a8c0...', 5, v='-220...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a9a0...', 5, v='109"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='aa81...', 5, v='-420...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ab62...', 5, v='-859...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ac43...', 5, v='-628...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ad24...', 5, v='516"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ae05...', 5, v='1839...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='aee6...', 5, v='293"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='afc7...', 5, v='1185...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b0a8...', 5, v='3946...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b26a...', 5, v='4230...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b34b...', 5, v='3689...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b42c...', 5, v='248"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b50d...', 5, v='430"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b5ee...', 5, v='1026...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b6cf...', 5, v='-526...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b7b0...', 5, v='-258...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b891...', 5, v='-65"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b972...', 5, v='-489...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ba53...', 5, v='-842...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bb34...', 5, v='1082...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bc15...', 5, v='310"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bcf6...', 5, v='-111...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bdd8...', 5, v='3632...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='beb8...', 5, v='513"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bf99...', 5, v='214"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c07a...', 5, v='-292...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c15b...', 5, v='-127...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c23c...', 5, v='495"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c31d...', 5, v='1815...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c3fe...', 5, v='818"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c4df...', 5, v='1539...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c5c0...', 5, v='680"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c6a1...', 5, v='712"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c782...', 5, v='1280...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c863...', 5, v='397"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c944...', 5, v='493"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ca25...', 5, v='250"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cb06...', 5, v='785"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cbe7...', 5, v='-201...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ccc8...', 5, v='2156...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cda9...', 5, v='2937...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ce8a...', 5, v='2107...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cf6b...', 5, v='2824...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d04c...', 5, v='2269...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d12d...', 5, v='1441...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d20e...', 5, v='-297...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d2f0...', 5, v='-228...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d3d0...', 5, v='-118...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d4b1...', 5, v='-964...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d592...', 5, v='-442...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d673...', 5, v='261"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d754...', 5, v='1309...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d835...', 5, v='-849...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d916...', 5, v='178"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d9f7...', 5, v='1111...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dad8...', 5, v='2750...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dbb9...', 5, v='2769...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dc9a...', 5, v='2973...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dd7b...', 5, v='1327...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='de5c...', 5, v='454"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='df3d...', 5, v='199"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e01d...', 5, v='167"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e0fe...', 5, v='556"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e1df...', 5, v='416"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e2c0...', 5, v='-370...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e3a1...', 5, v='-115...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e482...', 5, v='93"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e563...', 5, v='-843...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e644...', 5, v='171"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e725...', 5, v='-646...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e806...', 5, v='-723...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e8e7...', 5, v='2665...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e9c8...', 5, v='837"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='eaa9...', 5, v='698"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='eb8a...', 5, v='1097...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ec6b...', 5, v='2649...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ed4c...', 5, v='-495...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ee2d...', 5, v='1165...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ef0e...', 5, v='542"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='eff0...', 5, v='1871...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f0d1...', 5, v='979"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f1b2...', 5, v='1210...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f293...', 5, v='-356...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f374...', 5, v='1654...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f455...', 5, v='1368...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f536...', 5, v='1462...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f617...', 5, v='1612...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f6f8...', 5, v='1309...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f7d9...', 5, v='1886...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f8ba...', 5, v='1136...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f99b...', 5, v='1169...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fa7c...', 5, v='1403...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fb5d...', 5, v='1316...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fc3e...', 5, v='-104...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fd1f...', 5, v='-119...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fe00...', 5, v='-160...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fee1...', 5, v='-199...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ffc2...', 5, v='-252...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='100a...', 6, v='585"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1018...', 6, v='1069...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1026...', 6, v='1973...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1034...', 6, v='1831...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1042...', 6, v='1127...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1050...', 6, v='1767...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='105e...', 6, v='1343...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='106c...', 6, v='1564...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='107a...', 6, v='849"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1088...', 6, v='805"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1096...', 6, v='1093...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10a4...', 6, v='880"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10b2...', 6, v='1254...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10c1...', 6, v='2664...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10cf...', 6, v='1368...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10dd...', 6, v='1009...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10eb...', 6, v='208"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10f9...', 6, v='22"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1107...', 6, v='1142...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1115...', 6, v='286"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1123...', 6, v='-116...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1131...', 6, v='712"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='113f...', 6, v='227"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='114d...', 6, v='236"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='115b...', 6, v='372"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1169...', 6, v='1441...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1177...', 6, v='2015...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1185...', 6, v='1211...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1193...', 6, v='1284...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11a2...', 6, v='369"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11b0...', 6, v='-310...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11be...', 6, v='-802...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11cc...', 6, v='781"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11da...', 6, v='491"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11e8...', 6, v='1023...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11f6...', 6, v='516"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1205...', 6, v='1"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1213...', 6, v='1"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1221...', 6, v='2"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='122f...', 6, v='1"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='123d...', 6, v='1"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='124b...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1259...', 6, v='1"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1267...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1276...', 6, v='-1"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1283...', 6, v='-1"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1291...', 6, v='-1"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='129f...', 6, v='-1"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12ad...', 6, v='-1"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12bb...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12c9...', 6, v='1"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12d7...', 6, v='1"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12e5...', 6, v='2"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12f3...', 6, v='1"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1301...', 6, v='1"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='130f...', 6, v='1"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='131d...', 6, v='1"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='132b...', 6, v='1"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1339...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1347...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1355...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1364...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1372...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1380...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='138e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='139c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13aa...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13b8...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13c6...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13d4...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13e2...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13f0...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13fe...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='140c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='141a...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1428...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1436...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1445...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1453...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1461...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='146f...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='147d...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='148b...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1499...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14a7...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14b5...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14c3...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14d1...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14df...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14ed...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14fb...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1509...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1517...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1526...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1534...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1542...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1550...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='155e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='156c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='157a...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1588...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1596...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15a4...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15b2...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15c0...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15ce...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15dc...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15ea...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15f8...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1607...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1615...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1623...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1631...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='163f...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='164d...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='165b...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1669...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1677...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1685...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1693...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16a1...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16af...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16bd...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16cb...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16d9...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16e8...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16f6...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1704...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1712...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1720...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='172e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='173c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='174a...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1758...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1766...', 6, v='2274...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1774...', 6, v='1775...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1782...', 6, v='1153...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1790...', 6, v='769"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='179e...', 6, v='-846...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17ac...', 6, v='-236...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17ba...', 6, v='-296...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17c9...', 6, v='-251...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17d7...', 6, v='-244...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17e5...', 6, v='-286...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17f3...', 6, v='-227...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1801...', 6, v='-125...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='180f...', 6, v='-716...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='181d...', 6, v='-148...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='182b...', 6, v='-200...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1839...', 6, v='-105...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1847...', 6, v='-978...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1855...', 6, v='-126...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1863...', 6, v='-317...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1871...', 6, v='-266...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='187f...', 6, v='-254...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='188d...', 6, v='-237...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='189c...', 6, v='-112...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18b8...', 6, v='1219...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18c6...', 6, v='-106...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18d4...', 6, v='-151...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18e2...', 6, v='-128...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18f0...', 6, v='-190...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18fe...', 6, v='-162...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='190c...', 6, v='-778...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='191a...', 6, v='-173...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1928...', 6, v='-174...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1936...', 6, v='-187...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1944...', 6, v='-120...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1952...', 6, v='-211...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1960...', 6, v='1619...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='196e...', 6, v='-764...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='197c...', 6, v='-827...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='198b...', 6, v='40"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1999...', 6, v='-199...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19b5...', 6, v='-967...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19c3...', 6, v='-680...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19d1...', 6, v='-385...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19df...', 6, v='-241...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19ed...', 6, v='371"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19ee...', 6, v='471"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19fb...', 6, v='61"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a09...', 6, v='-244...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a17...', 6, v='-344...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a25...', 6, v='-386...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a33...', 6, v='-165...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a41...', 6, v='-227...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a4f...', 6, v='-413...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a5e...', 6, v='-373...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a6c...', 6, v='-265...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a7a...', 6, v='-328...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a88...', 6, v='-337...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a96...', 6, v='-270...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1aa4...', 6, v='-198...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ab2...', 6, v='-797...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ac0...', 6, v='-204...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ace...', 6, v='-279...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1adc...', 6, v='-193...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1aea...', 6, v='-209...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1af8...', 6, v='-221...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1b06...', 6, v='-267...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1b14...', 6, v='-253...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c74...', 6, v='453"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c82...', 6, v='-157...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c90...', 6, v='1143...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c9e...', 6, v='-146...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cac...', 6, v='-100...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cba...', 6, v='-140...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cc8...', 6, v='2949...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cd6...', 6, v='2229...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ce4...', 6, v='1022...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cf2...', 6, v='-162...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d01...', 6, v='-183...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d0f...', 6, v='-211...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d1d...', 6, v='-767...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d2b...', 6, v='-792...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d39...', 6, v='173"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d47...', 6, v='776"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d55...', 6, v='1249...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d63...', 6, v='-957...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d71...', 6, v='-911...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d7f...', 6, v='-243...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d8d...', 6, v='-65"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d9b...', 6, v='-308...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1da9...', 6, v='-811...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1db7...', 6, v='-806...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1dc5...', 6, v='-952...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1dd3...', 6, v='-716...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1de1...', 6, v='-161...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1df0...', 6, v='-191...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1dfe...', 6, v='-180...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e0c...', 6, v='-222...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e1a...', 6, v='-227...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e28...', 6, v='-231...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e36...', 6, v='-228...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e44...', 6, v='-233...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e52...', 6, v='-186...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e60...', 6, v='-213...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e6e...', 6, v='-220...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e7c...', 6, v='-296...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e8a...', 6, v='-449...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e98...', 6, v='-142...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ea6...', 6, v='-422...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1eb4...', 6, v='-365...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ec2...', 6, v='-581...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ed1...', 6, v='-263...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1edf...', 6, v='-325...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1eed...', 6, v='-142...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1efb...', 6, v='-355...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f09...', 6, v='-310...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f17...', 6, v='496"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f25...', 6, v='660"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f33...', 6, v='1246...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f41...', 6, v='2889...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f4f...', 6, v='1532...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f5d...', 6, v='-143...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f6b...', 6, v='-518...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f79...', 6, v='225"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f87...', 6, v='-166...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f95...', 6, v='-233...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fa4...', 6, v='-172...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fb2...', 6, v='-148...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fc0...', 6, v='-151...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fce...', 6, v='-476...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fdc...', 6, v='-193...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fea...', 6, v='128"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ff8...', 6, v='376"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2006...', 6, v='2872...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2014...', 6, v='408"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2022...', 6, v='1923...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2030...', 6, v='1830...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='203e...', 6, v='1798...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='204c...', 6, v='334"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='205a...', 6, v='1260...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2068...', 6, v='1815...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2076...', 6, v='2272...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2084...', 6, v='262"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2093...', 6, v='-387...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20a1...', 6, v='-613...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20af...', 6, v='-251...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20bd...', 6, v='-885...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20cb...', 6, v='551"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20d9...', 6, v='48"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20e7...', 6, v='-982...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20f5...', 6, v='-161...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2103...', 6, v='-112...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2111...', 6, v='-381...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='211f...', 6, v='-441...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='212d...', 6, v='71"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='213b...', 6, v='1020...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2149...', 6, v='760"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2157...', 6, v='-319...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2165...', 6, v='-114...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2174...', 6, v='302"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2182...', 6, v='-319...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2190...', 6, v='-582...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='219e...', 6, v='408"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21ac...', 6, v='1031...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21ba...', 6, v='1139...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21c8...', 6, v='2082...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21d6...', 6, v='-120...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21e4...', 6, v='622"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21f2...', 6, v='456"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2200...', 6, v='-736...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='220e...', 6, v='-818...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='221c...', 6, v='1684...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='222a...', 6, v='307"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2238...', 6, v='-801...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2247...', 6, v='-125...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2255...', 6, v='3308...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2263...', 6, v='506"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2271...', 6, v='639"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='227f...', 6, v='1963...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='228d...', 6, v='2867...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='229b...', 6, v='-831...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22a9...', 6, v='-270...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22b7...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22c5...', 6, v='2010...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22d3...', 6, v='3408...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22e1...', 6, v='3190...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22ef...', 6, v='-187...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22fd...', 6, v='-225...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='230b...', 6, v='531"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2319...', 6, v='-823...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2327...', 6, v='62"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2336...', 6, v='1079...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2344...', 6, v='1547...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2352...', 6, v='900"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2360...', 6, v='112"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='236e...', 6, v='1780...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='237c...', 6, v='1407...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='238a...', 6, v='298"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2398...', 6, v='565"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23a6...', 6, v='-311...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23b4...', 6, v='-657...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23c2...', 6, v='168"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23d0...', 6, v='647"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23de...', 6, v='1427...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23ec...', 6, v='829"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23fa...', 6, v='-5"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2408...', 6, v='1197...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2417...', 6, v='3751...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2425...', 6, v='2991...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2433...', 6, v='2801...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2441...', 6, v='-118...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='244f...', 6, v='-828...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='246b...', 6, v='-799...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2479...', 6, v='57"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2487...', 6, v='4601...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2495...', 6, v='1911...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24a3...', 6, v='799"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24b1...', 6, v='-972...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24bf...', 6, v='-708...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24cd...', 6, v='-790...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24db...', 6, v='-490...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24e9...', 6, v='-131...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24f8...', 6, v='-825...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2506...', 6, v='-101...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2514...', 6, v='-117...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2522...', 6, v='-35"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2530...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='253e...', 6, v='1352...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='254c...', 6, v='1059...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='255a...', 6, v='1290...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2568...', 6, v='2079...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2576...', 6, v='3618...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2584...', 6, v='-468...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2592...', 6, v='-247...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25a0...', 6, v='-556...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25ae...', 6, v='189"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25bc...', 6, v='260"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25ca...', 6, v='816"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25d9...', 6, v='2489...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25e7...', 6, v='2732...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25f5...', 6, v='2234...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2603...', 6, v='57"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2611...', 6, v='1219...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='261f...', 6, v='632"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='262d...', 6, v='-136...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='263b...', 6, v='38"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2649...', 6, v='-980...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2657...', 6, v='-150...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2665...', 6, v='-211...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2673...', 6, v='-161...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2681...', 6, v='-131...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='268f...', 6, v='-432...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='269d...', 6, v='309"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26ab...', 6, v='685"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26ba...', 6, v='1692...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26c8...', 6, v='1899...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26d6...', 6, v='3622...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26e4...', 6, v='2709...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26f2...', 6, v='3037...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2700...', 6, v='2898...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='270e...', 6, v='3251...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='271c...', 6, v='186"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='272a...', 6, v='-636...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2738...', 6, v='-421...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2746...', 6, v='-729...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2754...', 6, v='-978...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2762...', 6, v='2670...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2770...', 6, v='1255...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='277e...', 6, v='-496...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.endElementNs(par, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(par, NULL, NULL, 0, 2, 0, memind='4246...', 6, h='3dc1...', 8)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='0" v...', 1, v='-431...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e08"...', 3, v='-416...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c32...', 4, v='-410...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2a3c...', 4, v='-409...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3835...', 4, v='-398...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4645...', 4, v='-393...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5455...', 4, v='-443...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6265...', 4, v='-532...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7075...', 4, v='-629...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7e85...', 4, v='-733...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8c96...', 4, v='-754...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9aa5...', 4, v='-724...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a8b6...', 4, v='-686...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b6c5...', 4, v='-645...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c4d7...', 4, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d30b...', 4, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e0f6...', 4, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ef06...', 4, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fd17...', 4, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10b2...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1193...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1274...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1355...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1436...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1518...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15f8...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16d9...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17ba...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='189b...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='197c...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a5d...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1b3e...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c1f...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d00...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1de1...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ec2...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fa3...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2084...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2165...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2246...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2327...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2408...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24e9...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25ca...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26ab...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='278c...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='286d...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='294e...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2a30...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2b10...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2bf1...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2cd2...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2db3...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2e94...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2f75...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3056...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3137...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3219...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='32f9...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='33da...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='34bb...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='359d...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='367d...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='375e...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3840...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3921...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3a01...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3ae2...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3bc3...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3ca4...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3d85...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3e66...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3f48...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4028...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4109...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='41ea...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='42cb...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='43ac...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='448d...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='456e...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='464f...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='480f...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='48f0...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='49d1...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4ab4...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4b95...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4c76...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4d57...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4e38...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4f19...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4ffa...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='50dd...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='51bc...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='529d...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='537e...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5460...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5540...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5621...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5702...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='57e3...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='58c4...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='59a7...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5a86...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5b67...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5c48...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5d29...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5e0a...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5eeb...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5fcc...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='60ad...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='618e...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='626f...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6350...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6431...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6512...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='65f3...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='66d4...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='67b5...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6896...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6978...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6a58...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6b39...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6c1a...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6cfb...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6ddc...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6ebd...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6f9e...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='707f...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7160...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7241...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7322...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7403...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='74e4...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='75c5...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='76a6...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7787...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7868...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7948...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7a29...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7b0a...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7beb...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7ccc...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7dad...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7e8f...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7f70...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8051...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8132...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8213...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='82f4...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='83d5...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='84b6...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8597...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8678...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8759...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='883a...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='891b...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='89fc...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8add...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8bbe...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8c9f...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8d80...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8e61...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8f42...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9023...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9104...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='91e5...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='92c6...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='93a8...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9488...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9569...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='964a...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='972b...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='980c...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='98ed...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='99ce...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9aaf...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9b90...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9c71...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9d52...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9e33...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9f14...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9ff5...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a0d6...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a1b7...', 5, v='-646...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a298...', 5, v='-354...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a379...', 5, v='-986...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a45a...', 5, v='697"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a53b...', 5, v='776"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a61c...', 5, v='925"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a6fd...', 5, v='125"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a7e0...', 5, v='456"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a8c0...', 5, v='903"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a9a0...', 5, v='278"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='aa81...', 5, v='27"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ab62...', 5, v='43"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ac43...', 5, v='173"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ad24...', 5, v='947"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ae05...', 5, v='728"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='aee6...', 5, v='-452...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='afc7...', 5, v='-117...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b0a8...', 5, v='23"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b26a...', 5, v='182"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b34b...', 5, v='-152...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b42c...', 5, v='-423...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b50d...', 5, v='-705...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b5ee...', 5, v='-790...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b6cf...', 5, v='-157...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b7b0...', 5, v='-202...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b891...', 5, v='-175...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b972...', 5, v='-172...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ba53...', 5, v='-190...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bb34...', 5, v='-741...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bc15...', 5, v='-812...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bcf6...', 5, v='-891...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bdd8...', 5, v='652"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='beb8...', 5, v='411"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bf99...', 5, v='516"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c07a...', 5, v='398"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c15b...', 5, v='382"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c23c...', 5, v='470"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c31d...', 5, v='591"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c3fe...', 5, v='267"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c4df...', 5, v='770"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c5c0...', 5, v='164"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c6a1...', 5, v='438"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c782...', 5, v='-43"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c863...', 5, v='72"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c944...', 5, v='249"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ca25...', 5, v='201"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cb06...', 5, v='115"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cbe7...', 5, v='-425...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ccc8...', 5, v='-229...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cda9...', 5, v='-284...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ce8a...', 5, v='-247...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cf6b...', 5, v='-135...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d04c...', 5, v='-54"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d12d...', 5, v='96"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d20e...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d2f0...', 5, v='16"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d3d0...', 5, v='598"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d4b1...', 5, v='721"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d592...', 5, v='818"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d673...', 5, v='1067...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d754...', 5, v='1245...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d835...', 5, v='-117...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d916...', 5, v='-721...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d9f7...', 5, v='-150...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dad8...', 5, v='-208...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dbb9...', 5, v='-255...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dc9a...', 5, v='-234...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dd7b...', 5, v='-292...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='de5c...', 5, v='-271...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='df3d...', 5, v='-285...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e01d...', 5, v='-292...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e0fe...', 5, v='-280...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e1df...', 5, v='-303...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e2c0...', 5, v='-401...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e3a1...', 5, v='-391...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e482...', 5, v='-341...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e563...', 5, v='-344...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e644...', 5, v='-256...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e725...', 5, v='-213...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e806...', 5, v='-176...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e8e7...', 5, v='-465...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e9c8...', 5, v='-702...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='eaa9...', 5, v='-647...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='eb8a...', 5, v='-676...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ec6b...', 5, v='-509...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ed4c...', 5, v='-215...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ee2d...', 5, v='-235...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ef0e...', 5, v='-317...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='eff0...', 5, v='-403...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f0d1...', 5, v='-433...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f1b2...', 5, v='-465...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f293...', 5, v='-466...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f374...', 5, v='-434...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f455...', 5, v='-457...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f536...', 5, v='-492...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f617...', 5, v='-460...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f6f8...', 5, v='-486...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f7d9...', 5, v='-430...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f8ba...', 5, v='-389...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f99b...', 5, v='-378...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fa7c...', 5, v='-298...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fb5d...', 5, v='-309...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fc3e...', 5, v='-333...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fd1f...', 5, v='-268...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fe00...', 5, v='-252...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fee1...', 5, v='-207...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ffc2...', 5, v='-198...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='100a...', 6, v='-178...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1018...', 6, v='-179...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1026...', 6, v='-207...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1034...', 6, v='-269...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1042...', 6, v='-393...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1050...', 6, v='-440...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='105e...', 6, v='-436...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='106c...', 6, v='-469...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='107a...', 6, v='-430...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1088...', 6, v='-392...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1096...', 6, v='-410...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10a4...', 6, v='-418...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10b2...', 6, v='-434...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10c1...', 6, v='-416...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10cf...', 6, v='-445...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10dd...', 6, v='-413...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10eb...', 6, v='-449...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10f9...', 6, v='-388...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1107...', 6, v='-329...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1115...', 6, v='-286...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1123...', 6, v='-266...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1131...', 6, v='-177...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='113f...', 6, v='-181...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='114d...', 6, v='-182...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='115b...', 6, v='-180...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1169...', 6, v='-159...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1177...', 6, v='-205...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1185...', 6, v='-296...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1193...', 6, v='-362...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11a2...', 6, v='-483...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11b0...', 6, v='-429...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11be...', 6, v='-525...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11cc...', 6, v='-440...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11da...', 6, v='-432...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11e8...', 6, v='-442...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11f6...', 6, v='-395...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1205...', 6, v='-4"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1213...', 6, v='-4"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1221...', 6, v='-4"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='122f...', 6, v='-3"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='123d...', 6, v='-3"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='124b...', 6, v='-3"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1259...', 6, v='-2"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1267...', 6, v='-2"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1276...', 6, v='-2"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1283...', 6, v='-2"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1291...', 6, v='-2"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='129f...', 6, v='-2"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12ad...', 6, v='-2"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12bb...', 6, v='-1"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12c9...', 6, v='-2"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12d7...', 6, v='-2"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12e5...', 6, v='-3"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12f3...', 6, v='-2"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1301...', 6, v='-4"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='130f...', 6, v='-3"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='131d...', 6, v='-3"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='132b...', 6, v='-3"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1339...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1347...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1355...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1364...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1372...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1380...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='138e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='139c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13aa...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13b8...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13c6...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13d4...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13e2...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13f0...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13fe...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='140c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='141a...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1428...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1436...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1445...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1453...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1461...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='146f...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='147d...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='148b...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1499...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14a7...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14b5...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14c3...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14d1...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14df...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14ed...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14fb...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1509...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1517...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1526...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1534...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1542...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1550...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='155e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='156c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='157a...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1588...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1596...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15a4...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15b2...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15c0...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15ce...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15dc...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15ea...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15f8...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1607...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1615...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1623...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1631...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='163f...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='164d...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='165b...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1669...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1677...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1685...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1693...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16a1...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16af...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16bd...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16cb...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16d9...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16e8...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16f6...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1704...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1712...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1720...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='172e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='173c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='174a...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1758...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1766...', 6, v='-686...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1774...', 6, v='-679...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1782...', 6, v='-725...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1790...', 6, v='-673...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='179e...', 6, v='-603...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17ac...', 6, v='-589...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17ba...', 6, v='-606...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17c9...', 6, v='-548...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17d7...', 6, v='-544...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17e5...', 6, v='-533...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17f3...', 6, v='-498...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1801...', 6, v='-519...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='180f...', 6, v='-631...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='181d...', 6, v='-683...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='182b...', 6, v='-785...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1839...', 6, v='-135...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1847...', 6, v='-133...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1855...', 6, v='-127...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1863...', 6, v='-118...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1871...', 6, v='-123...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='187f...', 6, v='-117...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='188d...', 6, v='-126...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='189c...', 6, v='-118...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18b8...', 6, v='-747...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18c6...', 6, v='-812...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18d4...', 6, v='-769...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18e2...', 6, v='-653...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18f0...', 6, v='-617...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18fe...', 6, v='-566...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='190c...', 6, v='-448...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='191a...', 6, v='-430...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1928...', 6, v='-426...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1936...', 6, v='-411...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1944...', 6, v='-410...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1952...', 6, v='-451...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1960...', 6, v='-513...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='196e...', 6, v='-603...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='197c...', 6, v='-639...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='198b...', 6, v='-589...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1999...', 6, v='-669...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19b5...', 6, v='-660...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19c3...', 6, v='-615...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19d1...', 6, v='-612...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19df...', 6, v='-622...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19ed...', 6, v='-604...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19ee...', 6, v='-600...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19fb...', 6, v='-229...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a09...', 6, v='-254...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a17...', 6, v='-308...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a25...', 6, v='-326...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a33...', 6, v='-226...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a41...', 6, v='-215...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a4f...', 6, v='-153...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a5e...', 6, v='-167...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a6c...', 6, v='-960...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a7a...', 6, v='-112...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a88...', 6, v='-106...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a96...', 6, v='-505...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1aa4...', 6, v='-536...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ab2...', 6, v='-991...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ac0...', 6, v='-181...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ace...', 6, v='-257...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1adc...', 6, v='-284...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1aea...', 6, v='-260...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1af8...', 6, v='-292...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1b06...', 6, v='-211...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1b14...', 6, v='-207...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c74...', 6, v='354"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c82...', 6, v='438"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c90...', 6, v='3408...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c9e...', 6, v='3269...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cac...', 6, v='3655...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cba...', 6, v='3521...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cc8...', 6, v='5431...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cd6...', 6, v='5560...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ce4...', 6, v='5660...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cf2...', 6, v='5623...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d01...', 6, v='5896...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d0f...', 6, v='6656...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d1d...', 6, v='6647...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d2b...', 6, v='6733...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d39...', 6, v='6914...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d47...', 6, v='6873...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d55...', 6, v='6691...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d63...', 6, v='5814...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d71...', 6, v='5617...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d7f...', 6, v='5608...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d8d...', 6, v='-323...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d9b...', 6, v='-365...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1da9...', 6, v='-362...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1db7...', 6, v='-344...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1dc5...', 6, v='-360...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1dd3...', 6, v='-373...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1de1...', 6, v='-599...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1df0...', 6, v='-671...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1dfe...', 6, v='-658...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e0c...', 6, v='-676...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e1a...', 6, v='-680...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e28...', 6, v='-652...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e36...', 6, v='-617...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e44...', 6, v='-567...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e52...', 6, v='-491...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e60...', 6, v='-491...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e6e...', 6, v='-480...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e7c...', 6, v='-198...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e8a...', 6, v='-181...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e98...', 6, v='-183...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ea6...', 6, v='-225...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1eb4...', 6, v='-232...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ec2...', 6, v='-268...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ed1...', 6, v='-267...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1edf...', 6, v='-277...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1eed...', 6, v='-268...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1efb...', 6, v='-265...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f09...', 6, v='-255...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f17...', 6, v='-235...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f25...', 6, v='-231...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f33...', 6, v='-258...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f41...', 6, v='-281...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f4f...', 6, v='-318...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f5d...', 6, v='-357...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f6b...', 6, v='-354...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f79...', 6, v='-314...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f87...', 6, v='-334...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f95...', 6, v='-313...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fa4...', 6, v='-280...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fb2...', 6, v='-250...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fc0...', 6, v='-249...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fce...', 6, v='-215...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fdc...', 6, v='-213...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fea...', 6, v='-215...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ff8...', 6, v='-249...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2006...', 6, v='-236...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2014...', 6, v='-351...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2022...', 6, v='-456...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2030...', 6, v='-534...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='203e...', 6, v='-605...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='204c...', 6, v='-579...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='205a...', 6, v='-534...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2068...', 6, v='-539...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2076...', 6, v='-597...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2084...', 6, v='-609...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2093...', 6, v='-677...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20a1...', 6, v='-637...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20af...', 6, v='-547...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20bd...', 6, v='-538...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20cb...', 6, v='-460...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20d9...', 6, v='-431...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20e7...', 6, v='-405...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20f5...', 6, v='-386...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2103...', 6, v='-348...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2111...', 6, v='-311...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='211f...', 6, v='-301...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='212d...', 6, v='-294...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='213b...', 6, v='-281...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2149...', 6, v='-364...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2157...', 6, v='-449...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2165...', 6, v='-579...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2174...', 6, v='-619...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2182...', 6, v='-617...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2190...', 6, v='-610...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='219e...', 6, v='-621...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21ac...', 6, v='-589...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21ba...', 6, v='-598...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21c8...', 6, v='-563...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21d6...', 6, v='-621...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21e4...', 6, v='-578...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21f2...', 6, v='-572...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2200...', 6, v='-553...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='220e...', 6, v='-540...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='221c...', 6, v='-460...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='222a...', 6, v='-387...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2238...', 6, v='-361...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2247...', 6, v='-329...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2255...', 6, v='-168...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2263...', 6, v='-207...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2271...', 6, v='-205...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='227f...', 6, v='-167...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='228d...', 6, v='-179...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='229b...', 6, v='-348...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22a9...', 6, v='-391...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22b7...', 6, v='-457...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22c5...', 6, v='-478...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22d3...', 6, v='-445...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22e1...', 6, v='-469...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22ef...', 6, v='-483...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22fd...', 6, v='-465...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='230b...', 6, v='-445...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2319...', 6, v='-539...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2327...', 6, v='-553...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2336...', 6, v='-586...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2344...', 6, v='-522...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2352...', 6, v='-516...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2360...', 6, v='-525...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='236e...', 6, v='-438...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='237c...', 6, v='-421...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='238a...', 6, v='-401...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2398...', 6, v='-322...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23a6...', 6, v='-331...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23b4...', 6, v='-318...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23c2...', 6, v='-297...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23d0...', 6, v='-294...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23de...', 6, v='-293...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23ec...', 6, v='-357...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23fa...', 6, v='-454...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2408...', 6, v='-511...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2417...', 6, v='-573...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2425...', 6, v='-651...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2433...', 6, v='-677...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2441...', 6, v='-675...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='244f...', 6, v='-636...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='246b...', 6, v='-654...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2479...', 6, v='-627...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2487...', 6, v='-540...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2495...', 6, v='-579...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24a3...', 6, v='-564...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24b1...', 6, v='-574...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24bf...', 6, v='-544...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24cd...', 6, v='-544...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24db...', 6, v='-455...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24e9...', 6, v='-401...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24f8...', 6, v='-348...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2506...', 6, v='-361...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2514...', 6, v='-355...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2522...', 6, v='-340...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2530...', 6, v='-360...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='253e...', 6, v='-402...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='254c...', 6, v='-418...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='255a...', 6, v='-499...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2568...', 6, v='-581...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2576...', 6, v='-559...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2584...', 6, v='-152...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2592...', 6, v='-869...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25a0...', 6, v='-457...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25ae...', 6, v='-631...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25bc...', 6, v='-610...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25ca...', 6, v='-575...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25d9...', 6, v='-576...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25e7...', 6, v='-564...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25f5...', 6, v='-524...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2603...', 6, v='-556...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2611...', 6, v='-487...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='261f...', 6, v='-461...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='262d...', 6, v='-461...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='263b...', 6, v='-361...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2649...', 6, v='-346...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2657...', 6, v='-356...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2665...', 6, v='-367...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2673...', 6, v='-361...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2681...', 6, v='-362...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='268f...', 6, v='-386...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='269d...', 6, v='-396...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26ab...', 6, v='-388...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26ba...', 6, v='-438...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26c8...', 6, v='-427...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26d6...', 6, v='-396...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26e4...', 6, v='-400...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26f2...', 6, v='-356...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2700...', 6, v='-387...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='270e...', 6, v='-356...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='271c...', 6, v='-469...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='272a...', 6, v='-519...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2738...', 6, v='-521...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2746...', 6, v='-503...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2754...', 6, v='-496...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2762...', 6, v='-404...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2770...', 6, v='-370...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='277e...', 6, v='-321...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.endElementNs(par, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(par, NULL, NULL, 0, 2, 0, memind='4382...', 6, h='3dc1...', 8)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='0" v...', 1, v='-110...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e08"...', 3, v='-128...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c32...', 4, v='-135...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2a3c...', 4, v='-142...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3835...', 4, v='-124...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4645...', 4, v='-110...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5455...', 4, v='-909...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6265...', 4, v='-147...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7075...', 4, v='-152...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7e85...', 4, v='-143...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8c96...', 4, v='-178...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9aa5...', 4, v='-175...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a8b6...', 4, v='-168...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b6c5...', 4, v='-174...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c4d7...', 4, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d30b...', 4, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e0f6...', 4, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ef06...', 4, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fd17...', 4, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10b2...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1193...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1274...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1355...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1436...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1518...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15f8...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16d9...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17ba...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='189b...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='197c...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a5d...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1b3e...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c1f...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d00...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1de1...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ec2...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fa3...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2084...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2165...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2246...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2327...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2408...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24e9...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25ca...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26ab...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='278c...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='286d...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='294e...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2a30...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2b10...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2bf1...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2cd2...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2db3...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2e94...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2f75...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3056...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3137...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3219...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='32f9...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='33da...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='34bb...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='359d...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='367d...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='375e...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3840...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3921...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3a01...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3ae2...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3bc3...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3ca4...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3d85...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3e66...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3f48...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4028...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4109...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='41ea...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='42cb...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='43ac...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='448d...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='456e...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='464f...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='480f...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='48f0...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='49d1...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4ab4...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4b95...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4c76...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4d57...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4e38...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4f19...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4ffa...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='50dd...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='51bc...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='529d...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='537e...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5460...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5540...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5621...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5702...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='57e3...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='58c4...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='59a7...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5a86...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5b67...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5c48...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5d29...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5e0a...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5eeb...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5fcc...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='60ad...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='618e...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='626f...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6350...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6431...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6512...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='65f3...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='66d4...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='67b5...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6896...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6978...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6a58...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6b39...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6c1a...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6cfb...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6ddc...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6ebd...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6f9e...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='707f...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7160...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7241...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7322...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7403...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='74e4...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='75c5...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='76a6...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7787...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7868...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7948...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7a29...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7b0a...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7beb...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7ccc...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7dad...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7e8f...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7f70...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8051...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8132...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8213...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='82f4...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='83d5...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='84b6...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8597...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8678...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8759...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='883a...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='891b...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='89fc...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8add...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8bbe...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8c9f...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8d80...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8e61...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8f42...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9023...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9104...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='91e5...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='92c6...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='93a8...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9488...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9569...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='964a...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='972b...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='980c...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='98ed...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='99ce...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9aaf...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9b90...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9c71...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9d52...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9e33...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9f14...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9ff5...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a0d6...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a1b7...', 5, v='-159...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a298...', 5, v='-500...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a379...', 5, v='1379...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a45a...', 5, v='-45"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a53b...', 5, v='-346...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a61c...', 5, v='-580...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a6fd...', 5, v='-752...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a7e0...', 5, v='-136...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a8c0...', 5, v='-190...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a9a0...', 5, v='101"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='aa81...', 5, v='-366...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ab62...', 5, v='-740...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ac43...', 5, v='-550...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ad24...', 5, v='432"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ae05...', 5, v='1595...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='aee6...', 5, v='275"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='afc7...', 5, v='1019...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b0a8...', 5, v='3444...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b26a...', 5, v='3629...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b34b...', 5, v='3203...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b42c...', 5, v='215"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b50d...', 5, v='380"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b5ee...', 5, v='890"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b6cf...', 5, v='-446...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b7b0...', 5, v='-200...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b891...', 5, v='-44"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b972...', 5, v='-424...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ba53...', 5, v='-718...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bb34...', 5, v='946"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bc15...', 5, v='276"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bcf6...', 5, v='-944...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bdd8...', 5, v='3129...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='beb8...', 5, v='453"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bf99...', 5, v='194"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c07a...', 5, v='-246...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c15b...', 5, v='-122...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c23c...', 5, v='430"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c31d...', 5, v='1582...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c3fe...', 5, v='720"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c4df...', 5, v='1333...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c5c0...', 5, v='588"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c6a1...', 5, v='642"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c782...', 5, v='1096...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c863...', 5, v='313"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c944...', 5, v='374"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ca25...', 5, v='204"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cb06...', 5, v='692"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cbe7...', 5, v='-196...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ccc8...', 5, v='1888...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cda9...', 5, v='2502...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ce8a...', 5, v='1840...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cf6b...', 5, v='2437...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d04c...', 5, v='1930...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d12d...', 5, v='1219...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d20e...', 5, v='-250...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d2f0...', 5, v='-197...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d3d0...', 5, v='-102...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d4b1...', 5, v='-107...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d592...', 5, v='-388...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d673...', 5, v='229"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d754...', 5, v='1131...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d835...', 5, v='-726...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d916...', 5, v='166"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d9f7...', 5, v='965"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dad8...', 5, v='2341...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dbb9...', 5, v='2354...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dc9a...', 5, v='2565...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dd7b...', 5, v='1136...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='de5c...', 5, v='367"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='df3d...', 5, v='173"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e01d...', 5, v='156"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e0fe...', 5, v='460"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e1df...', 5, v='358"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e2c0...', 5, v='-308...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e3a1...', 5, v='-100...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e482...', 5, v='93"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e563...', 5, v='-723...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e644...', 5, v='147"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e725...', 5, v='-551...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e806...', 5, v='-626...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e8e7...', 5, v='2316...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e9c8...', 5, v='714"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='eaa9...', 5, v='600"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='eb8a...', 5, v='953"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ec6b...', 5, v='2267...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ed4c...', 5, v='-403...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ee2d...', 5, v='999"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ef0e...', 5, v='475"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='eff0...', 5, v='1663...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f0d1...', 5, v='829"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f1b2...', 5, v='1055...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f293...', 5, v='-314...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f374...', 5, v='1431...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f455...', 5, v='1201...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f536...', 5, v='1280...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f617...', 5, v='1431...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f6f8...', 5, v='1145...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f7d9...', 5, v='1635...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f8ba...', 5, v='957"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f99b...', 5, v='1019...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fa7c...', 5, v='1219...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fb5d...', 5, v='1143...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fc3e...', 5, v='-893...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fd1f...', 5, v='-101...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fe00...', 5, v='-138...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fee1...', 5, v='-182...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ffc2...', 5, v='-220...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='100a...', 6, v='502"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1018...', 6, v='940"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1026...', 6, v='1719...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1034...', 6, v='1592...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1042...', 6, v='960"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1050...', 6, v='1537...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='105e...', 6, v='1177...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='106c...', 6, v='1337...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='107a...', 6, v='737"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1088...', 6, v='723"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1096...', 6, v='917"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10a4...', 6, v='794"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10b2...', 6, v='1075...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10c1...', 6, v='2328...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10cf...', 6, v='1192...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10dd...', 6, v='867"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10eb...', 6, v='184"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10f9...', 6, v='12"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1107...', 6, v='978"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1115...', 6, v='256"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1123...', 6, v='-100...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1131...', 6, v='614"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='113f...', 6, v='205"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='114d...', 6, v='195"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='115b...', 6, v='316"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1169...', 6, v='1241...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1177...', 6, v='1748...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1185...', 6, v='1046...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1193...', 6, v='1099...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11a2...', 6, v='309"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11b0...', 6, v='-202...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11be...', 6, v='-722...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11cc...', 6, v='680"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11da...', 6, v='440"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11e8...', 6, v='870"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11f6...', 6, v='475"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1205...', 6, v='1"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1213...', 6, v='1"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1221...', 6, v='2"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='122f...', 6, v='1"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='123d...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='124b...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1259...', 6, v='1"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1267...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1276...', 6, v='-1"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1283...', 6, v='-1"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1291...', 6, v='-1"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='129f...', 6, v='-1"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12ad...', 6, v='-1"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12bb...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12c9...', 6, v='1"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12d7...', 6, v='1"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12e5...', 6, v='1"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12f3...', 6, v='1"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1301...', 6, v='1"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='130f...', 6, v='1"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='131d...', 6, v='1"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='132b...', 6, v='1"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1339...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1347...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1355...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1364...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1372...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1380...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='138e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='139c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13aa...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13b8...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13c6...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13d4...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13e2...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13f0...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13fe...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='140c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='141a...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1428...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1436...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1445...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1453...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1461...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='146f...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='147d...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='148b...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1499...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14a7...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14b5...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14c3...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14d1...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14df...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14ed...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14fb...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1509...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1517...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1526...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1534...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1542...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1550...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='155e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='156c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='157a...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1588...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1596...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15a4...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15b2...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15c0...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15ce...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15dc...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15ea...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15f8...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1607...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1615...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1623...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1631...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='163f...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='164d...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='165b...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1669...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1677...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1685...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1693...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16a1...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16af...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16bd...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16cb...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16d9...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16e8...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16f6...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1704...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1712...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1720...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='172e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='173c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='174a...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1758...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1766...', 6, v='1959...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1774...', 6, v='1506...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1782...', 6, v='1027...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1790...', 6, v='677"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='179e...', 6, v='-759...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17ac...', 6, v='-204...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17ba...', 6, v='-255...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17c9...', 6, v='-217...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17d7...', 6, v='-212...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17e5...', 6, v='-248...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17f3...', 6, v='-198...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1801...', 6, v='-107...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='180f...', 6, v='-524...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='181d...', 6, v='-136...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='182b...', 6, v='-175...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1839...', 6, v='-893...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1847...', 6, v='-845...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1855...', 6, v='-114...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1863...', 6, v='-271...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1871...', 6, v='-229...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='187f...', 6, v='-220...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='188d...', 6, v='-203...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='189c...', 6, v='-997...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18b8...', 6, v='1048...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18c6...', 6, v='-955...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18d4...', 6, v='-133...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18e2...', 6, v='-112...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18f0...', 6, v='-162...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18fe...', 6, v='-141...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='190c...', 6, v='-671...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='191a...', 6, v='-150...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1928...', 6, v='-151...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1936...', 6, v='-161...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1944...', 6, v='-103...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1952...', 6, v='-192...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1960...', 6, v='1397...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='196e...', 6, v='-627...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='197c...', 6, v='-711...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='198b...', 6, v='20"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1999...', 6, v='-130...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19b5...', 6, v='-843...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19c3...', 6, v='-642...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19d1...', 6, v='-320...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19df...', 6, v='-210...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19ed...', 6, v='295"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19ee...', 6, v='417"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19fb...', 6, v='37"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a09...', 6, v='-210...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a17...', 6, v='-298...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a25...', 6, v='-332...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a33...', 6, v='-143...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a41...', 6, v='-198...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a4f...', 6, v='-357...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a5e...', 6, v='-323...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a6c...', 6, v='-228...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a7a...', 6, v='-284...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a88...', 6, v='-294...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a96...', 6, v='-234...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1aa4...', 6, v='-171...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ab2...', 6, v='-668...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ac0...', 6, v='-176...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ace...', 6, v='-241...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1adc...', 6, v='-172...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1aea...', 6, v='-183...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1af8...', 6, v='-188...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1b06...', 6, v='-234...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1b14...', 6, v='-217...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c74...', 6, v='374"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c82...', 6, v='-132...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c90...', 6, v='993"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c9e...', 6, v='-150...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cac...', 6, v='-843...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cba...', 6, v='-119...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cc8...', 6, v='2577...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cd6...', 6, v='1582...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ce4...', 6, v='909"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cf2...', 6, v='-140...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d01...', 6, v='-159...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d0f...', 6, v='-186...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d1d...', 6, v='-658...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d2b...', 6, v='-679...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d39...', 6, v='89"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d47...', 6, v='680"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d55...', 6, v='1095...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d63...', 6, v='-832...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d71...', 6, v='-785...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d7f...', 6, v='-228...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d8d...', 6, v='-40"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d9b...', 6, v='-280...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1da9...', 6, v='-697...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1db7...', 6, v='-697...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1dc5...', 6, v='-811...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1dd3...', 6, v='-629...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1de1...', 6, v='-140...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1df0...', 6, v='-166...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1dfe...', 6, v='-157...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e0c...', 6, v='-192...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e1a...', 6, v='-197...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e28...', 6, v='-201...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e36...', 6, v='-198...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e44...', 6, v='-200...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e52...', 6, v='-161...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e60...', 6, v='-185...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e6e...', 6, v='-190...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e7c...', 6, v='-251...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e8a...', 6, v='-386...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e98...', 6, v='-121...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ea6...', 6, v='-365...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1eb4...', 6, v='-313...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ec2...', 6, v='-506...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ed1...', 6, v='-232...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1edf...', 6, v='-288...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1eed...', 6, v='-121...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1efb...', 6, v='-310...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f09...', 6, v='-245...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f17...', 6, v='439"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f25...', 6, v='609"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f33...', 6, v='1078...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f41...', 6, v='2491...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f4f...', 6, v='1327...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f5d...', 6, v='-115...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f6b...', 6, v='-442...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f79...', 6, v='203"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f87...', 6, v='-143...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f95...', 6, v='-201...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fa4...', 6, v='-149...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fb2...', 6, v='-128...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fc0...', 6, v='-130...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fce...', 6, v='-409...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fdc...', 6, v='-162...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fea...', 6, v='90"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ff8...', 6, v='319"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2006...', 6, v='2483...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2014...', 6, v='357"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2022...', 6, v='1681...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2030...', 6, v='1572...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='203e...', 6, v='1575...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='204c...', 6, v='302"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='205a...', 6, v='1076...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2068...', 6, v='1555...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2076...', 6, v='1971...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2084...', 6, v='239"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2093...', 6, v='-351...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20a1...', 6, v='-527...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20af...', 6, v='-215...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20bd...', 6, v='-782...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20cb...', 6, v='452"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20d9...', 6, v='60"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20e7...', 6, v='-848...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20f5...', 6, v='-138...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2103...', 6, v='-989...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2111...', 6, v='-325...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='211f...', 6, v='-382...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='212d...', 6, v='60"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='213b...', 6, v='884"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2149...', 6, v='659"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2157...', 6, v='-264...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2165...', 6, v='-990...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2174...', 6, v='289"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2182...', 6, v='-292...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2190...', 6, v='-542...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='219e...', 6, v='366"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21ac...', 6, v='909"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21ba...', 6, v='992"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21c8...', 6, v='1808...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21d6...', 6, v='-104...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21e4...', 6, v='543"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21f2...', 6, v='377"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2200...', 6, v='-619...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='220e...', 6, v='-712...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='221c...', 6, v='1459...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='222a...', 6, v='257"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2238...', 6, v='-696...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2247...', 6, v='-108...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2255...', 6, v='2873...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2263...', 6, v='421"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2271...', 6, v='557"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='227f...', 6, v='1696...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='228d...', 6, v='2480...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='229b...', 6, v='-707...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22a9...', 6, v='-237...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22b7...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22c5...', 6, v='1730...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22d3...', 6, v='2990...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22e1...', 6, v='2746...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22ef...', 6, v='-174...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22fd...', 6, v='-194...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='230b...', 6, v='485"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2319...', 6, v='-729...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2327...', 6, v='70"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2336...', 6, v='907"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2344...', 6, v='1297...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2352...', 6, v='776"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2360...', 6, v='123"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='236e...', 6, v='1557...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='237c...', 6, v='1208...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='238a...', 6, v='253"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2398...', 6, v='508"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23a6...', 6, v='-274...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23b4...', 6, v='-571...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23c2...', 6, v='146"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23d0...', 6, v='567"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23de...', 6, v='1222...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23ec...', 6, v='733"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23fa...', 6, v='8"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2408...', 6, v='1041...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2417...', 6, v='3222...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2425...', 6, v='2576...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2433...', 6, v='2422...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2441...', 6, v='-103...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='244f...', 6, v='-746...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='246b...', 6, v='-661...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2479...', 6, v='45"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2487...', 6, v='3983...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2495...', 6, v='1694...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24a3...', 6, v='709"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24b1...', 6, v='-844...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24bf...', 6, v='-605...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24cd...', 6, v='-661...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24db...', 6, v='-436...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24e9...', 6, v='-115...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24f8...', 6, v='-716...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2506...', 6, v='-877...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2514...', 6, v='-102...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2522...', 6, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2530...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='253e...', 6, v='1185...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='254c...', 6, v='884"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='255a...', 6, v='1103...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2568...', 6, v='1789...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2576...', 6, v='3132...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2584...', 6, v='-403...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2592...', 6, v='-211...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25a0...', 6, v='-498...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25ae...', 6, v='174"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25bc...', 6, v='210"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25ca...', 6, v='710"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25d9...', 6, v='2127...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25e7...', 6, v='2386...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25f5...', 6, v='1916...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2603...', 6, v='53"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2611...', 6, v='1070...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='261f...', 6, v='564"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='262d...', 6, v='-118...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='263b...', 6, v='34"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2649...', 6, v='-847...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2657...', 6, v='-131...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2665...', 6, v='-184...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2673...', 6, v='-140...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2681...', 6, v='-112...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='268f...', 6, v='-372...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='269d...', 6, v='269"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26ab...', 6, v='572"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26ba...', 6, v='1413...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26c8...', 6, v='1586...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26d6...', 6, v='3161...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26e4...', 6, v='2347...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26f2...', 6, v='2627...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2700...', 6, v='2502...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='270e...', 6, v='2818...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='271c...', 6, v='158"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='272a...', 6, v='-545...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2738...', 6, v='-370...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2746...', 6, v='-624...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2754...', 6, v='-847...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2762...', 6, v='2315...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2770...', 6, v='1099...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='277e...', 6, v='-417...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.endElementNs(par, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(par, NULL, NULL, 0, 2, 0, memind='4222...', 6, h='3dc1...', 8)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='0" v...', 1, v='-430...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e08"...', 3, v='-416...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c32...', 4, v='-409...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2a3c...', 4, v='-408...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3835...', 4, v='-396...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4645...', 4, v='-396...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5455...', 4, v='-441...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6265...', 4, v='-535...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7075...', 4, v='-631...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7e85...', 4, v='-729...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8c96...', 4, v='-751...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9aa5...', 4, v='-735...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a8b6...', 4, v='-689...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b6c5...', 4, v='-646...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c4d7...', 4, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d30b...', 4, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e0f6...', 4, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ef06...', 4, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fd17...', 4, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10b2...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1193...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1274...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1355...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1436...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1518...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15f8...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16d9...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17ba...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='189b...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='197c...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a5d...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1b3e...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c1f...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d00...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1de1...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ec2...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fa3...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2084...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2165...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2246...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2327...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2408...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24e9...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25ca...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26ab...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='278c...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='286d...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='294e...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2a30...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2b10...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2bf1...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2cd2...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2db3...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2e94...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2f75...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3056...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3137...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3219...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='32f9...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='33da...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='34bb...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='359d...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='367d...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='375e...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3840...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3921...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3a01...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3ae2...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3bc3...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3ca4...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3d85...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3e66...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='3f48...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4028...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4109...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='41ea...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='42cb...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='43ac...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='448d...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='456e...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='464f...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='480f...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='48f0...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='49d1...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4ab4...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4b95...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4c76...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4d57...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4e38...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4f19...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='4ffa...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='50dd...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='51bc...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='529d...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='537e...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5460...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5540...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5621...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5702...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='57e3...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='58c4...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='59a7...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5a86...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5b67...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5c48...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5d29...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5e0a...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5eeb...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5fcc...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='60ad...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='618e...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='626f...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6350...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6431...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6512...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='65f3...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='66d4...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='67b5...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6896...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6978...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6a58...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6b39...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6c1a...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6cfb...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6ddc...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6ebd...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='6f9e...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='707f...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7160...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7241...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7322...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7403...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='74e4...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='75c5...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='76a6...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7787...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7868...', 5, v='-6"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7948...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7a29...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7b0a...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7beb...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7ccc...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7dad...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7e8f...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7f70...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8051...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8132...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8213...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='82f4...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='83d5...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='84b6...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8597...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8678...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8759...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='883a...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='891b...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='89fc...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8add...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8bbe...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8c9f...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8d80...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8e61...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='8f42...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9023...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9104...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='91e5...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='92c6...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='93a8...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9488...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9569...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='964a...', 5, v='-9"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='972b...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='980c...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='98ed...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='99ce...', 5, v='-8"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9aaf...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9b90...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9c71...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9d52...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9e33...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9f14...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='9ff5...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a0d6...', 5, v='-7"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a1b7...', 5, v='-632...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a298...', 5, v='-351...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a379...', 5, v='-963...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a45a...', 5, v='644"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a53b...', 5, v='700"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a61c...', 5, v='942"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a6fd...', 5, v='99"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a7e0...', 5, v='464"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a8c0...', 5, v='912"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a9a0...', 5, v='289"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='aa81...', 5, v='32"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ab62...', 5, v='46"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ac43...', 5, v='200"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ad24...', 5, v='921"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ae05...', 5, v='744"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='aee6...', 5, v='-561...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='afc7...', 5, v='-68"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b0a8...', 5, v='31"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b26a...', 5, v='142"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b34b...', 5, v='-123...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b42c...', 5, v='-451...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b50d...', 5, v='-729...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b5ee...', 5, v='-712...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b6cf...', 5, v='-158...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b7b0...', 5, v='-198...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b891...', 5, v='-175...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='b972...', 5, v='-175...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ba53...', 5, v='-189...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bb34...', 5, v='-827...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bc15...', 5, v='-882...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bcf6...', 5, v='-899...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bdd8...', 5, v='644"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='beb8...', 5, v='417"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='bf99...', 5, v='524"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c07a...', 5, v='400"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c15b...', 5, v='372"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c23c...', 5, v='484"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c31d...', 5, v='591"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c3fe...', 5, v='336"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c4df...', 5, v='741"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c5c0...', 5, v='114"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c6a1...', 5, v='507"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c782...', 5, v='-51"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c863...', 5, v='136"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='c944...', 5, v='334"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ca25...', 5, v='235"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cb06...', 5, v='116"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cbe7...', 5, v='-417...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ccc8...', 5, v='-232...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cda9...', 5, v='-184...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ce8a...', 5, v='-219...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='cf6b...', 5, v='-134...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d04c...', 5, v='-51"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d12d...', 5, v='143"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d20e...', 5, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d2f0...', 5, v='11"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d3d0...', 5, v='600"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d4b1...', 5, v='644"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d592...', 5, v='836"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d673...', 5, v='1068...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d754...', 5, v='1213...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d835...', 5, v='-135...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d916...', 5, v='-755...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d9f7...', 5, v='-149...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dad8...', 5, v='-201...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dbb9...', 5, v='-256...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dc9a...', 5, v='-233...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='dd7b...', 5, v='-289...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='de5c...', 5, v='-278...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='df3d...', 5, v='-291...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e01d...', 5, v='-291...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e0fe...', 5, v='-283...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e1df...', 5, v='-301...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e2c0...', 5, v='-409...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e3a1...', 5, v='-397...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e482...', 5, v='-337...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e563...', 5, v='-342...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e644...', 5, v='-255...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e725...', 5, v='-218...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e806...', 5, v='-175...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e8e7...', 5, v='-477...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='e9c8...', 5, v='-709...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='eaa9...', 5, v='-653...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='eb8a...', 5, v='-653...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ec6b...', 5, v='-468...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ed4c...', 5, v='-211...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ee2d...', 5, v='-223...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ef0e...', 5, v='-319...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='eff0...', 5, v='-408...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f0d1...', 5, v='-430...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f1b2...', 5, v='-455...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f293...', 5, v='-462...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f374...', 5, v='-430...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f455...', 5, v='-460...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f536...', 5, v='-485...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f617...', 5, v='-461...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f6f8...', 5, v='-481...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f7d9...', 5, v='-424...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f8ba...', 5, v='-391...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='f99b...', 5, v='-380...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fa7c...', 5, v='-302...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fb5d...', 5, v='-303...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fc3e...', 5, v='-329...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fd1f...', 5, v='-268...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fe00...', 5, v='-253...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fee1...', 5, v='-208...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='ffc2...', 5, v='-198...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='100a...', 6, v='-179...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1018...', 6, v='-179...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1026...', 6, v='-207...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1034...', 6, v='-272...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1042...', 6, v='-401...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1050...', 6, v='-432...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='105e...', 6, v='-433...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='106c...', 6, v='-472...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='107a...', 6, v='-433...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1088...', 6, v='-390...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1096...', 6, v='-411...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10a4...', 6, v='-432...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10b2...', 6, v='-434...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10c1...', 6, v='-416...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10cf...', 6, v='-435...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10dd...', 6, v='-416...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10eb...', 6, v='-445...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='10f9...', 6, v='-389...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1107...', 6, v='-328...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1115...', 6, v='-286...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1123...', 6, v='-266...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1131...', 6, v='-179...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='113f...', 6, v='-179...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='114d...', 6, v='-182...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='115b...', 6, v='-178...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1169...', 6, v='-158...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1177...', 6, v='-208...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1185...', 6, v='-288...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1193...', 6, v='-355...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11a2...', 6, v='-483...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11b0...', 6, v='-432...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11be...', 6, v='-539...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11cc...', 6, v='-445...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11da...', 6, v='-427...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11e8...', 6, v='-435...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='11f6...', 6, v='-390...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1205...', 6, v='-4"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1213...', 6, v='-4"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1221...', 6, v='-4"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='122f...', 6, v='-3"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='123d...', 6, v='-3"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='124b...', 6, v='-3"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1259...', 6, v='-2"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1267...', 6, v='-2"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1276...', 6, v='-2"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1283...', 6, v='-2"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1291...', 6, v='-2"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='129f...', 6, v='-2"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12ad...', 6, v='-2"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12bb...', 6, v='-1"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12c9...', 6, v='-2"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12d7...', 6, v='-2"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12e5...', 6, v='-3"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='12f3...', 6, v='-2"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1301...', 6, v='-4"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='130f...', 6, v='-3"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='131d...', 6, v='-3"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='132b...', 6, v='-3"/...', 2)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1339...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1347...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1355...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1364...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1372...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1380...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='138e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='139c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13aa...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13b8...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13c6...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13d4...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13e2...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13f0...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='13fe...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='140c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='141a...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1428...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1436...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1445...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1453...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1461...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='146f...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='147d...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='148b...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1499...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14a7...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14b5...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14c3...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14d1...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14df...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14ed...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='14fb...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1509...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1517...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1526...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1534...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1542...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1550...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='155e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='156c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='157a...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1588...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1596...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15a4...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15b2...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15c0...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15ce...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15dc...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15ea...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='15f8...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1607...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1615...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1623...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1631...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='163f...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='164d...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='165b...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1669...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1677...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1685...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1693...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16a1...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16af...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16bd...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16cb...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16d9...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16e8...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='16f6...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1704...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1712...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1720...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='172e...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='173c...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='174a...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1758...', 6, v='0"/>...', 1)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1766...', 6, v='-684...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1774...', 6, v='-684...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1782...', 6, v='-727...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1790...', 6, v='-671...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='179e...', 6, v='-604...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17ac...', 6, v='-587...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17ba...', 6, v='-606...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17c9...', 6, v='-548...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17d7...', 6, v='-543...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17e5...', 6, v='-534...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17f3...', 6, v='-498...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1801...', 6, v='-519...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='180f...', 6, v='-632...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='181d...', 6, v='-692...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='182b...', 6, v='-788...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1839...', 6, v='-134...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1847...', 6, v='-133...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1855...', 6, v='-128...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1863...', 6, v='-119...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1871...', 6, v='-124...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='187f...', 6, v='-116...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='188d...', 6, v='-125...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='189c...', 6, v='-119...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18b8...', 6, v='-756...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18c6...', 6, v='-810...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18d4...', 6, v='-767...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18e2...', 6, v='-656...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18f0...', 6, v='-616...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='18fe...', 6, v='-566...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='190c...', 6, v='-447...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='191a...', 6, v='-430...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1928...', 6, v='-425...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1936...', 6, v='-412...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1944...', 6, v='-412...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1952...', 6, v='-449...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1960...', 6, v='-513...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='196e...', 6, v='-596...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='197c...', 6, v='-635...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='198b...', 6, v='-596...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1999...', 6, v='-661...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19b5...', 6, v='-661...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19c3...', 6, v='-619...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19d1...', 6, v='-623...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19df...', 6, v='-631...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19ed...', 6, v='-607...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19ee...', 6, v='-607...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='19fb...', 6, v='-239...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a09...', 6, v='-260...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a17...', 6, v='-305...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a25...', 6, v='-333...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a33...', 6, v='-223...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a41...', 6, v='-213...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a4f...', 6, v='-154...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a5e...', 6, v='-167...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a6c...', 6, v='-969...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a7a...', 6, v='-112...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a88...', 6, v='-107...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a96...', 6, v='-481...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1aa4...', 6, v='-537...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ab2...', 6, v='-995...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ac0...', 6, v='-181...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ace...', 6, v='-263...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1adc...', 6, v='-292...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1aea...', 6, v='-259...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1af8...', 6, v='-289...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1b06...', 6, v='-217...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1b14...', 6, v='-209...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c74...', 6, v='311"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c82...', 6, v='399"...', 3)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c90...', 6, v='3486...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c9e...', 6, v='3357...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cac...', 6, v='3670...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cba...', 6, v='3580...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cc8...', 6, v='5398...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cd6...', 6, v='5478...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ce4...', 6, v='5618...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1cf2...', 6, v='5659...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d01...', 6, v='5923...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d0f...', 6, v='6651...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d1d...', 6, v='6654...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d2b...', 6, v='6713...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d39...', 6, v='6885...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d47...', 6, v='6893...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d55...', 6, v='6705...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d63...', 6, v='5853...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d71...', 6, v='5545...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d7f...', 6, v='5589...', 4)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d8d...', 6, v='-321...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1d9b...', 6, v='-362...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1da9...', 6, v='-362...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1db7...', 6, v='-347...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1dc5...', 6, v='-363...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1dd3...', 6, v='-372...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1de1...', 6, v='-603...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1df0...', 6, v='-675...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1dfe...', 6, v='-664...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e0c...', 6, v='-677...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e1a...', 6, v='-679...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e28...', 6, v='-659...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e36...', 6, v='-613...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e44...', 6, v='-565...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e52...', 6, v='-491...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e60...', 6, v='-490...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e6e...', 6, v='-480...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e7c...', 6, v='-197...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e8a...', 6, v='-182...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1e98...', 6, v='-182...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ea6...', 6, v='-227...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1eb4...', 6, v='-233...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ec2...', 6, v='-264...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ed1...', 6, v='-264...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1edf...', 6, v='-274...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1eed...', 6, v='-272...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1efb...', 6, v='-258...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f09...', 6, v='-254...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f17...', 6, v='-237...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f25...', 6, v='-233...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f33...', 6, v='-256...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f41...', 6, v='-278...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f4f...', 6, v='-319...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f5d...', 6, v='-358...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f6b...', 6, v='-359...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f79...', 6, v='-312...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f87...', 6, v='-333...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f95...', 6, v='-314...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fa4...', 6, v='-280...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fb2...', 6, v='-248...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fc0...', 6, v='-249...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fce...', 6, v='-217...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fdc...', 6, v='-213...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1fea...', 6, v='-215...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1ff8...', 6, v='-250...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2006...', 6, v='-239...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2014...', 6, v='-346...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2022...', 6, v='-451...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2030...', 6, v='-535...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='203e...', 6, v='-591...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='204c...', 6, v='-577...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='205a...', 6, v='-528...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2068...', 6, v='-538...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2076...', 6, v='-597...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2084...', 6, v='-610...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2093...', 6, v='-674...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20a1...', 6, v='-631...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20af...', 6, v='-553...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20bd...', 6, v='-545...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20cb...', 6, v='-463...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20d9...', 6, v='-434...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20e7...', 6, v='-404...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='20f5...', 6, v='-385...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2103...', 6, v='-351...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2111...', 6, v='-313...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='211f...', 6, v='-301...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='212d...', 6, v='-290...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='213b...', 6, v='-282...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2149...', 6, v='-368...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2157...', 6, v='-450...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2165...', 6, v='-584...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2174...', 6, v='-619...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2182...', 6, v='-616...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2190...', 6, v='-614...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='219e...', 6, v='-622...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21ac...', 6, v='-593...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21ba...', 6, v='-592...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21c8...', 6, v='-555...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21d6...', 6, v='-624...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21e4...', 6, v='-575...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21f2...', 6, v='-577...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2200...', 6, v='-546...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='220e...', 6, v='-539...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='221c...', 6, v='-454...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='222a...', 6, v='-387...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2238...', 6, v='-362...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2247...', 6, v='-329...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2255...', 6, v='-168...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2263...', 6, v='-208...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2271...', 6, v='-204...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='227f...', 6, v='-167...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='228d...', 6, v='-178...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='229b...', 6, v='-349...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22a9...', 6, v='-408...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22b7...', 6, v='-445...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22c5...', 6, v='-481...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22d3...', 6, v='-440...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22e1...', 6, v='-462...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22ef...', 6, v='-482...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='22fd...', 6, v='-464...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='230b...', 6, v='-443...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2319...', 6, v='-539...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2327...', 6, v='-555...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2336...', 6, v='-588...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2344...', 6, v='-520...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2352...', 6, v='-520...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2360...', 6, v='-525...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='236e...', 6, v='-434...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='237c...', 6, v='-419...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='238a...', 6, v='-399...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2398...', 6, v='-319...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23a6...', 6, v='-332...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23b4...', 6, v='-319...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23c2...', 6, v='-296...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23d0...', 6, v='-295...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23de...', 6, v='-291...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23ec...', 6, v='-362...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='23fa...', 6, v='-456...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2408...', 6, v='-501...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2417...', 6, v='-579...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2425...', 6, v='-660...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2433...', 6, v='-678...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2441...', 6, v='-673...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='244f...', 6, v='-643...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='246b...', 6, v='-641...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2479...', 6, v='-626...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2487...', 6, v='-537...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2495...', 6, v='-570...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24a3...', 6, v='-566...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24b1...', 6, v='-581...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24bf...', 6, v='-549...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24cd...', 6, v='-536...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24db...', 6, v='-453...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24e9...', 6, v='-400...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='24f8...', 6, v='-348...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2506...', 6, v='-359...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2514...', 6, v='-357...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2522...', 6, v='-342...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2530...', 6, v='-361...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='253e...', 6, v='-406...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='254c...', 6, v='-420...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='255a...', 6, v='-497...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2568...', 6, v='-584...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2576...', 6, v='-566...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2584...', 6, v='-151...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2592...', 6, v='-862...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25a0...', 6, v='-460...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25ae...', 6, v='-632...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25bc...', 6, v='-612...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25ca...', 6, v='-581...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25d9...', 6, v='-580...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25e7...', 6, v='-562...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='25f5...', 6, v='-531...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2603...', 6, v='-554...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2611...', 6, v='-491...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='261f...', 6, v='-458...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='262d...', 6, v='-467...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='263b...', 6, v='-369...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2649...', 6, v='-349...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2657...', 6, v='-358...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2665...', 6, v='-368...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2673...', 6, v='-360...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2681...', 6, v='-368...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='268f...', 6, v='-385...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='269d...', 6, v='-392...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26ab...', 6, v='-395...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26ba...', 6, v='-446...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26c8...', 6, v='-425...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26d6...', 6, v='-391...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26e4...', 6, v='-389...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='26f2...', 6, v='-353...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2700...', 6, v='-379...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='270e...', 6, v='-362...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='271c...', 6, v='-454...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='272a...', 6, v='-517...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2738...', 6, v='-503...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2746...', 6, v='-502...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2754...', 6, v='-502...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2762...', 6, v='-399...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2770...', 6, v='-355...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='277e...', 6, v='-320...', 5)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.endElementNs(par, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(par, NULL, NULL, 0, 2, 0, memind='6746...', 6, h='3dc1...', 8)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='0" v...', 1, v='2212...', 155)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.endElementNs(par, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(par, NULL, NULL, 0, 2, 0, memind='6738...', 6, h='3dc1...', 8)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='0" v...', 1, v='0:0:...', 147)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.endElementNs(par, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(par, NULL, NULL, 0, 2, 0, memind='6734...', 6, h='3dc1...', 8)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='0" v...', 1, v='7289...', 176)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.endElementNs(par, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(par, NULL, NULL, 0, 2, 0, memind='6730...', 6, h='3dc1...', 8)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='0" v...', 1, v='0:0:...', 87)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.endElementNs(par, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(par, NULL, NULL, 0, 2, 0, memind='2627...', 8, h='3dc1...', 8)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='0" v...', 1, v='0::1...', 258)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2a30...', 5, v='0::5...', 185)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5541...', 5, v='6::1...', 186)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7f71...', 5, v='6::1...', 201)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a9a1...', 5, v='629:...', 257)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d4b2...', 5, v='2289...', 258)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fee2...', 5, v='1954...', 292)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1291...', 6, v='2.48...', 279)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1534...', 6, v='0.00...', 304)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17d7...', 6, v='5016...', 313)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a96...', 6, v='1243...', 68)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c74...', 6, v='8197...', 288)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f17...', 6, v='8270...', 280)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21ba...', 6, v='6511...', 268)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='246b...', 6, v='3280...', 278)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='270e...', 6, v='8226...', 56)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.endElementNs(par, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(par, NULL, NULL, 0, 2, 0, memind='2627...', 8, h='3dc1...', 8)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='0" v...', 1, v='0::0...', 142)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2a30...', 5, v='0::0...', 144)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5541...', 5, v='0::0...', 142)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7f71...', 5, v='0::0...', 162)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a9a1...', 5, v='273:...', 298)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d4b2...', 5, v='16::...', 298)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fee2...', 5, v='14::...', 323)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1291...', 6, v='0::0...', 306)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1534...', 6, v='0.03...', 294)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17d7...', 6, v='0::0...', 223)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a96...', 6, v='0::0...', 28)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c74...', 6, v='1413...', 268)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f17...', 6, v='303:...', 270)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21ba...', 6, v='5304...', 297)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='246b...', 6, v='1514...', 280)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='270e...', 6, v='1776...', 61)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.endElementNs(par, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(par, NULL, NULL, 0, 2, 0, memind='2627...', 8, h='3dc1...', 8)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='0" v...', 1, v='0::4...', 265)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2a30...', 5, v='0::8...', 208)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5541...', 5, v='8::1...', 206)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7f71...', 5, v='8::1...', 222)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a9a1...', 5, v='2::4...', 228)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d4b2...', 5, v='0::0...', 292)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fee2...', 5, v='4757...', 350)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1291...', 6, v='3.74...', 307)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1534...', 6, v='0::0...', 234)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17d7...', 6, v='1113...', 339)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a96...', 6, v='3972...', 63)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c74...', 6, v='1295...', 285)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f17...', 6, v='3876...', 321)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21ba...', 6, v='6481...', 322)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='246b...', 6, v='7162...', 331)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='270e...', 6, v='5709...', 61)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.endElementNs(par, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(par, NULL, NULL, 0, 2, 0, memind='2627...', 8, h='3dc1...', 8)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='0" v...', 1, v='0::0...', 142)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2a30...', 5, v='0::0...', 144)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5541...', 5, v='0::0...', 142)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7f71...', 5, v='0::0...', 157)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a9a1...', 5, v='1070...', 279)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d4b2...', 5, v='1231...', 208)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fee2...', 5, v='0::0...', 142)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1291...', 6, v='0::0...', 237)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1534...', 6, v='0.03...', 296)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17d7...', 6, v='0::0...', 146)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a96...', 6, v='0::0...', 28)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c74...', 6, v='9208...', 271)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f17...', 6, v='0::0...', 142)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21ba...', 6, v='0::0...', 142)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='246b...', 6, v='0::0...', 142)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='270e...', 6, v='0::0...', 25)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.endElementNs(par, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(par, NULL, NULL, 0, 2, 0, memind='1314...', 7, h='3dc1...', 8)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='0" v...', 1, v='2703...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.endElementNs(par, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(par, NULL, NULL, 0, 2, 0, memind='1313...', 7, h='3dc1...', 8)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='0" v...', 1, v='3066...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.endElementNs(par, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(par, NULL, NULL, 0, 2, 0, memind='1313...', 7, h='3dc1...', 8)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='0" v...', 1, v='1576...', 7)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.endElementNs(par, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(par, NULL, NULL, 0, 2, 0, memind='1313...', 7, h='3dc1...', 8)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='0" v...', 1, v='1270...', 6)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.endElementNs(par, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(par, NULL, NULL, 0, 2, 0, memind='5251...', 8, h='3dc1...', 8)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='0" v...', 1, v='0::1...', 324)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2a30...', 5, v='2226...', 336)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5541...', 5, v='2243...', 334)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7f71...', 5, v='2261...', 334)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a9a1...', 5, v='2937...', 336)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d4b2...', 5, v='3974...', 334)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fee2...', 5, v='4804...', 369)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1291...', 6, v='5025...', 523)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1534...', 6, v='5025...', 490)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17d7...', 6, v='5944...', 361)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a96...', 6, v='1369...', 78)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c74...', 6, v='1748...', 382)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f17...', 6, v='2118...', 382)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21ba...', 6, v='2325...', 382)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='246b...', 6, v='2434...', 382)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='270e...', 6, v='2668...', 70)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.endElementNs(par, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(par, NULL, NULL, 0, 2, 0, memind='5251...', 8, h='3dc1...', 8)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='0" v...', 1, v='0::0...', 142)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2a30...', 5, v='0::0...', 144)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5541...', 5, v='0::0...', 142)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7f71...', 5, v='0::0...', 165)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a9a1...', 5, v='2745...', 327)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d4b2...', 5, v='5015...', 334)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fee2...', 5, v='9659...', 415)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1291...', 6, v='1317...', 573)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1534...', 6, v='1317...', 539)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17d7...', 6, v='1382...', 386)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a96...', 6, v='1443...', 78)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c74...', 6, v='1627...', 382)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f17...', 6, v='1747...', 382)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21ba...', 6, v='2013...', 382)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='246b...', 6, v='2534...', 382)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='270e...', 6, v='3009...', 70)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.endElementNs(par, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(par, NULL, NULL, 0, 2, 0, memind='5251...', 8, h='3dc1...', 8)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='0" v...', 1, v='0::4...', 328)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2a30...', 5, v='7309...', 336)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5541...', 5, v='7346...', 334)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7f71...', 5, v='7382...', 334)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a9a1...', 5, v='8444...', 336)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d4b2...', 5, v='9988...', 377)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fee2...', 5, v='2254...', 421)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1291...', 6, v='1520...', 573)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1534...', 6, v='1520...', 540)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17d7...', 6, v='4071...', 386)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a96...', 6, v='7095...', 78)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c74...', 6, v='7709...', 382)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f17...', 6, v='8856...', 400)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21ba...', 6, v='1085...', 430)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='246b...', 6, v='1306...', 430)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='270e...', 6, v='1537...', 79)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.endElementNs(par, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(par, NULL, NULL, 0, 2, 0, memind='5251...', 8, h='3dc1...', 8)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='0" v...', 1, v='0::0...', 142)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2a30...', 5, v='0::0...', 144)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5541...', 5, v='0::0...', 142)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7f71...', 5, v='0::0...', 160)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a9a1...', 5, v='4546...', 306)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d4b2...', 5, v='1353...', 334)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fee2...', 5, v='1715...', 374)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1291...', 6, v='1715...', 526)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1534...', 6, v='1715...', 486)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17d7...', 6, v='1715...', 338)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a96...', 6, v='1715...', 68)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c74...', 6, v='2636...', 367)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f17...', 6, v='1270...', 382)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21ba...', 6, v='1270...', 382)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='246b...', 6, v='1270...', 382)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='270e...', 6, v='1270...', 70)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.endElementNs(par, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(par, NULL, NULL, 0, 2, 0, memind='3460...', 5, h='3dc1...', 8)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='0" v...', 1, v='6094...', 430)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2a30...', 5, v='6116...', 432)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5541...', 5, v='6117...', 430)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7f71...', 5, v='6117...', 430)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a9a1...', 5, v='6123...', 432)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d4b2...', 5, v='6134...', 430)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fee2...', 5, v='6142...', 449)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1291...', 6, v='1448...', 572)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1534...', 6, v='1448...', 543)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17d7...', 6, v='6154...', 434)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a96...', 6, v='6231...', 88)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c74...', 6, v='6269...', 430)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f17...', 6, v='6306...', 430)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21ba...', 6, v='6327...', 430)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='246b...', 6, v='6338...', 430)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='270e...', 6, v='6361...', 79)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.endElementNs(par, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(par, NULL, NULL, 0, 2, 0, memind='3380...', 5, h='3dc1...', 8)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='0" v...', 1, v='8817...', 478)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2a30...', 5, v='8817...', 480)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5541...', 5, v='8817...', 478)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7f71...', 5, v='8817...', 478)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a9a1...', 5, v='8818...', 480)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d4b2...', 5, v='8822...', 478)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fee2...', 5, v='8827...', 495)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1291...', 6, v='1111...', 570)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1534...', 6, v='1112...', 552)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17d7...', 6, v='8831...', 482)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a96...', 6, v='8832...', 98)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c74...', 6, v='8834...', 478)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f17...', 6, v='8835...', 478)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21ba...', 6, v='8838...', 478)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='246b...', 6, v='8843...', 478)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='270e...', 6, v='8848...', 88)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.endElementNs(par, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(par, NULL, NULL, 0, 2, 0, memind='3340...', 5, h='3dc1...', 8)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='0" v...', 1, v='9437...', 430)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2a30...', 5, v='9510...', 432)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5541...', 5, v='9511...', 430)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7f71...', 5, v='9511...', 430)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a9a1...', 5, v='9522...', 432)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d4b2...', 5, v='9537...', 430)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fee2...', 5, v='9663...', 449)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1291...', 6, v='8980...', 518)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1534...', 6, v='8983...', 507)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='17d7...', 6, v='9844...', 466)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1a96...', 6, v='1014...', 98)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1c74...', 6, v='1020...', 478)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1f17...', 6, v='1032...', 478)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='21ba...', 6, v='1052...', 478)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='246b...', 6, v='1074...', 478)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='270e...', 6, v='1097...', 88)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.endElementNs(par, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(par, NULL, NULL, 0, 2, 0, memind='3300...', 5, h='3dc1...', 8)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='0" v...', 1, v='3861...', 478)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='2a30...', 5, v='3861...', 480)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='5541...', 5, v='3861...', 478)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='7f71...', 5, v='3861...', 478)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='a9a1...', 5, v='3861...', 480)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='d4b2...', 5, v='3862...', 478)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='fee2...', 5, v='3862...', 498)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(val, NULL, NULL, 0, 2, 0, o='1291...', 6, v='2297...', 574)
+SAX.endElementNs(val, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.endElementNs(par, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.endElementNs(device, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.endElementNs(select, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(data, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.endElementNs(electroxml, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/att5.sax2 b/result/noent/att5.sax2
new file mode 100644
index 00000000..22da39d6
--- /dev/null
+++ b/result/noent/att5.sax2
@@ -0,0 +1,149 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(doc, , )
+SAX.attributeDecl(normId, attr, 8, 3, NULL, ...)
+SAX.externalSubset(doc, , )
+SAX.startElementNs(doc, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 3)
+SAX.comment( no normalization )
+SAX.characters(
+ , 3)
+SAX.startElementNs(norm, NULL, NULL, 0, 1, 0, attr=' '...', 3)
+SAX.endElementNs(norm, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.startElementNs(norm, NULL, NULL, 0, 1, 0, attr=' f...', 13)
+SAX.endElementNs(norm, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.startElementNs(norm, NULL, NULL, 0, 1, 0, attr=' fo...', 8)
+SAX.endElementNs(norm, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.startElementNs(norm, NULL, NULL, 0, 1, 0, attr=' foo...', 9)
+SAX.endElementNs(norm, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.startElementNs(norm, NULL, NULL, 0, 1, 0, attr='foob...', 8)
+SAX.endElementNs(norm, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.startElementNs(norm, NULL, NULL, 0, 1, 0, attr=' & ...', 3)
+SAX.endElementNs(norm, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.startElementNs(norm, NULL, NULL, 0, 1, 0, attr=' f...', 13)
+SAX.endElementNs(norm, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.startElementNs(norm, NULL, NULL, 0, 1, 0, attr=' fo...', 9)
+SAX.endElementNs(norm, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.startElementNs(norm, NULL, NULL, 0, 1, 0, attr='&foo...', 9)
+SAX.endElementNs(norm, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.startElementNs(norm, NULL, NULL, 0, 1, 0, attr='foob...', 9)
+SAX.endElementNs(norm, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.startElementNs(norm, NULL, NULL, 0, 1, 0, attr=' < ...', 3)
+SAX.endElementNs(norm, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.startElementNs(norm, NULL, NULL, 0, 1, 0, attr=' f...', 13)
+SAX.endElementNs(norm, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.startElementNs(norm, NULL, NULL, 0, 1, 0, attr=' fo...', 9)
+SAX.endElementNs(norm, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.startElementNs(norm, NULL, NULL, 0, 1, 0, attr='<foo...', 9)
+SAX.endElementNs(norm, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.startElementNs(norm, NULL, NULL, 0, 1, 0, attr='foob...', 9)
+SAX.endElementNs(norm, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.startElementNs(norm, NULL, NULL, 0, 1, 0, attr='
+...', 6)
+SAX.endElementNs(norm, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.comment( normalization )
+SAX.characters(
+ , 3)
+SAX.startElementNs(normId, NULL, NULL, 0, 1, 0, attr=''/>
+...', 0)
+SAX.endElementNs(normId, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.startElementNs(normId, NULL, NULL, 0, 1, 0, attr='foo ...', 7)
+SAX.endElementNs(normId, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.startElementNs(normId, NULL, NULL, 0, 1, 0, attr='foob...', 6)
+SAX.endElementNs(normId, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.startElementNs(normId, NULL, NULL, 0, 1, 0, attr='foo ...', 7)
+SAX.endElementNs(normId, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.startElementNs(normId, NULL, NULL, 0, 1, 0, attr='foob...', 6)
+SAX.endElementNs(normId, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.startElementNs(normId, NULL, NULL, 0, 1, 0, attr='&...', 1)
+SAX.endElementNs(normId, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.startElementNs(normId, NULL, NULL, 0, 1, 0, attr='foo&...', 7)
+SAX.endElementNs(normId, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.startElementNs(normId, NULL, NULL, 0, 1, 0, attr='foob...', 7)
+SAX.endElementNs(normId, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.startElementNs(normId, NULL, NULL, 0, 1, 0, attr='&foo...', 8)
+SAX.endElementNs(normId, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.startElementNs(normId, NULL, NULL, 0, 1, 0, attr='foob...', 8)
+SAX.endElementNs(normId, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.startElementNs(normId, NULL, NULL, 0, 1, 0, attr='<...', 1)
+SAX.endElementNs(normId, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.startElementNs(normId, NULL, NULL, 0, 1, 0, attr='foo<...', 7)
+SAX.endElementNs(normId, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.startElementNs(normId, NULL, NULL, 0, 1, 0, attr='foob...', 7)
+SAX.endElementNs(normId, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.startElementNs(normId, NULL, NULL, 0, 1, 0, attr='<foo...', 8)
+SAX.endElementNs(normId, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.startElementNs(normId, NULL, NULL, 0, 1, 0, attr='foob...', 8)
+SAX.endElementNs(normId, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.startElementNs(normId, NULL, NULL, 0, 1, 0, attr='
+ ...', 3)
+SAX.endElementNs(normId, NULL, NULL)
+SAX.characters( , 1)
+SAX.comment( PBM serializing back )
+SAX.characters(
+, 1)
+SAX.endElementNs(doc, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/att6.sax2 b/result/noent/att6.sax2
new file mode 100644
index 00000000..54dd6d30
--- /dev/null
+++ b/result/noent/att6.sax2
@@ -0,0 +1,20 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(Invoice, NULL, 'urn:oasis:names:tc:ubl:Invoice:1.0:0.70', 4, xmlns:ccts='urn:oasis:names:tc:ubl:CoreComponentParameters:1.0:0.70', xmlns:cct='urn:oasis:names:tc:ubl:CoreComponentTypes:1.0:0.70', xmlns:cat='urn:oasis:names:tc:ubl:CommonAggregateTypes:1.0:0.70', xmlns='urn:oasis:names:tc:ubl:Invoice:1.0:0.70', 0, 0)
+SAX.characters(
+ , 4)
+SAX.startElementNs(ReferencedOrder, cat, 'urn:oasis:names:tc:ubl:CommonAggregateTypes:1.0:0.70', 0, 0, 0)
+SAX.characters(
+ , 7)
+SAX.startElementNs(SellersOrderID, cat, 'urn:oasis:names:tc:ubl:CommonAggregateTypes:1.0:0.70', 0, 11, 0, schemeID='pval...', 47, schemeAgencyID='pval...', 53, schemeVersionID='pval...', 54, schemeAgencySchemeID='pval...', 59, schemeAgencySchemeAgencyID='pval...', 65, schemeDataURI='pval...', 52, schemeURI='pval...', 48, UID='pval...', 42, UIDRef='pval...', 45, UIDRefs='pval...', 47, language='pval...', 47)
+SAX.characters(pvalue-, 7)
+SAX.characters(>, 1)
+SAX.characters(ReferencedOrder.SellersOrderID, 30)
+SAX.endElementNs(SellersOrderID, cat, 'urn:oasis:names:tc:ubl:CommonAggregateTypes:1.0:0.70')
+SAX.characters(
+ , 4)
+SAX.endElementNs(ReferencedOrder, cat, 'urn:oasis:names:tc:ubl:CommonAggregateTypes:1.0:0.70')
+SAX.characters(
+, 1)
+SAX.endElementNs(Invoice, NULL, 'urn:oasis:names:tc:ubl:Invoice:1.0:0.70')
+SAX.endDocument()
diff --git a/result/noent/att7.sax2 b/result/noent/att7.sax2
new file mode 100644
index 00000000..4a5f318b
--- /dev/null
+++ b/result/noent/att7.sax2
@@ -0,0 +1,23 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(x, , )
+SAX.elementDecl(x, 4, ...)
+SAX.elementDecl(test, 1, ...)
+SAX.attributeDecl(test, att, 1, 1, attvalue, ...)
+SAX.entityDecl(test.ent, 1, (null), (null), <test/>)
+SAX.getEntity(test.ent)
+SAX.externalSubset(x, , )
+SAX.startElementNs(x, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(test, NULL, NULL, 0, 1, 1, att='attv...', 8)
+SAX.endElementNs(test, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.getEntity(test.ent)
+SAX.startElementNs(test, NULL, NULL, 0, 1, 1, att='attv...', 8)
+SAX.endElementNs(test, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.endElementNs(x, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/att8.sax2 b/result/noent/att8.sax2
new file mode 100644
index 00000000..1f2344a9
--- /dev/null
+++ b/result/noent/att8.sax2
@@ -0,0 +1,29 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(response, ino, 'http://namespaces.softwareag.com/tamino/response2', 2, xmlns:ino='http://namespaces.softwareag.com/tamino/response2', xmlns:xql='http://metalab.unc.edu/xql/', 2, 0, ino:sessionid='556"...', 3, ino:sessionkey='1590...', 10)
+SAX.startElementNs(query, xql, 'http://metalab.unc.edu/xql/', 0, 0, 0)
+SAX.characters(/bsk:DocPart[@docId=, 20)
+SAX.characters(', 1)
+SAX.characters(20040308152601345236, 20)
+SAX.characters(', 1)
+SAX.characters( and @docPartNo=1], 18)
+SAX.endElementNs(query, xql, 'http://metalab.unc.edu/xql/')
+SAX.startElementNs(message, ino, 'http://namespaces.softwareag.com/tamino/response2', 0, 1, 0, ino:returnvalue='0"><...', 1)
+SAX.startElementNs(messageline, ino, 'http://namespaces.softwareag.com/tamino/response2', 0, 0, 0)
+SAX.characters(XQL Request processing, 22)
+SAX.endElementNs(messageline, ino, 'http://namespaces.softwareag.com/tamino/response2')
+SAX.endElementNs(message, ino, 'http://namespaces.softwareag.com/tamino/response2')
+SAX.startElementNs(result, xql, 'http://metalab.unc.edu/xql/', 0, 0, 0)
+SAX.startElementNs(DocPart, bsk, 'http://www.heitec.net/sara4/tamino/basket', 1, xmlns:bsk='http://www.heitec.net/sara4/tamino/basket', 3, 0, docId='2004...', 20, docPartNo='1" i...', 1, ino:id='1529...', 5)
+SAX.startElementNs(File, bsk, 'http://www.heitec.net/sara4/tamino/basket', 0, 2, 0, name='4898...', 13, size='7519...', 5)
+SAX.characters( , 1)
+SAX.endElementNs(File, bsk, 'http://www.heitec.net/sara4/tamino/basket')
+SAX.endElementNs(DocPart, bsk, 'http://www.heitec.net/sara4/tamino/basket')
+SAX.endElementNs(result, xql, 'http://metalab.unc.edu/xql/')
+SAX.startElementNs(message, ino, 'http://namespaces.softwareag.com/tamino/response2', 0, 1, 0, ino:returnvalue='0"><...', 1)
+SAX.startElementNs(messageline, ino, 'http://namespaces.softwareag.com/tamino/response2', 0, 0, 0)
+SAX.characters(XQL Request processed, 21)
+SAX.endElementNs(messageline, ino, 'http://namespaces.softwareag.com/tamino/response2')
+SAX.endElementNs(message, ino, 'http://namespaces.softwareag.com/tamino/response2')
+SAX.endElementNs(response, ino, 'http://namespaces.softwareag.com/tamino/response2')
+SAX.endDocument()
diff --git a/result/noent/att9.sax2 b/result/noent/att9.sax2
new file mode 100644
index 00000000..09b3a04c
--- /dev/null
+++ b/result/noent/att9.sax2
@@ -0,0 +1,9 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(doc, , )
+SAX.attributeDecl(doc, a1, 8, 1, 1 2, ...)
+SAX.elementDecl(doc, 3, ...)
+SAX.externalSubset(doc, , )
+SAX.startElementNs(doc, NULL, NULL, 0, 1, 1, a1='1 2...', 3)
+SAX.endElementNs(doc, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/attrib.xml.sax2 b/result/noent/attrib.xml.sax2
new file mode 100644
index 00000000..c7d2c872
--- /dev/null
+++ b/result/noent/attrib.xml.sax2
@@ -0,0 +1,5 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(item, NULL, NULL, 0, 5, 0, title='Icro...', 173, url='http...', 24, first_time='9850...', 9, last_time='9850...', 9, visits='1"/>...', 1)
+SAX.endElementNs(item, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/badcomment.xml.sax2 b/result/noent/badcomment.xml.sax2
new file mode 100644
index 00000000..08e56221
--- /dev/null
+++ b/result/noent/badcomment.xml.sax2
@@ -0,0 +1,24 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(foo, NULL, NULL, 0, 0, 0)
+SAX.characters(
+, 1)
+SAX.comment( def='NT-Char')
+SAX.comment(>Char</nt>* ']]&gt;' <nt def='NT-Char'>Char</nt>*))
+']]&gt;'</rhs>
+<com>CDATA sections</com>
+<rhs>| '&lt;!DOCTYPE'
+(<nt def="NT-Char">Char</nt> - ('[' | ']'))+
+('['
+<nt def="NT-simpleDTD">simpleDTD</nt>*
+']')? '&gt;'</rhs>
+<com>doc type declaration</com>
+<prod id="NT-simpleDTD"><lhs>simpleDTD</lhs>
+<rhs>'&lt;!&como;'
+(<nt def='NT-Char'>Char</nt>* -
+(<nt def='NT-Char'>Char</nt>* '&comc;' <nt def='NT-Char'>Char</nt>*))
+'&comc;&gt;'</rhs>)
+SAX.characters(
+, 1)
+SAX.endElementNs(foo, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/bigentname.xml.sax2 b/result/noent/bigentname.xml.sax2
new file mode 100644
index 00000000..1067843e
--- /dev/null
+++ b/result/noent/bigentname.xml.sax2
@@ -0,0 +1,15 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(doc, , )
+SAX.entityDecl(very_big_entity_name01234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789_end_of_very_big_ent_name, 1, (null), (null), "Yes")
+SAX.getEntity(very_big_entity_name01234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789_end_of_very_big_ent_name)
+SAX.entityDecl(WhatHeSaid, 1, (null), (null), He said &very_big_entity_name01234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789_end_of_very_big_ent_name;)
+SAX.getEntity(WhatHeSaid)
+SAX.externalSubset(doc, , )
+SAX.startElementNs(doc, NULL, NULL, 0, 0, 0)
+SAX.getEntity(WhatHeSaid)
+SAX.characters(He said , 8)
+SAX.getEntity(very_big_entity_name01234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789_end_of_very_big_ent_name)
+SAX.characters("Yes", 5)
+SAX.endElementNs(doc, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/bigname.xml.sax2 b/result/noent/bigname.xml.sax2
new file mode 100644
index 00000000..ef939f9a
--- /dev/null
+++ b/result/noent/bigname.xml.sax2
@@ -0,0 +1,5 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(this_is_a_very_large_name_01234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789_end_of_the_very_large_name, NULL, NULL, 0, 0, 0)
+SAX.endElementNs(this_is_a_very_large_name_01234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789_end_of_the_very_large_name, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/bigname2.xml.sax2 b/result/noent/bigname2.xml.sax2
new file mode 100644
index 00000000..6b406f4e
--- /dev/null
+++ b/result/noent/bigname2.xml.sax2
@@ -0,0 +1,5 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(start_nc_name_01234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789_end_of_the_very_large_name, this_is_a_very_large_qualified_name_01234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789_end_of_prefix, 'http://www.example.com/testns/', 1, xmlns:this_is_a_very_large_qualified_name_01234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789_end_of_prefix='http://www.example.com/testns/', 0, 0)
+SAX.endElementNs(start_nc_name_01234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789_end_of_the_very_large_name, this_is_a_very_large_qualified_name_01234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789_end_of_prefix, 'http://www.example.com/testns/')
+SAX.endDocument()
diff --git a/result/noent/cdata-2-byte-UTF-8.xml.sax2 b/result/noent/cdata-2-byte-UTF-8.xml.sax2
new file mode 100644
index 00000000..2da2d500
--- /dev/null
+++ b/result/noent/cdata-2-byte-UTF-8.xml.sax2
@@ -0,0 +1,18 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.comment( This tests that two-byte UTF-8 characters are parsed properly when split across a buffer boundary of length XML_PARSER_BIG_BUFFER_SIZE (300 bytes). )
+SAX.startElementNs(doc, NULL, NULL, 0, 0, 0)
+SAX.characters(
+, 1)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.pcdata(ČČČČČČČČČČ, 1200)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.pcdata( ČČČČČČČČČÄ, 1201)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.endElementNs(doc, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/cdata-3-byte-UTF-8.xml.sax2 b/result/noent/cdata-3-byte-UTF-8.xml.sax2
new file mode 100644
index 00000000..3969579c
--- /dev/null
+++ b/result/noent/cdata-3-byte-UTF-8.xml.sax2
@@ -0,0 +1,23 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.comment( This tests that three-byte UTF-8 characters are parsed properly when split across a buffer boundary of length XML_PARSER_BIG_BUFFER_SIZE (300 bytes). )
+SAX.startElementNs(doc, NULL, NULL, 0, 0, 0)
+SAX.characters(
+, 1)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.pcdata(牛牛牛牛牛牛ç‰, 1200)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.pcdata( 牛牛牛牛牛牛ç, 1201)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.pcdata( 牛牛牛牛牛牛, 1202)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.endElementNs(doc, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/cdata-4-byte-UTF-8.xml.sax2 b/result/noent/cdata-4-byte-UTF-8.xml.sax2
new file mode 100644
index 00000000..5e07d83e
--- /dev/null
+++ b/result/noent/cdata-4-byte-UTF-8.xml.sax2
@@ -0,0 +1,28 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.comment( This tests that four-byte UTF-8 characters are parsed properly when split across a buffer boundary of length XML_PARSER_BIG_BUFFER_SIZE (300 bytes). )
+SAX.startElementNs(doc, NULL, NULL, 0, 0, 0)
+SAX.characters(
+, 1)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.pcdata(ðŸ¦ðŸ¦ðŸ¦ðŸ¦ðŸ¦, 1200)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.pcdata( ðŸ¦ðŸ¦ðŸ¦ðŸ¦ðŸ, 1201)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.pcdata( ðŸ¦ðŸ¦ðŸ¦ðŸ¦ðŸ, 1202)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.pcdata( ðŸ¦ðŸ¦ðŸ¦ðŸ¦ð, 1203)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.endElementNs(doc, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/cdata.sax2 b/result/noent/cdata.sax2
new file mode 100644
index 00000000..117b2b0c
--- /dev/null
+++ b/result/noent/cdata.sax2
@@ -0,0 +1,10 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(doc, NULL, NULL, 0, 0, 0)
+SAX.characters(
+, 1)
+SAX.pcdata(<greeting>Hello, wor, 34)
+SAX.characters(
+, 1)
+SAX.endElementNs(doc, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/cdata2.sax2 b/result/noent/cdata2.sax2
new file mode 100644
index 00000000..d1420e93
--- /dev/null
+++ b/result/noent/cdata2.sax2
@@ -0,0 +1,17 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(collection, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 3)
+SAX.startElementNs(test, NULL, NULL, 0, 0, 0)
+SAX.pcdata(
+ <![CDATA[abc], 18)
+SAX.characters(], 1)
+SAX.characters(>, 1)
+SAX.pcdata(
+ , 3)
+SAX.endElementNs(test, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.endElementNs(collection, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/comment.xml.sax2 b/result/noent/comment.xml.sax2
new file mode 100644
index 00000000..da57f508
--- /dev/null
+++ b/result/noent/comment.xml.sax2
@@ -0,0 +1,17 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(doc, NULL, NULL, 0, 0, 0)
+SAX.characters(
+, 1)
+SAX.comment( document start )
+SAX.characters(
+, 1)
+SAX.startElementNs(empty, NULL, NULL, 0, 0, 0)
+SAX.endElementNs(empty, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.comment( document end )
+SAX.characters(
+, 1)
+SAX.endElementNs(doc, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/comment2.xml.sax2 b/result/noent/comment2.xml.sax2
new file mode 100644
index 00000000..a2867440
--- /dev/null
+++ b/result/noent/comment2.xml.sax2
@@ -0,0 +1,13 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.comment( document start )
+SAX.startElementNs(doc, NULL, NULL, 0, 0, 0)
+SAX.characters(
+, 1)
+SAX.startElementNs(empty, NULL, NULL, 0, 0, 0)
+SAX.endElementNs(empty, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.endElementNs(doc, NULL, NULL)
+SAX.comment( document end )
+SAX.endDocument()
diff --git a/result/noent/comment3.xml.sax2 b/result/noent/comment3.xml.sax2
new file mode 100644
index 00000000..a5f1fd69
--- /dev/null
+++ b/result/noent/comment3.xml.sax2
@@ -0,0 +1,167 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.comment( test of very very long comments and buffer limits
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+01234567890123456789012345678901234567890123456789
+)
+SAX.startElementNs(doc, NULL, NULL, 0, 0, 0)
+SAX.endElementNs(doc, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/comment4.xml.sax2 b/result/noent/comment4.xml.sax2
new file mode 100644
index 00000000..0e2611fe
--- /dev/null
+++ b/result/noent/comment4.xml.sax2
@@ -0,0 +1,8 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.comment( test of non ascii comments like là et très )
+SAX.comment(à another one )
+SAX.comment( another one à)
+SAX.startElementNs(doc, NULL, NULL, 0, 0, 0)
+SAX.endElementNs(doc, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/comment5.xml.sax2 b/result/noent/comment5.xml.sax2
new file mode 100644
index 00000000..f0940b2c
--- /dev/null
+++ b/result/noent/comment5.xml.sax2
@@ -0,0 +1,12 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.comment( test of hyphen and line break handling
+ some text - interrupted -
+- - - - - - - - - - - - - - - - - - - - - -
+ this should stop here^
+
+
+)
+SAX.startElementNs(doc, NULL, NULL, 0, 0, 0)
+SAX.endElementNs(doc, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/comment6.xml.sax2 b/result/noent/comment6.xml.sax2
new file mode 100644
index 00000000..7dd7dc08
--- /dev/null
+++ b/result/noent/comment6.xml.sax2
@@ -0,0 +1,17 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.comment(
+long comment long comment long comment long comment long comment long comment
+long comment long comment long comment long comment long comment long comment
+long comment long comment long comment long comment long comment long comment
+long comment long comment long comment long comment long comment long comment
+long comment long comment long comment long comment long comment long comment
+long comment long comment long comment long comment long comment long comment
+long comment long comment long comment long comment long comment long comment
+)
+SAX.internalSubset(a, , )
+SAX.elementDecl(a, 1, ...)
+SAX.externalSubset(a, , )
+SAX.startElementNs(a, NULL, NULL, 0, 0, 0)
+SAX.endElementNs(a, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/dav1.sax2 b/result/noent/dav1.sax2
new file mode 100644
index 00000000..44ad11c3
--- /dev/null
+++ b/result/noent/dav1.sax2
@@ -0,0 +1,81 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(multistatus, D, 'http://www.ietf.org/standards/dav/', 2, xmlns:D='http://www.ietf.org/standards/dav/', xmlns:R='http://www.foo.bar/boxschema', 0, 0)
+SAX.characters(
+ , 3)
+SAX.startElementNs(response, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(prop, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 7)
+SAX.startElementNs(bigbox, R, 'http://www.foo.bar/boxschema', 0, 0, 0)
+SAX.characters(
+ , 9)
+SAX.startElementNs(BoxType, R, 'http://www.foo.bar/boxschema', 0, 0, 0)
+SAX.characters(Box type A, 10)
+SAX.endElementNs(BoxType, R, 'http://www.foo.bar/boxschema')
+SAX.characters(
+ , 7)
+SAX.endElementNs(bigbox, R, 'http://www.foo.bar/boxschema')
+SAX.characters(
+ , 7)
+SAX.startElementNs(author, R, 'http://www.foo.bar/boxschema', 0, 0, 0)
+SAX.characters(
+ , 9)
+SAX.startElementNs(Name, R, 'http://www.foo.bar/boxschema', 0, 0, 0)
+SAX.characters(J.J. Dingleheimerschmidt, 24)
+SAX.endElementNs(Name, R, 'http://www.foo.bar/boxschema')
+SAX.characters(
+ , 7)
+SAX.endElementNs(author, R, 'http://www.foo.bar/boxschema')
+SAX.characters(
+ , 5)
+SAX.endElementNs(prop, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(status, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(HTTP/1.1 200 OK, 15)
+SAX.endElementNs(status, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(response, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 3)
+SAX.startElementNs(response, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(prop, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 7)
+SAX.startElementNs(DingALing, R, 'http://www.foo.bar/boxschema', 0, 0, 0)
+SAX.endElementNs(DingALing, R, 'http://www.foo.bar/boxschema')
+SAX.characters(
+ , 7)
+SAX.startElementNs(Random, R, 'http://www.foo.bar/boxschema', 0, 0, 0)
+SAX.endElementNs(Random, R, 'http://www.foo.bar/boxschema')
+SAX.characters(
+ , 5)
+SAX.endElementNs(prop, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(status, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(HTTP/1.1 403 Forbidden, 22)
+SAX.endElementNs(status, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(responsedescription, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters( The user does not have access, 64)
+SAX.endElementNs(responsedescription, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(response, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 3)
+SAX.startElementNs(responsedescription, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters( There has been an access viol, 44)
+SAX.endElementNs(responsedescription, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+, 1)
+SAX.endElementNs(multistatus, D, 'http://www.ietf.org/standards/dav/')
+SAX.endDocument()
diff --git a/result/noent/dav10.sax2 b/result/noent/dav10.sax2
new file mode 100644
index 00000000..e93e22c9
--- /dev/null
+++ b/result/noent/dav10.sax2
@@ -0,0 +1,12 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(owner, D, 'http://www.ietf.org/standards/dav/', 1, xmlns:D='http://www.ietf.org/standards/dav/', 0, 0)
+SAX.characters(
+ , 3)
+SAX.startElementNs(href, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(http://www.ics.uci.edu/~ejw/co, 40)
+SAX.endElementNs(href, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+, 1)
+SAX.endElementNs(owner, D, 'http://www.ietf.org/standards/dav/')
+SAX.endDocument()
diff --git a/result/noent/dav11.sax2 b/result/noent/dav11.sax2
new file mode 100644
index 00000000..d0f23290
--- /dev/null
+++ b/result/noent/dav11.sax2
@@ -0,0 +1,62 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(prop, D, 'http://www.ietf.org/standards/dav/', 1, xmlns:D='http://www.ietf.org/standards/dav/', 0, 0)
+SAX.characters(
+ , 3)
+SAX.startElementNs(lockdiscovery, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(activelock, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 7)
+SAX.startElementNs(locktype, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(write, 5)
+SAX.endElementNs(locktype, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(lockscope, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(exclusive, 9)
+SAX.endElementNs(lockscope, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(addlocks, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.endElementNs(addlocks, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(owner, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 9)
+SAX.startElementNs(href, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ http://www.ics.uci.edu/~ejw, 46)
+SAX.endElementNs(href, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(owner, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(timeout, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(Second-604800, 13)
+SAX.endElementNs(timeout, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(locktoken, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 9)
+SAX.startElementNs(href, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ opaquelocktoken:xyz122393, 59)
+SAX.endElementNs(href, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(locktoken, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.endElementNs(activelock, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(lockdiscovery, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+, 1)
+SAX.endElementNs(prop, D, 'http://www.ietf.org/standards/dav/')
+SAX.endDocument()
diff --git a/result/noent/dav12.sax2 b/result/noent/dav12.sax2
new file mode 100644
index 00000000..61715b62
--- /dev/null
+++ b/result/noent/dav12.sax2
@@ -0,0 +1,6 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(href, D, 'http://www.ietf.org/standards/dav/', 1, xmlns:D='http://www.ietf.org/standards/dav/', 0, 0)
+SAX.characters(http://www.ics.uci.edu/~ejw/co, 40)
+SAX.endElementNs(href, D, 'http://www.ietf.org/standards/dav/')
+SAX.endDocument()
diff --git a/result/noent/dav13.sax2 b/result/noent/dav13.sax2
new file mode 100644
index 00000000..f6c53819
--- /dev/null
+++ b/result/noent/dav13.sax2
@@ -0,0 +1,46 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(multistatus, D, 'http://www.ietf.org/standards/dav/', 1, xmlns:D='http://www.ietf.org/standards/dav/', 0, 0)
+SAX.characters(
+ , 3)
+SAX.startElementNs(response, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(href, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ http://webdav.sb.aol.com/, 66)
+SAX.endElementNs(href, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(href, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ http://webdav.sb.aol.com/, 54)
+SAX.endElementNs(href, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(status, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(HTTP/1.1 202 Accepted, 21)
+SAX.endElementNs(status, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(response, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 3)
+SAX.startElementNs(response, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(href, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(http://foo.bar/blah, 19)
+SAX.endElementNs(href, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(status, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(HTTP/1.1 403 Forbidden, 22)
+SAX.endElementNs(status, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(response, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+, 1)
+SAX.endElementNs(multistatus, D, 'http://www.ietf.org/standards/dav/')
+SAX.endDocument()
diff --git a/result/noent/dav15.sax2 b/result/noent/dav15.sax2
new file mode 100644
index 00000000..6040cd10
--- /dev/null
+++ b/result/noent/dav15.sax2
@@ -0,0 +1,76 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(prop, D, 'http://www.ietf.org/standards/dav/', 2, xmlns:D='http://www.ietf.org/standards/dav/', xmlns:F='http://www.foocorp.com/Project/', 0, 0)
+SAX.characters(
+ , 3)
+SAX.startElementNs(Source, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(link, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 7)
+SAX.startElementNs(projfiles, F, 'http://www.foocorp.com/Project/', 0, 0, 0)
+SAX.characters(Source, 6)
+SAX.endElementNs(projfiles, F, 'http://www.foocorp.com/Project/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(src, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(http://foo.bar/program, 22)
+SAX.endElementNs(src, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(dst, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(http://foo.bar/src/main.c, 25)
+SAX.endElementNs(dst, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.endElementNs(link, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(link, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 7)
+SAX.startElementNs(projfiles, F, 'http://www.foocorp.com/Project/', 0, 0, 0)
+SAX.characters(Library, 7)
+SAX.endElementNs(projfiles, F, 'http://www.foocorp.com/Project/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(src, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(http://foo.bar/program, 22)
+SAX.endElementNs(src, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(dst, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(http://foo.bar/src/main.lib, 27)
+SAX.endElementNs(dst, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.endElementNs(link, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(link, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 7)
+SAX.startElementNs(projfiles, F, 'http://www.foocorp.com/Project/', 0, 0, 0)
+SAX.characters(Makefile, 8)
+SAX.endElementNs(projfiles, F, 'http://www.foocorp.com/Project/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(src, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(http://foo.bar/program, 22)
+SAX.endElementNs(src, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(dst, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(http://foo.bar/src/makefile, 27)
+SAX.endElementNs(dst, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.endElementNs(link, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(Source, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+, 1)
+SAX.endElementNs(prop, D, 'http://www.ietf.org/standards/dav/')
+SAX.endDocument()
diff --git a/result/noent/dav16.sax2 b/result/noent/dav16.sax2
new file mode 100644
index 00000000..1ede22ef
--- /dev/null
+++ b/result/noent/dav16.sax2
@@ -0,0 +1,17 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(propfind, D, 'http://www.ietf.org/standards/dav/', 1, xmlns:D='http://www.ietf.org/standards/dav/', 0, 0)
+SAX.characters(
+ , 3)
+SAX.startElementNs(prop, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(lockdiscovery, NULL, NULL, 0, 0, 0)
+SAX.endElementNs(lockdiscovery, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.endElementNs(prop, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+, 1)
+SAX.endElementNs(propfind, D, 'http://www.ietf.org/standards/dav/')
+SAX.endDocument()
diff --git a/result/noent/dav17.sax2 b/result/noent/dav17.sax2
new file mode 100644
index 00000000..48185a23
--- /dev/null
+++ b/result/noent/dav17.sax2
@@ -0,0 +1,78 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(multistatus, D, 'http://www.ietf.org/standards/dav/', 1, xmlns:D='http://www.ietf.org/standards/dav/', 0, 0)
+SAX.characters(
+ , 3)
+SAX.startElementNs(response, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(prop, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 7)
+SAX.startElementNs(lockdiscovery, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 9)
+SAX.startElementNs(activelock, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 11)
+SAX.startElementNs(locktype, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(write, 5)
+SAX.endElementNs(locktype, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 11)
+SAX.startElementNs(lockscope, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(exclusive, 9)
+SAX.endElementNs(lockscope, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 11)
+SAX.startElementNs(addlocks, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 13)
+SAX.startElementNs(href, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(http://foo.com/doc/, 19)
+SAX.endElementNs(href, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 11)
+SAX.endElementNs(addlocks, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 11)
+SAX.startElementNs(owner, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(Jane Smith, 10)
+SAX.endElementNs(owner, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 11)
+SAX.startElementNs(timeout, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(Infinite, 8)
+SAX.endElementNs(timeout, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 11)
+SAX.startElementNs(locktoken, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 13)
+SAX.startElementNs(href, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(iamuri:unique!!!!!, 18)
+SAX.endElementNs(href, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 11)
+SAX.endElementNs(locktoken, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 9)
+SAX.endElementNs(activelock, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(lockdiscovery, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.endElementNs(prop, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(status, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(HTTP/1.1 200 OK, 15)
+SAX.endElementNs(status, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(response, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+, 1)
+SAX.endElementNs(multistatus, D, 'http://www.ietf.org/standards/dav/')
+SAX.endDocument()
diff --git a/result/noent/dav18.sax2 b/result/noent/dav18.sax2
new file mode 100644
index 00000000..cddc100e
--- /dev/null
+++ b/result/noent/dav18.sax2
@@ -0,0 +1,17 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(propfind, D, 'http://www.ietf.org/standards/dav/', 1, xmlns:D='http://www.ietf.org/standards/dav/', 0, 0)
+SAX.characters(
+ , 3)
+SAX.startElementNs(prop, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(supportedlock, NULL, NULL, 0, 0, 0)
+SAX.endElementNs(supportedlock, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.endElementNs(prop, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+, 1)
+SAX.endElementNs(propfind, D, 'http://www.ietf.org/standards/dav/')
+SAX.endDocument()
diff --git a/result/noent/dav19.sax2 b/result/noent/dav19.sax2
new file mode 100644
index 00000000..f0dd4025
--- /dev/null
+++ b/result/noent/dav19.sax2
@@ -0,0 +1,62 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(multistatus, D, 'http://www.ietf.org/standards/dav/', 1, xmlns:D='http://www.ietf.org/standards/dav/', 0, 0)
+SAX.characters(
+ , 3)
+SAX.startElementNs(response, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(prop, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 7)
+SAX.startElementNs(supportedlock, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 9)
+SAX.startElementNs(LockEntry, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 11)
+SAX.startElementNs(locktype, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(Write, 5)
+SAX.endElementNs(locktype, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 11)
+SAX.startElementNs(lockscope, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(Exclusive, 9)
+SAX.endElementNs(lockscope, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 9)
+SAX.endElementNs(LockEntry, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 9)
+SAX.startElementNs(LockEntry, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 11)
+SAX.startElementNs(locktype, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(Write, 5)
+SAX.endElementNs(locktype, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 11)
+SAX.startElementNs(lockscope, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(Shared, 6)
+SAX.endElementNs(lockscope, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 9)
+SAX.endElementNs(LockEntry, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(supportedlock, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.endElementNs(prop, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(status, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(HTTP/1.1 200 OK, 15)
+SAX.endElementNs(status, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(response, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+, 1)
+SAX.endElementNs(multistatus, D, 'http://www.ietf.org/standards/dav/')
+SAX.endDocument()
diff --git a/result/noent/dav2.sax2 b/result/noent/dav2.sax2
new file mode 100644
index 00000000..22c7bb0b
--- /dev/null
+++ b/result/noent/dav2.sax2
@@ -0,0 +1,84 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(multistatus, S, 'http://www.ietf.org/standards/dav/', 2, xmlns:S='http://www.ietf.org/standards/dav/', xmlns:R='http://www.foo.bar/boxschema/', 0, 0)
+SAX.characters(
+ , 3)
+SAX.startElementNs(response, S, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(href, S, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(http://www.foo.bar/container/, 29)
+SAX.endElementNs(href, S, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(prop, S, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 7)
+SAX.startElementNs(bigbox, R, 'http://www.foo.bar/boxschema/', 0, 0, 0)
+SAX.characters(
+ , 9)
+SAX.startElementNs(BoxType, R, 'http://www.foo.bar/boxschema/', 0, 0, 0)
+SAX.characters(Box type A, 10)
+SAX.endElementNs(BoxType, R, 'http://www.foo.bar/boxschema/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(bigbox, R, 'http://www.foo.bar/boxschema/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(author, R, 'http://www.foo.bar/boxschema/', 0, 0, 0)
+SAX.characters(
+ , 9)
+SAX.startElementNs(Name, R, 'http://www.foo.bar/boxschema/', 0, 0, 0)
+SAX.characters(Hadrian, 7)
+SAX.endElementNs(Name, R, 'http://www.foo.bar/boxschema/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(author, R, 'http://www.foo.bar/boxschema/')
+SAX.characters(
+ , 5)
+SAX.endElementNs(prop, S, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(status, S, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(HTTP 1.1 200 OK, 15)
+SAX.endElementNs(status, S, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(response, S, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 3)
+SAX.startElementNs(response, S, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(href, S, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(http://www.foo.bar/container/i, 39)
+SAX.endElementNs(href, S, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(prop, S, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 7)
+SAX.startElementNs(bigbox, R, 'http://www.foo.bar/boxschema/', 0, 0, 0)
+SAX.characters(
+ , 9)
+SAX.startElementNs(BoxType, R, 'http://www.foo.bar/boxschema/', 0, 0, 0)
+SAX.characters(Box type B, 10)
+SAX.endElementNs(BoxType, R, 'http://www.foo.bar/boxschema/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(bigbox, R, 'http://www.foo.bar/boxschema/')
+SAX.characters(
+ , 5)
+SAX.endElementNs(prop, S, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(status, S, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(HTTP 1.1 200 OK, 15)
+SAX.endElementNs(status, S, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(response, S, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+, 1)
+SAX.endElementNs(multistatus, S, 'http://www.ietf.org/standards/dav/')
+SAX.endDocument()
diff --git a/result/noent/dav3.sax2 b/result/noent/dav3.sax2
new file mode 100644
index 00000000..0088f292
--- /dev/null
+++ b/result/noent/dav3.sax2
@@ -0,0 +1,63 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(multistatus, D, 'http://www.ietf.org/standards/dav/', 2, xmlns:D='http://www.ietf.org/standards/dav/', xmlns:R='http://www.foo.bar/boxschema/', 0, 0)
+SAX.characters(
+ , 3)
+SAX.startElementNs(response, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(href, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(http://www.foo.bar/container/, 29)
+SAX.endElementNs(href, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(prop, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 7)
+SAX.startElementNs(bigbox, R, 'http://www.foo.bar/boxschema/', 0, 0, 0)
+SAX.endElementNs(bigbox, R, 'http://www.foo.bar/boxschema/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(author, R, 'http://www.foo.bar/boxschema/', 0, 0, 0)
+SAX.endElementNs(author, R, 'http://www.foo.bar/boxschema/')
+SAX.characters(
+ , 5)
+SAX.endElementNs(prop, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(status, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(HTTP 1.1 200 OK, 15)
+SAX.endElementNs(status, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(response, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 3)
+SAX.startElementNs(response, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(href, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(http://www.foo.bar/container/i, 39)
+SAX.endElementNs(href, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(prop, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 7)
+SAX.startElementNs(bigbox, R, 'http://www.foo.bar/boxschema/', 0, 0, 0)
+SAX.endElementNs(bigbox, R, 'http://www.foo.bar/boxschema/')
+SAX.characters(
+ , 5)
+SAX.endElementNs(prop, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(status, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(HTTP 1.1 200 OK, 15)
+SAX.endElementNs(status, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(response, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+, 1)
+SAX.endElementNs(multistatus, D, 'http://www.ietf.org/standards/dav/')
+SAX.endDocument()
diff --git a/result/noent/dav4.sax2 b/result/noent/dav4.sax2
new file mode 100644
index 00000000..58fb8acb
--- /dev/null
+++ b/result/noent/dav4.sax2
@@ -0,0 +1,51 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(propertyupdate, D, 'http://www.ietf.org/standards/dav/', 2, xmlns:D='http://www.ietf.org/standards/dav/', xmlns:Z='http://www.w3.com/standards/z39.50/', 0, 0)
+SAX.characters(
+ , 3)
+SAX.startElementNs(set, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(prop, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 7)
+SAX.startElementNs(authors, Z, 'http://www.w3.com/standards/z39.50/', 0, 0, 0)
+SAX.characters(
+ , 9)
+SAX.startElementNs(Author, Z, 'http://www.w3.com/standards/z39.50/', 0, 0, 0)
+SAX.characters(Jim Whitehead, 13)
+SAX.endElementNs(Author, Z, 'http://www.w3.com/standards/z39.50/')
+SAX.characters(
+ , 9)
+SAX.startElementNs(Author, Z, 'http://www.w3.com/standards/z39.50/', 0, 0, 0)
+SAX.characters(Roy Fielding, 12)
+SAX.endElementNs(Author, Z, 'http://www.w3.com/standards/z39.50/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(authors, Z, 'http://www.w3.com/standards/z39.50/')
+SAX.characters(
+ , 5)
+SAX.endElementNs(prop, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(set, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 3)
+SAX.startElementNs(remove, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(prop, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 7)
+SAX.startElementNs(Copyright-Owner, Z, 'http://www.w3.com/standards/z39.50/', 0, 0, 0)
+SAX.endElementNs(Copyright-Owner, Z, 'http://www.w3.com/standards/z39.50/')
+SAX.characters(
+ , 5)
+SAX.endElementNs(prop, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(remove, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+, 1)
+SAX.endElementNs(propertyupdate, D, 'http://www.ietf.org/standards/dav/')
+SAX.endDocument()
diff --git a/result/noent/dav5.sax2 b/result/noent/dav5.sax2
new file mode 100644
index 00000000..6062ccae
--- /dev/null
+++ b/result/noent/dav5.sax2
@@ -0,0 +1,54 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(multistatus, D, 'http://www.ietf.org/standards/dav/', 2, xmlns:D='http://www.ietf.org/standards/dav/', xmlns:Z='http://www.w3.com/standards/z39.50/', 0, 0)
+SAX.characters(
+ , 3)
+SAX.startElementNs(response, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(prop, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 7)
+SAX.startElementNs(Authors, Z, 'http://www.w3.com/standards/z39.50/', 0, 0, 0)
+SAX.endElementNs(Authors, Z, 'http://www.w3.com/standards/z39.50/')
+SAX.characters(
+ , 5)
+SAX.endElementNs(prop, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(status, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(HTTP/1.1 420 Method Failure, 27)
+SAX.endElementNs(status, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(response, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 3)
+SAX.startElementNs(response, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(prop, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 7)
+SAX.startElementNs(Copyright-Owner, Z, 'http://www.w3.com/standards/z39.50/', 0, 0, 0)
+SAX.endElementNs(Copyright-Owner, Z, 'http://www.w3.com/standards/z39.50/')
+SAX.characters(
+ , 5)
+SAX.endElementNs(prop, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(status, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(HTTP/1.1 409 Conflict, 21)
+SAX.endElementNs(status, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(response, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 3)
+SAX.startElementNs(responsedescription, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters( Copyright Owner can not be de, 47)
+SAX.endElementNs(responsedescription, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+, 1)
+SAX.endElementNs(multistatus, D, 'http://www.ietf.org/standards/dav/')
+SAX.endDocument()
diff --git a/result/noent/dav6.sax2 b/result/noent/dav6.sax2
new file mode 100644
index 00000000..31952c54
--- /dev/null
+++ b/result/noent/dav6.sax2
@@ -0,0 +1,66 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(multistatus, D, 'http://www.ietf.org/standards/dav/', 1, xmlns:D='http://www.ietf.org/standards/dav/', 0, 0)
+SAX.characters(
+ , 3)
+SAX.startElementNs(response, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(href, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(http://www.microsoft.com/user/, 55)
+SAX.endElementNs(href, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(prop, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 7)
+SAX.startElementNs(resourcetype, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 9)
+SAX.startElementNs(collection, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.endElementNs(collection, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(resourcetype, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.endElementNs(prop, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(status, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(HTTP 1.1 200 OK, 15)
+SAX.endElementNs(status, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(response, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 3)
+SAX.startElementNs(response, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(href, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ http://www.microsoft.co, 66)
+SAX.endElementNs(href, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(prop, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 7)
+SAX.startElementNs(resourcetype, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.endElementNs(resourcetype, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.endElementNs(prop, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(status, D, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(HTTP 1.1 200 OK, 15)
+SAX.endElementNs(status, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(response, D, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+, 1)
+SAX.endElementNs(multistatus, D, 'http://www.ietf.org/standards/dav/')
+SAX.endDocument()
diff --git a/result/noent/dav7.sax2 b/result/noent/dav7.sax2
new file mode 100644
index 00000000..1d51e74c
--- /dev/null
+++ b/result/noent/dav7.sax2
@@ -0,0 +1,60 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(multistatus, d, 'http://www.ietf.org/standards/dav/', 1, xmlns:d='http://www.ietf.org/standards/dav/', 0, 0)
+SAX.characters(
+ , 3)
+SAX.startElementNs(response, d, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(href, d, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(http://www.foo.bar/container/r, 38)
+SAX.endElementNs(href, d, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(href, d, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(http://www.foo.bar/container/r, 38)
+SAX.endElementNs(href, d, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(status, d, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(HTTP/1.1 200 OK, 15)
+SAX.endElementNs(status, d, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(response, d, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 3)
+SAX.startElementNs(response, d, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(href, d, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(http://www.foo.bar/container/, 29)
+SAX.endElementNs(href, d, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(status, d, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(HTTP/1.1 420 Method Failure, 27)
+SAX.endElementNs(status, d, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(response, d, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 3)
+SAX.startElementNs(response, d, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(href, d, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(http://www.foo.bar/container/r, 38)
+SAX.endElementNs(href, d, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(status, d, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(HTTP/1.1 412 Precondition Fail, 32)
+SAX.endElementNs(status, d, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(response, d, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+, 1)
+SAX.endElementNs(multistatus, d, 'http://www.ietf.org/standards/dav/')
+SAX.endDocument()
diff --git a/result/noent/dav8.sax2 b/result/noent/dav8.sax2
new file mode 100644
index 00000000..7de547e2
--- /dev/null
+++ b/result/noent/dav8.sax2
@@ -0,0 +1,54 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(multistatus, d, 'http://www.ietf.org/standards/dav/', 1, xmlns:d='http://www.ietf.org/standards/dav/', 0, 0)
+SAX.characters(
+ , 3)
+SAX.startElementNs(response, d, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(href, d, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(http://www.foo.bar/othercontai, 43)
+SAX.endElementNs(href, d, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(href, d, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(http://www.foo.bar/othercontai, 43)
+SAX.endElementNs(href, d, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(href, d, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(http://www.foo.bar/othercontai, 34)
+SAX.endElementNs(href, d, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(href, d, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(http://www.foo.bar/othercontai, 39)
+SAX.endElementNs(href, d, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(status, d, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(HTTP/1.1 201 Created, 20)
+SAX.endElementNs(status, d, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(response, d, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 3)
+SAX.startElementNs(response, d, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(href, d, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(http://www.foo.bar/othercontai, 37)
+SAX.endElementNs(href, d, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(status, d, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(HTTP/1.1 412 Precondition Fail, 32)
+SAX.endElementNs(status, d, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(response, d, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+, 1)
+SAX.endElementNs(multistatus, d, 'http://www.ietf.org/standards/dav/')
+SAX.endDocument()
diff --git a/result/noent/dav9.sax2 b/result/noent/dav9.sax2
new file mode 100644
index 00000000..26e49426
--- /dev/null
+++ b/result/noent/dav9.sax2
@@ -0,0 +1,70 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(multistatus, d, 'http://www.ietf.org/standards/dav/', 1, xmlns:d='http://www.ietf.org/standards/dav/', 0, 0)
+SAX.characters(
+ , 3)
+SAX.startElementNs(response, d, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(href, d, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(http://www.foo.bar/container/r, 38)
+SAX.endElementNs(href, d, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(href, d, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(http://www.foo.bar/container/r, 38)
+SAX.endElementNs(href, d, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(href, d, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(http://www.foo.bar/container/, 29)
+SAX.endElementNs(href, d, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(href, d, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(http://www.foo.bar/container/C, 34)
+SAX.endElementNs(href, d, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(status, d, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(HTTP/1.1 201 Created, 20)
+SAX.endElementNs(status, d, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(response, d, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 3)
+SAX.startElementNs(response, d, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(href, d, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(http://www.foo.bar/container/C, 31)
+SAX.endElementNs(href, d, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(status, d, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(HTTP/1.1 420 Method Failure, 27)
+SAX.endElementNs(status, d, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(response, d, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 3)
+SAX.startElementNs(response, d, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(href, d, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(http://www.foo.bar/othercontai, 36)
+SAX.endElementNs(href, d, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(status, d, 'http://www.ietf.org/standards/dav/', 0, 0, 0)
+SAX.characters(HTTP/1.1 409 Conflict, 21)
+SAX.endElementNs(status, d, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(response, d, 'http://www.ietf.org/standards/dav/')
+SAX.characters(
+, 1)
+SAX.endElementNs(multistatus, d, 'http://www.ietf.org/standards/dav/')
+SAX.endDocument()
diff --git a/result/noent/defattr.xml.sax2 b/result/noent/defattr.xml.sax2
new file mode 100644
index 00000000..dfeba494
--- /dev/null
+++ b/result/noent/defattr.xml.sax2
@@ -0,0 +1,9 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(doc, , )
+SAX.elementDecl(doc, 1, ...)
+SAX.attributeDecl(doc, xmlns, 1, 4, http://www.example.com/, ...)
+SAX.externalSubset(doc, , )
+SAX.startElementNs(doc, NULL, 'http://www.example.com/', 1, xmlns='http://www.example.com/', 0, 0)
+SAX.endElementNs(doc, NULL, 'http://www.example.com/')
+SAX.endDocument()
diff --git a/result/noent/defattr2.xml.sax2 b/result/noent/defattr2.xml.sax2
new file mode 100644
index 00000000..0f772711
--- /dev/null
+++ b/result/noent/defattr2.xml.sax2
@@ -0,0 +1,11 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(doc, , )
+SAX.elementDecl(doc, 1, ...)
+SAX.attributeDecl(doc, defatt, 9, 1, 0, ...)
+SAX.attributeDecl(doc, xmlns:tst, 1, 4, http://example.org, ...)
+SAX.attributeDecl(doc, tst:att, 9, 1, 1, ...)
+SAX.externalSubset(doc, , )
+SAX.startElementNs(doc, NULL, NULL, 1, xmlns:tst='http://example.org', 3, 2, att='1"/>...', 1, defatt='0...', 1, tst:att='1...', 1)
+SAX.endElementNs(doc, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/dia1.sax2 b/result/noent/dia1.sax2
new file mode 100644
index 00000000..4821c9bf
--- /dev/null
+++ b/result/noent/dia1.sax2
@@ -0,0 +1,323 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(diagram, dia, 'http://www.lysator.liu.se/~alla/dia/', 1, xmlns:dia='http://www.lysator.liu.se/~alla/dia/', 0, 0)
+SAX.characters(
+ , 3)
+SAX.startElementNs(diagramdata, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='back...', 10)
+SAX.characters(
+ , 7)
+SAX.startElementNs(color, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='#fff...', 7)
+SAX.endElementNs(color, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 5)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(diagramdata, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 3)
+SAX.startElementNs(layer, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 2, 0, name='Back...', 10, visible='true...', 4)
+SAX.characters(
+ , 5)
+SAX.startElementNs(object, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 3, 0, type='Stan...', 15, version='0" i...', 1, id='O0">...', 2)
+SAX.characters(
+ , 7)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='obj_...', 7)
+SAX.characters(
+ , 9)
+SAX.startElementNs(point, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='1.95...', 9)
+SAX.endElementNs(point, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='obj_...', 6)
+SAX.characters(
+ , 9)
+SAX.startElementNs(rectangle, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='1.9,...', 15)
+SAX.endElementNs(rectangle, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='conn...', 14)
+SAX.characters(
+ , 9)
+SAX.startElementNs(point, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='1.95...', 9)
+SAX.endElementNs(point, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 9)
+SAX.startElementNs(point, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='10.9...', 9)
+SAX.endElementNs(point, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='line...', 10)
+SAX.characters(
+ , 9)
+SAX.startElementNs(color, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='#000...', 7)
+SAX.endElementNs(color, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='line...', 10)
+SAX.characters(
+ , 9)
+SAX.startElementNs(real, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='0.1"...', 3)
+SAX.endElementNs(real, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='line...', 10)
+SAX.characters(
+ , 9)
+SAX.startElementNs(enum, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='0"/>...', 1)
+SAX.endElementNs(enum, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='star...', 11)
+SAX.characters(
+ , 9)
+SAX.startElementNs(enum, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='0"/>...', 1)
+SAX.endElementNs(enum, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='end_...', 9)
+SAX.characters(
+ , 9)
+SAX.startElementNs(enum, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='0"/>...', 1)
+SAX.endElementNs(enum, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(connections, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 0, 0)
+SAX.characters(
+ , 9)
+SAX.startElementNs(connection, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 3, 0, handle='1" t...', 1, to='O2" ...', 2, connection='3"/>...', 1)
+SAX.endElementNs(connection, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(connections, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 5)
+SAX.endElementNs(object, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(object, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 3, 0, type='Stan...', 15, version='0" i...', 1, id='O1">...', 2)
+SAX.characters(
+ , 7)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='obj_...', 7)
+SAX.characters(
+ , 9)
+SAX.startElementNs(point, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='4.8,...', 8)
+SAX.endElementNs(point, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='obj_...', 6)
+SAX.characters(
+ , 9)
+SAX.startElementNs(rectangle, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='2.57...', 27)
+SAX.endElementNs(rectangle, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='text...', 4)
+SAX.characters(
+ , 9)
+SAX.startElementNs(composite, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, type='text...', 4)
+SAX.characters(
+ , 11)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='stri...', 6)
+SAX.characters(
+ , 13)
+SAX.startElementNs(string, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='sdfs...', 7)
+SAX.endElementNs(string, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 11)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 11)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='font...', 4)
+SAX.characters(
+ , 13)
+SAX.startElementNs(font, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='Cour...', 7)
+SAX.endElementNs(font, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 11)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 11)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='heig...', 6)
+SAX.characters(
+ , 13)
+SAX.startElementNs(real, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='1"/>...', 1)
+SAX.endElementNs(real, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 11)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 11)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='pos"...', 3)
+SAX.characters(
+ , 13)
+SAX.startElementNs(point, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='4.8,...', 8)
+SAX.endElementNs(point, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 11)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 11)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='colo...', 5)
+SAX.characters(
+ , 13)
+SAX.startElementNs(color, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='#000...', 7)
+SAX.endElementNs(color, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 11)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 11)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='alig...', 9)
+SAX.characters(
+ , 13)
+SAX.startElementNs(enum, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='1"/>...', 1)
+SAX.endElementNs(enum, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 11)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 9)
+SAX.endElementNs(composite, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 5)
+SAX.endElementNs(object, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(object, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 3, 0, type='Stan...', 14, version='0" i...', 1, id='O2">...', 2)
+SAX.characters(
+ , 7)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='obj_...', 7)
+SAX.characters(
+ , 9)
+SAX.startElementNs(point, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='10.9...', 9)
+SAX.endElementNs(point, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='obj_...', 6)
+SAX.characters(
+ , 9)
+SAX.startElementNs(rectangle, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='10.9...', 20)
+SAX.endElementNs(rectangle, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='elem...', 11)
+SAX.characters(
+ , 9)
+SAX.startElementNs(point, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='10.9...', 9)
+SAX.endElementNs(point, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='elem...', 10)
+SAX.characters(
+ , 9)
+SAX.startElementNs(real, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='2.05...', 4)
+SAX.endElementNs(real, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='elem...', 11)
+SAX.characters(
+ , 9)
+SAX.startElementNs(real, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='2"/>...', 1)
+SAX.endElementNs(real, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='bord...', 12)
+SAX.characters(
+ , 9)
+SAX.startElementNs(real, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='0.1"...', 3)
+SAX.endElementNs(real, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='bord...', 12)
+SAX.characters(
+ , 9)
+SAX.startElementNs(color, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='#000...', 7)
+SAX.endElementNs(color, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='inne...', 11)
+SAX.characters(
+ , 9)
+SAX.startElementNs(color, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='#fff...', 7)
+SAX.endElementNs(color, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='line...', 10)
+SAX.characters(
+ , 9)
+SAX.startElementNs(enum, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='0"/>...', 1)
+SAX.endElementNs(enum, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 5)
+SAX.endElementNs(object, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(layer, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+, 1)
+SAX.endElementNs(diagram, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.endDocument()
diff --git a/result/noent/dia2.sax2 b/result/noent/dia2.sax2
new file mode 100644
index 00000000..4821c9bf
--- /dev/null
+++ b/result/noent/dia2.sax2
@@ -0,0 +1,323 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(diagram, dia, 'http://www.lysator.liu.se/~alla/dia/', 1, xmlns:dia='http://www.lysator.liu.se/~alla/dia/', 0, 0)
+SAX.characters(
+ , 3)
+SAX.startElementNs(diagramdata, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='back...', 10)
+SAX.characters(
+ , 7)
+SAX.startElementNs(color, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='#fff...', 7)
+SAX.endElementNs(color, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 5)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(diagramdata, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 3)
+SAX.startElementNs(layer, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 2, 0, name='Back...', 10, visible='true...', 4)
+SAX.characters(
+ , 5)
+SAX.startElementNs(object, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 3, 0, type='Stan...', 15, version='0" i...', 1, id='O0">...', 2)
+SAX.characters(
+ , 7)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='obj_...', 7)
+SAX.characters(
+ , 9)
+SAX.startElementNs(point, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='1.95...', 9)
+SAX.endElementNs(point, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='obj_...', 6)
+SAX.characters(
+ , 9)
+SAX.startElementNs(rectangle, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='1.9,...', 15)
+SAX.endElementNs(rectangle, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='conn...', 14)
+SAX.characters(
+ , 9)
+SAX.startElementNs(point, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='1.95...', 9)
+SAX.endElementNs(point, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 9)
+SAX.startElementNs(point, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='10.9...', 9)
+SAX.endElementNs(point, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='line...', 10)
+SAX.characters(
+ , 9)
+SAX.startElementNs(color, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='#000...', 7)
+SAX.endElementNs(color, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='line...', 10)
+SAX.characters(
+ , 9)
+SAX.startElementNs(real, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='0.1"...', 3)
+SAX.endElementNs(real, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='line...', 10)
+SAX.characters(
+ , 9)
+SAX.startElementNs(enum, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='0"/>...', 1)
+SAX.endElementNs(enum, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='star...', 11)
+SAX.characters(
+ , 9)
+SAX.startElementNs(enum, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='0"/>...', 1)
+SAX.endElementNs(enum, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='end_...', 9)
+SAX.characters(
+ , 9)
+SAX.startElementNs(enum, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='0"/>...', 1)
+SAX.endElementNs(enum, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(connections, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 0, 0)
+SAX.characters(
+ , 9)
+SAX.startElementNs(connection, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 3, 0, handle='1" t...', 1, to='O2" ...', 2, connection='3"/>...', 1)
+SAX.endElementNs(connection, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(connections, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 5)
+SAX.endElementNs(object, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(object, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 3, 0, type='Stan...', 15, version='0" i...', 1, id='O1">...', 2)
+SAX.characters(
+ , 7)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='obj_...', 7)
+SAX.characters(
+ , 9)
+SAX.startElementNs(point, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='4.8,...', 8)
+SAX.endElementNs(point, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='obj_...', 6)
+SAX.characters(
+ , 9)
+SAX.startElementNs(rectangle, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='2.57...', 27)
+SAX.endElementNs(rectangle, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='text...', 4)
+SAX.characters(
+ , 9)
+SAX.startElementNs(composite, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, type='text...', 4)
+SAX.characters(
+ , 11)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='stri...', 6)
+SAX.characters(
+ , 13)
+SAX.startElementNs(string, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='sdfs...', 7)
+SAX.endElementNs(string, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 11)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 11)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='font...', 4)
+SAX.characters(
+ , 13)
+SAX.startElementNs(font, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='Cour...', 7)
+SAX.endElementNs(font, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 11)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 11)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='heig...', 6)
+SAX.characters(
+ , 13)
+SAX.startElementNs(real, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='1"/>...', 1)
+SAX.endElementNs(real, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 11)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 11)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='pos"...', 3)
+SAX.characters(
+ , 13)
+SAX.startElementNs(point, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='4.8,...', 8)
+SAX.endElementNs(point, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 11)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 11)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='colo...', 5)
+SAX.characters(
+ , 13)
+SAX.startElementNs(color, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='#000...', 7)
+SAX.endElementNs(color, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 11)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 11)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='alig...', 9)
+SAX.characters(
+ , 13)
+SAX.startElementNs(enum, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='1"/>...', 1)
+SAX.endElementNs(enum, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 11)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 9)
+SAX.endElementNs(composite, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 5)
+SAX.endElementNs(object, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(object, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 3, 0, type='Stan...', 14, version='0" i...', 1, id='O2">...', 2)
+SAX.characters(
+ , 7)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='obj_...', 7)
+SAX.characters(
+ , 9)
+SAX.startElementNs(point, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='10.9...', 9)
+SAX.endElementNs(point, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='obj_...', 6)
+SAX.characters(
+ , 9)
+SAX.startElementNs(rectangle, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='10.9...', 20)
+SAX.endElementNs(rectangle, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='elem...', 11)
+SAX.characters(
+ , 9)
+SAX.startElementNs(point, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='10.9...', 9)
+SAX.endElementNs(point, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='elem...', 10)
+SAX.characters(
+ , 9)
+SAX.startElementNs(real, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='2.05...', 4)
+SAX.endElementNs(real, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='elem...', 11)
+SAX.characters(
+ , 9)
+SAX.startElementNs(real, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='2"/>...', 1)
+SAX.endElementNs(real, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='bord...', 12)
+SAX.characters(
+ , 9)
+SAX.startElementNs(real, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='0.1"...', 3)
+SAX.endElementNs(real, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='bord...', 12)
+SAX.characters(
+ , 9)
+SAX.startElementNs(color, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='#000...', 7)
+SAX.endElementNs(color, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='inne...', 11)
+SAX.characters(
+ , 9)
+SAX.startElementNs(color, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='#fff...', 7)
+SAX.endElementNs(color, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.startElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, name='line...', 10)
+SAX.characters(
+ , 9)
+SAX.startElementNs(enum, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, val='0"/>...', 1)
+SAX.endElementNs(enum, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(attribute, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 5)
+SAX.endElementNs(object, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(layer, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+, 1)
+SAX.endElementNs(diagram, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.endDocument()
diff --git a/result/noent/dtd1.sax2 b/result/noent/dtd1.sax2
new file mode 100644
index 00000000..47be5e0e
--- /dev/null
+++ b/result/noent/dtd1.sax2
@@ -0,0 +1,9 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(MEMO, -//SGMLSOURCE//DTD MEMO//EN, http://www.sgmlsource.com/dtds/memo.dtd)
+SAX.externalSubset(MEMO, -//SGMLSOURCE//DTD MEMO//EN, http://www.sgmlsource.com/dtds/memo.dtd)
+SAX.startElementNs(MEMO, NULL, NULL, 0, 0, 0)
+SAX.characters(
+, 1)
+SAX.endElementNs(MEMO, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/dtd10.sax2 b/result/noent/dtd10.sax2
new file mode 100644
index 00000000..7f15a099
--- /dev/null
+++ b/result/noent/dtd10.sax2
@@ -0,0 +1,21 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(doc, , )
+SAX.elementDecl(doc, 4, ...)
+SAX.elementDecl(a, 3, ...)
+SAX.elementDecl(b, 3, ...)
+SAX.elementDecl(c, 3, ...)
+SAX.elementDecl(d, 3, ...)
+SAX.externalSubset(doc, , )
+SAX.startElementNs(doc, NULL, NULL, 0, 0, 0)
+SAX.startElementNs(b, NULL, NULL, 0, 0, 0)
+SAX.characters(This, 4)
+SAX.endElementNs(b, NULL, NULL)
+SAX.startElementNs(c, NULL, NULL, 0, 0, 0)
+SAX.characters( is a, 5)
+SAX.endElementNs(c, NULL, NULL)
+SAX.startElementNs(d, NULL, NULL, 0, 0, 0)
+SAX.characters( valid document, 15)
+SAX.endElementNs(d, NULL, NULL)
+SAX.endElementNs(doc, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/dtd11.sax2 b/result/noent/dtd11.sax2
new file mode 100644
index 00000000..a9cae5d1
--- /dev/null
+++ b/result/noent/dtd11.sax2
@@ -0,0 +1,9 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(doc, , )
+SAX.elementDecl(doc, 3, ...)
+SAX.attributeDecl(doc, val, 1, 3, NULL, ...)
+SAX.externalSubset(doc, , )
+SAX.startElementNs(doc, NULL, NULL, 0, 1, 0, val='v1"/...', 2)
+SAX.endElementNs(doc, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/dtd12.sax2 b/result/noent/dtd12.sax2
new file mode 100644
index 00000000..53206d4e
--- /dev/null
+++ b/result/noent/dtd12.sax2
@@ -0,0 +1,15 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(doc, , )
+SAX.entityDecl(YN, 1, (null), (null), "Yes")
+SAX.getEntity(YN)
+SAX.entityDecl(WhatHeSaid, 1, (null), (null), He said &YN;)
+SAX.getEntity(WhatHeSaid)
+SAX.externalSubset(doc, , )
+SAX.startElementNs(doc, NULL, NULL, 0, 0, 0)
+SAX.getEntity(WhatHeSaid)
+SAX.characters(He said , 8)
+SAX.getEntity(YN)
+SAX.characters("Yes", 5)
+SAX.endElementNs(doc, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/dtd13.sax2 b/result/noent/dtd13.sax2
new file mode 100644
index 00000000..b6315011
--- /dev/null
+++ b/result/noent/dtd13.sax2
@@ -0,0 +1,10 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.comment( comment before the DTD )
+SAX.internalSubset(doc, , )
+SAX.elementDecl(doc, 2, ...)
+SAX.externalSubset(doc, , )
+SAX.comment( comment after the DTD )
+SAX.startElementNs(doc, NULL, NULL, 0, 0, 0)
+SAX.endElementNs(doc, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/dtd2.sax2 b/result/noent/dtd2.sax2
new file mode 100644
index 00000000..ff6b5682
--- /dev/null
+++ b/result/noent/dtd2.sax2
@@ -0,0 +1,9 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(doc, , )
+SAX.elementDecl(doc, 3, ...)
+SAX.externalSubset(doc, , )
+SAX.startElementNs(doc, NULL, NULL, 0, 0, 0)
+SAX.characters(This is a valid document !, 26)
+SAX.endElementNs(doc, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/dtd3.sax2 b/result/noent/dtd3.sax2
new file mode 100644
index 00000000..9625ad53
--- /dev/null
+++ b/result/noent/dtd3.sax2
@@ -0,0 +1,9 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(doc, , )
+SAX.elementDecl(doc, 2, ...)
+SAX.externalSubset(doc, , )
+SAX.startElementNs(doc, NULL, NULL, 0, 0, 0)
+SAX.characters(This is a valid document !, 26)
+SAX.endElementNs(doc, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/dtd4.sax2 b/result/noent/dtd4.sax2
new file mode 100644
index 00000000..8366d48a
--- /dev/null
+++ b/result/noent/dtd4.sax2
@@ -0,0 +1,8 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(doc, , )
+SAX.elementDecl(doc, 1, ...)
+SAX.externalSubset(doc, , )
+SAX.startElementNs(doc, NULL, NULL, 0, 0, 0)
+SAX.endElementNs(doc, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/dtd5.sax2 b/result/noent/dtd5.sax2
new file mode 100644
index 00000000..f48c01c2
--- /dev/null
+++ b/result/noent/dtd5.sax2
@@ -0,0 +1,18 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(doc, , )
+SAX.elementDecl(doc, 3, ...)
+SAX.elementDecl(a, 3, ...)
+SAX.elementDecl(b, 3, ...)
+SAX.externalSubset(doc, , )
+SAX.startElementNs(doc, NULL, NULL, 0, 0, 0)
+SAX.startElementNs(a, NULL, NULL, 0, 0, 0)
+SAX.characters(This, 4)
+SAX.endElementNs(a, NULL, NULL)
+SAX.characters( is a , 6)
+SAX.startElementNs(b, NULL, NULL, 0, 0, 0)
+SAX.characters(valid, 5)
+SAX.endElementNs(b, NULL, NULL)
+SAX.characters( document, 9)
+SAX.endElementNs(doc, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/dtd6.sax2 b/result/noent/dtd6.sax2
new file mode 100644
index 00000000..6e78924c
--- /dev/null
+++ b/result/noent/dtd6.sax2
@@ -0,0 +1,19 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(doc, , )
+SAX.elementDecl(doc, 4, ...)
+SAX.elementDecl(a, 3, ...)
+SAX.elementDecl(b, 3, ...)
+SAX.externalSubset(doc, , )
+SAX.startElementNs(doc, NULL, NULL, 0, 0, 0)
+SAX.startElementNs(a, NULL, NULL, 0, 0, 0)
+SAX.characters(This, 4)
+SAX.endElementNs(a, NULL, NULL)
+SAX.startElementNs(b, NULL, NULL, 0, 0, 0)
+SAX.characters( is a valid, 11)
+SAX.endElementNs(b, NULL, NULL)
+SAX.startElementNs(a, NULL, NULL, 0, 0, 0)
+SAX.characters( document, 9)
+SAX.endElementNs(a, NULL, NULL)
+SAX.endElementNs(doc, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/dtd7.sax2 b/result/noent/dtd7.sax2
new file mode 100644
index 00000000..4a471914
--- /dev/null
+++ b/result/noent/dtd7.sax2
@@ -0,0 +1,16 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(doc, , )
+SAX.elementDecl(doc, 4, ...)
+SAX.elementDecl(a, 3, ...)
+SAX.elementDecl(b, 3, ...)
+SAX.externalSubset(doc, , )
+SAX.startElementNs(doc, NULL, NULL, 0, 0, 0)
+SAX.startElementNs(a, NULL, NULL, 0, 0, 0)
+SAX.characters(This, 4)
+SAX.endElementNs(a, NULL, NULL)
+SAX.startElementNs(b, NULL, NULL, 0, 0, 0)
+SAX.characters( is a valid document, 20)
+SAX.endElementNs(b, NULL, NULL)
+SAX.endElementNs(doc, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/dtd8.sax2 b/result/noent/dtd8.sax2
new file mode 100644
index 00000000..d38b60d3
--- /dev/null
+++ b/result/noent/dtd8.sax2
@@ -0,0 +1,18 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(doc, , )
+SAX.elementDecl(doc, 4, ...)
+SAX.elementDecl(a, 3, ...)
+SAX.elementDecl(b, 3, ...)
+SAX.elementDecl(c, 3, ...)
+SAX.elementDecl(d, 3, ...)
+SAX.externalSubset(doc, , )
+SAX.startElementNs(doc, NULL, NULL, 0, 0, 0)
+SAX.startElementNs(b, NULL, NULL, 0, 0, 0)
+SAX.characters(This, 4)
+SAX.endElementNs(b, NULL, NULL)
+SAX.startElementNs(c, NULL, NULL, 0, 0, 0)
+SAX.characters( is a valid document, 20)
+SAX.endElementNs(c, NULL, NULL)
+SAX.endElementNs(doc, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/dtd9.sax2 b/result/noent/dtd9.sax2
new file mode 100644
index 00000000..a5b537f9
--- /dev/null
+++ b/result/noent/dtd9.sax2
@@ -0,0 +1,18 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(doc, , )
+SAX.elementDecl(doc, 4, ...)
+SAX.elementDecl(a, 3, ...)
+SAX.elementDecl(b, 3, ...)
+SAX.elementDecl(c, 3, ...)
+SAX.elementDecl(d, 3, ...)
+SAX.externalSubset(doc, , )
+SAX.startElementNs(doc, NULL, NULL, 0, 0, 0)
+SAX.startElementNs(b, NULL, NULL, 0, 0, 0)
+SAX.characters(This, 4)
+SAX.endElementNs(b, NULL, NULL)
+SAX.startElementNs(d, NULL, NULL, 0, 0, 0)
+SAX.characters( is a valid document, 20)
+SAX.endElementNs(d, NULL, NULL)
+SAX.endElementNs(doc, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/ebcdic_566012.xml.sax2 b/result/noent/ebcdic_566012.xml.sax2
new file mode 100644
index 00000000..b8a4ce0e
--- /dev/null
+++ b/result/noent/ebcdic_566012.xml.sax2
@@ -0,0 +1,5 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(test, NULL, NULL, 0, 1, 0, attr='ÄÖ...', 6)
+SAX.endElementNs(test, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/emptycdata.xml.sax2 b/result/noent/emptycdata.xml.sax2
new file mode 100644
index 00000000..7f80296e
--- /dev/null
+++ b/result/noent/emptycdata.xml.sax2
@@ -0,0 +1,10 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(html, NULL, 'http://www.w3.org/1999/xhtml', 1, xmlns='http://www.w3.org/1999/xhtml', 0, 0)
+SAX.characters(
+, 1)
+SAX.pcdata(, 0)
+SAX.characters(
+, 1)
+SAX.endElementNs(html, NULL, 'http://www.w3.org/1999/xhtml')
+SAX.endDocument()
diff --git a/result/noent/ent1.sax2 b/result/noent/ent1.sax2
new file mode 100644
index 00000000..9f270efa
--- /dev/null
+++ b/result/noent/ent1.sax2
@@ -0,0 +1,15 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(EXAMPLE, , example.dtd)
+SAX.entityDecl(xml, 1, (null), (null), Extensible Markup Language)
+SAX.getEntity(xml)
+SAX.externalSubset(EXAMPLE, , example.dtd)
+SAX.startElementNs(EXAMPLE, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.getEntity(xml)
+SAX.characters(Extensible Markup Language, 26)
+SAX.characters(
+, 1)
+SAX.endElementNs(EXAMPLE, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/ent10.sax2 b/result/noent/ent10.sax2
new file mode 100644
index 00000000..4b86bfb3
--- /dev/null
+++ b/result/noent/ent10.sax2
@@ -0,0 +1,30 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(rnode, , )
+SAX.elementDecl(rnode, 4, ...)
+SAX.elementDecl(f, 3, ...)
+SAX.attributeDecl(f, att1, 1, 4, J, ...)
+SAX.entityDecl(f, 1, (null), (null),
+ <f>
+ hello world
+ </f>
+ )
+SAX.getEntity(f)
+SAX.externalSubset(rnode, , )
+SAX.startElementNs(rnode, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 4)
+SAX.getEntity(f)
+SAX.ignorableWhitespace(
+ , 4)
+SAX.startElementNs(f, NULL, NULL, 0, 1, 1, att1='J...', 1)
+SAX.characters(
+ hello world
+ , 19)
+SAX.endElementNs(f, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.characters(
+, 1)
+SAX.endElementNs(rnode, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/ent11.sax2 b/result/noent/ent11.sax2
new file mode 100644
index 00000000..5c2c9169
--- /dev/null
+++ b/result/noent/ent11.sax2
@@ -0,0 +1,12 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(doc, , )
+SAX.entityDecl(newl, 1, (null), (null), )
+SAX.getEntity(newl)
+SAX.externalSubset(doc, , )
+SAX.startElementNs(doc, NULL, NULL, 0, 0, 0)
+SAX.getEntity(newl)
+SAX.characters(
+, 1)
+SAX.endElementNs(doc, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/ent12.sax2 b/result/noent/ent12.sax2
new file mode 100644
index 00000000..fd5c71e3
--- /dev/null
+++ b/result/noent/ent12.sax2
@@ -0,0 +1,20 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(root, , )
+SAX.entityDecl(foo, 1, (null), (null), abc)
+SAX.getEntity(foo)
+SAX.entityDecl(bar, 1, (null), (null), def)
+SAX.getEntity(bar)
+SAX.externalSubset(root, , )
+SAX.getEntity(foo)
+SAX.startElementNs(root, NULL, NULL, 0, 1, 0, attribute='abc...', 3)
+SAX.characters(
+ , 4)
+SAX.startElementNs(element, NULL, NULL, 0, 0, 0)
+SAX.getEntity(bar)
+SAX.characters(def, 3)
+SAX.endElementNs(element, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.endElementNs(root, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/ent13.sax2 b/result/noent/ent13.sax2
new file mode 100644
index 00000000..9add1463
--- /dev/null
+++ b/result/noent/ent13.sax2
@@ -0,0 +1,11 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(test, , )
+SAX.entityDecl(ampproblem, 1, (null), (null), &amp;)
+SAX.getEntity(ampproblem)
+SAX.externalSubset(test, , )
+SAX.getEntity(ampproblem)
+SAX.startElementNs(t, NULL, NULL, 0, 1, 0, a='&...', 1)
+SAX.characters(a, 1)
+SAX.endElementNs(t, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/ent2.sax2 b/result/noent/ent2.sax2
new file mode 100644
index 00000000..88c6aa6b
--- /dev/null
+++ b/result/noent/ent2.sax2
@@ -0,0 +1,37 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(EXAMPLE, , example.dtd)
+SAX.entityDecl(xml, 1, (null), (null), Extensible Markup Language)
+SAX.getEntity(xml)
+SAX.entityDecl(title, 2, -//MY-TITLE//FR, title.xml, (null))
+SAX.unparsedEntityDecl(image, (null), img.gif, GIF)
+SAX.externalSubset(EXAMPLE, , example.dtd)
+SAX.startElementNs(EXAMPLE, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 3)
+SAX.getEntity(title)
+SAX.ignorableWhitespace(
+, 1)
+SAX.startElementNs(title, NULL, NULL, 0, 0, 0)
+SAX.characters(my title, 8)
+SAX.endElementNs(title, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.ignorableWhitespace(
+, 1)
+SAX.startElementNs(title, NULL, NULL, 0, 0, 0)
+SAX.characters(my title, 8)
+SAX.endElementNs(title, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.characters(
+ This text is about XML, the, 31)
+SAX.getEntity(xml)
+SAX.characters(Extensible Markup Language, 26)
+SAX.characters( and this is an embedded , 25)
+SAX.startElementNs(IMG, NULL, NULL, 0, 1, 0, src='imag...', 5)
+SAX.endElementNs(IMG, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.endElementNs(EXAMPLE, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/ent3.sax2 b/result/noent/ent3.sax2
new file mode 100644
index 00000000..96f605f5
--- /dev/null
+++ b/result/noent/ent3.sax2
@@ -0,0 +1,12 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(EXAMPLE, , example.dtd)
+SAX.entityDecl(xml, 1, (null), (null), Extensible Markup Language)
+SAX.getEntity(xml)
+SAX.externalSubset(EXAMPLE, , example.dtd)
+SAX.getEntity(xml)
+SAX.startElementNs(EXAMPLE, NULL, NULL, 0, 2, 0, prop1='a&b...', 3, prop2='Exte...', 26)
+SAX.characters(
+ Test of entities in attribu, 35)
+SAX.endElementNs(EXAMPLE, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/ent4.sax2 b/result/noent/ent4.sax2
new file mode 100644
index 00000000..b0a6b089
--- /dev/null
+++ b/result/noent/ent4.sax2
@@ -0,0 +1,16 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(EXAMPLE, , example.dtd)
+SAX.entityDecl(xml, 1, (null), (null), Extensible Markup Language)
+SAX.getEntity(xml)
+SAX.externalSubset(EXAMPLE, , example.dtd)
+SAX.startElementNs(EXAMPLE, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ Test of , 11)
+SAX.characters(&, 1)
+SAX.characters(amp; behaviour a, 16)
+SAX.characters(&, 1)
+SAX.characters(b .
+, 4)
+SAX.endElementNs(EXAMPLE, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/ent5.sax2 b/result/noent/ent5.sax2
new file mode 100644
index 00000000..f7251e4e
--- /dev/null
+++ b/result/noent/ent5.sax2
@@ -0,0 +1,13 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(EXAMPLE, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ This is an inverted excla, 42)
+SAX.characters(¡, 2)
+SAX.characters(
+ This is a space , 21)
+SAX.characters( , 1)
+SAX.characters(
+, 2)
+SAX.endElementNs(EXAMPLE, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/ent6.sax2 b/result/noent/ent6.sax2
new file mode 100644
index 00000000..a70d0bb4
--- /dev/null
+++ b/result/noent/ent6.sax2
@@ -0,0 +1,17 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(doc, , )
+SAX.entityDecl(lt, 1, (null), (null), &#60;)
+SAX.getEntity(lt)
+SAX.entityDecl(gt, 1, (null), (null), >)
+SAX.getEntity(gt)
+SAX.entityDecl(amp, 1, (null), (null), &#38;)
+SAX.getEntity(amp)
+SAX.entityDecl(apos, 1, (null), (null), ')
+SAX.getEntity(apos)
+SAX.entityDecl(quot, 1, (null), (null), ")
+SAX.getEntity(quot)
+SAX.externalSubset(doc, , )
+SAX.startElementNs(doc, NULL, NULL, 0, 0, 0)
+SAX.endElementNs(doc, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/ent7.sax2 b/result/noent/ent7.sax2
new file mode 100644
index 00000000..3228de3e
--- /dev/null
+++ b/result/noent/ent7.sax2
@@ -0,0 +1,17 @@
+xmlSAXUserParseFile returned error 27
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(item, , )
+SAX.entityDecl(sampleEnt, 4, (null), (null), <!ELEMENT item (para)+>)
+SAX.getParameterEntity(sampleEnt)
+SAX.entityDecl(sampleEnt, 1, (null), (null), the hyacinth girl)
+SAX.getEntity(sampleEnt)
+SAX.getParameterEntity(sampleEnt)
+SAX.error: PEReference: %sampleEnt; not found
+SAX.characters('they called me , 16)
+SAX.getEntity(sampleEnt)
+SAX.error: Entity 'sampleEnt' not defined
+SAX.reference(sampleEnt)
+SAX.characters(', 1)
+SAX.endDocument()
+xmlSAXUserParseFile returned error 27
diff --git a/result/noent/ent8.sax2 b/result/noent/ent8.sax2
new file mode 100644
index 00000000..c8418fac
--- /dev/null
+++ b/result/noent/ent8.sax2
@@ -0,0 +1,35 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(doc, , )
+SAX.entityDecl(test1, 1, (null), (null), test 1)
+SAX.getEntity(test1)
+SAX.entityDecl(test2, 1, (null), (null), test 2)
+SAX.getEntity(test2)
+SAX.externalSubset(doc, , )
+SAX.startElementNs(doc, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 4)
+SAX.startElementNs(Content, NULL, NULL, 0, 0, 0)
+SAX.characters(Reten, 5)
+SAX.characters(ç, 2)
+SAX.characters(ã, 2)
+SAX.characters(o, 1)
+SAX.endElementNs(Content, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(Content, NULL, NULL, 0, 0, 0)
+SAX.characters(<, 1)
+SAX.characters(>, 1)
+SAX.endElementNs(Content, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(Content, NULL, NULL, 0, 0, 0)
+SAX.getEntity(test1)
+SAX.characters(test 1, 6)
+SAX.getEntity(test2)
+SAX.characters(test 2, 6)
+SAX.endElementNs(Content, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.endElementNs(doc, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/ent9.sax2 b/result/noent/ent9.sax2
new file mode 100644
index 00000000..442333ef
--- /dev/null
+++ b/result/noent/ent9.sax2
@@ -0,0 +1,308 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(doc, , )
+SAX.entityDecl(test1, 1, (null), (null), <a/>,<b/>,<c/>,<d/>)
+SAX.getEntity(test1)
+SAX.externalSubset(doc, , )
+SAX.startElementNs(doc, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 4)
+SAX.startElementNs(ent, NULL, NULL, 0, 0, 0)
+SAX.getEntity(test1)
+SAX.startElementNs(a, NULL, NULL, 0, 0, 0)
+SAX.endElementNs(a, NULL, NULL)
+SAX.characters(,, 1)
+SAX.startElementNs(b, NULL, NULL, 0, 0, 0)
+SAX.endElementNs(b, NULL, NULL)
+SAX.characters(,, 1)
+SAX.startElementNs(c, NULL, NULL, 0, 0, 0)
+SAX.endElementNs(c, NULL, NULL)
+SAX.characters(,, 1)
+SAX.startElementNs(d, NULL, NULL, 0, 0, 0)
+SAX.endElementNs(d, NULL, NULL)
+SAX.endElementNs(ent, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters( WE need lot of garbage now to, 50)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(ent, NULL, NULL, 0, 0, 0)
+SAX.getEntity(test1)
+SAX.startElementNs(a, NULL, NULL, 0, 0, 0)
+SAX.endElementNs(a, NULL, NULL)
+SAX.characters(,, 1)
+SAX.startElementNs(b, NULL, NULL, 0, 0, 0)
+SAX.endElementNs(b, NULL, NULL)
+SAX.characters(,, 1)
+SAX.startElementNs(c, NULL, NULL, 0, 0, 0)
+SAX.endElementNs(c, NULL, NULL)
+SAX.characters(,, 1)
+SAX.startElementNs(d, NULL, NULL, 0, 0, 0)
+SAX.endElementNs(d, NULL, NULL)
+SAX.endElementNs(ent, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.endElementNs(doc, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/ent_738805.xml.sax2 b/result/noent/ent_738805.xml.sax2
new file mode 100644
index 00000000..d8a4f1e5
--- /dev/null
+++ b/result/noent/ent_738805.xml.sax2
@@ -0,0 +1,54 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(somedoc, , )
+SAX.entityDecl(a, 1, (null), (null), something)
+SAX.getEntity(a)
+SAX.entityDecl(b, 1, (null), (null), &a;)
+SAX.getEntity(b)
+SAX.externalSubset(somedoc, , )
+SAX.startElementNs(somedoc, NULL, NULL, 0, 0, 0)
+SAX.characters(
+
+, 2)
+SAX.getEntity(b)
+SAX.getEntity(a)
+SAX.startElementNs(somebeacon, NULL, NULL, 0, 1, 0, someattribute='some...', 9)
+SAX.endElementNs(somebeacon, NULL, NULL)
+SAX.characters(
+
+, 2)
+SAX.getEntity(a)
+SAX.characters(something, 9)
+SAX.characters( should appear after colon: , 28)
+SAX.getEntity(a)
+SAX.characters(something, 9)
+SAX.characters(
+, 1)
+SAX.getEntity(b)
+SAX.getEntity(a)
+SAX.characters(something, 9)
+SAX.characters( should appear after colon: , 28)
+SAX.getEntity(a)
+SAX.characters(something, 9)
+SAX.characters(
+, 1)
+SAX.getEntity(a)
+SAX.characters(something, 9)
+SAX.characters( should appear after colon: , 28)
+SAX.getEntity(b)
+SAX.getEntity(a)
+SAX.characters(something, 9)
+SAX.characters(
+, 1)
+SAX.getEntity(b)
+SAX.getEntity(a)
+SAX.characters(something, 9)
+SAX.characters( should appear after colon: , 28)
+SAX.getEntity(b)
+SAX.getEntity(a)
+SAX.characters(something, 9)
+SAX.characters(
+
+, 2)
+SAX.endElementNs(somedoc, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/eve.xml.sax2 b/result/noent/eve.xml.sax2
new file mode 100644
index 00000000..ea3b430a
--- /dev/null
+++ b/result/noent/eve.xml.sax2
@@ -0,0 +1,11 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(spec, -//testspec//, dtds/eve.dtd)
+SAX.entityDecl(iso6.doc.date, 1, (null), (null), 29-May-1999)
+SAX.getEntity(iso6.doc.date)
+SAX.externalSubset(spec, -//testspec//, dtds/eve.dtd)
+SAX.startElementNs(spec, NULL, NULL, 0, 0, 0)
+SAX.characters(
+, 1)
+SAX.endElementNs(spec, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/icu_parse_test.xml b/result/noent/icu_parse_test.xml
new file mode 100644
index 00000000..031a967c
--- /dev/null
+++ b/result/noent/icu_parse_test.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="EUC-JP"?>
+<foo>
+Text with EUC-JP chars at position 214 (0xd6)
+___
+_______________
+_______________
+_______________
+_______________
+_______________
+_______________
+_______________
+_______é®Äé___
+_</foo>
diff --git a/result/noent/icu_parse_test.xml.sax2 b/result/noent/icu_parse_test.xml.sax2
new file mode 100644
index 00000000..eb0d6c6c
--- /dev/null
+++ b/result/noent/icu_parse_test.xml.sax2
@@ -0,0 +1,9 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(foo, NULL, NULL, 0, 0, 0)
+SAX.characters(
+Text with EUC-JP chars at pos, 170)
+SAX.characters(駪槗___
+_, 11)
+SAX.endElementNs(foo, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/intsubset.xml.sax2 b/result/noent/intsubset.xml.sax2
new file mode 100644
index 00000000..f4db2a81
--- /dev/null
+++ b/result/noent/intsubset.xml.sax2
@@ -0,0 +1,9 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(root, , )
+SAX.elementDecl(root, 1, ...)
+SAX.comment( " )
+SAX.externalSubset(root, , )
+SAX.startElementNs(root, NULL, NULL, 0, 0, 0)
+SAX.endElementNs(root, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/intsubset2.xml.sax2 b/result/noent/intsubset2.xml.sax2
new file mode 100644
index 00000000..55587017
--- /dev/null
+++ b/result/noent/intsubset2.xml.sax2
@@ -0,0 +1,286 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(kanjidic2, , )
+SAX.comment( Version 1.3
+ This is the DTD of the XML-format kanji file combining information from
+ the KANJIDIC and KANJD212 files. It is intended to be largely self-
+ documenting, with each field being accompanied by an explanatory
+ comment.
+
+ The file covers the following kanji:
+ (a) the 6,355 kanji from JIS X 0208;
+ (b) the 5,801 kanji from JIS X 0212;
+ (c) the 3,625 kanji from JIS X 0213 as follows:
+ (i) the 2,741 kanji which are also in JIS X 0212 have
+ JIS X 0213 code-points (kuten) added to the existing entry;
+ (ii) the 884 "new" kanji have new entries.
+
+ At the end of the explanation for a number of fields there is a tag
+ with the format [N]. This indicates the leading letter(s) of the
+ equivalent field in the KANJIDIC and KANJD212 files.
+
+ The KANJIDIC documentation should also be read for additional
+ information about the information in the file.
+ )
+SAX.elementDecl(kanjidic2, 4, ...)
+SAX.elementDecl(header, 4, ...)
+SAX.comment(
+ The single header element will contain identification information
+ about the version of the file
+ )
+SAX.elementDecl(file_version, 3, ...)
+SAX.comment(
+ This field denotes the version of kanjidic2 structure, as more
+ than one version may exist.
+ )
+SAX.elementDecl(database_version, 3, ...)
+SAX.comment(
+ The version of the file, in the format YYYY-NN, where NN will be
+ a number starting with 01 for the first version released in a
+ calendar year, then increasing for each version in that year.
+ )
+SAX.elementDecl(date_of_creation, 3, ...)
+SAX.comment(
+ The date the file was created in international format (YYYY-MM-DD).
+ )
+SAX.elementDecl(character, 4, ...)
+SAX.elementDecl(literal, 3, ...)
+SAX.comment(
+ The character itself in UTF8 coding.
+ )
+SAX.elementDecl(codepoint, 4, ...)
+SAX.comment(
+ The codepoint element states the code of the character in the various
+ character set standards.
+ )
+SAX.elementDecl(cp_value, 3, ...)
+SAX.comment(
+ The cp_value contains the codepoint of the character in a particular
+ standard. The standard will be identified in the cp_type attribute.
+ )
+SAX.attributeDecl(cp_value, cp_type, 1, 2, NULL, ...)
+SAX.comment(
+ The cp_type attribute states the coding standard applying to the
+ element. The values assigned so far are:
+ jis208 - JIS X 0208-1997 - kuten coding (nn-nn)
+ jis212 - JIS X 0212-1990 - kuten coding (nn-nn)
+ jis213 - JIS X 0213-2000 - kuten coding (p-nn-nn)
+ ucs - Unicode 4.0 - hex coding (4 or 5 hexadecimal digits)
+ )
+SAX.elementDecl(radical, 4, ...)
+SAX.elementDecl(rad_value, 3, ...)
+SAX.comment(
+ The radical number, in the range 1 to 214. The particular
+ classification type is stated in the rad_type attribute.
+ )
+SAX.attributeDecl(rad_value, rad_type, 1, 2, NULL, ...)
+SAX.comment(
+ The rad_type attribute states the type of radical classification.
+ classical - as recorded in the KangXi Zidian.
+ nelson - as used in the Nelson "Modern Japanese-English
+ Character Dictionary" (i.e. the Classic, not the New Nelson).
+ This will only be used where Nelson reclassified the kanji.
+ )
+SAX.elementDecl(misc, 4, ...)
+SAX.elementDecl(grade, 3, ...)
+SAX.comment(
+ The Jouyou Kanji grade level. 1 through 6 indicate the grade in which
+ the kanji is taught in Japanese schools. 8 indicates it is one of the
+ remaining Jouyou Kanji to be learned in junior high school, and 9
+ indicates it is a Jinmeiyou (for use in names) kanji. [G]
+ )
+SAX.elementDecl(stroke_count, 3, ...)
+SAX.comment(
+ The stroke count of the kanji, including the radical. If more than
+ one, the first is considered the accepted count, while subsequent ones
+ are common miscounts. (See Appendix E. of the KANJIDIC documentation
+ for some of the rules applied when counting strokes in some of the
+ radicals.) [S]
+ )
+SAX.elementDecl(variant, 3, ...)
+SAX.comment(
+ A cross-reference code to another kanji, usually regarded as a variant.
+ The type of cross-reference is given in the var_type attribute.
+ )
+SAX.attributeDecl(variant, var_type, 1, 2, NULL, ...)
+SAX.comment(
+ The var_type attribute indicates the type of variant code. The current
+ values are:
+ jis208 - in JIS X 0208 - kuten coding
+ jis212 - in JIS X 0212 - kuten coding
+ jis213 - in JIS X 0213 - kuten coding
+ deroo - De Roo number - numeric
+ njecd - Halpern NJECD index number - numeric
+ s_h - The Kanji Dictionary (Spahn & Hadamitzky) - descriptor
+ nelson - "Classic" Nelson - numeric
+ oneill - Japanese Names (O'Neill) - numeric
+ )
+SAX.elementDecl(freq, 3, ...)
+SAX.comment(
+ A frequency-of-use ranking. The 2,500 most-used characters have a
+ ranking; those characters that lack this field are not ranked. The
+ frequency is a number from 1 to 2,500 that expresses the relative
+ frequency of occurrence of a character in modern Japanese. This is
+ based on a survey in newspapers, so it is biassed towards kanji
+ used in newspaper articles. The discrimination between the less
+ frequently used kanji is not strong.
+ )
+SAX.elementDecl(rad_name, 3, ...)
+SAX.comment(
+ When the kanji is itself a radical and has a name, this element
+ contains the name (in hiragana.) [T2]
+ )
+SAX.elementDecl(dic_number, 4, ...)
+SAX.comment(
+ This element contains the index numbers and similar unstructured
+ information such as page numbers in a number of published dictionaries,
+ and instructional books on kanji.
+ )
+SAX.elementDecl(dic_ref, 3, ...)
+SAX.comment(
+ Each dic_ref contains an index number. The particular dictionary,
+ etc. is defined by the dr_type attribute.
+ )
+SAX.attributeDecl(dic_ref, dr_type, 1, 2, NULL, ...)
+SAX.comment(
+ The dr_type defines the dictionary or reference book, etc. to which
+ dic_ref element applies. The initial allocation is:
+ nelson_c - "Modern Reader's Japanese-English Character Dictionary",
+ edited by Andrew Nelson (now published as the "Classic"
+ Nelson).
+ nelson_n - "The New Nelson Japanese-English Character Dictionary",
+ edited by John Haig.
+ halpern_njecd - "New Japanese-English Character Dictionary",
+ edited by Jack Halpern.
+ halpern_kkld - "Kanji Learners Dictionary" (Kodansha) edited by
+ Jack Halpern.
+ heisig - "Remembering The Kanji" by James Heisig.
+ gakken - "A New Dictionary of Kanji Usage" (Gakken)
+ oneill_names - "Japanese Names", by P.G. O'Neill.
+ oneill_kk - "Essential Kanji" by P.G. O'Neill.
+ moro - "Daikanwajiten" compiled by Morohashi. For some kanji two
+ additional attributes are used: m_vol: the volume of the
+ dictionary in which the kanji is found, and m_page: the page
+ number in the volume.
+ henshall - "A Guide To Remembering Japanese Characters" by
+ Kenneth G. Henshall.
+ sh_kk - "Kanji and Kana" by Spahn and Hadamitzky.
+ sakade - "A Guide To Reading and Writing Japanese" edited by
+ Florence Sakade.
+ henshall3 - "A Guide To Reading and Writing Japanese" 3rd
+ edition, edited by Henshall, Seeley and De Groot.
+ tutt_cards - Tuttle Kanji Cards, compiled by Alexander Kask.
+ crowley - "The Kanji Way to Japanese Language Power" by
+ Dale Crowley.
+ kanji_in_context - "Kanji in Context" by Nishiguchi and Kono.
+ busy_people - "Japanese For Busy People" vols I-III, published
+ by the AJLT. The codes are the volume.chapter.
+ kodansha_compact - the "Kodansha Compact Kanji Guide".
+ )
+SAX.attributeDecl(dic_ref, m_vol, 1, 3, NULL, ...)
+SAX.comment(
+ See above under "moro".
+ )
+SAX.attributeDecl(dic_ref, m_page, 1, 3, NULL, ...)
+SAX.comment(
+ See above under "moro".
+ )
+SAX.elementDecl(query_code, 4, ...)
+SAX.comment(
+ These codes contain information relating to the glyph, and can be used
+ for finding a required kanji. The type of code is defined by the
+ qc_type attribute.
+ )
+SAX.elementDecl(q_code, 3, ...)
+SAX.comment(
+ The q_code contains the actual query-code value, according to the
+ qc_type attribute.
+ )
+SAX.attributeDecl(q_code, qc_type, 1, 2, NULL, ...)
+SAX.comment(
+ The q_code attribute defines the type of query code. The current values
+ are:
+ skip - Halpern's SKIP (System of Kanji Indexing by Patterns)
+ code. The format is n-nn-nn. See the KANJIDIC documentation
+ for a description of the code and restrictions on the
+ commercial use of this data. [P]
+
+ sh_desc - the descriptor codes for The Kanji Dictionary (Tuttle
+ 1996) by Spahn and Hadamitzky. They are in the form nxnn.n,
+ e.g. 3k11.2, where the kanji has 3 strokes in the
+ identifying radical, it is radical "k" in the SH
+ classification system, there are 11 other strokes, and it is
+ the 2nd kanji in the 3k11 sequence. (I am very grateful to
+ Mark Spahn for providing the list of these descriptor codes
+ for the kanji in this file.) [I]
+ four_corner - the "Four Corner" code for the kanji. This is a code
+ invented by Wang Chen in 1928. See the KANJIDIC documentation
+ for an overview of the Four Corner System. [Q]
+
+ deroo - the codes developed by the late Father Joseph De Roo, and
+ published in his book "2001 Kanji" (Bojinsha). Fr De Roo
+ gave his permission for these codes to be included. [DR]
+ misclass - a possible misclassification of the kanji according
+ to one of the code types. (See the "Z" codes in the KANJIDIC
+ documentation for more details.)
+
+ )
+SAX.elementDecl(reading_meaning, 4, ...)
+SAX.comment(
+ The readings for the kanji in several languages, and the meanings, also
+ in several languages. The readings and meanings are grouped to enable
+ the handling of the situation where the meaning is differentiated by
+ reading. [T1]
+ )
+SAX.elementDecl(nanori, 3, ...)
+SAX.comment(
+ Japanese readings that are now only associated with names.
+ )
+SAX.elementDecl(rmgroup, 4, ...)
+SAX.elementDecl(reading, 3, ...)
+SAX.comment(
+ The reading element contains the reading or pronunciation
+ of the kanji.
+ )
+SAX.attributeDecl(reading, r_type, 1, 2, NULL, ...)
+SAX.comment(
+ The r_type attribute defines the type of reading in the reading
+ element. The current values are:
+ pinyin - the modern PinYin romanization of the Chinese reading
+ of the kanji. The tones are represented by a concluding
+ digit. [Y]
+ korean_r - the romanized form of the Korean reading(s) of the
+ kanji. The readings are in the (Republic of Korea) Ministry
+ of Education style of romanization. [W]
+ korean_h - the Korean reading(s) of the kanji in hangul.
+ ja_on - the "on" Japanese reading of the kanji, in katakana. A
+ second attribute r_status, if present, will indicate with
+ a value of "jy" whether the reading is approved for a
+ "Jouyou kanji".
+ ja_kun - the "kun" Japanese reading of the kanji, in hiragana.
+ Where relevant the okurigana is also included separated by a
+ ".". Readings associated with prefixes and suffixes are
+ marked with a "-". A second attribute r_status, if present,
+ will indicate with a value of "jy" whether the reading is
+ approved for a "Jouyou kanji".
+ )
+SAX.attributeDecl(reading, r_status, 1, 3, NULL, ...)
+SAX.comment(
+ See under ja_on and ja_kun above.
+ )
+SAX.elementDecl(meaning, 3, ...)
+SAX.comment(
+ The meaning associated with the kanji.
+ )
+SAX.attributeDecl(meaning, m_lang, 1, 3, NULL, ...)
+SAX.comment(
+ The m_lang attribute defines the target language of the meaning. It
+ will be coded using the two-letter language code from the ISO 639
+ standard. When absent, the value "en" (i.e. English) is implied. [{}]
+ )
+SAX.externalSubset(kanjidic2, , )
+SAX.startElementNs(kanjidic2, NULL, NULL, 0, 0, 0)
+SAX.characters(
+, 1)
+SAX.endElementNs(kanjidic2, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/isolat1.sax2 b/result/noent/isolat1.sax2
new file mode 100644
index 00000000..b97920a8
--- /dev/null
+++ b/result/noent/isolat1.sax2
@@ -0,0 +1,7 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(très, NULL, NULL, 0, 0, 0)
+SAX.characters(l, 1)
+SAX.characters(à, 2)
+SAX.endElementNs(très, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/isolat2.sax2 b/result/noent/isolat2.sax2
new file mode 100644
index 00000000..0ac3f566
--- /dev/null
+++ b/result/noent/isolat2.sax2
@@ -0,0 +1,35 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(tst, NULL, NULL, 0, 0, 0)
+SAX.characters(
+
+ The following table d, 345)
+SAX.characters(¡ INVERTED EXCLAMATION MA, 300)
+SAX.characters( 250 168 A8 ¨ , 300)
+SAX.characters(SOFT HYPHEN
+ 256 174 , 300)
+SAX.characters( 264 180 B4 ´ AC, 300)
+SAX.characters(SCULINE ORDINAL INDICATOR
+ , 300)
+SAX.characters(1 BF ¿ INVERTED QUE, 300)
+SAX.characters( A WITH TILDE
+ 304 196, 300)
+SAX.characters( C8 È LATIN CAPITAL , 300)
+SAX.characters(APITAL LETTER I WITH GRAVE
+ , 300)
+SAX.characters( 321 209 D1 Ñ LA, 300)
+SAX.characters( LATIN CAPITAL LETTER O WITH T, 300)
+SAX.characters( 332 218 DA Ú LAT, 300)
+SAX.characters( LATIN CAPITAL LETTER THORN, 300)
+SAX.characters(3 227 E3 ã LATIN , 300)
+SAX.characters(R C WITH CEDILLA
+ 350 , 300)
+SAX.characters(36 EC ì LATIN SMALL, 300)
+SAX.characters(LETTER ETH
+ 361 241 , 300)
+SAX.characters( õ LATIN SMALL LETTER O , 300)
+SAX.characters( 250 FA ú LATIN SMA, 300)
+SAX.characters(L LETTER THORN
+ 377 25, 85)
+SAX.endElementNs(tst, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/isolat3.sax2 b/result/noent/isolat3.sax2
new file mode 100644
index 00000000..31296afd
--- /dev/null
+++ b/result/noent/isolat3.sax2
@@ -0,0 +1,29 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(rec, NULL, NULL, 0, 0, 0)
+SAX.characters(
+, 1)
+SAX.startElementNs(eg, NULL, NULL, 0, 0, 0)
+SAX.pcdata(<!ENTITY % pub "&, 162)
+SAX.endElementNs(eg, NULL, NULL)
+SAX.characters(
+then the replacement text for, 43)
+SAX.startElementNs(code, NULL, NULL, 0, 0, 0)
+SAX.characters(book, 4)
+SAX.endElementNs(code, NULL, NULL)
+SAX.characters(" is:
+, 6)
+SAX.startElementNs(eg, NULL, NULL, 0, 0, 0)
+SAX.characters(La Peste: Albert Camus,
+, 25)
+SAX.characters(©, 2)
+SAX.characters( 1947 , 6)
+SAX.characters(É, 2)
+SAX.characters(ditions Gallimard. , 19)
+SAX.characters(&, 1)
+SAX.characters(rights;, 7)
+SAX.endElementNs(eg, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.endElementNs(rec, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/japancrlf.xml.sax2 b/result/noent/japancrlf.xml.sax2
new file mode 100644
index 00000000..878eae45
--- /dev/null
+++ b/result/noent/japancrlf.xml.sax2
@@ -0,0 +1,11 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(入力メッセージ, NULL, 'http://schemas.cordys.com/webapps/1.0/bpm/c8c8b82a-0ac0-3d19-01e2-bda74af9b826', 1, xmlns='http://schemas.cordys.com/webapps/1.0/bpm/c8c8b82a-0ac0-3d19-01e2-bda74af9b826', 0, 0)
+SAX.characters(
+ , 2)
+SAX.startElementNs(Ele, c8c, 'http://schemas.cordys.com/webapps/1.0/bpm/c8c8b82a-0ac0-3d19-01e2-bda74af9b826', 1, xmlns:c8c='http://schemas.cordys.com/webapps/1.0/bpm/c8c8b82a-0ac0-3d19-01e2-bda74af9b826', 0, 0)
+SAX.endElementNs(Ele, c8c, 'http://schemas.cordys.com/webapps/1.0/bpm/c8c8b82a-0ac0-3d19-01e2-bda74af9b826')
+SAX.characters(
+, 1)
+SAX.endElementNs(入力メッセージ, NULL, 'http://schemas.cordys.com/webapps/1.0/bpm/c8c8b82a-0ac0-3d19-01e2-bda74af9b826')
+SAX.endDocument()
diff --git a/result/noent/ns.sax2 b/result/noent/ns.sax2
new file mode 100644
index 00000000..c615db38
--- /dev/null
+++ b/result/noent/ns.sax2
@@ -0,0 +1,11 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(diagram, dia, 'http://www.lysator.liu.se/~alla/dia/', 1, xmlns:dia='http://www.lysator.liu.se/~alla/dia/', 0, 0)
+SAX.characters(
+ , 3)
+SAX.startElementNs(diagramdata, dia, 'http://www.lysator.liu.se/~alla/dia/', 0, 1, 0, dia:testattr='test...', 4)
+SAX.endElementNs(diagramdata, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.characters(
+, 1)
+SAX.endElementNs(diagram, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.endDocument()
diff --git a/result/noent/ns2.sax2 b/result/noent/ns2.sax2
new file mode 100644
index 00000000..fc8d6f44
--- /dev/null
+++ b/result/noent/ns2.sax2
@@ -0,0 +1,5 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(diagram, dia, 'http://www.lysator.liu.se/~alla/dia/', 1, xmlns:dia='http://www.lysator.liu.se/~alla/dia/', 1, 0, dia:testattr='test...', 4)
+SAX.endElementNs(diagram, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.endDocument()
diff --git a/result/noent/ns3.sax2 b/result/noent/ns3.sax2
new file mode 100644
index 00000000..fc8d6f44
--- /dev/null
+++ b/result/noent/ns3.sax2
@@ -0,0 +1,5 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(diagram, dia, 'http://www.lysator.liu.se/~alla/dia/', 1, xmlns:dia='http://www.lysator.liu.se/~alla/dia/', 1, 0, dia:testattr='test...', 4)
+SAX.endElementNs(diagram, dia, 'http://www.lysator.liu.se/~alla/dia/')
+SAX.endDocument()
diff --git a/result/noent/ns4.sax2 b/result/noent/ns4.sax2
new file mode 100644
index 00000000..e31cc561
--- /dev/null
+++ b/result/noent/ns4.sax2
@@ -0,0 +1,5 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(diagram, NULL, NULL, 0, 4, 0, testattr='test...', 4, xml:lang='en" ...', 2, xml:link='simp...', 6, xml:space='pres...', 8)
+SAX.endElementNs(diagram, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/ns5.sax2 b/result/noent/ns5.sax2
new file mode 100644
index 00000000..a434d6b5
--- /dev/null
+++ b/result/noent/ns5.sax2
@@ -0,0 +1,11 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(element, NULL, 'http://example.org/ns/1', 2, xmlns:rng='http://example.org/ns/1', xmlns='http://example.org/ns/1', 1, 0, name='foo"...', 3)
+SAX.characters(
+ , 3)
+SAX.startElementNs(empty, NULL, 'http://example.org/ns/1', 0, 0, 0)
+SAX.endElementNs(empty, NULL, 'http://example.org/ns/1')
+SAX.characters(
+, 1)
+SAX.endElementNs(element, NULL, 'http://example.org/ns/1')
+SAX.endDocument()
diff --git a/result/noent/ns6.sax2 b/result/noent/ns6.sax2
new file mode 100644
index 00000000..7b545527
--- /dev/null
+++ b/result/noent/ns6.sax2
@@ -0,0 +1,15 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(root, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 3)
+SAX.startElementNs(foo, NULL, 'http://abc', 1, xmlns='http://abc', 0, 0)
+SAX.endElementNs(foo, NULL, 'http://abc')
+SAX.characters(
+ , 3)
+SAX.startElementNs(bar, NULL, NULL, 0, 0, 0)
+SAX.endElementNs(bar, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.endElementNs(root, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/ns7.sax2 b/result/noent/ns7.sax2
new file mode 100644
index 00000000..2a2c7145
--- /dev/null
+++ b/result/noent/ns7.sax2
@@ -0,0 +1,5 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(test, xml, 'http://www.w3.org/XML/1998/namespace', 0, 0, 0)
+SAX.endElementNs(test, xml, 'http://www.w3.org/XML/1998/namespace')
+SAX.endDocument()
diff --git a/result/noent/nsclean.xml.sax2 b/result/noent/nsclean.xml.sax2
new file mode 100644
index 00000000..d443e2bd
--- /dev/null
+++ b/result/noent/nsclean.xml.sax2
@@ -0,0 +1,13 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(article, NULL, 'tag:foofoofoofoofoofoofoofoo', 3, xmlns='tag:foofoofoofoofoofoofoofoo', xmlns:dc='http://purl.org/dc/elements/1.1/', xmlns:dcterms='http://purl.org/dc/terms/', 0, 0)
+SAX.characters(
+, 1)
+SAX.startElementNs(content, foop, 'tag:foofoofoofoofoofoofoofoo', 2, xmlns='http://www.w3.org/1999/xhtml', xmlns:foop='tag:foofoofoofoofoofoofoofoo', 0, 0)
+SAX.characters(
+, 1)
+SAX.endElementNs(content, foop, 'tag:foofoofoofoofoofoofoofoo')
+SAX.characters(
+, 1)
+SAX.endElementNs(article, NULL, 'tag:foofoofoofoofoofoofoofoo')
+SAX.endDocument()
diff --git a/result/noent/p3p.sax2 b/result/noent/p3p.sax2
new file mode 100644
index 00000000..6815789a
--- /dev/null
+++ b/result/noent/p3p.sax2
@@ -0,0 +1,65 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(RDF, RDF, 'http://www.w3.org/TR/WD-rdf-syntax#', 2, xmlns:p3p='http://www.w3.org/TR/1998/WD-P3P10-syntax#proposal.DTD', xmlns:RDF='http://www.w3.org/TR/WD-rdf-syntax#', 0, 0)
+SAX.characters(
+, 1)
+SAX.startElementNs(PROP, NULL, NULL, 0, 4, 0, realm='http...', 37, entity='Cool...', 11, agreeID='94df...', 16, assurance='http...', 22)
+SAX.characters(
+ , 3)
+SAX.startElementNs(USES, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 3)
+SAX.startElementNs(STATEMENT, NULL, NULL, 0, 4, 0, purp='2,3"...', 3, recpnt='0" i...', 1, id='0"
+ ...', 1, consq='a si...', 37)
+SAX.characters(
+ , 5)
+SAX.startElementNs(WITH, NULL, NULL, 0, 0, 0)
+SAX.startElementNs(PREFIX, NULL, NULL, 0, 1, 0, name='User...', 5)
+SAX.characters(
+ , 6)
+SAX.startElementNs(REF, NULL, NULL, 0, 1, 0, name='Name...', 10)
+SAX.endElementNs(REF, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(REF, NULL, NULL, 0, 2, 0, name='Bdat...', 10, optional='1"/>...', 1)
+SAX.endElementNs(REF, NULL, NULL)
+SAX.characters(
+ , 6)
+SAX.startElementNs(REF, NULL, NULL, 0, 1, 0, name='Gend...', 6)
+SAX.endElementNs(REF, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.endElementNs(PREFIX, NULL, NULL)
+SAX.endElementNs(WITH, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.endElementNs(STATEMENT, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.endElementNs(USES, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.startElementNs(USES, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 3)
+SAX.startElementNs(STATEMENT, NULL, NULL, 0, 4, 0, action='read...', 10, purp='0" r...', 1, recpnt='0" i...', 1, id='1">
+...', 1)
+SAX.characters(
+ , 5)
+SAX.startElementNs(REF, NULL, NULL, 0, 1, 0, name='User...', 14)
+SAX.endElementNs(REF, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.endElementNs(STATEMENT, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.endElementNs(USES, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.startElementNs(DISCLOSURE, NULL, NULL, 0, 3, 0, discURI='http...', 47, access='3" o...', 1, other='0,1"...', 3)
+SAX.endElementNs(DISCLOSURE, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.endElementNs(PROP, NULL, NULL)
+SAX.endElementNs(RDF, RDF, 'http://www.w3.org/TR/WD-rdf-syntax#')
+SAX.endDocument()
diff --git a/result/noent/pi.xml.sax2 b/result/noent/pi.xml.sax2
new file mode 100644
index 00000000..a4490ea1
--- /dev/null
+++ b/result/noent/pi.xml.sax2
@@ -0,0 +1,17 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(doc, NULL, NULL, 0, 0, 0)
+SAX.characters(
+, 1)
+SAX.processingInstruction(document-start, doc)
+SAX.characters(
+, 1)
+SAX.startElementNs(empty, NULL, NULL, 0, 0, 0)
+SAX.endElementNs(empty, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.processingInstruction(document-end, doc)
+SAX.characters(
+, 1)
+SAX.endElementNs(doc, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/pi2.xml.sax2 b/result/noent/pi2.xml.sax2
new file mode 100644
index 00000000..1e6caad3
--- /dev/null
+++ b/result/noent/pi2.xml.sax2
@@ -0,0 +1,13 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.processingInstruction(document-start, doc)
+SAX.startElementNs(doc, NULL, NULL, 0, 0, 0)
+SAX.characters(
+, 1)
+SAX.startElementNs(empty, NULL, NULL, 0, 0, 0)
+SAX.endElementNs(empty, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.endElementNs(doc, NULL, NULL)
+SAX.processingInstruction(document-end, doc)
+SAX.endDocument()
diff --git a/result/noent/rdf1.sax2 b/result/noent/rdf1.sax2
new file mode 100644
index 00000000..24822e14
--- /dev/null
+++ b/result/noent/rdf1.sax2
@@ -0,0 +1,186 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(RDF, RDF, 'http://www.w3.org/TR/WD-rdf-syntax#', 2, xmlns:RPM='http://www.rpm.org/', xmlns:RDF='http://www.w3.org/TR/WD-rdf-syntax#', 0, 0)
+SAX.characters(
+ , 3)
+SAX.startElementNs(Description, RDF, 'http://www.w3.org/TR/WD-rdf-syntax#', 0, 1, 0, HREF='ftp:...', 78)
+SAX.characters(
+ , 5)
+SAX.startElementNs(Name, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(rpm, 3)
+SAX.endElementNs(Name, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(Version, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(2.5, 3)
+SAX.endElementNs(Version, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(Release, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(2, 1)
+SAX.endElementNs(Release, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(Arch, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(i386, 4)
+SAX.endElementNs(Arch, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(Os, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(Linux, 5)
+SAX.endElementNs(Os, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(Distribution, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(Manhattan , 10)
+SAX.endElementNs(Distribution, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(Vendor, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(Red Hat Software, 16)
+SAX.endElementNs(Vendor, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(Packager, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(Red Hat Software , 17)
+SAX.characters(<, 1)
+SAX.characters(bugs@redhat.com, 15)
+SAX.characters(>, 1)
+SAX.endElementNs(Packager, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(Group, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(Utilities/System, 16)
+SAX.endElementNs(Group, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(Summary, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(Red Hat Package Manager, 23)
+SAX.endElementNs(Summary, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(Description, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(RPM is a powerful package mana, 248)
+SAX.endElementNs(Description, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(Copyright, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(GPL, 3)
+SAX.endElementNs(Copyright, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(Changelog, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(* Sun May 10 1998 Prospector S, 36)
+SAX.characters(<, 1)
+SAX.characters(bugs@redhat.com, 15)
+SAX.characters(>, 1)
+SAX.characters(
+ - translations modified for, 42)
+SAX.endElementNs(Changelog, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(Sources, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(rpm-2.5-2.src.rpm, 17)
+SAX.endElementNs(Sources, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(SourcesFtp, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(ftp://ftp.redhat.com/pub/redha, 48)
+SAX.endElementNs(SourcesFtp, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(BuildDate, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(Sun May 10 14:52:32 1998, 24)
+SAX.endElementNs(BuildDate, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(Date, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(894826352, 9)
+SAX.endElementNs(Date, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(Size, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(850599, 6)
+SAX.endElementNs(Size, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(BuildHost, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(porky.redhat.com, 16)
+SAX.endElementNs(BuildHost, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(Provides, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(
+ , 7)
+SAX.startElementNs(Bag, RDF, 'http://www.w3.org/TR/WD-rdf-syntax#', 0, 0, 0)
+SAX.characters(
+ , 9)
+SAX.startElementNs(Resource, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(rpm, 3)
+SAX.endElementNs(Resource, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(Bag, RDF, 'http://www.w3.org/TR/WD-rdf-syntax#')
+SAX.characters(
+ , 5)
+SAX.endElementNs(Provides, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(Requires, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(
+ , 7)
+SAX.startElementNs(Bag, RDF, 'http://www.w3.org/TR/WD-rdf-syntax#', 0, 0, 0)
+SAX.characters(
+ , 9)
+SAX.startElementNs(Resource, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(/bin/sh, 7)
+SAX.endElementNs(Resource, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 9)
+SAX.startElementNs(Resource, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(ld-linux.so.2, 13)
+SAX.endElementNs(Resource, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 9)
+SAX.startElementNs(Resource, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(libc.so.6, 9)
+SAX.endElementNs(Resource, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 9)
+SAX.startElementNs(Resource, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(libdb.so.2, 10)
+SAX.endElementNs(Resource, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 9)
+SAX.startElementNs(Resource, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(libz.so.1, 9)
+SAX.endElementNs(Resource, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 9)
+SAX.startElementNs(Resource, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(/bin/bash, 9)
+SAX.endElementNs(Resource, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 9)
+SAX.startElementNs(Resource, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(/bin/sh, 7)
+SAX.endElementNs(Resource, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(Bag, RDF, 'http://www.w3.org/TR/WD-rdf-syntax#')
+SAX.characters(
+ , 5)
+SAX.endElementNs(Requires, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(Files, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(/bin/rpm
+/usr/bin/find-provide, 885)
+SAX.endElementNs(Files, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(Description, RDF, 'http://www.w3.org/TR/WD-rdf-syntax#')
+SAX.characters(
+, 1)
+SAX.endElementNs(RDF, RDF, 'http://www.w3.org/TR/WD-rdf-syntax#')
+SAX.endDocument()
diff --git a/result/noent/rdf2.sax2 b/result/noent/rdf2.sax2
new file mode 100644
index 00000000..388174f3
--- /dev/null
+++ b/result/noent/rdf2.sax2
@@ -0,0 +1,191 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(RDF, RDF, 'http://www.w3.org/TR/WD-rdf-syntax#', 2, xmlns:RDF='http://www.w3.org/TR/WD-rdf-syntax#', xmlns:RPM='http://www.rpm.org/', 0, 0)
+SAX.characters(
+ , 3)
+SAX.startElementNs(Description, RDF, 'http://www.w3.org/TR/WD-rdf-syntax#', 0, 1, 0, about='ftp:...', 71)
+SAX.characters(
+ , 5)
+SAX.startElementNs(Name, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(ncurses4, 8)
+SAX.endElementNs(Name, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(Version, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(4.2, 3)
+SAX.endElementNs(Version, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(Release, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(3, 1)
+SAX.endElementNs(Release, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(Arch, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(i386, 4)
+SAX.endElementNs(Arch, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(Os, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(Linux, 5)
+SAX.endElementNs(Os, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(Distribution, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(DLD, 3)
+SAX.endElementNs(Distribution, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(Vendor, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(delix Computer GmbH, 19)
+SAX.endElementNs(Vendor, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(Packager, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(Till Bubeck , 12)
+SAX.characters(<, 1)
+SAX.characters(bubeck@delix.de, 15)
+SAX.characters(>, 1)
+SAX.characters(, Ngo Than , 11)
+SAX.characters(<, 1)
+SAX.characters(than@delix.de, 13)
+SAX.characters(>, 1)
+SAX.endElementNs(Packager, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(Group, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(Libraries, 9)
+SAX.endElementNs(Group, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(Summary, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(Bibliothek zur Ansteuerung von, 40)
+SAX.endElementNs(Summary, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(Description, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(Diese Library stellt dem Progr, 57)
+SAX.characters(ä, 2)
+SAX.characters(ngige
+Routinen zur Ansteuerung, 57)
+SAX.characters(ü, 2)
+SAX.characters(gung, die
+speziell optimiert s, 57)
+SAX.characters(', 1)
+SAX.characters(new curses, 10)
+SAX.characters(', 1)
+SAX.characters( (ncurses) Variante und ist de, 51)
+SAX.characters(ü, 2)
+SAX.characters(r die klassische Curses-Librar, 70)
+SAX.endElementNs(Description, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(Copyright, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(GPL, 3)
+SAX.endElementNs(Copyright, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(Sources, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(ncurses4-4.2-3.src.rpm, 22)
+SAX.endElementNs(Sources, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(BuildDate, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(Tue May 12 19:30:26 1998, 24)
+SAX.endElementNs(BuildDate, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(Date, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(895015826, 9)
+SAX.endElementNs(Date, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(Size, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(1373513, 7)
+SAX.endElementNs(Size, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(BuildHost, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(erdbeere.delix.de, 17)
+SAX.endElementNs(BuildHost, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(Provides, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(
+ , 7)
+SAX.startElementNs(Bag, RDF, 'http://www.w3.org/TR/WD-rdf-syntax#', 0, 0, 0)
+SAX.characters(
+ , 9)
+SAX.startElementNs(Resource, RPM, 'http://www.rpm.org/', 0, 1, 0, href='../....', 37)
+SAX.characters(ncurses4, 8)
+SAX.endElementNs(Resource, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 9)
+SAX.startElementNs(Resource, RPM, 'http://www.rpm.org/', 0, 1, 0, href='../....', 42)
+SAX.characters(libpanel.so.4, 13)
+SAX.endElementNs(Resource, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 9)
+SAX.startElementNs(Resource, RPM, 'http://www.rpm.org/', 0, 1, 0, href='../....', 44)
+SAX.characters(libncurses.so.4, 15)
+SAX.endElementNs(Resource, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 9)
+SAX.startElementNs(Resource, RPM, 'http://www.rpm.org/', 0, 1, 0, href='../....', 41)
+SAX.characters(libmenu.so.4, 12)
+SAX.endElementNs(Resource, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 9)
+SAX.startElementNs(Resource, RPM, 'http://www.rpm.org/', 0, 1, 0, href='../....', 41)
+SAX.characters(libform.so.4, 12)
+SAX.endElementNs(Resource, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 9)
+SAX.startElementNs(Resource, RPM, 'http://www.rpm.org/', 0, 1, 0, href='../....', 36)
+SAX.characters(ncurses, 7)
+SAX.endElementNs(Resource, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 7)
+SAX.endElementNs(Bag, RDF, 'http://www.w3.org/TR/WD-rdf-syntax#')
+SAX.characters(
+ , 5)
+SAX.endElementNs(Provides, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(Files, RPM, 'http://www.rpm.org/', 0, 0, 0)
+SAX.characters(/lib/libncurses.so.4
+/lib/libn, 2008)
+SAX.characters(/share/ncurses4/terminfo/P/P14, 4000)
+SAX.characters(es4/terminfo/a/alt7pc
+/usr/sha, 4000)
+SAX.characters(/a/att4415-w
+/usr/share/ncurse, 4000)
+SAX.characters(ses4/terminfo/b/bee
+/usr/share, 4000)
+SAX.characters(r/share/ncurses4/terminfo/c/co, 4000)
+SAX.characters(/usr/share/ncurses4/terminfo/d, 4000)
+SAX.characters(sr/share/ncurses4/terminfo/g/g, 4000)
+SAX.characters(/terminfo/h/hp2626-12x40
+/usr/, 4000)
+SAX.characters(e/ncurses4/terminfo/i/intertub, 4000)
+SAX.characters(rses4/terminfo/m/mskermit22714, 4000)
+SAX.characters(are/ncurses4/terminfo/p/p12-m
+, 4000)
+SAX.characters(pt100w
+/usr/share/ncurses4/ter, 4000)
+SAX.characters(sr/share/ncurses4/terminfo/s/s, 4000)
+SAX.characters(usr/share/ncurses4/terminfo/t/, 4000)
+SAX.characters(share/ncurses4/terminfo/v/vi55, 4000)
+SAX.characters(are/ncurses4/terminfo/w/wy160-, 4000)
+SAX.characters(/wy99gt-vb
+/usr/share/ncurses4, 4000)
+SAX.characters(/w/wyse99gt
+/usr/share/ncurses, 2907)
+SAX.endElementNs(Files, RPM, 'http://www.rpm.org/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(Description, RDF, 'http://www.w3.org/TR/WD-rdf-syntax#')
+SAX.characters(
+, 1)
+SAX.endElementNs(RDF, RDF, 'http://www.w3.org/TR/WD-rdf-syntax#')
+SAX.endDocument()
diff --git a/result/noent/slashdot.rdf.sax2 b/result/noent/slashdot.rdf.sax2
new file mode 100644
index 00000000..c561cf8d
--- /dev/null
+++ b/result/noent/slashdot.rdf.sax2
@@ -0,0 +1,221 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(RDF, rdf, 'http://www.w3.org/1999/02/22-rdf-syntax-ns#', 2, xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#', xmlns='http://my.netscape.com/rdf/simple/0.9/', 0, 0)
+SAX.characters(
+
+ , 4)
+SAX.startElementNs(channel, NULL, 'http://my.netscape.com/rdf/simple/0.9/', 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(title, NULL, 'http://my.netscape.com/rdf/simple/0.9/', 0, 0, 0)
+SAX.characters(Slashdot:News for Nerds. Stuff, 44)
+SAX.endElementNs(title, NULL, 'http://my.netscape.com/rdf/simple/0.9/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(link, NULL, 'http://my.netscape.com/rdf/simple/0.9/', 0, 0, 0)
+SAX.characters(http://slashdot.org/, 20)
+SAX.endElementNs(link, NULL, 'http://my.netscape.com/rdf/simple/0.9/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(description, NULL, 'http://my.netscape.com/rdf/simple/0.9/', 0, 0, 0)
+SAX.characters(News for Nerds. Stuff that Ma, 35)
+SAX.endElementNs(description, NULL, 'http://my.netscape.com/rdf/simple/0.9/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(channel, NULL, 'http://my.netscape.com/rdf/simple/0.9/')
+SAX.characters(
+
+ , 4)
+SAX.startElementNs(image, NULL, 'http://my.netscape.com/rdf/simple/0.9/', 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(title, NULL, 'http://my.netscape.com/rdf/simple/0.9/', 0, 0, 0)
+SAX.characters(Slashdot, 8)
+SAX.endElementNs(title, NULL, 'http://my.netscape.com/rdf/simple/0.9/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(url, NULL, 'http://my.netscape.com/rdf/simple/0.9/', 0, 0, 0)
+SAX.characters(http://slashdot.org/images/sla, 41)
+SAX.endElementNs(url, NULL, 'http://my.netscape.com/rdf/simple/0.9/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(link, NULL, 'http://my.netscape.com/rdf/simple/0.9/', 0, 0, 0)
+SAX.characters(http://slashdot.org, 19)
+SAX.endElementNs(link, NULL, 'http://my.netscape.com/rdf/simple/0.9/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(image, NULL, 'http://my.netscape.com/rdf/simple/0.9/')
+SAX.characters(
+
+ , 6)
+SAX.startElementNs(item, NULL, 'http://my.netscape.com/rdf/simple/0.9/', 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(title, NULL, 'http://my.netscape.com/rdf/simple/0.9/', 0, 0, 0)
+SAX.characters(100 Mbit/s on Fibre to the hom, 31)
+SAX.endElementNs(title, NULL, 'http://my.netscape.com/rdf/simple/0.9/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(link, NULL, 'http://my.netscape.com/rdf/simple/0.9/', 0, 0, 0)
+SAX.characters(http://slashdot.org/articles/9, 51)
+SAX.endElementNs(link, NULL, 'http://my.netscape.com/rdf/simple/0.9/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(item, NULL, 'http://my.netscape.com/rdf/simple/0.9/')
+SAX.characters(
+
+ , 6)
+SAX.startElementNs(item, NULL, 'http://my.netscape.com/rdf/simple/0.9/', 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(title, NULL, 'http://my.netscape.com/rdf/simple/0.9/', 0, 0, 0)
+SAX.characters(Gimp 1.2 Preview, 16)
+SAX.endElementNs(title, NULL, 'http://my.netscape.com/rdf/simple/0.9/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(link, NULL, 'http://my.netscape.com/rdf/simple/0.9/', 0, 0, 0)
+SAX.characters(http://slashdot.org/articles/9, 51)
+SAX.endElementNs(link, NULL, 'http://my.netscape.com/rdf/simple/0.9/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(item, NULL, 'http://my.netscape.com/rdf/simple/0.9/')
+SAX.characters(
+
+ , 6)
+SAX.startElementNs(item, NULL, 'http://my.netscape.com/rdf/simple/0.9/', 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(title, NULL, 'http://my.netscape.com/rdf/simple/0.9/', 0, 0, 0)
+SAX.characters(Sony's AIBO robot Sold Out, 26)
+SAX.endElementNs(title, NULL, 'http://my.netscape.com/rdf/simple/0.9/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(link, NULL, 'http://my.netscape.com/rdf/simple/0.9/', 0, 0, 0)
+SAX.characters(http://slashdot.org/articles/9, 51)
+SAX.endElementNs(link, NULL, 'http://my.netscape.com/rdf/simple/0.9/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(item, NULL, 'http://my.netscape.com/rdf/simple/0.9/')
+SAX.characters(
+
+ , 6)
+SAX.startElementNs(item, NULL, 'http://my.netscape.com/rdf/simple/0.9/', 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(title, NULL, 'http://my.netscape.com/rdf/simple/0.9/', 0, 0, 0)
+SAX.characters(Ask Slashdot: Another Word for, 40)
+SAX.endElementNs(title, NULL, 'http://my.netscape.com/rdf/simple/0.9/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(link, NULL, 'http://my.netscape.com/rdf/simple/0.9/', 0, 0, 0)
+SAX.characters(http://slashdot.org/askslashdo, 54)
+SAX.endElementNs(link, NULL, 'http://my.netscape.com/rdf/simple/0.9/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(item, NULL, 'http://my.netscape.com/rdf/simple/0.9/')
+SAX.characters(
+
+ , 6)
+SAX.startElementNs(item, NULL, 'http://my.netscape.com/rdf/simple/0.9/', 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(title, NULL, 'http://my.netscape.com/rdf/simple/0.9/', 0, 0, 0)
+SAX.characters(Corel Linux FAQ, 15)
+SAX.endElementNs(title, NULL, 'http://my.netscape.com/rdf/simple/0.9/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(link, NULL, 'http://my.netscape.com/rdf/simple/0.9/', 0, 0, 0)
+SAX.characters(http://slashdot.org/articles/9, 51)
+SAX.endElementNs(link, NULL, 'http://my.netscape.com/rdf/simple/0.9/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(item, NULL, 'http://my.netscape.com/rdf/simple/0.9/')
+SAX.characters(
+
+ , 6)
+SAX.startElementNs(item, NULL, 'http://my.netscape.com/rdf/simple/0.9/', 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(title, NULL, 'http://my.netscape.com/rdf/simple/0.9/', 0, 0, 0)
+SAX.characters(Upside downsides MP3.COM., 25)
+SAX.endElementNs(title, NULL, 'http://my.netscape.com/rdf/simple/0.9/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(link, NULL, 'http://my.netscape.com/rdf/simple/0.9/', 0, 0, 0)
+SAX.characters(http://slashdot.org/articles/9, 51)
+SAX.endElementNs(link, NULL, 'http://my.netscape.com/rdf/simple/0.9/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(item, NULL, 'http://my.netscape.com/rdf/simple/0.9/')
+SAX.characters(
+
+ , 6)
+SAX.startElementNs(item, NULL, 'http://my.netscape.com/rdf/simple/0.9/', 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(title, NULL, 'http://my.netscape.com/rdf/simple/0.9/', 0, 0, 0)
+SAX.characters(2 Terabits of Bandwidth, 23)
+SAX.endElementNs(title, NULL, 'http://my.netscape.com/rdf/simple/0.9/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(link, NULL, 'http://my.netscape.com/rdf/simple/0.9/', 0, 0, 0)
+SAX.characters(http://slashdot.org/articles/9, 51)
+SAX.endElementNs(link, NULL, 'http://my.netscape.com/rdf/simple/0.9/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(item, NULL, 'http://my.netscape.com/rdf/simple/0.9/')
+SAX.characters(
+
+ , 6)
+SAX.startElementNs(item, NULL, 'http://my.netscape.com/rdf/simple/0.9/', 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(title, NULL, 'http://my.netscape.com/rdf/simple/0.9/', 0, 0, 0)
+SAX.characters(Suppression of cold fusion res, 36)
+SAX.endElementNs(title, NULL, 'http://my.netscape.com/rdf/simple/0.9/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(link, NULL, 'http://my.netscape.com/rdf/simple/0.9/', 0, 0, 0)
+SAX.characters(http://slashdot.org/articles/9, 51)
+SAX.endElementNs(link, NULL, 'http://my.netscape.com/rdf/simple/0.9/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(item, NULL, 'http://my.netscape.com/rdf/simple/0.9/')
+SAX.characters(
+
+ , 6)
+SAX.startElementNs(item, NULL, 'http://my.netscape.com/rdf/simple/0.9/', 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(title, NULL, 'http://my.netscape.com/rdf/simple/0.9/', 0, 0, 0)
+SAX.characters(California Gov. Halts Wage Inf, 36)
+SAX.endElementNs(title, NULL, 'http://my.netscape.com/rdf/simple/0.9/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(link, NULL, 'http://my.netscape.com/rdf/simple/0.9/', 0, 0, 0)
+SAX.characters(http://slashdot.org/articles/9, 50)
+SAX.endElementNs(link, NULL, 'http://my.netscape.com/rdf/simple/0.9/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(item, NULL, 'http://my.netscape.com/rdf/simple/0.9/')
+SAX.characters(
+
+ , 6)
+SAX.startElementNs(item, NULL, 'http://my.netscape.com/rdf/simple/0.9/', 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(title, NULL, 'http://my.netscape.com/rdf/simple/0.9/', 0, 0, 0)
+SAX.characters(Red Hat Announces IPO, 21)
+SAX.endElementNs(title, NULL, 'http://my.netscape.com/rdf/simple/0.9/')
+SAX.characters(
+ , 5)
+SAX.startElementNs(link, NULL, 'http://my.netscape.com/rdf/simple/0.9/', 0, 0, 0)
+SAX.characters(http://slashdot.org/articles/9, 51)
+SAX.endElementNs(link, NULL, 'http://my.netscape.com/rdf/simple/0.9/')
+SAX.characters(
+ , 3)
+SAX.endElementNs(item, NULL, 'http://my.netscape.com/rdf/simple/0.9/')
+SAX.characters(
+, 1)
+SAX.endElementNs(RDF, rdf, 'http://www.w3.org/1999/02/22-rdf-syntax-ns#')
+SAX.endDocument()
diff --git a/result/noent/slashdot.xml.sax2 b/result/noent/slashdot.xml.sax2
new file mode 100644
index 00000000..2ead70da
--- /dev/null
+++ b/result/noent/slashdot.xml.sax2
@@ -0,0 +1,517 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(ultramode, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 2)
+SAX.startElementNs(story, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(title, NULL, NULL, 0, 0, 0)
+SAX.characters(100 Mbit/s on Fibre to the hom, 31)
+SAX.endElementNs(title, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(url, NULL, NULL, 0, 0, 0)
+SAX.characters(http://slashdot.org/articles/9, 51)
+SAX.endElementNs(url, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(time, NULL, NULL, 0, 0, 0)
+SAX.characters(1999-06-06 14:39:59, 19)
+SAX.endElementNs(time, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(author, NULL, NULL, 0, 0, 0)
+SAX.characters(CmdrTaco, 8)
+SAX.endElementNs(author, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(department, NULL, NULL, 0, 0, 0)
+SAX.characters(wouldn't-it-be-nice, 19)
+SAX.endElementNs(department, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(topic, NULL, NULL, 0, 0, 0)
+SAX.characters(internet, 8)
+SAX.endElementNs(topic, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(comments, NULL, NULL, 0, 0, 0)
+SAX.characters(20, 2)
+SAX.endElementNs(comments, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(section, NULL, NULL, 0, 0, 0)
+SAX.characters(articles, 8)
+SAX.endElementNs(section, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(image, NULL, NULL, 0, 0, 0)
+SAX.characters(topicinternet.jpg, 17)
+SAX.endElementNs(image, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.endElementNs(story, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(story, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(title, NULL, NULL, 0, 0, 0)
+SAX.characters(Gimp 1.2 Preview, 16)
+SAX.endElementNs(title, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(url, NULL, NULL, 0, 0, 0)
+SAX.characters(http://slashdot.org/articles/9, 51)
+SAX.endElementNs(url, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(time, NULL, NULL, 0, 0, 0)
+SAX.characters(1999-06-06 14:38:40, 19)
+SAX.endElementNs(time, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(author, NULL, NULL, 0, 0, 0)
+SAX.characters(CmdrTaco, 8)
+SAX.endElementNs(author, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(department, NULL, NULL, 0, 0, 0)
+SAX.characters(stuff-to-read, 13)
+SAX.endElementNs(department, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(topic, NULL, NULL, 0, 0, 0)
+SAX.characters(gimp, 4)
+SAX.endElementNs(topic, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(comments, NULL, NULL, 0, 0, 0)
+SAX.characters(12, 2)
+SAX.endElementNs(comments, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(section, NULL, NULL, 0, 0, 0)
+SAX.characters(articles, 8)
+SAX.endElementNs(section, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(image, NULL, NULL, 0, 0, 0)
+SAX.characters(topicgimp.gif, 13)
+SAX.endElementNs(image, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.endElementNs(story, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(story, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(title, NULL, NULL, 0, 0, 0)
+SAX.characters(Sony's AIBO robot Sold Out, 26)
+SAX.endElementNs(title, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(url, NULL, NULL, 0, 0, 0)
+SAX.characters(http://slashdot.org/articles/9, 51)
+SAX.endElementNs(url, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(time, NULL, NULL, 0, 0, 0)
+SAX.characters(1999-06-06 14:32:51, 19)
+SAX.endElementNs(time, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(author, NULL, NULL, 0, 0, 0)
+SAX.characters(CmdrTaco, 8)
+SAX.endElementNs(author, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(department, NULL, NULL, 0, 0, 0)
+SAX.characters(stuff-to-see, 12)
+SAX.endElementNs(department, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(topic, NULL, NULL, 0, 0, 0)
+SAX.characters(tech, 4)
+SAX.endElementNs(topic, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(comments, NULL, NULL, 0, 0, 0)
+SAX.characters(10, 2)
+SAX.endElementNs(comments, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(section, NULL, NULL, 0, 0, 0)
+SAX.characters(articles, 8)
+SAX.endElementNs(section, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(image, NULL, NULL, 0, 0, 0)
+SAX.characters(topictech2.jpg, 14)
+SAX.endElementNs(image, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.endElementNs(story, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(story, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(title, NULL, NULL, 0, 0, 0)
+SAX.characters(Ask Slashdot: Another Word for, 40)
+SAX.endElementNs(title, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(url, NULL, NULL, 0, 0, 0)
+SAX.characters(http://slashdot.org/askslashdo, 54)
+SAX.endElementNs(url, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(time, NULL, NULL, 0, 0, 0)
+SAX.characters(1999-06-05 20:00:00, 19)
+SAX.endElementNs(time, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(author, NULL, NULL, 0, 0, 0)
+SAX.characters(Cliff, 5)
+SAX.endElementNs(author, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(department, NULL, NULL, 0, 0, 0)
+SAX.characters(hacker-vs-cracker, 17)
+SAX.endElementNs(department, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(topic, NULL, NULL, 0, 0, 0)
+SAX.characters(news, 4)
+SAX.endElementNs(topic, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(comments, NULL, NULL, 0, 0, 0)
+SAX.characters(385, 3)
+SAX.endElementNs(comments, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(section, NULL, NULL, 0, 0, 0)
+SAX.characters(askslashdot, 11)
+SAX.endElementNs(section, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(image, NULL, NULL, 0, 0, 0)
+SAX.characters(topicnews.gif, 13)
+SAX.endElementNs(image, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.endElementNs(story, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(story, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(title, NULL, NULL, 0, 0, 0)
+SAX.characters(Corel Linux FAQ, 15)
+SAX.endElementNs(title, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(url, NULL, NULL, 0, 0, 0)
+SAX.characters(http://slashdot.org/articles/9, 51)
+SAX.endElementNs(url, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(time, NULL, NULL, 0, 0, 0)
+SAX.characters(1999-06-05 18:42:06, 19)
+SAX.endElementNs(time, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(author, NULL, NULL, 0, 0, 0)
+SAX.characters(CmdrTaco, 8)
+SAX.endElementNs(author, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(department, NULL, NULL, 0, 0, 0)
+SAX.characters(stuff-to-read, 13)
+SAX.endElementNs(department, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(topic, NULL, NULL, 0, 0, 0)
+SAX.characters(corel, 5)
+SAX.endElementNs(topic, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(comments, NULL, NULL, 0, 0, 0)
+SAX.characters(164, 3)
+SAX.endElementNs(comments, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(section, NULL, NULL, 0, 0, 0)
+SAX.characters(articles, 8)
+SAX.endElementNs(section, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(image, NULL, NULL, 0, 0, 0)
+SAX.characters(topiccorel.gif, 14)
+SAX.endElementNs(image, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.endElementNs(story, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(story, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(title, NULL, NULL, 0, 0, 0)
+SAX.characters(Upside downsides MP3.COM., 25)
+SAX.endElementNs(title, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(url, NULL, NULL, 0, 0, 0)
+SAX.characters(http://slashdot.org/articles/9, 51)
+SAX.endElementNs(url, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(time, NULL, NULL, 0, 0, 0)
+SAX.characters(1999-06-05 15:56:45, 19)
+SAX.endElementNs(time, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(author, NULL, NULL, 0, 0, 0)
+SAX.characters(CmdrTaco, 8)
+SAX.endElementNs(author, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(department, NULL, NULL, 0, 0, 0)
+SAX.characters(stuff-to-think-about, 20)
+SAX.endElementNs(department, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(topic, NULL, NULL, 0, 0, 0)
+SAX.characters(music, 5)
+SAX.endElementNs(topic, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(comments, NULL, NULL, 0, 0, 0)
+SAX.characters(48, 2)
+SAX.endElementNs(comments, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(section, NULL, NULL, 0, 0, 0)
+SAX.characters(articles, 8)
+SAX.endElementNs(section, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(image, NULL, NULL, 0, 0, 0)
+SAX.characters(topicmusic.gif, 14)
+SAX.endElementNs(image, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.endElementNs(story, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(story, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(title, NULL, NULL, 0, 0, 0)
+SAX.characters(2 Terabits of Bandwidth, 23)
+SAX.endElementNs(title, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(url, NULL, NULL, 0, 0, 0)
+SAX.characters(http://slashdot.org/articles/9, 51)
+SAX.endElementNs(url, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(time, NULL, NULL, 0, 0, 0)
+SAX.characters(1999-06-05 15:53:43, 19)
+SAX.endElementNs(time, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(author, NULL, NULL, 0, 0, 0)
+SAX.characters(CmdrTaco, 8)
+SAX.endElementNs(author, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(department, NULL, NULL, 0, 0, 0)
+SAX.characters(faster-porn, 11)
+SAX.endElementNs(department, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(topic, NULL, NULL, 0, 0, 0)
+SAX.characters(internet, 8)
+SAX.endElementNs(topic, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(comments, NULL, NULL, 0, 0, 0)
+SAX.characters(66, 2)
+SAX.endElementNs(comments, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(section, NULL, NULL, 0, 0, 0)
+SAX.characters(articles, 8)
+SAX.endElementNs(section, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(image, NULL, NULL, 0, 0, 0)
+SAX.characters(topicinternet.jpg, 17)
+SAX.endElementNs(image, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.endElementNs(story, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(story, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(title, NULL, NULL, 0, 0, 0)
+SAX.characters(Suppression of cold fusion res, 36)
+SAX.endElementNs(title, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(url, NULL, NULL, 0, 0, 0)
+SAX.characters(http://slashdot.org/articles/9, 51)
+SAX.endElementNs(url, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(time, NULL, NULL, 0, 0, 0)
+SAX.characters(1999-06-04 23:12:29, 19)
+SAX.endElementNs(time, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(author, NULL, NULL, 0, 0, 0)
+SAX.characters(Hemos, 5)
+SAX.endElementNs(author, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(department, NULL, NULL, 0, 0, 0)
+SAX.characters(possibly-probably, 17)
+SAX.endElementNs(department, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(topic, NULL, NULL, 0, 0, 0)
+SAX.characters(science, 7)
+SAX.endElementNs(topic, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(comments, NULL, NULL, 0, 0, 0)
+SAX.characters(217, 3)
+SAX.endElementNs(comments, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(section, NULL, NULL, 0, 0, 0)
+SAX.characters(articles, 8)
+SAX.endElementNs(section, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(image, NULL, NULL, 0, 0, 0)
+SAX.characters(topicscience.gif, 16)
+SAX.endElementNs(image, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.endElementNs(story, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(story, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(title, NULL, NULL, 0, 0, 0)
+SAX.characters(California Gov. Halts Wage Inf, 36)
+SAX.endElementNs(title, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(url, NULL, NULL, 0, 0, 0)
+SAX.characters(http://slashdot.org/articles/9, 50)
+SAX.endElementNs(url, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(time, NULL, NULL, 0, 0, 0)
+SAX.characters(1999-06-04 23:05:34, 19)
+SAX.endElementNs(time, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(author, NULL, NULL, 0, 0, 0)
+SAX.characters(Hemos, 5)
+SAX.endElementNs(author, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(department, NULL, NULL, 0, 0, 0)
+SAX.characters(woo-hoo!, 8)
+SAX.endElementNs(department, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(topic, NULL, NULL, 0, 0, 0)
+SAX.characters(usa, 3)
+SAX.endElementNs(topic, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(comments, NULL, NULL, 0, 0, 0)
+SAX.characters(16, 2)
+SAX.endElementNs(comments, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(section, NULL, NULL, 0, 0, 0)
+SAX.characters(articles, 8)
+SAX.endElementNs(section, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(image, NULL, NULL, 0, 0, 0)
+SAX.characters(topicus.gif, 11)
+SAX.endElementNs(image, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.endElementNs(story, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(story, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(title, NULL, NULL, 0, 0, 0)
+SAX.characters(Red Hat Announces IPO, 21)
+SAX.endElementNs(title, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(url, NULL, NULL, 0, 0, 0)
+SAX.characters(http://slashdot.org/articles/9, 51)
+SAX.endElementNs(url, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(time, NULL, NULL, 0, 0, 0)
+SAX.characters(1999-06-04 19:30:18, 19)
+SAX.endElementNs(time, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(author, NULL, NULL, 0, 0, 0)
+SAX.characters(Justin, 6)
+SAX.endElementNs(author, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(department, NULL, NULL, 0, 0, 0)
+SAX.characters(details-sketchy, 15)
+SAX.endElementNs(department, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(topic, NULL, NULL, 0, 0, 0)
+SAX.characters(redhat, 6)
+SAX.endElementNs(topic, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(comments, NULL, NULL, 0, 0, 0)
+SAX.characters(155, 3)
+SAX.endElementNs(comments, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(section, NULL, NULL, 0, 0, 0)
+SAX.characters(articles, 8)
+SAX.endElementNs(section, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(image, NULL, NULL, 0, 0, 0)
+SAX.characters(topicredhat.gif, 15)
+SAX.endElementNs(image, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.endElementNs(story, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.endElementNs(ultramode, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/slashdot16.xml.sax2 b/result/noent/slashdot16.xml.sax2
new file mode 100644
index 00000000..785e6991
--- /dev/null
+++ b/result/noent/slashdot16.xml.sax2
@@ -0,0 +1,721 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(ultramode, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 2)
+SAX.startElementNs(story, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(title, NULL, NULL, 0, 0, 0)
+SAX.characters(100 Mbit/s on Fibre to the hom, 31)
+SAX.endElementNs(title, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(url, NULL, NULL, 0, 0, 0)
+SAX.characters(http://slashdot.org/articles/9, 51)
+SAX.endElementNs(url, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(time, NULL, NULL, 0, 0, 0)
+SAX.characters(1999-06-06 14:39:59, 19)
+SAX.endElementNs(time, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(author, NULL, NULL, 0, 0, 0)
+SAX.characters(CmdrTaco, 8)
+SAX.endElementNs(author, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(department, NULL, NULL, 0, 0, 0)
+SAX.characters(wouldn't-it-be-nice, 19)
+SAX.endElementNs(department, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(topic, NULL, NULL, 0, 0, 0)
+SAX.characters(internet, 8)
+SAX.endElementNs(topic, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(comments, NULL, NULL, 0, 0, 0)
+SAX.characters(20, 2)
+SAX.endElementNs(comments, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(section, NULL, NULL, 0, 0, 0)
+SAX.characters(articles, 8)
+SAX.endElementNs(section, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(image, NULL, NULL, 0, 0, 0)
+SAX.characters(topicinternet.jpg, 17)
+SAX.endElementNs(image, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.endElementNs(story, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(story, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(title, NULL, NULL, 0, 0, 0)
+SAX.characters(Gimp 1.2 Preview, 16)
+SAX.endElementNs(title, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(url, NULL, NULL, 0, 0, 0)
+SAX.characters(http://slashdot.org/articles/9, 51)
+SAX.endElementNs(url, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(time, NULL, NULL, 0, 0, 0)
+SAX.characters(1999-06-06 14:38:40, 19)
+SAX.endElementNs(time, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(author, NULL, NULL, 0, 0, 0)
+SAX.characters(CmdrTaco, 8)
+SAX.endElementNs(author, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(department, NULL, NULL, 0, 0, 0)
+SAX.characters(stuff-to-read, 13)
+SAX.endElementNs(department, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(topic, NULL, NULL, 0, 0, 0)
+SAX.characters(gimp, 4)
+SAX.endElementNs(topic, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(comments, NULL, NULL, 0, 0, 0)
+SAX.characters(12, 2)
+SAX.endElementNs(comments, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(section, NULL, NULL, 0, 0, 0)
+SAX.characters(articles, 8)
+SAX.endElementNs(section, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(image, NULL, NULL, 0, 0, 0)
+SAX.characters(topicgimp.gif, 13)
+SAX.endElementNs(image, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.endElementNs(story, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(story, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(title, NULL, NULL, 0, 0, 0)
+SAX.characters(Sony's AIBO robot Sold Out, 26)
+SAX.endElementNs(title, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(url, NULL, NULL, 0, 0, 0)
+SAX.characters(http://slashdot.org/articles/9, 51)
+SAX.endElementNs(url, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(time, NULL, NULL, 0, 0, 0)
+SAX.characters(1999-06-06 14:32:51, 19)
+SAX.endElementNs(time, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(author, NULL, NULL, 0, 0, 0)
+SAX.characters(CmdrTaco, 8)
+SAX.endElementNs(author, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(department, NULL, NULL, 0, 0, 0)
+SAX.characters(stuff-to-see, 12)
+SAX.endElementNs(department, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(topic, NULL, NULL, 0, 0, 0)
+SAX.characters(tech, 4)
+SAX.endElementNs(topic, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(comments, NULL, NULL, 0, 0, 0)
+SAX.characters(10, 2)
+SAX.endElementNs(comments, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(section, NULL, NULL, 0, 0, 0)
+SAX.characters(articles, 8)
+SAX.endElementNs(section, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(image, NULL, NULL, 0, 0, 0)
+SAX.characters(topictech2.jpg, 14)
+SAX.endElementNs(image, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.endElementNs(story, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(story, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(title, NULL, NULL, 0, 0, 0)
+SAX.characters(Ask Slashdot: Another Word for, 40)
+SAX.endElementNs(title, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(url, NULL, NULL, 0, 0, 0)
+SAX.characters(http://slashdot.org/askslashdo, 54)
+SAX.endElementNs(url, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(time, NULL, NULL, 0, 0, 0)
+SAX.characters(1999-06-05 20:00:00, 19)
+SAX.endElementNs(time, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(author, NULL, NULL, 0, 0, 0)
+SAX.characters(Cliff, 5)
+SAX.endElementNs(author, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(department, NULL, NULL, 0, 0, 0)
+SAX.characters(hacker-vs-cracker, 17)
+SAX.endElementNs(department, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(topic, NULL, NULL, 0, 0, 0)
+SAX.characters(news, 4)
+SAX.endElementNs(topic, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(comments, NULL, NULL, 0, 0, 0)
+SAX.characters(385, 3)
+SAX.endElementNs(comments, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(section, NULL, NULL, 0, 0, 0)
+SAX.characters(askslashdot, 11)
+SAX.endElementNs(section, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(image, NULL, NULL, 0, 0, 0)
+SAX.characters(topicnews.gif, 13)
+SAX.endElementNs(image, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.endElementNs(story, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.startElementNs(story, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(title, NULL, NULL, 0, 0, 0)
+SAX.characters(100 Mbit/s on Fibre to the hom, 31)
+SAX.endElementNs(title, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(url, NULL, NULL, 0, 0, 0)
+SAX.characters(http://slashdot.org/articles/9, 51)
+SAX.endElementNs(url, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(time, NULL, NULL, 0, 0, 0)
+SAX.characters(1999-06-06 14:39:59, 19)
+SAX.endElementNs(time, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(author, NULL, NULL, 0, 0, 0)
+SAX.characters(CmdrTaco, 8)
+SAX.endElementNs(author, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(department, NULL, NULL, 0, 0, 0)
+SAX.characters(wouldn't-it-be-nice, 19)
+SAX.endElementNs(department, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(topic, NULL, NULL, 0, 0, 0)
+SAX.characters(internet, 8)
+SAX.endElementNs(topic, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(comments, NULL, NULL, 0, 0, 0)
+SAX.characters(20, 2)
+SAX.endElementNs(comments, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(section, NULL, NULL, 0, 0, 0)
+SAX.characters(articles, 8)
+SAX.endElementNs(section, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(image, NULL, NULL, 0, 0, 0)
+SAX.characters(topicinternet.jpg, 17)
+SAX.endElementNs(image, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.endElementNs(story, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(story, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(title, NULL, NULL, 0, 0, 0)
+SAX.characters(Gimp 1.2 Preview, 16)
+SAX.endElementNs(title, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(url, NULL, NULL, 0, 0, 0)
+SAX.characters(http://slashdot.org/articles/9, 51)
+SAX.endElementNs(url, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(time, NULL, NULL, 0, 0, 0)
+SAX.characters(1999-06-06 14:38:40, 19)
+SAX.endElementNs(time, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(author, NULL, NULL, 0, 0, 0)
+SAX.characters(CmdrTaco, 8)
+SAX.endElementNs(author, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(department, NULL, NULL, 0, 0, 0)
+SAX.characters(stuff-to-read, 13)
+SAX.endElementNs(department, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(topic, NULL, NULL, 0, 0, 0)
+SAX.characters(gimp, 4)
+SAX.endElementNs(topic, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(comments, NULL, NULL, 0, 0, 0)
+SAX.characters(12, 2)
+SAX.endElementNs(comments, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(section, NULL, NULL, 0, 0, 0)
+SAX.characters(articles, 8)
+SAX.endElementNs(section, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(image, NULL, NULL, 0, 0, 0)
+SAX.characters(topicgimp.gif, 13)
+SAX.endElementNs(image, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.endElementNs(story, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(story, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(title, NULL, NULL, 0, 0, 0)
+SAX.characters(Sony's AIBO robot Sold Out, 26)
+SAX.endElementNs(title, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(url, NULL, NULL, 0, 0, 0)
+SAX.characters(http://slashdot.org/articles/9, 51)
+SAX.endElementNs(url, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(time, NULL, NULL, 0, 0, 0)
+SAX.characters(1999-06-06 14:32:51, 19)
+SAX.endElementNs(time, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(author, NULL, NULL, 0, 0, 0)
+SAX.characters(CmdrTaco, 8)
+SAX.endElementNs(author, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(department, NULL, NULL, 0, 0, 0)
+SAX.characters(stuff-to-see, 12)
+SAX.endElementNs(department, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(topic, NULL, NULL, 0, 0, 0)
+SAX.characters(tech, 4)
+SAX.endElementNs(topic, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(comments, NULL, NULL, 0, 0, 0)
+SAX.characters(10, 2)
+SAX.endElementNs(comments, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(section, NULL, NULL, 0, 0, 0)
+SAX.characters(articles, 8)
+SAX.endElementNs(section, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(image, NULL, NULL, 0, 0, 0)
+SAX.characters(topictech2.jpg, 14)
+SAX.endElementNs(image, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.endElementNs(story, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(story, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(title, NULL, NULL, 0, 0, 0)
+SAX.characters(Ask Slashdot: Another Word for, 40)
+SAX.endElementNs(title, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(url, NULL, NULL, 0, 0, 0)
+SAX.characters(http://slashdot.org/askslashdo, 54)
+SAX.endElementNs(url, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(time, NULL, NULL, 0, 0, 0)
+SAX.characters(1999-06-05 20:00:00, 19)
+SAX.endElementNs(time, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(author, NULL, NULL, 0, 0, 0)
+SAX.characters(Cliff, 5)
+SAX.endElementNs(author, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(department, NULL, NULL, 0, 0, 0)
+SAX.characters(hacker-vs-cracker, 17)
+SAX.endElementNs(department, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(topic, NULL, NULL, 0, 0, 0)
+SAX.characters(news, 4)
+SAX.endElementNs(topic, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(comments, NULL, NULL, 0, 0, 0)
+SAX.characters(385, 3)
+SAX.endElementNs(comments, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(section, NULL, NULL, 0, 0, 0)
+SAX.characters(askslashdot, 11)
+SAX.endElementNs(section, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(image, NULL, NULL, 0, 0, 0)
+SAX.characters(topicnews.gif, 13)
+SAX.endElementNs(image, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.endElementNs(story, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.startElementNs(story, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(title, NULL, NULL, 0, 0, 0)
+SAX.characters(Corel Linux FAQ, 15)
+SAX.endElementNs(title, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(url, NULL, NULL, 0, 0, 0)
+SAX.characters(http://slashdot.org/articles/9, 51)
+SAX.endElementNs(url, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(time, NULL, NULL, 0, 0, 0)
+SAX.characters(1999-06-05 18:42:06, 19)
+SAX.endElementNs(time, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(author, NULL, NULL, 0, 0, 0)
+SAX.characters(CmdrTaco, 8)
+SAX.endElementNs(author, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(department, NULL, NULL, 0, 0, 0)
+SAX.characters(stuff-to-read, 13)
+SAX.endElementNs(department, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(topic, NULL, NULL, 0, 0, 0)
+SAX.characters(corel, 5)
+SAX.endElementNs(topic, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(comments, NULL, NULL, 0, 0, 0)
+SAX.characters(164, 3)
+SAX.endElementNs(comments, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(section, NULL, NULL, 0, 0, 0)
+SAX.characters(articles, 8)
+SAX.endElementNs(section, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(image, NULL, NULL, 0, 0, 0)
+SAX.characters(topiccorel.gif, 14)
+SAX.endElementNs(image, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.endElementNs(story, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(story, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(title, NULL, NULL, 0, 0, 0)
+SAX.characters(Upside downsides MP3.COM., 25)
+SAX.endElementNs(title, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(url, NULL, NULL, 0, 0, 0)
+SAX.characters(http://slashdot.org/articles/9, 51)
+SAX.endElementNs(url, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(time, NULL, NULL, 0, 0, 0)
+SAX.characters(1999-06-05 15:56:45, 19)
+SAX.endElementNs(time, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(author, NULL, NULL, 0, 0, 0)
+SAX.characters(CmdrTaco, 8)
+SAX.endElementNs(author, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(department, NULL, NULL, 0, 0, 0)
+SAX.characters(stuff-to-think-about, 20)
+SAX.endElementNs(department, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(topic, NULL, NULL, 0, 0, 0)
+SAX.characters(music, 5)
+SAX.endElementNs(topic, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(comments, NULL, NULL, 0, 0, 0)
+SAX.characters(48, 2)
+SAX.endElementNs(comments, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(section, NULL, NULL, 0, 0, 0)
+SAX.characters(articles, 8)
+SAX.endElementNs(section, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(image, NULL, NULL, 0, 0, 0)
+SAX.characters(topicmusic.gif, 14)
+SAX.endElementNs(image, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.endElementNs(story, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(story, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(title, NULL, NULL, 0, 0, 0)
+SAX.characters(2 Terabits of Bandwidth, 23)
+SAX.endElementNs(title, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(url, NULL, NULL, 0, 0, 0)
+SAX.characters(http://slashdot.org/articles/9, 51)
+SAX.endElementNs(url, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(time, NULL, NULL, 0, 0, 0)
+SAX.characters(1999-06-05 15:53:43, 19)
+SAX.endElementNs(time, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(author, NULL, NULL, 0, 0, 0)
+SAX.characters(CmdrTaco, 8)
+SAX.endElementNs(author, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(department, NULL, NULL, 0, 0, 0)
+SAX.characters(faster-porn, 11)
+SAX.endElementNs(department, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(topic, NULL, NULL, 0, 0, 0)
+SAX.characters(internet, 8)
+SAX.endElementNs(topic, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(comments, NULL, NULL, 0, 0, 0)
+SAX.characters(66, 2)
+SAX.endElementNs(comments, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(section, NULL, NULL, 0, 0, 0)
+SAX.characters(articles, 8)
+SAX.endElementNs(section, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(image, NULL, NULL, 0, 0, 0)
+SAX.characters(topicinternet.jpg, 17)
+SAX.endElementNs(image, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.endElementNs(story, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(story, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(title, NULL, NULL, 0, 0, 0)
+SAX.characters(Suppression of cold fusion res, 36)
+SAX.endElementNs(title, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(url, NULL, NULL, 0, 0, 0)
+SAX.characters(http://slashdot.org/articles/9, 51)
+SAX.endElementNs(url, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(time, NULL, NULL, 0, 0, 0)
+SAX.characters(1999-06-04 23:12:29, 19)
+SAX.endElementNs(time, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(author, NULL, NULL, 0, 0, 0)
+SAX.characters(Hemos, 5)
+SAX.endElementNs(author, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(department, NULL, NULL, 0, 0, 0)
+SAX.characters(possibly-probably, 17)
+SAX.endElementNs(department, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(topic, NULL, NULL, 0, 0, 0)
+SAX.characters(science, 7)
+SAX.endElementNs(topic, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(comments, NULL, NULL, 0, 0, 0)
+SAX.characters(217, 3)
+SAX.endElementNs(comments, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(section, NULL, NULL, 0, 0, 0)
+SAX.characters(articles, 8)
+SAX.endElementNs(section, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(image, NULL, NULL, 0, 0, 0)
+SAX.characters(topicscience.gif, 16)
+SAX.endElementNs(image, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.endElementNs(story, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(story, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(title, NULL, NULL, 0, 0, 0)
+SAX.characters(California Gov. Halts Wage Inf, 36)
+SAX.endElementNs(title, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(url, NULL, NULL, 0, 0, 0)
+SAX.characters(http://slashdot.org/articles/9, 50)
+SAX.endElementNs(url, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(time, NULL, NULL, 0, 0, 0)
+SAX.characters(1999-06-04 23:05:34, 19)
+SAX.endElementNs(time, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(author, NULL, NULL, 0, 0, 0)
+SAX.characters(Hemos, 5)
+SAX.endElementNs(author, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(department, NULL, NULL, 0, 0, 0)
+SAX.characters(woo-hoo!, 8)
+SAX.endElementNs(department, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(topic, NULL, NULL, 0, 0, 0)
+SAX.characters(usa, 3)
+SAX.endElementNs(topic, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(comments, NULL, NULL, 0, 0, 0)
+SAX.characters(16, 2)
+SAX.endElementNs(comments, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(section, NULL, NULL, 0, 0, 0)
+SAX.characters(articles, 8)
+SAX.endElementNs(section, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(image, NULL, NULL, 0, 0, 0)
+SAX.characters(topicus.gif, 11)
+SAX.endElementNs(image, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.endElementNs(story, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(story, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(title, NULL, NULL, 0, 0, 0)
+SAX.characters(Red Hat Announces IPO, 21)
+SAX.endElementNs(title, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(url, NULL, NULL, 0, 0, 0)
+SAX.characters(http://slashdot.org/articles/9, 51)
+SAX.endElementNs(url, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(time, NULL, NULL, 0, 0, 0)
+SAX.characters(1999-06-04 19:30:18, 19)
+SAX.endElementNs(time, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(author, NULL, NULL, 0, 0, 0)
+SAX.characters(Justin, 6)
+SAX.endElementNs(author, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(department, NULL, NULL, 0, 0, 0)
+SAX.characters(details-sketchy, 15)
+SAX.endElementNs(department, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(topic, NULL, NULL, 0, 0, 0)
+SAX.characters(redhat, 6)
+SAX.endElementNs(topic, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(comments, NULL, NULL, 0, 0, 0)
+SAX.characters(155, 3)
+SAX.endElementNs(comments, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(section, NULL, NULL, 0, 0, 0)
+SAX.characters(articles, 8)
+SAX.endElementNs(section, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(image, NULL, NULL, 0, 0, 0)
+SAX.characters(topicredhat.gif, 15)
+SAX.endElementNs(image, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.endElementNs(story, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.endElementNs(ultramode, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/svg1.sax2 b/result/noent/svg1.sax2
new file mode 100644
index 00000000..7b814591
--- /dev/null
+++ b/result/noent/svg1.sax2
@@ -0,0 +1,613 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(svg, -//W3C//DTD SVG April 1999//EN, http://www.w3.org/Graphics/SVG/svg-19990412.dtd)
+SAX.externalSubset(svg, -//W3C//DTD SVG April 1999//EN, http://www.w3.org/Graphics/SVG/svg-19990412.dtd)
+SAX.startElementNs(svg, NULL, NULL, 0, 2, 0, width='242p...', 5, height='383p...', 5)
+SAX.characters(
+, 1)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='stro...', 15)
+SAX.characters(
+, 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+, 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 69,...', 337)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+, 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+, 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 142...', 190)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+, 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+, 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 127...', 71)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+, 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+, 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 178...', 128)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+, 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+, 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 56,...', 273)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 74,...', 203)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 212...', 448)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 151...', 208)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 78,...', 106)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 21,...', 90)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 71,...', 150)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 139...', 101)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 105...', 56)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 141...', 70)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 98,...', 156)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 97,...', 156)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 147...', 238)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 85,...', 69)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 86,...', 217)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+, 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+, 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 93,...', 65)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 144...', 70)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+, 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+, 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 57,...', 294)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 83,...', 194)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 109...', 70)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 122...', 80)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 78,...', 156)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 82,...', 284)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 142...', 239)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 115...', 72)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 114...', 80)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 102...', 72)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 51,...', 154)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 2,3...', 120)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 7,3...', 154)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 11,...', 49)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 13,...', 97)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 202...', 152)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+, 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+, 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 151...', 168)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 91,...', 202)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+, 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+, 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 31,...', 96)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 147...', 76)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 181...', 91)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 132...', 80)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 146...', 80)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 99,...', 78)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 20,...', 105)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 78,...', 56)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 93,...', 92)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+, 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+, 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 105...', 70)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 122...', 56)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 115...', 49)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+, 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+, 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 116...', 260)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 74,...', 245)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 133...', 104)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 133...', 64)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 121...', 334)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 79,...', 70)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 91,...', 80)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 110...', 72)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 126...', 72)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 30,...', 266)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 44,...', 319)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 13,...', 84)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 10,...', 56)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 9,2...', 45)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 33,...', 385)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 7,3...', 51)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 44,...', 49)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 32,...', 49)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 139...', 128)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 208...', 360)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 106...', 152)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 107...', 93)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 148...', 72)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 80,...', 192)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 87,...', 55)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 85,...', 55)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 115...', 119)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 145...', 56)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 26,...', 60)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 160...', 91)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+, 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+, 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 98,...', 265)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 146...', 56)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 148...', 56)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 106...', 56)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 108...', 56)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 106...', 56)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 50,...', 144)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 147...', 231)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 155...', 102)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 112...', 56)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 78,...', 195)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 67,...', 109)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 56,...', 276)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 101...', 307)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 41,...', 116)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 32,...', 245)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 134...', 136)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 173...', 280)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 165...', 88)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 99,...', 124)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 117...', 64)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 117...', 64)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 122...', 64)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 69,...', 262)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 100...', 54)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 115...', 56)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 127...', 56)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 5,2...', 218)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 10,...', 48)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 25,...', 49)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 37,...', 49)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 49,...', 49)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 130...', 88)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 106...', 49)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 139...', 56)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 25,...', 91)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 98,...', 92)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 83,...', 56)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 155...', 72)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 153...', 72)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 152...', 72)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 68,...', 58)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 105...', 68)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 108...', 65)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 85,...', 156)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 140...', 126)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 146...', 237)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 150...', 320)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 147...', 64)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 157...', 72)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 99,...', 63)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+, 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.endElementNs(svg, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/svg2.sax2 b/result/noent/svg2.sax2
new file mode 100644
index 00000000..ab73992b
--- /dev/null
+++ b/result/noent/svg2.sax2
@@ -0,0 +1,189 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(svg, -//W3C//DTD SVG April 1999//EN, http://www.w3.org/Graphics/SVG/svg-19990412.dtd)
+SAX.externalSubset(svg, -//W3C//DTD SVG April 1999//EN, http://www.w3.org/Graphics/SVG/svg-19990412.dtd)
+SAX.startElementNs(svg, NULL, NULL, 0, 2, 0, width='268p...', 5, height='207p...', 5)
+SAX.characters(
+, 1)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='stro...', 15)
+SAX.characters(
+ , 5)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d=' M 2...', 9)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d=' L 1...', 9)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+, 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+, 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='stro...', 15)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 32,...', 46)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+, 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+, 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='stro...', 15)
+SAX.characters(
+, 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+, 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='stro...', 15)
+SAX.characters(
+ , 5)
+SAX.startElementNs(rect, NULL, NULL, 0, 4, 0, x='30" ...', 2, y='101"...', 3, width='51" ...', 2, height='33"/...', 2)
+SAX.endElementNs(rect, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+, 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 5)
+SAX.startElementNs(ellipse, NULL, NULL, 0, 5, 0, cx='182"...', 3, cy='127"...', 3, major='37" ...', 2, minor='31" ...', 2, angle='90"/...', 2)
+SAX.endElementNs(ellipse, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+, 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 5)
+SAX.startElementNs(polyline, NULL, NULL, 0, 1, 0, verts=' 78,...', 445)
+SAX.endElementNs(polyline, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.startElementNs(g, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 6)
+SAX.startElementNs(desc, NULL, NULL, 0, 0, 0)
+SAX.characters( Java Font definition:Dialog 0, 30)
+SAX.endElementNs(desc, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(g, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 6)
+SAX.startElementNs(desc, NULL, NULL, 0, 0, 0)
+SAX.characters( Java Font definition:Helvetic, 33)
+SAX.endElementNs(desc, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+, 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='stro...', 15)
+SAX.characters(
+ , 5)
+SAX.startElementNs(text, NULL, NULL, 0, 2, 0, x='188"...', 3, y='36" ...', 2)
+SAX.characters(this is text, 12)
+SAX.endElementNs(text, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+, 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='stro...', 15)
+SAX.characters(
+ , 5)
+SAX.startElementNs(g, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 6)
+SAX.startElementNs(desc, NULL, NULL, 0, 0, 0)
+SAX.characters( Java Font definition:Dialog 0, 30)
+SAX.endElementNs(desc, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(g, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 6)
+SAX.startElementNs(desc, NULL, NULL, 0, 0, 0)
+SAX.characters( Java Font definition:Helvetic, 35)
+SAX.endElementNs(desc, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+, 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='stro...', 15)
+SAX.characters(
+ , 5)
+SAX.startElementNs(text, NULL, NULL, 0, 2, 0, x='176"...', 3, y='85" ...', 2)
+SAX.characters(sadfsadfsad, 11)
+SAX.endElementNs(text, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+, 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='stro...', 15)
+SAX.characters(
+, 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+, 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 5)
+SAX.startElementNs(ellipse, NULL, NULL, 0, 5, 0, cx='208"...', 3, cy='180"...', 3, major='45" ...', 2, minor='31" ...', 2, angle='0"/>...', 1)
+SAX.endElementNs(ellipse, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+, 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='stro...', 15)
+SAX.characters(
+, 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+, 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 5)
+SAX.startElementNs(g, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 6)
+SAX.startElementNs(desc, NULL, NULL, 0, 0, 0)
+SAX.characters( Java Font definition:Dialog 7, 32)
+SAX.endElementNs(desc, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 4)
+SAX.startElementNs(g, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 6)
+SAX.startElementNs(desc, NULL, NULL, 0, 0, 0)
+SAX.characters( Java Font definition:Dialog 7, 32)
+SAX.endElementNs(desc, NULL, NULL)
+SAX.characters(
+ , 5)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.endElementNs(g, NULL, NULL)
+SAX.endElementNs(svg, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/svg3.sax2 b/result/noent/svg3.sax2
new file mode 100644
index 00000000..b63dff01
--- /dev/null
+++ b/result/noent/svg3.sax2
@@ -0,0 +1,2407 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(svg, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 49)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M77....', 149)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 49)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M81....', 149)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 49)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M108...', 153)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 49)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M105...', 157)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 49)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M101...', 157)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 49)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M90....', 150)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 49)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M83....', 149)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 49)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M80....', 151)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 49)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M91....', 144)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 49)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M71....', 105)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 49)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M72....', 150)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 49)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M72....', 145)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 29)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M70....', 3523)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 29)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M499...', 1458)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M84....', 598)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M333...', 739)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M334...', 757)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M336...', 760)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M337...', 761)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M338...', 762)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M340...', 760)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M341...', 760)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M342...', 760)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M343...', 725)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M345...', 762)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M84....', 637)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M125...', 221)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M265...', 273)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M145...', 431)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M178...', 139)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M188...', 139)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M201...', 139)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M178...', 131)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M179...', 139)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M165...', 911)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M170...', 501)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M192...', 262)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M190...', 209)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M194...', 475)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 29)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M190...', 405)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M191...', 219)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M271...', 327)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='stro...', 30)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M228...', 98)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M180...', 137)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M185...', 152)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M190...', 152)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M197...', 154)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M203...', 154)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M210...', 139)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='stro...', 30)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M181...', 132)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='stro...', 30)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M215...', 142)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M233...', 211)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='stro...', 30)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M247...', 50)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='stro...', 30)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M253...', 56)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M174...', 179)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M188...', 219)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M111...', 221)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M132...', 208)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M133...', 334)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M177...', 183)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M140...', 161)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M147...', 160)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M154...', 158)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M161...', 158)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M125...', 182)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M190...', 247)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M243...', 361)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M208...', 393)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M208...', 393)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M209...', 393)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M210...', 393)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M244...', 301)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M290...', 155)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M294...', 309)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M247...', 193)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M243...', 200)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M255...', 77)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M245...', 191)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M141...', 411)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M140...', 486)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M148...', 494)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M148...', 484)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M148...', 495)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M140...', 486)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M137...', 119)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M120...', 115)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M128...', 132)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M214...', 1619)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M409...', 389)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M464...', 271)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M463...', 289)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M463...', 287)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M462...', 280)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M462...', 289)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M462...', 250)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M250...', 709)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M389...', 91)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M436...', 125)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M492...', 99)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M304...', 123)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M494...', 111)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M343...', 2441)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M309...', 1201)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M380...', 429)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M368...', 1598)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M291...', 929)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M259...', 1006)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M245...', 383)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M217...', 181)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M233...', 2425)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='stro...', 30)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M251...', 74)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='stro...', 30)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M224...', 84)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='stro...', 30)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M221...', 112)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='stro...', 30)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M222...', 114)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M220...', 6993)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M197...', 185)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M138...', 193)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M138...', 197)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M134...', 195)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M134...', 11)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M89 ...', 570)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M87....', 491)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M91 ...', 497)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M88....', 626)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M79....', 183)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M101...', 359)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M240...', 1223)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M231...', 816)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M294...', 902)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M257...', 3281)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M202...', 837)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M182...', 127)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M142...', 177)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M133...', 289)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M120...', 215)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M349...', 1047)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M339...', 444)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M173...', 503)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M180...', 445)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M177...', 379)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M196...', 438)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M188...', 109)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M181...', 113)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M171...', 105)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M163...', 113)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M201...', 111)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M191...', 114)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M180...', 109)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M173...', 105)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M166...', 111)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M205...', 127)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M215...', 127)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M226...', 127)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M236...', 127)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M209...', 127)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M219...', 127)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M196...', 109)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M123...', 117)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M105...', 111)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M125...', 101)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M129...', 1246)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M126...', 311)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M125...', 125)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M127...', 160)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M129...', 160)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M130...', 158)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M245...', 157)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M242...', 154)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M239...', 158)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M236...', 157)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M204...', 387)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M277...', 379)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M218...', 127)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M211...', 126)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M201...', 126)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M193...', 128)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M235...', 128)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M245...', 126)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M254...', 129)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M264...', 126)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M226...', 126)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M262...', 161)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M265...', 363)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M207...', 143)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M217...', 147)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M229...', 143)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M239...', 137)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M181...', 133)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M172...', 135)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M164...', 137)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M211...', 160)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M222...', 160)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M201...', 158)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M181...', 161)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M193...', 155)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M174...', 159)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M167...', 160)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M236...', 161)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M203...', 139)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M213...', 135)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M220...', 139)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M228...', 161)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M238...', 161)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M198...', 139)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M188...', 139)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M249...', 159)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M257...', 159)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 47)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M267...', 159)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M156...', 111)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M187...', 105)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M178...', 111)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M82....', 121)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M84....', 121)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M77....', 121)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M157...', 137)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M245...', 349)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M234...', 346)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M194...', 445)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M168...', 247)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M155...', 396)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M171...', 206)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M186...', 803)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M246...', 179)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M231...', 139)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M221...', 139)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M211...', 139)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M192...', 261)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M189...', 131)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M167...', 181)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M161...', 183)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M155...', 99)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M140...', 181)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M470...', 101)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M476...', 97)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M493...', 91)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='fill...', 13)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M501...', 67)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='stro...', 14)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M110...', 25)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='stro...', 14)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M161...', 38)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='stro...', 14)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M166...', 40)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.startElementNs(g, NULL, NULL, 0, 1, 0, style='stro...', 14)
+SAX.characters(
+ , 3)
+SAX.startElementNs(path, NULL, NULL, 0, 1, 0, d='M220...', 46)
+SAX.endElementNs(path, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(g, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.endElementNs(svg, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/title.xml.sax2 b/result/noent/title.xml.sax2
new file mode 100644
index 00000000..6fa4fa94
--- /dev/null
+++ b/result/noent/title.xml.sax2
@@ -0,0 +1,6 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(title, NULL, NULL, 0, 0, 0)
+SAX.characters(my title, 8)
+SAX.endElementNs(title, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/tstblanks.xml.sax2 b/result/noent/tstblanks.xml.sax2
new file mode 100644
index 00000000..45563a48
--- /dev/null
+++ b/result/noent/tstblanks.xml.sax2
@@ -0,0 +1,6 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(a, NULL, NULL, 0, 1, 0, test='pass...', 6)
+SAX.characters(content, 7)
+SAX.endElementNs(a, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/utf16bebom.xml.sax2 b/result/noent/utf16bebom.xml.sax2
new file mode 100644
index 00000000..43268904
--- /dev/null
+++ b/result/noent/utf16bebom.xml.sax2
@@ -0,0 +1,8 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.comment( This file is encoded in UTF-16BE )
+SAX.startElementNs(repository, NULL, NULL, 0, 1, 0, repositroy_id='test...', 4)
+SAX.startElementNs(namespace, NULL, NULL, 0, 1, 0, name='test...', 4)
+SAX.endElementNs(namespace, NULL, NULL)
+SAX.endElementNs(repository, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/utf16bom.xml.sax2 b/result/noent/utf16bom.xml.sax2
new file mode 100644
index 00000000..2b2db15c
--- /dev/null
+++ b/result/noent/utf16bom.xml.sax2
@@ -0,0 +1,7 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(repository, NULL, NULL, 0, 1, 0, repositroy_id='test...', 4)
+SAX.startElementNs(namespace, NULL, NULL, 0, 1, 0, name='test...', 4)
+SAX.endElementNs(namespace, NULL, NULL)
+SAX.endElementNs(repository, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/utf16lebom.xml.sax2 b/result/noent/utf16lebom.xml.sax2
new file mode 100644
index 00000000..3b623463
--- /dev/null
+++ b/result/noent/utf16lebom.xml.sax2
@@ -0,0 +1,8 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.comment( This file is encoded in UTF-16LE )
+SAX.startElementNs(repository, NULL, NULL, 0, 1, 0, repositroy_id='test...', 4)
+SAX.startElementNs(namespace, NULL, NULL, 0, 1, 0, name='test...', 4)
+SAX.endElementNs(namespace, NULL, NULL)
+SAX.endElementNs(repository, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/utf8bom.xml.sax2 b/result/noent/utf8bom.xml.sax2
new file mode 100644
index 00000000..cf7f20ff
--- /dev/null
+++ b/result/noent/utf8bom.xml.sax2
@@ -0,0 +1,5 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(foo, NULL, NULL, 0, 0, 0)
+SAX.endElementNs(foo, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/wap.xml.sax2 b/result/noent/wap.xml.sax2
new file mode 100644
index 00000000..6d40b255
--- /dev/null
+++ b/result/noent/wap.xml.sax2
@@ -0,0 +1,87 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(wml, -//WAPFORUM//DTD WML 1.1//EN, http://dark.wapit.com/vswap/tests/wap/DTD/wml11.dtd)
+SAX.externalSubset(wml, -//WAPFORUM//DTD WML 1.1//EN, http://dark.wapit.com/vswap/tests/wap/DTD/wml11.dtd)
+SAX.comment( (C) 1999, 2000 WAP Forum Ltd. All rights reserved )
+SAX.startElementNs(wml, NULL, NULL, 0, 0, 0)
+SAX.characters(
+, 1)
+SAX.startElementNs(card, NULL, NULL, 0, 1, 0, id='card...', 5)
+SAX.characters(
+, 1)
+SAX.startElementNs(onevent, NULL, NULL, 0, 1, 0, type='onen...', 14)
+SAX.characters(
+, 1)
+SAX.startElementNs(go, NULL, NULL, 0, 1, 0, href='/vsw...', 21)
+SAX.characters(
+ , 9)
+SAX.startElementNs(postfield, NULL, NULL, 0, 2, 0, name='var"...', 3, value='$tes...', 5)
+SAX.endElementNs(postfield, NULL, NULL)
+SAX.characters(
+ , 9)
+SAX.startElementNs(postfield, NULL, NULL, 0, 2, 0, name='v" v...', 1, value='dark...', 4)
+SAX.endElementNs(postfield, NULL, NULL)
+SAX.characters(
+ , 9)
+SAX.startElementNs(postfield, NULL, NULL, 0, 2, 0, name='ts" ...', 2, value='0003...', 4)
+SAX.endElementNs(postfield, NULL, NULL)
+SAX.characters(
+ , 9)
+SAX.startElementNs(postfield, NULL, NULL, 0, 2, 0, name='tp" ...', 2, value='wml/...', 29)
+SAX.endElementNs(postfield, NULL, NULL)
+SAX.characters(
+ , 9)
+SAX.startElementNs(postfield, NULL, NULL, 0, 2, 0, name='ti" ...', 2, value='1"/>...', 1)
+SAX.endElementNs(postfield, NULL, NULL)
+SAX.characters(
+ , 9)
+SAX.startElementNs(postfield, NULL, NULL, 0, 2, 0, name='expe...', 8, value='var:...', 8)
+SAX.endElementNs(postfield, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.endElementNs(go, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.endElementNs(onevent, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters(If automatic testing failed, s, 36)
+SAX.startElementNs(anchor, NULL, NULL, 0, 0, 0)
+SAX.characters(Failed, 6)
+SAX.startElementNs(go, NULL, NULL, 0, 1, 0, href='/vsw...', 21)
+SAX.characters(
+ , 9)
+SAX.startElementNs(postfield, NULL, NULL, 0, 2, 0, name='SUBM...', 6, value='No"/...', 2)
+SAX.endElementNs(postfield, NULL, NULL)
+SAX.startElementNs(postfield, NULL, NULL, 0, 2, 0, name='v"
+v...', 1, value='dark...', 4)
+SAX.endElementNs(postfield, NULL, NULL)
+SAX.characters(
+ , 9)
+SAX.startElementNs(postfield, NULL, NULL, 0, 2, 0, name='ts" ...', 2, value='0003...', 4)
+SAX.endElementNs(postfield, NULL, NULL)
+SAX.characters(
+ , 9)
+SAX.startElementNs(postfield, NULL, NULL, 0, 2, 0, name='tp" ...', 2, value='wml/...', 29)
+SAX.endElementNs(postfield, NULL, NULL)
+SAX.characters(
+ , 9)
+SAX.startElementNs(postfield, NULL, NULL, 0, 2, 0, name='ti" ...', 2, value='1"/>...', 1)
+SAX.endElementNs(postfield, NULL, NULL)
+SAX.characters(
+ , 9)
+SAX.startElementNs(postfield, NULL, NULL, 0, 2, 0, name='expe...', 8, value='var:...', 8)
+SAX.endElementNs(postfield, NULL, NULL)
+SAX.endElementNs(go, NULL, NULL)
+SAX.endElementNs(anchor, NULL, NULL)
+SAX.characters(., 1)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.endElementNs(card, NULL, NULL)
+SAX.characters(
+
+, 2)
+SAX.endElementNs(wml, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/winblanks.xml.sax2 b/result/noent/winblanks.xml.sax2
new file mode 100644
index 00000000..6e9d693f
--- /dev/null
+++ b/result/noent/winblanks.xml.sax2
@@ -0,0 +1,18 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.startElementNs(a, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(B, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 9)
+SAX.startElementNs(C, NULL, NULL, 0, 0, 0)
+SAX.endElementNs(C, NULL, NULL)
+SAX.characters( , 3)
+SAX.characters(
+, 1)
+SAX.endElementNs(B, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.endElementNs(a, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/wml.xml.sax2 b/result/noent/wml.xml.sax2
new file mode 100644
index 00000000..7772d047
--- /dev/null
+++ b/result/noent/wml.xml.sax2
@@ -0,0 +1,31 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(wml, -//WAPFORUM//DTD WML 1.1//EN, http://www.wapforum.org/DTD/wml_1.1.xml)
+SAX.externalSubset(wml, -//WAPFORUM//DTD WML 1.1//EN, http://www.wapforum.org/DTD/wml_1.1.xml)
+SAX.startElementNs(wml, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 3)
+SAX.startElementNs(card, NULL, NULL, 0, 2, 0, id='card...', 5, title='Rubr...', 15)
+SAX.characters(
+ , 2)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 3)
+SAX.startElementNs(a, NULL, NULL, 0, 1, 0, href='rubm...', 26)
+SAX.characters(Cin, 3)
+SAX.characters(é, 2)
+SAX.characters(ma, 2)
+SAX.endElementNs(a, NULL, NULL)
+SAX.startElementNs(br, NULL, NULL, 0, 0, 0)
+SAX.endElementNs(br, NULL, NULL)
+SAX.characters(
+ , 2)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+
+, 2)
+SAX.endElementNs(card, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.endElementNs(wml, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/xhtml1.sax2 b/result/noent/xhtml1.sax2
new file mode 100644
index 00000000..e6952c86
--- /dev/null
+++ b/result/noent/xhtml1.sax2
@@ -0,0 +1,104 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(html, -//W3C//DTD XHTML 1.0 Strict//EN, http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd)
+SAX.externalSubset(html, -//W3C//DTD XHTML 1.0 Strict//EN, http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd)
+SAX.comment( 3.1.1 3/ )
+SAX.startElementNs(html, NULL, NULL, 0, 2, 0, xml:lang='en" ...', 2, lang='en">...', 2)
+SAX.characters(
+ , 3)
+SAX.startElementNs(head, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(title, NULL, NULL, 0, 0, 0)
+SAX.characters(Virtual Library, 15)
+SAX.endElementNs(title, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.endElementNs(head, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.comment( 4.8 )
+SAX.characters(
+ , 3)
+SAX.startElementNs(script, NULL, NULL, 0, 1, 0, type='text...', 15)
+SAX.characters(
+ ... unescaped script , 24)
+SAX.characters(<, 1)
+SAX.characters( content ...
+ , 15)
+SAX.endElementNs(script, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.startElementNs(body, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters(Moved to , 9)
+SAX.startElementNs(a, NULL, NULL, 0, 1, 0, href='http...', 19)
+SAX.characters(example.org, 11)
+SAX.endElementNs(a, NULL, NULL)
+SAX.characters(., 1)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.endElementNs(body, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.comment( C2 )
+SAX.characters(
+ , 3)
+SAX.startElementNs(img, NULL, NULL, 0, 2, 0, src='foo....', 7, alt='foo"...', 3)
+SAX.endElementNs(img, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.comment( C3 )
+SAX.characters(
+ , 3)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.comment( C7 )
+SAX.characters(
+ , 3)
+SAX.startElementNs(p, NULL, NULL, 0, 1, 0, lang='fr">...', 2)
+SAX.characters(coucou, 6)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.startElementNs(p, NULL, NULL, 0, 1, 0, xml:lang='fr">...', 2)
+SAX.characters(salut, 5)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.comment( C8 )
+SAX.characters(
+ , 3)
+SAX.startElementNs(p, NULL, NULL, 0, 1, 0, name='frag...', 6)
+SAX.characters(test, 4)
+SAX.endElementNs(p, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.comment( 4.5 )
+SAX.characters(
+ , 3)
+SAX.startElementNs(dl, NULL, NULL, 0, 1, 0, compact='">
+ ...', 0)
+SAX.characters(
+ , 3)
+SAX.startElementNs(dt, NULL, NULL, 0, 0, 0)
+SAX.characters(Internet Engineering Task Forc, 31)
+SAX.endElementNs(dt, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.startElementNs(dd, NULL, NULL, 0, 0, 0)
+SAX.characters(An organization which establis, 70)
+SAX.endElementNs(dd, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.endElementNs(dl, NULL, NULL)
+SAX.characters(
+
+, 2)
+SAX.endElementNs(html, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/xhtmlcomp.sax2 b/result/noent/xhtmlcomp.sax2
new file mode 100644
index 00000000..085b770c
--- /dev/null
+++ b/result/noent/xhtmlcomp.sax2
@@ -0,0 +1,23 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(html, -//W3C//DTD XHTML 1.0 Strict//EN, http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd)
+SAX.externalSubset(html, -//W3C//DTD XHTML 1.0 Strict//EN, http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd)
+SAX.startElementNs(html, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 3)
+SAX.startElementNs(body, NULL, NULL, 0, 0, 0)
+SAX.characters(
+ , 5)
+SAX.startElementNs(h1, NULL, NULL, 0, 0, 0)
+SAX.startElementNs(abbr, NULL, NULL, 0, 0, 0)
+SAX.characters(a, 1)
+SAX.endElementNs(abbr, NULL, NULL)
+SAX.characters( b, 2)
+SAX.endElementNs(h1, NULL, NULL)
+SAX.characters(
+ , 3)
+SAX.endElementNs(body, NULL, NULL)
+SAX.characters(
+, 1)
+SAX.endElementNs(html, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/xml1.sax2 b/result/noent/xml1.sax2
new file mode 100644
index 00000000..2dce9259
--- /dev/null
+++ b/result/noent/xml1.sax2
@@ -0,0 +1,22 @@
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(test, , )
+SAX.entityDecl(example, 1, (null), (null), <p>An ampersand (&#38;) may be escaped
+ numerically (&#38;#38;) or with a general entity
+ (&amp;amp;).</p>)
+SAX.getEntity(example)
+SAX.externalSubset(test, , )
+SAX.startElementNs(test, NULL, NULL, 0, 0, 0)
+SAX.getEntity(example)
+SAX.startElementNs(p, NULL, NULL, 0, 0, 0)
+SAX.characters(An ampersand (, 14)
+SAX.characters(&, 1)
+SAX.characters() may be escaped
+ numerically , 31)
+SAX.characters(&, 1)
+SAX.characters(#38;) or with a general entity, 34)
+SAX.characters(&, 1)
+SAX.characters(amp;)., 6)
+SAX.endElementNs(p, NULL, NULL)
+SAX.endElementNs(test, NULL, NULL)
+SAX.endDocument()
diff --git a/result/noent/xml2.sax2 b/result/noent/xml2.sax2
new file mode 100644
index 00000000..141accd6
--- /dev/null
+++ b/result/noent/xml2.sax2
@@ -0,0 +1,18 @@
+xmlSAXUserParseFile returned error 27
+SAX.setDocumentLocator()
+SAX.startDocument()
+SAX.internalSubset(test, , )
+SAX.elementDecl(test, 3, ...)
+SAX.entityDecl(xx, 4, (null), (null), %zz;)
+SAX.getParameterEntity(xx)
+SAX.entityDecl(zz, 4, (null), (null), <!ENTITY tricky "error-prone" >)
+SAX.getParameterEntity(zz)
+SAX.getParameterEntity(xx)
+SAX.error: PEReference: %xx; not found
+SAX.characters(This sample shows a , 20)
+SAX.getEntity(tricky)
+SAX.error: Entity 'tricky' not defined
+SAX.reference(tricky)
+SAX.characters( method., 8)
+SAX.endDocument()
+xmlSAXUserParseFile returned error 27
diff --git a/result/relaxng/pattern3_err b/result/relaxng/pattern3_err
new file mode 100644
index 00000000..a7a1f463
--- /dev/null
+++ b/result/relaxng/pattern3_err
@@ -0,0 +1 @@
+./test/relaxng/pattern3.rng validates
diff --git a/result/relaxng/pattern3_valid b/result/relaxng/pattern3_valid
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/result/relaxng/pattern3_valid
diff --git a/result/scripts/set3.err b/result/scripts/set3.err
index 18f0d694..0dd77926 100644
--- a/result/scripts/set3.err
+++ b/result/scripts/set3.err
@@ -1,3 +1,3 @@
-./test/scripts/set3.xml:1: parser warning : xmlns: URI bar is not absolute
+./test/scripts/set3.xml:1: namespace warning : xmlns: URI bar is not absolute
<a xmlns="bar">foo</a>
^
diff --git a/result/valid/766956.xml b/result/valid/766956.xml
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/result/valid/766956.xml
diff --git a/result/valid/766956.xml.err b/result/valid/766956.xml.err
new file mode 100644
index 00000000..b4ac1e59
--- /dev/null
+++ b/result/valid/766956.xml.err
@@ -0,0 +1,9 @@
+test/valid/dtds/766956.dtd:2: parser error : PEReference: expecting ';'
+%ä%ent;
+ ^
+test/valid/dtds/766956.dtd:2: parser error : Content error in the external subset
+%ä%ent;
+ ^
+Entity: line 1:
+value
+^
diff --git a/result/valid/766956.xml.err.rdr b/result/valid/766956.xml.err.rdr
new file mode 100644
index 00000000..42863793
--- /dev/null
+++ b/result/valid/766956.xml.err.rdr
@@ -0,0 +1,10 @@
+test/valid/dtds/766956.dtd:2: parser error : PEReference: expecting ';'
+%ä%ent;
+ ^
+test/valid/dtds/766956.dtd:2: parser error : Content error in the external subset
+%ä%ent;
+ ^
+Entity: line 1:
+value
+^
+./test/valid/766956.xml : failed to parse
diff --git a/result/valid/781333.xml b/result/valid/781333.xml
new file mode 100644
index 00000000..45dc451d
--- /dev/null
+++ b/result/valid/781333.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0"?>
+<!DOCTYPE a [
+<!ELEMENT a (pppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppp:llllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllll)>
+]>
+<a/>
diff --git a/result/valid/781333.xml.err b/result/valid/781333.xml.err
new file mode 100644
index 00000000..b401b49a
--- /dev/null
+++ b/result/valid/781333.xml.err
@@ -0,0 +1,3 @@
+./test/valid/781333.xml:4: element a: validity error : Element a content does not follow the DTD, expecting ( ..., got
+<a/>
+ ^
diff --git a/result/valid/781333.xml.err.rdr b/result/valid/781333.xml.err.rdr
new file mode 100644
index 00000000..5ff56992
--- /dev/null
+++ b/result/valid/781333.xml.err.rdr
@@ -0,0 +1,6 @@
+./test/valid/781333.xml:4: element a: validity error : Element a content does not follow the DTD, expecting ( ..., got
+<a/>
+ ^
+./test/valid/781333.xml:5: element a: validity error : Element a content does not follow the DTD, Expecting more child
+
+^
diff --git a/result/valid/t8.xml.err b/result/valid/t8.xml.err
index 1a3c006d..52726946 100644
--- a/result/valid/t8.xml.err
+++ b/result/valid/t8.xml.err
@@ -1,19 +1,21 @@
-Entity: line 1: parser error : internal error: xmlParseInternalSubset: error detected in Markup declaration
+./test/valid/t8.xml:6: parser error : internal error: xmlParseInternalSubset: error detected in Markup declaration
- %defroot;
- ^
+%defroot; %defmiddle; %deftest;
+ ^
Entity: line 1:
&lt;!ELEMENT root (middle) >
^
-Entity: line 1: parser error : DOCTYPE improperly terminated
- %defroot;
- ^
+./test/valid/t8.xml:6: parser error : internal error: xmlParseInternalSubset: error detected in Markup declaration
+
+%defroot; %defmiddle; %deftest;
+ ^
Entity: line 1:
-&lt;!ELEMENT root (middle) >
+&lt;!ELEMENT middle (test) >
^
-Entity: line 1: parser error : Start tag expected, '<' not found
- %defroot;
- ^
+./test/valid/t8.xml:6: parser error : internal error: xmlParseInternalSubset: error detected in Markup declaration
+
+%defroot; %defmiddle; %deftest;
+ ^
Entity: line 1:
-&lt;!ELEMENT root (middle) >
+&lt;!ELEMENT test (#PCDATA) >
^
diff --git a/result/valid/t8.xml.err.rdr b/result/valid/t8.xml.err.rdr
index c198a163..8da08fbe 100644
--- a/result/valid/t8.xml.err.rdr
+++ b/result/valid/t8.xml.err.rdr
@@ -1,14 +1,22 @@
-Entity: line 1: parser error : internal error: xmlParseInternalSubset: error detected in Markup declaration
+./test/valid/t8.xml:6: parser error : internal error: xmlParseInternalSubset: error detected in Markup declaration
- %defroot;
- ^
+%defroot; %defmiddle; %deftest;
+ ^
Entity: line 1:
&lt;!ELEMENT root (middle) >
^
-Entity: line 1: parser error : DOCTYPE improperly terminated
- %defroot;
- ^
+./test/valid/t8.xml:6: parser error : internal error: xmlParseInternalSubset: error detected in Markup declaration
+
+%defroot; %defmiddle; %deftest;
+ ^
Entity: line 1:
-&lt;!ELEMENT root (middle) >
+&lt;!ELEMENT middle (test) >
+^
+./test/valid/t8.xml:6: parser error : internal error: xmlParseInternalSubset: error detected in Markup declaration
+
+%defroot; %defmiddle; %deftest;
+ ^
+Entity: line 1:
+&lt;!ELEMENT test (#PCDATA) >
^
./test/valid/t8.xml : failed to parse
diff --git a/result/valid/t8a.xml.err b/result/valid/t8a.xml.err
index 1a3c006d..2846b196 100644
--- a/result/valid/t8a.xml.err
+++ b/result/valid/t8a.xml.err
@@ -1,19 +1,21 @@
-Entity: line 1: parser error : internal error: xmlParseInternalSubset: error detected in Markup declaration
+./test/valid/t8a.xml:6: parser error : internal error: xmlParseInternalSubset: error detected in Markup declaration
- %defroot;
- ^
+%defroot;%defmiddle;%deftest;
+ ^
Entity: line 1:
&lt;!ELEMENT root (middle) >
^
-Entity: line 1: parser error : DOCTYPE improperly terminated
- %defroot;
- ^
+./test/valid/t8a.xml:6: parser error : internal error: xmlParseInternalSubset: error detected in Markup declaration
+
+%defroot;%defmiddle;%deftest;
+ ^
Entity: line 1:
-&lt;!ELEMENT root (middle) >
+&lt;!ELEMENT middle (test) >
^
-Entity: line 1: parser error : Start tag expected, '<' not found
- %defroot;
- ^
+./test/valid/t8a.xml:6: parser error : internal error: xmlParseInternalSubset: error detected in Markup declaration
+
+%defroot;%defmiddle;%deftest;
+ ^
Entity: line 1:
-&lt;!ELEMENT root (middle) >
+&lt;!ELEMENT test (#PCDATA) >
^
diff --git a/result/valid/t8a.xml.err.rdr b/result/valid/t8a.xml.err.rdr
index b6bdcbe7..6abe75a9 100644
--- a/result/valid/t8a.xml.err.rdr
+++ b/result/valid/t8a.xml.err.rdr
@@ -1,14 +1,22 @@
-Entity: line 1: parser error : internal error: xmlParseInternalSubset: error detected in Markup declaration
+./test/valid/t8a.xml:6: parser error : internal error: xmlParseInternalSubset: error detected in Markup declaration
- %defroot;
- ^
+%defroot;%defmiddle;%deftest;
+ ^
Entity: line 1:
&lt;!ELEMENT root (middle) >
^
-Entity: line 1: parser error : DOCTYPE improperly terminated
- %defroot;
- ^
+./test/valid/t8a.xml:6: parser error : internal error: xmlParseInternalSubset: error detected in Markup declaration
+
+%defroot;%defmiddle;%deftest;
+ ^
Entity: line 1:
-&lt;!ELEMENT root (middle) >
+&lt;!ELEMENT middle (test) >
+^
+./test/valid/t8a.xml:6: parser error : internal error: xmlParseInternalSubset: error detected in Markup declaration
+
+%defroot;%defmiddle;%deftest;
+ ^
+Entity: line 1:
+&lt;!ELEMENT test (#PCDATA) >
^
./test/valid/t8a.xml : failed to parse
diff --git a/runtest.c b/runtest.c
index 18615773..605c1d1a 100644
--- a/runtest.c
+++ b/runtest.c
@@ -23,8 +23,10 @@
#include <fcntl.h>
#include <libxml/parser.h>
+#include <libxml/parserInternals.h>
#include <libxml/tree.h>
#include <libxml/uri.h>
+#include <libxml/encoding.h>
#ifdef LIBXML_OUTPUT_ENABLED
#ifdef LIBXML_READER_ENABLED
@@ -118,8 +120,8 @@ typedef struct
} glob_t;
#define GLOB_DOOFFS 0
-static int glob(const char *pattern, int flags,
- int errfunc(const char *epath, int eerrno),
+static int glob(const char *pattern, ATTRIBUTE_UNUSED int flags,
+ ATTRIBUTE_UNUSED int errfunc(const char *epath, int eerrno),
glob_t *pglob) {
glob_t *ret;
WIN32_FIND_DATA FindFileData;
@@ -688,7 +690,7 @@ static int compareFileMem(const char *filename, const char *mem, int size) {
}
if (info.st_size != size) {
fprintf(stderr, "file %s is %ld bytes, result is %d bytes\n",
- filename, info.st_size, size);
+ filename, (long) info.st_size, size);
return(-1);
}
fd = open(filename, RD_FLAGS);
@@ -1677,7 +1679,6 @@ static xmlSAXHandler debugHTMLSAXHandlerStruct = {
static xmlSAXHandlerPtr debugHTMLSAXHandler = &debugHTMLSAXHandlerStruct;
#endif /* LIBXML_HTML_ENABLED */
-#ifdef LIBXML_SAX1_ENABLED
/**
* saxParseTest:
* @filename: the file to parse
@@ -1718,7 +1719,15 @@ saxParseTest(const char *filename, const char *result,
ret = 0;
} else
#endif
- ret = xmlSAXUserParseFile(emptySAXHandler, NULL, filename);
+ {
+ xmlParserCtxtPtr ctxt = xmlCreateFileParserCtxt(filename);
+ memcpy(ctxt->sax, emptySAXHandler, sizeof(xmlSAXHandler));
+ xmlCtxtUseOptions(ctxt, options);
+ xmlParseDocument(ctxt);
+ ret = ctxt->wellFormed ? 0 : ctxt->errNo;
+ xmlFreeDoc(ctxt->myDoc);
+ xmlFreeParserCtxt(ctxt);
+ }
if (ret == XML_WAR_UNDECLARED_ENTITY) {
fprintf(SAXdebug, "xmlSAXUserParseFile returned error %d\n", ret);
ret = 0;
@@ -1734,10 +1743,19 @@ saxParseTest(const char *filename, const char *result,
ret = 0;
} else
#endif
- if (options & XML_PARSE_SAX1) {
- ret = xmlSAXUserParseFile(debugSAXHandler, NULL, filename);
- } else {
- ret = xmlSAXUserParseFile(debugSAX2Handler, NULL, filename);
+ {
+ xmlParserCtxtPtr ctxt = xmlCreateFileParserCtxt(filename);
+ if (options & XML_PARSE_SAX1) {
+ memcpy(ctxt->sax, debugSAXHandler, sizeof(xmlSAXHandler));
+ options -= XML_PARSE_SAX1;
+ } else {
+ memcpy(ctxt->sax, debugSAX2Handler, sizeof(xmlSAXHandler));
+ }
+ xmlCtxtUseOptions(ctxt, options);
+ xmlParseDocument(ctxt);
+ ret = ctxt->wellFormed ? 0 : ctxt->errNo;
+ xmlFreeDoc(ctxt->myDoc);
+ xmlFreeParserCtxt(ctxt);
}
if (ret == XML_WAR_UNDECLARED_ENTITY) {
fprintf(SAXdebug, "xmlSAXUserParseFile returned error %d\n", ret);
@@ -1761,7 +1779,6 @@ done:
return(ret);
}
-#endif
/************************************************************************
* *
@@ -1854,6 +1871,7 @@ pushParseTest(const char *filename, const char *result,
const char *base;
int size, res;
int cur = 0;
+ int chunkSize = 4;
nb_tests++;
/*
@@ -1864,17 +1882,21 @@ pushParseTest(const char *filename, const char *result,
return(-1);
}
+ if (chunkSize > size)
+ chunkSize = size;
+
#ifdef LIBXML_HTML_ENABLED
if (options & XML_PARSE_HTML)
- ctxt = htmlCreatePushParserCtxt(NULL, NULL, base + cur, 4, filename,
+ ctxt = htmlCreatePushParserCtxt(NULL, NULL, base + cur, chunkSize, filename,
XML_CHAR_ENCODING_NONE);
else
#endif
- ctxt = xmlCreatePushParserCtxt(NULL, NULL, base + cur, 4, filename);
+ ctxt = xmlCreatePushParserCtxt(NULL, NULL, base + cur, chunkSize, filename);
xmlCtxtUseOptions(ctxt, options);
- cur += 4;
+ cur += chunkSize;
+ chunkSize = 1024;
do {
- if (cur + 1024 >= size) {
+ if (cur + chunkSize >= size) {
#ifdef LIBXML_HTML_ENABLED
if (options & XML_PARSE_HTML)
htmlParseChunk(ctxt, base + cur, size - cur, 1);
@@ -1885,11 +1907,11 @@ pushParseTest(const char *filename, const char *result,
} else {
#ifdef LIBXML_HTML_ENABLED
if (options & XML_PARSE_HTML)
- htmlParseChunk(ctxt, base + cur, 1024, 0);
+ htmlParseChunk(ctxt, base + cur, chunkSize, 0);
else
#endif
- xmlParseChunk(ctxt, base + cur, 1024, 0);
- cur += 1024;
+ xmlParseChunk(ctxt, base + cur, chunkSize, 0);
+ cur += chunkSize;
}
} while (cur < size);
doc = ctxt->myDoc;
@@ -2142,7 +2164,8 @@ static void processNode(FILE *out, xmlTextReaderPtr reader) {
}
static int
streamProcessTest(const char *filename, const char *result, const char *err,
- xmlTextReaderPtr reader, const char *rng, int options) {
+ xmlTextReaderPtr reader, const char *rng,
+ int options ATTRIBUTE_UNUSED) {
int ret;
char *temp = NULL;
FILE *t = NULL;
@@ -3917,7 +3940,7 @@ c14n11WithoutCommentTest(const char *filename,
return(c14nCommonTest(filename, 0, XML_C14N_1_1, "1-1-without-comments"));
}
#endif
-#if defined(LIBXML_THREAD_ENABLED) && defined(LIBXML_CATALOG_ENABLED) && defined (LIBXML_SAX1_ENABLED)
+#if defined(LIBXML_THREAD_ENABLED) && defined(LIBXML_CATALOG_ENABLED)
/************************************************************************
* *
* Catalog and threads test *
@@ -3929,19 +3952,23 @@ c14n11WithoutCommentTest(const char *filename,
*/
#define MAX_ARGC 20
+typedef struct {
+ const char *filename;
+ int okay;
+} xmlThreadParams;
+
static const char *catalog = "test/threads/complex.xml";
-static const char *testfiles[] = {
- "test/threads/abc.xml",
- "test/threads/acb.xml",
- "test/threads/bac.xml",
- "test/threads/bca.xml",
- "test/threads/cab.xml",
- "test/threads/cba.xml",
- "test/threads/invalid.xml",
+static xmlThreadParams threadParams[] = {
+ { "test/threads/abc.xml", 0 },
+ { "test/threads/acb.xml", 0 },
+ { "test/threads/bac.xml", 0 },
+ { "test/threads/bca.xml", 0 },
+ { "test/threads/cab.xml", 0 },
+ { "test/threads/cba.xml", 0 },
+ { "test/threads/invalid.xml", 0 }
};
-
-static const char *Okay = "OK";
-static const char *Failed = "Failed";
+static const unsigned int num_threads = sizeof(threadParams) /
+ sizeof(threadParams[0]);
#ifndef xmlDoValidityCheckingDefaultValue
#error xmlDoValidityCheckingDefaultValue is not a macro
@@ -3954,7 +3981,8 @@ static void *
thread_specific_data(void *private_data)
{
xmlDocPtr myDoc;
- const char *filename = (const char *) private_data;
+ xmlThreadParams *params = (xmlThreadParams *) private_data;
+ const char *filename = params->filename;
int okay = 1;
if (!strcmp(filename, "test/threads/invalid.xml")) {
@@ -3964,7 +3992,11 @@ thread_specific_data(void *private_data)
xmlDoValidityCheckingDefaultValue = 1;
xmlGenericErrorContext = stderr;
}
+#ifdef LIBXML_SAX1_ENABLED
myDoc = xmlParseFile(filename);
+#else
+ myDoc = xmlReadFile(filename, NULL, XML_WITH_CATALOG);
+#endif
if (myDoc) {
xmlFreeDoc(myDoc);
} else {
@@ -3990,12 +4022,11 @@ thread_specific_data(void *private_data)
okay = 0;
}
}
- if (okay == 0)
- return ((void *) Failed);
- return ((void *) Okay);
+ params->okay = okay;
+ return(NULL);
}
-#if defined WIN32
+#if defined(_WIN32) && !defined(__CYGWIN__)
#include <windows.h>
#include <string.h>
@@ -4006,15 +4037,14 @@ static HANDLE tid[MAX_ARGC];
static DWORD WINAPI
win32_thread_specific_data(void *private_data)
{
- return((DWORD) thread_specific_data(private_data));
+ thread_specific_data(private_data);
+ return(0);
}
static int
testThread(void)
{
unsigned int i, repeat;
- unsigned int num_threads = sizeof(testfiles) / sizeof(testfiles[0]);
- DWORD results[MAX_ARGC];
BOOL ret;
int res = 0;
@@ -4024,7 +4054,6 @@ testThread(void)
nb_tests++;
for (i = 0; i < num_threads; i++) {
- results[i] = 0;
tid[i] = (HANDLE) - 1;
}
@@ -4033,7 +4062,7 @@ testThread(void)
tid[i] = CreateThread(NULL, 0,
win32_thread_specific_data,
- (void *) testfiles[i], 0,
+ (void *) &threadParams[i], 0,
&useless);
if (tid[i] == NULL) {
fprintf(stderr, "CreateThread failed\n");
@@ -4048,7 +4077,8 @@ testThread(void)
}
for (i = 0; i < num_threads; i++) {
- ret = GetExitCodeThread(tid[i], &results[i]);
+ DWORD exitCode;
+ ret = GetExitCodeThread(tid[i], &exitCode);
if (ret == 0) {
fprintf(stderr, "GetExitCodeThread failed\n");
return(1);
@@ -4058,9 +4088,9 @@ testThread(void)
xmlCatalogCleanup();
for (i = 0; i < num_threads; i++) {
- if (results[i] != (DWORD) Okay) {
+ if (threadParams[i].okay == 0) {
fprintf(stderr, "Thread %d handling %s failed\n",
- i, testfiles[i]);
+ i, threadParams[i].filename);
res = 1;
}
}
@@ -4078,8 +4108,6 @@ static int
testThread(void)
{
unsigned int i, repeat;
- unsigned int num_threads = sizeof(testfiles) / sizeof(testfiles[0]);
- void *results[MAX_ARGC];
status_t ret;
int res = 0;
@@ -4087,13 +4115,12 @@ testThread(void)
for (repeat = 0; repeat < 500; repeat++) {
xmlLoadCatalog(catalog);
for (i = 0; i < num_threads; i++) {
- results[i] = NULL;
tid[i] = (thread_id) - 1;
}
for (i = 0; i < num_threads; i++) {
tid[i] =
spawn_thread(thread_specific_data, "xmlTestThread",
- B_NORMAL_PRIORITY, (void *) testfiles[i]);
+ B_NORMAL_PRIORITY, (void *) &threadParams[i]);
if (tid[i] < B_OK) {
fprintf(stderr, "beos_thread_create failed\n");
return (1);
@@ -4101,7 +4128,8 @@ testThread(void)
printf("beos_thread_create %d -> %d\n", i, tid[i]);
}
for (i = 0; i < num_threads; i++) {
- ret = wait_for_thread(tid[i], &results[i]);
+ void *result;
+ ret = wait_for_thread(tid[i], &result);
printf("beos_thread_wait %d -> %d\n", i, ret);
if (ret != B_OK) {
fprintf(stderr, "beos_thread_wait failed\n");
@@ -4112,8 +4140,9 @@ testThread(void)
xmlCatalogCleanup();
ret = B_OK;
for (i = 0; i < num_threads; i++)
- if (results[i] != (void *) Okay) {
- printf("Thread %d handling %s failed\n", i, testfiles[i]);
+ if (threadParams[i].okay == 0) {
+ printf("Thread %d handling %s failed\n", i,
+ threadParams[i].filename);
ret = B_ERROR;
}
}
@@ -4131,8 +4160,6 @@ static int
testThread(void)
{
unsigned int i, repeat;
- unsigned int num_threads = sizeof(testfiles) / sizeof(testfiles[0]);
- void *results[MAX_ARGC];
int ret;
int res = 0;
@@ -4143,20 +4170,20 @@ testThread(void)
nb_tests++;
for (i = 0; i < num_threads; i++) {
- results[i] = NULL;
tid[i] = (pthread_t) - 1;
}
for (i = 0; i < num_threads; i++) {
ret = pthread_create(&tid[i], 0, thread_specific_data,
- (void *) testfiles[i]);
+ (void *) &threadParams[i]);
if (ret != 0) {
fprintf(stderr, "pthread_create failed\n");
return (1);
}
}
for (i = 0; i < num_threads; i++) {
- ret = pthread_join(tid[i], &results[i]);
+ void *result;
+ ret = pthread_join(tid[i], &result);
if (ret != 0) {
fprintf(stderr, "pthread_join failed\n");
return (1);
@@ -4165,9 +4192,9 @@ testThread(void)
xmlCatalogCleanup();
for (i = 0; i < num_threads; i++)
- if (results[i] != (void *) Okay) {
+ if (threadParams[i].okay == 0) {
fprintf(stderr, "Thread %d handling %s failed\n",
- i, testfiles[i]);
+ i, threadParams[i].filename);
res = 1;
}
}
@@ -4214,6 +4241,9 @@ testDesc testDescriptions[] = {
{ "Error cases regression tests",
errParseTest, "./test/errors/*.xml", "result/errors/", "", ".err",
0 },
+ { "Error cases regression tests (old 1.0)",
+ errParseTest, "./test/errors10/*.xml", "result/errors10/", "", ".err",
+ XML_PARSE_OLD10 },
#ifdef LIBXML_READER_ENABLED
{ "Error cases stream regression tests",
streamParseTest, "./test/errors/*.xml", "result/errors/", NULL, ".str",
@@ -4235,10 +4265,13 @@ testDesc testDescriptions[] = {
{ "SAX1 callbacks regression tests" ,
saxParseTest, "./test/*", "result/", ".sax", NULL,
XML_PARSE_SAX1 },
+#endif
{ "SAX2 callbacks regression tests" ,
saxParseTest, "./test/*", "result/", ".sax2", NULL,
0 },
-#endif
+ { "SAX2 callbacks regression tests with entity substitution" ,
+ saxParseTest, "./test/*", "result/noent/", ".sax2", NULL,
+ XML_PARSE_NOENT },
#ifdef LIBXML_PUSH_ENABLED
{ "XML push regression tests" ,
pushParseTest, "./test/*", "result/", "", NULL,
@@ -4253,12 +4286,10 @@ testDesc testDescriptions[] = {
pushParseTest, "./test/HTML/*", "result/HTML/", "", ".err",
XML_PARSE_HTML },
#endif
-#ifdef LIBXML_SAX1_ENABLED
{ "HTML SAX regression tests" ,
saxParseTest, "./test/HTML/*", "result/HTML/", ".sax", NULL,
XML_PARSE_HTML },
#endif
-#endif
#ifdef LIBXML_VALID_ENABLED
{ "Valid documents regression tests" ,
errParseTest, "./test/VCM/*", NULL, NULL, NULL,
@@ -4361,7 +4392,7 @@ testDesc testDescriptions[] = {
c14n11WithoutCommentTest, "./test/c14n/1-1-without-comments/*.xml", NULL, NULL, NULL,
0 },
#endif
-#if defined(LIBXML_THREAD_ENABLED) && defined(LIBXML_CATALOG_ENABLED) && defined(LIBXML_SAX1_ENABLED)
+#if defined(LIBXML_THREAD_ENABLED) && defined(LIBXML_CATALOG_ENABLED)
{ "Catalog and Threads regression tests" ,
threadsTest, NULL, NULL, NULL, NULL,
0 },
@@ -4382,6 +4413,9 @@ launchTests(testDescPtr tst) {
char *result;
char *error;
int mem;
+ xmlCharEncodingHandlerPtr ebcdicHandler;
+
+ ebcdicHandler = xmlGetCharEncodingHandler(XML_CHAR_ENCODING_EBCDIC);
if (tst == NULL) return(-1);
if (tst->in != NULL) {
@@ -4392,6 +4426,9 @@ launchTests(testDescPtr tst) {
for (i = 0;i < globbuf.gl_pathc;i++) {
if (!checkTestFile(globbuf.gl_pathv[i]))
continue;
+ if ((ebcdicHandler == NULL) &&
+ (strstr(globbuf.gl_pathv[i], "ebcdic") != NULL))
+ continue;
if (tst->suffix != NULL) {
result = resultFilename(globbuf.gl_pathv[i], tst->out,
tst->suffix);
@@ -4457,6 +4494,9 @@ launchTests(testDescPtr tst) {
err++;
}
}
+
+ xmlCharEncCloseFunc(ebcdicHandler);
+
return(err);
}
@@ -4493,6 +4533,11 @@ main(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED) {
int i, a, ret = 0;
int subset = 0;
+#if defined(_WIN32) && !defined(__CYGWIN__)
+ setvbuf(stdout, NULL, _IONBF, 0);
+ setvbuf(stderr, NULL, _IONBF, 0);
+#endif
+
initializeLibxml2();
for (a = 1; a < argc;a++) {
diff --git a/test/HTML/758518-entity.html b/test/HTML/758518-entity.html
new file mode 100644
index 00000000..d31c8ff9
--- /dev/null
+++ b/test/HTML/758518-entity.html
@@ -0,0 +1 @@
+&jÙ \ No newline at end of file
diff --git a/test/HTML/758518-tag.html b/test/HTML/758518-tag.html
new file mode 100644
index 00000000..935e7521
--- /dev/null
+++ b/test/HTML/758518-tag.html
@@ -0,0 +1 @@
+<?a“ \ No newline at end of file
diff --git a/test/XPath/docs/ns b/test/XPath/docs/ns
index 88f45756..2338a6fe 100644
--- a/test/XPath/docs/ns
+++ b/test/XPath/docs/ns
@@ -1,3 +1,5 @@
<doc xmlns:ns1="nsuri1">
+ <preceding/>
<elem xmlns:ns2="nsuri2"/>
+ <following/>
</doc>
diff --git a/test/XPath/docs/str b/test/XPath/docs/str
index 547e54de..449de015 100644
--- a/test/XPath/docs/str
+++ b/test/XPath/docs/str
@@ -6,4 +6,6 @@
<p><p>a span</p>n<p>ing one</p></p>
<p><p>and an unbal</p><empty/>anced test</p>
<p>for empty string <seq>123</seq></p>
+ <p id="1">a<b>b</b>c</p>
+ <p id="2"><!--X-->abc</p>
</chapter>
diff --git a/test/XPath/expr/base b/test/XPath/expr/base
index f57e4d0c..cc187356 100644
--- a/test/XPath/expr/base
+++ b/test/XPath/expr/base
@@ -4,4 +4,14 @@
1+2*3+4
(1+2)*(3+4)
1*1+1*1+1*1+1*1+1*1+1*1+1*1+1*1+1*1+1*1+1*1+1*1+1*1+1*1+1*1+1*1+1*1+1*1+1*1+1*1+1*1
+0.000000000000000000000000000000000000000000000000001
+-0.000000000000000000000000000000000000000000000000001
+1e2147483648
+1e4294967296
+1e9223372036854775808
+1e18446744073709551616
+1e-2147483649
+1e-4294967296
+1e-9223372036854775809
+1e-18446744073709551616
self::-name
diff --git a/test/XPath/expr/floats b/test/XPath/expr/floats
index 96c10d15..b4475240 100644
--- a/test/XPath/expr/floats
+++ b/test/XPath/expr/floats
@@ -59,3 +59,5 @@ number('f') div 1
-5 mod 2
-5 mod -2
8 mod 3 = 2
+12345678901234567890
+-12345678901234567890
diff --git a/test/XPath/expr/functions b/test/XPath/expr/functions
index d168b189..00b9461f 100644
--- a/test/XPath/expr/functions
+++ b/test/XPath/expr/functions
@@ -9,12 +9,22 @@ floor(-0)
floor(0)
floor(5.2)
floor(-5.2)
+floor(100000000000000000000)
+floor(-100000000000000000000)
+floor(0 div 0)
+floor(1 div 0)
+floor(-1 div 0)
ceiling(0.1)
ceiling(-0.1)
ceiling(-0)
ceiling(0)
ceiling(5.2)
ceiling(-5.2)
+ceiling(100000000000000000000)
+ceiling(-100000000000000000000)
+ceiling(0 div 0)
+ceiling(1 div 0)
+ceiling(-1 div 0)
round(0.1)
round(5.2)
round(5.5)
@@ -23,3 +33,10 @@ round(-0.1)
round(-5.2)
round(-5.5)
round(-5.6)
+round(0.5)
+round(-0.5)
+round(100000000000000000000)
+round(-100000000000000000000)
+round(0 div 0)
+round(1 div 0)
+round(-1 div 0)
diff --git a/test/XPath/expr/strings b/test/XPath/expr/strings
index 849ca14c..ba02c794 100644
--- a/test/XPath/expr/strings
+++ b/test/XPath/expr/strings
@@ -3,6 +3,8 @@ string(0.5)
string(-0.5)
string(true())
string(false())
+string(12345678901234567890)
+string(-12345678901234567890)
concat("titi","toto")
concat("titi","toto","tata")
concat("titi",'toto')
diff --git a/test/XPath/tests/chaptersbase b/test/XPath/tests/chaptersbase
index 17638f73..f8fbe2a8 100644
--- a/test/XPath/tests/chaptersbase
+++ b/test/XPath/tests/chaptersbase
@@ -8,3 +8,6 @@
/descendant::title
/descendant::p/ancestor::chapter
//p[1]
+//p[0 div 0]
+//p[100000000000000000000]
+//p[-100000000000000000000]
diff --git a/test/XPath/tests/nssimple b/test/XPath/tests/nssimple
index d2a95281..8b343a30 100644
--- a/test/XPath/tests/nssimple
+++ b/test/XPath/tests/nssimple
@@ -1,3 +1,5 @@
/doc/elem/namespace::node()/..
/doc/elem/namespace::*/self::node()[true()]
//*[namespace::ns1]
+/doc/elem/namespace::ns2/following::*
+/doc/elem/namespace::ns2/preceding::*
diff --git a/test/XPath/tests/simplebase b/test/XPath/tests/simplebase
index 8b2c7d15..7b302af2 100644
--- a/test/XPath/tests/simplebase
+++ b/test/XPath/tests/simplebase
@@ -13,3 +13,4 @@
/child::EXAMPLE/attribute::prop1/ancestor-or-self::*
/descendant::title
/descendant::p/ancestor::chapter
+/child::EXAMPLE/attribute::prop2/preceding::text()
diff --git a/test/XPath/tests/strbase b/test/XPath/tests/strbase
new file mode 100644
index 00000000..b8183253
--- /dev/null
+++ b/test/XPath/tests/strbase
@@ -0,0 +1 @@
+//p[.='abc']
diff --git a/test/errors/754946.xml b/test/errors/754946.xml
index 6b5f9b06..edeab32d 100644
--- a/test/errors/754946.xml
+++ b/test/errors/754946.xml
@@ -1 +1,4 @@
-<!DOCTYPEA[<!ENTITY % SYSTEM "A<lbbbbbbbbbbbbbbbbbbb_" >%SYSTEM;<![ \ No newline at end of file
+<!DOCTYPE A [
+ <!ENTITY % SYSTEM "A<lbbbbbbbbbbbbbbbbbbb_">
+ %SYSTEM;
+ <![
diff --git a/test/errors/759579.xml b/test/errors/759579.xml
new file mode 100644
index 00000000..7fadd702
--- /dev/null
+++ b/test/errors/759579.xml
@@ -0,0 +1,11 @@
+<!DOCTYPE doc [
+ <!ENTITY % z '
+ &#37;z; &#37;z; &#37;z; &#37;z; &#37;z;
+ &#37;z; &#37;z; &#37;z; &#37;z; &#37;z;
+ &#37;z; &#37;z; &#37;z; &#37;z; &#37;z;
+ &#37;z; &#37;z; &#37;z; &#37;z; &#37;z;
+ &#37;z; &#37;z; &#37;z; &#37;z; &#37;z;
+ '>
+ %z;
+]>
+<doc/>
diff --git a/test/errors10/781205.xml b/test/errors10/781205.xml
new file mode 100644
index 00000000..d9e9e839
--- /dev/null
+++ b/test/errors10/781205.xml
@@ -0,0 +1,3 @@
+<!DOCTYPE D [
+ <!ENTITY % a "<:0000">
+ %a;
diff --git a/test/errors10/781361.xml b/test/errors10/781361.xml
new file mode 100644
index 00000000..67476bcb
--- /dev/null
+++ b/test/errors10/781361.xml
@@ -0,0 +1,3 @@
+<!DOCTYPE doc [
+ <!ENTITY % elem "<!ELEMENT e0000000000">
+ %elem;
diff --git a/test/icu_parse_test.xml b/test/icu_parse_test.xml
new file mode 100644
index 00000000..031a967c
--- /dev/null
+++ b/test/icu_parse_test.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="EUC-JP"?>
+<foo>
+Text with EUC-JP chars at position 214 (0xd6)
+___
+_______________
+_______________
+_______________
+_______________
+_______________
+_______________
+_______________
+_______é®Äé___
+_</foo>
diff --git a/test/valid/766956.xml b/test/valid/766956.xml
new file mode 100644
index 00000000..19a95a0e
--- /dev/null
+++ b/test/valid/766956.xml
@@ -0,0 +1,2 @@
+<!DOCTYPE test SYSTEM "dtds/766956.dtd">
+<test/>
diff --git a/test/valid/781333.xml b/test/valid/781333.xml
new file mode 100644
index 00000000..b29e5a68
--- /dev/null
+++ b/test/valid/781333.xml
@@ -0,0 +1,4 @@
+<!DOCTYPE a [
+ <!ELEMENT a (pppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppp:llllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllll)>
+]>
+<a/>
diff --git a/test/valid/dtds/766956.dtd b/test/valid/dtds/766956.dtd
new file mode 100644
index 00000000..dddde68b
--- /dev/null
+++ b/test/valid/dtds/766956.dtd
@@ -0,0 +1,2 @@
+<!ENTITY % ent "value">
+%ä%ent;
diff --git a/testThreads.c b/testThreads.c
index bff53912..2ef70a74 100644
--- a/testThreads.c
+++ b/testThreads.c
@@ -3,7 +3,7 @@
#include <stdlib.h>
#include <stdio.h>
-#if defined(LIBXML_THREAD_ENABLED) && defined(LIBXML_CATALOG_ENABLED) && defined(LIBXML_SAX1_ENABLED)
+#if defined(LIBXML_THREAD_ENABLED) && defined(LIBXML_CATALOG_ENABLED)
#include <libxml/globals.h>
#include <libxml/threads.h>
#include <libxml/parser.h>
@@ -61,7 +61,11 @@ thread_specific_data(void *private_data)
xmlDoValidityCheckingDefaultValue = 1;
xmlGenericErrorContext = stderr;
}
+#ifdef LIBXML_SAX1_ENABLED
myDoc = xmlParseFile(filename);
+#else
+ myDoc = xmlReadFile(filename, NULL, XML_WITH_CATALOG);
+#endif
if (myDoc) {
xmlFreeDoc(myDoc);
} else {
diff --git a/testapi.c b/testapi.c
index 60f4bddb..4a751e20 100644
--- a/testapi.c
+++ b/testapi.c
@@ -737,7 +737,8 @@ static void des_xmlSchemaValidCtxtPtr(int no ATTRIBUTE_UNUSED, xmlSchemaValidCtx
#define gen_nb_xmlHashDeallocator 2
static void
-test_xmlHashDeallocator(void *payload ATTRIBUTE_UNUSED, xmlChar *name ATTRIBUTE_UNUSED) {
+test_xmlHashDeallocator(void *payload ATTRIBUTE_UNUSED,
+ const xmlChar *name ATTRIBUTE_UNUSED) {
}
static xmlHashDeallocator gen_xmlHashDeallocator(int no, int nr ATTRIBUTE_UNUSED) {
@@ -1480,6 +1481,9 @@ test_htmlCreateMemoryParserCtxt(void) {
mem_base = xmlMemBlocks();
buffer = gen_const_char_ptr(n_buffer, 0);
size = gen_int(n_size, 1);
+ if ((buffer != NULL) &&
+ (size > (int) strlen((const char *) buffer) + 1))
+ continue;
ret_val = htmlCreateMemoryParserCtxt((const char *)buffer, size);
desret_htmlParserCtxtPtr(ret_val);
@@ -1547,6 +1551,9 @@ test_htmlCreatePushParserCtxt(void) {
size = gen_int(n_size, 3);
filename = gen_fileoutput(n_filename, 4);
enc = gen_xmlCharEncoding(n_enc, 5);
+ if ((chunk != NULL) &&
+ (size > (int) strlen((const char *) chunk) + 1))
+ continue;
ret_val = htmlCreatePushParserCtxt(sax, user_data, (const char *)chunk, size, filename, enc);
desret_htmlParserCtxtPtr(ret_val);
@@ -1721,6 +1728,9 @@ test_htmlCtxtReadMemory(void) {
URL = gen_filepath(n_URL, 3);
encoding = gen_const_char_ptr(n_encoding, 4);
options = gen_int(n_options, 5);
+ if ((buffer != NULL) &&
+ (size > (int) strlen((const char *) buffer) + 1))
+ continue;
ret_val = htmlCtxtReadMemory(ctxt, (const char *)buffer, size, URL, (const char *)encoding, options);
desret_htmlDocPtr(ret_val);
@@ -2278,6 +2288,9 @@ test_htmlParseChunk(void) {
chunk = gen_const_char_ptr(n_chunk, 1);
size = gen_int(n_size, 2);
terminate = gen_int(n_terminate, 3);
+ if ((chunk != NULL) &&
+ (size > (int) strlen((const char *) chunk) + 1))
+ continue;
ret_val = htmlParseChunk(ctxt, (const char *)chunk, size, terminate);
if (ctxt != NULL) {xmlFreeDoc(ctxt->myDoc); ctxt->myDoc = NULL;}
@@ -2321,16 +2334,16 @@ test_htmlParseDoc(void) {
char * encoding; /* a free form C string describing the HTML document encoding, or NULL */
int n_encoding;
- for (n_cur = 0;n_cur < gen_nb_xmlChar_ptr;n_cur++) {
+ for (n_cur = 0;n_cur < gen_nb_const_xmlChar_ptr;n_cur++) {
for (n_encoding = 0;n_encoding < gen_nb_const_char_ptr;n_encoding++) {
mem_base = xmlMemBlocks();
- cur = gen_xmlChar_ptr(n_cur, 0);
+ cur = gen_const_xmlChar_ptr(n_cur, 0);
encoding = gen_const_char_ptr(n_encoding, 1);
- ret_val = htmlParseDoc(cur, (const char *)encoding);
+ ret_val = htmlParseDoc((const xmlChar *)cur, (const char *)encoding);
desret_htmlDocPtr(ret_val);
call_tests++;
- des_xmlChar_ptr(n_cur, cur, 0);
+ des_const_xmlChar_ptr(n_cur, (const xmlChar *)cur, 0);
des_const_char_ptr(n_encoding, (const char *)encoding, 1);
xmlResetLastError();
if (mem_base != xmlMemBlocks()) {
@@ -2621,6 +2634,9 @@ test_htmlReadMemory(void) {
URL = gen_filepath(n_URL, 2);
encoding = gen_const_char_ptr(n_encoding, 3);
options = gen_int(n_options, 4);
+ if ((buffer != NULL) &&
+ (size > (int) strlen((const char *) buffer) + 1))
+ continue;
ret_val = htmlReadMemory((const char *)buffer, size, URL, (const char *)encoding, options);
desret_htmlDocPtr(ret_val);
@@ -2670,20 +2686,20 @@ test_htmlSAXParseDoc(void) {
void * userData; /* if using SAX, this pointer will be provided on callbacks. */
int n_userData;
- for (n_cur = 0;n_cur < gen_nb_xmlChar_ptr;n_cur++) {
+ for (n_cur = 0;n_cur < gen_nb_const_xmlChar_ptr;n_cur++) {
for (n_encoding = 0;n_encoding < gen_nb_const_char_ptr;n_encoding++) {
for (n_sax = 0;n_sax < gen_nb_htmlSAXHandlerPtr;n_sax++) {
for (n_userData = 0;n_userData < gen_nb_userdata;n_userData++) {
mem_base = xmlMemBlocks();
- cur = gen_xmlChar_ptr(n_cur, 0);
+ cur = gen_const_xmlChar_ptr(n_cur, 0);
encoding = gen_const_char_ptr(n_encoding, 1);
sax = gen_htmlSAXHandlerPtr(n_sax, 2);
userData = gen_userdata(n_userData, 3);
- ret_val = htmlSAXParseDoc(cur, (const char *)encoding, sax, userData);
+ ret_val = htmlSAXParseDoc((const xmlChar *)cur, (const char *)encoding, sax, userData);
desret_htmlDocPtr(ret_val);
call_tests++;
- des_xmlChar_ptr(n_cur, cur, 0);
+ des_const_xmlChar_ptr(n_cur, (const xmlChar *)cur, 0);
des_const_char_ptr(n_encoding, (const char *)encoding, 1);
des_htmlSAXHandlerPtr(n_sax, sax, 2);
des_userdata(n_userData, userData, 3);
@@ -3870,6 +3886,9 @@ test_xmlSAX2CDataBlock(void) {
ctx = gen_void_ptr(n_ctx, 0);
value = gen_const_xmlChar_ptr(n_value, 1);
len = gen_int(n_len, 2);
+ if ((value != NULL) &&
+ (len > (int) strlen((const char *) value) + 1))
+ continue;
xmlSAX2CDataBlock(ctx, (const xmlChar *)value, len);
call_tests++;
@@ -3914,6 +3933,9 @@ test_xmlSAX2Characters(void) {
ctx = gen_void_ptr(n_ctx, 0);
ch = gen_const_xmlChar_ptr(n_ch, 1);
len = gen_int(n_len, 2);
+ if ((ch != NULL) &&
+ (len > (int) strlen((const char *) ch) + 1))
+ continue;
xmlSAX2Characters(ctx, (const xmlChar *)ch, len);
call_tests++;
@@ -4554,6 +4576,9 @@ test_xmlSAX2IgnorableWhitespace(void) {
ctx = gen_void_ptr(n_ctx, 0);
ch = gen_const_xmlChar_ptr(n_ch, 1);
len = gen_int(n_len, 2);
+ if ((ch != NULL) &&
+ (len > (int) strlen((const char *) ch) + 1))
+ continue;
xmlSAX2IgnorableWhitespace(ctx, (const xmlChar *)ch, len);
call_tests++;
@@ -8221,6 +8246,9 @@ test_xmlDictExists(void) {
dict = gen_xmlDictPtr(n_dict, 0);
name = gen_const_xmlChar_ptr(n_name, 1);
len = gen_int(n_len, 2);
+ if ((name != NULL) &&
+ (len > (int) strlen((const char *) name) + 1))
+ continue;
ret_val = xmlDictExists(dict, (const xmlChar *)name, len);
desret_const_xmlChar_ptr(ret_val);
@@ -8277,6 +8305,9 @@ test_xmlDictLookup(void) {
dict = gen_xmlDictPtr(n_dict, 0);
name = gen_const_xmlChar_ptr(n_name, 1);
len = gen_int(n_len, 2);
+ if ((name != NULL) &&
+ (len > (int) strlen((const char *) name) + 1))
+ continue;
ret_val = xmlDictLookup(dict, (const xmlChar *)name, len);
desret_const_xmlChar_ptr(ret_val);
@@ -9958,6 +9989,43 @@ test_xmlHashCreateDict(void) {
static int
+test_xmlHashDefaultDeallocator(void) {
+ int test_ret = 0;
+
+ int mem_base;
+ void * entry; /* the hash table entry */
+ int n_entry;
+ xmlChar * name; /* the entry's name */
+ int n_name;
+
+ for (n_entry = 0;n_entry < gen_nb_void_ptr;n_entry++) {
+ for (n_name = 0;n_name < gen_nb_const_xmlChar_ptr;n_name++) {
+ mem_base = xmlMemBlocks();
+ entry = gen_void_ptr(n_entry, 0);
+ name = gen_const_xmlChar_ptr(n_name, 1);
+
+ xmlHashDefaultDeallocator(entry, (const xmlChar *)name);
+ call_tests++;
+ des_void_ptr(n_entry, entry, 0);
+ des_const_xmlChar_ptr(n_name, (const xmlChar *)name, 1);
+ xmlResetLastError();
+ if (mem_base != xmlMemBlocks()) {
+ printf("Leak of %d blocks found in xmlHashDefaultDeallocator",
+ xmlMemBlocks() - mem_base);
+ test_ret++;
+ printf(" %d", n_entry);
+ printf(" %d", n_name);
+ printf("\n");
+ }
+ }
+ }
+ function_tests++;
+
+ return(test_ret);
+}
+
+
+static int
test_xmlHashLookup(void) {
int test_ret = 0;
@@ -10689,13 +10757,14 @@ static int
test_hash(void) {
int test_ret = 0;
- if (quiet == 0) printf("Testing hash : 16 of 24 functions ...\n");
+ if (quiet == 0) printf("Testing hash : 17 of 25 functions ...\n");
test_ret += test_xmlHashAddEntry();
test_ret += test_xmlHashAddEntry2();
test_ret += test_xmlHashAddEntry3();
test_ret += test_xmlHashCopy();
test_ret += test_xmlHashCreate();
test_ret += test_xmlHashCreateDict();
+ test_ret += test_xmlHashDefaultDeallocator();
test_ret += test_xmlHashLookup();
test_ret += test_xmlHashLookup2();
test_ret += test_xmlHashLookup3();
@@ -12727,6 +12796,9 @@ test_xmlCreatePushParserCtxt(void) {
chunk = gen_const_char_ptr(n_chunk, 2);
size = gen_int(n_size, 3);
filename = gen_fileoutput(n_filename, 4);
+ if ((chunk != NULL) &&
+ (size > (int) strlen((const char *) chunk) + 1))
+ continue;
ret_val = xmlCreatePushParserCtxt(sax, user_data, (const char *)chunk, size, filename);
desret_xmlParserCtxtPtr(ret_val);
@@ -12905,6 +12977,9 @@ test_xmlCtxtReadMemory(void) {
URL = gen_filepath(n_URL, 3);
encoding = gen_const_char_ptr(n_encoding, 4);
options = gen_parseroptions(n_options, 5);
+ if ((buffer != NULL) &&
+ (size > (int) strlen((const char *) buffer) + 1))
+ continue;
ret_val = xmlCtxtReadMemory(ctxt, (const char *)buffer, size, URL, (const char *)encoding, options);
desret_xmlDocPtr(ret_val);
@@ -12998,6 +13073,9 @@ test_xmlCtxtResetPush(void) {
size = gen_int(n_size, 2);
filename = gen_filepath(n_filename, 3);
encoding = gen_const_char_ptr(n_encoding, 4);
+ if ((chunk != NULL) &&
+ (size > (int) strlen((const char *) chunk) + 1))
+ continue;
ret_val = xmlCtxtResetPush(ctxt, (const char *)chunk, size, filename, (const char *)encoding);
desret_int(ret_val);
@@ -13709,6 +13787,9 @@ test_xmlParseChunk(void) {
chunk = gen_const_char_ptr(n_chunk, 1);
size = gen_int(n_size, 2);
terminate = gen_int(n_terminate, 3);
+ if ((chunk != NULL) &&
+ (size > (int) strlen((const char *) chunk) + 1))
+ continue;
ret_val = xmlParseChunk(ctxt, (const char *)chunk, size, terminate);
if (ctxt != NULL) {xmlFreeDoc(ctxt->myDoc); ctxt->myDoc = NULL;}
@@ -14166,6 +14247,9 @@ test_xmlParseMemory(void) {
mem_base = xmlMemBlocks();
buffer = gen_const_char_ptr(n_buffer, 0);
size = gen_int(n_size, 1);
+ if ((buffer != NULL) &&
+ (size > (int) strlen((const char *) buffer) + 1))
+ continue;
ret_val = xmlParseMemory((const char *)buffer, size);
desret_xmlDocPtr(ret_val);
@@ -14578,6 +14662,9 @@ test_xmlReadMemory(void) {
URL = gen_filepath(n_URL, 2);
encoding = gen_const_char_ptr(n_encoding, 3);
options = gen_parseroptions(n_options, 4);
+ if ((buffer != NULL) &&
+ (size > (int) strlen((const char *) buffer) + 1))
+ continue;
ret_val = xmlReadMemory((const char *)buffer, size, URL, (const char *)encoding, options);
desret_xmlDocPtr(ret_val);
@@ -14700,6 +14787,9 @@ test_xmlRecoverMemory(void) {
mem_base = xmlMemBlocks();
buffer = gen_const_char_ptr(n_buffer, 0);
size = gen_int(n_size, 1);
+ if ((buffer != NULL) &&
+ (size > (int) strlen((const char *) buffer) + 1))
+ continue;
ret_val = xmlRecoverMemory((const char *)buffer, size);
desret_xmlDocPtr(ret_val);
@@ -15001,6 +15091,9 @@ test_xmlSAXParseMemory(void) {
buffer = gen_const_char_ptr(n_buffer, 1);
size = gen_int(n_size, 2);
recovery = gen_int(n_recovery, 3);
+ if ((buffer != NULL) &&
+ (size > (int) strlen((const char *) buffer) + 1))
+ continue;
ret_val = xmlSAXParseMemory(sax, (const char *)buffer, size, recovery);
desret_xmlDocPtr(ret_val);
@@ -15062,6 +15155,9 @@ test_xmlSAXParseMemoryWithData(void) {
size = gen_int(n_size, 2);
recovery = gen_int(n_recovery, 3);
data = gen_userdata(n_data, 4);
+ if ((buffer != NULL) &&
+ (size > (int) strlen((const char *) buffer) + 1))
+ continue;
ret_val = xmlSAXParseMemoryWithData(sax, (const char *)buffer, size, recovery, data);
desret_xmlDocPtr(ret_val);
@@ -15177,6 +15273,9 @@ test_xmlSAXUserParseMemory(void) {
user_data = gen_userdata(n_user_data, 1);
buffer = gen_const_char_ptr(n_buffer, 2);
size = gen_int(n_size, 3);
+ if ((buffer != NULL) &&
+ (size > (int) strlen((const char *) buffer) + 1))
+ continue;
#ifdef LIBXML_SAX1_ENABLED
if (sax == (xmlSAXHandlerPtr)&xmlDefaultSAXHandler) user_data = NULL;
@@ -15948,6 +16047,9 @@ test_xmlCreateMemoryParserCtxt(void) {
mem_base = xmlMemBlocks();
buffer = gen_const_char_ptr(n_buffer, 0);
size = gen_int(n_size, 1);
+ if ((buffer != NULL) &&
+ (size > (int) strlen((const char *) buffer) + 1))
+ continue;
ret_val = xmlCreateMemoryParserCtxt((const char *)buffer, size);
desret_xmlParserCtxtPtr(ret_val);
@@ -16603,6 +16705,9 @@ test_xmlStringLenDecodeEntities(void) {
end = gen_xmlChar(n_end, 4);
end2 = gen_xmlChar(n_end2, 5);
end3 = gen_xmlChar(n_end3, 6);
+ if ((str != NULL) &&
+ (len > (int) strlen((const char *) str) + 1))
+ continue;
ret_val = xmlStringLenDecodeEntities(ctxt, (const xmlChar *)str, len, what, end, end2, end3);
desret_xmlChar_ptr(ret_val);
@@ -17573,6 +17678,9 @@ test_xmlRelaxNGNewMemParserCtxt(void) {
mem_base = xmlMemBlocks();
buffer = gen_const_char_ptr(n_buffer, 0);
size = gen_int(n_size, 1);
+ if ((buffer != NULL) &&
+ (size > (int) strlen((const char *) buffer) + 1))
+ continue;
ret_val = xmlRelaxNGNewMemParserCtxt((const char *)buffer, size);
desret_xmlRelaxNGParserCtxtPtr(ret_val);
@@ -17849,6 +17957,9 @@ test_xmlRelaxNGValidatePushCData(void) {
ctxt = gen_xmlRelaxNGValidCtxtPtr(n_ctxt, 0);
data = gen_const_xmlChar_ptr(n_data, 1);
len = gen_int(n_len, 2);
+ if ((data != NULL) &&
+ (len > (int) strlen((const char *) data) + 1))
+ continue;
ret_val = xmlRelaxNGValidatePushCData(ctxt, (const xmlChar *)data, len);
desret_int(ret_val);
@@ -18591,6 +18702,9 @@ test_xmlBufferAdd(void) {
buf = gen_xmlBufferPtr(n_buf, 0);
str = gen_const_xmlChar_ptr(n_str, 1);
len = gen_int(n_len, 2);
+ if ((str != NULL) &&
+ (len > (int) strlen((const char *) str) + 1))
+ continue;
ret_val = xmlBufferAdd(buf, (const xmlChar *)str, len);
desret_int(ret_val);
@@ -18637,6 +18751,9 @@ test_xmlBufferAddHead(void) {
buf = gen_xmlBufferPtr(n_buf, 0);
str = gen_const_xmlChar_ptr(n_str, 1);
len = gen_int(n_len, 2);
+ if ((str != NULL) &&
+ (len > (int) strlen((const char *) str) + 1))
+ continue;
ret_val = xmlBufferAddHead(buf, (const xmlChar *)str, len);
desret_int(ret_val);
@@ -19209,6 +19326,9 @@ test_xmlBuildQName(void) {
prefix = gen_const_xmlChar_ptr(n_prefix, 1);
memory = gen_xmlChar_ptr(n_memory, 2);
len = gen_int(n_len, 3);
+ if ((prefix != NULL) &&
+ (len > (int) strlen((const char *) prefix) + 1))
+ continue;
ret_val = xmlBuildQName((const xmlChar *)ncname, (const xmlChar *)prefix, memory, len);
if ((ret_val != NULL) && (ret_val != ncname) &&
@@ -20980,6 +21100,9 @@ test_xmlNewCDataBlock(void) {
doc = gen_xmlDocPtr(n_doc, 0);
content = gen_const_xmlChar_ptr(n_content, 1);
len = gen_int(n_len, 2);
+ if ((content != NULL) &&
+ (len > (int) strlen((const char *) content) + 1))
+ continue;
ret_val = xmlNewCDataBlock(doc, (const xmlChar *)content, len);
desret_xmlNodePtr(ret_val);
@@ -21553,6 +21676,9 @@ test_xmlNewDocTextLen(void) {
doc = gen_xmlDocPtr(n_doc, 0);
content = gen_const_xmlChar_ptr(n_content, 1);
len = gen_int(n_len, 2);
+ if ((content != NULL) &&
+ (len > (int) strlen((const char *) content) + 1))
+ continue;
ret_val = xmlNewDocTextLen(doc, (const xmlChar *)content, len);
desret_xmlNodePtr(ret_val);
@@ -22096,6 +22222,9 @@ test_xmlNewTextLen(void) {
mem_base = xmlMemBlocks();
content = gen_const_xmlChar_ptr(n_content, 0);
len = gen_int(n_len, 1);
+ if ((content != NULL) &&
+ (len > (int) strlen((const char *) content) + 1))
+ continue;
ret_val = xmlNewTextLen((const xmlChar *)content, len);
desret_xmlNodePtr(ret_val);
@@ -22209,6 +22338,9 @@ test_xmlNodeAddContentLen(void) {
cur = gen_xmlNodePtr(n_cur, 0);
content = gen_const_xmlChar_ptr(n_content, 1);
len = gen_int(n_len, 2);
+ if ((content != NULL) &&
+ (len > (int) strlen((const char *) content) + 1))
+ continue;
xmlNodeAddContentLen(cur, (const xmlChar *)content, len);
call_tests++;
@@ -22759,6 +22891,9 @@ test_xmlNodeSetContentLen(void) {
cur = gen_xmlNodePtr(n_cur, 0);
content = gen_const_xmlChar_ptr(n_content, 1);
len = gen_int(n_len, 2);
+ if ((content != NULL) &&
+ (len > (int) strlen((const char *) content) + 1))
+ continue;
xmlNodeSetContentLen(cur, (const xmlChar *)content, len);
call_tests++;
@@ -23823,6 +23958,9 @@ test_xmlStringLenGetNodeList(void) {
doc = gen_const_xmlDoc_ptr(n_doc, 0);
value = gen_const_xmlChar_ptr(n_value, 1);
len = gen_int(n_len, 2);
+ if ((value != NULL) &&
+ (len > (int) strlen((const char *) value) + 1))
+ continue;
ret_val = xmlStringLenGetNodeList((const xmlDoc *)doc, (const xmlChar *)value, len);
desret_xmlNodePtr(ret_val);
@@ -23869,6 +24007,9 @@ test_xmlTextConcat(void) {
node = gen_xmlNodePtr(n_node, 0);
content = gen_const_xmlChar_ptr(n_content, 1);
len = gen_int(n_len, 2);
+ if ((content != NULL) &&
+ (len > (int) strlen((const char *) content) + 1))
+ continue;
ret_val = xmlTextConcat(node, (const xmlChar *)content, len);
desret_int(ret_val);
@@ -27125,6 +27266,9 @@ test_xmlValidatePushCData(void) {
ctxt = gen_xmlValidCtxtPtr(n_ctxt, 0);
data = gen_const_xmlChar_ptr(n_data, 1);
len = gen_int(n_len, 2);
+ if ((data != NULL) &&
+ (len > (int) strlen((const char *) data) + 1))
+ continue;
ret_val = xmlValidatePushCData(ctxt, (const xmlChar *)data, len);
desret_int(ret_val);
@@ -28661,6 +28805,9 @@ test_xmlOutputBufferWrite(void) {
out = gen_xmlOutputBufferPtr(n_out, 0);
len = gen_int(n_len, 1);
buf = gen_const_char_ptr(n_buf, 2);
+ if ((buf != NULL) &&
+ (len > (int) strlen((const char *) buf) + 1))
+ continue;
ret_val = xmlOutputBufferWrite(out, len, (const char *)buf);
desret_int(ret_val);
@@ -28887,6 +29034,9 @@ test_xmlParserInputBufferCreateMem(void) {
mem = gen_const_char_ptr(n_mem, 0);
size = gen_int(n_size, 1);
enc = gen_xmlCharEncoding(n_enc, 2);
+ if ((mem != NULL) &&
+ (size > (int) strlen((const char *) mem) + 1))
+ continue;
ret_val = xmlParserInputBufferCreateMem((const char *)mem, size, enc);
desret_xmlParserInputBufferPtr(ret_val);
@@ -28933,6 +29083,9 @@ test_xmlParserInputBufferCreateStatic(void) {
mem = gen_const_char_ptr(n_mem, 0);
size = gen_int(n_size, 1);
enc = gen_xmlCharEncoding(n_enc, 2);
+ if ((mem != NULL) &&
+ (size > (int) strlen((const char *) mem) + 1))
+ continue;
ret_val = xmlParserInputBufferCreateStatic((const char *)mem, size, enc);
desret_xmlParserInputBufferPtr(ret_val);
@@ -29018,6 +29171,9 @@ test_xmlParserInputBufferPush(void) {
in = gen_xmlParserInputBufferPtr(n_in, 0);
len = gen_int(n_len, 1);
buf = gen_const_char_ptr(n_buf, 2);
+ if ((buf != NULL) &&
+ (len > (int) strlen((const char *) buf) + 1))
+ continue;
ret_val = xmlParserInputBufferPush(in, len, (const char *)buf);
desret_int(ret_val);
@@ -30200,6 +30356,9 @@ test_xmlReaderForMemory(void) {
URL = gen_filepath(n_URL, 2);
encoding = gen_const_char_ptr(n_encoding, 3);
options = gen_parseroptions(n_options, 4);
+ if ((buffer != NULL) &&
+ (size > (int) strlen((const char *) buffer) + 1))
+ continue;
ret_val = xmlReaderForMemory((const char *)buffer, size, URL, (const char *)encoding, options);
desret_xmlTextReaderPtr(ret_val);
@@ -30383,6 +30542,9 @@ test_xmlReaderNewMemory(void) {
URL = gen_filepath(n_URL, 3);
encoding = gen_const_char_ptr(n_encoding, 4);
options = gen_parseroptions(n_options, 5);
+ if ((buffer != NULL) &&
+ (size > (int) strlen((const char *) buffer) + 1))
+ continue;
ret_val = xmlReaderNewMemory(reader, (const char *)buffer, size, URL, (const char *)encoding, options);
desret_int(ret_val);
@@ -34420,6 +34582,9 @@ test_xmlSchemaNewMemParserCtxt(void) {
mem_base = xmlMemBlocks();
buffer = gen_const_char_ptr(n_buffer, 0);
size = gen_int(n_size, 1);
+ if ((buffer != NULL) &&
+ (size > (int) strlen((const char *) buffer) + 1))
+ continue;
ret_val = xmlSchemaNewMemParserCtxt((const char *)buffer, size);
desret_xmlSchemaParserCtxtPtr(ret_val);
@@ -36304,6 +36469,9 @@ test_xmlCharStrndup(void) {
mem_base = xmlMemBlocks();
cur = gen_const_char_ptr(n_cur, 0);
len = gen_int(n_len, 1);
+ if ((cur != NULL) &&
+ (len > (int) strlen((const char *) cur) + 1))
+ continue;
ret_val = xmlCharStrndup((const char *)cur, len);
desret_xmlChar_ptr(ret_val);
@@ -36743,6 +36911,9 @@ test_xmlStrncasecmp(void) {
str1 = gen_const_xmlChar_ptr(n_str1, 0);
str2 = gen_const_xmlChar_ptr(n_str2, 1);
len = gen_int(n_len, 2);
+ if ((str2 != NULL) &&
+ (len > (int) strlen((const char *) str2) + 1))
+ continue;
ret_val = xmlStrncasecmp((const xmlChar *)str1, (const xmlChar *)str2, len);
desret_int(ret_val);
@@ -36789,6 +36960,9 @@ test_xmlStrncatNew(void) {
str1 = gen_const_xmlChar_ptr(n_str1, 0);
str2 = gen_const_xmlChar_ptr(n_str2, 1);
len = gen_int(n_len, 2);
+ if ((str2 != NULL) &&
+ (len > (int) strlen((const char *) str2) + 1))
+ continue;
ret_val = xmlStrncatNew((const xmlChar *)str1, (const xmlChar *)str2, len);
desret_xmlChar_ptr(ret_val);
@@ -36835,6 +37009,9 @@ test_xmlStrncmp(void) {
str1 = gen_const_xmlChar_ptr(n_str1, 0);
str2 = gen_const_xmlChar_ptr(n_str2, 1);
len = gen_int(n_len, 2);
+ if ((str2 != NULL) &&
+ (len > (int) strlen((const char *) str2) + 1))
+ continue;
ret_val = xmlStrncmp((const xmlChar *)str1, (const xmlChar *)str2, len);
desret_int(ret_val);
@@ -36877,6 +37054,9 @@ test_xmlStrndup(void) {
mem_base = xmlMemBlocks();
cur = gen_const_xmlChar_ptr(n_cur, 0);
len = gen_int(n_len, 1);
+ if ((cur != NULL) &&
+ (len > (int) strlen((const char *) cur) + 1))
+ continue;
ret_val = xmlStrndup((const xmlChar *)cur, len);
desret_xmlChar_ptr(ret_val);
@@ -36959,6 +37139,12 @@ test_xmlStrsub(void) {
str = gen_const_xmlChar_ptr(n_str, 0);
start = gen_int(n_start, 1);
len = gen_int(n_len, 2);
+ if ((str != NULL) &&
+ (start > (int) strlen((const char *) str) + 1))
+ continue;
+ if ((str != NULL) &&
+ (len > (int) strlen((const char *) str) + 1))
+ continue;
ret_val = xmlStrsub((const xmlChar *)str, start, len);
desret_xmlChar_ptr(ret_val);
@@ -37143,6 +37329,9 @@ test_xmlUTF8Strndup(void) {
mem_base = xmlMemBlocks();
utf = gen_const_xmlChar_ptr(n_utf, 0);
len = gen_int(n_len, 1);
+ if ((utf != NULL) &&
+ (len > (int) strlen((const char *) utf) + 1))
+ continue;
ret_val = xmlUTF8Strndup((const xmlChar *)utf, len);
desret_xmlChar_ptr(ret_val);
@@ -37221,6 +37410,9 @@ test_xmlUTF8Strsize(void) {
mem_base = xmlMemBlocks();
utf = gen_const_xmlChar_ptr(n_utf, 0);
len = gen_int(n_len, 1);
+ if ((utf != NULL) &&
+ (len > (int) strlen((const char *) utf) + 1))
+ continue;
ret_val = xmlUTF8Strsize((const xmlChar *)utf, len);
desret_int(ret_val);
@@ -37264,6 +37456,12 @@ test_xmlUTF8Strsub(void) {
utf = gen_const_xmlChar_ptr(n_utf, 0);
start = gen_int(n_start, 1);
len = gen_int(n_len, 2);
+ if ((utf != NULL) &&
+ (start > (int) strlen((const char *) utf) + 1))
+ continue;
+ if ((utf != NULL) &&
+ (len > (int) strlen((const char *) utf) + 1))
+ continue;
ret_val = xmlUTF8Strsub((const xmlChar *)utf, start, len);
desret_xmlChar_ptr(ret_val);
@@ -44576,6 +44774,12 @@ test_xmlTextWriterWriteBase64(void) {
data = gen_const_char_ptr(n_data, 1);
start = gen_int(n_start, 2);
len = gen_int(n_len, 3);
+ if ((data != NULL) &&
+ (start > (int) strlen((const char *) data) + 1))
+ continue;
+ if ((data != NULL) &&
+ (len > (int) strlen((const char *) data) + 1))
+ continue;
ret_val = xmlTextWriterWriteBase64(writer, (const char *)data, start, len);
desret_int(ret_val);
@@ -44631,6 +44835,12 @@ test_xmlTextWriterWriteBinHex(void) {
data = gen_const_char_ptr(n_data, 1);
start = gen_int(n_start, 2);
len = gen_int(n_len, 3);
+ if ((data != NULL) &&
+ (start > (int) strlen((const char *) data) + 1))
+ continue;
+ if ((data != NULL) &&
+ (len > (int) strlen((const char *) data) + 1))
+ continue;
ret_val = xmlTextWriterWriteBinHex(writer, (const char *)data, start, len);
desret_int(ret_val);
@@ -45561,6 +45771,9 @@ test_xmlTextWriterWriteRawLen(void) {
writer = gen_xmlTextWriterPtr(n_writer, 0);
content = gen_const_xmlChar_ptr(n_content, 1);
len = gen_int(n_len, 2);
+ if ((content != NULL) &&
+ (len > (int) strlen((const char *) content) + 1))
+ continue;
ret_val = xmlTextWriterWriteRawLen(writer, (const xmlChar *)content, len);
desret_int(ret_val);
diff --git a/testlimits.c b/testlimits.c
index 577f593c..68c94dbc 100644
--- a/testlimits.c
+++ b/testlimits.c
@@ -1284,13 +1284,14 @@ saxTest(const char *filename, size_t limit, int options, int fail) {
if (fail)
res = 0;
else {
- fprintf(stderr, "Failed to parse '%s' %lu\n", filename, limit);
+ fprintf(stderr, "Failed to parse '%s' %lu\n", filename,
+ (unsigned long) limit);
res = 1;
}
} else {
if (fail) {
fprintf(stderr, "Failed to get failure for '%s' %lu\n",
- filename, limit);
+ filename, (unsigned long) limit);
res = 1;
} else
res = 0;
@@ -1339,7 +1340,7 @@ readerTest(const char *filename, size_t limit, int options, int fail) {
filename, crazy_indx);
else
fprintf(stderr, "Failed to parse '%s' %lu\n",
- filename, limit);
+ filename, (unsigned long) limit);
res = 1;
}
} else {
@@ -1349,7 +1350,7 @@ readerTest(const char *filename, size_t limit, int options, int fail) {
filename, crazy_indx);
else
fprintf(stderr, "Failed to get failure for '%s' %lu\n",
- filename, limit);
+ filename, (unsigned long) limit);
res = 1;
} else
res = 0;
diff --git a/testrecurse.c b/testrecurse.c
index e5d5d1b3..f95ae1c3 100644
--- a/testrecurse.c
+++ b/testrecurse.c
@@ -69,8 +69,8 @@ typedef struct
} glob_t;
#define GLOB_DOOFFS 0
-static int glob(const char *pattern, int flags,
- int errfunc(const char *epath, int eerrno),
+static int glob(const char *pattern, ATTRIBUTE_UNUSED int flags,
+ ATTRIBUTE_UNUSED int errfunc(const char *epath, int eerrno),
glob_t *pglob) {
glob_t *ret;
WIN32_FIND_DATA FindFileData;
diff --git a/threads.c b/threads.c
index b9d6cae3..0433ac0f 100644
--- a/threads.c
+++ b/threads.c
@@ -27,6 +27,7 @@
#ifdef HAVE_PTHREAD_H
#include <pthread.h>
#elif defined HAVE_WIN32_THREADS
+#define WIN32_LEAN_AND_MEAN
#include <windows.h>
#ifndef HAVE_COMPILER_TLS
#include <process.h>
@@ -46,50 +47,37 @@
#ifdef HAVE_PTHREAD_H
+#if defined(__GNUC__) && (__GNUC__ * 100 + __GNUC_MINOR__ >= 303) && \
+ defined(__GLIBC__) && defined(__linux__)
+
static int libxml_is_threaded = -1;
-#if defined(__GNUC__) && defined(__GLIBC__)
-#ifdef linux
-#if (__GNUC__ == 3 && __GNUC_MINOR__ >= 3) || (__GNUC__ > 3)
-extern int pthread_once (pthread_once_t *__once_control,
- void (*__init_routine) (void))
- __attribute((weak));
-extern void *pthread_getspecific (pthread_key_t __key)
- __attribute((weak));
-extern int pthread_setspecific (pthread_key_t __key,
- __const void *__pointer)
- __attribute((weak));
-extern int pthread_key_create (pthread_key_t *__key,
- void (*__destr_function) (void *))
- __attribute((weak));
-extern int pthread_key_delete (pthread_key_t __key)
- __attribute((weak));
-extern int pthread_mutex_init ()
- __attribute((weak));
-extern int pthread_mutex_destroy ()
- __attribute((weak));
-extern int pthread_mutex_lock ()
- __attribute((weak));
-extern int pthread_mutex_unlock ()
- __attribute((weak));
-extern int pthread_cond_init ()
- __attribute((weak));
-extern int pthread_cond_destroy ()
- __attribute((weak));
-extern int pthread_cond_wait ()
- __attribute((weak));
-extern int pthread_equal ()
- __attribute((weak));
-extern pthread_t pthread_self ()
- __attribute((weak));
-extern int pthread_key_create ()
- __attribute((weak));
-extern int pthread_key_delete ()
- __attribute((weak));
-extern int pthread_cond_signal ()
- __attribute((weak));
-#endif
-#endif /* linux */
-#endif /* defined(__GNUC__) && defined(__GLIBC__) */
+
+#define XML_PTHREAD_WEAK
+
+#pragma weak pthread_once
+#pragma weak pthread_getspecific
+#pragma weak pthread_setspecific
+#pragma weak pthread_key_create
+#pragma weak pthread_key_delete
+#pragma weak pthread_mutex_init
+#pragma weak pthread_mutex_destroy
+#pragma weak pthread_mutex_lock
+#pragma weak pthread_mutex_unlock
+#pragma weak pthread_cond_init
+#pragma weak pthread_cond_destroy
+#pragma weak pthread_cond_wait
+#pragma weak pthread_equal
+#pragma weak pthread_self
+#pragma weak pthread_key_create
+#pragma weak pthread_key_delete
+#pragma weak pthread_cond_signal
+
+#else /* __GNUC__, __GLIBC__, __linux__ */
+
+static int libxml_is_threaded = 1;
+
+#endif /* __GNUC__, __GLIBC__, __linux__ */
+
#endif /* HAVE_PTHREAD_H */
/*
@@ -158,7 +146,7 @@ static DWORD globalkey = TLS_OUT_OF_INDEXES;
static DWORD mainthread;
static struct {
DWORD done;
- DWORD control;
+ LONG control;
} run_once = { 0, 0};
static volatile LPCRITICAL_SECTION global_init_lock = NULL;
@@ -441,8 +429,11 @@ __xmlGlobalInitMutexLock(void)
/* Make sure the global init lock is initialized and then lock it. */
#ifdef HAVE_PTHREAD_H
/* The mutex is statically initialized, so we just lock it. */
- if (pthread_mutex_lock != NULL)
- pthread_mutex_lock(&global_init_lock);
+#ifdef XML_PTHREAD_WEAK
+ if (pthread_mutex_lock == NULL)
+ return;
+#endif /* XML_PTHREAD_WEAK */
+ pthread_mutex_lock(&global_init_lock);
#elif defined HAVE_WIN32_THREADS
LPCRITICAL_SECTION cs;
@@ -458,7 +449,8 @@ __xmlGlobalInitMutexLock(void)
/* Swap it into the global_init_lock */
#ifdef InterlockedCompareExchangePointer
- InterlockedCompareExchangePointer(&global_init_lock, cs, NULL);
+ InterlockedCompareExchangePointer((void **) &global_init_lock,
+ cs, NULL);
#else /* Use older void* version */
InterlockedCompareExchange((void **) &global_init_lock,
(void *) cs, NULL);
@@ -510,8 +502,11 @@ void
__xmlGlobalInitMutexUnlock(void)
{
#ifdef HAVE_PTHREAD_H
- if (pthread_mutex_unlock != NULL)
- pthread_mutex_unlock(&global_init_lock);
+#ifdef XML_PTHREAD_WEAK
+ if (pthread_mutex_unlock == NULL)
+ return;
+#endif /* XML_PTHREAD_WEAK */
+ pthread_mutex_unlock(&global_init_lock);
#elif defined HAVE_WIN32_THREADS
if (global_init_lock != NULL) {
LeaveCriticalSection(global_init_lock);
@@ -863,6 +858,7 @@ void
xmlInitThreads(void)
{
#ifdef HAVE_PTHREAD_H
+#ifdef XML_PTHREAD_WEAK
if (libxml_is_threaded == -1) {
if ((pthread_once != NULL) &&
(pthread_getspecific != NULL) &&
@@ -888,6 +884,7 @@ xmlInitThreads(void)
libxml_is_threaded = 0;
}
}
+#endif /* XML_PTHREAD_WEAK */
#elif defined(HAVE_WIN32_THREADS) && !defined(HAVE_COMPILER_TLS) && (!defined(LIBXML_STATIC) || defined(LIBXML_STATIC_FOR_DLL))
InitializeCriticalSection(&cleanup_helpers_cs);
#endif
@@ -914,7 +911,7 @@ xmlCleanupThreads(void)
xmlGenericError(xmlGenericErrorContext, "xmlCleanupThreads()\n");
#endif
#ifdef HAVE_PTHREAD_H
- if ((libxml_is_threaded) && (pthread_key_delete != NULL))
+ if (libxml_is_threaded != 0)
pthread_key_delete(globalkey);
once_control = once_control_init;
#elif defined(HAVE_WIN32_THREADS) && !defined(HAVE_COMPILER_TLS) && (!defined(LIBXML_STATIC) || defined(LIBXML_STATIC_FOR_DLL))
@@ -999,11 +996,23 @@ xmlOnceInit(void)
#ifdef HAVE_PTHREAD_H
#elif defined(HAVE_WIN32_THREADS) && !defined(HAVE_COMPILER_TLS) && (!defined(LIBXML_STATIC) || defined(LIBXML_STATIC_FOR_DLL))
#if defined(LIBXML_STATIC_FOR_DLL)
-BOOL XMLCALL
-xmlDllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
+int XMLCALL
+xmlDllMain(ATTRIBUTE_UNUSED void *hinstDLL, unsigned long fdwReason,
+ ATTRIBUTE_UNUSED void *lpvReserved)
#else
+/* declare to avoid "no previous prototype for 'DllMain'" warning */
+/* Note that we do NOT want to include this function declaration in
+ a public header because it's meant to be called by Windows itself,
+ not a program that uses this library. This also has to be exported. */
+
+XMLPUBFUN BOOL WINAPI
+DllMain (HINSTANCE hinstDLL,
+ DWORD fdwReason,
+ LPVOID lpvReserved);
+
BOOL WINAPI
-DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
+DllMain(ATTRIBUTE_UNUSED HINSTANCE hinstDLL, DWORD fdwReason,
+ ATTRIBUTE_UNUSED LPVOID lpvReserved)
#endif
{
switch (fdwReason) {
diff --git a/timsort.h b/timsort.h
index 795f2721..0c6346b8 100644
--- a/timsort.h
+++ b/timsort.h
@@ -1,312 +1,350 @@
/*
- * taken from https://github.com/swenson/sort
- * Kept as is for the moment to be able to apply upstream patches for that
- * code, currently used only to speed up XPath node sorting, see xpath.c
+ * Taken from https://github.com/swenson/sort
+ * Revision: 05fd77bfec049ce8b7c408c4d3dd2d51ee061a15
+ * Removed all code unrelated to Timsort and made minor adjustments for
+ * cross-platform compatibility.
*/
/*
- * All code in this header, unless otherwise specified, is hereby licensed under the MIT Public License:
-
-Copyright (c) 2010 Christopher Swenson
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-*/
+ * The MIT License (MIT)
+ *
+ * Copyright (c) 2010-2017 Christopher Swenson.
+ * Copyright (c) 2012 Vojtech Fried.
+ * Copyright (c) 2012 Google Inc. All Rights Reserved.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ * DEALINGS IN THE SOFTWARE.
+ */
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#ifdef HAVE_STDINT_H
#include <stdint.h>
-#else
-#ifdef HAVE_INTTYPES_H
-#include <inttypes.h>
-#elif defined(WIN32)
-typedef __int64 int64_t;
+#elif defined(_WIN32)
typedef unsigned __int64 uint64_t;
#endif
+
+#ifndef SORT_NAME
+#error "Must declare SORT_NAME"
#endif
-#ifndef MK_UINT64
-#if defined(WIN32) && defined(_MSC_VER) && _MSC_VER < 1300
-#define MK_UINT64(x) ((uint64_t)(x))
-#else
-#define MK_UINT64(x) x##ULL
+#ifndef SORT_TYPE
+#error "Must declare SORT_TYPE"
#endif
+
+#ifndef SORT_CMP
+#define SORT_CMP(x, y) ((x) < (y) ? -1 : ((x) == (y) ? 0 : 1))
#endif
+#ifndef TIM_SORT_STACK_SIZE
+#define TIM_SORT_STACK_SIZE 128
+#endif
+
+#define SORT_SWAP(x,y) {SORT_TYPE __SORT_SWAP_t = (x); (x) = (y); (y) = __SORT_SWAP_t;}
+
+
+/* Common, type-agnosting functions and constants that we don't want to declare twice. */
+#ifndef SORT_COMMON_H
+#define SORT_COMMON_H
+
#ifndef MAX
#define MAX(x,y) (((x) > (y) ? (x) : (y)))
#endif
+
#ifndef MIN
#define MIN(x,y) (((x) < (y) ? (x) : (y)))
#endif
-int compute_minrun(uint64_t);
+static int compute_minrun(const uint64_t);
#ifndef CLZ
-#if defined(__GNUC__) && ((__GNUC__ == 3 && __GNUC_MINOR__ >= 4) || (__GNUC__ > 3))
+#ifdef __GNUC__
#define CLZ __builtin_clzll
#else
-int clzll(uint64_t);
+static int clzll(uint64_t);
/* adapted from Hacker's Delight */
-int clzll(uint64_t x) /* {{{ */
-{
+static int clzll(uint64_t x) {
int n;
- if (x == 0) return(64);
+ if (x == 0) {
+ return 64;
+ }
+
n = 0;
- if (x <= MK_UINT64(0x00000000FFFFFFFF)) {n = n + 32; x = x << 32;}
- if (x <= MK_UINT64(0x0000FFFFFFFFFFFF)) {n = n + 16; x = x << 16;}
- if (x <= MK_UINT64(0x00FFFFFFFFFFFFFF)) {n = n + 8; x = x << 8;}
- if (x <= MK_UINT64(0x0FFFFFFFFFFFFFFF)) {n = n + 4; x = x << 4;}
- if (x <= MK_UINT64(0x3FFFFFFFFFFFFFFF)) {n = n + 2; x = x << 2;}
- if (x <= MK_UINT64(0x7FFFFFFFFFFFFFFF)) {n = n + 1;}
+
+ if (x <= 0x00000000FFFFFFFFL) {
+ n = n + 32;
+ x = x << 32;
+ }
+
+ if (x <= 0x0000FFFFFFFFFFFFL) {
+ n = n + 16;
+ x = x << 16;
+ }
+
+ if (x <= 0x00FFFFFFFFFFFFFFL) {
+ n = n + 8;
+ x = x << 8;
+ }
+
+ if (x <= 0x0FFFFFFFFFFFFFFFL) {
+ n = n + 4;
+ x = x << 4;
+ }
+
+ if (x <= 0x3FFFFFFFFFFFFFFFL) {
+ n = n + 2;
+ x = x << 2;
+ }
+
+ if (x <= 0x7FFFFFFFFFFFFFFFL) {
+ n = n + 1;
+ }
+
return n;
}
-/* }}} */
#define CLZ clzll
#endif
#endif
-int compute_minrun(uint64_t size) /* {{{ */
-{
+static __inline int compute_minrun(const uint64_t size) {
const int top_bit = 64 - CLZ(size);
const int shift = MAX(top_bit, 6) - 6;
const int minrun = size >> shift;
- const uint64_t mask = (MK_UINT64(1) << shift) - 1;
- if (mask & size) return minrun + 1;
- return minrun;
-}
-/* }}} */
-
-#ifndef SORT_NAME
-#error "Must declare SORT_NAME"
-#endif
+ const uint64_t mask = (1ULL << shift) - 1;
-#ifndef SORT_TYPE
-#error "Must declare SORT_TYPE"
-#endif
-
-#ifndef SORT_CMP
-#define SORT_CMP(x, y) ((x) < (y) ? -1 : ((x) == (y) ? 0 : 1))
-#endif
+ if (mask & size) {
+ return minrun + 1;
+ }
+ return minrun;
+}
-#define SORT_SWAP(x,y) {SORT_TYPE __SORT_SWAP_t = (x); (x) = (y); (y) = __SORT_SWAP_t;}
+#endif /* SORT_COMMON_H */
#define SORT_CONCAT(x, y) x ## _ ## y
#define SORT_MAKE_STR1(x, y) SORT_CONCAT(x,y)
#define SORT_MAKE_STR(x) SORT_MAKE_STR1(SORT_NAME,x)
-#define BINARY_INSERTION_FIND SORT_MAKE_STR(binary_insertion_find)
-#define BINARY_INSERTION_SORT_START SORT_MAKE_STR(binary_insertion_sort_start)
-#define BINARY_INSERTION_SORT SORT_MAKE_STR(binary_insertion_sort)
-#define REVERSE_ELEMENTS SORT_MAKE_STR(reverse_elements)
-#define COUNT_RUN SORT_MAKE_STR(count_run)
-#define CHECK_INVARIANT SORT_MAKE_STR(check_invariant)
-#define TIM_SORT SORT_MAKE_STR(tim_sort)
-#define TIM_SORT_RESIZE SORT_MAKE_STR(tim_sort_resize)
-#define TIM_SORT_MERGE SORT_MAKE_STR(tim_sort_merge)
-#define TIM_SORT_COLLAPSE SORT_MAKE_STR(tim_sort_collapse)
+#define BINARY_INSERTION_FIND SORT_MAKE_STR(binary_insertion_find)
+#define BINARY_INSERTION_SORT_START SORT_MAKE_STR(binary_insertion_sort_start)
+#define BINARY_INSERTION_SORT SORT_MAKE_STR(binary_insertion_sort)
+#define REVERSE_ELEMENTS SORT_MAKE_STR(reverse_elements)
+#define COUNT_RUN SORT_MAKE_STR(count_run)
+#define CHECK_INVARIANT SORT_MAKE_STR(check_invariant)
+#define TIM_SORT SORT_MAKE_STR(tim_sort)
+#define TIM_SORT_RESIZE SORT_MAKE_STR(tim_sort_resize)
+#define TIM_SORT_MERGE SORT_MAKE_STR(tim_sort_merge)
+#define TIM_SORT_COLLAPSE SORT_MAKE_STR(tim_sort_collapse)
-#define TIM_SORT_RUN_T SORT_MAKE_STR(tim_sort_run_t)
-#define TEMP_STORAGE_T SORT_MAKE_STR(temp_storage_t)
+#ifndef MAX
+#define MAX(x,y) (((x) > (y) ? (x) : (y)))
+#endif
+#ifndef MIN
+#define MIN(x,y) (((x) < (y) ? (x) : (y)))
+#endif
typedef struct {
- int64_t start;
- int64_t length;
+ size_t start;
+ size_t length;
} TIM_SORT_RUN_T;
+
void BINARY_INSERTION_SORT(SORT_TYPE *dst, const size_t size);
void TIM_SORT(SORT_TYPE *dst, const size_t size);
+
/* Function used to do a binary search for binary insertion sort */
-static int64_t BINARY_INSERTION_FIND(SORT_TYPE *dst, const SORT_TYPE x, const size_t size)
-{
- int64_t l, c, r;
- SORT_TYPE lx;
+static __inline size_t BINARY_INSERTION_FIND(SORT_TYPE *dst, const SORT_TYPE x,
+ const size_t size) {
+ size_t l, c, r;
SORT_TYPE cx;
l = 0;
r = size - 1;
c = r >> 1;
- lx = dst[l];
- /* check for beginning conditions */
- if (SORT_CMP(x, lx) < 0)
+ /* check for out of bounds at the beginning. */
+ if (SORT_CMP(x, dst[0]) < 0) {
return 0;
- else if (SORT_CMP(x, lx) == 0)
- {
- int64_t i = 1;
- while (SORT_CMP(x, dst[i]) == 0) i++;
- return i;
+ } else if (SORT_CMP(x, dst[r]) > 0) {
+ return r;
}
cx = dst[c];
- while (1)
- {
+
+ while (1) {
const int val = SORT_CMP(x, cx);
- if (val < 0)
- {
- if (c - l <= 1) return c;
+
+ if (val < 0) {
+ if (c - l <= 1) {
+ return c;
+ }
+
r = c;
- }
- else if (val > 0)
- {
- if (r - c <= 1) return c + 1;
+ } else { /* allow = for stability. The binary search favors the right. */
+ if (r - c <= 1) {
+ return c + 1;
+ }
+
l = c;
- lx = cx;
- }
- else
- {
- do
- {
- cx = dst[++c];
- } while (SORT_CMP(x, cx) == 0);
- return c;
}
+
c = l + ((r - l) >> 1);
cx = dst[c];
}
}
/* Binary insertion sort, but knowing that the first "start" entries are sorted. Used in timsort. */
-static void BINARY_INSERTION_SORT_START(SORT_TYPE *dst, const size_t start, const size_t size)
-{
- int64_t i;
- for (i = start; i < (int64_t) size; i++)
- {
- int64_t j;
+static void BINARY_INSERTION_SORT_START(SORT_TYPE *dst, const size_t start, const size_t size) {
+ size_t i;
+
+ for (i = start; i < size; i++) {
+ size_t j;
SORT_TYPE x;
- int64_t location;
+ size_t location;
+
/* If this entry is already correct, just move along */
- if (SORT_CMP(dst[i - 1], dst[i]) <= 0) continue;
+ if (SORT_CMP(dst[i - 1], dst[i]) <= 0) {
+ continue;
+ }
/* Else we need to find the right place, shift everything over, and squeeze in */
x = dst[i];
location = BINARY_INSERTION_FIND(dst, x, i);
- for (j = i - 1; j >= location; j--)
- {
+
+ for (j = i - 1; j >= location; j--) {
dst[j + 1] = dst[j];
+
+ if (j == 0) { /* check edge case because j is unsigned */
+ break;
+ }
}
+
dst[location] = x;
}
}
/* Binary insertion sort */
-void BINARY_INSERTION_SORT(SORT_TYPE *dst, const size_t size)
-{
+void BINARY_INSERTION_SORT(SORT_TYPE *dst, const size_t size) {
+ /* don't bother sorting an array of size <= 1 */
+ if (size <= 1) {
+ return;
+ }
+
BINARY_INSERTION_SORT_START(dst, 1, size);
}
/* timsort implementation, based on timsort.txt */
-static void REVERSE_ELEMENTS(SORT_TYPE *dst, int64_t start, int64_t end)
-{
- while (1)
- {
- if (start >= end) return;
+static __inline void REVERSE_ELEMENTS(SORT_TYPE *dst, size_t start, size_t end) {
+ while (1) {
+ if (start >= end) {
+ return;
+ }
+
SORT_SWAP(dst[start], dst[end]);
start++;
end--;
}
}
-static int64_t COUNT_RUN(SORT_TYPE *dst, const int64_t start, const size_t size)
-{
- int64_t curr;
- if (size - start == 1) return 1;
- if (start >= (int64_t) size - 2)
- {
- if (SORT_CMP(dst[size - 2], dst[size - 1]) > 0)
+static size_t COUNT_RUN(SORT_TYPE *dst, const size_t start, const size_t size) {
+ size_t curr;
+
+ if (size - start == 1) {
+ return 1;
+ }
+
+ if (start >= size - 2) {
+ if (SORT_CMP(dst[size - 2], dst[size - 1]) > 0) {
SORT_SWAP(dst[size - 2], dst[size - 1]);
+ }
+
return 2;
}
curr = start + 2;
- if (SORT_CMP(dst[start], dst[start + 1]) <= 0)
- {
+ if (SORT_CMP(dst[start], dst[start + 1]) <= 0) {
/* increasing run */
- while (1)
- {
- if (curr == (int64_t) size - 1) break;
- if (SORT_CMP(dst[curr - 1], dst[curr]) > 0) break;
+ while (1) {
+ if (curr == size - 1) {
+ break;
+ }
+
+ if (SORT_CMP(dst[curr - 1], dst[curr]) > 0) {
+ break;
+ }
+
curr++;
}
+
return curr - start;
- }
- else
- {
+ } else {
/* decreasing run */
- while (1)
- {
- if (curr == (int64_t) size - 1) break;
- if (SORT_CMP(dst[curr - 1], dst[curr]) <= 0) break;
+ while (1) {
+ if (curr == size - 1) {
+ break;
+ }
+
+ if (SORT_CMP(dst[curr - 1], dst[curr]) <= 0) {
+ break;
+ }
+
curr++;
}
+
/* reverse in-place */
REVERSE_ELEMENTS(dst, start, curr - 1);
return curr - start;
}
}
-#define PUSH_NEXT() do {\
-len = COUNT_RUN(dst, curr, size);\
-run = minrun;\
-if (run < minrun) run = minrun;\
-if (run > (int64_t) size - curr) run = size - curr;\
-if (run > len)\
-{\
- BINARY_INSERTION_SORT_START(&dst[curr], len, run);\
- len = run;\
-}\
-{\
-run_stack[stack_curr].start = curr;\
-run_stack[stack_curr].length = len;\
-stack_curr++;\
-}\
-curr += len;\
-if (curr == (int64_t) size)\
-{\
- /* finish up */ \
- while (stack_curr > 1) \
- { \
- TIM_SORT_MERGE(dst, run_stack, stack_curr, store); \
- run_stack[stack_curr - 2].length += run_stack[stack_curr - 1].length; \
- stack_curr--; \
- } \
- if (store->storage != NULL)\
- {\
- free(store->storage);\
- store->storage = NULL;\
- }\
- return;\
-}\
-}\
-while (0)
-
-static int CHECK_INVARIANT(TIM_SORT_RUN_T *stack, const int stack_curr)
-{
- int64_t A, B, C;
- if (stack_curr < 2) return 1;
- if (stack_curr == 2)
- {
- const int64_t A1 = stack[stack_curr - 2].length;
- const int64_t B1 = stack[stack_curr - 1].length;
- if (A1 <= B1) return 0;
+static int CHECK_INVARIANT(TIM_SORT_RUN_T *stack, const int stack_curr) {
+ size_t A, B, C;
+
+ if (stack_curr < 2) {
return 1;
}
+
+ if (stack_curr == 2) {
+ const size_t A1 = stack[stack_curr - 2].length;
+ const size_t B1 = stack[stack_curr - 1].length;
+
+ if (A1 <= B1) {
+ return 0;
+ }
+
+ return 1;
+ }
+
A = stack[stack_curr - 3].length;
B = stack[stack_curr - 2].length;
C = stack[stack_curr - 1].length;
- if ((A <= B + C) || (B <= C)) return 0;
+
+ if ((A <= B + C) || (B <= C)) {
+ return 0;
+ }
+
return 1;
}
@@ -315,86 +353,78 @@ typedef struct {
SORT_TYPE *storage;
} TEMP_STORAGE_T;
-
-static void TIM_SORT_RESIZE(TEMP_STORAGE_T *store, const size_t new_size)
-{
- if (store->alloc < new_size)
- {
+static void TIM_SORT_RESIZE(TEMP_STORAGE_T *store, const size_t new_size) {
+ if (store->alloc < new_size) {
SORT_TYPE *tempstore = (SORT_TYPE *)realloc(store->storage, new_size * sizeof(SORT_TYPE));
- if (tempstore == NULL)
- {
- fprintf(stderr, "Error allocating temporary storage for tim sort: need %lu bytes", sizeof(SORT_TYPE) * new_size);
+
+ if (tempstore == NULL) {
+ fprintf(stderr, "Error allocating temporary storage for tim sort: need %lu bytes",
+ (unsigned long)(sizeof(SORT_TYPE) * new_size));
exit(1);
}
+
store->storage = tempstore;
store->alloc = new_size;
}
}
-static void TIM_SORT_MERGE(SORT_TYPE *dst, const TIM_SORT_RUN_T *stack, const int stack_curr, TEMP_STORAGE_T *store)
-{
- const int64_t A = stack[stack_curr - 2].length;
- const int64_t B = stack[stack_curr - 1].length;
- const int64_t curr = stack[stack_curr - 2].start;
+static void TIM_SORT_MERGE(SORT_TYPE *dst, const TIM_SORT_RUN_T *stack, const int stack_curr,
+ TEMP_STORAGE_T *store) {
+ const size_t A = stack[stack_curr - 2].length;
+ const size_t B = stack[stack_curr - 1].length;
+ const size_t curr = stack[stack_curr - 2].start;
SORT_TYPE *storage;
- int64_t i, j, k;
-
+ size_t i, j, k;
TIM_SORT_RESIZE(store, MIN(A, B));
storage = store->storage;
/* left merge */
- if (A < B)
- {
+ if (A < B) {
memcpy(storage, &dst[curr], A * sizeof(SORT_TYPE));
i = 0;
j = curr + A;
- for (k = curr; k < curr + A + B; k++)
- {
- if ((i < A) && (j < curr + A + B))
- {
- if (SORT_CMP(storage[i], dst[j]) <= 0)
+ for (k = curr; k < curr + A + B; k++) {
+ if ((i < A) && (j < curr + A + B)) {
+ if (SORT_CMP(storage[i], dst[j]) <= 0) {
dst[k] = storage[i++];
- else
+ } else {
dst[k] = dst[j++];
- }
- else if (i < A)
- {
+ }
+ } else if (i < A) {
dst[k] = storage[i++];
+ } else {
+ break;
}
- else
- dst[k] = dst[j++];
}
- }
- /* right merge */
- else
- {
+ } else {
+ /* right merge */
memcpy(storage, &dst[curr + A], B * sizeof(SORT_TYPE));
- i = B - 1;
- j = curr + A - 1;
-
- for (k = curr + A + B - 1; k >= curr; k--)
- {
- if ((i >= 0) && (j >= curr))
- {
- if (SORT_CMP(dst[j], storage[i]) > 0)
- dst[k] = dst[j--];
- else
- dst[k] = storage[i--];
+ i = B;
+ j = curr + A;
+ k = curr + A + B;
+
+ while (k-- > curr) {
+ if ((i > 0) && (j > curr)) {
+ if (SORT_CMP(dst[j - 1], storage[i - 1]) > 0) {
+ dst[k] = dst[--j];
+ } else {
+ dst[k] = storage[--i];
+ }
+ } else if (i > 0) {
+ dst[k] = storage[--i];
+ } else {
+ break;
}
- else if (i >= 0)
- dst[k] = storage[i--];
- else
- dst[k] = dst[j--];
}
}
}
-static int TIM_SORT_COLLAPSE(SORT_TYPE *dst, TIM_SORT_RUN_T *stack, int stack_curr, TEMP_STORAGE_T *store, const size_t size)
-{
+static int TIM_SORT_COLLAPSE(SORT_TYPE *dst, TIM_SORT_RUN_T *stack, int stack_curr,
+ TEMP_STORAGE_T *store, const size_t size) {
while (1) {
- int64_t A, B, C, D;
- int ABC, BCD, BD, CD;
+ size_t A, B, C, D;
+ int ABC, BCD, CD;
/* if the stack only has one thing on it, we are done with the collapse */
if (stack_curr <= 1) {
@@ -431,7 +461,6 @@ static int TIM_SORT_COLLAPSE(SORT_TYPE *dst, TIM_SORT_RUN_T *stack, int stack_cu
BCD = (B <= C + D) || ABC;
CD = (C <= D);
- BD = (B < D);
/* Both invariants are good */
if (!BCD && !CD) {
@@ -455,41 +484,94 @@ static int TIM_SORT_COLLAPSE(SORT_TYPE *dst, TIM_SORT_RUN_T *stack, int stack_cu
return stack_curr;
}
-void TIM_SORT(SORT_TYPE *dst, const size_t size)
-{
- int minrun;
+static __inline int PUSH_NEXT(SORT_TYPE *dst,
+ const size_t size,
+ TEMP_STORAGE_T *store,
+ const size_t minrun,
+ TIM_SORT_RUN_T *run_stack,
+ size_t *stack_curr,
+ size_t *curr) {
+ size_t len = COUNT_RUN(dst, *curr, size);
+ size_t run = minrun;
+
+ if (run > size - *curr) {
+ run = size - *curr;
+ }
+
+ if (run > len) {
+ BINARY_INSERTION_SORT_START(&dst[*curr], len, run);
+ len = run;
+ }
+
+ run_stack[*stack_curr].start = *curr;
+ run_stack[*stack_curr].length = len;
+ (*stack_curr)++;
+ *curr += len;
+
+ if (*curr == size) {
+ /* finish up */
+ while (*stack_curr > 1) {
+ TIM_SORT_MERGE(dst, run_stack, *stack_curr, store);
+ run_stack[*stack_curr - 2].length += run_stack[*stack_curr - 1].length;
+ (*stack_curr)--;
+ }
+
+ if (store->storage != NULL) {
+ free(store->storage);
+ store->storage = NULL;
+ }
+
+ return 0;
+ }
+
+ return 1;
+}
+
+void TIM_SORT(SORT_TYPE *dst, const size_t size) {
+ size_t minrun;
TEMP_STORAGE_T _store, *store;
- TIM_SORT_RUN_T run_stack[128];
- int stack_curr = 0;
- int64_t len, run;
- int64_t curr = 0;
+ TIM_SORT_RUN_T run_stack[TIM_SORT_STACK_SIZE];
+ size_t stack_curr = 0;
+ size_t curr = 0;
- if (size < 64)
- {
+ /* don't bother sorting an array of size 1 */
+ if (size <= 1) {
+ return;
+ }
+
+ if (size < 64) {
BINARY_INSERTION_SORT(dst, size);
return;
}
/* compute the minimum run length */
minrun = compute_minrun(size);
-
/* temporary storage for merges */
store = &_store;
store->alloc = 0;
store->storage = NULL;
- PUSH_NEXT();
- PUSH_NEXT();
- PUSH_NEXT();
+ if (!PUSH_NEXT(dst, size, store, minrun, run_stack, &stack_curr, &curr)) {
+ return;
+ }
+
+ if (!PUSH_NEXT(dst, size, store, minrun, run_stack, &stack_curr, &curr)) {
+ return;
+ }
- while (1)
- {
- if (!CHECK_INVARIANT(run_stack, stack_curr))
- {
+ if (!PUSH_NEXT(dst, size, store, minrun, run_stack, &stack_curr, &curr)) {
+ return;
+ }
+
+ while (1) {
+ if (!CHECK_INVARIANT(run_stack, stack_curr)) {
stack_curr = TIM_SORT_COLLAPSE(dst, run_stack, stack_curr, store, size);
continue;
}
- PUSH_NEXT();
+
+ if (!PUSH_NEXT(dst, size, store, minrun, run_stack, &stack_curr, &curr)) {
+ return;
+ }
}
}
diff --git a/tree.c b/tree.c
index 9d330b85..959421bd 100644
--- a/tree.c
+++ b/tree.c
@@ -10,10 +10,16 @@
*
*/
+/* To avoid EBCDIC trouble when parsing on zOS */
+#if defined(__MVS__)
+#pragma convert("ISO8859-1")
+#endif
+
#define IN_LIBXML
#include "libxml.h"
#include <string.h> /* for memset() only ! */
+#include <stddef.h>
#include <limits.h>
#ifdef HAVE_CTYPE_H
#include <ctype.h>
@@ -21,7 +27,7 @@
#ifdef HAVE_STDLIB_H
#include <stdlib.h>
#endif
-#ifdef HAVE_ZLIB_H
+#ifdef LIBXML_ZLIB_ENABLED
#include <zlib.h>
#endif
@@ -254,10 +260,10 @@ xmlBuildQName(const xmlChar *ncname, const xmlChar *prefix,
*
* [NS 7] LocalPart ::= NCName
*
- * Returns NULL if not a QName, otherwise the local part, and prefix
- * is updated to get the Prefix if any.
+ * Returns NULL if the name doesn't have a prefix. Otherwise, returns the
+ * local part, and prefix is updated to get the Prefix. Both the return value
+ * and the prefix must be freed by the caller.
*/
-
xmlChar *
xmlSplitQName2(const xmlChar *name, xmlChar **prefix) {
int len = 0;
@@ -1401,6 +1407,8 @@ xmlStringLenGetNodeList(const xmlDoc *doc, const xmlChar *value, int len) {
else if ((ent != NULL) && (ent->children == NULL)) {
xmlNodePtr temp;
+ /* Set to non-NULL value to avoid recursion. */
+ ent->children = (xmlNodePtr) -1;
ent->children = xmlStringGetNodeList(doc,
(const xmlChar*)node->content);
ent->owner = 1;
@@ -1593,6 +1601,7 @@ xmlStringGetNodeList(const xmlDoc *doc, const xmlChar *value) {
else if ((ent != NULL) && (ent->children == NULL)) {
xmlNodePtr temp;
+ /* Set to non-NULL value to avoid recursion. */
ent->children = (xmlNodePtr) -1;
ent->children = xmlStringGetNodeList(doc,
(const xmlChar*)node->content);
@@ -1600,6 +1609,7 @@ xmlStringGetNodeList(const xmlDoc *doc, const xmlChar *value) {
temp = ent->children;
while (temp) {
temp->parent = (xmlNodePtr)ent;
+ ent->last = temp;
temp = temp->next;
}
}
@@ -4596,7 +4606,7 @@ xmlGetLineNoInternal(const xmlNode *node, int depth)
(node->type == XML_PI_NODE)) {
if (node->line == 65535) {
if ((node->type == XML_TEXT_NODE) && (node->psvi != NULL))
- result = (long) node->psvi;
+ result = (long) (ptrdiff_t) node->psvi;
else if ((node->type == XML_ELEMENT_NODE) &&
(node->children != NULL))
result = xmlGetLineNoInternal(node->children, depth + 1);
@@ -4755,8 +4765,8 @@ xmlGetNodePath(const xmlNode *node)
if (occur == 0) {
tmp = cur->next;
while (tmp != NULL && occur == 0) {
- if (tmp->type == XML_COMMENT_NODE)
- occur++;
+ if (tmp->type == XML_COMMENT_NODE)
+ occur++;
tmp = tmp->next;
}
if (occur != 0)
@@ -8249,7 +8259,7 @@ xmlDOMWrapRemoveNode(xmlDOMWrapCtxtPtr ctxt, xmlDocPtr doc,
ns = ns->next;
} while (ns != NULL);
}
- /* No break on purpose. */
+ /* Falls through. */
case XML_ATTRIBUTE_NODE:
if (node->ns != NULL) {
/*
@@ -8840,7 +8850,7 @@ next_ns_decl:
}
if (! adoptns)
goto ns_end;
- /* No break on purpose. */
+ /* Falls through. */
case XML_ATTRIBUTE_NODE:
/* No ns, no fun. */
if (cur->ns == NULL)
@@ -9121,7 +9131,7 @@ xmlDOMWrapAdoptBranch(xmlDOMWrapCtxtPtr ctxt,
goto internal_error;
}
}
- /* No break on purpose. */
+ /* Falls through. */
case XML_ATTRIBUTE_NODE:
/* No namespace, no fun. */
if (cur->ns == NULL)
diff --git a/uri.c b/uri.c
index b32ef10a..860b2030 100644
--- a/uri.c
+++ b/uri.c
@@ -1962,8 +1962,9 @@ xmlBuildURI(const xmlChar *URI, const xmlChar *base) {
res->scheme = xmlMemStrdup(bas->scheme);
if (bas->authority != NULL)
res->authority = xmlMemStrdup(bas->authority);
- else if (bas->server != NULL) {
- res->server = xmlMemStrdup(bas->server);
+ else if ((bas->server != NULL) || (bas->port == -1)) {
+ if (bas->server != NULL)
+ res->server = xmlMemStrdup(bas->server);
if (bas->user != NULL)
res->user = xmlMemStrdup(bas->user);
res->port = bas->port;
@@ -2025,8 +2026,9 @@ xmlBuildURI(const xmlChar *URI, const xmlChar *base) {
}
if (bas->authority != NULL)
res->authority = xmlMemStrdup(bas->authority);
- else if (bas->server != NULL) {
- res->server = xmlMemStrdup(bas->server);
+ else if ((bas->server != NULL) || (bas->port == -1)) {
+ if (bas->server != NULL)
+ res->server = xmlMemStrdup(bas->server);
if (bas->user != NULL)
res->user = xmlMemStrdup(bas->user);
res->port = bas->port;
@@ -2164,7 +2166,6 @@ xmlBuildRelativeURI (const xmlChar * URI, const xmlChar * base)
xmlChar *val = NULL;
int ret;
int ix;
- int pos = 0;
int nbslash = 0;
int len;
xmlURIPtr ref = NULL;
@@ -2255,19 +2256,22 @@ xmlBuildRelativeURI (const xmlChar * URI, const xmlChar * base)
uptr = NULL;
len = 1; /* this is for a string terminator only */
} else {
- /*
- * Next we compare the two strings and find where they first differ
- */
- if ((ref->path[pos] == '.') && (ref->path[pos+1] == '/'))
- pos += 2;
+ xmlChar *rptr = (xmlChar *) ref->path;
+ int pos = 0;
+
+ /*
+ * Next we compare the two strings and find where they first differ
+ */
+ if ((*rptr == '.') && (rptr[1] == '/'))
+ rptr += 2;
if ((*bptr == '.') && (bptr[1] == '/'))
bptr += 2;
- else if ((*bptr == '/') && (ref->path[pos] != '/'))
+ else if ((*bptr == '/') && (*rptr != '/'))
bptr++;
- while ((bptr[pos] == ref->path[pos]) && (bptr[pos] != 0))
+ while ((bptr[pos] == rptr[pos]) && (bptr[pos] != 0))
pos++;
- if (bptr[pos] == ref->path[pos]) {
+ if (bptr[pos] == rptr[pos]) {
val = xmlStrdup(BAD_CAST "");
goto done; /* (I can't imagine why anyone would do this) */
}
@@ -2277,25 +2281,25 @@ xmlBuildRelativeURI (const xmlChar * URI, const xmlChar * base)
* beginning of the "unique" suffix of URI
*/
ix = pos;
- if ((ref->path[ix] == '/') && (ix > 0))
+ if ((rptr[ix] == '/') && (ix > 0))
ix--;
- else if ((ref->path[ix] == 0) && (ix > 1) && (ref->path[ix - 1] == '/'))
+ else if ((rptr[ix] == 0) && (ix > 1) && (rptr[ix - 1] == '/'))
ix -= 2;
for (; ix > 0; ix--) {
- if (ref->path[ix] == '/')
+ if (rptr[ix] == '/')
break;
}
if (ix == 0) {
- uptr = (xmlChar *)ref->path;
+ uptr = (xmlChar *)rptr;
} else {
ix++;
- uptr = (xmlChar *)&ref->path[ix];
+ uptr = (xmlChar *)&rptr[ix];
}
/*
* In base, count the number of '/' from the differing point
*/
- if (bptr[pos] != ref->path[pos]) {/* check for trivial URI == base */
+ if (bptr[pos] != rptr[pos]) {/* check for trivial URI == base */
for (; bptr[ix] != 0; ix++) {
if (bptr[ix] == '/')
nbslash++;
@@ -2391,8 +2395,7 @@ xmlCanonicPath(const xmlChar *path)
*/
#if defined(_WIN32) && !defined(__CYGWIN__)
int len = 0;
- int i = 0;
- xmlChar *p = NULL;
+ char *p = NULL;
#endif
xmlURIPtr uri;
xmlChar *ret;
@@ -2456,6 +2459,7 @@ xmlCanonicPath(const xmlChar *path)
xmlFreeURI(uri);
return escURI;
}
+ xmlFree(escURI);
}
}
@@ -2473,7 +2477,7 @@ path_processing:
len = xmlStrlen(path);
if ((len > 2) && IS_WINDOWS_PATH(path)) {
/* make the scheme 'file' */
- uri->scheme = xmlStrdup(BAD_CAST "file");
+ uri->scheme = (char *) xmlStrdup(BAD_CAST "file");
/* allocate space for leading '/' + path + string terminator */
uri->path = xmlMallocAtomic(len + 2);
if (uri->path == NULL) {
@@ -2483,9 +2487,9 @@ path_processing:
/* Put in leading '/' plus path */
uri->path[0] = '/';
p = uri->path + 1;
- strncpy(p, path, len + 1);
+ strncpy(p, (char *) path, len + 1);
} else {
- uri->path = xmlStrdup(path);
+ uri->path = (char *) xmlStrdup(path);
if (uri->path == NULL) {
xmlFreeURI(uri);
return(NULL);
diff --git a/valid.c b/valid.c
index aee6f40f..57a1a9ee 100644
--- a/valid.c
+++ b/valid.c
@@ -163,7 +163,7 @@ xmlErrValidNode(xmlValidCtxtPtr ctxt,
__xmlRaiseError(schannel, channel, data, pctxt, node, XML_FROM_VALID, error,
XML_ERR_ERROR, NULL, 0,
(const char *) str1,
- (const char *) str1,
+ (const char *) str2,
(const char *) str3, 0, 0, msg, str1, str2, str3);
}
#endif /* LIBXML_VALID_ENABLED or LIBXML_SCHEMAS_ENABLED */
@@ -247,7 +247,7 @@ xmlErrValidWarning(xmlValidCtxtPtr ctxt,
__xmlRaiseError(schannel, channel, data, pctxt, node, XML_FROM_VALID, error,
XML_ERR_WARNING, NULL, 0,
(const char *) str1,
- (const char *) str1,
+ (const char *) str2,
(const char *) str3, 0, 0, msg, str1, str2, str3);
}
@@ -1172,29 +1172,33 @@ xmlDumpElementContent(xmlBufferPtr buf, xmlElementContentPtr content, int glob)
xmlBufferWriteCHAR(buf, content->name);
break;
case XML_ELEMENT_CONTENT_SEQ:
- if ((content->c1->type == XML_ELEMENT_CONTENT_OR) ||
- (content->c1->type == XML_ELEMENT_CONTENT_SEQ))
+ if ((content->c1 != NULL) &&
+ ((content->c1->type == XML_ELEMENT_CONTENT_OR) ||
+ (content->c1->type == XML_ELEMENT_CONTENT_SEQ)))
xmlDumpElementContent(buf, content->c1, 1);
else
xmlDumpElementContent(buf, content->c1, 0);
xmlBufferWriteChar(buf, " , ");
- if ((content->c2->type == XML_ELEMENT_CONTENT_OR) ||
- ((content->c2->type == XML_ELEMENT_CONTENT_SEQ) &&
- (content->c2->ocur != XML_ELEMENT_CONTENT_ONCE)))
+ if ((content->c2 != NULL) &&
+ ((content->c2->type == XML_ELEMENT_CONTENT_OR) ||
+ ((content->c2->type == XML_ELEMENT_CONTENT_SEQ) &&
+ (content->c2->ocur != XML_ELEMENT_CONTENT_ONCE))))
xmlDumpElementContent(buf, content->c2, 1);
else
xmlDumpElementContent(buf, content->c2, 0);
break;
case XML_ELEMENT_CONTENT_OR:
- if ((content->c1->type == XML_ELEMENT_CONTENT_OR) ||
- (content->c1->type == XML_ELEMENT_CONTENT_SEQ))
+ if ((content->c1 != NULL) &&
+ ((content->c1->type == XML_ELEMENT_CONTENT_OR) ||
+ (content->c1->type == XML_ELEMENT_CONTENT_SEQ)))
xmlDumpElementContent(buf, content->c1, 1);
else
xmlDumpElementContent(buf, content->c1, 0);
xmlBufferWriteChar(buf, " | ");
- if ((content->c2->type == XML_ELEMENT_CONTENT_SEQ) ||
- ((content->c2->type == XML_ELEMENT_CONTENT_OR) &&
- (content->c2->ocur != XML_ELEMENT_CONTENT_ONCE)))
+ if ((content->c2 != NULL) &&
+ ((content->c2->type == XML_ELEMENT_CONTENT_SEQ) ||
+ ((content->c2->type == XML_ELEMENT_CONTENT_OR) &&
+ (content->c2->ocur != XML_ELEMENT_CONTENT_ONCE))))
xmlDumpElementContent(buf, content->c2, 1);
else
xmlDumpElementContent(buf, content->c2, 0);
@@ -1262,22 +1266,23 @@ xmlSnprintfElementContent(char *buf, int size, xmlElementContentPtr content, int
case XML_ELEMENT_CONTENT_PCDATA:
strcat(buf, "#PCDATA");
break;
- case XML_ELEMENT_CONTENT_ELEMENT:
+ case XML_ELEMENT_CONTENT_ELEMENT: {
+ int qnameLen = xmlStrlen(content->name);
+
+ if (content->prefix != NULL)
+ qnameLen += xmlStrlen(content->prefix) + 1;
+ if (size - len < qnameLen + 10) {
+ strcat(buf, " ...");
+ return;
+ }
if (content->prefix != NULL) {
- if (size - len < xmlStrlen(content->prefix) + 10) {
- strcat(buf, " ...");
- return;
- }
strcat(buf, (char *) content->prefix);
strcat(buf, ":");
}
- if (size - len < xmlStrlen(content->name) + 10) {
- strcat(buf, " ...");
- return;
- }
if (content->name != NULL)
strcat(buf, (char *) content->name);
break;
+ }
case XML_ELEMENT_CONTENT_SEQ:
if ((content->c1->type == XML_ELEMENT_CONTENT_OR) ||
(content->c1->type == XML_ELEMENT_CONTENT_SEQ))
@@ -1319,6 +1324,7 @@ xmlSnprintfElementContent(char *buf, int size, xmlElementContentPtr content, int
xmlSnprintfElementContent(buf, size, content->c2, 0);
break;
}
+ if (size - strlen(buf) <= 2) return;
if (englob)
strcat(buf, ")");
switch (content->ocur) {
@@ -1591,6 +1597,11 @@ xmlAddElementDecl(xmlValidCtxtPtr ctxt,
return(ret);
}
+static void
+xmlFreeElementTableEntry(void *elem, const xmlChar *name ATTRIBUTE_UNUSED) {
+ xmlFreeElement((xmlElementPtr) elem);
+}
+
/**
* xmlFreeElementTable:
* @table: An element table
@@ -1599,7 +1610,7 @@ xmlAddElementDecl(xmlValidCtxtPtr ctxt,
*/
void
xmlFreeElementTable(xmlElementTablePtr table) {
- xmlHashFree(table, (xmlHashDeallocator) xmlFreeElement);
+ xmlHashFree(table, xmlFreeElementTableEntry);
}
#ifdef LIBXML_TREE_ENABLED
@@ -1611,8 +1622,9 @@ xmlFreeElementTable(xmlElementTablePtr table) {
*
* Returns the new xmlElementPtr or NULL in case of error.
*/
-static xmlElementPtr
-xmlCopyElement(xmlElementPtr elem) {
+static void *
+xmlCopyElement(void *payload, const xmlChar *name ATTRIBUTE_UNUSED) {
+ xmlElementPtr elem = (xmlElementPtr) payload;
xmlElementPtr cur;
cur = (xmlElementPtr) xmlMalloc(sizeof(xmlElement));
@@ -1647,8 +1659,7 @@ xmlCopyElement(xmlElementPtr elem) {
*/
xmlElementTablePtr
xmlCopyElementTable(xmlElementTablePtr table) {
- return((xmlElementTablePtr) xmlHashCopy(table,
- (xmlHashCopier) xmlCopyElement));
+ return((xmlElementTablePtr) xmlHashCopy(table, xmlCopyElement));
}
#endif /* LIBXML_TREE_ENABLED */
@@ -1722,8 +1733,9 @@ xmlDumpElementDecl(xmlBufferPtr buf, xmlElementPtr elem) {
* the arguments.
*/
static void
-xmlDumpElementDeclScan(xmlElementPtr elem, xmlBufferPtr buf) {
- xmlDumpElementDecl(buf, elem);
+xmlDumpElementDeclScan(void *elem, void *buf,
+ const xmlChar *name ATTRIBUTE_UNUSED) {
+ xmlDumpElementDecl((xmlBufferPtr) buf, (xmlElementPtr) elem);
}
/**
@@ -1737,7 +1749,7 @@ void
xmlDumpElementTable(xmlBufferPtr buf, xmlElementTablePtr table) {
if ((buf == NULL) || (table == NULL))
return;
- xmlHashScan(table, (xmlHashScanner) xmlDumpElementDeclScan, buf);
+ xmlHashScan(table, xmlDumpElementDeclScan, buf);
}
#endif /* LIBXML_OUTPUT_ENABLED */
@@ -2137,6 +2149,11 @@ xmlAddAttributeDecl(xmlValidCtxtPtr ctxt,
return(ret);
}
+static void
+xmlFreeAttributeTableEntry(void *attr, const xmlChar *name ATTRIBUTE_UNUSED) {
+ xmlFreeAttribute((xmlAttributePtr) attr);
+}
+
/**
* xmlFreeAttributeTable:
* @table: An attribute table
@@ -2145,7 +2162,7 @@ xmlAddAttributeDecl(xmlValidCtxtPtr ctxt,
*/
void
xmlFreeAttributeTable(xmlAttributeTablePtr table) {
- xmlHashFree(table, (xmlHashDeallocator) xmlFreeAttribute);
+ xmlHashFree(table, xmlFreeAttributeTableEntry);
}
#ifdef LIBXML_TREE_ENABLED
@@ -2157,8 +2174,9 @@ xmlFreeAttributeTable(xmlAttributeTablePtr table) {
*
* Returns the new xmlAttributePtr or NULL in case of error.
*/
-static xmlAttributePtr
-xmlCopyAttribute(xmlAttributePtr attr) {
+static void *
+xmlCopyAttribute(void *payload, const xmlChar *name ATTRIBUTE_UNUSED) {
+ xmlAttributePtr attr = (xmlAttributePtr) payload;
xmlAttributePtr cur;
cur = (xmlAttributePtr) xmlMalloc(sizeof(xmlAttribute));
@@ -2192,8 +2210,7 @@ xmlCopyAttribute(xmlAttributePtr attr) {
*/
xmlAttributeTablePtr
xmlCopyAttributeTable(xmlAttributeTablePtr table) {
- return((xmlAttributeTablePtr) xmlHashCopy(table,
- (xmlHashCopier) xmlCopyAttribute));
+ return((xmlAttributeTablePtr) xmlHashCopy(table, xmlCopyAttribute));
}
#endif /* LIBXML_TREE_ENABLED */
@@ -2288,8 +2305,9 @@ xmlDumpAttributeDecl(xmlBufferPtr buf, xmlAttributePtr attr) {
* This is used with the hash scan function - just reverses arguments
*/
static void
-xmlDumpAttributeDeclScan(xmlAttributePtr attr, xmlBufferPtr buf) {
- xmlDumpAttributeDecl(buf, attr);
+xmlDumpAttributeDeclScan(void *attr, void *buf,
+ const xmlChar *name ATTRIBUTE_UNUSED) {
+ xmlDumpAttributeDecl((xmlBufferPtr) buf, (xmlAttributePtr) attr);
}
/**
@@ -2303,7 +2321,7 @@ void
xmlDumpAttributeTable(xmlBufferPtr buf, xmlAttributeTablePtr table) {
if ((buf == NULL) || (table == NULL))
return;
- xmlHashScan(table, (xmlHashScanner) xmlDumpAttributeDeclScan, buf);
+ xmlHashScan(table, xmlDumpAttributeDeclScan, buf);
}
#endif /* LIBXML_OUTPUT_ENABLED */
@@ -2409,6 +2427,11 @@ xmlAddNotationDecl(xmlValidCtxtPtr ctxt, xmlDtdPtr dtd,
return(ret);
}
+static void
+xmlFreeNotationTableEntry(void *nota, const xmlChar *name ATTRIBUTE_UNUSED) {
+ xmlFreeNotation((xmlNotationPtr) nota);
+}
+
/**
* xmlFreeNotationTable:
* @table: An notation table
@@ -2417,7 +2440,7 @@ xmlAddNotationDecl(xmlValidCtxtPtr ctxt, xmlDtdPtr dtd,
*/
void
xmlFreeNotationTable(xmlNotationTablePtr table) {
- xmlHashFree(table, (xmlHashDeallocator) xmlFreeNotation);
+ xmlHashFree(table, xmlFreeNotationTableEntry);
}
#ifdef LIBXML_TREE_ENABLED
@@ -2429,8 +2452,9 @@ xmlFreeNotationTable(xmlNotationTablePtr table) {
*
* Returns the new xmlNotationPtr or NULL in case of error.
*/
-static xmlNotationPtr
-xmlCopyNotation(xmlNotationPtr nota) {
+static void *
+xmlCopyNotation(void *payload, const xmlChar *name ATTRIBUTE_UNUSED) {
+ xmlNotationPtr nota = (xmlNotationPtr) payload;
xmlNotationPtr cur;
cur = (xmlNotationPtr) xmlMalloc(sizeof(xmlNotation));
@@ -2463,8 +2487,7 @@ xmlCopyNotation(xmlNotationPtr nota) {
*/
xmlNotationTablePtr
xmlCopyNotationTable(xmlNotationTablePtr table) {
- return((xmlNotationTablePtr) xmlHashCopy(table,
- (xmlHashCopier) xmlCopyNotation));
+ return((xmlNotationTablePtr) xmlHashCopy(table, xmlCopyNotation));
}
#endif /* LIBXML_TREE_ENABLED */
@@ -2504,8 +2527,9 @@ xmlDumpNotationDecl(xmlBufferPtr buf, xmlNotationPtr nota) {
* This is called with the hash scan function, and just reverses args
*/
static void
-xmlDumpNotationDeclScan(xmlNotationPtr nota, xmlBufferPtr buf) {
- xmlDumpNotationDecl(buf, nota);
+xmlDumpNotationDeclScan(void *nota, void *buf,
+ const xmlChar *name ATTRIBUTE_UNUSED) {
+ xmlDumpNotationDecl((xmlBufferPtr) buf, (xmlNotationPtr) nota);
}
/**
@@ -2519,7 +2543,7 @@ void
xmlDumpNotationTable(xmlBufferPtr buf, xmlNotationTablePtr table) {
if ((buf == NULL) || (table == NULL))
return;
- xmlHashScan(table, (xmlHashScanner) xmlDumpNotationDeclScan, buf);
+ xmlHashScan(table, xmlDumpNotationDeclScan, buf);
}
#endif /* LIBXML_OUTPUT_ENABLED */
@@ -2647,6 +2671,11 @@ xmlAddID(xmlValidCtxtPtr ctxt, xmlDocPtr doc, const xmlChar *value,
return(ret);
}
+static void
+xmlFreeIDTableEntry(void *id, const xmlChar *name ATTRIBUTE_UNUSED) {
+ xmlFreeID((xmlIDPtr) id);
+}
+
/**
* xmlFreeIDTable:
* @table: An id table
@@ -2655,7 +2684,7 @@ xmlAddID(xmlValidCtxtPtr ctxt, xmlDocPtr doc, const xmlChar *value,
*/
void
xmlFreeIDTable(xmlIDTablePtr table) {
- xmlHashFree(table, (xmlHashDeallocator) xmlFreeID);
+ xmlHashFree(table, xmlFreeIDTableEntry);
}
/**
@@ -2755,7 +2784,7 @@ xmlRemoveID(xmlDocPtr doc, xmlAttrPtr attr) {
return(-1);
}
- xmlHashRemoveEntry(table, ID, (xmlHashDeallocator) xmlFreeID);
+ xmlHashRemoveEntry(table, ID, xmlFreeIDTableEntry);
xmlFree(ID);
attr->atype = 0;
return(0);
@@ -2839,13 +2868,14 @@ xmlFreeRef(xmlLinkPtr lk) {
}
/**
- * xmlFreeRefList:
+ * xmlFreeRefTableEntry:
* @list_ref: A list of references.
*
* Deallocate the memory used by a list of references
*/
static void
-xmlFreeRefList(xmlListPtr list_ref) {
+xmlFreeRefTableEntry(void *payload, const xmlChar *name ATTRIBUTE_UNUSED) {
+ xmlListPtr list_ref = (xmlListPtr) payload;
if (list_ref == NULL) return;
xmlListDelete(list_ref);
}
@@ -2858,7 +2888,7 @@ xmlFreeRefList(xmlListPtr list_ref) {
* Returns 0 to abort the walk or 1 to continue
*/
static int
-xmlWalkRemoveRef(const void *data, const void *user)
+xmlWalkRemoveRef(const void *data, void *user)
{
xmlAttrPtr attr0 = ((xmlRefPtr)data)->attr;
xmlAttrPtr attr1 = ((xmlRemoveMemoPtr)user)->ap;
@@ -2996,7 +3026,7 @@ failed:
*/
void
xmlFreeRefTable(xmlRefTablePtr table) {
- xmlHashFree(table, (xmlHashDeallocator) xmlFreeRefList);
+ xmlHashFree(table, xmlFreeRefTableEntry);
}
/**
@@ -3093,8 +3123,7 @@ xmlRemoveRef(xmlDocPtr doc, xmlAttrPtr attr) {
/*If the list is empty then remove the list entry in the hash */
if (xmlListEmpty(ref_list))
- xmlHashUpdateEntry(table, ID, NULL, (xmlHashDeallocator)
- xmlFreeRefList);
+ xmlHashUpdateEntry(table, ID, NULL, xmlFreeRefTableEntry);
xmlFree(ID);
return(0);
}
@@ -4090,8 +4119,10 @@ xmlValidNormalizeAttributeValue(xmlDocPtr doc, xmlNodePtr elem,
}
static void
-xmlValidateAttributeIdCallback(xmlAttributePtr attr, int *count,
- const xmlChar* name ATTRIBUTE_UNUSED) {
+xmlValidateAttributeIdCallback(void *payload, void *data,
+ const xmlChar *name ATTRIBUTE_UNUSED) {
+ xmlAttributePtr attr = (xmlAttributePtr) payload;
+ int *count = (int *) data;
if (attr->atype == XML_ATTRIBUTE_ID) (*count)++;
}
@@ -4163,7 +4194,7 @@ xmlValidateAttributeDecl(xmlValidCtxtPtr ctxt, xmlDocPtr doc,
nbId = 0;
if (doc->intSubset != NULL) {
table = (xmlAttributeTablePtr) doc->intSubset->attributes;
- xmlHashScan3(table, NULL, NULL, attr->elem, (xmlHashScanner)
+ xmlHashScan3(table, NULL, NULL, attr->elem,
xmlValidateAttributeIdCallback, &nbId);
}
}
@@ -4621,6 +4652,12 @@ xmlNodePtr elem, const xmlChar *prefix, xmlNsPtr ns, const xmlChar *value) {
}
}
+ /*
+ * Casting ns to xmlAttrPtr is wrong. We'd need separate functions
+ * xmlAddID and xmlAddRef for namespace declarations, but it makes
+ * no practical sense to use ID types anyway.
+ */
+#if 0
/* Validity Constraint: ID uniqueness */
if (attrDecl->atype == XML_ATTRIBUTE_ID) {
if (xmlAddID(ctxt, doc, value, (xmlAttrPtr) attrDecl) == NULL)
@@ -4632,6 +4669,7 @@ xmlNodePtr elem, const xmlChar *prefix, xmlNsPtr ns, const xmlChar *value) {
if (xmlAddRef(ctxt, doc, value, (xmlAttrPtr) attrDecl) == NULL)
ret = 0;
}
+#endif
/* Validity Constraint: Notation Attributes */
if (attrDecl->atype == XML_ATTRIBUTE_NOTATION) {
@@ -5177,6 +5215,7 @@ xmlSnprintfElements(char *buf, int size, xmlNodePtr node, int glob) {
case XML_TEXT_NODE:
if (xmlIsBlankNode(cur))
break;
+ /* Falls through. */
case XML_CDATA_SECTION_NODE:
case XML_ENTITY_REF_NODE:
strcat(buf, "CDATA");
@@ -5725,7 +5764,7 @@ xmlValidatePushElement(xmlValidCtxtPtr ctxt, xmlDocPtr doc,
xmlElementPtr elemDecl;
/*
- * Check the new element agaisnt the content model of the new elem.
+ * Check the new element against the content model of the new elem.
*/
if (state->elemDecl != NULL) {
elemDecl = state->elemDecl;
@@ -5817,7 +5856,7 @@ xmlValidatePushCData(xmlValidCtxtPtr ctxt, const xmlChar *data, int len) {
xmlElementPtr elemDecl;
/*
- * Check the new element agaisnt the content model of the new elem.
+ * Check the new element against the content model of the new elem.
*/
if (state->elemDecl != NULL) {
elemDecl = state->elemDecl;
@@ -5891,7 +5930,7 @@ xmlValidatePopElement(xmlValidCtxtPtr ctxt, xmlDocPtr doc ATTRIBUTE_UNUSED,
xmlElementPtr elemDecl;
/*
- * Check the new element agaisnt the content model of the new elem.
+ * Check the new element against the content model of the new elem.
*/
if (state->elemDecl != NULL) {
elemDecl = state->elemDecl;
@@ -6516,7 +6555,7 @@ xmlValidateRef(xmlRefPtr ref, xmlValidCtxtPtr ctxt,
* Returns 0 to abort the walk or 1 to continue
*/
static int
-xmlWalkValidateList(const void *data, const void *user)
+xmlWalkValidateList(const void *data, void *user)
{
xmlValidateMemoPtr memo = (xmlValidateMemoPtr)user;
xmlValidateRef((xmlRefPtr)data, memo->ctxt, memo->name);
@@ -6531,8 +6570,9 @@ xmlWalkValidateList(const void *data, const void *user)
*
*/
static void
-xmlValidateCheckRefCallback(xmlListPtr ref_list, xmlValidCtxtPtr ctxt,
- const xmlChar *name) {
+xmlValidateCheckRefCallback(void *payload, void *data, const xmlChar *name) {
+ xmlListPtr ref_list = (xmlListPtr) payload;
+ xmlValidCtxtPtr ctxt = (xmlValidCtxtPtr) data;
xmlValidateMemo memo;
if (ref_list == NULL)
@@ -6588,7 +6628,7 @@ xmlValidateDocumentFinal(xmlValidCtxtPtr ctxt, xmlDocPtr doc) {
table = (xmlRefTablePtr) doc->refs;
ctxt->doc = doc;
ctxt->valid = 1;
- xmlHashScan(table, (xmlHashScanner) xmlValidateCheckRefCallback, ctxt);
+ xmlHashScan(table, xmlValidateCheckRefCallback, ctxt);
ctxt->finishDtd = save;
return(ctxt->valid);
@@ -6645,8 +6685,10 @@ xmlValidateDtd(xmlValidCtxtPtr ctxt, xmlDocPtr doc, xmlDtdPtr dtd) {
}
static void
-xmlValidateNotationCallback(xmlEntityPtr cur, xmlValidCtxtPtr ctxt,
+xmlValidateNotationCallback(void *payload, void *data,
const xmlChar *name ATTRIBUTE_UNUSED) {
+ xmlEntityPtr cur = (xmlEntityPtr) payload;
+ xmlValidCtxtPtr ctxt = (xmlValidCtxtPtr) data;
if (cur == NULL)
return;
if (cur->etype == XML_EXTERNAL_GENERAL_UNPARSED_ENTITY) {
@@ -6664,8 +6706,10 @@ xmlValidateNotationCallback(xmlEntityPtr cur, xmlValidCtxtPtr ctxt,
}
static void
-xmlValidateAttributeCallback(xmlAttributePtr cur, xmlValidCtxtPtr ctxt,
- const xmlChar *name ATTRIBUTE_UNUSED) {
+xmlValidateAttributeCallback(void *payload, void *data,
+ const xmlChar *name ATTRIBUTE_UNUSED) {
+ xmlAttributePtr cur = (xmlAttributePtr) payload;
+ xmlValidCtxtPtr ctxt = (xmlValidCtxtPtr) data;
int ret;
xmlDocPtr doc;
xmlElementPtr elem = NULL;
@@ -6764,22 +6808,20 @@ xmlValidateDtdFinal(xmlValidCtxtPtr ctxt, xmlDocPtr doc) {
dtd = doc->intSubset;
if ((dtd != NULL) && (dtd->attributes != NULL)) {
table = (xmlAttributeTablePtr) dtd->attributes;
- xmlHashScan(table, (xmlHashScanner) xmlValidateAttributeCallback, ctxt);
+ xmlHashScan(table, xmlValidateAttributeCallback, ctxt);
}
if ((dtd != NULL) && (dtd->entities != NULL)) {
entities = (xmlEntitiesTablePtr) dtd->entities;
- xmlHashScan(entities, (xmlHashScanner) xmlValidateNotationCallback,
- ctxt);
+ xmlHashScan(entities, xmlValidateNotationCallback, ctxt);
}
dtd = doc->extSubset;
if ((dtd != NULL) && (dtd->attributes != NULL)) {
table = (xmlAttributeTablePtr) dtd->attributes;
- xmlHashScan(table, (xmlHashScanner) xmlValidateAttributeCallback, ctxt);
+ xmlHashScan(table, xmlValidateAttributeCallback, ctxt);
}
if ((dtd != NULL) && (dtd->entities != NULL)) {
entities = (xmlEntitiesTablePtr) dtd->entities;
- xmlHashScan(entities, (xmlHashScanner) xmlValidateNotationCallback,
- ctxt);
+ xmlHashScan(entities, xmlValidateNotationCallback, ctxt);
}
return(ctxt->valid);
}
diff --git a/vms/build_libxml.com b/vms/build_libxml.com
index 3a6fcc01..1f7936e5 100755
--- a/vms/build_libxml.com
+++ b/vms/build_libxml.com
@@ -62,9 +62,9 @@ $!
$ bin_progs = "xmllint xmlcatalog"
$!
$!- list of test modules to compile and link. Compare this list to the
-$! definition of noinst_PROGRAMS in MAKEFILE.
+$! definition of check_PROGRAMS in MAKEFILE.
$!
-$ noinst_PROGRAMS = "testSchemas testRelax testSAX testHTML testXPath testURI " -
+$ check_PROGRAMS = "testSchemas testRelax testSAX testHTML testXPath testURI " -
+ "testThreads testC14N testAutomata testRegexp testReader"
$!
$!- set up build logicals -----------------------------------------------------\
@@ -196,7 +196,7 @@ $ write sys$output "Building main programs and test programs"
$ write sys$output ""
$!
$ p_no = 0
-$ all_progs = bin_progs + " " + noinst_PROGRAMS
+$ all_progs = bin_progs + " " + check_PROGRAMS
$ all_progs = f$edit(all_progs,"COMPRESS")
$!
$ prog_loop:
diff --git a/vms/config.vms b/vms/config.vms
index d1cd7f33..375406b0 100755
--- a/vms/config.vms
+++ b/vms/config.vms
@@ -21,39 +21,15 @@
#define ICONV_CONST
-/* Define if you have the class function. */
-#undef HAVE_CLASS
-
-/* Define if you have the finite function. */
-#undef HAVE_FINITE
-
-/* Define if you have the fp_class function. */
-#define HAVE_FP_CLASS 1
-
-/* Define if you have the fpclass function. */
-#undef HAVE_FPCLASS
-
-/* Define if you have the isnand function. */
-#undef HAVE_ISNAND
-
/* Define if you have the localtime function. */
#define HAVE_LOCALTIME 1
/* Define if you have the snprintf function. */
#undef HAVE_SNPRINTF
-/* Define if you have the strdup function. */
-#define HAVE_STRDUP 1
-
-/* Define if you have the strerror function. */
-#define HAVE_STRERROR 1
-
/* Define if you have the strftime function. */
#define HAVE_STRFTIME 1
-/* Define if you have the strndup function. */
-#undef HAVE_STRNDUP
-
/* Define if you have the <arpa/inet.h> header file. */
#undef HAVE_ARPA_INET_H
@@ -72,21 +48,12 @@
/* Define if you have the <float.h> header file. */
#define HAVE_FLOAT_H 1
-/* Define if you have the <fp_class.h> header file. */
-#define HAVE_FP_CLASS_H 1
-
-/* Define if you have the <ieeefp.h> header file. */
-#undef HAVE_IEEEFP_H
-
/* Define if you have the <malloc.h> header file. */
#undef HAVE_MALLOC_H
/* Define if you have the <math.h> header file. */
#define HAVE_MATH_H 1
-/* Define if you have the <nan.h> header file. */
-#undef HAVE_NAN_H
-
/* Define if you have the <ndir.h> header file. */
#undef HAVE_NDIR_H
@@ -102,12 +69,6 @@
/* Define if you have the <stdlib.h> header file. */
#define HAVE_STDLIB_H 1
-/* Define to 1 if you have the `strdup' function. */
-#define HAVE_STRDUP 1
-
-/* Define to 1 if you have the `strerror' function. */
-#define HAVE_STRERROR 1
-
/* Define to 1 if you have the `strftime' function. */
#define HAVE_STRFTIME 1
@@ -117,9 +78,6 @@
/* Define to 1 if you have the <string.h> header file. */
#define HAVE_STRING_H 1
-/* Define to 1 if you have the `strndup' function. */
-#undef HAVE_STRNDUP
-
/* Define if you have the <sys/dir.h> header file. */
#undef HAVE_SYS_DIR_H
@@ -150,9 +108,6 @@
/* Define if you have the <unistd.h> header file. */
#define HAVE_UNISTD_H 1
-/* Define if you have the <zlib.h> header file. */
-#undef HAVE_ZLIB_H
-
/* Name of package */
#undef PACKAGE
diff --git a/win32/Makefile.bcb b/win32/Makefile.bcb
index 7129c617..41002da5 100644
--- a/win32/Makefile.bcb
+++ b/win32/Makefile.bcb
@@ -65,12 +65,6 @@ CFLAGS = $(CFLAGS) -DHAVE_WIN32_THREADS
!else if "$(WITH_THREADS)" == "posix"
CFLAGS = $(CFLAGS) -DHAVE_PTHREAD_H
!endif
-!if "$(WITH_ZLIB)" == "1"
-CFLAGS = $(CFLAGS) -DHAVE_ZLIB_H
-!endif
-!if "$(WITH_LZMA)" == "1"
-CFLAGS = $(CFLAGS) -DHAVE_LZMA_H
-!endif
# The linker and its options.
LD = ilink32.exe
diff --git a/win32/Makefile.mingw b/win32/Makefile.mingw
index 18893760..3d4cb888 100644
--- a/win32/Makefile.mingw
+++ b/win32/Makefile.mingw
@@ -57,12 +57,6 @@ endif
ifeq ($(WITH_THREADS),posix)
CFLAGS += -DHAVE_PTHREAD_H
endif
-ifeq ($(WITH_ZLIB),1)
-CFLAGS += -DHAVE_ZLIB_H
-endif
-ifeq ($(WITH_LZMA),1)
-CFLAGS += -DHAVE_LZMA_H
-endif
# The linker and its options.
LD = gcc.exe
@@ -71,11 +65,9 @@ LDFLAGS += -Wl,--minor-image-version,$(LIBXML_MINOR_VERSION)
LDFLAGS += -Wl,-L,$(BINDIR) -Wl,-L,$(LIBPREFIX)
LIBS =
ifeq ($(WITH_FTP),1)
-CFLAGS += -D_WINSOCKAPI_
LIBS += -lwsock32 -lws2_32
endif
ifeq ($(WITH_HTTP),1)
-CFLAGS += -D_WINSOCKAPI_
LIBS += -lwsock32 -lws2_32
endif
ifeq ($(WITH_ICONV),1)
diff --git a/win32/Makefile.msvc b/win32/Makefile.msvc
index d16c1a2d..491dc880 100644
--- a/win32/Makefile.msvc
+++ b/win32/Makefile.msvc
@@ -22,6 +22,7 @@ AUTOCONF = .\config.msvc
XML_NAME = xml2
XML_BASENAME = lib$(XML_NAME)
XML_SO = $(XML_BASENAME).dll
+XML_RES = $(XML_BASENAME).res
XML_IMP = $(XML_BASENAME).lib
XML_DEF = $(XML_BASENAME).def
XML_A = $(XML_BASENAME)_a.lib
@@ -43,7 +44,7 @@ CPPFLAGS = $(CPPFLAGS) /D "_REENTRANT"
# The compiler and its options.
CC = cl.exe
-CFLAGS = /nologo /D "WIN32" /D "_WINDOWS" /D "_MBCS" /D "NOLIBTOOL" /W1 $(CRUNTIME)
+CFLAGS = /nologo /D "_WINDOWS" /D "_MBCS" /D "NOLIBTOOL" /W3 /wd4244 /wd4267 $(CRUNTIME)
CFLAGS = $(CFLAGS) /I$(XML_SRCDIR) /I$(XML_SRCDIR)\include /I$(INCPREFIX)
!if "$(WITH_THREADS)" != "no"
CFLAGS = $(CFLAGS) /D "_REENTRANT"
@@ -55,12 +56,6 @@ CFLAGS = $(CFLAGS) /D "HAVE_WIN32_THREADS"
!else if "$(WITH_THREADS)" == "posix"
CFLAGS = $(CFLAGS) /D "HAVE_PTHREAD_H"
!endif
-!if "$(WITH_ZLIB)" == "1"
-CFLAGS = $(CFLAGS) /D "HAVE_ZLIB_H"
-!endif
-!if "$(WITH_LZMA)" == "1"
-CFLAGS = $(CFLAGS) /D "HAVE_LZMA_H"
-!endif
CFLAGS = $(CFLAGS) /D_CRT_SECURE_NO_DEPRECATE /D_CRT_NONSTDC_NO_DEPRECATE
# The linker and its options.
@@ -75,7 +70,11 @@ LIBS = $(LIBS) wsock32.lib ws2_32.lib
LIBS = $(LIBS) iconv.lib
!endif
!if "$(WITH_ICU)" == "1"
-LIBS = $(LIBS) icu.lib
+!if "$(STATIC)" == "1"
+LIBS = $(LIBS) advapi32.lib sicuuc.lib sicuin.lib sicudt.lib
+!else
+LIBS = $(LIBS) icuuc.lib icuin.lib icudt.lib
+!endif
!endif
!if "$(WITH_ZLIB)" == "1"
# could be named differently zdll or zlib
@@ -262,7 +261,10 @@ UTILS = $(BINDIR)\xmllint.exe\
$(BINDIR)\testXPath.exe\
$(BINDIR)\runtest.exe\
$(BINDIR)\runsuite.exe\
+ $(BINDIR)\runxmlconf.exe\
$(BINDIR)\testapi.exe\
+ $(BINDIR)\testchar.exe\
+ $(BINDIR)\testdict.exe\
$(BINDIR)\testlimits.exe\
$(BINDIR)\testrecurse.exe
@@ -373,11 +375,13 @@ $(XML_OBJS_A_DLL) : $(XML_INTDIR_A_DLL)
# Creates the export definition file (DEF) for libxml.
$(XML_INTDIR)\$(XML_DEF) : $(XML_INTDIR) $(XML_DEF).src
$(CPP) $(CPPFLAGS) $(XML_DEF).src > $(XML_INTDIR)\$(XML_DEF)
+$(XML_INTDIR)\$(XML_RES) : $(XML_INTDIR) libxml2.rc
+ rc -Fo $(XML_INTDIR)\$(XML_RES) libxml2.rc
# Creates the libxml shared object.
-$(BINDIR)\$(XML_SO) : $(BINDIR) $(XML_OBJS) $(XML_INTDIR)\$(XML_DEF)
+$(BINDIR)\$(XML_SO) : $(BINDIR) $(XML_OBJS) $(XML_INTDIR)\$(XML_DEF) $(XML_INTDIR)\$(XML_RES)
$(LD) $(LDFLAGS) /DLL \
- /IMPLIB:$(BINDIR)\$(XML_IMP) /OUT:$(BINDIR)\$(XML_SO) $(XML_OBJS) $(LIBS)
+ /IMPLIB:$(BINDIR)\$(XML_IMP) /OUT:$(BINDIR)\$(XML_SO) $(XML_OBJS) $(XML_INTDIR)\$(XML_RES) $(LIBS)
@$(_VC_MANIFEST_EMBED_DLL)
#$(BINDIR)\$(XML_SO) : $(BINDIR) $(XML_OBJS) $(XML_INTDIR)\$(XML_DEF)
diff --git a/win32/VC10/config.h b/win32/VC10/config.h
index 891b57e4..c1e16f14 100644
--- a/win32/VC10/config.h
+++ b/win32/VC10/config.h
@@ -9,11 +9,9 @@
#if defined(_WIN32_WCE)
#undef HAVE_ERRNO_H
-#include <windows.h>
#include "wincecompat.h"
#else
#define HAVE_SYS_STAT_H
-#define HAVE__STAT
#define HAVE_STAT
#define HAVE_STDLIB_H
#define HAVE_TIME_H
@@ -28,10 +26,6 @@
#define ICONV_CONST const
#endif
-#ifdef NEED_SOCKETS
-#include <wsockcompat.h>
-#endif
-
/*
* Windows platforms may define except
*/
diff --git a/win32/configure.js b/win32/configure.js
index 92b9ba05..dbf238c7 100644
--- a/win32/configure.js
+++ b/win32/configure.js
@@ -280,6 +280,18 @@ function discoverVersion()
vf.WriteLine("DYNRUNTIME=" + (dynruntime? "1" : "0"));
}
vf.Close();
+ versionFile = "rcVersion.h"
+ vf = fso.CreateTextFile(versionFile, true);
+ vf.WriteLine("/*");
+ vf.WriteLine(" " + versionFile);
+ vf.WriteLine(" This file is generated automatically by " + WScript.ScriptName + ".");
+ vf.WriteLine("*/");
+ vf.WriteBlankLines(1);
+ vf.WriteLine("#define LIBXML_MAJOR_VERSION " + verMajor);
+ vf.WriteLine("#define LIBXML_MINOR_VERSION " + verMinor);
+ vf.WriteLine("#define LIBXML_MICRO_VERSION " + verMicro);
+ vf.WriteLine("#define LIBXML_DOTTED_VERSION " + "\"" + verMajor + "." + verMinor + "." + verMicro + "\"");
+ vf.Close()
}
/* Configures libxml. This one will generate xmlversion.h from xmlversion.h.in
diff --git a/win32/libxml2.rc b/win32/libxml2.rc
new file mode 100644
index 00000000..c774a5ee
--- /dev/null
+++ b/win32/libxml2.rc
@@ -0,0 +1,36 @@
+#include <winver.h>
+#include "rcVersion.h"
+
+VS_VERSION_INFO VERSIONINFO
+ FILEVERSION LIBXML_MAJOR_VERSION,LIBXML_MINOR_VERSION,LIBXML_MICRO_VERSION,0
+ PRODUCTVERSION LIBXML_MAJOR_VERSION,LIBXML_MINOR_VERSION,LIBXML_MICRO_VERSION,0
+ FILEFLAGSMASK VS_FFI_FILEFLAGSMASK
+#ifdef _DEBUG
+ FILEFLAGS VS_FF_DEBUG
+#else
+ FILEFLAGS 0
+#endif
+ FILEOS VOS__WINDOWS32
+ FILETYPE VFT_DLL
+ FILESUBTYPE VFT2_UNKNOWN // not used
+BEGIN
+ BLOCK "StringFileInfo"
+ BEGIN
+ BLOCK "04090000" /* Lang = US English, Charset = ASCII */
+ BEGIN
+ VALUE "FileDescription", "libxml2 library\0"
+ VALUE "FileVersion", LIBXML_DOTTED_VERSION "\0"
+ VALUE "InternalName", "libxml2.dll\0"
+ VALUE "LegalCopyright", "Copyright (C) Daniel Veillard\0"
+ VALUE "LegalTrademarks", "\0"
+ VALUE "OriginalFilename", "libxml2.dll\0"
+ VALUE "ProductName", "libxml2\0"
+ VALUE "ProductVersion", LIBXML_DOTTED_VERSION "\0"
+ VALUE "Comments", "For more information visit http://xmlsoft.org/\0"
+ END
+ END
+ BLOCK "VarFileInfo"
+ BEGIN
+ VALUE "Translation", 0x0409, 0 /* US English, ASCII */
+ END
+END
diff --git a/xinclude.c b/xinclude.c
index e3bb43ec..001e992f 100644
--- a/xinclude.c
+++ b/xinclude.c
@@ -1261,8 +1261,10 @@ struct _xmlXIncludeMergeData {
* Inplements the merge of one entity
*/
static void
-xmlXIncludeMergeEntity(xmlEntityPtr ent, xmlXIncludeMergeDataPtr data,
- xmlChar *name ATTRIBUTE_UNUSED) {
+xmlXIncludeMergeEntity(void *payload, void *vdata,
+ const xmlChar *name ATTRIBUTE_UNUSED) {
+ xmlEntityPtr ent = (xmlEntityPtr) payload;
+ xmlXIncludeMergeDataPtr data = (xmlXIncludeMergeDataPtr) vdata;
xmlEntityPtr ret, prev;
xmlDocPtr doc;
xmlXIncludeCtxtPtr ctxt;
@@ -1367,7 +1369,7 @@ xmlXIncludeMergeEntities(xmlXIncludeCtxtPtr ctxt, xmlDocPtr doc,
data.doc = doc;
xmlHashScan((xmlHashTablePtr) source->entities,
- (xmlHashScanner) xmlXIncludeMergeEntity, &data);
+ xmlXIncludeMergeEntity, &data);
}
source = from->extSubset;
if ((source != NULL) && (source->entities != NULL)) {
@@ -1382,7 +1384,7 @@ xmlXIncludeMergeEntities(xmlXIncludeCtxtPtr ctxt, xmlDocPtr doc,
if ((!xmlStrEqual(target->ExternalID, source->ExternalID)) &&
(!xmlStrEqual(target->SystemID, source->SystemID))) {
xmlHashScan((xmlHashTablePtr) source->entities,
- (xmlHashScanner) xmlXIncludeMergeEntity, &data);
+ xmlXIncludeMergeEntity, &data);
}
}
return(0);
diff --git a/xlink.c b/xlink.c
index c0e4ff32..ecf9f968 100644
--- a/xlink.c
+++ b/xlink.c
@@ -28,7 +28,7 @@
#ifdef HAVE_UNISTD_H
#include <unistd.h>
#endif
-#ifdef HAVE_ZLIB_H
+#ifdef LIBXML_ZLIB_ENABLED
#include <zlib.h>
#endif
diff --git a/xmlIO.c b/xmlIO.c
index 1a79c096..82543477 100644
--- a/xmlIO.c
+++ b/xmlIO.c
@@ -12,6 +12,7 @@
#include "libxml.h"
#include <string.h>
+#include <stddef.h>
#ifdef HAVE_ERRNO_H
#include <errno.h>
#endif
@@ -32,14 +33,15 @@
#ifdef HAVE_STDLIB_H
#include <stdlib.h>
#endif
-#ifdef HAVE_ZLIB_H
+#ifdef LIBXML_ZLIB_ENABLED
#include <zlib.h>
#endif
-#ifdef HAVE_LZMA_H
+#ifdef LIBXML_LZMA_ENABLED
#include <lzma.h>
#endif
-#if defined(WIN32) || defined(_WIN32)
+#if defined(_WIN32) && !defined(__CYGWIN__)
+#define WIN32_LEAN_AND_MEAN
#include <windows.h>
#endif
@@ -47,38 +49,14 @@
#include <winnls.h> /* for CP_UTF8 */
#endif
-/* Figure a portable way to know if a file is a directory. */
-#ifndef HAVE_STAT
-# ifdef HAVE__STAT
- /* MS C library seems to define stat and _stat. The definition
- is identical. Still, mapping them to each other causes a warning. */
-# ifndef _MSC_VER
-# define stat(x,y) _stat(x,y)
-# endif
-# define HAVE_STAT
-# endif
-#else
-# ifdef HAVE__STAT
-# if defined(_WIN32) || defined (__DJGPP__) && !defined (__CYGWIN__)
-# define stat _stat
-# endif
-# endif
-#endif
-#ifdef HAVE_STAT
-# ifndef S_ISDIR
-# ifdef _S_ISDIR
-# define S_ISDIR(x) _S_ISDIR(x)
-# else
-# ifdef S_IFDIR
-# ifndef S_IFMT
-# ifdef _S_IFMT
-# define S_IFMT _S_IFMT
-# endif
-# endif
-# ifdef S_IFMT
-# define S_ISDIR(m) (((m) & S_IFMT) == S_IFDIR)
-# endif
-# endif
+#ifndef S_ISDIR
+# ifdef _S_ISDIR
+# define S_ISDIR(x) _S_ISDIR(x)
+# elif defined(S_IFDIR)
+# ifdef S_IFMT
+# define S_ISDIR(m) (((m) & S_IFMT) == S_IFDIR)
+# elif defined(_S_IFMT)
+# define S_ISDIR(m) (((m) & _S_IFMT) == S_IFDIR)
# endif
# endif
#endif
@@ -619,7 +597,7 @@ xmlWrapOpenUtf8(const char *path,int mode)
return fd;
}
-#ifdef HAVE_ZLIB_H
+#ifdef LIBXML_ZLIB_ENABLED
static gzFile
xmlWrapGzOpenUtf8(const char *path, const char *mode)
{
@@ -656,99 +634,19 @@ xmlWrapGzOpenUtf8(const char *path, const char *mode)
*
*/
static int
-xmlWrapStatUtf8(const char *path,struct stat *info)
-{
-#ifdef HAVE_STAT
+xmlWrapStatUtf8(const char *path, struct _stat *info) {
int retval = -1;
wchar_t *wPath;
wPath = __xmlIOWin32UTF8ToWChar(path);
- if (wPath)
- {
- retval = _wstat(wPath,info);
+ if (wPath) {
+ retval = _wstat(wPath, info);
xmlFree(wPath);
}
/* maybe path in native encoding */
if(retval < 0)
- retval = stat(path,info);
+ retval = _stat(path, info);
return retval;
-#else
- return -1;
-#endif
-}
-
-/**
- * xmlWrapOpenNative:
- * @path: the path
- * @mode: type of access (0 - read, 1 - write)
- *
- * function opens the file specified by @path
- *
- */
-static FILE*
-xmlWrapOpenNative(const char *path,int mode)
-{
- return fopen(path,mode ? "wb" : "rb");
-}
-
-/**
- * xmlWrapStatNative:
- * @path: the path
- * @info: structure that stores results
- *
- * function obtains information about the file or directory
- *
- */
-static int
-xmlWrapStatNative(const char *path,struct stat *info)
-{
-#ifdef HAVE_STAT
- return stat(path,info);
-#else
- return -1;
-#endif
-}
-
-typedef int (* xmlWrapStatFunc) (const char *f, struct stat *s);
-static xmlWrapStatFunc xmlWrapStat = xmlWrapStatNative;
-typedef FILE* (* xmlWrapOpenFunc)(const char *f,int mode);
-static xmlWrapOpenFunc xmlWrapOpen = xmlWrapOpenNative;
-#ifdef HAVE_ZLIB_H
-typedef gzFile (* xmlWrapGzOpenFunc) (const char *f, const char *mode);
-static xmlWrapGzOpenFunc xmlWrapGzOpen = gzopen;
-#endif
-/**
- * xmlInitPlatformSpecificIo:
- *
- * Initialize platform specific features.
- */
-static void
-xmlInitPlatformSpecificIo(void)
-{
- static int xmlPlatformIoInitialized = 0;
- OSVERSIONINFO osvi;
-
- if(xmlPlatformIoInitialized)
- return;
-
- osvi.dwOSVersionInfoSize = sizeof(osvi);
-
- if(GetVersionEx(&osvi) && (osvi.dwPlatformId == VER_PLATFORM_WIN32_NT)) {
- xmlWrapStat = xmlWrapStatUtf8;
- xmlWrapOpen = xmlWrapOpenUtf8;
-#ifdef HAVE_ZLIB_H
- xmlWrapGzOpen = xmlWrapGzOpenUtf8;
-#endif
- } else {
- xmlWrapStat = xmlWrapStatNative;
- xmlWrapOpen = xmlWrapOpenNative;
-#ifdef HAVE_ZLIB_H
- xmlWrapGzOpen = gzopen;
-#endif
- }
-
- xmlPlatformIoInitialized = 1;
- return;
}
#endif
@@ -771,8 +669,12 @@ int
xmlCheckFilename (const char *path)
{
#ifdef HAVE_STAT
+#if defined(_WIN32) || defined (__DJGPP__) && !defined (__CYGWIN__)
+ struct _stat stat_buffer;
+#else
struct stat stat_buffer;
#endif
+#endif
if (path == NULL)
return(0);
@@ -786,7 +688,7 @@ xmlCheckFilename (const char *path)
(path[3] == '\\') )
return 1;
- if (xmlWrapStat(path, &stat_buffer) == -1)
+ if (xmlWrapStatUtf8(path, &stat_buffer) == -1)
return 0;
#else
if (stat(path, &stat_buffer) == -1)
@@ -801,14 +703,16 @@ xmlCheckFilename (const char *path)
}
/**
- * xmlNop:
+ * xmlInputReadCallbackNop:
*
- * No Operation function, does nothing, no input
+ * No Operation xmlInputReadCallback function, does nothing.
*
* Returns zero
*/
int
-xmlNop(void) {
+xmlInputReadCallbackNop(void *context ATTRIBUTE_UNUSED,
+ char *buffer ATTRIBUTE_UNUSED,
+ int len ATTRIBUTE_UNUSED) {
return(0);
}
@@ -826,7 +730,7 @@ static int
xmlFdRead (void * context, char * buffer, int len) {
int ret;
- ret = read((int) (long) context, &buffer[0], len);
+ ret = read((int) (ptrdiff_t) context, &buffer[0], len);
if (ret < 0) xmlIOErr(0, "read()");
return(ret);
}
@@ -847,7 +751,7 @@ xmlFdWrite (void * context, const char * buffer, int len) {
int ret = 0;
if (len > 0) {
- ret = write((int) (long) context, &buffer[0], len);
+ ret = write((int) (ptrdiff_t) context, &buffer[0], len);
if (ret < 0) xmlIOErr(0, "write()");
}
return(ret);
@@ -865,7 +769,7 @@ xmlFdWrite (void * context, const char * buffer, int len) {
static int
xmlFdClose (void * context) {
int ret;
- ret = close((int) (long) context);
+ ret = close((int) (ptrdiff_t) context);
if (ret < 0) xmlIOErr(0, "close()");
return(ret);
}
@@ -926,11 +830,14 @@ xmlFileOpen_real (const char *filename) {
#endif
}
+ /* Do not check DDNAME on zOS ! */
+#if !defined(__MVS__)
if (!xmlCheckFilename(path))
return(NULL);
+#endif
#if defined(_WIN32) || defined (__DJGPP__) && !defined (__CYGWIN__)
- fd = xmlWrapOpen(path, 0);
+ fd = xmlWrapOpenUtf8(path, 0);
#else
fd = fopen(path, "r");
#endif /* WIN32 */
@@ -1003,12 +910,14 @@ xmlFileOpenW (const char *filename) {
return(NULL);
#if defined(_WIN32) || defined (__DJGPP__) && !defined (__CYGWIN__)
- fd = xmlWrapOpen(path, 1);
+ fd = xmlWrapOpenUtf8(path, 1);
+#elif(__MVS__)
+ fd = fopen(path, "w");
#else
- fd = fopen(path, "wb");
+ fd = fopen(path, "wb");
#endif /* WIN32 */
- if (fd == NULL) xmlIOErr(0, path);
+ if (fd == NULL) xmlIOErr(0, path);
return((void *) fd);
}
#endif /* LIBXML_OUTPUT_ENABLED */
@@ -1129,7 +1038,7 @@ xmlBufferWrite (void * context, const char * buffer, int len) {
}
#endif
-#ifdef HAVE_ZLIB_H
+#ifdef LIBXML_ZLIB_ENABLED
/************************************************************************
* *
* I/O for compressed file accesses *
@@ -1193,7 +1102,7 @@ xmlGzfileOpen_real (const char *filename) {
return(NULL);
#if defined(_WIN32) || defined (__DJGPP__) && !defined (__CYGWIN__)
- fd = xmlWrapGzOpen(path, "rb");
+ fd = xmlWrapGzOpenUtf8(path, "rb");
#else
fd = gzopen(path, "rb");
#endif
@@ -1270,7 +1179,7 @@ xmlGzfileOpenW (const char *filename, int compression) {
return(NULL);
#if defined(_WIN32) || defined (__DJGPP__) && !defined (__CYGWIN__)
- fd = xmlWrapGzOpen(path, mode);
+ fd = xmlWrapGzOpenUtf8(path, mode);
#else
fd = gzopen(path, mode);
#endif
@@ -1286,7 +1195,7 @@ xmlGzfileOpenW (const char *filename, int compression) {
*
* Read @len bytes to @buffer from the compressed I/O channel.
*
- * Returns the number of bytes written
+ * Returns the number of bytes read.
*/
static int
xmlGzfileRead (void * context, char * buffer, int len) {
@@ -1332,7 +1241,7 @@ xmlGzfileClose (void * context) {
if (ret < 0) xmlIOErr(0, "gzclose()");
return(ret);
}
-#endif /* HAVE_ZLIB_H */
+#endif /* LIBXML_ZLIB_ENABLED */
#ifdef LIBXML_LZMA_ENABLED
/************************************************************************
@@ -1471,7 +1380,7 @@ typedef struct xmlIOHTTPWriteCtxt_
} xmlIOHTTPWriteCtxt, *xmlIOHTTPWriteCtxtPtr;
-#ifdef HAVE_ZLIB_H
+#ifdef LIBXML_ZLIB_ENABLED
#define DFLT_WBITS ( -15 )
#define DFLT_MEM_LVL ( 8 )
@@ -1674,7 +1583,7 @@ xmlZMemBuffExtend( xmlZMemBuffPtr buff, size_t ext_amt ) {
xmlStrPrintf(msg, 500,
"xmlZMemBuffExtend: %s %lu bytes.\n",
"Allocation failure extending output buffer to",
- new_size );
+ (unsigned long) new_size );
xmlIOErr(XML_IO_WRITE, (const char *) msg);
}
@@ -1799,7 +1708,7 @@ xmlZMemBuffGetContent( xmlZMemBuffPtr buff, char ** data_ref ) {
return ( zlgth );
}
#endif /* LIBXML_OUTPUT_ENABLED */
-#endif /* HAVE_ZLIB_H */
+#endif /* LIBXML_ZLIB_ENABLED */
#ifdef LIBXML_OUTPUT_ENABLED
/**
@@ -1818,7 +1727,7 @@ xmlFreeHTTPWriteCtxt( xmlIOHTTPWriteCtxtPtr ctxt )
if ( ctxt->doc_buff != NULL ) {
-#ifdef HAVE_ZLIB_H
+#ifdef LIBXML_ZLIB_ENABLED
if ( ctxt->compression > 0 ) {
xmlFreeZMemBuff( ctxt->doc_buff );
}
@@ -1876,7 +1785,7 @@ xmlIOHTTPOpen (const char *filename) {
*/
void *
-xmlIOHTTPOpenW(const char *post_uri, int compression)
+xmlIOHTTPOpenW(const char *post_uri, int compression ATTRIBUTE_UNUSED)
{
xmlIOHTTPWriteCtxtPtr ctxt = NULL;
@@ -1905,7 +1814,7 @@ xmlIOHTTPOpenW(const char *post_uri, int compression)
* ** is being used to avoid pushing the data to disk and back.
*/
-#ifdef HAVE_ZLIB_H
+#ifdef LIBXML_ZLIB_ENABLED
if ((compression > 0) && (compression <= 9)) {
ctxt->compression = compression;
@@ -1985,7 +1894,7 @@ xmlIOHTTPWrite( void * context, const char * buffer, int len ) {
/* Use gzwrite or fwrite as previously setup in the open call */
-#ifdef HAVE_ZLIB_H
+#ifdef LIBXML_ZLIB_ENABLED
if ( ctxt->compression > 0 )
len = xmlZMemBuffAppend( ctxt->doc_buff, buffer, len );
@@ -2049,7 +1958,7 @@ xmlIOHTTPCloseWrite( void * context, const char * http_mthd ) {
/* Retrieve the content from the appropriate buffer */
-#ifdef HAVE_ZLIB_H
+#ifdef LIBXML_ZLIB_ENABLED
if ( ctxt->compression > 0 ) {
content_lgth = xmlZMemBuffGetContent( ctxt->doc_buff, &http_content );
@@ -2318,16 +2227,12 @@ xmlRegisterDefaultInputCallbacks(void) {
if (xmlInputCallbackInitialized)
return;
-#if defined(_WIN32) || defined (__DJGPP__) && !defined (__CYGWIN__)
- xmlInitPlatformSpecificIo();
-#endif
-
xmlRegisterInputCallbacks(xmlFileMatch, xmlFileOpen,
xmlFileRead, xmlFileClose);
-#ifdef HAVE_ZLIB_H
+#ifdef LIBXML_ZLIB_ENABLED
xmlRegisterInputCallbacks(xmlGzfileMatch, xmlGzfileOpen,
xmlGzfileRead, xmlGzfileClose);
-#endif /* HAVE_ZLIB_H */
+#endif /* LIBXML_ZLIB_ENABLED */
#ifdef LIBXML_LZMA_ENABLED
xmlRegisterInputCallbacks(xmlXzfileMatch, xmlXzfileOpen,
xmlXzfileRead, xmlXzfileClose);
@@ -2356,10 +2261,6 @@ xmlRegisterDefaultOutputCallbacks (void) {
if (xmlOutputCallbackInitialized)
return;
-#if defined(_WIN32) || defined (__DJGPP__) && !defined (__CYGWIN__)
- xmlInitPlatformSpecificIo();
-#endif
-
xmlRegisterOutputCallbacks(xmlFileMatch, xmlFileOpenW,
xmlFileWrite, xmlFileClose);
@@ -2373,7 +2274,7 @@ xmlRegisterDefaultOutputCallbacks (void) {
uncompressed ones except opening if existing then closing
and saving with same compression ratio ... a pain.
-#ifdef HAVE_ZLIB_H
+#ifdef LIBXML_ZLIB_ENABLED
xmlRegisterOutputCallbacks(xmlGzfileMatch, xmlGzfileOpen,
xmlGzfileWrite, xmlGzfileClose);
#endif
@@ -2663,7 +2564,7 @@ __xmlParserInputBufferCreateFilename(const char *URI, xmlCharEncoding enc) {
ret->context = context;
ret->readcallback = xmlInputCallbackTable[i].readcallback;
ret->closecallback = xmlInputCallbackTable[i].closecallback;
-#ifdef HAVE_ZLIB_H
+#ifdef LIBXML_ZLIB_ENABLED
if ((xmlInputCallbackTable[i].opencallback == xmlGzfileOpen) &&
(strcmp(URI, "-") != 0)) {
#if defined(ZLIB_VERNUM) && ZLIB_VERNUM >= 0x1230
@@ -2727,7 +2628,7 @@ __xmlOutputBufferCreateFilename(const char *URI,
int i = 0;
void *context = NULL;
char *unescaped = NULL;
-#ifdef HAVE_ZLIB_H
+#ifdef LIBXML_ZLIB_ENABLED
int is_file_uri = 1;
#endif
@@ -2738,7 +2639,7 @@ __xmlOutputBufferCreateFilename(const char *URI,
puri = xmlParseURI(URI);
if (puri != NULL) {
-#ifdef HAVE_ZLIB_H
+#ifdef LIBXML_ZLIB_ENABLED
if ((puri->scheme != NULL) &&
(!xmlStrEqual(BAD_CAST puri->scheme, BAD_CAST "file")))
is_file_uri = 0;
@@ -2758,7 +2659,7 @@ __xmlOutputBufferCreateFilename(const char *URI,
* try with an unescaped version of the URI
*/
if (unescaped != NULL) {
-#ifdef HAVE_ZLIB_H
+#ifdef LIBXML_ZLIB_ENABLED
if ((compression > 0) && (compression <= 9) && (is_file_uri == 1)) {
context = xmlGzfileOpenW(unescaped, compression);
if (context != NULL) {
@@ -2776,7 +2677,7 @@ __xmlOutputBufferCreateFilename(const char *URI,
for (i = xmlOutputCallbackNr - 1;i >= 0;i--) {
if ((xmlOutputCallbackTable[i].matchcallback != NULL) &&
(xmlOutputCallbackTable[i].matchcallback(unescaped) != 0)) {
-#if defined(LIBXML_HTTP_ENABLED) && defined(HAVE_ZLIB_H)
+#if defined(LIBXML_HTTP_ENABLED) && defined(LIBXML_ZLIB_ENABLED)
/* Need to pass compression parameter into HTTP open calls */
if (xmlOutputCallbackTable[i].matchcallback == xmlIOHTTPMatch)
context = xmlIOHTTPOpenW(unescaped, compression);
@@ -2795,7 +2696,7 @@ __xmlOutputBufferCreateFilename(const char *URI,
* filename
*/
if (context == NULL) {
-#ifdef HAVE_ZLIB_H
+#ifdef LIBXML_ZLIB_ENABLED
if ((compression > 0) && (compression <= 9) && (is_file_uri == 1)) {
context = xmlGzfileOpenW(URI, compression);
if (context != NULL) {
@@ -2812,7 +2713,7 @@ __xmlOutputBufferCreateFilename(const char *URI,
for (i = xmlOutputCallbackNr - 1;i >= 0;i--) {
if ((xmlOutputCallbackTable[i].matchcallback != NULL) &&
(xmlOutputCallbackTable[i].matchcallback(URI) != 0)) {
-#if defined(LIBXML_HTTP_ENABLED) && defined(HAVE_ZLIB_H)
+#if defined(LIBXML_HTTP_ENABLED) && defined(LIBXML_ZLIB_ENABLED)
/* Need to pass compression parameter into HTTP open calls */
if (xmlOutputCallbackTable[i].matchcallback == xmlIOHTTPMatch)
context = xmlIOHTTPOpenW(URI, compression);
@@ -2942,10 +2843,8 @@ xmlOutputBufferCreateBuffer(xmlBufferPtr buffer,
if (buffer == NULL) return(NULL);
- ret = xmlOutputBufferCreateIO((xmlOutputWriteCallback)
- xmlBufferWrite,
- (xmlOutputCloseCallback)
- NULL, (void *) buffer, encoder);
+ ret = xmlOutputBufferCreateIO(xmlBufferWrite, NULL, (void *) buffer,
+ encoder);
return(ret);
}
@@ -3003,7 +2902,7 @@ xmlParserInputBufferCreateFd(int fd, xmlCharEncoding enc) {
ret = xmlAllocParserInputBuffer(enc);
if (ret != NULL) {
- ret->context = (void *) (long) fd;
+ ret->context = (void *) (ptrdiff_t) fd;
ret->readcallback = xmlFdRead;
ret->closecallback = xmlFdClose;
}
@@ -3027,13 +2926,13 @@ xmlParserInputBufferCreateMem(const char *mem, int size, xmlCharEncoding enc) {
xmlParserInputBufferPtr ret;
int errcode;
- if (size <= 0) return(NULL);
+ if (size < 0) return(NULL);
if (mem == NULL) return(NULL);
ret = xmlAllocParserInputBuffer(enc);
if (ret != NULL) {
ret->context = (void *) mem;
- ret->readcallback = (xmlInputReadCallback) xmlNop;
+ ret->readcallback = xmlInputReadCallbackNop;
ret->closecallback = NULL;
errcode = xmlBufAdd(ret->buffer, (const xmlChar *) mem, size);
if (errcode != 0) {
@@ -3063,7 +2962,7 @@ xmlParserInputBufferCreateStatic(const char *mem, int size,
xmlCharEncoding enc) {
xmlParserInputBufferPtr ret;
- if (size <= 0) return(NULL);
+ if (size < 0) return(NULL);
if (mem == NULL) return(NULL);
ret = (xmlParserInputBufferPtr) xmlMalloc(sizeof(xmlParserInputBuffer));
@@ -3109,7 +3008,7 @@ xmlOutputBufferCreateFd(int fd, xmlCharEncodingHandlerPtr encoder) {
ret = xmlAllocOutputBufferInternal(encoder);
if (ret != NULL) {
- ret->context = (void *) (long) fd;
+ ret->context = (void *) (ptrdiff_t) fd;
ret->writecallback = xmlFdWrite;
ret->closecallback = NULL;
}
@@ -3258,7 +3157,7 @@ xmlParserInputBufferPush(xmlParserInputBufferPtr in,
* convert as much as possible to the parser reading buffer.
*/
use = xmlBufUse(in->raw);
- nbchars = xmlCharEncInput(in, 1);
+ nbchars = xmlCharEncInput(in, 0);
if (nbchars < 0) {
xmlIOErr(XML_IO_ENCODER, NULL);
in->error = XML_IO_ENCODER;
@@ -3374,7 +3273,7 @@ xmlParserInputBufferGrow(xmlParserInputBufferPtr in, int len) {
* convert as much as possible to the parser reading buffer.
*/
use = xmlBufUse(in->raw);
- nbchars = xmlCharEncInput(in, 1);
+ nbchars = xmlCharEncInput(in, 0);
if (nbchars < 0) {
xmlIOErr(XML_IO_ENCODER, NULL);
in->error = XML_IO_ENCODER;
@@ -3823,7 +3722,7 @@ xmlParserGetDirectory(const char *filename) {
if (filename == NULL) return(NULL);
-#if defined(WIN32) && !defined(__CYGWIN__)
+#if defined(_WIN32) && !defined(__CYGWIN__)
# define IS_XMLPGD_SEP(ch) ((ch=='/')||(ch=='\\'))
#else
# define IS_XMLPGD_SEP(ch) (ch=='/')
diff --git a/xmlcatalog.c b/xmlcatalog.c
index 006f0cc9..c02b97f6 100644
--- a/xmlcatalog.c
+++ b/xmlcatalog.c
@@ -312,7 +312,8 @@ static void usage(const char *name) {
/* split into 2 printf's to avoid overly long string (gcc warning) */
printf("\
Usage : %s [options] catalogfile entities...\n\
-\tParse the catalog file and query it for the entities\n\
+\tParse the catalog file (void specification possibly expressed as \"\"\n\
+\tappoints the default system one) and query it for the entities\n\
\t--sgml : handle SGML Super catalogs for --add and --del\n\
\t--shell : run a shell allowing interactive queries\n\
\t--create : create a new catalog\n\
@@ -408,11 +409,18 @@ int main(int argc, char **argv) {
continue;
} else if (argv[i][0] == '-')
continue;
- filename = argv[i];
+
+ if (filename == NULL && argv[i][0] == '\0') {
+ /* Interpret empty-string catalog specification as
+ a shortcut for a default system catalog. */
+ xmlInitializeCatalog();
+ } else {
+ filename = argv[i];
ret = xmlLoadCatalog(argv[i]);
if ((ret < 0) && (create)) {
xmlCatalogAdd(BAD_CAST "catalog", BAD_CAST argv[i], NULL);
}
+ }
break;
}
diff --git a/xmllint.c b/xmllint.c
index 67f7adb2..65125409 100644
--- a/xmllint.c
+++ b/xmllint.c
@@ -12,14 +12,6 @@
#include <stdarg.h>
#include <assert.h>
-#if defined (_WIN32) && !defined(__CYGWIN__)
-#if defined (_MSC_VER) || defined(__BORLANDC__)
-#include <winsock2.h>
-#pragma comment(lib, "ws2_32.lib")
-#define gettimeofday(p1,p2)
-#endif /* _MSC_VER */
-#endif /* _WIN32 */
-
#ifdef HAVE_SYS_TIME_H
#include <sys/time.h>
#endif
@@ -27,14 +19,6 @@
#include <time.h>
#endif
-#ifdef __MINGW32__
-#define _WINSOCKAPI_
-#include <wsockcompat.h>
-#include <winsock2.h>
-#undef XML_SOCKLEN_T
-#define XML_SOCKLEN_T unsigned int
-#endif
-
#ifdef HAVE_SYS_TIMEB_H
#include <sys/timeb.h>
#endif
@@ -830,13 +814,14 @@ xmlShellReadline(char *prompt) {
* *
************************************************************************/
-static int myRead(FILE *f, char * buf, int len) {
- return(fread(buf, 1, len, f));
+static int myRead(void *f, char *buf, int len) {
+ return(fread(buf, 1, len, (FILE *) f));
}
-static void myClose(FILE *f) {
- if (f != stdin) {
- fclose(f);
- }
+static int myClose(void *context) {
+ FILE *f = (FILE *) context;
+ if (f == stdin)
+ return(0);
+ return(fclose(f));
}
/************************************************************************
@@ -2319,14 +2304,11 @@ static void parseAndPrintFile(char *filename, xmlParserCtxtPtr rectxt) {
#endif
if (f != NULL) {
if (rectxt == NULL)
- doc = xmlReadIO((xmlInputReadCallback) myRead,
- (xmlInputCloseCallback) myClose, f,
- filename, NULL, options);
+ doc = xmlReadIO(myRead, myClose, f, filename, NULL,
+ options);
else
- doc = xmlCtxtReadIO(rectxt,
- (xmlInputReadCallback) myRead,
- (xmlInputCloseCallback) myClose, f,
- filename, NULL, options);
+ doc = xmlCtxtReadIO(rectxt, myRead, myClose, f,
+ filename, NULL, options);
} else
doc = NULL;
}
@@ -2991,124 +2973,124 @@ static void showVersion(const char *name) {
fprintf(stderr, "\n");
}
-static void usage(const char *name) {
- printf("Usage : %s [options] XMLfiles ...\n", name);
+static void usage(FILE *f, const char *name) {
+ fprintf(f, "Usage : %s [options] XMLfiles ...\n", name);
#ifdef LIBXML_OUTPUT_ENABLED
- printf("\tParse the XML files and output the result of the parsing\n");
+ fprintf(f, "\tParse the XML files and output the result of the parsing\n");
#else
- printf("\tParse the XML files\n");
+ fprintf(f, "\tParse the XML files\n");
#endif /* LIBXML_OUTPUT_ENABLED */
- printf("\t--version : display the version of the XML library used\n");
+ fprintf(f, "\t--version : display the version of the XML library used\n");
#ifdef LIBXML_DEBUG_ENABLED
- printf("\t--debug : dump a debug tree of the in-memory document\n");
- printf("\t--shell : run a navigating shell\n");
- printf("\t--debugent : debug the entities defined in the document\n");
+ fprintf(f, "\t--debug : dump a debug tree of the in-memory document\n");
+ fprintf(f, "\t--shell : run a navigating shell\n");
+ fprintf(f, "\t--debugent : debug the entities defined in the document\n");
#else
#ifdef LIBXML_READER_ENABLED
- printf("\t--debug : dump the nodes content when using --stream\n");
+ fprintf(f, "\t--debug : dump the nodes content when using --stream\n");
#endif /* LIBXML_READER_ENABLED */
#endif
#ifdef LIBXML_TREE_ENABLED
- printf("\t--copy : used to test the internal copy implementation\n");
+ fprintf(f, "\t--copy : used to test the internal copy implementation\n");
#endif /* LIBXML_TREE_ENABLED */
- printf("\t--recover : output what was parsable on broken XML documents\n");
- printf("\t--huge : remove any internal arbitrary parser limits\n");
- printf("\t--noent : substitute entity references by their value\n");
- printf("\t--noenc : ignore any encoding specified inside the document\n");
- printf("\t--noout : don't output the result tree\n");
- printf("\t--path 'paths': provide a set of paths for resources\n");
- printf("\t--load-trace : print trace of all external entities loaded\n");
- printf("\t--nonet : refuse to fetch DTDs or entities over network\n");
- printf("\t--nocompact : do not generate compact text nodes\n");
- printf("\t--htmlout : output results as HTML\n");
- printf("\t--nowrap : do not put HTML doc wrapper\n");
+ fprintf(f, "\t--recover : output what was parsable on broken XML documents\n");
+ fprintf(f, "\t--huge : remove any internal arbitrary parser limits\n");
+ fprintf(f, "\t--noent : substitute entity references by their value\n");
+ fprintf(f, "\t--noenc : ignore any encoding specified inside the document\n");
+ fprintf(f, "\t--noout : don't output the result tree\n");
+ fprintf(f, "\t--path 'paths': provide a set of paths for resources\n");
+ fprintf(f, "\t--load-trace : print trace of all external entities loaded\n");
+ fprintf(f, "\t--nonet : refuse to fetch DTDs or entities over network\n");
+ fprintf(f, "\t--nocompact : do not generate compact text nodes\n");
+ fprintf(f, "\t--htmlout : output results as HTML\n");
+ fprintf(f, "\t--nowrap : do not put HTML doc wrapper\n");
#ifdef LIBXML_VALID_ENABLED
- printf("\t--valid : validate the document in addition to std well-formed check\n");
- printf("\t--postvalid : do a posteriori validation, i.e after parsing\n");
- printf("\t--dtdvalid URL : do a posteriori validation against a given DTD\n");
- printf("\t--dtdvalidfpi FPI : same but name the DTD with a Public Identifier\n");
+ fprintf(f, "\t--valid : validate the document in addition to std well-formed check\n");
+ fprintf(f, "\t--postvalid : do a posteriori validation, i.e after parsing\n");
+ fprintf(f, "\t--dtdvalid URL : do a posteriori validation against a given DTD\n");
+ fprintf(f, "\t--dtdvalidfpi FPI : same but name the DTD with a Public Identifier\n");
#endif /* LIBXML_VALID_ENABLED */
- printf("\t--timing : print some timings\n");
- printf("\t--output file or -o file: save to a given file\n");
- printf("\t--repeat : repeat 100 times, for timing or profiling\n");
- printf("\t--insert : ad-hoc test for valid insertions\n");
+ fprintf(f, "\t--timing : print some timings\n");
+ fprintf(f, "\t--output file or -o file: save to a given file\n");
+ fprintf(f, "\t--repeat : repeat 100 times, for timing or profiling\n");
+ fprintf(f, "\t--insert : ad-hoc test for valid insertions\n");
#ifdef LIBXML_OUTPUT_ENABLED
-#ifdef HAVE_ZLIB_H
- printf("\t--compress : turn on gzip compression of output\n");
+#ifdef LIBXML_ZLIB_ENABLED
+ fprintf(f, "\t--compress : turn on gzip compression of output\n");
#endif
#endif /* LIBXML_OUTPUT_ENABLED */
#ifdef LIBXML_HTML_ENABLED
- printf("\t--html : use the HTML parser\n");
- printf("\t--xmlout : force to use the XML serializer when using --html\n");
- printf("\t--nodefdtd : do not default HTML doctype\n");
+ fprintf(f, "\t--html : use the HTML parser\n");
+ fprintf(f, "\t--xmlout : force to use the XML serializer when using --html\n");
+ fprintf(f, "\t--nodefdtd : do not default HTML doctype\n");
#endif
#ifdef LIBXML_PUSH_ENABLED
- printf("\t--push : use the push mode of the parser\n");
- printf("\t--pushsmall : use the push mode of the parser using tiny increments\n");
+ fprintf(f, "\t--push : use the push mode of the parser\n");
+ fprintf(f, "\t--pushsmall : use the push mode of the parser using tiny increments\n");
#endif /* LIBXML_PUSH_ENABLED */
#ifdef HAVE_MMAP
- printf("\t--memory : parse from memory\n");
+ fprintf(f, "\t--memory : parse from memory\n");
#endif
- printf("\t--maxmem nbbytes : limits memory allocation to nbbytes bytes\n");
- printf("\t--nowarning : do not emit warnings from parser/validator\n");
- printf("\t--noblanks : drop (ignorable?) blanks spaces\n");
- printf("\t--nocdata : replace cdata section with text nodes\n");
+ fprintf(f, "\t--maxmem nbbytes : limits memory allocation to nbbytes bytes\n");
+ fprintf(f, "\t--nowarning : do not emit warnings from parser/validator\n");
+ fprintf(f, "\t--noblanks : drop (ignorable?) blanks spaces\n");
+ fprintf(f, "\t--nocdata : replace cdata section with text nodes\n");
#ifdef LIBXML_OUTPUT_ENABLED
- printf("\t--format : reformat/reindent the output\n");
- printf("\t--encode encoding : output in the given encoding\n");
- printf("\t--dropdtd : remove the DOCTYPE of the input docs\n");
- printf("\t--pretty STYLE : pretty-print in a particular style\n");
- printf("\t 0 Do not pretty print\n");
- printf("\t 1 Format the XML content, as --format\n");
- printf("\t 2 Add whitespace inside tags, preserving content\n");
+ fprintf(f, "\t--format : reformat/reindent the output\n");
+ fprintf(f, "\t--encode encoding : output in the given encoding\n");
+ fprintf(f, "\t--dropdtd : remove the DOCTYPE of the input docs\n");
+ fprintf(f, "\t--pretty STYLE : pretty-print in a particular style\n");
+ fprintf(f, "\t 0 Do not pretty print\n");
+ fprintf(f, "\t 1 Format the XML content, as --format\n");
+ fprintf(f, "\t 2 Add whitespace inside tags, preserving content\n");
#endif /* LIBXML_OUTPUT_ENABLED */
- printf("\t--c14n : save in W3C canonical format v1.0 (with comments)\n");
- printf("\t--c14n11 : save in W3C canonical format v1.1 (with comments)\n");
- printf("\t--exc-c14n : save in W3C exclusive canonical format (with comments)\n");
+ fprintf(f, "\t--c14n : save in W3C canonical format v1.0 (with comments)\n");
+ fprintf(f, "\t--c14n11 : save in W3C canonical format v1.1 (with comments)\n");
+ fprintf(f, "\t--exc-c14n : save in W3C exclusive canonical format (with comments)\n");
#ifdef LIBXML_C14N_ENABLED
#endif /* LIBXML_C14N_ENABLED */
- printf("\t--nsclean : remove redundant namespace declarations\n");
- printf("\t--testIO : test user I/O support\n");
+ fprintf(f, "\t--nsclean : remove redundant namespace declarations\n");
+ fprintf(f, "\t--testIO : test user I/O support\n");
#ifdef LIBXML_CATALOG_ENABLED
- printf("\t--catalogs : use SGML catalogs from $SGML_CATALOG_FILES\n");
- printf("\t otherwise XML Catalogs starting from \n");
- printf("\t %s are activated by default\n", XML_XML_DEFAULT_CATALOG);
- printf("\t--nocatalogs: deactivate all catalogs\n");
+ fprintf(f, "\t--catalogs : use SGML catalogs from $SGML_CATALOG_FILES\n");
+ fprintf(f, "\t otherwise XML Catalogs starting from \n");
+ fprintf(f, "\t %s are activated by default\n", XML_XML_DEFAULT_CATALOG);
+ fprintf(f, "\t--nocatalogs: deactivate all catalogs\n");
#endif
- printf("\t--auto : generate a small doc on the fly\n");
+ fprintf(f, "\t--auto : generate a small doc on the fly\n");
#ifdef LIBXML_XINCLUDE_ENABLED
- printf("\t--xinclude : do XInclude processing\n");
- printf("\t--noxincludenode : same but do not generate XInclude nodes\n");
- printf("\t--nofixup-base-uris : do not fixup xml:base uris\n");
+ fprintf(f, "\t--xinclude : do XInclude processing\n");
+ fprintf(f, "\t--noxincludenode : same but do not generate XInclude nodes\n");
+ fprintf(f, "\t--nofixup-base-uris : do not fixup xml:base uris\n");
#endif
- printf("\t--loaddtd : fetch external DTD\n");
- printf("\t--dtdattr : loaddtd + populate the tree with inherited attributes \n");
+ fprintf(f, "\t--loaddtd : fetch external DTD\n");
+ fprintf(f, "\t--dtdattr : loaddtd + populate the tree with inherited attributes \n");
#ifdef LIBXML_READER_ENABLED
- printf("\t--stream : use the streaming interface to process very large files\n");
- printf("\t--walker : create a reader and walk though the resulting doc\n");
+ fprintf(f, "\t--stream : use the streaming interface to process very large files\n");
+ fprintf(f, "\t--walker : create a reader and walk though the resulting doc\n");
#endif /* LIBXML_READER_ENABLED */
#ifdef LIBXML_PATTERN_ENABLED
- printf("\t--pattern pattern_value : test the pattern support\n");
+ fprintf(f, "\t--pattern pattern_value : test the pattern support\n");
#endif
- printf("\t--chkregister : verify the node registration code\n");
+ fprintf(f, "\t--chkregister : verify the node registration code\n");
#ifdef LIBXML_SCHEMAS_ENABLED
- printf("\t--relaxng schema : do RelaxNG validation against the schema\n");
- printf("\t--schema schema : do validation against the WXS schema\n");
+ fprintf(f, "\t--relaxng schema : do RelaxNG validation against the schema\n");
+ fprintf(f, "\t--schema schema : do validation against the WXS schema\n");
#endif
#ifdef LIBXML_SCHEMATRON_ENABLED
- printf("\t--schematron schema : do validation against a schematron\n");
+ fprintf(f, "\t--schematron schema : do validation against a schematron\n");
#endif
#ifdef LIBXML_SAX1_ENABLED
- printf("\t--sax1: use the old SAX1 interfaces for processing\n");
+ fprintf(f, "\t--sax1: use the old SAX1 interfaces for processing\n");
#endif
- printf("\t--sax: do not build a tree but work just at the SAX level\n");
- printf("\t--oldxml10: use XML-1.0 parsing rules before the 5th edition\n");
+ fprintf(f, "\t--sax: do not build a tree but work just at the SAX level\n");
+ fprintf(f, "\t--oldxml10: use XML-1.0 parsing rules before the 5th edition\n");
#ifdef LIBXML_XPATH_ENABLED
- printf("\t--xpath expr: evaluate the XPath expression, imply --noout\n");
+ fprintf(f, "\t--xpath expr: evaluate the XPath expression, imply --noout\n");
#endif
- printf("\nLibxml project home page: http://xmlsoft.org/\n");
- printf("To report bugs or get some help check: http://xmlsoft.org/bugs.html\n");
+ fprintf(f, "\nLibxml project home page: http://xmlsoft.org/\n");
+ fprintf(f, "To report bugs or get some help check: http://xmlsoft.org/bugs.html\n");
}
static void registerNode(xmlNodePtr node)
@@ -3138,7 +3120,7 @@ main(int argc, char **argv) {
const char* indent;
if (argc <= 1) {
- usage(argv[0]);
+ usage(stderr, argv[0]);
return(1);
}
LIBXML_TEST_VERSION
@@ -3313,7 +3295,7 @@ main(int argc, char **argv) {
}
#endif
#ifdef LIBXML_OUTPUT_ENABLED
-#ifdef HAVE_ZLIB_H
+#ifdef LIBXML_ZLIB_ENABLED
else if ((!strcmp(argv[i], "-compress")) ||
(!strcmp(argv[i], "--compress"))) {
compress++;
@@ -3490,7 +3472,7 @@ main(int argc, char **argv) {
options |= XML_PARSE_OLD10;
} else {
fprintf(stderr, "Unknown option %s\n", argv[i]);
- usage(argv[0]);
+ usage(stderr, argv[0]);
return(1);
}
}
@@ -3784,7 +3766,7 @@ main(int argc, char **argv) {
xmlGenericError(xmlGenericErrorContext, "</body></html>\n");
}
if ((files == 0) && (!generate) && (version == 0)) {
- usage(argv[0]);
+ usage(stderr, argv[0]);
}
#ifdef LIBXML_SCHEMATRON_ENABLED
if (wxschematron != NULL)
diff --git a/xmlmemory.c b/xmlmemory.c
index f08c8c3d..6f16c4b3 100644
--- a/xmlmemory.c
+++ b/xmlmemory.c
@@ -111,7 +111,7 @@ typedef struct memnod {
#define MAX_SIZE_T ((size_t)-1)
-#define CLIENT_2_HDR(a) ((MEMHDR *) (((char *) (a)) - RESERVE_SIZE))
+#define CLIENT_2_HDR(a) ((void *) (((char *) (a)) - RESERVE_SIZE))
#define HDR_2_CLIENT(a) ((void *) (((char *) (a)) + RESERVE_SIZE))
@@ -172,6 +172,13 @@ xmlMallocLoc(size_t size, const char * file, int line)
TEST_POINT
+ if (size > (MAX_SIZE_T - RESERVE_SIZE)) {
+ xmlGenericError(xmlGenericErrorContext,
+ "xmlMallocLoc : Unsigned overflow\n");
+ xmlMemoryDump();
+ return(NULL);
+ }
+
p = (MEMHDR *) malloc(RESERVE_SIZE+size);
if (!p) {
@@ -243,7 +250,7 @@ xmlMallocAtomicLoc(size_t size, const char * file, int line)
if (size > (MAX_SIZE_T - RESERVE_SIZE)) {
xmlGenericError(xmlGenericErrorContext,
- "xmlMallocAtomicLoc : Unsigned overflow prevented\n");
+ "xmlMallocAtomicLoc : Unsigned overflow\n");
xmlMemoryDump();
return(NULL);
}
@@ -352,6 +359,13 @@ xmlReallocLoc(void *ptr,size_t size, const char * file, int line)
#endif
xmlMutexUnlock(xmlMemMutex);
+ if (size > (MAX_SIZE_T - RESERVE_SIZE)) {
+ xmlGenericError(xmlGenericErrorContext,
+ "xmlReallocLoc : Unsigned overflow\n");
+ xmlMemoryDump();
+ return(NULL);
+ }
+
tmp = (MEMHDR *) realloc(p,RESERVE_SIZE+size);
if (!tmp) {
free(p);
@@ -473,7 +487,7 @@ xmlMemFree(void *ptr)
error:
xmlGenericError(xmlGenericErrorContext,
- "xmlMemFree(%lX) error\n", (unsigned long) ptr);
+ "xmlMemFree(%p) error\n", ptr);
xmlMallocBreakpoint();
return;
}
@@ -499,6 +513,13 @@ xmlMemStrdupLoc(const char *str, const char *file, int line)
if (!xmlMemInitialized) xmlInitMemory();
TEST_POINT
+ if (size > (MAX_SIZE_T - RESERVE_SIZE)) {
+ xmlGenericError(xmlGenericErrorContext,
+ "xmlMemStrdupLoc : Unsigned overflow\n");
+ xmlMemoryDump();
+ return(NULL);
+ }
+
p = (MEMHDR *) malloc(RESERVE_SIZE+size);
if (!p) {
goto error;
diff --git a/xmlmodule.c b/xmlmodule.c
index 50ed666a..a95ab66a 100644
--- a/xmlmodule.c
+++ b/xmlmodule.c
@@ -8,6 +8,11 @@
* http://www.fortran-2000.com/ArnaudRecipes/sharedlib.html
*/
+/* In order RTLD_GLOBAL and RTLD_NOW to be defined on zOS */
+#if defined(__MVS__)
+#define _UNIX03_SOURCE
+#endif
+
#define IN_LIBXML
#include "libxml.h"
@@ -296,8 +301,9 @@ xmlModulePlatformSymbol(void *handle, const char *name, void **symbol)
#endif /* HAVE_SHLLOAD */
#endif /* ! HAVE_DLOPEN */
-#ifdef _WIN32
+#if defined(_WIN32) && !defined(__CYGWIN__)
+#define WIN32_LEAN_AND_MEAN
#include <windows.h>
/*
@@ -334,6 +340,7 @@ xmlModulePlatformClose(void *handle)
static int
xmlModulePlatformSymbol(void *handle, const char *name, void **symbol)
{
+XML_IGNORE_PEDANTIC_WARNINGS
#ifdef _WIN32_WCE
/*
* GetProcAddressA seems only available on WinCE
@@ -343,6 +350,7 @@ xmlModulePlatformSymbol(void *handle, const char *name, void **symbol)
*symbol = GetProcAddress(handle, name);
#endif
return (NULL == *symbol) ? -1 : 0;
+XML_POP_WARNINGS
}
#endif /* _WIN32 */
diff --git a/xmlreader.c b/xmlreader.c
index f285790b..4053269b 100644
--- a/xmlreader.c
+++ b/xmlreader.c
@@ -491,6 +491,11 @@ xmlTextReaderFreeNode(xmlTextReaderPtr reader, xmlNodePtr cur) {
}
}
+static void
+xmlTextReaderFreeIDTableEntry(void *id, const xmlChar *name ATTRIBUTE_UNUSED) {
+ xmlFreeID((xmlIDPtr) id);
+}
+
/**
* xmlTextReaderFreeIDTable:
* @table: An id table
@@ -499,7 +504,7 @@ xmlTextReaderFreeNode(xmlTextReaderPtr reader, xmlNodePtr cur) {
*/
static void
xmlTextReaderFreeIDTable(xmlIDTablePtr table) {
- xmlHashFree(table, (xmlHashDeallocator) xmlFreeID);
+ xmlHashFree(table, xmlTextReaderFreeIDTableEntry);
}
/**
@@ -3982,7 +3987,7 @@ xmlTextReaderPreserve(xmlTextReaderPtr reader) {
* pattern. The caller must also use xmlTextReaderCurrentDoc() to
* keep an handle on the resulting document once parsing has finished
*
- * Returns a positive number in case of success and -1 in case of error
+ * Returns a non-negative number in case of success and -1 in case of error
*/
int
xmlTextReaderPreservePattern(xmlTextReaderPtr reader, const xmlChar *pattern,
diff --git a/xmlregexp.c b/xmlregexp.c
index ca3b4f46..d255fbf0 100644
--- a/xmlregexp.c
+++ b/xmlregexp.c
@@ -2810,18 +2810,21 @@ xmlRegCheckCharacterRange(xmlRegAtomType type, int codepoint, int neg,
break;
case XML_REGEXP_NOTSPACE:
neg = !neg;
+ /* Falls through. */
case XML_REGEXP_ANYSPACE:
ret = ((codepoint == '\n') || (codepoint == '\r') ||
(codepoint == '\t') || (codepoint == ' '));
break;
case XML_REGEXP_NOTINITNAME:
neg = !neg;
+ /* Falls through. */
case XML_REGEXP_INITNAME:
ret = (IS_LETTER(codepoint) ||
(codepoint == '_') || (codepoint == ':'));
break;
case XML_REGEXP_NOTNAMECHAR:
neg = !neg;
+ /* Falls through. */
case XML_REGEXP_NAMECHAR:
ret = (IS_LETTER(codepoint) || IS_DIGIT(codepoint) ||
(codepoint == '.') || (codepoint == '-') ||
@@ -2830,11 +2833,13 @@ xmlRegCheckCharacterRange(xmlRegAtomType type, int codepoint, int neg,
break;
case XML_REGEXP_NOTDECIMAL:
neg = !neg;
+ /* Falls through. */
case XML_REGEXP_DECIMAL:
ret = xmlUCSIsCatNd(codepoint);
break;
case XML_REGEXP_REALCHAR:
neg = !neg;
+ /* Falls through. */
case XML_REGEXP_NOTREALCHAR:
ret = xmlUCSIsCatP(codepoint);
if (ret == 0)
@@ -4089,8 +4094,9 @@ rollback:
xmlFree(exec->errString);
exec->errString = xmlStrdup(value);
exec->errState = exec->state;
- memcpy(exec->errCounts, exec->counts,
- exec->comp->nbCounters * sizeof(int));
+ if (exec->comp->nbCounters)
+ memcpy(exec->errCounts, exec->counts,
+ exec->comp->nbCounters * sizeof(int));
}
/*
@@ -4880,7 +4886,8 @@ xmlFAParseCharClassEsc(xmlRegParserCtxtPtr ctxt) {
}
NEXT;
xmlFAParseCharProp(ctxt);
- ctxt->atom->neg = 1;
+ if (ctxt->atom != NULL)
+ ctxt->atom->neg = 1;
if (CUR != '}') {
ERROR("Expecting '}'");
return;
@@ -5051,7 +5058,7 @@ xmlFAParseCharRange(xmlRegParserCtxtPtr ctxt) {
return;
}
len = 1;
- } else if ((cur != 0x5B) && (cur != 0x5D)) {
+ } else if ((cur != '\0') && (cur != 0x5B) && (cur != 0x5D)) {
end = CUR_SCHAR(ctxt->cur, len);
} else {
ERROR("Expecting the end of a char range");
diff --git a/xmlsave.c b/xmlsave.c
index 4a8e3f39..6c7418ec 100644
--- a/xmlsave.c
+++ b/xmlsave.c
@@ -1595,31 +1595,31 @@ xhtmlNodeDumpOutput(xmlSaveCtxtPtr ctxt, xmlNodePtr cur) {
if (cur->properties != NULL)
xhtmlAttrListDumpOutput(ctxt, cur->properties);
- if ((cur->type == XML_ELEMENT_NODE) &&
- (cur->parent != NULL) &&
- (cur->parent->parent == (xmlNodePtr) cur->doc) &&
- xmlStrEqual(cur->name, BAD_CAST"head") &&
- xmlStrEqual(cur->parent->name, BAD_CAST"html")) {
-
- tmp = cur->children;
- while (tmp != NULL) {
- if (xmlStrEqual(tmp->name, BAD_CAST"meta")) {
- xmlChar *httpequiv;
-
- httpequiv = xmlGetProp(tmp, BAD_CAST"http-equiv");
- if (httpequiv != NULL) {
- if (xmlStrcasecmp(httpequiv, BAD_CAST"Content-Type") == 0) {
- xmlFree(httpequiv);
- break;
- }
- xmlFree(httpequiv);
- }
- }
- tmp = tmp->next;
- }
- if (tmp == NULL)
- addmeta = 1;
- }
+ if ((cur->type == XML_ELEMENT_NODE) &&
+ (cur->parent != NULL) &&
+ (cur->parent->parent == (xmlNodePtr) cur->doc) &&
+ xmlStrEqual(cur->name, BAD_CAST"head") &&
+ xmlStrEqual(cur->parent->name, BAD_CAST"html")) {
+
+ tmp = cur->children;
+ while (tmp != NULL) {
+ if (xmlStrEqual(tmp->name, BAD_CAST"meta")) {
+ xmlChar *httpequiv;
+
+ httpequiv = xmlGetProp(tmp, BAD_CAST"http-equiv");
+ if (httpequiv != NULL) {
+ if (xmlStrcasecmp(httpequiv, BAD_CAST"Content-Type") == 0) {
+ xmlFree(httpequiv);
+ break;
+ }
+ xmlFree(httpequiv);
+ }
+ }
+ tmp = tmp->next;
+ }
+ if (tmp == NULL)
+ addmeta = 1;
+ }
if ((cur->type == XML_ELEMENT_NODE) && (cur->children == NULL)) {
if (((cur->ns == NULL) || (cur->ns->prefix == NULL)) &&
@@ -2109,8 +2109,6 @@ xmlBufAttrSerializeTxtContent(xmlBufPtr buf, xmlDocPtr doc,
xmlBufAdd(buf, base, cur - base);
if (*cur < 0xC0) {
xmlSaveErr(XML_SAVE_NOT_UTF8, (xmlNodePtr) attr, NULL);
- if (doc != NULL)
- doc->encoding = xmlStrdup(BAD_CAST "ISO-8859-1");
xmlSerializeHexCharRef(tmp, *cur);
xmlBufAdd(buf, (xmlChar *) tmp, -1);
cur++;
@@ -2140,9 +2138,6 @@ xmlBufAttrSerializeTxtContent(xmlBufPtr buf, xmlDocPtr doc,
}
if ((l == 1) || (!IS_CHAR(val))) {
xmlSaveErr(XML_SAVE_CHAR_INVALID, (xmlNodePtr) attr, NULL);
- if (doc != NULL)
- doc->encoding = xmlStrdup(BAD_CAST "ISO-8859-1");
-
xmlSerializeHexCharRef(tmp, *cur);
xmlBufAdd(buf, (xmlChar *) tmp, -1);
cur++;
@@ -2709,7 +2704,7 @@ xmlSaveFormatFileEnc( const char * filename, xmlDocPtr cur,
return(-1);
}
-#ifdef HAVE_ZLIB_H
+#ifdef LIBXML_ZLIB_ENABLED
if (cur->compression < 0) cur->compression = xmlGetCompressMode();
#endif
/*
diff --git a/xmlschemas.c b/xmlschemas.c
index 7afe2ebf..405f72ae 100644
--- a/xmlschemas.c
+++ b/xmlschemas.c
@@ -44,6 +44,12 @@
* but is done here due to performance. Move it to an other layer
* is schema construction via an API is implemented.
*/
+
+/* To avoid EBCDIC trouble when parsing on zOS */
+#if defined(__MVS__)
+#pragma convert("ISO8859-1")
+#endif
+
#define IN_LIBXML
#include "libxml.h"
@@ -166,7 +172,7 @@ static const xmlChar *xmlNamespaceNs = (const xmlChar *)
/*
* Macros for attribute uses.
*/
-#define WXS_ATTRUSE_DECL(au) WXS_ATTR_CAST (WXS_ATTR_USE_CAST (au))->attrDecl
+#define WXS_ATTRUSE_DECL(au) (WXS_ATTR_USE_CAST (au))->attrDecl
#define WXS_ATTRUSE_TYPEDEF(au) WXS_ATTR_TYPEDEF(WXS_ATTRUSE_DECL( WXS_ATTR_USE_CAST au))
@@ -363,6 +369,7 @@ typedef struct _xmlSchemaAbstractCtxt xmlSchemaAbstractCtxt;
typedef xmlSchemaAbstractCtxt *xmlSchemaAbstractCtxtPtr;
struct _xmlSchemaAbstractCtxt {
int type; /* E.g. XML_SCHEMA_CTXT_VALIDATOR */
+ void *dummy; /* Fix alignment issues */
};
typedef struct _xmlSchemaBucket xmlSchemaBucket;
@@ -473,6 +480,7 @@ typedef struct _xmlSchemaBasicItem xmlSchemaBasicItem;
typedef xmlSchemaBasicItem *xmlSchemaBasicItemPtr;
struct _xmlSchemaBasicItem {
xmlSchemaTypeType type;
+ void *dummy; /* Fix alignment issues */
};
/**
@@ -1734,6 +1742,7 @@ xmlSchemaFormatItemForReport(xmlChar **buf,
*buf = xmlStrcat(*buf, BAD_CAST "'");
FREE_AND_NULL(str);
}
+ /* Falls through. */
default:
named = 0;
}
@@ -2833,7 +2842,7 @@ xmlSchemaPResCompAttrErr(xmlSchemaParserCtxtPtr ctxt,
xmlSchemaFormatItemForReport(&des, NULL, ownerItem, ownerElem);
if (refTypeStr == NULL)
refTypeStr = (const char *) xmlSchemaItemTypeToStr(refType);
- xmlSchemaPErrExt(ctxt, ownerElem, error,
+ xmlSchemaPErrExt(ctxt, ownerElem, error,
NULL, NULL, NULL,
"%s, attribute '%s': The QName value '%s' does not resolve to a(n) "
"%s.\n", BAD_CAST des, BAD_CAST name,
@@ -3556,6 +3565,12 @@ xmlSchemaBucketFree(xmlSchemaBucketPtr bucket)
xmlFree(bucket);
}
+static void
+xmlSchemaBucketFreeEntry(void *bucket, const xmlChar *name ATTRIBUTE_UNUSED)
+{
+ xmlSchemaBucketFree((xmlSchemaBucketPtr) bucket);
+}
+
static xmlSchemaBucketPtr
xmlSchemaBucketCreate(xmlSchemaParserCtxtPtr pctxt,
int type, const xmlChar *targetNamespace)
@@ -4150,8 +4165,7 @@ xmlSchemaFree(xmlSchemaPtr schema)
xmlHashFree(schema->idcDef, NULL);
if (schema->schemasImports != NULL)
- xmlHashFree(schema->schemasImports,
- (xmlHashDeallocator) xmlSchemaBucketFree);
+ xmlHashFree(schema->schemasImports, xmlSchemaBucketFreeEntry);
if (schema->includes != NULL) {
xmlSchemaItemListPtr list = (xmlSchemaItemListPtr) schema->includes;
int i;
@@ -4187,11 +4201,13 @@ xmlSchemaTypeDump(xmlSchemaTypePtr type, FILE * output); /* forward */
* Dump the element
*/
static void
-xmlSchemaElementDump(xmlSchemaElementPtr elem, FILE * output,
+xmlSchemaElementDump(void *payload, void *data,
const xmlChar * name ATTRIBUTE_UNUSED,
const xmlChar * namespace ATTRIBUTE_UNUSED,
const xmlChar * context ATTRIBUTE_UNUSED)
{
+ xmlSchemaElementPtr elem = (xmlSchemaElementPtr) payload;
+ FILE *output = (FILE *) data;
if (elem == NULL)
return;
@@ -4506,6 +4522,13 @@ xmlSchemaTypeDump(xmlSchemaTypePtr type, FILE * output)
#endif
}
+static void
+xmlSchemaTypeDumpEntry(void *type, void *output,
+ const xmlChar *name ATTRIBUTE_UNUSED)
+{
+ xmlSchemaTypeDump((xmlSchemaTypePtr) type, (FILE *) output);
+}
+
/**
* xmlSchemaDump:
* @output: the file output
@@ -4534,10 +4557,8 @@ xmlSchemaDump(FILE * output, xmlSchemaPtr schema)
fprintf(output, "\n");
if (schema->annot != NULL)
xmlSchemaAnnotDump(output, schema->annot);
- xmlHashScan(schema->typeDecl, (xmlHashScanner) xmlSchemaTypeDump,
- output);
- xmlHashScanFull(schema->elemDecl,
- (xmlHashScannerFull) xmlSchemaElementDump, output);
+ xmlHashScan(schema->typeDecl, xmlSchemaTypeDumpEntry, output);
+ xmlHashScanFull(schema->elemDecl, xmlSchemaElementDump, output);
}
#ifdef DEBUG_IDC_NODE_TABLE
@@ -5697,6 +5718,12 @@ xmlSchemaSubstGroupFree(xmlSchemaSubstGroupPtr group)
xmlFree(group);
}
+static void
+xmlSchemaSubstGroupFreeEntry(void *group, const xmlChar *name ATTRIBUTE_UNUSED)
+{
+ xmlSchemaSubstGroupFree((xmlSchemaSubstGroupPtr) group);
+}
+
static xmlSchemaSubstGroupPtr
xmlSchemaSubstGroupAdd(xmlSchemaParserCtxtPtr pctxt,
xmlSchemaElementPtr head)
@@ -7364,8 +7391,8 @@ attr_next:
*/
if (defValue != NULL)
use->defValue = defValue;
- if (defValueType == WXS_ATTR_DEF_VAL_FIXED)
- use->flags |= XML_SCHEMA_ATTR_USE_FIXED;
+ if (defValueType == WXS_ATTR_DEF_VAL_FIXED)
+ use->flags |= XML_SCHEMA_ATTR_USE_FIXED;
}
check_children:
@@ -9909,8 +9936,7 @@ xmlSchemaConstructionCtxtFree(xmlSchemaConstructionCtxtPtr con)
if (con->pending != NULL)
xmlSchemaItemListFree(con->pending);
if (con->substGroups != NULL)
- xmlHashFree(con->substGroups,
- (xmlHashDeallocator) xmlSchemaSubstGroupFree);
+ xmlHashFree(con->substGroups, xmlSchemaSubstGroupFreeEntry);
if (con->redefs != NULL)
xmlSchemaRedefListFree(con->redefs);
if (con->dict != NULL)
@@ -15890,7 +15916,7 @@ xmlSchemaParseCheckCOSValidDefault(xmlSchemaParserCtxtPtr pctxt,
* STATUS: (seems) complete
*
* Returns 0 if the constraints are satisfied, a positive
- * error code if not and -1 if an internal error occured.
+ * error code if not and -1 if an internal error occurred.
*/
static int
xmlSchemaCheckCTPropsCorrect(xmlSchemaParserCtxtPtr pctxt,
@@ -16137,7 +16163,7 @@ xmlSchemaCheckCOSDerivedOK(xmlSchemaAbstractCtxtPtr actxt,
* (1.4.3.2.2.2) "Particle Valid (Extension)"
*
* Returns 0 if the constraints are satisfied, a positive
- * error code if not and -1 if an internal error occured.
+ * error code if not and -1 if an internal error occurred.
*/
static int
xmlSchemaCheckCOSCTExtends(xmlSchemaParserCtxtPtr ctxt,
@@ -16394,7 +16420,7 @@ xmlSchemaCheckCOSCTExtends(xmlSchemaParserCtxtPtr ctxt,
* Validation Rule: Checking complex type subsumption
*
* Returns 0 if the constraints are satisfied, a positive
- * error code if not and -1 if an internal error occured.
+ * error code if not and -1 if an internal error occurred.
*/
static int
xmlSchemaCheckDerivationOKRestriction(xmlSchemaParserCtxtPtr ctxt,
@@ -16584,7 +16610,7 @@ xmlSchemaCheckDerivationOKRestriction(xmlSchemaParserCtxtPtr ctxt,
* (3.4.6) Constraints on Complex Type Definition Schema Components
*
* Returns 0 if the constraints are satisfied, a positive
- * error code if not and -1 if an internal error occured.
+ * error code if not and -1 if an internal error occurred.
*/
static int
xmlSchemaCheckCTComponent(xmlSchemaParserCtxtPtr ctxt,
@@ -16614,7 +16640,7 @@ xmlSchemaCheckCTComponent(xmlSchemaParserCtxtPtr ctxt,
* Complex Type Definition Representation OK (src-ct)
*
* Returns 0 if the constraints are satisfied, a positive
- * error code if not and -1 if an internal error occured.
+ * error code if not and -1 if an internal error occurred.
*/
static int
xmlSchemaCheckSRCCT(xmlSchemaParserCtxtPtr ctxt,
@@ -16783,7 +16809,7 @@ xmlSchemaCheckSRCCT(xmlSchemaParserCtxtPtr ctxt,
* STATUS: complete
*
* Returns 0 if the constraints are satisfied, a positive
- * error code if not and -1 if an internal error occured.
+ * error code if not and -1 if an internal error occurred.
*/
static int
xmlSchemaCheckParticleRangeOK(int rmin, int rmax,
@@ -16813,7 +16839,7 @@ xmlSchemaCheckParticleRangeOK(int rmin, int rmax,
* CLARIFY: (3.2.2)
*
* Returns 0 if the constraints are satisfied, a positive
- * error code if not and -1 if an internal error occured.
+ * error code if not and -1 if an internal error occurred.
*/
static int
xmlSchemaCheckRCaseNameAndTypeOK(xmlSchemaParserCtxtPtr ctxt,
@@ -16918,7 +16944,7 @@ xmlSchemaCheckRCaseNameAndTypeOK(xmlSchemaParserCtxtPtr ctxt,
* STATUS: complete
*
* Returns 0 if the constraints are satisfied, a positive
- * error code if not and -1 if an internal error occured.
+ * error code if not and -1 if an internal error occurred.
*/
static int
xmlSchemaCheckRCaseNSCompat(xmlSchemaParserCtxtPtr ctxt,
@@ -16962,7 +16988,7 @@ xmlSchemaCheckRCaseNSCompat(xmlSchemaParserCtxtPtr ctxt,
* STATUS: TODO
*
* Returns 0 if the constraints are satisfied, a positive
- * error code if not and -1 if an internal error occured.
+ * error code if not and -1 if an internal error occurred.
*/
static int
xmlSchemaCheckRCaseRecurseAsIfGroup(xmlSchemaParserCtxtPtr ctxt,
@@ -16988,7 +17014,7 @@ xmlSchemaCheckRCaseRecurseAsIfGroup(xmlSchemaParserCtxtPtr ctxt,
* STATUS: complete
*
* Returns 0 if the constraints are satisfied, a positive
- * error code if not and -1 if an internal error occured.
+ * error code if not and -1 if an internal error occurred.
*/
static int
xmlSchemaCheckRCaseNSSubset(xmlSchemaParserCtxtPtr ctxt,
@@ -17038,7 +17064,7 @@ xmlSchemaCheckRCaseNSSubset(xmlSchemaParserCtxtPtr ctxt,
* STATUS: TODO
*
* Returns 0 if the constraints are satisfied, a positive
- * error code if not and -1 if an internal error occured.
+ * error code if not and -1 if an internal error occurred.
*/
static int
xmlSchemaCheckCOSParticleRestrict(xmlSchemaParserCtxtPtr ctxt,
@@ -17079,7 +17105,7 @@ xmlSchemaCheckCOSParticleRestrict(xmlSchemaParserCtxtPtr ctxt,
* STATUS: TODO: subst-groups
*
* Returns 0 if the constraints are satisfied, a positive
- * error code if not and -1 if an internal error occured.
+ * error code if not and -1 if an internal error occurred.
*/
static int
xmlSchemaCheckRCaseNSRecurseCheckCardinality(xmlSchemaParserCtxtPtr ctxt,
@@ -17134,7 +17160,7 @@ xmlSchemaCheckRCaseNSRecurseCheckCardinality(xmlSchemaParserCtxtPtr ctxt,
* TODO: subst-groups
*
* Returns 0 if the constraints are satisfied, a positive
- * error code if not and -1 if an internal error occured.
+ * error code if not and -1 if an internal error occurred.
*/
static int
xmlSchemaCheckRCaseRecurse(xmlSchemaParserCtxtPtr ctxt,
@@ -17764,7 +17790,7 @@ xmlSchemaDeriveAndValidateFacets(xmlSchemaParserCtxtPtr pctxt,
return (0);
internal_error:
PERROR_INT("xmlSchemaDeriveAndValidateFacets",
- "an error occured");
+ "an error occurred");
return (-1);
}
@@ -21284,8 +21310,7 @@ exit:
con->bucket = oldbucket;
con->pending->nbItems = 0;
if (con->substGroups != NULL) {
- xmlHashFree(con->substGroups,
- (xmlHashDeallocator) xmlSchemaSubstGroupFree);
+ xmlHashFree(con->substGroups, xmlSchemaSubstGroupFreeEntry);
con->substGroups = NULL;
}
if (con->redefs != NULL) {
@@ -21413,7 +21438,7 @@ exit_failure:
ctxt->ownsConstructor = 0;
}
PERROR_INT2("xmlSchemaParse",
- "An internal error occured");
+ "An internal error occurred");
ctxt->schema = NULL;
return(NULL);
}
@@ -21993,9 +22018,11 @@ xmlSchemaVAddNodeQName(xmlSchemaValidCtxtPtr vctxt,
* Returns the item, or NULL on internal errors.
*/
static void
-xmlSchemaAugmentIDC(xmlSchemaIDCPtr idcDef,
- xmlSchemaValidCtxtPtr vctxt)
+xmlSchemaAugmentIDC(void *payload, void *data,
+ const xmlChar *name ATTRIBUTE_UNUSED)
{
+ xmlSchemaIDCPtr idcDef = (xmlSchemaIDCPtr) payload;
+ xmlSchemaValidCtxtPtr vctxt = (xmlSchemaValidCtxtPtr) data;
xmlSchemaIDCAugPtr aidc;
aidc = (xmlSchemaIDCAugPtr) xmlMalloc(sizeof(xmlSchemaIDCAug));
@@ -22029,10 +22056,12 @@ xmlSchemaAugmentIDC(xmlSchemaIDCPtr idcDef,
* Creates an augmented IDC definition for the imported schema.
*/
static void
-xmlSchemaAugmentImportedIDC(xmlSchemaImportPtr imported, xmlSchemaValidCtxtPtr vctxt) {
+xmlSchemaAugmentImportedIDC(void *payload, void *data,
+ const xmlChar *name ATTRIBUTE_UNUSED) {
+ xmlSchemaImportPtr imported = (xmlSchemaImportPtr) payload;
+ xmlSchemaValidCtxtPtr vctxt = (xmlSchemaValidCtxtPtr) data;
if (imported->schema->idcDef != NULL) {
- xmlHashScan(imported->schema->idcDef ,
- (xmlHashScanner) xmlSchemaAugmentIDC, vctxt);
+ xmlHashScan(imported->schema->idcDef, xmlSchemaAugmentIDC, vctxt);
}
}
@@ -25957,11 +25986,12 @@ xmlSchemaCheckCOSValidDefault(xmlSchemaValidCtxtPtr vctxt,
}
static void
-xmlSchemaVContentModelCallback(xmlSchemaValidCtxtPtr vctxt ATTRIBUTE_UNUSED,
+xmlSchemaVContentModelCallback(xmlRegExecCtxtPtr exec ATTRIBUTE_UNUSED,
const xmlChar * name ATTRIBUTE_UNUSED,
- xmlSchemaElementPtr item,
- xmlSchemaNodeInfoPtr inode)
+ void *transdata, void *inputdata)
{
+ xmlSchemaElementPtr item = (xmlSchemaElementPtr) transdata;
+ xmlSchemaNodeInfoPtr inode = (xmlSchemaNodeInfoPtr) inputdata;
inode->decl = item;
#ifdef DEBUG_CONTENT
{
@@ -26066,8 +26096,7 @@ xmlSchemaValidatorPopElem(xmlSchemaValidCtxtPtr vctxt)
*/
inode->regexCtxt =
xmlRegNewExecCtxt(inode->typeDef->contModel,
- (xmlRegExecCallbacks) xmlSchemaVContentModelCallback,
- vctxt);
+ xmlSchemaVContentModelCallback, vctxt);
if (inode->regexCtxt == NULL) {
VERROR_INT("xmlSchemaValidatorPopElem",
"failed to create a regex context");
@@ -26094,7 +26123,7 @@ xmlSchemaValidatorPopElem(xmlSchemaValidCtxtPtr vctxt)
/*
* Get hold of the still expected content, since a further
- * call to xmlRegExecPushString() will loose this information.
+ * call to xmlRegExecPushString() will lose this information.
*/
xmlRegExecNextValues(inode->regexCtxt,
&nbval, &nbneg, &values[0], &terminal);
@@ -26615,8 +26644,7 @@ xmlSchemaValidateChildElem(xmlSchemaValidCtxtPtr vctxt)
* Create the regex context.
*/
regexCtxt = xmlRegNewExecCtxt(ptype->contModel,
- (xmlRegExecCallbacks) xmlSchemaVContentModelCallback,
- vctxt);
+ xmlSchemaVContentModelCallback, vctxt);
if (regexCtxt == NULL) {
VERROR_INT("xmlSchemaValidateChildElem",
"failed to create a regex context");
@@ -26876,7 +26904,8 @@ xmlSchemaValidateElem(xmlSchemaValidCtxtPtr vctxt)
* Augment the IDC definitions for the main schema and all imported ones
* NOTE: main schema is the first in the imported list
*/
- xmlHashScan(vctxt->schema->schemasImports,(xmlHashScanner)xmlSchemaAugmentImportedIDC, vctxt);
+ xmlHashScan(vctxt->schema->schemasImports, xmlSchemaAugmentImportedIDC,
+ vctxt);
}
if (vctxt->depth > 0) {
/*
@@ -27150,7 +27179,7 @@ root_found:
}
if (ret < 0) {
/*
- * VAL TODO: A reader error occured; what to do here?
+ * VAL TODO: A reader error occurred; what to do here?
*/
ret = 1;
goto exit;
@@ -27391,6 +27420,7 @@ xmlSchemaSAXHandleStartElementNs(void *ctx,
* attributes yet.
*/
if (nb_attributes != 0) {
+ int valueLen, k, l;
xmlChar *value;
for (j = 0, i = 0; i < nb_attributes; i++, j += 5) {
@@ -27400,12 +27430,31 @@ xmlSchemaSAXHandleStartElementNs(void *ctx,
* libxml2 differs from normal SAX here in that it escapes all ampersands
* as &#38; instead of delivering the raw converted string. Changing the
* behavior at this point would break applications that use this API, so
- * we are forced to work around it. There is no danger of accidentally
- * decoding some entity other than &#38; in this step because without
- * unescaped ampersands there can be no other entities in the string.
+ * we are forced to work around it.
*/
- value = xmlStringLenDecodeEntities(vctxt->parserCtxt, attributes[j+3],
- attributes[j+4] - attributes[j+3], XML_SUBSTITUTE_REF, 0, 0, 0);
+ valueLen = attributes[j+4] - attributes[j+3];
+ value = xmlMallocAtomic(valueLen + 1);
+ if (value == NULL) {
+ xmlSchemaVErrMemory(vctxt,
+ "allocating string for decoded attribute",
+ NULL);
+ goto internal_error;
+ }
+ for (k = 0, l = 0; k < valueLen; l++) {
+ if (k < valueLen - 4 &&
+ attributes[j+3][k+0] == '&' &&
+ attributes[j+3][k+1] == '#' &&
+ attributes[j+3][k+2] == '3' &&
+ attributes[j+3][k+3] == '8' &&
+ attributes[j+3][k+4] == ';') {
+ value[l] = '&';
+ k += 5;
+ } else {
+ value[l] = attributes[j+3][k];
+ k++;
+ }
+ }
+ value[l] = '\0';
/*
* TODO: Set the node line.
*/
@@ -27788,7 +27837,7 @@ xmlSchemaSetValidStructuredErrors(xmlSchemaValidCtxtPtr ctxt,
{
if (ctxt == NULL)
return;
- ctxt->serror = serror;
+ ctxt->serror = serror;
ctxt->error = NULL;
ctxt->warning = NULL;
ctxt->errCtxt = ctx;
@@ -28098,7 +28147,8 @@ xmlSchemaPreRun(xmlSchemaValidCtxtPtr vctxt) {
* Augment the IDC definitions for the main schema and all imported ones
* NOTE: main schema if the first in the imported list
*/
- xmlHashScan(vctxt->schema->schemasImports,(xmlHashScanner)xmlSchemaAugmentImportedIDC, vctxt);
+ xmlHashScan(vctxt->schema->schemasImports, xmlSchemaAugmentImportedIDC,
+ vctxt);
return(0);
}
diff --git a/xmlschemastypes.c b/xmlschemastypes.c
index 5f385990..ca381d38 100644
--- a/xmlschemastypes.c
+++ b/xmlschemastypes.c
@@ -7,6 +7,11 @@
* Daniel Veillard <veillard@redhat.com>
*/
+/* To avoid EBCDIC trouble when parsing on zOS */
+#if defined(__MVS__)
+#pragma convert("ISO8859-1")
+#endif
+
#define IN_LIBXML
#include "libxml.h"
@@ -614,6 +619,11 @@ xmlSchemaInitTypes(void)
xmlSchemaTypesInitialized = 1;
}
+static void
+xmlSchemaFreeTypeEntry(void *type, const xmlChar *name ATTRIBUTE_UNUSED) {
+ xmlSchemaFreeType((xmlSchemaTypePtr) type);
+}
+
/**
* xmlSchemaCleanupTypes:
*
@@ -641,7 +651,7 @@ xmlSchemaCleanupTypes(void) {
xmlFree((xmlSchemaParticlePtr) particle);
xmlSchemaTypeAnyTypeDef->subtypes = NULL;
}
- xmlHashFree(xmlSchemaTypesBank, (xmlHashDeallocator) xmlSchemaFreeType);
+ xmlHashFree(xmlSchemaTypesBank, xmlSchemaFreeTypeEntry);
xmlSchemaTypesInitialized = 0;
}
@@ -5398,7 +5408,7 @@ xmlSchemaValidateFacetInternal(xmlSchemaFacetPtr facet,
if ((valType == XML_SCHEMAS_QNAME) ||
(valType == XML_SCHEMAS_NOTATION))
return (0);
- /* No break on purpose. */
+ /* Falls through. */
case XML_SCHEMA_FACET_MAXLENGTH:
case XML_SCHEMA_FACET_MINLENGTH: {
unsigned int len = 0;
diff --git a/xmlstring.c b/xmlstring.c
index cc85777e..8d2e06f6 100644
--- a/xmlstring.c
+++ b/xmlstring.c
@@ -440,8 +440,8 @@ xmlStrlen(const xmlChar *str) {
* first bytes of @add. Note that if @len < 0 then this is an API error
* and NULL will be returned.
*
- * Returns a new xmlChar *, the original @cur is reallocated if needed
- * and should not be freed
+ * Returns a new xmlChar *, the original @cur is reallocated and should
+ * not be freed.
*/
xmlChar *
@@ -519,7 +519,8 @@ xmlStrncatNew(const xmlChar *str1, const xmlChar *str2, int len) {
* encoded in UTF-8 or an encoding with 8bit based chars, we assume
* a termination mark of '0'.
*
- * Returns a new xmlChar * containing the concatenated string.
+ * Returns a new xmlChar * containing the concatenated string. The original
+ * @cur is reallocated and should not be freed.
*/
xmlChar *
xmlStrcat(xmlChar *cur, const xmlChar *add) {
@@ -822,7 +823,7 @@ xmlCheckUTF8(const unsigned char *utf)
* @len: the number of characters in the array
*
* storage size of an UTF8 string
- * the behaviour is not garanteed if the input string is not UTF-8
+ * the behaviour is not guaranteed if the input string is not UTF-8
*
* Returns the storage size of
* the first 'len' characters of ARRAY
diff --git a/xmlunicode.c b/xmlunicode.c
index ce6e9a4f..6d0a96a0 100644
--- a/xmlunicode.c
+++ b/xmlunicode.c
@@ -29,14 +29,14 @@ typedef struct {
} xmlUnicodeRange;
typedef struct {
- xmlUnicodeRange *table;
+ const xmlUnicodeRange *table;
int numentries;
} xmlUnicodeNameTable;
static xmlIntFunc *xmlUnicodeLookup(xmlUnicodeNameTable *tptr, const char *tname);
-static xmlUnicodeRange xmlUnicodeBlocks[] = {
+static const xmlUnicodeRange xmlUnicodeBlocks[] = {
{"AegeanNumbers", xmlUCSIsAegeanNumbers},
{"AlphabeticPresentationForms", xmlUCSIsAlphabeticPresentationForms},
{"Arabic", xmlUCSIsArabic},
@@ -945,7 +945,7 @@ static xmlUnicodeNameTable xmlUnicodeCatTbl = {xmlUnicodeCats, 36};
static xmlIntFunc
*xmlUnicodeLookup(xmlUnicodeNameTable *tptr, const char *tname) {
int low, high, mid, cmp;
- xmlUnicodeRange *sptr;
+ const xmlUnicodeRange *sptr;
if ((tptr == NULL) || (tname == NULL)) return(NULL);
diff --git a/xmlwriter.c b/xmlwriter.c
index 69541b89..b5cd171f 100644
--- a/xmlwriter.c
+++ b/xmlwriter.c
@@ -110,7 +110,7 @@ static void xmlFreeTextWriterNsStackEntry(xmlLinkPtr lk);
static int xmlCmpTextWriterNsStackEntry(const void *data0,
const void *data1);
static int xmlTextWriterWriteDocCallback(void *context,
- const xmlChar * str, int len);
+ const char *str, int len);
static int xmlTextWriterCloseDocCallback(void *context);
static xmlChar *xmlTextWriterVSprintf(const char *format, va_list argptr) LIBXML_ATTR_FORMAT(1,0);
@@ -190,9 +190,7 @@ xmlNewTextWriter(xmlOutputBufferPtr out)
}
memset(ret, 0, (size_t) sizeof(xmlTextWriter));
- ret->nodes = xmlListCreate((xmlListDeallocator)
- xmlFreeTextWriterStackEntry,
- (xmlListDataCompare)
+ ret->nodes = xmlListCreate(xmlFreeTextWriterStackEntry,
xmlCmpTextWriterStackEntry);
if (ret->nodes == NULL) {
xmlWriterErrMsg(NULL, XML_ERR_NO_MEMORY,
@@ -201,9 +199,7 @@ xmlNewTextWriter(xmlOutputBufferPtr out)
return NULL;
}
- ret->nsstack = xmlListCreate((xmlListDeallocator)
- xmlFreeTextWriterNsStackEntry,
- (xmlListDataCompare)
+ ret->nsstack = xmlListCreate(xmlFreeTextWriterNsStackEntry,
xmlCmpTextWriterNsStackEntry);
if (ret->nsstack == NULL) {
xmlWriterErrMsg(NULL, XML_ERR_NO_MEMORY,
@@ -329,9 +325,7 @@ xmlNewTextWriterPushParser(xmlParserCtxtPtr ctxt,
return NULL;
}
- out = xmlOutputBufferCreateIO((xmlOutputWriteCallback)
- xmlTextWriterWriteDocCallback,
- (xmlOutputCloseCallback)
+ out = xmlOutputBufferCreateIO(xmlTextWriterWriteDocCallback,
xmlTextWriterCloseDocCallback,
(void *) ctxt, NULL);
if (out == NULL) {
@@ -3754,6 +3748,7 @@ xmlTextWriterEndDTDEntity(xmlTextWriterPtr writer)
if (count < 0)
return -1;
sum += count;
+ /* Falls through. */
case XML_TEXTWRITER_DTD_ENTY:
case XML_TEXTWRITER_DTD_PENT:
count = xmlOutputBufferWriteString(writer->out, ">");
@@ -4421,12 +4416,12 @@ xmlCmpTextWriterNsStackEntry(const void *data0, const void *data1)
* Returns -1, 0, 1
*/
static int
-xmlTextWriterWriteDocCallback(void *context, const xmlChar * str, int len)
+xmlTextWriterWriteDocCallback(void *context, const char *str, int len)
{
xmlParserCtxtPtr ctxt = (xmlParserCtxtPtr) context;
int rc;
- if ((rc = xmlParseChunk(ctxt, (const char *) str, len, 0)) != 0) {
+ if ((rc = xmlParseChunk(ctxt, str, len, 0)) != 0) {
xmlWriterErrMsgInt(NULL, XML_ERR_INTERNAL_ERROR,
"xmlTextWriterWriteDocCallback : XML error %d !\n",
rc);
@@ -4452,7 +4447,7 @@ xmlTextWriterCloseDocCallback(void *context)
if ((rc = xmlParseChunk(ctxt, NULL, 0, 1)) != 0) {
xmlWriterErrMsgInt(NULL, XML_ERR_INTERNAL_ERROR,
- "xmlTextWriterWriteDocCallback : XML error %d !\n",
+ "xmlTextWriterCloseDocCallback : XML error %d !\n",
rc);
return -1;
}
diff --git a/xpath.c b/xpath.c
index 3472ff05..d134025a 100644
--- a/xpath.c
+++ b/xpath.c
@@ -14,10 +14,17 @@
*
*/
+/* To avoid EBCDIC trouble when parsing on zOS */
+#if defined(__MVS__)
+#pragma convert("ISO8859-1")
+#endif
+
#define IN_LIBXML
#include "libxml.h"
+#include <limits.h>
#include <string.h>
+#include <stddef.h>
#ifdef HAVE_SYS_TYPES_H
#include <sys/types.h>
@@ -153,7 +160,7 @@ xmlXPathCmpNodesExt(xmlNodePtr node1, xmlNodePtr node2) {
int misc = 0, precedence1 = 0, precedence2 = 0;
xmlNodePtr miscNode1 = NULL, miscNode2 = NULL;
xmlNodePtr cur, root;
- long l1, l2;
+ ptrdiff_t l1, l2;
if ((node1 == NULL) || (node2 == NULL))
return(-2);
@@ -167,12 +174,12 @@ xmlXPathCmpNodesExt(xmlNodePtr node1, xmlNodePtr node2) {
switch (node1->type) {
case XML_ELEMENT_NODE:
if (node2->type == XML_ELEMENT_NODE) {
- if ((0 > (long) node1->content) && /* TODO: Would a != 0 suffice here? */
- (0 > (long) node2->content) &&
+ if ((0 > (ptrdiff_t) node1->content) &&
+ (0 > (ptrdiff_t) node2->content) &&
(node1->doc == node2->doc))
{
- l1 = -((long) node1->content);
- l2 = -((long) node2->content);
+ l1 = -((ptrdiff_t) node1->content);
+ l2 = -((ptrdiff_t) node2->content);
if (l1 < l2)
return(1);
if (l1 > l2)
@@ -217,7 +224,7 @@ xmlXPathCmpNodesExt(xmlNodePtr node1, xmlNodePtr node2) {
node1 = node1->parent;
}
if ((node1 == NULL) || (node1->type != XML_ELEMENT_NODE) ||
- (0 <= (long) node1->content)) {
+ (0 <= (ptrdiff_t) node1->content)) {
/*
* Fallback for whatever case.
*/
@@ -267,7 +274,7 @@ xmlXPathCmpNodesExt(xmlNodePtr node1, xmlNodePtr node2) {
node2 = node2->parent;
}
if ((node2 == NULL) || (node2->type != XML_ELEMENT_NODE) ||
- (0 <= (long) node2->content))
+ (0 <= (ptrdiff_t) node2->content))
{
node2 = miscNode2;
precedence2 = 0;
@@ -340,12 +347,12 @@ xmlXPathCmpNodesExt(xmlNodePtr node1, xmlNodePtr node2) {
*/
if ((node1->type == XML_ELEMENT_NODE) &&
(node2->type == XML_ELEMENT_NODE) &&
- (0 > (long) node1->content) &&
- (0 > (long) node2->content) &&
+ (0 > (ptrdiff_t) node1->content) &&
+ (0 > (ptrdiff_t) node2->content) &&
(node1->doc == node2->doc)) {
- l1 = -((long) node1->content);
- l2 = -((long) node2->content);
+ l1 = -((ptrdiff_t) node1->content);
+ l2 = -((ptrdiff_t) node2->content);
if (l1 < l2)
return(1);
if (l1 > l2)
@@ -408,12 +415,12 @@ turtle_comparison:
*/
if ((node1->type == XML_ELEMENT_NODE) &&
(node2->type == XML_ELEMENT_NODE) &&
- (0 > (long) node1->content) &&
- (0 > (long) node2->content) &&
+ (0 > (ptrdiff_t) node1->content) &&
+ (0 > (ptrdiff_t) node2->content) &&
(node1->doc == node2->doc)) {
- l1 = -((long) node1->content);
- l2 = -((long) node2->content);
+ l1 = -((ptrdiff_t) node1->content);
+ l2 = -((ptrdiff_t) node2->content);
if (l1 < l2)
return(1);
if (l1 > l2)
@@ -470,84 +477,66 @@ int wrap_cmp( xmlNodePtr x, xmlNodePtr y );
* *
************************************************************************/
-#ifndef TRIO_REPLACE_STDIO
-#define TRIO_PUBLIC static
+#ifndef NAN
+#define NAN (0.0 / 0.0)
#endif
-#include "trionan.c"
-/*
- * The lack of portability of this section of the libc is annoying !
- */
-double xmlXPathNAN = 0;
-double xmlXPathPINF = 1;
-double xmlXPathNINF = -1;
-static double xmlXPathNZERO = 0; /* not exported from headers */
-static int xmlXPathInitialized = 0;
+#ifndef INFINITY
+#define INFINITY HUGE_VAL
+#endif
+
+double xmlXPathNAN = NAN;
+double xmlXPathPINF = INFINITY;
+double xmlXPathNINF = -INFINITY;
/**
* xmlXPathInit:
*
* Initialize the XPath environment
+ *
+ * Does nothing but must be kept as public function.
*/
void
xmlXPathInit(void) {
- if (xmlXPathInitialized) return;
-
- xmlXPathPINF = trio_pinf();
- xmlXPathNINF = trio_ninf();
- xmlXPathNAN = trio_nan();
- xmlXPathNZERO = trio_nzero();
-
- xmlXPathInitialized = 1;
}
/**
* xmlXPathIsNaN:
* @val: a double value
*
- * Provides a portable isnan() function to detect whether a double
- * is a NotaNumber. Based on trio code
- * http://sourceforge.net/projects/ctrio/
- *
* Returns 1 if the value is a NaN, 0 otherwise
*/
int
xmlXPathIsNaN(double val) {
- return(trio_isnan(val));
+#ifdef isnan
+ return isnan(val);
+#else
+ return !(val == val);
+#endif
}
/**
* xmlXPathIsInf:
* @val: a double value
*
- * Provides a portable isinf() function to detect whether a double
- * is a +Infinite or -Infinite. Based on trio code
- * http://sourceforge.net/projects/ctrio/
- *
- * Returns 1 vi the value is +Infinite, -1 if -Infinite, 0 otherwise
+ * Returns 1 if the value is +Infinite, -1 if -Infinite, 0 otherwise
*/
int
xmlXPathIsInf(double val) {
- return(trio_isinf(val));
+#ifdef isinf
+ return isinf(val) ? (val > 0 ? 1 : -1) : 0;
+#else
+ if (val >= HUGE_VAL)
+ return 1;
+ if (val <= -HUGE_VAL)
+ return -1;
+ return 0;
+#endif
}
#endif /* SCHEMAS or XPATH */
-#ifdef LIBXML_XPATH_ENABLED
-/**
- * xmlXPathGetSign:
- * @val: a double value
- *
- * Provides a portable function to detect the sign of a double
- * Modified from trio code
- * http://sourceforge.net/projects/ctrio/
- *
- * Returns 1 if the value is Negative, 0 if positive
- */
-static int
-xmlXPathGetSign(double val) {
- return(trio_signbit(val));
-}
+#ifdef LIBXML_XPATH_ENABLED
/*
* TODO: when compatibility allows remove all "fake node libxslt" strings
@@ -935,7 +924,7 @@ struct _xmlXPathStepOp {
int value3;
void *value4;
void *value5;
- void *cache;
+ xmlXPathFunction cache;
void *cacheURI;
};
@@ -971,6 +960,8 @@ static int
xmlXPathCompOpEvalToBoolean(xmlXPathParserContextPtr ctxt,
xmlXPathStepOpPtr op,
int isPredicate);
+static void
+xmlXPathFreeObjectEntry(void *obj, const xmlChar *name);
/************************************************************************
* *
@@ -1414,7 +1405,8 @@ xmlXPathDebugDumpObject(FILE *output, xmlXPathObjectPtr cur, int depth) {
default:
if (xmlXPathIsNaN(cur->floatval)) {
fprintf(output, "Object is a number : NaN\n");
- } else if (cur->floatval == 0 && xmlXPathGetSign(cur->floatval) != 0) {
+ } else if (cur->floatval == 0) {
+ /* Omit sign for negative zero. */
fprintf(output, "Object is a number : 0\n");
} else {
fprintf(output, "Object is a number : %0g\n", cur->floatval);
@@ -1672,10 +1664,17 @@ xmlXPathDebugDumpCompExpr(FILE *output, xmlXPathCompExprPtr comp,
fprintf(output, "%s", shift);
- fprintf(output, "Compiled Expression : %d elements\n",
- comp->nbStep);
- i = comp->last;
- xmlXPathDebugDumpStepOp(output, comp, &comp->steps[i], depth + 1);
+#ifdef XPATH_STREAMING
+ if (comp->stream) {
+ fprintf(output, "Streaming Expression\n");
+ } else
+#endif
+ {
+ fprintf(output, "Compiled Expression : %d elements\n",
+ comp->nbStep);
+ i = comp->last;
+ xmlXPathDebugDumpStepOp(output, comp, &comp->steps[i], depth + 1);
+ }
}
#ifdef XP_DEBUG_OBJ_USAGE
@@ -3103,9 +3102,11 @@ xmlXPathFormatNumber(double number, char buffer[], int buffersize)
if (xmlXPathIsNaN(number)) {
if (buffersize > (int)sizeof("NaN"))
snprintf(buffer, buffersize, "NaN");
- } else if (number == 0 && xmlXPathGetSign(number) != 0) {
+ } else if (number == 0) {
+ /* Omit sign for negative zero. */
snprintf(buffer, buffersize, "0");
- } else if (number == ((int) number)) {
+ } else if ((number > INT_MIN) && (number < INT_MAX) &&
+ (number == (int) number)) {
char work[30];
char *ptr, *cur;
int value = (int) number;
@@ -3225,7 +3226,7 @@ xmlXPathFormatNumber(double number, char buffer[], int buffersize)
*/
long
xmlXPathOrderDocElems(xmlDocPtr doc) {
- long count = 0;
+ ptrdiff_t count = 0;
xmlNodePtr cur;
if (doc == NULL)
@@ -3257,7 +3258,7 @@ xmlXPathOrderDocElems(xmlDocPtr doc) {
}
} while (cur != NULL);
}
- return(count);
+ return((long) count);
}
/**
@@ -3325,13 +3326,13 @@ xmlXPathCmpNodes(xmlNodePtr node1, xmlNodePtr node2) {
*/
if ((node1->type == XML_ELEMENT_NODE) &&
(node2->type == XML_ELEMENT_NODE) &&
- (0 > (long) node1->content) &&
- (0 > (long) node2->content) &&
+ (0 > (ptrdiff_t) node1->content) &&
+ (0 > (ptrdiff_t) node2->content) &&
(node1->doc == node2->doc)) {
- long l1, l2;
+ ptrdiff_t l1, l2;
- l1 = -((long) node1->content);
- l2 = -((long) node2->content);
+ l1 = -((ptrdiff_t) node1->content);
+ l2 = -((ptrdiff_t) node2->content);
if (l1 < l2)
return(1);
if (l1 > l2)
@@ -3342,13 +3343,13 @@ xmlXPathCmpNodes(xmlNodePtr node1, xmlNodePtr node2) {
* compute depth to root
*/
for (depth2 = 0, cur = node2;cur->parent != NULL;cur = cur->parent) {
- if (cur == node1)
+ if (cur->parent == node1)
return(1);
depth2++;
}
root = cur;
for (depth1 = 0, cur = node1;cur->parent != NULL;cur = cur->parent) {
- if (cur == node2)
+ if (cur->parent == node2)
return(-1);
depth1++;
}
@@ -3388,13 +3389,13 @@ xmlXPathCmpNodes(xmlNodePtr node1, xmlNodePtr node2) {
*/
if ((node1->type == XML_ELEMENT_NODE) &&
(node2->type == XML_ELEMENT_NODE) &&
- (0 > (long) node1->content) &&
- (0 > (long) node2->content) &&
+ (0 > (ptrdiff_t) node1->content) &&
+ (0 > (ptrdiff_t) node2->content) &&
(node1->doc == node2->doc)) {
- long l1, l2;
+ ptrdiff_t l1, l2;
- l1 = -((long) node1->content);
- l2 = -((long) node2->content);
+ l1 = -((ptrdiff_t) node1->content);
+ l2 = -((ptrdiff_t) node2->content);
if (l1 < l2)
return(1);
if (l1 > l2)
@@ -4021,13 +4022,7 @@ xmlXPathNodeSetMergeAndClear(xmlNodeSetPtr set1, xmlNodeSetPtr set2,
set1->nodeTab = temp;
set1->nodeMax *= 2;
}
- if (n2->type == XML_NAMESPACE_DECL) {
- xmlNsPtr ns = (xmlNsPtr) n2;
-
- set1->nodeTab[set1->nodeNr++] =
- xmlXPathNodeSetDupNs((xmlNodePtr) ns->next, ns);
- } else
- set1->nodeTab[set1->nodeNr++] = n2;
+ set1->nodeTab[set1->nodeNr++] = n2;
skip_node:
{}
}
@@ -4196,33 +4191,6 @@ xmlXPathFreeNodeSet(xmlNodeSetPtr obj) {
}
/**
- * xmlXPathNodeSetClear:
- * @set: the node set to clear
- *
- * Clears the list from all temporary XPath objects (e.g. namespace nodes
- * are feed), but does *not* free the list itself. Sets the length of the
- * list to 0.
- */
-static void
-xmlXPathNodeSetClear(xmlNodeSetPtr set, int hasNsNodes)
-{
- if ((set == NULL) || (set->nodeNr <= 0))
- return;
- else if (hasNsNodes) {
- int i;
- xmlNodePtr node;
-
- for (i = 0; i < set->nodeNr; i++) {
- node = set->nodeTab[i];
- if ((node != NULL) &&
- (node->type == XML_NAMESPACE_DECL))
- xmlXPathNodeSetFreeNs((xmlNsPtr) node);
- }
- }
- set->nodeNr = 0;
-}
-
-/**
* xmlXPathNodeSetClearFromPos:
* @set: the node set to be cleared
* @pos: the start position to clear from
@@ -4234,7 +4202,7 @@ xmlXPathNodeSetClear(xmlNodeSetPtr set, int hasNsNodes)
static void
xmlXPathNodeSetClearFromPos(xmlNodeSetPtr set, int pos, int hasNsNodes)
{
- if ((set == NULL) || (set->nodeNr <= 0) || (pos >= set->nodeNr))
+ if ((set == NULL) || (pos >= set->nodeNr))
return;
else if ((hasNsNodes)) {
int i;
@@ -4251,6 +4219,46 @@ xmlXPathNodeSetClearFromPos(xmlNodeSetPtr set, int pos, int hasNsNodes)
}
/**
+ * xmlXPathNodeSetClear:
+ * @set: the node set to clear
+ *
+ * Clears the list from all temporary XPath objects (e.g. namespace nodes
+ * are feed), but does *not* free the list itself. Sets the length of the
+ * list to 0.
+ */
+static void
+xmlXPathNodeSetClear(xmlNodeSetPtr set, int hasNsNodes)
+{
+ xmlXPathNodeSetClearFromPos(set, 0, hasNsNodes);
+}
+
+/**
+ * xmlXPathNodeSetKeepLast:
+ * @set: the node set to be cleared
+ *
+ * Move the last node to the first position and clear temporary XPath objects
+ * (e.g. namespace nodes) from all other nodes. Sets the length of the list
+ * to 1.
+ */
+static void
+xmlXPathNodeSetKeepLast(xmlNodeSetPtr set)
+{
+ int i;
+ xmlNodePtr node;
+
+ if ((set == NULL) || (set->nodeNr <= 1))
+ return;
+ for (i = 0; i < set->nodeNr - 1; i++) {
+ node = set->nodeTab[i];
+ if ((node != NULL) &&
+ (node->type == XML_NAMESPACE_DECL))
+ xmlXPathNodeSetFreeNs((xmlNsPtr) node);
+ }
+ set->nodeTab[0] = set->nodeTab[set->nodeNr-1];
+ set->nodeNr = 1;
+}
+
+/**
* xmlXPathFreeValueTree:
* @obj: the xmlNodeSetPtr to free
*
@@ -4560,7 +4568,7 @@ xmlXPathDistinctSorted (xmlNodeSetPtr nodes) {
xmlFree(strval);
}
}
- xmlHashFree(hash, (xmlHashDeallocator) xmlFree);
+ xmlHashFree(hash, xmlHashDefaultDeallocator);
return(ret);
}
@@ -4872,7 +4880,9 @@ xmlXPathRegisterFuncNS(xmlXPathContextPtr ctxt, const xmlChar *name,
return(-1);
if (f == NULL)
return(xmlHashRemoveEntry2(ctxt->funcHash, name, ns_uri, NULL));
- return(xmlHashAddEntry2(ctxt->funcHash, name, ns_uri, XML_CAST_FPTR(f)));
+XML_IGNORE_PEDANTIC_WARNINGS
+ return(xmlHashAddEntry2(ctxt->funcHash, name, ns_uri, (void *) f));
+XML_POP_WARNINGS
}
/**
@@ -4953,7 +4963,9 @@ xmlXPathFunctionLookupNS(xmlXPathContextPtr ctxt, const xmlChar *name,
if (ctxt->funcHash == NULL)
return(NULL);
- XML_CAST_FPTR(ret) = xmlHashLookup2(ctxt->funcHash, name, ns_uri);
+XML_IGNORE_PEDANTIC_WARNINGS
+ ret = (xmlXPathFunction) xmlHashLookup2(ctxt->funcHash, name, ns_uri);
+XML_POP_WARNINGS
return(ret);
}
@@ -5022,10 +5034,9 @@ xmlXPathRegisterVariableNS(xmlXPathContextPtr ctxt, const xmlChar *name,
return(-1);
if (value == NULL)
return(xmlHashRemoveEntry2(ctxt->varHash, name, ns_uri,
- (xmlHashDeallocator)xmlXPathFreeObject));
+ xmlXPathFreeObjectEntry));
return(xmlHashUpdateEntry2(ctxt->varHash, name, ns_uri,
- (void *) value,
- (xmlHashDeallocator)xmlXPathFreeObject));
+ (void *) value, xmlXPathFreeObjectEntry));
}
/**
@@ -5115,7 +5126,7 @@ xmlXPathRegisteredVariablesCleanup(xmlXPathContextPtr ctxt) {
if (ctxt == NULL)
return;
- xmlHashFree(ctxt->varHash, (xmlHashDeallocator)xmlXPathFreeObject);
+ xmlHashFree(ctxt->varHash, xmlXPathFreeObjectEntry);
ctxt->varHash = NULL;
}
@@ -5146,9 +5157,9 @@ xmlXPathRegisterNs(xmlXPathContextPtr ctxt, const xmlChar *prefix,
return(-1);
if (ns_uri == NULL)
return(xmlHashRemoveEntry(ctxt->nsHash, prefix,
- (xmlHashDeallocator)xmlFree));
+ xmlHashDefaultDeallocator));
return(xmlHashUpdateEntry(ctxt->nsHash, prefix, (void *) xmlStrdup(ns_uri),
- (xmlHashDeallocator)xmlFree));
+ xmlHashDefaultDeallocator));
}
/**
@@ -5197,7 +5208,7 @@ xmlXPathRegisteredNsCleanup(xmlXPathContextPtr ctxt) {
if (ctxt == NULL)
return;
- xmlHashFree(ctxt->nsHash, (xmlHashDeallocator)xmlFree);
+ xmlHashFree(ctxt->nsHash, xmlHashDefaultDeallocator);
ctxt->nsHash = NULL;
}
@@ -5511,6 +5522,11 @@ xmlXPathFreeObject(xmlXPathObjectPtr obj) {
xmlFree(obj);
}
+static void
+xmlXPathFreeObjectEntry(void *obj, const xmlChar *name ATTRIBUTE_UNUSED) {
+ xmlXPathFreeObject((xmlXPathObjectPtr) obj);
+}
+
/**
* xmlXPathReleaseObject:
* @obj: the xmlXPathObjectPtr to free or to cache
@@ -5700,7 +5716,8 @@ xmlXPathCastNumberToString (double val) {
default:
if (xmlXPathIsNaN(val)) {
ret = xmlStrdup((const xmlChar *) "NaN");
- } else if (val == 0 && xmlXPathGetSign(val) != 0) {
+ } else if (val == 0) {
+ /* Omit sign for negative zero. */
ret = xmlStrdup((const xmlChar *) "0");
} else {
/* could be improved */
@@ -5882,10 +5899,10 @@ xmlXPathCastNodeToNumber (xmlNodePtr node) {
double ret;
if (node == NULL)
- return(xmlXPathNAN);
+ return(NAN);
strval = xmlXPathCastNodeToString(node);
if (strval == NULL)
- return(xmlXPathNAN);
+ return(NAN);
ret = xmlXPathCastStringToNumber(strval);
xmlFree(strval);
@@ -5906,7 +5923,7 @@ xmlXPathCastNodeSetToNumber (xmlNodeSetPtr ns) {
double ret;
if (ns == NULL)
- return(xmlXPathNAN);
+ return(NAN);
str = xmlXPathCastNodeSetToString(ns);
ret = xmlXPathCastStringToNumber(str);
xmlFree(str);
@@ -5926,13 +5943,13 @@ xmlXPathCastToNumber(xmlXPathObjectPtr val) {
double ret = 0.0;
if (val == NULL)
- return(xmlXPathNAN);
+ return(NAN);
switch (val->type) {
case XPATH_UNDEFINED:
#ifdef DEGUB_EXPR
xmlGenericError(xmlGenericErrorContext, "NUMBER: undefined\n");
#endif
- ret = xmlXPathNAN;
+ ret = NAN;
break;
case XPATH_NODESET:
case XPATH_XSLT_TREE:
@@ -5952,7 +5969,7 @@ xmlXPathCastToNumber(xmlXPathObjectPtr val) {
case XPATH_RANGE:
case XPATH_LOCATIONSET:
TODO;
- ret = xmlXPathNAN;
+ ret = NAN;
break;
}
return(ret);
@@ -6289,7 +6306,15 @@ xmlXPathCompParserContext(xmlXPathCompExprPtr comp, xmlXPathContextPtr ctxt) {
*/
void
xmlXPathFreeParserContext(xmlXPathParserContextPtr ctxt) {
+ int i;
+
if (ctxt->valueTab != NULL) {
+ for (i = 0; i < ctxt->valueNr; i++) {
+ if (ctxt->context)
+ xmlXPathReleaseObject(ctxt->context, ctxt->valueTab[i]);
+ else
+ xmlXPathFreeObject(ctxt->valueTab[i]);
+ }
xmlFree(ctxt->valueTab);
}
if (ctxt->comp != NULL) {
@@ -6371,16 +6396,12 @@ xmlXPathNodeValHash(xmlNodePtr node) {
}
while (tmp != NULL) {
switch (tmp->type) {
- case XML_COMMENT_NODE:
- case XML_PI_NODE:
case XML_CDATA_SECTION_NODE:
case XML_TEXT_NODE:
string = tmp->content;
break;
- case XML_NAMESPACE_DECL:
- string = ((xmlNsPtr)tmp)->href;
- break;
default:
+ string = NULL;
break;
}
if ((string != NULL) && (string[0] != 0)) {
@@ -6702,7 +6723,13 @@ xmlXPathCompareNodeSetValue(xmlXPathParserContextPtr ctxt, int inf, int strict,
valuePush(ctxt, val);
return(xmlXPathCompareValues(ctxt, inf, strict));
default:
- TODO
+ xmlGenericError(xmlGenericErrorContext,
+ "xmlXPathCompareNodeSetValue: Can't compare node set "
+ "and object of type %d\n",
+ val->type);
+ xmlXPathReleaseObject(ctxt->context, arg);
+ xmlXPathReleaseObject(ctxt->context, val);
+ XP_ERROR0(XPATH_INVALID_TYPE);
}
return(0);
}
@@ -7010,7 +7037,7 @@ xmlXPathEqualValuesCommon(xmlXPathParserContextPtr ctxt,
valuePush(ctxt, arg2);
xmlXPathNumberFunction(ctxt, 1);
arg2 = valuePop(ctxt);
- /* no break on purpose */
+ /* Falls through. */
case XPATH_NUMBER:
/* Hand check NaN and Infinity equalities */
if (xmlXPathIsNaN(arg1->floatval) ||
@@ -7446,20 +7473,7 @@ xmlXPathValueFlipSign(xmlXPathParserContextPtr ctxt) {
if ((ctxt == NULL) || (ctxt->context == NULL)) return;
CAST_TO_NUMBER;
CHECK_TYPE(XPATH_NUMBER);
- if (xmlXPathIsNaN(ctxt->value->floatval))
- ctxt->value->floatval=xmlXPathNAN;
- else if (xmlXPathIsInf(ctxt->value->floatval) == 1)
- ctxt->value->floatval=xmlXPathNINF;
- else if (xmlXPathIsInf(ctxt->value->floatval) == -1)
- ctxt->value->floatval=xmlXPathPINF;
- else if (ctxt->value->floatval == 0) {
- if (xmlXPathGetSign(ctxt->value->floatval) == 0)
- ctxt->value->floatval = xmlXPathNZERO;
- else
- ctxt->value->floatval = 0;
- }
- else
- ctxt->value->floatval = - ctxt->value->floatval;
+ ctxt->value->floatval = -ctxt->value->floatval;
}
/**
@@ -7551,25 +7565,7 @@ xmlXPathDivValues(xmlXPathParserContextPtr ctxt) {
xmlXPathReleaseObject(ctxt->context, arg);
CAST_TO_NUMBER;
CHECK_TYPE(XPATH_NUMBER);
- if (xmlXPathIsNaN(val) || xmlXPathIsNaN(ctxt->value->floatval))
- ctxt->value->floatval = xmlXPathNAN;
- else if (val == 0 && xmlXPathGetSign(val) != 0) {
- if (ctxt->value->floatval == 0)
- ctxt->value->floatval = xmlXPathNAN;
- else if (ctxt->value->floatval > 0)
- ctxt->value->floatval = xmlXPathNINF;
- else if (ctxt->value->floatval < 0)
- ctxt->value->floatval = xmlXPathPINF;
- }
- else if (val == 0) {
- if (ctxt->value->floatval == 0)
- ctxt->value->floatval = xmlXPathNAN;
- else if (ctxt->value->floatval > 0)
- ctxt->value->floatval = xmlXPathPINF;
- else if (ctxt->value->floatval < 0)
- ctxt->value->floatval = xmlXPathNINF;
- } else
- ctxt->value->floatval /= val;
+ ctxt->value->floatval /= val;
}
/**
@@ -7594,7 +7590,7 @@ xmlXPathModValues(xmlXPathParserContextPtr ctxt) {
CHECK_TYPE(XPATH_NUMBER);
arg1 = ctxt->value->floatval;
if (arg2 == 0)
- ctxt->value->floatval = xmlXPathNAN;
+ ctxt->value->floatval = NAN;
else {
ctxt->value->floatval = fmod(arg1, arg2);
}
@@ -8114,12 +8110,12 @@ xmlXPathNextAncestor(xmlXPathParserContextPtr ctxt, xmlNodePtr cur) {
return(NULL);
return(cur->parent);
case XML_ATTRIBUTE_NODE: {
- xmlAttrPtr att = (xmlAttrPtr) ctxt->context->node;
+ xmlAttrPtr att = (xmlAttrPtr) cur;
return(att->parent);
}
case XML_NAMESPACE_DECL: {
- xmlNsPtr ns = (xmlNsPtr) ctxt->context->node;
+ xmlNsPtr ns = (xmlNsPtr) cur;
if ((ns->next != NULL) &&
(ns->next->type != XML_NAMESPACE_DECL))
@@ -8236,10 +8232,16 @@ xmlXPathNextFollowing(xmlXPathParserContextPtr ctxt, xmlNodePtr cur) {
if (cur == NULL) {
cur = ctxt->context->node;
- if (cur->type == XML_NAMESPACE_DECL)
- return(NULL);
- if (cur->type == XML_ATTRIBUTE_NODE)
+ if (cur->type == XML_ATTRIBUTE_NODE) {
cur = cur->parent;
+ } else if (cur->type == XML_NAMESPACE_DECL) {
+ xmlNsPtr ns = (xmlNsPtr) cur;
+
+ if ((ns->next == NULL) ||
+ (ns->next->type == XML_NAMESPACE_DECL))
+ return (NULL);
+ cur = (xmlNodePtr) ns->next;
+ }
}
if (cur == NULL) return(NULL) ; /* ERROR */
if (cur->next != NULL) return(cur->next) ;
@@ -8300,10 +8302,16 @@ xmlXPathNextPreceding(xmlXPathParserContextPtr ctxt, xmlNodePtr cur)
if ((ctxt == NULL) || (ctxt->context == NULL)) return(NULL);
if (cur == NULL) {
cur = ctxt->context->node;
- if (cur->type == XML_NAMESPACE_DECL)
- return(NULL);
- if (cur->type == XML_ATTRIBUTE_NODE)
- return(cur->parent);
+ if (cur->type == XML_ATTRIBUTE_NODE) {
+ cur = cur->parent;
+ } else if (cur->type == XML_NAMESPACE_DECL) {
+ xmlNsPtr ns = (xmlNsPtr) cur;
+
+ if ((ns->next == NULL) ||
+ (ns->next->type == XML_NAMESPACE_DECL))
+ return (NULL);
+ cur = (xmlNodePtr) ns->next;
+ }
}
if ((cur == NULL) || (cur->type == XML_NAMESPACE_DECL))
return (NULL);
@@ -8348,8 +8356,16 @@ xmlXPathNextPrecedingInternal(xmlXPathParserContextPtr ctxt,
cur = ctxt->context->node;
if (cur == NULL)
return (NULL);
- if (cur->type == XML_NAMESPACE_DECL)
- return (NULL);
+ if (cur->type == XML_ATTRIBUTE_NODE) {
+ cur = cur->parent;
+ } else if (cur->type == XML_NAMESPACE_DECL) {
+ xmlNsPtr ns = (xmlNsPtr) cur;
+
+ if ((ns->next == NULL) ||
+ (ns->next->type == XML_NAMESPACE_DECL))
+ return (NULL);
+ cur = (xmlNodePtr) ns->next;
+ }
ctxt->ancestor = cur->parent;
}
if (cur->type == XML_NAMESPACE_DECL)
@@ -9634,18 +9650,6 @@ xmlXPathSumFunction(xmlXPathParserContextPtr ctxt, int nargs) {
xmlXPathReleaseObject(ctxt->context, cur);
}
-/*
- * To assure working code on multiple platforms, we want to only depend
- * upon the characteristic truncation of converting a floating point value
- * to an integer. Unfortunately, because of the different storage sizes
- * of our internal floating point value (double) and integer (int), we
- * can't directly convert (see bug 301162). This macro is a messy
- * 'workaround'
- */
-#define XTRUNC(f, v) \
- f = fmod((v), INT_MAX); \
- f = (v) - (f) + (double)((int)(f));
-
/**
* xmlXPathFloorFunction:
* @ctxt: the XPath Parser context
@@ -9658,19 +9662,11 @@ xmlXPathSumFunction(xmlXPathParserContextPtr ctxt, int nargs) {
*/
void
xmlXPathFloorFunction(xmlXPathParserContextPtr ctxt, int nargs) {
- double f;
-
CHECK_ARITY(1);
CAST_TO_NUMBER;
CHECK_TYPE(XPATH_NUMBER);
- XTRUNC(f, ctxt->value->floatval);
- if (f != ctxt->value->floatval) {
- if (ctxt->value->floatval > 0)
- ctxt->value->floatval = f;
- else
- ctxt->value->floatval = f - 1;
- }
+ ctxt->value->floatval = floor(ctxt->value->floatval);
}
/**
@@ -9685,28 +9681,11 @@ xmlXPathFloorFunction(xmlXPathParserContextPtr ctxt, int nargs) {
*/
void
xmlXPathCeilingFunction(xmlXPathParserContextPtr ctxt, int nargs) {
- double f;
-
CHECK_ARITY(1);
CAST_TO_NUMBER;
CHECK_TYPE(XPATH_NUMBER);
-#if 0
ctxt->value->floatval = ceil(ctxt->value->floatval);
-#else
- XTRUNC(f, ctxt->value->floatval);
- if (f != ctxt->value->floatval) {
- if (ctxt->value->floatval > 0)
- ctxt->value->floatval = f + 1;
- else {
- if (ctxt->value->floatval < 0 && f == 0)
- ctxt->value->floatval = xmlXPathNZERO;
- else
- ctxt->value->floatval = f;
- }
-
- }
-#endif
}
/**
@@ -9718,7 +9697,7 @@ xmlXPathCeilingFunction(xmlXPathParserContextPtr ctxt, int nargs) {
* number round(number)
* The round function returns the number that is closest to the
* argument and that is an integer. If there are two such numbers,
- * then the one that is even is returned.
+ * then the one that is closest to positive infinity is returned.
*/
void
xmlXPathRoundFunction(xmlXPathParserContextPtr ctxt, int nargs) {
@@ -9728,25 +9707,17 @@ xmlXPathRoundFunction(xmlXPathParserContextPtr ctxt, int nargs) {
CAST_TO_NUMBER;
CHECK_TYPE(XPATH_NUMBER);
- if ((xmlXPathIsNaN(ctxt->value->floatval)) ||
- (xmlXPathIsInf(ctxt->value->floatval) == 1) ||
- (xmlXPathIsInf(ctxt->value->floatval) == -1) ||
- (ctxt->value->floatval == 0.0))
- return;
+ f = ctxt->value->floatval;
- XTRUNC(f, ctxt->value->floatval);
- if (ctxt->value->floatval < 0) {
- if (ctxt->value->floatval < f - 0.5)
- ctxt->value->floatval = f - 1;
- else
- ctxt->value->floatval = f;
- if (ctxt->value->floatval == 0)
- ctxt->value->floatval = xmlXPathNZERO;
- } else {
- if (ctxt->value->floatval < f + 0.5)
- ctxt->value->floatval = f;
- else
- ctxt->value->floatval = f + 1;
+ if ((f >= -0.5) && (f < 0.5)) {
+ /* Handles negative zero. */
+ ctxt->value->floatval *= 0.0;
+ }
+ else {
+ double rounded = floor(f);
+ if (f - rounded >= 0.5)
+ rounded += 1.0;
+ ctxt->value->floatval = rounded;
}
}
@@ -10056,20 +10027,6 @@ xmlXPathParseNameComplex(xmlXPathParserContextPtr ctxt, int qualified) {
#define MAX_FRAC 20
-/*
- * These are used as divisors for the fractional part of a number.
- * Since the table includes 1.0 (representing '0' fractional digits),
- * it must be dimensioned at MAX_FRAC+1 (bug 133921)
- */
-static double my_pow10[MAX_FRAC+1] = {
- 1.0, 10.0, 100.0, 1000.0, 10000.0,
- 100000.0, 1000000.0, 10000000.0, 100000000.0, 1000000000.0,
- 10000000000.0, 100000000000.0, 1000000000000.0, 10000000000000.0,
- 100000000000000.0,
- 1000000000000000.0, 10000000000000000.0, 100000000000000000.0,
- 1000000000000000000.0, 10000000000000000000.0, 100000000000000000000.0
-};
-
/**
* xmlXPathStringEvalNumber:
* @str: A string to scan
@@ -10101,7 +10058,7 @@ xmlXPathStringEvalNumber(const xmlChar *str) {
if (cur == NULL) return(0);
while (IS_BLANK_CH(*cur)) cur++;
if ((*cur != '.') && ((*cur < '0') || (*cur > '9')) && (*cur != '-')) {
- return(xmlXPathNAN);
+ return(NAN);
}
if (*cur == '-') {
isneg = 1;
@@ -10132,20 +10089,25 @@ xmlXPathStringEvalNumber(const xmlChar *str) {
#endif
if (*cur == '.') {
- int v, frac = 0;
+ int v, frac = 0, max;
double fraction = 0;
cur++;
if (((*cur < '0') || (*cur > '9')) && (!ok)) {
- return(xmlXPathNAN);
+ return(NAN);
}
- while (((*cur >= '0') && (*cur <= '9')) && (frac < MAX_FRAC)) {
+ while (*cur == '0') {
+ frac = frac + 1;
+ cur++;
+ }
+ max = frac + MAX_FRAC;
+ while (((*cur >= '0') && (*cur <= '9')) && (frac < max)) {
v = (*cur - '0');
fraction = fraction * 10 + v;
frac = frac + 1;
cur++;
}
- fraction /= my_pow10[frac];
+ fraction /= pow(10.0, frac);
ret = ret + fraction;
while ((*cur >= '0') && (*cur <= '9'))
cur++;
@@ -10159,12 +10121,13 @@ xmlXPathStringEvalNumber(const xmlChar *str) {
cur++;
}
while ((*cur >= '0') && (*cur <= '9')) {
- exponent = exponent * 10 + (*cur - '0');
+ if (exponent < 1000000)
+ exponent = exponent * 10 + (*cur - '0');
cur++;
}
}
while (IS_BLANK_CH(*cur)) cur++;
- if (*cur != 0) return(xmlXPathNAN);
+ if (*cur != 0) return(NAN);
if (isneg) ret = -ret;
if (is_exponent_negative) exponent = -exponent;
ret *= pow(10.0, (double)exponent);
@@ -10221,20 +10184,25 @@ xmlXPathCompNumber(xmlXPathParserContextPtr ctxt)
}
#endif
if (CUR == '.') {
- int v, frac = 0;
+ int v, frac = 0, max;
double fraction = 0;
NEXT;
if (((CUR < '0') || (CUR > '9')) && (!ok)) {
XP_ERROR(XPATH_NUMBER_ERROR);
}
- while ((CUR >= '0') && (CUR <= '9') && (frac < MAX_FRAC)) {
+ while (CUR == '0') {
+ frac = frac + 1;
+ NEXT;
+ }
+ max = frac + MAX_FRAC;
+ while ((CUR >= '0') && (CUR <= '9') && (frac < max)) {
v = (CUR - '0');
fraction = fraction * 10 + v;
frac = frac + 1;
NEXT;
}
- fraction /= my_pow10[frac];
+ fraction /= pow(10.0, frac);
ret = ret + fraction;
while ((CUR >= '0') && (CUR <= '9'))
NEXT;
@@ -10248,7 +10216,8 @@ xmlXPathCompNumber(xmlXPathParserContextPtr ctxt)
NEXT;
}
while ((CUR >= '0') && (CUR <= '9')) {
- exponent = exponent * 10 + (CUR - '0');
+ if (exponent < 1000000)
+ exponent = exponent * 10 + (CUR - '0');
NEXT;
}
if (is_exponent_negative)
@@ -10379,6 +10348,7 @@ xmlXPathCompVariableReference(xmlXPathParserContextPtr ctxt) {
NEXT;
name = xmlXPathParseQName(ctxt, &prefix);
if (name == NULL) {
+ xmlFree(prefix);
XP_ERROR(XPATH_VARIABLE_REF_ERROR);
}
ctxt->comp->last = -1;
@@ -10452,6 +10422,8 @@ xmlXPathCompFunctionCall(xmlXPathParserContextPtr ctxt) {
#endif
if (CUR != '(') {
+ xmlFree(name);
+ xmlFree(prefix);
XP_ERROR(XPATH_EXPR_ERROR);
}
NEXT;
@@ -10480,6 +10452,8 @@ xmlXPathCompFunctionCall(xmlXPathParserContextPtr ctxt) {
nbargs++;
if (CUR == ')') break;
if (CUR != ',') {
+ xmlFree(name);
+ xmlFree(prefix);
XP_ERROR(XPATH_EXPR_ERROR);
}
NEXT;
@@ -11915,11 +11889,11 @@ xmlXPathCompOpEvalPositionalPredicate(xmlXPathParserContextPtr ctxt,
}
}
- frame = xmlXPathSetFrame(ctxt);
valuePush(ctxt, contextObj);
+ frame = xmlXPathSetFrame(ctxt);
res = xmlXPathCompOpEvalToBoolean(ctxt, exprOp, 1);
- tmp = valuePop(ctxt);
xmlXPathPopFrame(ctxt, frame);
+ tmp = valuePop(ctxt);
if ((ctxt->error != XPATH_EXPRESSION_OK) || (res == -1)) {
while (tmp != contextObj) {
@@ -12054,6 +12028,8 @@ xmlXPathIsPositionalPredicate(xmlXPathParserContextPtr ctxt,
(exprOp->value4 != NULL) &&
(((xmlXPathObjectPtr) exprOp->value4)->type == XPATH_NUMBER))
{
+ double floatval = ((xmlXPathObjectPtr) exprOp->value4)->floatval;
+
/*
* We have a "[n]" predicate here.
* TODO: Unfortunately this simplistic test here is not
@@ -12064,13 +12040,12 @@ xmlXPathIsPositionalPredicate(xmlXPathParserContextPtr ctxt,
* like it "[position() < 5]", is also not detected.
* Maybe we could rewrite the AST to ease the optimization.
*/
- *maxPos = (int) ((xmlXPathObjectPtr) exprOp->value4)->floatval;
- if (((xmlXPathObjectPtr) exprOp->value4)->floatval ==
- (float) *maxPos)
- {
- return(1);
- }
+ if ((floatval > INT_MIN) && (floatval < INT_MAX)) {
+ *maxPos = (int) floatval;
+ if (floatval == (double) *maxPos)
+ return(1);
+ }
}
return(0);
}
@@ -12411,7 +12386,7 @@ xmlXPathNodeCollectAndTest(xmlXPathParserContextPtr ctxt,
default:
break;
}
- } else if (cur->type == type) {
+ } else if (cur->type == (xmlElementType) type) {
if (cur->type == XML_NAMESPACE_DECL)
XP_TEST_HIT_NS
else
@@ -12772,11 +12747,15 @@ xmlXPathCompOpEvalFirst(xmlXPathParserContextPtr ctxt,
xmlXPathCompOpEvalFirst(ctxt, &comp->steps[op->ch2],
first);
CHECK_ERROR0;
- CHECK_TYPE0(XPATH_NODESET);
- arg2 = valuePop(ctxt);
- CHECK_TYPE0(XPATH_NODESET);
+ arg2 = valuePop(ctxt);
arg1 = valuePop(ctxt);
+ if ((arg1 == NULL) || (arg1->type != XPATH_NODESET) ||
+ (arg2 == NULL) || (arg2->type != XPATH_NODESET)) {
+ xmlXPathReleaseObject(ctxt->context, arg1);
+ xmlXPathReleaseObject(ctxt->context, arg2);
+ XP_ERROR0(XPATH_INVALID_TYPE);
+ }
arg1->nodesetval = xmlXPathNodeSetMerge(arg1->nodesetval,
arg2->nodesetval);
@@ -12907,11 +12886,15 @@ xmlXPathCompOpEvalLast(xmlXPathParserContextPtr ctxt, xmlXPathStepOpPtr op,
&& (ctxt->value->nodesetval != NULL)
&& (ctxt->value->nodesetval->nodeNr >= 1)) { /* TODO: NOP ? */
}
- CHECK_TYPE0(XPATH_NODESET);
- arg2 = valuePop(ctxt);
- CHECK_TYPE0(XPATH_NODESET);
+ arg2 = valuePop(ctxt);
arg1 = valuePop(ctxt);
+ if ((arg1 == NULL) || (arg1->type != XPATH_NODESET) ||
+ (arg2 == NULL) || (arg2->type != XPATH_NODESET)) {
+ xmlXPathReleaseObject(ctxt->context, arg1);
+ xmlXPathReleaseObject(ctxt->context, arg2);
+ XP_ERROR0(XPATH_INVALID_TYPE);
+ }
arg1->nodesetval = xmlXPathNodeSetMerge(arg1->nodesetval,
arg2->nodesetval);
@@ -13022,13 +13005,7 @@ xmlXPathCompOpEvalFilterFirst(xmlXPathParserContextPtr ctxt,
(ctxt->value->nodesetval != NULL) &&
(ctxt->value->nodesetval->nodeTab != NULL) &&
(ctxt->value->nodesetval->nodeNr > 1)) {
- ctxt->value->nodesetval->nodeTab[0] =
- ctxt->value->nodesetval->nodeTab[ctxt->
- value->
- nodesetval->
- nodeNr -
- 1];
- ctxt->value->nodesetval->nodeNr = 1;
+ xmlXPathNodeSetKeepLast(ctxt->value->nodesetval);
*first = *(ctxt->value->nodesetval->nodeTab);
}
return (total);
@@ -13445,11 +13422,15 @@ xmlXPathCompOpEval(xmlXPathParserContextPtr ctxt, xmlXPathStepOpPtr op)
ctxt->context->contextSize = cs;
total += xmlXPathCompOpEval(ctxt, &comp->steps[op->ch2]);
CHECK_ERROR0;
- CHECK_TYPE0(XPATH_NODESET);
- arg2 = valuePop(ctxt);
- CHECK_TYPE0(XPATH_NODESET);
+ arg2 = valuePop(ctxt);
arg1 = valuePop(ctxt);
+ if ((arg1 == NULL) || (arg1->type != XPATH_NODESET) ||
+ (arg2 == NULL) || (arg2->type != XPATH_NODESET)) {
+ xmlXPathReleaseObject(ctxt->context, arg1);
+ xmlXPathReleaseObject(ctxt->context, arg2);
+ XP_ERROR0(XPATH_INVALID_TYPE);
+ }
if ((arg1->nodesetval == NULL) ||
((arg2->nodesetval != NULL) &&
@@ -13507,10 +13488,8 @@ xmlXPathCompOpEval(xmlXPathParserContextPtr ctxt, xmlXPathStepOpPtr op)
xmlXPathCompOpEval(ctxt, &comp->steps[op->ch1]);
if (op->value5 == NULL) {
val = xmlXPathVariableLookup(ctxt->context, op->value4);
- if (val == NULL) {
- ctxt->error = XPATH_UNDEF_VARIABLE_ERROR;
- return(0);
- }
+ if (val == NULL)
+ XP_ERROR0(XPATH_UNDEF_VARIABLE_ERROR);
valuePush(ctxt, val);
} else {
const xmlChar *URI;
@@ -13525,10 +13504,8 @@ xmlXPathCompOpEval(xmlXPathParserContextPtr ctxt, xmlXPathStepOpPtr op)
}
val = xmlXPathVariableLookupNS(ctxt->context,
op->value4, URI);
- if (val == NULL) {
- ctxt->error = XPATH_UNDEF_VARIABLE_ERROR;
- return(0);
- }
+ if (val == NULL)
+ XP_ERROR0(XPATH_UNDEF_VARIABLE_ERROR);
valuePush(ctxt, val);
}
return (total);
@@ -13565,7 +13542,7 @@ xmlXPathCompOpEval(xmlXPathParserContextPtr ctxt, xmlXPathStepOpPtr op)
}
}
if (op->cache != NULL)
- XML_CAST_FPTR(func) = op->cache;
+ func = op->cache;
else {
const xmlChar *URI = NULL;
@@ -13592,7 +13569,7 @@ xmlXPathCompOpEval(xmlXPathParserContextPtr ctxt, xmlXPathStepOpPtr op)
(char *)op->value4);
XP_ERROR0(XPATH_UNKNOWN_FUNC_ERROR);
}
- op->cache = XML_CAST_FPTR(func);
+ op->cache = func;
op->cacheURI = (void *) URI;
}
oldFunc = ctxt->context->function;
@@ -13677,7 +13654,8 @@ xmlXPathCompOpEval(xmlXPathParserContextPtr ctxt, xmlXPathStepOpPtr op)
(ctxt->value->type == XPATH_NODESET) &&
(ctxt->value->nodesetval != NULL) &&
(ctxt->value->nodesetval->nodeNr > 1))
- ctxt->value->nodesetval->nodeNr = 1;
+ xmlXPathNodeSetClearFromPos(ctxt->value->nodesetval,
+ 1, 1);
return (total);
}
}
@@ -13711,15 +13689,8 @@ xmlXPathCompOpEval(xmlXPathParserContextPtr ctxt, xmlXPathStepOpPtr op)
(ctxt->value->type == XPATH_NODESET) &&
(ctxt->value->nodesetval != NULL) &&
(ctxt->value->nodesetval->nodeTab != NULL) &&
- (ctxt->value->nodesetval->nodeNr > 1)) {
- ctxt->value->nodesetval->nodeTab[0] =
- ctxt->value->nodesetval->nodeTab[ctxt->
- value->
- nodesetval->
- nodeNr -
- 1];
- ctxt->value->nodesetval->nodeNr = 1;
- }
+ (ctxt->value->nodesetval->nodeNr > 1))
+ xmlXPathNodeSetKeepLast(ctxt->value->nodesetval);
return (total);
}
}
@@ -14908,10 +14879,11 @@ xmlXPathCompile(const xmlChar *str) {
static int
xmlXPathCompiledEvalInternal(xmlXPathCompExprPtr comp,
xmlXPathContextPtr ctxt,
- xmlXPathObjectPtr *resObj,
+ xmlXPathObjectPtr *resObjPtr,
int toBool)
{
xmlXPathParserContextPtr pctxt;
+ xmlXPathObjectPtr resObj;
#ifndef LIBXML_THREAD_ENABLED
static int reentance = 0;
#endif
@@ -14939,43 +14911,26 @@ xmlXPathCompiledEvalInternal(xmlXPathCompExprPtr comp,
pctxt = xmlXPathCompParserContext(comp, ctxt);
res = xmlXPathRunEval(pctxt, toBool);
- if (resObj) {
- if (pctxt->value == NULL) {
- xmlGenericError(xmlGenericErrorContext,
- "xmlXPathCompiledEval: evaluation failed\n");
- *resObj = NULL;
- } else {
- *resObj = valuePop(pctxt);
- }
+ if (pctxt->error != XPATH_EXPRESSION_OK) {
+ resObj = NULL;
+ } else {
+ resObj = valuePop(pctxt);
+ if (resObj == NULL) {
+ if (!toBool)
+ xmlGenericError(xmlGenericErrorContext,
+ "xmlXPathCompiledEval: No result on the stack.\n");
+ } else if (pctxt->valueNr > 0) {
+ xmlGenericError(xmlGenericErrorContext,
+ "xmlXPathCompiledEval: %d object(s) left on the stack.\n",
+ pctxt->valueNr);
+ }
}
- /*
- * Pop all remaining objects from the stack.
- */
- if (pctxt->valueNr > 0) {
- xmlXPathObjectPtr tmp;
- int stack = 0;
-
- do {
- tmp = valuePop(pctxt);
- if (tmp != NULL) {
- stack++;
- xmlXPathReleaseObject(ctxt, tmp);
- }
- } while (tmp != NULL);
- if ((stack != 0) &&
- ((toBool) || ((resObj) && (*resObj))))
- {
- xmlGenericError(xmlGenericErrorContext,
- "xmlXPathCompiledEval: %d objects left on the stack.\n",
- stack);
- }
- }
+ if (resObjPtr)
+ *resObjPtr = resObj;
+ else
+ xmlXPathReleaseObject(ctxt, resObj);
- if ((pctxt->error != XPATH_EXPRESSION_OK) && (resObj) && (*resObj)) {
- xmlXPathFreeObject(*resObj);
- *resObj = NULL;
- }
pctxt->comp = NULL;
xmlXPathFreeParserContext(pctxt);
#ifndef LIBXML_THREAD_ENABLED
@@ -15043,22 +14998,21 @@ xmlXPathEvalExpr(xmlXPathParserContextPtr ctxt) {
if (ctxt->comp != NULL)
xmlXPathFreeCompExpr(ctxt->comp);
ctxt->comp = comp;
- if (ctxt->cur != NULL)
- while (*ctxt->cur != 0) ctxt->cur++;
} else
#endif
{
xmlXPathCompileExpr(ctxt, 1);
- if ((ctxt->error == XPATH_EXPRESSION_OK) &&
- (ctxt->comp != NULL) &&
- (ctxt->comp->nbStep > 1) &&
- (ctxt->comp->last >= 0))
- {
+ CHECK_ERROR;
+
+ /* Check for trailing characters. */
+ if (*ctxt->cur != 0)
+ XP_ERROR(XPATH_EXPR_ERROR);
+
+ if ((ctxt->comp->nbStep > 1) && (ctxt->comp->last >= 0))
xmlXPathOptimizeExpression(ctxt->comp,
&ctxt->comp->steps[ctxt->comp->last]);
- }
}
- CHECK_ERROR;
+
xmlXPathRunEval(ctxt, 0);
}
@@ -15075,8 +15029,7 @@ xmlXPathEvalExpr(xmlXPathParserContextPtr ctxt) {
xmlXPathObjectPtr
xmlXPathEval(const xmlChar *str, xmlXPathContextPtr ctx) {
xmlXPathParserContextPtr ctxt;
- xmlXPathObjectPtr res, tmp, init = NULL;
- int stack = 0;
+ xmlXPathObjectPtr res;
CHECK_CTXT(ctx)
@@ -15087,37 +15040,18 @@ xmlXPathEval(const xmlChar *str, xmlXPathContextPtr ctx) {
return NULL;
xmlXPathEvalExpr(ctxt);
- if (ctxt->value == NULL) {
- xmlGenericError(xmlGenericErrorContext,
- "xmlXPathEval: evaluation failed\n");
- res = NULL;
- } else if ((*ctxt->cur != 0) && (ctxt->comp != NULL)
-#ifdef XPATH_STREAMING
- && (ctxt->comp->stream == NULL)
-#endif
- ) {
- xmlXPatherror(ctxt, __FILE__, __LINE__, XPATH_EXPR_ERROR);
+ if (ctxt->error != XPATH_EXPRESSION_OK) {
res = NULL;
} else {
res = valuePop(ctxt);
- }
-
- do {
- tmp = valuePop(ctxt);
- if (tmp != NULL) {
- if (tmp != init)
- stack++;
- xmlXPathReleaseObject(ctx, tmp);
+ if (res == NULL) {
+ xmlGenericError(xmlGenericErrorContext,
+ "xmlXPathCompiledEval: No result on the stack.\n");
+ } else if (ctxt->valueNr > 0) {
+ xmlGenericError(xmlGenericErrorContext,
+ "xmlXPathCompiledEval: %d object(s) left on the stack.\n",
+ ctxt->valueNr);
}
- } while (tmp != NULL);
- if ((stack != 0) && (res != NULL)) {
- xmlGenericError(xmlGenericErrorContext,
- "xmlXPathEval: %d object left on the stack\n",
- stack);
- }
- if (ctxt->error != XPATH_EXPRESSION_OK) {
- xmlXPathFreeObject(res);
- res = NULL;
}
xmlXPathFreeParserContext(ctxt);
@@ -15172,46 +15106,14 @@ xmlXPathNodeEval(xmlNodePtr node, const xmlChar *str, xmlXPathContextPtr ctx) {
* @str: the XPath expression
* @ctxt: the XPath context
*
- * Evaluate the XPath expression in the given context.
+ * Alias for xmlXPathEval().
*
* Returns the xmlXPathObjectPtr resulting from the evaluation or NULL.
* the caller has to free the object.
*/
xmlXPathObjectPtr
xmlXPathEvalExpression(const xmlChar *str, xmlXPathContextPtr ctxt) {
- xmlXPathParserContextPtr pctxt;
- xmlXPathObjectPtr res, tmp;
- int stack = 0;
-
- CHECK_CTXT(ctxt)
-
- xmlXPathInit();
-
- pctxt = xmlXPathNewParserContext(str, ctxt);
- if (pctxt == NULL)
- return NULL;
- xmlXPathEvalExpr(pctxt);
-
- if ((*pctxt->cur != 0) || (pctxt->error != XPATH_EXPRESSION_OK)) {
- xmlXPatherror(pctxt, __FILE__, __LINE__, XPATH_EXPR_ERROR);
- res = NULL;
- } else {
- res = valuePop(pctxt);
- }
- do {
- tmp = valuePop(pctxt);
- if (tmp != NULL) {
- xmlXPathReleaseObject(ctxt, tmp);
- stack++;
- }
- } while (tmp != NULL);
- if ((stack != 0) && (res != NULL)) {
- xmlGenericError(xmlGenericErrorContext,
- "xmlXPathEvalExpression: %d object left on the stack\n",
- stack);
- }
- xmlXPathFreeParserContext(pctxt);
- return(res);
+ return(xmlXPathEval(str, ctxt));
}
/************************************************************************
diff --git a/xpointer.c b/xpointer.c
index d8a2e599..6a41f079 100644
--- a/xpointer.c
+++ b/xpointer.c
@@ -14,6 +14,11 @@
* daniel@veillard.com
*/
+/* To avoid EBCDIC trouble when parsing on zOS */
+#if defined(__MVS__)
+#pragma convert("ISO8859-1")
+#endif
+
#define IN_LIBXML
#include "libxml.h"
@@ -99,6 +104,10 @@ xmlXPtrErr(xmlXPathParserContextPtr ctxt, int error,
msg, extra);
return;
}
+
+ /* cleanup current last error */
+ xmlResetError(&ctxt->context->lastError);
+
ctxt->context->lastError.domain = XML_FROM_XPOINTER;
ctxt->context->lastError.code = error;
ctxt->context->lastError.level = XML_ERR_ERROR;
@@ -458,8 +467,6 @@ xmlXPtrNewRangeNodePoint(xmlNodePtr start, xmlXPathObjectPtr end) {
return(NULL);
if (end == NULL)
return(NULL);
- if (start->type != XPATH_POINT)
- return(NULL);
if (end->type != XPATH_POINT)
return(NULL);
@@ -542,7 +549,7 @@ xmlXPtrNewRangeNodeObject(xmlNodePtr start, xmlXPathObjectPtr end) {
/*
* Empty set ...
*/
- if (end->nodesetval->nodeNr <= 0)
+ if ((end->nodesetval == NULL) || (end->nodesetval->nodeNr <= 0))
return(NULL);
endNode = end->nodesetval->nodeTab[end->nodesetval->nodeNr - 1];
endIndex = -1;
@@ -949,8 +956,10 @@ xmlXPtrEvalXPtrPart(xmlXPathParserContextPtr ctxt, xmlChar *name) {
if (name == NULL)
XP_ERROR(XPATH_EXPR_ERROR);
- if (CUR != '(')
+ if (CUR != '(') {
+ xmlFree(name);
XP_ERROR(XPATH_EXPR_ERROR);
+ }
NEXT;
level = 1;
@@ -959,6 +968,7 @@ xmlXPtrEvalXPtrPart(xmlXPathParserContextPtr ctxt, xmlChar *name) {
buffer = (xmlChar *) xmlMallocAtomic(len * sizeof (xmlChar));
if (buffer == NULL) {
xmlXPtrErrMemory("allocating buffer");
+ xmlFree(name);
return;
}
@@ -983,6 +993,7 @@ xmlXPtrEvalXPtrPart(xmlXPathParserContextPtr ctxt, xmlChar *name) {
*cur = 0;
if ((level != 0) && (CUR == 0)) {
+ xmlFree(name);
xmlFree(buffer);
XP_ERROR(XPTR_SYNTAX_ERROR);
}
@@ -1015,6 +1026,7 @@ xmlXPtrEvalXPtrPart(xmlXPathParserContextPtr ctxt, xmlChar *name) {
if (name2 == NULL) {
CUR_PTR = left;
xmlFree(buffer);
+ xmlFree(name);
XP_ERROR(XPATH_EXPR_ERROR);
}
xmlXPtrEvalChildSeq(ctxt, name2);
@@ -1361,7 +1373,7 @@ xmlXPtrEval(const xmlChar *str, xmlXPathContextPtr ctx) {
*/
xmlNodeSetPtr set;
set = tmp->nodesetval;
- if ((set->nodeNr != 1) ||
+ if ((set == NULL) || (set->nodeNr != 1) ||
(set->nodeTab[0] != (xmlNodePtr) ctx->doc))
stack++;
} else
@@ -1796,8 +1808,8 @@ xmlXPtrStartPointFunction(xmlXPathParserContextPtr ctxt, int nargs) {
case XPATH_RANGE: {
xmlNodePtr node = tmp->user;
if (node != NULL) {
- if (node->type == XML_ATTRIBUTE_NODE) {
- /* TODO: Namespace Nodes ??? */
+ if ((node->type == XML_ATTRIBUTE_NODE) ||
+ (node->type == XML_NAMESPACE_DECL)) {
xmlXPathFreeObject(obj);
xmlXPtrFreeLocationSet(newset);
XP_ERROR(XPTR_SYNTAX_ERROR);
@@ -1892,8 +1904,8 @@ xmlXPtrEndPointFunction(xmlXPathParserContextPtr ctxt, int nargs) {
case XPATH_RANGE: {
xmlNodePtr node = tmp->user2;
if (node != NULL) {
- if (node->type == XML_ATTRIBUTE_NODE) {
- /* TODO: Namespace Nodes ??? */
+ if ((node->type == XML_ATTRIBUTE_NODE) ||
+ (node->type == XML_NAMESPACE_DECL)) {
xmlXPathFreeObject(obj);
xmlXPtrFreeLocationSet(newset);
XP_ERROR(XPTR_SYNTAX_ERROR);
@@ -2034,9 +2046,11 @@ xmlXPtrRangeFunction(xmlXPathParserContextPtr ctxt, int nargs) {
xmlXPathFreeObject(set);
XP_ERROR(XPATH_MEMORY_ERROR);
}
- for (i = 0;i < oldset->locNr;i++) {
- xmlXPtrLocationSetAdd(newset,
- xmlXPtrCoveringRange(ctxt, oldset->locTab[i]));
+ if (oldset != NULL) {
+ for (i = 0;i < oldset->locNr;i++) {
+ xmlXPtrLocationSetAdd(newset,
+ xmlXPtrCoveringRange(ctxt, oldset->locTab[i]));
+ }
}
/*
diff --git a/xzlib.c b/xzlib.c
index 782957f6..a839169e 100644
--- a/xzlib.c
+++ b/xzlib.c
@@ -31,10 +31,10 @@
#ifdef HAVE_STDLIB_H
#include <stdlib.h>
#endif
-#ifdef HAVE_ZLIB_H
+#ifdef LIBXML_ZLIB_ENABLED
#include <zlib.h>
#endif
-#ifdef HAVE_LZMA_H
+#ifdef LIBXML_LZMA_ENABLED
#include <lzma.h>
#endif
@@ -76,7 +76,7 @@ typedef struct {
char padding1[32]; /* padding allowing to cope with possible
extensions of above structure without
too much side effect */
-#ifdef HAVE_ZLIB_H
+#ifdef LIBXML_ZLIB_ENABLED
/* zlib inflate or deflate stream */
z_stream zstrm; /* stream structure in-place (not a pointer) */
#endif
@@ -130,7 +130,7 @@ xz_reset(xz_statep state)
xz_error(state, LZMA_OK, NULL); /* clear error */
state->pos = 0; /* no uncompressed data yet */
state->strm.avail_in = 0; /* no input data yet */
-#ifdef HAVE_ZLIB_H
+#ifdef LIBXML_ZLIB_ENABLED
state->zstrm.avail_in = 0; /* no input data yet */
#endif
}
@@ -272,7 +272,7 @@ xz_avail(xz_statep state)
return 0;
}
-#ifdef HAVE_ZLIB_H
+#ifdef LIBXML_ZLIB_ENABLED
static int
xz_avail_zstrm(xz_statep state)
{
@@ -349,7 +349,7 @@ is_format_lzma(xz_statep state)
return 1;
}
-#ifdef HAVE_ZLIB_H
+#ifdef LIBXML_ZLIB_ENABLED
/* Get next byte from input, or -1 if end or error. */
#define NEXT() ((strm->avail_in == 0 && xz_avail(state) == -1) ? -1 : \
@@ -408,14 +408,14 @@ xz_head(xz_statep state)
state->strm = init;
state->strm.avail_in = 0;
state->strm.next_in = NULL;
- if (lzma_auto_decoder(&state->strm, UINT64_MAX, 0) != LZMA_OK) {
+ if (lzma_auto_decoder(&state->strm, 100000000, 0) != LZMA_OK) {
xmlFree(state->out);
xmlFree(state->in);
state->size = 0;
xz_error(state, LZMA_MEM_ERROR, "out of memory");
return -1;
}
-#ifdef HAVE_ZLIB_H
+#ifdef LIBXML_ZLIB_ENABLED
/* allocate inflate memory */
state->zstrm.zalloc = Z_NULL;
state->zstrm.zfree = Z_NULL;
@@ -449,7 +449,7 @@ xz_head(xz_statep state)
state->direct = 0;
return 0;
}
-#ifdef HAVE_ZLIB_H
+#ifdef LIBXML_ZLIB_ENABLED
/* look for the gzip magic header bytes 31 and 139 */
if (strm->next_in[0] == 31) {
strm->avail_in--;
@@ -550,7 +550,7 @@ xz_decomp(xz_statep state)
action = LZMA_FINISH;
/* decompress and handle errors */
-#ifdef HAVE_ZLIB_H
+#ifdef LIBXML_ZLIB_ENABLED
if (state->how == GZIP) {
state->zstrm.avail_in = (uInt) state->strm.avail_in;
state->zstrm.next_in = (Bytef *) state->strm.next_in;
@@ -592,13 +592,13 @@ xz_decomp(xz_statep state)
/* update available output and crc check value */
state->have = had - strm->avail_out;
state->next = strm->next_out - state->have;
-#ifdef HAVE_ZLIB_H
+#ifdef LIBXML_ZLIB_ENABLED
state->zstrm.adler =
crc32(state->zstrm.adler, state->next, state->have);
#endif
if (ret == LZMA_STREAM_END) {
-#ifdef HAVE_ZLIB_H
+#ifdef LIBXML_ZLIB_ENABLED
if (state->how == GZIP) {
if (gz_next4(state, &crc) == -1 || gz_next4(state, &len) == -1) {
xz_error(state, LZMA_DATA_ERROR, "unexpected end of file");
@@ -788,7 +788,7 @@ __libxml2_xzclose(xzFile file)
/* free memory and close file */
if (state->size) {
lzma_end(&(state->strm));
-#ifdef HAVE_ZLIB_H
+#ifdef LIBXML_ZLIB_ENABLED
if (state->init == 1)
inflateEnd(&(state->zstrm));
state->init = 0;
@@ -797,6 +797,8 @@ __libxml2_xzclose(xzFile file)
xmlFree(state->in);
}
xmlFree(state->path);
+ if ((state->msg != NULL) && (state->err != LZMA_MEM_ERROR))
+ xmlFree(state->msg);
ret = close(state->fd);
xmlFree(state);
return ret ? ret : LZMA_OK;