[SCM] WebKit Debian packaging branch, debian/unstable, updated. debian/1.1.15-1-40151-g37bb677

hyatt hyatt at 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Sat Sep 26 08:44:47 UTC 2009


The following commit has been merged in the debian/unstable branch:
commit 6a83d6b8c779b2a864798396efd22724543cfb53
Author: hyatt <hyatt at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Wed Jun 9 22:58:15 2004 +0000

    	Implement parsing and setting of the text-overflow CSS3 property.
    
            Reviewed by kocienda
    
            * khtml/css/cssparser.cpp:
            (CSSParser::parseValue):
            * khtml/css/cssproperties.c:
            (hash_prop):
            (findProp):
            * khtml/css/cssproperties.h:
            * khtml/css/cssproperties.in:
            * khtml/css/cssstyleselector.cpp:
            (khtml::CSSStyleSelector::applyProperty):
            * khtml/css/cssvalues.c:
            (hash_val):
            (findValue):
            * khtml/css/cssvalues.h:
            * khtml/css/cssvalues.in:
            * khtml/rendering/render_style.cpp:
            (textOverflow):
            (StyleCSS3NonInheritedData::operator==):
            (RenderStyle::diff):
            * khtml/rendering/render_style.h:
            (khtml::RenderStyle::textOverflow):
            (khtml::RenderStyle::setTextOverflow):
            (khtml::RenderStyle::initialTextOverflow):
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@6803 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebCore/ChangeLog-2005-08-23 b/WebCore/ChangeLog-2005-08-23
index 76d9a31..ff23d5d 100644
--- a/WebCore/ChangeLog-2005-08-23
+++ b/WebCore/ChangeLog-2005-08-23
@@ -1,5 +1,34 @@
 2004-06-09  David Hyatt  <hyatt at apple.com>
 
+	Implement parsing and setting of the text-overflow CSS3 property.
+	
+        Reviewed by kocienda
+
+        * khtml/css/cssparser.cpp:
+        (CSSParser::parseValue):
+        * khtml/css/cssproperties.c:
+        (hash_prop):
+        (findProp):
+        * khtml/css/cssproperties.h:
+        * khtml/css/cssproperties.in:
+        * khtml/css/cssstyleselector.cpp:
+        (khtml::CSSStyleSelector::applyProperty):
+        * khtml/css/cssvalues.c:
+        (hash_val):
+        (findValue):
+        * khtml/css/cssvalues.h:
+        * khtml/css/cssvalues.in:
+        * khtml/rendering/render_style.cpp:
+        (textOverflow):
+        (StyleCSS3NonInheritedData::operator==):
+        (RenderStyle::diff):
+        * khtml/rendering/render_style.h:
+        (khtml::RenderStyle::textOverflow):
+        (khtml::RenderStyle::setTextOverflow):
+        (khtml::RenderStyle::initialTextOverflow):
+
+2004-06-09  David Hyatt  <hyatt at apple.com>
+
 	Fix for 3678031, implement better flexing for Emerson headers.  This involved adding support for max-width: intrinsic,
 	fixing the box layout algorithm to properly deal with max-widths, and implementing support for baseline alignment
 	so that boxes can be aligned vertically along their interior baselines.
diff --git a/WebCore/khtml/css/cssparser.cpp b/WebCore/khtml/css/cssparser.cpp
index 723d536..bc7b6e6 100644
--- a/WebCore/khtml/css/cssparser.cpp
+++ b/WebCore/khtml/css/cssparser.cpp
@@ -1105,6 +1105,10 @@ bool CSSParser::parseValue( int propId, bool important )
         if (id == CSS_VAL_AUTO || id == CSS_VAL_NONE)
             valid_primitive = true;
         break;
+    case CSS_PROP_TEXT_OVERFLOW: // clip | ellipsis
+        if (id == CSS_VAL_CLIP || id == CSS_VAL_ELLIPSIS)
+            valid_primitive = true;
+        break;
     // End of CSS3 properties
 
 #if APPLE_CHANGES
diff --git a/WebCore/khtml/css/cssproperties.c b/WebCore/khtml/css/cssproperties.c
index 315550f..d0b88a2 100644
--- a/WebCore/khtml/css/cssproperties.c
+++ b/WebCore/khtml/css/cssproperties.c
@@ -7,7 +7,7 @@ struct props {
     const char *name;
     int id;
 };
-/* maximum key range = 1432, duplicates = 0 */
+/* maximum key range = 1222, duplicates = 0 */
 
 #ifdef __GNUC__
 __inline
@@ -21,32 +21,32 @@ hash_prop (register const char *str, register unsigned int len)
 {
   static const unsigned short asso_values[] =
     {
-      1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
-      1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
-      1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
-      1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
-      1437, 1437, 1437, 1437, 1437,    0, 1437, 1437, 1437, 1437,
-      1437,    0, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
-      1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
-      1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
-      1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
-      1437, 1437, 1437, 1437, 1437, 1437, 1437,   15,   10,    0,
-         0,    0,   15,  170,    0,    0,    0,   10,    0,   85,
-       390,    0,   60,   25,    0,   65,    0,   10,   10,  205,
-        80,  295,   10, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
-      1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
-      1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
-      1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
-      1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
-      1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
-      1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
-      1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
-      1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
-      1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
-      1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
-      1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
-      1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
-      1437, 1437, 1437, 1437, 1437, 1437
+      1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227,
+      1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227,
+      1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227,
+      1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227,
+      1227, 1227, 1227, 1227, 1227,    0, 1227, 1227, 1227, 1227,
+      1227,    0, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227,
+      1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227,
+      1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227,
+      1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227,
+      1227, 1227, 1227, 1227, 1227, 1227, 1227,   15,   10,    0,
+         0,    0,  170,   50,    0,    0,    0,   10,    0,   10,
+       360,    0,  100,  175,    0,   25,    0,   10,    5,  230,
+       235,  265,    5, 1227, 1227, 1227, 1227, 1227, 1227, 1227,
+      1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227,
+      1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227,
+      1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227,
+      1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227,
+      1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227,
+      1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227,
+      1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227,
+      1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227,
+      1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227,
+      1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227,
+      1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227,
+      1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227,
+      1227, 1227, 1227, 1227, 1227, 1227
     };
   register int hval = len;
 
@@ -130,287 +130,266 @@ findProp (register const char *str, register unsigned int len)
 {
   enum
     {
-      TOTAL_KEYWORDS = 134,
+      TOTAL_KEYWORDS = 135,
       MIN_WORD_LENGTH = 3,
       MAX_WORD_LENGTH = 32,
       MIN_HASH_VALUE = 5,
-      MAX_HASH_VALUE = 1436
+      MAX_HASH_VALUE = 1226
     };
 
   static const struct props wordlist_prop[] =
     {
       {"color", CSS_PROP_COLOR},
       {"border", CSS_PROP_BORDER},
-      {"left", CSS_PROP_LEFT},
       {"clear", CSS_PROP_CLEAR},
       {"border-color", CSS_PROP_BORDER_COLOR},
-      {"float", CSS_PROP_FLOAT},
-      {"border-left", CSS_PROP_BORDER_LEFT},
-      {"border-left-color", CSS_PROP_BORDER_LEFT_COLOR},
-      {"top", CSS_PROP_TOP},
-      {"clip", CSS_PROP_CLIP},
+      {"bottom", CSS_PROP_BOTTOM},
       {"size", CSS_PROP_SIZE},
-      {"border-top", CSS_PROP_BORDER_TOP},
       {"cursor", CSS_PROP_CURSOR},
-      {"border-top-color", CSS_PROP_BORDER_TOP_COLOR},
-      {"bottom", CSS_PROP_BOTTOM},
-      {"quotes", CSS_PROP_QUOTES},
       {"border-bottom", CSS_PROP_BORDER_BOTTOM},
       {"border-bottom-color", CSS_PROP_BORDER_BOTTOM_COLOR},
-      {"scrollbar-track-color", CSS_PROP_SCROLLBAR_TRACK_COLOR},
-      {"scrollbar-face-color", CSS_PROP_SCROLLBAR_FACE_COLOR},
-      {"border-collapse", CSS_PROP_BORDER_COLLAPSE},
       {"right", CSS_PROP_RIGHT},
       {"height", CSS_PROP_HEIGHT},
       {"border-right", CSS_PROP_BORDER_RIGHT},
       {"border-right-color", CSS_PROP_BORDER_RIGHT_COLOR},
-      {"width", CSS_PROP_WIDTH},
-      {"border-width", CSS_PROP_BORDER_WIDTH},
-      {"overflow", CSS_PROP_OVERFLOW},
-      {"-khtml-marquee", CSS_PROP__KHTML_MARQUEE},
-      {"border-left-width", CSS_PROP_BORDER_LEFT_WIDTH},
-      {"page", CSS_PROP_PAGE},
+      {"scrollbar-track-color", CSS_PROP_SCROLLBAR_TRACK_COLOR},
       {"-khtml-user-select", CSS_PROP__KHTML_USER_SELECT},
+      {"top", CSS_PROP_TOP},
+      {"clip", CSS_PROP_CLIP},
+      {"border-top", CSS_PROP_BORDER_TOP},
       {"scrollbar-3dlight-color", CSS_PROP_SCROLLBAR_3DLIGHT_COLOR},
-      {"-khtml-box-pack", CSS_PROP__KHTML_BOX_PACK},
-      {"border-top-width", CSS_PROP_BORDER_TOP_WIDTH},
-      {"-khtml-box-flex", CSS_PROP__KHTML_BOX_FLEX},
-      {"page-break-before", CSS_PROP_PAGE_BREAK_BEFORE},
-      {"page-break-after", CSS_PROP_PAGE_BREAK_AFTER},
-      {"border-bottom-width", CSS_PROP_BORDER_BOTTOM_WIDTH},
-      {"scrollbar-arrow-color", CSS_PROP_SCROLLBAR_ARROW_COLOR},
-      {"white-space", CSS_PROP_WHITE_SPACE},
-      {"table-layout", CSS_PROP_TABLE_LAYOUT},
-      {"max-height", CSS_PROP_MAX_HEIGHT},
+      {"border-top-color", CSS_PROP_BORDER_TOP_COLOR},
       {"-khtml-user-drag", CSS_PROP__KHTML_USER_DRAG},
-      {"-khtml-marquee-speed", CSS_PROP__KHTML_MARQUEE_SPEED},
-      {"text-shadow", CSS_PROP_TEXT_SHADOW},
-      {"opacity", CSS_PROP_OPACITY},
+      {"border-collapse", CSS_PROP_BORDER_COLLAPSE},
+      {"page", CSS_PROP_PAGE},
+      {"left", CSS_PROP_LEFT},
+      {"scrollbar-highlight-color", CSS_PROP_SCROLLBAR_HIGHLIGHT_COLOR},
+      {"float", CSS_PROP_FLOAT},
+      {"border-left", CSS_PROP_BORDER_LEFT},
+      {"border-left-color", CSS_PROP_BORDER_LEFT_COLOR},
+      {"quotes", CSS_PROP_QUOTES},
+      {"width", CSS_PROP_WIDTH},
+      {"-khtml-marquee", CSS_PROP__KHTML_MARQUEE},
+      {"border-width", CSS_PROP_BORDER_WIDTH},
+      {"scrollbar-face-color", CSS_PROP_SCROLLBAR_FACE_COLOR},
+      {"border-bottom-width", CSS_PROP_BORDER_BOTTOM_WIDTH},
+      {"border-right-width", CSS_PROP_BORDER_RIGHT_WIDTH},
       {"border-style", CSS_PROP_BORDER_STYLE},
       {"visibility", CSS_PROP_VISIBILITY},
-      {"max-width", CSS_PROP_MAX_WIDTH},
+      {"scrollbar-arrow-color", CSS_PROP_SCROLLBAR_ARROW_COLOR},
+      {"max-height", CSS_PROP_MAX_HEIGHT},
+      {"list-style", CSS_PROP_LIST_STYLE},
+      {"table-layout", CSS_PROP_TABLE_LAYOUT},
+      {"border-bottom-style", CSS_PROP_BORDER_BOTTOM_STYLE},
       {"scrollbar-shadow-color", CSS_PROP_SCROLLBAR_SHADOW_COLOR},
+      {"border-top-width", CSS_PROP_BORDER_TOP_WIDTH},
+      {"border-right-style", CSS_PROP_BORDER_RIGHT_STYLE},
       {"direction", CSS_PROP_DIRECTION},
-      {"border-left-style", CSS_PROP_BORDER_LEFT_STYLE},
-      {"border-right-width", CSS_PROP_BORDER_RIGHT_WIDTH},
+      {"scrollbar-darkshadow-color", CSS_PROP_SCROLLBAR_DARKSHADOW_COLOR},
+      {"-khtml-marquee-speed", CSS_PROP__KHTML_MARQUEE_SPEED},
       {"outline", CSS_PROP_OUTLINE},
-      {"font", CSS_PROP_FONT},
+      {"white-space", CSS_PROP_WHITE_SPACE},
       {"outline-color", CSS_PROP_OUTLINE_COLOR},
-      {"-khtml-flow-mode", CSS_PROP__KHTML_FLOW_MODE},
+      {"opacity", CSS_PROP_OPACITY},
       {"unicode-bidi", CSS_PROP_UNICODE_BIDI},
-      {"scrollbar-darkshadow-color", CSS_PROP_SCROLLBAR_DARKSHADOW_COLOR},
-      {"list-style", CSS_PROP_LIST_STYLE},
+      {"page-break-before", CSS_PROP_PAGE_BREAK_BEFORE},
+      {"page-break-after", CSS_PROP_PAGE_BREAK_AFTER},
+      {"-khtml-box-pack", CSS_PROP__KHTML_BOX_PACK},
+      {"list-style-image", CSS_PROP_LIST_STYLE_IMAGE},
+      {"counter-reset", CSS_PROP_COUNTER_RESET},
+      {"empty-cells", CSS_PROP_EMPTY_CELLS},
       {"display", CSS_PROP_DISPLAY},
+      {"overflow", CSS_PROP_OVERFLOW},
       {"border-top-style", CSS_PROP_BORDER_TOP_STYLE},
-      {"scrollbar-highlight-color", CSS_PROP_SCROLLBAR_HIGHLIGHT_COLOR},
-      {"counter-reset", CSS_PROP_COUNTER_RESET},
+      {"line-height", CSS_PROP_LINE_HEIGHT},
+      {"border-left-width", CSS_PROP_BORDER_LEFT_WIDTH},
+      {"min-height", CSS_PROP_MIN_HEIGHT},
+      {"margin", CSS_PROP_MARGIN},
+      {"-khtml-flow-mode", CSS_PROP__KHTML_FLOW_MODE},
+      {"vertical-align", CSS_PROP_VERTICAL_ALIGN},
+      {"background", CSS_PROP_BACKGROUND},
+      {"margin-bottom", CSS_PROP_MARGIN_BOTTOM},
+      {"background-color", CSS_PROP_BACKGROUND_COLOR},
+      {"border-left-style", CSS_PROP_BORDER_LEFT_STYLE},
       {"widows", CSS_PROP_WIDOWS},
-      {"font-stretch", CSS_PROP_FONT_STRETCH},
-      {"border-bottom-style", CSS_PROP_BORDER_BOTTOM_STYLE},
-      {"z-index", CSS_PROP_Z_INDEX},
-      {"font-size", CSS_PROP_FONT_SIZE},
-      {"text-decoration", CSS_PROP_TEXT_DECORATION},
-      {"text-decoration-color", CSS_PROP_TEXT_DECORATION_COLOR},
-      {"outline-offset", CSS_PROP_OUTLINE_OFFSET},
-      {"empty-cells", CSS_PROP_EMPTY_CELLS},
       {"position", CSS_PROP_POSITION},
+      {"margin-right", CSS_PROP_MARGIN_RIGHT},
+      {"max-width", CSS_PROP_MAX_WIDTH},
       {"orphans", CSS_PROP_ORPHANS},
-      {"-khtml-box-flex-group", CSS_PROP__KHTML_BOX_FLEX_GROUP},
       {"caption-side", CSS_PROP_CAPTION_SIDE},
-      {"border-right-style", CSS_PROP_BORDER_RIGHT_STYLE},
-      {"line-height", CSS_PROP_LINE_HEIGHT},
+      {"text-shadow", CSS_PROP_TEXT_SHADOW},
       {"-khtml-user-modify", CSS_PROP__KHTML_USER_MODIFY},
-      {"font-size-adjust", CSS_PROP_FONT_SIZE_ADJUST},
-      {"-khtml-box-orient", CSS_PROP__KHTML_BOX_ORIENT},
-      {"-khtml-box-direction", CSS_PROP__KHTML_BOX_DIRECTION},
+      {"padding", CSS_PROP_PADDING},
+      {"font", CSS_PROP_FONT},
       {"-khtml-marquee-style", CSS_PROP__KHTML_MARQUEE_STYLE},
-      {"vertical-align", CSS_PROP_VERTICAL_ALIGN},
-      {"background", CSS_PROP_BACKGROUND},
+      {"margin-top", CSS_PROP_MARGIN_TOP},
+      {"background-image", CSS_PROP_BACKGROUND_IMAGE},
+      {"padding-bottom", CSS_PROP_PADDING_BOTTOM},
+      {"letter-spacing", CSS_PROP_LETTER_SPACING},
+      {"font-stretch", CSS_PROP_FONT_STRETCH},
+      {"font-size", CSS_PROP_FONT_SIZE},
+      {"border-spacing", CSS_PROP_BORDER_SPACING},
+      {"background-repeat", CSS_PROP_BACKGROUND_REPEAT},
+      {"padding-right", CSS_PROP_PADDING_RIGHT},
+      {"page-break-inside", CSS_PROP_PAGE_BREAK_INSIDE},
+      {"z-index", CSS_PROP_Z_INDEX},
+      {"min-width", CSS_PROP_MIN_WIDTH},
       {"outline-width", CSS_PROP_OUTLINE_WIDTH},
-      {"background-color", CSS_PROP_BACKGROUND_COLOR},
-      {"padding", CSS_PROP_PADDING},
       {"-khtml-marquee-direction", CSS_PROP__KHTML_MARQUEE_DIRECTION},
-      {"min-height", CSS_PROP_MIN_HEIGHT},
-      {"-khtml-box-lines", CSS_PROP__KHTML_BOX_LINES},
-      {"padding-left", CSS_PROP_PADDING_LEFT},
-      {"text-transform", CSS_PROP_TEXT_TRANSFORM},
-      {"text-align", CSS_PROP_TEXT_ALIGN},
-      {"margin", CSS_PROP_MARGIN},
       {"margin-left", CSS_PROP_MARGIN_LEFT},
-      {"min-width", CSS_PROP_MIN_WIDTH},
-      {"background-repeat", CSS_PROP_BACKGROUND_REPEAT},
-      {"-apple-line-clamp", CSS_PROP__APPLE_LINE_CLAMP},
-      {"-khtml-marquee-repetition", CSS_PROP__KHTML_MARQUEE_REPETITION},
+      {"text-decoration", CSS_PROP_TEXT_DECORATION},
+      {"font-size-adjust", CSS_PROP_FONT_SIZE_ADJUST},
+      {"-khtml-border-vertical-spacing", CSS_PROP__KHTML_BORDER_VERTICAL_SPACING},
+      {"text-decoration-color", CSS_PROP_TEXT_DECORATION_COLOR},
       {"padding-top", CSS_PROP_PADDING_TOP},
-      {"list-style-image", CSS_PROP_LIST_STYLE_IMAGE},
-      {"letter-spacing", CSS_PROP_LETTER_SPACING},
-      {"border-spacing", CSS_PROP_BORDER_SPACING},
-      {"margin-top", CSS_PROP_MARGIN_TOP},
-      {"padding-bottom", CSS_PROP_PADDING_BOTTOM},
-      {"page-break-inside", CSS_PROP_PAGE_BREAK_INSIDE},
-      {"margin-bottom", CSS_PROP_MARGIN_BOTTOM},
+      {"-khtml-box-orient", CSS_PROP__KHTML_BOX_ORIENT},
+      {"-khtml-box-direction", CSS_PROP__KHTML_BOX_DIRECTION},
+      {"text-overflow", CSS_PROP_TEXT_OVERFLOW},
+      {"-khtml-box-lines", CSS_PROP__KHTML_BOX_LINES},
+      {"text-align", CSS_PROP_TEXT_ALIGN},
       {"outline-style", CSS_PROP_OUTLINE_STYLE},
-      {"font-style", CSS_PROP_FONT_STYLE},
+      {"-khtml-box-flex", CSS_PROP__KHTML_BOX_FLEX},
+      {"list-style-type", CSS_PROP_LIST_STYLE_TYPE},
       {"-khtml-box-align", CSS_PROP__KHTML_BOX_ALIGN},
+      {"padding-left", CSS_PROP_PADDING_LEFT},
+      {"-khtml-marquee-repetition", CSS_PROP__KHTML_MARQUEE_REPETITION},
+      {"-apple-line-clamp", CSS_PROP__APPLE_LINE_CLAMP},
       {"content", CSS_PROP_CONTENT},
-      {"font-weight", CSS_PROP_FONT_WEIGHT},
-      {"list-style-type", CSS_PROP_LIST_STYLE_TYPE},
-      {"padding-right", CSS_PROP_PADDING_RIGHT},
-      {"font-family", CSS_PROP_FONT_FAMILY},
-      {"margin-right", CSS_PROP_MARGIN_RIGHT},
-      {"font-variant", CSS_PROP_FONT_VARIANT},
-      {"-khtml-box-ordinal-group", CSS_PROP__KHTML_BOX_ORDINAL_GROUP},
-      {"-khtml-border-vertical-spacing", CSS_PROP__KHTML_BORDER_VERTICAL_SPACING},
-      {"text-indent", CSS_PROP_TEXT_INDENT},
-      {"background-image", CSS_PROP_BACKGROUND_IMAGE},
+      {"outline-offset", CSS_PROP_OUTLINE_OFFSET},
       {"word-spacing", CSS_PROP_WORD_SPACING},
-      {"list-style-position", CSS_PROP_LIST_STYLE_POSITION},
       {"-khtml-binding", CSS_PROP__KHTML_BINDING},
-      {"-khtml-marquee-increment", CSS_PROP__KHTML_MARQUEE_INCREMENT},
+      {"list-style-position", CSS_PROP_LIST_STYLE_POSITION},
+      {"font-weight", CSS_PROP_FONT_WEIGHT},
+      {"-khtml-box-ordinal-group", CSS_PROP__KHTML_BOX_ORDINAL_GROUP},
+      {"text-transform", CSS_PROP_TEXT_TRANSFORM},
+      {"font-style", CSS_PROP_FONT_STYLE},
+      {"-khtml-box-flex-group", CSS_PROP__KHTML_BOX_FLEX_GROUP},
       {"background-attachment", CSS_PROP_BACKGROUND_ATTACHMENT},
+      {"font-variant", CSS_PROP_FONT_VARIANT},
       {"background-position", CSS_PROP_BACKGROUND_POSITION},
-      {"background-position-x", CSS_PROP_BACKGROUND_POSITION_X},
+      {"text-indent", CSS_PROP_TEXT_INDENT},
+      {"-khtml-marquee-increment", CSS_PROP__KHTML_MARQUEE_INCREMENT},
       {"-khtml-border-horizontal-spacing", CSS_PROP__KHTML_BORDER_HORIZONTAL_SPACING},
+      {"font-family", CSS_PROP_FONT_FAMILY},
       {"counter-increment", CSS_PROP_COUNTER_INCREMENT},
+      {"background-position-x", CSS_PROP_BACKGROUND_POSITION_X},
       {"background-position-y", CSS_PROP_BACKGROUND_POSITION_Y}
     };
 
   static const short lookup[] =
     {
        -1,  -1,  -1,  -1,  -1,   0,  -1,  -1,  -1,  -1,
-       -1,  -1,  -1,  -1,  -1,  -1,   1,  -1,  -1,   2,
-        3,  -1,   4,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1,  -1,  -1,  -1,  -1,   5,   6,  -1,  -1,  -1,
-       -1,  -1,   7,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1,  -1,  -1,   8,   9,  -1,  -1,  -1,  -1,  -1,
-       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  10,
-       11,  12,  -1,  -1,  -1,  -1,  13,  -1,  -1,  -1,
-       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1,  14,  -1,  -1,  -1,  -1,  15,  -1,  -1,  -1,
-       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  16,  -1,
-       -1,  -1,  -1,  -1,  17,  -1,  -1,  -1,  -1,  -1,
-       -1,  -1,  -1,  -1,  -1,  -1,  18,  -1,  -1,  -1,
-       19,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1,  -1,  -1,  -1,  -1,  20,  -1,  -1,  -1,  -1,
-       -1,  -1,  -1,  -1,  -1,  21,  22,  -1,  -1,  -1,
-       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1,  -1,  23,  -1,  -1,  -1,  -1,  -1,  24,  -1,
-       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       25,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1,  -1,  -1,  -1,  -1,  -1,  -1,  26,  -1,  -1,
-       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  27,  -1,
-       -1,  -1,  -1,  -1,  28,  -1,  -1,  29,  -1,  30,
-       -1,  -1,  -1,  31,  -1,  -1,  -1,  -1,  -1,  -1,
+       -1,  -1,  -1,  -1,  -1,  -1,   1,  -1,  -1,  -1,
+        2,  -1,   3,  -1,  -1,  -1,   4,  -1,  -1,  -1,
+       -1,  -1,  -1,  -1,   5,  -1,  -1,  -1,  -1,  -1,
+       -1,   6,  -1,   7,  -1,  -1,  -1,  -1,  -1,   8,
+       -1,  -1,  -1,  -1,  -1,   9,  10,  -1,  -1,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+       -1,  -1,  11,  -1,  -1,  -1,  -1,  -1,  12,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1,  -1,  -1,  32,  -1,  33,  -1,  -1,  -1,  -1,
-       -1,  34,  -1,  -1,  -1,  35,  -1,  -1,  -1,  -1,
+       -1,  -1,  -1,  -1,  -1,  -1,  13,  -1,  14,  -1,
+       -1,  -1,  -1,  15,  16,  -1,  -1,  -1,  -1,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+       17,  -1,  -1,  18,  -1,  -1,  19,  -1,  -1,  -1,
+       -1,  -1,  -1,  -1,  -1,  -1,  20,  -1,  -1,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1,  -1,  36,  -1,  -1,  -1,  37,  -1,  -1,  38,
-       -1,  39,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1,  -1,  -1,  -1,  -1,  -1,  40,  41,  -1,  -1,
-       42,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1,  43,  -1,  -1,  -1,  44,  45,  46,  -1,  -1,
-       -1,  -1,  47,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       48,  -1,  -1,  -1,  49,  -1,  -1,  50,  -1,  51,
-       -1,  -1,  52,  53,  -1,  -1,  -1,  54,  -1,  55,
-       -1,  -1,  -1,  56,  -1,  -1,  57,  -1,  -1,  -1,
-       -1,  -1,  58,  -1,  -1,  -1,  59,  -1,  -1,  -1,
-       -1,  -1,  -1,  -1,  -1,  60,  -1,  -1,  -1,  -1,
-       -1,  -1,  61,  -1,  -1,  -1,  62,  -1,  -1,  -1,
-       -1,  -1,  -1,  -1,  -1,  63,  -1,  -1,  -1,  -1,
+       -1,  -1,  -1,  -1,  -1,  21,  -1,  -1,  -1,  22,
+       -1,  -1,  -1,  -1,  23,  24,  -1,  -1,  -1,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  64,  -1,
-       -1,  65,  66,  -1,  67,  -1,  -1,  68,  -1,  69,
+       25,  26,  -1,  -1,  -1,  -1,  -1,  27,  -1,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       70,  -1,  -1,  -1,  -1,  -1,  71,  -1,  -1,  72,
-       -1,  -1,  -1,  -1,  -1,  -1,  73,  -1,  -1,  -1,
-       -1,  -1,  -1,  74,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1,  -1,  -1,  -1,  -1,  -1,  -1,  75,  -1,  -1,
-       -1,  76,  77,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  78,  -1,
+       -1,  -1,  -1,  -1,  -1,  -1,  28,  -1,  -1,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1,  79,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1,  -1,  -1,  80,  -1,  -1,  81,  -1,  -1,  -1,
-       -1,  -1,  82,  -1,  -1,  83,  -1,  -1,  -1,  -1,
+       -1,  -1,  -1,  -1,  -1,  29,  -1,  -1,  -1,  -1,
+       -1,  -1,  -1,  -1,  30,  -1,  -1,  -1,  -1,  -1,
+       -1,  -1,  31,  -1,  -1,  32,  -1,  -1,  -1,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       84,  -1,  -1,  -1,  85,  86,  -1,  -1,  87,  -1,
-       -1,  88,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  33,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1,  -1,  89,  -1,  90,  -1,  -1,  -1,  -1,  -1,
-       -1,  -1,  -1,  -1,  -1,  91,  92,  -1,  -1,  -1,
-       -1,  -1,  93,  -1,  94,  95,  96,  -1,  -1,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1,  -1,  -1,  -1,  -1,  -1,  97,  -1,  -1,  98,
-       -1,  -1,  -1,  -1,  -1,  -1,  -1,  99,  -1,  -1,
-       -1,  -1, 100,  -1,  -1, 101, 102,  -1,  -1,  -1,
-       -1, 103,  -1,  -1, 104,  -1,  -1,  -1,  -1,  -1,
-       -1,  -1,  -1,  -1, 105,  -1,  -1,  -1,  -1,  -1,
-      106,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1,  -1,  -1,  -1, 107,  -1,  -1,  -1,  -1,  -1,
-       -1,  -1, 108,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1, 109,  -1,
-       -1,  -1,  -1, 110,  -1, 111, 112,  -1,  -1,  -1,
-       -1,  -1,  -1,  -1,  -1,  -1,  -1, 113,  -1,  -1,
-       -1, 114,  -1,  -1,  -1, 115,  -1,  -1,  -1,  -1,
+       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  34,  -1,
+       -1,  -1,  35,  -1,  -1,  36,  37,  -1,  -1,  -1,
+       38,  -1,  -1,  -1,  -1,  39,  -1,  40,  -1,  -1,
+       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  41,
+       -1,  -1,  42,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+       -1,  -1,  -1,  -1,  -1,  -1,  43,  -1,  -1,  -1,
+       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  44,  45,
+       -1,  46,  -1,  -1,  -1,  47,  -1,  48,  -1,  -1,
+       -1,  49,  -1,  50,  -1,  -1,  -1,  51,  -1,  -1,
+       -1,  -1,  52,  -1,  -1,  -1,  -1,  53,  -1,  -1,
+       -1,  54,  -1,  -1,  -1,  55,  56,  -1,  57,  -1,
+       -1,  58,  59,  60,  -1,  -1,  61,  -1,  -1,  -1,
+       -1,  62,  -1,  -1,  -1,  -1,  -1,  63,  -1,  -1,
+       64,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+       -1,  65,  -1,  -1,  -1,  -1,  66,  -1,  -1,  -1,
+       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  67,
+       -1,  -1,  -1,  -1,  -1,  68,  -1,  -1,  69,  -1,
+       -1,  70,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+       -1,  -1,  -1,  -1,  -1,  -1,  -1,  71,  -1,  -1,
+       -1,  72,  -1,  73,  -1,  -1,  -1,  74,  -1,  75,
+       -1,  -1,  -1,  -1,  -1,  -1,  -1,  76,  -1,  -1,
+       -1,  -1,  77,  -1,  -1,  -1,  78,  -1,  79,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1, 116,  -1,
-       -1,  -1,  -1,  -1,  -1,  -1, 117,  -1,  -1,  -1,
+       -1,  -1,  80,  -1,  81,  -1,  -1,  -1,  -1,  -1,
+       82,  -1,  -1,  -1,  -1,  83,  84,  -1,  -1,  -1,
+       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  85,
+       -1,  -1,  -1,  -1,  86,  -1,  -1,  87,  -1,  88,
+       -1,  -1,  -1,  -1,  89,  -1,  -1,  -1,  -1,  -1,
+       -1,  -1,  -1,  -1,  -1,  -1,  -1,  90,  91,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1,  -1, 118,  -1,  -1,  -1,  -1, 119,  -1,  -1,
-       -1,  -1,  -1,  -1, 120,  -1,  -1,  -1,  -1,  -1,
-      121,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1, 122,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+       -1,  -1,  92,  -1,  -1,  -1,  -1,  93,  -1,  94,
+       -1,  -1,  -1,  95,  96,  -1,  97,  -1,  -1,  -1,
+       -1,  -1,  -1,  -1,  -1,  98,  99,  -1,  -1,  -1,
+      100, 101,  -1,  -1,  -1,  -1, 102,  -1,  -1,  -1,
+       -1,  -1, 103,  -1,  -1, 104,  -1,  -1,  -1,  -1,
+       -1,  -1,  -1, 105,  -1,  -1,  -1,  -1,  -1,  -1,
+       -1,  -1,  -1,  -1,  -1,  -1, 106,  -1,  -1,  -1,
+      107,  -1,  -1, 108,  -1,  -1,  -1,  -1,  -1,  -1,
+       -1,  -1,  -1,  -1,  -1, 109,  -1,  -1,  -1,  -1,
+       -1,  -1,  -1,  -1,  -1, 110,  -1,  -1,  -1,  -1,
+       -1,  -1,  -1,  -1,  -1,  -1, 111, 112,  -1,  -1,
+       -1,  -1,  -1,  -1,  -1, 113,  -1, 114,  -1,  -1,
+       -1,  -1,  -1,  -1,  -1,  -1,  -1, 115,  -1,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1, 123,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1, 116,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1,  -1,  -1,  -1,  -1,  -1,  -1, 124,  -1,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1, 125,
+       -1,  -1, 117,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+       -1,  -1,  -1,  -1, 118,  -1,  -1,  -1,  -1, 119,
+       -1, 120,  -1,  -1, 121,  -1,  -1,  -1,  -1, 122,
+      123,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+       -1, 124,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+       -1,  -1,  -1,  -1,  -1,  -1, 125,  -1,  -1,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1, 126,
-       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+       -1,  -1,  -1,  -1,  -1,  -1,  -1, 126,  -1,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1, 127,
+       -1,  -1,  -1,  -1,  -1,  -1, 128,  -1,  -1,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1, 128,  -1,  -1,  -1,  -1,  -1,  -1,  -1, 129,
-       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+       -1,  -1,  -1,  -1, 129,  -1,  -1,  -1,  -1,  -1,
+       -1,  -1, 130,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+       -1, 131,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1, 130,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1,  -1, 131,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1,  -1, 132,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+       -1,  -1,  -1,  -1,  -1,  -1,  -1, 132,  -1,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
@@ -418,9 +397,10 @@ findProp (register const char *str, register unsigned int len)
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+       -1,  -1,  -1,  -1,  -1,  -1, 133,  -1,  -1,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
        -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
-       -1,  -1,  -1,  -1,  -1,  -1, 133
+       -1,  -1,  -1,  -1,  -1,  -1, 134
     };
 
   if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
@@ -542,6 +522,7 @@ static const char * const propertyList[] = {
 "text-decoration", 
 "text-decoration-color", 
 "text-indent", 
+"text-overflow", 
 "text-shadow", 
 "text-transform", 
 "top", 
diff --git a/WebCore/khtml/css/cssproperties.h b/WebCore/khtml/css/cssproperties.h
index 6df9757..0550ea3 100644
--- a/WebCore/khtml/css/cssproperties.h
+++ b/WebCore/khtml/css/cssproperties.h
@@ -105,44 +105,45 @@
 #define CSS_PROP_TEXT_DECORATION 96
 #define CSS_PROP_TEXT_DECORATION_COLOR 97
 #define CSS_PROP_TEXT_INDENT 98
-#define CSS_PROP_TEXT_SHADOW 99
-#define CSS_PROP_TEXT_TRANSFORM 100
-#define CSS_PROP_TOP 101
-#define CSS_PROP_UNICODE_BIDI 102
-#define CSS_PROP__KHTML_USER_DRAG 103
-#define CSS_PROP__KHTML_USER_MODIFY 104
-#define CSS_PROP__KHTML_USER_SELECT 105
-#define CSS_PROP_VERTICAL_ALIGN 106
-#define CSS_PROP_VISIBILITY 107
-#define CSS_PROP_WHITE_SPACE 108
-#define CSS_PROP_WIDOWS 109
-#define CSS_PROP_WIDTH 110
-#define CSS_PROP_WORD_SPACING 111
-#define CSS_PROP_Z_INDEX 112
-#define CSS_PROP_BACKGROUND 113
-#define CSS_PROP_BORDER 114
-#define CSS_PROP_BORDER_COLOR 115
-#define CSS_PROP_BORDER_STYLE 116
-#define CSS_PROP_BORDER_TOP 117
-#define CSS_PROP_BORDER_RIGHT 118
-#define CSS_PROP_BORDER_BOTTOM 119
-#define CSS_PROP_BORDER_LEFT 120
-#define CSS_PROP_BORDER_WIDTH 121
-#define CSS_PROP_FONT 122
-#define CSS_PROP_LIST_STYLE 123
-#define CSS_PROP_MARGIN 124
-#define CSS_PROP_OUTLINE 125
-#define CSS_PROP_PADDING 126
-#define CSS_PROP_SCROLLBAR_FACE_COLOR 127
-#define CSS_PROP_SCROLLBAR_SHADOW_COLOR 128
-#define CSS_PROP_SCROLLBAR_HIGHLIGHT_COLOR 129
-#define CSS_PROP_SCROLLBAR_3DLIGHT_COLOR 130
-#define CSS_PROP_SCROLLBAR_DARKSHADOW_COLOR 131
-#define CSS_PROP_SCROLLBAR_TRACK_COLOR 132
-#define CSS_PROP_SCROLLBAR_ARROW_COLOR 133
-#define CSS_PROP__KHTML_FLOW_MODE 134
+#define CSS_PROP_TEXT_OVERFLOW 99
+#define CSS_PROP_TEXT_SHADOW 100
+#define CSS_PROP_TEXT_TRANSFORM 101
+#define CSS_PROP_TOP 102
+#define CSS_PROP_UNICODE_BIDI 103
+#define CSS_PROP__KHTML_USER_DRAG 104
+#define CSS_PROP__KHTML_USER_MODIFY 105
+#define CSS_PROP__KHTML_USER_SELECT 106
+#define CSS_PROP_VERTICAL_ALIGN 107
+#define CSS_PROP_VISIBILITY 108
+#define CSS_PROP_WHITE_SPACE 109
+#define CSS_PROP_WIDOWS 110
+#define CSS_PROP_WIDTH 111
+#define CSS_PROP_WORD_SPACING 112
+#define CSS_PROP_Z_INDEX 113
+#define CSS_PROP_BACKGROUND 114
+#define CSS_PROP_BORDER 115
+#define CSS_PROP_BORDER_COLOR 116
+#define CSS_PROP_BORDER_STYLE 117
+#define CSS_PROP_BORDER_TOP 118
+#define CSS_PROP_BORDER_RIGHT 119
+#define CSS_PROP_BORDER_BOTTOM 120
+#define CSS_PROP_BORDER_LEFT 121
+#define CSS_PROP_BORDER_WIDTH 122
+#define CSS_PROP_FONT 123
+#define CSS_PROP_LIST_STYLE 124
+#define CSS_PROP_MARGIN 125
+#define CSS_PROP_OUTLINE 126
+#define CSS_PROP_PADDING 127
+#define CSS_PROP_SCROLLBAR_FACE_COLOR 128
+#define CSS_PROP_SCROLLBAR_SHADOW_COLOR 129
+#define CSS_PROP_SCROLLBAR_HIGHLIGHT_COLOR 130
+#define CSS_PROP_SCROLLBAR_3DLIGHT_COLOR 131
+#define CSS_PROP_SCROLLBAR_DARKSHADOW_COLOR 132
+#define CSS_PROP_SCROLLBAR_TRACK_COLOR 133
+#define CSS_PROP_SCROLLBAR_ARROW_COLOR 134
+#define CSS_PROP__KHTML_FLOW_MODE 135
 
 #define CSS_PROP_MAX CSS_PROP_Z_INDEX
-#define CSS_PROP_TOTAL 135
+#define CSS_PROP_TOTAL 136
 #endif
 
diff --git a/WebCore/khtml/css/cssproperties.in b/WebCore/khtml/css/cssproperties.in
index a450648..304264b 100644
--- a/WebCore/khtml/css/cssproperties.in
+++ b/WebCore/khtml/css/cssproperties.in
@@ -110,6 +110,7 @@ text-align
 text-decoration
 text-decoration-color
 text-indent
+text-overflow
 text-shadow
 text-transform
 top
diff --git a/WebCore/khtml/css/cssstyleselector.cpp b/WebCore/khtml/css/cssstyleselector.cpp
index 139d97e..33421f2 100644
--- a/WebCore/khtml/css/cssstyleselector.cpp
+++ b/WebCore/khtml/css/cssstyleselector.cpp
@@ -3590,7 +3590,16 @@ void CSSStyleSelector::applyProperty( int id, DOM::CSSValueImpl *value )
         style->setUserSelect(primitiveValue->getIdent() == CSS_VAL_AUTO);
         break;
     }
-        
+    case CSS_PROP_TEXT_OVERFLOW: {
+        // This property is supported by WinIE, and so we leave off the "-khtml-" in order to
+        // work with WinIE-specific pages that use the property.
+        HANDLE_INHERIT_AND_INITIAL(textOverflow, TextOverflow)
+        if (!primitiveValue || !primitiveValue->getIdent())
+            return;
+        style->setTextOverflow(primitiveValue->getIdent() == CSS_VAL_ELLIPSIS);
+        break;
+    }
+
 #if APPLE_CHANGES
     // Apple-specific changes.  Do not merge these properties into KHTML.
     case CSS_PROP__APPLE_LINE_CLAMP: {
diff --git a/WebCore/khtml/css/cssvalues.c b/WebCore/khtml/css/cssvalues.c
index 677fb78..5a48bcf 100644
--- a/WebCore/khtml/css/cssvalues.c
+++ b/WebCore/khtml/css/cssvalues.c
@@ -7,7 +7,7 @@ struct css_value {
     const char *name;
     int id;
 };
-/* maximum key range = 2829, duplicates = 1 */
+/* maximum key range = 3474, duplicates = 1 */
 
 #ifdef __GNUC__
 __inline
@@ -21,32 +21,32 @@ hash_val (register const char *str, register unsigned int len)
 {
   static const unsigned short asso_values[] =
     {
-      2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829,
-      2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829,
-      2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829,
-      2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829,
-      2829, 2829, 2829, 2829, 2829,   15, 2829, 2829,    0,    5,
-        10,   15,   20,   25,   30,   35,   40,    0, 2829, 2829,
-      2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829,
-      2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829,
-      2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829,
-      2829, 2829, 2829, 2829, 2829, 2829, 2829,    0,   58,    3,
-       211,  225,   13,  390,   95,   35,    5,  480,    0,  165,
-        55,   50,   53,   10,  290,   10,    0,   65,  153,  435,
-       278,   45,  195, 2829, 2829, 2829, 2829, 2829, 2829, 2829,
-      2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829,
-      2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829,
-      2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829,
-      2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829,
-      2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829,
-      2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829,
-      2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829,
-      2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829,
-      2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829,
-      2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829,
-      2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829,
-      2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829,
-      2829, 2829, 2829, 2829, 2829, 2829
+      3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474,
+      3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474,
+      3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474,
+      3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474,
+      3474, 3474, 3474, 3474, 3474,   15, 3474, 3474,    0,    5,
+        10,   15,   20,   25,   30,   35,   40,    0, 3474, 3474,
+      3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474,
+      3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474,
+      3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474,
+      3474, 3474, 3474, 3474, 3474, 3474, 3474,    0,   83,    3,
+       470,  225,   75,  245,  310,   35,    0,  240,    0,  143,
+        55,   33,  105,    0,  165,   10,    0,  480,  178,  380,
+       313,   50,  155, 3474, 3474, 3474, 3474, 3474, 3474, 3474,
+      3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474,
+      3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474,
+      3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474,
+      3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474,
+      3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474,
+      3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474,
+      3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474,
+      3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474,
+      3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474,
+      3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474,
+      3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474,
+      3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474, 3474,
+      3474, 3474, 3474, 3474, 3474, 3474
     };
   register int hval = 0;
 
@@ -110,11 +110,11 @@ findValue (register const char *str, register unsigned int len)
 {
   enum
     {
-      TOTAL_KEYWORDS = 260,
+      TOTAL_KEYWORDS = 262,
       MIN_WORD_LENGTH = 2,
       MAX_WORD_LENGTH = 22,
       MIN_HASH_VALUE = 0,
-      MAX_HASH_VALUE = 2828
+      MAX_HASH_VALUE = 3473
     };
 
   static const struct css_value wordlist_value[] =
@@ -124,260 +124,262 @@ findValue (register const char *str, register unsigned int len)
       {"200", CSS_VAL_200},
       {"300", CSS_VAL_300},
       {"400", CSS_VAL_400},
-      {"fast", CSS_VAL_FAST},
       {"500", CSS_VAL_500},
       {"600", CSS_VAL_600},
       {"700", CSS_VAL_700},
       {"800", CSS_VAL_800},
       {"static", CSS_VAL_STATIC},
       {"italic", CSS_VAL_ITALIC},
-      {"aqua", CSS_VAL_AQUA},
-      {"top", CSS_VAL_TOP},
-      {"auto", CSS_VAL_AUTO},
-      {"up", CSS_VAL_UP},
-      {"fantasy", CSS_VAL_FANTASY},
-      {"sub", CSS_VAL_SUB},
+      {"fast", CSS_VAL_FAST},
       {"icon", CSS_VAL_ICON},
-      {"initial", CSS_VAL_INITIAL},
-      {"justify", CSS_VAL_JUSTIFY},
+      {"top", CSS_VAL_TOP},
+      {"clip", CSS_VAL_CLIP},
       {"small", CSS_VAL_SMALL},
-      {"thin", CSS_VAL_THIN},
-      {"caption", CSS_VAL_CAPTION},
-      {"both", CSS_VAL_BOTH},
-      {"fuchsia", CSS_VAL_FUCHSIA},
+      {"initial", CSS_VAL_INITIAL},
+      {"ltr", CSS_VAL_LTR},
+      {"rtl", CSS_VAL_RTL},
+      {"start", CSS_VAL_START},
+      {"fantasy", CSS_VAL_FANTASY},
+      {"scroll", CSS_VAL_SCROLL},
+      {"cross", CSS_VAL_CROSS},
       {"teal", CSS_VAL_TEAL},
-      {"left", CSS_VAL_LEFT},
+      {"caption", CSS_VAL_CAPTION},
       {"navy", CSS_VAL_NAVY},
       {"small-caps", CSS_VAL_SMALL_CAPS},
-      {"disc", CSS_VAL_DISC},
       {"compact", CSS_VAL_COMPACT},
-      {"table", CSS_VAL_TABLE},
-      {"ltr", CSS_VAL_LTR},
-      {"rtl", CSS_VAL_RTL},
-      {"start", CSS_VAL_START},
-      {"solid", CSS_VAL_SOLID},
-      {"bold", CSS_VAL_BOLD},
       {"bottom", CSS_VAL_BOTTOM},
+      {"left", CSS_VAL_LEFT},
+      {"crop", CSS_VAL_CROP},
+      {"table", CSS_VAL_TABLE},
       {"inset", CSS_VAL_INSET},
-      {"loud", CSS_VAL_LOUD},
-      {"collapse", CSS_VAL_COLLAPSE},
-      {"blue", CSS_VAL_BLUE},
-      {"outset", CSS_VAL_OUTSET},
-      {"scroll", CSS_VAL_SCROLL},
-      {"hand", CSS_VAL_HAND},
-      {"cross", CSS_VAL_CROSS},
-      {"help", CSS_VAL_HELP},
+      {"black", CSS_VAL_BLACK},
+      {"block", CSS_VAL_BLOCK},
       {"none", CSS_VAL_NONE},
+      {"collapse", CSS_VAL_COLLAPSE},
+      {"intrinsic", CSS_VAL_INTRINSIC},
+      {"normal", CSS_VAL_NORMAL},
       {"small-caption", CSS_VAL_SMALL_CAPTION},
-      {"crop", CSS_VAL_CROP},
-      {"inline", CSS_VAL_INLINE},
-      {"absolute", CSS_VAL_ABSOLUTE},
+      {"thin", CSS_VAL_THIN},
       {"lime", CSS_VAL_LIME},
-      {"oblique", CSS_VAL_OBLIQUE},
-      {"status-bar", CSS_VAL_STATUS_BAR},
-      {"avoid", CSS_VAL_AVOID},
-      {"infinite", CSS_VAL_INFINITE},
+      {"inline", CSS_VAL_INLINE},
+      {"blink", CSS_VAL_BLINK},
+      {"wait", CSS_VAL_WAIT},
+      {"ellipsis", CSS_VAL_ELLIPSIS},
+      {"slow", CSS_VAL_SLOW},
+      {"both", CSS_VAL_BOTH},
+      {"maroon", CSS_VAL_MAROON},
+      {"circle", CSS_VAL_CIRCLE},
+      {"always", CSS_VAL_ALWAYS},
+      {"scrollbar", CSS_VAL_SCROLLBAR},
+      {"gray", CSS_VAL_GRAY},
+      {"list-item", CSS_VAL_LIST_ITEM},
       {"olive", CSS_VAL_OLIVE},
+      {"aqua", CSS_VAL_AQUA},
       {"x-small", CSS_VAL_X_SMALL},
-      {"buttonface", CSS_VAL_BUTTONFACE},
-      {"wait", CSS_VAL_WAIT},
       {"mix", CSS_VAL_MIX},
-      {"slide", CSS_VAL_SLIDE},
-      {"list-item", CSS_VAL_LIST_ITEM},
+      {"pre", CSS_VAL_PRE},
+      {"portrait", CSS_VAL_PORTRAIT},
+      {"serif", CSS_VAL_SERIF},
+      {"auto", CSS_VAL_AUTO},
+      {"infinite", CSS_VAL_INFINITE},
+      {"disc", CSS_VAL_DISC},
       {"above", CSS_VAL_ABOVE},
-      {"unfurl", CSS_VAL_UNFURL},
-      {"always", CSS_VAL_ALWAYS},
-      {"end", CSS_VAL_END},
-      {"table-caption", CSS_VAL_TABLE_CAPTION},
-      {"slow", CSS_VAL_SLOW},
+      {"katakana", CSS_VAL_KATAKANA},
       {"text", CSS_VAL_TEXT},
-      {"menu", CSS_VAL_MENU},
-      {"default", CSS_VAL_DEFAULT},
-      {"run-in", CSS_VAL_RUN_IN},
-      {"visible", CSS_VAL_VISIBLE},
-      {"intrinsic", CSS_VAL_INTRINSIC},
+      {"smaller", CSS_VAL_SMALLER},
+      {"solid", CSS_VAL_SOLID},
       {"table-cell", CSS_VAL_TABLE_CELL},
-      {"ahead", CSS_VAL_AHEAD},
-      {"black", CSS_VAL_BLACK},
-      {"multiple", CSS_VAL_MULTIPLE},
+      {"table-caption", CSS_VAL_TABLE_CAPTION},
       {"capitalize", CSS_VAL_CAPITALIZE},
-      {"circle", CSS_VAL_CIRCLE},
-      {"landscape", CSS_VAL_LANDSCAPE},
-      {"normal", CSS_VAL_NORMAL},
-      {"hide", CSS_VAL_HIDE},
-      {"pre", CSS_VAL_PRE},
-      {"inside", CSS_VAL_INSIDE},
-      {"serif", CSS_VAL_SERIF},
-      {"show", CSS_VAL_SHOW},
-      {"block", CSS_VAL_BLOCK},
+      {"visible", CSS_VAL_VISIBLE},
+      {"single", CSS_VAL_SINGLE},
+      {"sub", CSS_VAL_SUB},
       {"move", CSS_VAL_MOVE},
-      {"outside", CSS_VAL_OUTSIDE},
-      {"square", CSS_VAL_SQUARE},
-      {"level", CSS_VAL_LEVEL},
-      {"baseline", CSS_VAL_BASELINE},
-      {"double", CSS_VAL_DOUBLE},
-      {"maroon", CSS_VAL_MAROON},
-      {"monospace", CSS_VAL_MONOSPACE},
-      {"activecaption", CSS_VAL_ACTIVECAPTION},
+      {"up", CSS_VAL_UP},
+      {"bold", CSS_VAL_BOLD},
       {"thick", CSS_VAL_THICK},
-      {"text-top", CSS_VAL_TEXT_TOP},
-      {"stretch", CSS_VAL_STRETCH},
-      {"blink", CSS_VAL_BLINK},
-      {"table-column", CSS_VAL_TABLE_COLUMN},
-      {"decimal", CSS_VAL_DECIMAL},
-      {"super", CSS_VAL_SUPER},
-      {"close-quote", CSS_VAL_CLOSE_QUOTE},
-      {"infotext", CSS_VAL_INFOTEXT},
       {"sans-serif", CSS_VAL_SANS_SERIF},
-      {"purple", CSS_VAL_PURPLE},
-      {"smaller", CSS_VAL_SMALLER},
-      {"dotted", CSS_VAL_DOTTED},
-      {"captiontext", CSS_VAL_CAPTIONTEXT},
-      {"scrollbar", CSS_VAL_SCROLLBAR},
-      {"inactivecaption", CSS_VAL_INACTIVECAPTION},
-      {"inline-table", CSS_VAL_INLINE_TABLE},
       {"vertical", CSS_VAL_VERTICAL},
-      {"pointer", CSS_VAL_POINTER},
+      {"monospace", CSS_VAL_MONOSPACE},
       {"silver", CSS_VAL_SILVER},
-      {"single", CSS_VAL_SINGLE},
-      {"portrait", CSS_VAL_PORTRAIT},
-      {"gray", CSS_VAL_GRAY},
-      {"red", CSS_VAL_RED},
-      {"buttontext", CSS_VAL_BUTTONTEXT},
-      {"inherit", CSS_VAL_INHERIT},
-      {"inline-axis", CSS_VAL_INLINE_AXIS},
-      {"xx-small", CSS_VAL_XX_SMALL},
-      {"open-quote", CSS_VAL_OPEN_QUOTE},
-      {"down", CSS_VAL_DOWN},
-      {"dashed", CSS_VAL_DASHED},
-      {"yellow", CSS_VAL_YELLOW},
-      {"invert", CSS_VAL_INVERT},
-      {"fixed", CSS_VAL_FIXED},
-      {"overlay", CSS_VAL_OVERLAY},
-      {"below", CSS_VAL_BELOW},
-      {"horizontal", CSS_VAL_HORIZONTAL},
-      {"no-close-quote", CSS_VAL_NO_CLOSE_QUOTE},
-      {"cursive", CSS_VAL_CURSIVE},
-      {"crosshair", CSS_VAL_CROSSHAIR},
+      {"pointer", CSS_VAL_POINTER},
+      {"level", CSS_VAL_LEVEL},
+      {"baseline", CSS_VAL_BASELINE},
+      {"large", CSS_VAL_LARGE},
+      {"help", CSS_VAL_HELP},
       {"min-intrinsic", CSS_VAL_MIN_INTRINSIC},
-      {"white", CSS_VAL_WHITE},
-      {"upper-latin", CSS_VAL_UPPER_LATIN},
-      {"repeat", CSS_VAL_REPEAT},
+      {"justify", CSS_VAL_JUSTIFY},
+      {"overlay", CSS_VAL_OVERLAY},
+      {"invert", CSS_VAL_INVERT},
       {"alternate", CSS_VAL_ALTERNATE},
+      {"activecaption", CSS_VAL_ACTIVECAPTION},
       {"center", CSS_VAL_CENTER},
+      {"armenian", CSS_VAL_ARMENIAN},
+      {"grey", CSS_VAL_GREY},
+      {"yellow", CSS_VAL_YELLOW},
+      {"text-top", CSS_VAL_TEXT_TOP},
+      {"stretch", CSS_VAL_STRETCH},
+      {"avoid", CSS_VAL_AVOID},
+      {"repeat", CSS_VAL_REPEAT},
+      {"below", CSS_VAL_BELOW},
+      {"orange", CSS_VAL_ORANGE},
+      {"inline-table", CSS_VAL_INLINE_TABLE},
       {"separate", CSS_VAL_SEPARATE},
+      {"crosshair", CSS_VAL_CROSSHAIR},
+      {"block-axis", CSS_VAL_BLOCK_AXIS},
+      {"show", CSS_VAL_SHOW},
+      {"infotext", CSS_VAL_INFOTEXT},
+      {"nowrap", CSS_VAL_NOWRAP},
+      {"slide", CSS_VAL_SLIDE},
+      {"outset", CSS_VAL_OUTSET},
+      {"end", CSS_VAL_END},
       {"right", CSS_VAL_RIGHT},
-      {"armenian", CSS_VAL_ARMENIAN},
-      {"hidden", CSS_VAL_HIDDEN},
-      {"bolder", CSS_VAL_BOLDER},
-      {"text-bottom", CSS_VAL_TEXT_BOTTOM},
-      {"middle", CSS_VAL_MIDDLE},
-      {"upper-alpha", CSS_VAL_UPPER_ALPHA},
+      {"inactivecaption", CSS_VAL_INACTIVECAPTION},
+      {"status-bar", CSS_VAL_STATUS_BAR},
+      {"captiontext", CSS_VAL_CAPTIONTEXT},
+      {"inline-axis", CSS_VAL_INLINE_AXIS},
+      {"inline-block", CSS_VAL_INLINE_BLOCK},
+      {"transparent", CSS_VAL_TRANSPARENT},
       {"repeat-y", CSS_VAL_REPEAT_Y},
+      {"horizontal", CSS_VAL_HORIZONTAL},
+      {"blue", CSS_VAL_BLUE},
+      {"xx-small", CSS_VAL_XX_SMALL},
+      {"larger", CSS_VAL_LARGER},
+      {"lower", CSS_VAL_LOWER},
+      {"run-in", CSS_VAL_RUN_IN},
       {"hiragana", CSS_VAL_HIRAGANA},
-      {"medium", CSS_VAL_MEDIUM},
-      {"no-open-quote", CSS_VAL_NO_OPEN_QUOTE},
-      {"nowrap", CSS_VAL_NOWRAP},
-      {"embed", CSS_VAL_EMBED},
-      {"-khtml-auto", CSS_VAL__KHTML_AUTO},
-      {"read-only", CSS_VAL_READ_ONLY},
-      {"element", CSS_VAL_ELEMENT},
-      {"large", CSS_VAL_LARGE},
       {"no-repeat", CSS_VAL_NO_REPEAT},
-      {"uppercase", CSS_VAL_UPPERCASE},
+      {"inherit", CSS_VAL_INHERIT},
       {"relative", CSS_VAL_RELATIVE},
-      {"block-axis", CSS_VAL_BLOCK_AXIS},
-      {"grey", CSS_VAL_GREY},
-      {"transparent", CSS_VAL_TRANSPARENT},
-      {"marquee", CSS_VAL_MARQUEE},
-      {"lower", CSS_VAL_LOWER},
+      {"inside", CSS_VAL_INSIDE},
+      {"absolute", CSS_VAL_ABSOLUTE},
+      {"hand", CSS_VAL_HAND},
       {"s-resize", CSS_VAL_S_RESIZE},
-      {"-khtml-left", CSS_VAL__KHTML_LEFT},
-      {"orange", CSS_VAL_ORANGE},
-      {"inline-block", CSS_VAL_INLINE_BLOCK},
-      {"menutext", CSS_VAL_MENUTEXT},
-      {"katakana", CSS_VAL_KATAKANA},
-      {"buttonshadow", CSS_VAL_BUTTONSHADOW},
-      {"overline", CSS_VAL_OVERLINE},
-      {"lighter", CSS_VAL_LIGHTER},
-      {"condensed", CSS_VAL_CONDENSED},
+      {"text-bottom", CSS_VAL_TEXT_BOTTOM},
+      {"oblique", CSS_VAL_OBLIQUE},
+      {"red", CSS_VAL_RED},
+      {"landscape", CSS_VAL_LANDSCAPE},
+      {"element", CSS_VAL_ELEMENT},
+      {"decimal", CSS_VAL_DECIMAL},
+      {"groove", CSS_VAL_GROOVE},
+      {"square", CSS_VAL_SQUARE},
       {"n-resize", CSS_VAL_N_RESIZE},
       {"table-row", CSS_VAL_TABLE_ROW},
-      {"repeat-x", CSS_VAL_REPEAT_X},
+      {"menu", CSS_VAL_MENU},
       {"lower-latin", CSS_VAL_LOWER_LATIN},
-      {"higher", CSS_VAL_HIGHER},
-      {"-khtml-body", CSS_VAL__KHTML_BODY},
-      {"highlight", CSS_VAL_HIGHLIGHT},
-      {"ridge", CSS_VAL_RIDGE},
-      {"-khtml-box", CSS_VAL__KHTML_BOX},
-      {"groove", CSS_VAL_GROOVE},
-      {"underline", CSS_VAL_UNDERLINE},
-      {"lower-alpha", CSS_VAL_LOWER_ALPHA},
+      {"fuchsia", CSS_VAL_FUCHSIA},
       {"green", CSS_VAL_GREEN},
-      {"larger", CSS_VAL_LARGER},
-      {"wider", CSS_VAL_WIDER},
+      {"overline", CSS_VAL_OVERLINE},
+      {"down", CSS_VAL_DOWN},
+      {"white", CSS_VAL_WHITE},
+      {"buttonface", CSS_VAL_BUTTONFACE},
       {"x-large", CSS_VAL_X_LARGE},
-      {"inactivecaptiontext", CSS_VAL_INACTIVECAPTIONTEXT},
-      {"e-resize", CSS_VAL_E_RESIZE},
-      {"window", CSS_VAL_WINDOW},
+      {"bolder", CSS_VAL_BOLDER},
+      {"lighter", CSS_VAL_LIGHTER},
+      {"loud", CSS_VAL_LOUD},
+      {"super", CSS_VAL_SUPER},
+      {"multiple", CSS_VAL_MULTIPLE},
       {"graytext", CSS_VAL_GRAYTEXT},
-      {"se-resize", CSS_VAL_SE_RESIZE},
+      {"georgian", CSS_VAL_GEORGIAN},
+      {"ahead", CSS_VAL_AHEAD},
+      {"read-only", CSS_VAL_READ_ONLY},
+      {"-khtml-left", CSS_VAL__KHTML_LEFT},
+      {"close-quote", CSS_VAL_CLOSE_QUOTE},
+      {"table-column", CSS_VAL_TABLE_COLUMN},
+      {"hide", CSS_VAL_HIDE},
       {"lowercase", CSS_VAL_LOWERCASE},
-      {"expanded", CSS_VAL_EXPANDED},
-      {"upper-roman", CSS_VAL_UPPER_ROMAN},
-      {"-khtml-text", CSS_VAL__KHTML_TEXT},
-      {"ne-resize", CSS_VAL_NE_RESIZE},
-      {"threedface", CSS_VAL_THREEDFACE},
-      {"forwards", CSS_VAL_FORWARDS},
-      {"line-through", CSS_VAL_LINE_THROUGH},
-      {"hebrew", CSS_VAL_HEBREW},
+      {"repeat-x", CSS_VAL_REPEAT_X},
       {"-khtml-link", CSS_VAL__KHTML_LINK},
-      {"hiragana-iroha", CSS_VAL_HIRAGANA_IROHA},
-      {"buttonhighlight", CSS_VAL_BUTTONHIGHLIGHT},
-      {"ultra-condensed", CSS_VAL_ULTRA_CONDENSED},
+      {"e-resize", CSS_VAL_E_RESIZE},
+      {"se-resize", CSS_VAL_SE_RESIZE},
+      {"purple", CSS_VAL_PURPLE},
+      {"katakana-iroha", CSS_VAL_KATAKANA_IROHA},
+      {"cursive", CSS_VAL_CURSIVE},
+      {"ne-resize", CSS_VAL_NE_RESIZE},
+      {"fixed", CSS_VAL_FIXED},
+      {"no-close-quote", CSS_VAL_NO_CLOSE_QUOTE},
+      {"ridge", CSS_VAL_RIDGE},
+      {"embed", CSS_VAL_EMBED},
+      {"-khtml-box", CSS_VAL__KHTML_BOX},
+      {"open-quote", CSS_VAL_OPEN_QUOTE},
+      {"upper-latin", CSS_VAL_UPPER_LATIN},
+      {"narrower", CSS_VAL_NARROWER},
+      {"buttontext", CSS_VAL_BUTTONTEXT},
       {"reverse", CSS_VAL_REVERSE},
-      {"message-box", CSS_VAL_MESSAGE_BOX},
+      {"dotted", CSS_VAL_DOTTED},
       {"w-resize", CSS_VAL_W_RESIZE},
-      {"georgian", CSS_VAL_GEORGIAN},
+      {"lower-roman", CSS_VAL_LOWER_ROMAN},
       {"sw-resize", CSS_VAL_SW_RESIZE},
-      {"xx-large", CSS_VAL_XX_LARGE},
+      {"lower-alpha", CSS_VAL_LOWER_ALPHA},
+      {"-khtml-auto", CSS_VAL__KHTML_AUTO},
+      {"marquee", CSS_VAL_MARQUEE},
+      {"default", CSS_VAL_DEFAULT},
+      {"outside", CSS_VAL_OUTSIDE},
+      {"unfurl", CSS_VAL_UNFURL},
+      {"-khtml-text", CSS_VAL__KHTML_TEXT},
       {"nw-resize", CSS_VAL_NW_RESIZE},
+      {"no-open-quote", CSS_VAL_NO_OPEN_QUOTE},
+      {"wider", CSS_VAL_WIDER},
+      {"xx-large", CSS_VAL_XX_LARGE},
+      {"higher", CSS_VAL_HIGHER},
+      {"double", CSS_VAL_DOUBLE},
+      {"forwards", CSS_VAL_FORWARDS},
+      {"inactivecaptiontext", CSS_VAL_INACTIVECAPTIONTEXT},
+      {"message-box", CSS_VAL_MESSAGE_BOX},
+      {"uppercase", CSS_VAL_UPPERCASE},
+      {"middle", CSS_VAL_MIDDLE},
       {"backwards", CSS_VAL_BACKWARDS},
-      {"semi-condensed", CSS_VAL_SEMI_CONDENSED},
-      {"table-column-group", CSS_VAL_TABLE_COLUMN_GROUP},
-      {"katakana-iroha", CSS_VAL_KATAKANA_IROHA},
-      {"activeborder", CSS_VAL_ACTIVEBORDER},
+      {"window", CSS_VAL_WINDOW},
+      {"-khtml-body", CSS_VAL__KHTML_BODY},
+      {"hiragana-iroha", CSS_VAL_HIRAGANA_IROHA},
+      {"appworkspace", CSS_VAL_APPWORKSPACE},
+      {"hebrew", CSS_VAL_HEBREW},
       {"-khtml-center", CSS_VAL__KHTML_CENTER},
-      {"lower-roman", CSS_VAL_LOWER_ROMAN},
-      {"-khtml-inline-box", CSS_VAL__KHTML_INLINE_BOX},
+      {"menutext", CSS_VAL_MENUTEXT},
+      {"-khtml-nowrap", CSS_VAL__KHTML_NOWRAP},
       {"-khtml-right", CSS_VAL__KHTML_RIGHT},
-      {"background", CSS_VAL_BACKGROUND},
-      {"ultra-expanded", CSS_VAL_ULTRA_EXPANDED},
+      {"dashed", CSS_VAL_DASHED},
+      {"highlight", CSS_VAL_HIGHLIGHT},
+      {"upper-roman", CSS_VAL_UPPER_ROMAN},
+      {"-khtml-activelink", CSS_VAL__KHTML_ACTIVELINK},
+      {"medium", CSS_VAL_MEDIUM},
+      {"upper-alpha", CSS_VAL_UPPER_ALPHA},
+      {"condensed", CSS_VAL_CONDENSED},
+      {"hidden", CSS_VAL_HIDDEN},
+      {"-khtml-inline-box", CSS_VAL__KHTML_INLINE_BOX},
+      {"activeborder", CSS_VAL_ACTIVEBORDER},
       {"inactiveborder", CSS_VAL_INACTIVEBORDER},
-      {"narrower", CSS_VAL_NARROWER},
-      {"highlighttext", CSS_VAL_HIGHLIGHTTEXT},
-      {"appworkspace", CSS_VAL_APPWORKSPACE},
-      {"-khtml-nowrap", CSS_VAL__KHTML_NOWRAP},
-      {"semi-expanded", CSS_VAL_SEMI_EXPANDED},
-      {"windowtext", CSS_VAL_WINDOWTEXT},
       {"read-write", CSS_VAL_READ_WRITE},
-      {"infobackground", CSS_VAL_INFOBACKGROUND},
-      {"-khtml-activelink", CSS_VAL__KHTML_ACTIVELINK},
+      {"threedface", CSS_VAL_THREEDFACE},
+      {"underline", CSS_VAL_UNDERLINE},
+      {"background", CSS_VAL_BACKGROUND},
+      {"buttonshadow", CSS_VAL_BUTTONSHADOW},
+      {"expanded", CSS_VAL_EXPANDED},
+      {"line-through", CSS_VAL_LINE_THROUGH},
+      {"cjk-ideographic", CSS_VAL_CJK_IDEOGRAPHIC},
+      {"windowtext", CSS_VAL_WINDOWTEXT},
       {"table-footer-group", CSS_VAL_TABLE_FOOTER_GROUP},
+      {"lower-greek", CSS_VAL_LOWER_GREEK},
+      {"table-row-group", CSS_VAL_TABLE_ROW_GROUP},
+      {"windowframe", CSS_VAL_WINDOWFRAME},
+      {"infobackground", CSS_VAL_INFOBACKGROUND},
+      {"semi-condensed", CSS_VAL_SEMI_CONDENSED},
+      {"highlighttext", CSS_VAL_HIGHLIGHTTEXT},
+      {"table-column-group", CSS_VAL_TABLE_COLUMN_GROUP},
       {"bidi-override", CSS_VAL_BIDI_OVERRIDE},
-      {"threedshadow", CSS_VAL_THREEDSHADOW},
+      {"buttonhighlight", CSS_VAL_BUTTONHIGHLIGHT},
+      {"ultra-condensed", CSS_VAL_ULTRA_CONDENSED},
       {"extra-condensed", CSS_VAL_EXTRA_CONDENSED},
-      {"cjk-ideographic", CSS_VAL_CJK_IDEOGRAPHIC},
-      {"windowframe", CSS_VAL_WINDOWFRAME},
-      {"table-row-group", CSS_VAL_TABLE_ROW_GROUP},
+      {"semi-expanded", CSS_VAL_SEMI_EXPANDED},
+      {"-khtml-xxx-large", CSS_VAL__KHTML_XXX_LARGE},
+      {"decimal-leading-zero", CSS_VAL_DECIMAL_LEADING_ZERO},
+      {"ultra-expanded", CSS_VAL_ULTRA_EXPANDED},
       {"extra-expanded", CSS_VAL_EXTRA_EXPANDED},
-      {"threedhighlight", CSS_VAL_THREEDHIGHLIGHT},
-      {"table-header-group", CSS_VAL_TABLE_HEADER_GROUP},
+      {"threedshadow", CSS_VAL_THREEDSHADOW},
       {"-khtml-baseline-middle", CSS_VAL__KHTML_BASELINE_MIDDLE},
-      {"decimal-leading-zero", CSS_VAL_DECIMAL_LEADING_ZERO},
+      {"table-header-group", CSS_VAL_TABLE_HEADER_GROUP},
+      {"threedhighlight", CSS_VAL_THREEDHIGHLIGHT},
       {"threedlightshadow", CSS_VAL_THREEDLIGHTSHADOW},
-      {"-khtml-xxx-large", CSS_VAL__KHTML_XXX_LARGE},
-      {"lower-greek", CSS_VAL_LOWER_GREEK},
       {"threeddarkshadow", CSS_VAL_THREEDDARKSHADOW}
     };
 
@@ -385,250 +387,294 @@ findValue (register const char *str, register unsigned int len)
     {
          0,   -1,   -1,   -1,   -1,    1,   -1,   -1,
         -1,   -1,    2,   -1,   -1,   -1,   -1,    3,
-        -1,   -1,   -1,   -1,    4,   -1,   -1,    5,
-        -1,    6,   -1,   -1,   -1,   -1,    7,   -1,
-        -1,   -1,   -1,    8,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,    4,   -1,   -1,   -1,
+        -1,    5,   -1,   -1,   -1,   -1,    6,   -1,
+        -1,   -1,   -1,    7,   -1,   -1,   -1,   -1,
+         8,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
          9,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        10,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   11,   -1,   12,   -1,   -1,   -1,   -1,
+        -1,   10,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   11,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   12,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   13,   -1,   -1,   -1,   -1,   14,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   15,   -1,   -1,   -1,   -1,   -1,   -1,
+        16,   -1,   -1,   -1,   -1, -429, -245,   -2,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   19,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   13,
+        -1,   -1,   -1,   -1,   -1,   -1,   20,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   14,   -1,   -1,   15,   -1,
-        -1,   -1,   -1,   16,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   17,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   18,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   21,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   22,   -1,   -1,
+        -1,   23,   -1,   -1,   -1,   -1,   -1,   24,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        19,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   20,   -1,   21,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   22,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   23,   -1,   -1,   -1,
-        -1,   -1,   -1,   24,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   25,   -1,   -1,
-        -1,   26,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   27,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   28,   -1,   -1,
-        29,   -1,   -1,   30,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   31,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   32,   -1,   -1,   -1,   -1,
-        -1,   -1, -552, -227,   -2,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   35,   -1,   -1,   -1,
-        -1,   -1,   36,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   37,
-        -1,   -1,   -1,   38,   -1,   39,   40,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   41,   -1,   -1,
-        -1,   -1,   -1,   -1,   42,   -1,   43,   -1,
-        -1,   44,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   45,   -1,   46,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   47,   -1,   -1,
+        -1,   -1,   -1,   25,   -1,   -1,   26,   27,
+        -1,   -1,   -1,   -1,   28,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   29,   -1,   -1,   -1,
+        -1,   -1,   30,   -1,   31,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   48,   49,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   50,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   51,   -1,   -1,
-        52,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   32,   33,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   53,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   54,   -1,   -1,   -1,   -1,
-        55,   56,   -1,   -1,   -1,   57,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   58,
-        -1,   -1,   -1,   -1,   59,   60,   61,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   62,   -1,
-        -1,   63,   -1,   -1,   -1,   64,   65,   -1,
-        66,   -1,   67,   68,   -1,   -1,   69,   70,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   71,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   34,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        35,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        36,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   37,   -1,   -1,   38,   -1,   -1,   39,
+        40,   -1,   -1,   41,   -1,   42,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   43,   -1,   44,
+        -1,   -1,   -1,   -1,   45,   -1,   -1,   46,
+        -1,   -1,   47,   -1,   -1,   48,   -1,   49,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        50,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   51,   52,   -1,   -1,   53,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   54,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        55,   56,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   57,   -1,   -1,   -1,   58,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   59,
+        -1,   -1,   -1,   -1,   -1,   -1,   60,   -1,
+        -1,   61,   -1,   62,   -1,   -1,   63,   64,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   65,
+        -1,   -1,   66,   -1,   -1,   -1,   -1,   67,
+        -1,   -1,   -1,   -1,   68,   -1,   -1,   69,
+        -1,   -1,   70,   -1,   -1,   -1,   71,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   72,   -1,
-        -1,   -1,   73,   74,   75,   -1,   76,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   77,   -1,
-        -1,   -1,   -1,   78,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   79,   -1,   80,
-        -1,   -1,   81,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   82,   83,   -1,   -1,
-        84,   -1,   -1,   -1,   -1,   -1,   85,   -1,
-        86,   -1,   -1,   87,   -1,   88,   -1,   -1,
+        -1,   -1,   73,   -1,   -1,   74,   -1,   -1,
+        -1,   -1,   -1,   75,   -1,   -1,   -1,   -1,
+        -1,   76,   77,   -1,   78,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        79,   -1,   -1,   -1,   -1,   -1,   80,   81,
+        -1,   -1,   -1,   -1,   -1,   82,   -1,   -1,
+        -1,   -1,   83,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   84,   -1,   -1,   -1,
+        -1,   85,   -1,   86,   -1,   -1,   -1,   -1,
+        87,   88,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   89,   90,   -1,   -1,   -1,   -1,
+        -1,   -1,   91,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   92,   -1,
+        93,   94,   -1,   -1,   -1,   -1,   95,   -1,
+        -1,   -1,   -1,   -1,   -1,   96,   -1,   -1,
+        97,   -1,   -1,   98,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   99,   -1,   -1,  100,   -1,   -1,   -1,
+       101,  102,   -1,  103,   -1,   -1,   -1,   -1,
+       104,   -1,  105,  106,  107,  108,   -1,   -1,
+       109,   -1,  110,   -1,  111,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,  112,   -1,  113,   -1,
+        -1,   -1,   -1,  114,   -1,   -1,   -1,   -1,
+        -1,   -1,  115,  116,   -1,   -1,   -1,   -1,
+        -1,  117,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,  118,  119,  120,   -1,   -1,   -1,
+        -1,  121,  122,   -1,  123,   -1,   -1,   -1,
+        -1,   -1,  124,   -1,   -1,   -1,   -1,   -1,
+       125,   -1,   -1,  126,   -1,  127,   -1,   -1,
+        -1,   -1,  128,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,  129,
+        -1,  130,   -1,   -1,  131,   -1,  132,  133,
+        -1,   -1,   -1,  134,   -1,   -1,   -1,   -1,
+       135,   -1,   -1,   -1,   -1,  136,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+       137,   -1,   -1,   -1,  138,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,  139,   -1,   -1,   -1,
+        -1,  140,   -1,   -1,  141,   -1,   -1,  142,
+       143,   -1,   -1,   -1,   -1,  144,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,  145,   -1,  146,
+        -1,   -1,   -1,   -1,  147,   -1,   -1,   -1,
+        -1,  148,   -1,  149,  150,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,  151,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,  152,   -1,
+        -1,   -1,  153,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,  154,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+       155,   -1,   -1,   -1,  156,   -1,   -1,  157,
+        -1,  158,   -1,   -1,  159,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,  160,   -1,
+        -1,   -1,   -1,  161,   -1,  162,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,  163,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,  164,
+       165,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,  166,   -1,   -1,
+       167,  168,   -1,   -1,   -1,   -1,   -1,   -1,
+       169,   -1,   -1,   -1,   -1,  170,   -1,  171,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,  172,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+       173,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,  174,   -1,   -1,
+       175,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,  176,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,  177,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,  178,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,  179,   -1,   -1,   -1,
+        -1,   -1,  180,   -1,   -1,   -1,   -1,   -1,
+       181,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,  182,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,  183,   -1,   -1,  184,  185,   -1,   -1,
+        -1,  186,   -1,   -1,   -1,   -1,  187,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,  188,   -1,   -1,   -1,  189,   -1,
+        -1,   -1,   -1,   -1,  190,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,  191,   -1,   -1,  192,   -1,  193,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,  194,   -1,   -1,  195,   -1,  196,
+        -1,   -1,   -1,   -1,   -1,  197,   -1,   -1,
+        -1,  198,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,  199,  200,  201,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,  202,  203,   -1,   -1,   -1,   -1,
+        -1,   -1,  204,   -1,  205,   -1,  206,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,  207,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   89,   90,
-        -1,   91,   -1,   -1,   92,   -1,   -1,   -1,
-        93,   -1,   -1,   94,   -1,   -1,   -1,   -1,
-        95,   96,   97,   98,   99,  100,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,  101,   -1,  102,
-        -1,   -1,   -1,   -1,  103,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,  104,   -1,   -1,  105,
-        -1,   -1,   -1,  106,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,  107,   -1,   -1,
-       108,   -1,   -1,   -1,   -1,   -1,   -1,  109,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,  208,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,  209,
+        -1,  210,   -1,   -1,   -1,   -1,   -1,  211,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,  110,   -1,
-        -1,   -1,  111,   -1,   -1,   -1,   -1,   -1,
-        -1,  112,   -1,  113,   -1,  114,  115,  116,
-        -1,   -1,  117,   -1,  118,   -1,   -1,   -1,
-        -1,  119,   -1,  120,   -1,   -1,  121,   -1,
-        -1,   -1,   -1,   -1,   -1,  122,  123,   -1,
-        -1,   -1,   -1,  124,   -1,   -1,   -1,  125,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,  126,
-        -1,   -1,  127,   -1,  128,   -1,   -1,  129,
-       130,   -1,   -1,  131,   -1,   -1,  132,   -1,
-        -1,   -1,  133,  134,   -1,   -1,   -1,   -1,
-       135,   -1,  136,   -1,   -1,  137,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,  138,   -1,  139,
-        -1,   -1,   -1,   -1,  140,   -1,  141,  142,
-        -1,  143,   -1,  144,   -1,   -1,  145,   -1,
-        -1,   -1,   -1,  146,   -1,   -1,   -1,   -1,
-        -1,   -1,  147,   -1,   -1,   -1,   -1,   -1,
+       212,   -1,   -1,  213,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,  148,   -1,   -1,   -1,   -1,   -1,   -1,
-       149,   -1,  150,   -1,   -1,   -1,   -1,   -1,
-        -1,  151,   -1,   -1,   -1,   -1,   -1,  152,
-        -1,  153,   -1,   -1,   -1,  154,   -1,   -1,
+        -1,   -1,   -1,   -1,  214,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,  215,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,  155,  156,   -1,  157,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,  158,  159,  160,   -1,   -1,
-        -1,   -1,   -1,  161,   -1,   -1,   -1,  162,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,  163,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,  164,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,  165,   -1,   -1,   -1,
-       166,  167,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,  168,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,  216,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,  217,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,  169,   -1,  170,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,  218,   -1,
+        -1,   -1,   -1,   -1,   -1,  219,   -1,   -1,
+        -1,   -1,  220,  221,   -1,   -1,  222,   -1,
+       223,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,  224,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-       171,   -1,   -1,   -1,   -1,  172,   -1,   -1,
-       173,   -1,  174,  175,   -1,  176,   -1,  177,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,  178,   -1,   -1,
-        -1,  179,   -1,  180,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,  181,   -1,   -1,
-        -1,   -1,  182,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,  225,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,  183,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,  184,   -1,
+        -1,   -1,   -1,   -1,   -1,  226,   -1,   -1,
+        -1,   -1,   -1,   -1,  227,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,  228,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,  185,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,  186,   -1,   -1,   -1,  187,  188,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,  189,
-        -1,   -1,   -1,   -1,  190,   -1,  191,   -1,
-        -1,  192,   -1,  193,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,  194,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,  195,  196,   -1,  197,   -1,
-        -1,   -1,   -1,   -1,   -1,  198,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,  199,  200,   -1,   -1,
-        -1,   -1,   -1,   -1,  201,   -1,  202,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,  203,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,  204,   -1,   -1,  205,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,  206,   -1,  207,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,  208,
+       229,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+       230,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,  209,   -1,   -1,   -1,   -1,
+        -1,   -1,  231,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,  232,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,  210,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-       211,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,  212,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,  213,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,  214,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,  233,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,  215,
-        -1,   -1,  216,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,  217,   -1,   -1,   -1,  218,   -1,
-        -1,   -1,   -1,  219,   -1,   -1,   -1,   -1,
-       220,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,  221,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,  222,   -1,  223,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,  224,
-        -1,   -1,   -1,  225,  226,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,  227,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,  234,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,  235,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,  236,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,  237,   -1,   -1,   -1,
+        -1,   -1,   -1,  238,   -1,   -1,   -1,   -1,
+        -1,  239,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,  240,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-       228,   -1,   -1,   -1,   -1,   -1,   -1,  229,
-       230,   -1,   -1,   -1,  231,   -1,   -1,   -1,
+       241,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,  242,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,  243,   -1,  244,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,  232,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,  233,   -1,  234,   -1,
-        -1,   -1,   -1,  235,   -1,   -1,  236,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,  237,  238,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,  245,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,  239,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,  240,   -1,  241,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+       246,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,  242,  243,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,  244,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,  247,   -1,
+        -1,   -1,   -1,   -1,   -1,  248,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,  245,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,  246,
-        -1,   -1,   -1,   -1,   -1,  247,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,  249,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,  248,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,  249,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
        250,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,  251,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+       252,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
@@ -641,7 +687,6 @@ findValue (register const char *str, register unsigned int len)
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,  251,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
@@ -654,16 +699,17 @@ findValue (register const char *str, register unsigned int len)
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,  253,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,  254,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,  252,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,  253,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,  255,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-       254,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,  256,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
@@ -676,15 +722,15 @@ findValue (register const char *str, register unsigned int len)
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,  255,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,  256,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,  257,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,  258,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
@@ -698,8 +744,46 @@ findValue (register const char *str, register unsigned int len)
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,  257,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,  259,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,  260,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
@@ -711,7 +795,6 @@ findValue (register const char *str, register unsigned int len)
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,  258,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
@@ -736,7 +819,7 @@ findValue (register const char *str, register unsigned int len)
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,  259
+        -1,  261
     };
 
   if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
@@ -1035,6 +1118,8 @@ static const char * const valueList[] = {
 "element", 
 "intrinsic", 
 "min-intrinsic", 
+"clip", 
+"ellipsis", 
     0
 };
 DOMString getValueName(unsigned short id)
diff --git a/WebCore/khtml/css/cssvalues.h b/WebCore/khtml/css/cssvalues.h
index 1dd849f..8480ade 100644
--- a/WebCore/khtml/css/cssvalues.h
+++ b/WebCore/khtml/css/cssvalues.h
@@ -269,7 +269,9 @@ DOM::DOMString getValueName(unsigned short id);
 #define CSS_VAL_ELEMENT 258
 #define CSS_VAL_INTRINSIC 259
 #define CSS_VAL_MIN_INTRINSIC 260
+#define CSS_VAL_CLIP 261
+#define CSS_VAL_ELLIPSIS 262
 
-#define CSS_VAL_TOTAL 261
+#define CSS_VAL_TOTAL 263
 #endif
 
diff --git a/WebCore/khtml/css/cssvalues.in b/WebCore/khtml/css/cssvalues.in
index e53b96c..3781e84 100644
--- a/WebCore/khtml/css/cssvalues.in
+++ b/WebCore/khtml/css/cssvalues.in
@@ -387,3 +387,9 @@ element
 #
 intrinsic
 min-intrinsic
+
+#
+# CSS_PROP_TEXT_OVERFLOW
+#
+clip
+ellipsis
diff --git a/WebCore/khtml/rendering/render_style.cpp b/WebCore/khtml/rendering/render_style.cpp
index 476bfc7..908df81 100644
--- a/WebCore/khtml/rendering/render_style.cpp
+++ b/WebCore/khtml/rendering/render_style.cpp
@@ -184,7 +184,8 @@ lineClamp(RenderStyle::initialLineClamp()),
 #endif
 opacity(RenderStyle::initialOpacity()),
 userDrag(RenderStyle::initialUserDrag()),
-userSelect(RenderStyle::initialUserSelect())
+userSelect(RenderStyle::initialUserSelect()),
+textOverflow(RenderStyle::initialTextOverflow())
 #ifndef KHTML_NO_XBL
 , bindingURI(0)
 #endif
@@ -197,7 +198,7 @@ StyleCSS3NonInheritedData::StyleCSS3NonInheritedData(const StyleCSS3NonInherited
 lineClamp(o.lineClamp),
 #endif
 opacity(o.opacity), flexibleBox(o.flexibleBox), marquee(o.marquee),
-userDrag(o.userDrag), userSelect(o.userSelect)
+userDrag(o.userDrag), userSelect(o.userSelect), textOverflow(o.textOverflow)
 {
 #ifndef KHTML_NO_XBL
     bindingURI = o.bindingURI ? o.bindingURI->copy() : 0;
@@ -226,7 +227,7 @@ bool StyleCSS3NonInheritedData::bindingsEquivalent(const StyleCSS3NonInheritedDa
 bool StyleCSS3NonInheritedData::operator==(const StyleCSS3NonInheritedData& o) const
 {
     return opacity == o.opacity && flexibleBox == o.flexibleBox && marquee == o.marquee &&
-           userDrag == o.userDrag && userSelect == o.userSelect
+           userDrag == o.userDrag && userSelect == o.userSelect && textOverflow == o.textOverflow
 #ifndef KHTML_NO_XBL
            && bindingsEquivalent(o)
 #endif
@@ -548,7 +549,8 @@ RenderStyle::Diff RenderStyle::diff( const RenderStyle *other ) const
         !(noninherited_flags._originalDisplay == other->noninherited_flags._originalDisplay) ||
          visual->colspan != other->visual->colspan ||
          visual->counter_increment != other->visual->counter_increment ||
-         visual->counter_reset != other->visual->counter_reset)
+         visual->counter_reset != other->visual->counter_reset ||
+         css3NonInheritedData->textOverflow != other->css3NonInheritedData->textOverflow)
         return CbLayout;
    
     // changes causing Layout changes:
diff --git a/WebCore/khtml/rendering/render_style.h b/WebCore/khtml/rendering/render_style.h
index a870421..6fdf263 100644
--- a/WebCore/khtml/rendering/render_style.h
+++ b/WebCore/khtml/rendering/render_style.h
@@ -558,6 +558,7 @@ public:
     DataRef<StyleMarqueeData> marquee; // Marquee properties
     EUserDrag userDrag : 2; // Whether or not a drag can be initiated by this element.
     bool userSelect : 1;  // Whether or not the element is selectable.
+    bool textOverflow : 1; // Whether or not lines that spill out should be truncated with "..."
 
 #ifndef KHTML_NO_XBL
     BindingURI* bindingURI; // The XBL binding URI list.
@@ -1092,6 +1093,7 @@ public:
     EUserModify userModify() const { return css3InheritedData->userModify; }
     EUserDrag userDrag() const { return css3NonInheritedData->userDrag; }
     bool userSelect() const { return css3NonInheritedData->userSelect; }
+    bool textOverflow() const { return css3NonInheritedData->textOverflow; }
     // End CSS3 Getters
 
 #if APPLE_CHANGES
@@ -1270,6 +1272,7 @@ public:
     void setUserModify(EUserModify u) { SET_VAR(css3InheritedData, userModify, u); }
     void setUserDrag(EUserDrag d) { SET_VAR(css3NonInheritedData, userDrag, d); }
     void setUserSelect(bool b) { SET_VAR(css3NonInheritedData, userSelect, b); }
+    void setTextOverflow(bool b) { SET_VAR(css3NonInheritedData, textOverflow, b); }
     // End CSS3 Setters
    
 #if APPLE_CHANGES
@@ -1375,6 +1378,7 @@ public:
     static EUserModify initialUserModify() { return READ_ONLY; }
     static EUserDrag initialUserDrag() { return DRAG_AUTO; }
     static bool initialUserSelect() { return true; }
+    static bool initialTextOverflow() { return false; }
 
 #if APPLE_CHANGES
     // Keep these at the end.

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list