external/libetonyek/UnpackedTarball_libetonyek.mk |    1 
 external/libetonyek/enumarith.patch               | 5836 ++++++++++++++++++++++
 2 files changed, 5837 insertions(+)

New commits:
commit 27d72f286a3d5adfa6e448d050a9d9f06796e74f
Author:     Stephan Bergmann <stephan.bergm...@allotropia.de>
AuthorDate: Sun Dec 10 22:13:53 2023 +0100
Commit:     Stephan Bergmann <stephan.bergm...@allotropia.de>
CommitDate: Mon Dec 11 07:59:26 2023 +0100

    external/libetonyek: operation between different enumeration types
    
    > IWORKDiscardContext.cpp:85:30: error: invalid bitwise operation between 
different enumeration types ('libetonyek::IWORKToken::Namespace' and 
'libetonyek::IWORKToken::(unnamed enum at ./IWORKToken.h:25:1)')
    >    85 |   case IWORKToken::NS_URI_SF | IWORKToken::bezier :
    >       |        ~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~
    
    etc. as reported now with --with-latest-c++ (i.e., in C++26 mode) by Clang 
18
    trunk since
    
<https://github.com/llvm/llvm-project/commit/1cbd52f791d3f088246526c0801634edb65cee31>
    "[Clang] Implement P2864R2 Remove Deprecated Arithmetic Conversion on
    Enumerations (#73105)"
    
    Change-Id: I28bfd1f90df048acea23d9fddd2010bcb537b251
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160553
    Tested-by: Jenkins
    Reviewed-by: Stephan Bergmann <stephan.bergm...@allotropia.de>

diff --git a/external/libetonyek/UnpackedTarball_libetonyek.mk 
b/external/libetonyek/UnpackedTarball_libetonyek.mk
index 81a3fa5b870a..80b3f5c318af 100644
--- a/external/libetonyek/UnpackedTarball_libetonyek.mk
+++ b/external/libetonyek/UnpackedTarball_libetonyek.mk
@@ -23,6 +23,7 @@ $(eval $(call gb_UnpackedTarball_add_patches,libetonyek,\
        external/libetonyek/0001-fix-build-with-MSVC.patch.1 \
        external/libetonyek/0002-fix-build-with-MSVC.patch.1 \
        external/libetonyek/0001-allow-0-size-message.patch.1 \
+       external/libetonyek/enumarith.patch \
 ))
 
 ifneq ($(OS),MACOSX)
diff --git a/external/libetonyek/enumarith.patch 
b/external/libetonyek/enumarith.patch
new file mode 100644
index 000000000000..b618e5cab921
--- /dev/null
+++ b/external/libetonyek/enumarith.patch
@@ -0,0 +1,5836 @@
+--- src/lib/EtonyekDocument.cpp
++++ src/lib/EtonyekDocument.cpp
+@@ -139,17 +139,17 @@
+ 
+   const char *const name = 
char_cast(xmlTextReaderConstLocalName(reader.get()));
+   const char *const ns = 
char_cast(xmlTextReaderConstNamespaceUri(reader.get()));
+-  if (probeXMLFormat(FORMAT_XML2, EtonyekDocument::TYPE_KEYNOTE, 
KEY2Token::NS_URI_KEY | KEY2Token::presentation,
++  if (probeXMLFormat(FORMAT_XML2, EtonyekDocument::TYPE_KEYNOTE, 
+KEY2Token::NS_URI_KEY | KEY2Token::presentation,
+                      KEY2Token::getTokenizer(), name, ns, info))
+     return true;
+-  if (probeXMLFormat(FORMAT_XML2, EtonyekDocument::TYPE_NUMBERS, 
NUM1Token::NS_URI_LS | NUM1Token::document,
++  if (probeXMLFormat(FORMAT_XML2, EtonyekDocument::TYPE_NUMBERS, 
+NUM1Token::NS_URI_LS | NUM1Token::document,
+                      NUM1Token::getTokenizer(), name, ns, info))
+     return true;
+-  if (probeXMLFormat(FORMAT_XML2, EtonyekDocument::TYPE_PAGES, 
PAG1Token::NS_URI_SL | PAG1Token::document,
++  if (probeXMLFormat(FORMAT_XML2, EtonyekDocument::TYPE_PAGES, 
+PAG1Token::NS_URI_SL | PAG1Token::document,
+                      PAG1Token::getTokenizer(), name, ns, info))
+     return true;
+   // Keynote 1 files define the document type with <!DOCTYPE APXL>
+-  if (probeXMLFormat(FORMAT_XML1, EtonyekDocument::TYPE_KEYNOTE, 
KEY1Token::NS_URI_KEY | KEY1Token::presentation,
++  if (probeXMLFormat(FORMAT_XML1, EtonyekDocument::TYPE_KEYNOTE, 
+KEY1Token::NS_URI_KEY | KEY1Token::presentation,
+                      KEY1Token::getTokenizer(), name, (ns||!checkAPXL) ? ns : 
"http://developer.apple.com/schemas/APXL";, info))
+     return true;
+   return false;
+--- src/lib/IWORKDiscardContext.cpp
++++ src/lib/IWORKDiscardContext.cpp
+@@ -82,41 +82,41 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::bezier :
++  case +IWORKToken::NS_URI_SF | IWORKToken::bezier :
+     return std::make_shared<IWORKBezierElement>(m_state, m_data->m_path);
+-  case IWORKToken::NS_URI_SF | IWORKToken::binary :
++  case +IWORKToken::NS_URI_SF | IWORKToken::binary :
+     return std::make_shared<IWORKBinaryElement>(m_state, 
m_data->m_mediaContent);
+-  case IWORKToken::NS_URI_SF | IWORKToken::cell_style :
++  case +IWORKToken::NS_URI_SF | IWORKToken::cell_style :
+     return std::make_shared<IWORKStyleContext>(m_state, 
&m_state.getDictionary().m_cellStyles);
+-  case IWORKToken::NS_URI_SF | IWORKToken::characterstyle :
++  case +IWORKToken::NS_URI_SF | IWORKToken::characterstyle :
+     return std::make_shared<IWORKStyleContext>(m_state, 
&m_state.getDictionary().m_characterStyles);
+-  case IWORKToken::NS_URI_SF | IWORKToken::core_image_filter_descriptor :
++  case +IWORKToken::NS_URI_SF | IWORKToken::core_image_filter_descriptor :
+     return std::make_shared<IWORKCoreImageFilterDescriptorElement>(m_state, 
m_data->m_isShadow);
+-  case IWORKToken::NS_URI_SF | IWORKToken::data :
++  case +IWORKToken::NS_URI_SF | IWORKToken::data :
+     m_data->m_data.reset();
+     return std::make_shared<IWORKDataElement>(m_state, m_data->m_data, 
m_data->m_fillColor);
+-  case IWORKToken::NS_URI_SF | IWORKToken::layoutstyle :
++  case +IWORKToken::NS_URI_SF | IWORKToken::layoutstyle :
+     return std::make_shared<IWORKStyleContext>(m_state, 
&m_state.getDictionary().m_layoutStyles);
+-  case IWORKToken::NS_URI_SF | IWORKToken::liststyle :
++  case +IWORKToken::NS_URI_SF | IWORKToken::liststyle :
+     return std::make_shared<IWORKStyleContext>(m_state, 
&m_state.getDictionary().m_listStyles);
+-  case IWORKToken::NS_URI_SF | IWORKToken::listLabelIndents :
++  case +IWORKToken::NS_URI_SF | IWORKToken::listLabelIndents :
+     return std::make_shared<IWORKListLabelIndentsProperty>(m_state, 
m_data->m_propertyMap);
+-  case IWORKToken::NS_URI_SF | IWORKToken::list_label_geometry :
++  case +IWORKToken::NS_URI_SF | IWORKToken::list_label_geometry :
+     return std::make_shared<IWORKListLabelGeometryElement>(m_state, 
m_data->m_listLabelGeometry);
+-  case IWORKToken::NS_URI_SF | IWORKToken::list_label_typeinfo :
++  case +IWORKToken::NS_URI_SF | IWORKToken::list_label_typeinfo :
+     return std::make_shared<IWORKListLabelTypeinfoElement>(m_state, 
m_data->m_listLabelTypeInfo);
+-  case IWORKToken::NS_URI_SF | IWORKToken::paragraphstyle :
++  case +IWORKToken::NS_URI_SF | IWORKToken::paragraphstyle :
+     return std::make_shared<IWORKStyleContext>(m_state, 
&m_state.getDictionary().m_paragraphStyles);
+-  case IWORKToken::NS_URI_SF | IWORKToken::slide_style :
++  case +IWORKToken::NS_URI_SF | IWORKToken::slide_style :
+     return std::make_shared<IWORKStyleContext>(m_state, 
&m_state.getDictionary().m_slideStyles);
+-  case IWORKToken::NS_URI_SF | IWORKToken::tabs :
++  case +IWORKToken::NS_URI_SF | IWORKToken::tabs :
+     m_data->m_tabStops.clear();
+     return std::make_shared<IWORKTabsElement>(m_state, m_data->m_tabStops);
+-  case IWORKToken::NS_URI_SF | IWORKToken::tabular_style :
++  case +IWORKToken::NS_URI_SF | IWORKToken::tabular_style :
+     return std::make_shared<IWORKStyleContext>(m_state, 
&m_state.getDictionary().m_tabularStyles);
+-  case IWORKToken::NS_URI_SF | IWORKToken::text_label :
++  case +IWORKToken::NS_URI_SF | IWORKToken::text_label :
+     return std::make_shared<IWORKTextLabelElement>(m_state, 
m_data->m_listLabelTypeInfo);
+-  case IWORKToken::NS_URI_SF | IWORKToken::unfiltered :
++  case +IWORKToken::NS_URI_SF | IWORKToken::unfiltered :
+     m_data->m_mediaContent.reset();
+     return std::make_shared<IWORKUnfilteredElement>(m_state, 
m_data->m_mediaContent);
+   default:
+--- src/lib/IWORKXMLContextBase.cpp
++++ src/lib/IWORKXMLContextBase.cpp
+@@ -35,7 +35,7 @@
+ 
+ void IWORKXMLContextElement::attribute(const int name, const char *const 
value)
+ {
+-  if ((IWORKToken::NS_URI_SFA | IWORKToken::ID) == name)
++  if ((+IWORKToken::NS_URI_SFA | IWORKToken::ID) == name)
+     m_id = value;
+ }
+ 
+@@ -81,10 +81,10 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SFA | IWORKToken::ID :
++  case +IWORKToken::NS_URI_SFA | IWORKToken::ID :
+     m_id = value;
+     break;
+-  case IWORKToken::NS_URI_SFA | IWORKToken::IDREF :
++  case +IWORKToken::NS_URI_SFA | IWORKToken::IDREF :
+     m_ref = value;
+     break;
+   default:
+--- src/lib/KEY1Parser.cpp
++++ src/lib/KEY1Parser.cpp
+@@ -265,7 +265,7 @@
+ {
+   switch (name)
+   {
+-  case KEY1Token::bullet_characters | KEY1Token::NS_URI_KEY : // README
++  case +KEY1Token::bullet_characters | KEY1Token::NS_URI_KEY : // README
+     break;
+   default :
+     ETONYEK_DEBUG_MSG(("BulletCharacterStyleElement::element[KEY1Parser.cpp]: 
unknown element\n"));
+@@ -347,12 +347,12 @@
+   ensureOpened();
+   switch (name)
+   {
+-  case KEY1Token::character_bullet_style | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::character_bullet_style | KEY1Token::NS_URI_KEY :
+     return std::make_shared<BulletCharacterStyleElement>(getState());
+-  case KEY1Token::image_bullet_style | KEY1Token::NS_URI_KEY : // README
+-  case KEY1Token::sequence_bullet_style | KEY1Token::NS_URI_KEY : // README
++  case +KEY1Token::image_bullet_style | KEY1Token::NS_URI_KEY : // README
++  case +KEY1Token::sequence_bullet_style | KEY1Token::NS_URI_KEY : // README
+     break;
+-  case KEY1Token::content | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::content | KEY1Token::NS_URI_KEY :
+     return std::make_shared<KEY1ContentElement>(getState());
+   default :
+     ETONYEK_DEBUG_MSG(("BulletElement::element[KEY1Parser.cpp]: unknown 
element\n"));
+@@ -411,7 +411,7 @@
+ {
+   switch (name)
+   {
+-  case KEY1Token::bullet | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::bullet | KEY1Token::NS_URI_KEY :
+     return std::make_shared<BulletElement>(getState());
+   default :
+     ETONYEK_DEBUG_MSG(("BulletsElement::element[KEY1Parser.cpp]: unknown 
element\n"));
+@@ -493,7 +493,7 @@
+ {
+   switch (name)
+   {
+-  case KEY1Token::styles | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::styles | KEY1Token::NS_URI_KEY :
+     return std::make_shared<KEY1StylesContext>(getState(), m_style, 
IWORKStylePtr_t());
+   default :
+     ETONYEK_DEBUG_MSG(("BasicShapeElement::element[KEY1Parser.cpp]: unknown 
element\n"));
+@@ -929,7 +929,7 @@
+ {
+   switch (name)
+   {
+-  case KEY1Token::text_attributes | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::text_attributes | KEY1Token::NS_URI_KEY :
+     return std::make_shared<TextAttributesElement>(getState(), m_spanStyle, 
m_paragraphStyle);
+   default:
+     break;
+@@ -1117,7 +1117,7 @@
+ {
+   switch (name)
+   {
+-  case KEY1Token::content | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::content | KEY1Token::NS_URI_KEY :
+     return std::make_shared<KEY1ContentElement>(getState());
+   default:
+     break;
+@@ -1202,18 +1202,18 @@
+ {
+   switch (name)
+   {
+-  case KEY1Token::array  | KEY1Token::NS_URI_KEY : // with list of number
+-  case KEY1Token::chart_prototype  | KEY1Token::NS_URI_KEY :
+-  case KEY1Token::color  | KEY1Token::NS_URI_KEY :
+-  case KEY1Token::content  | KEY1Token::NS_URI_KEY :
+-  case KEY1Token::dict  | KEY1Token::NS_URI_KEY : // with child size, rect, 
...
+-  case KEY1Token::dash_style  | KEY1Token::NS_URI_KEY :
+-  case KEY1Token::fill_style  | KEY1Token::NS_URI_KEY :
+-  case KEY1Token::number  | KEY1Token::NS_URI_KEY :
+-  case KEY1Token::reference  | KEY1Token::NS_URI_KEY : // style reference
+-  case KEY1Token::string  | KEY1Token::NS_URI_KEY : // with value dictionary, 
root
++  case +KEY1Token::array  | KEY1Token::NS_URI_KEY : // with list of number
++  case +KEY1Token::chart_prototype  | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::color  | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::content  | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::dict  | KEY1Token::NS_URI_KEY : // with child size, rect, 
...
++  case +KEY1Token::dash_style  | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::fill_style  | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::number  | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::reference  | KEY1Token::NS_URI_KEY : // style reference
++  case +KEY1Token::string  | KEY1Token::NS_URI_KEY : // with value 
dictionary, root
+     break;
+-  case KEY1Token::table  | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::table  | KEY1Token::NS_URI_KEY :
+     return std::make_shared<KEY1TableElement>(getState(), m_size);
+   default:
+     ETONYEK_DEBUG_MSG(("PluginDataElement::element[KEY1Parser.cpp]: unknown 
element\n"));
+@@ -1275,9 +1275,9 @@
+ {
+   switch (name)
+   {
+-  case KEY1Token::plugin_data  | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::plugin_data  | KEY1Token::NS_URI_KEY :
+     return std::make_shared<PluginDataElement>(getState(), m_size, false);
+-  case KEY1Token::prototype_data  | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::prototype_data  | KEY1Token::NS_URI_KEY :
+     return std::make_shared<PluginDataElement>(getState(), m_size, true);
+   default :
+     return BasicShapeElement::element(name);
+@@ -1348,19 +1348,19 @@
+ {
+   switch (name)
+   {
+-  case KEY1Token::g | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::g | KEY1Token::NS_URI_KEY :
+     return std::make_shared<GroupElement>(getState());
+-  case KEY1Token::image | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::image | KEY1Token::NS_URI_KEY :
+     return std::make_shared<ImageElement>(getState());
+-  case KEY1Token::line | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::line | KEY1Token::NS_URI_KEY :
+     return std::make_shared<LineElement>(getState());
+-  case KEY1Token::page_number | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::page_number | KEY1Token::NS_URI_KEY :
+     return std::make_shared<PageNumberElement>(getState());
+-  case KEY1Token::plugin | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::plugin | KEY1Token::NS_URI_KEY :
+     return std::make_shared<PluginElement>(getState());
+-  case KEY1Token::shape | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::shape | KEY1Token::NS_URI_KEY :
+     return std::make_shared<ShapeElement>(getState());
+-  case KEY1Token::textbox | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::textbox | KEY1Token::NS_URI_KEY :
+     return std::make_shared<TextboxElement>(getState());
+   default :
+     return BasicShapeElement::element(name);
+@@ -1403,23 +1403,23 @@
+ {
+   switch (name)
+   {
+-  case KEY1Token::body | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::body | KEY1Token::NS_URI_KEY :
+     return std::make_shared<BodyElement>(getState());
+-  case KEY1Token::g | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::g | KEY1Token::NS_URI_KEY :
+     return std::make_shared<GroupElement>(getState());
+-  case KEY1Token::image | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::image | KEY1Token::NS_URI_KEY :
+     return std::make_shared<ImageElement>(getState());
+-  case KEY1Token::line | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::line | KEY1Token::NS_URI_KEY :
+     return std::make_shared<LineElement>(getState());
+-  case KEY1Token::page_number | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::page_number | KEY1Token::NS_URI_KEY :
+     return std::make_shared<PageNumberElement>(getState());
+-  case KEY1Token::plugin | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::plugin | KEY1Token::NS_URI_KEY :
+     return std::make_shared<PluginElement>(getState());
+-  case KEY1Token::shape | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::shape | KEY1Token::NS_URI_KEY :
+     return std::make_shared<ShapeElement>(getState());
+-  case KEY1Token::textbox | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::textbox | KEY1Token::NS_URI_KEY :
+     return std::make_shared<TextboxElement>(getState());
+-  case KEY1Token::title | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::title | KEY1Token::NS_URI_KEY :
+     return std::make_shared<TitleElement>(getState());
+   default :
+     ETONYEK_DEBUG_MSG(("DrawablesElement::element[KEY1Parser.cpp]: unknown 
element\n"));
+@@ -1470,7 +1470,7 @@
+ {
+   switch (name)
+   {
+-  case KEY1Token::prototype_plugin | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::prototype_plugin | KEY1Token::NS_URI_KEY :
+     return std::make_shared<PluginElement>(getState());
+   default :
+     ETONYEK_DEBUG_MSG(("PluginsElement::element[KEY1Parser.cpp]: unknown 
element\n"));
+@@ -1564,25 +1564,25 @@
+ {
+   switch (name)
+   {
+-  case KEY1Token::bullets | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::bullets | KEY1Token::NS_URI_KEY :
+     return std::make_shared<BulletsElement>(getState(), false);
+-  case KEY1Token::drawables | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::drawables | KEY1Token::NS_URI_KEY :
+     return std::make_shared<DrawablesElement>(getState(), false);
+-  case KEY1Token::guides | KEY1Token::NS_URI_KEY : // list of guide, safe to 
ignore?
++  case +KEY1Token::guides | KEY1Token::NS_URI_KEY : // list of guide, safe to 
ignore?
+     break;
+-  case KEY1Token::notes | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::notes | KEY1Token::NS_URI_KEY :
+     return std::make_shared<CDATAElement>(getState(), m_notes);
+-  case KEY1Token::prototype_bullets | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::prototype_bullets | KEY1Token::NS_URI_KEY :
+     return std::make_shared<BulletsElement>(getState(), true);
+-  case KEY1Token::prototype_drawables | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::prototype_drawables | KEY1Token::NS_URI_KEY :
+     return std::make_shared<DrawablesElement>(getState(), true);
+-  case KEY1Token::prototype_plugins | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::prototype_plugins | KEY1Token::NS_URI_KEY :
+     return std::make_shared<PluginsElement>(getState(), true);
+-  case KEY1Token::background_fill_style | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::background_fill_style | KEY1Token::NS_URI_KEY :
+     return std::make_shared<KEY1FillElement>(getState(), m_background);
+-  case KEY1Token::transition_style | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::transition_style | KEY1Token::NS_URI_KEY :
+     return std::make_shared<TransitionStyleElement>(getState());
+-  case KEY1Token::thumbnails | KEY1Token::NS_URI_KEY : // ok to ignore
++  case +KEY1Token::thumbnails | KEY1Token::NS_URI_KEY : // ok to ignore
+     break;
+   default :
+     ETONYEK_DEBUG_MSG(("SlideElement::element[KEY1Parser.cpp]: unknown 
element\n"));
+@@ -1693,7 +1693,7 @@
+ {
+   switch (name)
+   {
+-  case KEY1Token::slide | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::slide | KEY1Token::NS_URI_KEY :
+     return std::make_shared<SlideElement>(getState(), false);
+   default :
+     ETONYEK_DEBUG_MSG(("SlideListElement::element[KEY1Parser.cpp]: unexpected 
element\n"));
+@@ -1740,7 +1740,7 @@
+ {
+   switch (name)
+   {
+-  case KEY1Token::master_slide | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::master_slide | KEY1Token::NS_URI_KEY :
+     return std::make_shared<SlideElement>(getState(), true);
+   default :
+     ETONYEK_DEBUG_MSG(("MasterSlidesElement::element[KEY1Parser.cpp]: 
unexpected element\n"));
+@@ -1799,13 +1799,13 @@
+ {
+   switch (name)
+   {
+-  case KEY1Token::description | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::description | KEY1Token::NS_URI_KEY :
+     return std::make_shared<CDATAElement>(getState(), m_description);
+-  case KEY1Token::prototype_drawables | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::prototype_drawables | KEY1Token::NS_URI_KEY :
+     return std::make_shared<DrawablesElement>(getState(), true);
+-  case KEY1Token::prototype_plugins | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::prototype_plugins | KEY1Token::NS_URI_KEY :
+     return std::make_shared<PluginsElement>(getState(), true);
+-  case KEY1Token::master_slides | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::master_slides | KEY1Token::NS_URI_KEY :
+     return std::make_shared<MasterSlidesElement>(getState());
+   default :
+     ETONYEK_DEBUG_MSG(("ThemeElement::element[KEY1Parser.cpp]: unexpected 
element\n"));
+@@ -1862,13 +1862,13 @@
+ {
+   switch (name)
+   {
+-  case KEY1Token::metadata | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::metadata | KEY1Token::NS_URI_KEY :
+     return std::make_shared<MetadataElement>(getState());
+-  case KEY1Token::theme | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::theme | KEY1Token::NS_URI_KEY :
+     return std::make_shared<ThemeElement>(getState());
+-  case KEY1Token::slide_list | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::slide_list | KEY1Token::NS_URI_KEY :
+     return std::make_shared<SlideListElement>(getState());
+-  case KEY1Token::ui_state | KEY1Token::NS_URI_KEY : // safe to ignore
++  case +KEY1Token::ui_state | KEY1Token::NS_URI_KEY : // safe to ignore
+     break;
+   default :
+     ETONYEK_DEBUG_MSG(("PresentationElement::element[KEY1Parser.cpp]: 
unexpected element\n"));
+@@ -1910,7 +1910,7 @@
+ {
+   switch (name)
+   {
+-  case KEY1Token::presentation | KEY1Token::NS_URI_KEY :
++  case +KEY1Token::presentation | KEY1Token::NS_URI_KEY :
+     return std::make_shared<PresentationElement>(m_state);
+   default:
+     ETONYEK_DEBUG_MSG(("XMLDocument::element[KEY1Parser.cpp]: unexpected 
element\n"));
+--- src/lib/KEY2Parser.cpp
++++ src/lib/KEY2Parser.cpp
+@@ -102,7 +102,7 @@
+ 
+ IWORKXMLContextPtr_t StringContentContext::element(const int name)
+ {
+-  if (name == (KEY2Token::NS_URI_KEY | KEY2Token::string))
++  if (name == (+KEY2Token::NS_URI_KEY | KEY2Token::string))
+     return std::make_shared<IWORKStringElement>(getState(), m_value);
+   return IWORKXMLContextPtr_t();
+ }
+@@ -141,13 +141,13 @@
+ {
+   switch (name)
+   {
+-  case KEY2Token::NS_URI_KEY | KEY2Token::authors :
++  case +KEY2Token::NS_URI_KEY | KEY2Token::authors :
+     return std::make_shared<StringContentContext>(getState(), m_author);
+-  case KEY2Token::NS_URI_KEY | KEY2Token::comment :
++  case +KEY2Token::NS_URI_KEY | KEY2Token::comment :
+     return std::make_shared<StringContentContext>(getState(), m_comment);
+-  case KEY2Token::NS_URI_KEY | KEY2Token::keywords :
++  case +KEY2Token::NS_URI_KEY | KEY2Token::keywords :
+     return std::make_shared<StringContentContext>(getState(), m_keywords);
+-  case KEY2Token::NS_URI_KEY | KEY2Token::title :
++  case +KEY2Token::NS_URI_KEY | KEY2Token::title :
+     return std::make_shared<StringContentContext>(getState(), m_title);
+   default:
+     break;
+@@ -196,10 +196,10 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::placeholder_style :
++  case +IWORKToken::NS_URI_SF | IWORKToken::placeholder_style :
+     return std::make_shared<IWORKStyleContext>(getState(), 
&getState().getDictionary().m_placeholderStyles);
+-  case KEY2Token::NS_URI_KEY | KEY2Token::slide_style : // v5
+-  case IWORKToken::NS_URI_SF | IWORKToken::slide_style : // v2-v4
++  case +KEY2Token::NS_URI_KEY | KEY2Token::slide_style : // v5
++  case +IWORKToken::NS_URI_SF | IWORKToken::slide_style : // v2-v4
+     return std::make_shared<KEY2StyleContext>(getState(), 
&getState().getDictionary().m_slideStyles);
+   default:
+     break;
+@@ -236,11 +236,11 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::styles :
++  case +IWORKToken::NS_URI_SF | IWORKToken::styles :
+     return std::make_shared<StylesContext>(getState(), false);
+-  case IWORKToken::NS_URI_SF | IWORKToken::anon_styles :
++  case +IWORKToken::NS_URI_SF | IWORKToken::anon_styles :
+     return std::make_shared<StylesContext>(getState(), true);
+-  case IWORKToken::NS_URI_SF | IWORKToken::parent_ref :
++  case +IWORKToken::NS_URI_SF | IWORKToken::parent_ref :
+     return std::make_shared<IWORKRefContext>(getState(), m_parent);
+   default:
+     break;
+@@ -291,7 +291,7 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::layer_ref :
++  case +IWORKToken::NS_URI_SF | IWORKToken::layer_ref :
+     return std::make_shared<IWORKRefContext>(getState(), m_ref);
+   default:
+     break;
+@@ -362,7 +362,7 @@
+ 
+ namespace
+ {
+-typedef IWORKStyleContainer<IWORKToken::NS_URI_SF | 
IWORKToken::connection_style, IWORKToken::NS_URI_SF | 
IWORKToken::connection_style_ref> ConnectionStyleContext;
++typedef IWORKStyleContainer<+IWORKToken::NS_URI_SF | 
IWORKToken::connection_style, +IWORKToken::NS_URI_SF | 
IWORKToken::connection_style_ref> ConnectionStyleContext;
+ 
+ class ConnectionLineElement : public KEY2XMLElementContextBase
+ {
+@@ -388,11 +388,11 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::geometry :
++  case +IWORKToken::NS_URI_SF | IWORKToken::geometry :
+     return std::make_shared<IWORKGeometryElement>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::path :
++  case +IWORKToken::NS_URI_SF | IWORKToken::path :
+     return std::make_shared<IWORKPathElement>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::style :
++  case +IWORKToken::NS_URI_SF | IWORKToken::style :
+     return std::make_shared<ConnectionStyleContext>(getState(), m_style, 
getState().getDictionary().m_graphicStyles);
+   default:
+     break;
+@@ -453,10 +453,10 @@
+ {
+   switch (name)
+   {
+-  case KEY2Token::NS_URI_KEY | KEY2Token::depth :
++  case +KEY2Token::NS_URI_KEY | KEY2Token::depth :
+     m_depth=try_int_cast(value);
+     break;
+-  case IWORKToken::NS_URI_SFA | IWORKToken::ID :
++  case +IWORKToken::NS_URI_SFA | IWORKToken::ID :
+     KEY2XMLElementContextBase::attribute(name, value);
+     break;
+   default:
+@@ -476,9 +476,9 @@
+   ensureOpened();
+   switch (name)
+   {
+-  case KEY2Token::NS_URI_KEY | KEY2Token::style_ref :
++  case +KEY2Token::NS_URI_KEY | KEY2Token::style_ref :
+     return std::make_shared<IWORKRefContext>(getState(), m_styleRef);
+-  case KEY2Token::NS_URI_KEY | KEY2Token::text :
++  case +KEY2Token::NS_URI_KEY | KEY2Token::text :
+     return std::make_shared<IWORKTextElement>(getState());
+   default:
+     ETONYEK_DEBUG_MSG(("HeadlineElement::element[KEY2Parser.cpp]: unknown 
element\n"));
+@@ -512,7 +512,7 @@
+ 
+ namespace
+ {
+-typedef IWORKStyleContainer<IWORKToken::NS_URI_SF | 
IWORKToken::graphic_style, IWORKToken::NS_URI_SF | 
IWORKToken::graphic_style_ref> GraphicStyleContext;
++typedef IWORKStyleContainer<+IWORKToken::NS_URI_SF | 
IWORKToken::graphic_style, +IWORKToken::NS_URI_SF | 
IWORKToken::graphic_style_ref> GraphicStyleContext;
+ }
+ 
+ namespace
+@@ -551,15 +551,15 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::geometry :
++  case +IWORKToken::NS_URI_SF | IWORKToken::geometry :
+     return std::make_shared<IWORKGeometryElement>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::path : // use me
++  case +IWORKToken::NS_URI_SF | IWORKToken::path : // use me
+     return std::make_shared<IWORKPathElement>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::style : // use me
++  case +IWORKToken::NS_URI_SF | IWORKToken::style : // use me
+     return std::make_shared<GraphicStyleContext>(getState(), m_graphicStyle, 
getState().getDictionary().m_graphicStyles);
+-  case IWORKToken::NS_URI_SF | IWORKToken::text :
++  case +IWORKToken::NS_URI_SF | IWORKToken::text :
+     return std::make_shared<IWORKTextElement>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::wrap : // README
++  case +IWORKToken::NS_URI_SF | IWORKToken::wrap : // README
+     return IWORKXMLContextPtr_t();
+   default:
+     ETONYEK_DEBUG_MSG(("StickyNoteElement::element[KEY2Parser.cpp]: unknown 
element\n"));
+@@ -618,7 +618,7 @@
+ {
+   switch (name)
+   {
+-  case KEY2Token::NS_URI_KEY | KEY2Token::headline :
++  case +KEY2Token::NS_URI_KEY | KEY2Token::headline :
+     return std::make_shared<HeadlineElement>(getState());
+   default:
+     break;
+@@ -672,31 +672,31 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::body_placeholder_ref :
+-  case KEY2Token::NS_URI_KEY | KEY2Token::body_placeholder_ref :
++  case +IWORKToken::NS_URI_SF | IWORKToken::body_placeholder_ref :
++  case +KEY2Token::NS_URI_KEY | KEY2Token::body_placeholder_ref :
+     return std::make_shared<PlaceholderRefContext>(getState(), 
PLACEHOLDER_BODY);
+-  case IWORKToken::NS_URI_SF | IWORKToken::connection_line :
++  case +IWORKToken::NS_URI_SF | IWORKToken::connection_line :
+     return std::make_shared<ConnectionLineElement>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::group :
++  case +IWORKToken::NS_URI_SF | IWORKToken::group :
+     return std::make_shared<IWORKGroupElement>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::image :
++  case +IWORKToken::NS_URI_SF | IWORKToken::image :
+     return std::make_shared<IWORKImageElement>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::line :
++  case +IWORKToken::NS_URI_SF | IWORKToken::line :
+     return std::make_shared<IWORKLineElement>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::media :
++  case +IWORKToken::NS_URI_SF | IWORKToken::media :
+     return std::make_shared<IWORKMediaElement>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::shape :
++  case +IWORKToken::NS_URI_SF | IWORKToken::shape :
+     return std::make_shared<IWORKShapeContext>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::sticky_note :
++  case +IWORKToken::NS_URI_SF | IWORKToken::sticky_note :
+     return std::make_shared<StickyNoteElement>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::table_info :
++  case +IWORKToken::NS_URI_SF | IWORKToken::table_info :
+     return std::make_shared<IWORKTableInfoElement>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::tabular_info :
++  case +IWORKToken::NS_URI_SF | IWORKToken::tabular_info :
+     return std::make_shared<IWORKTabularInfoElement>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::title_placeholder_ref :
+-  case KEY2Token::NS_URI_KEY | KEY2Token::title_placeholder_ref :
++  case +IWORKToken::NS_URI_SF | IWORKToken::title_placeholder_ref :
++  case +KEY2Token::NS_URI_KEY | KEY2Token::title_placeholder_ref :
+     return std::make_shared<PlaceholderRefContext>(getState(), 
PLACEHOLDER_TITLE);
+-  case KEY2Token::NS_URI_KEY | KEY2Token::sticky_note :
++  case +KEY2Token::NS_URI_KEY | KEY2Token::sticky_note :
+     return std::make_shared<StickyNoteElement>(getState());
+   default:
+     break;
+@@ -742,7 +742,7 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::drawables :
++  case +IWORKToken::NS_URI_SF | IWORKToken::drawables :
+     return std::make_shared<DrawablesElement>(getState());
+   default:
+     break;
+@@ -789,9 +789,9 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::layer :
++  case +IWORKToken::NS_URI_SF | IWORKToken::layer :
+     return std::make_shared<LayerElement>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::proxy_master_layer :
++  case +IWORKToken::NS_URI_SF | IWORKToken::proxy_master_layer :
+     return std::make_shared<ProxyMasterLayerElement>(getState());
+   default:
+     break;
+@@ -829,9 +829,9 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::size :
++  case +IWORKToken::NS_URI_SF | IWORKToken::size :
+     return std::make_shared<IWORKSizeElement>(getState(), m_size);
+-  case IWORKToken::NS_URI_SF | IWORKToken::layers :
++  case +IWORKToken::NS_URI_SF | IWORKToken::layers :
+     return std::make_shared<LayersElement>(getState());
+   default:
+     break;
+@@ -869,7 +869,7 @@
+ 
+ IWORKXMLContextPtr_t StyleElement::element(const int name)
+ {
+-  if ((IWORKToken::NS_URI_SF | IWORKToken::placeholder_style_ref) == name)
++  if ((+IWORKToken::NS_URI_SF | IWORKToken::placeholder_style_ref) == name)
+     return std::make_shared<IWORKRefContext>(getState(), m_ref);
+ 
+   return IWORKXMLContextPtr_t();
+@@ -918,12 +918,12 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::geometry :
++  case +IWORKToken::NS_URI_SF | IWORKToken::geometry :
+     // ignore; the real geometry comes from style
+     break;
+-  case IWORKToken::NS_URI_SF | IWORKToken::style :
++  case +IWORKToken::NS_URI_SF | IWORKToken::style :
+     return std::make_shared<StyleElement>(getState(), m_styleRef);
+-  case KEY2Token::NS_URI_KEY | KEY2Token::text :
++  case +KEY2Token::NS_URI_KEY | KEY2Token::text :
+     return std::make_shared<IWORKTextElement>(getState());
+   default:
+     break;
+@@ -993,7 +993,7 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::text_storage | IWORKToken::NS_URI_SF :
++  case +IWORKToken::text_storage | IWORKToken::NS_URI_SF :
+     return std::make_shared<IWORKTextStorageElement>(getState());
+   default:
+     break;
+@@ -1035,7 +1035,7 @@
+ {
+   switch (name)
+   {
+-  case KEY2Token::NS_URI_KEY | KEY2Token::sticky_note :
++  case +KEY2Token::NS_URI_KEY | KEY2Token::sticky_note :
+     return std::make_shared<StickyNoteElement>(getState());
+   default:
+     break;
+@@ -1096,12 +1096,12 @@
+ {
+   switch (name)
+   {
+-  case KEY2Token::NS_URI_KEY | KEY2Token::name :
++  case +KEY2Token::NS_URI_KEY | KEY2Token::name :
+     m_name=value;
+     break;
+-  case KEY2Token::NS_URI_KEY | KEY2Token::depth :
++  case +KEY2Token::NS_URI_KEY | KEY2Token::depth :
+     break;
+-  case IWORKToken::NS_URI_SFA | IWORKToken::ID :
++  case +IWORKToken::NS_URI_SFA | IWORKToken::ID :
+     KEY2XMLElementContextBase::attribute(name, value);
+     break;
+   default:
+@@ -1120,27 +1120,27 @@
+ {
+   switch (name)
+   {
+-  case KEY2Token::NS_URI_KEY | KEY2Token::bullets :
++  case +KEY2Token::NS_URI_KEY | KEY2Token::bullets :
+     return std::make_shared<BulletsElement>(getState(), m_bodyText, 
m_titleText);
+-  case KEY2Token::NS_URI_KEY | KEY2Token::notes :
++  case +KEY2Token::NS_URI_KEY | KEY2Token::notes :
+     return std::make_shared<NotesElement>(getState());
+-  case KEY2Token::NS_URI_KEY | KEY2Token::page :
++  case +KEY2Token::NS_URI_KEY | KEY2Token::page :
+     return std::make_shared<PageElement>(getState());
+-  case KEY2Token::NS_URI_KEY | KEY2Token::master_ref :
++  case +KEY2Token::NS_URI_KEY | KEY2Token::master_ref :
+     return std::make_shared<IWORKRefContext>(getState(), m_masterRef);
+-  case KEY2Token::NS_URI_KEY | KEY2Token::sticky_notes :
++  case +KEY2Token::NS_URI_KEY | KEY2Token::sticky_notes :
+     return std::make_shared<StickyNotesElement>(getState());
+-  case KEY2Token::NS_URI_KEY | KEY2Token::style_ref :
++  case +KEY2Token::NS_URI_KEY | KEY2Token::style_ref :
+     return std::make_shared<IWORKRefContext>(getState(), m_styleRef);
+-  case KEY2Token::NS_URI_KEY | KEY2Token::stylesheet :
++  case +KEY2Token::NS_URI_KEY | KEY2Token::stylesheet :
+     return std::make_shared<StylesheetElement>(getState());
+-  case KEY2Token::NS_URI_KEY | KEY2Token::body_placeholder :
++  case +KEY2Token::NS_URI_KEY | KEY2Token::body_placeholder :
+     return std::make_shared<PlaceholderContext>(getState(), PLACEHOLDER_BODY, 
m_bodyRef);
+-  case KEY2Token::NS_URI_KEY | KEY2Token::object_placeholder :
++  case +KEY2Token::NS_URI_KEY | KEY2Token::object_placeholder :
+     return std::make_shared<PlaceholderContext>(getState(), 
PLACEHOLDER_OBJECT, m_objectRef);
+-  case KEY2Token::NS_URI_KEY | KEY2Token::slide_number_placeholder :
++  case +KEY2Token::NS_URI_KEY | KEY2Token::slide_number_placeholder :
+     return std::make_shared<PlaceholderContext>(getState(), 
PLACEHOLDER_SLIDENUMBER, m_slidenumberRef);
+-  case KEY2Token::NS_URI_KEY | KEY2Token::title_placeholder :
++  case +KEY2Token::NS_URI_KEY | KEY2Token::title_placeholder :
+     return std::make_shared<PlaceholderContext>(getState(), 
PLACEHOLDER_TITLE, m_titleRef);
+   default:
+     break;
+@@ -1268,7 +1268,7 @@
+ {
+   switch (name)
+   {
+-  case KEY2Token::NS_URI_KEY | KEY2Token::slide :
++  case +KEY2Token::NS_URI_KEY | KEY2Token::slide :
+     return std::make_shared<SlideElement>(getState(), false);
+   default:
+     break;
+@@ -1314,7 +1314,7 @@
+ {
+   switch (name)
+   {
+-  case KEY2Token::NS_URI_KEY | KEY2Token::master_slide :
++  case +KEY2Token::NS_URI_KEY | KEY2Token::master_slide :
+     return std::make_shared<SlideElement>(getState(), true);
+   default:
+     break;
+@@ -1356,11 +1356,11 @@
+ {
+   switch (name)
+   {
+-  case KEY2Token::NS_URI_KEY | IWORKToken::size :
++  case +KEY2Token::NS_URI_KEY | IWORKToken::size :
+     return std::make_shared<IWORKSizeElement>(getState(), m_size);
+-  case KEY2Token::NS_URI_KEY | KEY2Token::stylesheet :
++  case +KEY2Token::NS_URI_KEY | KEY2Token::stylesheet :
+     return std::make_shared<StylesheetElement>(getState());
+-  case KEY2Token::NS_URI_KEY | KEY2Token::master_slides :
++  case +KEY2Token::NS_URI_KEY | KEY2Token::master_slides :
+     return std::make_shared<MasterSlidesElement>(getState());
+   default:
+     break;
+@@ -1400,7 +1400,7 @@
+ {
+   switch (name)
+   {
+-  case KEY2Token::NS_URI_KEY | KEY2Token::theme :
++  case +KEY2Token::NS_URI_KEY | KEY2Token::theme :
+     return std::make_shared<ThemeElement>(getState());
+   default:
+     break;
+@@ -1453,7 +1453,7 @@
+ {
+   switch (name)
+   {
+-  case KEY2Token::NS_URI_KEY | KEY2Token::version :
++  case +KEY2Token::NS_URI_KEY | KEY2Token::version :
+   {
+     const unsigned version = getVersion(getToken(value));
+     if (0 == version)
+@@ -1481,13 +1481,13 @@
+ 
+   switch (name)
+   {
+-  case KEY2Token::NS_URI_KEY | KEY2Token::metadata :
++  case +KEY2Token::NS_URI_KEY | KEY2Token::metadata :
+     return std::make_shared<MetadataElement>(getState());
+-  case KEY2Token::NS_URI_KEY | KEY2Token::theme_list :
++  case +KEY2Token::NS_URI_KEY | KEY2Token::theme_list :
+     return std::make_shared<ThemeListElement>(getState());
+-  case KEY2Token::NS_URI_KEY | KEY2Token::slide_list :
++  case +KEY2Token::NS_URI_KEY | KEY2Token::slide_list :
+     return std::make_shared<SlideListElement>(getState());
+-  case KEY2Token::NS_URI_KEY | KEY2Token::size :
++  case +KEY2Token::NS_URI_KEY | KEY2Token::size :
+     m_pendingSize = true;
+     return std::make_shared<IWORKSizeElement>(getState(), m_size);
+   default:
+@@ -1529,7 +1529,7 @@
+ {
+   switch (name)
+   {
+-  case KEY2Token::NS_URI_KEY | KEY2Token::presentation :
++  case +KEY2Token::NS_URI_KEY | KEY2Token::presentation :
+     return std::make_shared<PresentationElement>(m_state);
+   default:
+     break;
+@@ -1574,12 +1574,12 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::placeholder_style :
++  case +IWORKToken::NS_URI_SF | IWORKToken::placeholder_style :
+     return std::make_shared<IWORKStyleContext>(getState(), 
&getState().getDictionary().m_placeholderStyles);
+-  case KEY2Token::NS_URI_KEY | KEY2Token::slide_style : // v5
+-  case IWORKToken::NS_URI_SF | IWORKToken::slide_style : // v2-v4
++  case +KEY2Token::NS_URI_KEY | KEY2Token::slide_style : // v5
++  case +IWORKToken::NS_URI_SF | IWORKToken::slide_style : // v2-v4
+     return std::make_shared<KEY2StyleContext>(getState(), 
&getState().getDictionary().m_slideStyles);
+-  case KEY2Token::NS_URI_KEY | KEY2Token::stylesheet :
++  case +KEY2Token::NS_URI_KEY | KEY2Token::stylesheet :
+     if (!m_savedStylesheet)
+     {
+       // this can only happen in a broken document
+--- src/lib/NUM1Parser.cpp
++++ src/lib/NUM1Parser.cpp
+@@ -86,21 +86,21 @@
+   }
+ }
+ 
+-typedef IWORKStyleContainer<IWORKToken::NS_URI_SF | 
IWORKToken::graphic_style, IWORKToken::NS_URI_SF | 
IWORKToken::graphic_style_ref> GraphicStyleContext;
++typedef IWORKStyleContainer<+IWORKToken::NS_URI_SF | 
IWORKToken::graphic_style, +IWORKToken::NS_URI_SF | 
IWORKToken::graphic_style_ref> GraphicStyleContext;
+ 
+ IWORKXMLContextPtr_t StickyNoteElement::element(const int name)
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::geometry :
++  case +IWORKToken::NS_URI_SF | IWORKToken::geometry :
+     return std::make_shared<IWORKGeometryElement>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::path : // use me
++  case +IWORKToken::NS_URI_SF | IWORKToken::path : // use me
+     return std::make_shared<IWORKPathElement>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::style : // use me
++  case +IWORKToken::NS_URI_SF | IWORKToken::style : // use me
+     return std::make_shared<GraphicStyleContext>(getState(), m_graphicStyle, 
getState().getDictionary().m_graphicStyles);
+-  case IWORKToken::NS_URI_SF | IWORKToken::text :
++  case +IWORKToken::NS_URI_SF | IWORKToken::text :
+     return std::make_shared<IWORKTextElement>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::wrap : // README
++  case +IWORKToken::NS_URI_SF | IWORKToken::wrap : // README
+     return IWORKXMLContextPtr_t();
+   default:
+     ETONYEK_DEBUG_MSG(("StickyNoteElement::element[NUM1Parser.cpp]: unknown 
element\n"));
+@@ -158,25 +158,25 @@
+   {
+   // case IWORKToken::NS_URI_SF | IWORKToken::body_placeholder_ref :
+   //   return std::make_shared<PlaceholderRefContext>(getState(), false);
+-  case IWORKToken::NS_URI_SF | IWORKToken::cell_comment_drawable_info:
++  case +IWORKToken::NS_URI_SF | IWORKToken::cell_comment_drawable_info:
+     return std::make_shared<IWORKCellCommentDrawableInfoElement>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::chart_info :
++  case +IWORKToken::NS_URI_SF | IWORKToken::chart_info :
+     return std::make_shared<IWORKChartInfoElement>(getState());
+   // case IWORKToken::NS_URI_SF | IWORKToken::connection_line :
+   //   return std::make_shared<ConnectionLineElement>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::group :
++  case +IWORKToken::NS_URI_SF | IWORKToken::group :
+     return std::make_shared<IWORKGroupElement>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::image :
++  case +IWORKToken::NS_URI_SF | IWORKToken::image :
+     return std::make_shared<IWORKImageElement>(getState());
+   // case IWORKToken::NS_URI_SF | IWORKToken::line :
+   //   return std::make_shared<LineElement>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::media :
++  case +IWORKToken::NS_URI_SF | IWORKToken::media :
+     return std::make_shared<IWORKMediaElement>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::shape :
++  case +IWORKToken::NS_URI_SF | IWORKToken::shape :
+     return std::make_shared<IWORKShapeContext>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::sticky_note :
++  case +IWORKToken::NS_URI_SF | IWORKToken::sticky_note :
+     return std::make_shared<StickyNoteElement>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::tabular_info :
++  case +IWORKToken::NS_URI_SF | IWORKToken::tabular_info :
+     return std::make_shared<IWORKTabularInfoElement>(getState());
+   // case IWORKToken::NS_URI_SF | IWORKToken::title_placeholder_ref :
+   //   return std::make_shared<PlaceholderRefContext>(getState(), true);
+@@ -216,7 +216,7 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::drawables :
++  case +IWORKToken::NS_URI_SF | IWORKToken::drawables :
+     return std::make_shared<DrawablesElement>(getState());
+   default:
+     break;
+@@ -248,7 +248,7 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::layer :
++  case +IWORKToken::NS_URI_SF | IWORKToken::layer :
+     return std::make_shared<LayerElement>(getState());
+   default:
+     break;
+@@ -281,7 +281,7 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::layers :
++  case +IWORKToken::NS_URI_SF | IWORKToken::layers :
+     return std::make_shared<LayersElement>(getState());
+   default:
+     break;
+@@ -317,8 +317,8 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::workspace_style :
+-  case NUM1Token::NS_URI_LS | NUM1Token::workspace_style :
++  case +IWORKToken::NS_URI_SF | IWORKToken::workspace_style :
++  case +NUM1Token::NS_URI_LS | NUM1Token::workspace_style :
+     return std::make_shared<IWORKStyleContext>(getState(), 
&getState().getDictionary().m_workspaceStyles);
+   default:
+     break;
+@@ -348,9 +348,9 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::styles :
++  case +IWORKToken::NS_URI_SF | IWORKToken::styles :
+     return std::make_shared<StylesContext>(getState(), false);
+-  case IWORKToken::NS_URI_SF | IWORKToken::anon_styles :
++  case +IWORKToken::NS_URI_SF | IWORKToken::anon_styles :
+     return std::make_shared<StylesContext>(getState(), true);
+   default:
+     break;
+@@ -387,7 +387,7 @@
+ {
+   switch (name)
+   {
+-  case NUM1Token::NS_URI_LS | NUM1Token::workspace_name:
++  case +NUM1Token::NS_URI_LS | NUM1Token::workspace_name:
+     m_spaceName = value;
+     break;
+   default:
+@@ -405,7 +405,7 @@
+   }
+   switch (name)
+   {
+-  case NUM1Token::NS_URI_LS | NUM1Token::page_info:
++  case +NUM1Token::NS_URI_LS | NUM1Token::page_info:
+     return std::make_shared<PageInfoElement>(getState());
+   default:
+     break;
+@@ -443,7 +443,7 @@
+ {
+   switch (name)
+   {
+-  case NUM1Token::NS_URI_LS | NUM1Token::workspace:
++  case +NUM1Token::NS_URI_LS | NUM1Token::workspace:
+     return std::make_shared<WorkSpaceElement>(getState());
+   default:
+     break;
+@@ -484,7 +484,7 @@
+ {
+   switch (name)
+   {
+-  case NUM1Token::NS_URI_LS | NUM1Token::version :
++  case +NUM1Token::NS_URI_LS | NUM1Token::version :
+   {
+     const unsigned version = getVersion(getToken(value));
+     if (0 == version)
+@@ -502,11 +502,11 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::metadata :
++  case +IWORKToken::NS_URI_SF | IWORKToken::metadata :
+     return std::make_shared<IWORKMetadataElement>(getState());
+-  case NUM1Token::NS_URI_LS | NUM1Token::stylesheet :
++  case +NUM1Token::NS_URI_LS | NUM1Token::stylesheet :
+     return std::make_shared<StylesheetElement>(getState());
+-  case NUM1Token::NS_URI_LS | NUM1Token::workspace_array :
++  case +NUM1Token::NS_URI_LS | NUM1Token::workspace_array :
+     return std::make_shared<WorkSpaceArrayElement>(getState());
+   default:
+     break;
+@@ -544,7 +544,7 @@
+ {
+   switch (name)
+   {
+-  case NUM1Token::NS_URI_LS | NUM1Token::document :
++  case +NUM1Token::NS_URI_LS | NUM1Token::document :
+     return std::make_shared<DocumentElement>(m_state);
+   default:
+     break;
+@@ -576,9 +576,9 @@
+ {
+   switch (name)
+   {
+-  case NUM1Token::NS_URI_LS | NUM1Token::stylesheet :
++  case +NUM1Token::NS_URI_LS | NUM1Token::stylesheet :
+     return std::make_shared<StylesheetElement>(getState());
+-  case NUM1Token::NS_URI_LS | NUM1Token::workspace_style :
++  case +NUM1Token::NS_URI_LS | NUM1Token::workspace_style :
+     return std::make_shared<IWORKStyleContext>(getState(), 
&getState().getDictionary().m_workspaceStyles);
+   default:
+     break;
+--- src/lib/PAG1Parser.cpp
++++ src/lib/PAG1Parser.cpp
+@@ -90,7 +90,7 @@
+ 
+ IWORKXMLContextPtr_t AnnotationsElement::element(const int name)
+ {
+-  if (name == (IWORKToken::NS_URI_SF | IWORKToken::annotation))
++  if (name == (+IWORKToken::NS_URI_SF | IWORKToken::annotation))
+     return std::make_shared<PAG1AnnotationContext>(getState(),
+                                                    
std::bind(&PAGCollector::collectAnnotation, std::ref(getCollector()), _1));
+   return IWORKXMLContextPtr_t();
+@@ -114,7 +114,7 @@
+ 
+ IWORKXMLContextPtr_t FootersElement::element(const int name)
+ {
+-  if (name == (IWORKToken::NS_URI_SF | IWORKToken::footer))
++  if (name == (+IWORKToken::NS_URI_SF | IWORKToken::footer))
+     return std::make_shared<IWORKHeaderFooterContext>(getState(),
+                                                       
std::bind(&IWORKCollector::collectFooter, std::ref(getCollector()), _1));
+   return IWORKXMLContextPtr_t();
+@@ -142,10 +142,10 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::drawable_shape :
++  case +IWORKToken::NS_URI_SF | IWORKToken::drawable_shape :
+     PAG1XMLContextBase<IWORKGroupElement>::ensureClosed();
+     return std::make_shared<PAG1ShapeContext>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::group :
++  case +IWORKToken::NS_URI_SF | IWORKToken::group :
+     PAG1XMLContextBase<IWORKGroupElement>::ensureClosed();
+     return std::make_shared<GroupElement>(getState());
+   default:
+@@ -176,7 +176,7 @@
+ 
+ IWORKXMLContextPtr_t HeadersElement::element(const int name)
+ {
+-  if (name == (IWORKToken::NS_URI_SF | IWORKToken::header))
++  if (name == (+IWORKToken::NS_URI_SF | IWORKToken::header))
+     return std::make_shared<IWORKHeaderFooterContext>(getState(),
+                                                       
std::bind(&IWORKCollector::collectHeader, std::ref(getCollector()), _1));
+   return IWORKXMLContextPtr_t();
+@@ -205,11 +205,11 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::sectionstyle :
++  case +IWORKToken::NS_URI_SF | IWORKToken::sectionstyle :
+     // TODO: setting of the default parent would also be a good candidate for 
leaveElement(),
+     // if we ever add this, as it seems to be limited to a few style types.
+     return std::make_shared<PAG1StyleContext>(getState(), 
&getState().getDictionary().m_sectionStyles, "section-style-default");
+-  case IWORKToken::NS_URI_SF | IWORKToken::sectionstyle_ref :
++  case +IWORKToken::NS_URI_SF | IWORKToken::sectionstyle_ref :
+     return std::make_shared<IWORKStyleRefContext>(getState(), 
getState().getDictionary().m_sectionStyles);
+   default:
+     break;
+@@ -241,9 +241,9 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::anon_styles :
++  case +IWORKToken::NS_URI_SF | IWORKToken::anon_styles :
+     return std::make_shared<StylesContext>(getState(), true);
+-  case IWORKToken::NS_URI_SF | IWORKToken::styles :
++  case +IWORKToken::NS_URI_SF | IWORKToken::styles :
+     return std::make_shared<StylesContext>(getState(), false);
+   default:
+     break;
+@@ -273,7 +273,7 @@
+ 
+ IWORKXMLContextPtr_t PrototypeElement::element(const int name)
+ {
+-  if (name == (IWORKToken::NS_URI_SF | IWORKToken::stylesheet))
++  if (name == (+IWORKToken::NS_URI_SF | IWORKToken::stylesheet))
+     return std::make_shared<StylesheetElement>(getState());
+   return IWORKXMLContextPtr_t();
+ }
+@@ -299,7 +299,7 @@
+ 
+ IWORKXMLContextPtr_t SectionPrototypesElement::element(const int name)
+ {
+-  if (name == (PAG1Token::NS_URI_SL | PAG1Token::prototype))
++  if (name == (+PAG1Token::NS_URI_SL | PAG1Token::prototype))
+     return std::make_shared<PrototypeElement>(getState());
+   return IWORKXMLContextPtr_t();
+ }
+@@ -329,7 +329,7 @@
+ 
+ void DateElement::attribute(const int name, const char *const value)
+ {
+-  if (name == (IWORKToken::NS_URI_SF | IWORKToken::val))
++  if (name == (+IWORKToken::NS_URI_SF | IWORKToken::val))
+     m_value = value;
+ }
+ 
+@@ -358,7 +358,7 @@
+ 
+ IWORKXMLContextPtr_t SLCreationDatePropertyElement::element(const int name)
+ {
+-  if (name == (PAG1Token::NS_URI_SL | PAG1Token::SLCreationDateProperty))
++  if (name == (+PAG1Token::NS_URI_SL | PAG1Token::SLCreationDateProperty))
+     return std::make_shared<DateElement>(getState(), m_value);
+   return IWORKXMLContextPtr_t();
+ }
+@@ -424,8 +424,8 @@
+ namespace
+ {
+ 
+-typedef DocumentPropertyContext<double, IWORKNumberElement<double>, 
PAG1Token::NS_URI_SL | PAG1Token::number> KSFWPFootnoteGapPropertyElement;
+-typedef DocumentPropertyContext<PAGFootnoteKind, 
IWORKNumberElement<PAGFootnoteKind>, PAG1Token::NS_URI_SL | PAG1Token::number> 
KSFWPFootnoteKindPropertyElement;
++typedef DocumentPropertyContext<double, IWORKNumberElement<double>, 
+PAG1Token::NS_URI_SL | PAG1Token::number> KSFWPFootnoteGapPropertyElement;
++typedef DocumentPropertyContext<PAGFootnoteKind, 
IWORKNumberElement<PAGFootnoteKind>, +PAG1Token::NS_URI_SL | PAG1Token::number> 
KSFWPFootnoteKindPropertyElement;
+ 
+ }
+ 
+@@ -457,11 +457,11 @@
+ {
+   switch (name)
+   {
+-  case PAG1Token::NS_URI_SL | PAG1Token::kSFWPFootnoteGapProperty :
++  case +PAG1Token::NS_URI_SL | PAG1Token::kSFWPFootnoteGapProperty :
+     return std::make_shared<KSFWPFootnoteGapPropertyElement>(getState(), 
m_pubInfo.m_footnoteGap);
+-  case PAG1Token::NS_URI_SL | PAG1Token::kSFWPFootnoteKindProperty :
++  case +PAG1Token::NS_URI_SL | PAG1Token::kSFWPFootnoteKindProperty :
+     return std::make_shared<KSFWPFootnoteKindPropertyElement>(getState(), 
m_footnoteKind);
+-  case PAG1Token::NS_URI_SL | PAG1Token::SLCreationDateProperty :
++  case +PAG1Token::NS_URI_SL | PAG1Token::SLCreationDateProperty :
+     return std::make_shared<SLCreationDatePropertyElement>(getState(), 
m_pubInfo.m_creationDate);
+   default:
+   {
+@@ -515,28 +515,28 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::ID | IWORKToken::NS_URI_SFA :
++  case +IWORKToken::ID | IWORKToken::NS_URI_SFA :
+     PAG1XMLElementContextBase::attribute(name,value);
+     break;
+-  case IWORKToken::NS_URI_SF | IWORKToken::bottom:
++  case +IWORKToken::NS_URI_SF | IWORKToken::bottom:
+     m_printInfo.m_marginBottom=try_double_cast(value);
+     break;
+-  case IWORKToken::NS_URI_SF | IWORKToken::left:
++  case +IWORKToken::NS_URI_SF | IWORKToken::left:
+     m_printInfo.m_marginLeft=try_double_cast(value);
+     break;
+-  case IWORKToken::NS_URI_SF | IWORKToken::right:
++  case +IWORKToken::NS_URI_SF | IWORKToken::right:
+     m_printInfo.m_marginRight=try_double_cast(value);
+     break;
+-  case IWORKToken::NS_URI_SF | IWORKToken::top:
++  case +IWORKToken::NS_URI_SF | IWORKToken::top:
+     m_printInfo.m_marginTop=try_double_cast(value);
+     break;
+-  case IWORKToken::NS_URI_SF | IWORKToken::footer:
++  case +IWORKToken::NS_URI_SF | IWORKToken::footer:
+     m_printInfo.m_footerHeight=try_double_cast(value);
+     break;
+-  case IWORKToken::NS_URI_SF | IWORKToken::header:
++  case +IWORKToken::NS_URI_SF | IWORKToken::header:
+     m_printInfo.m_headerHeight=try_double_cast(value);
+     break;
+-  case IWORKToken::NS_URI_SF | IWORKToken::facing_pages: // a bool
++  case +IWORKToken::NS_URI_SF | IWORKToken::facing_pages: // a bool
+     break;
+   default:
+     ETONYEK_DEBUG_MSG(("PageMarginsElement::attribute[PAG1Parser.cpp]: find 
unknown attribute\n"));
+@@ -583,15 +583,15 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::ID | IWORKToken::NS_URI_SFA :
++  case +IWORKToken::ID | IWORKToken::NS_URI_SFA :
+     PAG1XMLElementContextBase::attribute(name,value);
+     break;
+-  case PAG1Token::NS_URI_SL | PAG1Token::page_height:
++  case +PAG1Token::NS_URI_SL | PAG1Token::page_height:
+     m_printInfo.m_height=try_double_cast(value);
+     break;
+-  case PAG1Token::NS_URI_SL | PAG1Token::page_scale:
++  case +PAG1Token::NS_URI_SL | PAG1Token::page_scale:
+     break;
+-  case PAG1Token::NS_URI_SL | PAG1Token::page_width:
++  case +PAG1Token::NS_URI_SL | PAG1Token::page_width:
+     m_printInfo.m_width=try_double_cast(value);
+     break;
+   default:
+@@ -604,9 +604,9 @@
+ {
+   switch (name)
+   {
+-  case PAG1Token::NS_URI_SL | PAG1Token::print_info:
++  case +PAG1Token::NS_URI_SL | PAG1Token::print_info:
+     break;
+-  case IWORKToken::NS_URI_SF | IWORKToken::page_margins:
++  case +IWORKToken::NS_URI_SF | IWORKToken::page_margins:
+     return std::make_shared<PageMarginsElement>(getState(), m_printInfo);
+   default:
+     ETONYEK_DEBUG_MSG(("SLPrintInfoElement::element[PAG1Parser.cpp]: find 
unknown element\n"));
+@@ -658,10 +658,10 @@
+   switch (name)
+   {
+   // TODO: what is the exact relation of sl:page and sl:rpage attrs?
+-  case PAG1Token::NS_URI_SL | PAG1Token::page :
++  case +PAG1Token::NS_URI_SL | PAG1Token::page :
+     m_page = try_int_cast(value);
+     break;
+-  case PAG1Token::NS_URI_SL | PAG1Token::rpage :
++  case +PAG1Token::NS_URI_SL | PAG1Token::rpage :
+     m_rpage = try_int_cast(value);
+     break;
+   default:
+@@ -676,17 +676,17 @@
+ 
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::drawable_shape :
++  case +IWORKToken::NS_URI_SF | IWORKToken::drawable_shape :
+     return std::make_shared<PAG1ShapeContext>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::group :
++  case +IWORKToken::NS_URI_SF | IWORKToken::group :
+     return std::make_shared<GroupElement>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::line :
++  case +IWORKToken::NS_URI_SF | IWORKToken::line :
+     return std::make_shared<IWORKLineElement>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::image :
++  case +IWORKToken::NS_URI_SF | IWORKToken::image :
+     return std::make_shared<IWORKImageElement>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::media :
++  case +IWORKToken::NS_URI_SF | IWORKToken::media :
+     return std::make_shared<IWORKMediaElement>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::tabular_info :
++  case +IWORKToken::NS_URI_SF | IWORKToken::tabular_info :
+     return std::make_shared<IWORKTabularInfoElement>(getState());
+   default:
+     break;
+@@ -740,7 +740,7 @@
+ {
+   switch (name)
+   {
+-  case PAG1Token::NS_URI_SL | PAG1Token::page_group :
++  case +PAG1Token::NS_URI_SL | PAG1Token::page_group :
+     return std::make_shared<PageGroupElement>(getState());
+   // see also sl:master-groups which contains sl:section-drawables
+   default:
+@@ -785,7 +785,7 @@
+ {
+   switch (name)
+   {
+-  case PAG1Token::NS_URI_SL | PAG1Token::version :
++  case +PAG1Token::NS_URI_SL | PAG1Token::version :
+   {
+     const unsigned version = getVersion(getToken(value));
+     if (0 == version)
+@@ -803,27 +803,27 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::annotations :
++  case +IWORKToken::NS_URI_SF | IWORKToken::annotations :
+     return std::make_shared<AnnotationsElement>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::calc_engine :
++  case +IWORKToken::NS_URI_SF | IWORKToken::calc_engine :
+     return std::make_shared<IWORKCalcEngineContext>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::headers :
++  case +IWORKToken::NS_URI_SF | IWORKToken::headers :
+     return std::make_shared<HeadersElement>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::footers :
++  case +IWORKToken::NS_URI_SF | IWORKToken::footers :
+     return std::make_shared<FootersElement>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::metadata :
++  case +IWORKToken::NS_URI_SF | IWORKToken::metadata :
+     return std::make_shared<IWORKMetadataElement>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::text_storage :
++  case +IWORKToken::NS_URI_SF | IWORKToken::text_storage :
+     return std::make_shared<PAG1TextStorageElement>(getState());
+-  case PAG1Token::NS_URI_SL | PAG1Token::drawables :
++  case +PAG1Token::NS_URI_SL | PAG1Token::drawables :
+     return std::make_shared<DrawablesElement>(getState());
+-  case PAG1Token::NS_URI_SL | PAG1Token::publication_info :
++  case +PAG1Token::NS_URI_SL | PAG1Token::publication_info :
+     return std::make_shared<PublicationInfoElement>(getState());
+-  case PAG1Token::NS_URI_SL | PAG1Token::section_prototypes :
++  case +PAG1Token::NS_URI_SL | PAG1Token::section_prototypes :
+     return std::make_shared<SectionPrototypesElement>(getState());
+-  case PAG1Token::NS_URI_SL | PAG1Token::slprint_info :
++  case +PAG1Token::NS_URI_SL | PAG1Token::slprint_info :
+     return std::make_shared<SLPrintInfoElement>(getState());
+-  case PAG1Token::NS_URI_SL | PAG1Token::stylesheet :
++  case +PAG1Token::NS_URI_SL | PAG1Token::stylesheet :
+     return std::make_shared<StylesheetElement>(getState());
+   default:
+     break;
+@@ -861,7 +861,7 @@
+ {
+   switch (name)
+   {
+-  case PAG1Token::NS_URI_SL | PAG1Token::document :
++  case +PAG1Token::NS_URI_SL | PAG1Token::document :
+     return std::make_shared<DocumentElement>(m_state);
+   default:
+     break;
+@@ -892,10 +892,10 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::sectionstyle :
++  case +IWORKToken::NS_URI_SF | IWORKToken::sectionstyle :
+     return std::make_shared<PAG1StyleContext>(getState(), 
&getState().getDictionary().m_sectionStyles, "section-style-default");
+-  case IWORKToken::NS_URI_SF | IWORKToken::stylesheet :
+-  case PAG1Token::NS_URI_SL | PAG1Token::stylesheet :
++  case +IWORKToken::NS_URI_SF | IWORKToken::stylesheet :
++  case +PAG1Token::NS_URI_SL | PAG1Token::stylesheet :
+     return std::make_shared<StylesheetElement>(getState());
+   default:
+     break;
+--- src/lib/contexts/IWORKBezierElement.cpp
++++ src/lib/contexts/IWORKBezierElement.cpp
+@@ -30,7 +30,7 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SFA | IWORKToken::path :
++  case +IWORKToken::NS_URI_SFA | IWORKToken::path :
+     try
+     {
+       m_path = std::make_shared<IWORKPath>(value);
+--- src/lib/contexts/IWORKBinaryElement.cpp
++++ src/lib/contexts/IWORKBinaryElement.cpp
+@@ -33,9 +33,9 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::data :
++  case +IWORKToken::NS_URI_SF | IWORKToken::data :
+     return std::make_shared<IWORKDataElement>(getState(), m_data, 
m_fillColor);
+-  case IWORKToken::NS_URI_SF | IWORKToken::size :
++  case +IWORKToken::NS_URI_SF | IWORKToken::size :
+     return std::make_shared<IWORKSizeElement>(getState(), m_size);
+   default:
+     break;
+--- src/lib/contexts/IWORKCalcEngineContext.cpp
++++ src/lib/contexts/IWORKCalcEngineContext.cpp
+@@ -42,7 +42,7 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::tabular_model | IWORKToken::NS_URI_SF :
++  case +IWORKToken::tabular_model | IWORKToken::NS_URI_SF :
+     return std::make_shared<IWORKTabularModelElement>(getState(), true);
+   default:
+     break;
+@@ -62,7 +62,7 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::calc_engine_entities | IWORKToken::NS_URI_SF :
++  case +IWORKToken::calc_engine_entities | IWORKToken::NS_URI_SF :
+     return std::make_shared<CalcEngineEntities>(getState());
+   default:
+     break;
+--- src/lib/contexts/IWORKCellCommentDrawableInfoElement.cpp
++++ src/lib/contexts/IWORKCellCommentDrawableInfoElement.cpp
+@@ -49,16 +49,16 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::geometry | IWORKToken::NS_URI_SF :
++  case +IWORKToken::geometry | IWORKToken::NS_URI_SF :
+     return std::make_shared<IWORKGeometryElement>(getState());
+-  case IWORKToken::path | IWORKToken::NS_URI_SF :
++  case +IWORKToken::path | IWORKToken::NS_URI_SF :
+     return std::make_shared<IWORKPathElement>(getState());
+-  case IWORKToken::style | IWORKToken::NS_URI_SF :
++  case +IWORKToken::style | IWORKToken::NS_URI_SF :
+     return std::make_shared<IWORKStyleContext>(getState(), 
&getState().getDictionary().m_cellCommentStyles);
+-  case IWORKToken::bubble_cellid | IWORKToken::NS_URI_SF : // sf:row sf:column
+-  case IWORKToken::bubble_offset | IWORKToken::NS_URI_SF : // sfa:h and sfa:w
++  case +IWORKToken::bubble_cellid | IWORKToken::NS_URI_SF : // sf:row 
sf:column
++  case +IWORKToken::bubble_offset | IWORKToken::NS_URI_SF : // sfa:h and sfa:w
+     return IWORKXMLContextPtr_t();
+-  case IWORKToken::NS_URI_SF | IWORKToken::text :
++  case +IWORKToken::NS_URI_SF | IWORKToken::text :
+     return std::make_shared<IWORKTextElement>(getState());
+   default:
+     break;
+--- src/lib/contexts/IWORKChartInfoElement.cpp
++++ src/lib/contexts/IWORKChartInfoElement.cpp
+@@ -66,7 +66,7 @@
+ 
+ IWORKXMLContextPtr_t CachedDataElement::element(const int name)
+ {
+-  if (name == (IWORKToken::mutable_array | IWORKToken::NS_URI_SF))
++  if (name == (+IWORKToken::mutable_array | IWORKToken::NS_URI_SF))
+     return std::make_shared<MutableArrayElement>(getState());
+ 
+   return IWORKXMLContextPtr_t();
+@@ -127,17 +127,17 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::chart_column_names | IWORKToken::NS_URI_SF :
++  case +IWORKToken::chart_column_names | IWORKToken::NS_URI_SF :
+     return std::make_shared<ChartRowColumnNamesElement>(getState(), 
m_chart.m_columnNames);
+-  case IWORKToken::chart_row_names | IWORKToken::NS_URI_SF :
++  case +IWORKToken::chart_row_names | IWORKToken::NS_URI_SF :
+     return std::make_shared<ChartRowColumnNamesElement>(getState(), 
m_chart.m_rowNames);
+-  case IWORKToken::chart_name | IWORKToken::NS_URI_SF :
++  case +IWORKToken::chart_name | IWORKToken::NS_URI_SF :
+     return std::make_shared<IWORKStringElement>(getState(), 
m_chart.m_chartName);
+-  case IWORKToken::value_title | IWORKToken::NS_URI_SF :
++  case +IWORKToken::value_title | IWORKToken::NS_URI_SF :
+     return std::make_shared<IWORKStringElement>(getState(), 
m_chart.m_valueTitle);
+-  case IWORKToken::category_title | IWORKToken::NS_URI_SF :
++  case +IWORKToken::category_title | IWORKToken::NS_URI_SF :
+     return std::make_shared<IWORKStringElement>(getState(), 
m_chart.m_categoryTitle);
+-  case IWORKToken::cached_data | IWORKToken::NS_URI_SF :
++  case +IWORKToken::cached_data | IWORKToken::NS_URI_SF :
+     return std::make_shared<CachedDataElement>(getState());
+   default:
+     break;
+@@ -174,7 +174,7 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::formula_chart_model | IWORKToken::NS_URI_SF :
++  case +IWORKToken::formula_chart_model | IWORKToken::NS_URI_SF :
+     return std::make_shared<FormulaChartModelElement>(getState(), m_chart);
+   default:
+     break;
+@@ -202,7 +202,7 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::chart_type | IWORKToken::NS_URI_SF :
++  case +IWORKToken::chart_type | IWORKToken::NS_URI_SF :
+     m_chart.m_chartType = (unsigned) int_cast(value);
+   default:
+     break;
+@@ -213,9 +213,9 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::geometry | IWORKToken::NS_URI_SF :
++  case +IWORKToken::geometry | IWORKToken::NS_URI_SF :
+     return std::make_shared<IWORKGeometryElement>(getState());
+-  case IWORKToken::chart_model_object | IWORKToken::NS_URI_SF :
++  case +IWORKToken::chart_model_object | IWORKToken::NS_URI_SF :
+     return std::make_shared<ChartModelObjectElement>(getState(), m_chart);
+   default:
+     break;
+--- src/lib/contexts/IWORKColorElement.cpp
++++ src/lib/contexts/IWORKColorElement.cpp
+@@ -44,34 +44,34 @@
+     switch (name)
+     {
+     // TODO: check xsi:type too
+-    case IWORKToken::NS_URI_SFA | IWORKToken::a :
++    case +IWORKToken::NS_URI_SFA | IWORKToken::a :
+       m_a = lexical_cast<double>(value);
+       break;
+-    case IWORKToken::NS_URI_SFA | IWORKToken::b :
++    case +IWORKToken::NS_URI_SFA | IWORKToken::b :
+       m_b = lexical_cast<double>(value);
+       break;
+-    case IWORKToken::NS_URI_SFA | IWORKToken::c :
++    case +IWORKToken::NS_URI_SFA | IWORKToken::c :
+       m_c = lexical_cast<double>(value);
+       break;
+-    case IWORKToken::NS_URI_SFA | IWORKToken::g :
++    case +IWORKToken::NS_URI_SFA | IWORKToken::g :
+       m_g = lexical_cast<double>(value);
+       break;
+-    case IWORKToken::NS_URI_SFA | IWORKToken::k :
++    case +IWORKToken::NS_URI_SFA | IWORKToken::k :
+       m_k = lexical_cast<double>(value);
+       break;
+-    case IWORKToken::NS_URI_SFA | IWORKToken::m :
++    case +IWORKToken::NS_URI_SFA | IWORKToken::m :
+       m_m = lexical_cast<double>(value);
+       break;
+-    case IWORKToken::NS_URI_SFA | IWORKToken::r :
++    case +IWORKToken::NS_URI_SFA | IWORKToken::r :
+       m_r = lexical_cast<double>(value);
+       break;
+-    case IWORKToken::NS_URI_SFA | IWORKToken::w :
++    case +IWORKToken::NS_URI_SFA | IWORKToken::w :
+       m_w = lexical_cast<double>(value);
+       break;
+-    case IWORKToken::NS_URI_SFA | IWORKToken::y :
++    case +IWORKToken::NS_URI_SFA | IWORKToken::y :
+       m_y = lexical_cast<double>(value);
+       break;
+-    case IWORKToken::NS_URI_XSI | IWORKToken::type :
++    case +IWORKToken::NS_URI_XSI | IWORKToken::type :
+       m_type = value;
+       break;
+     default:
+@@ -88,7 +88,7 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::custom_space_color | IWORKToken::NS_URI_SFA :
++  case +IWORKToken::custom_space_color | IWORKToken::NS_URI_SFA :
+   {
+     static bool first=true;
+     if (first)
+--- src/lib/contexts/IWORKContainerContext.h
++++ src/lib/contexts/IWORKContainerContext.h
+@@ -59,7 +59,7 @@
+       return m_collector.template makeContext<NestedParser>(getState());
+     else if ((RefId != 0) && (name == RefId))
+       return std::make_shared<IWORKRefContext>(getState(), m_ref);
+-    else if (name!=(IWORKToken::NS_URI_SF | IWORKToken::null))
++    else if (name!=(+IWORKToken::NS_URI_SF | IWORKToken::null))
+     {
+       ETONYEK_DEBUG_MSG(("IWORKContainerContext::handleRef: find unknown 
element %d\n", int(name)));
+     }
+--- src/lib/contexts/IWORKCoreImageFilterDescriptorElement.cpp
++++ src/lib/contexts/IWORKCoreImageFilterDescriptorElement.cpp
+@@ -25,7 +25,7 @@
+ 
+ void IWORKCoreImageFilterDescriptorElement::attribute(const int name, const 
char *const value)
+ {
+-  if ((IWORKToken::NS_URI_SF | IWORKToken::filterClassName) == name)
++  if ((+IWORKToken::NS_URI_SF | IWORKToken::filterClassName) == name)
+     m_isShadow = getState().getTokenizer().getId(value) == 
IWORKToken::SFIUDropShadow;
+   else
+     IWORKXMLEmptyContextBase::attribute(name, value);
+--- src/lib/contexts/IWORKDataElement.cpp
++++ src/lib/contexts/IWORKDataElement.cpp
+@@ -35,10 +35,10 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::displayname :
++  case +IWORKToken::NS_URI_SF | IWORKToken::displayname :
+     m_displayName = value;
+     break;
+-  case IWORKToken::NS_URI_SF | IWORKToken::hfs_type :
++  case +IWORKToken::NS_URI_SF | IWORKToken::hfs_type :
+   {
+     switch (getState().getTokenizer().getId(value))
+     {
+@@ -62,7 +62,7 @@
+     }
+     break;
+   }
+-  case IWORKToken::NS_URI_SF | IWORKToken::path :
++  case +IWORKToken::NS_URI_SF | IWORKToken::path :
+     
m_stream.reset(getState().getParser().getPackage()->getSubStreamByName(value));
+     if (!m_stream)
+     {
+--- src/lib/contexts/IWORKFieldElement.cpp
++++ src/lib/contexts/IWORKFieldElement.cpp
+@@ -30,10 +30,10 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::val | IWORKToken::NS_URI_SF : // date-time
++  case +IWORKToken::val | IWORKToken::NS_URI_SF : // date-time
+     m_val=value;
+     break;
+-  case IWORKToken::value | IWORKToken::NS_URI_SF : // page-count, page-number
++  case +IWORKToken::value | IWORKToken::NS_URI_SF : // page-count, page-number
+     m_value=int_cast(value);
+     break;
+   default:
+@@ -50,7 +50,7 @@
+ 
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::span :
++  case +IWORKToken::NS_URI_SF | IWORKToken::span :
+     return std::make_shared<IWORKSpanElement>(getState());
+   default:
+     break;
+--- src/lib/contexts/IWORKFillElement.cpp
++++ src/lib/contexts/IWORKFillElement.cpp
+@@ -64,13 +64,13 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::fraction :
++  case +IWORKToken::NS_URI_SF | IWORKToken::fraction :
+     m_fraction = double_cast(value);
+     break;
+-  case IWORKToken::NS_URI_SF | IWORKToken::inflection :
++  case +IWORKToken::NS_URI_SF | IWORKToken::inflection :
+     m_inflection = double_cast(value);
+     break;
+-  case IWORKToken::NS_URI_SFA | IWORKToken::ID :
++  case +IWORKToken::NS_URI_SFA | IWORKToken::ID :
+     IWORKXMLElementContextBase::attribute(name, value);
+     break;
+   default:
+@@ -82,7 +82,7 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::color :
++  case +IWORKToken::NS_URI_SF | IWORKToken::color :
+     return std::make_shared<IWORKColorElement>(getState(), m_color);
+   default:
+     ETONYEK_DEBUG_MSG(("GradientStopElement::element[IWORKFillElement.cpp]: 
find unknown element\n"));
+@@ -110,7 +110,7 @@
+ namespace
+ {
+ 
+-typedef IWORKContainerContext<IWORKGradientStop, GradientStopElement, 
IWORKDirectCollector, IWORKToken::NS_URI_SF | IWORKToken::gradient_stop, 
IWORKToken::NS_URI_SF | IWORKToken::gradient_stop_ref> StopsElement;
++typedef IWORKContainerContext<IWORKGradientStop, GradientStopElement, 
IWORKDirectCollector, +IWORKToken::NS_URI_SF | IWORKToken::gradient_stop, 
+IWORKToken::NS_URI_SF | IWORKToken::gradient_stop_ref> StopsElement;
+ 
+ }
+ 
+@@ -149,13 +149,13 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::angle :
++  case +IWORKToken::NS_URI_SF | IWORKToken::angle :
+     m_angle = double_cast(value);
+     break;
+-  case IWORKToken::NS_URI_SF | IWORKToken::opacity :
++  case +IWORKToken::NS_URI_SF | IWORKToken::opacity :
+     m_opacity = double_cast(value);
+     break;
+-  case IWORKToken::NS_URI_SF | IWORKToken::type :
++  case +IWORKToken::NS_URI_SF | IWORKToken::type :
+     switch (getState().getTokenizer().getId(value))
+     {
+     case IWORKToken::linear :
+@@ -168,7 +168,7 @@
+       
ETONYEK_DEBUG_MSG(("AngleGradientElement::attribute[IWORKFillElement.cpp]: 
unknown type attribute\n"));
+     }
+     break;
+-  case IWORKToken::NS_URI_SFA | IWORKToken::ID :
++  case +IWORKToken::NS_URI_SFA | IWORKToken::ID :
+     IWORKXMLElementContextBase::attribute(name, value);
+     break;
+   default:
+@@ -180,7 +180,7 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::stops :
++  case +IWORKToken::NS_URI_SF | IWORKToken::stops :
+     return std::make_shared<StopsElement>(getState(), 
getState().getDictionary().m_gradientStops, m_stops);
+   default:
+     ETONYEK_DEBUG_MSG(("AngleGradientElement::element[IWORKFillElement.cpp]: 
unknown element\n"));
+@@ -244,10 +244,10 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::opacity :
++  case +IWORKToken::NS_URI_SF | IWORKToken::opacity :
+     m_opacity = double_cast(value);
+     break;
+-  case IWORKToken::NS_URI_SF | IWORKToken::type :
++  case +IWORKToken::NS_URI_SF | IWORKToken::type :
+     switch (getState().getTokenizer().getId(value))
+     {
+     case IWORKToken::linear :
+@@ -260,7 +260,7 @@
+       
ETONYEK_DEBUG_MSG(("TransformGradientElement::attribute[IWORKFillElement.cpp]: 
unknown type\n"));
+     }
+     break;
+-  case IWORKToken::NS_URI_SFA | IWORKToken::ID :
++  case +IWORKToken::NS_URI_SFA | IWORKToken::ID :
+     IWORKXMLElementContextBase::attribute(name, value);
+     break;
+   default:
+@@ -272,13 +272,13 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::baseSize :
++  case +IWORKToken::NS_URI_SF | IWORKToken::baseSize :
+     return std::make_shared<IWORKSizeElement>(getState(), m_baseSize);
+-  case IWORKToken::NS_URI_SF | IWORKToken::end :
++  case +IWORKToken::NS_URI_SF | IWORKToken::end :
+     return std::make_shared<IWORKPositionElement>(getState(), m_endPosition);
+-  case IWORKToken::NS_URI_SF | IWORKToken::stops :
++  case +IWORKToken::NS_URI_SF | IWORKToken::stops :
+     return std::make_shared<StopsElement>(getState(), 
getState().getDictionary().m_gradientStops, m_stops);
+-  case IWORKToken::NS_URI_SF | IWORKToken::start :
++  case +IWORKToken::NS_URI_SF | IWORKToken::start :
+     return std::make_shared<IWORKPositionElement>(getState(), 
m_startPosition);
+   default:
+     
ETONYEK_DEBUG_MSG(("TransformGradientElement::element[IWORKFillElement.cpp]: 
unknown element\n"));
+@@ -337,9 +337,9 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_XSI | IWORKToken::type :
++  case +IWORKToken::NS_URI_XSI | IWORKToken::type :
+     break;
+-  case IWORKToken::NS_URI_SF | IWORKToken::technique :
++  case +IWORKToken::NS_URI_SF | IWORKToken::technique :
+     switch (getState().getTokenizer().getId(value))
+     {
+     case IWORKToken::natural :
+@@ -362,7 +362,7 @@
+       break;
+     }
+     break;
+-  case IWORKToken::NS_URI_SFA | IWORKToken::ID :
++  case +IWORKToken::NS_URI_SFA | IWORKToken::ID :
+     IWORKXMLElementContextBase::attribute(name, value);
+     break;
+   default:
+@@ -375,15 +375,15 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::color :
++  case +IWORKToken::NS_URI_SF | IWORKToken::color :
+     return std::make_shared<IWORKColorElement>(getState(), m_color);
+-  case IWORKToken::NS_URI_SF | IWORKToken::filtered_image :
++  case +IWORKToken::NS_URI_SF | IWORKToken::filtered_image :
+     return std::make_shared<IWORKFilteredImageElement>(getState(), m_content);
+-  case IWORKToken::NS_URI_SF | IWORKToken::filtered_image_ref :
++  case +IWORKToken::NS_URI_SF | IWORKToken::filtered_image_ref :
+     return std::make_shared<IWORKRefContext>(getState(), m_filteredImageRef);
+-  case IWORKToken::NS_URI_SF | IWORKToken::image :
++  case +IWORKToken::NS_URI_SF | IWORKToken::image :
+     return std::make_shared<IWORKImageElement>(getState(), m_content);
+-  case IWORKToken::NS_URI_SF | IWORKToken::image_ref :
++  case +IWORKToken::NS_URI_SF | IWORKToken::image_ref :
+     return std::make_shared<IWORKRefContext>(getState(), m_imageRef);
+   default:
+     ETONYEK_DEBUG_MSG(("TexturedFillElement::element[IWORKFillElement.cpp]: 
unknown element\n"));
+@@ -443,22 +443,22 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::angle_gradient :
++  case +IWORKToken::NS_URI_SF | IWORKToken::angle_gradient :
+     return std::make_shared<AngleGradientElement>(getState(), m_gradient);
+-  case IWORKToken::NS_URI_SF | IWORKToken::angle_gradient_ref :
++  case +IWORKToken::NS_URI_SF | IWORKToken::angle_gradient_ref :
+     return std::make_shared<IWORKRefContext>(getState(), m_gradientRef);
+-  case IWORKToken::NS_URI_SF | IWORKToken::color :
++  case +IWORKToken::NS_URI_SF | IWORKToken::color :
+     return std::make_shared<IWORKColorElement>(getState(), m_color);
+-  case IWORKToken::NS_URI_SF | IWORKToken::texture_fill : // CHECKME: a 
dictionary
+-  case IWORKToken::NS_URI_SF | IWORKToken::texture_fill_ref : // CHECKME: ref 
to previous element
++  case +IWORKToken::NS_URI_SF | IWORKToken::texture_fill : // CHECKME: a 
dictionary
++  case +IWORKToken::NS_URI_SF | IWORKToken::texture_fill_ref : // CHECKME: 
ref to previous element
+     break;
+-  case IWORKToken::NS_URI_SF | IWORKToken::textured_fill :
++  case +IWORKToken::NS_URI_SF | IWORKToken::textured_fill :
+     return std::make_shared<TexturedFillElement>(getState(), m_bitmap);
+-  case IWORKToken::NS_URI_SF | IWORKToken::textured_fill_ref :
++  case +IWORKToken::NS_URI_SF | IWORKToken::textured_fill_ref :
+     return std::make_shared<IWORKRefContext>(getState(), m_texturedFillRef);
+-  case IWORKToken::NS_URI_SF | IWORKToken::transform_gradient :
++  case +IWORKToken::NS_URI_SF | IWORKToken::transform_gradient :
+     return std::make_shared<TransformGradientElement>(getState(), m_gradient);
+-  case IWORKToken::NS_URI_SF | IWORKToken::null :
++  case +IWORKToken::NS_URI_SF | IWORKToken::null :
+     break;
+   default:
+     ETONYEK_DEBUG_MSG(("IWORKFillElement::element: unknown element\n"));
+--- src/lib/contexts/IWORKFilteredImageElement.cpp
++++ src/lib/contexts/IWORKFilteredImageElement.cpp
+@@ -43,16 +43,16 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::unfiltered :
++  case +IWORKToken::NS_URI_SF | IWORKToken::unfiltered :
+     return std::make_shared<IWORKUnfilteredElement>(getState(), m_unfiltered);
+-  case IWORKToken::NS_URI_SF | IWORKToken::unfiltered_ref :
++  case +IWORKToken::NS_URI_SF | IWORKToken::unfiltered_ref :
+     return std::make_shared<IWORKRefContext>(getState(), m_unfilteredId);
+-  case IWORKToken::NS_URI_SF | IWORKToken::filtered :
++  case +IWORKToken::NS_URI_SF | IWORKToken::filtered :
+     return std::make_shared<IWORKFilteredElement>(getState(), m_filtered);
+-  case IWORKToken::NS_URI_SF | IWORKToken::leveled :
++  case +IWORKToken::NS_URI_SF | IWORKToken::leveled :
+     return std::make_shared<LeveledElement>(getState(), m_leveled);
+-  case IWORKToken::NS_URI_SF | IWORKToken::extent : // TODO readme
+-  case IWORKToken::NS_URI_SF | IWORKToken::filter_properties :
++  case +IWORKToken::NS_URI_SF | IWORKToken::extent : // TODO readme
++  case +IWORKToken::NS_URI_SF | IWORKToken::filter_properties :
+     break;
+   default:
+     ETONYEK_DEBUG_MSG(("IWORKFilteredImageElement::element: unknown 
element\n"));
+--- src/lib/contexts/IWORKFormatElement.cpp
++++ src/lib/contexts/IWORKFormatElement.cpp
+@@ -38,10 +38,10 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::fmt:
++  case +IWORKToken::NS_URI_SF | IWORKToken::fmt:
+     get(m_value).m_format = value;
+     break;
+-  case IWORKToken::NS_URI_SFA | IWORKToken::ID :
++  case +IWORKToken::NS_URI_SFA | IWORKToken::ID :
+     IWORKXMLEmptyContextBase::attribute(name, value);
+     break;
+   default:
+@@ -67,10 +67,10 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::fmt:
++  case +IWORKToken::NS_URI_SF | IWORKToken::fmt:
+     get(m_value).m_format = value;
+     break;
+-  case IWORKToken::NS_URI_SFA | IWORKToken::ID :
++  case +IWORKToken::NS_URI_SFA | IWORKToken::ID :
+     IWORKXMLEmptyContextBase::attribute(name, value);
+     break;
+   default:
+@@ -96,44 +96,44 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::format_base :
++  case +IWORKToken::NS_URI_SF | IWORKToken::format_base :
+     get(m_value).m_base = int_cast(value);
+     break;
+-  case IWORKToken::NS_URI_SF | IWORKToken::format_base_places :
++  case +IWORKToken::NS_URI_SF | IWORKToken::format_base_places :
+     get(m_value).m_basePlaces = int_cast(value);
+     break;
+-  case IWORKToken::NS_URI_SF | IWORKToken::format_base_use_minus_sign :
++  case +IWORKToken::NS_URI_SF | IWORKToken::format_base_use_minus_sign :
+     get(m_value).m_baseUseMinusSign = bool_cast(value);
+     break;
+-  case IWORKToken::NS_URI_SF | IWORKToken::format_currency_code :
++  case +IWORKToken::NS_URI_SF | IWORKToken::format_currency_code :
+     get(m_value).m_currencyCode = value;
+     break;
+-  case IWORKToken::NS_URI_SF | IWORKToken::format_decimal_places :
++  case +IWORKToken::NS_URI_SF | IWORKToken::format_decimal_places :
+     get(m_value).m_decimalPlaces = int_cast(value);
+     break;
+-  case IWORKToken::NS_URI_SF | IWORKToken::format_fraction_accuracy :
++  case +IWORKToken::NS_URI_SF | IWORKToken::format_fraction_accuracy :
+     get(m_value).m_fractionAccuracy = int_cast(value);
+     break;
+-  case IWORKToken::NS_URI_SF | IWORKToken::format_negative_style :
++  case +IWORKToken::NS_URI_SF | IWORKToken::format_negative_style :
+     get(m_value).m_negativeStyle = int_cast(value);
+     break;
+-  case IWORKToken::NS_URI_SF | IWORKToken::format_show_thousands_separator :
++  case +IWORKToken::NS_URI_SF | IWORKToken::format_show_thousands_separator :
+     get(m_value).m_thousandsSeparator = bool_cast(value);
+     break;
+-  case IWORKToken::NS_URI_SF | IWORKToken::format_string :
++  case +IWORKToken::NS_URI_SF | IWORKToken::format_string :
+     get(m_value).m_string = value;
+     break;
+-  case IWORKToken::NS_URI_SF | IWORKToken::format_type :
++  case +IWORKToken::NS_URI_SF | IWORKToken::format_type :
+     get(m_value).m_type = 
get(IWORKNumberConverter<IWORKCellNumberType>::convert(value));
+     break;
+-  case IWORKToken::NS_URI_SF | IWORKToken::format_use_accounting_style :
++  case +IWORKToken::NS_URI_SF | IWORKToken::format_use_accounting_style :
+     get(m_value).m_accountingStyle = bool_cast(value);
+     break;
+-  case IWORKToken::NS_URI_SFA | IWORKToken::ID :
++  case +IWORKToken::NS_URI_SFA | IWORKToken::ID :
+     IWORKXMLEmptyContextBase::attribute(name, value);
+     break;
+-  case IWORKToken::NS_URI_SF | IWORKToken::custom :
+-  case IWORKToken::NS_URI_SF | IWORKToken::format_name :
++  case +IWORKToken::NS_URI_SF | IWORKToken::custom :
++  case +IWORKToken::NS_URI_SF | IWORKToken::format_name :
+     break;
+   default:
+     
ETONYEK_DEBUG_MSG(("IWORKNumberFormatElement::attribute[IWORKFormatElement.cpp]:
 find unknown attribute\n"));
+--- src/lib/contexts/IWORKFormulaElement.cpp
++++ src/lib/contexts/IWORKFormulaElement.cpp
+@@ -75,10 +75,10 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::column | IWORKToken::NS_URI_SF:
++  case +IWORKToken::column | IWORKToken::NS_URI_SF:
+     m_col = int_cast(value);
+     break;
+-  case IWORKToken::row | IWORKToken::NS_URI_SF:
++  case +IWORKToken::row | IWORKToken::NS_URI_SF:
+     m_row = int_cast(value);
+     break;
+   default :
+@@ -122,10 +122,10 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::x_coordinate | IWORKToken::NS_URI_SF:
++  case +IWORKToken::x_coordinate | IWORKToken::NS_URI_SF:
+     m_x = int_cast(value);
+     break;
+-  case IWORKToken::y_coordinate | IWORKToken::NS_URI_SF:
++  case +IWORKToken::y_coordinate | IWORKToken::NS_URI_SF:
+     m_y = int_cast(value);
+     break;
+   default :
+@@ -162,16 +162,16 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SFA | IWORKToken::ID:
++  case +IWORKToken::NS_URI_SFA | IWORKToken::ID:
+     m_id = value;
+     break;
+-  case IWORKToken::fs | IWORKToken::NS_URI_SF :
++  case +IWORKToken::fs | IWORKToken::NS_URI_SF :
+     m_formula=value;
+     break;
+-  case IWORKToken::hc | IWORKToken::NS_URI_SF :
++  case +IWORKToken::hc | IWORKToken::NS_URI_SF :
+     m_hc=int_cast(value);
+     break;
+-  case IWORKToken::ht | IWORKToken::NS_URI_SF : // big string
++  case +IWORKToken::ht | IWORKToken::NS_URI_SF : // big string
+     break;
+   default :
+     IWORKXMLEmptyContextBase::attribute(name, value);
+@@ -183,7 +183,7 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::fm | IWORKToken::NS_URI_SF :
++  case +IWORKToken::fm | IWORKToken::NS_URI_SF :
+     return std::make_shared<FmElement>(getState());
+     break;
+   default:
+@@ -219,7 +219,7 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::hc | IWORKToken::NS_URI_SF :
++  case +IWORKToken::hc | IWORKToken::NS_URI_SF :
+     m_hc=int_cast(value);
+     break;
+   default :
+@@ -232,10 +232,10 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::fm | IWORKToken::NS_URI_SF :
++  case +IWORKToken::fm | IWORKToken::NS_URI_SF :
+     return std::make_shared<FmElement>(getState());
+     break;
+-  case IWORKToken::mf_ref | IWORKToken::NS_URI_SF :
++  case +IWORKToken::mf_ref | IWORKToken::NS_URI_SF :
+     return std::make_shared<IWORKRefContext>(getState(), m_ref);
+   default:
+     break;
+@@ -280,7 +280,7 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SFA | IWORKToken::ID:
++  case +IWORKToken::NS_URI_SFA | IWORKToken::ID:
+     m_id = value;
+     break;
+   default :
+@@ -293,11 +293,11 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::formula_string | IWORKToken::NS_URI_SF :
++  case +IWORKToken::formula_string | IWORKToken::NS_URI_SF :
+     return std::make_shared<IWORKStringElement>(getState(), m_formula);
+-  case IWORKToken::host_cell_ID | IWORKToken::NS_URI_SF :
++  case +IWORKToken::host_cell_ID | IWORKToken::NS_URI_SF :
+     return std::make_shared<HostCellIdElement>(getState());
+-  case IWORKToken::host_table_ID | IWORKToken::NS_URI_SF :
++  case +IWORKToken::host_table_ID | IWORKToken::NS_URI_SF :
+     break;
+   default:
+     ETONYEK_DEBUG_MSG(("IWORKFormulaElement::element: find unknown element 
%d\n", name));
+@@ -336,7 +336,7 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SFA | IWORKToken::ID:
++  case +IWORKToken::NS_URI_SFA | IWORKToken::ID:
+     m_id = value;
+     break;
+   default :
+@@ -349,11 +349,11 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::formula_string | IWORKToken::NS_URI_SF :
++  case +IWORKToken::formula_string | IWORKToken::NS_URI_SF :
+     return std::make_shared<IWORKStringElement>(getState(), m_formula);
+-  case IWORKToken::cell_address | IWORKToken::NS_URI_SF :
++  case +IWORKToken::cell_address | IWORKToken::NS_URI_SF :
+     return std::make_shared<CellAddressElement>(getState());
+-  case IWORKToken::host_table_ID | IWORKToken::NS_URI_SF :
++  case +IWORKToken::host_table_ID | IWORKToken::NS_URI_SF :
+     return std::make_shared<IWORKStringElement>(getState(), m_tableId);
+   default:
+     ETONYEK_DEBUG_MSG(("IWORKTableCellFormulaElement::element: find unknown 
element %d\n", name));
+--- src/lib/contexts/IWORKGeometryElement.cpp
++++ src/lib/contexts/IWORKGeometryElement.cpp
+@@ -60,25 +60,25 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::angle :
++  case +IWORKToken::NS_URI_SF | IWORKToken::angle :
+     m_angle = -deg2rad(lexical_cast<double>(value));
+     break;
+-  case IWORKToken::NS_URI_SF | IWORKToken::aspectRatioLocked :
++  case +IWORKToken::NS_URI_SF | IWORKToken::aspectRatioLocked :
+     m_aspectRatioLocked = bool_cast(value);
+     break;
+-  case IWORKToken::NS_URI_SF | IWORKToken::horizontalFlip :
++  case +IWORKToken::NS_URI_SF | IWORKToken::horizontalFlip :
+     m_horizontalFlip = bool_cast(value);
+     break;
+-  case IWORKToken::NS_URI_SF | IWORKToken::shearXAngle :
++  case +IWORKToken::NS_URI_SF | IWORKToken::shearXAngle :
+     m_shearXAngle = deg2rad(lexical_cast<double>(value));
+     break;
+-  case IWORKToken::NS_URI_SF | IWORKToken::shearYAngle :
++  case +IWORKToken::NS_URI_SF | IWORKToken::shearYAngle :
+     m_shearYAngle = deg2rad(lexical_cast<double>(value));
+     break;
+-  case IWORKToken::NS_URI_SF | IWORKToken::sizesLocked :
++  case +IWORKToken::NS_URI_SF | IWORKToken::sizesLocked :
+     m_sizesLocked = bool_cast(value);
+     break;
+-  case IWORKToken::NS_URI_SF | IWORKToken::verticalFlip :
++  case +IWORKToken::NS_URI_SF | IWORKToken::verticalFlip :
+     m_verticalFlip = bool_cast(value);
+     break;
+   default :
+@@ -91,11 +91,11 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::naturalSize :
++  case +IWORKToken::NS_URI_SF | IWORKToken::naturalSize :
+     return std::make_shared<IWORKSizeElement>(getState(), m_naturalSize);
+-  case IWORKToken::NS_URI_SF | IWORKToken::position :
++  case +IWORKToken::NS_URI_SF | IWORKToken::position :
+     return std::make_shared<IWORKPositionElement>(getState(), m_pos);
+-  case IWORKToken::NS_URI_SF | IWORKToken::size :
++  case +IWORKToken::NS_URI_SF | IWORKToken::size :
+     return std::make_shared<IWORKSizeElement>(getState(), m_size);
+   default:
+     ETONYEK_DEBUG_MSG(("IWORKGeometryElement::element: find unknown 
element\n"));
+--- src/lib/contexts/IWORKGroupElement.cpp
++++ src/lib/contexts/IWORKGroupElement.cpp
+@@ -42,28 +42,28 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::geometry :
++  case +IWORKToken::NS_URI_SF | IWORKToken::geometry :
+     return std::make_shared<IWORKGeometryElement>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::group :
++  case +IWORKToken::NS_URI_SF | IWORKToken::group :
+     ensureClosed(); // checkme: creating a group in a group must be often 
possible
+     return std::make_shared<IWORKGroupElement>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::image :
++  case +IWORKToken::NS_URI_SF | IWORKToken::image :
+     ensureOpened();
+     return std::make_shared<IWORKImageElement>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::line :
++  case +IWORKToken::NS_URI_SF | IWORKToken::line :
+     ensureOpened();
+     return std::make_shared<IWORKLineElement>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::media :
++  case +IWORKToken::NS_URI_SF | IWORKToken::media :
+     ensureOpened();
+     return std::make_shared<IWORKMediaElement>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::drawable_shape :
+-  case IWORKToken::NS_URI_SF | IWORKToken::shape :
++  case +IWORKToken::NS_URI_SF | IWORKToken::drawable_shape :
++  case +IWORKToken::NS_URI_SF | IWORKToken::shape :
+     ensureOpened();
+     return std::make_shared<IWORKShapeContext>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::table_info :
++  case +IWORKToken::NS_URI_SF | IWORKToken::table_info :
+     ensureClosed();
+     return std::make_shared<IWORKTableInfoElement>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::tabular_info :
++  case +IWORKToken::NS_URI_SF | IWORKToken::tabular_info :
+     ensureClosed();
+     return std::make_shared<IWORKTabularInfoElement>(getState());
+   default:
+--- src/lib/contexts/IWORKHeaderFooterContext.cpp
++++ src/lib/contexts/IWORKHeaderFooterContext.cpp
+@@ -37,7 +37,7 @@
+ 
+ void IWORKHeaderFooterContext::attribute(const int name, const char *const 
value)
+ {
+-  if (name == (IWORKToken::NS_URI_SF | IWORKToken::name))
++  if (name == (+IWORKToken::NS_URI_SF | IWORKToken::name))
+     m_name = value;
+   else
+     IWORKXMLElementContextBase::attribute(name, value);
+@@ -45,7 +45,7 @@
+ 
+ IWORKXMLContextPtr_t IWORKHeaderFooterContext::element(const int name)
+ {
+-  if (name == (IWORKToken::NS_URI_SF | IWORKToken::text_storage))
++  if (name == (+IWORKToken::NS_URI_SF | IWORKToken::text_storage))
+     return std::make_shared<IWORKTextStorageElement>(getState());
+   return IWORKXMLContextPtr_t();
+ }
+--- src/lib/contexts/IWORKImageContext.cpp
++++ src/lib/contexts/IWORKImageContext.cpp
+@@ -32,9 +32,9 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::data :
++  case +IWORKToken::NS_URI_SF | IWORKToken::data :
+     return std::make_shared<IWORKDataElement>(getState(), m_data, 
m_fillColor);
+-  case IWORKToken::NS_URI_SF | IWORKToken::size :
++  case +IWORKToken::NS_URI_SF | IWORKToken::size :
+     return std::make_shared<IWORKSizeElement>(getState(), m_size);
+   default:
+     ETONYEK_DEBUG_MSG(("IWORKImageContext::element: find unknown element\n"));
+--- src/lib/contexts/IWORKImageElement.cpp
++++ src/lib/contexts/IWORKImageElement.cpp
+@@ -29,7 +29,7 @@
+ 
+ namespace
+ {
+-typedef IWORKStyleContainer<IWORKToken::NS_URI_SF | 
IWORKToken::graphic_style, IWORKToken::NS_URI_SF | 
IWORKToken::graphic_style_ref> GraphicStyleContext;
++typedef IWORKStyleContainer<+IWORKToken::NS_URI_SF | 
IWORKToken::graphic_style, +IWORKToken::NS_URI_SF | 
IWORKToken::graphic_style_ref> GraphicStyleContext;
+ }
+ 
+ IWORKImageElement::IWORKImageElement(IWORKXMLParserState &state, 
IWORKMediaContentPtr_t &content)
+@@ -74,9 +74,9 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SFA | IWORKToken::version :
++  case +IWORKToken::NS_URI_SFA | IWORKToken::version :
+     break;
+-  case IWORKToken::NS_URI_SF | IWORKToken::locked :
++  case +IWORKToken::NS_URI_SF | IWORKToken::locked :
+     m_locked = bool_cast(value);
+     break;
+   default :
+@@ -89,19 +89,19 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::binary :
++  case +IWORKToken::NS_URI_SF | IWORKToken::binary :
+     return std::make_shared<IWORKBinaryElement>(getState(), m_content);
+-  case IWORKToken::NS_URI_SF | IWORKToken::binary_ref :
++  case +IWORKToken::NS_URI_SF | IWORKToken::binary_ref :
+     return std::make_shared<IWORKRefContext>(getState(), m_binaryRef);
+-  case IWORKToken::NS_URI_SF | IWORKToken::crop_geometry :
++  case +IWORKToken::NS_URI_SF | IWORKToken::crop_geometry :
+     return std::make_shared<IWORKGeometryElement>(getState(), m_cropGeometry);
+-  case IWORKToken::NS_URI_SF | IWORKToken::data :
++  case +IWORKToken::NS_URI_SF | IWORKToken::data :
+     return std::make_shared<IWORKDataElement>(getState(), m_data, 
m_fillColor);
+-  case IWORKToken::NS_URI_SF | IWORKToken::filtered_image :
++  case +IWORKToken::NS_URI_SF | IWORKToken::filtered_image :
+     return std::make_shared<IWORKFilteredImageElement>(getState(), 
m_filteredImage);
+-  case IWORKToken::NS_URI_SF | IWORKToken::geometry :
++  case +IWORKToken::NS_URI_SF | IWORKToken::geometry :
+     return std::make_shared<IWORKGeometryElement>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::masking_shape_path_source :
++  case +IWORKToken::NS_URI_SF | IWORKToken::masking_shape_path_source :
+   {
+     static bool first=true;
+     if (first)
+@@ -111,11 +111,11 @@
+     }
+     break;
+   }
+-  case IWORKToken::NS_URI_SF | IWORKToken::placeholder_size : // USEME
++  case +IWORKToken::NS_URI_SF | IWORKToken::placeholder_size : // USEME
+     return std::make_shared<IWORKSizeElement>(getState(),m_placeholderSize);
+-  case IWORKToken::NS_URI_SF | IWORKToken::size :
++  case +IWORKToken::NS_URI_SF | IWORKToken::size :
+     return std::make_shared<IWORKSizeElement>(getState(),m_size);
+-  case IWORKToken::NS_URI_SF | IWORKToken::style : // USEME
++  case +IWORKToken::NS_URI_SF | IWORKToken::style : // USEME
+     return std::make_shared<GraphicStyleContext>(getState(), m_style, 
getState().getDictionary().m_graphicStyles);
+   default:
+     ETONYEK_DEBUG_MSG(("IWORKImageElement::element: find some unknown 
element\n"));
+--- src/lib/contexts/IWORKLayoutElement.cpp
++++ src/lib/contexts/IWORKLayoutElement.cpp
+@@ -28,7 +28,7 @@
+ 
+ void IWORKLayoutElement::attribute(const int name, const char *const value)
+ {
+-  if ((IWORKToken::NS_URI_SF | IWORKToken::style) == name)
++  if ((+IWORKToken::NS_URI_SF | IWORKToken::style) == name)
+     m_style=getState().getStyleByName(value, 
getState().getDictionary().m_layoutStyles);
+   else // also sfa:ID
+   {
+@@ -41,7 +41,7 @@
+   if (!m_opened)
+     open();
+ 
+-  if ((IWORKToken::NS_URI_SF | IWORKToken::p) == name)
++  if ((+IWORKToken::NS_URI_SF | IWORKToken::p) == name)
+     return std::make_shared<IWORKPElement>(getState());
+ 
+   return IWORKXMLContextPtr_t();
+--- src/lib/contexts/IWORKLineElement.cpp
++++ src/lib/contexts/IWORKLineElement.cpp
+@@ -22,7 +22,7 @@
+ {
+ namespace
+ {
+-typedef IWORKStyleContainer<IWORKToken::NS_URI_SF | 
IWORKToken::graphic_style, IWORKToken::NS_URI_SF | 
IWORKToken::graphic_style_ref> GraphicStyleContext;
++typedef IWORKStyleContainer<+IWORKToken::NS_URI_SF | 
IWORKToken::graphic_style, +IWORKToken::NS_URI_SF | 
IWORKToken::graphic_style_ref> GraphicStyleContext;
+ }
+ 
+ IWORKLineElement::IWORKLineElement(IWORKXMLParserState &state)
+@@ -43,13 +43,13 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::geometry :
++  case +IWORKToken::NS_URI_SF | IWORKToken::geometry :
+     return std::make_shared<IWORKGeometryElement>(getState());
+-  case IWORKToken::NS_URI_SF | IWORKToken::head :
++  case +IWORKToken::NS_URI_SF | IWORKToken::head :
+     return std::make_shared<IWORKPositionElement>(getState(), m_head);
+-  case IWORKToken::NS_URI_SF | IWORKToken::style :
++  case +IWORKToken::NS_URI_SF | IWORKToken::style :
+     return std::make_shared<GraphicStyleContext>(getState(), m_style, 
getState().getDictionary().m_graphicStyles);
+-  case IWORKToken::NS_URI_SF | IWORKToken::tail :
++  case +IWORKToken::NS_URI_SF | IWORKToken::tail :
+     return std::make_shared<IWORKPositionElement>(getState(), m_tail);
+   default:
+     break;
+--- src/lib/contexts/IWORKLineEndElement.cpp
++++ src/lib/contexts/IWORKLineEndElement.cpp
+@@ -45,13 +45,13 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::ID | IWORKToken::NS_URI_SFA :
++  case +IWORKToken::ID | IWORKToken::NS_URI_SFA :
+     m_id=value;
+     break;
+-  case IWORKToken::path | IWORKToken::NS_URI_SFA :
++  case +IWORKToken::path | IWORKToken::NS_URI_SFA :
+     m_value=value;
+     break;
+-  case IWORKToken::version | IWORKToken::NS_URI_SFA :
++  case +IWORKToken::version | IWORKToken::NS_URI_SFA :
+     break;
+   default :
+     ETONYEK_DEBUG_MSG(("PathElement::attribute[IWORKLineEndElement]: find 
unknown attribute\n"));
+@@ -78,21 +78,21 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SFA | IWORKToken::ID :
++  case +IWORKToken::NS_URI_SFA | IWORKToken::ID :
+     /* checkme: do we need to store this element in the dictionary ?
+        I never seen sf:line-end-ref so maybe not
+      */
+     m_id=value;
+     break;
+-  case IWORKToken::NS_URI_SF | IWORKToken::filled :
++  case +IWORKToken::NS_URI_SF | IWORKToken::filled :
+     m_value->m_filled = bool_cast(value);
+     break;
+-  case IWORKToken::NS_URI_SF | IWORKToken::identifier : // needed ?
++  case +IWORKToken::NS_URI_SF | IWORKToken::identifier : // needed ?
+     break;
+-  case IWORKToken::NS_URI_SF | IWORKToken::scale :
++  case +IWORKToken::NS_URI_SF | IWORKToken::scale :
+     m_value->m_scale = double_cast(value);
+     break;
+-  case IWORKToken::NS_URI_SF | IWORKToken::path_join :
++  case +IWORKToken::NS_URI_SF | IWORKToken::path_join :
+     m_value->m_pathJoin = int_cast(value);
+     break;
+   default:
+@@ -104,9 +104,9 @@
+ {
+   switch (name)
+   {
+-  case IWORKToken::NS_URI_SF | IWORKToken::path :
++  case +IWORKToken::NS_URI_SF | IWORKToken::path :
+     return std::make_shared<PathElement>(getState(), m_value->m_path);
+-  case IWORKToken::NS_URI_SF | IWORKToken::end_point :
++  case +IWORKToken::NS_URI_SF | IWORKToken::end_point :
+     return std::make_shared<IWORKPositionElement>(getState(), 
m_value->m_endPoint);
+   default:
+     break;
+--- src/lib/contexts/IWORKLinkElement.cpp
++++ src/lib/contexts/IWORKLinkElement.cpp
+@@ -37,7 +37,7 @@
+ {
+   switch (name)

... etc. - the rest is truncated

Reply via email to