servo: Merge #14743 - stylo: update bindings (from heycam:bindings-update-13); r=emilio
authorCameron McCormack <cam@mcc.id.au>
Mon, 26 Dec 2016 19:25:32 -0800
changeset 478595 72029e42297f8a40f102e144a76bd06aa2c803cf
parent 478594 8fd6f32ce95c5636911be74af879832ee7ab8893
child 478596 3f4d3ac3afe2cb29e6d77bab5dfebfda69aede58
push id44079
push userbmo:gps@mozilla.com
push dateSat, 04 Feb 2017 00:14:49 +0000
reviewersemilio
servo: Merge #14743 - stylo: update bindings (from heycam:bindings-update-13); r=emilio Bindings update corresponding to https://treeherder.mozilla.org/#/jobs?repo=stylo&revision=94459122fed6b6fbfa5c73c6b1eed0e75d09e357/. r? @emilio Source-Repo: https://github.com/servo/servo Source-Revision: 87acac1ea01ade095be66435eea9b33f68d28b0b
servo/components/style/build_gecko.rs
servo/components/style/gecko/conversions.rs
servo/components/style/gecko_bindings/structs_debug.rs
servo/components/style/gecko_bindings/structs_release.rs
servo/components/style/properties/gecko.mako.rs
servo/components/style/properties/longhand/box.mako.rs
--- a/servo/components/style/build_gecko.rs
+++ b/servo/components/style/build_gecko.rs
@@ -328,17 +328,17 @@ mod bindings {
             "SheetParsingMode",
             "Side",  // must be a rust-bindgen bug that requires both of these
             "mozilla::Side",
             "StaticRefPtr",
             "StyleAnimation",
             "StyleBasicShape",
             "StyleBasicShapeType",
             "StyleClipPath",
-            "StyleClipPathGeometryBox",
+            "StyleGeometryBox",
             "StyleTransition",
             "mozilla::UniquePtr",
             "mozilla::DefaultDelete",
         ];
         let opaque_types = [
             "std::namespace::atomic___base", "std::atomic__My_base",
             "nsAString_internal_char_traits",
             "nsAString_internal_incompatible_char_type",
--- a/servo/components/style/gecko/conversions.rs
+++ b/servo/components/style/gecko/conversions.rs
@@ -321,17 +321,17 @@ impl nsStyleImage {
 }
 
 pub mod basic_shape {
     use euclid::size::Size2D;
     use gecko::values::GeckoStyleCoordConvertible;
     use gecko_bindings::structs;
     use gecko_bindings::structs::{StyleBasicShape, StyleBasicShapeType, StyleFillRule};
     use gecko_bindings::structs::{nsStyleCoord, nsStyleCorners};
-    use gecko_bindings::structs::StyleClipPathGeometryBox;
+    use gecko_bindings::structs::StyleGeometryBox;
     use gecko_bindings::sugar::ns_style_coord::{CoordDataMut, CoordDataValue};
     use std::borrow::Borrow;
     use values::computed::{BorderRadiusSize, LengthOrPercentage};
     use values::computed::basic_shape::*;
     use values::computed::position;
 
     // using Borrow so that we can have a non-moving .into()
     impl<T: Borrow<StyleBasicShape>> From<T> for BasicShape {
@@ -460,46 +460,46 @@ pub mod basic_shape {
             let other = other.borrow();
             position::Position {
                 horizontal: other.mXPosition.into(),
                 vertical: other.mYPosition.into(),
             }
         }
     }
 
-    impl From<GeometryBox> for StyleClipPathGeometryBox {
+    impl From<GeometryBox> for StyleGeometryBox {
         fn from(reference: GeometryBox) -> Self {
-            use gecko_bindings::structs::StyleClipPathGeometryBox::*;
+            use gecko_bindings::structs::StyleGeometryBox::*;
             match reference {
                 GeometryBox::ShapeBox(ShapeBox::Content) => Content,
                 GeometryBox::ShapeBox(ShapeBox::Padding) => Padding,
                 GeometryBox::ShapeBox(ShapeBox::Border) => Border,
                 GeometryBox::ShapeBox(ShapeBox::Margin) => Margin,
                 GeometryBox::Fill => Fill,
                 GeometryBox::Stroke => Stroke,
                 GeometryBox::View => View,
             }
         }
     }
 
     // Will panic on NoBox
     // Ideally these would be implemented on Option<T>,
     // but coherence doesn't like that and TryFrom isn't stable
-    impl From<StyleClipPathGeometryBox> for GeometryBox {
-        fn from(reference: StyleClipPathGeometryBox) -> Self {
-            use gecko_bindings::structs::StyleClipPathGeometryBox::*;
+    impl From<StyleGeometryBox> for GeometryBox {
+        fn from(reference: StyleGeometryBox) -> Self {
+            use gecko_bindings::structs::StyleGeometryBox::*;
             match reference {
-                NoBox => panic!("Shouldn't convert NoBox to GeometryBox"),
                 Content => GeometryBox::ShapeBox(ShapeBox::Content),
                 Padding => GeometryBox::ShapeBox(ShapeBox::Padding),
                 Border => GeometryBox::ShapeBox(ShapeBox::Border),
                 Margin => GeometryBox::ShapeBox(ShapeBox::Margin),
                 Fill => GeometryBox::Fill,
                 Stroke => GeometryBox::Stroke,
                 View => GeometryBox::View,
+                other => panic!("Unexpected StyleGeometryBox::{:?} while converting to GeometryBox", other),
             }
         }
     }
 }
 
 impl From<RulesMutateError> for nsresult {
     fn from(other: RulesMutateError) -> Self {
         match other {
--- a/servo/components/style/gecko_bindings/structs_debug.rs
+++ b/servo/components/style/gecko_bindings/structs_debug.rs
@@ -297,26 +297,19 @@ pub mod root {
     pub const NS_STYLE_ANIMATION_PLAY_STATE_PAUSED: ::std::os::raw::c_uint =
         1;
     pub const NS_STYLE_IMAGELAYER_ATTACHMENT_SCROLL: ::std::os::raw::c_uint =
         0;
     pub const NS_STYLE_IMAGELAYER_ATTACHMENT_FIXED: ::std::os::raw::c_uint =
         1;
     pub const NS_STYLE_IMAGELAYER_ATTACHMENT_LOCAL: ::std::os::raw::c_uint =
         2;
-    pub const NS_STYLE_IMAGELAYER_CLIP_BORDER: ::std::os::raw::c_uint = 0;
-    pub const NS_STYLE_IMAGELAYER_CLIP_PADDING: ::std::os::raw::c_uint = 1;
-    pub const NS_STYLE_IMAGELAYER_CLIP_CONTENT: ::std::os::raw::c_uint = 2;
-    pub const NS_STYLE_IMAGELAYER_CLIP_TEXT: ::std::os::raw::c_uint = 3;
     pub const NS_STYLE_IMAGELAYER_CLIP_MOZ_ALMOST_PADDING:
               ::std::os::raw::c_uint =
         127;
-    pub const NS_STYLE_IMAGELAYER_ORIGIN_BORDER: ::std::os::raw::c_uint = 0;
-    pub const NS_STYLE_IMAGELAYER_ORIGIN_PADDING: ::std::os::raw::c_uint = 1;
-    pub const NS_STYLE_IMAGELAYER_ORIGIN_CONTENT: ::std::os::raw::c_uint = 2;
     pub const NS_STYLE_IMAGELAYER_POSITION_CENTER: ::std::os::raw::c_uint = 1;
     pub const NS_STYLE_IMAGELAYER_POSITION_TOP: ::std::os::raw::c_uint = 2;
     pub const NS_STYLE_IMAGELAYER_POSITION_BOTTOM: ::std::os::raw::c_uint = 4;
     pub const NS_STYLE_IMAGELAYER_POSITION_LEFT: ::std::os::raw::c_uint = 8;
     pub const NS_STYLE_IMAGELAYER_POSITION_RIGHT: ::std::os::raw::c_uint = 16;
     pub const NS_STYLE_IMAGELAYER_REPEAT_NO_REPEAT: ::std::os::raw::c_uint =
         0;
     pub const NS_STYLE_IMAGELAYER_REPEAT_REPEAT_X: ::std::os::raw::c_uint = 1;
@@ -1007,17 +1000,16 @@ pub mod root {
     pub const NS_STYLE_SCROLL_SNAP_TYPE_PROXIMITY: ::std::os::raw::c_uint = 2;
     pub const NS_STYLE_ORIENTATION_PORTRAIT: ::std::os::raw::c_uint = 0;
     pub const NS_STYLE_ORIENTATION_LANDSCAPE: ::std::os::raw::c_uint = 1;
     pub const NS_STYLE_SCAN_PROGRESSIVE: ::std::os::raw::c_uint = 0;
     pub const NS_STYLE_SCAN_INTERLACE: ::std::os::raw::c_uint = 1;
     pub const NS_STYLE_DISPLAY_MODE_BROWSER: ::std::os::raw::c_uint = 0;
     pub const NS_STYLE_DISPLAY_MODE_MINIMAL_UI: ::std::os::raw::c_uint = 1;
     pub const NS_STYLE_DISPLAY_MODE_STANDALONE: ::std::os::raw::c_uint = 2;
-    pub const NS_STYLE_DISPLAY_MODE_FULLSCREEN: ::std::os::raw::c_uint = 3;
     pub const NS_STYLE_INHERIT_MASK: ::std::os::raw::c_uint = 16777215;
     pub const NS_STYLE_HAS_TEXT_DECORATION_LINES: ::std::os::raw::c_uint =
         16777216;
     pub const NS_STYLE_HAS_PSEUDO_ELEMENT_DATA: ::std::os::raw::c_uint =
         33554432;
     pub const NS_STYLE_RELEVANT_LINK_VISITED: ::std::os::raw::c_uint =
         67108864;
     pub const NS_STYLE_IS_STYLE_IF_VISITED: ::std::os::raw::c_uint =
@@ -1268,16 +1260,24 @@ pub mod root {
                 pub mGlobalObject: *mut root::nsISupports,
             }
             #[test]
             fn bindgen_test_layout_GlobalObject() {
                 assert_eq!(::std::mem::size_of::<GlobalObject>() , 40usize);
                 assert_eq!(::std::mem::align_of::<GlobalObject>() , 8usize);
             }
             #[repr(C)]
+            #[derive(Debug, Copy)]
+            pub struct DocGroup {
+                pub _address: u8,
+            }
+            impl Clone for DocGroup {
+                fn clone(&self) -> Self { *self }
+            }
+            #[repr(C)]
             pub struct DispatcherTrait__bindgen_vtable {
             }
             #[repr(C)]
             #[derive(Debug, Copy)]
             pub struct DispatcherTrait {
                 pub vtable_: *const DispatcherTrait__bindgen_vtable,
             }
             #[test]
@@ -1310,24 +1310,16 @@ pub mod root {
             #[repr(C)]
             #[derive(Debug, Copy)]
             pub struct AudioContext {
                 pub _address: u8,
             }
             impl Clone for AudioContext {
                 fn clone(&self) -> Self { *self }
             }
-            #[repr(C)]
-            #[derive(Debug, Copy)]
-            pub struct DocGroup {
-                pub _address: u8,
-            }
-            impl Clone for DocGroup {
-                fn clone(&self) -> Self { *self }
-            }
             pub const ReferrerPolicy_RP_Default:
                       root::mozilla::dom::ReferrerPolicy =
                 ReferrerPolicy::RP_No_Referrer_When_Downgrade;
             #[repr(u32)]
             #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
             pub enum ReferrerPolicy {
                 RP_No_Referrer = 2,
                 RP_Origin = 3,
@@ -2725,25 +2717,28 @@ pub mod root {
             InlineStart = 3,
             InlineEnd = 4,
             Both = 5,
             Line = 8,
             Max = 13,
         }
         #[repr(u8)]
         #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
-        pub enum StyleClipPathGeometryBox {
-            NoBox = 0,
-            Content = 1,
-            Padding = 2,
-            Border = 3,
-            Margin = 4,
-            Fill = 5,
-            Stroke = 6,
-            View = 7,
+        pub enum StyleGeometryBox {
+            Content = 0,
+            Padding = 1,
+            Border = 2,
+            Margin = 3,
+            Fill = 4,
+            Stroke = 5,
+            View = 6,
+            NoClip = 7,
+            Text = 8,
+            NoBox = 9,
+            MozAlmostPadding = 127,
         }
         #[repr(u8)]
         #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
         pub enum StyleFillRule { Nonzero = 0, Evenodd = 1, }
         #[repr(u8)]
         #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
         pub enum StyleFloat {
             None = 0,
@@ -2827,52 +2822,53 @@ pub mod root {
             Horizontal = 2,
             Vertical = 3,
         }
         #[repr(u8)]
         #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
         pub enum StyleDisplay {
             None = 0,
             Block = 1,
-            Inline = 2,
-            InlineBlock = 3,
-            ListItem = 4,
-            Table = 5,
-            InlineTable = 6,
-            TableRowGroup = 7,
-            TableColumn = 8,
-            TableColumnGroup = 9,
-            TableHeaderGroup = 10,
-            TableFooterGroup = 11,
-            TableRow = 12,
-            TableCell = 13,
-            TableCaption = 14,
-            Flex = 15,
-            InlineFlex = 16,
-            Grid = 17,
-            InlineGrid = 18,
-            Ruby = 19,
-            RubyBase = 20,
-            RubyBaseContainer = 21,
-            RubyText = 22,
-            RubyTextContainer = 23,
-            Contents = 24,
-            WebkitBox = 25,
-            WebkitInlineBox = 26,
-            MozBox = 27,
-            MozInlineBox = 28,
-            MozGrid = 29,
-            MozInlineGrid = 30,
-            MozGridGroup = 31,
-            MozGridLine = 32,
-            MozStack = 33,
-            MozInlineStack = 34,
-            MozDeck = 35,
-            MozGroupbox = 36,
-            MozPopup = 37,
+            FlowRoot = 2,
+            Inline = 3,
+            InlineBlock = 4,
+            ListItem = 5,
+            Table = 6,
+            InlineTable = 7,
+            TableRowGroup = 8,
+            TableColumn = 9,
+            TableColumnGroup = 10,
+            TableHeaderGroup = 11,
+            TableFooterGroup = 12,
+            TableRow = 13,
+            TableCell = 14,
+            TableCaption = 15,
+            Flex = 16,
+            InlineFlex = 17,
+            Grid = 18,
+            InlineGrid = 19,
+            Ruby = 20,
+            RubyBase = 21,
+            RubyBaseContainer = 22,
+            RubyText = 23,
+            RubyTextContainer = 24,
+            Contents = 25,
+            WebkitBox = 26,
+            WebkitInlineBox = 27,
+            MozBox = 28,
+            MozInlineBox = 29,
+            MozGrid = 30,
+            MozInlineGrid = 31,
+            MozGridGroup = 32,
+            MozGridLine = 33,
+            MozStack = 34,
+            MozInlineStack = 35,
+            MozDeck = 36,
+            MozGroupbox = 37,
+            MozPopup = 38,
         }
         /**
  * A class for holding strong references to handle-managed objects.
  *
  * This is intended for use with objects like RestyleManagerHandle,
  * where the handle type is not a pointer but which can still have
  * ->AddRef() and ->Release() called on it.
  */
@@ -3233,24 +3229,24 @@ pub mod root {
         #[derive(Debug, Copy, Clone)]
         pub struct StyleShapeSource__bindgen_ty_1<ReferenceBox> {
             pub mBasicShape: root::__BindgenUnionField<*mut root::mozilla::StyleBasicShape>,
             pub mURL: root::__BindgenUnionField<*mut root::mozilla::css::URLValue>,
             pub bindgen_union_field: u64,
             pub _phantom_0: ::std::marker::PhantomData<ReferenceBox>,
         }
         pub type StyleClipPath =
-            root::mozilla::StyleShapeSource<root::mozilla::StyleClipPathGeometryBox>;
+            root::mozilla::StyleShapeSource<root::mozilla::StyleGeometryBox>;
         pub type StyleShapeOutside =
             root::mozilla::StyleShapeSource<root::mozilla::StyleShapeOutsideShapeBox>;
         #[test]
         fn __bindgen_test_layout_template_2() {
-            assert_eq!(::std::mem::size_of::<root::mozilla::StyleShapeSource<root::mozilla::StyleClipPathGeometryBox>>()
+            assert_eq!(::std::mem::size_of::<root::mozilla::StyleShapeSource<root::mozilla::StyleGeometryBox>>()
                        , 16usize);
-            assert_eq!(::std::mem::align_of::<root::mozilla::StyleShapeSource<root::mozilla::StyleClipPathGeometryBox>>()
+            assert_eq!(::std::mem::align_of::<root::mozilla::StyleShapeSource<root::mozilla::StyleGeometryBox>>()
                        , 8usize);
         }
         #[test]
         fn __bindgen_test_layout_template_3() {
             assert_eq!(::std::mem::size_of::<root::mozilla::StyleShapeSource<root::mozilla::StyleShapeOutsideShapeBox>>()
                        , 16usize);
             assert_eq!(::std::mem::align_of::<root::mozilla::StyleShapeSource<root::mozilla::StyleShapeOutsideShapeBox>>()
                        , 8usize);
@@ -8623,73 +8619,73 @@ pub mod root {
     #[repr(C)]
     #[derive(Debug, Copy)]
     pub struct nsDOMMutationObserver {
         pub _address: u8,
     }
     impl Clone for nsDOMMutationObserver {
         fn clone(&self) -> Self { *self }
     }
-    pub const NODE_HAS_LISTENERMANAGER: root::_bindgen_ty_137 =
-        _bindgen_ty_137::NODE_HAS_LISTENERMANAGER;
-    pub const NODE_HAS_PROPERTIES: root::_bindgen_ty_137 =
-        _bindgen_ty_137::NODE_HAS_PROPERTIES;
-    pub const NODE_IS_ANONYMOUS_ROOT: root::_bindgen_ty_137 =
-        _bindgen_ty_137::NODE_IS_ANONYMOUS_ROOT;
-    pub const NODE_IS_IN_NATIVE_ANONYMOUS_SUBTREE: root::_bindgen_ty_137 =
-        _bindgen_ty_137::NODE_IS_IN_NATIVE_ANONYMOUS_SUBTREE;
-    pub const NODE_IS_NATIVE_ANONYMOUS_ROOT: root::_bindgen_ty_137 =
-        _bindgen_ty_137::NODE_IS_NATIVE_ANONYMOUS_ROOT;
-    pub const NODE_FORCE_XBL_BINDINGS: root::_bindgen_ty_137 =
-        _bindgen_ty_137::NODE_FORCE_XBL_BINDINGS;
-    pub const NODE_MAY_BE_IN_BINDING_MNGR: root::_bindgen_ty_137 =
-        _bindgen_ty_137::NODE_MAY_BE_IN_BINDING_MNGR;
-    pub const NODE_IS_EDITABLE: root::_bindgen_ty_137 =
-        _bindgen_ty_137::NODE_IS_EDITABLE;
-    pub const NODE_MAY_HAVE_CLASS: root::_bindgen_ty_137 =
-        _bindgen_ty_137::NODE_MAY_HAVE_CLASS;
-    pub const NODE_IS_IN_SHADOW_TREE: root::_bindgen_ty_137 =
-        _bindgen_ty_137::NODE_IS_IN_SHADOW_TREE;
-    pub const NODE_HAS_EMPTY_SELECTOR: root::_bindgen_ty_137 =
-        _bindgen_ty_137::NODE_HAS_EMPTY_SELECTOR;
-    pub const NODE_HAS_SLOW_SELECTOR: root::_bindgen_ty_137 =
-        _bindgen_ty_137::NODE_HAS_SLOW_SELECTOR;
-    pub const NODE_HAS_EDGE_CHILD_SELECTOR: root::_bindgen_ty_137 =
-        _bindgen_ty_137::NODE_HAS_EDGE_CHILD_SELECTOR;
-    pub const NODE_HAS_SLOW_SELECTOR_LATER_SIBLINGS: root::_bindgen_ty_137 =
-        _bindgen_ty_137::NODE_HAS_SLOW_SELECTOR_LATER_SIBLINGS;
-    pub const NODE_ALL_SELECTOR_FLAGS: root::_bindgen_ty_137 =
-        _bindgen_ty_137::NODE_ALL_SELECTOR_FLAGS;
-    pub const NODE_NEEDS_FRAME: root::_bindgen_ty_137 =
-        _bindgen_ty_137::NODE_NEEDS_FRAME;
-    pub const NODE_DESCENDANTS_NEED_FRAMES: root::_bindgen_ty_137 =
-        _bindgen_ty_137::NODE_DESCENDANTS_NEED_FRAMES;
-    pub const NODE_HAS_ACCESSKEY: root::_bindgen_ty_137 =
-        _bindgen_ty_137::NODE_HAS_ACCESSKEY;
-    pub const NODE_HAS_DIRECTION_RTL: root::_bindgen_ty_137 =
-        _bindgen_ty_137::NODE_HAS_DIRECTION_RTL;
-    pub const NODE_HAS_DIRECTION_LTR: root::_bindgen_ty_137 =
-        _bindgen_ty_137::NODE_HAS_DIRECTION_LTR;
-    pub const NODE_ALL_DIRECTION_FLAGS: root::_bindgen_ty_137 =
-        _bindgen_ty_137::NODE_ALL_DIRECTION_FLAGS;
-    pub const NODE_CHROME_ONLY_ACCESS: root::_bindgen_ty_137 =
-        _bindgen_ty_137::NODE_CHROME_ONLY_ACCESS;
-    pub const NODE_IS_ROOT_OF_CHROME_ONLY_ACCESS: root::_bindgen_ty_137 =
-        _bindgen_ty_137::NODE_IS_ROOT_OF_CHROME_ONLY_ACCESS;
-    pub const NODE_SHARED_RESTYLE_BIT_1: root::_bindgen_ty_137 =
-        _bindgen_ty_137::NODE_SHARED_RESTYLE_BIT_1;
-    pub const NODE_SHARED_RESTYLE_BIT_2: root::_bindgen_ty_137 =
-        _bindgen_ty_137::NODE_SHARED_RESTYLE_BIT_2;
-    pub const NODE_HAS_DIRTY_DESCENDANTS_FOR_SERVO: root::_bindgen_ty_137 =
-        _bindgen_ty_137::NODE_SHARED_RESTYLE_BIT_1;
-    pub const NODE_TYPE_SPECIFIC_BITS_OFFSET: root::_bindgen_ty_137 =
-        _bindgen_ty_137::NODE_TYPE_SPECIFIC_BITS_OFFSET;
+    pub const NODE_HAS_LISTENERMANAGER: root::_bindgen_ty_155 =
+        _bindgen_ty_155::NODE_HAS_LISTENERMANAGER;
+    pub const NODE_HAS_PROPERTIES: root::_bindgen_ty_155 =
+        _bindgen_ty_155::NODE_HAS_PROPERTIES;
+    pub const NODE_IS_ANONYMOUS_ROOT: root::_bindgen_ty_155 =
+        _bindgen_ty_155::NODE_IS_ANONYMOUS_ROOT;
+    pub const NODE_IS_IN_NATIVE_ANONYMOUS_SUBTREE: root::_bindgen_ty_155 =
+        _bindgen_ty_155::NODE_IS_IN_NATIVE_ANONYMOUS_SUBTREE;
+    pub const NODE_IS_NATIVE_ANONYMOUS_ROOT: root::_bindgen_ty_155 =
+        _bindgen_ty_155::NODE_IS_NATIVE_ANONYMOUS_ROOT;
+    pub const NODE_FORCE_XBL_BINDINGS: root::_bindgen_ty_155 =
+        _bindgen_ty_155::NODE_FORCE_XBL_BINDINGS;
+    pub const NODE_MAY_BE_IN_BINDING_MNGR: root::_bindgen_ty_155 =
+        _bindgen_ty_155::NODE_MAY_BE_IN_BINDING_MNGR;
+    pub const NODE_IS_EDITABLE: root::_bindgen_ty_155 =
+        _bindgen_ty_155::NODE_IS_EDITABLE;
+    pub const NODE_MAY_HAVE_CLASS: root::_bindgen_ty_155 =
+        _bindgen_ty_155::NODE_MAY_HAVE_CLASS;
+    pub const NODE_IS_IN_SHADOW_TREE: root::_bindgen_ty_155 =
+        _bindgen_ty_155::NODE_IS_IN_SHADOW_TREE;
+    pub const NODE_HAS_EMPTY_SELECTOR: root::_bindgen_ty_155 =
+        _bindgen_ty_155::NODE_HAS_EMPTY_SELECTOR;
+    pub const NODE_HAS_SLOW_SELECTOR: root::_bindgen_ty_155 =
+        _bindgen_ty_155::NODE_HAS_SLOW_SELECTOR;
+    pub const NODE_HAS_EDGE_CHILD_SELECTOR: root::_bindgen_ty_155 =
+        _bindgen_ty_155::NODE_HAS_EDGE_CHILD_SELECTOR;
+    pub const NODE_HAS_SLOW_SELECTOR_LATER_SIBLINGS: root::_bindgen_ty_155 =
+        _bindgen_ty_155::NODE_HAS_SLOW_SELECTOR_LATER_SIBLINGS;
+    pub const NODE_ALL_SELECTOR_FLAGS: root::_bindgen_ty_155 =
+        _bindgen_ty_155::NODE_ALL_SELECTOR_FLAGS;
+    pub const NODE_NEEDS_FRAME: root::_bindgen_ty_155 =
+        _bindgen_ty_155::NODE_NEEDS_FRAME;
+    pub const NODE_DESCENDANTS_NEED_FRAMES: root::_bindgen_ty_155 =
+        _bindgen_ty_155::NODE_DESCENDANTS_NEED_FRAMES;
+    pub const NODE_HAS_ACCESSKEY: root::_bindgen_ty_155 =
+        _bindgen_ty_155::NODE_HAS_ACCESSKEY;
+    pub const NODE_HAS_DIRECTION_RTL: root::_bindgen_ty_155 =
+        _bindgen_ty_155::NODE_HAS_DIRECTION_RTL;
+    pub const NODE_HAS_DIRECTION_LTR: root::_bindgen_ty_155 =
+        _bindgen_ty_155::NODE_HAS_DIRECTION_LTR;
+    pub const NODE_ALL_DIRECTION_FLAGS: root::_bindgen_ty_155 =
+        _bindgen_ty_155::NODE_ALL_DIRECTION_FLAGS;
+    pub const NODE_CHROME_ONLY_ACCESS: root::_bindgen_ty_155 =
+        _bindgen_ty_155::NODE_CHROME_ONLY_ACCESS;
+    pub const NODE_IS_ROOT_OF_CHROME_ONLY_ACCESS: root::_bindgen_ty_155 =
+        _bindgen_ty_155::NODE_IS_ROOT_OF_CHROME_ONLY_ACCESS;
+    pub const NODE_SHARED_RESTYLE_BIT_1: root::_bindgen_ty_155 =
+        _bindgen_ty_155::NODE_SHARED_RESTYLE_BIT_1;
+    pub const NODE_SHARED_RESTYLE_BIT_2: root::_bindgen_ty_155 =
+        _bindgen_ty_155::NODE_SHARED_RESTYLE_BIT_2;
+    pub const NODE_HAS_DIRTY_DESCENDANTS_FOR_SERVO: root::_bindgen_ty_155 =
+        _bindgen_ty_155::NODE_SHARED_RESTYLE_BIT_1;
+    pub const NODE_TYPE_SPECIFIC_BITS_OFFSET: root::_bindgen_ty_155 =
+        _bindgen_ty_155::NODE_TYPE_SPECIFIC_BITS_OFFSET;
     #[repr(u32)]
     #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
-    pub enum _bindgen_ty_137 {
+    pub enum _bindgen_ty_155 {
         NODE_HAS_LISTENERMANAGER = 4,
         NODE_HAS_PROPERTIES = 8,
         NODE_IS_ANONYMOUS_ROOT = 16,
         NODE_IS_IN_NATIVE_ANONYMOUS_SUBTREE = 32,
         NODE_IS_NATIVE_ANONYMOUS_ROOT = 64,
         NODE_FORCE_XBL_BINDINGS = 128,
         NODE_MAY_BE_IN_BINDING_MNGR = 256,
         NODE_IS_EDITABLE = 512,
@@ -10074,524 +10070,526 @@ pub mod root {
         eCSSKeyword_first = 241,
         eCSSKeyword_fit_content = 242,
         eCSSKeyword_fixed = 243,
         eCSSKeyword_flat = 244,
         eCSSKeyword_flex = 245,
         eCSSKeyword_flex_end = 246,
         eCSSKeyword_flex_start = 247,
         eCSSKeyword_flip = 248,
-        eCSSKeyword_forwards = 249,
-        eCSSKeyword_fraktur = 250,
-        eCSSKeyword_from_image = 251,
-        eCSSKeyword_full_width = 252,
-        eCSSKeyword_fullscreen = 253,
-        eCSSKeyword_grab = 254,
-        eCSSKeyword_grabbing = 255,
-        eCSSKeyword_grad = 256,
-        eCSSKeyword_grayscale = 257,
-        eCSSKeyword_graytext = 258,
-        eCSSKeyword_grid = 259,
-        eCSSKeyword_groove = 260,
-        eCSSKeyword_hard_light = 261,
-        eCSSKeyword_hebrew = 262,
-        eCSSKeyword_help = 263,
-        eCSSKeyword_hidden = 264,
-        eCSSKeyword_hide = 265,
-        eCSSKeyword_highlight = 266,
-        eCSSKeyword_highlighttext = 267,
-        eCSSKeyword_historical_forms = 268,
-        eCSSKeyword_historical_ligatures = 269,
-        eCSSKeyword_horizontal = 270,
-        eCSSKeyword_horizontal_tb = 271,
-        eCSSKeyword_hue = 272,
-        eCSSKeyword_hue_rotate = 273,
-        eCSSKeyword_hz = 274,
-        eCSSKeyword_icon = 275,
-        eCSSKeyword_ignore = 276,
-        eCSSKeyword_in = 277,
-        eCSSKeyword_interlace = 278,
-        eCSSKeyword_inactive = 279,
-        eCSSKeyword_inactiveborder = 280,
-        eCSSKeyword_inactivecaption = 281,
-        eCSSKeyword_inactivecaptiontext = 282,
-        eCSSKeyword_infinite = 283,
-        eCSSKeyword_infobackground = 284,
-        eCSSKeyword_infotext = 285,
-        eCSSKeyword_inherit = 286,
-        eCSSKeyword_initial = 287,
-        eCSSKeyword_inline = 288,
-        eCSSKeyword_inline_axis = 289,
-        eCSSKeyword_inline_block = 290,
-        eCSSKeyword_inline_end = 291,
-        eCSSKeyword_inline_flex = 292,
-        eCSSKeyword_inline_grid = 293,
-        eCSSKeyword_inline_start = 294,
-        eCSSKeyword_inline_table = 295,
-        eCSSKeyword_inset = 296,
-        eCSSKeyword_inside = 297,
-        eCSSKeyword_interpolatematrix = 298,
-        eCSSKeyword_accumulatematrix = 299,
-        eCSSKeyword_intersect = 300,
-        eCSSKeyword_isolate = 301,
-        eCSSKeyword_isolate_override = 302,
-        eCSSKeyword_invert = 303,
-        eCSSKeyword_italic = 304,
-        eCSSKeyword_japanese_formal = 305,
-        eCSSKeyword_japanese_informal = 306,
-        eCSSKeyword_jis78 = 307,
-        eCSSKeyword_jis83 = 308,
-        eCSSKeyword_jis90 = 309,
-        eCSSKeyword_jis04 = 310,
-        eCSSKeyword_justify = 311,
-        eCSSKeyword_keep_all = 312,
-        eCSSKeyword_khz = 313,
-        eCSSKeyword_korean_hangul_formal = 314,
-        eCSSKeyword_korean_hanja_formal = 315,
-        eCSSKeyword_korean_hanja_informal = 316,
-        eCSSKeyword_landscape = 317,
-        eCSSKeyword_large = 318,
-        eCSSKeyword_larger = 319,
-        eCSSKeyword_last = 320,
-        eCSSKeyword_last_baseline = 321,
-        eCSSKeyword_layout = 322,
-        eCSSKeyword_left = 323,
-        eCSSKeyword_legacy = 324,
-        eCSSKeyword_lighten = 325,
-        eCSSKeyword_lighter = 326,
-        eCSSKeyword_line_through = 327,
-        eCSSKeyword_linear = 328,
-        eCSSKeyword_lining_nums = 329,
-        eCSSKeyword_list_item = 330,
-        eCSSKeyword_local = 331,
-        eCSSKeyword_logical = 332,
-        eCSSKeyword_looped = 333,
-        eCSSKeyword_lowercase = 334,
-        eCSSKeyword_lr = 335,
-        eCSSKeyword_lr_tb = 336,
-        eCSSKeyword_ltr = 337,
-        eCSSKeyword_luminance = 338,
-        eCSSKeyword_luminosity = 339,
-        eCSSKeyword_mandatory = 340,
-        eCSSKeyword_manipulation = 341,
-        eCSSKeyword_manual = 342,
-        eCSSKeyword_margin_box = 343,
-        eCSSKeyword_markers = 344,
-        eCSSKeyword_match_parent = 345,
-        eCSSKeyword_match_source = 346,
-        eCSSKeyword_matrix = 347,
-        eCSSKeyword_matrix3d = 348,
-        eCSSKeyword_max_content = 349,
-        eCSSKeyword_medium = 350,
-        eCSSKeyword_menu = 351,
-        eCSSKeyword_menutext = 352,
-        eCSSKeyword_message_box = 353,
-        eCSSKeyword_middle = 354,
-        eCSSKeyword_min_content = 355,
-        eCSSKeyword_minmax = 356,
-        eCSSKeyword_mix = 357,
-        eCSSKeyword_mixed = 358,
-        eCSSKeyword_mm = 359,
-        eCSSKeyword_monospace = 360,
-        eCSSKeyword_move = 361,
-        eCSSKeyword_ms = 362,
-        eCSSKeyword_multiply = 363,
-        eCSSKeyword_n_resize = 364,
-        eCSSKeyword_narrower = 365,
-        eCSSKeyword_ne_resize = 366,
-        eCSSKeyword_nesw_resize = 367,
-        eCSSKeyword_no_close_quote = 368,
-        eCSSKeyword_no_common_ligatures = 369,
-        eCSSKeyword_no_contextual = 370,
-        eCSSKeyword_no_discretionary_ligatures = 371,
-        eCSSKeyword_no_drag = 372,
-        eCSSKeyword_no_drop = 373,
-        eCSSKeyword_no_historical_ligatures = 374,
-        eCSSKeyword_no_open_quote = 375,
-        eCSSKeyword_no_repeat = 376,
-        eCSSKeyword_none = 377,
-        eCSSKeyword_normal = 378,
-        eCSSKeyword_not_allowed = 379,
-        eCSSKeyword_nowrap = 380,
-        eCSSKeyword_numeric = 381,
-        eCSSKeyword_ns_resize = 382,
-        eCSSKeyword_nw_resize = 383,
-        eCSSKeyword_nwse_resize = 384,
-        eCSSKeyword_oblique = 385,
-        eCSSKeyword_oldstyle_nums = 386,
-        eCSSKeyword_opacity = 387,
-        eCSSKeyword_open = 388,
-        eCSSKeyword_open_quote = 389,
-        eCSSKeyword_optional = 390,
-        eCSSKeyword_ordinal = 391,
-        eCSSKeyword_ornaments = 392,
-        eCSSKeyword_outset = 393,
-        eCSSKeyword_outside = 394,
-        eCSSKeyword_over = 395,
-        eCSSKeyword_overlay = 396,
-        eCSSKeyword_overline = 397,
-        eCSSKeyword_paint = 398,
-        eCSSKeyword_padding_box = 399,
-        eCSSKeyword_painted = 400,
-        eCSSKeyword_pan_x = 401,
-        eCSSKeyword_pan_y = 402,
-        eCSSKeyword_paused = 403,
-        eCSSKeyword_pc = 404,
-        eCSSKeyword_perspective = 405,
-        eCSSKeyword_petite_caps = 406,
-        eCSSKeyword_physical = 407,
-        eCSSKeyword_plaintext = 408,
-        eCSSKeyword_pointer = 409,
-        eCSSKeyword_polygon = 410,
-        eCSSKeyword_portrait = 411,
-        eCSSKeyword_pre = 412,
-        eCSSKeyword_pre_wrap = 413,
-        eCSSKeyword_pre_line = 414,
-        eCSSKeyword_preserve_3d = 415,
-        eCSSKeyword_progress = 416,
-        eCSSKeyword_progressive = 417,
-        eCSSKeyword_proportional_nums = 418,
-        eCSSKeyword_proportional_width = 419,
-        eCSSKeyword_proximity = 420,
-        eCSSKeyword_pt = 421,
-        eCSSKeyword_px = 422,
-        eCSSKeyword_rad = 423,
-        eCSSKeyword_read_only = 424,
-        eCSSKeyword_read_write = 425,
-        eCSSKeyword_relative = 426,
-        eCSSKeyword_repeat = 427,
-        eCSSKeyword_repeat_x = 428,
-        eCSSKeyword_repeat_y = 429,
-        eCSSKeyword_reverse = 430,
-        eCSSKeyword_ridge = 431,
-        eCSSKeyword_right = 432,
-        eCSSKeyword_rl = 433,
-        eCSSKeyword_rl_tb = 434,
-        eCSSKeyword_rotate = 435,
-        eCSSKeyword_rotate3d = 436,
-        eCSSKeyword_rotatex = 437,
-        eCSSKeyword_rotatey = 438,
-        eCSSKeyword_rotatez = 439,
-        eCSSKeyword_round = 440,
-        eCSSKeyword_row = 441,
-        eCSSKeyword_row_resize = 442,
-        eCSSKeyword_row_reverse = 443,
-        eCSSKeyword_rtl = 444,
-        eCSSKeyword_ruby = 445,
-        eCSSKeyword_ruby_base = 446,
-        eCSSKeyword_ruby_base_container = 447,
-        eCSSKeyword_ruby_text = 448,
-        eCSSKeyword_ruby_text_container = 449,
-        eCSSKeyword_running = 450,
-        eCSSKeyword_s = 451,
-        eCSSKeyword_s_resize = 452,
-        eCSSKeyword_safe = 453,
-        eCSSKeyword_saturate = 454,
-        eCSSKeyword_saturation = 455,
-        eCSSKeyword_scale = 456,
-        eCSSKeyword_scale_down = 457,
-        eCSSKeyword_scale3d = 458,
-        eCSSKeyword_scalex = 459,
-        eCSSKeyword_scaley = 460,
-        eCSSKeyword_scalez = 461,
-        eCSSKeyword_screen = 462,
-        eCSSKeyword_script = 463,
-        eCSSKeyword_scroll = 464,
-        eCSSKeyword_scrollbar = 465,
-        eCSSKeyword_scrollbar_small = 466,
-        eCSSKeyword_scrollbar_horizontal = 467,
-        eCSSKeyword_scrollbar_vertical = 468,
-        eCSSKeyword_se_resize = 469,
-        eCSSKeyword_select_after = 470,
-        eCSSKeyword_select_all = 471,
-        eCSSKeyword_select_before = 472,
-        eCSSKeyword_select_menu = 473,
-        eCSSKeyword_select_same = 474,
-        eCSSKeyword_self_end = 475,
-        eCSSKeyword_self_start = 476,
-        eCSSKeyword_semi_condensed = 477,
-        eCSSKeyword_semi_expanded = 478,
-        eCSSKeyword_separate = 479,
-        eCSSKeyword_sepia = 480,
-        eCSSKeyword_serif = 481,
-        eCSSKeyword_sesame = 482,
-        eCSSKeyword_show = 483,
-        eCSSKeyword_sideways = 484,
-        eCSSKeyword_sideways_lr = 485,
-        eCSSKeyword_sideways_right = 486,
-        eCSSKeyword_sideways_rl = 487,
-        eCSSKeyword_simp_chinese_formal = 488,
-        eCSSKeyword_simp_chinese_informal = 489,
-        eCSSKeyword_simplified = 490,
-        eCSSKeyword_skew = 491,
-        eCSSKeyword_skewx = 492,
-        eCSSKeyword_skewy = 493,
-        eCSSKeyword_slashed_zero = 494,
-        eCSSKeyword_slice = 495,
-        eCSSKeyword_small = 496,
-        eCSSKeyword_small_caps = 497,
-        eCSSKeyword_small_caption = 498,
-        eCSSKeyword_smaller = 499,
-        eCSSKeyword_smooth = 500,
-        eCSSKeyword_soft = 501,
-        eCSSKeyword_soft_light = 502,
-        eCSSKeyword_solid = 503,
-        eCSSKeyword_space_around = 504,
-        eCSSKeyword_space_between = 505,
-        eCSSKeyword_space_evenly = 506,
-        eCSSKeyword_span = 507,
-        eCSSKeyword_spell_out = 508,
-        eCSSKeyword_square = 509,
-        eCSSKeyword_stacked_fractions = 510,
-        eCSSKeyword_start = 511,
-        eCSSKeyword_static = 512,
-        eCSSKeyword_standalone = 513,
-        eCSSKeyword_status_bar = 514,
-        eCSSKeyword_step_end = 515,
-        eCSSKeyword_step_start = 516,
-        eCSSKeyword_sticky = 517,
-        eCSSKeyword_stretch = 518,
-        eCSSKeyword_stretch_to_fit = 519,
-        eCSSKeyword_stretched = 520,
-        eCSSKeyword_strict = 521,
-        eCSSKeyword_stroke = 522,
-        eCSSKeyword_stroke_box = 523,
-        eCSSKeyword_style = 524,
-        eCSSKeyword_styleset = 525,
-        eCSSKeyword_stylistic = 526,
-        eCSSKeyword_sub = 527,
-        eCSSKeyword_subgrid = 528,
-        eCSSKeyword_subtract = 529,
-        eCSSKeyword_super = 530,
-        eCSSKeyword_sw_resize = 531,
-        eCSSKeyword_swash = 532,
-        eCSSKeyword_swap = 533,
-        eCSSKeyword_table = 534,
-        eCSSKeyword_table_caption = 535,
-        eCSSKeyword_table_cell = 536,
-        eCSSKeyword_table_column = 537,
-        eCSSKeyword_table_column_group = 538,
-        eCSSKeyword_table_footer_group = 539,
-        eCSSKeyword_table_header_group = 540,
-        eCSSKeyword_table_row = 541,
-        eCSSKeyword_table_row_group = 542,
-        eCSSKeyword_tabular_nums = 543,
-        eCSSKeyword_tailed = 544,
-        eCSSKeyword_tb = 545,
-        eCSSKeyword_tb_rl = 546,
-        eCSSKeyword_text = 547,
-        eCSSKeyword_text_bottom = 548,
-        eCSSKeyword_text_top = 549,
-        eCSSKeyword_thick = 550,
-        eCSSKeyword_thin = 551,
-        eCSSKeyword_threeddarkshadow = 552,
-        eCSSKeyword_threedface = 553,
-        eCSSKeyword_threedhighlight = 554,
-        eCSSKeyword_threedlightshadow = 555,
-        eCSSKeyword_threedshadow = 556,
-        eCSSKeyword_titling_caps = 557,
-        eCSSKeyword_toggle = 558,
-        eCSSKeyword_top = 559,
-        eCSSKeyword_top_outside = 560,
-        eCSSKeyword_trad_chinese_formal = 561,
-        eCSSKeyword_trad_chinese_informal = 562,
-        eCSSKeyword_traditional = 563,
-        eCSSKeyword_translate = 564,
-        eCSSKeyword_translate3d = 565,
-        eCSSKeyword_translatex = 566,
-        eCSSKeyword_translatey = 567,
-        eCSSKeyword_translatez = 568,
-        eCSSKeyword_transparent = 569,
-        eCSSKeyword_triangle = 570,
-        eCSSKeyword_tri_state = 571,
-        eCSSKeyword_ultra_condensed = 572,
-        eCSSKeyword_ultra_expanded = 573,
-        eCSSKeyword_under = 574,
-        eCSSKeyword_underline = 575,
-        eCSSKeyword_unicase = 576,
-        eCSSKeyword_unsafe = 577,
-        eCSSKeyword_unset = 578,
-        eCSSKeyword_uppercase = 579,
-        eCSSKeyword_upright = 580,
-        eCSSKeyword_vertical = 581,
-        eCSSKeyword_vertical_lr = 582,
-        eCSSKeyword_vertical_rl = 583,
-        eCSSKeyword_vertical_text = 584,
-        eCSSKeyword_view_box = 585,
-        eCSSKeyword_visible = 586,
-        eCSSKeyword_visiblefill = 587,
-        eCSSKeyword_visiblepainted = 588,
-        eCSSKeyword_visiblestroke = 589,
-        eCSSKeyword_w_resize = 590,
-        eCSSKeyword_wait = 591,
-        eCSSKeyword_wavy = 592,
-        eCSSKeyword_weight = 593,
-        eCSSKeyword_wider = 594,
-        eCSSKeyword_window = 595,
-        eCSSKeyword_windowframe = 596,
-        eCSSKeyword_windowtext = 597,
-        eCSSKeyword_words = 598,
-        eCSSKeyword_wrap = 599,
-        eCSSKeyword_wrap_reverse = 600,
-        eCSSKeyword_write_only = 601,
-        eCSSKeyword_x_large = 602,
-        eCSSKeyword_x_small = 603,
-        eCSSKeyword_xx_large = 604,
-        eCSSKeyword_xx_small = 605,
-        eCSSKeyword_zoom_in = 606,
-        eCSSKeyword_zoom_out = 607,
-        eCSSKeyword_radio = 608,
-        eCSSKeyword_checkbox = 609,
-        eCSSKeyword_button_bevel = 610,
-        eCSSKeyword_toolbox = 611,
-        eCSSKeyword_toolbar = 612,
-        eCSSKeyword_toolbarbutton = 613,
-        eCSSKeyword_toolbargripper = 614,
-        eCSSKeyword_dualbutton = 615,
-        eCSSKeyword_toolbarbutton_dropdown = 616,
-        eCSSKeyword_button_arrow_up = 617,
-        eCSSKeyword_button_arrow_down = 618,
-        eCSSKeyword_button_arrow_next = 619,
-        eCSSKeyword_button_arrow_previous = 620,
-        eCSSKeyword_separator = 621,
-        eCSSKeyword_splitter = 622,
-        eCSSKeyword_statusbar = 623,
-        eCSSKeyword_statusbarpanel = 624,
-        eCSSKeyword_resizerpanel = 625,
-        eCSSKeyword_resizer = 626,
-        eCSSKeyword_listbox = 627,
-        eCSSKeyword_listitem = 628,
-        eCSSKeyword_numbers = 629,
-        eCSSKeyword_number_input = 630,
-        eCSSKeyword_treeview = 631,
-        eCSSKeyword_treeitem = 632,
-        eCSSKeyword_treetwisty = 633,
-        eCSSKeyword_treetwistyopen = 634,
-        eCSSKeyword_treeline = 635,
-        eCSSKeyword_treeheader = 636,
-        eCSSKeyword_treeheadercell = 637,
-        eCSSKeyword_treeheadersortarrow = 638,
-        eCSSKeyword_progressbar = 639,
-        eCSSKeyword_progressbar_vertical = 640,
-        eCSSKeyword_progresschunk = 641,
-        eCSSKeyword_progresschunk_vertical = 642,
-        eCSSKeyword_tab = 643,
-        eCSSKeyword_tabpanels = 644,
-        eCSSKeyword_tabpanel = 645,
-        eCSSKeyword_tab_scroll_arrow_back = 646,
-        eCSSKeyword_tab_scroll_arrow_forward = 647,
-        eCSSKeyword_tooltip = 648,
-        eCSSKeyword_spinner = 649,
-        eCSSKeyword_spinner_upbutton = 650,
-        eCSSKeyword_spinner_downbutton = 651,
-        eCSSKeyword_spinner_textfield = 652,
-        eCSSKeyword_scrollbarbutton_up = 653,
-        eCSSKeyword_scrollbarbutton_down = 654,
-        eCSSKeyword_scrollbarbutton_left = 655,
-        eCSSKeyword_scrollbarbutton_right = 656,
-        eCSSKeyword_scrollbartrack_horizontal = 657,
-        eCSSKeyword_scrollbartrack_vertical = 658,
-        eCSSKeyword_scrollbarthumb_horizontal = 659,
-        eCSSKeyword_scrollbarthumb_vertical = 660,
-        eCSSKeyword_sheet = 661,
-        eCSSKeyword_textfield = 662,
-        eCSSKeyword_textfield_multiline = 663,
-        eCSSKeyword_caret = 664,
-        eCSSKeyword_searchfield = 665,
-        eCSSKeyword_menubar = 666,
-        eCSSKeyword_menupopup = 667,
-        eCSSKeyword_menuitem = 668,
-        eCSSKeyword_checkmenuitem = 669,
-        eCSSKeyword_radiomenuitem = 670,
-        eCSSKeyword_menucheckbox = 671,
-        eCSSKeyword_menuradio = 672,
-        eCSSKeyword_menuseparator = 673,
-        eCSSKeyword_menuarrow = 674,
-        eCSSKeyword_menuimage = 675,
-        eCSSKeyword_menuitemtext = 676,
-        eCSSKeyword_menulist = 677,
-        eCSSKeyword_menulist_button = 678,
-        eCSSKeyword_menulist_text = 679,
-        eCSSKeyword_menulist_textfield = 680,
-        eCSSKeyword_meterbar = 681,
-        eCSSKeyword_meterchunk = 682,
-        eCSSKeyword_minimal_ui = 683,
-        eCSSKeyword_range = 684,
-        eCSSKeyword_range_thumb = 685,
-        eCSSKeyword_sans_serif = 686,
-        eCSSKeyword_sans_serif_bold_italic = 687,
-        eCSSKeyword_sans_serif_italic = 688,
-        eCSSKeyword_scale_horizontal = 689,
-        eCSSKeyword_scale_vertical = 690,
-        eCSSKeyword_scalethumb_horizontal = 691,
-        eCSSKeyword_scalethumb_vertical = 692,
-        eCSSKeyword_scalethumbstart = 693,
-        eCSSKeyword_scalethumbend = 694,
-        eCSSKeyword_scalethumbtick = 695,
-        eCSSKeyword_groupbox = 696,
-        eCSSKeyword_checkbox_container = 697,
-        eCSSKeyword_radio_container = 698,
-        eCSSKeyword_checkbox_label = 699,
-        eCSSKeyword_radio_label = 700,
-        eCSSKeyword_button_focus = 701,
-        eCSSKeyword__moz_win_media_toolbox = 702,
-        eCSSKeyword__moz_win_communications_toolbox = 703,
-        eCSSKeyword__moz_win_browsertabbar_toolbox = 704,
-        eCSSKeyword__moz_win_mediatext = 705,
-        eCSSKeyword__moz_win_communicationstext = 706,
-        eCSSKeyword__moz_win_glass = 707,
-        eCSSKeyword__moz_win_borderless_glass = 708,
-        eCSSKeyword__moz_window_titlebar = 709,
-        eCSSKeyword__moz_window_titlebar_maximized = 710,
-        eCSSKeyword__moz_window_frame_left = 711,
-        eCSSKeyword__moz_window_frame_right = 712,
-        eCSSKeyword__moz_window_frame_bottom = 713,
-        eCSSKeyword__moz_window_button_close = 714,
-        eCSSKeyword__moz_window_button_minimize = 715,
-        eCSSKeyword__moz_window_button_maximize = 716,
-        eCSSKeyword__moz_window_button_restore = 717,
-        eCSSKeyword__moz_window_button_box = 718,
-        eCSSKeyword__moz_window_button_box_maximized = 719,
-        eCSSKeyword__moz_mac_help_button = 720,
-        eCSSKeyword__moz_win_exclude_glass = 721,
-        eCSSKeyword__moz_mac_vibrancy_light = 722,
-        eCSSKeyword__moz_mac_vibrancy_dark = 723,
-        eCSSKeyword__moz_mac_disclosure_button_closed = 724,
-        eCSSKeyword__moz_mac_disclosure_button_open = 725,
-        eCSSKeyword__moz_mac_source_list = 726,
-        eCSSKeyword__moz_mac_source_list_selection = 727,
-        eCSSKeyword__moz_mac_active_source_list_selection = 728,
-        eCSSKeyword_alphabetic = 729,
-        eCSSKeyword_bevel = 730,
-        eCSSKeyword_butt = 731,
-        eCSSKeyword_central = 732,
-        eCSSKeyword_crispedges = 733,
-        eCSSKeyword_evenodd = 734,
-        eCSSKeyword_geometricprecision = 735,
-        eCSSKeyword_hanging = 736,
-        eCSSKeyword_ideographic = 737,
-        eCSSKeyword_linearrgb = 738,
-        eCSSKeyword_mathematical = 739,
-        eCSSKeyword_miter = 740,
-        eCSSKeyword_no_change = 741,
-        eCSSKeyword_non_scaling_stroke = 742,
-        eCSSKeyword_nonzero = 743,
-        eCSSKeyword_optimizelegibility = 744,
-        eCSSKeyword_optimizequality = 745,
-        eCSSKeyword_optimizespeed = 746,
-        eCSSKeyword_reset_size = 747,
-        eCSSKeyword_srgb = 748,
-        eCSSKeyword_symbolic = 749,
-        eCSSKeyword_symbols = 750,
-        eCSSKeyword_text_after_edge = 751,
-        eCSSKeyword_text_before_edge = 752,
-        eCSSKeyword_use_script = 753,
-        eCSSKeyword__moz_crisp_edges = 754,
-        eCSSKeyword_space = 755,
-        eCSSKeyword_COUNT = 756,
+        eCSSKeyword_flow_root = 249,
+        eCSSKeyword_forwards = 250,
+        eCSSKeyword_fraktur = 251,
+        eCSSKeyword_from_image = 252,
+        eCSSKeyword_full_width = 253,
+        eCSSKeyword_fullscreen = 254,
+        eCSSKeyword_grab = 255,
+        eCSSKeyword_grabbing = 256,
+        eCSSKeyword_grad = 257,
+        eCSSKeyword_grayscale = 258,
+        eCSSKeyword_graytext = 259,
+        eCSSKeyword_grid = 260,
+        eCSSKeyword_groove = 261,
+        eCSSKeyword_hard_light = 262,
+        eCSSKeyword_hebrew = 263,
+        eCSSKeyword_help = 264,
+        eCSSKeyword_hidden = 265,
+        eCSSKeyword_hide = 266,
+        eCSSKeyword_highlight = 267,
+        eCSSKeyword_highlighttext = 268,
+        eCSSKeyword_historical_forms = 269,
+        eCSSKeyword_historical_ligatures = 270,
+        eCSSKeyword_horizontal = 271,
+        eCSSKeyword_horizontal_tb = 272,
+        eCSSKeyword_hue = 273,
+        eCSSKeyword_hue_rotate = 274,
+        eCSSKeyword_hz = 275,
+        eCSSKeyword_icon = 276,
+        eCSSKeyword_ignore = 277,
+        eCSSKeyword_in = 278,
+        eCSSKeyword_interlace = 279,
+        eCSSKeyword_inactive = 280,
+        eCSSKeyword_inactiveborder = 281,
+        eCSSKeyword_inactivecaption = 282,
+        eCSSKeyword_inactivecaptiontext = 283,
+        eCSSKeyword_infinite = 284,
+        eCSSKeyword_infobackground = 285,
+        eCSSKeyword_infotext = 286,
+        eCSSKeyword_inherit = 287,
+        eCSSKeyword_initial = 288,
+        eCSSKeyword_inline = 289,
+        eCSSKeyword_inline_axis = 290,
+        eCSSKeyword_inline_block = 291,
+        eCSSKeyword_inline_end = 292,
+        eCSSKeyword_inline_flex = 293,
+        eCSSKeyword_inline_grid = 294,
+        eCSSKeyword_inline_start = 295,
+        eCSSKeyword_inline_table = 296,
+        eCSSKeyword_inset = 297,
+        eCSSKeyword_inside = 298,
+        eCSSKeyword_interpolatematrix = 299,
+        eCSSKeyword_accumulatematrix = 300,
+        eCSSKeyword_intersect = 301,
+        eCSSKeyword_isolate = 302,
+        eCSSKeyword_isolate_override = 303,
+        eCSSKeyword_invert = 304,
+        eCSSKeyword_italic = 305,
+        eCSSKeyword_japanese_formal = 306,
+        eCSSKeyword_japanese_informal = 307,
+        eCSSKeyword_jis78 = 308,
+        eCSSKeyword_jis83 = 309,
+        eCSSKeyword_jis90 = 310,
+        eCSSKeyword_jis04 = 311,
+        eCSSKeyword_justify = 312,
+        eCSSKeyword_keep_all = 313,
+        eCSSKeyword_khz = 314,
+        eCSSKeyword_korean_hangul_formal = 315,
+        eCSSKeyword_korean_hanja_formal = 316,
+        eCSSKeyword_korean_hanja_informal = 317,
+        eCSSKeyword_landscape = 318,
+        eCSSKeyword_large = 319,
+        eCSSKeyword_larger = 320,
+        eCSSKeyword_last = 321,
+        eCSSKeyword_last_baseline = 322,
+        eCSSKeyword_layout = 323,
+        eCSSKeyword_left = 324,
+        eCSSKeyword_legacy = 325,
+        eCSSKeyword_lighten = 326,
+        eCSSKeyword_lighter = 327,
+        eCSSKeyword_line_through = 328,
+        eCSSKeyword_linear = 329,
+        eCSSKeyword_lining_nums = 330,
+        eCSSKeyword_list_item = 331,
+        eCSSKeyword_local = 332,
+        eCSSKeyword_logical = 333,
+        eCSSKeyword_looped = 334,
+        eCSSKeyword_lowercase = 335,
+        eCSSKeyword_lr = 336,
+        eCSSKeyword_lr_tb = 337,
+        eCSSKeyword_ltr = 338,
+        eCSSKeyword_luminance = 339,
+        eCSSKeyword_luminosity = 340,
+        eCSSKeyword_mandatory = 341,
+        eCSSKeyword_manipulation = 342,
+        eCSSKeyword_manual = 343,
+        eCSSKeyword_margin_box = 344,
+        eCSSKeyword_markers = 345,
+        eCSSKeyword_match_parent = 346,
+        eCSSKeyword_match_source = 347,
+        eCSSKeyword_matrix = 348,
+        eCSSKeyword_matrix3d = 349,
+        eCSSKeyword_max_content = 350,
+        eCSSKeyword_medium = 351,
+        eCSSKeyword_menu = 352,
+        eCSSKeyword_menutext = 353,
+        eCSSKeyword_message_box = 354,
+        eCSSKeyword_middle = 355,
+        eCSSKeyword_min_content = 356,
+        eCSSKeyword_minmax = 357,
+        eCSSKeyword_mix = 358,
+        eCSSKeyword_mixed = 359,
+        eCSSKeyword_mm = 360,
+        eCSSKeyword_monospace = 361,
+        eCSSKeyword_move = 362,
+        eCSSKeyword_ms = 363,
+        eCSSKeyword_multiply = 364,
+        eCSSKeyword_n_resize = 365,
+        eCSSKeyword_narrower = 366,
+        eCSSKeyword_ne_resize = 367,
+        eCSSKeyword_nesw_resize = 368,
+        eCSSKeyword_no_clip = 369,
+        eCSSKeyword_no_close_quote = 370,
+        eCSSKeyword_no_common_ligatures = 371,
+        eCSSKeyword_no_contextual = 372,
+        eCSSKeyword_no_discretionary_ligatures = 373,
+        eCSSKeyword_no_drag = 374,
+        eCSSKeyword_no_drop = 375,
+        eCSSKeyword_no_historical_ligatures = 376,
+        eCSSKeyword_no_open_quote = 377,
+        eCSSKeyword_no_repeat = 378,
+        eCSSKeyword_none = 379,
+        eCSSKeyword_normal = 380,
+        eCSSKeyword_not_allowed = 381,
+        eCSSKeyword_nowrap = 382,
+        eCSSKeyword_numeric = 383,
+        eCSSKeyword_ns_resize = 384,
+        eCSSKeyword_nw_resize = 385,
+        eCSSKeyword_nwse_resize = 386,
+        eCSSKeyword_oblique = 387,
+        eCSSKeyword_oldstyle_nums = 388,
+        eCSSKeyword_opacity = 389,
+        eCSSKeyword_open = 390,
+        eCSSKeyword_open_quote = 391,
+        eCSSKeyword_optional = 392,
+        eCSSKeyword_ordinal = 393,
+        eCSSKeyword_ornaments = 394,
+        eCSSKeyword_outset = 395,
+        eCSSKeyword_outside = 396,
+        eCSSKeyword_over = 397,
+        eCSSKeyword_overlay = 398,
+        eCSSKeyword_overline = 399,
+        eCSSKeyword_paint = 400,
+        eCSSKeyword_padding_box = 401,
+        eCSSKeyword_painted = 402,
+        eCSSKeyword_pan_x = 403,
+        eCSSKeyword_pan_y = 404,
+        eCSSKeyword_paused = 405,
+        eCSSKeyword_pc = 406,
+        eCSSKeyword_perspective = 407,
+        eCSSKeyword_petite_caps = 408,
+        eCSSKeyword_physical = 409,
+        eCSSKeyword_plaintext = 410,
+        eCSSKeyword_pointer = 411,
+        eCSSKeyword_polygon = 412,
+        eCSSKeyword_portrait = 413,
+        eCSSKeyword_pre = 414,
+        eCSSKeyword_pre_wrap = 415,
+        eCSSKeyword_pre_line = 416,
+        eCSSKeyword_preserve_3d = 417,
+        eCSSKeyword_progress = 418,
+        eCSSKeyword_progressive = 419,
+        eCSSKeyword_proportional_nums = 420,
+        eCSSKeyword_proportional_width = 421,
+        eCSSKeyword_proximity = 422,
+        eCSSKeyword_pt = 423,
+        eCSSKeyword_px = 424,
+        eCSSKeyword_rad = 425,
+        eCSSKeyword_read_only = 426,
+        eCSSKeyword_read_write = 427,
+        eCSSKeyword_relative = 428,
+        eCSSKeyword_repeat = 429,
+        eCSSKeyword_repeat_x = 430,
+        eCSSKeyword_repeat_y = 431,
+        eCSSKeyword_reverse = 432,
+        eCSSKeyword_ridge = 433,
+        eCSSKeyword_right = 434,
+        eCSSKeyword_rl = 435,
+        eCSSKeyword_rl_tb = 436,
+        eCSSKeyword_rotate = 437,
+        eCSSKeyword_rotate3d = 438,
+        eCSSKeyword_rotatex = 439,
+        eCSSKeyword_rotatey = 440,
+        eCSSKeyword_rotatez = 441,
+        eCSSKeyword_round = 442,
+        eCSSKeyword_row = 443,
+        eCSSKeyword_row_resize = 444,
+        eCSSKeyword_row_reverse = 445,
+        eCSSKeyword_rtl = 446,
+        eCSSKeyword_ruby = 447,
+        eCSSKeyword_ruby_base = 448,
+        eCSSKeyword_ruby_base_container = 449,
+        eCSSKeyword_ruby_text = 450,
+        eCSSKeyword_ruby_text_container = 451,
+        eCSSKeyword_running = 452,
+        eCSSKeyword_s = 453,
+        eCSSKeyword_s_resize = 454,
+        eCSSKeyword_safe = 455,
+        eCSSKeyword_saturate = 456,
+        eCSSKeyword_saturation = 457,
+        eCSSKeyword_scale = 458,
+        eCSSKeyword_scale_down = 459,
+        eCSSKeyword_scale3d = 460,
+        eCSSKeyword_scalex = 461,
+        eCSSKeyword_scaley = 462,
+        eCSSKeyword_scalez = 463,
+        eCSSKeyword_screen = 464,
+        eCSSKeyword_script = 465,
+        eCSSKeyword_scroll = 466,
+        eCSSKeyword_scrollbar = 467,
+        eCSSKeyword_scrollbar_small = 468,
+        eCSSKeyword_scrollbar_horizontal = 469,
+        eCSSKeyword_scrollbar_vertical = 470,
+        eCSSKeyword_se_resize = 471,
+        eCSSKeyword_select_after = 472,
+        eCSSKeyword_select_all = 473,
+        eCSSKeyword_select_before = 474,
+        eCSSKeyword_select_menu = 475,
+        eCSSKeyword_select_same = 476,
+        eCSSKeyword_self_end = 477,
+        eCSSKeyword_self_start = 478,
+        eCSSKeyword_semi_condensed = 479,
+        eCSSKeyword_semi_expanded = 480,
+        eCSSKeyword_separate = 481,
+        eCSSKeyword_sepia = 482,
+        eCSSKeyword_serif = 483,
+        eCSSKeyword_sesame = 484,
+        eCSSKeyword_show = 485,
+        eCSSKeyword_sideways = 486,
+        eCSSKeyword_sideways_lr = 487,
+        eCSSKeyword_sideways_right = 488,
+        eCSSKeyword_sideways_rl = 489,
+        eCSSKeyword_simp_chinese_formal = 490,
+        eCSSKeyword_simp_chinese_informal = 491,
+        eCSSKeyword_simplified = 492,
+        eCSSKeyword_skew = 493,
+        eCSSKeyword_skewx = 494,
+        eCSSKeyword_skewy = 495,
+        eCSSKeyword_slashed_zero = 496,
+        eCSSKeyword_slice = 497,
+        eCSSKeyword_small = 498,
+        eCSSKeyword_small_caps = 499,
+        eCSSKeyword_small_caption = 500,
+        eCSSKeyword_smaller = 501,
+        eCSSKeyword_smooth = 502,
+        eCSSKeyword_soft = 503,
+        eCSSKeyword_soft_light = 504,
+        eCSSKeyword_solid = 505,
+        eCSSKeyword_space_around = 506,
+        eCSSKeyword_space_between = 507,
+        eCSSKeyword_space_evenly = 508,
+        eCSSKeyword_span = 509,
+        eCSSKeyword_spell_out = 510,
+        eCSSKeyword_square = 511,
+        eCSSKeyword_stacked_fractions = 512,
+        eCSSKeyword_start = 513,
+        eCSSKeyword_static = 514,
+        eCSSKeyword_standalone = 515,
+        eCSSKeyword_status_bar = 516,
+        eCSSKeyword_step_end = 517,
+        eCSSKeyword_step_start = 518,
+        eCSSKeyword_sticky = 519,
+        eCSSKeyword_stretch = 520,
+        eCSSKeyword_stretch_to_fit = 521,
+        eCSSKeyword_stretched = 522,
+        eCSSKeyword_strict = 523,
+        eCSSKeyword_stroke = 524,
+        eCSSKeyword_stroke_box = 525,
+        eCSSKeyword_style = 526,
+        eCSSKeyword_styleset = 527,
+        eCSSKeyword_stylistic = 528,
+        eCSSKeyword_sub = 529,
+        eCSSKeyword_subgrid = 530,
+        eCSSKeyword_subtract = 531,
+        eCSSKeyword_super = 532,
+        eCSSKeyword_sw_resize = 533,
+        eCSSKeyword_swash = 534,
+        eCSSKeyword_swap = 535,
+        eCSSKeyword_table = 536,
+        eCSSKeyword_table_caption = 537,
+        eCSSKeyword_table_cell = 538,
+        eCSSKeyword_table_column = 539,
+        eCSSKeyword_table_column_group = 540,
+        eCSSKeyword_table_footer_group = 541,
+        eCSSKeyword_table_header_group = 542,
+        eCSSKeyword_table_row = 543,
+        eCSSKeyword_table_row_group = 544,
+        eCSSKeyword_tabular_nums = 545,
+        eCSSKeyword_tailed = 546,
+        eCSSKeyword_tb = 547,
+        eCSSKeyword_tb_rl = 548,
+        eCSSKeyword_text = 549,
+        eCSSKeyword_text_bottom = 550,
+        eCSSKeyword_text_top = 551,
+        eCSSKeyword_thick = 552,
+        eCSSKeyword_thin = 553,
+        eCSSKeyword_threeddarkshadow = 554,
+        eCSSKeyword_threedface = 555,
+        eCSSKeyword_threedhighlight = 556,
+        eCSSKeyword_threedlightshadow = 557,
+        eCSSKeyword_threedshadow = 558,
+        eCSSKeyword_titling_caps = 559,
+        eCSSKeyword_toggle = 560,
+        eCSSKeyword_top = 561,
+        eCSSKeyword_top_outside = 562,
+        eCSSKeyword_trad_chinese_formal = 563,
+        eCSSKeyword_trad_chinese_informal = 564,
+        eCSSKeyword_traditional = 565,
+        eCSSKeyword_translate = 566,
+        eCSSKeyword_translate3d = 567,
+        eCSSKeyword_translatex = 568,
+        eCSSKeyword_translatey = 569,
+        eCSSKeyword_translatez = 570,
+        eCSSKeyword_transparent = 571,
+        eCSSKeyword_triangle = 572,
+        eCSSKeyword_tri_state = 573,
+        eCSSKeyword_ultra_condensed = 574,
+        eCSSKeyword_ultra_expanded = 575,
+        eCSSKeyword_under = 576,
+        eCSSKeyword_underline = 577,
+        eCSSKeyword_unicase = 578,
+        eCSSKeyword_unsafe = 579,
+        eCSSKeyword_unset = 580,
+        eCSSKeyword_uppercase = 581,
+        eCSSKeyword_upright = 582,
+        eCSSKeyword_vertical = 583,
+        eCSSKeyword_vertical_lr = 584,
+        eCSSKeyword_vertical_rl = 585,
+        eCSSKeyword_vertical_text = 586,
+        eCSSKeyword_view_box = 587,
+        eCSSKeyword_visible = 588,
+        eCSSKeyword_visiblefill = 589,
+        eCSSKeyword_visiblepainted = 590,
+        eCSSKeyword_visiblestroke = 591,
+        eCSSKeyword_w_resize = 592,
+        eCSSKeyword_wait = 593,
+        eCSSKeyword_wavy = 594,
+        eCSSKeyword_weight = 595,
+        eCSSKeyword_wider = 596,
+        eCSSKeyword_window = 597,
+        eCSSKeyword_windowframe = 598,
+        eCSSKeyword_windowtext = 599,
+        eCSSKeyword_words = 600,
+        eCSSKeyword_wrap = 601,
+        eCSSKeyword_wrap_reverse = 602,
+        eCSSKeyword_write_only = 603,
+        eCSSKeyword_x_large = 604,
+        eCSSKeyword_x_small = 605,
+        eCSSKeyword_xx_large = 606,
+        eCSSKeyword_xx_small = 607,
+        eCSSKeyword_zoom_in = 608,
+        eCSSKeyword_zoom_out = 609,
+        eCSSKeyword_radio = 610,
+        eCSSKeyword_checkbox = 611,
+        eCSSKeyword_button_bevel = 612,
+        eCSSKeyword_toolbox = 613,
+        eCSSKeyword_toolbar = 614,
+        eCSSKeyword_toolbarbutton = 615,
+        eCSSKeyword_toolbargripper = 616,
+        eCSSKeyword_dualbutton = 617,
+        eCSSKeyword_toolbarbutton_dropdown = 618,
+        eCSSKeyword_button_arrow_up = 619,
+        eCSSKeyword_button_arrow_down = 620,
+        eCSSKeyword_button_arrow_next = 621,
+        eCSSKeyword_button_arrow_previous = 622,
+        eCSSKeyword_separator = 623,
+        eCSSKeyword_splitter = 624,
+        eCSSKeyword_statusbar = 625,
+        eCSSKeyword_statusbarpanel = 626,
+        eCSSKeyword_resizerpanel = 627,
+        eCSSKeyword_resizer = 628,
+        eCSSKeyword_listbox = 629,
+        eCSSKeyword_listitem = 630,
+        eCSSKeyword_numbers = 631,
+        eCSSKeyword_number_input = 632,
+        eCSSKeyword_treeview = 633,
+        eCSSKeyword_treeitem = 634,
+        eCSSKeyword_treetwisty = 635,
+        eCSSKeyword_treetwistyopen = 636,
+        eCSSKeyword_treeline = 637,
+        eCSSKeyword_treeheader = 638,
+        eCSSKeyword_treeheadercell = 639,
+        eCSSKeyword_treeheadersortarrow = 640,
+        eCSSKeyword_progressbar = 641,
+        eCSSKeyword_progressbar_vertical = 642,
+        eCSSKeyword_progresschunk = 643,
+        eCSSKeyword_progresschunk_vertical = 644,
+        eCSSKeyword_tab = 645,
+        eCSSKeyword_tabpanels = 646,
+        eCSSKeyword_tabpanel = 647,
+        eCSSKeyword_tab_scroll_arrow_back = 648,
+        eCSSKeyword_tab_scroll_arrow_forward = 649,
+        eCSSKeyword_tooltip = 650,
+        eCSSKeyword_spinner = 651,
+        eCSSKeyword_spinner_upbutton = 652,
+        eCSSKeyword_spinner_downbutton = 653,
+        eCSSKeyword_spinner_textfield = 654,
+        eCSSKeyword_scrollbarbutton_up = 655,
+        eCSSKeyword_scrollbarbutton_down = 656,
+        eCSSKeyword_scrollbarbutton_left = 657,
+        eCSSKeyword_scrollbarbutton_right = 658,
+        eCSSKeyword_scrollbartrack_horizontal = 659,
+        eCSSKeyword_scrollbartrack_vertical = 660,
+        eCSSKeyword_scrollbarthumb_horizontal = 661,
+        eCSSKeyword_scrollbarthumb_vertical = 662,
+        eCSSKeyword_sheet = 663,
+        eCSSKeyword_textfield = 664,
+        eCSSKeyword_textfield_multiline = 665,
+        eCSSKeyword_caret = 666,
+        eCSSKeyword_searchfield = 667,
+        eCSSKeyword_menubar = 668,
+        eCSSKeyword_menupopup = 669,
+        eCSSKeyword_menuitem = 670,
+        eCSSKeyword_checkmenuitem = 671,
+        eCSSKeyword_radiomenuitem = 672,
+        eCSSKeyword_menucheckbox = 673,
+        eCSSKeyword_menuradio = 674,
+        eCSSKeyword_menuseparator = 675,
+        eCSSKeyword_menuarrow = 676,
+        eCSSKeyword_menuimage = 677,
+        eCSSKeyword_menuitemtext = 678,
+        eCSSKeyword_menulist = 679,
+        eCSSKeyword_menulist_button = 680,
+        eCSSKeyword_menulist_text = 681,
+        eCSSKeyword_menulist_textfield = 682,
+        eCSSKeyword_meterbar = 683,
+        eCSSKeyword_meterchunk = 684,
+        eCSSKeyword_minimal_ui = 685,
+        eCSSKeyword_range = 686,
+        eCSSKeyword_range_thumb = 687,
+        eCSSKeyword_sans_serif = 688,
+        eCSSKeyword_sans_serif_bold_italic = 689,
+        eCSSKeyword_sans_serif_italic = 690,
+        eCSSKeyword_scale_horizontal = 691,
+        eCSSKeyword_scale_vertical = 692,
+        eCSSKeyword_scalethumb_horizontal = 693,
+        eCSSKeyword_scalethumb_vertical = 694,
+        eCSSKeyword_scalethumbstart = 695,
+        eCSSKeyword_scalethumbend = 696,
+        eCSSKeyword_scalethumbtick = 697,
+        eCSSKeyword_groupbox = 698,
+        eCSSKeyword_checkbox_container = 699,
+        eCSSKeyword_radio_container = 700,
+        eCSSKeyword_checkbox_label = 701,
+        eCSSKeyword_radio_label = 702,
+        eCSSKeyword_button_focus = 703,
+        eCSSKeyword__moz_win_media_toolbox = 704,
+        eCSSKeyword__moz_win_communications_toolbox = 705,
+        eCSSKeyword__moz_win_browsertabbar_toolbox = 706,
+        eCSSKeyword__moz_win_mediatext = 707,
+        eCSSKeyword__moz_win_communicationstext = 708,
+        eCSSKeyword__moz_win_glass = 709,
+        eCSSKeyword__moz_win_borderless_glass = 710,
+        eCSSKeyword__moz_window_titlebar = 711,
+        eCSSKeyword__moz_window_titlebar_maximized = 712,
+        eCSSKeyword__moz_window_frame_left = 713,
+        eCSSKeyword__moz_window_frame_right = 714,
+        eCSSKeyword__moz_window_frame_bottom = 715,
+        eCSSKeyword__moz_window_button_close = 716,
+        eCSSKeyword__moz_window_button_minimize = 717,
+        eCSSKeyword__moz_window_button_maximize = 718,
+        eCSSKeyword__moz_window_button_restore = 719,
+        eCSSKeyword__moz_window_button_box = 720,
+        eCSSKeyword__moz_window_button_box_maximized = 721,
+        eCSSKeyword__moz_mac_help_button = 722,
+        eCSSKeyword__moz_win_exclude_glass = 723,
+        eCSSKeyword__moz_mac_vibrancy_light = 724,
+        eCSSKeyword__moz_mac_vibrancy_dark = 725,
+        eCSSKeyword__moz_mac_disclosure_button_closed = 726,
+        eCSSKeyword__moz_mac_disclosure_button_open = 727,
+        eCSSKeyword__moz_mac_source_list = 728,
+        eCSSKeyword__moz_mac_source_list_selection = 729,
+        eCSSKeyword__moz_mac_active_source_list_selection = 730,
+        eCSSKeyword_alphabetic = 731,
+        eCSSKeyword_bevel = 732,
+        eCSSKeyword_butt = 733,
+        eCSSKeyword_central = 734,
+        eCSSKeyword_crispedges = 735,
+        eCSSKeyword_evenodd = 736,
+        eCSSKeyword_geometricprecision = 737,
+        eCSSKeyword_hanging = 738,
+        eCSSKeyword_ideographic = 739,
+        eCSSKeyword_linearrgb = 740,
+        eCSSKeyword_mathematical = 741,
+        eCSSKeyword_miter = 742,
+        eCSSKeyword_no_change = 743,
+        eCSSKeyword_non_scaling_stroke = 744,
+        eCSSKeyword_nonzero = 745,
+        eCSSKeyword_optimizelegibility = 746,
+        eCSSKeyword_optimizequality = 747,
+        eCSSKeyword_optimizespeed = 748,
+        eCSSKeyword_reset_size = 749,
+        eCSSKeyword_srgb = 750,
+        eCSSKeyword_symbolic = 751,
+        eCSSKeyword_symbols = 752,
+        eCSSKeyword_text_after_edge = 753,
+        eCSSKeyword_text_before_edge = 754,
+        eCSSKeyword_use_script = 755,
+        eCSSKeyword__moz_crisp_edges = 756,
+        eCSSKeyword_space = 757,
+        eCSSKeyword_COUNT = 758,
     }
     pub const nsCSSPropertyID_eCSSProperty_COUNT_DUMMY: root::nsCSSPropertyID
               =
         nsCSSPropertyID::eCSSProperty_z_index;
     pub const nsCSSPropertyID_eCSSProperty_all: root::nsCSSPropertyID =
         nsCSSPropertyID::eCSSProperty_COUNT_no_shorthands;
     pub const nsCSSPropertyID_eCSSProperty_COUNT_DUMMY2: root::nsCSSPropertyID
               =
@@ -12066,24 +12064,26 @@ pub mod root {
     }
     #[repr(C)]
     #[derive(Debug)]
     pub struct nsStyleImageLayers_Layer {
         pub mImage: root::nsStyleImage,
         pub mSourceURI: root::RefPtr<root::mozilla::css::URLValueData>,
         pub mPosition: root::mozilla::Position,
         pub mSize: root::nsStyleImageLayers_Size,
-        pub mClip: u8,
-        pub mOrigin: u8,
+        pub mClip: root::nsStyleImageLayers_Layer_StyleGeometryBox,
+        pub mOrigin: root::nsStyleImageLayers_Layer_StyleGeometryBox,
         pub mAttachment: u8,
         pub mBlendMode: u8,
         pub mComposite: u8,
         pub mMaskMode: u8,
         pub mRepeat: root::nsStyleImageLayers_Repeat,
     }
+    pub type nsStyleImageLayers_Layer_StyleGeometryBox =
+        root::mozilla::StyleGeometryBox;
     #[test]
     fn bindgen_test_layout_nsStyleImageLayers_Layer() {
         assert_eq!(::std::mem::size_of::<nsStyleImageLayers_Layer>() ,
                    104usize);
         assert_eq!(::std::mem::align_of::<nsStyleImageLayers_Layer>() ,
                    8usize);
     }
     extern "C" {
--- a/servo/components/style/gecko_bindings/structs_release.rs
+++ b/servo/components/style/gecko_bindings/structs_release.rs
@@ -297,26 +297,19 @@ pub mod root {
     pub const NS_STYLE_ANIMATION_PLAY_STATE_PAUSED: ::std::os::raw::c_uint =
         1;
     pub const NS_STYLE_IMAGELAYER_ATTACHMENT_SCROLL: ::std::os::raw::c_uint =
         0;
     pub const NS_STYLE_IMAGELAYER_ATTACHMENT_FIXED: ::std::os::raw::c_uint =
         1;
     pub const NS_STYLE_IMAGELAYER_ATTACHMENT_LOCAL: ::std::os::raw::c_uint =
         2;
-    pub const NS_STYLE_IMAGELAYER_CLIP_BORDER: ::std::os::raw::c_uint = 0;
-    pub const NS_STYLE_IMAGELAYER_CLIP_PADDING: ::std::os::raw::c_uint = 1;
-    pub const NS_STYLE_IMAGELAYER_CLIP_CONTENT: ::std::os::raw::c_uint = 2;
-    pub const NS_STYLE_IMAGELAYER_CLIP_TEXT: ::std::os::raw::c_uint = 3;
     pub const NS_STYLE_IMAGELAYER_CLIP_MOZ_ALMOST_PADDING:
               ::std::os::raw::c_uint =
         127;
-    pub const NS_STYLE_IMAGELAYER_ORIGIN_BORDER: ::std::os::raw::c_uint = 0;
-    pub const NS_STYLE_IMAGELAYER_ORIGIN_PADDING: ::std::os::raw::c_uint = 1;
-    pub const NS_STYLE_IMAGELAYER_ORIGIN_CONTENT: ::std::os::raw::c_uint = 2;
     pub const NS_STYLE_IMAGELAYER_POSITION_CENTER: ::std::os::raw::c_uint = 1;
     pub const NS_STYLE_IMAGELAYER_POSITION_TOP: ::std::os::raw::c_uint = 2;
     pub const NS_STYLE_IMAGELAYER_POSITION_BOTTOM: ::std::os::raw::c_uint = 4;
     pub const NS_STYLE_IMAGELAYER_POSITION_LEFT: ::std::os::raw::c_uint = 8;
     pub const NS_STYLE_IMAGELAYER_POSITION_RIGHT: ::std::os::raw::c_uint = 16;
     pub const NS_STYLE_IMAGELAYER_REPEAT_NO_REPEAT: ::std::os::raw::c_uint =
         0;
     pub const NS_STYLE_IMAGELAYER_REPEAT_REPEAT_X: ::std::os::raw::c_uint = 1;
@@ -1007,17 +1000,16 @@ pub mod root {
     pub const NS_STYLE_SCROLL_SNAP_TYPE_PROXIMITY: ::std::os::raw::c_uint = 2;
     pub const NS_STYLE_ORIENTATION_PORTRAIT: ::std::os::raw::c_uint = 0;
     pub const NS_STYLE_ORIENTATION_LANDSCAPE: ::std::os::raw::c_uint = 1;
     pub const NS_STYLE_SCAN_PROGRESSIVE: ::std::os::raw::c_uint = 0;
     pub const NS_STYLE_SCAN_INTERLACE: ::std::os::raw::c_uint = 1;
     pub const NS_STYLE_DISPLAY_MODE_BROWSER: ::std::os::raw::c_uint = 0;
     pub const NS_STYLE_DISPLAY_MODE_MINIMAL_UI: ::std::os::raw::c_uint = 1;
     pub const NS_STYLE_DISPLAY_MODE_STANDALONE: ::std::os::raw::c_uint = 2;
-    pub const NS_STYLE_DISPLAY_MODE_FULLSCREEN: ::std::os::raw::c_uint = 3;
     pub const NS_STYLE_INHERIT_MASK: ::std::os::raw::c_uint = 16777215;
     pub const NS_STYLE_HAS_TEXT_DECORATION_LINES: ::std::os::raw::c_uint =
         16777216;
     pub const NS_STYLE_HAS_PSEUDO_ELEMENT_DATA: ::std::os::raw::c_uint =
         33554432;
     pub const NS_STYLE_RELEVANT_LINK_VISITED: ::std::os::raw::c_uint =
         67108864;
     pub const NS_STYLE_IS_STYLE_IF_VISITED: ::std::os::raw::c_uint =
@@ -1263,16 +1255,24 @@ pub mod root {
                 pub mGlobalObject: *mut root::nsISupports,
             }
             #[test]
             fn bindgen_test_layout_GlobalObject() {
                 assert_eq!(::std::mem::size_of::<GlobalObject>() , 40usize);
                 assert_eq!(::std::mem::align_of::<GlobalObject>() , 8usize);
             }
             #[repr(C)]
+            #[derive(Debug, Copy)]
+            pub struct DocGroup {
+                pub _address: u8,
+            }
+            impl Clone for DocGroup {
+                fn clone(&self) -> Self { *self }
+            }
+            #[repr(C)]
             pub struct DispatcherTrait__bindgen_vtable {
             }
             #[repr(C)]
             #[derive(Debug, Copy)]
             pub struct DispatcherTrait {
                 pub vtable_: *const DispatcherTrait__bindgen_vtable,
             }
             #[test]
@@ -1305,24 +1305,16 @@ pub mod root {
             #[repr(C)]
             #[derive(Debug, Copy)]
             pub struct AudioContext {
                 pub _address: u8,
             }
             impl Clone for AudioContext {
                 fn clone(&self) -> Self { *self }
             }
-            #[repr(C)]
-            #[derive(Debug, Copy)]
-            pub struct DocGroup {
-                pub _address: u8,
-            }
-            impl Clone for DocGroup {
-                fn clone(&self) -> Self { *self }
-            }
             pub const ReferrerPolicy_RP_Default:
                       root::mozilla::dom::ReferrerPolicy =
                 ReferrerPolicy::RP_No_Referrer_When_Downgrade;
             #[repr(u32)]
             #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
             pub enum ReferrerPolicy {
                 RP_No_Referrer = 2,
                 RP_Origin = 3,
@@ -2708,25 +2700,28 @@ pub mod root {
             InlineStart = 3,
             InlineEnd = 4,
             Both = 5,
             Line = 8,
             Max = 13,
         }
         #[repr(u8)]
         #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
-        pub enum StyleClipPathGeometryBox {
-            NoBox = 0,
-            Content = 1,
-            Padding = 2,
-            Border = 3,
-            Margin = 4,
-            Fill = 5,
-            Stroke = 6,
-            View = 7,
+        pub enum StyleGeometryBox {
+            Content = 0,
+            Padding = 1,
+            Border = 2,
+            Margin = 3,
+            Fill = 4,
+            Stroke = 5,
+            View = 6,
+            NoClip = 7,
+            Text = 8,
+            NoBox = 9,
+            MozAlmostPadding = 127,
         }
         #[repr(u8)]
         #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
         pub enum StyleFillRule { Nonzero = 0, Evenodd = 1, }
         #[repr(u8)]
         #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
         pub enum StyleFloat {
             None = 0,
@@ -2810,52 +2805,53 @@ pub mod root {
             Horizontal = 2,
             Vertical = 3,
         }
         #[repr(u8)]
         #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
         pub enum StyleDisplay {
             None = 0,
             Block = 1,
-            Inline = 2,
-            InlineBlock = 3,
-            ListItem = 4,
-            Table = 5,
-            InlineTable = 6,
-            TableRowGroup = 7,
-            TableColumn = 8,
-            TableColumnGroup = 9,
-            TableHeaderGroup = 10,
-            TableFooterGroup = 11,
-            TableRow = 12,
-            TableCell = 13,
-            TableCaption = 14,
-            Flex = 15,
-            InlineFlex = 16,
-            Grid = 17,
-            InlineGrid = 18,
-            Ruby = 19,
-            RubyBase = 20,
-            RubyBaseContainer = 21,
-            RubyText = 22,
-            RubyTextContainer = 23,
-            Contents = 24,
-            WebkitBox = 25,
-            WebkitInlineBox = 26,
-            MozBox = 27,
-            MozInlineBox = 28,
-            MozGrid = 29,
-            MozInlineGrid = 30,
-            MozGridGroup = 31,
-            MozGridLine = 32,
-            MozStack = 33,
-            MozInlineStack = 34,
-            MozDeck = 35,
-            MozGroupbox = 36,
-            MozPopup = 37,
+            FlowRoot = 2,
+            Inline = 3,
+            InlineBlock = 4,
+            ListItem = 5,
+            Table = 6,
+            InlineTable = 7,
+            TableRowGroup = 8,
+            TableColumn = 9,
+            TableColumnGroup = 10,
+            TableHeaderGroup = 11,
+            TableFooterGroup = 12,
+            TableRow = 13,
+            TableCell = 14,
+            TableCaption = 15,
+            Flex = 16,
+            InlineFlex = 17,
+            Grid = 18,
+            InlineGrid = 19,
+            Ruby = 20,
+            RubyBase = 21,
+            RubyBaseContainer = 22,
+            RubyText = 23,
+            RubyTextContainer = 24,
+            Contents = 25,
+            WebkitBox = 26,
+            WebkitInlineBox = 27,
+            MozBox = 28,
+            MozInlineBox = 29,
+            MozGrid = 30,
+            MozInlineGrid = 31,
+            MozGridGroup = 32,
+            MozGridLine = 33,
+            MozStack = 34,
+            MozInlineStack = 35,
+            MozDeck = 36,
+            MozGroupbox = 37,
+            MozPopup = 38,
         }
         /**
  * A class for holding strong references to handle-managed objects.
  *
  * This is intended for use with objects like RestyleManagerHandle,
  * where the handle type is not a pointer but which can still have
  * ->AddRef() and ->Release() called on it.
  */
@@ -3215,24 +3211,24 @@ pub mod root {
         #[derive(Debug, Copy, Clone)]
         pub struct StyleShapeSource__bindgen_ty_1<ReferenceBox> {
             pub mBasicShape: root::__BindgenUnionField<*mut root::mozilla::StyleBasicShape>,
             pub mURL: root::__BindgenUnionField<*mut root::mozilla::css::URLValue>,
             pub bindgen_union_field: u64,
             pub _phantom_0: ::std::marker::PhantomData<ReferenceBox>,
         }
         pub type StyleClipPath =
-            root::mozilla::StyleShapeSource<root::mozilla::StyleClipPathGeometryBox>;
+            root::mozilla::StyleShapeSource<root::mozilla::StyleGeometryBox>;
         pub type StyleShapeOutside =
             root::mozilla::StyleShapeSource<root::mozilla::StyleShapeOutsideShapeBox>;
         #[test]
         fn __bindgen_test_layout_template_2() {
-            assert_eq!(::std::mem::size_of::<root::mozilla::StyleShapeSource<root::mozilla::StyleClipPathGeometryBox>>()
+            assert_eq!(::std::mem::size_of::<root::mozilla::StyleShapeSource<root::mozilla::StyleGeometryBox>>()
                        , 16usize);
-            assert_eq!(::std::mem::align_of::<root::mozilla::StyleShapeSource<root::mozilla::StyleClipPathGeometryBox>>()
+            assert_eq!(::std::mem::align_of::<root::mozilla::StyleShapeSource<root::mozilla::StyleGeometryBox>>()
                        , 8usize);
         }
         #[test]
         fn __bindgen_test_layout_template_3() {
             assert_eq!(::std::mem::size_of::<root::mozilla::StyleShapeSource<root::mozilla::StyleShapeOutsideShapeBox>>()
                        , 16usize);
             assert_eq!(::std::mem::align_of::<root::mozilla::StyleShapeSource<root::mozilla::StyleShapeOutsideShapeBox>>()
                        , 8usize);
@@ -8560,73 +8556,73 @@ pub mod root {
     #[repr(C)]
     #[derive(Debug, Copy)]
     pub struct nsDOMMutationObserver {
         pub _address: u8,
     }
     impl Clone for nsDOMMutationObserver {
         fn clone(&self) -> Self { *self }
     }
-    pub const NODE_HAS_LISTENERMANAGER: root::_bindgen_ty_118 =
-        _bindgen_ty_118::NODE_HAS_LISTENERMANAGER;
-    pub const NODE_HAS_PROPERTIES: root::_bindgen_ty_118 =
-        _bindgen_ty_118::NODE_HAS_PROPERTIES;
-    pub const NODE_IS_ANONYMOUS_ROOT: root::_bindgen_ty_118 =
-        _bindgen_ty_118::NODE_IS_ANONYMOUS_ROOT;
-    pub const NODE_IS_IN_NATIVE_ANONYMOUS_SUBTREE: root::_bindgen_ty_118 =
-        _bindgen_ty_118::NODE_IS_IN_NATIVE_ANONYMOUS_SUBTREE;
-    pub const NODE_IS_NATIVE_ANONYMOUS_ROOT: root::_bindgen_ty_118 =
-        _bindgen_ty_118::NODE_IS_NATIVE_ANONYMOUS_ROOT;
-    pub const NODE_FORCE_XBL_BINDINGS: root::_bindgen_ty_118 =
-        _bindgen_ty_118::NODE_FORCE_XBL_BINDINGS;
-    pub const NODE_MAY_BE_IN_BINDING_MNGR: root::_bindgen_ty_118 =
-        _bindgen_ty_118::NODE_MAY_BE_IN_BINDING_MNGR;
-    pub const NODE_IS_EDITABLE: root::_bindgen_ty_118 =
-        _bindgen_ty_118::NODE_IS_EDITABLE;
-    pub const NODE_MAY_HAVE_CLASS: root::_bindgen_ty_118 =
-        _bindgen_ty_118::NODE_MAY_HAVE_CLASS;
-    pub const NODE_IS_IN_SHADOW_TREE: root::_bindgen_ty_118 =
-        _bindgen_ty_118::NODE_IS_IN_SHADOW_TREE;
-    pub const NODE_HAS_EMPTY_SELECTOR: root::_bindgen_ty_118 =
-        _bindgen_ty_118::NODE_HAS_EMPTY_SELECTOR;
-    pub const NODE_HAS_SLOW_SELECTOR: root::_bindgen_ty_118 =
-        _bindgen_ty_118::NODE_HAS_SLOW_SELECTOR;
-    pub const NODE_HAS_EDGE_CHILD_SELECTOR: root::_bindgen_ty_118 =
-        _bindgen_ty_118::NODE_HAS_EDGE_CHILD_SELECTOR;
-    pub const NODE_HAS_SLOW_SELECTOR_LATER_SIBLINGS: root::_bindgen_ty_118 =
-        _bindgen_ty_118::NODE_HAS_SLOW_SELECTOR_LATER_SIBLINGS;
-    pub const NODE_ALL_SELECTOR_FLAGS: root::_bindgen_ty_118 =
-        _bindgen_ty_118::NODE_ALL_SELECTOR_FLAGS;
-    pub const NODE_NEEDS_FRAME: root::_bindgen_ty_118 =
-        _bindgen_ty_118::NODE_NEEDS_FRAME;
-    pub const NODE_DESCENDANTS_NEED_FRAMES: root::_bindgen_ty_118 =
-        _bindgen_ty_118::NODE_DESCENDANTS_NEED_FRAMES;
-    pub const NODE_HAS_ACCESSKEY: root::_bindgen_ty_118 =
-        _bindgen_ty_118::NODE_HAS_ACCESSKEY;
-    pub const NODE_HAS_DIRECTION_RTL: root::_bindgen_ty_118 =
-        _bindgen_ty_118::NODE_HAS_DIRECTION_RTL;
-    pub const NODE_HAS_DIRECTION_LTR: root::_bindgen_ty_118 =
-        _bindgen_ty_118::NODE_HAS_DIRECTION_LTR;
-    pub const NODE_ALL_DIRECTION_FLAGS: root::_bindgen_ty_118 =
-        _bindgen_ty_118::NODE_ALL_DIRECTION_FLAGS;
-    pub const NODE_CHROME_ONLY_ACCESS: root::_bindgen_ty_118 =
-        _bindgen_ty_118::NODE_CHROME_ONLY_ACCESS;
-    pub const NODE_IS_ROOT_OF_CHROME_ONLY_ACCESS: root::_bindgen_ty_118 =
-        _bindgen_ty_118::NODE_IS_ROOT_OF_CHROME_ONLY_ACCESS;
-    pub const NODE_SHARED_RESTYLE_BIT_1: root::_bindgen_ty_118 =
-        _bindgen_ty_118::NODE_SHARED_RESTYLE_BIT_1;
-    pub const NODE_SHARED_RESTYLE_BIT_2: root::_bindgen_ty_118 =
-        _bindgen_ty_118::NODE_SHARED_RESTYLE_BIT_2;
-    pub const NODE_HAS_DIRTY_DESCENDANTS_FOR_SERVO: root::_bindgen_ty_118 =
-        _bindgen_ty_118::NODE_SHARED_RESTYLE_BIT_1;
-    pub const NODE_TYPE_SPECIFIC_BITS_OFFSET: root::_bindgen_ty_118 =
-        _bindgen_ty_118::NODE_TYPE_SPECIFIC_BITS_OFFSET;
+    pub const NODE_HAS_LISTENERMANAGER: root::_bindgen_ty_136 =
+        _bindgen_ty_136::NODE_HAS_LISTENERMANAGER;
+    pub const NODE_HAS_PROPERTIES: root::_bindgen_ty_136 =
+        _bindgen_ty_136::NODE_HAS_PROPERTIES;
+    pub const NODE_IS_ANONYMOUS_ROOT: root::_bindgen_ty_136 =
+        _bindgen_ty_136::NODE_IS_ANONYMOUS_ROOT;
+    pub const NODE_IS_IN_NATIVE_ANONYMOUS_SUBTREE: root::_bindgen_ty_136 =
+        _bindgen_ty_136::NODE_IS_IN_NATIVE_ANONYMOUS_SUBTREE;
+    pub const NODE_IS_NATIVE_ANONYMOUS_ROOT: root::_bindgen_ty_136 =
+        _bindgen_ty_136::NODE_IS_NATIVE_ANONYMOUS_ROOT;
+    pub const NODE_FORCE_XBL_BINDINGS: root::_bindgen_ty_136 =
+        _bindgen_ty_136::NODE_FORCE_XBL_BINDINGS;
+    pub const NODE_MAY_BE_IN_BINDING_MNGR: root::_bindgen_ty_136 =
+        _bindgen_ty_136::NODE_MAY_BE_IN_BINDING_MNGR;
+    pub const NODE_IS_EDITABLE: root::_bindgen_ty_136 =
+        _bindgen_ty_136::NODE_IS_EDITABLE;
+    pub const NODE_MAY_HAVE_CLASS: root::_bindgen_ty_136 =
+        _bindgen_ty_136::NODE_MAY_HAVE_CLASS;
+    pub const NODE_IS_IN_SHADOW_TREE: root::_bindgen_ty_136 =
+        _bindgen_ty_136::NODE_IS_IN_SHADOW_TREE;
+    pub const NODE_HAS_EMPTY_SELECTOR: root::_bindgen_ty_136 =
+        _bindgen_ty_136::NODE_HAS_EMPTY_SELECTOR;
+    pub const NODE_HAS_SLOW_SELECTOR: root::_bindgen_ty_136 =
+        _bindgen_ty_136::NODE_HAS_SLOW_SELECTOR;
+    pub const NODE_HAS_EDGE_CHILD_SELECTOR: root::_bindgen_ty_136 =
+        _bindgen_ty_136::NODE_HAS_EDGE_CHILD_SELECTOR;
+    pub const NODE_HAS_SLOW_SELECTOR_LATER_SIBLINGS: root::_bindgen_ty_136 =
+        _bindgen_ty_136::NODE_HAS_SLOW_SELECTOR_LATER_SIBLINGS;
+    pub const NODE_ALL_SELECTOR_FLAGS: root::_bindgen_ty_136 =
+        _bindgen_ty_136::NODE_ALL_SELECTOR_FLAGS;
+    pub const NODE_NEEDS_FRAME: root::_bindgen_ty_136 =
+        _bindgen_ty_136::NODE_NEEDS_FRAME;
+    pub const NODE_DESCENDANTS_NEED_FRAMES: root::_bindgen_ty_136 =
+        _bindgen_ty_136::NODE_DESCENDANTS_NEED_FRAMES;
+    pub const NODE_HAS_ACCESSKEY: root::_bindgen_ty_136 =
+        _bindgen_ty_136::NODE_HAS_ACCESSKEY;
+    pub const NODE_HAS_DIRECTION_RTL: root::_bindgen_ty_136 =
+        _bindgen_ty_136::NODE_HAS_DIRECTION_RTL;
+    pub const NODE_HAS_DIRECTION_LTR: root::_bindgen_ty_136 =
+        _bindgen_ty_136::NODE_HAS_DIRECTION_LTR;
+    pub const NODE_ALL_DIRECTION_FLAGS: root::_bindgen_ty_136 =
+        _bindgen_ty_136::NODE_ALL_DIRECTION_FLAGS;
+    pub const NODE_CHROME_ONLY_ACCESS: root::_bindgen_ty_136 =
+        _bindgen_ty_136::NODE_CHROME_ONLY_ACCESS;
+    pub const NODE_IS_ROOT_OF_CHROME_ONLY_ACCESS: root::_bindgen_ty_136 =
+        _bindgen_ty_136::NODE_IS_ROOT_OF_CHROME_ONLY_ACCESS;
+    pub const NODE_SHARED_RESTYLE_BIT_1: root::_bindgen_ty_136 =
+        _bindgen_ty_136::NODE_SHARED_RESTYLE_BIT_1;
+    pub const NODE_SHARED_RESTYLE_BIT_2: root::_bindgen_ty_136 =
+        _bindgen_ty_136::NODE_SHARED_RESTYLE_BIT_2;
+    pub const NODE_HAS_DIRTY_DESCENDANTS_FOR_SERVO: root::_bindgen_ty_136 =
+        _bindgen_ty_136::NODE_SHARED_RESTYLE_BIT_1;
+    pub const NODE_TYPE_SPECIFIC_BITS_OFFSET: root::_bindgen_ty_136 =
+        _bindgen_ty_136::NODE_TYPE_SPECIFIC_BITS_OFFSET;
     #[repr(u32)]
     #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
-    pub enum _bindgen_ty_118 {
+    pub enum _bindgen_ty_136 {
         NODE_HAS_LISTENERMANAGER = 4,
         NODE_HAS_PROPERTIES = 8,
         NODE_IS_ANONYMOUS_ROOT = 16,
         NODE_IS_IN_NATIVE_ANONYMOUS_SUBTREE = 32,
         NODE_IS_NATIVE_ANONYMOUS_ROOT = 64,
         NODE_FORCE_XBL_BINDINGS = 128,
         NODE_MAY_BE_IN_BINDING_MNGR = 256,
         NODE_IS_EDITABLE = 512,
@@ -10010,524 +10006,526 @@ pub mod root {
         eCSSKeyword_first = 241,
         eCSSKeyword_fit_content = 242,
         eCSSKeyword_fixed = 243,
         eCSSKeyword_flat = 244,
         eCSSKeyword_flex = 245,
         eCSSKeyword_flex_end = 246,
         eCSSKeyword_flex_start = 247,
         eCSSKeyword_flip = 248,
-        eCSSKeyword_forwards = 249,
-        eCSSKeyword_fraktur = 250,
-        eCSSKeyword_from_image = 251,
-        eCSSKeyword_full_width = 252,
-        eCSSKeyword_fullscreen = 253,
-        eCSSKeyword_grab = 254,
-        eCSSKeyword_grabbing = 255,
-        eCSSKeyword_grad = 256,
-        eCSSKeyword_grayscale = 257,
-        eCSSKeyword_graytext = 258,
-        eCSSKeyword_grid = 259,
-        eCSSKeyword_groove = 260,
-        eCSSKeyword_hard_light = 261,
-        eCSSKeyword_hebrew = 262,
-        eCSSKeyword_help = 263,
-        eCSSKeyword_hidden = 264,
-        eCSSKeyword_hide = 265,
-        eCSSKeyword_highlight = 266,
-        eCSSKeyword_highlighttext = 267,
-        eCSSKeyword_historical_forms = 268,
-        eCSSKeyword_historical_ligatures = 269,
-        eCSSKeyword_horizontal = 270,
-        eCSSKeyword_horizontal_tb = 271,
-        eCSSKeyword_hue = 272,
-        eCSSKeyword_hue_rotate = 273,
-        eCSSKeyword_hz = 274,
-        eCSSKeyword_icon = 275,
-        eCSSKeyword_ignore = 276,
-        eCSSKeyword_in = 277,
-        eCSSKeyword_interlace = 278,
-        eCSSKeyword_inactive = 279,
-        eCSSKeyword_inactiveborder = 280,
-        eCSSKeyword_inactivecaption = 281,
-        eCSSKeyword_inactivecaptiontext = 282,
-        eCSSKeyword_infinite = 283,
-        eCSSKeyword_infobackground = 284,
-        eCSSKeyword_infotext = 285,
-        eCSSKeyword_inherit = 286,
-        eCSSKeyword_initial = 287,
-        eCSSKeyword_inline = 288,
-        eCSSKeyword_inline_axis = 289,
-        eCSSKeyword_inline_block = 290,
-        eCSSKeyword_inline_end = 291,
-        eCSSKeyword_inline_flex = 292,
-        eCSSKeyword_inline_grid = 293,
-        eCSSKeyword_inline_start = 294,
-        eCSSKeyword_inline_table = 295,
-        eCSSKeyword_inset = 296,
-        eCSSKeyword_inside = 297,
-        eCSSKeyword_interpolatematrix = 298,
-        eCSSKeyword_accumulatematrix = 299,
-        eCSSKeyword_intersect = 300,
-        eCSSKeyword_isolate = 301,
-        eCSSKeyword_isolate_override = 302,
-        eCSSKeyword_invert = 303,
-        eCSSKeyword_italic = 304,
-        eCSSKeyword_japanese_formal = 305,
-        eCSSKeyword_japanese_informal = 306,
-        eCSSKeyword_jis78 = 307,
-        eCSSKeyword_jis83 = 308,
-        eCSSKeyword_jis90 = 309,
-        eCSSKeyword_jis04 = 310,
-        eCSSKeyword_justify = 311,
-        eCSSKeyword_keep_all = 312,
-        eCSSKeyword_khz = 313,
-        eCSSKeyword_korean_hangul_formal = 314,
-        eCSSKeyword_korean_hanja_formal = 315,
-        eCSSKeyword_korean_hanja_informal = 316,
-        eCSSKeyword_landscape = 317,
-        eCSSKeyword_large = 318,
-        eCSSKeyword_larger = 319,
-        eCSSKeyword_last = 320,
-        eCSSKeyword_last_baseline = 321,
-        eCSSKeyword_layout = 322,
-        eCSSKeyword_left = 323,
-        eCSSKeyword_legacy = 324,
-        eCSSKeyword_lighten = 325,
-        eCSSKeyword_lighter = 326,
-        eCSSKeyword_line_through = 327,
-        eCSSKeyword_linear = 328,
-        eCSSKeyword_lining_nums = 329,
-        eCSSKeyword_list_item = 330,
-        eCSSKeyword_local = 331,
-        eCSSKeyword_logical = 332,
-        eCSSKeyword_looped = 333,
-        eCSSKeyword_lowercase = 334,
-        eCSSKeyword_lr = 335,
-        eCSSKeyword_lr_tb = 336,
-        eCSSKeyword_ltr = 337,
-        eCSSKeyword_luminance = 338,
-        eCSSKeyword_luminosity = 339,
-        eCSSKeyword_mandatory = 340,
-        eCSSKeyword_manipulation = 341,
-        eCSSKeyword_manual = 342,
-        eCSSKeyword_margin_box = 343,
-        eCSSKeyword_markers = 344,
-        eCSSKeyword_match_parent = 345,
-        eCSSKeyword_match_source = 346,
-        eCSSKeyword_matrix = 347,
-        eCSSKeyword_matrix3d = 348,
-        eCSSKeyword_max_content = 349,
-        eCSSKeyword_medium = 350,
-        eCSSKeyword_menu = 351,
-        eCSSKeyword_menutext = 352,
-        eCSSKeyword_message_box = 353,
-        eCSSKeyword_middle = 354,
-        eCSSKeyword_min_content = 355,
-        eCSSKeyword_minmax = 356,
-        eCSSKeyword_mix = 357,
-        eCSSKeyword_mixed = 358,
-        eCSSKeyword_mm = 359,
-        eCSSKeyword_monospace = 360,
-        eCSSKeyword_move = 361,
-        eCSSKeyword_ms = 362,
-        eCSSKeyword_multiply = 363,
-        eCSSKeyword_n_resize = 364,
-        eCSSKeyword_narrower = 365,
-        eCSSKeyword_ne_resize = 366,
-        eCSSKeyword_nesw_resize = 367,
-        eCSSKeyword_no_close_quote = 368,
-        eCSSKeyword_no_common_ligatures = 369,
-        eCSSKeyword_no_contextual = 370,
-        eCSSKeyword_no_discretionary_ligatures = 371,
-        eCSSKeyword_no_drag = 372,
-        eCSSKeyword_no_drop = 373,
-        eCSSKeyword_no_historical_ligatures = 374,
-        eCSSKeyword_no_open_quote = 375,
-        eCSSKeyword_no_repeat = 376,
-        eCSSKeyword_none = 377,
-        eCSSKeyword_normal = 378,
-        eCSSKeyword_not_allowed = 379,
-        eCSSKeyword_nowrap = 380,
-        eCSSKeyword_numeric = 381,
-        eCSSKeyword_ns_resize = 382,
-        eCSSKeyword_nw_resize = 383,
-        eCSSKeyword_nwse_resize = 384,
-        eCSSKeyword_oblique = 385,
-        eCSSKeyword_oldstyle_nums = 386,
-        eCSSKeyword_opacity = 387,
-        eCSSKeyword_open = 388,
-        eCSSKeyword_open_quote = 389,
-        eCSSKeyword_optional = 390,
-        eCSSKeyword_ordinal = 391,
-        eCSSKeyword_ornaments = 392,
-        eCSSKeyword_outset = 393,
-        eCSSKeyword_outside = 394,
-        eCSSKeyword_over = 395,
-        eCSSKeyword_overlay = 396,
-        eCSSKeyword_overline = 397,
-        eCSSKeyword_paint = 398,
-        eCSSKeyword_padding_box = 399,
-        eCSSKeyword_painted = 400,
-        eCSSKeyword_pan_x = 401,
-        eCSSKeyword_pan_y = 402,
-        eCSSKeyword_paused = 403,
-        eCSSKeyword_pc = 404,
-        eCSSKeyword_perspective = 405,
-        eCSSKeyword_petite_caps = 406,
-        eCSSKeyword_physical = 407,
-        eCSSKeyword_plaintext = 408,
-        eCSSKeyword_pointer = 409,
-        eCSSKeyword_polygon = 410,
-        eCSSKeyword_portrait = 411,
-        eCSSKeyword_pre = 412,
-        eCSSKeyword_pre_wrap = 413,
-        eCSSKeyword_pre_line = 414,
-        eCSSKeyword_preserve_3d = 415,
-        eCSSKeyword_progress = 416,
-        eCSSKeyword_progressive = 417,
-        eCSSKeyword_proportional_nums = 418,
-        eCSSKeyword_proportional_width = 419,
-        eCSSKeyword_proximity = 420,
-        eCSSKeyword_pt = 421,
-        eCSSKeyword_px = 422,
-        eCSSKeyword_rad = 423,
-        eCSSKeyword_read_only = 424,
-        eCSSKeyword_read_write = 425,
-        eCSSKeyword_relative = 426,
-        eCSSKeyword_repeat = 427,
-        eCSSKeyword_repeat_x = 428,
-        eCSSKeyword_repeat_y = 429,
-        eCSSKeyword_reverse = 430,
-        eCSSKeyword_ridge = 431,
-        eCSSKeyword_right = 432,
-        eCSSKeyword_rl = 433,
-        eCSSKeyword_rl_tb = 434,
-        eCSSKeyword_rotate = 435,
-        eCSSKeyword_rotate3d = 436,
-        eCSSKeyword_rotatex = 437,
-        eCSSKeyword_rotatey = 438,
-        eCSSKeyword_rotatez = 439,
-        eCSSKeyword_round = 440,
-        eCSSKeyword_row = 441,
-        eCSSKeyword_row_resize = 442,
-        eCSSKeyword_row_reverse = 443,
-        eCSSKeyword_rtl = 444,
-        eCSSKeyword_ruby = 445,
-        eCSSKeyword_ruby_base = 446,
-        eCSSKeyword_ruby_base_container = 447,
-        eCSSKeyword_ruby_text = 448,
-        eCSSKeyword_ruby_text_container = 449,
-        eCSSKeyword_running = 450,
-        eCSSKeyword_s = 451,
-        eCSSKeyword_s_resize = 452,
-        eCSSKeyword_safe = 453,
-        eCSSKeyword_saturate = 454,
-        eCSSKeyword_saturation = 455,
-        eCSSKeyword_scale = 456,
-        eCSSKeyword_scale_down = 457,
-        eCSSKeyword_scale3d = 458,
-        eCSSKeyword_scalex = 459,
-        eCSSKeyword_scaley = 460,
-        eCSSKeyword_scalez = 461,
-        eCSSKeyword_screen = 462,
-        eCSSKeyword_script = 463,
-        eCSSKeyword_scroll = 464,
-        eCSSKeyword_scrollbar = 465,
-        eCSSKeyword_scrollbar_small = 466,
-        eCSSKeyword_scrollbar_horizontal = 467,
-        eCSSKeyword_scrollbar_vertical = 468,
-        eCSSKeyword_se_resize = 469,
-        eCSSKeyword_select_after = 470,
-        eCSSKeyword_select_all = 471,
-        eCSSKeyword_select_before = 472,
-        eCSSKeyword_select_menu = 473,
-        eCSSKeyword_select_same = 474,
-        eCSSKeyword_self_end = 475,
-        eCSSKeyword_self_start = 476,
-        eCSSKeyword_semi_condensed = 477,
-        eCSSKeyword_semi_expanded = 478,
-        eCSSKeyword_separate = 479,
-        eCSSKeyword_sepia = 480,
-        eCSSKeyword_serif = 481,
-        eCSSKeyword_sesame = 482,
-        eCSSKeyword_show = 483,
-        eCSSKeyword_sideways = 484,
-        eCSSKeyword_sideways_lr = 485,
-        eCSSKeyword_sideways_right = 486,
-        eCSSKeyword_sideways_rl = 487,
-        eCSSKeyword_simp_chinese_formal = 488,
-        eCSSKeyword_simp_chinese_informal = 489,
-        eCSSKeyword_simplified = 490,
-        eCSSKeyword_skew = 491,
-        eCSSKeyword_skewx = 492,
-        eCSSKeyword_skewy = 493,
-        eCSSKeyword_slashed_zero = 494,
-        eCSSKeyword_slice = 495,
-        eCSSKeyword_small = 496,
-        eCSSKeyword_small_caps = 497,
-        eCSSKeyword_small_caption = 498,
-        eCSSKeyword_smaller = 499,
-        eCSSKeyword_smooth = 500,
-        eCSSKeyword_soft = 501,
-        eCSSKeyword_soft_light = 502,
-        eCSSKeyword_solid = 503,
-        eCSSKeyword_space_around = 504,
-        eCSSKeyword_space_between = 505,
-        eCSSKeyword_space_evenly = 506,
-        eCSSKeyword_span = 507,
-        eCSSKeyword_spell_out = 508,
-        eCSSKeyword_square = 509,
-        eCSSKeyword_stacked_fractions = 510,
-        eCSSKeyword_start = 511,
-        eCSSKeyword_static = 512,
-        eCSSKeyword_standalone = 513,
-        eCSSKeyword_status_bar = 514,
-        eCSSKeyword_step_end = 515,
-        eCSSKeyword_step_start = 516,
-        eCSSKeyword_sticky = 517,
-        eCSSKeyword_stretch = 518,
-        eCSSKeyword_stretch_to_fit = 519,
-        eCSSKeyword_stretched = 520,
-        eCSSKeyword_strict = 521,
-        eCSSKeyword_stroke = 522,
-        eCSSKeyword_stroke_box = 523,
-        eCSSKeyword_style = 524,
-        eCSSKeyword_styleset = 525,
-        eCSSKeyword_stylistic = 526,
-        eCSSKeyword_sub = 527,
-        eCSSKeyword_subgrid = 528,
-        eCSSKeyword_subtract = 529,
-        eCSSKeyword_super = 530,
-        eCSSKeyword_sw_resize = 531,
-        eCSSKeyword_swash = 532,
-        eCSSKeyword_swap = 533,
-        eCSSKeyword_table = 534,
-        eCSSKeyword_table_caption = 535,
-        eCSSKeyword_table_cell = 536,
-        eCSSKeyword_table_column = 537,
-        eCSSKeyword_table_column_group = 538,
-        eCSSKeyword_table_footer_group = 539,
-        eCSSKeyword_table_header_group = 540,
-        eCSSKeyword_table_row = 541,
-        eCSSKeyword_table_row_group = 542,
-        eCSSKeyword_tabular_nums = 543,
-        eCSSKeyword_tailed = 544,
-        eCSSKeyword_tb = 545,
-        eCSSKeyword_tb_rl = 546,
-        eCSSKeyword_text = 547,
-        eCSSKeyword_text_bottom = 548,
-        eCSSKeyword_text_top = 549,
-        eCSSKeyword_thick = 550,
-        eCSSKeyword_thin = 551,
-        eCSSKeyword_threeddarkshadow = 552,
-        eCSSKeyword_threedface = 553,
-        eCSSKeyword_threedhighlight = 554,
-        eCSSKeyword_threedlightshadow = 555,
-        eCSSKeyword_threedshadow = 556,
-        eCSSKeyword_titling_caps = 557,
-        eCSSKeyword_toggle = 558,
-        eCSSKeyword_top = 559,
-        eCSSKeyword_top_outside = 560,
-        eCSSKeyword_trad_chinese_formal = 561,
-        eCSSKeyword_trad_chinese_informal = 562,
-        eCSSKeyword_traditional = 563,
-        eCSSKeyword_translate = 564,
-        eCSSKeyword_translate3d = 565,
-        eCSSKeyword_translatex = 566,
-        eCSSKeyword_translatey = 567,
-        eCSSKeyword_translatez = 568,
-        eCSSKeyword_transparent = 569,
-        eCSSKeyword_triangle = 570,
-        eCSSKeyword_tri_state = 571,
-        eCSSKeyword_ultra_condensed = 572,
-        eCSSKeyword_ultra_expanded = 573,
-        eCSSKeyword_under = 574,
-        eCSSKeyword_underline = 575,
-        eCSSKeyword_unicase = 576,
-        eCSSKeyword_unsafe = 577,
-        eCSSKeyword_unset = 578,
-        eCSSKeyword_uppercase = 579,
-        eCSSKeyword_upright = 580,
-        eCSSKeyword_vertical = 581,
-        eCSSKeyword_vertical_lr = 582,
-        eCSSKeyword_vertical_rl = 583,
-        eCSSKeyword_vertical_text = 584,
-        eCSSKeyword_view_box = 585,
-        eCSSKeyword_visible = 586,
-        eCSSKeyword_visiblefill = 587,
-        eCSSKeyword_visiblepainted = 588,
-        eCSSKeyword_visiblestroke = 589,
-        eCSSKeyword_w_resize = 590,
-        eCSSKeyword_wait = 591,
-        eCSSKeyword_wavy = 592,
-        eCSSKeyword_weight = 593,
-        eCSSKeyword_wider = 594,
-        eCSSKeyword_window = 595,
-        eCSSKeyword_windowframe = 596,
-        eCSSKeyword_windowtext = 597,
-        eCSSKeyword_words = 598,
-        eCSSKeyword_wrap = 599,
-        eCSSKeyword_wrap_reverse = 600,
-        eCSSKeyword_write_only = 601,
-        eCSSKeyword_x_large = 602,
-        eCSSKeyword_x_small = 603,
-        eCSSKeyword_xx_large = 604,
-        eCSSKeyword_xx_small = 605,
-        eCSSKeyword_zoom_in = 606,
-        eCSSKeyword_zoom_out = 607,
-        eCSSKeyword_radio = 608,
-        eCSSKeyword_checkbox = 609,
-        eCSSKeyword_button_bevel = 610,
-        eCSSKeyword_toolbox = 611,
-        eCSSKeyword_toolbar = 612,
-        eCSSKeyword_toolbarbutton = 613,
-        eCSSKeyword_toolbargripper = 614,
-        eCSSKeyword_dualbutton = 615,
-        eCSSKeyword_toolbarbutton_dropdown = 616,
-        eCSSKeyword_button_arrow_up = 617,
-        eCSSKeyword_button_arrow_down = 618,
-        eCSSKeyword_button_arrow_next = 619,
-        eCSSKeyword_button_arrow_previous = 620,
-        eCSSKeyword_separator = 621,
-        eCSSKeyword_splitter = 622,
-        eCSSKeyword_statusbar = 623,
-        eCSSKeyword_statusbarpanel = 624,
-        eCSSKeyword_resizerpanel = 625,
-        eCSSKeyword_resizer = 626,
-        eCSSKeyword_listbox = 627,
-        eCSSKeyword_listitem = 628,
-        eCSSKeyword_numbers = 629,
-        eCSSKeyword_number_input = 630,
-        eCSSKeyword_treeview = 631,
-        eCSSKeyword_treeitem = 632,
-        eCSSKeyword_treetwisty = 633,
-        eCSSKeyword_treetwistyopen = 634,
-        eCSSKeyword_treeline = 635,
-        eCSSKeyword_treeheader = 636,
-        eCSSKeyword_treeheadercell = 637,
-        eCSSKeyword_treeheadersortarrow = 638,
-        eCSSKeyword_progressbar = 639,
-        eCSSKeyword_progressbar_vertical = 640,
-        eCSSKeyword_progresschunk = 641,
-        eCSSKeyword_progresschunk_vertical = 642,
-        eCSSKeyword_tab = 643,
-        eCSSKeyword_tabpanels = 644,
-        eCSSKeyword_tabpanel = 645,
-        eCSSKeyword_tab_scroll_arrow_back = 646,
-        eCSSKeyword_tab_scroll_arrow_forward = 647,
-        eCSSKeyword_tooltip = 648,
-        eCSSKeyword_spinner = 649,
-        eCSSKeyword_spinner_upbutton = 650,
-        eCSSKeyword_spinner_downbutton = 651,
-        eCSSKeyword_spinner_textfield = 652,
-        eCSSKeyword_scrollbarbutton_up = 653,
-        eCSSKeyword_scrollbarbutton_down = 654,
-        eCSSKeyword_scrollbarbutton_left = 655,
-        eCSSKeyword_scrollbarbutton_right = 656,
-        eCSSKeyword_scrollbartrack_horizontal = 657,
-        eCSSKeyword_scrollbartrack_vertical = 658,
-        eCSSKeyword_scrollbarthumb_horizontal = 659,
-        eCSSKeyword_scrollbarthumb_vertical = 660,
-        eCSSKeyword_sheet = 661,
-        eCSSKeyword_textfield = 662,
-        eCSSKeyword_textfield_multiline = 663,
-        eCSSKeyword_caret = 664,
-        eCSSKeyword_searchfield = 665,
-        eCSSKeyword_menubar = 666,
-        eCSSKeyword_menupopup = 667,
-        eCSSKeyword_menuitem = 668,
-        eCSSKeyword_checkmenuitem = 669,
-        eCSSKeyword_radiomenuitem = 670,
-        eCSSKeyword_menucheckbox = 671,
-        eCSSKeyword_menuradio = 672,
-        eCSSKeyword_menuseparator = 673,
-        eCSSKeyword_menuarrow = 674,
-        eCSSKeyword_menuimage = 675,
-        eCSSKeyword_menuitemtext = 676,
-        eCSSKeyword_menulist = 677,
-        eCSSKeyword_menulist_button = 678,
-        eCSSKeyword_menulist_text = 679,
-        eCSSKeyword_menulist_textfield = 680,
-        eCSSKeyword_meterbar = 681,
-        eCSSKeyword_meterchunk = 682,
-        eCSSKeyword_minimal_ui = 683,
-        eCSSKeyword_range = 684,
-        eCSSKeyword_range_thumb = 685,
-        eCSSKeyword_sans_serif = 686,
-        eCSSKeyword_sans_serif_bold_italic = 687,
-        eCSSKeyword_sans_serif_italic = 688,
-        eCSSKeyword_scale_horizontal = 689,
-        eCSSKeyword_scale_vertical = 690,
-        eCSSKeyword_scalethumb_horizontal = 691,
-        eCSSKeyword_scalethumb_vertical = 692,
-        eCSSKeyword_scalethumbstart = 693,
-        eCSSKeyword_scalethumbend = 694,
-        eCSSKeyword_scalethumbtick = 695,
-        eCSSKeyword_groupbox = 696,
-        eCSSKeyword_checkbox_container = 697,
-        eCSSKeyword_radio_container = 698,
-        eCSSKeyword_checkbox_label = 699,
-        eCSSKeyword_radio_label = 700,
-        eCSSKeyword_button_focus = 701,
-        eCSSKeyword__moz_win_media_toolbox = 702,
-        eCSSKeyword__moz_win_communications_toolbox = 703,
-        eCSSKeyword__moz_win_browsertabbar_toolbox = 704,
-        eCSSKeyword__moz_win_mediatext = 705,
-        eCSSKeyword__moz_win_communicationstext = 706,
-        eCSSKeyword__moz_win_glass = 707,
-        eCSSKeyword__moz_win_borderless_glass = 708,
-        eCSSKeyword__moz_window_titlebar = 709,
-        eCSSKeyword__moz_window_titlebar_maximized = 710,
-        eCSSKeyword__moz_window_frame_left = 711,
-        eCSSKeyword__moz_window_frame_right = 712,
-        eCSSKeyword__moz_window_frame_bottom = 713,
-        eCSSKeyword__moz_window_button_close = 714,
-        eCSSKeyword__moz_window_button_minimize = 715,
-        eCSSKeyword__moz_window_button_maximize = 716,
-        eCSSKeyword__moz_window_button_restore = 717,
-        eCSSKeyword__moz_window_button_box = 718,
-        eCSSKeyword__moz_window_button_box_maximized = 719,
-        eCSSKeyword__moz_mac_help_button = 720,
-        eCSSKeyword__moz_win_exclude_glass = 721,
-        eCSSKeyword__moz_mac_vibrancy_light = 722,
-        eCSSKeyword__moz_mac_vibrancy_dark = 723,
-        eCSSKeyword__moz_mac_disclosure_button_closed = 724,
-        eCSSKeyword__moz_mac_disclosure_button_open = 725,
-        eCSSKeyword__moz_mac_source_list = 726,
-        eCSSKeyword__moz_mac_source_list_selection = 727,
-        eCSSKeyword__moz_mac_active_source_list_selection = 728,
-        eCSSKeyword_alphabetic = 729,
-        eCSSKeyword_bevel = 730,
-        eCSSKeyword_butt = 731,
-        eCSSKeyword_central = 732,
-        eCSSKeyword_crispedges = 733,
-        eCSSKeyword_evenodd = 734,
-        eCSSKeyword_geometricprecision = 735,
-        eCSSKeyword_hanging = 736,
-        eCSSKeyword_ideographic = 737,
-        eCSSKeyword_linearrgb = 738,
-        eCSSKeyword_mathematical = 739,
-        eCSSKeyword_miter = 740,
-        eCSSKeyword_no_change = 741,
-        eCSSKeyword_non_scaling_stroke = 742,
-        eCSSKeyword_nonzero = 743,
-        eCSSKeyword_optimizelegibility = 744,
-        eCSSKeyword_optimizequality = 745,
-        eCSSKeyword_optimizespeed = 746,
-        eCSSKeyword_reset_size = 747,
-        eCSSKeyword_srgb = 748,
-        eCSSKeyword_symbolic = 749,
-        eCSSKeyword_symbols = 750,
-        eCSSKeyword_text_after_edge = 751,
-        eCSSKeyword_text_before_edge = 752,
-        eCSSKeyword_use_script = 753,
-        eCSSKeyword__moz_crisp_edges = 754,
-        eCSSKeyword_space = 755,
-        eCSSKeyword_COUNT = 756,
+        eCSSKeyword_flow_root = 249,
+        eCSSKeyword_forwards = 250,
+        eCSSKeyword_fraktur = 251,
+        eCSSKeyword_from_image = 252,
+        eCSSKeyword_full_width = 253,
+        eCSSKeyword_fullscreen = 254,
+        eCSSKeyword_grab = 255,
+        eCSSKeyword_grabbing = 256,
+        eCSSKeyword_grad = 257,
+        eCSSKeyword_grayscale = 258,
+        eCSSKeyword_graytext = 259,
+        eCSSKeyword_grid = 260,
+        eCSSKeyword_groove = 261,
+        eCSSKeyword_hard_light = 262,
+        eCSSKeyword_hebrew = 263,
+        eCSSKeyword_help = 264,
+        eCSSKeyword_hidden = 265,
+        eCSSKeyword_hide = 266,
+        eCSSKeyword_highlight = 267,
+        eCSSKeyword_highlighttext = 268,
+        eCSSKeyword_historical_forms = 269,
+        eCSSKeyword_historical_ligatures = 270,
+        eCSSKeyword_horizontal = 271,
+        eCSSKeyword_horizontal_tb = 272,
+        eCSSKeyword_hue = 273,
+        eCSSKeyword_hue_rotate = 274,
+        eCSSKeyword_hz = 275,
+        eCSSKeyword_icon = 276,
+        eCSSKeyword_ignore = 277,
+        eCSSKeyword_in = 278,
+        eCSSKeyword_interlace = 279,
+        eCSSKeyword_inactive = 280,
+        eCSSKeyword_inactiveborder = 281,
+        eCSSKeyword_inactivecaption = 282,
+        eCSSKeyword_inactivecaptiontext = 283,
+        eCSSKeyword_infinite = 284,
+        eCSSKeyword_infobackground = 285,
+        eCSSKeyword_infotext = 286,
+        eCSSKeyword_inherit = 287,
+        eCSSKeyword_initial = 288,
+        eCSSKeyword_inline = 289,
+        eCSSKeyword_inline_axis = 290,
+        eCSSKeyword_inline_block = 291,
+        eCSSKeyword_inline_end = 292,
+        eCSSKeyword_inline_flex = 293,
+        eCSSKeyword_inline_grid = 294,
+        eCSSKeyword_inline_start = 295,
+        eCSSKeyword_inline_table = 296,
+        eCSSKeyword_inset = 297,
+        eCSSKeyword_inside = 298,
+        eCSSKeyword_interpolatematrix = 299,
+        eCSSKeyword_accumulatematrix = 300,
+        eCSSKeyword_intersect = 301,
+        eCSSKeyword_isolate = 302,
+        eCSSKeyword_isolate_override = 303,
+        eCSSKeyword_invert = 304,
+        eCSSKeyword_italic = 305,
+        eCSSKeyword_japanese_formal = 306,
+        eCSSKeyword_japanese_informal = 307,
+        eCSSKeyword_jis78 = 308,
+        eCSSKeyword_jis83 = 309,
+        eCSSKeyword_jis90 = 310,
+        eCSSKeyword_jis04 = 311,
+        eCSSKeyword_justify = 312,
+        eCSSKeyword_keep_all = 313,
+        eCSSKeyword_khz = 314,
+        eCSSKeyword_korean_hangul_formal = 315,
+        eCSSKeyword_korean_hanja_formal = 316,
+        eCSSKeyword_korean_hanja_informal = 317,
+        eCSSKeyword_landscape = 318,
+        eCSSKeyword_large = 319,
+        eCSSKeyword_larger = 320,
+        eCSSKeyword_last = 321,
+        eCSSKeyword_last_baseline = 322,
+        eCSSKeyword_layout = 323,
+        eCSSKeyword_left = 324,
+        eCSSKeyword_legacy = 325,
+        eCSSKeyword_lighten = 326,
+        eCSSKeyword_lighter = 327,
+        eCSSKeyword_line_through = 328,
+        eCSSKeyword_linear = 329,
+        eCSSKeyword_lining_nums = 330,
+        eCSSKeyword_list_item = 331,
+        eCSSKeyword_local = 332,
+        eCSSKeyword_logical = 333,
+        eCSSKeyword_looped = 334,
+        eCSSKeyword_lowercase = 335,
+        eCSSKeyword_lr = 336,
+        eCSSKeyword_lr_tb = 337,
+        eCSSKeyword_ltr = 338,
+        eCSSKeyword_luminance = 339,
+        eCSSKeyword_luminosity = 340,
+        eCSSKeyword_mandatory = 341,
+        eCSSKeyword_manipulation = 342,
+        eCSSKeyword_manual = 343,
+        eCSSKeyword_margin_box = 344,
+        eCSSKeyword_markers = 345,
+        eCSSKeyword_match_parent = 346,
+        eCSSKeyword_match_source = 347,
+        eCSSKeyword_matrix = 348,
+        eCSSKeyword_matrix3d = 349,
+        eCSSKeyword_max_content = 350,
+        eCSSKeyword_medium = 351,
+        eCSSKeyword_menu = 352,
+        eCSSKeyword_menutext = 353,
+        eCSSKeyword_message_box = 354,
+        eCSSKeyword_middle = 355,
+        eCSSKeyword_min_content = 356,
+        eCSSKeyword_minmax = 357,
+        eCSSKeyword_mix = 358,
+        eCSSKeyword_mixed = 359,
+        eCSSKeyword_mm = 360,
+        eCSSKeyword_monospace = 361,
+        eCSSKeyword_move = 362,
+        eCSSKeyword_ms = 363,
+        eCSSKeyword_multiply = 364,
+        eCSSKeyword_n_resize = 365,
+        eCSSKeyword_narrower = 366,
+        eCSSKeyword_ne_resize = 367,
+        eCSSKeyword_nesw_resize = 368,
+        eCSSKeyword_no_clip = 369,
+        eCSSKeyword_no_close_quote = 370,
+        eCSSKeyword_no_common_ligatures = 371,
+        eCSSKeyword_no_contextual = 372,
+        eCSSKeyword_no_discretionary_ligatures = 373,
+        eCSSKeyword_no_drag = 374,
+        eCSSKeyword_no_drop = 375,
+        eCSSKeyword_no_historical_ligatures = 376,
+        eCSSKeyword_no_open_quote = 377,
+        eCSSKeyword_no_repeat = 378,
+        eCSSKeyword_none = 379,
+        eCSSKeyword_normal = 380,
+        eCSSKeyword_not_allowed = 381,
+        eCSSKeyword_nowrap = 382,
+        eCSSKeyword_numeric = 383,
+        eCSSKeyword_ns_resize = 384,
+        eCSSKeyword_nw_resize = 385,
+        eCSSKeyword_nwse_resize = 386,
+        eCSSKeyword_oblique = 387,
+        eCSSKeyword_oldstyle_nums = 388,
+        eCSSKeyword_opacity = 389,
+        eCSSKeyword_open = 390,
+        eCSSKeyword_open_quote = 391,
+        eCSSKeyword_optional = 392,
+        eCSSKeyword_ordinal = 393,
+        eCSSKeyword_ornaments = 394,
+        eCSSKeyword_outset = 395,
+        eCSSKeyword_outside = 396,
+        eCSSKeyword_over = 397,
+        eCSSKeyword_overlay = 398,
+        eCSSKeyword_overline = 399,
+        eCSSKeyword_paint = 400,
+        eCSSKeyword_padding_box = 401,
+        eCSSKeyword_painted = 402,
+        eCSSKeyword_pan_x = 403,
+        eCSSKeyword_pan_y = 404,
+        eCSSKeyword_paused = 405,
+        eCSSKeyword_pc = 406,
+        eCSSKeyword_perspective = 407,
+        eCSSKeyword_petite_caps = 408,
+        eCSSKeyword_physical = 409,
+        eCSSKeyword_plaintext = 410,
+        eCSSKeyword_pointer = 411,
+        eCSSKeyword_polygon = 412,
+        eCSSKeyword_portrait = 413,
+        eCSSKeyword_pre = 414,
+        eCSSKeyword_pre_wrap = 415,
+        eCSSKeyword_pre_line = 416,
+        eCSSKeyword_preserve_3d = 417,
+        eCSSKeyword_progress = 418,
+        eCSSKeyword_progressive = 419,
+        eCSSKeyword_proportional_nums = 420,
+        eCSSKeyword_proportional_width = 421,
+        eCSSKeyword_proximity = 422,
+        eCSSKeyword_pt = 423,
+        eCSSKeyword_px = 424,
+        eCSSKeyword_rad = 425,
+        eCSSKeyword_read_only = 426,
+        eCSSKeyword_read_write = 427,
+        eCSSKeyword_relative = 428,
+        eCSSKeyword_repeat = 429,
+        eCSSKeyword_repeat_x = 430,
+        eCSSKeyword_repeat_y = 431,
+        eCSSKeyword_reverse = 432,
+        eCSSKeyword_ridge = 433,
+        eCSSKeyword_right = 434,
+        eCSSKeyword_rl = 435,
+        eCSSKeyword_rl_tb = 436,
+        eCSSKeyword_rotate = 437,
+        eCSSKeyword_rotate3d = 438,
+        eCSSKeyword_rotatex = 439,
+        eCSSKeyword_rotatey = 440,
+        eCSSKeyword_rotatez = 441,
+        eCSSKeyword_round = 442,
+        eCSSKeyword_row = 443,
+        eCSSKeyword_row_resize = 444,
+        eCSSKeyword_row_reverse = 445,
+        eCSSKeyword_rtl = 446,
+        eCSSKeyword_ruby = 447,
+        eCSSKeyword_ruby_base = 448,
+        eCSSKeyword_ruby_base_container = 449,
+        eCSSKeyword_ruby_text = 450,
+        eCSSKeyword_ruby_text_container = 451,
+        eCSSKeyword_running = 452,
+        eCSSKeyword_s = 453,
+        eCSSKeyword_s_resize = 454,
+        eCSSKeyword_safe = 455,
+        eCSSKeyword_saturate = 456,
+        eCSSKeyword_saturation = 457,
+        eCSSKeyword_scale = 458,
+        eCSSKeyword_scale_down = 459,
+        eCSSKeyword_scale3d = 460,
+        eCSSKeyword_scalex = 461,
+        eCSSKeyword_scaley = 462,
+        eCSSKeyword_scalez = 463,
+        eCSSKeyword_screen = 464,
+        eCSSKeyword_script = 465,
+        eCSSKeyword_scroll = 466,
+        eCSSKeyword_scrollbar = 467,
+        eCSSKeyword_scrollbar_small = 468,
+        eCSSKeyword_scrollbar_horizontal = 469,
+        eCSSKeyword_scrollbar_vertical = 470,
+        eCSSKeyword_se_resize = 471,
+        eCSSKeyword_select_after = 472,
+        eCSSKeyword_select_all = 473,
+        eCSSKeyword_select_before = 474,
+        eCSSKeyword_select_menu = 475,
+        eCSSKeyword_select_same = 476,
+        eCSSKeyword_self_end = 477,
+        eCSSKeyword_self_start = 478,
+        eCSSKeyword_semi_condensed = 479,
+        eCSSKeyword_semi_expanded = 480,
+        eCSSKeyword_separate = 481,
+        eCSSKeyword_sepia = 482,
+        eCSSKeyword_serif = 483,
+        eCSSKeyword_sesame = 484,
+        eCSSKeyword_show = 485,
+        eCSSKeyword_sideways = 486,
+        eCSSKeyword_sideways_lr = 487,
+        eCSSKeyword_sideways_right = 488,
+        eCSSKeyword_sideways_rl = 489,
+        eCSSKeyword_simp_chinese_formal = 490,
+        eCSSKeyword_simp_chinese_informal = 491,
+        eCSSKeyword_simplified = 492,
+        eCSSKeyword_skew = 493,
+        eCSSKeyword_skewx = 494,
+        eCSSKeyword_skewy = 495,
+        eCSSKeyword_slashed_zero = 496,
+        eCSSKeyword_slice = 497,
+        eCSSKeyword_small = 498,
+        eCSSKeyword_small_caps = 499,
+        eCSSKeyword_small_caption = 500,
+        eCSSKeyword_smaller = 501,
+        eCSSKeyword_smooth = 502,
+        eCSSKeyword_soft = 503,
+        eCSSKeyword_soft_light = 504,
+        eCSSKeyword_solid = 505,
+        eCSSKeyword_space_around = 506,
+        eCSSKeyword_space_between = 507,
+        eCSSKeyword_space_evenly = 508,
+        eCSSKeyword_span = 509,
+        eCSSKeyword_spell_out = 510,
+        eCSSKeyword_square = 511,
+        eCSSKeyword_stacked_fractions = 512,
+        eCSSKeyword_start = 513,
+        eCSSKeyword_static = 514,
+        eCSSKeyword_standalone = 515,
+        eCSSKeyword_status_bar = 516,
+        eCSSKeyword_step_end = 517,
+        eCSSKeyword_step_start = 518,
+        eCSSKeyword_sticky = 519,
+        eCSSKeyword_stretch = 520,
+        eCSSKeyword_stretch_to_fit = 521,
+        eCSSKeyword_stretched = 522,
+        eCSSKeyword_strict = 523,
+        eCSSKeyword_stroke = 524,
+        eCSSKeyword_stroke_box = 525,
+        eCSSKeyword_style = 526,
+        eCSSKeyword_styleset = 527,
+        eCSSKeyword_stylistic = 528,
+        eCSSKeyword_sub = 529,
+        eCSSKeyword_subgrid = 530,
+        eCSSKeyword_subtract = 531,
+        eCSSKeyword_super = 532,
+        eCSSKeyword_sw_resize = 533,
+        eCSSKeyword_swash = 534,
+        eCSSKeyword_swap = 535,
+        eCSSKeyword_table = 536,
+        eCSSKeyword_table_caption = 537,
+        eCSSKeyword_table_cell = 538,
+        eCSSKeyword_table_column = 539,
+        eCSSKeyword_table_column_group = 540,
+        eCSSKeyword_table_footer_group = 541,
+        eCSSKeyword_table_header_group = 542,
+        eCSSKeyword_table_row = 543,
+        eCSSKeyword_table_row_group = 544,
+        eCSSKeyword_tabular_nums = 545,
+        eCSSKeyword_tailed = 546,
+        eCSSKeyword_tb = 547,
+        eCSSKeyword_tb_rl = 548,
+        eCSSKeyword_text = 549,
+        eCSSKeyword_text_bottom = 550,
+        eCSSKeyword_text_top = 551,
+        eCSSKeyword_thick = 552,
+        eCSSKeyword_thin = 553,
+        eCSSKeyword_threeddarkshadow = 554,
+        eCSSKeyword_threedface = 555,
+        eCSSKeyword_threedhighlight = 556,
+        eCSSKeyword_threedlightshadow = 557,
+        eCSSKeyword_threedshadow = 558,
+        eCSSKeyword_titling_caps = 559,
+        eCSSKeyword_toggle = 560,
+        eCSSKeyword_top = 561,
+        eCSSKeyword_top_outside = 562,
+        eCSSKeyword_trad_chinese_formal = 563,
+        eCSSKeyword_trad_chinese_informal = 564,
+        eCSSKeyword_traditional = 565,
+        eCSSKeyword_translate = 566,
+        eCSSKeyword_translate3d = 567,
+        eCSSKeyword_translatex = 568,
+        eCSSKeyword_translatey = 569,
+        eCSSKeyword_translatez = 570,
+        eCSSKeyword_transparent = 571,
+        eCSSKeyword_triangle = 572,
+        eCSSKeyword_tri_state = 573,
+        eCSSKeyword_ultra_condensed = 574,
+        eCSSKeyword_ultra_expanded = 575,
+        eCSSKeyword_under = 576,
+        eCSSKeyword_underline = 577,
+        eCSSKeyword_unicase = 578,
+        eCSSKeyword_unsafe = 579,
+        eCSSKeyword_unset = 580,
+        eCSSKeyword_uppercase = 581,
+        eCSSKeyword_upright = 582,
+        eCSSKeyword_vertical = 583,
+        eCSSKeyword_vertical_lr = 584,
+        eCSSKeyword_vertical_rl = 585,
+        eCSSKeyword_vertical_text = 586,
+        eCSSKeyword_view_box = 587,
+        eCSSKeyword_visible = 588,
+        eCSSKeyword_visiblefill = 589,
+        eCSSKeyword_visiblepainted = 590,
+        eCSSKeyword_visiblestroke = 591,
+        eCSSKeyword_w_resize = 592,
+        eCSSKeyword_wait = 593,
+        eCSSKeyword_wavy = 594,
+        eCSSKeyword_weight = 595,
+        eCSSKeyword_wider = 596,
+        eCSSKeyword_window = 597,
+        eCSSKeyword_windowframe = 598,
+        eCSSKeyword_windowtext = 599,
+        eCSSKeyword_words = 600,
+        eCSSKeyword_wrap = 601,
+        eCSSKeyword_wrap_reverse = 602,
+        eCSSKeyword_write_only = 603,
+        eCSSKeyword_x_large = 604,
+        eCSSKeyword_x_small = 605,
+        eCSSKeyword_xx_large = 606,
+        eCSSKeyword_xx_small = 607,
+        eCSSKeyword_zoom_in = 608,
+        eCSSKeyword_zoom_out = 609,
+        eCSSKeyword_radio = 610,
+        eCSSKeyword_checkbox = 611,
+        eCSSKeyword_button_bevel = 612,
+        eCSSKeyword_toolbox = 613,
+        eCSSKeyword_toolbar = 614,
+        eCSSKeyword_toolbarbutton = 615,
+        eCSSKeyword_toolbargripper = 616,
+        eCSSKeyword_dualbutton = 617,
+        eCSSKeyword_toolbarbutton_dropdown = 618,
+        eCSSKeyword_button_arrow_up = 619,
+        eCSSKeyword_button_arrow_down = 620,
+        eCSSKeyword_button_arrow_next = 621,
+        eCSSKeyword_button_arrow_previous = 622,
+        eCSSKeyword_separator = 623,
+        eCSSKeyword_splitter = 624,
+        eCSSKeyword_statusbar = 625,
+        eCSSKeyword_statusbarpanel = 626,
+        eCSSKeyword_resizerpanel = 627,
+        eCSSKeyword_resizer = 628,
+        eCSSKeyword_listbox = 629,
+        eCSSKeyword_listitem = 630,
+        eCSSKeyword_numbers = 631,
+        eCSSKeyword_number_input = 632,
+        eCSSKeyword_treeview = 633,
+        eCSSKeyword_treeitem = 634,
+        eCSSKeyword_treetwisty = 635,
+        eCSSKeyword_treetwistyopen = 636,
+        eCSSKeyword_treeline = 637,
+        eCSSKeyword_treeheader = 638,
+        eCSSKeyword_treeheadercell = 639,
+        eCSSKeyword_treeheadersortarrow = 640,
+        eCSSKeyword_progressbar = 641,
+        eCSSKeyword_progressbar_vertical = 642,
+        eCSSKeyword_progresschunk = 643,
+        eCSSKeyword_progresschunk_vertical = 644,
+        eCSSKeyword_tab = 645,
+        eCSSKeyword_tabpanels = 646,
+        eCSSKeyword_tabpanel = 647,
+        eCSSKeyword_tab_scroll_arrow_back = 648,
+        eCSSKeyword_tab_scroll_arrow_forward = 649,
+        eCSSKeyword_tooltip = 650,
+        eCSSKeyword_spinner = 651,
+        eCSSKeyword_spinner_upbutton = 652,
+        eCSSKeyword_spinner_downbutton = 653,
+        eCSSKeyword_spinner_textfield = 654,
+        eCSSKeyword_scrollbarbutton_up = 655,
+        eCSSKeyword_scrollbarbutton_down = 656,
+        eCSSKeyword_scrollbarbutton_left = 657,
+        eCSSKeyword_scrollbarbutton_right = 658,
+        eCSSKeyword_scrollbartrack_horizontal = 659,
+        eCSSKeyword_scrollbartrack_vertical = 660,
+        eCSSKeyword_scrollbarthumb_horizontal = 661,
+        eCSSKeyword_scrollbarthumb_vertical = 662,
+        eCSSKeyword_sheet = 663,
+        eCSSKeyword_textfield = 664,
+        eCSSKeyword_textfield_multiline = 665,
+        eCSSKeyword_caret = 666,
+        eCSSKeyword_searchfield = 667,
+        eCSSKeyword_menubar = 668,
+        eCSSKeyword_menupopup = 669,
+        eCSSKeyword_menuitem = 670,
+        eCSSKeyword_checkmenuitem = 671,
+        eCSSKeyword_radiomenuitem = 672,
+        eCSSKeyword_menucheckbox = 673,
+        eCSSKeyword_menuradio = 674,
+        eCSSKeyword_menuseparator = 675,
+        eCSSKeyword_menuarrow = 676,
+        eCSSKeyword_menuimage = 677,
+        eCSSKeyword_menuitemtext = 678,
+        eCSSKeyword_menulist = 679,
+        eCSSKeyword_menulist_button = 680,
+        eCSSKeyword_menulist_text = 681,
+        eCSSKeyword_menulist_textfield = 682,
+        eCSSKeyword_meterbar = 683,
+        eCSSKeyword_meterchunk = 684,
+        eCSSKeyword_minimal_ui = 685,
+        eCSSKeyword_range = 686,
+        eCSSKeyword_range_thumb = 687,
+        eCSSKeyword_sans_serif = 688,
+        eCSSKeyword_sans_serif_bold_italic = 689,
+        eCSSKeyword_sans_serif_italic = 690,
+        eCSSKeyword_scale_horizontal = 691,
+        eCSSKeyword_scale_vertical = 692,
+        eCSSKeyword_scalethumb_horizontal = 693,
+        eCSSKeyword_scalethumb_vertical = 694,
+        eCSSKeyword_scalethumbstart = 695,
+        eCSSKeyword_scalethumbend = 696,
+        eCSSKeyword_scalethumbtick = 697,
+        eCSSKeyword_groupbox = 698,
+        eCSSKeyword_checkbox_container = 699,
+        eCSSKeyword_radio_container = 700,
+        eCSSKeyword_checkbox_label = 701,
+        eCSSKeyword_radio_label = 702,
+        eCSSKeyword_button_focus = 703,
+        eCSSKeyword__moz_win_media_toolbox = 704,
+        eCSSKeyword__moz_win_communications_toolbox = 705,
+        eCSSKeyword__moz_win_browsertabbar_toolbox = 706,
+        eCSSKeyword__moz_win_mediatext = 707,
+        eCSSKeyword__moz_win_communicationstext = 708,
+        eCSSKeyword__moz_win_glass = 709,
+        eCSSKeyword__moz_win_borderless_glass = 710,
+        eCSSKeyword__moz_window_titlebar = 711,
+        eCSSKeyword__moz_window_titlebar_maximized = 712,
+        eCSSKeyword__moz_window_frame_left = 713,
+        eCSSKeyword__moz_window_frame_right = 714,
+        eCSSKeyword__moz_window_frame_bottom = 715,
+        eCSSKeyword__moz_window_button_close = 716,
+        eCSSKeyword__moz_window_button_minimize = 717,
+        eCSSKeyword__moz_window_button_maximize = 718,
+        eCSSKeyword__moz_window_button_restore = 719,
+        eCSSKeyword__moz_window_button_box = 720,
+        eCSSKeyword__moz_window_button_box_maximized = 721,
+        eCSSKeyword__moz_mac_help_button = 722,
+        eCSSKeyword__moz_win_exclude_glass = 723,
+        eCSSKeyword__moz_mac_vibrancy_light = 724,
+        eCSSKeyword__moz_mac_vibrancy_dark = 725,
+        eCSSKeyword__moz_mac_disclosure_button_closed = 726,
+        eCSSKeyword__moz_mac_disclosure_button_open = 727,
+        eCSSKeyword__moz_mac_source_list = 728,
+        eCSSKeyword__moz_mac_source_list_selection = 729,
+        eCSSKeyword__moz_mac_active_source_list_selection = 730,
+        eCSSKeyword_alphabetic = 731,
+        eCSSKeyword_bevel = 732,
+        eCSSKeyword_butt = 733,
+        eCSSKeyword_central = 734,
+        eCSSKeyword_crispedges = 735,
+        eCSSKeyword_evenodd = 736,
+        eCSSKeyword_geometricprecision = 737,
+        eCSSKeyword_hanging = 738,
+        eCSSKeyword_ideographic = 739,
+        eCSSKeyword_linearrgb = 740,
+        eCSSKeyword_mathematical = 741,
+        eCSSKeyword_miter = 742,
+        eCSSKeyword_no_change = 743,
+        eCSSKeyword_non_scaling_stroke = 744,
+        eCSSKeyword_nonzero = 745,
+        eCSSKeyword_optimizelegibility = 746,
+        eCSSKeyword_optimizequality = 747,
+        eCSSKeyword_optimizespeed = 748,
+        eCSSKeyword_reset_size = 749,
+        eCSSKeyword_srgb = 750,
+        eCSSKeyword_symbolic = 751,
+        eCSSKeyword_symbols = 752,
+        eCSSKeyword_text_after_edge = 753,
+        eCSSKeyword_text_before_edge = 754,
+        eCSSKeyword_use_script = 755,
+        eCSSKeyword__moz_crisp_edges = 756,
+        eCSSKeyword_space = 757,
+        eCSSKeyword_COUNT = 758,
     }
     pub const nsCSSPropertyID_eCSSProperty_COUNT_DUMMY: root::nsCSSPropertyID
               =
         nsCSSPropertyID::eCSSProperty_z_index;
     pub const nsCSSPropertyID_eCSSProperty_all: root::nsCSSPropertyID =
         nsCSSPropertyID::eCSSProperty_COUNT_no_shorthands;
     pub const nsCSSPropertyID_eCSSProperty_COUNT_DUMMY2: root::nsCSSPropertyID
               =
@@ -11993,24 +11991,26 @@ pub mod root {
     }
     #[repr(C)]
     #[derive(Debug)]
     pub struct nsStyleImageLayers_Layer {
         pub mImage: root::nsStyleImage,
         pub mSourceURI: root::RefPtr<root::mozilla::css::URLValueData>,
         pub mPosition: root::mozilla::Position,
         pub mSize: root::nsStyleImageLayers_Size,
-        pub mClip: u8,
-        pub mOrigin: u8,
+        pub mClip: root::nsStyleImageLayers_Layer_StyleGeometryBox,
+        pub mOrigin: root::nsStyleImageLayers_Layer_StyleGeometryBox,
         pub mAttachment: u8,
         pub mBlendMode: u8,
         pub mComposite: u8,
         pub mMaskMode: u8,
         pub mRepeat: root::nsStyleImageLayers_Repeat,
     }
+    pub type nsStyleImageLayers_Layer_StyleGeometryBox =
+        root::mozilla::StyleGeometryBox;
     #[test]
     fn bindgen_test_layout_nsStyleImageLayers_Layer() {
         assert_eq!(::std::mem::size_of::<nsStyleImageLayers_Layer>() ,
                    104usize);
         assert_eq!(::std::mem::align_of::<nsStyleImageLayers_Layer>() ,
                    8usize);
     }
     extern "C" {
--- a/servo/components/style/properties/gecko.mako.rs
+++ b/servo/components/style/properties/gecko.mako.rs
@@ -1057,20 +1057,20 @@ fn static_assert() {
 <%self:impl_trait style_struct_name="Box" skip_longhands="${skip_box_longhands}">
 
     // We manually-implement the |display| property until we get general
     // infrastructure for preffing certain values.
     <% display_keyword = Keyword("display", "inline block inline-block table inline-table table-row-group " +
                                             "table-header-group table-footer-group table-row table-column-group " +
                                             "table-column table-cell table-caption list-item flex none " +
                                             "inline-flex grid inline-grid ruby ruby-base ruby-base-container " +
-                                            "ruby-text ruby-text-container contents -webkit-box -webkit-inline-box " +
-                                            "-moz-box -moz-inline-box -moz-grid -moz-inline-grid -moz-grid-group " +
-                                            "-moz-grid-line -moz-stack -moz-inline-stack -moz-deck -moz-popup " +
-                                            "-moz-groupbox",
+                                            "ruby-text ruby-text-container contents flow-root -webkit-box " +
+                                            "-webkit-inline-box -moz-box -moz-inline-box -moz-grid -moz-inline-grid " +
+                                            "-moz-grid-group -moz-grid-line -moz-stack -moz-inline-stack -moz-deck " +
+                                            "-moz-popup -moz-groupbox",
                                             gecko_enum_prefix="StyleDisplay",
                                             gecko_strip_moz_prefix=False) %>
 
     pub fn set_display(&mut self, v: longhands::display::computed_value::T) {
         use properties::longhands::display::computed_value::T as Keyword;
         // FIXME(bholley): Align binary representations and ditch |match| for cast + static_asserts
         let result = match v {
             % for value in display_keyword.values_for('gecko'):
@@ -1396,32 +1396,34 @@ fn static_assert() {
         };
         nsStyleImageLayers_Repeat {
               mXRepeat: repeat_x as u8,
               mYRepeat: repeat_y as u8,
         }
     </%self:simple_image_array_property>
 
     <%self:simple_image_array_property name="clip" shorthand="${shorthand}" field_name="mClip">
+        use gecko_bindings::structs::StyleGeometryBox;
         use properties::longhands::${shorthand}_clip::single_value::computed_value::T;
 
         match servo {
-            T::border_box => structs::NS_STYLE_IMAGELAYER_CLIP_BORDER as u8,
-            T::padding_box => structs::NS_STYLE_IMAGELAYER_CLIP_PADDING as u8,
-            T::content_box => structs::NS_STYLE_IMAGELAYER_CLIP_CONTENT as u8,
+            T::border_box => StyleGeometryBox::Border,
+            T::padding_box => StyleGeometryBox::Padding,
+            T::content_box => StyleGeometryBox::Content,
         }
     </%self:simple_image_array_property>
 
     <%self:simple_image_array_property name="origin" shorthand="${shorthand}" field_name="mOrigin">
+        use gecko_bindings::structs::StyleGeometryBox;
         use properties::longhands::${shorthand}_origin::single_value::computed_value::T;
 
         match servo {
-            T::border_box => structs::NS_STYLE_IMAGELAYER_ORIGIN_BORDER as u8,
-            T::padding_box => structs::NS_STYLE_IMAGELAYER_ORIGIN_PADDING as u8,
-            T::content_box => structs::NS_STYLE_IMAGELAYER_ORIGIN_CONTENT as u8,
+            T::border_box => StyleGeometryBox::Border,
+            T::padding_box => StyleGeometryBox::Padding,
+            T::content_box => StyleGeometryBox::Content,
         }
     </%self:simple_image_array_property>
 
     % if shorthand != "background":
     pub fn copy_${shorthand}_position_from(&mut self, other: &Self) {
         use gecko_bindings::structs::nsStyleImageLayers_LayerType as LayerType;
 
         self.gecko.${image_layers_field}.mPositionXCount
@@ -2231,17 +2233,17 @@ clip-path
             T::add => structs::NS_STYLE_MASK_COMPOSITE_ADD as u8,
             T::subtract => structs::NS_STYLE_MASK_COMPOSITE_SUBTRACT as u8,
             T::intersect => structs::NS_STYLE_MASK_COMPOSITE_INTERSECT as u8,
             T::exclude => structs::NS_STYLE_MASK_COMPOSITE_EXCLUDE as u8,
         }
     </%self:simple_image_array_property>
     pub fn set_clip_path(&mut self, v: longhands::clip_path::computed_value::T) {
         use gecko_bindings::bindings::{Gecko_NewBasicShape, Gecko_DestroyClipPath};
-        use gecko_bindings::structs::StyleClipPathGeometryBox;
+        use gecko_bindings::structs::StyleGeometryBox;
         use gecko_bindings::structs::{StyleBasicShape, StyleBasicShapeType, StyleShapeSourceType};
         use gecko_bindings::structs::{StyleClipPath, StyleFillRule};
         use gecko::conversions::basic_shape::set_corners_from_radius;
         use gecko::values::GeckoStyleCoordConvertible;
         use values::computed::basic_shape::*;
         let ref mut clip_path = self.gecko.mClipPath;
         // clean up existing struct
         unsafe { Gecko_DestroyClipPath(clip_path) };
@@ -2252,17 +2254,17 @@ clip-path
             ShapeSource::Url(..) => println!("stylo: clip-path: url() not yet implemented"),
             ShapeSource::None => {} // don't change the type
             ShapeSource::Box(reference) => {
                 clip_path.mReferenceBox = reference.into();
                 clip_path.mType = StyleShapeSourceType::Box;
             }
             ShapeSource::Shape(servo_shape, maybe_box) => {
                 clip_path.mReferenceBox = maybe_box.map(Into::into)
-                                                   .unwrap_or(StyleClipPathGeometryBox::NoBox);
+                                                   .unwrap_or(StyleGeometryBox::NoBox);
                 clip_path.mType = StyleShapeSourceType::Shape;
 
                 fn init_shape(clip_path: &mut StyleClipPath, ty: StyleBasicShapeType) -> &mut StyleBasicShape {
                     unsafe {
                         // We have to be very careful to avoid a copy here!
                         let ref mut union = clip_path.__bindgen_anon_1;
                         let mut shape: &mut *mut StyleBasicShape = union.mBasicShape.as_mut();
                         *shape = Gecko_NewBasicShape(ty);
@@ -2337,31 +2339,31 @@ clip-path
         use gecko_bindings::bindings::Gecko_CopyClipPathValueFrom;
         unsafe {
             Gecko_CopyClipPathValueFrom(&mut self.gecko.mClipPath, &other.gecko.mClipPath);
         }
     }
 
     pub fn clone_clip_path(&self) -> longhands::clip_path::computed_value::T {
         use gecko_bindings::structs::StyleShapeSourceType;
-        use gecko_bindings::structs::StyleClipPathGeometryBox;
+        use gecko_bindings::structs::StyleGeometryBox;
         use values::computed::basic_shape::*;
         let ref clip_path = self.gecko.mClipPath;
 
         match clip_path.mType {
             StyleShapeSourceType::None => ShapeSource::None,
             StyleShapeSourceType::Box => {
                 ShapeSource::Box(clip_path.mReferenceBox.into())
             }
             StyleShapeSourceType::URL => {
                 warn!("stylo: clip-path: url() not implemented yet");
                 Default::default()
             }
             StyleShapeSourceType::Shape => {
-                let reference = if let StyleClipPathGeometryBox::NoBox = clip_path.mReferenceBox {
+                let reference = if let StyleGeometryBox::NoBox = clip_path.mReferenceBox {
                     None
                 } else {
                     Some(clip_path.mReferenceBox.into())
                 };
                 let union = clip_path.__bindgen_anon_1;
                 let shape = unsafe { &**union.mBasicShape.as_ref() };
                 ShapeSource::Shape(shape.into(), reference)
             }
--- a/servo/components/style/properties/longhand/box.mako.rs
+++ b/servo/components/style/properties/longhand/box.mako.rs
@@ -17,20 +17,20 @@
     <%
         values = """inline block inline-block
             table inline-table table-row-group table-header-group table-footer-group
             table-row table-column-group table-column table-cell table-caption
             list-item flex none
         """.split()
         if product == "gecko":
             values += """inline-flex grid inline-grid ruby ruby-base ruby-base-container
-                ruby-text ruby-text-container contents -webkit-box -webkit-inline-box
-                -moz-box -moz-inline-box -moz-grid -moz-inline-grid -moz-grid-group
-                -moz-grid-line -moz-stack -moz-inline-stack -moz-deck -moz-popup
-                -moz-groupbox""".split()
+                ruby-text ruby-text-container contents flow-root -webkit-box
+                -webkit-inline-box -moz-box -moz-inline-box -moz-grid -moz-inline-grid
+                -moz-grid-group -moz-grid-line -moz-stack -moz-inline-stack -moz-deck
+                -moz-popup -moz-groupbox""".split()
     %>
     pub use self::computed_value::T as SpecifiedValue;
     use values::computed::ComputedValueAsSpecified;
     use style_traits::ToCss;
     use values::NoViewportPercentage;
     impl NoViewportPercentage for SpecifiedValue {}
 
     pub mod computed_value {