WebCore/generated/CSSPropertyNames.cpp
changeset 0 4f2f89ce4247
child 2 303757a437d3
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/WebCore/generated/CSSPropertyNames.cpp	Fri Sep 17 09:02:29 2010 +0300
@@ -0,0 +1,1454 @@
+/* ANSI-C code produced by gperf version 3.0.1 */
+/* Command-line: gperf --key-positions='*' -D -n -s 2 CSSPropertyNames.gperf  */
+
+#if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \
+      && ('%' == 37) && ('&' == 38) && ('\'' == 39) && ('(' == 40) \
+      && (')' == 41) && ('*' == 42) && ('+' == 43) && (',' == 44) \
+      && ('-' == 45) && ('.' == 46) && ('/' == 47) && ('0' == 48) \
+      && ('1' == 49) && ('2' == 50) && ('3' == 51) && ('4' == 52) \
+      && ('5' == 53) && ('6' == 54) && ('7' == 55) && ('8' == 56) \
+      && ('9' == 57) && (':' == 58) && (';' == 59) && ('<' == 60) \
+      && ('=' == 61) && ('>' == 62) && ('?' == 63) && ('A' == 65) \
+      && ('B' == 66) && ('C' == 67) && ('D' == 68) && ('E' == 69) \
+      && ('F' == 70) && ('G' == 71) && ('H' == 72) && ('I' == 73) \
+      && ('J' == 74) && ('K' == 75) && ('L' == 76) && ('M' == 77) \
+      && ('N' == 78) && ('O' == 79) && ('P' == 80) && ('Q' == 81) \
+      && ('R' == 82) && ('S' == 83) && ('T' == 84) && ('U' == 85) \
+      && ('V' == 86) && ('W' == 87) && ('X' == 88) && ('Y' == 89) \
+      && ('Z' == 90) && ('[' == 91) && ('\\' == 92) && (']' == 93) \
+      && ('^' == 94) && ('_' == 95) && ('a' == 97) && ('b' == 98) \
+      && ('c' == 99) && ('d' == 100) && ('e' == 101) && ('f' == 102) \
+      && ('g' == 103) && ('h' == 104) && ('i' == 105) && ('j' == 106) \
+      && ('k' == 107) && ('l' == 108) && ('m' == 109) && ('n' == 110) \
+      && ('o' == 111) && ('p' == 112) && ('q' == 113) && ('r' == 114) \
+      && ('s' == 115) && ('t' == 116) && ('u' == 117) && ('v' == 118) \
+      && ('w' == 119) && ('x' == 120) && ('y' == 121) && ('z' == 122) \
+      && ('{' == 123) && ('|' == 124) && ('}' == 125) && ('~' == 126))
+/* The character set is not based on ISO-646.  */
+#error "gperf generated tables don't work with this execution character set. Please report a bug to <bug-gnu-gperf@gnu.org>."
+#endif
+
+#line 1 "CSSPropertyNames.gperf"
+
+/* This file is automatically generated from CSSPropertyNames.in by makeprop, do not edit */
+#include "CSSPropertyNames.h"
+#line 6 "CSSPropertyNames.gperf"
+struct Property {
+    const char* name;
+    int id;
+};
+#include <string.h>
+enum
+  {
+    TOTAL_KEYWORDS = 297,
+    MIN_WORD_LENGTH = 3,
+    MAX_WORD_LENGTH = 43,
+    MIN_HASH_VALUE = 0,
+    MAX_HASH_VALUE = 2890
+  };
+
+/* maximum key range = 2891, duplicates = 0 */
+
+#ifdef __GNUC__
+__inline
+#else
+#ifdef __cplusplus
+inline
+#endif
+#endif
+static unsigned int
+propery_hash_function (register const char *str, register unsigned int len)
+{
+  static const unsigned short asso_values[] =
+    {
+      2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891,
+      2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891,
+      2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891,
+      2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891,
+      2891, 2891, 2891, 2891, 2891,    5, 2891, 2891, 2891, 2891,
+      2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891,
+      2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891,
+      2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891,
+      2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891,
+      2891, 2891, 2891, 2891, 2891, 2891, 2891,   35,    0,  175,
+         0,    5, 1005,  530,    1,    0,    5,    0,  130,    0,
+        25,    0,  100,   70,    5,   80,    0,  630,   91,   15,
+         6,  646,   45, 2891, 2891, 2891, 2891, 2891, 2891, 2891,
+      2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891,
+      2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891,
+      2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891,
+      2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891,
+      2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891,
+      2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891,
+      2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891,
+      2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891,
+      2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891,
+      2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891,
+      2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891,
+      2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891, 2891,
+      2891, 2891, 2891, 2891, 2891, 2891
+    };
+  register int hval = 0;
+
+  switch (len)
+    {
+      default:
+        hval += asso_values[(unsigned char)str[42]];
+      /*FALLTHROUGH*/
+      case 42:
+        hval += asso_values[(unsigned char)str[41]];
+      /*FALLTHROUGH*/
+      case 41:
+        hval += asso_values[(unsigned char)str[40]];
+      /*FALLTHROUGH*/
+      case 40:
+        hval += asso_values[(unsigned char)str[39]];
+      /*FALLTHROUGH*/
+      case 39:
+        hval += asso_values[(unsigned char)str[38]];
+      /*FALLTHROUGH*/
+      case 38:
+        hval += asso_values[(unsigned char)str[37]];
+      /*FALLTHROUGH*/
+      case 37:
+        hval += asso_values[(unsigned char)str[36]];
+      /*FALLTHROUGH*/
+      case 36:
+        hval += asso_values[(unsigned char)str[35]];
+      /*FALLTHROUGH*/
+      case 35:
+        hval += asso_values[(unsigned char)str[34]];
+      /*FALLTHROUGH*/
+      case 34:
+        hval += asso_values[(unsigned char)str[33]];
+      /*FALLTHROUGH*/
+      case 33:
+        hval += asso_values[(unsigned char)str[32]];
+      /*FALLTHROUGH*/
+      case 32:
+        hval += asso_values[(unsigned char)str[31]];
+      /*FALLTHROUGH*/
+      case 31:
+        hval += asso_values[(unsigned char)str[30]];
+      /*FALLTHROUGH*/
+      case 30:
+        hval += asso_values[(unsigned char)str[29]];
+      /*FALLTHROUGH*/
+      case 29:
+        hval += asso_values[(unsigned char)str[28]];
+      /*FALLTHROUGH*/
+      case 28:
+        hval += asso_values[(unsigned char)str[27]];
+      /*FALLTHROUGH*/
+      case 27:
+        hval += asso_values[(unsigned char)str[26]];
+      /*FALLTHROUGH*/
+      case 26:
+        hval += asso_values[(unsigned char)str[25]];
+      /*FALLTHROUGH*/
+      case 25:
+        hval += asso_values[(unsigned char)str[24]];
+      /*FALLTHROUGH*/
+      case 24:
+        hval += asso_values[(unsigned char)str[23]];
+      /*FALLTHROUGH*/
+      case 23:
+        hval += asso_values[(unsigned char)str[22]];
+      /*FALLTHROUGH*/
+      case 22:
+        hval += asso_values[(unsigned char)str[21]];
+      /*FALLTHROUGH*/
+      case 21:
+        hval += asso_values[(unsigned char)str[20]];
+      /*FALLTHROUGH*/
+      case 20:
+        hval += asso_values[(unsigned char)str[19]];
+      /*FALLTHROUGH*/
+      case 19:
+        hval += asso_values[(unsigned char)str[18]];
+      /*FALLTHROUGH*/
+      case 18:
+        hval += asso_values[(unsigned char)str[17]];
+      /*FALLTHROUGH*/
+      case 17:
+        hval += asso_values[(unsigned char)str[16]];
+      /*FALLTHROUGH*/
+      case 16:
+        hval += asso_values[(unsigned char)str[15]];
+      /*FALLTHROUGH*/
+      case 15:
+        hval += asso_values[(unsigned char)str[14]];
+      /*FALLTHROUGH*/
+      case 14:
+        hval += asso_values[(unsigned char)str[13]];
+      /*FALLTHROUGH*/
+      case 13:
+        hval += asso_values[(unsigned char)str[12]];
+      /*FALLTHROUGH*/
+      case 12:
+        hval += asso_values[(unsigned char)str[11]];
+      /*FALLTHROUGH*/
+      case 11:
+        hval += asso_values[(unsigned char)str[10]];
+      /*FALLTHROUGH*/
+      case 10:
+        hval += asso_values[(unsigned char)str[9]];
+      /*FALLTHROUGH*/
+      case 9:
+        hval += asso_values[(unsigned char)str[8]];
+      /*FALLTHROUGH*/
+      case 8:
+        hval += asso_values[(unsigned char)str[7]];
+      /*FALLTHROUGH*/
+      case 7:
+        hval += asso_values[(unsigned char)str[6]];
+      /*FALLTHROUGH*/
+      case 6:
+        hval += asso_values[(unsigned char)str[5]];
+      /*FALLTHROUGH*/
+      case 5:
+        hval += asso_values[(unsigned char)str[4]];
+      /*FALLTHROUGH*/
+      case 4:
+        hval += asso_values[(unsigned char)str[3]];
+      /*FALLTHROUGH*/
+      case 3:
+        hval += asso_values[(unsigned char)str[2]];
+      /*FALLTHROUGH*/
+      case 2:
+        hval += asso_values[(unsigned char)str[1]];
+      /*FALLTHROUGH*/
+      case 1:
+        hval += asso_values[(unsigned char)str[0]];
+        break;
+    }
+  return hval;
+}
+
+static const struct Property property_wordlist[] =
+  {
+#line 73 "CSSPropertyNames.gperf"
+    {"bottom", CSSPropertyBottom},
+#line 46 "CSSPropertyNames.gperf"
+    {"border", CSSPropertyBorder},
+#line 155 "CSSPropertyNames.gperf"
+    {"width", CSSPropertyWidth},
+#line 47 "CSSPropertyNames.gperf"
+    {"border-bottom", CSSPropertyBorderBottom},
+#line 72 "CSSPropertyNames.gperf"
+    {"border-width", CSSPropertyBorderWidth},
+#line 52 "CSSPropertyNames.gperf"
+    {"border-bottom-width", CSSPropertyBorderBottomWidth},
+#line 31 "CSSPropertyNames.gperf"
+    {"zoom", CSSPropertyZoom},
+#line 99 "CSSPropertyNames.gperf"
+    {"min-width", CSSPropertyMinWidth},
+#line 294 "CSSPropertyNames.gperf"
+    {"marker", CSSPropertyMarker},
+#line 296 "CSSPropertyNames.gperf"
+    {"marker-mid", CSSPropertyMarkerMid},
+#line 97 "CSSPropertyNames.gperf"
+    {"max-width", CSSPropertyMaxWidth},
+#line 156 "CSSPropertyNames.gperf"
+    {"word-break", CSSPropertyWordBreak},
+#line 129 "CSSPropertyNames.gperf"
+    {"text-indent", CSSPropertyTextIndent},
+#line 195 "CSSPropertyNames.gperf"
+    {"-webkit-box-orient", CSSPropertyWebkitBoxOrient},
+#line 176 "CSSPropertyNames.gperf"
+    {"-webkit-border-end", CSSPropertyWebkitBorderEnd},
+#line 295 "CSSPropertyNames.gperf"
+    {"marker-end", CSSPropertyMarkerEnd},
+#line 159 "CSSPropertyNames.gperf"
+    {"z-index", CSSPropertyZIndex},
+#line 299 "CSSPropertyNames.gperf"
+    {"stroke", CSSPropertyStroke},
+#line 148 "CSSPropertyNames.gperf"
+    {"top", CSSPropertyTop},
+#line 179 "CSSPropertyNames.gperf"
+    {"-webkit-border-end-width", CSSPropertyWebkitBorderEndWidth},
+#line 154 "CSSPropertyNames.gperf"
+    {"widows", CSSPropertyWidows},
+#line 306 "CSSPropertyNames.gperf"
+    {"stroke-width", CSSPropertyStrokeWidth},
+#line 278 "CSSPropertyNames.gperf"
+    {"mask", CSSPropertyMask},
+#line 66 "CSSPropertyNames.gperf"
+    {"border-top", CSSPropertyBorderTop},
+#line 124 "CSSPropertyNames.gperf"
+    {"size", CSSPropertySize},
+#line 257 "CSSPropertyNames.gperf"
+    {"-webkit-text-stroke", CSSPropertyWebkitTextStroke},
+#line 122 "CSSPropertyNames.gperf"
+    {"resize", CSSPropertyResize},
+#line 71 "CSSPropertyNames.gperf"
+    {"border-top-width", CSSPropertyBorderTopWidth},
+#line 231 "CSSPropertyNames.gperf"
+    {"-webkit-mask", CSSPropertyWebkitMask},
+#line 141 "CSSPropertyNames.gperf"
+    {"text-shadow", CSSPropertyTextShadow},
+#line 160 "CSSPropertyNames.gperf"
+    {"-webkit-animation", CSSPropertyWebkitAnimation},
+#line 259 "CSSPropertyNames.gperf"
+    {"-webkit-text-stroke-width", CSSPropertyWebkitTextStrokeWidth},
+#line 184 "CSSPropertyNames.gperf"
+    {"-webkit-border-start", CSSPropertyWebkitBorderStart},
+#line 198 "CSSPropertyNames.gperf"
+    {"-webkit-box-shadow", CSSPropertyWebkitBoxShadow},
+#line 297 "CSSPropertyNames.gperf"
+    {"marker-start", CSSPropertyMarkerStart},
+#line 158 "CSSPropertyNames.gperf"
+    {"word-wrap", CSSPropertyWordWrap},
+#line 187 "CSSPropertyNames.gperf"
+    {"-webkit-border-start-width", CSSPropertyWebkitBorderStartWidth},
+#line 266 "CSSPropertyNames.gperf"
+    {"-webkit-transition", CSSPropertyWebkitTransition},
+#line 120 "CSSPropertyNames.gperf"
+    {"position", CSSPropertyPosition},
+#line 21 "CSSPropertyNames.gperf"
+    {"direction", CSSPropertyDirection},
+#line 166 "CSSPropertyNames.gperf"
+    {"-webkit-animation-name", CSSPropertyWebkitAnimationName},
+#line 77 "CSSPropertyNames.gperf"
+    {"content", CSSPropertyContent},
+#line 304 "CSSPropertyNames.gperf"
+    {"stroke-miterlimit", CSSPropertyStrokeMiterlimit},
+#line 218 "CSSPropertyNames.gperf"
+    {"-webkit-line-break", CSSPropertyWebkitLineBreak},
+#line 246 "CSSPropertyNames.gperf"
+    {"-webkit-nbsp-mode", CSSPropertyWebkitNbspMode},
+#line 101 "CSSPropertyNames.gperf"
+    {"orphans", CSSPropertyOrphans},
+#line 190 "CSSPropertyNames.gperf"
+    {"-webkit-box-direction", CSSPropertyWebkitBoxDirection},
+#line 313 "CSSPropertyNames.gperf"
+    {"text-anchor", CSSPropertyTextAnchor},
+#line 125 "CSSPropertyNames.gperf"
+    {"src", CSSPropertySrc},
+#line 128 "CSSPropertyNames.gperf"
+    {"text-decoration", CSSPropertyTextDecoration},
+#line 136 "CSSPropertyNames.gperf"
+    {"text-overline", CSSPropertyTextOverline},
+#line 244 "CSSPropertyNames.gperf"
+    {"-webkit-mask-size", CSSPropertyWebkitMaskSize},
+#line 193 "CSSPropertyNames.gperf"
+    {"-webkit-box-lines", CSSPropertyWebkitBoxLines},
+#line 303 "CSSPropertyNames.gperf"
+    {"stroke-linejoin", CSSPropertyStrokeLinejoin},
+#line 138 "CSSPropertyNames.gperf"
+    {"text-overline-mode", CSSPropertyTextOverlineMode},
+#line 140 "CSSPropertyNames.gperf"
+    {"text-overline-width", CSSPropertyTextOverlineWidth},
+#line 241 "CSSPropertyNames.gperf"
+    {"-webkit-mask-repeat", CSSPropertyWebkitMaskRepeat},
+#line 20 "CSSPropertyNames.gperf"
+    {"color", CSSPropertyColor},
+#line 242 "CSSPropertyNames.gperf"
+    {"-webkit-mask-repeat-x", CSSPropertyWebkitMaskRepeatX},
+#line 54 "CSSPropertyNames.gperf"
+    {"border-color", CSSPropertyBorderColor},
+#line 48 "CSSPropertyNames.gperf"
+    {"border-bottom-color", CSSPropertyBorderBottomColor},
+#line 119 "CSSPropertyNames.gperf"
+    {"pointer-events", CSSPropertyPointerEvents},
+#line 75 "CSSPropertyNames.gperf"
+    {"clear", CSSPropertyClear},
+#line 196 "CSSPropertyNames.gperf"
+    {"-webkit-box-pack", CSSPropertyWebkitBoxPack},
+#line 238 "CSSPropertyNames.gperf"
+    {"-webkit-mask-position", CSSPropertyWebkitMaskPosition},
+#line 162 "CSSPropertyNames.gperf"
+    {"-webkit-animation-direction", CSSPropertyWebkitAnimationDirection},
+#line 239 "CSSPropertyNames.gperf"
+    {"-webkit-mask-position-x", CSSPropertyWebkitMaskPositionX},
+#line 309 "CSSPropertyNames.gperf"
+    {"dominant-baseline", CSSPropertyDominantBaseline},
+#line 177 "CSSPropertyNames.gperf"
+    {"-webkit-border-end-color", CSSPropertyWebkitBorderEndColor},
+#line 76 "CSSPropertyNames.gperf"
+    {"clip", CSSPropertyClip},
+#line 153 "CSSPropertyNames.gperf"
+    {"white-space", CSSPropertyWhiteSpace},
+#line 74 "CSSPropertyNames.gperf"
+    {"caption-side", CSSPropertyCaptionSide},
+#line 232 "CSSPropertyNames.gperf"
+    {"-webkit-mask-attachment", CSSPropertyWebkitMaskAttachment},
+#line 67 "CSSPropertyNames.gperf"
+    {"border-top-color", CSSPropertyBorderTopColor},
+#line 258 "CSSPropertyNames.gperf"
+    {"-webkit-text-stroke-color", CSSPropertyWebkitTextStrokeColor},
+#line 185 "CSSPropertyNames.gperf"
+    {"-webkit-border-start-color", CSSPropertyWebkitBorderStartColor},
+#line 284 "CSSPropertyNames.gperf"
+    {"stop-color", CSSPropertyStopColor},
+#line 235 "CSSPropertyNames.gperf"
+    {"-webkit-mask-composite", CSSPropertyWebkitMaskComposite},
+#line 123 "CSSPropertyNames.gperf"
+    {"right", CSSPropertyRight},
+#line 84 "CSSPropertyNames.gperf"
+    {"height", CSSPropertyHeight},
+#line 276 "CSSPropertyNames.gperf"
+    {"clip-path", CSSPropertyClipPath},
+#line 169 "CSSPropertyNames.gperf"
+    {"-webkit-appearance", CSSPropertyWebkitAppearance},
+#line 234 "CSSPropertyNames.gperf"
+    {"-webkit-mask-clip", CSSPropertyWebkitMaskClip},
+#line 60 "CSSPropertyNames.gperf"
+    {"border-right", CSSPropertyBorderRight},
+#line 302 "CSSPropertyNames.gperf"
+    {"stroke-linecap", CSSPropertyStrokeLinecap},
+#line 98 "CSSPropertyNames.gperf"
+    {"min-height", CSSPropertyMinHeight},
+#line 63 "CSSPropertyNames.gperf"
+    {"border-right-width", CSSPropertyBorderRightWidth},
+#line 96 "CSSPropertyNames.gperf"
+    {"max-height", CSSPropertyMaxHeight},
+#line 315 "CSSPropertyNames.gperf"
+    {"writing-mode", CSSPropertyWritingMode},
+#line 312 "CSSPropertyNames.gperf"
+    {"kerning", CSSPropertyKerning},
+#line 137 "CSSPropertyNames.gperf"
+    {"text-overline-color", CSSPropertyTextOverlineColor},
+#line 91 "CSSPropertyNames.gperf"
+    {"margin", CSSPropertyMargin},
+#line 249 "CSSPropertyNames.gperf"
+    {"-webkit-perspective", CSSPropertyWebkitPerspective},
+#line 92 "CSSPropertyNames.gperf"
+    {"margin-bottom", CSSPropertyMarginBottom},
+#line 175 "CSSPropertyNames.gperf"
+    {"-webkit-binding", CSSPropertyWebkitBinding},
+#line 29 "CSSPropertyNames.gperf"
+    {"text-rendering", CSSPropertyTextRendering},
+#line 182 "CSSPropertyNames.gperf"
+    {"-webkit-border-image", CSSPropertyWebkitBorderImage},
+#line 219 "CSSPropertyNames.gperf"
+    {"-webkit-line-clamp", CSSPropertyWebkitLineClamp},
+#line 286 "CSSPropertyNames.gperf"
+    {"color-interpolation", CSSPropertyColorInterpolation},
+#line 222 "CSSPropertyNames.gperf"
+    {"-webkit-margin-end", CSSPropertyWebkitMarginEnd},
+#line 115 "CSSPropertyNames.gperf"
+    {"page", CSSPropertyPage},
+#line 53 "CSSPropertyNames.gperf"
+    {"border-collapse", CSSPropertyBorderCollapse},
+#line 110 "CSSPropertyNames.gperf"
+    {"padding", CSSPropertyPadding},
+#line 111 "CSSPropertyNames.gperf"
+    {"padding-bottom", CSSPropertyPaddingBottom},
+#line 95 "CSSPropertyNames.gperf"
+    {"margin-top", CSSPropertyMarginTop},
+#line 32 "CSSPropertyNames.gperf"
+    {"line-height", CSSPropertyLineHeight},
+#line 237 "CSSPropertyNames.gperf"
+    {"-webkit-mask-origin", CSSPropertyWebkitMaskOrigin},
+#line 236 "CSSPropertyNames.gperf"
+    {"-webkit-mask-image", CSSPropertyWebkitMaskImage},
+#line 199 "CSSPropertyNames.gperf"
+    {"-webkit-box-sizing", CSSPropertyWebkitBoxSizing},
+#line 233 "CSSPropertyNames.gperf"
+    {"-webkit-mask-box-image", CSSPropertyWebkitMaskBoxImage},
+#line 200 "CSSPropertyNames.gperf"
+    {"-webkit-color-correction", CSSPropertyWebkitColorCorrection},
+#line 127 "CSSPropertyNames.gperf"
+    {"text-align", CSSPropertyTextAlign},
+#line 253 "CSSPropertyNames.gperf"
+    {"-webkit-rtl-ordering", CSSPropertyWebkitRtlOrdering},
+#line 223 "CSSPropertyNames.gperf"
+    {"-webkit-margin-start", CSSPropertyWebkitMarginStart},
+#line 247 "CSSPropertyNames.gperf"
+    {"-webkit-padding-end", CSSPropertyWebkitPaddingEnd},
+#line 275 "CSSPropertyNames.gperf"
+    {"-webkit-dashboard-region", CSSPropertyWebkitDashboardRegion},
+#line 189 "CSSPropertyNames.gperf"
+    {"-webkit-box-align", CSSPropertyWebkitBoxAlign},
+#line 59 "CSSPropertyNames.gperf"
+    {"border-radius", CSSPropertyBorderRadius},
+#line 225 "CSSPropertyNames.gperf"
+    {"-webkit-marquee", CSSPropertyWebkitMarquee},
+#line 121 "CSSPropertyNames.gperf"
+    {"quotes", CSSPropertyQuotes},
+#line 102 "CSSPropertyNames.gperf"
+    {"outline", CSSPropertyOutline},
+#line 114 "CSSPropertyNames.gperf"
+    {"padding-top", CSSPropertyPaddingTop},
+#line 183 "CSSPropertyNames.gperf"
+    {"-webkit-border-radius", CSSPropertyWebkitBorderRadius},
+#line 106 "CSSPropertyNames.gperf"
+    {"outline-width", CSSPropertyOutlineWidth},
+#line 298 "CSSPropertyNames.gperf"
+    {"shape-rendering", CSSPropertyShapeRendering},
+#line 118 "CSSPropertyNames.gperf"
+    {"page-break-inside", CSSPropertyPageBreakInside},
+#line 149 "CSSPropertyNames.gperf"
+    {"unicode-bidi", CSSPropertyUnicodeBidi},
+#line 143 "CSSPropertyNames.gperf"
+    {"text-underline", CSSPropertyTextUnderline},
+#line 248 "CSSPropertyNames.gperf"
+    {"-webkit-padding-start", CSSPropertyWebkitPaddingStart},
+#line 163 "CSSPropertyNames.gperf"
+    {"-webkit-animation-duration", CSSPropertyWebkitAnimationDuration},
+#line 145 "CSSPropertyNames.gperf"
+    {"text-underline-mode", CSSPropertyTextUnderlineMode},
+#line 147 "CSSPropertyNames.gperf"
+    {"text-underline-width", CSSPropertyTextUnderlineWidth},
+#line 316 "CSSPropertyNames.gperf"
+    {"-webkit-svg-shadow", CSSPropertyWebkitSvgShadow},
+#line 61 "CSSPropertyNames.gperf"
+    {"border-right-color", CSSPropertyBorderRightColor},
+#line 65 "CSSPropertyNames.gperf"
+    {"border-style", CSSPropertyBorderStyle},
+#line 51 "CSSPropertyNames.gperf"
+    {"border-bottom-style", CSSPropertyBorderBottomStyle},
+#line 217 "CSSPropertyNames.gperf"
+    {"-webkit-hyphens", CSSPropertyWebkitHyphens},
+#line 80 "CSSPropertyNames.gperf"
+    {"cursor", CSSPropertyCursor},
+#line 268 "CSSPropertyNames.gperf"
+    {"-webkit-transition-duration", CSSPropertyWebkitTransitionDuration},
+#line 289 "CSSPropertyNames.gperf"
+    {"color-rendering", CSSPropertyColorRendering},
+#line 228 "CSSPropertyNames.gperf"
+    {"-webkit-marquee-repetition", CSSPropertyWebkitMarqueeRepetition},
+#line 30 "CSSPropertyNames.gperf"
+    {"-webkit-text-size-adjust", CSSPropertyWebkitTextSizeAdjust},
+#line 300 "CSSPropertyNames.gperf"
+    {"stroke-dasharray", CSSPropertyStrokeDasharray},
+#line 79 "CSSPropertyNames.gperf"
+    {"counter-reset", CSSPropertyCounterReset},
+#line 178 "CSSPropertyNames.gperf"
+    {"-webkit-border-end-style", CSSPropertyWebkitBorderEndStyle},
+#line 152 "CSSPropertyNames.gperf"
+    {"visibility", CSSPropertyVisibility},
+#line 243 "CSSPropertyNames.gperf"
+    {"-webkit-mask-repeat-y", CSSPropertyWebkitMaskRepeatY},
+#line 100 "CSSPropertyNames.gperf"
+    {"opacity", CSSPropertyOpacity},
+#line 64 "CSSPropertyNames.gperf"
+    {"border-spacing", CSSPropertyBorderSpacing},
+#line 157 "CSSPropertyNames.gperf"
+    {"word-spacing", CSSPropertyWordSpacing},
+#line 161 "CSSPropertyNames.gperf"
+    {"-webkit-animation-delay", CSSPropertyWebkitAnimationDelay},
+#line 229 "CSSPropertyNames.gperf"
+    {"-webkit-marquee-speed", CSSPropertyWebkitMarqueeSpeed},
+#line 70 "CSSPropertyNames.gperf"
+    {"border-top-style", CSSPropertyBorderTopStyle},
+#line 22 "CSSPropertyNames.gperf"
+    {"display", CSSPropertyDisplay},
+#line 226 "CSSPropertyNames.gperf"
+    {"-webkit-marquee-direction", CSSPropertyWebkitMarqueeDirection},
+#line 240 "CSSPropertyNames.gperf"
+    {"-webkit-mask-position-y", CSSPropertyWebkitMaskPositionY},
+#line 211 "CSSPropertyNames.gperf"
+    {"-webkit-column-width", CSSPropertyWebkitColumnWidth},
+#line 267 "CSSPropertyNames.gperf"
+    {"-webkit-transition-delay", CSSPropertyWebkitTransitionDelay},
+#line 227 "CSSPropertyNames.gperf"
+    {"-webkit-marquee-increment", CSSPropertyWebkitMarqueeIncrement},
+#line 23 "CSSPropertyNames.gperf"
+    {"font", CSSPropertyFont},
+#line 307 "CSSPropertyNames.gperf"
+    {"alignment-baseline", CSSPropertyAlignmentBaseline},
+#line 186 "CSSPropertyNames.gperf"
+    {"-webkit-border-start-style", CSSPropertyWebkitBorderStartStyle},
+#line 305 "CSSPropertyNames.gperf"
+    {"stroke-opacity", CSSPropertyStrokeOpacity},
+#line 180 "CSSPropertyNames.gperf"
+    {"-webkit-border-fit", CSSPropertyWebkitBorderFit},
+#line 274 "CSSPropertyNames.gperf"
+    {"-webkit-variable-declaration-block", CSSPropertyWebkitVariableDeclarationBlock},
+#line 165 "CSSPropertyNames.gperf"
+    {"-webkit-animation-iteration-count", CSSPropertyWebkitAnimationIterationCount},
+#line 269 "CSSPropertyNames.gperf"
+    {"-webkit-transition-property", CSSPropertyWebkitTransitionProperty},
+#line 212 "CSSPropertyNames.gperf"
+    {"-webkit-columns", CSSPropertyWebkitColumns},
+#line 87 "CSSPropertyNames.gperf"
+    {"list-style", CSSPropertyListStyle},
+#line 78 "CSSPropertyNames.gperf"
+    {"counter-increment", CSSPropertyCounterIncrement},
+#line 86 "CSSPropertyNames.gperf"
+    {"letter-spacing", CSSPropertyLetterSpacing},
+#line 103 "CSSPropertyNames.gperf"
+    {"outline-color", CSSPropertyOutlineColor},
+#line 94 "CSSPropertyNames.gperf"
+    {"margin-right", CSSPropertyMarginRight},
+#line 85 "CSSPropertyNames.gperf"
+    {"left", CSSPropertyLeft},
+#line 285 "CSSPropertyNames.gperf"
+    {"stop-opacity", CSSPropertyStopOpacity},
+#line 139 "CSSPropertyNames.gperf"
+    {"text-overline-style", CSSPropertyTextOverlineStyle},
+#line 280 "CSSPropertyNames.gperf"
+    {"filter", CSSPropertyFilter},
+#line 273 "CSSPropertyNames.gperf"
+    {"-webkit-user-select", CSSPropertyWebkitUserSelect},
+#line 203 "CSSPropertyNames.gperf"
+    {"-webkit-column-break-inside", CSSPropertyWebkitColumnBreakInside},
+#line 144 "CSSPropertyNames.gperf"
+    {"text-underline-color", CSSPropertyTextUnderlineColor},
+#line 55 "CSSPropertyNames.gperf"
+    {"border-left", CSSPropertyBorderLeft},
+#line 250 "CSSPropertyNames.gperf"
+    {"-webkit-perspective-origin", CSSPropertyWebkitPerspectiveOrigin},
+#line 25 "CSSPropertyNames.gperf"
+    {"font-size", CSSPropertyFontSize},
+#line 151 "CSSPropertyNames.gperf"
+    {"vertical-align", CSSPropertyVerticalAlign},
+#line 82 "CSSPropertyNames.gperf"
+    {"float", CSSPropertyFloat},
+#line 142 "CSSPropertyNames.gperf"
+    {"text-transform", CSSPropertyTextTransform},
+#line 251 "CSSPropertyNames.gperf"
+    {"-webkit-perspective-origin-x", CSSPropertyWebkitPerspectiveOriginX},
+#line 293 "CSSPropertyNames.gperf"
+    {"image-rendering", CSSPropertyImageRendering},
+#line 277 "CSSPropertyNames.gperf"
+    {"clip-rule", CSSPropertyClipRule},
+#line 58 "CSSPropertyNames.gperf"
+    {"border-left-width", CSSPropertyBorderLeftWidth},
+#line 260 "CSSPropertyNames.gperf"
+    {"-webkit-transform", CSSPropertyWebkitTransform},
+#line 191 "CSSPropertyNames.gperf"
+    {"-webkit-box-flex", CSSPropertyWebkitBoxFlex},
+#line 167 "CSSPropertyNames.gperf"
+    {"-webkit-animation-play-state", CSSPropertyWebkitAnimationPlayState},
+#line 215 "CSSPropertyNames.gperf"
+    {"-webkit-highlight", CSSPropertyWebkitHighlight},
+#line 27 "CSSPropertyNames.gperf"
+    {"font-variant", CSSPropertyFontVariant},
+#line 113 "CSSPropertyNames.gperf"
+    {"padding-right", CSSPropertyPaddingRight},
+#line 210 "CSSPropertyNames.gperf"
+    {"-webkit-column-span", CSSPropertyWebkitColumnSpan},
+#line 181 "CSSPropertyNames.gperf"
+    {"-webkit-border-horizontal-spacing", CSSPropertyWebkitBorderHorizontalSpacing},
+#line 107 "CSSPropertyNames.gperf"
+    {"overflow", CSSPropertyOverflow},
+#line 108 "CSSPropertyNames.gperf"
+    {"overflow-x", CSSPropertyOverflowX},
+#line 290 "CSSPropertyNames.gperf"
+    {"fill", CSSPropertyFill},
+#line 135 "CSSPropertyNames.gperf"
+    {"text-overflow", CSSPropertyTextOverflow},
+#line 81 "CSSPropertyNames.gperf"
+    {"empty-cells", CSSPropertyEmptyCells},
+#line 221 "CSSPropertyNames.gperf"
+    {"-webkit-margin-collapse", CSSPropertyWebkitMarginCollapse},
+#line 89 "CSSPropertyNames.gperf"
+    {"list-style-position", CSSPropertyListStylePosition},
+#line 216 "CSSPropertyNames.gperf"
+    {"-webkit-hyphenate-character", CSSPropertyWebkitHyphenateCharacter},
+#line 220 "CSSPropertyNames.gperf"
+    {"-webkit-margin-bottom-collapse", CSSPropertyWebkitMarginBottomCollapse},
+#line 83 "CSSPropertyNames.gperf"
+    {"font-stretch", CSSPropertyFontStretch},
+#line 50 "CSSPropertyNames.gperf"
+    {"border-bottom-right-radius", CSSPropertyBorderBottomRightRadius},
+#line 271 "CSSPropertyNames.gperf"
+    {"-webkit-user-drag", CSSPropertyWebkitUserDrag},
+#line 130 "CSSPropertyNames.gperf"
+    {"text-line-through", CSSPropertyTextLineThrough},
+#line 132 "CSSPropertyNames.gperf"
+    {"text-line-through-mode", CSSPropertyTextLineThroughMode},
+#line 197 "CSSPropertyNames.gperf"
+    {"-webkit-box-reflect", CSSPropertyWebkitBoxReflect},
+#line 134 "CSSPropertyNames.gperf"
+    {"text-line-through-width", CSSPropertyTextLineThroughWidth},
+#line 213 "CSSPropertyNames.gperf"
+    {"-webkit-font-size-delta", CSSPropertyWebkitFontSizeDelta},
+#line 308 "CSSPropertyNames.gperf"
+    {"baseline-shift", CSSPropertyBaselineShift},
+#line 224 "CSSPropertyNames.gperf"
+    {"-webkit-margin-top-collapse", CSSPropertyWebkitMarginTopCollapse},
+#line 33 "CSSPropertyNames.gperf"
+    {"background", CSSPropertyBackground},
+#line 69 "CSSPropertyNames.gperf"
+    {"border-top-right-radius", CSSPropertyBorderTopRightRadius},
+#line 62 "CSSPropertyNames.gperf"
+    {"border-right-style", CSSPropertyBorderRightStyle},
+#line 164 "CSSPropertyNames.gperf"
+    {"-webkit-animation-fill-mode", CSSPropertyWebkitAnimationFillMode},
+#line 150 "CSSPropertyNames.gperf"
+    {"unicode-range", CSSPropertyUnicodeRange},
+#line 188 "CSSPropertyNames.gperf"
+    {"-webkit-border-vertical-spacing", CSSPropertyWebkitBorderVerticalSpacing},
+#line 281 "CSSPropertyNames.gperf"
+    {"flood-color", CSSPropertyFloodColor},
+#line 56 "CSSPropertyNames.gperf"
+    {"border-left-color", CSSPropertyBorderLeftColor},
+#line 194 "CSSPropertyNames.gperf"
+    {"-webkit-box-ordinal-group", CSSPropertyWebkitBoxOrdinalGroup},
+#line 283 "CSSPropertyNames.gperf"
+    {"lighting-color", CSSPropertyLightingColor},
+#line 45 "CSSPropertyNames.gperf"
+    {"background-size", CSSPropertyBackgroundSize},
+#line 42 "CSSPropertyNames.gperf"
+    {"background-repeat", CSSPropertyBackgroundRepeat},
+#line 288 "CSSPropertyNames.gperf"
+    {"color-profile", CSSPropertyColorProfile},
+#line 174 "CSSPropertyNames.gperf"
+    {"-webkit-background-size", CSSPropertyWebkitBackgroundSize},
+#line 43 "CSSPropertyNames.gperf"
+    {"background-repeat-x", CSSPropertyBackgroundRepeatX},
+#line 28 "CSSPropertyNames.gperf"
+    {"font-weight", CSSPropertyFontWeight},
+#line 256 "CSSPropertyNames.gperf"
+    {"-webkit-text-security", CSSPropertyWebkitTextSecurity},
+#line 279 "CSSPropertyNames.gperf"
+    {"enable-background", CSSPropertyEnableBackground},
+#line 39 "CSSPropertyNames.gperf"
+    {"background-position", CSSPropertyBackgroundPosition},
+#line 126 "CSSPropertyNames.gperf"
+    {"table-layout", CSSPropertyTableLayout},
+#line 40 "CSSPropertyNames.gperf"
+    {"background-position-x", CSSPropertyBackgroundPositionX},
+#line 255 "CSSPropertyNames.gperf"
+    {"-webkit-text-fill-color", CSSPropertyWebkitTextFillColor},
+#line 230 "CSSPropertyNames.gperf"
+    {"-webkit-marquee-style", CSSPropertyWebkitMarqueeStyle},
+#line 88 "CSSPropertyNames.gperf"
+    {"list-style-image", CSSPropertyListStyleImage},
+#line 105 "CSSPropertyNames.gperf"
+    {"outline-style", CSSPropertyOutlineStyle},
+#line 205 "CSSPropertyNames.gperf"
+    {"-webkit-column-gap", CSSPropertyWebkitColumnGap},
+#line 131 "CSSPropertyNames.gperf"
+    {"text-line-through-color", CSSPropertyTextLineThroughColor},
+#line 34 "CSSPropertyNames.gperf"
+    {"background-attachment", CSSPropertyBackgroundAttachment},
+#line 214 "CSSPropertyNames.gperf"
+    {"-webkit-font-smoothing", CSSPropertyWebkitFontSmoothing},
+#line 146 "CSSPropertyNames.gperf"
+    {"text-underline-style", CSSPropertyTextUnderlineStyle},
+#line 36 "CSSPropertyNames.gperf"
+    {"background-color", CSSPropertyBackgroundColor},
+#line 93 "CSSPropertyNames.gperf"
+    {"margin-left", CSSPropertyMarginLeft},
+#line 117 "CSSPropertyNames.gperf"
+    {"page-break-before", CSSPropertyPageBreakBefore},
+#line 261 "CSSPropertyNames.gperf"
+    {"-webkit-transform-origin", CSSPropertyWebkitTransformOrigin},
+#line 310 "CSSPropertyNames.gperf"
+    {"glyph-orientation-horizontal", CSSPropertyGlyphOrientationHorizontal},
+#line 262 "CSSPropertyNames.gperf"
+    {"-webkit-transform-origin-x", CSSPropertyWebkitTransformOriginX},
+#line 206 "CSSPropertyNames.gperf"
+    {"-webkit-column-rule", CSSPropertyWebkitColumnRule},
+#line 116 "CSSPropertyNames.gperf"
+    {"page-break-after", CSSPropertyPageBreakAfter},
+#line 209 "CSSPropertyNames.gperf"
+    {"-webkit-column-rule-width", CSSPropertyWebkitColumnRuleWidth},
+#line 172 "CSSPropertyNames.gperf"
+    {"-webkit-background-composite", CSSPropertyWebkitBackgroundComposite},
+#line 264 "CSSPropertyNames.gperf"
+    {"-webkit-transform-origin-z", CSSPropertyWebkitTransformOriginZ},
+#line 35 "CSSPropertyNames.gperf"
+    {"background-clip", CSSPropertyBackgroundClip},
+#line 252 "CSSPropertyNames.gperf"
+    {"-webkit-perspective-origin-y", CSSPropertyWebkitPerspectiveOriginY},
+#line 204 "CSSPropertyNames.gperf"
+    {"-webkit-column-count", CSSPropertyWebkitColumnCount},
+#line 90 "CSSPropertyNames.gperf"
+    {"list-style-type", CSSPropertyListStyleType},
+#line 112 "CSSPropertyNames.gperf"
+    {"padding-left", CSSPropertyPaddingLeft},
+#line 171 "CSSPropertyNames.gperf"
+    {"-webkit-background-clip", CSSPropertyWebkitBackgroundClip},
+#line 287 "CSSPropertyNames.gperf"
+    {"color-interpolation-filters", CSSPropertyColorInterpolationFilters},
+#line 26 "CSSPropertyNames.gperf"
+    {"font-style", CSSPropertyFontStyle},
+#line 245 "CSSPropertyNames.gperf"
+    {"-webkit-match-nearest-mail-blockquote-color", CSSPropertyWebkitMatchNearestMailBlockquoteColor},
+#line 109 "CSSPropertyNames.gperf"
+    {"overflow-y", CSSPropertyOverflowY},
+#line 49 "CSSPropertyNames.gperf"
+    {"border-bottom-left-radius", CSSPropertyBorderBottomLeftRadius},
+#line 311 "CSSPropertyNames.gperf"
+    {"glyph-orientation-vertical", CSSPropertyGlyphOrientationVertical},
+#line 38 "CSSPropertyNames.gperf"
+    {"background-origin", CSSPropertyBackgroundOrigin},
+#line 37 "CSSPropertyNames.gperf"
+    {"background-image", CSSPropertyBackgroundImage},
+#line 173 "CSSPropertyNames.gperf"
+    {"-webkit-background-origin", CSSPropertyWebkitBackgroundOrigin},
+#line 68 "CSSPropertyNames.gperf"
+    {"border-top-left-radius", CSSPropertyBorderTopLeftRadius},
+#line 57 "CSSPropertyNames.gperf"
+    {"border-left-style", CSSPropertyBorderLeftStyle},
+#line 292 "CSSPropertyNames.gperf"
+    {"fill-rule", CSSPropertyFillRule},
+#line 265 "CSSPropertyNames.gperf"
+    {"-webkit-transform-style", CSSPropertyWebkitTransformStyle},
+#line 202 "CSSPropertyNames.gperf"
+    {"-webkit-column-break-before", CSSPropertyWebkitColumnBreakBefore},
+#line 207 "CSSPropertyNames.gperf"
+    {"-webkit-column-rule-color", CSSPropertyWebkitColumnRuleColor},
+#line 201 "CSSPropertyNames.gperf"
+    {"-webkit-column-break-after", CSSPropertyWebkitColumnBreakAfter},
+#line 282 "CSSPropertyNames.gperf"
+    {"flood-opacity", CSSPropertyFloodOpacity},
+#line 44 "CSSPropertyNames.gperf"
+    {"background-repeat-y", CSSPropertyBackgroundRepeatY},
+#line 133 "CSSPropertyNames.gperf"
+    {"text-line-through-style", CSSPropertyTextLineThroughStyle},
+#line 291 "CSSPropertyNames.gperf"
+    {"fill-opacity", CSSPropertyFillOpacity},
+#line 41 "CSSPropertyNames.gperf"
+    {"background-position-y", CSSPropertyBackgroundPositionY},
+#line 301 "CSSPropertyNames.gperf"
+    {"stroke-dashoffset", CSSPropertyStrokeDashoffset},
+#line 263 "CSSPropertyNames.gperf"
+    {"-webkit-transform-origin-y", CSSPropertyWebkitTransformOriginY},
+#line 272 "CSSPropertyNames.gperf"
+    {"-webkit-user-modify", CSSPropertyWebkitUserModify},
+#line 170 "CSSPropertyNames.gperf"
+    {"-webkit-backface-visibility", CSSPropertyWebkitBackfaceVisibility},
+#line 192 "CSSPropertyNames.gperf"
+    {"-webkit-box-flex-group", CSSPropertyWebkitBoxFlexGroup},
+#line 314 "CSSPropertyNames.gperf"
+    {"vector-effect", CSSPropertyVectorEffect},
+#line 168 "CSSPropertyNames.gperf"
+    {"-webkit-animation-timing-function", CSSPropertyWebkitAnimationTimingFunction},
+#line 254 "CSSPropertyNames.gperf"
+    {"-webkit-text-decorations-in-effect", CSSPropertyWebkitTextDecorationsInEffect},
+#line 270 "CSSPropertyNames.gperf"
+    {"-webkit-transition-timing-function", CSSPropertyWebkitTransitionTimingFunction},
+#line 208 "CSSPropertyNames.gperf"
+    {"-webkit-column-rule-style", CSSPropertyWebkitColumnRuleStyle},
+#line 24 "CSSPropertyNames.gperf"
+    {"font-family", CSSPropertyFontFamily},
+#line 104 "CSSPropertyNames.gperf"
+    {"outline-offset", CSSPropertyOutlineOffset}
+  };
+
+static const short lookup[] =
+  {
+      0,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,   1,   2,  -1,  -1,  -1,
+      3,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,   4,  -1,  -1,  -1,
+     -1,   5,  -1,  -1,  -1,   6,   7,  -1,  -1,  -1,
+      8,  -1,  -1,  -1,  -1,   9,  -1,  -1,  -1,  -1,
+     -1,  -1,  10,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     11,  12,  -1,  -1,  -1,  -1,  13,  -1,  -1,  -1,
+     14,  -1,  -1,  -1,  -1,  15,  16,  -1,  -1,  -1,
+     17,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     18,  19,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     20,  21,  -1,  -1,  -1,  22,  -1,  -1,  -1,  -1,
+     23,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     24,  -1,  -1,  -1,  -1,  -1,  25,  -1,  -1,  -1,
+     26,  27,  -1,  -1,  -1,  28,  -1,  29,  -1,  -1,
+     30,  -1,  -1,  -1,  -1,  -1,  -1,  31,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     32,  -1,  33,  -1,  -1,  34,  -1,  -1,  -1,  -1,
+     35,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  36,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     37,  -1,  -1,  -1,  -1,  38,  -1,  -1,  -1,  -1,
+     39,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     40,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     41,  -1,  -1,  -1,  -1,  42,  -1,  -1,  -1,  -1,
+     43,  -1,  -1,  -1,  -1,  44,  45,  -1,  -1,  -1,
+     -1,  46,  -1,  -1,  -1,  -1,  -1,  47,  -1,  -1,
+     48,  49,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  50,  -1,  -1,
+     51,  52,  -1,  -1,  -1,  53,  -1,  54,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  55,  -1,
+     56,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     57,  58,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     59,  -1,  -1,  -1,  -1,  60,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  61,  -1,  -1,  -1,
+     62,  63,  -1,  -1,  -1,  64,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  65,  66,  -1,  -1,  -1,
+     67,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  68,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  69,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  70,  -1,  -1,  -1,  71,  72,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  73,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  74,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  75,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  76,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     77,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  78,  79,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  80,  -1,  -1,  -1,
+     81,  -1,  -1,  -1,  -1,  82,  83,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  84,  -1,  85,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  86,  -1,  -1,
+     -1,  -1,  -1,  87,  -1,  88,  -1,  -1,  -1,  -1,
+     89,  -1,  90,  -1,  -1,  91,  92,  -1,  -1,  -1,
+     93,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     94,  -1,  -1,  -1,  -1,  -1,  95,  -1,  -1,  -1,
+     96,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  97,  -1,  -1,  -1,  -1,
+     98,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     99,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+    100,  -1,  -1,  -1,  -1, 101,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+    102,  -1,  -1,  -1,  -1, 103,  -1,  -1,  -1,  -1,
+    104,  -1, 105,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+    106,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+    107, 108,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1, 109,  -1,  -1,  -1, 110, 111,  -1,  -1,  -1,
+    112,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+    113,  -1,  -1,  -1,  -1, 114, 115,  -1,  -1,  -1,
+     -1, 116,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+    117,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+    118,  -1,  -1,  -1,  -1, 119,  -1,  -1,  -1,  -1,
+    120,  -1,  -1,  -1,  -1, 121,  -1,  -1,  -1,  -1,
+    122,  -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, 124,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1, 125,  -1,  -1,  -1,  -1,
+    126, 127,  -1,  -1,  -1, 128,  -1,  -1,  -1,  -1,
+    129, 130,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1, 131,  -1,  -1,  -1,  -1, 132,  -1,  -1,
+     -1, 133,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1, 134,  -1,  -1,  -1,  -1, 135,  -1, 136,  -1,
+     -1,  -1,  -1,  -1,  -1, 137,  -1,  -1,  -1,  -1,
+    138,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1, 139,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1, 140,  -1,  -1,  -1,  -1,
+     -1, 141,  -1,  -1,  -1,  -1,  -1, 142,  -1,  -1,
+    143,  -1,  -1,  -1,  -1,  -1, 144, 145,  -1,  -1,
+     -1, 146,  -1,  -1,  -1,  -1, 147,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1, 148,  -1,  -1,  -1,  -1,
+    149, 150,  -1,  -1,  -1, 151,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1, 152,  -1,  -1,  -1,
+     -1, 153,  -1,  -1,  -1, 154,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1, 155,  -1,  -1,  -1,
+     -1, 156,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1, 157,  -1,  -1,  -1, 158,  -1,  -1,  -1,  -1,
+    159,  -1,  -1,  -1,  -1, 160, 161,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1, 162,  -1,  -1,  -1, 163, 164,  -1,  -1,  -1,
+    165,  -1,  -1,  -1,  -1,  -1, 166,  -1,  -1,  -1,
+    167,  -1,  -1,  -1,  -1,  -1, 168,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1, 169,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1, 170,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1, 171,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1, 172,  -1,  -1,  -1,
+    173, 174,  -1, 175,  -1, 176,  -1,  -1,  -1,  -1,
+    177,  -1,  -1,  -1,  -1, 178, 179,  -1,  -1,  -1,
+    180, 181,  -1,  -1,  -1, 182, 183,  -1,  -1,  -1,
+    184, 185, 186,  -1,  -1, 187,  -1,  -1,  -1,  -1,
+    188, 189,  -1,  -1,  -1, 190,  -1, 191,  -1,  -1,
+     -1, 192,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1, 193,  -1,  -1, 194,  -1,  -1,  -1,
+     -1, 195,  -1,  -1,  -1, 196,  -1,  -1,  -1,  -1,
+     -1, 197,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1, 198,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1, 199,  -1,  -1, 200,  -1, 201,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1, 202,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1, 203, 204,  -1,  -1, 205,
+    206,  -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, 208,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1, 209,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1, 210,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1, 211,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1, 212,  -1,  -1, 213,
+    214, 215,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+    216,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+    217,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1, 218,  -1,  -1,  -1,
+     -1,  -1, 219,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+    220,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+    221, 222,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+    223,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -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,  -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,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1, 226,  -1,  -1,  -1, 227,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1, 228,  -1,  -1,  -1,  -1,
+    229,  -1,  -1,  -1,  -1, 230, 231,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1, 232, 233,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1, 234,  -1,  -1,  -1,  -1,
+    235,  -1,  -1,  -1,  -1,  -1, 236,  -1,  -1,  -1,
+     -1, 237,  -1,  -1,  -1,  -1, 238,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1, 239,  -1,  -1,  -1,
+     -1, 240,  -1,  -1,  -1,  -1, 241,  -1,  -1,  -1,
+    242,  -1,  -1, 243,  -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,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1, 245,  -1,  -1,  -1,  -1,  -1, 246,  -1,  -1,
+     -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,
+    248,  -1,  -1,  -1,  -1, 249,  -1,  -1,  -1,  -1,
+    250,  -1,  -1, 251,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1, 252,  -1,  -1,  -1, 253,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1, 254,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1, 255,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1, 256,  -1,  -1,  -1,  -1,
+    257,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+    258,  -1, 259,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1, 260,  -1,  -1,  -1,  -1,
+     -1,  -1, 261,  -1,  -1, 262,  -1,  -1,  -1,  -1,
+    263,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+    264,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1, 265,  -1,  -1,  -1,
+     -1, 266, 267,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+    268,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1, 269,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1, 270,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1, 271,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1, 272,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+    273,  -1,  -1,  -1,  -1,  -1, 274,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+    275,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1, 276,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1, 277,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+    278,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1, 279, 280,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1, 281,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1, 282,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1, 283,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1, 284,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1, 285,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1, 286,  -1,  -1,  -1,  -1, 287,  -1,  -1,  -1,
+     -1,  -1, 288,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1, 289,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1, 290,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1, 291,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1, 292,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1, 293,  -1,  -1,  -1,  -1,
+     -1, 294,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1, 295,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+     -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
+    296
+  };
+
+#ifdef __GNUC__
+__inline
+#endif
+const struct Property *
+findProperty (register const char *str, register unsigned int len)
+{
+  if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+    {
+      register int key = propery_hash_function (str, len);
+
+      if (key <= MAX_HASH_VALUE && key >= 0)
+        {
+          register int index = lookup[key];
+
+          if (index >= 0)
+            {
+              register const char *s = property_wordlist[index].name;
+
+              if (*str == *s && !strncmp (str + 1, s + 1, len - 1) && s[len] == '\0')
+                return &property_wordlist[index];
+            }
+        }
+    }
+  return 0;
+}
+#line 317 "CSSPropertyNames.gperf"
+
+static const char * const propertyNameStrings[297] = {
+"color",
+"direction",
+"display",
+"font",
+"font-family",
+"font-size",
+"font-style",
+"font-variant",
+"font-weight",
+"text-rendering",
+"-webkit-text-size-adjust",
+"zoom",
+"line-height",
+"background",
+"background-attachment",
+"background-clip",
+"background-color",
+"background-image",
+"background-origin",
+"background-position",
+"background-position-x",
+"background-position-y",
+"background-repeat",
+"background-repeat-x",
+"background-repeat-y",
+"background-size",
+"border",
+"border-bottom",
+"border-bottom-color",
+"border-bottom-left-radius",
+"border-bottom-right-radius",
+"border-bottom-style",
+"border-bottom-width",
+"border-collapse",
+"border-color",
+"border-left",
+"border-left-color",
+"border-left-style",
+"border-left-width",
+"border-radius",
+"border-right",
+"border-right-color",
+"border-right-style",
+"border-right-width",
+"border-spacing",
+"border-style",
+"border-top",
+"border-top-color",
+"border-top-left-radius",
+"border-top-right-radius",
+"border-top-style",
+"border-top-width",
+"border-width",
+"bottom",
+"caption-side",
+"clear",
+"clip",
+"content",
+"counter-increment",
+"counter-reset",
+"cursor",
+"empty-cells",
+"float",
+"font-stretch",
+"height",
+"left",
+"letter-spacing",
+"list-style",
+"list-style-image",
+"list-style-position",
+"list-style-type",
+"margin",
+"margin-bottom",
+"margin-left",
+"margin-right",
+"margin-top",
+"max-height",
+"max-width",
+"min-height",
+"min-width",
+"opacity",
+"orphans",
+"outline",
+"outline-color",
+"outline-offset",
+"outline-style",
+"outline-width",
+"overflow",
+"overflow-x",
+"overflow-y",
+"padding",
+"padding-bottom",
+"padding-left",
+"padding-right",
+"padding-top",
+"page",
+"page-break-after",
+"page-break-before",
+"page-break-inside",
+"pointer-events",
+"position",
+"quotes",
+"resize",
+"right",
+"size",
+"src",
+"table-layout",
+"text-align",
+"text-decoration",
+"text-indent",
+"text-line-through",
+"text-line-through-color",
+"text-line-through-mode",
+"text-line-through-style",
+"text-line-through-width",
+"text-overflow",
+"text-overline",
+"text-overline-color",
+"text-overline-mode",
+"text-overline-style",
+"text-overline-width",
+"text-shadow",
+"text-transform",
+"text-underline",
+"text-underline-color",
+"text-underline-mode",
+"text-underline-style",
+"text-underline-width",
+"top",
+"unicode-bidi",
+"unicode-range",
+"vertical-align",
+"visibility",
+"white-space",
+"widows",
+"width",
+"word-break",
+"word-spacing",
+"word-wrap",
+"z-index",
+"-webkit-animation",
+"-webkit-animation-delay",
+"-webkit-animation-direction",
+"-webkit-animation-duration",
+"-webkit-animation-fill-mode",
+"-webkit-animation-iteration-count",
+"-webkit-animation-name",
+"-webkit-animation-play-state",
+"-webkit-animation-timing-function",
+"-webkit-appearance",
+"-webkit-backface-visibility",
+"-webkit-background-clip",
+"-webkit-background-composite",
+"-webkit-background-origin",
+"-webkit-background-size",
+"-webkit-binding",
+"-webkit-border-end",
+"-webkit-border-end-color",
+"-webkit-border-end-style",
+"-webkit-border-end-width",
+"-webkit-border-fit",
+"-webkit-border-horizontal-spacing",
+"-webkit-border-image",
+"-webkit-border-radius",
+"-webkit-border-start",
+"-webkit-border-start-color",
+"-webkit-border-start-style",
+"-webkit-border-start-width",
+"-webkit-border-vertical-spacing",
+"-webkit-box-align",
+"-webkit-box-direction",
+"-webkit-box-flex",
+"-webkit-box-flex-group",
+"-webkit-box-lines",
+"-webkit-box-ordinal-group",
+"-webkit-box-orient",
+"-webkit-box-pack",
+"-webkit-box-reflect",
+"-webkit-box-shadow",
+"-webkit-box-sizing",
+"-webkit-color-correction",
+"-webkit-column-break-after",
+"-webkit-column-break-before",
+"-webkit-column-break-inside",
+"-webkit-column-count",
+"-webkit-column-gap",
+"-webkit-column-rule",
+"-webkit-column-rule-color",
+"-webkit-column-rule-style",
+"-webkit-column-rule-width",
+"-webkit-column-span",
+"-webkit-column-width",
+"-webkit-columns",
+"-webkit-font-size-delta",
+"-webkit-font-smoothing",
+"-webkit-highlight",
+"-webkit-hyphenate-character",
+"-webkit-hyphens",
+"-webkit-line-break",
+"-webkit-line-clamp",
+"-webkit-margin-bottom-collapse",
+"-webkit-margin-collapse",
+"-webkit-margin-end",
+"-webkit-margin-start",
+"-webkit-margin-top-collapse",
+"-webkit-marquee",
+"-webkit-marquee-direction",
+"-webkit-marquee-increment",
+"-webkit-marquee-repetition",
+"-webkit-marquee-speed",
+"-webkit-marquee-style",
+"-webkit-mask",
+"-webkit-mask-attachment",
+"-webkit-mask-box-image",
+"-webkit-mask-clip",
+"-webkit-mask-composite",
+"-webkit-mask-image",
+"-webkit-mask-origin",
+"-webkit-mask-position",
+"-webkit-mask-position-x",
+"-webkit-mask-position-y",
+"-webkit-mask-repeat",
+"-webkit-mask-repeat-x",
+"-webkit-mask-repeat-y",
+"-webkit-mask-size",
+"-webkit-match-nearest-mail-blockquote-color",
+"-webkit-nbsp-mode",
+"-webkit-padding-end",
+"-webkit-padding-start",
+"-webkit-perspective",
+"-webkit-perspective-origin",
+"-webkit-perspective-origin-x",
+"-webkit-perspective-origin-y",
+"-webkit-rtl-ordering",
+"-webkit-text-decorations-in-effect",
+"-webkit-text-fill-color",
+"-webkit-text-security",
+"-webkit-text-stroke",
+"-webkit-text-stroke-color",
+"-webkit-text-stroke-width",
+"-webkit-transform",
+"-webkit-transform-origin",
+"-webkit-transform-origin-x",
+"-webkit-transform-origin-y",
+"-webkit-transform-origin-z",
+"-webkit-transform-style",
+"-webkit-transition",
+"-webkit-transition-delay",
+"-webkit-transition-duration",
+"-webkit-transition-property",
+"-webkit-transition-timing-function",
+"-webkit-user-drag",
+"-webkit-user-modify",
+"-webkit-user-select",
+"-webkit-variable-declaration-block",
+"-webkit-dashboard-region",
+"clip-path",
+"clip-rule",
+"mask",
+"enable-background",
+"filter",
+"flood-color",
+"flood-opacity",
+"lighting-color",
+"stop-color",
+"stop-opacity",
+"color-interpolation",
+"color-interpolation-filters",
+"color-profile",
+"color-rendering",
+"fill",
+"fill-opacity",
+"fill-rule",
+"image-rendering",
+"marker",
+"marker-end",
+"marker-mid",
+"marker-start",
+"shape-rendering",
+"stroke",
+"stroke-dasharray",
+"stroke-dashoffset",
+"stroke-linecap",
+"stroke-linejoin",
+"stroke-miterlimit",
+"stroke-opacity",
+"stroke-width",
+"alignment-baseline",
+"baseline-shift",
+"dominant-baseline",
+"glyph-orientation-horizontal",
+"glyph-orientation-vertical",
+"kerning",
+"text-anchor",
+"vector-effect",
+"writing-mode",
+"-webkit-svg-shadow",
+};
+const char* getPropertyName(CSSPropertyID id)
+{
+    if (id < firstCSSProperty)
+        return 0;
+    int index = id - firstCSSProperty;
+    if (index >= numCSSProperties)
+        return 0;
+    return propertyNameStrings[index];
+}