Update bindgen draft
authorBoris Chiou <boris.chiou@gmail.com>
Fri, 03 Mar 2017 17:49:33 +0800
changeset 493150 215e6a60cb380d7ce2eb2adc3f33f8993ee95671
parent 493149 4ef08389185f6fe9f1d2bec5a2091fb91d75e1f0
child 493151 09bbfb621c8dcc25e01e597e80c3fc68b37d0954
push id47652
push userbmo:boris.chiou@gmail.com
push dateFri, 03 Mar 2017 09:56:58 +0000
milestone54.0a1
Update bindgen MozReview-Commit-ID: 6Lbiqenm9CI
servo/components/style/gecko_bindings/structs_debug.rs
servo/components/style/gecko_bindings/structs_release.rs
--- a/servo/components/style/gecko_bindings/structs_debug.rs
+++ b/servo/components/style/gecko_bindings/structs_debug.rs
@@ -1358,16 +1358,17 @@ pub mod root {
         pub const SERVO_PREF_ENABLED_text_decoration_line: bool = false;
         pub const SERVO_PREF_ENABLED_text_decoration_style: bool = false;
         pub const SERVO_PREF_ENABLED_text_emphasis: bool = false;
         pub const SERVO_PREF_ENABLED_text_emphasis_color: bool = false;
         pub const SERVO_PREF_ENABLED_text_emphasis_position: bool = false;
         pub const SERVO_PREF_ENABLED_text_emphasis_style: bool = false;
         pub const SERVO_PREF_ENABLED__webkit_text_fill_color: bool = true;
         pub const SERVO_PREF_ENABLED_text_indent: bool = false;
+        pub const SERVO_PREF_ENABLED_text_justify: bool = true;
         pub const SERVO_PREF_ENABLED_text_orientation: bool = false;
         pub const SERVO_PREF_ENABLED_text_overflow: bool = false;
         pub const SERVO_PREF_ENABLED_text_rendering: bool = false;
         pub const SERVO_PREF_ENABLED_text_shadow: bool = false;
         pub const SERVO_PREF_ENABLED__moz_text_size_adjust: bool = false;
         pub const SERVO_PREF_ENABLED__webkit_text_stroke: bool = true;
         pub const SERVO_PREF_ENABLED__webkit_text_stroke_color: bool = true;
         pub const SERVO_PREF_ENABLED__webkit_text_stroke_width: bool = true;
@@ -2578,30 +2579,30 @@ pub mod root {
             impl Clone for CallbackObject_FastCallbackConstructor {
                 fn clone(&self) -> Self { *self }
             }
             #[repr(C)]
             #[derive(Debug)]
             pub struct CallbackObject_CallSetup {
                 pub mCx: *mut root::JSContext,
                 pub mCompartment: *mut root::JSCompartment,
-                pub mAutoEntryScript: [u64; 21usize],
+                pub mAutoEntryScript: [u64; 23usize],
                 pub mAutoIncumbentScript: [u64; 6usize],
                 pub mRootedCallable: [u64; 4usize],
                 pub mAsyncStack: [u64; 4usize],
                 pub mAsyncStackSetter: [u64; 7usize],
                 pub mAc: [u64; 4usize],
                 pub mErrorResult: *mut root::mozilla::ErrorResult,
                 pub mExceptionHandling: root::mozilla::dom::CallbackObject_ExceptionHandling,
                 pub mIsMainThread: bool,
             }
             #[test]
             fn bindgen_test_layout_CallbackObject_CallSetup() {
                 assert_eq!(::std::mem::size_of::<CallbackObject_CallSetup>() ,
-                           400usize , concat ! (
+                           416usize , concat ! (
                            "Size of: " , stringify ! (
                            CallbackObject_CallSetup ) ));
                 assert_eq! (::std::mem::align_of::<CallbackObject_CallSetup>()
                             , 8usize , concat ! (
                             "Alignment of " , stringify ! (
                             CallbackObject_CallSetup ) ));
                 assert_eq! (unsafe {
                             & ( * ( 0 as * const CallbackObject_CallSetup ) )
@@ -2622,65 +2623,65 @@ pub mod root {
                             . mAutoEntryScript as * const _ as usize } ,
                             16usize , concat ! (
                             "Alignment of field: " , stringify ! (
                             CallbackObject_CallSetup ) , "::" , stringify ! (
                             mAutoEntryScript ) ));
                 assert_eq! (unsafe {
                             & ( * ( 0 as * const CallbackObject_CallSetup ) )
                             . mAutoIncumbentScript as * const _ as usize } ,
-                            184usize , concat ! (
+                            200usize , concat ! (
                             "Alignment of field: " , stringify ! (
                             CallbackObject_CallSetup ) , "::" , stringify ! (
                             mAutoIncumbentScript ) ));
                 assert_eq! (unsafe {
                             & ( * ( 0 as * const CallbackObject_CallSetup ) )
                             . mRootedCallable as * const _ as usize } ,
-                            232usize , concat ! (
+                            248usize , concat ! (
                             "Alignment of field: " , stringify ! (
                             CallbackObject_CallSetup ) , "::" , stringify ! (
                             mRootedCallable ) ));
                 assert_eq! (unsafe {
                             & ( * ( 0 as * const CallbackObject_CallSetup ) )
-                            . mAsyncStack as * const _ as usize } , 264usize ,
+                            . mAsyncStack as * const _ as usize } , 280usize ,
                             concat ! (
                             "Alignment of field: " , stringify ! (
                             CallbackObject_CallSetup ) , "::" , stringify ! (
                             mAsyncStack ) ));
                 assert_eq! (unsafe {
                             & ( * ( 0 as * const CallbackObject_CallSetup ) )
                             . mAsyncStackSetter as * const _ as usize } ,
-                            296usize , concat ! (
+                            312usize , concat ! (
                             "Alignment of field: " , stringify ! (
                             CallbackObject_CallSetup ) , "::" , stringify ! (
                             mAsyncStackSetter ) ));
                 assert_eq! (unsafe {
                             & ( * ( 0 as * const CallbackObject_CallSetup ) )
-                            . mAc as * const _ as usize } , 352usize , concat
+                            . mAc as * const _ as usize } , 368usize , concat
                             ! (
                             "Alignment of field: " , stringify ! (
                             CallbackObject_CallSetup ) , "::" , stringify ! (
                             mAc ) ));
                 assert_eq! (unsafe {
                             & ( * ( 0 as * const CallbackObject_CallSetup ) )
-                            . mErrorResult as * const _ as usize } , 384usize
+                            . mErrorResult as * const _ as usize } , 400usize
                             , concat ! (
                             "Alignment of field: " , stringify ! (
                             CallbackObject_CallSetup ) , "::" , stringify ! (
                             mErrorResult ) ));
                 assert_eq! (unsafe {
                             & ( * ( 0 as * const CallbackObject_CallSetup ) )
                             . mExceptionHandling as * const _ as usize } ,
-                            392usize , concat ! (
+                            408usize , concat ! (
                             "Alignment of field: " , stringify ! (
                             CallbackObject_CallSetup ) , "::" , stringify ! (
                             mExceptionHandling ) ));
                 assert_eq! (unsafe {
                             & ( * ( 0 as * const CallbackObject_CallSetup ) )
-                            . mIsMainThread as * const _ as usize } , 396usize
+                            . mIsMainThread as * const _ as usize } , 412usize
                             , concat ! (
                             "Alignment of field: " , stringify ! (
                             CallbackObject_CallSetup ) , "::" , stringify ! (
                             mIsMainThread ) ));
             }
             extern "C" {
                 #[link_name =
                       "_ZN7mozilla3dom14CallbackObject21_cycleCollectorGlobalE"]
@@ -5339,72 +5340,76 @@ pub mod root {
             eUseCounter_OfflineResourceList_onprogress_getter = 22,
             eUseCounter_OfflineResourceList_onprogress_setter = 23,
             eUseCounter_OfflineResourceList_onupdateready_getter = 24,
             eUseCounter_OfflineResourceList_onupdateready_setter = 25,
             eUseCounter_OfflineResourceList_oncached_getter = 26,
             eUseCounter_OfflineResourceList_oncached_setter = 27,
             eUseCounter_OfflineResourceList_onobsolete_getter = 28,
             eUseCounter_OfflineResourceList_onobsolete_setter = 29,
-            eUseCounter_DataTransfer_addElement = 30,
-            eUseCounter_DataTransfer_mozItemCount_getter = 31,
-            eUseCounter_DataTransfer_mozItemCount_setter = 32,
-            eUseCounter_DataTransfer_mozCursor_getter = 33,
-            eUseCounter_DataTransfer_mozCursor_setter = 34,
-            eUseCounter_DataTransfer_mozTypesAt = 35,
-            eUseCounter_DataTransfer_mozClearDataAt = 36,
-            eUseCounter_DataTransfer_mozSetDataAt = 37,
-            eUseCounter_DataTransfer_mozGetDataAt = 38,
-            eUseCounter_DataTransfer_mozUserCancelled_getter = 39,
-            eUseCounter_DataTransfer_mozUserCancelled_setter = 40,
-            eUseCounter_DataTransfer_mozSourceNode_getter = 41,
-            eUseCounter_DataTransfer_mozSourceNode_setter = 42,
-            eUseCounter_GetAttributeNode = 43,
-            eUseCounter_SetAttributeNode = 44,
-            eUseCounter_GetAttributeNodeNS = 45,
-            eUseCounter_SetAttributeNodeNS = 46,
-            eUseCounter_RemoveAttributeNode = 47,
-            eUseCounter_CreateAttribute = 48,
-            eUseCounter_CreateAttributeNS = 49,
-            eUseCounter_NodeValue = 50,
-            eUseCounter_TextContent = 51,
-            eUseCounter_EnablePrivilege = 52,
-            eUseCounter_DOMExceptionCode = 53,
-            eUseCounter_NoExposedProps = 54,
-            eUseCounter_MutationEvent = 55,
-            eUseCounter_Components = 56,
-            eUseCounter_PrefixedVisibilityAPI = 57,
-            eUseCounter_NodeIteratorDetach = 58,
-            eUseCounter_LenientThis = 59,
-            eUseCounter_GetPreventDefault = 60,
-            eUseCounter_GetSetUserData = 61,
-            eUseCounter_MozGetAsFile = 62,
-            eUseCounter_UseOfCaptureEvents = 63,
-            eUseCounter_UseOfReleaseEvents = 64,
-            eUseCounter_UseOfDOM3LoadMethod = 65,
-            eUseCounter_ChromeUseOfDOM3LoadMethod = 66,
-            eUseCounter_ShowModalDialog = 67,
-            eUseCounter_Window_Content = 68,
-            eUseCounter_SyncXMLHttpRequest = 69,
-            eUseCounter_DataContainerEvent = 70,
-            eUseCounter_Window_Controllers = 71,
-            eUseCounter_ImportXULIntoContent = 72,
-            eUseCounter_PannerNodeDoppler = 73,
-            eUseCounter_NavigatorGetUserMedia = 74,
-            eUseCounter_WebrtcDeprecatedPrefix = 75,
-            eUseCounter_RTCPeerConnectionGetStreams = 76,
-            eUseCounter_AppCache = 77,
-            eUseCounter_PrefixedImageSmoothingEnabled = 78,
-            eUseCounter_PrefixedFullscreenAPI = 79,
-            eUseCounter_LenientSetter = 80,
-            eUseCounter_FileLastModifiedDate = 81,
-            eUseCounter_ImageBitmapRenderingContext_TransferImageBitmap = 82,
-            eUseCounter_URLCreateObjectURL_MediaStream = 83,
-            eUseCounter_XMLBaseAttribute = 84,
-            eUseCounter_Count = 85,
+            eUseCounter_IDBDatabase_createMutableFile = 30,
+            eUseCounter_IDBDatabase_mozCreateFileHandle = 31,
+            eUseCounter_IDBMutableFile_open = 32,
+            eUseCounter_IDBMutableFile_getFile = 33,
+            eUseCounter_DataTransfer_addElement = 34,
+            eUseCounter_DataTransfer_mozItemCount_getter = 35,
+            eUseCounter_DataTransfer_mozItemCount_setter = 36,
+            eUseCounter_DataTransfer_mozCursor_getter = 37,
+            eUseCounter_DataTransfer_mozCursor_setter = 38,
+            eUseCounter_DataTransfer_mozTypesAt = 39,
+            eUseCounter_DataTransfer_mozClearDataAt = 40,
+            eUseCounter_DataTransfer_mozSetDataAt = 41,
+            eUseCounter_DataTransfer_mozGetDataAt = 42,
+            eUseCounter_DataTransfer_mozUserCancelled_getter = 43,
+            eUseCounter_DataTransfer_mozUserCancelled_setter = 44,
+            eUseCounter_DataTransfer_mozSourceNode_getter = 45,
+            eUseCounter_DataTransfer_mozSourceNode_setter = 46,
+            eUseCounter_GetAttributeNode = 47,
+            eUseCounter_SetAttributeNode = 48,
+            eUseCounter_GetAttributeNodeNS = 49,
+            eUseCounter_SetAttributeNodeNS = 50,
+            eUseCounter_RemoveAttributeNode = 51,
+            eUseCounter_CreateAttribute = 52,
+            eUseCounter_CreateAttributeNS = 53,
+            eUseCounter_NodeValue = 54,
+            eUseCounter_TextContent = 55,
+            eUseCounter_EnablePrivilege = 56,
+            eUseCounter_DOMExceptionCode = 57,
+            eUseCounter_NoExposedProps = 58,
+            eUseCounter_MutationEvent = 59,
+            eUseCounter_Components = 60,
+            eUseCounter_PrefixedVisibilityAPI = 61,
+            eUseCounter_NodeIteratorDetach = 62,
+            eUseCounter_LenientThis = 63,
+            eUseCounter_GetPreventDefault = 64,
+            eUseCounter_GetSetUserData = 65,
+            eUseCounter_MozGetAsFile = 66,
+            eUseCounter_UseOfCaptureEvents = 67,
+            eUseCounter_UseOfReleaseEvents = 68,
+            eUseCounter_UseOfDOM3LoadMethod = 69,
+            eUseCounter_ChromeUseOfDOM3LoadMethod = 70,
+            eUseCounter_ShowModalDialog = 71,
+            eUseCounter_Window_Content = 72,
+            eUseCounter_SyncXMLHttpRequest = 73,
+            eUseCounter_DataContainerEvent = 74,
+            eUseCounter_Window_Controllers = 75,
+            eUseCounter_ImportXULIntoContent = 76,
+            eUseCounter_PannerNodeDoppler = 77,
+            eUseCounter_NavigatorGetUserMedia = 78,
+            eUseCounter_WebrtcDeprecatedPrefix = 79,
+            eUseCounter_RTCPeerConnectionGetStreams = 80,
+            eUseCounter_AppCache = 81,
+            eUseCounter_PrefixedImageSmoothingEnabled = 82,
+            eUseCounter_PrefixedFullscreenAPI = 83,
+            eUseCounter_LenientSetter = 84,
+            eUseCounter_FileLastModifiedDate = 85,
+            eUseCounter_ImageBitmapRenderingContext_TransferImageBitmap = 86,
+            eUseCounter_URLCreateObjectURL_MediaStream = 87,
+            eUseCounter_XMLBaseAttribute = 88,
+            eUseCounter_Count = 89,
         }
         #[repr(u32)]
         #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
         pub enum Side {
             eSideTop = 0,
             eSideRight = 1,
             eSideBottom = 2,
             eSideLeft = 3,
@@ -5734,16 +5739,24 @@ pub mod root {
         pub enum StyleShapeSourceType {
             None = 0,
             URL = 1,
             Shape = 2,
             Box = 3,
         }
         #[repr(u8)]
         #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
+        pub enum StyleTextJustify {
+            None = 0,
+            Auto = 1,
+            InterWord = 2,
+            InterCharacter = 3,
+        }
+        #[repr(u8)]
+        #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
         pub enum StyleUserFocus {
             None = 0,
             Ignore = 1,
             Normal = 2,
             SelectAll = 3,
             SelectBefore = 4,
             SelectAfter = 5,
             SelectSame = 6,
@@ -7791,16 +7804,22 @@ pub mod root {
         #[derive(Debug, Copy, Clone)]
         pub struct pair<_T1, _T2> {
             pub first: _T1,
             pub second: _T2,
         }
         pub type pair_first_type<_T1> = _T1;
         pub type pair_second_type<_T2> = _T2;
         #[repr(C)]
+        pub struct atomic<_Tp> {
+            pub _base: (),
+            pub _phantom_0: ::std::marker::PhantomData<_Tp>,
+        }
+        pub type atomic___base = [u8; 0usize];
+        #[repr(C)]
         #[derive(Debug, Copy)]
         pub struct input_iterator_tag {
             pub _address: u8,
         }
         #[test]
         fn bindgen_test_layout_input_iterator_tag() {
             assert_eq!(::std::mem::size_of::<input_iterator_tag>() , 1usize ,
                        concat ! (
@@ -7809,269 +7828,284 @@ pub mod root {
                         , concat ! (
                         "Alignment of " , stringify ! ( input_iterator_tag )
                         ));
         }
         impl Clone for input_iterator_tag {
             fn clone(&self) -> Self { *self }
         }
         #[repr(C)]
+        #[derive(Debug, Copy)]
+        pub struct forward_iterator_tag {
+            pub _address: u8,
+        }
+        #[test]
+        fn bindgen_test_layout_forward_iterator_tag() {
+            assert_eq!(::std::mem::size_of::<forward_iterator_tag>() , 1usize
+                       , concat ! (
+                       "Size of: " , stringify ! ( forward_iterator_tag ) ));
+            assert_eq! (::std::mem::align_of::<forward_iterator_tag>() ,
+                        1usize , concat ! (
+                        "Alignment of " , stringify ! ( forward_iterator_tag )
+                        ));
+        }
+        impl Clone for forward_iterator_tag {
+            fn clone(&self) -> Self { *self }
+        }
+        #[repr(C)]
+        #[derive(Debug, Copy)]
+        pub struct bidirectional_iterator_tag {
+            pub _address: u8,
+        }
+        #[test]
+        fn bindgen_test_layout_bidirectional_iterator_tag() {
+            assert_eq!(::std::mem::size_of::<bidirectional_iterator_tag>() ,
+                       1usize , concat ! (
+                       "Size of: " , stringify ! ( bidirectional_iterator_tag
+                       ) ));
+            assert_eq! (::std::mem::align_of::<bidirectional_iterator_tag>() ,
+                        1usize , concat ! (
+                        "Alignment of " , stringify ! (
+                        bidirectional_iterator_tag ) ));
+        }
+        impl Clone for bidirectional_iterator_tag {
+            fn clone(&self) -> Self { *self }
+        }
+        #[repr(C)]
+        #[derive(Debug, Copy)]
+        pub struct random_access_iterator_tag {
+            pub _address: u8,
+        }
+        #[test]
+        fn bindgen_test_layout_random_access_iterator_tag() {
+            assert_eq!(::std::mem::size_of::<random_access_iterator_tag>() ,
+                       1usize , concat ! (
+                       "Size of: " , stringify ! ( random_access_iterator_tag
+                       ) ));
+            assert_eq! (::std::mem::align_of::<random_access_iterator_tag>() ,
+                        1usize , concat ! (
+                        "Alignment of " , stringify ! (
+                        random_access_iterator_tag ) ));
+        }
+        impl Clone for random_access_iterator_tag {
+            fn clone(&self) -> Self { *self }
+        }
+        #[repr(C)]
         #[derive(Debug, Copy, Clone)]
         pub struct iterator<_Category, _Tp, _Distance, _Pointer, _Reference> {
             pub _address: u8,
             pub _phantom_0: ::std::marker::PhantomData<_Category>,
             pub _phantom_1: ::std::marker::PhantomData<_Tp>,
             pub _phantom_2: ::std::marker::PhantomData<_Distance>,
             pub _phantom_3: ::std::marker::PhantomData<_Pointer>,
             pub _phantom_4: ::std::marker::PhantomData<_Reference>,
         }
-        pub type iterator_iterator_category<_Category> = _Category;
         pub type iterator_value_type<_Tp> = _Tp;
         pub type iterator_difference_type<_Distance> = _Distance;
         pub type iterator_pointer<_Pointer> = _Pointer;
         pub type iterator_reference<_Reference> = _Reference;
-        #[repr(C)]
-        #[derive(Debug)]
-        pub struct atomic<_Tp> {
-            pub _M_i: _Tp,
-        }
-        pub mod chrono {
-            #[allow(unused_imports)]
-            use self::super::super::super::root;
-        }
-    }
-    pub mod __gnu_cxx {
-        #[allow(unused_imports)]
-        use self::super::super::root;
-    }
-    pub type __off_t = ::std::os::raw::c_long;
-    pub type __off64_t = ::std::os::raw::c_long;
-    #[repr(C)]
-    #[derive(Debug, Copy)]
-    pub struct _IO_FILE {
-        pub _flags: ::std::os::raw::c_int,
-        pub _IO_read_ptr: *mut ::std::os::raw::c_char,
-        pub _IO_read_end: *mut ::std::os::raw::c_char,
-        pub _IO_read_base: *mut ::std::os::raw::c_char,
-        pub _IO_write_base: *mut ::std::os::raw::c_char,
-        pub _IO_write_ptr: *mut ::std::os::raw::c_char,
-        pub _IO_write_end: *mut ::std::os::raw::c_char,
-        pub _IO_buf_base: *mut ::std::os::raw::c_char,
-        pub _IO_buf_end: *mut ::std::os::raw::c_char,
-        pub _IO_save_base: *mut ::std::os::raw::c_char,
-        pub _IO_backup_base: *mut ::std::os::raw::c_char,
-        pub _IO_save_end: *mut ::std::os::raw::c_char,
-        pub _markers: *mut root::_IO_marker,
-        pub _chain: *mut root::_IO_FILE,
-        pub _fileno: ::std::os::raw::c_int,
-        pub _flags2: ::std::os::raw::c_int,
-        pub _old_offset: root::__off_t,
-        pub _cur_column: ::std::os::raw::c_ushort,
-        pub _vtable_offset: ::std::os::raw::c_char,
-        pub _shortbuf: [::std::os::raw::c_char; 1usize],
-        pub _lock: *mut root::_IO_lock_t,
-        pub _offset: root::__off64_t,
-        pub __pad1: *mut ::std::os::raw::c_void,
-        pub __pad2: *mut ::std::os::raw::c_void,
-        pub __pad3: *mut ::std::os::raw::c_void,
-        pub __pad4: *mut ::std::os::raw::c_void,
-        pub __pad5: usize,
-        pub _mode: ::std::os::raw::c_int,
-        pub _unused2: [::std::os::raw::c_char; 20usize],
-    }
-    #[test]
-    fn bindgen_test_layout__IO_FILE() {
-        assert_eq!(::std::mem::size_of::<_IO_FILE>() , 216usize , concat ! (
-                   "Size of: " , stringify ! ( _IO_FILE ) ));
-        assert_eq! (::std::mem::align_of::<_IO_FILE>() , 8usize , concat ! (
-                    "Alignment of " , stringify ! ( _IO_FILE ) ));
-        assert_eq! (unsafe {
-                    & ( * ( 0 as * const _IO_FILE ) ) . _flags as * const _ as
+        pub type iterator_iterator_category<_Category> = _Category;
+        #[repr(C)]
+        #[derive(Debug, Copy, Clone)]
+        pub struct __bit_const_reference<_Cp> {
+            pub __seg_: root::std::__bit_const_reference___storage_pointer<_Cp>,
+            pub __mask_: root::std::__bit_const_reference___storage_type<_Cp>,
+        }
+        pub type __bit_const_reference___storage_type<_Cp> = _Cp;
+        pub type __bit_const_reference___storage_pointer<_Cp> = _Cp;
+    }
+    pub type __int64_t = ::std::os::raw::c_longlong;
+    pub type __darwin_va_list = root::__builtin_va_list;
+    pub type __darwin_off_t = root::__int64_t;
+    pub type va_list = root::__darwin_va_list;
+    pub type fpos_t = root::__darwin_off_t;
+    #[repr(C)]
+    #[derive(Debug, Copy)]
+    pub struct __sbuf {
+        pub _base: *mut ::std::os::raw::c_uchar,
+        pub _size: ::std::os::raw::c_int,
+    }
+    #[test]
+    fn bindgen_test_layout___sbuf() {
+        assert_eq!(::std::mem::size_of::<__sbuf>() , 16usize , concat ! (
+                   "Size of: " , stringify ! ( __sbuf ) ));
+        assert_eq! (::std::mem::align_of::<__sbuf>() , 8usize , concat ! (
+                    "Alignment of " , stringify ! ( __sbuf ) ));
+        assert_eq! (unsafe {
+                    & ( * ( 0 as * const __sbuf ) ) . _base as * const _ as
                     usize } , 0usize , concat ! (
-                    "Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
+                    "Alignment of field: " , stringify ! ( __sbuf ) , "::" ,
+                    stringify ! ( _base ) ));
+        assert_eq! (unsafe {
+                    & ( * ( 0 as * const __sbuf ) ) . _size as * const _ as
+                    usize } , 8usize , concat ! (
+                    "Alignment of field: " , stringify ! ( __sbuf ) , "::" ,
+                    stringify ! ( _size ) ));
+    }
+    impl Clone for __sbuf {
+        fn clone(&self) -> Self { *self }
+    }
+    #[repr(C)]
+    #[derive(Debug, Copy, Clone)]
+    pub struct __sFILEX([u8; 0]);
+    #[repr(C)]
+    #[derive(Debug, Copy)]
+    pub struct __sFILE {
+        pub _p: *mut ::std::os::raw::c_uchar,
+        pub _r: ::std::os::raw::c_int,
+        pub _w: ::std::os::raw::c_int,
+        pub _flags: ::std::os::raw::c_short,
+        pub _file: ::std::os::raw::c_short,
+        pub _bf: root::__sbuf,
+        pub _lbfsize: ::std::os::raw::c_int,
+        pub _cookie: *mut ::std::os::raw::c_void,
+        pub _close: ::std::option::Option<unsafe extern "C" fn(arg1:
+                                                                   *mut ::std::os::raw::c_void)
+                                              -> ::std::os::raw::c_int>,
+        pub _read: ::std::option::Option<unsafe extern "C" fn(arg1:
+                                                                  *mut ::std::os::raw::c_void,
+                                                              arg2:
+                                                                  *mut ::std::os::raw::c_char,
+                                                              arg3:
+                                                                  ::std::os::raw::c_int)
+                                             -> ::std::os::raw::c_int>,
+        pub _seek: ::std::option::Option<unsafe extern "C" fn(arg1:
+                                                                  *mut ::std::os::raw::c_void,
+                                                              arg2:
+                                                                  root::fpos_t,
+                                                              arg3:
+                                                                  ::std::os::raw::c_int)
+                                             -> ::std::os::raw::c_longlong>,
+        pub _write: ::std::option::Option<unsafe extern "C" fn(arg1:
+                                                                   *mut ::std::os::raw::c_void,
+                                                               arg2:
+                                                                   *const ::std::os::raw::c_char,
+                                                               arg3:
+                                                                   ::std::os::raw::c_int)
+                                              -> ::std::os::raw::c_int>,
+        pub _ub: root::__sbuf,
+        pub _extra: *mut root::__sFILEX,
+        pub _ur: ::std::os::raw::c_int,
+        pub _ubuf: [::std::os::raw::c_uchar; 3usize],
+        pub _nbuf: [::std::os::raw::c_uchar; 1usize],
+        pub _lb: root::__sbuf,
+        pub _blksize: ::std::os::raw::c_int,
+        pub _offset: root::fpos_t,
+    }
+    #[test]
+    fn bindgen_test_layout___sFILE() {
+        assert_eq!(::std::mem::size_of::<__sFILE>() , 152usize , concat ! (
+                   "Size of: " , stringify ! ( __sFILE ) ));
+        assert_eq! (::std::mem::align_of::<__sFILE>() , 8usize , concat ! (
+                    "Alignment of " , stringify ! ( __sFILE ) ));
+        assert_eq! (unsafe {
+                    & ( * ( 0 as * const __sFILE ) ) . _p as * const _ as
+                    usize } , 0usize , concat ! (
+                    "Alignment of field: " , stringify ! ( __sFILE ) , "::" ,
+                    stringify ! ( _p ) ));
+        assert_eq! (unsafe {
+                    & ( * ( 0 as * const __sFILE ) ) . _r as * const _ as
+                    usize } , 8usize , concat ! (
+                    "Alignment of field: " , stringify ! ( __sFILE ) , "::" ,
+                    stringify ! ( _r ) ));
+        assert_eq! (unsafe {
+                    & ( * ( 0 as * const __sFILE ) ) . _w as * const _ as
+                    usize } , 12usize , concat ! (
+                    "Alignment of field: " , stringify ! ( __sFILE ) , "::" ,
+                    stringify ! ( _w ) ));
+        assert_eq! (unsafe {
+                    & ( * ( 0 as * const __sFILE ) ) . _flags as * const _ as
+                    usize } , 16usize , concat ! (
+                    "Alignment of field: " , stringify ! ( __sFILE ) , "::" ,
                     stringify ! ( _flags ) ));
         assert_eq! (unsafe {
-                    & ( * ( 0 as * const _IO_FILE ) ) . _IO_read_ptr as *
-                    const _ as usize } , 8usize , concat ! (
-                    "Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
-                    stringify ! ( _IO_read_ptr ) ));
-        assert_eq! (unsafe {
-                    & ( * ( 0 as * const _IO_FILE ) ) . _IO_read_end as *
-                    const _ as usize } , 16usize , concat ! (
-                    "Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
-                    stringify ! ( _IO_read_end ) ));
-        assert_eq! (unsafe {
-                    & ( * ( 0 as * const _IO_FILE ) ) . _IO_read_base as *
-                    const _ as usize } , 24usize , concat ! (
-                    "Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
-                    stringify ! ( _IO_read_base ) ));
-        assert_eq! (unsafe {
-                    & ( * ( 0 as * const _IO_FILE ) ) . _IO_write_base as *
-                    const _ as usize } , 32usize , concat ! (
-                    "Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
-                    stringify ! ( _IO_write_base ) ));
-        assert_eq! (unsafe {
-                    & ( * ( 0 as * const _IO_FILE ) ) . _IO_write_ptr as *
-                    const _ as usize } , 40usize , concat ! (
-                    "Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
-                    stringify ! ( _IO_write_ptr ) ));
-        assert_eq! (unsafe {
-                    & ( * ( 0 as * const _IO_FILE ) ) . _IO_write_end as *
-                    const _ as usize } , 48usize , concat ! (
-                    "Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
-                    stringify ! ( _IO_write_end ) ));
-        assert_eq! (unsafe {
-                    & ( * ( 0 as * const _IO_FILE ) ) . _IO_buf_base as *
-                    const _ as usize } , 56usize , concat ! (
-                    "Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
-                    stringify ! ( _IO_buf_base ) ));
-        assert_eq! (unsafe {
-                    & ( * ( 0 as * const _IO_FILE ) ) . _IO_buf_end as * const
-                    _ as usize } , 64usize , concat ! (
-                    "Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
-                    stringify ! ( _IO_buf_end ) ));
-        assert_eq! (unsafe {
-                    & ( * ( 0 as * const _IO_FILE ) ) . _IO_save_base as *
-                    const _ as usize } , 72usize , concat ! (
-                    "Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
-                    stringify ! ( _IO_save_base ) ));
-        assert_eq! (unsafe {
-                    & ( * ( 0 as * const _IO_FILE ) ) . _IO_backup_base as *
-                    const _ as usize } , 80usize , concat ! (
-                    "Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
-                    stringify ! ( _IO_backup_base ) ));
-        assert_eq! (unsafe {
-                    & ( * ( 0 as * const _IO_FILE ) ) . _IO_save_end as *
-                    const _ as usize } , 88usize , concat ! (
-                    "Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
-                    stringify ! ( _IO_save_end ) ));
-        assert_eq! (unsafe {
-                    & ( * ( 0 as * const _IO_FILE ) ) . _markers as * const _
-                    as usize } , 96usize , concat ! (
-                    "Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
-                    stringify ! ( _markers ) ));
-        assert_eq! (unsafe {
-                    & ( * ( 0 as * const _IO_FILE ) ) . _chain as * const _ as
+                    & ( * ( 0 as * const __sFILE ) ) . _file as * const _ as
+                    usize } , 18usize , concat ! (
+                    "Alignment of field: " , stringify ! ( __sFILE ) , "::" ,
+                    stringify ! ( _file ) ));
+        assert_eq! (unsafe {
+                    & ( * ( 0 as * const __sFILE ) ) . _bf as * const _ as
+                    usize } , 24usize , concat ! (
+                    "Alignment of field: " , stringify ! ( __sFILE ) , "::" ,
+                    stringify ! ( _bf ) ));
+        assert_eq! (unsafe {
+                    & ( * ( 0 as * const __sFILE ) ) . _lbfsize as * const _
+                    as usize } , 40usize , concat ! (
+                    "Alignment of field: " , stringify ! ( __sFILE ) , "::" ,
+                    stringify ! ( _lbfsize ) ));
+        assert_eq! (unsafe {
+                    & ( * ( 0 as * const __sFILE ) ) . _cookie as * const _ as
+                    usize } , 48usize , concat ! (
+                    "Alignment of field: " , stringify ! ( __sFILE ) , "::" ,
+                    stringify ! ( _cookie ) ));
+        assert_eq! (unsafe {
+                    & ( * ( 0 as * const __sFILE ) ) . _close as * const _ as
+                    usize } , 56usize , concat ! (
+                    "Alignment of field: " , stringify ! ( __sFILE ) , "::" ,
+                    stringify ! ( _close ) ));
+        assert_eq! (unsafe {
+                    & ( * ( 0 as * const __sFILE ) ) . _read as * const _ as
+                    usize } , 64usize , concat ! (
+                    "Alignment of field: " , stringify ! ( __sFILE ) , "::" ,
+                    stringify ! ( _read ) ));
+        assert_eq! (unsafe {
+                    & ( * ( 0 as * const __sFILE ) ) . _seek as * const _ as
+                    usize } , 72usize , concat ! (
+                    "Alignment of field: " , stringify ! ( __sFILE ) , "::" ,
+                    stringify ! ( _seek ) ));
+        assert_eq! (unsafe {
+                    & ( * ( 0 as * const __sFILE ) ) . _write as * const _ as
+                    usize } , 80usize , concat ! (
+                    "Alignment of field: " , stringify ! ( __sFILE ) , "::" ,
+                    stringify ! ( _write ) ));
+        assert_eq! (unsafe {
+                    & ( * ( 0 as * const __sFILE ) ) . _ub as * const _ as
+                    usize } , 88usize , concat ! (
+                    "Alignment of field: " , stringify ! ( __sFILE ) , "::" ,
+                    stringify ! ( _ub ) ));
+        assert_eq! (unsafe {
+                    & ( * ( 0 as * const __sFILE ) ) . _extra as * const _ as
                     usize } , 104usize , concat ! (
-                    "Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
-                    stringify ! ( _chain ) ));
-        assert_eq! (unsafe {
-                    & ( * ( 0 as * const _IO_FILE ) ) . _fileno as * const _
-                    as usize } , 112usize , concat ! (
-                    "Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
-                    stringify ! ( _fileno ) ));
-        assert_eq! (unsafe {
-                    & ( * ( 0 as * const _IO_FILE ) ) . _flags2 as * const _
-                    as usize } , 116usize , concat ! (
-                    "Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
-                    stringify ! ( _flags2 ) ));
-        assert_eq! (unsafe {
-                    & ( * ( 0 as * const _IO_FILE ) ) . _old_offset as * const
-                    _ as usize } , 120usize , concat ! (
-                    "Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
-                    stringify ! ( _old_offset ) ));
-        assert_eq! (unsafe {
-                    & ( * ( 0 as * const _IO_FILE ) ) . _cur_column as * const
-                    _ as usize } , 128usize , concat ! (
-                    "Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
-                    stringify ! ( _cur_column ) ));
-        assert_eq! (unsafe {
-                    & ( * ( 0 as * const _IO_FILE ) ) . _vtable_offset as *
-                    const _ as usize } , 130usize , concat ! (
-                    "Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
-                    stringify ! ( _vtable_offset ) ));
-        assert_eq! (unsafe {
-                    & ( * ( 0 as * const _IO_FILE ) ) . _shortbuf as * const _
-                    as usize } , 131usize , concat ! (
-                    "Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
-                    stringify ! ( _shortbuf ) ));
-        assert_eq! (unsafe {
-                    & ( * ( 0 as * const _IO_FILE ) ) . _lock as * const _ as
-                    usize } , 136usize , concat ! (
-                    "Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
-                    stringify ! ( _lock ) ));
-        assert_eq! (unsafe {
-                    & ( * ( 0 as * const _IO_FILE ) ) . _offset as * const _
-                    as usize } , 144usize , concat ! (
-                    "Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
+                    "Alignment of field: " , stringify ! ( __sFILE ) , "::" ,
+                    stringify ! ( _extra ) ));
+        assert_eq! (unsafe {
+                    & ( * ( 0 as * const __sFILE ) ) . _ur as * const _ as
+                    usize } , 112usize , concat ! (
+                    "Alignment of field: " , stringify ! ( __sFILE ) , "::" ,
+                    stringify ! ( _ur ) ));
+        assert_eq! (unsafe {
+                    & ( * ( 0 as * const __sFILE ) ) . _ubuf as * const _ as
+                    usize } , 116usize , concat ! (
+                    "Alignment of field: " , stringify ! ( __sFILE ) , "::" ,
+                    stringify ! ( _ubuf ) ));
+        assert_eq! (unsafe {
+                    & ( * ( 0 as * const __sFILE ) ) . _nbuf as * const _ as
+                    usize } , 119usize , concat ! (
+                    "Alignment of field: " , stringify ! ( __sFILE ) , "::" ,
+                    stringify ! ( _nbuf ) ));
+        assert_eq! (unsafe {
+                    & ( * ( 0 as * const __sFILE ) ) . _lb as * const _ as
+                    usize } , 120usize , concat ! (
+                    "Alignment of field: " , stringify ! ( __sFILE ) , "::" ,
+                    stringify ! ( _lb ) ));
+        assert_eq! (unsafe {
+                    & ( * ( 0 as * const __sFILE ) ) . _blksize as * const _
+                    as usize } , 136usize , concat ! (
+                    "Alignment of field: " , stringify ! ( __sFILE ) , "::" ,
+                    stringify ! ( _blksize ) ));
+        assert_eq! (unsafe {
+                    & ( * ( 0 as * const __sFILE ) ) . _offset as * const _ as
+                    usize } , 144usize , concat ! (
+                    "Alignment of field: " , stringify ! ( __sFILE ) , "::" ,
                     stringify ! ( _offset ) ));
-        assert_eq! (unsafe {
-                    & ( * ( 0 as * const _IO_FILE ) ) . __pad1 as * const _ as
-                    usize } , 152usize , concat ! (
-                    "Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
-                    stringify ! ( __pad1 ) ));
-        assert_eq! (unsafe {
-                    & ( * ( 0 as * const _IO_FILE ) ) . __pad2 as * const _ as
-                    usize } , 160usize , concat ! (
-                    "Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
-                    stringify ! ( __pad2 ) ));
-        assert_eq! (unsafe {
-                    & ( * ( 0 as * const _IO_FILE ) ) . __pad3 as * const _ as
-                    usize } , 168usize , concat ! (
-                    "Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
-                    stringify ! ( __pad3 ) ));
-        assert_eq! (unsafe {
-                    & ( * ( 0 as * const _IO_FILE ) ) . __pad4 as * const _ as
-                    usize } , 176usize , concat ! (
-                    "Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
-                    stringify ! ( __pad4 ) ));
-        assert_eq! (unsafe {
-                    & ( * ( 0 as * const _IO_FILE ) ) . __pad5 as * const _ as
-                    usize } , 184usize , concat ! (
-                    "Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
-                    stringify ! ( __pad5 ) ));
-        assert_eq! (unsafe {
-                    & ( * ( 0 as * const _IO_FILE ) ) . _mode as * const _ as
-                    usize } , 192usize , concat ! (
-                    "Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
-                    stringify ! ( _mode ) ));
-        assert_eq! (unsafe {
-                    & ( * ( 0 as * const _IO_FILE ) ) . _unused2 as * const _
-                    as usize } , 196usize , concat ! (
-                    "Alignment of field: " , stringify ! ( _IO_FILE ) , "::" ,
-                    stringify ! ( _unused2 ) ));
-    }
-    impl Clone for _IO_FILE {
-        fn clone(&self) -> Self { *self }
-    }
-    pub type FILE = root::_IO_FILE;
-    pub type va_list = root::__builtin_va_list;
-    pub type _IO_lock_t = ::std::os::raw::c_void;
-    #[repr(C)]
-    #[derive(Debug, Copy)]
-    pub struct _IO_marker {
-        pub _next: *mut root::_IO_marker,
-        pub _sbuf: *mut root::_IO_FILE,
-        pub _pos: ::std::os::raw::c_int,
-    }
-    #[test]
-    fn bindgen_test_layout__IO_marker() {
-        assert_eq!(::std::mem::size_of::<_IO_marker>() , 24usize , concat ! (
-                   "Size of: " , stringify ! ( _IO_marker ) ));
-        assert_eq! (::std::mem::align_of::<_IO_marker>() , 8usize , concat ! (
-                    "Alignment of " , stringify ! ( _IO_marker ) ));
-        assert_eq! (unsafe {
-                    & ( * ( 0 as * const _IO_marker ) ) . _next as * const _
-                    as usize } , 0usize , concat ! (
-                    "Alignment of field: " , stringify ! ( _IO_marker ) , "::"
-                    , stringify ! ( _next ) ));
-        assert_eq! (unsafe {
-                    & ( * ( 0 as * const _IO_marker ) ) . _sbuf as * const _
-                    as usize } , 8usize , concat ! (
-                    "Alignment of field: " , stringify ! ( _IO_marker ) , "::"
-                    , stringify ! ( _sbuf ) ));
-        assert_eq! (unsafe {
-                    & ( * ( 0 as * const _IO_marker ) ) . _pos as * const _ as
-                    usize } , 16usize , concat ! (
-                    "Alignment of field: " , stringify ! ( _IO_marker ) , "::"
-                    , stringify ! ( _pos ) ));
-    }
-    impl Clone for _IO_marker {
-        fn clone(&self) -> Self { *self }
-    }
+    }
+    impl Clone for __sFILE {
+        fn clone(&self) -> Self { *self }
+    }
+    pub type FILE = root::__sFILE;
     /**
  * MozRefCountType is Mozilla's reference count type.
  *
  * We use the same type to represent the refcount of RefCounted objects
  * as well, in order to be able to use the leak detection facilities
  * that are implemented by XPCOM.
  *
  * Note that this type is not in the mozilla namespace so that it is
@@ -8089,16 +8123,20 @@ pub mod root {
         nsresult::NS_ERROR_ILLEGAL_VALUE;
     pub const nsresult_NS_BINDING_SUCCEEDED: root::nsresult = nsresult::NS_OK;
     pub const nsresult_NS_NET_STATUS_RESOLVING_HOST: root::nsresult =
         nsresult::NS_BINDING_REDIRECTED;
     pub const nsresult_NS_NET_STATUS_RESOLVED_HOST: root::nsresult =
         nsresult::NS_ERROR_ALREADY_CONNECTED;
     pub const nsresult_NS_NET_STATUS_CONNECTED_TO: root::nsresult =
         nsresult::NS_BINDING_RETARGETED;
+    pub const nsresult_NS_NET_STATUS_TLS_HANDSHAKE_STARTING: root::nsresult =
+        nsresult::NS_ERROR_NOT_CONNECTED;
+    pub const nsresult_NS_NET_STATUS_TLS_HANDSHAKE_ENDED: root::nsresult =
+        nsresult::NS_ERROR_CONNECTION_REFUSED;
     pub const nsresult_NS_NET_STATUS_WAITING_FOR: root::nsresult =
         nsresult::NS_ERROR_MALFORMED_URI;
     pub const nsresult_NS_STATE_PROPERTY_EXISTS: root::nsresult =
         nsresult::NS_OK;
     pub const nsresult_NS_ERROR_HTMLPARSER_CONTINUE: root::nsresult =
         nsresult::NS_OK;
     pub const nsresult_NS_RDF_ASSERTION_ACCEPTED: root::nsresult =
         nsresult::NS_OK;
@@ -11386,16 +11424,17 @@ pub mod root {
         pub mImageTracker: root::RefPtr<root::mozilla::dom::ImageTracker>,
         pub mActivityObservers: root::nsAutoPtr<()>,
         pub mLinksToUpdate: [u64; 6usize],
         pub mAnimationController: root::RefPtr<root::nsSMILAnimationController>,
         pub mPropertyTable: root::nsPropertyTable,
         pub mExtraPropertyTables: root::nsTArray<root::nsAutoPtr<root::nsPropertyTable>>,
         pub mChildrenCollection: root::nsCOMPtr<root::nsIHTMLCollection>,
         pub mFontFaceSet: root::RefPtr<root::mozilla::dom::FontFaceSet>,
+        pub mLastFocusTime: root::mozilla::TimeStamp,
         pub _bitfield_1: u8,
         pub _bitfield_2: u8,
         pub _bitfield_3: u8,
         pub _bitfield_4: u8,
         pub _bitfield_5: u8,
         pub _bitfield_6: u8,
         pub mCompatMode: root::nsCompatibility,
         pub mReadyState: root::nsIDocument_ReadyState,
@@ -11727,17 +11766,17 @@ pub mod root {
     #[repr(u32)]
     #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
     pub enum nsIDocument_Tri { eTriUnset = 0, eTriFalse = 1, eTriTrue = 2, }
     #[repr(C)]
     #[derive(Debug, Copy, Clone)]
     pub struct nsIDocument_FrameRequest([u8; 0]);
     #[test]
     fn bindgen_test_layout_nsIDocument() {
-        assert_eq!(::std::mem::size_of::<nsIDocument>() , 1024usize , concat !
+        assert_eq!(::std::mem::size_of::<nsIDocument>() , 1032usize , concat !
                    ( "Size of: " , stringify ! ( nsIDocument ) ));
         assert_eq! (::std::mem::align_of::<nsIDocument>() , 8usize , concat !
                     ( "Alignment of " , stringify ! ( nsIDocument ) ));
     }
     #[repr(C)]
     #[derive(Debug, Copy, Clone)]
     pub struct nsIDocShell([u8; 0]);
     /**
@@ -14760,17 +14799,18 @@ pub mod root {
         pub mFrameManager: *mut root::nsFrameManagerBase,
         pub mForwardingContainer: u64,
         pub mDocAccessible: *mut root::mozilla::a11y::DocAccessible,
         pub mReflowContinueTimer: root::nsCOMPtr<root::nsITimer>,
         pub mDrawEventTargetFrame: *mut root::nsIFrame,
         pub mAllocatedPointers: [u64; 6usize],
         pub mPaintCount: u64,
         pub mScrollPositionClampingScrollPortSize: root::nsSize,
-        pub mWeakFrames: *mut root::nsWeakFrame,
+        pub mAutoWeakFrames: *mut root::AutoWeakFrame,
+        pub mWeakFrames: [u64; 6usize],
         pub mCanvasBackgroundColor: root::nscolor,
         pub mResolution: [u32; 2usize],
         pub mSelectionFlags: i16,
         pub mRenderFlags: root::nsIPresShell_RenderFlags,
         pub _bitfield_1: u8,
         pub _bitfield_2: u8,
         pub mPresShellId: u32,
         pub mChangedScopeStyleRoots: [u64; 3usize],
@@ -15096,17 +15136,17 @@ pub mod root {
         pub static mut nsIPresShell_gCaptureInfo: root::CapturingContentInfo;
     }
     extern "C" {
         #[link_name = "_ZN12nsIPresShell14gKeyDownTargetE"]
         pub static mut nsIPresShell_gKeyDownTarget: *mut root::nsIContent;
     }
     #[test]
     fn bindgen_test_layout_nsIPresShell() {
-        assert_eq!(::std::mem::size_of::<nsIPresShell>() , 392usize , concat !
+        assert_eq!(::std::mem::size_of::<nsIPresShell>() , 440usize , concat !
                    ( "Size of: " , stringify ! ( nsIPresShell ) ));
         assert_eq! (::std::mem::align_of::<nsIPresShell>() , 8usize , concat !
                     ( "Alignment of " , stringify ! ( nsIPresShell ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsIPresShell ) ) . mDocument as *
                     const _ as usize } , 8usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsIPresShell ) ,
                     "::" , stringify ! ( mDocument ) ));
@@ -15181,109 +15221,114 @@ pub mod root {
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsIPresShell ) ) .
                     mScrollPositionClampingScrollPortSize as * const _ as
                     usize } , 304usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsIPresShell ) ,
                     "::" , stringify ! ( mScrollPositionClampingScrollPortSize
                     ) ));
         assert_eq! (unsafe {
+                    & ( * ( 0 as * const nsIPresShell ) ) . mAutoWeakFrames as
+                    * const _ as usize } , 312usize , concat ! (
+                    "Alignment of field: " , stringify ! ( nsIPresShell ) ,
+                    "::" , stringify ! ( mAutoWeakFrames ) ));
+        assert_eq! (unsafe {
                     & ( * ( 0 as * const nsIPresShell ) ) . mWeakFrames as *
-                    const _ as usize } , 312usize , concat ! (
+                    const _ as usize } , 320usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsIPresShell ) ,
                     "::" , stringify ! ( mWeakFrames ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsIPresShell ) ) .
-                    mCanvasBackgroundColor as * const _ as usize } , 320usize
+                    mCanvasBackgroundColor as * const _ as usize } , 368usize
                     , concat ! (
                     "Alignment of field: " , stringify ! ( nsIPresShell ) ,
                     "::" , stringify ! ( mCanvasBackgroundColor ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsIPresShell ) ) . mResolution as *
-                    const _ as usize } , 324usize , concat ! (
+                    const _ as usize } , 372usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsIPresShell ) ,
                     "::" , stringify ! ( mResolution ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsIPresShell ) ) . mSelectionFlags as
-                    * const _ as usize } , 332usize , concat ! (
+                    * const _ as usize } , 380usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsIPresShell ) ,
                     "::" , stringify ! ( mSelectionFlags ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsIPresShell ) ) . mRenderFlags as *
-                    const _ as usize } , 334usize , concat ! (
+                    const _ as usize } , 382usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsIPresShell ) ,
                     "::" , stringify ! ( mRenderFlags ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsIPresShell ) ) . mPresShellId as *
-                    const _ as usize } , 340usize , concat ! (
+                    const _ as usize } , 388usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsIPresShell ) ,
                     "::" , stringify ! ( mPresShellId ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsIPresShell ) ) .
-                    mChangedScopeStyleRoots as * const _ as usize } , 344usize
+                    mChangedScopeStyleRoots as * const _ as usize } , 392usize
                     , concat ! (
                     "Alignment of field: " , stringify ! ( nsIPresShell ) ,
                     "::" , stringify ! ( mChangedScopeStyleRoots ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsIPresShell ) ) .
                     mFontSizeInflationEmPerLine as * const _ as usize } ,
-                    368usize , concat ! (
+                    416usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsIPresShell ) ,
                     "::" , stringify ! ( mFontSizeInflationEmPerLine ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsIPresShell ) ) .
                     mFontSizeInflationMinTwips as * const _ as usize } ,
-                    372usize , concat ! (
+                    420usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsIPresShell ) ,
                     "::" , stringify ! ( mFontSizeInflationMinTwips ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsIPresShell ) ) .
                     mFontSizeInflationLineThreshold as * const _ as usize } ,
-                    376usize , concat ! (
+                    424usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsIPresShell ) ,
                     "::" , stringify ! ( mFontSizeInflationLineThreshold ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsIPresShell ) ) .
                     mFontSizeInflationForceEnabled as * const _ as usize } ,
-                    380usize , concat ! (
+                    428usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsIPresShell ) ,
                     "::" , stringify ! ( mFontSizeInflationForceEnabled ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsIPresShell ) ) .
                     mFontSizeInflationDisabledInMasterProcess as * const _ as
-                    usize } , 381usize , concat ! (
+                    usize } , 429usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsIPresShell ) ,
                     "::" , stringify ! (
                     mFontSizeInflationDisabledInMasterProcess ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsIPresShell ) ) .
                     mFontSizeInflationEnabled as * const _ as usize } ,
-                    382usize , concat ! (
+                    430usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsIPresShell ) ,
                     "::" , stringify ! ( mFontSizeInflationEnabled ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsIPresShell ) ) . mPaintingIsFrozen
-                    as * const _ as usize } , 383usize , concat ! (
+                    as * const _ as usize } , 431usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsIPresShell ) ,
                     "::" , stringify ! ( mPaintingIsFrozen ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsIPresShell ) ) .
                     mFontSizeInflationEnabledIsDirty as * const _ as usize } ,
-                    384usize , concat ! (
+                    432usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsIPresShell ) ,
                     "::" , stringify ! ( mFontSizeInflationEnabledIsDirty )
                     ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsIPresShell ) ) . mIsNeverPainting
-                    as * const _ as usize } , 385usize , concat ! (
+                    as * const _ as usize } , 433usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsIPresShell ) ,
                     "::" , stringify ! ( mIsNeverPainting ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsIPresShell ) ) . mInFlush as *
-                    const _ as usize } , 386usize , concat ! (
+                    const _ as usize } , 434usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsIPresShell ) ,
                     "::" , stringify ! ( mInFlush ) ));
     }
     /**
  * A class that implements nsIWeakReference
  */
     #[repr(C)]
     #[derive(Debug)]
@@ -15318,73 +15363,73 @@ pub mod root {
                     & ( * ( 0 as * const nsNodeWeakReference ) ) . mNode as *
                     const _ as usize } , 24usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsNodeWeakReference
                     ) , "::" , stringify ! ( mNode ) ));
     }
     #[repr(C)]
     #[derive(Debug, Copy, Clone)]
     pub struct nsDOMMutationObserver([u8; 0]);
-    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_IS_NATIVE_ANONYMOUS: root::_bindgen_ty_118 =
-        _bindgen_ty_118::NODE_IS_NATIVE_ANONYMOUS;
-    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;
-    #[repr(u32)]
-    #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
-    pub enum _bindgen_ty_118 {
+    pub const NODE_HAS_LISTENERMANAGER: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_HAS_LISTENERMANAGER;
+    pub const NODE_HAS_PROPERTIES: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_HAS_PROPERTIES;
+    pub const NODE_IS_ANONYMOUS_ROOT: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_IS_ANONYMOUS_ROOT;
+    pub const NODE_IS_IN_NATIVE_ANONYMOUS_SUBTREE: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_IS_IN_NATIVE_ANONYMOUS_SUBTREE;
+    pub const NODE_IS_NATIVE_ANONYMOUS_ROOT: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_IS_NATIVE_ANONYMOUS_ROOT;
+    pub const NODE_FORCE_XBL_BINDINGS: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_FORCE_XBL_BINDINGS;
+    pub const NODE_MAY_BE_IN_BINDING_MNGR: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_MAY_BE_IN_BINDING_MNGR;
+    pub const NODE_IS_EDITABLE: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_IS_EDITABLE;
+    pub const NODE_IS_NATIVE_ANONYMOUS: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_IS_NATIVE_ANONYMOUS;
+    pub const NODE_IS_IN_SHADOW_TREE: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_IS_IN_SHADOW_TREE;
+    pub const NODE_HAS_EMPTY_SELECTOR: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_HAS_EMPTY_SELECTOR;
+    pub const NODE_HAS_SLOW_SELECTOR: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_HAS_SLOW_SELECTOR;
+    pub const NODE_HAS_EDGE_CHILD_SELECTOR: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_HAS_EDGE_CHILD_SELECTOR;
+    pub const NODE_HAS_SLOW_SELECTOR_LATER_SIBLINGS: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_HAS_SLOW_SELECTOR_LATER_SIBLINGS;
+    pub const NODE_ALL_SELECTOR_FLAGS: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_ALL_SELECTOR_FLAGS;
+    pub const NODE_NEEDS_FRAME: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_NEEDS_FRAME;
+    pub const NODE_DESCENDANTS_NEED_FRAMES: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_DESCENDANTS_NEED_FRAMES;
+    pub const NODE_HAS_ACCESSKEY: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_HAS_ACCESSKEY;
+    pub const NODE_HAS_DIRECTION_RTL: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_HAS_DIRECTION_RTL;
+    pub const NODE_HAS_DIRECTION_LTR: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_HAS_DIRECTION_LTR;
+    pub const NODE_ALL_DIRECTION_FLAGS: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_ALL_DIRECTION_FLAGS;
+    pub const NODE_CHROME_ONLY_ACCESS: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_CHROME_ONLY_ACCESS;
+    pub const NODE_IS_ROOT_OF_CHROME_ONLY_ACCESS: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_IS_ROOT_OF_CHROME_ONLY_ACCESS;
+    pub const NODE_SHARED_RESTYLE_BIT_1: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_SHARED_RESTYLE_BIT_1;
+    pub const NODE_SHARED_RESTYLE_BIT_2: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_SHARED_RESTYLE_BIT_2;
+    pub const NODE_HAS_DIRTY_DESCENDANTS_FOR_SERVO: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_SHARED_RESTYLE_BIT_1;
+    pub const NODE_TYPE_SPECIFIC_BITS_OFFSET: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_TYPE_SPECIFIC_BITS_OFFSET;
+    #[repr(u32)]
+    #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
+    pub enum _bindgen_ty_28 {
         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,
@@ -16147,216 +16192,217 @@ pub mod root {
         eCSSProperty_text_decoration_color = 270,
         eCSSProperty_text_decoration_line = 271,
         eCSSProperty_text_decoration_style = 272,
         eCSSProperty_text_emphasis_color = 273,
         eCSSProperty_text_emphasis_position = 274,
         eCSSProperty_text_emphasis_style = 275,
         eCSSProperty__webkit_text_fill_color = 276,
         eCSSProperty_text_indent = 277,
-        eCSSProperty_text_orientation = 278,
-        eCSSProperty_text_overflow = 279,
-        eCSSProperty_text_rendering = 280,
-        eCSSProperty_text_shadow = 281,
-        eCSSProperty__moz_text_size_adjust = 282,
-        eCSSProperty__webkit_text_stroke_color = 283,
-        eCSSProperty__webkit_text_stroke_width = 284,
-        eCSSProperty_text_transform = 285,
-        eCSSProperty__x_text_zoom = 286,
-        eCSSProperty_top = 287,
-        eCSSProperty__moz_top_layer = 288,
-        eCSSProperty_touch_action = 289,
-        eCSSProperty_transform = 290,
-        eCSSProperty_transform_box = 291,
-        eCSSProperty_transform_origin = 292,
-        eCSSProperty_transform_style = 293,
-        eCSSProperty_transition_delay = 294,
-        eCSSProperty_transition_duration = 295,
-        eCSSProperty_transition_property = 296,
-        eCSSProperty_transition_timing_function = 297,
-        eCSSProperty_unicode_bidi = 298,
-        eCSSProperty__moz_user_focus = 299,
-        eCSSProperty__moz_user_input = 300,
-        eCSSProperty__moz_user_modify = 301,
-        eCSSProperty__moz_user_select = 302,
-        eCSSProperty_vector_effect = 303,
-        eCSSProperty_vertical_align = 304,
-        eCSSProperty_visibility = 305,
-        eCSSProperty_white_space = 306,
-        eCSSProperty_width = 307,
-        eCSSProperty_will_change = 308,
-        eCSSProperty__moz_window_dragging = 309,
-        eCSSProperty__moz_window_shadow = 310,
-        eCSSProperty_word_break = 311,
-        eCSSProperty_word_spacing = 312,
-        eCSSProperty_overflow_wrap = 313,
-        eCSSProperty_writing_mode = 314,
-        eCSSProperty_z_index = 315,
-        eCSSProperty_COUNT_no_shorthands = 316,
-        eCSSProperty_animation = 317,
-        eCSSProperty_background = 318,
-        eCSSProperty_background_position = 319,
-        eCSSProperty_border = 320,
-        eCSSProperty_border_block_end = 321,
-        eCSSProperty_border_block_start = 322,
-        eCSSProperty_border_bottom = 323,
-        eCSSProperty_border_color = 324,
-        eCSSProperty_border_image = 325,
-        eCSSProperty_border_inline_end = 326,
-        eCSSProperty_border_inline_start = 327,
-        eCSSProperty_border_left = 328,
-        eCSSProperty_border_radius = 329,
-        eCSSProperty_border_right = 330,
-        eCSSProperty_border_style = 331,
-        eCSSProperty_border_top = 332,
-        eCSSProperty_border_width = 333,
-        eCSSProperty_column_rule = 334,
-        eCSSProperty_columns = 335,
-        eCSSProperty_flex = 336,
-        eCSSProperty_flex_flow = 337,
-        eCSSProperty_font = 338,
-        eCSSProperty_font_variant = 339,
-        eCSSProperty_grid = 340,
-        eCSSProperty_grid_area = 341,
-        eCSSProperty_grid_column = 342,
-        eCSSProperty_grid_gap = 343,
-        eCSSProperty_grid_row = 344,
-        eCSSProperty_grid_template = 345,
-        eCSSProperty_list_style = 346,
-        eCSSProperty_margin = 347,
-        eCSSProperty_marker = 348,
-        eCSSProperty_mask = 349,
-        eCSSProperty_mask_position = 350,
-        eCSSProperty_outline = 351,
-        eCSSProperty__moz_outline_radius = 352,
-        eCSSProperty_overflow = 353,
-        eCSSProperty_padding = 354,
-        eCSSProperty_place_content = 355,
-        eCSSProperty_place_items = 356,
-        eCSSProperty_place_self = 357,
-        eCSSProperty_scroll_snap_type = 358,
-        eCSSProperty_text_decoration = 359,
-        eCSSProperty_text_emphasis = 360,
-        eCSSProperty__webkit_text_stroke = 361,
-        eCSSProperty__moz_transform = 362,
-        eCSSProperty_transition = 363,
-        eCSSProperty_COUNT = 364,
-        eCSSPropertyAlias_MozTransformOrigin = 365,
-        eCSSPropertyAlias_MozPerspectiveOrigin = 366,
-        eCSSPropertyAlias_MozPerspective = 367,
-        eCSSPropertyAlias_MozTransformStyle = 368,
-        eCSSPropertyAlias_MozBackfaceVisibility = 369,
-        eCSSPropertyAlias_MozBorderImage = 370,
-        eCSSPropertyAlias_MozTransition = 371,
-        eCSSPropertyAlias_MozTransitionDelay = 372,
-        eCSSPropertyAlias_MozTransitionDuration = 373,
-        eCSSPropertyAlias_MozTransitionProperty = 374,
-        eCSSPropertyAlias_MozTransitionTimingFunction = 375,
-        eCSSPropertyAlias_MozAnimation = 376,
-        eCSSPropertyAlias_MozAnimationDelay = 377,
-        eCSSPropertyAlias_MozAnimationDirection = 378,
-        eCSSPropertyAlias_MozAnimationDuration = 379,
-        eCSSPropertyAlias_MozAnimationFillMode = 380,
-        eCSSPropertyAlias_MozAnimationIterationCount = 381,
-        eCSSPropertyAlias_MozAnimationName = 382,
-        eCSSPropertyAlias_MozAnimationPlayState = 383,
-        eCSSPropertyAlias_MozAnimationTimingFunction = 384,
-        eCSSPropertyAlias_MozBoxSizing = 385,
-        eCSSPropertyAlias_MozFontFeatureSettings = 386,
-        eCSSPropertyAlias_MozFontLanguageOverride = 387,
-        eCSSPropertyAlias_MozPaddingEnd = 388,
-        eCSSPropertyAlias_MozPaddingStart = 389,
-        eCSSPropertyAlias_MozMarginEnd = 390,
-        eCSSPropertyAlias_MozMarginStart = 391,
-        eCSSPropertyAlias_MozBorderEnd = 392,
-        eCSSPropertyAlias_MozBorderEndColor = 393,
-        eCSSPropertyAlias_MozBorderEndStyle = 394,
-        eCSSPropertyAlias_MozBorderEndWidth = 395,
-        eCSSPropertyAlias_MozBorderStart = 396,
-        eCSSPropertyAlias_MozBorderStartColor = 397,
-        eCSSPropertyAlias_MozBorderStartStyle = 398,
-        eCSSPropertyAlias_MozBorderStartWidth = 399,
-        eCSSPropertyAlias_MozHyphens = 400,
-        eCSSPropertyAlias_MozColumnCount = 401,
-        eCSSPropertyAlias_MozColumnFill = 402,
-        eCSSPropertyAlias_MozColumnGap = 403,
-        eCSSPropertyAlias_MozColumnRule = 404,
-        eCSSPropertyAlias_MozColumnRuleColor = 405,
-        eCSSPropertyAlias_MozColumnRuleStyle = 406,
-        eCSSPropertyAlias_MozColumnRuleWidth = 407,
-        eCSSPropertyAlias_MozColumnWidth = 408,
-        eCSSPropertyAlias_MozColumns = 409,
-        eCSSPropertyAlias_WebkitAnimation = 410,
-        eCSSPropertyAlias_WebkitAnimationDelay = 411,
-        eCSSPropertyAlias_WebkitAnimationDirection = 412,
-        eCSSPropertyAlias_WebkitAnimationDuration = 413,
-        eCSSPropertyAlias_WebkitAnimationFillMode = 414,
-        eCSSPropertyAlias_WebkitAnimationIterationCount = 415,
-        eCSSPropertyAlias_WebkitAnimationName = 416,
-        eCSSPropertyAlias_WebkitAnimationPlayState = 417,
-        eCSSPropertyAlias_WebkitAnimationTimingFunction = 418,
-        eCSSPropertyAlias_WebkitFilter = 419,
-        eCSSPropertyAlias_WebkitTextSizeAdjust = 420,
-        eCSSPropertyAlias_WebkitTransform = 421,
-        eCSSPropertyAlias_WebkitTransformOrigin = 422,
-        eCSSPropertyAlias_WebkitTransformStyle = 423,
-        eCSSPropertyAlias_WebkitBackfaceVisibility = 424,
-        eCSSPropertyAlias_WebkitPerspective = 425,
-        eCSSPropertyAlias_WebkitPerspectiveOrigin = 426,
-        eCSSPropertyAlias_WebkitTransition = 427,
-        eCSSPropertyAlias_WebkitTransitionDelay = 428,
-        eCSSPropertyAlias_WebkitTransitionDuration = 429,
-        eCSSPropertyAlias_WebkitTransitionProperty = 430,
-        eCSSPropertyAlias_WebkitTransitionTimingFunction = 431,
-        eCSSPropertyAlias_WebkitBorderRadius = 432,
-        eCSSPropertyAlias_WebkitBorderTopLeftRadius = 433,
-        eCSSPropertyAlias_WebkitBorderTopRightRadius = 434,
-        eCSSPropertyAlias_WebkitBorderBottomLeftRadius = 435,
-        eCSSPropertyAlias_WebkitBorderBottomRightRadius = 436,
-        eCSSPropertyAlias_WebkitBackgroundClip = 437,
-        eCSSPropertyAlias_WebkitBackgroundOrigin = 438,
-        eCSSPropertyAlias_WebkitBackgroundSize = 439,
-        eCSSPropertyAlias_WebkitBorderImage = 440,
-        eCSSPropertyAlias_WebkitBoxShadow = 441,
-        eCSSPropertyAlias_WebkitBoxSizing = 442,
-        eCSSPropertyAlias_WebkitBoxFlex = 443,
-        eCSSPropertyAlias_WebkitBoxOrdinalGroup = 444,
-        eCSSPropertyAlias_WebkitBoxOrient = 445,
-        eCSSPropertyAlias_WebkitBoxDirection = 446,
-        eCSSPropertyAlias_WebkitBoxAlign = 447,
-        eCSSPropertyAlias_WebkitBoxPack = 448,
-        eCSSPropertyAlias_WebkitFlexDirection = 449,
-        eCSSPropertyAlias_WebkitFlexWrap = 450,
-        eCSSPropertyAlias_WebkitFlexFlow = 451,
-        eCSSPropertyAlias_WebkitOrder = 452,
-        eCSSPropertyAlias_WebkitFlex = 453,
-        eCSSPropertyAlias_WebkitFlexGrow = 454,
-        eCSSPropertyAlias_WebkitFlexShrink = 455,
-        eCSSPropertyAlias_WebkitFlexBasis = 456,
-        eCSSPropertyAlias_WebkitJustifyContent = 457,
-        eCSSPropertyAlias_WebkitAlignItems = 458,
-        eCSSPropertyAlias_WebkitAlignSelf = 459,
-        eCSSPropertyAlias_WebkitAlignContent = 460,
-        eCSSPropertyAlias_WebkitUserSelect = 461,
-        eCSSPropertyAlias_WebkitMask = 462,
-        eCSSPropertyAlias_WebkitMaskClip = 463,
-        eCSSPropertyAlias_WebkitMaskComposite = 464,
-        eCSSPropertyAlias_WebkitMaskImage = 465,
-        eCSSPropertyAlias_WebkitMaskOrigin = 466,
-        eCSSPropertyAlias_WebkitMaskPosition = 467,
-        eCSSPropertyAlias_WebkitMaskPositionX = 468,
-        eCSSPropertyAlias_WebkitMaskPositionY = 469,
-        eCSSPropertyAlias_WebkitMaskRepeat = 470,
-        eCSSPropertyAlias_WebkitMaskSize = 471,
-        eCSSProperty_COUNT_with_aliases = 472,
-        eCSSPropertyExtra_all_properties = 473,
-        eCSSPropertyExtra_x_none_value = 474,
-        eCSSPropertyExtra_x_auto_value = 475,
-        eCSSPropertyExtra_variable = 476,
-        eCSSProperty_DOM = 477,
+        eCSSProperty_text_justify = 278,
+        eCSSProperty_text_orientation = 279,
+        eCSSProperty_text_overflow = 280,
+        eCSSProperty_text_rendering = 281,
+        eCSSProperty_text_shadow = 282,
+        eCSSProperty__moz_text_size_adjust = 283,
+        eCSSProperty__webkit_text_stroke_color = 284,
+        eCSSProperty__webkit_text_stroke_width = 285,
+        eCSSProperty_text_transform = 286,
+        eCSSProperty__x_text_zoom = 287,
+        eCSSProperty_top = 288,
+        eCSSProperty__moz_top_layer = 289,
+        eCSSProperty_touch_action = 290,
+        eCSSProperty_transform = 291,
+        eCSSProperty_transform_box = 292,
+        eCSSProperty_transform_origin = 293,
+        eCSSProperty_transform_style = 294,
+        eCSSProperty_transition_delay = 295,
+        eCSSProperty_transition_duration = 296,
+        eCSSProperty_transition_property = 297,
+        eCSSProperty_transition_timing_function = 298,
+        eCSSProperty_unicode_bidi = 299,
+        eCSSProperty__moz_user_focus = 300,
+        eCSSProperty__moz_user_input = 301,
+        eCSSProperty__moz_user_modify = 302,
+        eCSSProperty__moz_user_select = 303,
+        eCSSProperty_vector_effect = 304,
+        eCSSProperty_vertical_align = 305,
+        eCSSProperty_visibility = 306,
+        eCSSProperty_white_space = 307,
+        eCSSProperty_width = 308,
+        eCSSProperty_will_change = 309,
+        eCSSProperty__moz_window_dragging = 310,
+        eCSSProperty__moz_window_shadow = 311,
+        eCSSProperty_word_break = 312,
+        eCSSProperty_word_spacing = 313,
+        eCSSProperty_overflow_wrap = 314,
+        eCSSProperty_writing_mode = 315,
+        eCSSProperty_z_index = 316,
+        eCSSProperty_COUNT_no_shorthands = 317,
+        eCSSProperty_animation = 318,
+        eCSSProperty_background = 319,
+        eCSSProperty_background_position = 320,
+        eCSSProperty_border = 321,
+        eCSSProperty_border_block_end = 322,
+        eCSSProperty_border_block_start = 323,
+        eCSSProperty_border_bottom = 324,
+        eCSSProperty_border_color = 325,
+        eCSSProperty_border_image = 326,
+        eCSSProperty_border_inline_end = 327,
+        eCSSProperty_border_inline_start = 328,
+        eCSSProperty_border_left = 329,
+        eCSSProperty_border_radius = 330,
+        eCSSProperty_border_right = 331,
+        eCSSProperty_border_style = 332,
+        eCSSProperty_border_top = 333,
+        eCSSProperty_border_width = 334,
+        eCSSProperty_column_rule = 335,
+        eCSSProperty_columns = 336,
+        eCSSProperty_flex = 337,
+        eCSSProperty_flex_flow = 338,
+        eCSSProperty_font = 339,
+        eCSSProperty_font_variant = 340,
+        eCSSProperty_grid = 341,
+        eCSSProperty_grid_area = 342,
+        eCSSProperty_grid_column = 343,
+        eCSSProperty_grid_gap = 344,
+        eCSSProperty_grid_row = 345,
+        eCSSProperty_grid_template = 346,
+        eCSSProperty_list_style = 347,
+        eCSSProperty_margin = 348,
+        eCSSProperty_marker = 349,
+        eCSSProperty_mask = 350,
+        eCSSProperty_mask_position = 351,
+        eCSSProperty_outline = 352,
+        eCSSProperty__moz_outline_radius = 353,
+        eCSSProperty_overflow = 354,
+        eCSSProperty_padding = 355,
+        eCSSProperty_place_content = 356,
+        eCSSProperty_place_items = 357,
+        eCSSProperty_place_self = 358,
+        eCSSProperty_scroll_snap_type = 359,
+        eCSSProperty_text_decoration = 360,
+        eCSSProperty_text_emphasis = 361,
+        eCSSProperty__webkit_text_stroke = 362,
+        eCSSProperty__moz_transform = 363,
+        eCSSProperty_transition = 364,
+        eCSSProperty_COUNT = 365,
+        eCSSPropertyAlias_MozTransformOrigin = 366,
+        eCSSPropertyAlias_MozPerspectiveOrigin = 367,
+        eCSSPropertyAlias_MozPerspective = 368,
+        eCSSPropertyAlias_MozTransformStyle = 369,
+        eCSSPropertyAlias_MozBackfaceVisibility = 370,
+        eCSSPropertyAlias_MozBorderImage = 371,
+        eCSSPropertyAlias_MozTransition = 372,
+        eCSSPropertyAlias_MozTransitionDelay = 373,
+        eCSSPropertyAlias_MozTransitionDuration = 374,
+        eCSSPropertyAlias_MozTransitionProperty = 375,
+        eCSSPropertyAlias_MozTransitionTimingFunction = 376,
+        eCSSPropertyAlias_MozAnimation = 377,
+        eCSSPropertyAlias_MozAnimationDelay = 378,
+        eCSSPropertyAlias_MozAnimationDirection = 379,
+        eCSSPropertyAlias_MozAnimationDuration = 380,
+        eCSSPropertyAlias_MozAnimationFillMode = 381,
+        eCSSPropertyAlias_MozAnimationIterationCount = 382,
+        eCSSPropertyAlias_MozAnimationName = 383,
+        eCSSPropertyAlias_MozAnimationPlayState = 384,
+        eCSSPropertyAlias_MozAnimationTimingFunction = 385,
+        eCSSPropertyAlias_MozBoxSizing = 386,
+        eCSSPropertyAlias_MozFontFeatureSettings = 387,
+        eCSSPropertyAlias_MozFontLanguageOverride = 388,
+        eCSSPropertyAlias_MozPaddingEnd = 389,
+        eCSSPropertyAlias_MozPaddingStart = 390,
+        eCSSPropertyAlias_MozMarginEnd = 391,
+        eCSSPropertyAlias_MozMarginStart = 392,
+        eCSSPropertyAlias_MozBorderEnd = 393,
+        eCSSPropertyAlias_MozBorderEndColor = 394,
+        eCSSPropertyAlias_MozBorderEndStyle = 395,
+        eCSSPropertyAlias_MozBorderEndWidth = 396,
+        eCSSPropertyAlias_MozBorderStart = 397,
+        eCSSPropertyAlias_MozBorderStartColor = 398,
+        eCSSPropertyAlias_MozBorderStartStyle = 399,
+        eCSSPropertyAlias_MozBorderStartWidth = 400,
+        eCSSPropertyAlias_MozHyphens = 401,
+        eCSSPropertyAlias_MozColumnCount = 402,
+        eCSSPropertyAlias_MozColumnFill = 403,
+        eCSSPropertyAlias_MozColumnGap = 404,
+        eCSSPropertyAlias_MozColumnRule = 405,
+        eCSSPropertyAlias_MozColumnRuleColor = 406,
+        eCSSPropertyAlias_MozColumnRuleStyle = 407,
+        eCSSPropertyAlias_MozColumnRuleWidth = 408,
+        eCSSPropertyAlias_MozColumnWidth = 409,
+        eCSSPropertyAlias_MozColumns = 410,
+        eCSSPropertyAlias_WebkitAnimation = 411,
+        eCSSPropertyAlias_WebkitAnimationDelay = 412,
+        eCSSPropertyAlias_WebkitAnimationDirection = 413,
+        eCSSPropertyAlias_WebkitAnimationDuration = 414,
+        eCSSPropertyAlias_WebkitAnimationFillMode = 415,
+        eCSSPropertyAlias_WebkitAnimationIterationCount = 416,
+        eCSSPropertyAlias_WebkitAnimationName = 417,
+        eCSSPropertyAlias_WebkitAnimationPlayState = 418,
+        eCSSPropertyAlias_WebkitAnimationTimingFunction = 419,
+        eCSSPropertyAlias_WebkitFilter = 420,
+        eCSSPropertyAlias_WebkitTextSizeAdjust = 421,
+        eCSSPropertyAlias_WebkitTransform = 422,
+        eCSSPropertyAlias_WebkitTransformOrigin = 423,
+        eCSSPropertyAlias_WebkitTransformStyle = 424,
+        eCSSPropertyAlias_WebkitBackfaceVisibility = 425,
+        eCSSPropertyAlias_WebkitPerspective = 426,
+        eCSSPropertyAlias_WebkitPerspectiveOrigin = 427,
+        eCSSPropertyAlias_WebkitTransition = 428,
+        eCSSPropertyAlias_WebkitTransitionDelay = 429,
+        eCSSPropertyAlias_WebkitTransitionDuration = 430,
+        eCSSPropertyAlias_WebkitTransitionProperty = 431,
+        eCSSPropertyAlias_WebkitTransitionTimingFunction = 432,
+        eCSSPropertyAlias_WebkitBorderRadius = 433,
+        eCSSPropertyAlias_WebkitBorderTopLeftRadius = 434,
+        eCSSPropertyAlias_WebkitBorderTopRightRadius = 435,
+        eCSSPropertyAlias_WebkitBorderBottomLeftRadius = 436,
+        eCSSPropertyAlias_WebkitBorderBottomRightRadius = 437,
+        eCSSPropertyAlias_WebkitBackgroundClip = 438,
+        eCSSPropertyAlias_WebkitBackgroundOrigin = 439,
+        eCSSPropertyAlias_WebkitBackgroundSize = 440,
+        eCSSPropertyAlias_WebkitBorderImage = 441,
+        eCSSPropertyAlias_WebkitBoxShadow = 442,
+        eCSSPropertyAlias_WebkitBoxSizing = 443,
+        eCSSPropertyAlias_WebkitBoxFlex = 444,
+        eCSSPropertyAlias_WebkitBoxOrdinalGroup = 445,
+        eCSSPropertyAlias_WebkitBoxOrient = 446,
+        eCSSPropertyAlias_WebkitBoxDirection = 447,
+        eCSSPropertyAlias_WebkitBoxAlign = 448,
+        eCSSPropertyAlias_WebkitBoxPack = 449,
+        eCSSPropertyAlias_WebkitFlexDirection = 450,
+        eCSSPropertyAlias_WebkitFlexWrap = 451,
+        eCSSPropertyAlias_WebkitFlexFlow = 452,
+        eCSSPropertyAlias_WebkitOrder = 453,
+        eCSSPropertyAlias_WebkitFlex = 454,
+        eCSSPropertyAlias_WebkitFlexGrow = 455,
+        eCSSPropertyAlias_WebkitFlexShrink = 456,
+        eCSSPropertyAlias_WebkitFlexBasis = 457,
+        eCSSPropertyAlias_WebkitJustifyContent = 458,
+        eCSSPropertyAlias_WebkitAlignItems = 459,
+        eCSSPropertyAlias_WebkitAlignSelf = 460,
+        eCSSPropertyAlias_WebkitAlignContent = 461,
+        eCSSPropertyAlias_WebkitUserSelect = 462,
+        eCSSPropertyAlias_WebkitMask = 463,
+        eCSSPropertyAlias_WebkitMaskClip = 464,
+        eCSSPropertyAlias_WebkitMaskComposite = 465,
+        eCSSPropertyAlias_WebkitMaskImage = 466,
+        eCSSPropertyAlias_WebkitMaskOrigin = 467,
+        eCSSPropertyAlias_WebkitMaskPosition = 468,
+        eCSSPropertyAlias_WebkitMaskPositionX = 469,
+        eCSSPropertyAlias_WebkitMaskPositionY = 470,
+        eCSSPropertyAlias_WebkitMaskRepeat = 471,
+        eCSSPropertyAlias_WebkitMaskSize = 472,
+        eCSSProperty_COUNT_with_aliases = 473,
+        eCSSPropertyExtra_all_properties = 474,
+        eCSSPropertyExtra_x_none_value = 475,
+        eCSSPropertyExtra_x_auto_value = 476,
+        eCSSPropertyExtra_variable = 477,
+        eCSSProperty_DOM = 478,
     }
     #[repr(i32)]
     #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
     pub enum nsCSSFontDesc {
         eCSSFontDesc_UNKNOWN = -1,
         eCSSFontDesc_Family = 0,
         eCSSFontDesc_Style = 1,
         eCSSFontDesc_Weight = 2,
@@ -16584,572 +16630,575 @@ pub mod root {
         eCSSKeyword_dialog = 192,
         eCSSKeyword_difference = 193,
         eCSSKeyword_digits = 194,
         eCSSKeyword_disabled = 195,
         eCSSKeyword_disc = 196,
         eCSSKeyword_disclosure_closed = 197,
         eCSSKeyword_disclosure_open = 198,
         eCSSKeyword_discretionary_ligatures = 199,
-        eCSSKeyword_dot = 200,
-        eCSSKeyword_dotted = 201,
-        eCSSKeyword_double = 202,
-        eCSSKeyword_double_circle = 203,
-        eCSSKeyword_double_struck = 204,
-        eCSSKeyword_drag = 205,
-        eCSSKeyword_drop_shadow = 206,
-        eCSSKeyword_e_resize = 207,
-        eCSSKeyword_ease = 208,
-        eCSSKeyword_ease_in = 209,
-        eCSSKeyword_ease_in_out = 210,
-        eCSSKeyword_ease_out = 211,
-        eCSSKeyword_economy = 212,
-        eCSSKeyword_element = 213,
-        eCSSKeyword_elements = 214,
-        eCSSKeyword_ellipse = 215,
-        eCSSKeyword_ellipsis = 216,
-        eCSSKeyword_em = 217,
-        eCSSKeyword_embed = 218,
-        eCSSKeyword_enabled = 219,
-        eCSSKeyword_end = 220,
-        eCSSKeyword_ethiopic_numeric = 221,
-        eCSSKeyword_ex = 222,
-        eCSSKeyword_exact = 223,
-        eCSSKeyword_exclude = 224,
-        eCSSKeyword_exclusion = 225,
-        eCSSKeyword_expanded = 226,
-        eCSSKeyword_extends = 227,
-        eCSSKeyword_extra_condensed = 228,
-        eCSSKeyword_extra_expanded = 229,
-        eCSSKeyword_ew_resize = 230,
-        eCSSKeyword_fallback = 231,
-        eCSSKeyword_fantasy = 232,
-        eCSSKeyword_farthest_side = 233,
-        eCSSKeyword_farthest_corner = 234,
-        eCSSKeyword_fill = 235,
-        eCSSKeyword_filled = 236,
-        eCSSKeyword_fill_box = 237,
-        eCSSKeyword_first = 238,
-        eCSSKeyword_fit_content = 239,
-        eCSSKeyword_fixed = 240,
-        eCSSKeyword_flat = 241,
-        eCSSKeyword_flex = 242,
-        eCSSKeyword_flex_end = 243,
-        eCSSKeyword_flex_start = 244,
-        eCSSKeyword_flip = 245,
-        eCSSKeyword_flow_root = 246,
-        eCSSKeyword_forwards = 247,
-        eCSSKeyword_fraktur = 248,
-        eCSSKeyword_from_image = 249,
-        eCSSKeyword_full_width = 250,
-        eCSSKeyword_fullscreen = 251,
-        eCSSKeyword_grab = 252,
-        eCSSKeyword_grabbing = 253,
-        eCSSKeyword_grad = 254,
-        eCSSKeyword_grayscale = 255,
-        eCSSKeyword_graytext = 256,
-        eCSSKeyword_grid = 257,
-        eCSSKeyword_groove = 258,
-        eCSSKeyword_hard_light = 259,
-        eCSSKeyword_hebrew = 260,
-        eCSSKeyword_help = 261,
-        eCSSKeyword_hidden = 262,
-        eCSSKeyword_hide = 263,
-        eCSSKeyword_highlight = 264,
-        eCSSKeyword_highlighttext = 265,
-        eCSSKeyword_historical_forms = 266,
-        eCSSKeyword_historical_ligatures = 267,
-        eCSSKeyword_horizontal = 268,
-        eCSSKeyword_horizontal_tb = 269,
-        eCSSKeyword_hue = 270,
-        eCSSKeyword_hue_rotate = 271,
-        eCSSKeyword_hz = 272,
-        eCSSKeyword_icon = 273,
-        eCSSKeyword_ignore = 274,
-        eCSSKeyword_in = 275,
-        eCSSKeyword_interlace = 276,
-        eCSSKeyword_inactive = 277,
-        eCSSKeyword_inactiveborder = 278,
-        eCSSKeyword_inactivecaption = 279,
-        eCSSKeyword_inactivecaptiontext = 280,
-        eCSSKeyword_infinite = 281,
-        eCSSKeyword_infobackground = 282,
-        eCSSKeyword_infotext = 283,
-        eCSSKeyword_inherit = 284,
-        eCSSKeyword_initial = 285,
-        eCSSKeyword_inline = 286,
-        eCSSKeyword_inline_axis = 287,
-        eCSSKeyword_inline_block = 288,
-        eCSSKeyword_inline_end = 289,
-        eCSSKeyword_inline_flex = 290,
-        eCSSKeyword_inline_grid = 291,
-        eCSSKeyword_inline_start = 292,
-        eCSSKeyword_inline_table = 293,
-        eCSSKeyword_inset = 294,
-        eCSSKeyword_inside = 295,
-        eCSSKeyword_interpolatematrix = 296,
-        eCSSKeyword_accumulatematrix = 297,
-        eCSSKeyword_intersect = 298,
-        eCSSKeyword_isolate = 299,
-        eCSSKeyword_isolate_override = 300,
-        eCSSKeyword_invert = 301,
-        eCSSKeyword_italic = 302,
-        eCSSKeyword_japanese_formal = 303,
-        eCSSKeyword_japanese_informal = 304,
-        eCSSKeyword_jis78 = 305,
-        eCSSKeyword_jis83 = 306,
-        eCSSKeyword_jis90 = 307,
-        eCSSKeyword_jis04 = 308,
-        eCSSKeyword_justify = 309,
-        eCSSKeyword_keep_all = 310,
-        eCSSKeyword_khz = 311,
-        eCSSKeyword_korean_hangul_formal = 312,
-        eCSSKeyword_korean_hanja_formal = 313,
-        eCSSKeyword_korean_hanja_informal = 314,
-        eCSSKeyword_landscape = 315,
-        eCSSKeyword_large = 316,
-        eCSSKeyword_larger = 317,
-        eCSSKeyword_last = 318,
-        eCSSKeyword_last_baseline = 319,
-        eCSSKeyword_layout = 320,
-        eCSSKeyword_left = 321,
-        eCSSKeyword_legacy = 322,
-        eCSSKeyword_lighten = 323,
-        eCSSKeyword_lighter = 324,
-        eCSSKeyword_line_through = 325,
-        eCSSKeyword_linear = 326,
-        eCSSKeyword_lining_nums = 327,
-        eCSSKeyword_list_item = 328,
-        eCSSKeyword_local = 329,
-        eCSSKeyword_logical = 330,
-        eCSSKeyword_looped = 331,
-        eCSSKeyword_lowercase = 332,
-        eCSSKeyword_lr = 333,
-        eCSSKeyword_lr_tb = 334,
-        eCSSKeyword_ltr = 335,
-        eCSSKeyword_luminance = 336,
-        eCSSKeyword_luminosity = 337,
-        eCSSKeyword_mandatory = 338,
-        eCSSKeyword_manipulation = 339,
-        eCSSKeyword_manual = 340,
-        eCSSKeyword_margin_box = 341,
-        eCSSKeyword_markers = 342,
-        eCSSKeyword_match_parent = 343,
-        eCSSKeyword_match_source = 344,
-        eCSSKeyword_matrix = 345,
-        eCSSKeyword_matrix3d = 346,
-        eCSSKeyword_max_content = 347,
-        eCSSKeyword_medium = 348,
-        eCSSKeyword_menu = 349,
-        eCSSKeyword_menutext = 350,
-        eCSSKeyword_message_box = 351,
-        eCSSKeyword_middle = 352,
-        eCSSKeyword_min_content = 353,
-        eCSSKeyword_minmax = 354,
-        eCSSKeyword_mix = 355,
-        eCSSKeyword_mixed = 356,
-        eCSSKeyword_mm = 357,
-        eCSSKeyword_monospace = 358,
-        eCSSKeyword_move = 359,
-        eCSSKeyword_ms = 360,
-        eCSSKeyword_multiply = 361,
-        eCSSKeyword_n_resize = 362,
-        eCSSKeyword_narrower = 363,
-        eCSSKeyword_ne_resize = 364,
-        eCSSKeyword_nesw_resize = 365,
-        eCSSKeyword_no_clip = 366,
-        eCSSKeyword_no_close_quote = 367,
-        eCSSKeyword_no_common_ligatures = 368,
-        eCSSKeyword_no_contextual = 369,
-        eCSSKeyword_no_discretionary_ligatures = 370,
-        eCSSKeyword_no_drag = 371,
-        eCSSKeyword_no_drop = 372,
-        eCSSKeyword_no_historical_ligatures = 373,
-        eCSSKeyword_no_open_quote = 374,
-        eCSSKeyword_no_repeat = 375,
-        eCSSKeyword_none = 376,
-        eCSSKeyword_normal = 377,
-        eCSSKeyword_not_allowed = 378,
-        eCSSKeyword_nowrap = 379,
-        eCSSKeyword_numeric = 380,
-        eCSSKeyword_ns_resize = 381,
-        eCSSKeyword_nw_resize = 382,
-        eCSSKeyword_nwse_resize = 383,
-        eCSSKeyword_oblique = 384,
-        eCSSKeyword_oldstyle_nums = 385,
-        eCSSKeyword_opacity = 386,
-        eCSSKeyword_open = 387,
-        eCSSKeyword_open_quote = 388,
-        eCSSKeyword_optional = 389,
-        eCSSKeyword_ordinal = 390,
-        eCSSKeyword_ornaments = 391,
-        eCSSKeyword_outset = 392,
-        eCSSKeyword_outside = 393,
-        eCSSKeyword_over = 394,
-        eCSSKeyword_overlay = 395,
-        eCSSKeyword_overline = 396,
-        eCSSKeyword_paint = 397,
-        eCSSKeyword_padding_box = 398,
-        eCSSKeyword_painted = 399,
-        eCSSKeyword_pan_x = 400,
-        eCSSKeyword_pan_y = 401,
-        eCSSKeyword_paused = 402,
-        eCSSKeyword_pc = 403,
-        eCSSKeyword_perspective = 404,
-        eCSSKeyword_petite_caps = 405,
-        eCSSKeyword_physical = 406,
-        eCSSKeyword_plaintext = 407,
-        eCSSKeyword_pointer = 408,
-        eCSSKeyword_polygon = 409,
-        eCSSKeyword_portrait = 410,
-        eCSSKeyword_pre = 411,
-        eCSSKeyword_pre_wrap = 412,
-        eCSSKeyword_pre_line = 413,
-        eCSSKeyword_preserve_3d = 414,
-        eCSSKeyword_progress = 415,
-        eCSSKeyword_progressive = 416,
-        eCSSKeyword_proportional_nums = 417,
-        eCSSKeyword_proportional_width = 418,
-        eCSSKeyword_proximity = 419,
-        eCSSKeyword_pt = 420,
-        eCSSKeyword_px = 421,
-        eCSSKeyword_rad = 422,
-        eCSSKeyword_read_only = 423,
-        eCSSKeyword_read_write = 424,
-        eCSSKeyword_relative = 425,
-        eCSSKeyword_repeat = 426,
-        eCSSKeyword_repeat_x = 427,
-        eCSSKeyword_repeat_y = 428,
-        eCSSKeyword_reverse = 429,
-        eCSSKeyword_ridge = 430,
-        eCSSKeyword_right = 431,
-        eCSSKeyword_rl = 432,
-        eCSSKeyword_rl_tb = 433,
-        eCSSKeyword_rotate = 434,
-        eCSSKeyword_rotate3d = 435,
-        eCSSKeyword_rotatex = 436,
-        eCSSKeyword_rotatey = 437,
-        eCSSKeyword_rotatez = 438,
-        eCSSKeyword_round = 439,
-        eCSSKeyword_row = 440,
-        eCSSKeyword_row_resize = 441,
-        eCSSKeyword_row_reverse = 442,
-        eCSSKeyword_rtl = 443,
-        eCSSKeyword_ruby = 444,
-        eCSSKeyword_ruby_base = 445,
-        eCSSKeyword_ruby_base_container = 446,
-        eCSSKeyword_ruby_text = 447,
-        eCSSKeyword_ruby_text_container = 448,
-        eCSSKeyword_running = 449,
-        eCSSKeyword_s = 450,
-        eCSSKeyword_s_resize = 451,
-        eCSSKeyword_safe = 452,
-        eCSSKeyword_saturate = 453,
-        eCSSKeyword_saturation = 454,
-        eCSSKeyword_scale = 455,
-        eCSSKeyword_scale_down = 456,
-        eCSSKeyword_scale3d = 457,
-        eCSSKeyword_scalex = 458,
-        eCSSKeyword_scaley = 459,
-        eCSSKeyword_scalez = 460,
-        eCSSKeyword_screen = 461,
-        eCSSKeyword_script = 462,
-        eCSSKeyword_scroll = 463,
-        eCSSKeyword_scrollbar = 464,
-        eCSSKeyword_scrollbar_small = 465,
-        eCSSKeyword_scrollbar_horizontal = 466,
-        eCSSKeyword_scrollbar_vertical = 467,
-        eCSSKeyword_se_resize = 468,
-        eCSSKeyword_select_after = 469,
-        eCSSKeyword_select_all = 470,
-        eCSSKeyword_select_before = 471,
-        eCSSKeyword_select_menu = 472,
-        eCSSKeyword_select_same = 473,
-        eCSSKeyword_self_end = 474,
-        eCSSKeyword_self_start = 475,
-        eCSSKeyword_semi_condensed = 476,
-        eCSSKeyword_semi_expanded = 477,
-        eCSSKeyword_separate = 478,
-        eCSSKeyword_sepia = 479,
-        eCSSKeyword_serif = 480,
-        eCSSKeyword_sesame = 481,
-        eCSSKeyword_show = 482,
-        eCSSKeyword_sideways = 483,
-        eCSSKeyword_sideways_lr = 484,
-        eCSSKeyword_sideways_right = 485,
-        eCSSKeyword_sideways_rl = 486,
-        eCSSKeyword_simp_chinese_formal = 487,
-        eCSSKeyword_simp_chinese_informal = 488,
-        eCSSKeyword_simplified = 489,
-        eCSSKeyword_skew = 490,
-        eCSSKeyword_skewx = 491,
-        eCSSKeyword_skewy = 492,
-        eCSSKeyword_slashed_zero = 493,
-        eCSSKeyword_slice = 494,
-        eCSSKeyword_small = 495,
-        eCSSKeyword_small_caps = 496,
-        eCSSKeyword_small_caption = 497,
-        eCSSKeyword_smaller = 498,
-        eCSSKeyword_smooth = 499,
-        eCSSKeyword_soft = 500,
-        eCSSKeyword_soft_light = 501,
-        eCSSKeyword_solid = 502,
-        eCSSKeyword_space_around = 503,
-        eCSSKeyword_space_between = 504,
-        eCSSKeyword_space_evenly = 505,
-        eCSSKeyword_span = 506,
-        eCSSKeyword_spell_out = 507,
-        eCSSKeyword_square = 508,
-        eCSSKeyword_stacked_fractions = 509,
-        eCSSKeyword_start = 510,
-        eCSSKeyword_static = 511,
-        eCSSKeyword_standalone = 512,
-        eCSSKeyword_status_bar = 513,
-        eCSSKeyword_step_end = 514,
-        eCSSKeyword_step_start = 515,
-        eCSSKeyword_sticky = 516,
-        eCSSKeyword_stretch = 517,
-        eCSSKeyword_stretch_to_fit = 518,
-        eCSSKeyword_stretched = 519,
-        eCSSKeyword_strict = 520,
-        eCSSKeyword_stroke = 521,
-        eCSSKeyword_stroke_box = 522,
-        eCSSKeyword_style = 523,
-        eCSSKeyword_styleset = 524,
-        eCSSKeyword_stylistic = 525,
-        eCSSKeyword_sub = 526,
-        eCSSKeyword_subgrid = 527,
-        eCSSKeyword_subtract = 528,
-        eCSSKeyword_super = 529,
-        eCSSKeyword_sw_resize = 530,
-        eCSSKeyword_swash = 531,
-        eCSSKeyword_swap = 532,
-        eCSSKeyword_table = 533,
-        eCSSKeyword_table_caption = 534,
-        eCSSKeyword_table_cell = 535,
-        eCSSKeyword_table_column = 536,
-        eCSSKeyword_table_column_group = 537,
-        eCSSKeyword_table_footer_group = 538,
-        eCSSKeyword_table_header_group = 539,
-        eCSSKeyword_table_row = 540,
-        eCSSKeyword_table_row_group = 541,
-        eCSSKeyword_tabular_nums = 542,
-        eCSSKeyword_tailed = 543,
-        eCSSKeyword_tb = 544,
-        eCSSKeyword_tb_rl = 545,
-        eCSSKeyword_text = 546,
-        eCSSKeyword_text_bottom = 547,
-        eCSSKeyword_text_top = 548,
-        eCSSKeyword_thick = 549,
-        eCSSKeyword_thin = 550,
-        eCSSKeyword_threeddarkshadow = 551,
-        eCSSKeyword_threedface = 552,
-        eCSSKeyword_threedhighlight = 553,
-        eCSSKeyword_threedlightshadow = 554,
-        eCSSKeyword_threedshadow = 555,
-        eCSSKeyword_titling_caps = 556,
-        eCSSKeyword_toggle = 557,
-        eCSSKeyword_top = 558,
-        eCSSKeyword_top_outside = 559,
-        eCSSKeyword_trad_chinese_formal = 560,
-        eCSSKeyword_trad_chinese_informal = 561,
-        eCSSKeyword_traditional = 562,
-        eCSSKeyword_translate = 563,
-        eCSSKeyword_translate3d = 564,
-        eCSSKeyword_translatex = 565,
-        eCSSKeyword_translatey = 566,
-        eCSSKeyword_translatez = 567,
-        eCSSKeyword_transparent = 568,
-        eCSSKeyword_triangle = 569,
-        eCSSKeyword_tri_state = 570,
-        eCSSKeyword_ultra_condensed = 571,
-        eCSSKeyword_ultra_expanded = 572,
-        eCSSKeyword_under = 573,
-        eCSSKeyword_underline = 574,
-        eCSSKeyword_unicase = 575,
-        eCSSKeyword_unsafe = 576,
-        eCSSKeyword_unset = 577,
-        eCSSKeyword_uppercase = 578,
-        eCSSKeyword_upright = 579,
-        eCSSKeyword_vertical = 580,
-        eCSSKeyword_vertical_lr = 581,
-        eCSSKeyword_vertical_rl = 582,
-        eCSSKeyword_vertical_text = 583,
-        eCSSKeyword_view_box = 584,
-        eCSSKeyword_visible = 585,
-        eCSSKeyword_visiblefill = 586,
-        eCSSKeyword_visiblepainted = 587,
-        eCSSKeyword_visiblestroke = 588,
-        eCSSKeyword_w_resize = 589,
-        eCSSKeyword_wait = 590,
-        eCSSKeyword_wavy = 591,
-        eCSSKeyword_weight = 592,
-        eCSSKeyword_wider = 593,
-        eCSSKeyword_window = 594,
-        eCSSKeyword_windowframe = 595,
-        eCSSKeyword_windowtext = 596,
-        eCSSKeyword_words = 597,
-        eCSSKeyword_wrap = 598,
-        eCSSKeyword_wrap_reverse = 599,
-        eCSSKeyword_write_only = 600,
-        eCSSKeyword_x_large = 601,
-        eCSSKeyword_x_small = 602,
-        eCSSKeyword_xx_large = 603,
-        eCSSKeyword_xx_small = 604,
-        eCSSKeyword_zoom_in = 605,
-        eCSSKeyword_zoom_out = 606,
-        eCSSKeyword_radio = 607,
-        eCSSKeyword_checkbox = 608,
-        eCSSKeyword_button_bevel = 609,
-        eCSSKeyword_toolbox = 610,
-        eCSSKeyword_toolbar = 611,
-        eCSSKeyword_toolbarbutton = 612,
-        eCSSKeyword_toolbargripper = 613,
-        eCSSKeyword_dualbutton = 614,
-        eCSSKeyword_toolbarbutton_dropdown = 615,
-        eCSSKeyword_button_arrow_up = 616,
-        eCSSKeyword_button_arrow_down = 617,
-        eCSSKeyword_button_arrow_next = 618,
-        eCSSKeyword_button_arrow_previous = 619,
-        eCSSKeyword_separator = 620,
-        eCSSKeyword_splitter = 621,
-        eCSSKeyword_statusbar = 622,
-        eCSSKeyword_statusbarpanel = 623,
-        eCSSKeyword_resizerpanel = 624,
-        eCSSKeyword_resizer = 625,
-        eCSSKeyword_listbox = 626,
-        eCSSKeyword_listitem = 627,
-        eCSSKeyword_numbers = 628,
-        eCSSKeyword_number_input = 629,
-        eCSSKeyword_treeview = 630,
-        eCSSKeyword_treeitem = 631,
-        eCSSKeyword_treetwisty = 632,
-        eCSSKeyword_treetwistyopen = 633,
-        eCSSKeyword_treeline = 634,
-        eCSSKeyword_treeheader = 635,
-        eCSSKeyword_treeheadercell = 636,
-        eCSSKeyword_treeheadersortarrow = 637,
-        eCSSKeyword_progressbar = 638,
-        eCSSKeyword_progressbar_vertical = 639,
-        eCSSKeyword_progresschunk = 640,
-        eCSSKeyword_progresschunk_vertical = 641,
-        eCSSKeyword_tab = 642,
-        eCSSKeyword_tabpanels = 643,
-        eCSSKeyword_tabpanel = 644,
-        eCSSKeyword_tab_scroll_arrow_back = 645,
-        eCSSKeyword_tab_scroll_arrow_forward = 646,
-        eCSSKeyword_tooltip = 647,
-        eCSSKeyword_spinner = 648,
-        eCSSKeyword_spinner_upbutton = 649,
-        eCSSKeyword_spinner_downbutton = 650,
-        eCSSKeyword_spinner_textfield = 651,
-        eCSSKeyword_scrollbarbutton_up = 652,
-        eCSSKeyword_scrollbarbutton_down = 653,
-        eCSSKeyword_scrollbarbutton_left = 654,
-        eCSSKeyword_scrollbarbutton_right = 655,
-        eCSSKeyword_scrollbartrack_horizontal = 656,
-        eCSSKeyword_scrollbartrack_vertical = 657,
-        eCSSKeyword_scrollbarthumb_horizontal = 658,
-        eCSSKeyword_scrollbarthumb_vertical = 659,
-        eCSSKeyword_sheet = 660,
-        eCSSKeyword_textfield = 661,
-        eCSSKeyword_textfield_multiline = 662,
-        eCSSKeyword_caret = 663,
-        eCSSKeyword_searchfield = 664,
-        eCSSKeyword_menubar = 665,
-        eCSSKeyword_menupopup = 666,
-        eCSSKeyword_menuitem = 667,
-        eCSSKeyword_checkmenuitem = 668,
-        eCSSKeyword_radiomenuitem = 669,
-        eCSSKeyword_menucheckbox = 670,
-        eCSSKeyword_menuradio = 671,
-        eCSSKeyword_menuseparator = 672,
-        eCSSKeyword_menuarrow = 673,
-        eCSSKeyword_menuimage = 674,
-        eCSSKeyword_menuitemtext = 675,
-        eCSSKeyword_menulist = 676,
-        eCSSKeyword_menulist_button = 677,
-        eCSSKeyword_menulist_text = 678,
-        eCSSKeyword_menulist_textfield = 679,
-        eCSSKeyword_meterbar = 680,
-        eCSSKeyword_meterchunk = 681,
-        eCSSKeyword_minimal_ui = 682,
-        eCSSKeyword_range = 683,
-        eCSSKeyword_range_thumb = 684,
-        eCSSKeyword_sans_serif = 685,
-        eCSSKeyword_sans_serif_bold_italic = 686,
-        eCSSKeyword_sans_serif_italic = 687,
-        eCSSKeyword_scale_horizontal = 688,
-        eCSSKeyword_scale_vertical = 689,
-        eCSSKeyword_scalethumb_horizontal = 690,
-        eCSSKeyword_scalethumb_vertical = 691,
-        eCSSKeyword_scalethumbstart = 692,
-        eCSSKeyword_scalethumbend = 693,
-        eCSSKeyword_scalethumbtick = 694,
-        eCSSKeyword_groupbox = 695,
-        eCSSKeyword_checkbox_container = 696,
-        eCSSKeyword_radio_container = 697,
-        eCSSKeyword_checkbox_label = 698,
-        eCSSKeyword_radio_label = 699,
-        eCSSKeyword_button_focus = 700,
-        eCSSKeyword__moz_win_media_toolbox = 701,
-        eCSSKeyword__moz_win_communications_toolbox = 702,
-        eCSSKeyword__moz_win_browsertabbar_toolbox = 703,
-        eCSSKeyword__moz_win_mediatext = 704,
-        eCSSKeyword__moz_win_communicationstext = 705,
-        eCSSKeyword__moz_win_glass = 706,
-        eCSSKeyword__moz_win_borderless_glass = 707,
-        eCSSKeyword__moz_window_titlebar = 708,
-        eCSSKeyword__moz_window_titlebar_maximized = 709,
-        eCSSKeyword__moz_window_frame_left = 710,
-        eCSSKeyword__moz_window_frame_right = 711,
-        eCSSKeyword__moz_window_frame_bottom = 712,
-        eCSSKeyword__moz_window_button_close = 713,
-        eCSSKeyword__moz_window_button_minimize = 714,
-        eCSSKeyword__moz_window_button_maximize = 715,
-        eCSSKeyword__moz_window_button_restore = 716,
-        eCSSKeyword__moz_window_button_box = 717,
-        eCSSKeyword__moz_window_button_box_maximized = 718,
-        eCSSKeyword__moz_mac_help_button = 719,
-        eCSSKeyword__moz_win_exclude_glass = 720,
-        eCSSKeyword__moz_mac_vibrancy_light = 721,
-        eCSSKeyword__moz_mac_vibrancy_dark = 722,
-        eCSSKeyword__moz_mac_disclosure_button_closed = 723,
-        eCSSKeyword__moz_mac_disclosure_button_open = 724,
-        eCSSKeyword__moz_mac_source_list = 725,
-        eCSSKeyword__moz_mac_source_list_selection = 726,
-        eCSSKeyword__moz_mac_active_source_list_selection = 727,
-        eCSSKeyword_alphabetic = 728,
-        eCSSKeyword_bevel = 729,
-        eCSSKeyword_butt = 730,
-        eCSSKeyword_central = 731,
-        eCSSKeyword_crispedges = 732,
-        eCSSKeyword_evenodd = 733,
-        eCSSKeyword_geometricprecision = 734,
-        eCSSKeyword_hanging = 735,
-        eCSSKeyword_ideographic = 736,
-        eCSSKeyword_linearrgb = 737,
-        eCSSKeyword_mathematical = 738,
-        eCSSKeyword_miter = 739,
-        eCSSKeyword_no_change = 740,
-        eCSSKeyword_non_scaling_stroke = 741,
-        eCSSKeyword_nonzero = 742,
-        eCSSKeyword_optimizelegibility = 743,
-        eCSSKeyword_optimizequality = 744,
-        eCSSKeyword_optimizespeed = 745,
-        eCSSKeyword_reset_size = 746,
-        eCSSKeyword_srgb = 747,
-        eCSSKeyword_symbolic = 748,
-        eCSSKeyword_symbols = 749,
-        eCSSKeyword_text_after_edge = 750,
-        eCSSKeyword_text_before_edge = 751,
-        eCSSKeyword_use_script = 752,
-        eCSSKeyword__moz_crisp_edges = 753,
-        eCSSKeyword_space = 754,
-        eCSSKeyword_COUNT = 755,
+        eCSSKeyword_distribute = 200,
+        eCSSKeyword_dot = 201,
+        eCSSKeyword_dotted = 202,
+        eCSSKeyword_double = 203,
+        eCSSKeyword_double_circle = 204,
+        eCSSKeyword_double_struck = 205,
+        eCSSKeyword_drag = 206,
+        eCSSKeyword_drop_shadow = 207,
+        eCSSKeyword_e_resize = 208,
+        eCSSKeyword_ease = 209,
+        eCSSKeyword_ease_in = 210,
+        eCSSKeyword_ease_in_out = 211,
+        eCSSKeyword_ease_out = 212,
+        eCSSKeyword_economy = 213,
+        eCSSKeyword_element = 214,
+        eCSSKeyword_elements = 215,
+        eCSSKeyword_ellipse = 216,
+        eCSSKeyword_ellipsis = 217,
+        eCSSKeyword_em = 218,
+        eCSSKeyword_embed = 219,
+        eCSSKeyword_enabled = 220,
+        eCSSKeyword_end = 221,
+        eCSSKeyword_ethiopic_numeric = 222,
+        eCSSKeyword_ex = 223,
+        eCSSKeyword_exact = 224,
+        eCSSKeyword_exclude = 225,
+        eCSSKeyword_exclusion = 226,
+        eCSSKeyword_expanded = 227,
+        eCSSKeyword_extends = 228,
+        eCSSKeyword_extra_condensed = 229,
+        eCSSKeyword_extra_expanded = 230,
+        eCSSKeyword_ew_resize = 231,
+        eCSSKeyword_fallback = 232,
+        eCSSKeyword_fantasy = 233,
+        eCSSKeyword_farthest_side = 234,
+        eCSSKeyword_farthest_corner = 235,
+        eCSSKeyword_fill = 236,
+        eCSSKeyword_filled = 237,
+        eCSSKeyword_fill_box = 238,
+        eCSSKeyword_first = 239,
+        eCSSKeyword_fit_content = 240,
+        eCSSKeyword_fixed = 241,
+        eCSSKeyword_flat = 242,
+        eCSSKeyword_flex = 243,
+        eCSSKeyword_flex_end = 244,
+        eCSSKeyword_flex_start = 245,
+        eCSSKeyword_flip = 246,
+        eCSSKeyword_flow_root = 247,
+        eCSSKeyword_forwards = 248,
+        eCSSKeyword_fraktur = 249,
+        eCSSKeyword_from_image = 250,
+        eCSSKeyword_full_width = 251,
+        eCSSKeyword_fullscreen = 252,
+        eCSSKeyword_grab = 253,
+        eCSSKeyword_grabbing = 254,
+        eCSSKeyword_grad = 255,
+        eCSSKeyword_grayscale = 256,
+        eCSSKeyword_graytext = 257,
+        eCSSKeyword_grid = 258,
+        eCSSKeyword_groove = 259,
+        eCSSKeyword_hard_light = 260,
+        eCSSKeyword_hebrew = 261,
+        eCSSKeyword_help = 262,
+        eCSSKeyword_hidden = 263,
+        eCSSKeyword_hide = 264,
+        eCSSKeyword_highlight = 265,
+        eCSSKeyword_highlighttext = 266,
+        eCSSKeyword_historical_forms = 267,
+        eCSSKeyword_historical_ligatures = 268,
+        eCSSKeyword_horizontal = 269,
+        eCSSKeyword_horizontal_tb = 270,
+        eCSSKeyword_hue = 271,
+        eCSSKeyword_hue_rotate = 272,
+        eCSSKeyword_hz = 273,
+        eCSSKeyword_icon = 274,
+        eCSSKeyword_ignore = 275,
+        eCSSKeyword_in = 276,
+        eCSSKeyword_interlace = 277,
+        eCSSKeyword_inactive = 278,
+        eCSSKeyword_inactiveborder = 279,
+        eCSSKeyword_inactivecaption = 280,
+        eCSSKeyword_inactivecaptiontext = 281,
+        eCSSKeyword_infinite = 282,
+        eCSSKeyword_infobackground = 283,
+        eCSSKeyword_infotext = 284,
+        eCSSKeyword_inherit = 285,
+        eCSSKeyword_initial = 286,
+        eCSSKeyword_inline = 287,
+        eCSSKeyword_inline_axis = 288,
+        eCSSKeyword_inline_block = 289,
+        eCSSKeyword_inline_end = 290,
+        eCSSKeyword_inline_flex = 291,
+        eCSSKeyword_inline_grid = 292,
+        eCSSKeyword_inline_start = 293,
+        eCSSKeyword_inline_table = 294,
+        eCSSKeyword_inset = 295,
+        eCSSKeyword_inside = 296,
+        eCSSKeyword_inter_character = 297,
+        eCSSKeyword_inter_word = 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 nsStyleStructID_nsStyleStructID_DUMMY1: root::nsStyleStructID =
         nsStyleStructID::nsStyleStructID_None;
     pub const nsStyleStructID_eStyleStruct_Font: root::nsStyleStructID =
         nsStyleStructID::nsStyleStructID_Inherited_Start;
     pub const nsStyleStructID_nsStyleStructID_DUMMY2: root::nsStyleStructID =
         nsStyleStructID::eStyleStruct_Variables;
     pub const nsStyleStructID_eStyleStruct_Background: root::nsStyleStructID =
@@ -17251,85 +17300,85 @@ pub mod root {
                     ));
     }
     impl Clone for nsCSSProps_KTableEntry {
         fn clone(&self) -> Self { *self }
     }
     extern "C" {
         #[link_name = "_ZN10nsCSSProps9kSIDTableE"]
         pub static mut nsCSSProps_kSIDTable:
-                   [root::nsStyleStructID; 316usize];
+                   [root::nsStyleStructID; 317usize];
     }
     extern "C" {
         #[link_name = "_ZN10nsCSSProps18kKeywordTableTableE"]
         pub static mut nsCSSProps_kKeywordTableTable:
-                   [*const root::nsCSSProps_KTableEntry; 316usize];
+                   [*const root::nsCSSProps_KTableEntry; 317usize];
     }
     extern "C" {
         #[link_name = "_ZN10nsCSSProps14kAnimTypeTableE"]
         pub static mut nsCSSProps_kAnimTypeTable:
-                   [root::nsStyleAnimType; 316usize];
+                   [root::nsStyleAnimType; 317usize];
     }
     extern "C" {
         #[link_name = "_ZN10nsCSSProps23kStyleStructOffsetTableE"]
-        pub static mut nsCSSProps_kStyleStructOffsetTable: [isize; 316usize];
+        pub static mut nsCSSProps_kStyleStructOffsetTable: [isize; 317usize];
     }
     extern "C" {
         #[link_name = "_ZN10nsCSSProps11kFlagsTableE"]
-        pub static mut nsCSSProps_kFlagsTable: [u32; 364usize];
+        pub static mut nsCSSProps_kFlagsTable: [u32; 365usize];
     }
     extern "C" {
         #[link_name = "_ZN10nsCSSProps19kParserVariantTableE"]
-        pub static mut nsCSSProps_kParserVariantTable: [u32; 316usize];
+        pub static mut nsCSSProps_kParserVariantTable: [u32; 317usize];
     }
     extern "C" {
         #[link_name = "_ZN10nsCSSProps17kSubpropertyTableE"]
         pub static mut nsCSSProps_kSubpropertyTable:
                    [*const root::nsCSSPropertyID; 48usize];
     }
     extern "C" {
         #[link_name = "_ZN10nsCSSProps26gShorthandsContainingTableE"]
         pub static mut nsCSSProps_gShorthandsContainingTable:
-                   [*mut root::nsCSSPropertyID; 316usize];
+                   [*mut root::nsCSSPropertyID; 317usize];
     }
     extern "C" {
         #[link_name = "_ZN10nsCSSProps25gShorthandsContainingPoolE"]
         pub static mut nsCSSProps_gShorthandsContainingPool:
                    *mut root::nsCSSPropertyID;
     }
     extern "C" {
         #[link_name = "_ZN10nsCSSProps22gPropertyCountInStructE"]
         pub static mut nsCSSProps_gPropertyCountInStruct: [usize; 24usize];
     }
     extern "C" {
         #[link_name = "_ZN10nsCSSProps22gPropertyIndexInStructE"]
-        pub static mut nsCSSProps_gPropertyIndexInStruct: [usize; 316usize];
+        pub static mut nsCSSProps_gPropertyIndexInStruct: [usize; 317usize];
     }
     extern "C" {
         #[link_name = "_ZN10nsCSSProps18kLogicalGroupTableE"]
         pub static mut nsCSSProps_kLogicalGroupTable:
                    [*const root::nsCSSPropertyID; 9usize];
     }
     extern "C" {
         #[link_name = "_ZN10nsCSSProps16gPropertyEnabledE"]
-        pub static mut nsCSSProps_gPropertyEnabled: [bool; 472usize];
+        pub static mut nsCSSProps_gPropertyEnabled: [bool; 473usize];
     }
     extern "C" {
         #[link_name = "_ZN10nsCSSProps13kIDLNameTableE"]
         pub static mut nsCSSProps_kIDLNameTable:
-                   [*const ::std::os::raw::c_char; 364usize];
+                   [*const ::std::os::raw::c_char; 365usize];
     }
     extern "C" {
         #[link_name = "_ZN10nsCSSProps25kIDLNameSortPositionTableE"]
-        pub static mut nsCSSProps_kIDLNameSortPositionTable: [i32; 364usize];
+        pub static mut nsCSSProps_kIDLNameSortPositionTable: [i32; 365usize];
     }
     extern "C" {
         #[link_name = "_ZN10nsCSSProps19gPropertyUseCounterE"]
         pub static mut nsCSSProps_gPropertyUseCounter:
-                   [root::mozilla::UseCounter; 316usize];
+                   [root::mozilla::UseCounter; 317usize];
     }
     extern "C" {
         #[link_name = "_ZN10nsCSSProps25kAnimationDirectionKTableE"]
         pub static mut nsCSSProps_kAnimationDirectionKTable:
                    [root::nsCSSProps_KTableEntry; 0usize];
     }
     extern "C" {
         #[link_name = "_ZN10nsCSSProps24kAnimationFillModeKTableE"]
@@ -18082,26 +18131,36 @@ pub mod root {
                    [root::nsCSSProps_KTableEntry; 0usize];
     }
     extern "C" {
         #[link_name = "_ZN10nsCSSProps29kTextEmphasisStyleShapeKTableE"]
         pub static mut nsCSSProps_kTextEmphasisStyleShapeKTable:
                    [root::nsCSSProps_KTableEntry; 0usize];
     }
     extern "C" {
+        #[link_name = "_ZN10nsCSSProps18kTextJustifyKTableE"]
+        pub static mut nsCSSProps_kTextJustifyKTable:
+                   [root::nsCSSProps_KTableEntry; 0usize];
+    }
+    extern "C" {
         #[link_name = "_ZN10nsCSSProps22kTextOrientationKTableE"]
         pub static mut nsCSSProps_kTextOrientationKTable:
                    [root::nsCSSProps_KTableEntry; 0usize];
     }
     extern "C" {
         #[link_name = "_ZN10nsCSSProps19kTextOverflowKTableE"]
         pub static mut nsCSSProps_kTextOverflowKTable:
                    [root::nsCSSProps_KTableEntry; 0usize];
     }
     extern "C" {
+        #[link_name = "_ZN10nsCSSProps21kTextSizeAdjustKTableE"]
+        pub static mut nsCSSProps_kTextSizeAdjustKTable:
+                   [root::nsCSSProps_KTableEntry; 0usize];
+    }
+    extern "C" {
         #[link_name = "_ZN10nsCSSProps20kTextTransformKTableE"]
         pub static mut nsCSSProps_kTextTransformKTable:
                    [root::nsCSSProps_KTableEntry; 0usize];
     }
     extern "C" {
         #[link_name = "_ZN10nsCSSProps18kTouchActionKTableE"]
         pub static mut nsCSSProps_kTouchActionKTable:
                    [root::nsCSSProps_KTableEntry; 0usize];
@@ -21050,17 +21109,20 @@ pub mod root {
     #[repr(C)]
     #[derive(Debug, Copy, Clone)]
     pub struct nsIReflowCallback([u8; 0]);
     #[repr(C)]
     #[derive(Debug, Copy, Clone)]
     pub struct nsCSSFrameConstructor([u8; 0]);
     #[repr(C)]
     #[derive(Debug, Copy, Clone)]
-    pub struct nsWeakFrame([u8; 0]);
+    pub struct AutoWeakFrame([u8; 0]);
+    #[repr(C)]
+    #[derive(Debug, Copy, Clone)]
+    pub struct WeakFrame([u8; 0]);
     /**
  * Interface for frames that are scrollable. This interface exposes
  * APIs for examining scroll state, observing changes to scroll state,
  * and triggering scrolling.
  */
     #[repr(C)]
     #[derive(Debug, Copy)]
     pub struct nsIScrollableFrame {
@@ -23870,16 +23932,17 @@ pub mod root {
                     , "::" , stringify ! ( mTextDecorationColor ) ));
     }
     #[repr(C)]
     #[derive(Debug)]
     pub struct nsStyleText {
         pub mTextAlign: u8,
         pub mTextAlignLast: u8,
         pub _bitfield_1: u8,
+        pub mTextJustify: root::mozilla::StyleTextJustify,
         pub mTextTransform: u8,
         pub mWhiteSpace: u8,
         pub mWordBreak: u8,
         pub mOverflowWrap: u8,
         pub mHyphens: root::mozilla::StyleHyphens,
         pub mRubyAlign: u8,
         pub mRubyPosition: u8,
         pub mTextSizeAdjust: u8,
@@ -23897,154 +23960,159 @@ pub mod root {
         pub mLineHeight: root::nsStyleCoord,
         pub mTextIndent: root::nsStyleCoord,
         pub mWebkitTextStrokeWidth: root::nscoord,
         pub mTextShadow: root::RefPtr<root::nsCSSShadowArray>,
         pub mTextEmphasisStyleString: ::nsstring::nsStringRepr,
     }
     #[test]
     fn bindgen_test_layout_nsStyleText() {
-        assert_eq!(::std::mem::size_of::<nsStyleText>() , 152usize , concat !
+        assert_eq!(::std::mem::size_of::<nsStyleText>() , 160usize , concat !
                    ( "Size of: " , stringify ! ( nsStyleText ) ));
         assert_eq! (::std::mem::align_of::<nsStyleText>() , 8usize , concat !
                     ( "Alignment of " , stringify ! ( nsStyleText ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) . mTextAlign as *
                     const _ as usize } , 0usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mTextAlign ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) . mTextAlignLast as *
                     const _ as usize } , 1usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mTextAlignLast ) ));
         assert_eq! (unsafe {
+                    & ( * ( 0 as * const nsStyleText ) ) . mTextJustify as *
+                    const _ as usize } , 3usize , concat ! (
+                    "Alignment of field: " , stringify ! ( nsStyleText ) ,
+                    "::" , stringify ! ( mTextJustify ) ));
+        assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) . mTextTransform as *
-                    const _ as usize } , 3usize , concat ! (
+                    const _ as usize } , 4usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mTextTransform ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) . mWhiteSpace as *
-                    const _ as usize } , 4usize , concat ! (
+                    const _ as usize } , 5usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mWhiteSpace ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) . mWordBreak as *
-                    const _ as usize } , 5usize , concat ! (
+                    const _ as usize } , 6usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mWordBreak ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) . mOverflowWrap as *
-                    const _ as usize } , 6usize , concat ! (
+                    const _ as usize } , 7usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mOverflowWrap ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) . mHyphens as * const
-                    _ as usize } , 7usize , concat ! (
+                    _ as usize } , 8usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mHyphens ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) . mRubyAlign as *
-                    const _ as usize } , 8usize , concat ! (
+                    const _ as usize } , 9usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mRubyAlign ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) . mRubyPosition as *
-                    const _ as usize } , 9usize , concat ! (
+                    const _ as usize } , 10usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mRubyPosition ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) . mTextSizeAdjust as
-                    * const _ as usize } , 10usize , concat ! (
+                    * const _ as usize } , 11usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mTextSizeAdjust ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) . mTextCombineUpright
-                    as * const _ as usize } , 11usize , concat ! (
+                    as * const _ as usize } , 12usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mTextCombineUpright ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) .
                     mControlCharacterVisibility as * const _ as usize } ,
-                    12usize , concat ! (
+                    13usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mControlCharacterVisibility ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) .
-                    mTextEmphasisPosition as * const _ as usize } , 13usize ,
+                    mTextEmphasisPosition as * const _ as usize } , 14usize ,
                     concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mTextEmphasisPosition ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) . mTextEmphasisStyle
-                    as * const _ as usize } , 14usize , concat ! (
+                    as * const _ as usize } , 15usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mTextEmphasisStyle ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) . mTextRendering as *
-                    const _ as usize } , 15usize , concat ! (
+                    const _ as usize } , 16usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mTextRendering ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) . mTextEmphasisColor
-                    as * const _ as usize } , 16usize , concat ! (
+                    as * const _ as usize } , 20usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mTextEmphasisColor ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) .
-                    mWebkitTextFillColor as * const _ as usize } , 24usize ,
+                    mWebkitTextFillColor as * const _ as usize } , 28usize ,
                     concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mWebkitTextFillColor ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) .
-                    mWebkitTextStrokeColor as * const _ as usize } , 32usize ,
+                    mWebkitTextStrokeColor as * const _ as usize } , 36usize ,
                     concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mWebkitTextStrokeColor ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) . mTabSize as * const
-                    _ as usize } , 40usize , concat ! (
+                    _ as usize } , 48usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mTabSize ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) . mWordSpacing as *
-                    const _ as usize } , 56usize , concat ! (
+                    const _ as usize } , 64usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mWordSpacing ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) . mLetterSpacing as *
-                    const _ as usize } , 72usize , concat ! (
+                    const _ as usize } , 80usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mLetterSpacing ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) . mLineHeight as *
-                    const _ as usize } , 88usize , concat ! (
+                    const _ as usize } , 96usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mLineHeight ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) . mTextIndent as *
-                    const _ as usize } , 104usize , concat ! (
+                    const _ as usize } , 112usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mTextIndent ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) .
-                    mWebkitTextStrokeWidth as * const _ as usize } , 120usize
+                    mWebkitTextStrokeWidth as * const _ as usize } , 128usize
                     , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mWebkitTextStrokeWidth ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) . mTextShadow as *
-                    const _ as usize } , 128usize , concat ! (
+                    const _ as usize } , 136usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mTextShadow ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) .
                     mTextEmphasisStyleString as * const _ as usize } ,
-                    136usize , concat ! (
+                    144usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mTextEmphasisStyleString ) ));
     }
     #[repr(C)]
     #[derive(Debug, Copy)]
     pub struct nsStyleImageOrientation {
         pub mOrientation: u8,
     }
@@ -26055,24 +26123,24 @@ pub mod root {
                    root::JS::Heap<*mut root::JSObject> ) ));
         assert_eq!(::std::mem::align_of::<root::JS::Heap<*mut root::JSObject>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::JS::Heap<*mut root::JSObject> ) ));
     }
     #[test]
     fn __bindgen_test_layout_template_15() {
-        assert_eq!(::std::mem::size_of::<root::JS::Heap<*mut root::JSScript>>()
-                   , 8usize , concat ! (
-                   "Size of template specialization: " , stringify ! (
-                   root::JS::Heap<*mut root::JSScript> ) ));
-        assert_eq!(::std::mem::align_of::<root::JS::Heap<*mut root::JSScript>>()
-                   , 8usize , concat ! (
-                   "Alignment of template specialization: " , stringify ! (
-                   root::JS::Heap<*mut root::JSScript> ) ));
+        assert_eq!(::std::mem::size_of::<root::JS::Heap<root::JS::Value>>() ,
+                   8usize , concat ! (
+                   "Size of template specialization: " , stringify ! (
+                   root::JS::Heap<root::JS::Value> ) ));
+        assert_eq!(::std::mem::align_of::<root::JS::Heap<root::JS::Value>>() ,
+                   8usize , concat ! (
+                   "Alignment of template specialization: " , stringify ! (
+                   root::JS::Heap<root::JS::Value> ) ));
     }
     #[test]
     fn __bindgen_test_layout_template_16() {
         assert_eq!(::std::mem::size_of::<root::nsReadingIterator<u16>>() ,
                    24usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsReadingIterator<u16> ) ));
         assert_eq!(::std::mem::align_of::<root::nsReadingIterator<u16>>() ,
@@ -26193,55 +26261,44 @@ pub mod root {
                    root::already_AddRefed<root::nsIAtom> ) ));
         assert_eq!(::std::mem::align_of::<root::already_AddRefed<root::nsIAtom>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsIAtom> ) ));
     }
     #[test]
     fn __bindgen_test_layout_template_27() {
-        assert_eq!(::std::mem::size_of::<root::JS::Heap<root::JS::Value>>() ,
-                   8usize , concat ! (
-                   "Size of template specialization: " , stringify ! (
-                   root::JS::Heap<root::JS::Value> ) ));
-        assert_eq!(::std::mem::align_of::<root::JS::Heap<root::JS::Value>>() ,
-                   8usize , concat ! (
-                   "Alignment of template specialization: " , stringify ! (
-                   root::JS::Heap<root::JS::Value> ) ));
-    }
-    #[test]
-    fn __bindgen_test_layout_template_28() {
         assert_eq!(::std::mem::size_of::<root::JS::DeletePolicy<root::JSErrorNotes_Note>>()
                    , 1usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::JS::DeletePolicy<root::JSErrorNotes_Note> ) ));
         assert_eq!(::std::mem::align_of::<root::JS::DeletePolicy<root::JSErrorNotes_Note>>()
                    , 1usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::JS::DeletePolicy<root::JSErrorNotes_Note> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_29() {
+    fn __bindgen_test_layout_template_28() {
         assert_eq!(::std::mem::size_of::<root::mozilla::UniquePtr<root::JSErrorNotes_Note,
                                                root::JS::DeletePolicy<root::JSErrorNotes_Note>>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::mozilla::UniquePtr<root::JSErrorNotes_Note,
                          root::JS::DeletePolicy<root::JSErrorNotes_Note>>
                    ) ));
         assert_eq!(::std::mem::align_of::<root::mozilla::UniquePtr<root::JSErrorNotes_Note,
                                                 root::JS::DeletePolicy<root::JSErrorNotes_Note>>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::mozilla::UniquePtr<root::JSErrorNotes_Note,
                          root::JS::DeletePolicy<root::JSErrorNotes_Note>>
                    ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_30() {
+    fn __bindgen_test_layout_template_29() {
         assert_eq!(::std::mem::size_of::<root::std::iterator<root::std::input_iterator_tag,
                                           root::mozilla::UniquePtr<root::JSErrorNotes_Note,
                                                                    root::JS::DeletePolicy<root::JSErrorNotes_Note>>,
                                           ::std::os::raw::c_long,
                                           *mut root::mozilla::UniquePtr<root::JSErrorNotes_Note,
                                                                         root::JS::DeletePolicy<root::JSErrorNotes_Note>>,
                                           *mut root::mozilla::UniquePtr<root::JSErrorNotes_Note,
                                                                         root::JS::DeletePolicy<root::JSErrorNotes_Note>>>>()
@@ -26272,317 +26329,328 @@ pub mod root {
                     ::std::os::raw::c_long,
                     *mut root::mozilla::UniquePtr<root::JSErrorNotes_Note,
                                                   root::JS::DeletePolicy<root::JSErrorNotes_Note>>,
                     *mut root::mozilla::UniquePtr<root::JSErrorNotes_Note,
                                                   root::JS::DeletePolicy<root::JSErrorNotes_Note>>>
                    ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_31() {
+    fn __bindgen_test_layout_template_30() {
         assert_eq!(::std::mem::size_of::<root::already_AddRefed<root::nsIRunnable>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsIRunnable> ) ));
         assert_eq!(::std::mem::align_of::<root::already_AddRefed<root::nsIRunnable>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsIRunnable> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_32() {
+    fn __bindgen_test_layout_template_31() {
         assert_eq!(::std::mem::size_of::<root::nsCOMPtr<root::nsIPrincipal>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsCOMPtr<root::nsIPrincipal> ) ));
         assert_eq!(::std::mem::align_of::<root::nsCOMPtr<root::nsIPrincipal>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsCOMPtr<root::nsIPrincipal> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_33() {
+    fn __bindgen_test_layout_template_32() {
         assert_eq!(::std::mem::size_of::<[u64; 29usize]>() , 232usize , concat
                    ! (
                    "Size of template specialization: " , stringify ! (
                    [u64; 29usize] ) ));
         assert_eq!(::std::mem::align_of::<[u64; 29usize]>() , 8usize , concat
                    ! (
                    "Alignment of template specialization: " , stringify ! (
                    [u64; 29usize] ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_34() {
+    fn __bindgen_test_layout_template_33() {
         assert_eq!(::std::mem::size_of::<root::already_AddRefed<root::nsIURI>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsIURI> ) ));
         assert_eq!(::std::mem::align_of::<root::already_AddRefed<root::nsIURI>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsIURI> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_35() {
+    fn __bindgen_test_layout_template_34() {
         assert_eq!(::std::mem::size_of::<root::nsTArray<root::RefPtr<root::mozilla::dom::AnonymousContent>>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsTArray<root::RefPtr<root::mozilla::dom::AnonymousContent>>
                    ) ));
         assert_eq!(::std::mem::align_of::<root::nsTArray<root::RefPtr<root::mozilla::dom::AnonymousContent>>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsTArray<root::RefPtr<root::mozilla::dom::AnonymousContent>>
                    ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_36() {
+    fn __bindgen_test_layout_template_35() {
         assert_eq!(::std::mem::size_of::<root::RefPtr<root::mozilla::StyleSheet>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::RefPtr<root::mozilla::StyleSheet> ) ));
         assert_eq!(::std::mem::align_of::<root::RefPtr<root::mozilla::StyleSheet>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::RefPtr<root::mozilla::StyleSheet> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_37() {
+    fn __bindgen_test_layout_template_36() {
         assert_eq!(::std::mem::size_of::<root::RefPtr<root::mozilla::dom::Element>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::RefPtr<root::mozilla::dom::Element> ) ));
         assert_eq!(::std::mem::align_of::<root::RefPtr<root::mozilla::dom::Element>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::RefPtr<root::mozilla::dom::Element> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_38() {
+    fn __bindgen_test_layout_template_37() {
         assert_eq!(::std::mem::size_of::<root::nsTArray<root::RefPtr<root::mozilla::dom::Element>>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsTArray<root::RefPtr<root::mozilla::dom::Element>> )
                    ));
         assert_eq!(::std::mem::align_of::<root::nsTArray<root::RefPtr<root::mozilla::dom::Element>>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsTArray<root::RefPtr<root::mozilla::dom::Element>> )
                    ));
     }
     #[test]
-    fn __bindgen_test_layout_template_39() {
+    fn __bindgen_test_layout_template_38() {
         assert_eq!(::std::mem::size_of::<root::nsCOMPtr<root::nsIObserver>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsCOMPtr<root::nsIObserver> ) ));
         assert_eq!(::std::mem::align_of::<root::nsCOMPtr<root::nsIObserver>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsCOMPtr<root::nsIObserver> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_40() {
+    fn __bindgen_test_layout_template_39() {
         assert_eq!(::std::mem::size_of::<root::nsTArray<root::nsCOMPtr<root::nsIObserver>>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsTArray<root::nsCOMPtr<root::nsIObserver>> ) ));
         assert_eq!(::std::mem::align_of::<root::nsTArray<root::nsCOMPtr<root::nsIObserver>>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsTArray<root::nsCOMPtr<root::nsIObserver>> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_41() {
+    fn __bindgen_test_layout_template_40() {
         assert_eq!(::std::mem::size_of::<root::already_AddRefed<root::nsIDocument>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsIDocument> ) ));
         assert_eq!(::std::mem::align_of::<root::already_AddRefed<root::nsIDocument>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsIDocument> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_42() {
+    fn __bindgen_test_layout_template_41() {
         assert_eq!(::std::mem::size_of::<root::already_AddRefed<root::nsContentList>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsContentList> ) ));
         assert_eq!(::std::mem::align_of::<root::already_AddRefed<root::nsContentList>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsContentList> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_43() {
+    fn __bindgen_test_layout_template_42() {
         assert_eq!(::std::mem::size_of::<root::already_AddRefed<root::nsINode>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsINode> ) ));
         assert_eq!(::std::mem::align_of::<root::already_AddRefed<root::nsINode>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsINode> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_44() {
+    fn __bindgen_test_layout_template_43() {
         assert_eq!(::std::mem::size_of::<root::nsCOMPtr<root::nsIWeakReference>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsCOMPtr<root::nsIWeakReference> ) ));
         assert_eq!(::std::mem::align_of::<root::nsCOMPtr<root::nsIWeakReference>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsCOMPtr<root::nsIWeakReference> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_45() {
+    fn __bindgen_test_layout_template_44() {
         assert_eq!(::std::mem::size_of::<u64>() , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! ( u64 )
                    ));
         assert_eq!(::std::mem::align_of::<u64>() , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    u64 ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_46() {
+    fn __bindgen_test_layout_template_45() {
         assert_eq!(::std::mem::size_of::<root::nsTArray<root::nsRect>>() ,
                    8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsTArray<root::nsRect> ) ));
         assert_eq!(::std::mem::align_of::<root::nsTArray<root::nsRect>>() ,
                    8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsTArray<root::nsRect> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_47() {
+    fn __bindgen_test_layout_template_46() {
         assert_eq!(::std::mem::size_of::<[u64; 29usize]>() , 232usize , concat
                    ! (
                    "Size of template specialization: " , stringify ! (
                    [u64; 29usize] ) ));
         assert_eq!(::std::mem::align_of::<[u64; 29usize]>() , 8usize , concat
                    ! (
                    "Alignment of template specialization: " , stringify ! (
                    [u64; 29usize] ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_48() {
+    fn __bindgen_test_layout_template_47() {
         assert_eq!(::std::mem::size_of::<root::already_AddRefed<root::mozilla::dom::NodeInfo>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::already_AddRefed<root::mozilla::dom::NodeInfo> ) ));
         assert_eq!(::std::mem::align_of::<root::already_AddRefed<root::mozilla::dom::NodeInfo>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::already_AddRefed<root::mozilla::dom::NodeInfo> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_49() {
+    fn __bindgen_test_layout_template_48() {
         assert_eq!(::std::mem::size_of::<root::nsTArray<*mut root::nsIContent>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsTArray<*mut root::nsIContent> ) ));
         assert_eq!(::std::mem::align_of::<root::nsTArray<*mut root::nsIContent>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsTArray<*mut root::nsIContent> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_50() {
+    fn __bindgen_test_layout_template_49() {
         assert_eq!(::std::mem::size_of::<[u64; 6usize]>() , 48usize , concat !
                    (
                    "Size of template specialization: " , stringify ! (
                    [u64; 6usize] ) ));
         assert_eq!(::std::mem::align_of::<[u64; 6usize]>() , 8usize , concat !
                    (
                    "Alignment of template specialization: " , stringify ! (
                    [u64; 6usize] ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_51() {
+    fn __bindgen_test_layout_template_50() {
         assert_eq!(::std::mem::size_of::<root::mozilla::DefaultDelete<root::mozilla::dom::TimeoutManager>>()
                    , 1usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::mozilla::DefaultDelete<root::mozilla::dom::TimeoutManager>
                    ) ));
         assert_eq!(::std::mem::align_of::<root::mozilla::DefaultDelete<root::mozilla::dom::TimeoutManager>>()
                    , 1usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::mozilla::DefaultDelete<root::mozilla::dom::TimeoutManager>
                    ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_52() {
+    fn __bindgen_test_layout_template_51() {
         assert_eq!(::std::mem::size_of::<root::already_AddRefed<root::nsISupports>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsISupports> ) ));
         assert_eq!(::std::mem::align_of::<root::already_AddRefed<root::nsISupports>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsISupports> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_53() {
+    fn __bindgen_test_layout_template_52() {
         assert_eq!(::std::mem::size_of::<root::nsCOMPtr<root::nsIRunnable>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsCOMPtr<root::nsIRunnable> ) ));
         assert_eq!(::std::mem::align_of::<root::nsCOMPtr<root::nsIRunnable>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsCOMPtr<root::nsIRunnable> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_54() {
+    fn __bindgen_test_layout_template_53() {
         assert_eq!(::std::mem::size_of::<root::nsAutoPtr<root::nsMediaQuery>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsAutoPtr<root::nsMediaQuery> ) ));
         assert_eq!(::std::mem::align_of::<root::nsAutoPtr<root::nsMediaQuery>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsAutoPtr<root::nsMediaQuery> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_55() {
+    fn __bindgen_test_layout_template_54() {
         assert_eq!(::std::mem::size_of::<root::already_AddRefed<root::nsIContent>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsIContent> ) ));
         assert_eq!(::std::mem::align_of::<root::already_AddRefed<root::nsIContent>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsIContent> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_56() {
+    fn __bindgen_test_layout_template_55() {
         assert_eq!(::std::mem::size_of::<[u64; 6usize]>() , 48usize , concat !
                    (
                    "Size of template specialization: " , stringify ! (
                    [u64; 6usize] ) ));
         assert_eq!(::std::mem::align_of::<[u64; 6usize]>() , 8usize , concat !
                    (
                    "Alignment of template specialization: " , stringify ! (
                    [u64; 6usize] ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_57() {
+    fn __bindgen_test_layout_template_56() {
         assert_eq!(::std::mem::size_of::<root::mozilla::OwningNonNull<root::nsINode>>()
                    , 16usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::mozilla::OwningNonNull<root::nsINode> ) ));
         assert_eq!(::std::mem::align_of::<root::mozilla::OwningNonNull<root::nsINode>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::mozilla::OwningNonNull<root::nsINode> ) ));
     }
     #[test]
+    fn __bindgen_test_layout_template_57() {
+        assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat !
+                   (
+                   "Size of template specialization: " , stringify ! (
+                   [u32; 2usize] ) ));
+        assert_eq!(::std::mem::align_of::<[u32; 2usize]>() , 4usize , concat !
+                   (
+                   "Alignment of template specialization: " , stringify ! (
+                   [u32; 2usize] ) ));
+    }
+    #[test]
     fn __bindgen_test_layout_template_58() {
         assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat !
                    (
                    "Size of template specialization: " , stringify ! (
                    [u32; 2usize] ) ));
         assert_eq!(::std::mem::align_of::<[u32; 2usize]>() , 4usize , concat !
                    (
                    "Alignment of template specialization: " , stringify ! (
@@ -26596,57 +26664,57 @@ pub mod root {
                    [u32; 2usize] ) ));
         assert_eq!(::std::mem::align_of::<[u32; 2usize]>() , 4usize , concat !
                    (
                    "Alignment of template specialization: " , stringify ! (
                    [u32; 2usize] ) ));
     }
     #[test]
     fn __bindgen_test_layout_template_60() {
+        assert_eq!(::std::mem::size_of::<[u32; 4usize]>() , 16usize , concat !
+                   (
+                   "Size of template specialization: " , stringify ! (
+                   [u32; 4usize] ) ));
+        assert_eq!(::std::mem::align_of::<[u32; 4usize]>() , 4usize , concat !
+                   (
+                   "Alignment of template specialization: " , stringify ! (
+                   [u32; 4usize] ) ));
+    }
+    #[test]
+    fn __bindgen_test_layout_template_61() {
         assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat !
                    (
                    "Size of template specialization: " , stringify ! (
                    [u32; 2usize] ) ));
         assert_eq!(::std::mem::align_of::<[u32; 2usize]>() , 4usize , concat !
                    (
                    "Alignment of template specialization: " , stringify ! (
                    [u32; 2usize] ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_61() {
-        assert_eq!(::std::mem::size_of::<[u32; 4usize]>() , 16usize , concat !
-                   (
-                   "Size of template specialization: " , stringify ! (
-                   [u32; 4usize] ) ));
-        assert_eq!(::std::mem::align_of::<[u32; 4usize]>() , 4usize , concat !
-                   (
-                   "Alignment of template specialization: " , stringify ! (
-                   [u32; 4usize] ) ));
-    }
-    #[test]
     fn __bindgen_test_layout_template_62() {
         assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat !
                    (
                    "Size of template specialization: " , stringify ! (
                    [u32; 2usize] ) ));
         assert_eq!(::std::mem::align_of::<[u32; 2usize]>() , 4usize , concat !
                    (
                    "Alignment of template specialization: " , stringify ! (
                    [u32; 2usize] ) ));
     }
     #[test]
     fn __bindgen_test_layout_template_63() {
-        assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat !
+        assert_eq!(::std::mem::size_of::<[u32; 4usize]>() , 16usize , concat !
                    (
                    "Size of template specialization: " , stringify ! (
-                   [u32; 2usize] ) ));
-        assert_eq!(::std::mem::align_of::<[u32; 2usize]>() , 4usize , concat !
+                   [u32; 4usize] ) ));
+        assert_eq!(::std::mem::align_of::<[u32; 4usize]>() , 4usize , concat !
                    (
                    "Alignment of template specialization: " , stringify ! (
-                   [u32; 2usize] ) ));
+                   [u32; 4usize] ) ));
     }
     #[test]
     fn __bindgen_test_layout_template_64() {
         assert_eq!(::std::mem::size_of::<[u32; 4usize]>() , 16usize , concat !
                    (
                    "Size of template specialization: " , stringify ! (
                    [u32; 4usize] ) ));
         assert_eq!(::std::mem::align_of::<[u32; 4usize]>() , 4usize , concat !
@@ -26662,35 +26730,35 @@ pub mod root {
                    [u32; 4usize] ) ));
         assert_eq!(::std::mem::align_of::<[u32; 4usize]>() , 4usize , concat !
                    (
                    "Alignment of template specialization: " , stringify ! (
                    [u32; 4usize] ) ));
     }
     #[test]
     fn __bindgen_test_layout_template_66() {
-        assert_eq!(::std::mem::size_of::<[u32; 4usize]>() , 16usize , concat !
-                   (
-                   "Size of template specialization: " , stringify ! (
-                   [u32; 4usize] ) ));
-        assert_eq!(::std::mem::align_of::<[u32; 4usize]>() , 4usize , concat !
-                   (
-                   "Alignment of template specialization: " , stringify ! (
-                   [u32; 4usize] ) ));
-    }
-    #[test]
-    fn __bindgen_test_layout_template_67() {
         assert_eq!(::std::mem::size_of::<u32>() , 4usize , concat ! (
                    "Size of template specialization: " , stringify ! ( u32 )
                    ));
         assert_eq!(::std::mem::align_of::<u32>() , 4usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    u32 ) ));
     }
     #[test]
+    fn __bindgen_test_layout_template_67() {
+        assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat !
+                   (
+                   "Size of template specialization: " , stringify ! (
+                   [u32; 2usize] ) ));
+        assert_eq!(::std::mem::align_of::<[u32; 2usize]>() , 4usize , concat !
+                   (
+                   "Alignment of template specialization: " , stringify ! (
+                   [u32; 2usize] ) ));
+    }
+    #[test]
     fn __bindgen_test_layout_template_68() {
         assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat !
                    (
                    "Size of template specialization: " , stringify ! (
                    [u32; 2usize] ) ));
         assert_eq!(::std::mem::align_of::<[u32; 2usize]>() , 4usize , concat !
                    (
                    "Alignment of template specialization: " , stringify ! (
@@ -26704,404 +26772,393 @@ pub mod root {
                    [u32; 2usize] ) ));
         assert_eq!(::std::mem::align_of::<[u32; 2usize]>() , 4usize , concat !
                    (
                    "Alignment of template specialization: " , stringify ! (
                    [u32; 2usize] ) ));
     }
     #[test]
     fn __bindgen_test_layout_template_70() {
-        assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat !
-                   (
-                   "Size of template specialization: " , stringify ! (
-                   [u32; 2usize] ) ));
-        assert_eq!(::std::mem::align_of::<[u32; 2usize]>() , 4usize , concat !
-                   (
-                   "Alignment of template specialization: " , stringify ! (
-                   [u32; 2usize] ) ));
-    }
-    #[test]
-    fn __bindgen_test_layout_template_71() {
         assert_eq!(::std::mem::size_of::<root::nsTArray<f64>>() , 8usize ,
                    concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsTArray<f64> ) ));
         assert_eq!(::std::mem::align_of::<root::nsTArray<f64>>() , 8usize ,
                    concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsTArray<f64> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_72() {
+    fn __bindgen_test_layout_template_71() {
         assert_eq!(::std::mem::size_of::<root::RefPtr<root::mozilla::dom::DOMIntersectionObserverEntry>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::RefPtr<root::mozilla::dom::DOMIntersectionObserverEntry>
                    ) ));
         assert_eq!(::std::mem::align_of::<root::RefPtr<root::mozilla::dom::DOMIntersectionObserverEntry>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::RefPtr<root::mozilla::dom::DOMIntersectionObserverEntry>
                    ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_73() {
+    fn __bindgen_test_layout_template_72() {
         assert_eq!(::std::mem::size_of::<root::nsTArray<root::RefPtr<root::mozilla::dom::DOMIntersectionObserverEntry>>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsTArray<root::RefPtr<root::mozilla::dom::DOMIntersectionObserverEntry>>
                    ) ));
         assert_eq!(::std::mem::align_of::<root::nsTArray<root::RefPtr<root::mozilla::dom::DOMIntersectionObserverEntry>>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsTArray<root::RefPtr<root::mozilla::dom::DOMIntersectionObserverEntry>>
                    ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_74() {
+    fn __bindgen_test_layout_template_73() {
         assert_eq!(::std::mem::size_of::<root::nsTArray<root::mozilla::FontFamilyName>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsTArray<root::mozilla::FontFamilyName> ) ));
         assert_eq!(::std::mem::align_of::<root::nsTArray<root::mozilla::FontFamilyName>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsTArray<root::mozilla::FontFamilyName> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_75() {
+    fn __bindgen_test_layout_template_74() {
         assert_eq!(::std::mem::size_of::<root::nsTArray<::std::os::raw::c_uint>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsTArray<::std::os::raw::c_uint> ) ));
         assert_eq!(::std::mem::align_of::<root::nsTArray<::std::os::raw::c_uint>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsTArray<::std::os::raw::c_uint> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_76() {
+    fn __bindgen_test_layout_template_75() {
         assert_eq!(::std::mem::size_of::<root::mozilla::DefaultDelete<root::ProxyBehaviour>>()
                    , 1usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::mozilla::DefaultDelete<root::ProxyBehaviour> ) ));
         assert_eq!(::std::mem::align_of::<root::mozilla::DefaultDelete<root::ProxyBehaviour>>()
                    , 1usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::mozilla::DefaultDelete<root::ProxyBehaviour> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_77() {
+    fn __bindgen_test_layout_template_76() {
         assert_eq!(::std::mem::size_of::<root::nsMainThreadPtrHolder<root::nsIURI>>()
                    , 24usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsMainThreadPtrHolder<root::nsIURI> ) ));
         assert_eq!(::std::mem::align_of::<root::nsMainThreadPtrHolder<root::nsIURI>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsMainThreadPtrHolder<root::nsIURI> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_78() {
+    fn __bindgen_test_layout_template_77() {
         assert_eq!(::std::mem::size_of::<root::already_AddRefed<root::nsMainThreadPtrHolder<root::nsIURI>>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsMainThreadPtrHolder<root::nsIURI>>
                    ) ));
         assert_eq!(::std::mem::align_of::<root::already_AddRefed<root::nsMainThreadPtrHolder<root::nsIURI>>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsMainThreadPtrHolder<root::nsIURI>>
                    ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_79() {
+    fn __bindgen_test_layout_template_78() {
         assert_eq!(::std::mem::size_of::<root::nsMainThreadPtrHolder<root::nsIPrincipal>>()
                    , 24usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsMainThreadPtrHolder<root::nsIPrincipal> ) ));
         assert_eq!(::std::mem::align_of::<root::nsMainThreadPtrHolder<root::nsIPrincipal>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsMainThreadPtrHolder<root::nsIPrincipal> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_80() {
+    fn __bindgen_test_layout_template_79() {
         assert_eq!(::std::mem::size_of::<root::already_AddRefed<root::nsMainThreadPtrHolder<root::nsIPrincipal>>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsMainThreadPtrHolder<root::nsIPrincipal>>
                    ) ));
         assert_eq!(::std::mem::align_of::<root::already_AddRefed<root::nsMainThreadPtrHolder<root::nsIPrincipal>>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsMainThreadPtrHolder<root::nsIPrincipal>>
                    ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_81() {
+    fn __bindgen_test_layout_template_80() {
         assert_eq!(::std::mem::size_of::<root::mozilla::DefaultDelete<root::nsCSSValueList>>()
                    , 1usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::mozilla::DefaultDelete<root::nsCSSValueList> ) ));
         assert_eq!(::std::mem::align_of::<root::mozilla::DefaultDelete<root::nsCSSValueList>>()
                    , 1usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::mozilla::DefaultDelete<root::nsCSSValueList> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_82() {
+    fn __bindgen_test_layout_template_81() {
         assert_eq!(::std::mem::size_of::<root::mozilla::UniquePtr<root::nsCSSValueList,
                                                root::mozilla::DefaultDelete<root::nsCSSValueList>>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::mozilla::UniquePtr<root::nsCSSValueList,
                          root::mozilla::DefaultDelete<root::nsCSSValueList>>
                    ) ));
         assert_eq!(::std::mem::align_of::<root::mozilla::UniquePtr<root::nsCSSValueList,
                                                 root::mozilla::DefaultDelete<root::nsCSSValueList>>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::mozilla::UniquePtr<root::nsCSSValueList,
                          root::mozilla::DefaultDelete<root::nsCSSValueList>>
                    ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_83() {
+    fn __bindgen_test_layout_template_82() {
         assert_eq!(::std::mem::size_of::<root::mozilla::DefaultDelete<root::nsCSSValuePairList>>()
                    , 1usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::mozilla::DefaultDelete<root::nsCSSValuePairList> )
                    ));
         assert_eq!(::std::mem::align_of::<root::mozilla::DefaultDelete<root::nsCSSValuePairList>>()
                    , 1usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::mozilla::DefaultDelete<root::nsCSSValuePairList> )
                    ));
     }
     #[test]
-    fn __bindgen_test_layout_template_84() {
+    fn __bindgen_test_layout_template_83() {
         assert_eq!(::std::mem::size_of::<root::mozilla::UniquePtr<root::nsCSSValuePairList,
                                                root::mozilla::DefaultDelete<root::nsCSSValuePairList>>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::mozilla::UniquePtr<root::nsCSSValuePairList,
                          root::mozilla::DefaultDelete<root::nsCSSValuePairList>>
                    ) ));
         assert_eq!(::std::mem::align_of::<root::mozilla::UniquePtr<root::nsCSSValuePairList,
                                                 root::mozilla::DefaultDelete<root::nsCSSValuePairList>>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::mozilla::UniquePtr<root::nsCSSValuePairList,
                          root::mozilla::DefaultDelete<root::nsCSSValuePairList>>
                    ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_85() {
+    fn __bindgen_test_layout_template_84() {
         assert_eq!(::std::mem::size_of::<root::nsTArray<root::mozilla::FramePropertyTable_PropertyValue>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsTArray<root::mozilla::FramePropertyTable_PropertyValue>
                    ) ));
         assert_eq!(::std::mem::align_of::<root::nsTArray<root::mozilla::FramePropertyTable_PropertyValue>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsTArray<root::mozilla::FramePropertyTable_PropertyValue>
                    ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_86() {
+    fn __bindgen_test_layout_template_85() {
         assert_eq!(::std::mem::size_of::<root::nsPtrHashKey<root::nsIFrame>>()
                    , 16usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsPtrHashKey<root::nsIFrame> ) ));
         assert_eq!(::std::mem::align_of::<root::nsPtrHashKey<root::nsIFrame>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsPtrHashKey<root::nsIFrame> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_87() {
+    fn __bindgen_test_layout_template_86() {
         assert_eq!(::std::mem::size_of::<[u64; 6usize]>() , 48usize , concat !
                    (
                    "Size of template specialization: " , stringify ! (
                    [u64; 6usize] ) ));
         assert_eq!(::std::mem::align_of::<[u64; 6usize]>() , 8usize , concat !
                    (
                    "Alignment of template specialization: " , stringify ! (
                    [u64; 6usize] ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_88() {
+    fn __bindgen_test_layout_template_87() {
         assert_eq!(::std::mem::size_of::<root::mozilla::OwningNonNull<root::mozilla::EffectCompositor_AnimationStyleRuleProcessor>>()
                    , 16usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::mozilla::OwningNonNull<root::mozilla::EffectCompositor_AnimationStyleRuleProcessor>
                    ) ));
         assert_eq!(::std::mem::align_of::<root::mozilla::OwningNonNull<root::mozilla::EffectCompositor_AnimationStyleRuleProcessor>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::mozilla::OwningNonNull<root::mozilla::EffectCompositor_AnimationStyleRuleProcessor>
                    ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_89() {
+    fn __bindgen_test_layout_template_88() {
         assert_eq!(::std::mem::size_of::<[u64; 2usize]>() , 16usize , concat !
                    (
                    "Size of template specialization: " , stringify ! (
                    [u64; 2usize] ) ));
         assert_eq!(::std::mem::align_of::<[u64; 2usize]>() , 8usize , concat !
                    (
                    "Alignment of template specialization: " , stringify ! (
                    [u64; 2usize] ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_90() {
+    fn __bindgen_test_layout_template_89() {
         assert_eq!(::std::mem::size_of::<u64>() , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! ( u64 )
                    ));
         assert_eq!(::std::mem::align_of::<u64>() , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    u64 ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_91() {
+    fn __bindgen_test_layout_template_90() {
         assert_eq!(::std::mem::size_of::<[u32; 3usize]>() , 12usize , concat !
                    (
                    "Size of template specialization: " , stringify ! (
                    [u32; 3usize] ) ));
         assert_eq!(::std::mem::align_of::<[u32; 3usize]>() , 4usize , concat !
                    (
                    "Alignment of template specialization: " , stringify ! (
                    [u32; 3usize] ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_92() {
+    fn __bindgen_test_layout_template_91() {
         assert_eq!(::std::mem::size_of::<root::already_AddRefed<root::nsStyleImageRequest>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsStyleImageRequest> ) ));
         assert_eq!(::std::mem::align_of::<root::already_AddRefed<root::nsStyleImageRequest>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsStyleImageRequest> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_93() {
+    fn __bindgen_test_layout_template_92() {
         assert_eq!(::std::mem::size_of::<root::mozilla::DefaultDelete<root::nsStyleSides>>()
                    , 1usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::mozilla::DefaultDelete<root::nsStyleSides> ) ));
         assert_eq!(::std::mem::align_of::<root::mozilla::DefaultDelete<root::nsStyleSides>>()
                    , 1usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::mozilla::DefaultDelete<root::nsStyleSides> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_94() {
+    fn __bindgen_test_layout_template_93() {
         assert_eq!(::std::mem::size_of::<root::mozilla::UniquePtr<root::nsStyleSides,
                                                root::mozilla::DefaultDelete<root::nsStyleSides>>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::mozilla::UniquePtr<root::nsStyleSides,
                          root::mozilla::DefaultDelete<root::nsStyleSides>>
                    ) ));
         assert_eq!(::std::mem::align_of::<root::mozilla::UniquePtr<root::nsStyleSides,
                                                 root::mozilla::DefaultDelete<root::nsStyleSides>>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::mozilla::UniquePtr<root::nsStyleSides,
                          root::mozilla::DefaultDelete<root::nsStyleSides>>
                    ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_95() {
+    fn __bindgen_test_layout_template_94() {
         assert_eq!(::std::mem::size_of::<root::mozilla::DefaultDelete<root::CachedBorderImageData>>()
                    , 1usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::mozilla::DefaultDelete<root::CachedBorderImageData> )
                    ));
         assert_eq!(::std::mem::align_of::<root::mozilla::DefaultDelete<root::CachedBorderImageData>>()
                    , 1usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::mozilla::DefaultDelete<root::CachedBorderImageData> )
                    ));
     }
     #[test]
-    fn __bindgen_test_layout_template_96() {
+    fn __bindgen_test_layout_template_95() {
         assert_eq!(::std::mem::size_of::<root::std::pair<::nsstring::nsStringRepr, ::nsstring::nsStringRepr>>()
                    , 32usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::std::pair<::nsstring::nsStringRepr, ::nsstring::nsStringRepr> ) ));
         assert_eq!(::std::mem::align_of::<root::std::pair<::nsstring::nsStringRepr, ::nsstring::nsStringRepr>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::std::pair<::nsstring::nsStringRepr, ::nsstring::nsStringRepr> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_97() {
+    fn __bindgen_test_layout_template_96() {
         assert_eq!(::std::mem::size_of::<root::nsTArray<root::std::pair<::nsstring::nsStringRepr,
                                                      ::nsstring::nsStringRepr>>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsTArray<root::std::pair<::nsstring::nsStringRepr, ::nsstring::nsStringRepr>>
                    ) ));
         assert_eq!(::std::mem::align_of::<root::nsTArray<root::std::pair<::nsstring::nsStringRepr,
                                                       ::nsstring::nsStringRepr>>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsTArray<root::std::pair<::nsstring::nsStringRepr, ::nsstring::nsStringRepr>>
                    ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_98() {
+    fn __bindgen_test_layout_template_97() {
         assert_eq!(::std::mem::size_of::<[u64; 18usize]>() , 144usize , concat
                    ! (
                    "Size of template specialization: " , stringify ! (
                    [u64; 18usize] ) ));
         assert_eq!(::std::mem::align_of::<[u64; 18usize]>() , 8usize , concat
                    ! (
                    "Alignment of template specialization: " , stringify ! (
                    [u64; 18usize] ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_99() {
+    fn __bindgen_test_layout_template_98() {
         assert_eq!(::std::mem::size_of::<root::nsTArray<root::mozilla::DisplayItemClip_RoundedRect>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsTArray<root::mozilla::DisplayItemClip_RoundedRect>
                    ) ));
         assert_eq!(::std::mem::align_of::<root::nsTArray<root::mozilla::DisplayItemClip_RoundedRect>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsTArray<root::mozilla::DisplayItemClip_RoundedRect>
                    ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_100() {
+    fn __bindgen_test_layout_template_99() {
         assert_eq!(::std::mem::size_of::<root::RefPtr<root::mozilla::dom::DOMRect>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::RefPtr<root::mozilla::dom::DOMRect> ) ));
         assert_eq!(::std::mem::align_of::<root::RefPtr<root::mozilla::dom::DOMRect>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::RefPtr<root::mozilla::dom::DOMRect> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_101() {
+    fn __bindgen_test_layout_template_100() {
         assert_eq!(::std::mem::size_of::<u64>() , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! ( u64 )
                    ));
         assert_eq!(::std::mem::align_of::<u64>() , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    u64 ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_102() {
+    fn __bindgen_test_layout_template_101() {
         assert_eq!(::std::mem::size_of::<root::nsTArray<*mut root::mozilla::css::DocumentRule>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsTArray<*mut root::mozilla::css::DocumentRule> ) ));
         assert_eq!(::std::mem::align_of::<root::nsTArray<*mut root::mozilla::css::DocumentRule>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsTArray<*mut root::mozilla::css::DocumentRule> ) ));
--- a/servo/components/style/gecko_bindings/structs_release.rs
+++ b/servo/components/style/gecko_bindings/structs_release.rs
@@ -1358,16 +1358,17 @@ pub mod root {
         pub const SERVO_PREF_ENABLED_text_decoration_line: bool = false;
         pub const SERVO_PREF_ENABLED_text_decoration_style: bool = false;
         pub const SERVO_PREF_ENABLED_text_emphasis: bool = false;
         pub const SERVO_PREF_ENABLED_text_emphasis_color: bool = false;
         pub const SERVO_PREF_ENABLED_text_emphasis_position: bool = false;
         pub const SERVO_PREF_ENABLED_text_emphasis_style: bool = false;
         pub const SERVO_PREF_ENABLED__webkit_text_fill_color: bool = true;
         pub const SERVO_PREF_ENABLED_text_indent: bool = false;
+        pub const SERVO_PREF_ENABLED_text_justify: bool = true;
         pub const SERVO_PREF_ENABLED_text_orientation: bool = false;
         pub const SERVO_PREF_ENABLED_text_overflow: bool = false;
         pub const SERVO_PREF_ENABLED_text_rendering: bool = false;
         pub const SERVO_PREF_ENABLED_text_shadow: bool = false;
         pub const SERVO_PREF_ENABLED__moz_text_size_adjust: bool = false;
         pub const SERVO_PREF_ENABLED__webkit_text_stroke: bool = true;
         pub const SERVO_PREF_ENABLED__webkit_text_stroke_color: bool = true;
         pub const SERVO_PREF_ENABLED__webkit_text_stroke_width: bool = true;
@@ -2576,30 +2577,30 @@ pub mod root {
             impl Clone for CallbackObject_FastCallbackConstructor {
                 fn clone(&self) -> Self { *self }
             }
             #[repr(C)]
             #[derive(Debug)]
             pub struct CallbackObject_CallSetup {
                 pub mCx: *mut root::JSContext,
                 pub mCompartment: *mut root::JSCompartment,
-                pub mAutoEntryScript: [u64; 19usize],
+                pub mAutoEntryScript: [u64; 20usize],
                 pub mAutoIncumbentScript: [u64; 5usize],
                 pub mRootedCallable: [u64; 4usize],
                 pub mAsyncStack: [u64; 4usize],
                 pub mAsyncStackSetter: [u64; 7usize],
                 pub mAc: [u64; 3usize],
                 pub mErrorResult: *mut root::mozilla::ErrorResult,
                 pub mExceptionHandling: root::mozilla::dom::CallbackObject_ExceptionHandling,
                 pub mIsMainThread: bool,
             }
             #[test]
             fn bindgen_test_layout_CallbackObject_CallSetup() {
                 assert_eq!(::std::mem::size_of::<CallbackObject_CallSetup>() ,
-                           368usize , concat ! (
+                           376usize , concat ! (
                            "Size of: " , stringify ! (
                            CallbackObject_CallSetup ) ));
                 assert_eq! (::std::mem::align_of::<CallbackObject_CallSetup>()
                             , 8usize , concat ! (
                             "Alignment of " , stringify ! (
                             CallbackObject_CallSetup ) ));
                 assert_eq! (unsafe {
                             & ( * ( 0 as * const CallbackObject_CallSetup ) )
@@ -2620,65 +2621,65 @@ pub mod root {
                             . mAutoEntryScript as * const _ as usize } ,
                             16usize , concat ! (
                             "Alignment of field: " , stringify ! (
                             CallbackObject_CallSetup ) , "::" , stringify ! (
                             mAutoEntryScript ) ));
                 assert_eq! (unsafe {
                             & ( * ( 0 as * const CallbackObject_CallSetup ) )
                             . mAutoIncumbentScript as * const _ as usize } ,
-                            168usize , concat ! (
+                            176usize , concat ! (
                             "Alignment of field: " , stringify ! (
                             CallbackObject_CallSetup ) , "::" , stringify ! (
                             mAutoIncumbentScript ) ));
                 assert_eq! (unsafe {
                             & ( * ( 0 as * const CallbackObject_CallSetup ) )
                             . mRootedCallable as * const _ as usize } ,
-                            208usize , concat ! (
+                            216usize , concat ! (
                             "Alignment of field: " , stringify ! (
                             CallbackObject_CallSetup ) , "::" , stringify ! (
                             mRootedCallable ) ));
                 assert_eq! (unsafe {
                             & ( * ( 0 as * const CallbackObject_CallSetup ) )
-                            . mAsyncStack as * const _ as usize } , 240usize ,
+                            . mAsyncStack as * const _ as usize } , 248usize ,
                             concat ! (
                             "Alignment of field: " , stringify ! (
                             CallbackObject_CallSetup ) , "::" , stringify ! (
                             mAsyncStack ) ));
                 assert_eq! (unsafe {
                             & ( * ( 0 as * const CallbackObject_CallSetup ) )
                             . mAsyncStackSetter as * const _ as usize } ,
-                            272usize , concat ! (
+                            280usize , concat ! (
                             "Alignment of field: " , stringify ! (
                             CallbackObject_CallSetup ) , "::" , stringify ! (
                             mAsyncStackSetter ) ));
                 assert_eq! (unsafe {
                             & ( * ( 0 as * const CallbackObject_CallSetup ) )
-                            . mAc as * const _ as usize } , 328usize , concat
+                            . mAc as * const _ as usize } , 336usize , concat
                             ! (
                             "Alignment of field: " , stringify ! (
                             CallbackObject_CallSetup ) , "::" , stringify ! (
                             mAc ) ));
                 assert_eq! (unsafe {
                             & ( * ( 0 as * const CallbackObject_CallSetup ) )
-                            . mErrorResult as * const _ as usize } , 352usize
+                            . mErrorResult as * const _ as usize } , 360usize
                             , concat ! (
                             "Alignment of field: " , stringify ! (
                             CallbackObject_CallSetup ) , "::" , stringify ! (
                             mErrorResult ) ));
                 assert_eq! (unsafe {
                             & ( * ( 0 as * const CallbackObject_CallSetup ) )
                             . mExceptionHandling as * const _ as usize } ,
-                            360usize , concat ! (
+                            368usize , concat ! (
                             "Alignment of field: " , stringify ! (
                             CallbackObject_CallSetup ) , "::" , stringify ! (
                             mExceptionHandling ) ));
                 assert_eq! (unsafe {
                             & ( * ( 0 as * const CallbackObject_CallSetup ) )
-                            . mIsMainThread as * const _ as usize } , 364usize
+                            . mIsMainThread as * const _ as usize } , 372usize
                             , concat ! (
                             "Alignment of field: " , stringify ! (
                             CallbackObject_CallSetup ) , "::" , stringify ! (
                             mIsMainThread ) ));
             }
             extern "C" {
                 #[link_name =
                       "_ZN7mozilla3dom14CallbackObject21_cycleCollectorGlobalE"]
@@ -5179,72 +5180,76 @@ pub mod root {
             eUseCounter_OfflineResourceList_onprogress_getter = 22,
             eUseCounter_OfflineResourceList_onprogress_setter = 23,
             eUseCounter_OfflineResourceList_onupdateready_getter = 24,
             eUseCounter_OfflineResourceList_onupdateready_setter = 25,
             eUseCounter_OfflineResourceList_oncached_getter = 26,
             eUseCounter_OfflineResourceList_oncached_setter = 27,
             eUseCounter_OfflineResourceList_onobsolete_getter = 28,
             eUseCounter_OfflineResourceList_onobsolete_setter = 29,
-            eUseCounter_DataTransfer_addElement = 30,
-            eUseCounter_DataTransfer_mozItemCount_getter = 31,
-            eUseCounter_DataTransfer_mozItemCount_setter = 32,
-            eUseCounter_DataTransfer_mozCursor_getter = 33,
-            eUseCounter_DataTransfer_mozCursor_setter = 34,
-            eUseCounter_DataTransfer_mozTypesAt = 35,
-            eUseCounter_DataTransfer_mozClearDataAt = 36,
-            eUseCounter_DataTransfer_mozSetDataAt = 37,
-            eUseCounter_DataTransfer_mozGetDataAt = 38,
-            eUseCounter_DataTransfer_mozUserCancelled_getter = 39,
-            eUseCounter_DataTransfer_mozUserCancelled_setter = 40,
-            eUseCounter_DataTransfer_mozSourceNode_getter = 41,
-            eUseCounter_DataTransfer_mozSourceNode_setter = 42,
-            eUseCounter_GetAttributeNode = 43,
-            eUseCounter_SetAttributeNode = 44,
-            eUseCounter_GetAttributeNodeNS = 45,
-            eUseCounter_SetAttributeNodeNS = 46,
-            eUseCounter_RemoveAttributeNode = 47,
-            eUseCounter_CreateAttribute = 48,
-            eUseCounter_CreateAttributeNS = 49,
-            eUseCounter_NodeValue = 50,
-            eUseCounter_TextContent = 51,
-            eUseCounter_EnablePrivilege = 52,
-            eUseCounter_DOMExceptionCode = 53,
-            eUseCounter_NoExposedProps = 54,
-            eUseCounter_MutationEvent = 55,
-            eUseCounter_Components = 56,
-            eUseCounter_PrefixedVisibilityAPI = 57,
-            eUseCounter_NodeIteratorDetach = 58,
-            eUseCounter_LenientThis = 59,
-            eUseCounter_GetPreventDefault = 60,
-            eUseCounter_GetSetUserData = 61,
-            eUseCounter_MozGetAsFile = 62,
-            eUseCounter_UseOfCaptureEvents = 63,
-            eUseCounter_UseOfReleaseEvents = 64,
-            eUseCounter_UseOfDOM3LoadMethod = 65,
-            eUseCounter_ChromeUseOfDOM3LoadMethod = 66,
-            eUseCounter_ShowModalDialog = 67,
-            eUseCounter_Window_Content = 68,
-            eUseCounter_SyncXMLHttpRequest = 69,
-            eUseCounter_DataContainerEvent = 70,
-            eUseCounter_Window_Controllers = 71,
-            eUseCounter_ImportXULIntoContent = 72,
-            eUseCounter_PannerNodeDoppler = 73,
-            eUseCounter_NavigatorGetUserMedia = 74,
-            eUseCounter_WebrtcDeprecatedPrefix = 75,
-            eUseCounter_RTCPeerConnectionGetStreams = 76,
-            eUseCounter_AppCache = 77,
-            eUseCounter_PrefixedImageSmoothingEnabled = 78,
-            eUseCounter_PrefixedFullscreenAPI = 79,
-            eUseCounter_LenientSetter = 80,
-            eUseCounter_FileLastModifiedDate = 81,
-            eUseCounter_ImageBitmapRenderingContext_TransferImageBitmap = 82,
-            eUseCounter_URLCreateObjectURL_MediaStream = 83,
-            eUseCounter_XMLBaseAttribute = 84,
-            eUseCounter_Count = 85,
+            eUseCounter_IDBDatabase_createMutableFile = 30,
+            eUseCounter_IDBDatabase_mozCreateFileHandle = 31,
+            eUseCounter_IDBMutableFile_open = 32,
+            eUseCounter_IDBMutableFile_getFile = 33,
+            eUseCounter_DataTransfer_addElement = 34,
+            eUseCounter_DataTransfer_mozItemCount_getter = 35,
+            eUseCounter_DataTransfer_mozItemCount_setter = 36,
+            eUseCounter_DataTransfer_mozCursor_getter = 37,
+            eUseCounter_DataTransfer_mozCursor_setter = 38,
+            eUseCounter_DataTransfer_mozTypesAt = 39,
+            eUseCounter_DataTransfer_mozClearDataAt = 40,
+            eUseCounter_DataTransfer_mozSetDataAt = 41,
+            eUseCounter_DataTransfer_mozGetDataAt = 42,
+            eUseCounter_DataTransfer_mozUserCancelled_getter = 43,
+            eUseCounter_DataTransfer_mozUserCancelled_setter = 44,
+            eUseCounter_DataTransfer_mozSourceNode_getter = 45,
+            eUseCounter_DataTransfer_mozSourceNode_setter = 46,
+            eUseCounter_GetAttributeNode = 47,
+            eUseCounter_SetAttributeNode = 48,
+            eUseCounter_GetAttributeNodeNS = 49,
+            eUseCounter_SetAttributeNodeNS = 50,
+            eUseCounter_RemoveAttributeNode = 51,
+            eUseCounter_CreateAttribute = 52,
+            eUseCounter_CreateAttributeNS = 53,
+            eUseCounter_NodeValue = 54,
+            eUseCounter_TextContent = 55,
+            eUseCounter_EnablePrivilege = 56,
+            eUseCounter_DOMExceptionCode = 57,
+            eUseCounter_NoExposedProps = 58,
+            eUseCounter_MutationEvent = 59,
+            eUseCounter_Components = 60,
+            eUseCounter_PrefixedVisibilityAPI = 61,
+            eUseCounter_NodeIteratorDetach = 62,
+            eUseCounter_LenientThis = 63,
+            eUseCounter_GetPreventDefault = 64,
+            eUseCounter_GetSetUserData = 65,
+            eUseCounter_MozGetAsFile = 66,
+            eUseCounter_UseOfCaptureEvents = 67,
+            eUseCounter_UseOfReleaseEvents = 68,
+            eUseCounter_UseOfDOM3LoadMethod = 69,
+            eUseCounter_ChromeUseOfDOM3LoadMethod = 70,
+            eUseCounter_ShowModalDialog = 71,
+            eUseCounter_Window_Content = 72,
+            eUseCounter_SyncXMLHttpRequest = 73,
+            eUseCounter_DataContainerEvent = 74,
+            eUseCounter_Window_Controllers = 75,
+            eUseCounter_ImportXULIntoContent = 76,
+            eUseCounter_PannerNodeDoppler = 77,
+            eUseCounter_NavigatorGetUserMedia = 78,
+            eUseCounter_WebrtcDeprecatedPrefix = 79,
+            eUseCounter_RTCPeerConnectionGetStreams = 80,
+            eUseCounter_AppCache = 81,
+            eUseCounter_PrefixedImageSmoothingEnabled = 82,
+            eUseCounter_PrefixedFullscreenAPI = 83,
+            eUseCounter_LenientSetter = 84,
+            eUseCounter_FileLastModifiedDate = 85,
+            eUseCounter_ImageBitmapRenderingContext_TransferImageBitmap = 86,
+            eUseCounter_URLCreateObjectURL_MediaStream = 87,
+            eUseCounter_XMLBaseAttribute = 88,
+            eUseCounter_Count = 89,
         }
         #[repr(u32)]
         #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
         pub enum Side {
             eSideTop = 0,
             eSideRight = 1,
             eSideBottom = 2,
             eSideLeft = 3,
@@ -5574,16 +5579,24 @@ pub mod root {
         pub enum StyleShapeSourceType {
             None = 0,
             URL = 1,
             Shape = 2,
             Box = 3,
         }
         #[repr(u8)]
         #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
+        pub enum StyleTextJustify {
+            None = 0,
+            Auto = 1,
+            InterWord = 2,
+            InterCharacter = 3,
+        }
+        #[repr(u8)]
+        #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
         pub enum StyleUserFocus {
             None = 0,
             Ignore = 1,
             Normal = 2,
             SelectAll = 3,
             SelectBefore = 4,
             SelectAfter = 5,
             SelectSame = 6,
@@ -7604,16 +7617,22 @@ pub mod root {
         #[derive(Debug, Copy, Clone)]
         pub struct pair<_T1, _T2> {
             pub first: _T1,
             pub second: _T2,
         }
         pub type pair_first_type<_T1> = _T1;
         pub type pair_second_type<_T2> = _T2;
         #[repr(C)]
+        pub struct atomic<_Tp> {
+            pub _base: (),
+            pub _phantom_0: ::std::marker::PhantomData<_Tp>,
+        }
+        pub type atomic___base = [u8; 0usize];
+        #[repr(C)]
         #[derive(Debug, Copy)]
         pub struct input_iterator_tag {
             pub _address: u8,
         }
         #[test]
         fn bindgen_test_layout_input_iterator_tag() {
             assert_eq!(::std::mem::size_of::<input_iterator_tag>() , 1usize ,
                        concat ! (
@@ -7622,41 +7641,97 @@ pub mod root {
                         , concat ! (
                         "Alignment of " , stringify ! ( input_iterator_tag )
                         ));
         }
         impl Clone for input_iterator_tag {
             fn clone(&self) -> Self { *self }
         }
         #[repr(C)]
+        #[derive(Debug, Copy)]
+        pub struct forward_iterator_tag {
+            pub _address: u8,
+        }
+        #[test]
+        fn bindgen_test_layout_forward_iterator_tag() {
+            assert_eq!(::std::mem::size_of::<forward_iterator_tag>() , 1usize
+                       , concat ! (
+                       "Size of: " , stringify ! ( forward_iterator_tag ) ));
+            assert_eq! (::std::mem::align_of::<forward_iterator_tag>() ,
+                        1usize , concat ! (
+                        "Alignment of " , stringify ! ( forward_iterator_tag )
+                        ));
+        }
+        impl Clone for forward_iterator_tag {
+            fn clone(&self) -> Self { *self }
+        }
+        #[repr(C)]
+        #[derive(Debug, Copy)]
+        pub struct bidirectional_iterator_tag {
+            pub _address: u8,
+        }
+        #[test]
+        fn bindgen_test_layout_bidirectional_iterator_tag() {
+            assert_eq!(::std::mem::size_of::<bidirectional_iterator_tag>() ,
+                       1usize , concat ! (
+                       "Size of: " , stringify ! ( bidirectional_iterator_tag
+                       ) ));
+            assert_eq! (::std::mem::align_of::<bidirectional_iterator_tag>() ,
+                        1usize , concat ! (
+                        "Alignment of " , stringify ! (
+                        bidirectional_iterator_tag ) ));
+        }
+        impl Clone for bidirectional_iterator_tag {
+            fn clone(&self) -> Self { *self }
+        }
+        #[repr(C)]
+        #[derive(Debug, Copy)]
+        pub struct random_access_iterator_tag {
+            pub _address: u8,
+        }
+        #[test]
+        fn bindgen_test_layout_random_access_iterator_tag() {
+            assert_eq!(::std::mem::size_of::<random_access_iterator_tag>() ,
+                       1usize , concat ! (
+                       "Size of: " , stringify ! ( random_access_iterator_tag
+                       ) ));
+            assert_eq! (::std::mem::align_of::<random_access_iterator_tag>() ,
+                        1usize , concat ! (
+                        "Alignment of " , stringify ! (
+                        random_access_iterator_tag ) ));
+        }
+        impl Clone for random_access_iterator_tag {
+            fn clone(&self) -> Self { *self }
+        }
+        #[repr(C)]
         #[derive(Debug, Copy, Clone)]
         pub struct iterator<_Category, _Tp, _Distance, _Pointer, _Reference> {
             pub _address: u8,
             pub _phantom_0: ::std::marker::PhantomData<_Category>,
             pub _phantom_1: ::std::marker::PhantomData<_Tp>,
             pub _phantom_2: ::std::marker::PhantomData<_Distance>,
             pub _phantom_3: ::std::marker::PhantomData<_Pointer>,
             pub _phantom_4: ::std::marker::PhantomData<_Reference>,
         }
-        pub type iterator_iterator_category<_Category> = _Category;
         pub type iterator_value_type<_Tp> = _Tp;
         pub type iterator_difference_type<_Distance> = _Distance;
         pub type iterator_pointer<_Pointer> = _Pointer;
         pub type iterator_reference<_Reference> = _Reference;
-        #[repr(C)]
-        #[derive(Debug)]
-        pub struct atomic<_Tp> {
-            pub _M_i: _Tp,
-        }
-    }
-    pub mod __gnu_cxx {
-        #[allow(unused_imports)]
-        use self::super::super::root;
-    }
-    pub type va_list = root::__builtin_va_list;
+        pub type iterator_iterator_category<_Category> = _Category;
+        #[repr(C)]
+        #[derive(Debug, Copy, Clone)]
+        pub struct __bit_const_reference<_Cp> {
+            pub __seg_: root::std::__bit_const_reference___storage_pointer<_Cp>,
+            pub __mask_: root::std::__bit_const_reference___storage_type<_Cp>,
+        }
+        pub type __bit_const_reference___storage_type<_Cp> = _Cp;
+        pub type __bit_const_reference___storage_pointer<_Cp> = _Cp;
+    }
+    pub type __darwin_va_list = root::__builtin_va_list;
+    pub type va_list = root::__darwin_va_list;
     /**
  * MozRefCountType is Mozilla's reference count type.
  *
  * We use the same type to represent the refcount of RefCounted objects
  * as well, in order to be able to use the leak detection facilities
  * that are implemented by XPCOM.
  *
  * Note that this type is not in the mozilla namespace so that it is
@@ -7674,16 +7749,20 @@ pub mod root {
         nsresult::NS_ERROR_ILLEGAL_VALUE;
     pub const nsresult_NS_BINDING_SUCCEEDED: root::nsresult = nsresult::NS_OK;
     pub const nsresult_NS_NET_STATUS_RESOLVING_HOST: root::nsresult =
         nsresult::NS_BINDING_REDIRECTED;
     pub const nsresult_NS_NET_STATUS_RESOLVED_HOST: root::nsresult =
         nsresult::NS_ERROR_ALREADY_CONNECTED;
     pub const nsresult_NS_NET_STATUS_CONNECTED_TO: root::nsresult =
         nsresult::NS_BINDING_RETARGETED;
+    pub const nsresult_NS_NET_STATUS_TLS_HANDSHAKE_STARTING: root::nsresult =
+        nsresult::NS_ERROR_NOT_CONNECTED;
+    pub const nsresult_NS_NET_STATUS_TLS_HANDSHAKE_ENDED: root::nsresult =
+        nsresult::NS_ERROR_CONNECTION_REFUSED;
     pub const nsresult_NS_NET_STATUS_WAITING_FOR: root::nsresult =
         nsresult::NS_ERROR_MALFORMED_URI;
     pub const nsresult_NS_STATE_PROPERTY_EXISTS: root::nsresult =
         nsresult::NS_OK;
     pub const nsresult_NS_ERROR_HTMLPARSER_CONTINUE: root::nsresult =
         nsresult::NS_OK;
     pub const nsresult_NS_RDF_ASSERTION_ACCEPTED: root::nsresult =
         nsresult::NS_OK;
@@ -10939,16 +11018,17 @@ pub mod root {
         pub mImageTracker: root::RefPtr<root::mozilla::dom::ImageTracker>,
         pub mActivityObservers: root::nsAutoPtr<()>,
         pub mLinksToUpdate: [u64; 5usize],
         pub mAnimationController: root::RefPtr<root::nsSMILAnimationController>,
         pub mPropertyTable: root::nsPropertyTable,
         pub mExtraPropertyTables: root::nsTArray<root::nsAutoPtr<root::nsPropertyTable>>,
         pub mChildrenCollection: root::nsCOMPtr<root::nsIHTMLCollection>,
         pub mFontFaceSet: root::RefPtr<root::mozilla::dom::FontFaceSet>,
+        pub mLastFocusTime: root::mozilla::TimeStamp,
         pub _bitfield_1: u8,
         pub _bitfield_2: u8,
         pub _bitfield_3: u8,
         pub _bitfield_4: u8,
         pub _bitfield_5: u8,
         pub _bitfield_6: u8,
         pub mCompatMode: root::nsCompatibility,
         pub mReadyState: root::nsIDocument_ReadyState,
@@ -11275,17 +11355,17 @@ pub mod root {
     #[repr(u32)]
     #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
     pub enum nsIDocument_Tri { eTriUnset = 0, eTriFalse = 1, eTriTrue = 2, }
     #[repr(C)]
     #[derive(Debug, Copy, Clone)]
     pub struct nsIDocument_FrameRequest([u8; 0]);
     #[test]
     fn bindgen_test_layout_nsIDocument() {
-        assert_eq!(::std::mem::size_of::<nsIDocument>() , 984usize , concat !
+        assert_eq!(::std::mem::size_of::<nsIDocument>() , 992usize , concat !
                    ( "Size of: " , stringify ! ( nsIDocument ) ));
         assert_eq! (::std::mem::align_of::<nsIDocument>() , 8usize , concat !
                     ( "Alignment of " , stringify ! ( nsIDocument ) ));
     }
     #[repr(C)]
     #[derive(Debug, Copy, Clone)]
     pub struct nsIDocShell([u8; 0]);
     /**
@@ -14204,17 +14284,18 @@ pub mod root {
         pub mFrameArena: root::nsPresArena,
         pub mSelection: root::RefPtr<root::nsFrameSelection>,
         pub mFrameManager: *mut root::nsFrameManagerBase,
         pub mForwardingContainer: u64,
         pub mDocAccessible: *mut root::mozilla::a11y::DocAccessible,
         pub mReflowContinueTimer: root::nsCOMPtr<root::nsITimer>,
         pub mPaintCount: u64,
         pub mScrollPositionClampingScrollPortSize: root::nsSize,
-        pub mWeakFrames: *mut root::nsWeakFrame,
+        pub mAutoWeakFrames: *mut root::AutoWeakFrame,
+        pub mWeakFrames: [u64; 5usize],
         pub mCanvasBackgroundColor: root::nscolor,
         pub mResolution: [u32; 2usize],
         pub mSelectionFlags: i16,
         pub mRenderFlags: root::nsIPresShell_RenderFlags,
         pub _bitfield_1: u8,
         pub _bitfield_2: u8,
         pub mPresShellId: u32,
         pub mChangedScopeStyleRoots: [u64; 3usize],
@@ -14540,17 +14621,17 @@ pub mod root {
         pub static mut nsIPresShell_gCaptureInfo: root::CapturingContentInfo;
     }
     extern "C" {
         #[link_name = "_ZN12nsIPresShell14gKeyDownTargetE"]
         pub static mut nsIPresShell_gKeyDownTarget: *mut root::nsIContent;
     }
     #[test]
     fn bindgen_test_layout_nsIPresShell() {
-        assert_eq!(::std::mem::size_of::<nsIPresShell>() , 320usize , concat !
+        assert_eq!(::std::mem::size_of::<nsIPresShell>() , 360usize , concat !
                    ( "Size of: " , stringify ! ( nsIPresShell ) ));
         assert_eq! (::std::mem::align_of::<nsIPresShell>() , 8usize , concat !
                     ( "Alignment of " , stringify ! ( nsIPresShell ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsIPresShell ) ) . mDocument as *
                     const _ as usize } , 8usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsIPresShell ) ,
                     "::" , stringify ! ( mDocument ) ));
@@ -14614,109 +14695,114 @@ pub mod root {
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsIPresShell ) ) .
                     mScrollPositionClampingScrollPortSize as * const _ as
                     usize } , 232usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsIPresShell ) ,
                     "::" , stringify ! ( mScrollPositionClampingScrollPortSize
                     ) ));
         assert_eq! (unsafe {
+                    & ( * ( 0 as * const nsIPresShell ) ) . mAutoWeakFrames as
+                    * const _ as usize } , 240usize , concat ! (
+                    "Alignment of field: " , stringify ! ( nsIPresShell ) ,
+                    "::" , stringify ! ( mAutoWeakFrames ) ));
+        assert_eq! (unsafe {
                     & ( * ( 0 as * const nsIPresShell ) ) . mWeakFrames as *
-                    const _ as usize } , 240usize , concat ! (
+                    const _ as usize } , 248usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsIPresShell ) ,
                     "::" , stringify ! ( mWeakFrames ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsIPresShell ) ) .
-                    mCanvasBackgroundColor as * const _ as usize } , 248usize
+                    mCanvasBackgroundColor as * const _ as usize } , 288usize
                     , concat ! (
                     "Alignment of field: " , stringify ! ( nsIPresShell ) ,
                     "::" , stringify ! ( mCanvasBackgroundColor ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsIPresShell ) ) . mResolution as *
-                    const _ as usize } , 252usize , concat ! (
+                    const _ as usize } , 292usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsIPresShell ) ,
                     "::" , stringify ! ( mResolution ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsIPresShell ) ) . mSelectionFlags as
-                    * const _ as usize } , 260usize , concat ! (
+                    * const _ as usize } , 300usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsIPresShell ) ,
                     "::" , stringify ! ( mSelectionFlags ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsIPresShell ) ) . mRenderFlags as *
-                    const _ as usize } , 262usize , concat ! (
+                    const _ as usize } , 302usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsIPresShell ) ,
                     "::" , stringify ! ( mRenderFlags ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsIPresShell ) ) . mPresShellId as *
-                    const _ as usize } , 268usize , concat ! (
+                    const _ as usize } , 308usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsIPresShell ) ,
                     "::" , stringify ! ( mPresShellId ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsIPresShell ) ) .
-                    mChangedScopeStyleRoots as * const _ as usize } , 272usize
+                    mChangedScopeStyleRoots as * const _ as usize } , 312usize
                     , concat ! (
                     "Alignment of field: " , stringify ! ( nsIPresShell ) ,
                     "::" , stringify ! ( mChangedScopeStyleRoots ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsIPresShell ) ) .
                     mFontSizeInflationEmPerLine as * const _ as usize } ,
-                    296usize , concat ! (
+                    336usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsIPresShell ) ,
                     "::" , stringify ! ( mFontSizeInflationEmPerLine ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsIPresShell ) ) .
                     mFontSizeInflationMinTwips as * const _ as usize } ,
-                    300usize , concat ! (
+                    340usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsIPresShell ) ,
                     "::" , stringify ! ( mFontSizeInflationMinTwips ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsIPresShell ) ) .
                     mFontSizeInflationLineThreshold as * const _ as usize } ,
-                    304usize , concat ! (
+                    344usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsIPresShell ) ,
                     "::" , stringify ! ( mFontSizeInflationLineThreshold ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsIPresShell ) ) .
                     mFontSizeInflationForceEnabled as * const _ as usize } ,
-                    308usize , concat ! (
+                    348usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsIPresShell ) ,
                     "::" , stringify ! ( mFontSizeInflationForceEnabled ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsIPresShell ) ) .
                     mFontSizeInflationDisabledInMasterProcess as * const _ as
-                    usize } , 309usize , concat ! (
+                    usize } , 349usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsIPresShell ) ,
                     "::" , stringify ! (
                     mFontSizeInflationDisabledInMasterProcess ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsIPresShell ) ) .
                     mFontSizeInflationEnabled as * const _ as usize } ,
-                    310usize , concat ! (
+                    350usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsIPresShell ) ,
                     "::" , stringify ! ( mFontSizeInflationEnabled ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsIPresShell ) ) . mPaintingIsFrozen
-                    as * const _ as usize } , 311usize , concat ! (
+                    as * const _ as usize } , 351usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsIPresShell ) ,
                     "::" , stringify ! ( mPaintingIsFrozen ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsIPresShell ) ) .
                     mFontSizeInflationEnabledIsDirty as * const _ as usize } ,
-                    312usize , concat ! (
+                    352usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsIPresShell ) ,
                     "::" , stringify ! ( mFontSizeInflationEnabledIsDirty )
                     ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsIPresShell ) ) . mIsNeverPainting
-                    as * const _ as usize } , 313usize , concat ! (
+                    as * const _ as usize } , 353usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsIPresShell ) ,
                     "::" , stringify ! ( mIsNeverPainting ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsIPresShell ) ) . mInFlush as *
-                    const _ as usize } , 314usize , concat ! (
+                    const _ as usize } , 354usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsIPresShell ) ,
                     "::" , stringify ! ( mInFlush ) ));
     }
     /**
  * A class that implements nsIWeakReference
  */
     #[repr(C)]
     #[derive(Debug)]
@@ -14744,73 +14830,73 @@ pub mod root {
                     & ( * ( 0 as * const nsNodeWeakReference ) ) . mNode as *
                     const _ as usize } , 16usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsNodeWeakReference
                     ) , "::" , stringify ! ( mNode ) ));
     }
     #[repr(C)]
     #[derive(Debug, Copy, Clone)]
     pub struct nsDOMMutationObserver([u8; 0]);
-    pub const NODE_HAS_LISTENERMANAGER: root::_bindgen_ty_105 =
-        _bindgen_ty_105::NODE_HAS_LISTENERMANAGER;
-    pub const NODE_HAS_PROPERTIES: root::_bindgen_ty_105 =
-        _bindgen_ty_105::NODE_HAS_PROPERTIES;
-    pub const NODE_IS_ANONYMOUS_ROOT: root::_bindgen_ty_105 =
-        _bindgen_ty_105::NODE_IS_ANONYMOUS_ROOT;
-    pub const NODE_IS_IN_NATIVE_ANONYMOUS_SUBTREE: root::_bindgen_ty_105 =
-        _bindgen_ty_105::NODE_IS_IN_NATIVE_ANONYMOUS_SUBTREE;
-    pub const NODE_IS_NATIVE_ANONYMOUS_ROOT: root::_bindgen_ty_105 =
-        _bindgen_ty_105::NODE_IS_NATIVE_ANONYMOUS_ROOT;
-    pub const NODE_FORCE_XBL_BINDINGS: root::_bindgen_ty_105 =
-        _bindgen_ty_105::NODE_FORCE_XBL_BINDINGS;
-    pub const NODE_MAY_BE_IN_BINDING_MNGR: root::_bindgen_ty_105 =
-        _bindgen_ty_105::NODE_MAY_BE_IN_BINDING_MNGR;
-    pub const NODE_IS_EDITABLE: root::_bindgen_ty_105 =
-        _bindgen_ty_105::NODE_IS_EDITABLE;
-    pub const NODE_IS_NATIVE_ANONYMOUS: root::_bindgen_ty_105 =
-        _bindgen_ty_105::NODE_IS_NATIVE_ANONYMOUS;
-    pub const NODE_IS_IN_SHADOW_TREE: root::_bindgen_ty_105 =
-        _bindgen_ty_105::NODE_IS_IN_SHADOW_TREE;
-    pub const NODE_HAS_EMPTY_SELECTOR: root::_bindgen_ty_105 =
-        _bindgen_ty_105::NODE_HAS_EMPTY_SELECTOR;
-    pub const NODE_HAS_SLOW_SELECTOR: root::_bindgen_ty_105 =
-        _bindgen_ty_105::NODE_HAS_SLOW_SELECTOR;
-    pub const NODE_HAS_EDGE_CHILD_SELECTOR: root::_bindgen_ty_105 =
-        _bindgen_ty_105::NODE_HAS_EDGE_CHILD_SELECTOR;
-    pub const NODE_HAS_SLOW_SELECTOR_LATER_SIBLINGS: root::_bindgen_ty_105 =
-        _bindgen_ty_105::NODE_HAS_SLOW_SELECTOR_LATER_SIBLINGS;
-    pub const NODE_ALL_SELECTOR_FLAGS: root::_bindgen_ty_105 =
-        _bindgen_ty_105::NODE_ALL_SELECTOR_FLAGS;
-    pub const NODE_NEEDS_FRAME: root::_bindgen_ty_105 =
-        _bindgen_ty_105::NODE_NEEDS_FRAME;
-    pub const NODE_DESCENDANTS_NEED_FRAMES: root::_bindgen_ty_105 =
-        _bindgen_ty_105::NODE_DESCENDANTS_NEED_FRAMES;
-    pub const NODE_HAS_ACCESSKEY: root::_bindgen_ty_105 =
-        _bindgen_ty_105::NODE_HAS_ACCESSKEY;
-    pub const NODE_HAS_DIRECTION_RTL: root::_bindgen_ty_105 =
-        _bindgen_ty_105::NODE_HAS_DIRECTION_RTL;
-    pub const NODE_HAS_DIRECTION_LTR: root::_bindgen_ty_105 =
-        _bindgen_ty_105::NODE_HAS_DIRECTION_LTR;
-    pub const NODE_ALL_DIRECTION_FLAGS: root::_bindgen_ty_105 =
-        _bindgen_ty_105::NODE_ALL_DIRECTION_FLAGS;
-    pub const NODE_CHROME_ONLY_ACCESS: root::_bindgen_ty_105 =
-        _bindgen_ty_105::NODE_CHROME_ONLY_ACCESS;
-    pub const NODE_IS_ROOT_OF_CHROME_ONLY_ACCESS: root::_bindgen_ty_105 =
-        _bindgen_ty_105::NODE_IS_ROOT_OF_CHROME_ONLY_ACCESS;
-    pub const NODE_SHARED_RESTYLE_BIT_1: root::_bindgen_ty_105 =
-        _bindgen_ty_105::NODE_SHARED_RESTYLE_BIT_1;
-    pub const NODE_SHARED_RESTYLE_BIT_2: root::_bindgen_ty_105 =
-        _bindgen_ty_105::NODE_SHARED_RESTYLE_BIT_2;
-    pub const NODE_HAS_DIRTY_DESCENDANTS_FOR_SERVO: root::_bindgen_ty_105 =
-        _bindgen_ty_105::NODE_SHARED_RESTYLE_BIT_1;
-    pub const NODE_TYPE_SPECIFIC_BITS_OFFSET: root::_bindgen_ty_105 =
-        _bindgen_ty_105::NODE_TYPE_SPECIFIC_BITS_OFFSET;
-    #[repr(u32)]
-    #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
-    pub enum _bindgen_ty_105 {
+    pub const NODE_HAS_LISTENERMANAGER: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_HAS_LISTENERMANAGER;
+    pub const NODE_HAS_PROPERTIES: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_HAS_PROPERTIES;
+    pub const NODE_IS_ANONYMOUS_ROOT: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_IS_ANONYMOUS_ROOT;
+    pub const NODE_IS_IN_NATIVE_ANONYMOUS_SUBTREE: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_IS_IN_NATIVE_ANONYMOUS_SUBTREE;
+    pub const NODE_IS_NATIVE_ANONYMOUS_ROOT: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_IS_NATIVE_ANONYMOUS_ROOT;
+    pub const NODE_FORCE_XBL_BINDINGS: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_FORCE_XBL_BINDINGS;
+    pub const NODE_MAY_BE_IN_BINDING_MNGR: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_MAY_BE_IN_BINDING_MNGR;
+    pub const NODE_IS_EDITABLE: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_IS_EDITABLE;
+    pub const NODE_IS_NATIVE_ANONYMOUS: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_IS_NATIVE_ANONYMOUS;
+    pub const NODE_IS_IN_SHADOW_TREE: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_IS_IN_SHADOW_TREE;
+    pub const NODE_HAS_EMPTY_SELECTOR: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_HAS_EMPTY_SELECTOR;
+    pub const NODE_HAS_SLOW_SELECTOR: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_HAS_SLOW_SELECTOR;
+    pub const NODE_HAS_EDGE_CHILD_SELECTOR: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_HAS_EDGE_CHILD_SELECTOR;
+    pub const NODE_HAS_SLOW_SELECTOR_LATER_SIBLINGS: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_HAS_SLOW_SELECTOR_LATER_SIBLINGS;
+    pub const NODE_ALL_SELECTOR_FLAGS: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_ALL_SELECTOR_FLAGS;
+    pub const NODE_NEEDS_FRAME: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_NEEDS_FRAME;
+    pub const NODE_DESCENDANTS_NEED_FRAMES: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_DESCENDANTS_NEED_FRAMES;
+    pub const NODE_HAS_ACCESSKEY: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_HAS_ACCESSKEY;
+    pub const NODE_HAS_DIRECTION_RTL: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_HAS_DIRECTION_RTL;
+    pub const NODE_HAS_DIRECTION_LTR: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_HAS_DIRECTION_LTR;
+    pub const NODE_ALL_DIRECTION_FLAGS: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_ALL_DIRECTION_FLAGS;
+    pub const NODE_CHROME_ONLY_ACCESS: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_CHROME_ONLY_ACCESS;
+    pub const NODE_IS_ROOT_OF_CHROME_ONLY_ACCESS: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_IS_ROOT_OF_CHROME_ONLY_ACCESS;
+    pub const NODE_SHARED_RESTYLE_BIT_1: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_SHARED_RESTYLE_BIT_1;
+    pub const NODE_SHARED_RESTYLE_BIT_2: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_SHARED_RESTYLE_BIT_2;
+    pub const NODE_HAS_DIRTY_DESCENDANTS_FOR_SERVO: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_SHARED_RESTYLE_BIT_1;
+    pub const NODE_TYPE_SPECIFIC_BITS_OFFSET: root::_bindgen_ty_28 =
+        _bindgen_ty_28::NODE_TYPE_SPECIFIC_BITS_OFFSET;
+    #[repr(u32)]
+    #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
+    pub enum _bindgen_ty_28 {
         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,
@@ -15573,216 +15659,217 @@ pub mod root {
         eCSSProperty_text_decoration_color = 270,
         eCSSProperty_text_decoration_line = 271,
         eCSSProperty_text_decoration_style = 272,
         eCSSProperty_text_emphasis_color = 273,
         eCSSProperty_text_emphasis_position = 274,
         eCSSProperty_text_emphasis_style = 275,
         eCSSProperty__webkit_text_fill_color = 276,
         eCSSProperty_text_indent = 277,
-        eCSSProperty_text_orientation = 278,
-        eCSSProperty_text_overflow = 279,
-        eCSSProperty_text_rendering = 280,
-        eCSSProperty_text_shadow = 281,
-        eCSSProperty__moz_text_size_adjust = 282,
-        eCSSProperty__webkit_text_stroke_color = 283,
-        eCSSProperty__webkit_text_stroke_width = 284,
-        eCSSProperty_text_transform = 285,
-        eCSSProperty__x_text_zoom = 286,
-        eCSSProperty_top = 287,
-        eCSSProperty__moz_top_layer = 288,
-        eCSSProperty_touch_action = 289,
-        eCSSProperty_transform = 290,
-        eCSSProperty_transform_box = 291,
-        eCSSProperty_transform_origin = 292,
-        eCSSProperty_transform_style = 293,
-        eCSSProperty_transition_delay = 294,
-        eCSSProperty_transition_duration = 295,
-        eCSSProperty_transition_property = 296,
-        eCSSProperty_transition_timing_function = 297,
-        eCSSProperty_unicode_bidi = 298,
-        eCSSProperty__moz_user_focus = 299,
-        eCSSProperty__moz_user_input = 300,
-        eCSSProperty__moz_user_modify = 301,
-        eCSSProperty__moz_user_select = 302,
-        eCSSProperty_vector_effect = 303,
-        eCSSProperty_vertical_align = 304,
-        eCSSProperty_visibility = 305,
-        eCSSProperty_white_space = 306,
-        eCSSProperty_width = 307,
-        eCSSProperty_will_change = 308,
-        eCSSProperty__moz_window_dragging = 309,
-        eCSSProperty__moz_window_shadow = 310,
-        eCSSProperty_word_break = 311,
-        eCSSProperty_word_spacing = 312,
-        eCSSProperty_overflow_wrap = 313,
-        eCSSProperty_writing_mode = 314,
-        eCSSProperty_z_index = 315,
-        eCSSProperty_COUNT_no_shorthands = 316,
-        eCSSProperty_animation = 317,
-        eCSSProperty_background = 318,
-        eCSSProperty_background_position = 319,
-        eCSSProperty_border = 320,
-        eCSSProperty_border_block_end = 321,
-        eCSSProperty_border_block_start = 322,
-        eCSSProperty_border_bottom = 323,
-        eCSSProperty_border_color = 324,
-        eCSSProperty_border_image = 325,
-        eCSSProperty_border_inline_end = 326,
-        eCSSProperty_border_inline_start = 327,
-        eCSSProperty_border_left = 328,
-        eCSSProperty_border_radius = 329,
-        eCSSProperty_border_right = 330,
-        eCSSProperty_border_style = 331,
-        eCSSProperty_border_top = 332,
-        eCSSProperty_border_width = 333,
-        eCSSProperty_column_rule = 334,
-        eCSSProperty_columns = 335,
-        eCSSProperty_flex = 336,
-        eCSSProperty_flex_flow = 337,
-        eCSSProperty_font = 338,
-        eCSSProperty_font_variant = 339,
-        eCSSProperty_grid = 340,
-        eCSSProperty_grid_area = 341,
-        eCSSProperty_grid_column = 342,
-        eCSSProperty_grid_gap = 343,
-        eCSSProperty_grid_row = 344,
-        eCSSProperty_grid_template = 345,
-        eCSSProperty_list_style = 346,
-        eCSSProperty_margin = 347,
-        eCSSProperty_marker = 348,
-        eCSSProperty_mask = 349,
-        eCSSProperty_mask_position = 350,
-        eCSSProperty_outline = 351,
-        eCSSProperty__moz_outline_radius = 352,
-        eCSSProperty_overflow = 353,
-        eCSSProperty_padding = 354,
-        eCSSProperty_place_content = 355,
-        eCSSProperty_place_items = 356,
-        eCSSProperty_place_self = 357,
-        eCSSProperty_scroll_snap_type = 358,
-        eCSSProperty_text_decoration = 359,
-        eCSSProperty_text_emphasis = 360,
-        eCSSProperty__webkit_text_stroke = 361,
-        eCSSProperty__moz_transform = 362,
-        eCSSProperty_transition = 363,
-        eCSSProperty_COUNT = 364,
-        eCSSPropertyAlias_MozTransformOrigin = 365,
-        eCSSPropertyAlias_MozPerspectiveOrigin = 366,
-        eCSSPropertyAlias_MozPerspective = 367,
-        eCSSPropertyAlias_MozTransformStyle = 368,
-        eCSSPropertyAlias_MozBackfaceVisibility = 369,
-        eCSSPropertyAlias_MozBorderImage = 370,
-        eCSSPropertyAlias_MozTransition = 371,
-        eCSSPropertyAlias_MozTransitionDelay = 372,
-        eCSSPropertyAlias_MozTransitionDuration = 373,
-        eCSSPropertyAlias_MozTransitionProperty = 374,
-        eCSSPropertyAlias_MozTransitionTimingFunction = 375,
-        eCSSPropertyAlias_MozAnimation = 376,
-        eCSSPropertyAlias_MozAnimationDelay = 377,
-        eCSSPropertyAlias_MozAnimationDirection = 378,
-        eCSSPropertyAlias_MozAnimationDuration = 379,
-        eCSSPropertyAlias_MozAnimationFillMode = 380,
-        eCSSPropertyAlias_MozAnimationIterationCount = 381,
-        eCSSPropertyAlias_MozAnimationName = 382,
-        eCSSPropertyAlias_MozAnimationPlayState = 383,
-        eCSSPropertyAlias_MozAnimationTimingFunction = 384,
-        eCSSPropertyAlias_MozBoxSizing = 385,
-        eCSSPropertyAlias_MozFontFeatureSettings = 386,
-        eCSSPropertyAlias_MozFontLanguageOverride = 387,
-        eCSSPropertyAlias_MozPaddingEnd = 388,
-        eCSSPropertyAlias_MozPaddingStart = 389,
-        eCSSPropertyAlias_MozMarginEnd = 390,
-        eCSSPropertyAlias_MozMarginStart = 391,
-        eCSSPropertyAlias_MozBorderEnd = 392,
-        eCSSPropertyAlias_MozBorderEndColor = 393,
-        eCSSPropertyAlias_MozBorderEndStyle = 394,
-        eCSSPropertyAlias_MozBorderEndWidth = 395,
-        eCSSPropertyAlias_MozBorderStart = 396,
-        eCSSPropertyAlias_MozBorderStartColor = 397,
-        eCSSPropertyAlias_MozBorderStartStyle = 398,
-        eCSSPropertyAlias_MozBorderStartWidth = 399,
-        eCSSPropertyAlias_MozHyphens = 400,
-        eCSSPropertyAlias_MozColumnCount = 401,
-        eCSSPropertyAlias_MozColumnFill = 402,
-        eCSSPropertyAlias_MozColumnGap = 403,
-        eCSSPropertyAlias_MozColumnRule = 404,
-        eCSSPropertyAlias_MozColumnRuleColor = 405,
-        eCSSPropertyAlias_MozColumnRuleStyle = 406,
-        eCSSPropertyAlias_MozColumnRuleWidth = 407,
-        eCSSPropertyAlias_MozColumnWidth = 408,
-        eCSSPropertyAlias_MozColumns = 409,
-        eCSSPropertyAlias_WebkitAnimation = 410,
-        eCSSPropertyAlias_WebkitAnimationDelay = 411,
-        eCSSPropertyAlias_WebkitAnimationDirection = 412,
-        eCSSPropertyAlias_WebkitAnimationDuration = 413,
-        eCSSPropertyAlias_WebkitAnimationFillMode = 414,
-        eCSSPropertyAlias_WebkitAnimationIterationCount = 415,
-        eCSSPropertyAlias_WebkitAnimationName = 416,
-        eCSSPropertyAlias_WebkitAnimationPlayState = 417,
-        eCSSPropertyAlias_WebkitAnimationTimingFunction = 418,
-        eCSSPropertyAlias_WebkitFilter = 419,
-        eCSSPropertyAlias_WebkitTextSizeAdjust = 420,
-        eCSSPropertyAlias_WebkitTransform = 421,
-        eCSSPropertyAlias_WebkitTransformOrigin = 422,
-        eCSSPropertyAlias_WebkitTransformStyle = 423,
-        eCSSPropertyAlias_WebkitBackfaceVisibility = 424,
-        eCSSPropertyAlias_WebkitPerspective = 425,
-        eCSSPropertyAlias_WebkitPerspectiveOrigin = 426,
-        eCSSPropertyAlias_WebkitTransition = 427,
-        eCSSPropertyAlias_WebkitTransitionDelay = 428,
-        eCSSPropertyAlias_WebkitTransitionDuration = 429,
-        eCSSPropertyAlias_WebkitTransitionProperty = 430,
-        eCSSPropertyAlias_WebkitTransitionTimingFunction = 431,
-        eCSSPropertyAlias_WebkitBorderRadius = 432,
-        eCSSPropertyAlias_WebkitBorderTopLeftRadius = 433,
-        eCSSPropertyAlias_WebkitBorderTopRightRadius = 434,
-        eCSSPropertyAlias_WebkitBorderBottomLeftRadius = 435,
-        eCSSPropertyAlias_WebkitBorderBottomRightRadius = 436,
-        eCSSPropertyAlias_WebkitBackgroundClip = 437,
-        eCSSPropertyAlias_WebkitBackgroundOrigin = 438,
-        eCSSPropertyAlias_WebkitBackgroundSize = 439,
-        eCSSPropertyAlias_WebkitBorderImage = 440,
-        eCSSPropertyAlias_WebkitBoxShadow = 441,
-        eCSSPropertyAlias_WebkitBoxSizing = 442,
-        eCSSPropertyAlias_WebkitBoxFlex = 443,
-        eCSSPropertyAlias_WebkitBoxOrdinalGroup = 444,
-        eCSSPropertyAlias_WebkitBoxOrient = 445,
-        eCSSPropertyAlias_WebkitBoxDirection = 446,
-        eCSSPropertyAlias_WebkitBoxAlign = 447,
-        eCSSPropertyAlias_WebkitBoxPack = 448,
-        eCSSPropertyAlias_WebkitFlexDirection = 449,
-        eCSSPropertyAlias_WebkitFlexWrap = 450,
-        eCSSPropertyAlias_WebkitFlexFlow = 451,
-        eCSSPropertyAlias_WebkitOrder = 452,
-        eCSSPropertyAlias_WebkitFlex = 453,
-        eCSSPropertyAlias_WebkitFlexGrow = 454,
-        eCSSPropertyAlias_WebkitFlexShrink = 455,
-        eCSSPropertyAlias_WebkitFlexBasis = 456,
-        eCSSPropertyAlias_WebkitJustifyContent = 457,
-        eCSSPropertyAlias_WebkitAlignItems = 458,
-        eCSSPropertyAlias_WebkitAlignSelf = 459,
-        eCSSPropertyAlias_WebkitAlignContent = 460,
-        eCSSPropertyAlias_WebkitUserSelect = 461,
-        eCSSPropertyAlias_WebkitMask = 462,
-        eCSSPropertyAlias_WebkitMaskClip = 463,
-        eCSSPropertyAlias_WebkitMaskComposite = 464,
-        eCSSPropertyAlias_WebkitMaskImage = 465,
-        eCSSPropertyAlias_WebkitMaskOrigin = 466,
-        eCSSPropertyAlias_WebkitMaskPosition = 467,
-        eCSSPropertyAlias_WebkitMaskPositionX = 468,
-        eCSSPropertyAlias_WebkitMaskPositionY = 469,
-        eCSSPropertyAlias_WebkitMaskRepeat = 470,
-        eCSSPropertyAlias_WebkitMaskSize = 471,
-        eCSSProperty_COUNT_with_aliases = 472,
-        eCSSPropertyExtra_all_properties = 473,
-        eCSSPropertyExtra_x_none_value = 474,
-        eCSSPropertyExtra_x_auto_value = 475,
-        eCSSPropertyExtra_variable = 476,
-        eCSSProperty_DOM = 477,
+        eCSSProperty_text_justify = 278,
+        eCSSProperty_text_orientation = 279,
+        eCSSProperty_text_overflow = 280,
+        eCSSProperty_text_rendering = 281,
+        eCSSProperty_text_shadow = 282,
+        eCSSProperty__moz_text_size_adjust = 283,
+        eCSSProperty__webkit_text_stroke_color = 284,
+        eCSSProperty__webkit_text_stroke_width = 285,
+        eCSSProperty_text_transform = 286,
+        eCSSProperty__x_text_zoom = 287,
+        eCSSProperty_top = 288,
+        eCSSProperty__moz_top_layer = 289,
+        eCSSProperty_touch_action = 290,
+        eCSSProperty_transform = 291,
+        eCSSProperty_transform_box = 292,
+        eCSSProperty_transform_origin = 293,
+        eCSSProperty_transform_style = 294,
+        eCSSProperty_transition_delay = 295,
+        eCSSProperty_transition_duration = 296,
+        eCSSProperty_transition_property = 297,
+        eCSSProperty_transition_timing_function = 298,
+        eCSSProperty_unicode_bidi = 299,
+        eCSSProperty__moz_user_focus = 300,
+        eCSSProperty__moz_user_input = 301,
+        eCSSProperty__moz_user_modify = 302,
+        eCSSProperty__moz_user_select = 303,
+        eCSSProperty_vector_effect = 304,
+        eCSSProperty_vertical_align = 305,
+        eCSSProperty_visibility = 306,
+        eCSSProperty_white_space = 307,
+        eCSSProperty_width = 308,
+        eCSSProperty_will_change = 309,
+        eCSSProperty__moz_window_dragging = 310,
+        eCSSProperty__moz_window_shadow = 311,
+        eCSSProperty_word_break = 312,
+        eCSSProperty_word_spacing = 313,
+        eCSSProperty_overflow_wrap = 314,
+        eCSSProperty_writing_mode = 315,
+        eCSSProperty_z_index = 316,
+        eCSSProperty_COUNT_no_shorthands = 317,
+        eCSSProperty_animation = 318,
+        eCSSProperty_background = 319,
+        eCSSProperty_background_position = 320,
+        eCSSProperty_border = 321,
+        eCSSProperty_border_block_end = 322,
+        eCSSProperty_border_block_start = 323,
+        eCSSProperty_border_bottom = 324,
+        eCSSProperty_border_color = 325,
+        eCSSProperty_border_image = 326,
+        eCSSProperty_border_inline_end = 327,
+        eCSSProperty_border_inline_start = 328,
+        eCSSProperty_border_left = 329,
+        eCSSProperty_border_radius = 330,
+        eCSSProperty_border_right = 331,
+        eCSSProperty_border_style = 332,
+        eCSSProperty_border_top = 333,
+        eCSSProperty_border_width = 334,
+        eCSSProperty_column_rule = 335,
+        eCSSProperty_columns = 336,
+        eCSSProperty_flex = 337,
+        eCSSProperty_flex_flow = 338,
+        eCSSProperty_font = 339,
+        eCSSProperty_font_variant = 340,
+        eCSSProperty_grid = 341,
+        eCSSProperty_grid_area = 342,
+        eCSSProperty_grid_column = 343,
+        eCSSProperty_grid_gap = 344,
+        eCSSProperty_grid_row = 345,
+        eCSSProperty_grid_template = 346,
+        eCSSProperty_list_style = 347,
+        eCSSProperty_margin = 348,
+        eCSSProperty_marker = 349,
+        eCSSProperty_mask = 350,
+        eCSSProperty_mask_position = 351,
+        eCSSProperty_outline = 352,
+        eCSSProperty__moz_outline_radius = 353,
+        eCSSProperty_overflow = 354,
+        eCSSProperty_padding = 355,
+        eCSSProperty_place_content = 356,
+        eCSSProperty_place_items = 357,
+        eCSSProperty_place_self = 358,
+        eCSSProperty_scroll_snap_type = 359,
+        eCSSProperty_text_decoration = 360,
+        eCSSProperty_text_emphasis = 361,
+        eCSSProperty__webkit_text_stroke = 362,
+        eCSSProperty__moz_transform = 363,
+        eCSSProperty_transition = 364,
+        eCSSProperty_COUNT = 365,
+        eCSSPropertyAlias_MozTransformOrigin = 366,
+        eCSSPropertyAlias_MozPerspectiveOrigin = 367,
+        eCSSPropertyAlias_MozPerspective = 368,
+        eCSSPropertyAlias_MozTransformStyle = 369,
+        eCSSPropertyAlias_MozBackfaceVisibility = 370,
+        eCSSPropertyAlias_MozBorderImage = 371,
+        eCSSPropertyAlias_MozTransition = 372,
+        eCSSPropertyAlias_MozTransitionDelay = 373,
+        eCSSPropertyAlias_MozTransitionDuration = 374,
+        eCSSPropertyAlias_MozTransitionProperty = 375,
+        eCSSPropertyAlias_MozTransitionTimingFunction = 376,
+        eCSSPropertyAlias_MozAnimation = 377,
+        eCSSPropertyAlias_MozAnimationDelay = 378,
+        eCSSPropertyAlias_MozAnimationDirection = 379,
+        eCSSPropertyAlias_MozAnimationDuration = 380,
+        eCSSPropertyAlias_MozAnimationFillMode = 381,
+        eCSSPropertyAlias_MozAnimationIterationCount = 382,
+        eCSSPropertyAlias_MozAnimationName = 383,
+        eCSSPropertyAlias_MozAnimationPlayState = 384,
+        eCSSPropertyAlias_MozAnimationTimingFunction = 385,
+        eCSSPropertyAlias_MozBoxSizing = 386,
+        eCSSPropertyAlias_MozFontFeatureSettings = 387,
+        eCSSPropertyAlias_MozFontLanguageOverride = 388,
+        eCSSPropertyAlias_MozPaddingEnd = 389,
+        eCSSPropertyAlias_MozPaddingStart = 390,
+        eCSSPropertyAlias_MozMarginEnd = 391,
+        eCSSPropertyAlias_MozMarginStart = 392,
+        eCSSPropertyAlias_MozBorderEnd = 393,
+        eCSSPropertyAlias_MozBorderEndColor = 394,
+        eCSSPropertyAlias_MozBorderEndStyle = 395,
+        eCSSPropertyAlias_MozBorderEndWidth = 396,
+        eCSSPropertyAlias_MozBorderStart = 397,
+        eCSSPropertyAlias_MozBorderStartColor = 398,
+        eCSSPropertyAlias_MozBorderStartStyle = 399,
+        eCSSPropertyAlias_MozBorderStartWidth = 400,
+        eCSSPropertyAlias_MozHyphens = 401,
+        eCSSPropertyAlias_MozColumnCount = 402,
+        eCSSPropertyAlias_MozColumnFill = 403,
+        eCSSPropertyAlias_MozColumnGap = 404,
+        eCSSPropertyAlias_MozColumnRule = 405,
+        eCSSPropertyAlias_MozColumnRuleColor = 406,
+        eCSSPropertyAlias_MozColumnRuleStyle = 407,
+        eCSSPropertyAlias_MozColumnRuleWidth = 408,
+        eCSSPropertyAlias_MozColumnWidth = 409,
+        eCSSPropertyAlias_MozColumns = 410,
+        eCSSPropertyAlias_WebkitAnimation = 411,
+        eCSSPropertyAlias_WebkitAnimationDelay = 412,
+        eCSSPropertyAlias_WebkitAnimationDirection = 413,
+        eCSSPropertyAlias_WebkitAnimationDuration = 414,
+        eCSSPropertyAlias_WebkitAnimationFillMode = 415,
+        eCSSPropertyAlias_WebkitAnimationIterationCount = 416,
+        eCSSPropertyAlias_WebkitAnimationName = 417,
+        eCSSPropertyAlias_WebkitAnimationPlayState = 418,
+        eCSSPropertyAlias_WebkitAnimationTimingFunction = 419,
+        eCSSPropertyAlias_WebkitFilter = 420,
+        eCSSPropertyAlias_WebkitTextSizeAdjust = 421,
+        eCSSPropertyAlias_WebkitTransform = 422,
+        eCSSPropertyAlias_WebkitTransformOrigin = 423,
+        eCSSPropertyAlias_WebkitTransformStyle = 424,
+        eCSSPropertyAlias_WebkitBackfaceVisibility = 425,
+        eCSSPropertyAlias_WebkitPerspective = 426,
+        eCSSPropertyAlias_WebkitPerspectiveOrigin = 427,
+        eCSSPropertyAlias_WebkitTransition = 428,
+        eCSSPropertyAlias_WebkitTransitionDelay = 429,
+        eCSSPropertyAlias_WebkitTransitionDuration = 430,
+        eCSSPropertyAlias_WebkitTransitionProperty = 431,
+        eCSSPropertyAlias_WebkitTransitionTimingFunction = 432,
+        eCSSPropertyAlias_WebkitBorderRadius = 433,
+        eCSSPropertyAlias_WebkitBorderTopLeftRadius = 434,
+        eCSSPropertyAlias_WebkitBorderTopRightRadius = 435,
+        eCSSPropertyAlias_WebkitBorderBottomLeftRadius = 436,
+        eCSSPropertyAlias_WebkitBorderBottomRightRadius = 437,
+        eCSSPropertyAlias_WebkitBackgroundClip = 438,
+        eCSSPropertyAlias_WebkitBackgroundOrigin = 439,
+        eCSSPropertyAlias_WebkitBackgroundSize = 440,
+        eCSSPropertyAlias_WebkitBorderImage = 441,
+        eCSSPropertyAlias_WebkitBoxShadow = 442,
+        eCSSPropertyAlias_WebkitBoxSizing = 443,
+        eCSSPropertyAlias_WebkitBoxFlex = 444,
+        eCSSPropertyAlias_WebkitBoxOrdinalGroup = 445,
+        eCSSPropertyAlias_WebkitBoxOrient = 446,
+        eCSSPropertyAlias_WebkitBoxDirection = 447,
+        eCSSPropertyAlias_WebkitBoxAlign = 448,
+        eCSSPropertyAlias_WebkitBoxPack = 449,
+        eCSSPropertyAlias_WebkitFlexDirection = 450,
+        eCSSPropertyAlias_WebkitFlexWrap = 451,
+        eCSSPropertyAlias_WebkitFlexFlow = 452,
+        eCSSPropertyAlias_WebkitOrder = 453,
+        eCSSPropertyAlias_WebkitFlex = 454,
+        eCSSPropertyAlias_WebkitFlexGrow = 455,
+        eCSSPropertyAlias_WebkitFlexShrink = 456,
+        eCSSPropertyAlias_WebkitFlexBasis = 457,
+        eCSSPropertyAlias_WebkitJustifyContent = 458,
+        eCSSPropertyAlias_WebkitAlignItems = 459,
+        eCSSPropertyAlias_WebkitAlignSelf = 460,
+        eCSSPropertyAlias_WebkitAlignContent = 461,
+        eCSSPropertyAlias_WebkitUserSelect = 462,
+        eCSSPropertyAlias_WebkitMask = 463,
+        eCSSPropertyAlias_WebkitMaskClip = 464,
+        eCSSPropertyAlias_WebkitMaskComposite = 465,
+        eCSSPropertyAlias_WebkitMaskImage = 466,
+        eCSSPropertyAlias_WebkitMaskOrigin = 467,
+        eCSSPropertyAlias_WebkitMaskPosition = 468,
+        eCSSPropertyAlias_WebkitMaskPositionX = 469,
+        eCSSPropertyAlias_WebkitMaskPositionY = 470,
+        eCSSPropertyAlias_WebkitMaskRepeat = 471,
+        eCSSPropertyAlias_WebkitMaskSize = 472,
+        eCSSProperty_COUNT_with_aliases = 473,
+        eCSSPropertyExtra_all_properties = 474,
+        eCSSPropertyExtra_x_none_value = 475,
+        eCSSPropertyExtra_x_auto_value = 476,
+        eCSSPropertyExtra_variable = 477,
+        eCSSProperty_DOM = 478,
     }
     #[repr(i32)]
     #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
     pub enum nsCSSFontDesc {
         eCSSFontDesc_UNKNOWN = -1,
         eCSSFontDesc_Family = 0,
         eCSSFontDesc_Style = 1,
         eCSSFontDesc_Weight = 2,
@@ -16010,572 +16097,575 @@ pub mod root {
         eCSSKeyword_dialog = 192,
         eCSSKeyword_difference = 193,
         eCSSKeyword_digits = 194,
         eCSSKeyword_disabled = 195,
         eCSSKeyword_disc = 196,
         eCSSKeyword_disclosure_closed = 197,
         eCSSKeyword_disclosure_open = 198,
         eCSSKeyword_discretionary_ligatures = 199,
-        eCSSKeyword_dot = 200,
-        eCSSKeyword_dotted = 201,
-        eCSSKeyword_double = 202,
-        eCSSKeyword_double_circle = 203,
-        eCSSKeyword_double_struck = 204,
-        eCSSKeyword_drag = 205,
-        eCSSKeyword_drop_shadow = 206,
-        eCSSKeyword_e_resize = 207,
-        eCSSKeyword_ease = 208,
-        eCSSKeyword_ease_in = 209,
-        eCSSKeyword_ease_in_out = 210,
-        eCSSKeyword_ease_out = 211,
-        eCSSKeyword_economy = 212,
-        eCSSKeyword_element = 213,
-        eCSSKeyword_elements = 214,
-        eCSSKeyword_ellipse = 215,
-        eCSSKeyword_ellipsis = 216,
-        eCSSKeyword_em = 217,
-        eCSSKeyword_embed = 218,
-        eCSSKeyword_enabled = 219,
-        eCSSKeyword_end = 220,
-        eCSSKeyword_ethiopic_numeric = 221,
-        eCSSKeyword_ex = 222,
-        eCSSKeyword_exact = 223,
-        eCSSKeyword_exclude = 224,
-        eCSSKeyword_exclusion = 225,
-        eCSSKeyword_expanded = 226,
-        eCSSKeyword_extends = 227,
-        eCSSKeyword_extra_condensed = 228,
-        eCSSKeyword_extra_expanded = 229,
-        eCSSKeyword_ew_resize = 230,
-        eCSSKeyword_fallback = 231,
-        eCSSKeyword_fantasy = 232,
-        eCSSKeyword_farthest_side = 233,
-        eCSSKeyword_farthest_corner = 234,
-        eCSSKeyword_fill = 235,
-        eCSSKeyword_filled = 236,
-        eCSSKeyword_fill_box = 237,
-        eCSSKeyword_first = 238,
-        eCSSKeyword_fit_content = 239,
-        eCSSKeyword_fixed = 240,
-        eCSSKeyword_flat = 241,
-        eCSSKeyword_flex = 242,
-        eCSSKeyword_flex_end = 243,
-        eCSSKeyword_flex_start = 244,
-        eCSSKeyword_flip = 245,
-        eCSSKeyword_flow_root = 246,
-        eCSSKeyword_forwards = 247,
-        eCSSKeyword_fraktur = 248,
-        eCSSKeyword_from_image = 249,
-        eCSSKeyword_full_width = 250,
-        eCSSKeyword_fullscreen = 251,
-        eCSSKeyword_grab = 252,
-        eCSSKeyword_grabbing = 253,
-        eCSSKeyword_grad = 254,
-        eCSSKeyword_grayscale = 255,
-        eCSSKeyword_graytext = 256,
-        eCSSKeyword_grid = 257,
-        eCSSKeyword_groove = 258,
-        eCSSKeyword_hard_light = 259,
-        eCSSKeyword_hebrew = 260,
-        eCSSKeyword_help = 261,
-        eCSSKeyword_hidden = 262,
-        eCSSKeyword_hide = 263,
-        eCSSKeyword_highlight = 264,
-        eCSSKeyword_highlighttext = 265,
-        eCSSKeyword_historical_forms = 266,
-        eCSSKeyword_historical_ligatures = 267,
-        eCSSKeyword_horizontal = 268,
-        eCSSKeyword_horizontal_tb = 269,
-        eCSSKeyword_hue = 270,
-        eCSSKeyword_hue_rotate = 271,
-        eCSSKeyword_hz = 272,
-        eCSSKeyword_icon = 273,
-        eCSSKeyword_ignore = 274,
-        eCSSKeyword_in = 275,
-        eCSSKeyword_interlace = 276,
-        eCSSKeyword_inactive = 277,
-        eCSSKeyword_inactiveborder = 278,
-        eCSSKeyword_inactivecaption = 279,
-        eCSSKeyword_inactivecaptiontext = 280,
-        eCSSKeyword_infinite = 281,
-        eCSSKeyword_infobackground = 282,
-        eCSSKeyword_infotext = 283,
-        eCSSKeyword_inherit = 284,
-        eCSSKeyword_initial = 285,
-        eCSSKeyword_inline = 286,
-        eCSSKeyword_inline_axis = 287,
-        eCSSKeyword_inline_block = 288,
-        eCSSKeyword_inline_end = 289,
-        eCSSKeyword_inline_flex = 290,
-        eCSSKeyword_inline_grid = 291,
-        eCSSKeyword_inline_start = 292,
-        eCSSKeyword_inline_table = 293,
-        eCSSKeyword_inset = 294,
-        eCSSKeyword_inside = 295,
-        eCSSKeyword_interpolatematrix = 296,
-        eCSSKeyword_accumulatematrix = 297,
-        eCSSKeyword_intersect = 298,
-        eCSSKeyword_isolate = 299,
-        eCSSKeyword_isolate_override = 300,
-        eCSSKeyword_invert = 301,
-        eCSSKeyword_italic = 302,
-        eCSSKeyword_japanese_formal = 303,
-        eCSSKeyword_japanese_informal = 304,
-        eCSSKeyword_jis78 = 305,
-        eCSSKeyword_jis83 = 306,
-        eCSSKeyword_jis90 = 307,
-        eCSSKeyword_jis04 = 308,
-        eCSSKeyword_justify = 309,
-        eCSSKeyword_keep_all = 310,
-        eCSSKeyword_khz = 311,
-        eCSSKeyword_korean_hangul_formal = 312,
-        eCSSKeyword_korean_hanja_formal = 313,
-        eCSSKeyword_korean_hanja_informal = 314,
-        eCSSKeyword_landscape = 315,
-        eCSSKeyword_large = 316,
-        eCSSKeyword_larger = 317,
-        eCSSKeyword_last = 318,
-        eCSSKeyword_last_baseline = 319,
-        eCSSKeyword_layout = 320,
-        eCSSKeyword_left = 321,
-        eCSSKeyword_legacy = 322,
-        eCSSKeyword_lighten = 323,
-        eCSSKeyword_lighter = 324,
-        eCSSKeyword_line_through = 325,
-        eCSSKeyword_linear = 326,
-        eCSSKeyword_lining_nums = 327,
-        eCSSKeyword_list_item = 328,
-        eCSSKeyword_local = 329,
-        eCSSKeyword_logical = 330,
-        eCSSKeyword_looped = 331,
-        eCSSKeyword_lowercase = 332,
-        eCSSKeyword_lr = 333,
-        eCSSKeyword_lr_tb = 334,
-        eCSSKeyword_ltr = 335,
-        eCSSKeyword_luminance = 336,
-        eCSSKeyword_luminosity = 337,
-        eCSSKeyword_mandatory = 338,
-        eCSSKeyword_manipulation = 339,
-        eCSSKeyword_manual = 340,
-        eCSSKeyword_margin_box = 341,
-        eCSSKeyword_markers = 342,
-        eCSSKeyword_match_parent = 343,
-        eCSSKeyword_match_source = 344,
-        eCSSKeyword_matrix = 345,
-        eCSSKeyword_matrix3d = 346,
-        eCSSKeyword_max_content = 347,
-        eCSSKeyword_medium = 348,
-        eCSSKeyword_menu = 349,
-        eCSSKeyword_menutext = 350,
-        eCSSKeyword_message_box = 351,
-        eCSSKeyword_middle = 352,
-        eCSSKeyword_min_content = 353,
-        eCSSKeyword_minmax = 354,
-        eCSSKeyword_mix = 355,
-        eCSSKeyword_mixed = 356,
-        eCSSKeyword_mm = 357,
-        eCSSKeyword_monospace = 358,
-        eCSSKeyword_move = 359,
-        eCSSKeyword_ms = 360,
-        eCSSKeyword_multiply = 361,
-        eCSSKeyword_n_resize = 362,
-        eCSSKeyword_narrower = 363,
-        eCSSKeyword_ne_resize = 364,
-        eCSSKeyword_nesw_resize = 365,
-        eCSSKeyword_no_clip = 366,
-        eCSSKeyword_no_close_quote = 367,
-        eCSSKeyword_no_common_ligatures = 368,
-        eCSSKeyword_no_contextual = 369,
-        eCSSKeyword_no_discretionary_ligatures = 370,
-        eCSSKeyword_no_drag = 371,
-        eCSSKeyword_no_drop = 372,
-        eCSSKeyword_no_historical_ligatures = 373,
-        eCSSKeyword_no_open_quote = 374,
-        eCSSKeyword_no_repeat = 375,
-        eCSSKeyword_none = 376,
-        eCSSKeyword_normal = 377,
-        eCSSKeyword_not_allowed = 378,
-        eCSSKeyword_nowrap = 379,
-        eCSSKeyword_numeric = 380,
-        eCSSKeyword_ns_resize = 381,
-        eCSSKeyword_nw_resize = 382,
-        eCSSKeyword_nwse_resize = 383,
-        eCSSKeyword_oblique = 384,
-        eCSSKeyword_oldstyle_nums = 385,
-        eCSSKeyword_opacity = 386,
-        eCSSKeyword_open = 387,
-        eCSSKeyword_open_quote = 388,
-        eCSSKeyword_optional = 389,
-        eCSSKeyword_ordinal = 390,
-        eCSSKeyword_ornaments = 391,
-        eCSSKeyword_outset = 392,
-        eCSSKeyword_outside = 393,
-        eCSSKeyword_over = 394,
-        eCSSKeyword_overlay = 395,
-        eCSSKeyword_overline = 396,
-        eCSSKeyword_paint = 397,
-        eCSSKeyword_padding_box = 398,
-        eCSSKeyword_painted = 399,
-        eCSSKeyword_pan_x = 400,
-        eCSSKeyword_pan_y = 401,
-        eCSSKeyword_paused = 402,
-        eCSSKeyword_pc = 403,
-        eCSSKeyword_perspective = 404,
-        eCSSKeyword_petite_caps = 405,
-        eCSSKeyword_physical = 406,
-        eCSSKeyword_plaintext = 407,
-        eCSSKeyword_pointer = 408,
-        eCSSKeyword_polygon = 409,
-        eCSSKeyword_portrait = 410,
-        eCSSKeyword_pre = 411,
-        eCSSKeyword_pre_wrap = 412,
-        eCSSKeyword_pre_line = 413,
-        eCSSKeyword_preserve_3d = 414,
-        eCSSKeyword_progress = 415,
-        eCSSKeyword_progressive = 416,
-        eCSSKeyword_proportional_nums = 417,
-        eCSSKeyword_proportional_width = 418,
-        eCSSKeyword_proximity = 419,
-        eCSSKeyword_pt = 420,
-        eCSSKeyword_px = 421,
-        eCSSKeyword_rad = 422,
-        eCSSKeyword_read_only = 423,
-        eCSSKeyword_read_write = 424,
-        eCSSKeyword_relative = 425,
-        eCSSKeyword_repeat = 426,
-        eCSSKeyword_repeat_x = 427,
-        eCSSKeyword_repeat_y = 428,
-        eCSSKeyword_reverse = 429,
-        eCSSKeyword_ridge = 430,
-        eCSSKeyword_right = 431,
-        eCSSKeyword_rl = 432,
-        eCSSKeyword_rl_tb = 433,
-        eCSSKeyword_rotate = 434,
-        eCSSKeyword_rotate3d = 435,
-        eCSSKeyword_rotatex = 436,
-        eCSSKeyword_rotatey = 437,
-        eCSSKeyword_rotatez = 438,
-        eCSSKeyword_round = 439,
-        eCSSKeyword_row = 440,
-        eCSSKeyword_row_resize = 441,
-        eCSSKeyword_row_reverse = 442,
-        eCSSKeyword_rtl = 443,
-        eCSSKeyword_ruby = 444,
-        eCSSKeyword_ruby_base = 445,
-        eCSSKeyword_ruby_base_container = 446,
-        eCSSKeyword_ruby_text = 447,
-        eCSSKeyword_ruby_text_container = 448,
-        eCSSKeyword_running = 449,
-        eCSSKeyword_s = 450,
-        eCSSKeyword_s_resize = 451,
-        eCSSKeyword_safe = 452,
-        eCSSKeyword_saturate = 453,
-        eCSSKeyword_saturation = 454,
-        eCSSKeyword_scale = 455,
-        eCSSKeyword_scale_down = 456,
-        eCSSKeyword_scale3d = 457,
-        eCSSKeyword_scalex = 458,
-        eCSSKeyword_scaley = 459,
-        eCSSKeyword_scalez = 460,
-        eCSSKeyword_screen = 461,
-        eCSSKeyword_script = 462,
-        eCSSKeyword_scroll = 463,
-        eCSSKeyword_scrollbar = 464,
-        eCSSKeyword_scrollbar_small = 465,
-        eCSSKeyword_scrollbar_horizontal = 466,
-        eCSSKeyword_scrollbar_vertical = 467,
-        eCSSKeyword_se_resize = 468,
-        eCSSKeyword_select_after = 469,
-        eCSSKeyword_select_all = 470,
-        eCSSKeyword_select_before = 471,
-        eCSSKeyword_select_menu = 472,
-        eCSSKeyword_select_same = 473,
-        eCSSKeyword_self_end = 474,
-        eCSSKeyword_self_start = 475,
-        eCSSKeyword_semi_condensed = 476,
-        eCSSKeyword_semi_expanded = 477,
-        eCSSKeyword_separate = 478,
-        eCSSKeyword_sepia = 479,
-        eCSSKeyword_serif = 480,
-        eCSSKeyword_sesame = 481,
-        eCSSKeyword_show = 482,
-        eCSSKeyword_sideways = 483,
-        eCSSKeyword_sideways_lr = 484,
-        eCSSKeyword_sideways_right = 485,
-        eCSSKeyword_sideways_rl = 486,
-        eCSSKeyword_simp_chinese_formal = 487,
-        eCSSKeyword_simp_chinese_informal = 488,
-        eCSSKeyword_simplified = 489,
-        eCSSKeyword_skew = 490,
-        eCSSKeyword_skewx = 491,
-        eCSSKeyword_skewy = 492,
-        eCSSKeyword_slashed_zero = 493,
-        eCSSKeyword_slice = 494,
-        eCSSKeyword_small = 495,
-        eCSSKeyword_small_caps = 496,
-        eCSSKeyword_small_caption = 497,
-        eCSSKeyword_smaller = 498,
-        eCSSKeyword_smooth = 499,
-        eCSSKeyword_soft = 500,
-        eCSSKeyword_soft_light = 501,
-        eCSSKeyword_solid = 502,
-        eCSSKeyword_space_around = 503,
-        eCSSKeyword_space_between = 504,
-        eCSSKeyword_space_evenly = 505,
-        eCSSKeyword_span = 506,
-        eCSSKeyword_spell_out = 507,
-        eCSSKeyword_square = 508,
-        eCSSKeyword_stacked_fractions = 509,
-        eCSSKeyword_start = 510,
-        eCSSKeyword_static = 511,
-        eCSSKeyword_standalone = 512,
-        eCSSKeyword_status_bar = 513,
-        eCSSKeyword_step_end = 514,
-        eCSSKeyword_step_start = 515,
-        eCSSKeyword_sticky = 516,
-        eCSSKeyword_stretch = 517,
-        eCSSKeyword_stretch_to_fit = 518,
-        eCSSKeyword_stretched = 519,
-        eCSSKeyword_strict = 520,
-        eCSSKeyword_stroke = 521,
-        eCSSKeyword_stroke_box = 522,
-        eCSSKeyword_style = 523,
-        eCSSKeyword_styleset = 524,
-        eCSSKeyword_stylistic = 525,
-        eCSSKeyword_sub = 526,
-        eCSSKeyword_subgrid = 527,
-        eCSSKeyword_subtract = 528,
-        eCSSKeyword_super = 529,
-        eCSSKeyword_sw_resize = 530,
-        eCSSKeyword_swash = 531,
-        eCSSKeyword_swap = 532,
-        eCSSKeyword_table = 533,
-        eCSSKeyword_table_caption = 534,
-        eCSSKeyword_table_cell = 535,
-        eCSSKeyword_table_column = 536,
-        eCSSKeyword_table_column_group = 537,
-        eCSSKeyword_table_footer_group = 538,
-        eCSSKeyword_table_header_group = 539,
-        eCSSKeyword_table_row = 540,
-        eCSSKeyword_table_row_group = 541,
-        eCSSKeyword_tabular_nums = 542,
-        eCSSKeyword_tailed = 543,
-        eCSSKeyword_tb = 544,
-        eCSSKeyword_tb_rl = 545,
-        eCSSKeyword_text = 546,
-        eCSSKeyword_text_bottom = 547,
-        eCSSKeyword_text_top = 548,
-        eCSSKeyword_thick = 549,
-        eCSSKeyword_thin = 550,
-        eCSSKeyword_threeddarkshadow = 551,
-        eCSSKeyword_threedface = 552,
-        eCSSKeyword_threedhighlight = 553,
-        eCSSKeyword_threedlightshadow = 554,
-        eCSSKeyword_threedshadow = 555,
-        eCSSKeyword_titling_caps = 556,
-        eCSSKeyword_toggle = 557,
-        eCSSKeyword_top = 558,
-        eCSSKeyword_top_outside = 559,
-        eCSSKeyword_trad_chinese_formal = 560,
-        eCSSKeyword_trad_chinese_informal = 561,
-        eCSSKeyword_traditional = 562,
-        eCSSKeyword_translate = 563,
-        eCSSKeyword_translate3d = 564,
-        eCSSKeyword_translatex = 565,
-        eCSSKeyword_translatey = 566,
-        eCSSKeyword_translatez = 567,
-        eCSSKeyword_transparent = 568,
-        eCSSKeyword_triangle = 569,
-        eCSSKeyword_tri_state = 570,
-        eCSSKeyword_ultra_condensed = 571,
-        eCSSKeyword_ultra_expanded = 572,
-        eCSSKeyword_under = 573,
-        eCSSKeyword_underline = 574,
-        eCSSKeyword_unicase = 575,
-        eCSSKeyword_unsafe = 576,
-        eCSSKeyword_unset = 577,
-        eCSSKeyword_uppercase = 578,
-        eCSSKeyword_upright = 579,
-        eCSSKeyword_vertical = 580,
-        eCSSKeyword_vertical_lr = 581,
-        eCSSKeyword_vertical_rl = 582,
-        eCSSKeyword_vertical_text = 583,
-        eCSSKeyword_view_box = 584,
-        eCSSKeyword_visible = 585,
-        eCSSKeyword_visiblefill = 586,
-        eCSSKeyword_visiblepainted = 587,
-        eCSSKeyword_visiblestroke = 588,
-        eCSSKeyword_w_resize = 589,
-        eCSSKeyword_wait = 590,
-        eCSSKeyword_wavy = 591,
-        eCSSKeyword_weight = 592,
-        eCSSKeyword_wider = 593,
-        eCSSKeyword_window = 594,
-        eCSSKeyword_windowframe = 595,
-        eCSSKeyword_windowtext = 596,
-        eCSSKeyword_words = 597,
-        eCSSKeyword_wrap = 598,
-        eCSSKeyword_wrap_reverse = 599,
-        eCSSKeyword_write_only = 600,
-        eCSSKeyword_x_large = 601,
-        eCSSKeyword_x_small = 602,
-        eCSSKeyword_xx_large = 603,
-        eCSSKeyword_xx_small = 604,
-        eCSSKeyword_zoom_in = 605,
-        eCSSKeyword_zoom_out = 606,
-        eCSSKeyword_radio = 607,
-        eCSSKeyword_checkbox = 608,
-        eCSSKeyword_button_bevel = 609,
-        eCSSKeyword_toolbox = 610,
-        eCSSKeyword_toolbar = 611,
-        eCSSKeyword_toolbarbutton = 612,
-        eCSSKeyword_toolbargripper = 613,
-        eCSSKeyword_dualbutton = 614,
-        eCSSKeyword_toolbarbutton_dropdown = 615,
-        eCSSKeyword_button_arrow_up = 616,
-        eCSSKeyword_button_arrow_down = 617,
-        eCSSKeyword_button_arrow_next = 618,
-        eCSSKeyword_button_arrow_previous = 619,
-        eCSSKeyword_separator = 620,
-        eCSSKeyword_splitter = 621,
-        eCSSKeyword_statusbar = 622,
-        eCSSKeyword_statusbarpanel = 623,
-        eCSSKeyword_resizerpanel = 624,
-        eCSSKeyword_resizer = 625,
-        eCSSKeyword_listbox = 626,
-        eCSSKeyword_listitem = 627,
-        eCSSKeyword_numbers = 628,
-        eCSSKeyword_number_input = 629,
-        eCSSKeyword_treeview = 630,
-        eCSSKeyword_treeitem = 631,
-        eCSSKeyword_treetwisty = 632,
-        eCSSKeyword_treetwistyopen = 633,
-        eCSSKeyword_treeline = 634,
-        eCSSKeyword_treeheader = 635,
-        eCSSKeyword_treeheadercell = 636,
-        eCSSKeyword_treeheadersortarrow = 637,
-        eCSSKeyword_progressbar = 638,
-        eCSSKeyword_progressbar_vertical = 639,
-        eCSSKeyword_progresschunk = 640,
-        eCSSKeyword_progresschunk_vertical = 641,
-        eCSSKeyword_tab = 642,
-        eCSSKeyword_tabpanels = 643,
-        eCSSKeyword_tabpanel = 644,
-        eCSSKeyword_tab_scroll_arrow_back = 645,
-        eCSSKeyword_tab_scroll_arrow_forward = 646,
-        eCSSKeyword_tooltip = 647,
-        eCSSKeyword_spinner = 648,
-        eCSSKeyword_spinner_upbutton = 649,
-        eCSSKeyword_spinner_downbutton = 650,
-        eCSSKeyword_spinner_textfield = 651,
-        eCSSKeyword_scrollbarbutton_up = 652,
-        eCSSKeyword_scrollbarbutton_down = 653,
-        eCSSKeyword_scrollbarbutton_left = 654,
-        eCSSKeyword_scrollbarbutton_right = 655,
-        eCSSKeyword_scrollbartrack_horizontal = 656,
-        eCSSKeyword_scrollbartrack_vertical = 657,
-        eCSSKeyword_scrollbarthumb_horizontal = 658,
-        eCSSKeyword_scrollbarthumb_vertical = 659,
-        eCSSKeyword_sheet = 660,
-        eCSSKeyword_textfield = 661,
-        eCSSKeyword_textfield_multiline = 662,
-        eCSSKeyword_caret = 663,
-        eCSSKeyword_searchfield = 664,
-        eCSSKeyword_menubar = 665,
-        eCSSKeyword_menupopup = 666,
-        eCSSKeyword_menuitem = 667,
-        eCSSKeyword_checkmenuitem = 668,
-        eCSSKeyword_radiomenuitem = 669,
-        eCSSKeyword_menucheckbox = 670,
-        eCSSKeyword_menuradio = 671,
-        eCSSKeyword_menuseparator = 672,
-        eCSSKeyword_menuarrow = 673,
-        eCSSKeyword_menuimage = 674,
-        eCSSKeyword_menuitemtext = 675,
-        eCSSKeyword_menulist = 676,
-        eCSSKeyword_menulist_button = 677,
-        eCSSKeyword_menulist_text = 678,
-        eCSSKeyword_menulist_textfield = 679,
-        eCSSKeyword_meterbar = 680,
-        eCSSKeyword_meterchunk = 681,
-        eCSSKeyword_minimal_ui = 682,
-        eCSSKeyword_range = 683,
-        eCSSKeyword_range_thumb = 684,
-        eCSSKeyword_sans_serif = 685,
-        eCSSKeyword_sans_serif_bold_italic = 686,
-        eCSSKeyword_sans_serif_italic = 687,
-        eCSSKeyword_scale_horizontal = 688,
-        eCSSKeyword_scale_vertical = 689,
-        eCSSKeyword_scalethumb_horizontal = 690,
-        eCSSKeyword_scalethumb_vertical = 691,
-        eCSSKeyword_scalethumbstart = 692,
-        eCSSKeyword_scalethumbend = 693,
-        eCSSKeyword_scalethumbtick = 694,
-        eCSSKeyword_groupbox = 695,
-        eCSSKeyword_checkbox_container = 696,
-        eCSSKeyword_radio_container = 697,
-        eCSSKeyword_checkbox_label = 698,
-        eCSSKeyword_radio_label = 699,
-        eCSSKeyword_button_focus = 700,
-        eCSSKeyword__moz_win_media_toolbox = 701,
-        eCSSKeyword__moz_win_communications_toolbox = 702,
-        eCSSKeyword__moz_win_browsertabbar_toolbox = 703,
-        eCSSKeyword__moz_win_mediatext = 704,
-        eCSSKeyword__moz_win_communicationstext = 705,
-        eCSSKeyword__moz_win_glass = 706,
-        eCSSKeyword__moz_win_borderless_glass = 707,
-        eCSSKeyword__moz_window_titlebar = 708,
-        eCSSKeyword__moz_window_titlebar_maximized = 709,
-        eCSSKeyword__moz_window_frame_left = 710,
-        eCSSKeyword__moz_window_frame_right = 711,
-        eCSSKeyword__moz_window_frame_bottom = 712,
-        eCSSKeyword__moz_window_button_close = 713,
-        eCSSKeyword__moz_window_button_minimize = 714,
-        eCSSKeyword__moz_window_button_maximize = 715,
-        eCSSKeyword__moz_window_button_restore = 716,
-        eCSSKeyword__moz_window_button_box = 717,
-        eCSSKeyword__moz_window_button_box_maximized = 718,
-        eCSSKeyword__moz_mac_help_button = 719,
-        eCSSKeyword__moz_win_exclude_glass = 720,
-        eCSSKeyword__moz_mac_vibrancy_light = 721,
-        eCSSKeyword__moz_mac_vibrancy_dark = 722,
-        eCSSKeyword__moz_mac_disclosure_button_closed = 723,
-        eCSSKeyword__moz_mac_disclosure_button_open = 724,
-        eCSSKeyword__moz_mac_source_list = 725,
-        eCSSKeyword__moz_mac_source_list_selection = 726,
-        eCSSKeyword__moz_mac_active_source_list_selection = 727,
-        eCSSKeyword_alphabetic = 728,
-        eCSSKeyword_bevel = 729,
-        eCSSKeyword_butt = 730,
-        eCSSKeyword_central = 731,
-        eCSSKeyword_crispedges = 732,
-        eCSSKeyword_evenodd = 733,
-        eCSSKeyword_geometricprecision = 734,
-        eCSSKeyword_hanging = 735,
-        eCSSKeyword_ideographic = 736,
-        eCSSKeyword_linearrgb = 737,
-        eCSSKeyword_mathematical = 738,
-        eCSSKeyword_miter = 739,
-        eCSSKeyword_no_change = 740,
-        eCSSKeyword_non_scaling_stroke = 741,
-        eCSSKeyword_nonzero = 742,
-        eCSSKeyword_optimizelegibility = 743,
-        eCSSKeyword_optimizequality = 744,
-        eCSSKeyword_optimizespeed = 745,
-        eCSSKeyword_reset_size = 746,
-        eCSSKeyword_srgb = 747,
-        eCSSKeyword_symbolic = 748,
-        eCSSKeyword_symbols = 749,
-        eCSSKeyword_text_after_edge = 750,
-        eCSSKeyword_text_before_edge = 751,
-        eCSSKeyword_use_script = 752,
-        eCSSKeyword__moz_crisp_edges = 753,
-        eCSSKeyword_space = 754,
-        eCSSKeyword_COUNT = 755,
+        eCSSKeyword_distribute = 200,
+        eCSSKeyword_dot = 201,
+        eCSSKeyword_dotted = 202,
+        eCSSKeyword_double = 203,
+        eCSSKeyword_double_circle = 204,
+        eCSSKeyword_double_struck = 205,
+        eCSSKeyword_drag = 206,
+        eCSSKeyword_drop_shadow = 207,
+        eCSSKeyword_e_resize = 208,
+        eCSSKeyword_ease = 209,
+        eCSSKeyword_ease_in = 210,
+        eCSSKeyword_ease_in_out = 211,
+        eCSSKeyword_ease_out = 212,
+        eCSSKeyword_economy = 213,
+        eCSSKeyword_element = 214,
+        eCSSKeyword_elements = 215,
+        eCSSKeyword_ellipse = 216,
+        eCSSKeyword_ellipsis = 217,
+        eCSSKeyword_em = 218,
+        eCSSKeyword_embed = 219,
+        eCSSKeyword_enabled = 220,
+        eCSSKeyword_end = 221,
+        eCSSKeyword_ethiopic_numeric = 222,
+        eCSSKeyword_ex = 223,
+        eCSSKeyword_exact = 224,
+        eCSSKeyword_exclude = 225,
+        eCSSKeyword_exclusion = 226,
+        eCSSKeyword_expanded = 227,
+        eCSSKeyword_extends = 228,
+        eCSSKeyword_extra_condensed = 229,
+        eCSSKeyword_extra_expanded = 230,
+        eCSSKeyword_ew_resize = 231,
+        eCSSKeyword_fallback = 232,
+        eCSSKeyword_fantasy = 233,
+        eCSSKeyword_farthest_side = 234,
+        eCSSKeyword_farthest_corner = 235,
+        eCSSKeyword_fill = 236,
+        eCSSKeyword_filled = 237,
+        eCSSKeyword_fill_box = 238,
+        eCSSKeyword_first = 239,
+        eCSSKeyword_fit_content = 240,
+        eCSSKeyword_fixed = 241,
+        eCSSKeyword_flat = 242,
+        eCSSKeyword_flex = 243,
+        eCSSKeyword_flex_end = 244,
+        eCSSKeyword_flex_start = 245,
+        eCSSKeyword_flip = 246,
+        eCSSKeyword_flow_root = 247,
+        eCSSKeyword_forwards = 248,
+        eCSSKeyword_fraktur = 249,
+        eCSSKeyword_from_image = 250,
+        eCSSKeyword_full_width = 251,
+        eCSSKeyword_fullscreen = 252,
+        eCSSKeyword_grab = 253,
+        eCSSKeyword_grabbing = 254,
+        eCSSKeyword_grad = 255,
+        eCSSKeyword_grayscale = 256,
+        eCSSKeyword_graytext = 257,
+        eCSSKeyword_grid = 258,
+        eCSSKeyword_groove = 259,
+        eCSSKeyword_hard_light = 260,
+        eCSSKeyword_hebrew = 261,
+        eCSSKeyword_help = 262,
+        eCSSKeyword_hidden = 263,
+        eCSSKeyword_hide = 264,
+        eCSSKeyword_highlight = 265,
+        eCSSKeyword_highlighttext = 266,
+        eCSSKeyword_historical_forms = 267,
+        eCSSKeyword_historical_ligatures = 268,
+        eCSSKeyword_horizontal = 269,
+        eCSSKeyword_horizontal_tb = 270,
+        eCSSKeyword_hue = 271,
+        eCSSKeyword_hue_rotate = 272,
+        eCSSKeyword_hz = 273,
+        eCSSKeyword_icon = 274,
+        eCSSKeyword_ignore = 275,
+        eCSSKeyword_in = 276,
+        eCSSKeyword_interlace = 277,
+        eCSSKeyword_inactive = 278,
+        eCSSKeyword_inactiveborder = 279,
+        eCSSKeyword_inactivecaption = 280,
+        eCSSKeyword_inactivecaptiontext = 281,
+        eCSSKeyword_infinite = 282,
+        eCSSKeyword_infobackground = 283,
+        eCSSKeyword_infotext = 284,
+        eCSSKeyword_inherit = 285,
+        eCSSKeyword_initial = 286,
+        eCSSKeyword_inline = 287,
+        eCSSKeyword_inline_axis = 288,
+        eCSSKeyword_inline_block = 289,
+        eCSSKeyword_inline_end = 290,
+        eCSSKeyword_inline_flex = 291,
+        eCSSKeyword_inline_grid = 292,
+        eCSSKeyword_inline_start = 293,
+        eCSSKeyword_inline_table = 294,
+        eCSSKeyword_inset = 295,
+        eCSSKeyword_inside = 296,
+        eCSSKeyword_inter_character = 297,
+        eCSSKeyword_inter_word = 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 nsStyleStructID_nsStyleStructID_DUMMY1: root::nsStyleStructID =
         nsStyleStructID::nsStyleStructID_None;
     pub const nsStyleStructID_eStyleStruct_Font: root::nsStyleStructID =
         nsStyleStructID::nsStyleStructID_Inherited_Start;
     pub const nsStyleStructID_nsStyleStructID_DUMMY2: root::nsStyleStructID =
         nsStyleStructID::eStyleStruct_Variables;
     pub const nsStyleStructID_eStyleStruct_Background: root::nsStyleStructID =
@@ -16677,85 +16767,85 @@ pub mod root {
                     ));
     }
     impl Clone for nsCSSProps_KTableEntry {
         fn clone(&self) -> Self { *self }
     }
     extern "C" {
         #[link_name = "_ZN10nsCSSProps9kSIDTableE"]
         pub static mut nsCSSProps_kSIDTable:
-                   [root::nsStyleStructID; 316usize];
+                   [root::nsStyleStructID; 317usize];
     }
     extern "C" {
         #[link_name = "_ZN10nsCSSProps18kKeywordTableTableE"]
         pub static mut nsCSSProps_kKeywordTableTable:
-                   [*const root::nsCSSProps_KTableEntry; 316usize];
+                   [*const root::nsCSSProps_KTableEntry; 317usize];
     }
     extern "C" {
         #[link_name = "_ZN10nsCSSProps14kAnimTypeTableE"]
         pub static mut nsCSSProps_kAnimTypeTable:
-                   [root::nsStyleAnimType; 316usize];
+                   [root::nsStyleAnimType; 317usize];
     }
     extern "C" {
         #[link_name = "_ZN10nsCSSProps23kStyleStructOffsetTableE"]
-        pub static mut nsCSSProps_kStyleStructOffsetTable: [isize; 316usize];
+        pub static mut nsCSSProps_kStyleStructOffsetTable: [isize; 317usize];
     }
     extern "C" {
         #[link_name = "_ZN10nsCSSProps11kFlagsTableE"]
-        pub static mut nsCSSProps_kFlagsTable: [u32; 364usize];
+        pub static mut nsCSSProps_kFlagsTable: [u32; 365usize];
     }
     extern "C" {
         #[link_name = "_ZN10nsCSSProps19kParserVariantTableE"]
-        pub static mut nsCSSProps_kParserVariantTable: [u32; 316usize];
+        pub static mut nsCSSProps_kParserVariantTable: [u32; 317usize];
     }
     extern "C" {
         #[link_name = "_ZN10nsCSSProps17kSubpropertyTableE"]
         pub static mut nsCSSProps_kSubpropertyTable:
                    [*const root::nsCSSPropertyID; 48usize];
     }
     extern "C" {
         #[link_name = "_ZN10nsCSSProps26gShorthandsContainingTableE"]
         pub static mut nsCSSProps_gShorthandsContainingTable:
-                   [*mut root::nsCSSPropertyID; 316usize];
+                   [*mut root::nsCSSPropertyID; 317usize];
     }
     extern "C" {
         #[link_name = "_ZN10nsCSSProps25gShorthandsContainingPoolE"]
         pub static mut nsCSSProps_gShorthandsContainingPool:
                    *mut root::nsCSSPropertyID;
     }
     extern "C" {
         #[link_name = "_ZN10nsCSSProps22gPropertyCountInStructE"]
         pub static mut nsCSSProps_gPropertyCountInStruct: [usize; 24usize];
     }
     extern "C" {
         #[link_name = "_ZN10nsCSSProps22gPropertyIndexInStructE"]
-        pub static mut nsCSSProps_gPropertyIndexInStruct: [usize; 316usize];
+        pub static mut nsCSSProps_gPropertyIndexInStruct: [usize; 317usize];
     }
     extern "C" {
         #[link_name = "_ZN10nsCSSProps18kLogicalGroupTableE"]
         pub static mut nsCSSProps_kLogicalGroupTable:
                    [*const root::nsCSSPropertyID; 9usize];
     }
     extern "C" {
         #[link_name = "_ZN10nsCSSProps16gPropertyEnabledE"]
-        pub static mut nsCSSProps_gPropertyEnabled: [bool; 472usize];
+        pub static mut nsCSSProps_gPropertyEnabled: [bool; 473usize];
     }
     extern "C" {
         #[link_name = "_ZN10nsCSSProps13kIDLNameTableE"]
         pub static mut nsCSSProps_kIDLNameTable:
-                   [*const ::std::os::raw::c_char; 364usize];
+                   [*const ::std::os::raw::c_char; 365usize];
     }
     extern "C" {
         #[link_name = "_ZN10nsCSSProps25kIDLNameSortPositionTableE"]
-        pub static mut nsCSSProps_kIDLNameSortPositionTable: [i32; 364usize];
+        pub static mut nsCSSProps_kIDLNameSortPositionTable: [i32; 365usize];
     }
     extern "C" {
         #[link_name = "_ZN10nsCSSProps19gPropertyUseCounterE"]
         pub static mut nsCSSProps_gPropertyUseCounter:
-                   [root::mozilla::UseCounter; 316usize];
+                   [root::mozilla::UseCounter; 317usize];
     }
     extern "C" {
         #[link_name = "_ZN10nsCSSProps25kAnimationDirectionKTableE"]
         pub static mut nsCSSProps_kAnimationDirectionKTable:
                    [root::nsCSSProps_KTableEntry; 0usize];
     }
     extern "C" {
         #[link_name = "_ZN10nsCSSProps24kAnimationFillModeKTableE"]
@@ -17508,26 +17598,36 @@ pub mod root {
                    [root::nsCSSProps_KTableEntry; 0usize];
     }
     extern "C" {
         #[link_name = "_ZN10nsCSSProps29kTextEmphasisStyleShapeKTableE"]
         pub static mut nsCSSProps_kTextEmphasisStyleShapeKTable:
                    [root::nsCSSProps_KTableEntry; 0usize];
     }
     extern "C" {
+        #[link_name = "_ZN10nsCSSProps18kTextJustifyKTableE"]
+        pub static mut nsCSSProps_kTextJustifyKTable:
+                   [root::nsCSSProps_KTableEntry; 0usize];
+    }
+    extern "C" {
         #[link_name = "_ZN10nsCSSProps22kTextOrientationKTableE"]
         pub static mut nsCSSProps_kTextOrientationKTable:
                    [root::nsCSSProps_KTableEntry; 0usize];
     }
     extern "C" {
         #[link_name = "_ZN10nsCSSProps19kTextOverflowKTableE"]
         pub static mut nsCSSProps_kTextOverflowKTable:
                    [root::nsCSSProps_KTableEntry; 0usize];
     }
     extern "C" {
+        #[link_name = "_ZN10nsCSSProps21kTextSizeAdjustKTableE"]
+        pub static mut nsCSSProps_kTextSizeAdjustKTable:
+                   [root::nsCSSProps_KTableEntry; 0usize];
+    }
+    extern "C" {
         #[link_name = "_ZN10nsCSSProps20kTextTransformKTableE"]
         pub static mut nsCSSProps_kTextTransformKTable:
                    [root::nsCSSProps_KTableEntry; 0usize];
     }
     extern "C" {
         #[link_name = "_ZN10nsCSSProps18kTouchActionKTableE"]
         pub static mut nsCSSProps_kTouchActionKTable:
                    [root::nsCSSProps_KTableEntry; 0usize];
@@ -20408,17 +20508,20 @@ pub mod root {
     #[repr(C)]
     #[derive(Debug, Copy, Clone)]
     pub struct nsIReflowCallback([u8; 0]);
     #[repr(C)]
     #[derive(Debug, Copy, Clone)]
     pub struct nsCSSFrameConstructor([u8; 0]);
     #[repr(C)]
     #[derive(Debug, Copy, Clone)]
-    pub struct nsWeakFrame([u8; 0]);
+    pub struct AutoWeakFrame([u8; 0]);
+    #[repr(C)]
+    #[derive(Debug, Copy, Clone)]
+    pub struct WeakFrame([u8; 0]);
     /**
  * Interface for frames that are scrollable. This interface exposes
  * APIs for examining scroll state, observing changes to scroll state,
  * and triggering scrolling.
  */
     #[repr(C)]
     #[derive(Debug, Copy)]
     pub struct nsIScrollableFrame {
@@ -23227,16 +23330,17 @@ pub mod root {
                     , "::" , stringify ! ( mTextDecorationColor ) ));
     }
     #[repr(C)]
     #[derive(Debug)]
     pub struct nsStyleText {
         pub mTextAlign: u8,
         pub mTextAlignLast: u8,
         pub _bitfield_1: u8,
+        pub mTextJustify: root::mozilla::StyleTextJustify,
         pub mTextTransform: u8,
         pub mWhiteSpace: u8,
         pub mWordBreak: u8,
         pub mOverflowWrap: u8,
         pub mHyphens: root::mozilla::StyleHyphens,
         pub mRubyAlign: u8,
         pub mRubyPosition: u8,
         pub mTextSizeAdjust: u8,
@@ -23254,154 +23358,159 @@ pub mod root {
         pub mLineHeight: root::nsStyleCoord,
         pub mTextIndent: root::nsStyleCoord,
         pub mWebkitTextStrokeWidth: root::nscoord,
         pub mTextShadow: root::RefPtr<root::nsCSSShadowArray>,
         pub mTextEmphasisStyleString: ::nsstring::nsStringRepr,
     }
     #[test]
     fn bindgen_test_layout_nsStyleText() {
-        assert_eq!(::std::mem::size_of::<nsStyleText>() , 152usize , concat !
+        assert_eq!(::std::mem::size_of::<nsStyleText>() , 160usize , concat !
                    ( "Size of: " , stringify ! ( nsStyleText ) ));
         assert_eq! (::std::mem::align_of::<nsStyleText>() , 8usize , concat !
                     ( "Alignment of " , stringify ! ( nsStyleText ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) . mTextAlign as *
                     const _ as usize } , 0usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mTextAlign ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) . mTextAlignLast as *
                     const _ as usize } , 1usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mTextAlignLast ) ));
         assert_eq! (unsafe {
+                    & ( * ( 0 as * const nsStyleText ) ) . mTextJustify as *
+                    const _ as usize } , 3usize , concat ! (
+                    "Alignment of field: " , stringify ! ( nsStyleText ) ,
+                    "::" , stringify ! ( mTextJustify ) ));
+        assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) . mTextTransform as *
-                    const _ as usize } , 3usize , concat ! (
+                    const _ as usize } , 4usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mTextTransform ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) . mWhiteSpace as *
-                    const _ as usize } , 4usize , concat ! (
+                    const _ as usize } , 5usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mWhiteSpace ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) . mWordBreak as *
-                    const _ as usize } , 5usize , concat ! (
+                    const _ as usize } , 6usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mWordBreak ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) . mOverflowWrap as *
-                    const _ as usize } , 6usize , concat ! (
+                    const _ as usize } , 7usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mOverflowWrap ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) . mHyphens as * const
-                    _ as usize } , 7usize , concat ! (
+                    _ as usize } , 8usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mHyphens ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) . mRubyAlign as *
-                    const _ as usize } , 8usize , concat ! (
+                    const _ as usize } , 9usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mRubyAlign ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) . mRubyPosition as *
-                    const _ as usize } , 9usize , concat ! (
+                    const _ as usize } , 10usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mRubyPosition ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) . mTextSizeAdjust as
-                    * const _ as usize } , 10usize , concat ! (
+                    * const _ as usize } , 11usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mTextSizeAdjust ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) . mTextCombineUpright
-                    as * const _ as usize } , 11usize , concat ! (
+                    as * const _ as usize } , 12usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mTextCombineUpright ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) .
                     mControlCharacterVisibility as * const _ as usize } ,
-                    12usize , concat ! (
+                    13usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mControlCharacterVisibility ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) .
-                    mTextEmphasisPosition as * const _ as usize } , 13usize ,
+                    mTextEmphasisPosition as * const _ as usize } , 14usize ,
                     concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mTextEmphasisPosition ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) . mTextEmphasisStyle
-                    as * const _ as usize } , 14usize , concat ! (
+                    as * const _ as usize } , 15usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mTextEmphasisStyle ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) . mTextRendering as *
-                    const _ as usize } , 15usize , concat ! (
+                    const _ as usize } , 16usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mTextRendering ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) . mTextEmphasisColor
-                    as * const _ as usize } , 16usize , concat ! (
+                    as * const _ as usize } , 20usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mTextEmphasisColor ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) .
-                    mWebkitTextFillColor as * const _ as usize } , 24usize ,
+                    mWebkitTextFillColor as * const _ as usize } , 28usize ,
                     concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mWebkitTextFillColor ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) .
-                    mWebkitTextStrokeColor as * const _ as usize } , 32usize ,
+                    mWebkitTextStrokeColor as * const _ as usize } , 36usize ,
                     concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mWebkitTextStrokeColor ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) . mTabSize as * const
-                    _ as usize } , 40usize , concat ! (
+                    _ as usize } , 48usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mTabSize ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) . mWordSpacing as *
-                    const _ as usize } , 56usize , concat ! (
+                    const _ as usize } , 64usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mWordSpacing ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) . mLetterSpacing as *
-                    const _ as usize } , 72usize , concat ! (
+                    const _ as usize } , 80usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mLetterSpacing ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) . mLineHeight as *
-                    const _ as usize } , 88usize , concat ! (
+                    const _ as usize } , 96usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mLineHeight ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) . mTextIndent as *
-                    const _ as usize } , 104usize , concat ! (
+                    const _ as usize } , 112usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mTextIndent ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) .
-                    mWebkitTextStrokeWidth as * const _ as usize } , 120usize
+                    mWebkitTextStrokeWidth as * const _ as usize } , 128usize
                     , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mWebkitTextStrokeWidth ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) . mTextShadow as *
-                    const _ as usize } , 128usize , concat ! (
+                    const _ as usize } , 136usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mTextShadow ) ));
         assert_eq! (unsafe {
                     & ( * ( 0 as * const nsStyleText ) ) .
                     mTextEmphasisStyleString as * const _ as usize } ,
-                    136usize , concat ! (
+                    144usize , concat ! (
                     "Alignment of field: " , stringify ! ( nsStyleText ) ,
                     "::" , stringify ! ( mTextEmphasisStyleString ) ));
     }
     #[repr(C)]
     #[derive(Debug, Copy)]
     pub struct nsStyleImageOrientation {
         pub mOrientation: u8,
     }
@@ -25412,193 +25521,182 @@ pub mod root {
                    root::JS::Heap<*mut root::JSObject> ) ));
         assert_eq!(::std::mem::align_of::<root::JS::Heap<*mut root::JSObject>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::JS::Heap<*mut root::JSObject> ) ));
     }
     #[test]
     fn __bindgen_test_layout_template_15() {
-        assert_eq!(::std::mem::size_of::<root::JS::Heap<*mut root::JSScript>>()
-                   , 8usize , concat ! (
-                   "Size of template specialization: " , stringify ! (
-                   root::JS::Heap<*mut root::JSScript> ) ));
-        assert_eq!(::std::mem::align_of::<root::JS::Heap<*mut root::JSScript>>()
-                   , 8usize , concat ! (
-                   "Alignment of template specialization: " , stringify ! (
-                   root::JS::Heap<*mut root::JSScript> ) ));
-    }
-    #[test]
-    fn __bindgen_test_layout_template_16() {
         assert_eq!(::std::mem::size_of::<root::nsReadingIterator<u16>>() ,
                    24usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsReadingIterator<u16> ) ));
         assert_eq!(::std::mem::align_of::<root::nsReadingIterator<u16>>() ,
                    8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsReadingIterator<u16> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_17() {
+    fn __bindgen_test_layout_template_16() {
         assert_eq!(::std::mem::size_of::<root::nsWritingIterator<u16>>() ,
                    24usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsWritingIterator<u16> ) ));
         assert_eq!(::std::mem::align_of::<root::nsWritingIterator<u16>>() ,
                    8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsWritingIterator<u16> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_18() {
+    fn __bindgen_test_layout_template_17() {
         assert_eq!(::std::mem::size_of::<root::nsReadingIterator<::std::os::raw::c_char>>()
                    , 24usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsReadingIterator<::std::os::raw::c_char> ) ));
         assert_eq!(::std::mem::align_of::<root::nsReadingIterator<::std::os::raw::c_char>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsReadingIterator<::std::os::raw::c_char> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_19() {
+    fn __bindgen_test_layout_template_18() {
         assert_eq!(::std::mem::size_of::<root::nsWritingIterator<::std::os::raw::c_char>>()
                    , 24usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsWritingIterator<::std::os::raw::c_char> ) ));
         assert_eq!(::std::mem::align_of::<root::nsWritingIterator<::std::os::raw::c_char>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsWritingIterator<::std::os::raw::c_char> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_20() {
+    fn __bindgen_test_layout_template_19() {
         assert_eq!(::std::mem::size_of::<root::mozilla::DefaultDelete<[root::nsAString_internal; 0usize]>>()
                    , 1usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::mozilla::DefaultDelete<[root::nsAString_internal; 0usize]>
                    ) ));
         assert_eq!(::std::mem::align_of::<root::mozilla::DefaultDelete<[root::nsAString_internal; 0usize]>>()
                    , 1usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::mozilla::DefaultDelete<[root::nsAString_internal; 0usize]>
                    ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_21() {
+    fn __bindgen_test_layout_template_20() {
         assert_eq!(::std::mem::size_of::<root::mozilla::DefaultDelete<[root::nsACString_internal; 0usize]>>()
                    , 1usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::mozilla::DefaultDelete<[root::nsACString_internal; 0usize]>
                    ) ));
         assert_eq!(::std::mem::align_of::<root::mozilla::DefaultDelete<[root::nsACString_internal; 0usize]>>()
                    , 1usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::mozilla::DefaultDelete<[root::nsACString_internal; 0usize]>
                    ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_22() {
+    fn __bindgen_test_layout_template_21() {
         assert_eq!(::std::mem::size_of::<root::nsTArray<root::nsCString>>() ,
                    8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsTArray<root::nsCString> ) ));
         assert_eq!(::std::mem::align_of::<root::nsTArray<root::nsCString>>() ,
                    8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsTArray<root::nsCString> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_23() {
+    fn __bindgen_test_layout_template_22() {
         assert_eq!(::std::mem::size_of::<root::nsTArray<::nsstring::nsStringRepr>>() ,
                    8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsTArray<::nsstring::nsStringRepr> ) ));
         assert_eq!(::std::mem::align_of::<root::nsTArray<::nsstring::nsStringRepr>>() ,
                    8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsTArray<::nsstring::nsStringRepr> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_24() {
+    fn __bindgen_test_layout_template_23() {
         assert_eq!(::std::mem::size_of::<root::mozilla::binding_danger::TErrorResult<root::mozilla::binding_danger::JustAssertCleanupPolicy>>()
                    , 16usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::mozilla::binding_danger::TErrorResult<root::mozilla::binding_danger::JustAssertCleanupPolicy>
                    ) ));
         assert_eq!(::std::mem::align_of::<root::mozilla::binding_danger::TErrorResult<root::mozilla::binding_danger::JustAssertCleanupPolicy>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::mozilla::binding_danger::TErrorResult<root::mozilla::binding_danger::JustAssertCleanupPolicy>
                    ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_25() {
+    fn __bindgen_test_layout_template_24() {
         assert_eq!(::std::mem::size_of::<root::already_AddRefed<root::nsStringBuffer>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsStringBuffer> ) ));
         assert_eq!(::std::mem::align_of::<root::already_AddRefed<root::nsStringBuffer>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsStringBuffer> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_26() {
+    fn __bindgen_test_layout_template_25() {
         assert_eq!(::std::mem::size_of::<root::already_AddRefed<root::nsIAtom>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsIAtom> ) ));
         assert_eq!(::std::mem::align_of::<root::already_AddRefed<root::nsIAtom>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsIAtom> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_27() {
+    fn __bindgen_test_layout_template_26() {
         assert_eq!(::std::mem::size_of::<root::JS::Heap<root::JS::Value>>() ,
                    8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::JS::Heap<root::JS::Value> ) ));
         assert_eq!(::std::mem::align_of::<root::JS::Heap<root::JS::Value>>() ,
                    8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::JS::Heap<root::JS::Value> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_28() {
+    fn __bindgen_test_layout_template_27() {
         assert_eq!(::std::mem::size_of::<root::JS::DeletePolicy<root::JSErrorNotes_Note>>()
                    , 1usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::JS::DeletePolicy<root::JSErrorNotes_Note> ) ));
         assert_eq!(::std::mem::align_of::<root::JS::DeletePolicy<root::JSErrorNotes_Note>>()
                    , 1usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::JS::DeletePolicy<root::JSErrorNotes_Note> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_29() {
+    fn __bindgen_test_layout_template_28() {
         assert_eq!(::std::mem::size_of::<root::mozilla::UniquePtr<root::JSErrorNotes_Note,
                                                root::JS::DeletePolicy<root::JSErrorNotes_Note>>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::mozilla::UniquePtr<root::JSErrorNotes_Note,
                          root::JS::DeletePolicy<root::JSErrorNotes_Note>>
                    ) ));
         assert_eq!(::std::mem::align_of::<root::mozilla::UniquePtr<root::JSErrorNotes_Note,
                                                 root::JS::DeletePolicy<root::JSErrorNotes_Note>>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::mozilla::UniquePtr<root::JSErrorNotes_Note,
                          root::JS::DeletePolicy<root::JSErrorNotes_Note>>
                    ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_30() {
+    fn __bindgen_test_layout_template_29() {
         assert_eq!(::std::mem::size_of::<root::std::iterator<root::std::input_iterator_tag,
                                           root::mozilla::UniquePtr<root::JSErrorNotes_Note,
                                                                    root::JS::DeletePolicy<root::JSErrorNotes_Note>>,
                                           ::std::os::raw::c_long,
                                           *mut root::mozilla::UniquePtr<root::JSErrorNotes_Note,
                                                                         root::JS::DeletePolicy<root::JSErrorNotes_Note>>,
                                           *mut root::mozilla::UniquePtr<root::JSErrorNotes_Note,
                                                                         root::JS::DeletePolicy<root::JSErrorNotes_Note>>>>()
@@ -25629,317 +25727,328 @@ pub mod root {
                     ::std::os::raw::c_long,
                     *mut root::mozilla::UniquePtr<root::JSErrorNotes_Note,
                                                   root::JS::DeletePolicy<root::JSErrorNotes_Note>>,
                     *mut root::mozilla::UniquePtr<root::JSErrorNotes_Note,
                                                   root::JS::DeletePolicy<root::JSErrorNotes_Note>>>
                    ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_31() {
+    fn __bindgen_test_layout_template_30() {
         assert_eq!(::std::mem::size_of::<root::already_AddRefed<root::nsIRunnable>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsIRunnable> ) ));
         assert_eq!(::std::mem::align_of::<root::already_AddRefed<root::nsIRunnable>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsIRunnable> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_32() {
+    fn __bindgen_test_layout_template_31() {
         assert_eq!(::std::mem::size_of::<root::nsCOMPtr<root::nsIPrincipal>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsCOMPtr<root::nsIPrincipal> ) ));
         assert_eq!(::std::mem::align_of::<root::nsCOMPtr<root::nsIPrincipal>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsCOMPtr<root::nsIPrincipal> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_33() {
+    fn __bindgen_test_layout_template_32() {
         assert_eq!(::std::mem::size_of::<[u64; 28usize]>() , 224usize , concat
                    ! (
                    "Size of template specialization: " , stringify ! (
                    [u64; 28usize] ) ));
         assert_eq!(::std::mem::align_of::<[u64; 28usize]>() , 8usize , concat
                    ! (
                    "Alignment of template specialization: " , stringify ! (
                    [u64; 28usize] ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_34() {
+    fn __bindgen_test_layout_template_33() {
         assert_eq!(::std::mem::size_of::<root::already_AddRefed<root::nsIURI>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsIURI> ) ));
         assert_eq!(::std::mem::align_of::<root::already_AddRefed<root::nsIURI>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsIURI> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_35() {
+    fn __bindgen_test_layout_template_34() {
         assert_eq!(::std::mem::size_of::<root::nsTArray<root::RefPtr<root::mozilla::dom::AnonymousContent>>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsTArray<root::RefPtr<root::mozilla::dom::AnonymousContent>>
                    ) ));
         assert_eq!(::std::mem::align_of::<root::nsTArray<root::RefPtr<root::mozilla::dom::AnonymousContent>>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsTArray<root::RefPtr<root::mozilla::dom::AnonymousContent>>
                    ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_36() {
+    fn __bindgen_test_layout_template_35() {
         assert_eq!(::std::mem::size_of::<root::RefPtr<root::mozilla::StyleSheet>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::RefPtr<root::mozilla::StyleSheet> ) ));
         assert_eq!(::std::mem::align_of::<root::RefPtr<root::mozilla::StyleSheet>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::RefPtr<root::mozilla::StyleSheet> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_37() {
+    fn __bindgen_test_layout_template_36() {
         assert_eq!(::std::mem::size_of::<root::RefPtr<root::mozilla::dom::Element>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::RefPtr<root::mozilla::dom::Element> ) ));
         assert_eq!(::std::mem::align_of::<root::RefPtr<root::mozilla::dom::Element>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::RefPtr<root::mozilla::dom::Element> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_38() {
+    fn __bindgen_test_layout_template_37() {
         assert_eq!(::std::mem::size_of::<root::nsTArray<root::RefPtr<root::mozilla::dom::Element>>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsTArray<root::RefPtr<root::mozilla::dom::Element>> )
                    ));
         assert_eq!(::std::mem::align_of::<root::nsTArray<root::RefPtr<root::mozilla::dom::Element>>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsTArray<root::RefPtr<root::mozilla::dom::Element>> )
                    ));
     }
     #[test]
-    fn __bindgen_test_layout_template_39() {
+    fn __bindgen_test_layout_template_38() {
         assert_eq!(::std::mem::size_of::<root::nsCOMPtr<root::nsIObserver>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsCOMPtr<root::nsIObserver> ) ));
         assert_eq!(::std::mem::align_of::<root::nsCOMPtr<root::nsIObserver>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsCOMPtr<root::nsIObserver> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_40() {
+    fn __bindgen_test_layout_template_39() {
         assert_eq!(::std::mem::size_of::<root::nsTArray<root::nsCOMPtr<root::nsIObserver>>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsTArray<root::nsCOMPtr<root::nsIObserver>> ) ));
         assert_eq!(::std::mem::align_of::<root::nsTArray<root::nsCOMPtr<root::nsIObserver>>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsTArray<root::nsCOMPtr<root::nsIObserver>> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_41() {
+    fn __bindgen_test_layout_template_40() {
         assert_eq!(::std::mem::size_of::<root::already_AddRefed<root::nsIDocument>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsIDocument> ) ));
         assert_eq!(::std::mem::align_of::<root::already_AddRefed<root::nsIDocument>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsIDocument> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_42() {
+    fn __bindgen_test_layout_template_41() {
         assert_eq!(::std::mem::size_of::<root::already_AddRefed<root::nsContentList>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsContentList> ) ));
         assert_eq!(::std::mem::align_of::<root::already_AddRefed<root::nsContentList>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsContentList> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_43() {
+    fn __bindgen_test_layout_template_42() {
         assert_eq!(::std::mem::size_of::<root::already_AddRefed<root::nsINode>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsINode> ) ));
         assert_eq!(::std::mem::align_of::<root::already_AddRefed<root::nsINode>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsINode> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_44() {
+    fn __bindgen_test_layout_template_43() {
         assert_eq!(::std::mem::size_of::<root::nsCOMPtr<root::nsIWeakReference>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsCOMPtr<root::nsIWeakReference> ) ));
         assert_eq!(::std::mem::align_of::<root::nsCOMPtr<root::nsIWeakReference>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsCOMPtr<root::nsIWeakReference> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_45() {
+    fn __bindgen_test_layout_template_44() {
         assert_eq!(::std::mem::size_of::<u64>() , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! ( u64 )
                    ));
         assert_eq!(::std::mem::align_of::<u64>() , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    u64 ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_46() {
+    fn __bindgen_test_layout_template_45() {
         assert_eq!(::std::mem::size_of::<root::nsTArray<root::nsRect>>() ,
                    8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsTArray<root::nsRect> ) ));
         assert_eq!(::std::mem::align_of::<root::nsTArray<root::nsRect>>() ,
                    8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsTArray<root::nsRect> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_47() {
+    fn __bindgen_test_layout_template_46() {
         assert_eq!(::std::mem::size_of::<[u64; 28usize]>() , 224usize , concat
                    ! (
                    "Size of template specialization: " , stringify ! (
                    [u64; 28usize] ) ));
         assert_eq!(::std::mem::align_of::<[u64; 28usize]>() , 8usize , concat
                    ! (
                    "Alignment of template specialization: " , stringify ! (
                    [u64; 28usize] ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_48() {
+    fn __bindgen_test_layout_template_47() {
         assert_eq!(::std::mem::size_of::<root::already_AddRefed<root::mozilla::dom::NodeInfo>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::already_AddRefed<root::mozilla::dom::NodeInfo> ) ));
         assert_eq!(::std::mem::align_of::<root::already_AddRefed<root::mozilla::dom::NodeInfo>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::already_AddRefed<root::mozilla::dom::NodeInfo> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_49() {
+    fn __bindgen_test_layout_template_48() {
         assert_eq!(::std::mem::size_of::<root::nsTArray<*mut root::nsIContent>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsTArray<*mut root::nsIContent> ) ));
         assert_eq!(::std::mem::align_of::<root::nsTArray<*mut root::nsIContent>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsTArray<*mut root::nsIContent> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_50() {
+    fn __bindgen_test_layout_template_49() {
         assert_eq!(::std::mem::size_of::<[u64; 5usize]>() , 40usize , concat !
                    (
                    "Size of template specialization: " , stringify ! (
                    [u64; 5usize] ) ));
         assert_eq!(::std::mem::align_of::<[u64; 5usize]>() , 8usize , concat !
                    (
                    "Alignment of template specialization: " , stringify ! (
                    [u64; 5usize] ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_51() {
+    fn __bindgen_test_layout_template_50() {
         assert_eq!(::std::mem::size_of::<root::mozilla::DefaultDelete<root::mozilla::dom::TimeoutManager>>()
                    , 1usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::mozilla::DefaultDelete<root::mozilla::dom::TimeoutManager>
                    ) ));
         assert_eq!(::std::mem::align_of::<root::mozilla::DefaultDelete<root::mozilla::dom::TimeoutManager>>()
                    , 1usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::mozilla::DefaultDelete<root::mozilla::dom::TimeoutManager>
                    ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_52() {
+    fn __bindgen_test_layout_template_51() {
         assert_eq!(::std::mem::size_of::<root::already_AddRefed<root::nsISupports>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsISupports> ) ));
         assert_eq!(::std::mem::align_of::<root::already_AddRefed<root::nsISupports>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsISupports> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_53() {
+    fn __bindgen_test_layout_template_52() {
         assert_eq!(::std::mem::size_of::<root::nsCOMPtr<root::nsIRunnable>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsCOMPtr<root::nsIRunnable> ) ));
         assert_eq!(::std::mem::align_of::<root::nsCOMPtr<root::nsIRunnable>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsCOMPtr<root::nsIRunnable> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_54() {
+    fn __bindgen_test_layout_template_53() {
         assert_eq!(::std::mem::size_of::<root::nsAutoPtr<root::nsMediaQuery>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsAutoPtr<root::nsMediaQuery> ) ));
         assert_eq!(::std::mem::align_of::<root::nsAutoPtr<root::nsMediaQuery>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsAutoPtr<root::nsMediaQuery> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_55() {
+    fn __bindgen_test_layout_template_54() {
         assert_eq!(::std::mem::size_of::<root::already_AddRefed<root::nsIContent>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsIContent> ) ));
         assert_eq!(::std::mem::align_of::<root::already_AddRefed<root::nsIContent>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsIContent> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_56() {
+    fn __bindgen_test_layout_template_55() {
         assert_eq!(::std::mem::size_of::<[u64; 5usize]>() , 40usize , concat !
                    (
                    "Size of template specialization: " , stringify ! (
                    [u64; 5usize] ) ));
         assert_eq!(::std::mem::align_of::<[u64; 5usize]>() , 8usize , concat !
                    (
                    "Alignment of template specialization: " , stringify ! (
                    [u64; 5usize] ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_57() {
+    fn __bindgen_test_layout_template_56() {
         assert_eq!(::std::mem::size_of::<root::mozilla::OwningNonNull<root::nsINode>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::mozilla::OwningNonNull<root::nsINode> ) ));
         assert_eq!(::std::mem::align_of::<root::mozilla::OwningNonNull<root::nsINode>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::mozilla::OwningNonNull<root::nsINode> ) ));
     }
     #[test]
+    fn __bindgen_test_layout_template_57() {
+        assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat !
+                   (
+                   "Size of template specialization: " , stringify ! (
+                   [u32; 2usize] ) ));
+        assert_eq!(::std::mem::align_of::<[u32; 2usize]>() , 4usize , concat !
+                   (
+                   "Alignment of template specialization: " , stringify ! (
+                   [u32; 2usize] ) ));
+    }
+    #[test]
     fn __bindgen_test_layout_template_58() {
         assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat !
                    (
                    "Size of template specialization: " , stringify ! (
                    [u32; 2usize] ) ));
         assert_eq!(::std::mem::align_of::<[u32; 2usize]>() , 4usize , concat !
                    (
                    "Alignment of template specialization: " , stringify ! (
@@ -25953,57 +26062,57 @@ pub mod root {
                    [u32; 2usize] ) ));
         assert_eq!(::std::mem::align_of::<[u32; 2usize]>() , 4usize , concat !
                    (
                    "Alignment of template specialization: " , stringify ! (
                    [u32; 2usize] ) ));
     }
     #[test]
     fn __bindgen_test_layout_template_60() {
+        assert_eq!(::std::mem::size_of::<[u32; 4usize]>() , 16usize , concat !
+                   (
+                   "Size of template specialization: " , stringify ! (
+                   [u32; 4usize] ) ));
+        assert_eq!(::std::mem::align_of::<[u32; 4usize]>() , 4usize , concat !
+                   (
+                   "Alignment of template specialization: " , stringify ! (
+                   [u32; 4usize] ) ));
+    }
+    #[test]
+    fn __bindgen_test_layout_template_61() {
         assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat !
                    (
                    "Size of template specialization: " , stringify ! (
                    [u32; 2usize] ) ));
         assert_eq!(::std::mem::align_of::<[u32; 2usize]>() , 4usize , concat !
                    (
                    "Alignment of template specialization: " , stringify ! (
                    [u32; 2usize] ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_61() {
-        assert_eq!(::std::mem::size_of::<[u32; 4usize]>() , 16usize , concat !
-                   (
-                   "Size of template specialization: " , stringify ! (
-                   [u32; 4usize] ) ));
-        assert_eq!(::std::mem::align_of::<[u32; 4usize]>() , 4usize , concat !
-                   (
-                   "Alignment of template specialization: " , stringify ! (
-                   [u32; 4usize] ) ));
-    }
-    #[test]
     fn __bindgen_test_layout_template_62() {
         assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat !
                    (
                    "Size of template specialization: " , stringify ! (
                    [u32; 2usize] ) ));
         assert_eq!(::std::mem::align_of::<[u32; 2usize]>() , 4usize , concat !
                    (
                    "Alignment of template specialization: " , stringify ! (
                    [u32; 2usize] ) ));
     }
     #[test]
     fn __bindgen_test_layout_template_63() {
-        assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat !
+        assert_eq!(::std::mem::size_of::<[u32; 4usize]>() , 16usize , concat !
                    (
                    "Size of template specialization: " , stringify ! (
-                   [u32; 2usize] ) ));
-        assert_eq!(::std::mem::align_of::<[u32; 2usize]>() , 4usize , concat !
+                   [u32; 4usize] ) ));
+        assert_eq!(::std::mem::align_of::<[u32; 4usize]>() , 4usize , concat !
                    (
                    "Alignment of template specialization: " , stringify ! (
-                   [u32; 2usize] ) ));
+                   [u32; 4usize] ) ));
     }
     #[test]
     fn __bindgen_test_layout_template_64() {
         assert_eq!(::std::mem::size_of::<[u32; 4usize]>() , 16usize , concat !
                    (
                    "Size of template specialization: " , stringify ! (
                    [u32; 4usize] ) ));
         assert_eq!(::std::mem::align_of::<[u32; 4usize]>() , 4usize , concat !
@@ -26019,35 +26128,35 @@ pub mod root {
                    [u32; 4usize] ) ));
         assert_eq!(::std::mem::align_of::<[u32; 4usize]>() , 4usize , concat !
                    (
                    "Alignment of template specialization: " , stringify ! (
                    [u32; 4usize] ) ));
     }
     #[test]
     fn __bindgen_test_layout_template_66() {
-        assert_eq!(::std::mem::size_of::<[u32; 4usize]>() , 16usize , concat !
-                   (
-                   "Size of template specialization: " , stringify ! (
-                   [u32; 4usize] ) ));
-        assert_eq!(::std::mem::align_of::<[u32; 4usize]>() , 4usize , concat !
-                   (
-                   "Alignment of template specialization: " , stringify ! (
-                   [u32; 4usize] ) ));
-    }
-    #[test]
-    fn __bindgen_test_layout_template_67() {
         assert_eq!(::std::mem::size_of::<u32>() , 4usize , concat ! (
                    "Size of template specialization: " , stringify ! ( u32 )
                    ));
         assert_eq!(::std::mem::align_of::<u32>() , 4usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    u32 ) ));
     }
     #[test]
+    fn __bindgen_test_layout_template_67() {
+        assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat !
+                   (
+                   "Size of template specialization: " , stringify ! (
+                   [u32; 2usize] ) ));
+        assert_eq!(::std::mem::align_of::<[u32; 2usize]>() , 4usize , concat !
+                   (
+                   "Alignment of template specialization: " , stringify ! (
+                   [u32; 2usize] ) ));
+    }
+    #[test]
     fn __bindgen_test_layout_template_68() {
         assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat !
                    (
                    "Size of template specialization: " , stringify ! (
                    [u32; 2usize] ) ));
         assert_eq!(::std::mem::align_of::<[u32; 2usize]>() , 4usize , concat !
                    (
                    "Alignment of template specialization: " , stringify ! (
@@ -26061,404 +26170,393 @@ pub mod root {
                    [u32; 2usize] ) ));
         assert_eq!(::std::mem::align_of::<[u32; 2usize]>() , 4usize , concat !
                    (
                    "Alignment of template specialization: " , stringify ! (
                    [u32; 2usize] ) ));
     }
     #[test]
     fn __bindgen_test_layout_template_70() {
-        assert_eq!(::std::mem::size_of::<[u32; 2usize]>() , 8usize , concat !
-                   (
-                   "Size of template specialization: " , stringify ! (
-                   [u32; 2usize] ) ));
-        assert_eq!(::std::mem::align_of::<[u32; 2usize]>() , 4usize , concat !
-                   (
-                   "Alignment of template specialization: " , stringify ! (
-                   [u32; 2usize] ) ));
-    }
-    #[test]
-    fn __bindgen_test_layout_template_71() {
         assert_eq!(::std::mem::size_of::<root::nsTArray<f64>>() , 8usize ,
                    concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsTArray<f64> ) ));
         assert_eq!(::std::mem::align_of::<root::nsTArray<f64>>() , 8usize ,
                    concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsTArray<f64> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_72() {
+    fn __bindgen_test_layout_template_71() {
         assert_eq!(::std::mem::size_of::<root::RefPtr<root::mozilla::dom::DOMIntersectionObserverEntry>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::RefPtr<root::mozilla::dom::DOMIntersectionObserverEntry>
                    ) ));
         assert_eq!(::std::mem::align_of::<root::RefPtr<root::mozilla::dom::DOMIntersectionObserverEntry>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::RefPtr<root::mozilla::dom::DOMIntersectionObserverEntry>
                    ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_73() {
+    fn __bindgen_test_layout_template_72() {
         assert_eq!(::std::mem::size_of::<root::nsTArray<root::RefPtr<root::mozilla::dom::DOMIntersectionObserverEntry>>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsTArray<root::RefPtr<root::mozilla::dom::DOMIntersectionObserverEntry>>
                    ) ));
         assert_eq!(::std::mem::align_of::<root::nsTArray<root::RefPtr<root::mozilla::dom::DOMIntersectionObserverEntry>>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsTArray<root::RefPtr<root::mozilla::dom::DOMIntersectionObserverEntry>>
                    ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_74() {
+    fn __bindgen_test_layout_template_73() {
         assert_eq!(::std::mem::size_of::<root::nsTArray<root::mozilla::FontFamilyName>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsTArray<root::mozilla::FontFamilyName> ) ));
         assert_eq!(::std::mem::align_of::<root::nsTArray<root::mozilla::FontFamilyName>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsTArray<root::mozilla::FontFamilyName> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_75() {
+    fn __bindgen_test_layout_template_74() {
         assert_eq!(::std::mem::size_of::<root::nsTArray<::std::os::raw::c_uint>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsTArray<::std::os::raw::c_uint> ) ));
         assert_eq!(::std::mem::align_of::<root::nsTArray<::std::os::raw::c_uint>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsTArray<::std::os::raw::c_uint> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_76() {
+    fn __bindgen_test_layout_template_75() {
         assert_eq!(::std::mem::size_of::<root::mozilla::DefaultDelete<root::ProxyBehaviour>>()
                    , 1usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::mozilla::DefaultDelete<root::ProxyBehaviour> ) ));
         assert_eq!(::std::mem::align_of::<root::mozilla::DefaultDelete<root::ProxyBehaviour>>()
                    , 1usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::mozilla::DefaultDelete<root::ProxyBehaviour> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_77() {
+    fn __bindgen_test_layout_template_76() {
         assert_eq!(::std::mem::size_of::<root::nsMainThreadPtrHolder<root::nsIURI>>()
                    , 24usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsMainThreadPtrHolder<root::nsIURI> ) ));
         assert_eq!(::std::mem::align_of::<root::nsMainThreadPtrHolder<root::nsIURI>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsMainThreadPtrHolder<root::nsIURI> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_78() {
+    fn __bindgen_test_layout_template_77() {
         assert_eq!(::std::mem::size_of::<root::already_AddRefed<root::nsMainThreadPtrHolder<root::nsIURI>>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsMainThreadPtrHolder<root::nsIURI>>
                    ) ));
         assert_eq!(::std::mem::align_of::<root::already_AddRefed<root::nsMainThreadPtrHolder<root::nsIURI>>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsMainThreadPtrHolder<root::nsIURI>>
                    ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_79() {
+    fn __bindgen_test_layout_template_78() {
         assert_eq!(::std::mem::size_of::<root::nsMainThreadPtrHolder<root::nsIPrincipal>>()
                    , 24usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsMainThreadPtrHolder<root::nsIPrincipal> ) ));
         assert_eq!(::std::mem::align_of::<root::nsMainThreadPtrHolder<root::nsIPrincipal>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsMainThreadPtrHolder<root::nsIPrincipal> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_80() {
+    fn __bindgen_test_layout_template_79() {
         assert_eq!(::std::mem::size_of::<root::already_AddRefed<root::nsMainThreadPtrHolder<root::nsIPrincipal>>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsMainThreadPtrHolder<root::nsIPrincipal>>
                    ) ));
         assert_eq!(::std::mem::align_of::<root::already_AddRefed<root::nsMainThreadPtrHolder<root::nsIPrincipal>>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsMainThreadPtrHolder<root::nsIPrincipal>>
                    ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_81() {
+    fn __bindgen_test_layout_template_80() {
         assert_eq!(::std::mem::size_of::<root::mozilla::DefaultDelete<root::nsCSSValueList>>()
                    , 1usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::mozilla::DefaultDelete<root::nsCSSValueList> ) ));
         assert_eq!(::std::mem::align_of::<root::mozilla::DefaultDelete<root::nsCSSValueList>>()
                    , 1usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::mozilla::DefaultDelete<root::nsCSSValueList> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_82() {
+    fn __bindgen_test_layout_template_81() {
         assert_eq!(::std::mem::size_of::<root::mozilla::UniquePtr<root::nsCSSValueList,
                                                root::mozilla::DefaultDelete<root::nsCSSValueList>>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::mozilla::UniquePtr<root::nsCSSValueList,
                          root::mozilla::DefaultDelete<root::nsCSSValueList>>
                    ) ));
         assert_eq!(::std::mem::align_of::<root::mozilla::UniquePtr<root::nsCSSValueList,
                                                 root::mozilla::DefaultDelete<root::nsCSSValueList>>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::mozilla::UniquePtr<root::nsCSSValueList,
                          root::mozilla::DefaultDelete<root::nsCSSValueList>>
                    ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_83() {
+    fn __bindgen_test_layout_template_82() {
         assert_eq!(::std::mem::size_of::<root::mozilla::DefaultDelete<root::nsCSSValuePairList>>()
                    , 1usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::mozilla::DefaultDelete<root::nsCSSValuePairList> )
                    ));
         assert_eq!(::std::mem::align_of::<root::mozilla::DefaultDelete<root::nsCSSValuePairList>>()
                    , 1usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::mozilla::DefaultDelete<root::nsCSSValuePairList> )
                    ));
     }
     #[test]
-    fn __bindgen_test_layout_template_84() {
+    fn __bindgen_test_layout_template_83() {
         assert_eq!(::std::mem::size_of::<root::mozilla::UniquePtr<root::nsCSSValuePairList,
                                                root::mozilla::DefaultDelete<root::nsCSSValuePairList>>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::mozilla::UniquePtr<root::nsCSSValuePairList,
                          root::mozilla::DefaultDelete<root::nsCSSValuePairList>>
                    ) ));
         assert_eq!(::std::mem::align_of::<root::mozilla::UniquePtr<root::nsCSSValuePairList,
                                                 root::mozilla::DefaultDelete<root::nsCSSValuePairList>>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::mozilla::UniquePtr<root::nsCSSValuePairList,
                          root::mozilla::DefaultDelete<root::nsCSSValuePairList>>
                    ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_85() {
+    fn __bindgen_test_layout_template_84() {
         assert_eq!(::std::mem::size_of::<root::nsTArray<root::mozilla::FramePropertyTable_PropertyValue>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsTArray<root::mozilla::FramePropertyTable_PropertyValue>
                    ) ));
         assert_eq!(::std::mem::align_of::<root::nsTArray<root::mozilla::FramePropertyTable_PropertyValue>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsTArray<root::mozilla::FramePropertyTable_PropertyValue>
                    ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_86() {
+    fn __bindgen_test_layout_template_85() {
         assert_eq!(::std::mem::size_of::<root::nsPtrHashKey<root::nsIFrame>>()
                    , 16usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsPtrHashKey<root::nsIFrame> ) ));
         assert_eq!(::std::mem::align_of::<root::nsPtrHashKey<root::nsIFrame>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsPtrHashKey<root::nsIFrame> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_87() {
+    fn __bindgen_test_layout_template_86() {
         assert_eq!(::std::mem::size_of::<[u64; 5usize]>() , 40usize , concat !
                    (
                    "Size of template specialization: " , stringify ! (
                    [u64; 5usize] ) ));
         assert_eq!(::std::mem::align_of::<[u64; 5usize]>() , 8usize , concat !
                    (
                    "Alignment of template specialization: " , stringify ! (
                    [u64; 5usize] ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_88() {
+    fn __bindgen_test_layout_template_87() {
         assert_eq!(::std::mem::size_of::<root::mozilla::OwningNonNull<root::mozilla::EffectCompositor_AnimationStyleRuleProcessor>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::mozilla::OwningNonNull<root::mozilla::EffectCompositor_AnimationStyleRuleProcessor>
                    ) ));
         assert_eq!(::std::mem::align_of::<root::mozilla::OwningNonNull<root::mozilla::EffectCompositor_AnimationStyleRuleProcessor>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::mozilla::OwningNonNull<root::mozilla::EffectCompositor_AnimationStyleRuleProcessor>
                    ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_89() {
+    fn __bindgen_test_layout_template_88() {
         assert_eq!(::std::mem::size_of::<[u64; 2usize]>() , 16usize , concat !
                    (
                    "Size of template specialization: " , stringify ! (
                    [u64; 2usize] ) ));
         assert_eq!(::std::mem::align_of::<[u64; 2usize]>() , 8usize , concat !
                    (
                    "Alignment of template specialization: " , stringify ! (
                    [u64; 2usize] ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_90() {
+    fn __bindgen_test_layout_template_89() {
         assert_eq!(::std::mem::size_of::<u64>() , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! ( u64 )
                    ));
         assert_eq!(::std::mem::align_of::<u64>() , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    u64 ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_91() {
+    fn __bindgen_test_layout_template_90() {
         assert_eq!(::std::mem::size_of::<[u32; 3usize]>() , 12usize , concat !
                    (
                    "Size of template specialization: " , stringify ! (
                    [u32; 3usize] ) ));
         assert_eq!(::std::mem::align_of::<[u32; 3usize]>() , 4usize , concat !
                    (
                    "Alignment of template specialization: " , stringify ! (
                    [u32; 3usize] ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_92() {
+    fn __bindgen_test_layout_template_91() {
         assert_eq!(::std::mem::size_of::<root::already_AddRefed<root::nsStyleImageRequest>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsStyleImageRequest> ) ));
         assert_eq!(::std::mem::align_of::<root::already_AddRefed<root::nsStyleImageRequest>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::already_AddRefed<root::nsStyleImageRequest> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_93() {
+    fn __bindgen_test_layout_template_92() {
         assert_eq!(::std::mem::size_of::<root::mozilla::DefaultDelete<root::nsStyleSides>>()
                    , 1usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::mozilla::DefaultDelete<root::nsStyleSides> ) ));
         assert_eq!(::std::mem::align_of::<root::mozilla::DefaultDelete<root::nsStyleSides>>()
                    , 1usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::mozilla::DefaultDelete<root::nsStyleSides> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_94() {
+    fn __bindgen_test_layout_template_93() {
         assert_eq!(::std::mem::size_of::<root::mozilla::UniquePtr<root::nsStyleSides,
                                                root::mozilla::DefaultDelete<root::nsStyleSides>>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::mozilla::UniquePtr<root::nsStyleSides,
                          root::mozilla::DefaultDelete<root::nsStyleSides>>
                    ) ));
         assert_eq!(::std::mem::align_of::<root::mozilla::UniquePtr<root::nsStyleSides,
                                                 root::mozilla::DefaultDelete<root::nsStyleSides>>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::mozilla::UniquePtr<root::nsStyleSides,
                          root::mozilla::DefaultDelete<root::nsStyleSides>>
                    ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_95() {
+    fn __bindgen_test_layout_template_94() {
         assert_eq!(::std::mem::size_of::<root::mozilla::DefaultDelete<root::CachedBorderImageData>>()
                    , 1usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::mozilla::DefaultDelete<root::CachedBorderImageData> )
                    ));
         assert_eq!(::std::mem::align_of::<root::mozilla::DefaultDelete<root::CachedBorderImageData>>()
                    , 1usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::mozilla::DefaultDelete<root::CachedBorderImageData> )
                    ));
     }
     #[test]
-    fn __bindgen_test_layout_template_96() {
+    fn __bindgen_test_layout_template_95() {
         assert_eq!(::std::mem::size_of::<root::std::pair<::nsstring::nsStringRepr, ::nsstring::nsStringRepr>>()
                    , 32usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::std::pair<::nsstring::nsStringRepr, ::nsstring::nsStringRepr> ) ));
         assert_eq!(::std::mem::align_of::<root::std::pair<::nsstring::nsStringRepr, ::nsstring::nsStringRepr>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::std::pair<::nsstring::nsStringRepr, ::nsstring::nsStringRepr> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_97() {
+    fn __bindgen_test_layout_template_96() {
         assert_eq!(::std::mem::size_of::<root::nsTArray<root::std::pair<::nsstring::nsStringRepr,
                                                      ::nsstring::nsStringRepr>>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsTArray<root::std::pair<::nsstring::nsStringRepr, ::nsstring::nsStringRepr>>
                    ) ));
         assert_eq!(::std::mem::align_of::<root::nsTArray<root::std::pair<::nsstring::nsStringRepr,
                                                       ::nsstring::nsStringRepr>>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsTArray<root::std::pair<::nsstring::nsStringRepr, ::nsstring::nsStringRepr>>
                    ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_98() {
+    fn __bindgen_test_layout_template_97() {
         assert_eq!(::std::mem::size_of::<[u64; 18usize]>() , 144usize , concat
                    ! (
                    "Size of template specialization: " , stringify ! (
                    [u64; 18usize] ) ));
         assert_eq!(::std::mem::align_of::<[u64; 18usize]>() , 8usize , concat
                    ! (
                    "Alignment of template specialization: " , stringify ! (
                    [u64; 18usize] ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_99() {
+    fn __bindgen_test_layout_template_98() {
         assert_eq!(::std::mem::size_of::<root::nsTArray<root::mozilla::DisplayItemClip_RoundedRect>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsTArray<root::mozilla::DisplayItemClip_RoundedRect>
                    ) ));
         assert_eq!(::std::mem::align_of::<root::nsTArray<root::mozilla::DisplayItemClip_RoundedRect>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsTArray<root::mozilla::DisplayItemClip_RoundedRect>
                    ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_100() {
+    fn __bindgen_test_layout_template_99() {
         assert_eq!(::std::mem::size_of::<root::RefPtr<root::mozilla::dom::DOMRect>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::RefPtr<root::mozilla::dom::DOMRect> ) ));
         assert_eq!(::std::mem::align_of::<root::RefPtr<root::mozilla::dom::DOMRect>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::RefPtr<root::mozilla::dom::DOMRect> ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_101() {
+    fn __bindgen_test_layout_template_100() {
         assert_eq!(::std::mem::size_of::<u64>() , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! ( u64 )
                    ));
         assert_eq!(::std::mem::align_of::<u64>() , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    u64 ) ));
     }
     #[test]
-    fn __bindgen_test_layout_template_102() {
+    fn __bindgen_test_layout_template_101() {
         assert_eq!(::std::mem::size_of::<root::nsTArray<*mut root::mozilla::css::DocumentRule>>()
                    , 8usize , concat ! (
                    "Size of template specialization: " , stringify ! (
                    root::nsTArray<*mut root::mozilla::css::DocumentRule> ) ));
         assert_eq!(::std::mem::align_of::<root::nsTArray<*mut root::mozilla::css::DocumentRule>>()
                    , 8usize , concat ! (
                    "Alignment of template specialization: " , stringify ! (
                    root::nsTArray<*mut root::mozilla::css::DocumentRule> ) ));