changeset 9298:1ec931c99157

Merge
author mullan
date Mon, 17 Feb 2014 11:37:46 -0500
parents b3796d383181 3a102a5cc9d1
children b1dee0bdc704
files src/share/classes/sun/misc/Service.java src/share/classes/sun/misc/ServiceConfigurationError.java src/share/native/sun/nio/ch/genSocketOptionRegistry.c src/solaris/classes/sun/awt/X11/generator/WrapperGenerator.java src/solaris/classes/sun/awt/X11/generator/functions.txt src/solaris/classes/sun/awt/X11/generator/sizes.32 src/solaris/classes/sun/awt/X11/generator/sizes.64 src/solaris/classes/sun/awt/X11/generator/sizes.64-solaris-i386 src/solaris/classes/sun/awt/X11/generator/xlibtypes.txt src/solaris/native/sun/nio/fs/genSolarisConstants.c src/solaris/native/sun/nio/fs/genUnixConstants.c
diffstat 94 files changed, 6329 insertions(+), 6823 deletions(-) [+]
line wrap: on
line diff
--- a/make/BuildJdk.gmk	Mon Feb 17 11:36:40 2014 -0500
+++ b/make/BuildJdk.gmk	Mon Feb 17 11:37:46 2014 -0500
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 1995, 2012, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1995, 2014, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -42,8 +42,8 @@
 # Include Profile information
 include ProfileNames.gmk
 
-# Include the corresponding custom file, if present.
--include $(CUSTOM_MAKE_DIR)/BuildJdk.gmk
+# Hook to include the corresponding custom file, if present.
+$(eval $(call IncludeCustomExtension, jdk, BuildJdk.gmk))
 
 import: import-only
 import-only:
--- a/make/CompileJavaClasses.gmk	Mon Feb 17 11:36:40 2014 -0500
+++ b/make/CompileJavaClasses.gmk	Mon Feb 17 11:37:46 2014 -0500
@@ -100,8 +100,6 @@
   EXCLUDES += com/oracle/security
 endif
 
-EXFILES += WrapperGenerator.java
-
 ifneq ($(OPENJDK_TARGET_OS), windows)
   # Exclude Window security related files in src/share/classes
   EXFILES += NTLoginModule.java \
@@ -239,11 +237,6 @@
   EXFILES += sun/nio/fs/PollingWatchService.java
 endif
 
-# TODO: Fix when converting NIO
-# Exclude *-linux-arm.java and *-linux-ppc.java from closed.
-EXFILES += -linux-arm.java \
-    -linux-ppc.java
-
 ifeq ($(OPENJDK_TARGET_OS), windows)
   EXFILES += sun/nio/ch/AbstractPollSelectorImpl.java \
       sun/nio/ch/PollSelectorProvider.java \
--- a/make/CopyFiles.gmk	Mon Feb 17 11:36:40 2014 -0500
+++ b/make/CopyFiles.gmk	Mon Feb 17 11:37:46 2014 -0500
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2014, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -570,4 +570,5 @@
 
 ##########################################################################################
 
--include $(CUSTOM_MAKE_DIR)/CopyFiles.gmk
+# Hook to include the corresponding custom file, if present.
+$(eval $(call IncludeCustomExtension, jdk, CopyFiles.gmk))
--- a/make/CreateJars.gmk	Mon Feb 17 11:36:40 2014 -0500
+++ b/make/CreateJars.gmk	Mon Feb 17 11:37:46 2014 -0500
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2014, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -745,7 +745,8 @@
 
 ##########################################################################################
 
--include $(CUSTOM_MAKE_DIR)/CreateJars.gmk
+# Hook to include the corresponding custom file, if present.
+$(eval $(call IncludeCustomExtension, jdk, CreateJars.gmk))
 
 ##########################################################################################
 
--- a/make/Images.gmk	Mon Feb 17 11:36:40 2014 -0500
+++ b/make/Images.gmk	Mon Feb 17 11:37:46 2014 -0500
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2014, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -783,4 +783,5 @@
 
 .PHONY: default images jre-image jdk-image
 
--include $(CUSTOM_MAKE_DIR)/Images.gmk
+# Hook to include the corresponding custom file, if present.
+$(eval $(call IncludeCustomExtension, jdk, Images.gmk))
--- a/make/Tools.gmk	Mon Feb 17 11:36:40 2014 -0500
+++ b/make/Tools.gmk	Mon Feb 17 11:37:46 2014 -0500
@@ -26,17 +26,11 @@
 # Cache all finds needed for this file. Only used on windows.
 $(eval $(call FillCacheFind, $(JDK_TOPDIR)/make/src/classes))
 
-TOOLS_SRC := $(JDK_TOPDIR)/make/src/classes
-
-ifeq ($(findstring $(OPENJDK_TARGET_OS),windows macosx),)
-  TOOLS_SRC += $(JDK_TOPDIR)/src/solaris/classes/sun/awt/X11/generator
-endif
-
 # The exception handling of swing beaninfo which have the own tool directory
 ifeq (, $(BUILD_TOOLS))
   $(eval $(call SetupJavaCompilation,BUILD_TOOLS, \
       SETUP := GENERATE_OLDBYTECODE, \
-      SRC := $(TOOLS_SRC), \
+      SRC := $(JDK_TOPDIR)/make/src/classes, \
       BIN := $(JDK_OUTPUTDIR)/btclasses))
 endif
 
@@ -111,7 +105,7 @@
     build.tools.generatenimbus.Generator
 
 TOOL_WRAPPERGENERATOR = $(JAVA) -cp $(JDK_OUTPUTDIR)/btclasses \
-    WrapperGenerator
+    build.tools.x11wrappergen.WrapperGenerator
 
 TOOL_AWT_TOBIN = $(JAVA) -Djava.awt.headless=true -cp $(JDK_OUTPUTDIR)/btclasses \
     build.tools.icondata.awt.ToBin
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/make/data/x11wrappergen/functions.txt	Mon Feb 17 11:37:46 2014 -0500
@@ -0,0 +1,26 @@
+!XGetWindowProperty|int
+    w                long
+    property         Atom
+    long_offset      long
+    long_length      long
+    delete           Bool
+    req_type         Atom
+    actual_type      Atom out
+    actual_format    int out
+    number_of_items  long out
+    bytes_after      long out
+    data             pointer out free
+!XQueryTree|int
+    w                long
+    root             long out
+    parent           long out
+    children         pointer out free
+    nchildren        int out
+!XTranslateCoordinates|int
+    scr_w            long
+    dest_w           long 
+    src_x            int
+    src_y            int
+    dest_x           int out
+    dest_y           int out
+    child            long out
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/make/data/x11wrappergen/sizes.32	Mon Feb 17 11:37:46 2014 -0500
@@ -0,0 +1,1016 @@
+long	4
+int	4
+short	2
+ptr	4
+Bool	4
+Atom	4
+Window	4
+XExtData.number	0
+XExtData.next	4
+XExtData.free_private	8
+XExtData.private_data	12
+XExtData	16
+XIMStringConversionCallbackStruct.position	0
+XIMStringConversionCallbackStruct.direction	4
+XIMStringConversionCallbackStruct.operation	8
+XIMStringConversionCallbackStruct.factor	10
+XIMStringConversionCallbackStruct.text	12
+XIMStringConversionCallbackStruct	16
+XkbNewKeyboardNotifyEvent.type	0
+XkbNewKeyboardNotifyEvent.serial	4
+XkbNewKeyboardNotifyEvent.send_event	8
+XkbNewKeyboardNotifyEvent.display	12
+XkbNewKeyboardNotifyEvent.time	16
+XkbNewKeyboardNotifyEvent.xkb_type	20
+XkbNewKeyboardNotifyEvent.device	24
+XkbNewKeyboardNotifyEvent.old_device	28
+XkbNewKeyboardNotifyEvent.min_key_code	32
+XkbNewKeyboardNotifyEvent.max_key_code	36
+XkbNewKeyboardNotifyEvent.old_min_key_code	40
+XkbNewKeyboardNotifyEvent.old_max_key_code	44
+XkbNewKeyboardNotifyEvent.changed	48
+XkbNewKeyboardNotifyEvent.req_major	52
+XkbNewKeyboardNotifyEvent.req_minor	53
+XkbNewKeyboardNotifyEvent	56
+XTimeCoord.time	0
+XTimeCoord.x	4
+XTimeCoord.y	6
+XTimeCoord	8
+XkbCompatMapNotifyEvent.type	0
+XkbCompatMapNotifyEvent.serial	4
+XkbCompatMapNotifyEvent.send_event	8
+XkbCompatMapNotifyEvent.display	12
+XkbCompatMapNotifyEvent.time	16
+XkbCompatMapNotifyEvent.xkb_type	20
+XkbCompatMapNotifyEvent.device	24
+XkbCompatMapNotifyEvent.changed_groups	28
+XkbCompatMapNotifyEvent.first_si	32
+XkbCompatMapNotifyEvent.num_si	36
+XkbCompatMapNotifyEvent.num_total_si	40
+XkbCompatMapNotifyEvent	44
+XIMStatusDrawCallbackStruct.type	0
+XIMStatusDrawCallbackStruct.data	4
+XIMStatusDrawCallbackStruct	8
+XKeyboardControl.key_click_percent	0
+XKeyboardControl.bell_percent	4
+XKeyboardControl.bell_pitch	8
+XKeyboardControl.bell_duration	12
+XKeyboardControl.led	16
+XKeyboardControl.led_mode	20
+XKeyboardControl.key	24
+XKeyboardControl.auto_repeat_mode	28
+XKeyboardControl	32
+XSelectionClearEvent.type	0
+XSelectionClearEvent.serial	4
+XSelectionClearEvent.send_event	8
+XSelectionClearEvent.display	12
+XSelectionClearEvent.window	16
+XSelectionClearEvent.selection	20
+XSelectionClearEvent.time	24
+XSelectionClearEvent	28
+XWindowChanges.x	0
+XWindowChanges.y	4
+XWindowChanges.width	8
+XWindowChanges.height	12
+XWindowChanges.border_width	16
+XWindowChanges.sibling	20
+XWindowChanges.stack_mode	24
+XWindowChanges	28
+XIMPreeditCaretCallbackStruct.position	0
+XIMPreeditCaretCallbackStruct.direction	4
+XIMPreeditCaretCallbackStruct.style	8
+XIMPreeditCaretCallbackStruct	12
+XOMCharSetList.charset_count	0
+XOMCharSetList.charset_list	4
+XOMCharSetList	8
+XOMFontInfo.num_font	0
+XOMFontInfo.font_struct_list	4
+XOMFontInfo.font_name_list	8
+XOMFontInfo	12
+AwtScreenData.numConfigs	0
+AwtScreenData.root	4
+AwtScreenData.whitepixel	8
+AwtScreenData.blackpixel	12
+AwtScreenData.defaultConfig	16
+AwtScreenData.configs	20
+AwtScreenData	24
+XIMHotKeyTrigger.keysym	0
+XIMHotKeyTrigger.modifier	4
+XIMHotKeyTrigger.modifier_mask	8
+XIMHotKeyTrigger	12
+XCirculateEvent.type	0
+XCirculateEvent.serial	4
+XCirculateEvent.send_event	8
+XCirculateEvent.display	12
+XCirculateEvent.event	16
+XCirculateEvent.window	20
+XCirculateEvent.place	24
+XCirculateEvent	28
+Screen.ext_data	0
+Screen.display	4
+Screen.root	8
+Screen.width	12
+Screen.height	16
+Screen.mwidth	20
+Screen.mheight	24
+Screen.ndepths	28
+Screen.depths	32
+Screen.root_depth	36
+Screen.root_visual	40
+Screen.default_gc	44
+Screen.cmap	48
+Screen.white_pixel	52
+Screen.black_pixel	56
+Screen.max_maps	60
+Screen.min_maps	64
+Screen.backing_store	68
+Screen.save_unders	72
+Screen.root_input_mask	76
+Screen	80
+XMapRequestEvent.type	0
+XMapRequestEvent.serial	4
+XMapRequestEvent.send_event	8
+XMapRequestEvent.display	12
+XMapRequestEvent.parent	16
+XMapRequestEvent.window	20
+XMapRequestEvent	24
+XIMText.length	0
+XIMText.feedback	4
+XIMText.encoding_is_wchar	8
+XIMText.string	12
+XIMText	16
+XGraphicsExposeEvent.type	0
+XGraphicsExposeEvent.serial	4
+XGraphicsExposeEvent.send_event	8
+XGraphicsExposeEvent.display	12
+XGraphicsExposeEvent.drawable	16
+XGraphicsExposeEvent.x	20
+XGraphicsExposeEvent.y	24
+XGraphicsExposeEvent.width	28
+XGraphicsExposeEvent.height	32
+XGraphicsExposeEvent.count	36
+XGraphicsExposeEvent.major_code	40
+XGraphicsExposeEvent.minor_code	44
+XGraphicsExposeEvent	48
+XEvent.type	0
+XEvent.xany	0
+XEvent.xkey	0
+XEvent.xbutton	0
+XEvent.xmotion	0
+XEvent.xcrossing	0
+XEvent.xfocus	0
+XEvent.xexpose	0
+XEvent.xgraphicsexpose	0
+XEvent.xnoexpose	0
+XEvent.xvisibility	0
+XEvent.xcreatewindow	0
+XEvent.xdestroywindow	0
+XEvent.xunmap	0
+XEvent.xmap	0
+XEvent.xmaprequest	0
+XEvent.xreparent	0
+XEvent.xconfigure	0
+XEvent.xgravity	0
+XEvent.xresizerequest	0
+XEvent.xconfigurerequest	0
+XEvent.xcirculate	0
+XEvent.xcirculaterequest	0
+XEvent.xproperty	0
+XEvent.xselectionclear	0
+XEvent.xselectionrequest	0
+XEvent.xselection	0
+XEvent.xcolormap	0
+XEvent.xclient	0
+XEvent.xmapping	0
+XEvent.xerror	0
+XEvent.xkeymap	0
+XEvent.pad	0
+XEvent	96
+XRenderDirectFormat.red	0
+XRenderDirectFormat.redMask	2
+XRenderDirectFormat.green	4
+XRenderDirectFormat.greenMask	6
+XRenderDirectFormat.blue	8
+XRenderDirectFormat.blueMask	10
+XRenderDirectFormat.alpha	12
+XRenderDirectFormat.alphaMask	14
+XRenderDirectFormat	16
+ColorData.awt_Colors	0
+ColorData.awt_numICMcolors	4
+ColorData.awt_icmLUT	8
+ColorData.awt_icmLUT2Colors	12
+ColorData.img_grays	16
+ColorData.img_clr_tbl	20
+ColorData.img_oda_red	24
+ColorData.img_oda_green	28
+ColorData.img_oda_blue	32
+ColorData.pGrayInverseLutData	36
+ColorData.screendata	40
+ColorData	44
+XFontStruct.ext_data	0
+XFontStruct.fid	4
+XFontStruct.direction	8
+XFontStruct.min_char_or_byte2	12
+XFontStruct.max_char_or_byte2	16
+XFontStruct.min_byte1	20
+XFontStruct.max_byte1	24
+XFontStruct.all_chars_exist	28
+XFontStruct.n_properties	36
+XFontStruct.properties	40
+XFontStruct.min_bounds	44
+XFontStruct.max_bounds	56
+XFontStruct.per_char	68
+XFontStruct.ascent	72
+XFontStruct.descent	76
+XFontStruct	80
+XExtCodes.extension	0
+XExtCodes.major_opcode	4
+XExtCodes.first_event	8
+XExtCodes.first_error	12
+XExtCodes	16
+XFontSetExtents.max_ink_extent	0
+XFontSetExtents.max_logical_extent	8
+XFontSetExtents	16
+XSelectionEvent.type	0
+XSelectionEvent.serial	4
+XSelectionEvent.send_event	8
+XSelectionEvent.display	12
+XSelectionEvent.requestor	16
+XSelectionEvent.selection	20
+XSelectionEvent.target	24
+XSelectionEvent.property	28
+XSelectionEvent.time	32
+XSelectionEvent	36
+XArc.x	0
+XArc.y	2
+XArc.width	4
+XArc.height	6
+XArc.angle1	8
+XArc.angle2	10
+XArc	12
+XErrorEvent.type	0
+XErrorEvent.display	4
+XErrorEvent.resourceid	8
+XErrorEvent.serial	12
+XErrorEvent.error_code	16
+XErrorEvent.request_code	17
+XErrorEvent.minor_code	18
+XErrorEvent	20
+XConfigureRequestEvent.type	0
+XConfigureRequestEvent.serial	4
+XConfigureRequestEvent.send_event	8
+XConfigureRequestEvent.display	12
+XConfigureRequestEvent.parent	16
+XConfigureRequestEvent.window	20
+XConfigureRequestEvent.x	24
+XConfigureRequestEvent.y	28
+XConfigureRequestEvent.width	32
+XConfigureRequestEvent.height	36
+XConfigureRequestEvent.border_width	40
+XConfigureRequestEvent.above	44
+XConfigureRequestEvent.detail	48
+XConfigureRequestEvent.value_mask	52
+XConfigureRequestEvent	56
+ScreenFormat.ext_data	0
+ScreenFormat.depth	4
+ScreenFormat.bits_per_pixel	8
+ScreenFormat.scanline_pad	12
+ScreenFormat	16
+XButtonEvent.type	0
+XButtonEvent.serial	4
+XButtonEvent.send_event	8
+XButtonEvent.display	12
+XButtonEvent.window	16
+XButtonEvent.root	20
+XButtonEvent.subwindow	24
+XButtonEvent.time	28
+XButtonEvent.x	32
+XButtonEvent.y	36
+XButtonEvent.x_root	40
+XButtonEvent.y_root	44
+XButtonEvent.state	48
+XButtonEvent.button	52
+XButtonEvent.same_screen	56
+XButtonEvent	60
+XFontProp.name	0
+XFontProp.card32	4
+XFontProp	8
+XIMValuesList.count_values	0
+XIMValuesList.supported_values	4
+XIMValuesList	8
+XKeymapEvent.type	0
+XKeymapEvent.serial	4
+XKeymapEvent.send_event	8
+XKeymapEvent.display	12
+XKeymapEvent.window	16
+XKeymapEvent.key_vector	20
+XKeymapEvent	52
+XTextItem16.chars	0
+XTextItem16.nchars	4
+XTextItem16.delta	8
+XTextItem16.font	12
+XTextItem16	16
+XIMPreeditDrawCallbackStruct.caret	0
+XIMPreeditDrawCallbackStruct.chg_first	4
+XIMPreeditDrawCallbackStruct.chg_length	8
+XIMPreeditDrawCallbackStruct.text	12
+XIMPreeditDrawCallbackStruct	16
+XVisualInfo.visual	0
+XVisualInfo.visualid	4
+XVisualInfo.screen	8
+XVisualInfo.depth	12
+XVisualInfo.class	16
+XVisualInfo.red_mask	20
+XVisualInfo.green_mask	24
+XVisualInfo.blue_mask	28
+XVisualInfo.colormap_size	32
+XVisualInfo.bits_per_rgb	36
+XVisualInfo	40
+XkbControlsNotifyEvent.type	0
+XkbControlsNotifyEvent.serial	4
+XkbControlsNotifyEvent.send_event	8
+XkbControlsNotifyEvent.display	12
+XkbControlsNotifyEvent.time	16
+XkbControlsNotifyEvent.xkb_type	20
+XkbControlsNotifyEvent.device	24
+XkbControlsNotifyEvent.changed_ctrls	28
+XkbControlsNotifyEvent.enabled_ctrls	32
+XkbControlsNotifyEvent.enabled_ctrl_changes	36
+XkbControlsNotifyEvent.num_groups	40
+XkbControlsNotifyEvent.keycode	44
+XkbControlsNotifyEvent.event_type	45
+XkbControlsNotifyEvent.req_major	46
+XkbControlsNotifyEvent.req_minor	47
+XkbControlsNotifyEvent	48
+PropMwmHints.flags	0
+PropMwmHints.functions	4
+PropMwmHints.decorations	8
+PropMwmHints.inputMode	12
+PropMwmHints.status	16
+PropMwmHints	20
+XClientMessageEvent.type	0
+XClientMessageEvent.serial	4
+XClientMessageEvent.send_event	8
+XClientMessageEvent.display	12
+XClientMessageEvent.window	16
+XClientMessageEvent.message_type	20
+XClientMessageEvent.format	24
+XClientMessageEvent.data	28
+XClientMessageEvent	48
+XAnyEvent.type	0
+XAnyEvent.serial	4
+XAnyEvent.send_event	8
+XAnyEvent.display	12
+XAnyEvent.window	16
+XAnyEvent	20
+XkbIndicatorNotifyEvent.type	0
+XkbIndicatorNotifyEvent.serial	4
+XkbIndicatorNotifyEvent.send_event	8
+XkbIndicatorNotifyEvent.display	12
+XkbIndicatorNotifyEvent.time	16
+XkbIndicatorNotifyEvent.xkb_type	20
+XkbIndicatorNotifyEvent.device	24
+XkbIndicatorNotifyEvent.changed	28
+XkbIndicatorNotifyEvent.state	32
+XkbIndicatorNotifyEvent	36
+XIMPreeditStateNotifyCallbackStruct.state	0
+XIMPreeditStateNotifyCallbackStruct	4
+XkbAnyEvent.type	0
+XkbAnyEvent.serial	4
+XkbAnyEvent.send_event	8
+XkbAnyEvent.display	12
+XkbAnyEvent.time	16
+XkbAnyEvent.xkb_type	20
+XkbAnyEvent.device	24
+XkbAnyEvent	28
+XMotionEvent.type	0
+XMotionEvent.serial	4
+XMotionEvent.send_event	8
+XMotionEvent.display	12
+XMotionEvent.window	16
+XMotionEvent.root	20
+XMotionEvent.subwindow	24
+XMotionEvent.time	28
+XMotionEvent.x	32
+XMotionEvent.y	36
+XMotionEvent.x_root	40
+XMotionEvent.y_root	44
+XMotionEvent.state	48
+XMotionEvent.is_hint	52
+XMotionEvent.same_screen	56
+XMotionEvent	60
+XIMHotKeyTriggers.num_hot_key	0
+XIMHotKeyTriggers.key	4
+XIMHotKeyTriggers	8
+XIMStyles.count_styles	0
+XIMStyles.supported_styles	4
+XIMStyles	8
+XkbExtensionDeviceNotifyEvent.type	0
+XkbExtensionDeviceNotifyEvent.serial	4
+XkbExtensionDeviceNotifyEvent.send_event	8
+XkbExtensionDeviceNotifyEvent.display	12
+XkbExtensionDeviceNotifyEvent.time	16
+XkbExtensionDeviceNotifyEvent.xkb_type	20
+XkbExtensionDeviceNotifyEvent.device	24
+XkbExtensionDeviceNotifyEvent.reason	28
+XkbExtensionDeviceNotifyEvent.supported	32
+XkbExtensionDeviceNotifyEvent.unsupported	36
+XkbExtensionDeviceNotifyEvent.first_btn	40
+XkbExtensionDeviceNotifyEvent.num_btns	44
+XkbExtensionDeviceNotifyEvent.leds_defined	48
+XkbExtensionDeviceNotifyEvent.led_state	52
+XkbExtensionDeviceNotifyEvent.led_class	56
+XkbExtensionDeviceNotifyEvent.led_id	60
+XkbExtensionDeviceNotifyEvent	64
+XwcTextItem.chars	0
+XwcTextItem.nchars	4
+XwcTextItem.delta	8
+XwcTextItem.font_set	12
+XwcTextItem	16
+XClassHint.res_name	0
+XClassHint.res_class	4
+XClassHint	8
+XChar2b.byte1	0
+XChar2b.byte2	1
+XChar2b	2
+XSetWindowAttributes.background_pixmap	0
+XSetWindowAttributes.background_pixel	4
+XSetWindowAttributes.border_pixmap	8
+XSetWindowAttributes.border_pixel	12
+XSetWindowAttributes.bit_gravity	16
+XSetWindowAttributes.win_gravity	20
+XSetWindowAttributes.backing_store	24
+XSetWindowAttributes.backing_planes	28
+XSetWindowAttributes.backing_pixel	32
+XSetWindowAttributes.save_under	36
+XSetWindowAttributes.event_mask	40
+XSetWindowAttributes.do_not_propagate_mask	44
+XSetWindowAttributes.override_redirect	48
+XSetWindowAttributes.colormap	52
+XSetWindowAttributes.cursor	56
+XSetWindowAttributes	60
+XRenderPictFormat.id	0
+XRenderPictFormat.type	4
+XRenderPictFormat.depth	8
+XRenderPictFormat.direct	12
+XRenderPictFormat.colormap	28
+XRenderPictFormat	32
+XReparentEvent.type	0
+XReparentEvent.serial	4
+XReparentEvent.send_event	8
+XReparentEvent.display	12
+XReparentEvent.event	16
+XReparentEvent.window	20
+XReparentEvent.parent	24
+XReparentEvent.x	28
+XReparentEvent.y	32
+XReparentEvent.override_redirect	36
+XReparentEvent	40
+XCirculateRequestEvent.type	0
+XCirculateRequestEvent.serial	4
+XCirculateRequestEvent.send_event	8
+XCirculateRequestEvent.display	12
+XCirculateRequestEvent.parent	16
+XCirculateRequestEvent.window	20
+XCirculateRequestEvent.place	24
+XCirculateRequestEvent	28
+XImage.width	0
+XImage.height	4
+XImage.xoffset	8
+XImage.format	12
+XImage.data	16
+XImage.byte_order	20
+XImage.bitmap_unit	24
+XImage.bitmap_bit_order	28
+XImage.bitmap_pad	32
+XImage.depth	36
+XImage.bytes_per_line	40
+XImage.bits_per_pixel	44
+XImage.red_mask	48
+XImage.green_mask	52
+XImage.blue_mask	56
+XImage.obdata	60
+XImage.f.create_image	64
+XImage.f.destroy_image	68
+XImage.f.get_pixel	72
+XImage.f.put_pixel	76
+XImage.f.sub_image	80
+XImage.f.add_pixel	84
+XImage	88
+XKeyEvent.type	0
+XKeyEvent.serial	4
+XKeyEvent.send_event	8
+XKeyEvent.display	12
+XKeyEvent.window	16
+XKeyEvent.root	20
+XKeyEvent.subwindow	24
+XKeyEvent.time	28
+XKeyEvent.x	32
+XKeyEvent.y	36
+XKeyEvent.x_root	40
+XKeyEvent.y_root	44
+XKeyEvent.state	48
+XKeyEvent.keycode	52
+XKeyEvent.same_screen	56
+XKeyEvent	60
+XkbActionMessageEvent.type	0
+XkbActionMessageEvent.serial	4
+XkbActionMessageEvent.send_event	8
+XkbActionMessageEvent.display	12
+XkbActionMessageEvent.time	16
+XkbActionMessageEvent.xkb_type	20
+XkbActionMessageEvent.device	24
+XkbActionMessageEvent.keycode	28
+XkbActionMessageEvent.press	32
+XkbActionMessageEvent.key_event_follows	36
+XkbActionMessageEvent.group	40
+XkbActionMessageEvent.mods	44
+XkbActionMessageEvent.message	48
+XkbActionMessageEvent	56
+XdbeSwapInfo.swap_window	0
+XdbeSwapInfo.swap_action	4
+XdbeSwapInfo	8
+XTextItem.chars	0
+XTextItem.nchars	4
+XTextItem.delta	8
+XTextItem.font	12
+XTextItem	16
+XModifierKeymap.max_keypermod	0
+XModifierKeymap.modifiermap	4
+XModifierKeymap	8
+XCharStruct.lbearing	0
+XCharStruct.rbearing	2
+XCharStruct.width	4
+XCharStruct.ascent	6
+XCharStruct.descent	8
+XCharStruct.attributes	10
+XCharStruct	12
+XGravityEvent.type	0
+XGravityEvent.serial	4
+XGravityEvent.send_event	8
+XGravityEvent.display	12
+XGravityEvent.event	16
+XGravityEvent.window	20
+XGravityEvent.x	24
+XGravityEvent.y	28
+XGravityEvent	32
+Visual.ext_data	0
+Visual.visualid	4
+Visual.class	8
+Visual.red_mask	12
+Visual.green_mask	16
+Visual.blue_mask	20
+Visual.bits_per_rgb	24
+Visual.map_entries	28
+Visual	32
+XOMOrientation.num_orientation	0
+XOMOrientation.orientation	4
+XOMOrientation	8
+XkbAccessXNotifyEvent.type	0
+XkbAccessXNotifyEvent.serial	4
+XkbAccessXNotifyEvent.send_event	8
+XkbAccessXNotifyEvent.display	12
+XkbAccessXNotifyEvent.time	16
+XkbAccessXNotifyEvent.xkb_type	20
+XkbAccessXNotifyEvent.device	24
+XkbAccessXNotifyEvent.detail	28
+XkbAccessXNotifyEvent.keycode	32
+XkbAccessXNotifyEvent.sk_delay	36
+XkbAccessXNotifyEvent.debounce_delay	40
+XkbAccessXNotifyEvent	44
+XWindowAttributes.x	0
+XWindowAttributes.y	4
+XWindowAttributes.width	8
+XWindowAttributes.height	12
+XWindowAttributes.border_width	16
+XWindowAttributes.depth	20
+XWindowAttributes.visual	24
+XWindowAttributes.root	28
+XWindowAttributes.class	32
+XWindowAttributes.bit_gravity	36
+XWindowAttributes.win_gravity	40
+XWindowAttributes.backing_store	44
+XWindowAttributes.backing_planes	48
+XWindowAttributes.backing_pixel	52
+XWindowAttributes.save_under	56
+XWindowAttributes.colormap	60
+XWindowAttributes.map_installed	64
+XWindowAttributes.map_state	68
+XWindowAttributes.all_event_masks	72
+XWindowAttributes.your_event_mask	76
+XWindowAttributes.do_not_propagate_mask	80
+XWindowAttributes.override_redirect	84
+XWindowAttributes.screen	88
+XWindowAttributes	92
+XmbTextItem.chars	0
+XmbTextItem.nchars	4
+XmbTextItem.delta	8
+XmbTextItem.font_set	12
+XmbTextItem	16
+XMappingEvent.type	0
+XMappingEvent.serial	4
+XMappingEvent.send_event	8
+XMappingEvent.display	12
+XMappingEvent.window	16
+XMappingEvent.request	20
+XMappingEvent.first_keycode	24
+XMappingEvent.count	28
+XMappingEvent	32
+XSizeHints.flags	0
+XSizeHints.x	4
+XSizeHints.y	8
+XSizeHints.width	12
+XSizeHints.height	16
+XSizeHints.min_width	20
+XSizeHints.min_height	24
+XSizeHints.max_width	28
+XSizeHints.max_height	32
+XSizeHints.width_inc	36
+XSizeHints.height_inc	40
+XSizeHints.min_aspect.x	44
+XSizeHints.min_aspect.y	48
+XSizeHints.max_aspect.x	52
+XSizeHints.max_aspect.y	56
+XSizeHints.base_width	60
+XSizeHints.base_height	64
+XSizeHints.win_gravity	68
+XSizeHints	72
+XUnmapEvent.type	0
+XUnmapEvent.serial	4
+XUnmapEvent.send_event	8
+XUnmapEvent.display	12
+XUnmapEvent.event	16
+XUnmapEvent.window	20
+XUnmapEvent.from_configure	24
+XUnmapEvent	28
+awtImageData.Depth	0
+awtImageData.wsImageFormat	4
+awtImageData.clrdata	16
+awtImageData.convert	48
+awtImageData	304
+XkbStateNotifyEvent.type	0
+XkbStateNotifyEvent.serial	4
+XkbStateNotifyEvent.send_event	8
+XkbStateNotifyEvent.display	12
+XkbStateNotifyEvent.time	16
+XkbStateNotifyEvent.xkb_type	20
+XkbStateNotifyEvent.device	24
+XkbStateNotifyEvent.changed	28
+XkbStateNotifyEvent.group	32
+XkbStateNotifyEvent.base_group	36
+XkbStateNotifyEvent.latched_group	40
+XkbStateNotifyEvent.locked_group	44
+XkbStateNotifyEvent.mods	48
+XkbStateNotifyEvent.base_mods	52
+XkbStateNotifyEvent.latched_mods	56
+XkbStateNotifyEvent.locked_mods	60
+XkbStateNotifyEvent.compat_state	64
+XkbStateNotifyEvent.grab_mods	68
+XkbStateNotifyEvent.compat_grab_mods	69
+XkbStateNotifyEvent.lookup_mods	70
+XkbStateNotifyEvent.compat_lookup_mods	71
+XkbStateNotifyEvent.ptr_buttons	72
+XkbStateNotifyEvent.keycode	76
+XkbStateNotifyEvent.event_type	77
+XkbStateNotifyEvent.req_major	78
+XkbStateNotifyEvent.req_minor	79
+XkbStateNotifyEvent	80
+XExposeEvent.type	0
+XExposeEvent.serial	4
+XExposeEvent.send_event	8
+XExposeEvent.display	12
+XExposeEvent.window	16
+XExposeEvent.x	20
+XExposeEvent.y	24
+XExposeEvent.width	28
+XExposeEvent.height	32
+XExposeEvent.count	36
+XExposeEvent	40
+XkbMapNotifyEvent.type	0
+XkbMapNotifyEvent.serial	4
+XkbMapNotifyEvent.send_event	8
+XkbMapNotifyEvent.display	12
+XkbMapNotifyEvent.time	16
+XkbMapNotifyEvent.xkb_type	20
+XkbMapNotifyEvent.device	24
+XkbMapNotifyEvent.changed	28
+XkbMapNotifyEvent.flags	32
+XkbMapNotifyEvent.first_type	36
+XkbMapNotifyEvent.num_types	40
+XkbMapNotifyEvent.min_key_code	44
+XkbMapNotifyEvent.max_key_code	45
+XkbMapNotifyEvent.first_key_sym	46
+XkbMapNotifyEvent.first_key_act	47
+XkbMapNotifyEvent.first_key_behavior	48
+XkbMapNotifyEvent.first_key_explicit	49
+XkbMapNotifyEvent.first_modmap_key	50
+XkbMapNotifyEvent.first_vmodmap_key	51
+XkbMapNotifyEvent.num_key_syms	52
+XkbMapNotifyEvent.num_key_acts	56
+XkbMapNotifyEvent.num_key_behaviors	60
+XkbMapNotifyEvent.num_key_explicit	64
+XkbMapNotifyEvent.num_modmap_keys	68
+XkbMapNotifyEvent.num_vmodmap_keys	72
+XkbMapNotifyEvent.vmods	76
+XkbMapNotifyEvent	80
+XGCValues.function	0
+XGCValues.plane_mask	4
+XGCValues.foreground	8
+XGCValues.background	12
+XGCValues.line_width	16
+XGCValues.line_style	20
+XGCValues.cap_style	24
+XGCValues.join_style	28
+XGCValues.fill_style	32
+XGCValues.fill_rule	36
+XGCValues.arc_mode	40
+XGCValues.tile	44
+XGCValues.stipple	48
+XGCValues.ts_x_origin	52
+XGCValues.ts_y_origin	56
+XGCValues.font	60
+XGCValues.subwindow_mode	64
+XGCValues.graphics_exposures	68
+XGCValues.clip_x_origin	72
+XGCValues.clip_y_origin	76
+XGCValues.clip_mask	80
+XGCValues.dash_offset	84
+XGCValues.dashes	88
+XGCValues	92
+XFocusChangeEvent.type	0
+XFocusChangeEvent.serial	4
+XFocusChangeEvent.send_event	8
+XFocusChangeEvent.display	12
+XFocusChangeEvent.window	16
+XFocusChangeEvent.mode	20
+XFocusChangeEvent.detail	24
+XFocusChangeEvent	28
+XPixmapFormatValues.depth	0
+XPixmapFormatValues.bits_per_pixel	4
+XPixmapFormatValues.scanline_pad	8
+XPixmapFormatValues	12
+XMapEvent.type	0
+XMapEvent.serial	4
+XMapEvent.send_event	8
+XMapEvent.display	12
+XMapEvent.event	16
+XMapEvent.window	20
+XMapEvent.override_redirect	24
+XMapEvent	28
+XkbBellNotifyEvent.type	0
+XkbBellNotifyEvent.serial	4
+XkbBellNotifyEvent.send_event	8
+XkbBellNotifyEvent.display	12
+XkbBellNotifyEvent.time	16
+XkbBellNotifyEvent.xkb_type	20
+XkbBellNotifyEvent.device	24
+XkbBellNotifyEvent.percent	28
+XkbBellNotifyEvent.pitch	32
+XkbBellNotifyEvent.duration	36
+XkbBellNotifyEvent.bell_class	40
+XkbBellNotifyEvent.bell_id	44
+XkbBellNotifyEvent.name	48
+XkbBellNotifyEvent.window	52
+XkbBellNotifyEvent.event_only	56
+XkbBellNotifyEvent	60
+XIMStringConversionText.length	0
+XIMStringConversionText.feedback	4
+XIMStringConversionText.encoding_is_wchar	8
+XIMStringConversionText.string	12
+XIMStringConversionText	16
+XKeyboardState.key_click_percent	0
+XKeyboardState.bell_percent	4
+XKeyboardState.bell_pitch	8
+XKeyboardState.bell_duration	12
+XKeyboardState.led_mask	16
+XKeyboardState.global_auto_repeat	20
+XKeyboardState.auto_repeats	24
+XKeyboardState	56
+XkbEvent.type	0
+XkbEvent.any	0
+XkbEvent.new_kbd	0
+XkbEvent.map	0
+XkbEvent.state	0
+XkbEvent.ctrls	0
+XkbEvent.indicators	0
+XkbEvent.names	0
+XkbEvent.compat	0
+XkbEvent.bell	0
+XkbEvent.message	0
+XkbEvent.accessx	0
+XkbEvent.device	0
+XkbEvent.core	0
+XkbEvent	96
+XPoint.x	0
+XPoint.y	2
+XPoint	4
+XSegment.x1	0
+XSegment.y1	2
+XSegment.x2	4
+XSegment.y2	6
+XSegment	8
+XIconSize.min_width	0
+XIconSize.min_height	4
+XIconSize.max_width	8
+XIconSize.max_height	12
+XIconSize.width_inc	16
+XIconSize.height_inc	20
+XIconSize	24
+XIMCallback.client_data	0
+XIMCallback.callback	4
+XIMCallback	8
+XConfigureEvent.type	0
+XConfigureEvent.serial	4
+XConfigureEvent.send_event	8
+XConfigureEvent.display	12
+XConfigureEvent.event	16
+XConfigureEvent.window	20
+XConfigureEvent.x	24
+XConfigureEvent.y	28
+XConfigureEvent.width	32
+XConfigureEvent.height	36
+XConfigureEvent.border_width	40
+XConfigureEvent.above	44
+XConfigureEvent.override_redirect	48
+XConfigureEvent	52
+XRectangle.x	0
+XRectangle.y	2
+XRectangle.width	4
+XRectangle.height	6
+XRectangle	8
+XkbNamesNotifyEvent.type	0
+XkbNamesNotifyEvent.serial	4
+XkbNamesNotifyEvent.send_event	8
+XkbNamesNotifyEvent.display	12
+XkbNamesNotifyEvent.time	16
+XkbNamesNotifyEvent.xkb_type	20
+XkbNamesNotifyEvent.device	24
+XkbNamesNotifyEvent.changed	28
+XkbNamesNotifyEvent.first_type	32
+XkbNamesNotifyEvent.num_types	36
+XkbNamesNotifyEvent.first_lvl	40
+XkbNamesNotifyEvent.num_lvls	44
+XkbNamesNotifyEvent.num_aliases	48
+XkbNamesNotifyEvent.num_radio_groups	52
+XkbNamesNotifyEvent.changed_vmods	56
+XkbNamesNotifyEvent.changed_groups	60
+XkbNamesNotifyEvent.changed_indicators	64
+XkbNamesNotifyEvent.first_key	68
+XkbNamesNotifyEvent.num_keys	72
+XkbNamesNotifyEvent	76
+XCreateWindowEvent.type	0
+XCreateWindowEvent.serial	4
+XCreateWindowEvent.send_event	8
+XCreateWindowEvent.display	12
+XCreateWindowEvent.parent	16
+XCreateWindowEvent.window	20
+XCreateWindowEvent.x	24
+XCreateWindowEvent.y	28
+XCreateWindowEvent.width	32
+XCreateWindowEvent.height	36
+XCreateWindowEvent.border_width	40
+XCreateWindowEvent.override_redirect	44
+XCreateWindowEvent	48
+XVisibilityEvent.type	0
+XVisibilityEvent.serial	4
+XVisibilityEvent.send_event	8
+XVisibilityEvent.display	12
+XVisibilityEvent.window	16
+XVisibilityEvent.state	20
+XVisibilityEvent	24
+XWMHints.flags	0
+XWMHints.initial_state	8
+XWMHints.icon_pixmap	12
+XWMHints.icon_window	16
+XWMHints.icon_x	20
+XWMHints.icon_y	24
+XWMHints.icon_mask	28
+XWMHints.input	4
+XWMHints.window_group	32
+XWMHints	36
+XCrossingEvent.type	0
+XCrossingEvent.serial	4
+XCrossingEvent.send_event	8
+XCrossingEvent.display	12
+XCrossingEvent.window	16
+XCrossingEvent.root	20
+XCrossingEvent.subwindow	24
+XCrossingEvent.time	28
+XCrossingEvent.x	32
+XCrossingEvent.y	36
+XCrossingEvent.x_root	40
+XCrossingEvent.y_root	44
+XCrossingEvent.mode	48
+XCrossingEvent.detail	52
+XCrossingEvent.same_screen	56
+XCrossingEvent.focus	60
+XCrossingEvent.state	64
+XCrossingEvent	68
+XSelectionRequestEvent.type	0
+XSelectionRequestEvent.serial	4
+XSelectionRequestEvent.send_event	8
+XSelectionRequestEvent.display	12
+XSelectionRequestEvent.owner	16
+XSelectionRequestEvent.requestor	20
+XSelectionRequestEvent.selection	24
+XSelectionRequestEvent.target	28
+XSelectionRequestEvent.property	32
+XSelectionRequestEvent.time	36
+XSelectionRequestEvent	40
+XNoExposeEvent.type	0
+XNoExposeEvent.serial	4
+XNoExposeEvent.send_event	8
+XNoExposeEvent.display	12
+XNoExposeEvent.drawable	16
+XNoExposeEvent.major_code	20
+XNoExposeEvent.minor_code	24
+XNoExposeEvent	28
+XHostAddress.family	0
+XHostAddress.length	4
+XHostAddress.address	8
+XHostAddress	12
+XColormapEvent.type	0
+XColormapEvent.serial	4
+XColormapEvent.send_event	8
+XColormapEvent.display	12
+XColormapEvent.window	16
+XColormapEvent.colormap	20
+XColormapEvent.new	24
+XColormapEvent.state	28
+XColormapEvent	32
+ColorEntry.r	0
+ColorEntry.g	1
+ColorEntry.b	2
+ColorEntry.flags	3
+ColorEntry	4
+XResizeRequestEvent.type	0
+XResizeRequestEvent.serial	4
+XResizeRequestEvent.send_event	8
+XResizeRequestEvent.display	12
+XResizeRequestEvent.window	16
+XResizeRequestEvent.width	20
+XResizeRequestEvent.height	24
+XResizeRequestEvent	28
+Depth.depth	0
+Depth.nvisuals	4
+Depth.visuals	8
+Depth	12
+XPropertyEvent.type	0
+XPropertyEvent.serial	4
+XPropertyEvent.send_event	8
+XPropertyEvent.display	12
+XPropertyEvent.window	16
+XPropertyEvent.atom	20
+XPropertyEvent.time	24
+XPropertyEvent.state	28
+XPropertyEvent	32
+XDestroyWindowEvent.type	0
+XDestroyWindowEvent.serial	4
+XDestroyWindowEvent.send_event	8
+XDestroyWindowEvent.display	12
+XDestroyWindowEvent.event	16
+XDestroyWindowEvent.window	20
+XDestroyWindowEvent	24
+XStandardColormap.colormap	0
+XStandardColormap.red_max	4
+XStandardColormap.red_mult	8
+XStandardColormap.green_max	12
+XStandardColormap.green_mult	16
+XStandardColormap.blue_max	20
+XStandardColormap.blue_mult	24
+XStandardColormap.base_pixel	28
+XStandardColormap.visualid	32
+XStandardColormap.killid	36
+XStandardColormap	40
+XComposeStatus.compose_ptr	0
+XComposeStatus.chars_matched	4
+XComposeStatus	8
+AwtGraphicsConfigData.awt_depth	0
+AwtGraphicsConfigData.awt_cmap	4
+AwtGraphicsConfigData.awt_visInfo	8
+AwtGraphicsConfigData.awt_num_colors	48
+AwtGraphicsConfigData.awtImage	52
+AwtGraphicsConfigData.AwtColorMatch	56
+AwtGraphicsConfigData.monoImage	60
+AwtGraphicsConfigData.monoPixmap	64
+AwtGraphicsConfigData.monoPixmapWidth	68
+AwtGraphicsConfigData.monoPixmapHeight	72
+AwtGraphicsConfigData.monoPixmapGC	76
+AwtGraphicsConfigData.pixelStride	80
+AwtGraphicsConfigData.color_data	84
+AwtGraphicsConfigData.glxInfo	88
+AwtGraphicsConfigData.isTranslucencySupported	92
+AwtGraphicsConfigData.renderPictFormat	96
+AwtGraphicsConfigData	128
+XColor.pixel	0
+XColor.red	4
+XColor.green	6
+XColor.blue	8
+XColor.flags	10
+XColor.pad	11
+XColor	12
+XTextProperty.value	0
+XTextProperty.encoding	4
+XTextProperty.format	8
+XTextProperty.nitems	12
+XTextProperty	16
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/make/data/x11wrappergen/sizes.64	Mon Feb 17 11:37:46 2014 -0500
@@ -0,0 +1,1016 @@
+long	8
+int	4
+short	2
+ptr	8
+Bool	4
+Atom	8
+Window	8
+XExtData.number	0
+XExtData.next	8
+XExtData.free_private	16
+XExtData.private_data	24
+XExtData	32
+XIMStringConversionCallbackStruct.position	0
+XIMStringConversionCallbackStruct.direction	4
+XIMStringConversionCallbackStruct.operation	8
+XIMStringConversionCallbackStruct.factor	10
+XIMStringConversionCallbackStruct.text	16
+XIMStringConversionCallbackStruct	24
+XkbNewKeyboardNotifyEvent.type	0
+XkbNewKeyboardNotifyEvent.serial	8
+XkbNewKeyboardNotifyEvent.send_event	16
+XkbNewKeyboardNotifyEvent.display	24
+XkbNewKeyboardNotifyEvent.time	32
+XkbNewKeyboardNotifyEvent.xkb_type	40
+XkbNewKeyboardNotifyEvent.device	44
+XkbNewKeyboardNotifyEvent.old_device	48
+XkbNewKeyboardNotifyEvent.min_key_code	52
+XkbNewKeyboardNotifyEvent.max_key_code	56
+XkbNewKeyboardNotifyEvent.old_min_key_code	60
+XkbNewKeyboardNotifyEvent.old_max_key_code	64
+XkbNewKeyboardNotifyEvent.changed	68
+XkbNewKeyboardNotifyEvent.req_major	72
+XkbNewKeyboardNotifyEvent.req_minor	73
+XkbNewKeyboardNotifyEvent	80
+XTimeCoord.time	0
+XTimeCoord.x	8
+XTimeCoord.y	10
+XTimeCoord	16
+XkbCompatMapNotifyEvent.type	0
+XkbCompatMapNotifyEvent.serial	8
+XkbCompatMapNotifyEvent.send_event	16
+XkbCompatMapNotifyEvent.display	24
+XkbCompatMapNotifyEvent.time	32
+XkbCompatMapNotifyEvent.xkb_type	40
+XkbCompatMapNotifyEvent.device	44
+XkbCompatMapNotifyEvent.changed_groups	48
+XkbCompatMapNotifyEvent.first_si	52
+XkbCompatMapNotifyEvent.num_si	56
+XkbCompatMapNotifyEvent.num_total_si	60
+XkbCompatMapNotifyEvent	64
+XIMStatusDrawCallbackStruct.type	0
+XIMStatusDrawCallbackStruct.data	8
+XIMStatusDrawCallbackStruct	16
+XKeyboardControl.key_click_percent	0
+XKeyboardControl.bell_percent	4
+XKeyboardControl.bell_pitch	8
+XKeyboardControl.bell_duration	12
+XKeyboardControl.led	16
+XKeyboardControl.led_mode	20
+XKeyboardControl.key	24
+XKeyboardControl.auto_repeat_mode	28
+XKeyboardControl	32
+XSelectionClearEvent.type	0
+XSelectionClearEvent.serial	8
+XSelectionClearEvent.send_event	16
+XSelectionClearEvent.display	24
+XSelectionClearEvent.window	32
+XSelectionClearEvent.selection	40
+XSelectionClearEvent.time	48
+XSelectionClearEvent	56
+XWindowChanges.x	0
+XWindowChanges.y	4
+XWindowChanges.width	8
+XWindowChanges.height	12
+XWindowChanges.border_width	16
+XWindowChanges.sibling	24
+XWindowChanges.stack_mode	32
+XWindowChanges	40
+XIMPreeditCaretCallbackStruct.position	0
+XIMPreeditCaretCallbackStruct.direction	4
+XIMPreeditCaretCallbackStruct.style	8
+XIMPreeditCaretCallbackStruct	12
+XOMCharSetList.charset_count	0
+XOMCharSetList.charset_list	8
+XOMCharSetList	16
+XOMFontInfo.num_font	0
+XOMFontInfo.font_struct_list	8
+XOMFontInfo.font_name_list	16
+XOMFontInfo	24
+AwtScreenData.numConfigs	0
+AwtScreenData.root	8
+AwtScreenData.whitepixel	16
+AwtScreenData.blackpixel	24
+AwtScreenData.defaultConfig	32
+AwtScreenData.configs	40
+AwtScreenData	48
+XIMHotKeyTrigger.keysym	0
+XIMHotKeyTrigger.modifier	8
+XIMHotKeyTrigger.modifier_mask	12
+XIMHotKeyTrigger	16
+XCirculateEvent.type	0
+XCirculateEvent.serial	8
+XCirculateEvent.send_event	16
+XCirculateEvent.display	24
+XCirculateEvent.event	32
+XCirculateEvent.window	40
+XCirculateEvent.place	48
+XCirculateEvent	56
+Screen.ext_data	0
+Screen.display	8
+Screen.root	16
+Screen.width	24
+Screen.height	28
+Screen.mwidth	32
+Screen.mheight	36
+Screen.ndepths	40
+Screen.depths	48
+Screen.root_depth	56
+Screen.root_visual	64
+Screen.default_gc	72
+Screen.cmap	80
+Screen.white_pixel	88
+Screen.black_pixel	96
+Screen.max_maps	104
+Screen.min_maps	108
+Screen.backing_store	112
+Screen.save_unders	116
+Screen.root_input_mask	120
+Screen	128
+XMapRequestEvent.type	0
+XMapRequestEvent.serial	8
+XMapRequestEvent.send_event	16
+XMapRequestEvent.display	24
+XMapRequestEvent.parent	32
+XMapRequestEvent.window	40
+XMapRequestEvent	48
+XIMText.length	0
+XIMText.feedback	8
+XIMText.encoding_is_wchar	16
+XIMText.string	24
+XIMText	32
+XGraphicsExposeEvent.type	0
+XGraphicsExposeEvent.serial	8
+XGraphicsExposeEvent.send_event	16
+XGraphicsExposeEvent.display	24
+XGraphicsExposeEvent.drawable	32
+XGraphicsExposeEvent.x	40
+XGraphicsExposeEvent.y	44
+XGraphicsExposeEvent.width	48
+XGraphicsExposeEvent.height	52
+XGraphicsExposeEvent.count	56
+XGraphicsExposeEvent.major_code	60
+XGraphicsExposeEvent.minor_code	64
+XGraphicsExposeEvent	72
+XEvent.type	0
+XEvent.xany	0
+XEvent.xkey	0
+XEvent.xbutton	0
+XEvent.xmotion	0
+XEvent.xcrossing	0
+XEvent.xfocus	0
+XEvent.xexpose	0
+XEvent.xgraphicsexpose	0
+XEvent.xnoexpose	0
+XEvent.xvisibility	0
+XEvent.xcreatewindow	0
+XEvent.xdestroywindow	0
+XEvent.xunmap	0
+XEvent.xmap	0
+XEvent.xmaprequest	0
+XEvent.xreparent	0
+XEvent.xconfigure	0
+XEvent.xgravity	0
+XEvent.xresizerequest	0
+XEvent.xconfigurerequest	0
+XEvent.xcirculate	0
+XEvent.xcirculaterequest	0
+XEvent.xproperty	0
+XEvent.xselectionclear	0
+XEvent.xselectionrequest	0
+XEvent.xselection	0
+XEvent.xcolormap	0
+XEvent.xclient	0
+XEvent.xmapping	0
+XEvent.xerror	0
+XEvent.xkeymap	0
+XEvent.pad	0
+XEvent	192
+XRenderDirectFormat.red	0
+XRenderDirectFormat.redMask	2
+XRenderDirectFormat.green	4
+XRenderDirectFormat.greenMask	6
+XRenderDirectFormat.blue	8
+XRenderDirectFormat.blueMask	10
+XRenderDirectFormat.alpha	12
+XRenderDirectFormat.alphaMask	14
+XRenderDirectFormat	16
+ColorData.awt_Colors	0
+ColorData.awt_numICMcolors	8
+ColorData.awt_icmLUT	16
+ColorData.awt_icmLUT2Colors	24
+ColorData.img_grays	32
+ColorData.img_clr_tbl	40
+ColorData.img_oda_red	48
+ColorData.img_oda_green	56
+ColorData.img_oda_blue	64
+ColorData.pGrayInverseLutData	72
+ColorData.screendata	80
+ColorData	88
+XFontStruct.ext_data	0
+XFontStruct.fid	8
+XFontStruct.direction	16
+XFontStruct.min_char_or_byte2	20
+XFontStruct.max_char_or_byte2	24
+XFontStruct.min_byte1	28
+XFontStruct.max_byte1	32
+XFontStruct.all_chars_exist	36
+XFontStruct.n_properties	44
+XFontStruct.properties	48
+XFontStruct.min_bounds	56
+XFontStruct.max_bounds	68
+XFontStruct.per_char	80
+XFontStruct.ascent	88
+XFontStruct.descent	92
+XFontStruct	96
+XExtCodes.extension	0
+XExtCodes.major_opcode	4
+XExtCodes.first_event	8
+XExtCodes.first_error	12
+XExtCodes	16
+XFontSetExtents.max_ink_extent	0
+XFontSetExtents.max_logical_extent	8
+XFontSetExtents	16
+XSelectionEvent.type	0
+XSelectionEvent.serial	8
+XSelectionEvent.send_event	16
+XSelectionEvent.display	24
+XSelectionEvent.requestor	32
+XSelectionEvent.selection	40
+XSelectionEvent.target	48
+XSelectionEvent.property	56
+XSelectionEvent.time	64
+XSelectionEvent	72
+XArc.x	0
+XArc.y	2
+XArc.width	4
+XArc.height	6
+XArc.angle1	8
+XArc.angle2	10
+XArc	12
+XErrorEvent.type	0
+XErrorEvent.display	8
+XErrorEvent.resourceid	16
+XErrorEvent.serial	24
+XErrorEvent.error_code	32
+XErrorEvent.request_code	33
+XErrorEvent.minor_code	34
+XErrorEvent	40
+XConfigureRequestEvent.type	0
+XConfigureRequestEvent.serial	8
+XConfigureRequestEvent.send_event	16
+XConfigureRequestEvent.display	24
+XConfigureRequestEvent.parent	32
+XConfigureRequestEvent.window	40
+XConfigureRequestEvent.x	48
+XConfigureRequestEvent.y	52
+XConfigureRequestEvent.width	56
+XConfigureRequestEvent.height	60
+XConfigureRequestEvent.border_width	64
+XConfigureRequestEvent.above	72
+XConfigureRequestEvent.detail	80
+XConfigureRequestEvent.value_mask	88
+XConfigureRequestEvent	96
+ScreenFormat.ext_data	0
+ScreenFormat.depth	8
+ScreenFormat.bits_per_pixel	12
+ScreenFormat.scanline_pad	16
+ScreenFormat	24
+XButtonEvent.type	0
+XButtonEvent.serial	8
+XButtonEvent.send_event	16
+XButtonEvent.display	24
+XButtonEvent.window	32
+XButtonEvent.root	40
+XButtonEvent.subwindow	48
+XButtonEvent.time	56
+XButtonEvent.x	64
+XButtonEvent.y	68
+XButtonEvent.x_root	72
+XButtonEvent.y_root	76
+XButtonEvent.state	80
+XButtonEvent.button	84
+XButtonEvent.same_screen	88
+XButtonEvent	96
+XFontProp.name	0
+XFontProp.card32	8
+XFontProp	16
+XIMValuesList.count_values	0
+XIMValuesList.supported_values	8
+XIMValuesList	16
+XKeymapEvent.type	0
+XKeymapEvent.serial	8
+XKeymapEvent.send_event	16
+XKeymapEvent.display	24
+XKeymapEvent.window	32
+XKeymapEvent.key_vector	40
+XKeymapEvent	72
+XTextItem16.chars	0
+XTextItem16.nchars	8
+XTextItem16.delta	12
+XTextItem16.font	16
+XTextItem16	24
+XIMPreeditDrawCallbackStruct.caret	0
+XIMPreeditDrawCallbackStruct.chg_first	4
+XIMPreeditDrawCallbackStruct.chg_length	8
+XIMPreeditDrawCallbackStruct.text	16
+XIMPreeditDrawCallbackStruct	24
+XVisualInfo.visual	0
+XVisualInfo.visualid	8
+XVisualInfo.screen	16
+XVisualInfo.depth	20
+XVisualInfo.class	24
+XVisualInfo.red_mask	32
+XVisualInfo.green_mask	40
+XVisualInfo.blue_mask	48
+XVisualInfo.colormap_size	56
+XVisualInfo.bits_per_rgb	60
+XVisualInfo	64
+XkbControlsNotifyEvent.type	0
+XkbControlsNotifyEvent.serial	8
+XkbControlsNotifyEvent.send_event	16
+XkbControlsNotifyEvent.display	24
+XkbControlsNotifyEvent.time	32
+XkbControlsNotifyEvent.xkb_type	40
+XkbControlsNotifyEvent.device	44
+XkbControlsNotifyEvent.changed_ctrls	48
+XkbControlsNotifyEvent.enabled_ctrls	52
+XkbControlsNotifyEvent.enabled_ctrl_changes	56
+XkbControlsNotifyEvent.num_groups	60
+XkbControlsNotifyEvent.keycode	64
+XkbControlsNotifyEvent.event_type	65
+XkbControlsNotifyEvent.req_major	66
+XkbControlsNotifyEvent.req_minor	67
+XkbControlsNotifyEvent	72
+PropMwmHints.flags	0
+PropMwmHints.functions	8
+PropMwmHints.decorations	16
+PropMwmHints.inputMode	24
+PropMwmHints.status	32
+PropMwmHints	40
+XClientMessageEvent.type	0
+XClientMessageEvent.serial	8
+XClientMessageEvent.send_event	16
+XClientMessageEvent.display	24
+XClientMessageEvent.window	32
+XClientMessageEvent.message_type	40
+XClientMessageEvent.format	48
+XClientMessageEvent.data	56
+XClientMessageEvent	96
+XAnyEvent.type	0
+XAnyEvent.serial	8
+XAnyEvent.send_event	16
+XAnyEvent.display	24
+XAnyEvent.window	32
+XAnyEvent	40
+XkbIndicatorNotifyEvent.type	0
+XkbIndicatorNotifyEvent.serial	8
+XkbIndicatorNotifyEvent.send_event	16
+XkbIndicatorNotifyEvent.display	24
+XkbIndicatorNotifyEvent.time	32
+XkbIndicatorNotifyEvent.xkb_type	40
+XkbIndicatorNotifyEvent.device	44
+XkbIndicatorNotifyEvent.changed	48
+XkbIndicatorNotifyEvent.state	52
+XkbIndicatorNotifyEvent	56
+XIMPreeditStateNotifyCallbackStruct.state	0
+XIMPreeditStateNotifyCallbackStruct	8
+XkbAnyEvent.type	0
+XkbAnyEvent.serial	8
+XkbAnyEvent.send_event	16
+XkbAnyEvent.display	24
+XkbAnyEvent.time	32
+XkbAnyEvent.xkb_type	40
+XkbAnyEvent.device	44
+XkbAnyEvent	48
+XMotionEvent.type	0
+XMotionEvent.serial	8
+XMotionEvent.send_event	16
+XMotionEvent.display	24
+XMotionEvent.window	32
+XMotionEvent.root	40
+XMotionEvent.subwindow	48
+XMotionEvent.time	56
+XMotionEvent.x	64
+XMotionEvent.y	68
+XMotionEvent.x_root	72
+XMotionEvent.y_root	76
+XMotionEvent.state	80
+XMotionEvent.is_hint	84
+XMotionEvent.same_screen	88
+XMotionEvent	96
+XIMHotKeyTriggers.num_hot_key	0
+XIMHotKeyTriggers.key	8
+XIMHotKeyTriggers	16
+XIMStyles.count_styles	0
+XIMStyles.supported_styles	8
+XIMStyles	16
+XkbExtensionDeviceNotifyEvent.type	0
+XkbExtensionDeviceNotifyEvent.serial	8
+XkbExtensionDeviceNotifyEvent.send_event	16
+XkbExtensionDeviceNotifyEvent.display	24
+XkbExtensionDeviceNotifyEvent.time	32
+XkbExtensionDeviceNotifyEvent.xkb_type	40
+XkbExtensionDeviceNotifyEvent.device	44
+XkbExtensionDeviceNotifyEvent.reason	48
+XkbExtensionDeviceNotifyEvent.supported	52
+XkbExtensionDeviceNotifyEvent.unsupported	56
+XkbExtensionDeviceNotifyEvent.first_btn	60
+XkbExtensionDeviceNotifyEvent.num_btns	64
+XkbExtensionDeviceNotifyEvent.leds_defined	68
+XkbExtensionDeviceNotifyEvent.led_state	72
+XkbExtensionDeviceNotifyEvent.led_class	76
+XkbExtensionDeviceNotifyEvent.led_id	80
+XkbExtensionDeviceNotifyEvent	88
+XwcTextItem.chars	0
+XwcTextItem.nchars	8
+XwcTextItem.delta	12
+XwcTextItem.font_set	16
+XwcTextItem	24
+XClassHint.res_name	0
+XClassHint.res_class	8
+XClassHint	16
+XChar2b.byte1	0
+XChar2b.byte2	1
+XChar2b	2
+XSetWindowAttributes.background_pixmap	0
+XSetWindowAttributes.background_pixel	8
+XSetWindowAttributes.border_pixmap	16
+XSetWindowAttributes.border_pixel	24
+XSetWindowAttributes.bit_gravity	32
+XSetWindowAttributes.win_gravity	36
+XSetWindowAttributes.backing_store	40
+XSetWindowAttributes.backing_planes	48
+XSetWindowAttributes.backing_pixel	56
+XSetWindowAttributes.save_under	64
+XSetWindowAttributes.event_mask	72
+XSetWindowAttributes.do_not_propagate_mask	80
+XSetWindowAttributes.override_redirect	88
+XSetWindowAttributes.colormap	96
+XSetWindowAttributes.cursor	104
+XSetWindowAttributes	112
+XRenderPictFormat.id	0
+XRenderPictFormat.type	8
+XRenderPictFormat.depth	12
+XRenderPictFormat.direct	16
+XRenderPictFormat.colormap	32
+XRenderPictFormat	40
+XReparentEvent.type	0
+XReparentEvent.serial	8
+XReparentEvent.send_event	16
+XReparentEvent.display	24
+XReparentEvent.event	32
+XReparentEvent.window	40
+XReparentEvent.parent	48
+XReparentEvent.x	56
+XReparentEvent.y	60
+XReparentEvent.override_redirect	64
+XReparentEvent	72
+XCirculateRequestEvent.type	0
+XCirculateRequestEvent.serial	8
+XCirculateRequestEvent.send_event	16
+XCirculateRequestEvent.display	24
+XCirculateRequestEvent.parent	32
+XCirculateRequestEvent.window	40
+XCirculateRequestEvent.place	48
+XCirculateRequestEvent	56
+XImage.width	0
+XImage.height	4
+XImage.xoffset	8
+XImage.format	12
+XImage.data	16
+XImage.byte_order	24
+XImage.bitmap_unit	28
+XImage.bitmap_bit_order	32
+XImage.bitmap_pad	36
+XImage.depth	40
+XImage.bytes_per_line	44
+XImage.bits_per_pixel	48
+XImage.red_mask	56
+XImage.green_mask	64
+XImage.blue_mask	72
+XImage.obdata	80
+XImage.f.create_image	88
+XImage.f.destroy_image	96
+XImage.f.get_pixel	104
+XImage.f.put_pixel	112
+XImage.f.sub_image	120
+XImage.f.add_pixel	128
+XImage	136
+XKeyEvent.type	0
+XKeyEvent.serial	8
+XKeyEvent.send_event	16
+XKeyEvent.display	24
+XKeyEvent.window	32
+XKeyEvent.root	40
+XKeyEvent.subwindow	48
+XKeyEvent.time	56
+XKeyEvent.x	64
+XKeyEvent.y	68
+XKeyEvent.x_root	72
+XKeyEvent.y_root	76
+XKeyEvent.state	80
+XKeyEvent.keycode	84
+XKeyEvent.same_screen	88
+XKeyEvent	96
+XkbActionMessageEvent.type	0
+XkbActionMessageEvent.serial	8
+XkbActionMessageEvent.send_event	16
+XkbActionMessageEvent.display	24
+XkbActionMessageEvent.time	32
+XkbActionMessageEvent.xkb_type	40
+XkbActionMessageEvent.device	44
+XkbActionMessageEvent.keycode	48
+XkbActionMessageEvent.press	52
+XkbActionMessageEvent.key_event_follows	56
+XkbActionMessageEvent.group	60
+XkbActionMessageEvent.mods	64
+XkbActionMessageEvent.message	68
+XkbActionMessageEvent	80
+XdbeSwapInfo.swap_window	0
+XdbeSwapInfo.swap_action	8
+XdbeSwapInfo	16
+XTextItem.chars	0
+XTextItem.nchars	8
+XTextItem.delta	12
+XTextItem.font	16
+XTextItem	24
+XModifierKeymap.max_keypermod	0
+XModifierKeymap.modifiermap	8
+XModifierKeymap	16
+XCharStruct.lbearing	0
+XCharStruct.rbearing	2
+XCharStruct.width	4
+XCharStruct.ascent	6
+XCharStruct.descent	8
+XCharStruct.attributes	10
+XCharStruct	12
+XGravityEvent.type	0
+XGravityEvent.serial	8
+XGravityEvent.send_event	16
+XGravityEvent.display	24
+XGravityEvent.event	32
+XGravityEvent.window	40
+XGravityEvent.x	48
+XGravityEvent.y	52
+XGravityEvent	56
+Visual.ext_data	0
+Visual.visualid	8
+Visual.class	16
+Visual.red_mask	24
+Visual.green_mask	32
+Visual.blue_mask	40
+Visual.bits_per_rgb	48
+Visual.map_entries	52
+Visual	56
+XOMOrientation.num_orientation	0
+XOMOrientation.orientation	8
+XOMOrientation	16
+XkbAccessXNotifyEvent.type	0
+XkbAccessXNotifyEvent.serial	8
+XkbAccessXNotifyEvent.send_event	16
+XkbAccessXNotifyEvent.display	24
+XkbAccessXNotifyEvent.time	32
+XkbAccessXNotifyEvent.xkb_type	40
+XkbAccessXNotifyEvent.device	44
+XkbAccessXNotifyEvent.detail	48
+XkbAccessXNotifyEvent.keycode	52
+XkbAccessXNotifyEvent.sk_delay	56
+XkbAccessXNotifyEvent.debounce_delay	60
+XkbAccessXNotifyEvent	64
+XWindowAttributes.x	0
+XWindowAttributes.y	4
+XWindowAttributes.width	8
+XWindowAttributes.height	12
+XWindowAttributes.border_width	16
+XWindowAttributes.depth	20
+XWindowAttributes.visual	24
+XWindowAttributes.root	32
+XWindowAttributes.class	40
+XWindowAttributes.bit_gravity	44
+XWindowAttributes.win_gravity	48
+XWindowAttributes.backing_store	52
+XWindowAttributes.backing_planes	56
+XWindowAttributes.backing_pixel	64
+XWindowAttributes.save_under	72
+XWindowAttributes.colormap	80
+XWindowAttributes.map_installed	88
+XWindowAttributes.map_state	92
+XWindowAttributes.all_event_masks	96
+XWindowAttributes.your_event_mask	104
+XWindowAttributes.do_not_propagate_mask	112
+XWindowAttributes.override_redirect	120
+XWindowAttributes.screen	128
+XWindowAttributes	136
+XmbTextItem.chars	0
+XmbTextItem.nchars	8
+XmbTextItem.delta	12
+XmbTextItem.font_set	16
+XmbTextItem	24
+XMappingEvent.type	0
+XMappingEvent.serial	8
+XMappingEvent.send_event	16
+XMappingEvent.display	24
+XMappingEvent.window	32
+XMappingEvent.request	40
+XMappingEvent.first_keycode	44
+XMappingEvent.count	48
+XMappingEvent	56
+XSizeHints.flags	0
+XSizeHints.x	8
+XSizeHints.y	12
+XSizeHints.width	16
+XSizeHints.height	20
+XSizeHints.min_width	24
+XSizeHints.min_height	28
+XSizeHints.max_width	32
+XSizeHints.max_height	36
+XSizeHints.width_inc	40
+XSizeHints.height_inc	44
+XSizeHints.min_aspect.x	48
+XSizeHints.min_aspect.y	52
+XSizeHints.max_aspect.x	56
+XSizeHints.max_aspect.y	60
+XSizeHints.base_width	64
+XSizeHints.base_height	68
+XSizeHints.win_gravity	72
+XSizeHints	80
+XUnmapEvent.type	0
+XUnmapEvent.serial	8
+XUnmapEvent.send_event	16
+XUnmapEvent.display	24
+XUnmapEvent.event	32
+XUnmapEvent.window	40
+XUnmapEvent.from_configure	48
+XUnmapEvent	56
+awtImageData.Depth	0
+awtImageData.wsImageFormat	4
+awtImageData.clrdata	16
+awtImageData.convert	48
+awtImageData	560
+XkbStateNotifyEvent.type	0
+XkbStateNotifyEvent.serial	8
+XkbStateNotifyEvent.send_event	16
+XkbStateNotifyEvent.display	24
+XkbStateNotifyEvent.time	32
+XkbStateNotifyEvent.xkb_type	40
+XkbStateNotifyEvent.device	44
+XkbStateNotifyEvent.changed	48
+XkbStateNotifyEvent.group	52
+XkbStateNotifyEvent.base_group	56
+XkbStateNotifyEvent.latched_group	60
+XkbStateNotifyEvent.locked_group	64
+XkbStateNotifyEvent.mods	68
+XkbStateNotifyEvent.base_mods	72
+XkbStateNotifyEvent.latched_mods	76
+XkbStateNotifyEvent.locked_mods	80
+XkbStateNotifyEvent.compat_state	84
+XkbStateNotifyEvent.grab_mods	88
+XkbStateNotifyEvent.compat_grab_mods	89
+XkbStateNotifyEvent.lookup_mods	90
+XkbStateNotifyEvent.compat_lookup_mods	91
+XkbStateNotifyEvent.ptr_buttons	92
+XkbStateNotifyEvent.keycode	96
+XkbStateNotifyEvent.event_type	97
+XkbStateNotifyEvent.req_major	98
+XkbStateNotifyEvent.req_minor	99
+XkbStateNotifyEvent	104
+XExposeEvent.type	0
+XExposeEvent.serial	8
+XExposeEvent.send_event	16
+XExposeEvent.display	24
+XExposeEvent.window	32
+XExposeEvent.x	40
+XExposeEvent.y	44
+XExposeEvent.width	48
+XExposeEvent.height	52
+XExposeEvent.count	56
+XExposeEvent	64
+XkbMapNotifyEvent.type	0
+XkbMapNotifyEvent.serial	8
+XkbMapNotifyEvent.send_event	16
+XkbMapNotifyEvent.display	24
+XkbMapNotifyEvent.time	32
+XkbMapNotifyEvent.xkb_type	40
+XkbMapNotifyEvent.device	44
+XkbMapNotifyEvent.changed	48
+XkbMapNotifyEvent.flags	52
+XkbMapNotifyEvent.first_type	56
+XkbMapNotifyEvent.num_types	60
+XkbMapNotifyEvent.min_key_code	64
+XkbMapNotifyEvent.max_key_code	65
+XkbMapNotifyEvent.first_key_sym	66
+XkbMapNotifyEvent.first_key_act	67
+XkbMapNotifyEvent.first_key_behavior	68
+XkbMapNotifyEvent.first_key_explicit	69
+XkbMapNotifyEvent.first_modmap_key	70
+XkbMapNotifyEvent.first_vmodmap_key	71
+XkbMapNotifyEvent.num_key_syms	72
+XkbMapNotifyEvent.num_key_acts	76
+XkbMapNotifyEvent.num_key_behaviors	80
+XkbMapNotifyEvent.num_key_explicit	84
+XkbMapNotifyEvent.num_modmap_keys	88
+XkbMapNotifyEvent.num_vmodmap_keys	92
+XkbMapNotifyEvent.vmods	96
+XkbMapNotifyEvent	104
+XGCValues.function	0
+XGCValues.plane_mask	8
+XGCValues.foreground	16
+XGCValues.background	24
+XGCValues.line_width	32
+XGCValues.line_style	36
+XGCValues.cap_style	40
+XGCValues.join_style	44
+XGCValues.fill_style	48
+XGCValues.fill_rule	52
+XGCValues.arc_mode	56
+XGCValues.tile	64
+XGCValues.stipple	72
+XGCValues.ts_x_origin	80
+XGCValues.ts_y_origin	84
+XGCValues.font	88
+XGCValues.subwindow_mode	96
+XGCValues.graphics_exposures	100
+XGCValues.clip_x_origin	104
+XGCValues.clip_y_origin	108
+XGCValues.clip_mask	112
+XGCValues.dash_offset	120
+XGCValues.dashes	124
+XGCValues	128
+XFocusChangeEvent.type	0
+XFocusChangeEvent.serial	8
+XFocusChangeEvent.send_event	16
+XFocusChangeEvent.display	24
+XFocusChangeEvent.window	32
+XFocusChangeEvent.mode	40
+XFocusChangeEvent.detail	44
+XFocusChangeEvent	48
+XPixmapFormatValues.depth	0
+XPixmapFormatValues.bits_per_pixel	4
+XPixmapFormatValues.scanline_pad	8
+XPixmapFormatValues	12
+XMapEvent.type	0
+XMapEvent.serial	8
+XMapEvent.send_event	16
+XMapEvent.display	24
+XMapEvent.event	32
+XMapEvent.window	40
+XMapEvent.override_redirect	48
+XMapEvent	56
+XkbBellNotifyEvent.type	0
+XkbBellNotifyEvent.serial	8
+XkbBellNotifyEvent.send_event	16
+XkbBellNotifyEvent.display	24
+XkbBellNotifyEvent.time	32
+XkbBellNotifyEvent.xkb_type	40
+XkbBellNotifyEvent.device	44
+XkbBellNotifyEvent.percent	48
+XkbBellNotifyEvent.pitch	52
+XkbBellNotifyEvent.duration	56
+XkbBellNotifyEvent.bell_class	60
+XkbBellNotifyEvent.bell_id	64
+XkbBellNotifyEvent.name	72
+XkbBellNotifyEvent.window	80
+XkbBellNotifyEvent.event_only	88
+XkbBellNotifyEvent	96
+XIMStringConversionText.length	0
+XIMStringConversionText.feedback	8
+XIMStringConversionText.encoding_is_wchar	16
+XIMStringConversionText.string	24
+XIMStringConversionText	32
+XKeyboardState.key_click_percent	0
+XKeyboardState.bell_percent	4
+XKeyboardState.bell_pitch	8
+XKeyboardState.bell_duration	12
+XKeyboardState.led_mask	16
+XKeyboardState.global_auto_repeat	24
+XKeyboardState.auto_repeats	28
+XKeyboardState	64
+XkbEvent.type	0
+XkbEvent.any	0
+XkbEvent.new_kbd	0
+XkbEvent.map	0
+XkbEvent.state	0
+XkbEvent.ctrls	0
+XkbEvent.indicators	0
+XkbEvent.names	0
+XkbEvent.compat	0
+XkbEvent.bell	0
+XkbEvent.message	0
+XkbEvent.accessx	0
+XkbEvent.device	0
+XkbEvent.core	0
+XkbEvent	192
+XPoint.x	0
+XPoint.y	2
+XPoint	4
+XSegment.x1	0
+XSegment.y1	2
+XSegment.x2	4
+XSegment.y2	6
+XSegment	8
+XIconSize.min_width	0
+XIconSize.min_height	4
+XIconSize.max_width	8
+XIconSize.max_height	12
+XIconSize.width_inc	16
+XIconSize.height_inc	20
+XIconSize	24
+XIMCallback.client_data	0
+XIMCallback.callback	8
+XIMCallback	16
+XConfigureEvent.type	0
+XConfigureEvent.serial	8
+XConfigureEvent.send_event	16
+XConfigureEvent.display	24
+XConfigureEvent.event	32
+XConfigureEvent.window	40
+XConfigureEvent.x	48
+XConfigureEvent.y	52
+XConfigureEvent.width	56
+XConfigureEvent.height	60
+XConfigureEvent.border_width	64
+XConfigureEvent.above	72
+XConfigureEvent.override_redirect	80
+XConfigureEvent	88
+XRectangle.x	0
+XRectangle.y	2
+XRectangle.width	4
+XRectangle.height	6
+XRectangle	8
+XkbNamesNotifyEvent.type	0
+XkbNamesNotifyEvent.serial	8
+XkbNamesNotifyEvent.send_event	16
+XkbNamesNotifyEvent.display	24
+XkbNamesNotifyEvent.time	32
+XkbNamesNotifyEvent.xkb_type	40
+XkbNamesNotifyEvent.device	44
+XkbNamesNotifyEvent.changed	48
+XkbNamesNotifyEvent.first_type	52
+XkbNamesNotifyEvent.num_types	56
+XkbNamesNotifyEvent.first_lvl	60
+XkbNamesNotifyEvent.num_lvls	64
+XkbNamesNotifyEvent.num_aliases	68
+XkbNamesNotifyEvent.num_radio_groups	72
+XkbNamesNotifyEvent.changed_vmods	76
+XkbNamesNotifyEvent.changed_groups	80
+XkbNamesNotifyEvent.changed_indicators	84
+XkbNamesNotifyEvent.first_key	88
+XkbNamesNotifyEvent.num_keys	92
+XkbNamesNotifyEvent	96
+XCreateWindowEvent.type	0
+XCreateWindowEvent.serial	8
+XCreateWindowEvent.send_event	16
+XCreateWindowEvent.display	24
+XCreateWindowEvent.parent	32
+XCreateWindowEvent.window	40
+XCreateWindowEvent.x	48
+XCreateWindowEvent.y	52
+XCreateWindowEvent.width	56
+XCreateWindowEvent.height	60
+XCreateWindowEvent.border_width	64
+XCreateWindowEvent.override_redirect	68
+XCreateWindowEvent	72
+XVisibilityEvent.type	0
+XVisibilityEvent.serial	8
+XVisibilityEvent.send_event	16
+XVisibilityEvent.display	24
+XVisibilityEvent.window	32
+XVisibilityEvent.state	40
+XVisibilityEvent	48
+XWMHints.flags	0
+XWMHints.initial_state	12
+XWMHints.icon_pixmap	16
+XWMHints.icon_window	24
+XWMHints.icon_x	32
+XWMHints.icon_y	36
+XWMHints.icon_mask	40
+XWMHints.input	8
+XWMHints.window_group	48
+XWMHints	56
+XCrossingEvent.type	0
+XCrossingEvent.serial	8
+XCrossingEvent.send_event	16
+XCrossingEvent.display	24
+XCrossingEvent.window	32
+XCrossingEvent.root	40
+XCrossingEvent.subwindow	48
+XCrossingEvent.time	56
+XCrossingEvent.x	64
+XCrossingEvent.y	68
+XCrossingEvent.x_root	72
+XCrossingEvent.y_root	76
+XCrossingEvent.mode	80
+XCrossingEvent.detail	84
+XCrossingEvent.same_screen	88
+XCrossingEvent.focus	92
+XCrossingEvent.state	96
+XCrossingEvent	104
+XSelectionRequestEvent.type	0
+XSelectionRequestEvent.serial	8
+XSelectionRequestEvent.send_event	16
+XSelectionRequestEvent.display	24
+XSelectionRequestEvent.owner	32
+XSelectionRequestEvent.requestor	40
+XSelectionRequestEvent.selection	48
+XSelectionRequestEvent.target	56
+XSelectionRequestEvent.property	64
+XSelectionRequestEvent.time	72
+XSelectionRequestEvent	80
+XNoExposeEvent.type	0
+XNoExposeEvent.serial	8
+XNoExposeEvent.send_event	16
+XNoExposeEvent.display	24
+XNoExposeEvent.drawable	32
+XNoExposeEvent.major_code	40
+XNoExposeEvent.minor_code	44
+XNoExposeEvent	48
+XHostAddress.family	0
+XHostAddress.length	4
+XHostAddress.address	8
+XHostAddress	16
+XColormapEvent.type	0
+XColormapEvent.serial	8
+XColormapEvent.send_event	16
+XColormapEvent.display	24
+XColormapEvent.window	32
+XColormapEvent.colormap	40
+XColormapEvent.new	48
+XColormapEvent.state	52
+XColormapEvent	56
+ColorEntry.r	0
+ColorEntry.g	1
+ColorEntry.b	2
+ColorEntry.flags	3
+ColorEntry	4
+XResizeRequestEvent.type	0
+XResizeRequestEvent.serial	8
+XResizeRequestEvent.send_event	16
+XResizeRequestEvent.display	24
+XResizeRequestEvent.window	32
+XResizeRequestEvent.width	40
+XResizeRequestEvent.height	44
+XResizeRequestEvent	48
+Depth.depth	0
+Depth.nvisuals	4
+Depth.visuals	8
+Depth	16
+XPropertyEvent.type	0
+XPropertyEvent.serial	8
+XPropertyEvent.send_event	16
+XPropertyEvent.display	24
+XPropertyEvent.window	32
+XPropertyEvent.atom	40
+XPropertyEvent.time	48
+XPropertyEvent.state	56
+XPropertyEvent	64
+XDestroyWindowEvent.type	0
+XDestroyWindowEvent.serial	8
+XDestroyWindowEvent.send_event	16
+XDestroyWindowEvent.display	24
+XDestroyWindowEvent.event	32
+XDestroyWindowEvent.window	40
+XDestroyWindowEvent	48
+XStandardColormap.colormap	0
+XStandardColormap.red_max	8
+XStandardColormap.red_mult	16
+XStandardColormap.green_max	24
+XStandardColormap.green_mult	32
+XStandardColormap.blue_max	40
+XStandardColormap.blue_mult	48
+XStandardColormap.base_pixel	56
+XStandardColormap.visualid	64
+XStandardColormap.killid	72
+XStandardColormap	80
+XComposeStatus.compose_ptr	0
+XComposeStatus.chars_matched	8
+XComposeStatus	16
+AwtGraphicsConfigData.awt_depth	0
+AwtGraphicsConfigData.awt_cmap	8
+AwtGraphicsConfigData.awt_visInfo	16
+AwtGraphicsConfigData.awt_num_colors	80
+AwtGraphicsConfigData.awtImage	88
+AwtGraphicsConfigData.AwtColorMatch	96
+AwtGraphicsConfigData.monoImage	104
+AwtGraphicsConfigData.monoPixmap	112
+AwtGraphicsConfigData.monoPixmapWidth	120
+AwtGraphicsConfigData.monoPixmapHeight	124
+AwtGraphicsConfigData.monoPixmapGC	128
+AwtGraphicsConfigData.pixelStride	136
+AwtGraphicsConfigData.color_data	144
+AwtGraphicsConfigData.glxInfo	152
+AwtGraphicsConfigData.isTranslucencySupported	160
+AwtGraphicsConfigData.renderPictFormat	168
+AwtGraphicsConfigData	208
+XColor.pixel	0
+XColor.red	8
+XColor.green	10
+XColor.blue	12
+XColor.flags	14
+XColor.pad	15
+XColor	16
+XTextProperty.value	0
+XTextProperty.encoding	8
+XTextProperty.format	16
+XTextProperty.nitems	24
+XTextProperty	32
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/make/data/x11wrappergen/sizes.64-solaris-i386	Mon Feb 17 11:37:46 2014 -0500
@@ -0,0 +1,1016 @@
+long	8
+int	4
+short	2
+ptr	8
+Bool	4
+Atom	8
+Window	8
+XExtData.number	0
+XExtData.next	8
+XExtData.free_private	16
+XExtData.private_data	24
+XExtData	32
+XIMStringConversionCallbackStruct.position	0
+XIMStringConversionCallbackStruct.direction	4
+XIMStringConversionCallbackStruct.operation	8
+XIMStringConversionCallbackStruct.factor	10
+XIMStringConversionCallbackStruct.text	16
+XIMStringConversionCallbackStruct	24
+XkbNewKeyboardNotifyEvent.type	0
+XkbNewKeyboardNotifyEvent.serial	8
+XkbNewKeyboardNotifyEvent.send_event	16
+XkbNewKeyboardNotifyEvent.display	24
+XkbNewKeyboardNotifyEvent.time	32
+XkbNewKeyboardNotifyEvent.xkb_type	40
+XkbNewKeyboardNotifyEvent.device	44
+XkbNewKeyboardNotifyEvent.old_device	48
+XkbNewKeyboardNotifyEvent.min_key_code	52
+XkbNewKeyboardNotifyEvent.max_key_code	56
+XkbNewKeyboardNotifyEvent.old_min_key_code	60
+XkbNewKeyboardNotifyEvent.old_max_key_code	64
+XkbNewKeyboardNotifyEvent.changed	68
+XkbNewKeyboardNotifyEvent.req_major	72
+XkbNewKeyboardNotifyEvent.req_minor	73
+XkbNewKeyboardNotifyEvent	80
+XTimeCoord.time	0
+XTimeCoord.x	8
+XTimeCoord.y	10
+XTimeCoord	16
+XkbCompatMapNotifyEvent.type	0
+XkbCompatMapNotifyEvent.serial	8
+XkbCompatMapNotifyEvent.send_event	16
+XkbCompatMapNotifyEvent.display	24
+XkbCompatMapNotifyEvent.time	32
+XkbCompatMapNotifyEvent.xkb_type	40
+XkbCompatMapNotifyEvent.device	44
+XkbCompatMapNotifyEvent.changed_groups	48
+XkbCompatMapNotifyEvent.first_si	52
+XkbCompatMapNotifyEvent.num_si	56
+XkbCompatMapNotifyEvent.num_total_si	60
+XkbCompatMapNotifyEvent	64
+XIMStatusDrawCallbackStruct.type	0
+XIMStatusDrawCallbackStruct.data	8
+XIMStatusDrawCallbackStruct	16
+XKeyboardControl.key_click_percent	0
+XKeyboardControl.bell_percent	4
+XKeyboardControl.bell_pitch	8
+XKeyboardControl.bell_duration	12
+XKeyboardControl.led	16
+XKeyboardControl.led_mode	20
+XKeyboardControl.key	24
+XKeyboardControl.auto_repeat_mode	28
+XKeyboardControl	32
+XSelectionClearEvent.type	0
+XSelectionClearEvent.serial	8
+XSelectionClearEvent.send_event	16
+XSelectionClearEvent.display	24
+XSelectionClearEvent.window	32
+XSelectionClearEvent.selection	40
+XSelectionClearEvent.time	48
+XSelectionClearEvent	56
+XWindowChanges.x	0
+XWindowChanges.y	4
+XWindowChanges.width	8
+XWindowChanges.height	12
+XWindowChanges.border_width	16
+XWindowChanges.sibling	24
+XWindowChanges.stack_mode	32
+XWindowChanges	40
+XIMPreeditCaretCallbackStruct.position	0
+XIMPreeditCaretCallbackStruct.direction	4
+XIMPreeditCaretCallbackStruct.style	8
+XIMPreeditCaretCallbackStruct	12
+XOMCharSetList.charset_count	0
+XOMCharSetList.charset_list	8
+XOMCharSetList	16
+XOMFontInfo.num_font	0
+XOMFontInfo.font_struct_list	8
+XOMFontInfo.font_name_list	16
+XOMFontInfo	24
+AwtScreenData.numConfigs	0
+AwtScreenData.root	8
+AwtScreenData.whitepixel	16
+AwtScreenData.blackpixel	24
+AwtScreenData.defaultConfig	32
+AwtScreenData.configs	40
+AwtScreenData	48
+XIMHotKeyTrigger.keysym	0
+XIMHotKeyTrigger.modifier	8
+XIMHotKeyTrigger.modifier_mask	12
+XIMHotKeyTrigger	16
+XCirculateEvent.type	0
+XCirculateEvent.serial	8
+XCirculateEvent.send_event	16
+XCirculateEvent.display	24
+XCirculateEvent.event	32
+XCirculateEvent.window	40
+XCirculateEvent.place	48
+XCirculateEvent	56
+Screen.ext_data	0
+Screen.display	8
+Screen.root	16
+Screen.width	24
+Screen.height	28
+Screen.mwidth	32
+Screen.mheight	36
+Screen.ndepths	40
+Screen.depths	48
+Screen.root_depth	56
+Screen.root_visual	64
+Screen.default_gc	72
+Screen.cmap	80
+Screen.white_pixel	88
+Screen.black_pixel	96
+Screen.max_maps	104
+Screen.min_maps	108
+Screen.backing_store	112
+Screen.save_unders	116
+Screen.root_input_mask	120
+Screen	128
+XMapRequestEvent.type	0
+XMapRequestEvent.serial	8
+XMapRequestEvent.send_event	16
+XMapRequestEvent.display	24
+XMapRequestEvent.parent	32
+XMapRequestEvent.window	40
+XMapRequestEvent	48
+XIMText.length	0
+XIMText.feedback	8
+XIMText.encoding_is_wchar	16
+XIMText.string	24
+XIMText	32
+XGraphicsExposeEvent.type	0
+XGraphicsExposeEvent.serial	8
+XGraphicsExposeEvent.send_event	16
+XGraphicsExposeEvent.display	24
+XGraphicsExposeEvent.drawable	32
+XGraphicsExposeEvent.x	40
+XGraphicsExposeEvent.y	44
+XGraphicsExposeEvent.width	48
+XGraphicsExposeEvent.height	52
+XGraphicsExposeEvent.count	56
+XGraphicsExposeEvent.major_code	60
+XGraphicsExposeEvent.minor_code	64
+XGraphicsExposeEvent	72
+XEvent.type	0
+XEvent.xany	0
+XEvent.xkey	0
+XEvent.xbutton	0
+XEvent.xmotion	0
+XEvent.xcrossing	0
+XEvent.xfocus	0
+XEvent.xexpose	0
+XEvent.xgraphicsexpose	0
+XEvent.xnoexpose	0
+XEvent.xvisibility	0
+XEvent.xcreatewindow	0
+XEvent.xdestroywindow	0
+XEvent.xunmap	0
+XEvent.xmap	0
+XEvent.xmaprequest	0
+XEvent.xreparent	0
+XEvent.xconfigure	0
+XEvent.xgravity	0
+XEvent.xresizerequest	0
+XEvent.xconfigurerequest	0
+XEvent.xcirculate	0
+XEvent.xcirculaterequest	0
+XEvent.xproperty	0
+XEvent.xselectionclear	0
+XEvent.xselectionrequest	0
+XEvent.xselection	0
+XEvent.xcolormap	0
+XEvent.xclient	0
+XEvent.xmapping	0
+XEvent.xerror	0
+XEvent.xkeymap	0
+XEvent.pad	0
+XEvent	192
+XRenderDirectFormat.red	0
+XRenderDirectFormat.redMask	2
+XRenderDirectFormat.green	4
+XRenderDirectFormat.greenMask	6
+XRenderDirectFormat.blue	8
+XRenderDirectFormat.blueMask	10
+XRenderDirectFormat.alpha	12
+XRenderDirectFormat.alphaMask	14
+XRenderDirectFormat	16
+ColorData.awt_Colors	0
+ColorData.awt_numICMcolors	8
+ColorData.awt_icmLUT	16
+ColorData.awt_icmLUT2Colors	24
+ColorData.img_grays	32
+ColorData.img_clr_tbl	40
+ColorData.img_oda_red	48
+ColorData.img_oda_green	56
+ColorData.img_oda_blue	64
+ColorData.pGrayInverseLutData	72
+ColorData.screendata	80
+ColorData	88
+XFontStruct.ext_data	0
+XFontStruct.fid	8
+XFontStruct.direction	16
+XFontStruct.min_char_or_byte2	20
+XFontStruct.max_char_or_byte2	24
+XFontStruct.min_byte1	28
+XFontStruct.max_byte1	32
+XFontStruct.all_chars_exist	36
+XFontStruct.n_properties	44
+XFontStruct.properties	48
+XFontStruct.min_bounds	56
+XFontStruct.max_bounds	68
+XFontStruct.per_char	80
+XFontStruct.ascent	88
+XFontStruct.descent	92
+XFontStruct	96
+XExtCodes.extension	0
+XExtCodes.major_opcode	4
+XExtCodes.first_event	8
+XExtCodes.first_error	12
+XExtCodes	16
+XFontSetExtents.max_ink_extent	0
+XFontSetExtents.max_logical_extent	8
+XFontSetExtents	16
+XSelectionEvent.type	0
+XSelectionEvent.serial	8
+XSelectionEvent.send_event	16
+XSelectionEvent.display	24
+XSelectionEvent.requestor	32
+XSelectionEvent.selection	40
+XSelectionEvent.target	48
+XSelectionEvent.property	56
+XSelectionEvent.time	64
+XSelectionEvent	72
+XArc.x	0
+XArc.y	2
+XArc.width	4
+XArc.height	6
+XArc.angle1	8
+XArc.angle2	10
+XArc	12
+XErrorEvent.type	0
+XErrorEvent.display	8
+XErrorEvent.resourceid	16
+XErrorEvent.serial	24
+XErrorEvent.error_code	32
+XErrorEvent.request_code	33
+XErrorEvent.minor_code	34
+XErrorEvent	40
+XConfigureRequestEvent.type	0
+XConfigureRequestEvent.serial	8
+XConfigureRequestEvent.send_event	16
+XConfigureRequestEvent.display	24
+XConfigureRequestEvent.parent	32
+XConfigureRequestEvent.window	40
+XConfigureRequestEvent.x	48
+XConfigureRequestEvent.y	52
+XConfigureRequestEvent.width	56
+XConfigureRequestEvent.height	60
+XConfigureRequestEvent.border_width	64
+XConfigureRequestEvent.above	72
+XConfigureRequestEvent.detail	80
+XConfigureRequestEvent.value_mask	88
+XConfigureRequestEvent	96
+ScreenFormat.ext_data	0
+ScreenFormat.depth	8
+ScreenFormat.bits_per_pixel	12
+ScreenFormat.scanline_pad	16
+ScreenFormat	24
+XButtonEvent.type	0
+XButtonEvent.serial	8
+XButtonEvent.send_event	16
+XButtonEvent.display	24
+XButtonEvent.window	32
+XButtonEvent.root	40
+XButtonEvent.subwindow	48
+XButtonEvent.time	56
+XButtonEvent.x	64
+XButtonEvent.y	68
+XButtonEvent.x_root	72
+XButtonEvent.y_root	76
+XButtonEvent.state	80
+XButtonEvent.button	84
+XButtonEvent.same_screen	88
+XButtonEvent	96
+XFontProp.name	0
+XFontProp.card32	8
+XFontProp	16
+XIMValuesList.count_values	0
+XIMValuesList.supported_values	8
+XIMValuesList	16
+XKeymapEvent.type	0
+XKeymapEvent.serial	8
+XKeymapEvent.send_event	16
+XKeymapEvent.display	24
+XKeymapEvent.window	32
+XKeymapEvent.key_vector	40
+XKeymapEvent	72
+XTextItem16.chars	0
+XTextItem16.nchars	8
+XTextItem16.delta	12
+XTextItem16.font	16
+XTextItem16	24
+XIMPreeditDrawCallbackStruct.caret	0
+XIMPreeditDrawCallbackStruct.chg_first	4
+XIMPreeditDrawCallbackStruct.chg_length	8
+XIMPreeditDrawCallbackStruct.text	16
+XIMPreeditDrawCallbackStruct	24
+XVisualInfo.visual	0
+XVisualInfo.visualid	8
+XVisualInfo.screen	16
+XVisualInfo.depth	20
+XVisualInfo.class	24
+XVisualInfo.red_mask	32
+XVisualInfo.green_mask	40
+XVisualInfo.blue_mask	48
+XVisualInfo.colormap_size	56
+XVisualInfo.bits_per_rgb	60
+XVisualInfo	64
+XkbControlsNotifyEvent.type	0
+XkbControlsNotifyEvent.serial	8
+XkbControlsNotifyEvent.send_event	16
+XkbControlsNotifyEvent.display	24
+XkbControlsNotifyEvent.time	32
+XkbControlsNotifyEvent.xkb_type	40
+XkbControlsNotifyEvent.device	44
+XkbControlsNotifyEvent.changed_ctrls	48
+XkbControlsNotifyEvent.enabled_ctrls	52
+XkbControlsNotifyEvent.enabled_ctrl_changes	56
+XkbControlsNotifyEvent.num_groups	60
+XkbControlsNotifyEvent.keycode	64
+XkbControlsNotifyEvent.event_type	65
+XkbControlsNotifyEvent.req_major	66
+XkbControlsNotifyEvent.req_minor	67
+XkbControlsNotifyEvent	72
+PropMwmHints.flags	0
+PropMwmHints.functions	8
+PropMwmHints.decorations	16
+PropMwmHints.inputMode	24
+PropMwmHints.status	32
+PropMwmHints	40
+XClientMessageEvent.type	0
+XClientMessageEvent.serial	8
+XClientMessageEvent.send_event	16
+XClientMessageEvent.display	24
+XClientMessageEvent.window	32
+XClientMessageEvent.message_type	40
+XClientMessageEvent.format	48
+XClientMessageEvent.data	56
+XClientMessageEvent	96
+XAnyEvent.type	0
+XAnyEvent.serial	8
+XAnyEvent.send_event	16
+XAnyEvent.display	24
+XAnyEvent.window	32
+XAnyEvent	40
+XkbIndicatorNotifyEvent.type	0
+XkbIndicatorNotifyEvent.serial	8
+XkbIndicatorNotifyEvent.send_event	16
+XkbIndicatorNotifyEvent.display	24
+XkbIndicatorNotifyEvent.time	32
+XkbIndicatorNotifyEvent.xkb_type	40
+XkbIndicatorNotifyEvent.device	44
+XkbIndicatorNotifyEvent.changed	48
+XkbIndicatorNotifyEvent.state	52
+XkbIndicatorNotifyEvent	56
+XIMPreeditStateNotifyCallbackStruct.state	0
+XIMPreeditStateNotifyCallbackStruct	8
+XkbAnyEvent.type	0
+XkbAnyEvent.serial	8
+XkbAnyEvent.send_event	16
+XkbAnyEvent.display	24
+XkbAnyEvent.time	32
+XkbAnyEvent.xkb_type	40
+XkbAnyEvent.device	44
+XkbAnyEvent	48
+XMotionEvent.type	0
+XMotionEvent.serial	8
+XMotionEvent.send_event	16
+XMotionEvent.display	24
+XMotionEvent.window	32
+XMotionEvent.root	40
+XMotionEvent.subwindow	48
+XMotionEvent.time	56
+XMotionEvent.x	64
+XMotionEvent.y	68
+XMotionEvent.x_root	72
+XMotionEvent.y_root	76
+XMotionEvent.state	80
+XMotionEvent.is_hint	84
+XMotionEvent.same_screen	88
+XMotionEvent	96
+XIMHotKeyTriggers.num_hot_key	0
+XIMHotKeyTriggers.key	8
+XIMHotKeyTriggers	16
+XIMStyles.count_styles	0
+XIMStyles.supported_styles	8
+XIMStyles	16
+XkbExtensionDeviceNotifyEvent.type	0
+XkbExtensionDeviceNotifyEvent.serial	8
+XkbExtensionDeviceNotifyEvent.send_event	16
+XkbExtensionDeviceNotifyEvent.display	24
+XkbExtensionDeviceNotifyEvent.time	32
+XkbExtensionDeviceNotifyEvent.xkb_type	40
+XkbExtensionDeviceNotifyEvent.device	44
+XkbExtensionDeviceNotifyEvent.reason	48
+XkbExtensionDeviceNotifyEvent.supported	52
+XkbExtensionDeviceNotifyEvent.unsupported	56
+XkbExtensionDeviceNotifyEvent.first_btn	60
+XkbExtensionDeviceNotifyEvent.num_btns	64
+XkbExtensionDeviceNotifyEvent.leds_defined	68
+XkbExtensionDeviceNotifyEvent.led_state	72
+XkbExtensionDeviceNotifyEvent.led_class	76
+XkbExtensionDeviceNotifyEvent.led_id	80
+XkbExtensionDeviceNotifyEvent	88
+XwcTextItem.chars	0
+XwcTextItem.nchars	8
+XwcTextItem.delta	12
+XwcTextItem.font_set	16
+XwcTextItem	24
+XClassHint.res_name	0
+XClassHint.res_class	8
+XClassHint	16
+XChar2b.byte1	0
+XChar2b.byte2	1
+XChar2b	2
+XSetWindowAttributes.background_pixmap	0
+XSetWindowAttributes.background_pixel	8
+XSetWindowAttributes.border_pixmap	16
+XSetWindowAttributes.border_pixel	24
+XSetWindowAttributes.bit_gravity	32
+XSetWindowAttributes.win_gravity	36
+XSetWindowAttributes.backing_store	40
+XSetWindowAttributes.backing_planes	48
+XSetWindowAttributes.backing_pixel	56
+XSetWindowAttributes.save_under	64
+XSetWindowAttributes.event_mask	72
+XSetWindowAttributes.do_not_propagate_mask	80
+XSetWindowAttributes.override_redirect	88
+XSetWindowAttributes.colormap	96
+XSetWindowAttributes.cursor	104
+XSetWindowAttributes	112
+XRenderPictFormat.id	0
+XRenderPictFormat.type	8
+XRenderPictFormat.depth	12
+XRenderPictFormat.direct	16
+XRenderPictFormat.colormap	32
+XRenderPictFormat	40
+XReparentEvent.type	0
+XReparentEvent.serial	8
+XReparentEvent.send_event	16
+XReparentEvent.display	24
+XReparentEvent.event	32
+XReparentEvent.window	40
+XReparentEvent.parent	48
+XReparentEvent.x	56
+XReparentEvent.y	60
+XReparentEvent.override_redirect	64
+XReparentEvent	72
+XCirculateRequestEvent.type	0
+XCirculateRequestEvent.serial	8
+XCirculateRequestEvent.send_event	16
+XCirculateRequestEvent.display	24
+XCirculateRequestEvent.parent	32
+XCirculateRequestEvent.window	40
+XCirculateRequestEvent.place	48
+XCirculateRequestEvent	56
+XImage.width	0
+XImage.height	4
+XImage.xoffset	8
+XImage.format	12
+XImage.data	16
+XImage.byte_order	24
+XImage.bitmap_unit	28
+XImage.bitmap_bit_order	32
+XImage.bitmap_pad	36
+XImage.depth	40
+XImage.bytes_per_line	44
+XImage.bits_per_pixel	48
+XImage.red_mask	56
+XImage.green_mask	64
+XImage.blue_mask	72
+XImage.obdata	80
+XImage.f.create_image	88
+XImage.f.destroy_image	96
+XImage.f.get_pixel	104
+XImage.f.put_pixel	112
+XImage.f.sub_image	120
+XImage.f.add_pixel	128
+XImage	136
+XKeyEvent.type	0
+XKeyEvent.serial	8
+XKeyEvent.send_event	16
+XKeyEvent.display	24
+XKeyEvent.window	32
+XKeyEvent.root	40
+XKeyEvent.subwindow	48
+XKeyEvent.time	56
+XKeyEvent.x	64
+XKeyEvent.y	68
+XKeyEvent.x_root	72
+XKeyEvent.y_root	76
+XKeyEvent.state	80
+XKeyEvent.keycode	84
+XKeyEvent.same_screen	88
+XKeyEvent	96
+XkbActionMessageEvent.type	0
+XkbActionMessageEvent.serial	8
+XkbActionMessageEvent.send_event	16
+XkbActionMessageEvent.display	24
+XkbActionMessageEvent.time	32
+XkbActionMessageEvent.xkb_type	40
+XkbActionMessageEvent.device	44
+XkbActionMessageEvent.keycode	48
+XkbActionMessageEvent.press	52
+XkbActionMessageEvent.key_event_follows	56
+XkbActionMessageEvent.group	60
+XkbActionMessageEvent.mods	64
+XkbActionMessageEvent.message	68
+XkbActionMessageEvent	80
+XdbeSwapInfo.swap_window	0
+XdbeSwapInfo.swap_action	8
+XdbeSwapInfo	16
+XTextItem.chars	0
+XTextItem.nchars	8
+XTextItem.delta	12
+XTextItem.font	16
+XTextItem	24
+XModifierKeymap.max_keypermod	0
+XModifierKeymap.modifiermap	8
+XModifierKeymap	16
+XCharStruct.lbearing	0
+XCharStruct.rbearing	2
+XCharStruct.width	4
+XCharStruct.ascent	6
+XCharStruct.descent	8
+XCharStruct.attributes	10
+XCharStruct	12
+XGravityEvent.type	0
+XGravityEvent.serial	8
+XGravityEvent.send_event	16
+XGravityEvent.display	24
+XGravityEvent.event	32
+XGravityEvent.window	40
+XGravityEvent.x	48
+XGravityEvent.y	52
+XGravityEvent	56
+Visual.ext_data	0
+Visual.visualid	8
+Visual.class	16
+Visual.red_mask	24
+Visual.green_mask	32
+Visual.blue_mask	40
+Visual.bits_per_rgb	48
+Visual.map_entries	52
+Visual	56
+XOMOrientation.num_orientation	0
+XOMOrientation.orientation	8
+XOMOrientation	16
+XkbAccessXNotifyEvent.type	0
+XkbAccessXNotifyEvent.serial	8
+XkbAccessXNotifyEvent.send_event	16
+XkbAccessXNotifyEvent.display	24
+XkbAccessXNotifyEvent.time	32
+XkbAccessXNotifyEvent.xkb_type	40
+XkbAccessXNotifyEvent.device	44
+XkbAccessXNotifyEvent.detail	48
+XkbAccessXNotifyEvent.keycode	52
+XkbAccessXNotifyEvent.sk_delay	56
+XkbAccessXNotifyEvent.debounce_delay	60
+XkbAccessXNotifyEvent	64
+XWindowAttributes.x	0
+XWindowAttributes.y	4
+XWindowAttributes.width	8
+XWindowAttributes.height	12
+XWindowAttributes.border_width	16
+XWindowAttributes.depth	20
+XWindowAttributes.visual	24
+XWindowAttributes.root	32
+XWindowAttributes.class	40
+XWindowAttributes.bit_gravity	44
+XWindowAttributes.win_gravity	48
+XWindowAttributes.backing_store	52
+XWindowAttributes.backing_planes	56
+XWindowAttributes.backing_pixel	64
+XWindowAttributes.save_under	72
+XWindowAttributes.colormap	80
+XWindowAttributes.map_installed	88
+XWindowAttributes.map_state	92
+XWindowAttributes.all_event_masks	96
+XWindowAttributes.your_event_mask	104
+XWindowAttributes.do_not_propagate_mask	112
+XWindowAttributes.override_redirect	120
+XWindowAttributes.screen	128
+XWindowAttributes	136
+XmbTextItem.chars	0
+XmbTextItem.nchars	8
+XmbTextItem.delta	12
+XmbTextItem.font_set	16
+XmbTextItem	24
+XMappingEvent.type	0
+XMappingEvent.serial	8
+XMappingEvent.send_event	16
+XMappingEvent.display	24
+XMappingEvent.window	32
+XMappingEvent.request	40
+XMappingEvent.first_keycode	44
+XMappingEvent.count	48
+XMappingEvent	56
+XSizeHints.flags	0
+XSizeHints.x	8
+XSizeHints.y	12
+XSizeHints.width	16
+XSizeHints.height	20
+XSizeHints.min_width	24
+XSizeHints.min_height	28
+XSizeHints.max_width	32
+XSizeHints.max_height	36
+XSizeHints.width_inc	40
+XSizeHints.height_inc	44
+XSizeHints.min_aspect.x	48
+XSizeHints.min_aspect.y	52
+XSizeHints.max_aspect.x	56
+XSizeHints.max_aspect.y	60
+XSizeHints.base_width	64
+XSizeHints.base_height	68
+XSizeHints.win_gravity	72
+XSizeHints	80
+XUnmapEvent.type	0
+XUnmapEvent.serial	8
+XUnmapEvent.send_event	16
+XUnmapEvent.display	24
+XUnmapEvent.event	32
+XUnmapEvent.window	40
+XUnmapEvent.from_configure	48
+XUnmapEvent	56
+awtImageData.Depth	0
+awtImageData.wsImageFormat	4
+awtImageData.clrdata	16
+awtImageData.convert	48
+awtImageData	560
+XkbStateNotifyEvent.type	0
+XkbStateNotifyEvent.serial	8
+XkbStateNotifyEvent.send_event	16
+XkbStateNotifyEvent.display	24
+XkbStateNotifyEvent.time	32
+XkbStateNotifyEvent.xkb_type	40
+XkbStateNotifyEvent.device	44
+XkbStateNotifyEvent.changed	48
+XkbStateNotifyEvent.group	52
+XkbStateNotifyEvent.base_group	56
+XkbStateNotifyEvent.latched_group	60
+XkbStateNotifyEvent.locked_group	64
+XkbStateNotifyEvent.mods	68
+XkbStateNotifyEvent.base_mods	72
+XkbStateNotifyEvent.latched_mods	76
+XkbStateNotifyEvent.locked_mods	80
+XkbStateNotifyEvent.compat_state	84
+XkbStateNotifyEvent.grab_mods	88
+XkbStateNotifyEvent.compat_grab_mods	89
+XkbStateNotifyEvent.lookup_mods	90
+XkbStateNotifyEvent.compat_lookup_mods	91
+XkbStateNotifyEvent.ptr_buttons	92
+XkbStateNotifyEvent.keycode	96
+XkbStateNotifyEvent.event_type	97
+XkbStateNotifyEvent.req_major	98
+XkbStateNotifyEvent.req_minor	99
+XkbStateNotifyEvent	104
+XExposeEvent.type	0
+XExposeEvent.serial	8
+XExposeEvent.send_event	16
+XExposeEvent.display	24
+XExposeEvent.window	32
+XExposeEvent.x	40
+XExposeEvent.y	44
+XExposeEvent.width	48
+XExposeEvent.height	52
+XExposeEvent.count	56
+XExposeEvent	64
+XkbMapNotifyEvent.type	0
+XkbMapNotifyEvent.serial	8
+XkbMapNotifyEvent.send_event	16
+XkbMapNotifyEvent.display	24
+XkbMapNotifyEvent.time	32
+XkbMapNotifyEvent.xkb_type	40
+XkbMapNotifyEvent.device	44
+XkbMapNotifyEvent.changed	48
+XkbMapNotifyEvent.flags	52
+XkbMapNotifyEvent.first_type	56
+XkbMapNotifyEvent.num_types	60
+XkbMapNotifyEvent.min_key_code	64
+XkbMapNotifyEvent.max_key_code	65
+XkbMapNotifyEvent.first_key_sym	66
+XkbMapNotifyEvent.first_key_act	67
+XkbMapNotifyEvent.first_key_behavior	68
+XkbMapNotifyEvent.first_key_explicit	69
+XkbMapNotifyEvent.first_modmap_key	70
+XkbMapNotifyEvent.first_vmodmap_key	71
+XkbMapNotifyEvent.num_key_syms	72
+XkbMapNotifyEvent.num_key_acts	76
+XkbMapNotifyEvent.num_key_behaviors	80
+XkbMapNotifyEvent.num_key_explicit	84
+XkbMapNotifyEvent.num_modmap_keys	88
+XkbMapNotifyEvent.num_vmodmap_keys	92
+XkbMapNotifyEvent.vmods	96
+XkbMapNotifyEvent	104
+XGCValues.function	0
+XGCValues.plane_mask	8
+XGCValues.foreground	16
+XGCValues.background	24
+XGCValues.line_width	32
+XGCValues.line_style	36
+XGCValues.cap_style	40
+XGCValues.join_style	44
+XGCValues.fill_style	48
+XGCValues.fill_rule	52
+XGCValues.arc_mode	56
+XGCValues.tile	64
+XGCValues.stipple	72
+XGCValues.ts_x_origin	80
+XGCValues.ts_y_origin	84
+XGCValues.font	88
+XGCValues.subwindow_mode	96
+XGCValues.graphics_exposures	100
+XGCValues.clip_x_origin	104
+XGCValues.clip_y_origin	108
+XGCValues.clip_mask	112
+XGCValues.dash_offset	120
+XGCValues.dashes	124
+XGCValues	128
+XFocusChangeEvent.type	0
+XFocusChangeEvent.serial	8
+XFocusChangeEvent.send_event	16
+XFocusChangeEvent.display	24
+XFocusChangeEvent.window	32
+XFocusChangeEvent.mode	40
+XFocusChangeEvent.detail	44
+XFocusChangeEvent	48
+XPixmapFormatValues.depth	0
+XPixmapFormatValues.bits_per_pixel	4
+XPixmapFormatValues.scanline_pad	8
+XPixmapFormatValues	12
+XMapEvent.type	0
+XMapEvent.serial	8
+XMapEvent.send_event	16
+XMapEvent.display	24
+XMapEvent.event	32
+XMapEvent.window	40
+XMapEvent.override_redirect	48
+XMapEvent	56
+XkbBellNotifyEvent.type	0
+XkbBellNotifyEvent.serial	8
+XkbBellNotifyEvent.send_event	16
+XkbBellNotifyEvent.display	24
+XkbBellNotifyEvent.time	32
+XkbBellNotifyEvent.xkb_type	40
+XkbBellNotifyEvent.device	44
+XkbBellNotifyEvent.percent	48
+XkbBellNotifyEvent.pitch	52
+XkbBellNotifyEvent.duration	56
+XkbBellNotifyEvent.bell_class	60
+XkbBellNotifyEvent.bell_id	64
+XkbBellNotifyEvent.name	72
+XkbBellNotifyEvent.window	80
+XkbBellNotifyEvent.event_only	88
+XkbBellNotifyEvent	96
+XIMStringConversionText.length	0
+XIMStringConversionText.feedback	8
+XIMStringConversionText.encoding_is_wchar	16
+XIMStringConversionText.string	24
+XIMStringConversionText	32
+XKeyboardState.key_click_percent	0
+XKeyboardState.bell_percent	4
+XKeyboardState.bell_pitch	8
+XKeyboardState.bell_duration	12
+XKeyboardState.led_mask	16
+XKeyboardState.global_auto_repeat	24
+XKeyboardState.auto_repeats	28
+XKeyboardState	64
+XkbEvent.type	0
+XkbEvent.any	0
+XkbEvent.new_kbd	0
+XkbEvent.map	0
+XkbEvent.state	0
+XkbEvent.ctrls	0
+XkbEvent.indicators	0
+XkbEvent.names	0
+XkbEvent.compat	0
+XkbEvent.bell	0
+XkbEvent.message	0
+XkbEvent.accessx	0
+XkbEvent.device	0
+XkbEvent.core	0
+XkbEvent	192
+XPoint.x	0
+XPoint.y	2
+XPoint	4
+XSegment.x1	0
+XSegment.y1	2
+XSegment.x2	4
+XSegment.y2	6
+XSegment	8
+XIconSize.min_width	0
+XIconSize.min_height	4
+XIconSize.max_width	8
+XIconSize.max_height	12
+XIconSize.width_inc	16
+XIconSize.height_inc	20
+XIconSize	24
+XIMCallback.client_data	0
+XIMCallback.callback	8
+XIMCallback	16
+XConfigureEvent.type	0
+XConfigureEvent.serial	8
+XConfigureEvent.send_event	16
+XConfigureEvent.display	24
+XConfigureEvent.event	32
+XConfigureEvent.window	40
+XConfigureEvent.x	48
+XConfigureEvent.y	52
+XConfigureEvent.width	56
+XConfigureEvent.height	60
+XConfigureEvent.border_width	64
+XConfigureEvent.above	72
+XConfigureEvent.override_redirect	80
+XConfigureEvent	88
+XRectangle.x	0
+XRectangle.y	2
+XRectangle.width	4
+XRectangle.height	6
+XRectangle	8
+XkbNamesNotifyEvent.type	0
+XkbNamesNotifyEvent.serial	8
+XkbNamesNotifyEvent.send_event	16
+XkbNamesNotifyEvent.display	24
+XkbNamesNotifyEvent.time	32
+XkbNamesNotifyEvent.xkb_type	40
+XkbNamesNotifyEvent.device	44
+XkbNamesNotifyEvent.changed	48
+XkbNamesNotifyEvent.first_type	52
+XkbNamesNotifyEvent.num_types	56
+XkbNamesNotifyEvent.first_lvl	60
+XkbNamesNotifyEvent.num_lvls	64
+XkbNamesNotifyEvent.num_aliases	68
+XkbNamesNotifyEvent.num_radio_groups	72
+XkbNamesNotifyEvent.changed_vmods	76
+XkbNamesNotifyEvent.changed_groups	80
+XkbNamesNotifyEvent.changed_indicators	84
+XkbNamesNotifyEvent.first_key	88
+XkbNamesNotifyEvent.num_keys	92
+XkbNamesNotifyEvent	96
+XCreateWindowEvent.type	0
+XCreateWindowEvent.serial	8
+XCreateWindowEvent.send_event	16
+XCreateWindowEvent.display	24
+XCreateWindowEvent.parent	32
+XCreateWindowEvent.window	40
+XCreateWindowEvent.x	48
+XCreateWindowEvent.y	52
+XCreateWindowEvent.width	56
+XCreateWindowEvent.height	60
+XCreateWindowEvent.border_width	64
+XCreateWindowEvent.override_redirect	68
+XCreateWindowEvent	72
+XVisibilityEvent.type	0
+XVisibilityEvent.serial	8
+XVisibilityEvent.send_event	16
+XVisibilityEvent.display	24
+XVisibilityEvent.window	32
+XVisibilityEvent.state	40
+XVisibilityEvent	48
+XWMHints.flags	0
+XWMHints.initial_state	12
+XWMHints.icon_pixmap	16
+XWMHints.icon_window	24
+XWMHints.icon_x	32
+XWMHints.icon_y	36
+XWMHints.icon_mask	40
+XWMHints.input	8
+XWMHints.window_group	48
+XWMHints	56
+XCrossingEvent.type	0
+XCrossingEvent.serial	8
+XCrossingEvent.send_event	16
+XCrossingEvent.display	24
+XCrossingEvent.window	32
+XCrossingEvent.root	40
+XCrossingEvent.subwindow	48
+XCrossingEvent.time	56
+XCrossingEvent.x	64
+XCrossingEvent.y	68
+XCrossingEvent.x_root	72
+XCrossingEvent.y_root	76
+XCrossingEvent.mode	80
+XCrossingEvent.detail	84
+XCrossingEvent.same_screen	88
+XCrossingEvent.focus	92
+XCrossingEvent.state	96
+XCrossingEvent	104
+XSelectionRequestEvent.type	0
+XSelectionRequestEvent.serial	8
+XSelectionRequestEvent.send_event	16
+XSelectionRequestEvent.display	24
+XSelectionRequestEvent.owner	32
+XSelectionRequestEvent.requestor	40
+XSelectionRequestEvent.selection	48
+XSelectionRequestEvent.target	56
+XSelectionRequestEvent.property	64
+XSelectionRequestEvent.time	72
+XSelectionRequestEvent	80
+XNoExposeEvent.type	0
+XNoExposeEvent.serial	8
+XNoExposeEvent.send_event	16
+XNoExposeEvent.display	24
+XNoExposeEvent.drawable	32
+XNoExposeEvent.major_code	40
+XNoExposeEvent.minor_code	44
+XNoExposeEvent	48
+XHostAddress.family	0
+XHostAddress.length	4
+XHostAddress.address	8
+XHostAddress	16
+XColormapEvent.type	0
+XColormapEvent.serial	8
+XColormapEvent.send_event	16
+XColormapEvent.display	24
+XColormapEvent.window	32
+XColormapEvent.colormap	40
+XColormapEvent.new	48
+XColormapEvent.state	52
+XColormapEvent	56
+ColorEntry.r	0
+ColorEntry.g	1
+ColorEntry.b	2
+ColorEntry.flags	3
+ColorEntry	4
+XResizeRequestEvent.type	0
+XResizeRequestEvent.serial	8
+XResizeRequestEvent.send_event	16
+XResizeRequestEvent.display	24
+XResizeRequestEvent.window	32
+XResizeRequestEvent.width	40
+XResizeRequestEvent.height	44
+XResizeRequestEvent	48
+Depth.depth	0
+Depth.nvisuals	4
+Depth.visuals	8
+Depth	16
+XPropertyEvent.type	0
+XPropertyEvent.serial	8
+XPropertyEvent.send_event	16
+XPropertyEvent.display	24
+XPropertyEvent.window	32
+XPropertyEvent.atom	40
+XPropertyEvent.time	48
+XPropertyEvent.state	56
+XPropertyEvent	64
+XDestroyWindowEvent.type	0
+XDestroyWindowEvent.serial	8
+XDestroyWindowEvent.send_event	16
+XDestroyWindowEvent.display	24
+XDestroyWindowEvent.event	32
+XDestroyWindowEvent.window	40
+XDestroyWindowEvent	48
+XStandardColormap.colormap	0
+XStandardColormap.red_max	8
+XStandardColormap.red_mult	16
+XStandardColormap.green_max	24
+XStandardColormap.green_mult	32
+XStandardColormap.blue_max	40
+XStandardColormap.blue_mult	48
+XStandardColormap.base_pixel	56
+XStandardColormap.visualid	64
+XStandardColormap.killid	72
+XStandardColormap	80
+XComposeStatus.compose_ptr	0
+XComposeStatus.chars_matched	8
+XComposeStatus	16
+AwtGraphicsConfigData.awt_depth	0
+AwtGraphicsConfigData.awt_cmap	8
+AwtGraphicsConfigData.awt_visInfo	16
+AwtGraphicsConfigData.awt_num_colors	80
+AwtGraphicsConfigData.awtImage	88
+AwtGraphicsConfigData.AwtColorMatch	96
+AwtGraphicsConfigData.monoImage	104
+AwtGraphicsConfigData.monoPixmap	112
+AwtGraphicsConfigData.monoPixmapWidth	120
+AwtGraphicsConfigData.monoPixmapHeight	124
+AwtGraphicsConfigData.monoPixmapGC	128
+AwtGraphicsConfigData.pixelStride	136
+AwtGraphicsConfigData.color_data	144
+AwtGraphicsConfigData.glxInfo	152
+AwtGraphicsConfigData.isTranslucencySupported	160
+AwtGraphicsConfigData.renderPictFormat	168
+AwtGraphicsConfigData	208
+XColor.pixel	0
+XColor.red	8
+XColor.green	10
+XColor.blue	12
+XColor.flags	14
+XColor.pad	15
+XColor	16
+XTextProperty.value	0
+XTextProperty.encoding	8
+XTextProperty.format	16
+XTextProperty.nitems	24
+XTextProperty	32
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/make/data/x11wrappergen/xlibtypes.txt	Mon Feb 17 11:37:46 2014 -0500
@@ -0,0 +1,1040 @@
+//
+//
+// This file is used for automated generation of java classes to wrap native structures.
+// The detail on format of this file see WrapperGenerator.java
+//
+// WARNING: if you modified this file, you need to regenerate sizes.64-solaris-i386
+//
+
+XExtData
+    number	int
+    next pointer XExtData
+    free_private pointer
+    private_data	pointer
+XIMText
+    length	short
+    feedback	pointer
+    encoding_is_wchar	Bool
+    string pointer
+XSetWindowAttributes
+    background_pixmap	long
+    background_pixel	long
+    border_pixmap	long
+    border_pixel	long
+    bit_gravity         int
+    win_gravity         int
+    backing_store	int
+    backing_planes	long
+    backing_pixel	long
+    save_under          Bool
+    event_mask          long
+    do_not_propagate_mask	long
+    override_redirect	Bool
+    colormap            long
+    cursor              long
+Visual
+    ext_data    pointer XExtData
+    visualid	long
+    class	int
+    red_mask	long
+    green_mask	long
+    blue_mask	long
+    bits_per_rgb	int
+    map_entries	int
+Depth
+    depth	int
+    nvisuals	int
+    visuals   pointer Visual
+XClassHint
+    res_name	pointer
+    res_class	pointer
+XIMPreeditCaretCallbackStruct
+    position	int
+    direction int
+    style     int
+XmbTextItem
+    chars	pointer byte
+    nchars	int
+    delta	int
+    font_set    pointer
+XStandardColormap
+    colormap    long
+    red_max	long
+    red_mult	long
+    green_max	long
+    green_mult	long
+    blue_max	long
+    blue_mult	long
+    base_pixel	long
+    visualid    long
+    killid      long
+XIMCallback
+    client_data	pointer
+    callback    pointer
+XKeyboardState
+    key_click_percent	int
+    bell_percent	int
+    bell_pitch          int
+    bell_duration	int
+    led_mask            long
+    global_auto_repeat	int
+    auto_repeats	array byte 32
+XCirculateEvent
+    type	int
+    serial	long
+    send_event	Bool
+    display long
+    event	long
+    window	long
+    place	int
+XWMHints
+    flags	long
+    initial_state	int
+    icon_pixmap pointer
+    icon_window long
+    icon_x	int
+    icon_y	int
+    icon_mask long
+    input	Bool
+    window_group long
+XCrossingEvent
+    type	int
+    serial	long
+    send_event	Bool
+    display     long
+    window	long
+    root	long
+    subwindow	long
+    time	ulong
+    x	int
+    y	int
+    x_root	int
+    y_root	int
+    mode	int
+    detail	int
+    same_screen	Bool
+    focus	Bool
+    state	int
+XIMStringConversionText
+    length	short
+    feedback	pointer
+    encoding_is_wchar	Bool
+    string      pointer
+XKeymapEvent
+    type	int
+    serial	long
+    send_event  Bool
+    display     long
+    window	long
+    key_vector	array byte 32
+XDestroyWindowEvent
+    type	int
+    serial	long
+    send_event  Bool
+    display     long
+    event	long
+    window	long
+XComposeStatus
+    compose_ptr	pointer
+    chars_matched	int
+XTextItem
+    chars	pointer
+    nchars	int
+    delta	int
+    font	long
+XIMStringConversionCallbackStruct
+    position	short
+    direction     int
+    operation	short
+    factor	short
+    text          pointer XIMStringConversionText
+XOMFontInfo
+    num_font	int
+    font_struct_list pointer
+    font_name_list	pointer
+XClientMessageEvent
+    type	int
+    serial	long
+    send_event  Bool
+    display     long
+    window	long
+    message_type	Atom
+    format	int
+    data        array long 5
+XMapRequestEvent
+    type	int
+    serial	long
+    send_event  Bool
+    display     long
+    parent	long
+    window	long
+XSelectionEvent
+    type	int
+    serial	long
+    send_event  Bool
+    display     long
+    requestor	long
+    selection	Atom
+    target	Atom
+    property	Atom
+    time	ulong
+XVisibilityEvent
+    type	int
+    serial	long
+    send_event  Bool
+    display     long
+    window	long
+    state	int
+XConfigureRequestEvent
+    type	int
+    serial	long
+    send_event  Bool
+    display     long
+    parent	long
+    window	long
+    x	int
+    y	int
+    width	int
+    height	int
+    border_width	int
+    above	long
+    detail	int
+    value_mask	long
+Screen
+    ext_data pointer XExtData
+    display pointer
+    root	long
+    width	int
+    height	int
+    mwidth	int
+    mheight	int
+    ndepths	int
+    depths pointer Depth
+    root_depth	int
+    root_visual pointer Visual
+    default_gc  long
+    cmap	long
+    white_pixel	long
+    black_pixel	long
+    max_maps	int
+    min_maps	int
+    backing_store	int
+    save_unders	Bool
+    root_input_mask	long
+XTextProperty
+    value	pointer byte
+    encoding    long
+    format	int
+    nitems	long
+XWindowChanges
+    x	int
+    y	int
+    width	int
+    height	int
+    border_width	int
+    sibling	long
+    stack_mode	int
+XVisualInfo
+    visual      pointer
+    visualid    long
+    screen	int
+    depth	int
+    class	int
+    red_mask	long
+    green_mask	long
+    blue_mask	long
+    colormap_size	int
+    bits_per_rgb	int
+XRenderDirectFormat
+    red         short
+    redMask     short
+    green       short
+    greenMask   short
+    blue        short
+    blueMask    short
+    alpha       short
+    alphaMask   short
+XRenderPictFormat
+    id          long
+    type        int
+    depth       int
+    direct      struct XRenderDirectFormat
+    colormap    long
+XIMHotKeyTrigger
+    keysym	long
+    modifier	int
+    modifier_mask	int
+XIMHotKeyTriggers
+    num_hot_key	int
+    key         pointer XIMHotKeyTrigger
+XIMStyles
+    count_styles	short
+    supported_styles	pointer long
+XIMStatusDrawCallbackStruct
+    type        int
+    data        long
+XWindowAttributes
+    x	int
+    y	int
+    width	int
+    height	int
+    border_width	int
+    depth	int
+    visual      pointer Visual
+    root	long
+    class	int
+    bit_gravity	int
+    win_gravity	int
+    backing_store	int
+    backing_planes	long
+    backing_pixel	long
+    save_under	Bool
+    colormap	long
+    map_installed	Bool
+    map_state	int
+    all_event_masks	long
+    your_event_mask	long
+    do_not_propagate_mask	long
+    override_redirect	Bool
+    screen pointer Screen
+XExtCodes
+    extension	int
+    major_opcode	int
+    first_event	int
+    first_error	int
+XPropertyEvent
+    type	int
+    serial	long
+    send_event  Bool
+    display     long
+    window	long
+    atom	Atom
+    time	ulong
+    state	int
+
+XSizeHints
+    flags	long
+    x           int
+    y           int
+    width	int
+    height	int
+    min_width	int
+    min_height	int
+    max_width	int
+    max_height	int
+    width_inc	int
+    height_inc	int
+    min_aspect.x int
+    min_aspect.y int
+    max_aspect.x int
+    max_aspect.y int
+    base_width   int
+    base_height  int
+    win_gravity  int
+XIconSize
+    min_width	int
+    min_height	int
+    max_width	int
+    max_height	int
+    width_inc	int
+    height_inc	int
+XwcTextItem
+    chars	pointer
+    nchars	int
+    delta	int
+    font_set    pointer
+XIMPreeditDrawCallbackStruct
+    caret	int
+    chg_first	int
+    chg_length	int
+    text        pointer XIMText
+XErrorEvent
+    type	int
+    display     long
+    resourceid	long
+    serial	long
+    error_code	byte
+    request_code	byte
+    minor_code	byte
+XSelectionClearEvent
+    type	int
+    serial	long
+    send_event	Bool
+    display long
+    window	long
+    selection	Atom
+    time	ulong
+XKeyboardControl
+    key_click_percent	int
+    bell_percent	int
+    bell_pitch	int
+    bell_duration	int
+    led	int
+    led_mode	int
+    key	int
+    auto_repeat_mode	int
+XAnyEvent
+    type	int
+    serial	long
+    send_event  Bool
+    display     long
+    window	long
+XTimeCoord
+    time	ulong
+    x	short
+    y	short
+XGravityEvent
+    type	int
+    serial	long
+    send_event  Bool
+    display     long
+    event	long
+    window	long
+    x           int
+    y           int
+XCharStruct
+    lbearing	short
+    rbearing	short
+    width	short
+    ascent	short
+    descent	short
+    attributes	short
+XArc
+    x	short
+    y	short
+    width	short
+    height	short
+    angle1	short
+    angle2	short
+XPoint
+    x	short
+    y	short
+ScreenFormat
+    ext_data pointer XExtData
+    depth	int
+    bits_per_pixel	int
+    scanline_pad	int
+XFocusChangeEvent
+    type	int
+    serial	long
+    send_event  Bool
+    display     long
+    window	long
+    mode	int
+    detail	int
+XResizeRequestEvent
+    type	int
+    serial	long
+    send_event  Bool
+    display     long
+    window	long
+    width	int
+    height	int
+
+XRectangle
+    x	short
+    y	short
+    width	short
+    height	short
+
+XMappingEvent
+    type	int
+    serial	long
+    send_event  Bool
+    display     long
+    window	long
+    request	int
+    first_keycode	int
+    count	int
+XSegment
+    x1	short
+    y1	short
+    x2	short
+    y2	short
+XColor
+    pixel	long
+    red         short
+    green	short
+    blue	short
+    flags	byte
+    pad         byte
+XKeyEvent
+    type	int
+    serial	long
+    send_event  Bool
+    display     long
+    window	long
+    root	long
+    subwindow	long
+    time	ulong
+    x	int
+    y	int
+    x_root	int
+    y_root	int
+    state	int
+    keycode	int
+    same_screen	Bool
+XReparentEvent
+    type	int
+    serial	long
+    send_event  Bool
+    display     long
+    event	long
+    window	long
+    parent	long
+    x           int
+    y           int
+    override_redirect	Bool
+XMotionEvent
+    type	int
+    serial	long
+    send_event  Bool
+    display     long
+    window	long
+    root	long
+    subwindow	long
+    time	ulong
+    x	int
+    y	int
+    x_root	int
+    y_root	int
+    state	int
+    is_hint	byte
+    same_screen	Bool
+XButtonEvent
+    type	int
+    serial	long
+    send_event Bool
+    display     long
+    window	long
+    root	long
+    subwindow	long
+    time	ulong
+    x	int
+    y	int
+    x_root	int
+    y_root	int
+    state	int
+    button	int
+    same_screen	Bool
+XHostAddress
+    family	int
+    length	int
+    address	pointer
+XOMCharSetList
+    charset_count	int
+    charset_list	pointer
+XNoExposeEvent
+    type	int
+    serial	long
+    send_event  Bool
+    display     long
+    drawable	long
+    major_code	int
+    minor_code	int
+XSelectionRequestEvent
+    type	int
+    serial	long
+    send_event  Bool
+    display     long
+    owner	long
+    requestor	long
+    selection	Atom
+    target	Atom
+    property	Atom
+    time	ulong
+XGCValues
+    function	int
+    plane_mask	long
+    foreground	long
+    background	long
+    line_width	int
+    line_style	int
+    cap_style	int
+    join_style	int
+    fill_style	int
+    fill_rule	int
+    arc_mode	int
+    tile	long
+    stipple	long
+    ts_x_origin	int
+    ts_y_origin	int
+    font	long
+    subwindow_mode	int
+    graphics_exposures	Bool
+    clip_x_origin	int
+    clip_y_origin	int
+    clip_mask	long
+    dash_offset	int
+    dashes	byte
+XImage
+    width	int
+    height	int
+    xoffset	int
+    format	int
+    data	pointer byte
+    byte_order	int
+    bitmap_unit	int
+    bitmap_bit_order	int
+    bitmap_pad	int
+    depth	int
+    bytes_per_line	int
+    bits_per_pixel	int
+    red_mask	long
+    green_mask	long
+    blue_mask	long
+    obdata	pointer
+    f.create_image pointer
+    f.destroy_image pointer
+    f.get_pixel pointer
+    f.put_pixel pointer
+    f.sub_image pointer
+    f.add_pixel pointer
+XIMValuesList
+    count_values	short
+    supported_values	pointer
+XColormapEvent
+    type	int
+    serial	long
+    send_event  Bool
+    display     long
+    window	long
+    colormap	long
+    new         Bool
+    state	int
+XIMPreeditStateNotifyCallbackStruct
+    state	long
+XCreateWindowEvent
+    type	int
+    serial	long
+    send_event  Bool
+    display     long
+    parent	long
+    window	long
+    x	int
+    y	int
+    width	int
+    height	int
+    border_width	int
+    override_redirect	Bool
+XConfigureEvent
+    type	int
+    serial	long
+    send_event  Bool
+    display     long
+    event	long
+    window	long
+    x	int
+    y	int
+    width	int
+    height	int
+    border_width	int
+    above	long
+    override_redirect	Bool
+XFontProp
+    name	long
+    card32	long
+XModifierKeymap
+    max_keypermod	int
+    modifiermap	pointer
+XCirculateRequestEvent
+    type	int
+    serial	long
+    send_event  Bool
+    display     long
+    parent	long
+    window	long
+    place	int
+XChar2b
+    byte1 byte
+    byte2 byte
+XTextItem16
+    chars       pointer XChar2b
+    nchars	int
+    delta	int
+    font	long
+XOMOrientation
+    num_orientation	int
+    orientation         pointer int
+XGraphicsExposeEvent
+    type	int
+    serial	long
+    send_event  Bool
+    display     long
+    drawable	long
+    x           int
+    y           int
+    width	int
+    height	int
+    count	int
+    major_code	int
+    minor_code	int
+XFontStruct
+    ext_data            pointer XExtData
+    fid                 long
+    direction           int
+    min_char_or_byte2   int
+    max_char_or_byte2   int
+    min_byte1           int
+    max_byte1           int
+    all_chars_exist	Bool
+    n_properties	int
+    properties          pointer XFontProp
+    min_bounds          struct XCharStruct
+    max_bounds          struct XCharStruct
+    per_char            pointer XCharStruct
+    ascent              int
+    descent             int
+XMapEvent
+    type	int
+    serial	long
+    send_event  Bool
+    display     long
+    event	long
+    window	long
+    override_redirect	int
+XExposeEvent
+    type	int
+    serial	long
+    send_event  Bool
+    display     long
+    window	long
+    x	int
+    y	int
+    width	int
+    height	int
+    count	int
+
+XFontSetExtents
+    max_ink_extent struct XRectangle
+    max_logical_extent struct XRectangle
+
+XUnmapEvent
+    type	int
+    serial	long
+    send_event  Bool
+    display     long
+    event	long
+    window	long
+    from_configure	Bool
+PropMwmHints
+    flags       long
+    functions   long
+    decorations long
+    inputMode   long
+    status      long
+XPixmapFormatValues
+    depth int
+    bits_per_pixel int
+    scanline_pad int
+awtImageData
+    Depth int
+    wsImageFormat struct XPixmapFormatValues
+    clrdata pointer
+    convert array pointer 32
+ColorEntry
+    r byte
+    g byte
+    b byte
+    flags byte
+ColorData
+    awt_Colors pointer ColorEntry
+    awt_numICMcolors int
+    awt_icmLUT pointer int
+    awt_icmLUT2Colors pointer byte
+    img_grays pointer byte
+    img_clr_tbl pointer byte
+    img_oda_red pointer byte
+    img_oda_green pointer byte
+    img_oda_blue pointer byte
+    pGrayInverseLutData pointer int
+    screendata int
+
+AwtGraphicsConfigData
+    awt_depth int
+    awt_cmap long
+    awt_visInfo struct XVisualInfo
+    awt_num_colors int
+    awtImage pointer awtImageData
+    AwtColorMatch pointer
+    monoImage pointer
+    monoPixmap long
+    monoPixmapWidth int
+    monoPixmapHeight int
+    monoPixmapGC long
+    pixelStride int
+    color_data pointer ColorData
+    glxInfo pointer
+    isTranslucencySupported int
+    renderPictFormat struct XRenderPictFormat
+
+AwtScreenData
+    numConfigs int
+    root long
+    whitepixel long
+    blackpixel long
+    defaultConfig pointer AwtGraphicsConfigData
+    configs pointer      // AwtGraphicsConfigDataPtr *configs;
+
+XdbeSwapInfo
+    swap_window long
+    swap_action int
+
+XEvent
+   type int
+   xany struct XAnyEvent
+   xkey struct XKeyEvent
+   xbutton struct XButtonEvent
+   xmotion struct XMotionEvent
+   xcrossing struct XCrossingEvent
+   xfocus struct XFocusChangeEvent
+   xexpose struct XExposeEvent
+   xgraphicsexpose struct XGraphicsExposeEvent
+   xnoexpose struct XNoExposeEvent
+   xvisibility struct XVisibilityEvent
+   xcreatewindow struct XCreateWindowEvent
+   xdestroywindow struct XDestroyWindowEvent
+   xunmap struct XUnmapEvent
+   xmap struct XMapEvent
+   xmaprequest struct XMapRequestEvent
+   xreparent struct XReparentEvent
+   xconfigure struct XConfigureEvent
+   xgravity struct XGravityEvent
+   xresizerequest struct XResizeRequestEvent
+   xconfigurerequest struct XConfigureRequestEvent
+   xcirculate struct XCirculateEvent
+   xcirculaterequest struct XCirculateRequestEvent
+   xproperty struct XPropertyEvent
+   xselectionclear struct XSelectionClearEvent
+   xselectionrequest struct XSelectionRequestEvent
+   xselection struct XSelectionEvent
+   xcolormap struct XColormapEvent
+   xclient struct XClientMessageEvent
+   xmapping struct XMappingEvent
+   xerror struct XErrorEvent
+   xkeymap struct XKeymapEvent
+   pad array long 24
+
+XkbAnyEvent
+    type  int
+    serial  ulong
+    send_event  Bool
+    display  long
+    time  ulong
+    xkb_type  int
+    device  int
+
+XkbNewKeyboardNotifyEvent
+    type  int
+    serial  ulong
+    send_event  Bool
+    display  long
+    time  ulong
+    xkb_type  int
+    device  int
+    old_device  int
+    min_key_code  int
+    max_key_code  int
+    old_min_key_code  int
+    old_max_key_code  int
+    changed  int
+    req_major  byte
+    req_minor  byte
+
+XkbMapNotifyEvent
+    type  int
+    serial  ulong
+    send_event  Bool
+    display  long
+    time  ulong
+    xkb_type  int
+    device  int
+    changed  int
+    flags  int
+    first_type  int
+    num_types  int
+    min_key_code  int
+    max_key_code  int
+    first_key_sym  int
+    first_key_act  int
+    first_key_behavior  int
+    first_key_explicit  int
+    first_modmap_key  int
+    first_vmodmap_key  int
+    num_key_syms  int
+    num_key_acts  int
+    num_key_behaviors  int
+    num_key_explicit  int
+    num_modmap_keys  int
+    num_vmodmap_keys  int
+    vmods  int
+
+XkbStateNotifyEvent
+    type  int
+    serial  ulong
+    send_event  Bool
+    display  long
+    time  ulong
+    xkb_type  int
+    device  int
+    changed  int
+    group  int
+    base_group  int
+    latched_group  int
+    locked_group  int
+    mods  int
+    base_mods  int
+    latched_mods  int
+    locked_mods  int
+    compat_state  int
+    grab_mods  byte
+    compat_grab_mods  byte
+    lookup_mods  byte
+    compat_lookup_mods  byte
+    ptr_buttons  int
+    keycode  int
+    event_type  byte
+    req_major  byte
+    req_minor  byte
+
+XkbControlsNotifyEvent
+    type  int
+    serial  ulong
+    send_event  Bool
+    display  long
+    time  ulong
+    xkb_type  int
+    device  int
+    changed_ctrls  int
+    enabled_ctrls  int
+    enabled_ctrl_changes  int
+    num_groups  int
+    keycode  int
+    event_type  byte
+    req_major  byte
+    req_minor  byte
+
+XkbIndicatorNotifyEvent
+    type  int
+    serial  ulong
+    send_event  Bool
+    display  long
+    time  ulong
+    xkb_type  int
+    device  int
+    changed  int
+    state  int
+
+XkbNamesNotifyEvent
+    type  int
+    serial  ulong
+    send_event  Bool
+    display  long
+    time  ulong
+    xkb_type  int
+    device  int
+    changed  int
+    first_type  int
+    num_types  int
+    first_lvl  int
+    num_lvls  int
+    num_aliases  int
+    num_radio_groups  int
+    changed_vmods  int
+    changed_groups  int
+    changed_indicators  int
+    first_key  int
+    num_keys  int
+
+
+XkbCompatMapNotifyEvent
+    type  int
+    serial  ulong
+    send_event  Bool
+    display  long
+    time  ulong
+    xkb_type  int
+    device  int
+    changed_groups  int
+    first_si  int
+    num_si  int
+    num_total_si  int
+
+XkbBellNotifyEvent
+    type  int
+    serial  ulong
+    send_event  Bool
+    display  long
+    time  ulong
+    xkb_type  int
+    device  int
+    percent  int
+    pitch  int
+    duration  int
+    bell_class  int
+    bell_id  int
+    name  Atom
+    window  long
+    event_only  Bool
+
+XkbActionMessageEvent
+    type  int
+    serial  ulong
+    send_event  Bool
+    display  long
+    time  ulong
+    xkb_type  int
+    device  int
+    keycode  int
+    press  Bool
+    key_event_follows  Bool
+    group  int
+    mods  int
+    message array byte 7 //XkbActionMessageLength+1
+
+XkbAccessXNotifyEvent
+    type  int
+    serial  ulong
+    send_event  Bool
+    display  long
+    time  ulong
+    xkb_type  int
+    device  int
+    detail  int
+    keycode  int
+    sk_delay  int
+    debounce_delay  int
+
+XkbExtensionDeviceNotifyEvent
+    type  int
+    serial  ulong
+    send_event  Bool
+    display  long
+    time  ulong
+    xkb_type  int
+    device  int
+    reason  int
+    supported  int
+    unsupported  int
+    first_btn  int
+    num_btns  int
+    leds_defined  int
+    led_state  int
+    led_class  int
+    led_id  int
+
+XkbEvent
+    type  int
+    any  struct XkbAnyEvent
+    new_kbd  struct XkbNewKeyboardNotifyEvent
+    map  struct XkbMapNotifyEvent
+    state  struct XkbStateNotifyEvent
+    ctrls  struct XkbControlsNotifyEvent
+    indicators  struct XkbIndicatorNotifyEvent
+    names  struct XkbNamesNotifyEvent
+    compat  struct XkbCompatMapNotifyEvent
+    bell  struct XkbBellNotifyEvent
+    message  struct XkbActionMessageEvent
+    accessx  struct XkbAccessXNotifyEvent
+    device  struct XkbExtensionDeviceNotifyEvent
+    core  struct XEvent
--- a/make/gensrc/GensrcMisc.gmk	Mon Feb 17 11:36:40 2014 -0500
+++ b/make/gensrc/GensrcMisc.gmk	Mon Feb 17 11:37:46 2014 -0500
@@ -83,9 +83,9 @@
 
 GENSRC_MISC += $(JDK_OUTPUTDIR)/gensrc/sun/nio/ch/SocketOptionRegistry.java
 
-GENSRC_SOR_SRC := $(JDK_TOPDIR)/src/share/native/sun/nio/ch
+GENSRC_SOR_SRC := $(JDK_TOPDIR)/make/src/native/genconstants/ch
 GENSRC_SOR_SRC_FILE := genSocketOptionRegistry.c
-GENSRC_SOR_BIN := $(JDK_OUTPUTDIR)/gensrc/genSocketOptionRegistry
+GENSRC_SOR_BIN := $(JDK_OUTPUTDIR)/btnative/genSocketOptionRegistry
 
 SOR_COPYRIGHT_YEARS = $(shell $(CAT) $(GENSRC_SOR_SRC)/$(GENSRC_SOR_SRC_FILE) | \
     $(NAWK) '/^.*Copyright.*Oracle/ { printf "%s %s",$$4,$$5 }')
@@ -100,11 +100,9 @@
     OUTPUT_DIR := $(GENSRC_SOR_BIN), \
     PROGRAM := genSocketOptionRegistry))
 
-ifneq ($(wildcard $(JDK_TOPDIR)/src/closed/solaris/classes/sun/nio/ch/SocketOptionRegistry-$(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU_ARCH).java), )
-  HAS_SOCKET_OPTION_REGISTRY := true
-endif
+SOR_PREGEN_FILE := $(JDK_TOPDIR)/src/closed/solaris/classes/sun/nio/ch/SocketOptionRegistry-$(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU_ARCH).java.template
 
-ifneq ($(HAS_SOCKET_OPTION_REGISTRY), true)
+ifeq ($(wildcard $(SOR_PREGEN_FILE)), )
   $(JDK_OUTPUTDIR)/gensrc/sun/nio/ch/SocketOptionRegistry.java: $(BUILD_GENSRC_SOR_EXE)
 	$(MKDIR) -p $(@D)
 	$(RM) $@ $@.tmp
@@ -112,7 +110,7 @@
 	$(BUILD_GENSRC_SOR_EXE) >> $@.tmp
 	$(MV) $@.tmp $@
 else
-  $(JDK_OUTPUTDIR)/gensrc/sun/nio/ch/SocketOptionRegistry.java: $(JDK_TOPDIR)/src/closed/solaris/classes/sun/nio/ch/SocketOptionRegistry-$(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU_ARCH).java
+  $(JDK_OUTPUTDIR)/gensrc/sun/nio/ch/SocketOptionRegistry.java: $(SOR_PREGEN_FILE)
 	$(call install-file)
 endif
 
@@ -122,9 +120,9 @@
 
   GENSRC_MISC += $(JDK_OUTPUTDIR)/gensrc/sun/nio/fs/UnixConstants.java
 
-  GENSRC_UC_SRC := $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/nio/fs
+  GENSRC_UC_SRC := $(JDK_TOPDIR)/make/src/native/genconstants/fs
   GENSRC_UC_SRC_FILE := genUnixConstants.c
-  GENSRC_UC_BIN := $(JDK_OUTPUTDIR)/gensrc/genUnixConstants
+  GENSRC_UC_BIN := $(JDK_OUTPUTDIR)/btnative/genUnixConstants
 
   UC_COPYRIGHT_YEARS = $(shell $(CAT) $(GENSRC_UC_SRC)/$(GENSRC_UC_SRC_FILE) | \
       $(NAWK) '/^.*Copyright.*Oracle/ { printf "%s %s",$$4,$$5 }')
@@ -140,11 +138,9 @@
       OUTPUT_DIR := $(GENSRC_UC_BIN), \
       PROGRAM := genUnixConstants))
 
-  ifneq ($(wildcard $(JDK_TOPDIR)/src/closed/solaris/classes/sun/nio/fs/UnixConstants-$(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU_ARCH).java), )
-    HAS_UNIX_CONSTANTS := true
-  endif
+  UC_PREGEN_FILE := $(JDK_TOPDIR)/src/closed/solaris/classes/sun/nio/fs/UnixConstants-$(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU_ARCH).java.template
 
-  ifneq ($(HAS_UNIX_CONSTANTS), true)
+  ifeq ($(wildcard $(UC_PREGEN_FILE)), )
     $(JDK_OUTPUTDIR)/gensrc/sun/nio/fs/UnixConstants.java: $(BUILD_GENSRC_UC_EXE)
 	$(MKDIR) -p $(@D)
 	$(RM) $@ $@.tmp
@@ -152,7 +148,7 @@
 	$(BUILD_GENSRC_UC_EXE) >> $@.tmp
 	$(MV) $@.tmp $@
   else
-    $(JDK_OUTPUTDIR)/gensrc/sun/nio/fs/UnixConstants.java: $(JDK_TOPDIR)/src/closed/solaris/classes/sun/nio/fs/UnixConstants-$(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU_ARCH).java
+    $(JDK_OUTPUTDIR)/gensrc/sun/nio/fs/UnixConstants.java: $(UC_PREGEN_FILE)
 	$(call install-file)
   endif
 
@@ -164,9 +160,9 @@
 
   GENSRC_MISC += $(JDK_OUTPUTDIR)/gensrc/sun/nio/fs/SolarisConstants.java
 
-  GENSRC_SOL_SRC := $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/nio/fs
+  GENSRC_SOL_SRC := $(JDK_TOPDIR)/make/src/native/genconstants/fs
   GENSRC_SOL_SRC_FILE := genSolarisConstants.c
-  GENSRC_SOL_BIN := $(JDK_OUTPUTDIR)/gensrc/genSolarisConstants
+  GENSRC_SOL_BIN := $(JDK_OUTPUTDIR)/btnative/genSolarisConstants
 
   SOL_COPYRIGHT_YEARS = $(shell $(CAT) $(GENSRC_SOL_SRC)/$(GENSRC_SOL_SRC_FILE) | \
       $(NAWK) '/^.*Copyright.*Oracle/ { printf "%s %s",$$4,$$5 }')
--- a/make/gensrc/GensrcX11Wrappers.gmk	Mon Feb 17 11:36:40 2014 -0500
+++ b/make/gensrc/GensrcX11Wrappers.gmk	Mon Feb 17 11:37:46 2014 -0500
@@ -42,7 +42,7 @@
 GENSRC_X11WRAPPERS_DST := $(JDK_OUTPUTDIR)/gensrc/sun/awt/X11
 
 # The pre-calculated offset file are stored here:
-GENSRC_SIZER_DIR := $(JDK_TOPDIR)/src/solaris/classes/sun/awt/X11/generator
+GENSRC_SIZER_DIR := $(JDK_TOPDIR)/make/data/x11wrappergen
 
 # Normal case is to generate only according to target bits
 GENSRC_X11_VERSION := $(OPENJDK_TARGET_CPU_BITS)
--- a/make/lib/Awt2dLibraries.gmk	Mon Feb 17 11:36:40 2014 -0500
+++ b/make/lib/Awt2dLibraries.gmk	Mon Feb 17 11:37:46 2014 -0500
@@ -23,6 +23,9 @@
 # questions.
 #
 
+# Hook to include the corresponding custom file, if present.
+$(eval $(call IncludeCustomExtension, jdk, lib/Awt2dLibraries.gmk))
+
 # Openwin is defined on Solaris.
 OPENWIN_LIB := $(OPENWIN_HOME)/lib
 
@@ -550,10 +553,6 @@
     endif
 
     ifeq ($(OPENJDK_TARGET_OS), linux)
-      ifndef OPENJDK
-        include $(JDK_TOPDIR)/make/closed/xawt.gmk
-      endif
-
       ifeq ($(DISABLE_XRENDER), true)
         LIBAWT_XAWT_CFLAGS += -DDISABLE_XRENDER_BY_DEFAULT=true
       endif
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/make/src/classes/build/tools/x11wrappergen/WrapperGenerator.java	Mon Feb 17 11:37:46 2014 -0500
@@ -0,0 +1,1368 @@
+/*
+ * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+package build.tools.x11wrappergen;
+
+import java.util.*;
+import java.io.*;
+import java.nio.charset.*;
+import java.text.MessageFormat;
+import java.util.logging.Level;
+import java.util.logging.Logger;
+
+public class WrapperGenerator {
+    /* XLibParser converts Xlib.h to a Java Object that encapsulates the
+     * X11 API and data structures */
+    // Charset and decoder for ISO-8859-15
+    private final static Logger log = Logger.getLogger("WrapperGenerator");
+    boolean generateLog = true;
+    boolean wide;
+    private static Charset charset = Charset.forName("ISO-8859-15");
+
+    String package_name = "sun.awt.X11";
+    String package_path = "sun/awt/X11";
+    String sizerFileName = "sizer.c";
+    String defaultBaseClass = "XWrapperBase";
+
+    String compile_options = "-lX11";
+    static Hashtable symbolTable = new Hashtable();
+    static Hashtable sizeTable32bit = new Hashtable();
+    static Hashtable sizeTable64bit = new Hashtable();
+    static Hashtable knownSizes32 = new Hashtable();
+    static Hashtable knownSizes64 = new Hashtable();
+    static {
+/*
+        knownSizes64.put("", Integer.valueOf());
+        knownSizes32.put("", Integer.valueOf());
+*/
+        knownSizes64.put("XComposeStatus", Integer.valueOf(16));
+        knownSizes64.put("XTimeCoord", Integer.valueOf(16));
+        knownSizes64.put("XExtData", Integer.valueOf(32));
+        knownSizes64.put("XWindowChanges", Integer.valueOf(40));
+        knownSizes64.put("XOMCharSetList", Integer.valueOf(16));
+        knownSizes64.put("XModifierKeymap", Integer.valueOf(16));
+        knownSizes32.put("XIMValuesList", Integer.valueOf(8));
+        knownSizes32.put("XGCValues", Integer.valueOf(92));
+//          knownSizes32.put("XIMStringConversionCallbackStruct", Integer.valueOf(16));
+    }
+
+    private static abstract class BaseType {
+
+        String real_type;
+        String name;
+
+
+        public String getName() {
+            return name;
+        }
+        public String getRealType() {
+            return real_type;
+        }
+
+        public String toString() {
+            return name;
+        }
+    }
+
+    private static class AtomicType extends BaseType {
+
+        private boolean alias;
+        private String aliasName;
+
+        static final int TYPE_INT=0;
+        static final int TYPE_CHAR=1;
+        static final int TYPE_LONG=2;
+        static final int TYPE_LONG_LONG=3;
+        static final int TYPE_DOUBLE=4;
+        static final int TYPE_FLOAT=5;
+        static final int TYPE_PTR=6;
+        static final int TYPE_SHORT=7;
+        static final int TYPE_BOOL = 8;
+        static final int TYPE_STRUCT = 9;
+        static final int TYPE_ARRAY = 10;
+        static final int TYPE_BYTE=11;
+        static final int TYPE_ATOM = 12;
+        static final int TYPE_ULONG = 13;
+        static int getTypeForString(String str) {
+            int type=-1;
+            if (str.equals("int"))
+                type = AtomicType.TYPE_INT;
+            else if (str.equals("long"))
+                type = AtomicType.TYPE_LONG;
+            else if (str.equals("byte"))
+                type = AtomicType.TYPE_BYTE;
+            else if (str.equals("char"))
+                type = AtomicType.TYPE_CHAR;
+            else if (str.equals("long long"))
+                type = AtomicType.TYPE_LONG_LONG;
+            else if (str.equals("double"))
+                type = AtomicType.TYPE_DOUBLE;
+            else if (str.equals("float"))
+                type = AtomicType.TYPE_FLOAT;
+            else if (str.equals("pointer"))
+                type = AtomicType.TYPE_PTR;
+            else if (str.equals("short"))
+                type = AtomicType.TYPE_SHORT;
+            else if (str.equals("Bool"))
+                type = AtomicType.TYPE_BOOL;
+            else if (str.equals("struct"))
+                type = AtomicType.TYPE_STRUCT;
+            else if (str.equals("Atom"))
+                type = AtomicType.TYPE_ATOM;
+            else if (str.equals("array"))
+                type = TYPE_ARRAY;
+            else if (str.equals("ulong"))
+                type = TYPE_ULONG;
+            else throw new IllegalArgumentException("Uknown type string: " + str);
+
+            return type;
+        }
+        String getJavaType() {
+            if (referencedType != null) {
+                if (referencedType instanceof AtomicType) {
+                    return ((AtomicType)referencedType).getJavaType();
+                } else {
+                    return referencedType.getName();
+                }
+            } else {
+                return getJavaTypeForType(type);
+            }
+        }
+        static String getJavaTypeForType(int type) {
+            switch (type) {
+              case TYPE_INT:
+                  return "int";
+              case TYPE_CHAR:
+                  return "char";
+              case TYPE_BYTE:
+                  return "byte";
+              case TYPE_LONG:
+              case TYPE_LONG_LONG:
+              case TYPE_PTR:
+              case TYPE_ULONG:
+                  return "long";
+              case TYPE_DOUBLE:
+                  return "double";
+              case TYPE_FLOAT:
+                  return "float";
+              case TYPE_SHORT:
+                  return "short";
+              case TYPE_BOOL:
+                  return "boolean";
+              case TYPE_ATOM:
+                  return "long";
+              default:
+                  throw new IllegalArgumentException("Unknown type: " + type);
+            }
+        }
+        String getItemSize() {
+            if (referencedType != null) {
+                  if (referencedType instanceof StructType) {
+                      return ((StructType)referencedType).getSize();
+                  } else {
+                      return ((AtomicType)referencedType).getItemSize();
+                  }
+            } else {
+                int i32 = getNativeSizeForAccess(getJavaAccess(false));
+                int i64 = getNativeSizeForAccess(getJavaAccess(true));
+                if (i32 != i64) {
+                    return "Native.get" + getNativeAccess() + "Size()";
+                } else {
+                    return Integer.toString(i32);
+                }
+            }
+        }
+
+        String getJavaResult(String offset, String base) {
+            String res = null;
+            switch (type) {
+              case TYPE_STRUCT:
+                  res = "pData + " + offset;
+                  break;
+              case TYPE_PTR:
+                  if (referencedType == null || referencedType instanceof StructType) {
+                      res = base + "+" + offset;
+                  } else if (referencedType instanceof AtomicType) {
+                      res = MessageFormat.format("Native.get{0}({1})",
+                                                 new Object[] {getNativeAccessForType(((AtomicType)referencedType).type),
+                                                               base + "+" + offset});
+                  }
+                  break;
+              case TYPE_ARRAY:
+                  if (referencedType instanceof StructType) {
+                      res = "pData + " + offset;
+                  }  else if (referencedType instanceof AtomicType) {
+                      res = MessageFormat.format("Native.get{0}(pData + {1})",
+                                                 new Object[] {getNativeAccessForType(((AtomicType)referencedType).type),
+                                                               offset});
+                  }
+                  break;
+              default:
+                res = MessageFormat.format("(Native.get{0}(pData+{1}))",
+                                           new Object[] {getNativeAccess(), offset});
+            }
+            return getJavaResultConversion(res, base);
+        }
+        String getJavaResultConversion(String value, String base) {
+            if (referencedType != null) {
+                if (referencedType instanceof StructType) {
+                    if (type == TYPE_PTR) {
+                        return MessageFormat.format("({2} != 0)?(new {0}({1})):(null)", new Object[] {referencedType.getName(),value, base});
+                    } else {
+                        return MessageFormat.format("new {0}({1})", new Object[] {referencedType.getName(),value});
+                    }
+                } else {
+                    return value;
+                }
+            } else {
+                return getJavaResultConversionForType(type, value);
+            }
+        }
+        static String getJavaResultConversionForType(int type, String value) {
+            return value;
+        }
+        String getNativeAccess() {
+            return getNativeAccessForType(type);
+        }
+        String getJavaAccess(boolean wide) {
+            return getJavaAccessForType(type, wide);
+        }
+        static String getJavaAccessForType(int type, boolean wide) {
+            switch (type) {
+              case TYPE_INT:
+                  return "Int";
+              case TYPE_CHAR:
+                  return "Char";
+              case TYPE_BYTE:
+                  return "Byte";
+              case TYPE_LONG:
+              case TYPE_PTR:
+              case TYPE_ARRAY:
+              case TYPE_STRUCT:
+              case TYPE_ATOM:
+                  return (wide?"Long":"Int");
+              case TYPE_LONG_LONG:
+                  return "Long";
+              case TYPE_ULONG:
+                  return (wide?"ULong":"UInt");
+              case TYPE_DOUBLE:
+                  return "Double";
+              case TYPE_FLOAT:
+                  return "Float";
+              case TYPE_SHORT:
+                  return "Short";
+              case TYPE_BOOL:
+                  return "Int";
+              default:
+                  throw new IllegalArgumentException("Unknown type: " + type);
+            }
+        }
+        static String getNativeAccessForType(int type) {
+            switch (type) {
+              case TYPE_INT:
+                  return "Int";
+              case TYPE_CHAR:
+                  return "Char";
+              case TYPE_BYTE:
+                  return "Byte";
+              case TYPE_LONG:
+              case TYPE_PTR:
+              case TYPE_ARRAY:
+              case TYPE_STRUCT:
+                  return "Long";
+              case TYPE_LONG_LONG:
+                  return "Long";
+              case TYPE_ULONG:
+                  return "ULong";
+              case TYPE_DOUBLE:
+                  return "Double";
+              case TYPE_FLOAT:
+                  return "Float";
+              case TYPE_SHORT:
+                  return "Short";
+              case TYPE_BOOL:
+                  return "Bool";
+              case TYPE_ATOM:
+                  return "Long";
+              default:
+                  throw new IllegalArgumentException("Unknown type: " + type);
+            }
+        }
+
+        static int getNativeSizeForAccess(String access) {
+            if (access.equals("Int")) return 4;
+            else if (access.equals("Byte")) return 1;
+            else if (access.equals("Long")) return 8;
+            else if (access.equals("Double")) return 8;
+            else if (access.equals("Float")) return 4;
+            else if (access.equals("Char")) return 2;
+            else if (access.equals("Short")) return 2;
+            else if (access.equals("ULong")) return 8;
+            else if (access.equals("UInt")) return 4;
+            else throw new IllegalArgumentException("Unknow access type: " + access);
+        }
+
+        String getJavaConversion(String offset, String value) {
+            if (referencedType != null) {
+                if (referencedType instanceof StructType) {
+                    return getJavaConversionForType(TYPE_PTR, offset, value + ".pData");
+                } else {
+                    if (type == TYPE_ARRAY) {
+                        return getJavaConversionForType(((AtomicType)referencedType).type, offset, value);
+                    } else { // TYPE_PTR
+                        return getJavaConversionForType(TYPE_PTR, offset, value);
+                    }
+                }
+            } else {
+                return getJavaConversionForType(type, offset, value);
+            }
+        }
+        static String getJavaConversionForType(int type, String offset, String value) {
+            return MessageFormat.format("Native.put{0}({2}, {1})", new Object[] {getNativeAccessForType(type), value, offset});
+        }
+
+
+        int type;
+        int offset;
+        int direction;
+        BaseType referencedType;
+        int arrayLength = -1;
+        boolean autoFree = false;
+        public AtomicType(int _type,String _name, String _real_type) {
+            name = _name.replaceAll("[* \t]","");
+            if ((name.indexOf("[") != -1) || (name.indexOf("]") != -1))
+            {
+                name = name.replaceAll("\\[.*\\]","");
+            }
+            type = _type;
+            real_type = _real_type;
+            if (real_type == null)
+            {
+                System.out.println(" real type is null");
+
+            }
+        }
+        public boolean isIn() {
+            return direction == 0;
+        }
+        public boolean isOut() {
+            return direction == 1;
+        }
+        public boolean isInOut() {
+            return direction == 2;
+        }
+        public boolean isAutoFree() {
+            return autoFree;
+        }
+        public void setAttributes(String[] attributes) {
+            String mod = attributes[3];
+            if ("in".equals(mod)) {
+                direction = 0;
+            } else if ("out".equals(mod)) {
+                direction = 1;
+                if (attributes.length > 4 && "free".equals(attributes[4])) {
+                    autoFree = true;
+                }
+            } else if ("inout".equals(mod)) {
+                direction = 2;
+            } else if ("alias".equals(mod)) {
+                alias = true;
+                aliasName = attributes[4];
+            } else if (type == TYPE_ARRAY || type == TYPE_PTR || type == TYPE_STRUCT) {
+                referencedType = (BaseType)symbolTable.get(mod);
+                if (referencedType == null) {
+                    log.warning("Can't find type for name " + mod);
+                }
+                if (attributes.length > 4) { // array length
+                    try {
+                        arrayLength = Integer.parseInt(attributes[4]);
+                    } catch (Exception e) {
+                    }
+                }
+            }
+        }
+        public BaseType getReferencedType() {
+            return referencedType;
+        }
+        public int getArrayLength() {
+            return arrayLength;
+        }
+        public void setOffset(int o)
+        {
+            offset = o;
+        }
+        public int getType() {
+            return type;
+        }
+        public String getTypeUpperCase() {
+            switch (type) {
+              case TYPE_INT:
+                  return "Int";
+              case TYPE_CHAR:
+                  return "Char";
+              case TYPE_BYTE:
+                  return "Byte";
+              case TYPE_LONG:
+              case TYPE_LONG_LONG:
+              case TYPE_PTR:
+                  return "Long";
+              case TYPE_DOUBLE:
+                  return "Double";
+              case TYPE_FLOAT:
+                  return "Float";
+              case TYPE_SHORT:
+                  return "Short";
+              case TYPE_BOOL:
+                  return "Int";
+              case TYPE_ATOM:
+                  return "Long";
+              case TYPE_ULONG:
+                  return "ULong";
+              default: throw new IllegalArgumentException("Uknown type");
+            }
+        }
+        public int getOffset()
+        {
+            return offset;
+        }
+        public boolean isAlias() {
+            return alias;
+        }
+        public String getAliasName() {
+            return aliasName;
+        }
+    }
+
+    private static class StructType extends BaseType {
+
+        Vector members;
+        String description;
+        boolean packed;
+        int size;
+        String baseClass, interfaces;
+        boolean isInterface;
+        String javaClassName;
+
+        /**
+         * Construct new structured type.
+         * Description is used for name and type definition and has the following format:
+         * structName [ '[' base classe ']' ] [ '{' interfaces '}' ] [ '|' javaClassName ]
+         */
+        public StructType(String _desc)
+        {
+            members = new Vector();
+            parseDescription(_desc);
+        }
+        public int getNumFields()
+        {
+            return members.size();
+        }
+        public void setName(String _name)
+        {
+            _name = _name.replaceAll("[* \t]","");
+            parseDescription(_name);
+        }
+
+        public void setSize(int i)
+        {
+            size = i;
+        }
+
+        public String getDescription()
+        {
+            return description;
+        }
+
+        public Enumeration getMembers()
+        {
+            return members.elements();
+        }
+
+        public void addMember(BaseType tp)
+        {
+            members.add(tp);
+        }
+        public String getBaseClass() {
+            return baseClass;
+        }
+        public String getInterfaces() {
+            return interfaces;
+        }
+        public boolean getIsInterface() {
+            return isInterface;
+        }
+        public String getJavaClassName() {
+            return javaClassName;
+        }
+        void parseDescription(String _desc) {
+            if (_desc.indexOf('[') != -1) { // Has base class
+                baseClass = _desc.substring(_desc.indexOf('[')+1, _desc.indexOf(']'));
+                _desc = _desc.substring(0, _desc.indexOf('[')) + _desc.substring(_desc.indexOf(']')+1);
+            }
+            if (_desc.indexOf('{') != -1) { // Has base class
+                interfaces = _desc.substring(_desc.indexOf('{')+1, _desc.indexOf('}'));
+                _desc = _desc.substring(0, _desc.indexOf('{')) + _desc.substring(_desc.indexOf('}')+1);
+            }
+            if (_desc.startsWith("-")) { // Interface
+                isInterface = true;
+                _desc = _desc.substring(1, _desc.length());
+            }
+            if (_desc.indexOf("|") != -1) {
+                javaClassName = _desc.substring(_desc.indexOf('|')+1, _desc.length());
+                _desc = _desc.substring(0, _desc.indexOf('|'));
+            }
+            name = _desc;
+            if (javaClassName == null) {
+                javaClassName = name;
+            }
+            description = _desc;
+//              System.out.println("Struct " + name + " extends " + baseClass + " implements " + interfaces);
+        }
+
+        /**
+         * Returns String containing Java code calculating size of the structure depending on the data model
+         */
+        public String getSize() {
+            String s32 = (String) WrapperGenerator.sizeTable32bit.get(getName());
+            String s64 = (String) WrapperGenerator.sizeTable64bit.get(getName());
+            if (s32 == null || s64 == null) {
+                return (s32 == null)?(s64):(s32);
+            }
+            if (s32.equals(s64)) {
+                return s32;
+            } else {
+                return MessageFormat.format("((XlibWrapper.dataModel == 32)?({0}):({1}))", new Object[] {s32, s64});
+            }
+        }
+        public String getOffset(AtomicType atp) {
+            String key = getName()+"."+(atp.isAlias() ? atp.getAliasName() : atp.getName());
+            String s64 = (String) WrapperGenerator.sizeTable64bit.get(key);
+            String s32 = (String) WrapperGenerator.sizeTable32bit.get(key);
+            if (s32 == null || s64 == null) {
+                return (s32 == null)?(s64):(s32);
+            }
+            if (s32.equals(s64)) {
+                return s32;
+            } else {
+                return MessageFormat.format("((XlibWrapper.dataModel == 32)?({0}):({1}))", new Object[]{s32, s64});
+            }
+        }
+    }
+
+    private static class FunctionType extends BaseType {
+
+        Vector args;
+        String description;
+        boolean packed;
+        String returnType;
+
+        int alignment;
+
+        public FunctionType(String _desc)
+        {
+            args = new Vector();
+            description = _desc;
+            setName(_desc);
+        }
+        boolean isVoid() {
+            return (returnType == null);
+        }
+        String getReturnType() {
+            if (returnType == null) {
+                return "void";
+            } else {
+                return returnType;
+            }
+        }
+
+        public int getNumArgs()
+        {
+            return args.size();
+        }
+        public void setName(String _name)
+        {
+            if (_name.startsWith("!")) {
+                _name = _name.substring(1, _name.length());
+            }
+            if (_name.indexOf("|") != -1) {
+                returnType = _name.substring(_name.indexOf("|")+1, _name.length());
+                _name = _name.substring(0, _name.indexOf("|"));
+            }
+            name = _name.replaceAll("[* \t]","");
+        }
+
+        public String getDescription()
+        {
+            return description;
+        }
+
+        public Collection getArguments()
+        {
+            return args;
+        }
+        public void addArgument(BaseType tp)
+        {
+            args.add(tp);
+        }
+    }
+
+    public String makeComment(String str)
+    {
+        StringTokenizer st = new StringTokenizer(str,"\r\n");
+        String ret="";
+
+        while (st.hasMoreTokens())
+        {
+            ret = ret + "//" + st.nextToken() + "\n";
+        }
+
+        return ret;
+    }
+
+    public String getJavaTypeForSize(int size) {
+        switch(size) {
+          case 1: return "byte";
+          case 2: return "short";
+          case 4: return "int";
+          case 8: return "long";
+          default: throw new RuntimeException("Unsupported size: " + size);
+        }
+    }
+    public String getOffsets(StructType stp,AtomicType atp, boolean wide)
+    {
+        String key = stp.getName()+"."+atp.getName();
+        return wide == true ? (String) sizeTable64bit.get(key) : (String) sizeTable32bit.get(key);
+    }
+
+    public String getStructSize(StructType stp, boolean wide)
+    {
+        return wide == true ? (String) sizeTable64bit.get(stp.getName()) : (String) sizeTable32bit.get(stp.getName());
+    }
+
+    public int getLongSize(boolean wide)
+    {
+        return Integer.parseInt(wide == true ? (String)sizeTable64bit.get("long") : (String)sizeTable32bit.get("long"));
+    }
+
+    public int getPtrSize(boolean wide)
+    {
+        return Integer.parseInt(wide == true ? (String)sizeTable64bit.get("ptr") : (String)sizeTable32bit.get("ptr"));
+    }
+    public int getBoolSize(boolean wide) {
+        return getOrdinalSize("Bool", wide);
+    }
+    public int getOrdinalSize(String ordinal, boolean wide) {
+        return Integer.parseInt(wide == true ? (String)sizeTable64bit.get(ordinal) : (String)sizeTable32bit.get(ordinal));
+    }
+
+    public void writeToString(StructType stp, PrintWriter pw) {
+        int type;
+        pw.println("\n\n\tString getName() {\n\t\treturn \"" + stp.getName()+ "\"; \n\t}");
+        pw.println("\n\n\tString getFieldsAsString() {\n\t\tStringBuilder ret = new StringBuilder(" + stp.getNumFields() * 40 + ");\n");
+
+        for (Enumeration e = stp.getMembers() ; e.hasMoreElements() ;) {
+            AtomicType tp = (AtomicType) e.nextElement();
+
+            type = tp.getType();
+            String name = tp.getName().replace('.', '_');
+            if ((name != null) && (name.length() > 0))
+            {
+                if (type == AtomicType.TYPE_ATOM) {
+                    pw.println("\t\tret.append(\"" + name + " = \" ).append( XAtom.get(get_" + name + "()) ).append(\", \");");
+                } else if (name.equals("type")) {
+                    pw.println("\t\tret.append(\"type = \").append( XlibWrapper.eventToString[get_type()] ).append(\", \");");
+                } else if (name.equals("window")){
+                    pw.println("\t\tret.append(\"window = \" ).append( getWindow(get_window()) ).append(\", \");");
+                } else if (type == AtomicType.TYPE_ARRAY) {
+                    pw.print("\t\tret.append(\"{\")");
+                    for (int i = 0; i < tp.getArrayLength(); i++) {
+                        pw.print("\n\t\t.append( get_" + name + "(" + i + ") ).append(\" \")");
+                    }
+                    pw.println(".append( \"}\");");
+                } else {
+                    pw.println("\t\tret.append(\"" + name +" = \").append( get_"+ name+"() ).append(\", \");");
+                }
+            }
+
+        }
+        pw.println("\t\treturn ret.toString();\n\t}\n\n");
+    }
+
+    public void writeStubs(StructType stp, PrintWriter pw) {
+        int type;
+        String prefix = "";
+        if (!stp.getIsInterface()) {
+            prefix = "\t\tabstract ";
+        } else {
+            prefix = "\t";
+        }
+        for (Enumeration e = stp.getMembers() ; e.hasMoreElements() ;) {
+            AtomicType tp = (AtomicType) e.nextElement();
+
+            type = tp.getType();
+            String name = tp.getName().replace('.','_');
+            if ((name != null) && (name.length() > 0))
+            {
+                if (type == AtomicType.TYPE_ARRAY) {
+                    // Returns pointer to the start of the array
+                    pw.println(prefix + "long get_" +name +"();");
+
+                    pw.println(prefix + tp.getJavaType() + " get_" +name +"(int index);");
+                    pw.println(prefix + "void set_" +name +"(int index, " + tp.getJavaType() + " v);");
+                } else {
+                    pw.println(prefix + tp.getJavaType() + " get_" +name +"();");
+                    if (type != AtomicType.TYPE_STRUCT) pw.println(prefix + "void set_" +name +"(" + tp.getJavaType() + " v);");
+                }
+            }
+        }
+    }
+
+    private int padSize(int size, int wordLength) {
+        int bytesPerWord = wordLength / 8;
+        // Make size dividable by bytesPerWord
+        return (size + bytesPerWord / 2) / bytesPerWord * bytesPerWord;
+    }
+
+    public void writeAccessorImpls(StructType stp, PrintWriter pw) {
+        int type;
+        int i=0;
+        String s_size_32 = getStructSize(stp, false);
+        String s_size_64 = getStructSize(stp, true);
+        int acc_size_32 = 0;
+        int acc_size_64 = 0;
+        String s_log = (generateLog?"log.finest(\"\");":"");
+        for (Enumeration e = stp.getMembers() ; e.hasMoreElements() ;) {
+            AtomicType tp = (AtomicType) e.nextElement();
+
+            type = tp.getType();
+            String name = tp.getName().replace('.','_');
+            String pref = "\tpublic " ;
+            if ((name != null) && (name.length() > 0))
+            {
+                String jt = tp.getJavaType();
+                String ja_32 = tp.getJavaAccess(false);
+                String ja_64 = tp.getJavaAccess(true);
+                String ja = ja_32;
+                int elemSize_32 = AtomicType.getNativeSizeForAccess(ja_32);
+                int elemSize_64 = AtomicType.getNativeSizeForAccess(ja_64);
+                String elemSize = tp.getItemSize();
+                if (type == AtomicType.TYPE_ARRAY) {
+                    acc_size_32 += elemSize_32 * tp.getArrayLength();
+                    acc_size_64 += elemSize_64 * tp.getArrayLength();
+                    pw.println(pref + tp.getJavaType() + " get_" +name + "(int index) { " +s_log+"return " +
+                               tp.getJavaResult(stp.getOffset(tp) + "+index*" + elemSize, null) + "; }");
+                    if (tp.getReferencedType() instanceof AtomicType) { // Set for StructType is forbidden
+                        pw.println(MessageFormat.format(pref + "void set_{0}(int index, {1} v) '{' {3} {2}; '}'",
+                                                        new Object[] {
+                                                            name, jt,
+                                                            tp.getJavaConversion("pData+"+stp.getOffset(tp)+" + index*" + elemSize, "v"),
+                                                            s_log}));
+                    }
+                    // Returns pointer to the start of the array
+                    pw.println(pref + "long get_" +name+ "() { "+s_log+"return pData+"+stp.getOffset(tp)+"; }");
+                } else if (type == AtomicType.TYPE_PTR) {
+                    pw.println(MessageFormat.format(pref + "{0} get_{1}(int index) '{' {3} return {2}; '}'",
+                                         new Object[] {
+                                             jt, name,
+                                             tp.getJavaResult("index*" + elemSize, "Native.getLong(pData+"+stp.getOffset(tp)+")"),
+                                             s_log
+                                             }));
+                    pw.println(pref + "long get_" +name+ "() { "+s_log+"return Native.getLong(pData+"+stp.getOffset(tp)+"); }");
+                    pw.println(MessageFormat.format(pref + "void set_{0}({1} v) '{' {3} {2}; '}'",
+                                                    new Object[] {name, "long", "Native.putLong(pData + " + stp.getOffset(tp) + ", v)", s_log}));
+                    acc_size_32 += elemSize_32;
+                    acc_size_64 += elemSize_64;
+                } else {
+                    acc_size_32 += elemSize_32;
+                    acc_size_64 += elemSize_64;
+                    pw.println(pref + tp.getJavaType() + " get_" +name +
+                               "() { "+s_log+"return " + tp.getJavaResult(stp.getOffset(tp), null) + "; }");
+                    if (type != AtomicType.TYPE_STRUCT) {
+                        pw.println(MessageFormat.format(pref + "void set_{0}({1} v) '{' {3} {2}; '}'",
+                                                        new Object[] {name, jt, tp.getJavaConversion("pData+"+stp.getOffset(tp), "v"), s_log}));
+                    }
+                }
+                i++;
+            }
+        }
+        if (s_size_32 != null && !s_size_32.equals(Integer.toString(acc_size_32))) {
+            if (log.isLoggable(Level.FINE)) {
+                log.fine("32 bits: The size of the structure " + stp.getName() + " " + s_size_32 +
+                        " is not equal to the accumulated size " +acc_size_32 + " of the fields");
+            }
+        } else if (s_size_64 != null && !s_size_64.equals(Integer.toString(acc_size_64))) {
+            if (log.isLoggable(Level.FINE)) {
+                log.fine("64 bits: The size of the structure " + stp.getName() + " " +s_size_64+
+                        " is not equal to the accumulated size " +acc_size_64+" of the fields");
+            }
+        }
+    }
+
+    public void writeWrapperSubclass(StructType stp, PrintWriter pw, boolean wide) {
+
+
+        pw.println("class " + stp.getJavaClassName() + "AccessorImpl"  + " extends " + stp.getJavaClassName() + "Accessor  {");
+        pw.println("/*\nThis class serves as a Wrapper for the following X Struct \nsThe offsets here are calculated based on actual compiler.\n\n" +stp.getDescription() + "\n\n */");
+
+        writeAccessorImpls(stp, pw);
+
+        pw.println("\n\n } \n\n");
+    }
+
+    public void writeWrapper(String outputDir, StructType stp)
+    {
+        if (stp.getNumFields() > 0) {
+
+            try {
+                FileOutputStream fs =  new FileOutputStream(outputDir + "/"+stp.getJavaClassName()+".java");
+                PrintWriter pw = new PrintWriter(fs);
+                pw.println("// This file is an automatically generated file, please do not edit this file, modify the WrapperGenerator.java file instead !\n" );
+
+                pw.println("package "+package_name+";\n");
+                pw.println("import sun.misc.*;\n");
+                pw.println("import sun.util.logging.PlatformLogger;");
+                String baseClass = stp.getBaseClass();
+                if (baseClass == null) {
+                    baseClass = defaultBaseClass;
+                }
+                if (stp.getIsInterface()) {
+                    pw.print("public interface ");
+                    pw.print(stp.getJavaClassName());
+                } else {
+                    pw.print("public class ");
+                    pw.print(stp.getJavaClassName() + " extends " + baseClass);
+                }
+                if (stp.getInterfaces() != null) {
+                    pw.print(" implements " + stp.getInterfaces());
+                }
+                pw.println(" { ");
+                if (!stp.getIsInterface()) {
+                    pw.println("\tprivate Unsafe unsafe = XlibWrapper.unsafe; ");
+                    pw.println("\tprivate final boolean should_free_memory;");
+                    pw.println("\tpublic static int getSize() { return " + stp.getSize() + "; }");
+                    pw.println("\tpublic int getDataSize() { return getSize(); }");
+                    pw.println("\n\tlong pData;");
+                    pw.println("\n\tpublic long getPData() { return pData; }");
+
+                    pw.println("\n\n\tpublic " + stp.getJavaClassName() + "(long addr) {");
+                    if (generateLog) {
+                        pw.println("\t\tlog.finest(\"Creating\");");
+                    }
+                    pw.println("\t\tpData=addr;");
+                    pw.println("\t\tshould_free_memory = false;");
+                    pw.println("\t}");
+                    pw.println("\n\n\tpublic " + stp.getJavaClassName() + "() {");
+                    if (generateLog) {
+                        pw.println("\t\tlog.finest(\"Creating\");");
+                    }
+                    pw.println("\t\tpData = unsafe.allocateMemory(getSize());");
+                    pw.println("\t\tshould_free_memory = true;");
+                    pw.println("\t}");
+
+                    pw.println("\n\n\tpublic void dispose() {");
+                    if (generateLog) {
+                        pw.println("\t\tlog.finest(\"Disposing\");");
+                    }
+                    pw.println("\t\tif (should_free_memory) {");
+                    if (generateLog) {
+                        pw.println("\t\t\tlog.finest(\"freeing memory\");");
+                    }
+                    pw.println("\t\t\tunsafe.freeMemory(pData); \n\t}");
+                    pw.println("\t\t}");
+                    writeAccessorImpls(stp, pw);
+                    writeToString(stp,pw);
+                } else {
+                    pw.println("\n\n\tvoid dispose();");
+                    pw.println("\n\tlong getPData();");
+                    writeStubs(stp,pw);
+                }
+
+
+                pw.println("}\n\n\n");
+                pw.close();
+            }
+            catch (Exception e)
+            {
+                e.printStackTrace();
+            }
+        }
+    }
+
+    private boolean readSizeInfo(InputStream is, boolean wide) {
+        String line;
+        String splits[];
+        BufferedReader in  = new BufferedReader(new InputStreamReader(is));
+        try {
+            while ((line = in.readLine()) != null)
+            {
+                splits = line.split("\\p{Space}");
+                if (splits.length == 2)
+                {
+                    if (wide) {
+                        sizeTable64bit.put(splits[0],splits[1]);
+                    } else {
+                        sizeTable32bit.put(splits[0],splits[1]);
+                    }
+                }
+            }
+            return true;
+        } catch (Exception e) {
+            e.printStackTrace();
+            return false;
+        }
+    }
+
+    public void writeFunctionCallWrapper(String outputDir, FunctionType ft) {
+        try {
+            FileOutputStream fs =  new FileOutputStream(outputDir + "/" + ft.getName()+".java");
+            PrintWriter pw = new PrintWriter(fs);
+            pw.println("// This file is an automatically generated file, please do not edit this file, modify the WrapperGenerator.java file instead !\n" );
+
+            pw.println("package "+package_name+";\n");
+            pw.println("import sun.misc.Unsafe;\n");
+            pw.println("class " + ft.getName() + " {");
+            pw.println("\tprivate static Unsafe unsafe = XlibWrapper.unsafe;");
+            pw.println("\tprivate boolean __executed = false;");
+            pw.println("\tprivate boolean __disposed = false;");
+            Iterator iter = ft.getArguments().iterator();
+            while (iter.hasNext()) {
+                AtomicType at = (AtomicType)iter.next();
+                if (at.isIn()) {
+                    pw.println("\t" + at.getJavaType() + " _" + at.getName() + ";");
+                } else {
+                    pw.println("\tlong " + at.getName() + "_ptr = unsafe.allocateMemory(Native.get" + at.getTypeUpperCase() + "Size());");
+                }
+            }
+            pw.println("\tpublic " + ft.getName() + "(");
+            iter = ft.getArguments().iterator();
+            boolean first = true;
+            while (iter.hasNext()) {
+                AtomicType at = (AtomicType)iter.next();
+                if (at.isIn() || at.isInOut()) {
+                    if (!first) {
+                        pw.println(",");
+                    }
+                    first = false;
+                    pw.print("\t\t" + at.getJavaType() + " " + at.getName());
+                }
+            }
+            pw.println("\t)");
+            pw.println("\t{");
+            iter = ft.getArguments().iterator();
+            while (iter.hasNext()) {
+                AtomicType at = (AtomicType)iter.next();
+                if (at.isIn() || at.isInOut()) {
+                    pw.println("\t\tset_" + at.getName() + "(" + at.getName() + ");");
+                }
+            }
+            pw.println("\t}");
+
+            pw.println("\tpublic " + ft.getReturnType() + " execute() {");
+            if (ft.isVoid()) {
+                pw.println("\t\texecute(null);");
+            } else {
+                pw.println("\t\treturn execute(null);");
+            }
+            pw.println("\t}");
+
+            pw.println("\tpublic " + ft.getReturnType() + " execute(XToolkit.XErrorHandler errorHandler) {");
+            pw.println("\t\tif (__disposed) {");
+            pw.println("\t\t    throw new IllegalStateException(\"Disposed\");");
+            pw.println("\t\t}");
+            pw.println("\t\tXToolkit.awtLock();");
+            pw.println("\t\ttry {");
+            pw.println("\t\t\tif (__executed) {");
+            pw.println("\t\t\t    throw new IllegalStateException(\"Already executed\");");
+            pw.println("\t\t\t}");
+            pw.println("\t\t\t__executed = true;");
+            pw.println("\t\t\tif (errorHandler != null) {");
+            pw.println("\t\t\t    XErrorHandlerUtil.WITH_XERROR_HANDLER(errorHandler);");
+            pw.println("\t\t\t}");
+            iter = ft.getArguments().iterator();
+            while (iter.hasNext()) {
+                AtomicType at = (AtomicType)iter.next();
+                if (!at.isIn() && at.isAutoFree()) {
+                    pw.println("\t\t\tNative.put" + at.getTypeUpperCase() + "(" +at.getName() + "_ptr, 0);");
+                }
+            }
+            if (!ft.isVoid()) {
+                pw.println("\t\t\t" + ft.getReturnType() + " status = ");
+            }
+            pw.println("\t\t\tXlibWrapper." + ft.getName() + "(XToolkit.getDisplay(), ");
+            iter = ft.getArguments().iterator();
+            first = true;
+            while (iter.hasNext()) {
+                AtomicType at = (AtomicType)iter.next();
+                if (!first) {
+                    pw.println(",");
+                }
+                first = false;
+                if (at.isIn()) {
+                    pw.print("\t\t\t\tget_" + at.getName() + "()");
+                } else {
+                    pw.print("\t\t\t\t" + at.getName() + "_ptr");
+                }
+            }
+            pw.println("\t\t\t);");
+            pw.println("\t\t\tif (errorHandler != null) {");
+            pw.println("\t\t\t    XErrorHandlerUtil.RESTORE_XERROR_HANDLER();");
+            pw.println("\t\t\t}");
+            if (!ft.isVoid()) {
+                pw.println("\t\t\treturn status;");
+            }
+            pw.println("\t\t} finally {");
+            pw.println("\t\t    XToolkit.awtUnlock();");
+            pw.println("\t\t}");
+            pw.println("\t}");
+
+            pw.println("\tpublic boolean isExecuted() {");
+            pw.println("\t    return __executed;");
+            pw.println("\t}");
+            pw.println("\t");
+            pw.println("\tpublic boolean isDisposed() {");
+            pw.println("\t    return __disposed;");
+            pw.println("\t}");
+            pw.println("\tpublic void finalize() {");
+            pw.println("\t    dispose();");
+            pw.println("\t}");
+
+            pw.println("\tpublic void dispose() {");
+            pw.println("\t\tXToolkit.awtLock();");
+            pw.println("\t\ttry {");
+            pw.println("\t\tif (__disposed || !__executed) {");
+            pw.println("\t\t    return;");
+            pw.println("\t\t} finally {");
+            pw.println("\t\t    XToolkit.awtUnlock();");
+            pw.println("\t\t}");
+            pw.println("\t\t}");
+
+            iter = ft.getArguments().iterator();
+            while (iter.hasNext()) {
+                AtomicType at = (AtomicType)iter.next();
+                if (!at.isIn()) {
+                    if (at.isAutoFree()) {
+                        pw.println("\t\tif (__executed && get_" + at.getName() + "()!= 0) {");
+                        pw.println("\t\t\tXlibWrapper.XFree(get_" + at.getName() + "());");
+                        pw.println("\t\t}");
+                    }
+                    pw.println("\t\tunsafe.freeMemory(" + at.getName() + "_ptr);");
+                }
+            }
+            pw.println("\t\t__disposed = true;");
+            pw.println("\t\t}");
+            pw.println("\t}");
+
+            iter = ft.getArguments().iterator();
+            while (iter.hasNext()) {
+                AtomicType at = (AtomicType)iter.next();
+                pw.println("\tpublic " + at.getJavaType() + " get_" + at.getName() + "() {");
+
+                pw.println("\t\tif (__disposed) {");
+                pw.println("\t\t    throw new IllegalStateException(\"Disposed\");");
+                pw.println("\t\t}");
+                pw.println("\t\tif (!__executed) {");
+                pw.println("\t\t    throw new IllegalStateException(\"Not executed\");");
+                pw.println("\t\t}");
+
+                if (at.isIn()) {
+                    pw.println("\t\treturn _" + at.getName() + ";");
+                } else {
+                    pw.println("\t\treturn Native.get" + at.getTypeUpperCase() + "(" + at.getName() + "_ptr);");
+                }
+                pw.println("\t}");
+
+                pw.println("\tpublic void set_" + at.getName() + "(" + at.getJavaType() + " data) {");
+                if (at.isIn()) {
+                    pw.println("\t\t_" + at.getName() + " = data;");
+                } else {
+                    pw.println("\t\tNative.put" + at.getTypeUpperCase() + "(" + at.getName() + "_ptr, data);");
+                }
+                pw.println("\t}");
+            }
+            pw.println("}");
+            pw.close();
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+    }
+
+    public void writeJavaWrapperClass(String outputDir) {
+//          (new File(outputDir, package_path)).mkdirs();
+        try {
+            for (Enumeration e = symbolTable.elements() ; e.hasMoreElements() ;) {
+                BaseType tp = (BaseType) e.nextElement();
+                if (tp instanceof StructType) {
+                    StructType st = (StructType) tp;
+                    writeWrapper(outputDir, st);
+                } else if (tp instanceof FunctionType) {
+                    writeFunctionCallWrapper(outputDir, (FunctionType)tp);
+                }
+            }
+        }
+        catch (Exception e) {
+            e.printStackTrace();
+        }
+    }
+
+
+    public void writeNativeSizer(String file)
+    {
+        int type;
+        int i=0;
+        int j=0;
+        BaseType tp;
+        StructType stp;
+        Enumeration eo;
+
+
+        try {
+
+            FileOutputStream fs =  new FileOutputStream(file);
+            PrintWriter pw = new PrintWriter(fs);
+
+            pw.println("/* This file is an automatically generated file, please do not edit this file, modify the XlibParser.java file instead !*/\n" );
+            pw.println("#include <X11/Xlib.h>\n#include <X11/Xutil.h>\n#include <X11/Xos.h>\n#include <X11/Xatom.h>\n#include <stdio.h>\n");
+            pw.println("#include <X11/extensions/Xdbe.h>");
+            pw.println("#include <X11/XKBlib.h>");
+            pw.println("#include \"awt_p.h\"");
+            pw.println("#include \"color.h\"");
+            pw.println("#include \"colordata.h\"");
+            pw.println("\ntypedef struct\n");
+            pw.println("{\n");
+            pw.println("    unsigned long flags;\n");
+            pw.println("    unsigned long functions;\n");
+            pw.println("    unsigned long decorations;\n");
+            pw.println("    long inputMode;\n");
+            pw.println("    unsigned long status;\n");
+            pw.println("} PropMwmHints;\n");
+
+
+            pw.println("\n\nint main(){");
+            j=0;
+            for ( eo = symbolTable.elements() ; eo.hasMoreElements() ;) {
+                tp = (BaseType) eo.nextElement();
+                if (tp instanceof StructType)
+                {
+                    stp = (StructType) tp;
+                    if (!stp.getIsInterface()) {
+                        pw.println(stp.getName()+"  temp"+ j + ";\n");
+                        j++;
+                    }
+                }
+            }
+            j=0;
+
+            pw.println("printf(\"long\t%d\\n\",(int)sizeof(long));");
+            pw.println("printf(\"int\t%d\\n\",(int)sizeof(int));");
+            pw.println("printf(\"short\t%d\\n\",(int)sizeof(short));");
+            pw.println("printf(\"ptr\t%d\\n\",(int)sizeof(void *));");
+            pw.println("printf(\"Bool\t%d\\n\",(int)sizeof(Bool));");
+            pw.println("printf(\"Atom\t%d\\n\",(int)sizeof(Atom));");
+            pw.println("printf(\"Window\t%d\\n\",(int)sizeof(Window));");
+
+
+            for (eo = symbolTable.elements() ; eo.hasMoreElements() ;) {
+
+
+                tp = (BaseType) eo.nextElement();
+                if (tp instanceof StructType)
+                {
+                    stp = (StructType) tp;
+                    if (stp.getIsInterface()) {
+                        continue;
+                    }
+                    for (Enumeration e = stp.getMembers() ; e.hasMoreElements() ;) {
+                        AtomicType atp = (AtomicType) e.nextElement();
+                        if (atp.isAlias()) continue;
+                        pw.println("printf(\""+ stp.getName() + "." + atp.getName() + "\t%d\\n\""+
+                                   ",(int)((unsigned long ) &temp"+j+"."+atp.getName()+"- (unsigned long ) &temp" + j + ")  );");
+
+                        i++;
+
+
+                    }
+                    pw.println("printf(\""+ stp.getName() + "\t%d\\n\"" + ",(int)sizeof(temp"+j+"));");
+
+                    j++;
+                }
+
+            }
+            pw.println("return 0;");
+            pw.println("}");
+            pw.close();
+
+        }
+        catch (Exception e)
+        {
+            e.printStackTrace();
+        }
+    }
+
+    private void initTypes() {
+        symbolTable.put("int", new AtomicType(AtomicType.TYPE_INT, "", "int"));
+        symbolTable.put("short", new AtomicType(AtomicType.TYPE_SHORT, "", "short"));
+        symbolTable.put("long", new AtomicType(AtomicType.TYPE_LONG, "", "long"));
+        symbolTable.put("float", new AtomicType(AtomicType.TYPE_FLOAT, "", "float"));
+        symbolTable.put("double", new AtomicType(AtomicType.TYPE_DOUBLE, "", "double"));
+        symbolTable.put("Bool", new AtomicType(AtomicType.TYPE_BOOL, "", "Bool"));
+        symbolTable.put("char", new AtomicType(AtomicType.TYPE_CHAR, "", "char"));
+        symbolTable.put("byte", new AtomicType(AtomicType.TYPE_BYTE, "", "byte"));
+        symbolTable.put("pointer", new AtomicType(AtomicType.TYPE_PTR, "", "pointer"));
+        symbolTable.put("longlong", new AtomicType(AtomicType.TYPE_LONG_LONG, "", "longlong"));
+        symbolTable.put("Atom", new AtomicType(AtomicType.TYPE_ATOM, "", "Atom"));
+        symbolTable.put("ulong", new AtomicType(AtomicType.TYPE_ULONG, "", "ulong"));
+    }
+    public WrapperGenerator(String outputDir, String xlibFilename) {
+        initTypes();
+        try {
+            BufferedReader in  = new BufferedReader(new FileReader(xlibFilename));
+            String line;
+            String splits[];
+            BaseType curType = null;
+            while ((line = in.readLine()) != null)
+            {
+                int commentStart = line.indexOf("//");
+                if (commentStart >= 0) {
+                    // remove comment
+                    line = line.substring(0, commentStart);
+                }
+
+                if ("".equals(line)) {
+                    // skip empty line
+                    continue;
+                }
+
+                splits = line.split("\\p{Space}+");
+                if (splits.length >= 2)
+                {
+                    String struct_name = curType.getName();
+                    String field_name = splits[1];
+                    String s_type = splits[2];
+                    BaseType bt = curType;
+                    int type = AtomicType.getTypeForString(s_type);
+                    AtomicType atp = null;
+                    if (bt != null && type != -1) {
+                        atp = new AtomicType(type,field_name,s_type);
+                        if (splits.length > 3) {
+                            atp.setAttributes(splits);
+                        }
+                        if (bt instanceof StructType) {
+                            StructType  stp = (StructType) bt;
+                            stp.addMember(atp);
+                        } else if (bt instanceof FunctionType) {
+                            ((FunctionType)bt).addArgument(atp);
+                        }
+                    }
+                    else if (bt == null) {
+                        System.out.println("Cannot find " + struct_name);
+                    }
+
+                }
+                else  if (line != null) {
+                    BaseType bt = (BaseType) symbolTable.get(line);
+                    if (bt == null) {
+                        if (line.startsWith("!")) {
+                            FunctionType ft = new FunctionType(line);
+                            ft.setName(line);
+                            symbolTable.put(ft.getName(),ft);
+                            curType = ft;
+                        } else {
+                            StructType stp = new StructType(line);
+                            stp.setName(line);
+                            curType = stp;
+                            symbolTable.put(stp.getName(),stp);
+                        }
+                    }
+                }
+
+            }
+            in.close();
+        }
+        catch (Exception e) {
+            e.printStackTrace();
+        }
+
+    }
+    private void makeSizer(String outputDir) {
+        if (wide) {
+            sizerFileName = "sizer.64.c";
+        } else {
+            sizerFileName = "sizer.32.c";
+        }
+        File fp = new File(outputDir, sizerFileName);
+        writeNativeSizer(fp.getAbsolutePath());
+    }
+    private boolean readSizeInfo(String sizeInfo) {
+        try {
+            File f = new File(sizeInfo+".32");
+            boolean res = true;
+            FileInputStream fis = null;
+            if (f.exists()) {
+                fis = new FileInputStream(f);
+                res = readSizeInfo(fis, false);
+                fis.close();
+            }
+            f = new File(sizeInfo+".64");
+            if (f.exists()) {
+                fis = new FileInputStream(f);
+                res &= readSizeInfo(fis, true);
+                fis.close();
+            }
+            return res;
+        } catch (Exception e) {
+            e.printStackTrace();
+            return false;
+        }
+    }
+
+    private void startGeneration(String outputDir, String sizeInfo) {
+        if (readSizeInfo(sizeInfo))
+        {
+            writeJavaWrapperClass(outputDir);
+        }
+        else {
+            System.out.println("Error calculating offsets");
+        }
+    }
+
+    public static void main(String[] args) {
+
+        if (args.length < 4) {
+            System.out.println("Usage:\nWrapperGenerator <output_dir> <xlibtypes.txt> <action> [<platform> | <sizes info file>]");
+            System.out.println("Where <action>: gen, sizer");
+            System.out.println("      <platform>: 32, 64");
+            System.exit(1);
+        }
+
+        WrapperGenerator xparser = new WrapperGenerator(args[0], args[1]);
+        if (args[2].equals("sizer")) {
+            xparser.wide = args[3].equals("64");
+            xparser.makeSizer(args[0]);
+        } else if (args[2].equals("gen")) {
+            xparser.startGeneration(args[0], args[3]);
+        }
+    }
+
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/make/src/native/genconstants/ch/genSocketOptionRegistry.c	Mon Feb 17 11:37:46 2014 -0500
@@ -0,0 +1,130 @@
+/*
+ * Copyright (c) 2008, 2012, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+#include <stdio.h>
+#ifdef _WIN32
+#include <winsock2.h>
+#include <ws2tcpip.h>
+#else
+#include <sys/types.h>
+#include <sys/socket.h>
+#include <netinet/in.h>
+#include <netinet/tcp.h>
+#endif
+
+/**
+ * Generates sun.nio.ch.SocketOptionRegistry, a class that maps Java-level
+ * socket options to the platform specific level and option.
+ */
+
+static void out(char* s) {
+    printf("%s\n", s);
+}
+
+static void emit(const char *name, char * family, int level, int optname) {
+    printf("            map.put(new RegistryKey(%s, %s),", name, family);
+    printf(" new OptionKey(%d, %d));\n", level, optname);
+}
+
+static void emit_unspec(const char *name, int level, int optname) {
+    emit(name, "Net.UNSPEC", level, optname);
+}
+
+static  void emit_inet(const char *name, int level, int optname) {
+    emit(name, "StandardProtocolFamily.INET", level, optname);
+}
+
+static void emit_inet6(const char *name, int level, int optname) {
+    emit(name, "StandardProtocolFamily.INET6", level, optname);
+}
+
+int main(int argc, const char* argv[]) {
+    out("// AUTOMATICALLY GENERATED FILE - DO NOT EDIT                                  ");
+    out("package sun.nio.ch;                                                            ");
+    out("import java.net.SocketOption;                                                  ");
+    out("import java.net.StandardSocketOptions;                                         ");
+    out("import java.net.ProtocolFamily;                                                ");
+    out("import java.net.StandardProtocolFamily;                                        ");
+    out("import java.util.Map;                                                          ");
+    out("import java.util.HashMap;                                                      ");
+    out("class SocketOptionRegistry {                                                   ");
+    out("    private SocketOptionRegistry() { }                                         ");
+    out("    private static class RegistryKey {                                         ");
+    out("        private final SocketOption<?> name;                                    ");
+    out("        private final ProtocolFamily family;                                   ");
+    out("        RegistryKey(SocketOption<?> name, ProtocolFamily family) {             ");
+    out("            this.name = name;                                                  ");
+    out("            this.family = family;                                              ");
+    out("        }                                                                      ");
+    out("        public int hashCode() {                                                ");
+    out("            return name.hashCode() + family.hashCode();                        ");
+    out("        }                                                                      ");
+    out("        public boolean equals(Object ob) {                                     ");
+    out("            if (ob == null) return false;                                      ");
+    out("            if (!(ob instanceof RegistryKey)) return false;                    ");
+    out("            RegistryKey other = (RegistryKey)ob;                               ");
+    out("            if (this.name != other.name) return false;                         ");
+    out("            if (this.family != other.family) return false;                     ");
+    out("            return true;                                                       ");
+    out("        }                                                                      ");
+    out("    }                                                                          ");
+    out("    private static class LazyInitialization {                                  ");
+    out("        static final Map<RegistryKey,OptionKey> options = options();           ");
+    out("        private static Map<RegistryKey,OptionKey> options() {                  ");
+    out("            Map<RegistryKey,OptionKey> map =                                   ");
+    out("                new HashMap<RegistryKey,OptionKey>();                          ");
+
+    emit_unspec("StandardSocketOptions.SO_BROADCAST", SOL_SOCKET, SO_BROADCAST);
+    emit_unspec("StandardSocketOptions.SO_KEEPALIVE", SOL_SOCKET, SO_KEEPALIVE);
+    emit_unspec("StandardSocketOptions.SO_LINGER",    SOL_SOCKET, SO_LINGER);
+    emit_unspec("StandardSocketOptions.SO_SNDBUF",    SOL_SOCKET, SO_SNDBUF);
+    emit_unspec("StandardSocketOptions.SO_RCVBUF",    SOL_SOCKET, SO_RCVBUF);
+    emit_unspec("StandardSocketOptions.SO_REUSEADDR", SOL_SOCKET, SO_REUSEADDR);
+    emit_unspec("StandardSocketOptions.TCP_NODELAY",  IPPROTO_TCP, TCP_NODELAY);
+
+    emit_inet("StandardSocketOptions.IP_TOS",            IPPROTO_IP,     IP_TOS);
+    emit_inet("StandardSocketOptions.IP_MULTICAST_IF",   IPPROTO_IP,     IP_MULTICAST_IF);
+    emit_inet("StandardSocketOptions.IP_MULTICAST_TTL",  IPPROTO_IP,     IP_MULTICAST_TTL);
+    emit_inet("StandardSocketOptions.IP_MULTICAST_LOOP", IPPROTO_IP,     IP_MULTICAST_LOOP);
+
+#ifdef AF_INET6
+    emit_inet6("StandardSocketOptions.IP_MULTICAST_IF",   IPPROTO_IPV6,  IPV6_MULTICAST_IF);
+    emit_inet6("StandardSocketOptions.IP_MULTICAST_TTL",  IPPROTO_IPV6,  IPV6_MULTICAST_HOPS);
+    emit_inet6("StandardSocketOptions.IP_MULTICAST_LOOP", IPPROTO_IPV6,  IPV6_MULTICAST_LOOP);
+#endif
+
+    emit_unspec("ExtendedSocketOption.SO_OOBINLINE", SOL_SOCKET, SO_OOBINLINE);
+
+    out("            return map;                                                        ");
+    out("        }                                                                      ");
+    out("    }                                                                          ");
+    out("    public static OptionKey findOption(SocketOption<?> name, ProtocolFamily family) { ");
+    out("        RegistryKey key = new RegistryKey(name, family);                       ");
+    out("        return LazyInitialization.options.get(key);                            ");
+    out("    }                                                                          ");
+    out("}                                                                              ");
+
+    return 0;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/make/src/native/genconstants/fs/genSolarisConstants.c	Mon Feb 17 11:37:46 2014 -0500
@@ -0,0 +1,105 @@
+/*
+ * Copyright (c) 2008, 2011, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+#include <stdio.h>
+#include <errno.h>
+#include <unistd.h>
+#include <sys/acl.h>
+#include <fcntl.h>
+#include <sys/stat.h>
+
+/**
+ * Generates sun.nio.fs.SolarisConstants
+ */
+
+static void out(char* s) {
+    printf("%s\n", s);
+}
+
+static void emit(char* name, int value) {
+    printf("    static final int %s = %d;\n", name, value);
+}
+
+static void emitX(char* name, int value) {
+    printf("    static final int %s = 0x%x;\n", name, value);
+}
+
+#define DEF(X) emit(#X, X);
+#define DEFX(X) emitX(#X, X);
+
+int main(int argc, const char* argv[]) {
+    out("// AUTOMATICALLY GENERATED FILE - DO NOT EDIT                                  ");
+    out("package sun.nio.fs;                                                            ");
+    out("class SolarisConstants {                                                       ");
+    out("    private SolarisConstants() { }                                             ");
+
+    // extended attributes
+    DEFX(O_XATTR);
+    DEF(_PC_XATTR_ENABLED);
+
+    // ACL configuration
+    DEF(_PC_ACL_ENABLED);
+    DEFX(_ACL_ACE_ENABLED);
+
+    // ACL commands
+    DEFX(ACE_GETACL);
+    DEFX(ACE_SETACL);
+
+    // ACL mask/flags/types
+    emitX("ACE_ACCESS_ALLOWED_ACE_TYPE",        0x0000);
+    emitX("ACE_ACCESS_DENIED_ACE_TYPE",         0x0001);
+    emitX("ACE_SYSTEM_AUDIT_ACE_TYPE",          0x0002);
+    emitX("ACE_SYSTEM_ALARM_ACE_TYPE",          0x0003);
+    emitX("ACE_READ_DATA",                      0x00000001);
+    emitX("ACE_LIST_DIRECTORY",                 0x00000001);
+    emitX("ACE_WRITE_DATA",                     0x00000002);
+    emitX("ACE_ADD_FILE",                       0x00000002);
+    emitX("ACE_APPEND_DATA",                    0x00000004);
+    emitX("ACE_ADD_SUBDIRECTORY",               0x00000004);
+    emitX("ACE_READ_NAMED_ATTRS",               0x00000008);
+    emitX("ACE_WRITE_NAMED_ATTRS",              0x00000010);
+    emitX("ACE_EXECUTE",                        0x00000020);
+    emitX("ACE_DELETE_CHILD",                   0x00000040);
+    emitX("ACE_READ_ATTRIBUTES",                0x00000080);
+    emitX("ACE_WRITE_ATTRIBUTES",               0x00000100);
+    emitX("ACE_DELETE",                         0x00010000);
+    emitX("ACE_READ_ACL",                       0x00020000);
+    emitX("ACE_WRITE_ACL",                      0x00040000);
+    emitX("ACE_WRITE_OWNER",                    0x00080000);
+    emitX("ACE_SYNCHRONIZE",                    0x00100000);
+    emitX("ACE_FILE_INHERIT_ACE",               0x0001);
+    emitX("ACE_DIRECTORY_INHERIT_ACE",          0x0002);
+    emitX("ACE_NO_PROPAGATE_INHERIT_ACE",       0x0004);
+    emitX("ACE_INHERIT_ONLY_ACE",               0x0008);
+    emitX("ACE_SUCCESSFUL_ACCESS_ACE_FLAG",     0x0010);
+    emitX("ACE_FAILED_ACCESS_ACE_FLAG",         0x0020);
+    emitX("ACE_IDENTIFIER_GROUP",               0x0040);
+    emitX("ACE_OWNER",                          0x1000);
+    emitX("ACE_GROUP",                          0x2000);
+    emitX("ACE_EVERYONE",                       0x4000);
+
+    out("}                                                                              ");
+    return 0;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/make/src/native/genconstants/fs/genUnixConstants.c	Mon Feb 17 11:37:46 2014 -0500
@@ -0,0 +1,141 @@
+/*
+ * Copyright (c) 2008, 2012, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+#include <stdio.h>
+#include <errno.h>
+#include <unistd.h>
+#include <fcntl.h>
+#include <sys/stat.h>
+
+/**
+ * Generates sun.nio.fs.UnixConstants
+ */
+
+static void out(char* s) {
+    printf("%s\n", s);
+}
+
+static void emit(char* name, int value) {
+    printf("    static final int %s = %d;\n", name, value);
+}
+
+static void emitX(char* name, int value) {
+    printf("    static final int %s = 0x%x;\n", name, value);
+}
+
+#define DEF(X) emit(#X, X);
+#define DEFX(X) emitX(#X, X);
+
+int main(int argc, const char* argv[]) {
+    out("// AUTOMATICALLY GENERATED FILE - DO NOT EDIT                                  ");
+    out("package sun.nio.fs;                                                            ");
+    out("class UnixConstants {                                                          ");
+    out("    private UnixConstants() { }                                                ");
+
+    // open flags
+    DEF(O_RDONLY);
+    DEF(O_WRONLY);
+    DEF(O_RDWR);
+    DEFX(O_APPEND);
+    DEFX(O_CREAT);
+    DEFX(O_EXCL);
+    DEFX(O_TRUNC);
+    DEFX(O_SYNC);
+#ifndef O_DSYNC
+    // At least FreeBSD doesn't define O_DSYNC
+    emit("O_DSYNC", O_SYNC);
+#else
+    DEFX(O_DSYNC);
+#endif
+#ifdef O_NOFOLLOW
+    DEFX(O_NOFOLLOW);
+#else
+    // not supported (dummy values will not be used at runtime).
+    emitX("O_NOFOLLOW", 0x0);
+#endif
+
+    // mode masks
+    emitX("S_IAMB",
+         (S_IRUSR|S_IWUSR|S_IXUSR|S_IRGRP|S_IWGRP|S_IXGRP|S_IROTH|S_IWOTH|S_IXOTH));
+    DEF(S_IRUSR);
+    DEF(S_IWUSR);
+    DEF(S_IXUSR);
+    DEF(S_IRGRP);
+    DEF(S_IWGRP);
+    DEF(S_IXGRP);
+    DEF(S_IROTH);
+    DEF(S_IWOTH);
+    DEF(S_IXOTH);
+    DEFX(S_IFMT);
+    DEFX(S_IFREG);
+    DEFX(S_IFDIR);
+    DEFX(S_IFLNK);
+    DEFX(S_IFCHR);
+    DEFX(S_IFBLK);
+    DEFX(S_IFIFO);
+
+    // access modes
+    DEF(R_OK);
+    DEF(W_OK);
+    DEF(X_OK);
+    DEF(F_OK);
+
+    // errors
+    DEF(ENOENT);
+    DEF(EACCES);
+    DEF(EEXIST);
+    DEF(ENOTDIR);
+    DEF(EINVAL);
+    DEF(EXDEV);
+    DEF(EISDIR);
+    DEF(ENOTEMPTY);
+    DEF(ENOSPC);
+    DEF(EAGAIN);
+    DEF(ENOSYS);
+    DEF(ELOOP);
+    DEF(EROFS);
+#ifndef ENODATA
+    // Only used in Linux java source, provide any value so it compiles
+    emit("ENODATA", ELAST);
+#else
+    DEF(ENODATA);
+#endif
+    DEF(ERANGE);
+    DEF(EMFILE);
+
+    // flags used with openat/unlinkat/etc.
+#if defined(AT_SYMLINK_NOFOLLOW) && defined(AT_REMOVEDIR)
+    DEFX(AT_SYMLINK_NOFOLLOW)
+    DEFX(AT_REMOVEDIR);
+#else
+    // not supported (dummy values will not be used at runtime).
+    emitX("AT_SYMLINK_NOFOLLOW", 0x0);
+    emitX("AT_REMOVEDIR", 0x0);
+#endif
+
+    out("}                                                                              ");
+
+    return 0;
+}
--- a/src/aix/classes/sun/nio/ch/AixPollPort.java	Mon Feb 17 11:36:40 2014 -0500
+++ b/src/aix/classes/sun/nio/ch/AixPollPort.java	Mon Feb 17 11:37:46 2014 -0500
@@ -107,6 +107,7 @@
     private final ArrayBlockingQueue<Event> queue;
     private final Event NEED_TO_POLL = new Event(null, 0);
     private final Event EXECUTE_TASK_OR_SHUTDOWN = new Event(null, 0);
+    private final Event CONTINUE_AFTER_CTL_EVENT = new Event(null, 0);
 
     // encapsulates a pollset control event for a file descriptor
     static class ControlEvent {
@@ -342,7 +343,11 @@
 
                             // To emulate one shot semantic we need to remove
                             // the file descriptor here.
-                            pollsetCtl(pollset, PS_DELETE, fd, 0);
+                            if (fd != sp[0] && fd != ctlSp[0]) {
+                                synchronized (controlQueue) {
+                                    pollsetCtl(pollset, PS_DELETE, fd, 0);
+                                }
+                            }
 
                             // wakeup
                             if (fd == sp[0]) {
@@ -351,10 +356,6 @@
                                     drain1(sp[0]);
                                 }
 
-                                // This is the only file descriptor without
-                                // one shot semantic => register it again.
-                                pollsetCtl(pollset, PS_ADD, sp[0], Net.POLLIN);
-
                                 // queue special event if there are more events
                                 // to handle.
                                 if (n > 0) {
@@ -368,12 +369,12 @@
                             if (fd == ctlSp[0]) {
                                 synchronized (controlQueue) {
                                     drain1(ctlSp[0]);
-                                    // This file descriptor does not have
-                                    // one shot semantic => register it again.
-                                    pollsetCtl(pollset, PS_ADD, ctlSp[0], Net.POLLIN);
                                     processControlQueue();
                                 }
-                                continue;
+                                if (n > 0) {
+                                    continue;
+                                }
+                                return CONTINUE_AFTER_CTL_EVENT;
                             }
 
                             PollableChannel channel = fdToChannel.get(fd);
@@ -431,6 +432,11 @@
                         continue;
                     }
 
+                    // contine after we processed a control event
+                    if (ev == CONTINUE_AFTER_CTL_EVENT) {
+                        continue;
+                    }
+
                     // handle wakeup to execute task or shutdown
                     if (ev == EXECUTE_TASK_OR_SHUTDOWN) {
                         Runnable task = pollTask();
--- a/src/share/bin/java.c	Mon Feb 17 11:36:40 2014 -0500
+++ b/src/share/bin/java.c	Mon Feb 17 11:37:46 2014 -0500
@@ -345,10 +345,10 @@
         } \
     } while (JNI_FALSE)
 
-#define CHECK_EXCEPTION_RETURN(CER_return_value) \
+#define CHECK_EXCEPTION_RETURN() \
     do { \
         if ((*env)->ExceptionOccurred(env)) { \
-            return CER_return_value; \
+            return; \
         } \
     } while (JNI_FALSE)
 
@@ -1258,7 +1258,6 @@
 GetApplicationClass(JNIEnv *env)
 {
     jmethodID mid;
-    jobject result;
     jclass cls = GetLauncherHelperClass(env);
     NULL_CHECK0(cls);
     NULL_CHECK0(mid = (*env)->GetStaticMethodID(env, cls,
--- a/src/share/bin/parse_manifest.c	Mon Feb 17 11:36:40 2014 -0500
+++ b/src/share/bin/parse_manifest.c	Mon Feb 17 11:37:46 2014 -0500
@@ -233,7 +233,7 @@
     jlong base_offset;
     jlong offset;
     char buffer[MINREAD];
-    p = buffer;
+    p = (Byte*) buffer;
     /*
      * Read the END Header, which is the starting point for ZIP files.
      * (Clearly designed to make writing a zip file easier than reading
@@ -276,7 +276,7 @@
         if (JLI_Lseek(fd, offset, SEEK_SET) < (jlong)0) {
             return (-1);
         }
-        p = buffer;
+        p = (Byte*) buffer;
         base_offset = base_offset - ZIP64_ENDSIZ(p) - ZIP64_ENDOFF(p) - ZIP64_ENDHDR;
     } else {
         base_offset = base_offset - ENDSIZ(p) - ENDOFF(p);
--- a/src/share/classes/com/sun/security/auth/callback/TextCallbackHandler.java	Mon Feb 17 11:36:40 2014 -0500
+++ b/src/share/classes/com/sun/security/auth/callback/TextCallbackHandler.java	Mon Feb 17 11:37:46 2014 -0500
@@ -28,21 +28,14 @@
 /* JAAS imports */
 import javax.security.auth.callback.Callback;
 import javax.security.auth.callback.CallbackHandler;
-import javax.security.auth.callback.ConfirmationCallback;
-import javax.security.auth.callback.NameCallback;
-import javax.security.auth.callback.PasswordCallback;
-import javax.security.auth.callback.TextOutputCallback;
+import javax.security.auth.callback.NameCallback;        // javadoc
+import javax.security.auth.callback.PasswordCallback;    // javadoc
 import javax.security.auth.callback.UnsupportedCallbackException;
 
 /* Java imports */
-import java.io.BufferedReader;
 import java.io.IOException;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.io.PushbackInputStream;
-import java.util.Arrays;
 
-import sun.security.util.Password;
+import sun.security.util.ConsoleCallbackHandler;
 
 /**
  * <p>
@@ -55,6 +48,7 @@
 
 @jdk.Exported
 public class TextCallbackHandler implements CallbackHandler {
+    private final CallbackHandler consoleHandler;
 
     /**
      * <p>Creates a callback handler that prompts and reads from the
@@ -63,7 +57,9 @@
      * CallbackHandler.
 
      */
-    public TextCallbackHandler() { }
+    public TextCallbackHandler() {
+        this.consoleHandler = new ConsoleCallbackHandler();
+    }
 
     /**
      * Handles the specified set of callbacks.
@@ -76,187 +72,7 @@
     public void handle(Callback[] callbacks)
         throws IOException, UnsupportedCallbackException
     {
-        ConfirmationCallback confirmation = null;
-
-        for (int i = 0; i < callbacks.length; i++) {
-            if (callbacks[i] instanceof TextOutputCallback) {
-                TextOutputCallback tc = (TextOutputCallback) callbacks[i];
-
-                String text;
-                switch (tc.getMessageType()) {
-                case TextOutputCallback.INFORMATION:
-                    text = "";
-                    break;
-                case TextOutputCallback.WARNING:
-                    text = "Warning: ";
-                    break;
-                case TextOutputCallback.ERROR:
-                    text = "Error: ";
-                    break;
-                default:
-                    throw new UnsupportedCallbackException(
-                        callbacks[i], "Unrecognized message type");
-                }
-
-                String message = tc.getMessage();
-                if (message != null) {
-                    text += message;
-                }
-                if (text != null) {
-                    System.err.println(text);
-                }
-
-            } else if (callbacks[i] instanceof NameCallback) {
-                NameCallback nc = (NameCallback) callbacks[i];
-
-                if (nc.getDefaultName() == null) {
-                    System.err.print(nc.getPrompt());
-                } else {
-                    System.err.print(nc.getPrompt() +
-                                " [" + nc.getDefaultName() + "] ");
-                }
-                System.err.flush();
-
-                String result = readLine();
-                if (result.equals("")) {
-                    result = nc.getDefaultName();
-                }
-
-                nc.setName(result);
-
-            } else if (callbacks[i] instanceof PasswordCallback) {
-                PasswordCallback pc = (PasswordCallback) callbacks[i];
-
-                System.err.print(pc.getPrompt());
-                System.err.flush();
-
-                pc.setPassword(Password.readPassword(System.in, pc.isEchoOn()));
-
-            } else if (callbacks[i] instanceof ConfirmationCallback) {
-                confirmation = (ConfirmationCallback) callbacks[i];
-
-            } else {
-                throw new UnsupportedCallbackException(
-                    callbacks[i], "Unrecognized Callback");
-            }
-        }
-
-        /* Do the confirmation callback last. */
-        if (confirmation != null) {
-            doConfirmation(confirmation);
-        }
-    }
-
-    /* Reads a line of input */
-    private String readLine() throws IOException {
-        String result = new BufferedReader
-            (new InputStreamReader(System.in)).readLine();
-        if (result == null) {
-            throw new IOException("Cannot read from System.in");
-        }
-        return result;
-    }
-
-    private void doConfirmation(ConfirmationCallback confirmation)
-        throws IOException, UnsupportedCallbackException
-    {
-        String prefix;
-        int messageType = confirmation.getMessageType();
-        switch (messageType) {
-        case ConfirmationCallback.WARNING:
-            prefix =  "Warning: ";
-            break;
-        case ConfirmationCallback.ERROR:
-            prefix = "Error: ";
-            break;
-        case ConfirmationCallback.INFORMATION:
-            prefix = "";
-            break;
-        default:
-            throw new UnsupportedCallbackException(
-                confirmation, "Unrecognized message type: " + messageType);
-        }
-
-        class OptionInfo {
-            String name;
-            int value;
-            OptionInfo(String name, int value) {
-                this.name = name;
-                this.value = value;
-            }
-        }
-
-        OptionInfo[] options;
-        int optionType = confirmation.getOptionType();
-        switch (optionType) {
-        case ConfirmationCallback.YES_NO_OPTION:
-            options = new OptionInfo[] {
-                new OptionInfo("Yes", ConfirmationCallback.YES),
-                new OptionInfo("No", ConfirmationCallback.NO)
-            };
-            break;
-        case ConfirmationCallback.YES_NO_CANCEL_OPTION:
-            options = new OptionInfo[] {
-                new OptionInfo("Yes", ConfirmationCallback.YES),
-                new OptionInfo("No", ConfirmationCallback.NO),
-                new OptionInfo("Cancel", ConfirmationCallback.CANCEL)
-            };
-            break;
-        case ConfirmationCallback.OK_CANCEL_OPTION:
-            options = new OptionInfo[] {
-                new OptionInfo("OK", ConfirmationCallback.OK),
-                new OptionInfo("Cancel", ConfirmationCallback.CANCEL)
-            };
-            break;
-        case ConfirmationCallback.UNSPECIFIED_OPTION:
-            String[] optionStrings = confirmation.getOptions();
-            options = new OptionInfo[optionStrings.length];
-            for (int i = 0; i < options.length; i++) {
-                options[i] = new OptionInfo(optionStrings[i], i);
-            }
-            break;
-        default:
-            throw new UnsupportedCallbackException(
-                confirmation, "Unrecognized option type: " + optionType);
-        }
-
-        int defaultOption = confirmation.getDefaultOption();
-
-        String prompt = confirmation.getPrompt();
-        if (prompt == null) {
-            prompt = "";
-        }
-        prompt = prefix + prompt;
-        if (!prompt.equals("")) {
-            System.err.println(prompt);
-        }
-
-        for (int i = 0; i < options.length; i++) {
-            if (optionType == ConfirmationCallback.UNSPECIFIED_OPTION) {
-                // defaultOption is an index into the options array
-                System.err.println(
-                    i + ". " + options[i].name +
-                    (i == defaultOption ? " [default]" : ""));
-            } else {
-                // defaultOption is an option value
-                System.err.println(
-                    i + ". " + options[i].name +
-                    (options[i].value == defaultOption ? " [default]" : ""));
-            }
-        }
-        System.err.print("Enter a number: ");
-        System.err.flush();
-        int result;
-        try {
-            result = Integer.parseInt(readLine());
-            if (result < 0 || result > (options.length - 1)) {
-                result = defaultOption;
-            }
-            result = options[result].value;
-        } catch (NumberFormatException e) {
-            result = defaultOption;
-        }
-
-        confirmation.setSelectedIndex(result);
+        // delegate to console handler
+        consoleHandler.handle(callbacks);
     }
 }
--- a/src/share/classes/java/lang/invoke/MethodHandle.java	Mon Feb 17 11:36:40 2014 -0500
+++ b/src/share/classes/java/lang/invoke/MethodHandle.java	Mon Feb 17 11:37:46 2014 -0500
@@ -31,8 +31,6 @@
 import sun.misc.Unsafe;
 
 import static java.lang.invoke.MethodHandleStatics.*;
-import java.util.logging.Level;
-import java.util.logging.Logger;
 
 /**
  * A method handle is a typed, directly executable reference to an underlying method,
--- a/src/share/classes/java/lang/invoke/SimpleMethodHandle.java	Mon Feb 17 11:36:40 2014 -0500
+++ b/src/share/classes/java/lang/invoke/SimpleMethodHandle.java	Mon Feb 17 11:37:46 2014 -0500
@@ -27,8 +27,6 @@
 
 import static java.lang.invoke.LambdaForm.*;
 import static java.lang.invoke.MethodHandleNatives.Constants.*;
-import java.util.logging.Level;
-import java.util.logging.Logger;
 
 /**
  * A method handle whose behavior is determined only by its LambdaForm.
--- a/src/share/classes/java/sql/Clob.java	Mon Feb 17 11:36:40 2014 -0500
+++ b/src/share/classes/java/sql/Clob.java	Mon Feb 17 11:37:46 2014 -0500
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2014, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -309,8 +309,8 @@
     void truncate(long len) throws SQLException;
 
     /**
-     * This method frees the <code>Clob</code> object and releases the resources the resources
-     * that it holds.  The object is invalid once the <code>free</code> method
+     * This method releases the resources that the <code>Clob</code> object
+     * holds.  The object is invalid once the <code>free</code> method
      * is called.
      * <p>
      * After <code>free</code> has been called, any attempt to invoke a
--- a/src/share/classes/javax/imageio/spi/ServiceRegistry.java	Mon Feb 17 11:36:40 2014 -0500
+++ b/src/share/classes/javax/imageio/spi/ServiceRegistry.java	Mon Feb 17 11:37:46 2014 -0500
@@ -123,15 +123,6 @@
         }
     }
 
-    // The following two methods expose functionality from
-    // sun.misc.Service.  If that class is made public, they may be
-    // removed.
-    //
-    // The sun.misc.ServiceConfigurationError class may also be
-    // exposed, in which case the references to 'an
-    // <code>Error</code>' below should be changed to 'a
-    // <code>ServiceConfigurationError</code>'.
-
     /**
      * Searches for implementations of a particular service class
      * using the given class loader.
--- a/src/share/classes/javax/naming/AuthenticationException.java	Mon Feb 17 11:36:40 2014 -0500
+++ b/src/share/classes/javax/naming/AuthenticationException.java	Mon Feb 17 11:37:46 2014 -0500
@@ -29,7 +29,7 @@
   * This exception is thrown when an authentication error occurs while
   * accessing the naming or directory service.
   * An authentication error can happen, for example, when the credentials
-  * supplied by the user program is invalid or otherwise fails to
+  * supplied by the user program are invalid or otherwise fail to
   * authenticate the user to the naming/directory service.
   *<p>
   * If the program wants to handle this exception in particular, it
@@ -37,7 +37,7 @@
   * catch NamingException. After catching AuthenticationException, the
   * program could reattempt the authentication by updating
   * the resolved context's environment properties with the appropriate
-  * appropriate credentials.
+  * credentials.
   * <p>
   * Synchronization and serialization issues that apply to NamingException
   * apply directly here.
--- a/src/share/classes/javax/naming/AuthenticationNotSupportedException.java	Mon Feb 17 11:36:40 2014 -0500
+++ b/src/share/classes/javax/naming/AuthenticationNotSupportedException.java	Mon Feb 17 11:37:46 2014 -0500
@@ -67,7 +67,7 @@
 
     /**
       * Constructs a new instance of AuthenticationNotSupportedException
-      * all name resolution fields and explanation initialized to null.
+      * with all name resolution fields and explanation initialized to null.
       */
     public AuthenticationNotSupportedException() {
         super();
--- a/src/share/classes/javax/naming/CannotProceedException.java	Mon Feb 17 11:36:40 2014 -0500
+++ b/src/share/classes/javax/naming/CannotProceedException.java	Mon Feb 17 11:37:46 2014 -0500
@@ -64,7 +64,7 @@
     /**
      * Contains the remaining unresolved part of the second
      * "name" argument to Context.rename().
-     * This information necessary for
+     * This information is necessary for
      * continuing the Context.rename() operation.
      * <p>
      * This field is initialized to null.
--- a/src/share/classes/javax/naming/CompositeName.java	Mon Feb 17 11:36:40 2014 -0500
+++ b/src/share/classes/javax/naming/CompositeName.java	Mon Feb 17 11:37:46 2014 -0500
@@ -205,7 +205,7 @@
     private transient NameImpl impl;
     /**
       * Constructs a new composite name instance using the components
-      * specified by 'comps'. This protected method is intended to be
+      * specified by 'comps'. This protected method is intended
       * to be used by subclasses of CompositeName when they override
       * methods such as clone(), getPrefix(), getSuffix().
       *
@@ -436,7 +436,7 @@
 
     /**
       * Determines whether a composite name is a suffix of this composite name.
-      * A composite name 'n' is a suffix if it it is equal to
+      * A composite name 'n' is a suffix if it is equal to
       * getSuffix(size()-n.size())--in other words, this
       * composite name ends with 'n'.
       * If n is null or not a composite name, false is returned.
--- a/src/share/classes/javax/naming/CompoundName.java	Mon Feb 17 11:36:40 2014 -0500
+++ b/src/share/classes/javax/naming/CompoundName.java	Mon Feb 17 11:37:46 2014 -0500
@@ -165,7 +165,7 @@
 
     /**
       * Constructs a new compound name instance using the components
-      * specified in comps and syntax. This protected method is intended to be
+      * specified in comps and syntax. This protected method is intended
       * to be used by subclasses of CompoundName when they override
       * methods such as clone(), getPrefix(), getSuffix().
       *
@@ -365,7 +365,7 @@
       * components in this compound name.
       * The result and this compound name share the same syntax.
       * Subsequent changes to
-      * this compound name does not affect the name that is returned and
+      * this compound name do not affect the name that is returned and
       * vice versa.
       *
       * @param  posn    The 0-based index of the component at which to stop.
@@ -385,7 +385,7 @@
       * components in this compound name.
       * The result and this compound name share the same syntax.
       * Subsequent changes to
-      * this compound name does not affect the name that is returned.
+      * this compound name do not affect the name that is returned.
       *
       * @param  posn    The 0-based index of the component at which to start.
       *                 Must be in the range [0,size()].
@@ -423,7 +423,7 @@
 
     /**
       * Determines whether a compound name is a suffix of this compound name.
-      * A compound name 'n' is a suffix if it it is equal to
+      * A compound name 'n' is a suffix if it is equal to
       * getSuffix(size()-n.size())--in other words, this
       * compound name ends with 'n'.
       * If n is null or not a compound name, false is returned.
--- a/src/share/classes/javax/naming/LinkException.java	Mon Feb 17 11:36:40 2014 -0500
+++ b/src/share/classes/javax/naming/LinkException.java	Mon Feb 17 11:37:46 2014 -0500
@@ -26,11 +26,11 @@
 package javax.naming;
 
 /**
- * This exception is used to describe problems encounter while resolving links.
- * Addition information is added to the base NamingException for pinpointing
+ * This exception is used to describe problems encountered while resolving links.
+ * Additional information is added to the base NamingException for pinpointing
  * the problem with the link.
  *<p>
- * Analogous to how NamingException captures name resolution information,
+ * Analogously to how NamingException captures name resolution information,
  * LinkException captures "link"-name resolution information pinpointing
  * the problem encountered while resolving a link. All these fields may
  * be null.
@@ -111,7 +111,7 @@
     protected String linkExplanation;
 
     /**
-      * Constructs a new instance of LinkException with an explanation
+      * Constructs a new instance of LinkException with an explanation.
       * All the other fields are initialized to null.
       * @param  explanation     A possibly null string containing additional
       *                         detail about this exception.
@@ -176,7 +176,7 @@
     }
 
     /**
-      * Retrieves the explanation associated with the problem encounter
+      * Retrieves the explanation associated with the problem encountered
       * when resolving a link.
       *
       * @return The possibly null detail string explaining more about the problem
@@ -190,7 +190,7 @@
     }
 
     /**
-      * Sets the explanation associated with the problem encounter
+      * Sets the explanation associated with the problem encountered
       * when resolving a link.
       *
       * @param msg The possibly null detail string explaining more about the problem
@@ -211,7 +211,7 @@
      * invoke this method using the resulting composite name.
      *<p>
      * A copy of <code>name</code> is made and stored.
-     * Subsequent changes to <code>name</code> does not
+     * Subsequent changes to <code>name</code> do not
      * affect the copy in this NamingException and vice versa.
      *
      *
@@ -237,7 +237,7 @@
      * invoke this method using the resulting composite name.
      *<p>
      * A copy of <code>name</code> is made and stored.
-     * Subsequent changes to <code>name</code> does not
+     * Subsequent changes to <code>name</code> do not
      * affect the copy in this NamingException and vice versa.
      *
      * @param name The name to set remaining link name to. This can be null.
--- a/src/share/classes/javax/naming/LinkLoopException.java	Mon Feb 17 11:36:40 2014 -0500
+++ b/src/share/classes/javax/naming/LinkLoopException.java	Mon Feb 17 11:37:46 2014 -0500
@@ -27,7 +27,7 @@
 
 /**
   * This exception is thrown when
-  * a loop was detected will attempting to resolve a link, or an implementation
+  * a loop was detected while attempting to resolve a link, or an implementation
   * specific limit on link counts has been reached.
   * <p>
   * Synchronization and serialization issues that apply to LinkException
@@ -42,7 +42,7 @@
 
 public class LinkLoopException extends LinkException {
     /**
-      * Constructs a new instance of LinkLoopException with an explanation
+      * Constructs a new instance of LinkLoopException with an explanation.
       * All the other fields are initialized to null.
       * @param  explanation     A possibly null string containing additional
       *                         detail about this exception.
--- a/src/share/classes/javax/naming/MalformedLinkException.java	Mon Feb 17 11:36:40 2014 -0500
+++ b/src/share/classes/javax/naming/MalformedLinkException.java	Mon Feb 17 11:37:46 2014 -0500
@@ -42,7 +42,7 @@
 
 public class MalformedLinkException extends LinkException {
     /**
-      * Constructs a new instance of MalformedLinkException with an explanation
+      * Constructs a new instance of MalformedLinkException with an explanation.
       * All the other fields are initialized to null.
       * @param  explanation     A possibly null string containing additional
       *                         detail about this exception.
--- a/src/share/classes/javax/naming/NamingException.java	Mon Feb 17 11:36:40 2014 -0500
+++ b/src/share/classes/javax/naming/NamingException.java	Mon Feb 17 11:37:46 2014 -0500
@@ -201,7 +201,7 @@
      * invoke this method using the resulting composite name.
      *<p>
      * A copy of <code>name</code> is made and stored.
-     * Subsequent changes to <code>name</code> does not
+     * Subsequent changes to <code>name</code> do not
      * affect the copy in this NamingException and vice versa.
      *
      * @param name The possibly null name to set resolved name to.
@@ -225,7 +225,7 @@
      * invoke this method using the resulting composite name.
      *<p>
      * A copy of <code>name</code> is made and stored.
-     * Subsequent changes to <code>name</code> does not
+     * Subsequent changes to <code>name</code> do not
      * affect the copy in this NamingException and vice versa.
      * @param name The possibly null name to set remaining name to.
      *          If null, it sets the remaining name field to null.
@@ -279,7 +279,7 @@
       * a compound name, you should "stringify" the compound name
       * then invoke the overloaded form that accepts a String parameter.
       *<p>
-      * Subsequent changes to <code>name</code> does not
+      * Subsequent changes to <code>name</code> do not
       * affect the remaining name field in this NamingException and vice versa.
       * @param name The possibly null name containing ordered components to add.
       *                 If name is null, this method does not do anything.
--- a/src/share/classes/javax/naming/RefAddr.java	Mon Feb 17 11:36:40 2014 -0500
+++ b/src/share/classes/javax/naming/RefAddr.java	Mon Feb 17 11:37:46 2014 -0500
@@ -90,7 +90,7 @@
     /**
       * Determines whether obj is equal to this RefAddr.
       *<p>
-      * obj is equal to this RefAddr all of these conditions are true
+      * obj is equal to this RefAddr if all of these conditions are true
       *<ul>
       *<li> non-null
       *<li> instance of RefAddr
--- a/src/share/classes/javax/naming/Reference.java	Mon Feb 17 11:36:40 2014 -0500
+++ b/src/share/classes/javax/naming/Reference.java	Mon Feb 17 11:37:46 2014 -0500
@@ -218,8 +218,8 @@
       * String.compareTo() is used to test the equality of the address types.
       *
       * @param addrType The non-null address type for which to find the address.
-      * @return The address in this reference with address type 'addrType;
-      *         null if no such address exist.
+      * @return The address in this reference with address type 'addrType';
+      *         null if no such address exists.
       */
     public RefAddr get(String addrType) {
         int len = addrs.size();
--- a/src/share/classes/javax/naming/Referenceable.java	Mon Feb 17 11:36:40 2014 -0500
+++ b/src/share/classes/javax/naming/Referenceable.java	Mon Feb 17 11:37:46 2014 -0500
@@ -33,7 +33,7 @@
   * objects which themselves are not directly bound to the naming system.
   * Such objects can implement the Referenceable interface as a way
   * for programs that use that object to determine what its Reference is.
-  * For example, when binding a object, if an object implements the
+  * For example, when binding an object, if an object implements the
   * Referenceable interface, getReference() can be invoked on the object to
   * get its Reference to use for binding.
   *
--- a/src/share/classes/javax/sound/midi/MidiSystem.java	Mon Feb 17 11:36:40 2014 -0500
+++ b/src/share/classes/javax/sound/midi/MidiSystem.java	Mon Feb 17 11:37:46 2014 -0500
@@ -1475,7 +1475,7 @@
 
     /**
      * Obtains the set of services currently installed on the system
-     * using sun.misc.Service, the SPI mechanism in 1.3.
+     * using the SPI mechanism in 1.3.
      * @return a List of instances of providers for the requested service.
      * If no providers are available, a List of length 0 will be returned.
      */
--- a/src/share/classes/javax/sound/sampled/AudioSystem.java	Mon Feb 17 11:36:40 2014 -0500
+++ b/src/share/classes/javax/sound/sampled/AudioSystem.java	Mon Feb 17 11:37:46 2014 -0500
@@ -1622,7 +1622,7 @@
 
     /**
      * Obtains the set of services currently installed on the system
-     * using sun.misc.Service, the SPI mechanism in 1.3.
+     * using the SPI mechanism in 1.3.
      * @return a List of instances of providers for the requested service.
      * If no providers are available, a vector of length 0 will be returned.
      */
--- a/src/share/classes/sun/applet/AppletViewerPanel.java	Mon Feb 17 11:36:40 2014 -0500
+++ b/src/share/classes/sun/applet/AppletViewerPanel.java	Mon Feb 17 11:37:46 2014 -0500
@@ -31,7 +31,6 @@
 import java.net.MalformedURLException;
 import java.awt.*;
 import java.applet.*;
-import sun.tools.jar.*;
 
 
 /**
--- a/src/share/classes/sun/misc/Service.java	Mon Feb 17 11:36:40 2014 -0500
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,434 +0,0 @@
-/*
- * Copyright (c) 1999, 2012, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.  Oracle designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Oracle in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-
-package sun.misc;
-
-import java.io.BufferedReader;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.net.URL;
-import java.util.ArrayList;
-import java.util.Enumeration;
-import java.util.Iterator;
-import java.util.List;
-import java.util.NoSuchElementException;
-import java.util.Set;
-import java.util.TreeSet;
-
-
-/**
- * A simple service-provider lookup mechanism.  A <i>service</i> is a
- * well-known set of interfaces and (usually abstract) classes.  A <i>service
- * provider</i> is a specific implementation of a service.  The classes in a
- * provider typically implement the interfaces and subclass the classes defined
- * in the service itself.  Service providers may be installed in an
- * implementation of the Java platform in the form of extensions, that is, jar
- * files placed into any of the usual extension directories.  Providers may
- * also be made available by adding them to the applet or application class
- * path or by some other platform-specific means.
- *
- * <p> In this lookup mechanism a service is represented by an interface or an
- * abstract class.  (A concrete class may be used, but this is not
- * recommended.)  A provider of a given service contains one or more concrete
- * classes that extend this <i>service class</i> with data and code specific to
- * the provider.  This <i>provider class</i> will typically not be the entire
- * provider itself but rather a proxy that contains enough information to
- * decide whether the provider is able to satisfy a particular request together
- * with code that can create the actual provider on demand.  The details of
- * provider classes tend to be highly service-specific; no single class or
- * interface could possibly unify them, so no such class has been defined.  The
- * only requirement enforced here is that provider classes must have a
- * zero-argument constructor so that they may be instantiated during lookup.
- *
- * <p> A service provider identifies itself by placing a provider-configuration
- * file in the resource directory <tt>META-INF/services</tt>.  The file's name
- * should consist of the fully-qualified name of the abstract service class.
- * The file should contain a list of fully-qualified concrete provider-class
- * names, one per line.  Space and tab characters surrounding each name, as
- * well as blank lines, are ignored.  The comment character is <tt>'#'</tt>
- * (<tt>0x23</tt>); on each line all characters following the first comment
- * character are ignored.  The file must be encoded in UTF-8.
- *
- * <p> If a particular concrete provider class is named in more than one
- * configuration file, or is named in the same configuration file more than
- * once, then the duplicates will be ignored.  The configuration file naming a
- * particular provider need not be in the same jar file or other distribution
- * unit as the provider itself.  The provider must be accessible from the same
- * class loader that was initially queried to locate the configuration file;
- * note that this is not necessarily the class loader that found the file.
- *
- * <p> <b>Example:</b> Suppose we have a service class named
- * <tt>java.io.spi.CharCodec</tt>.  It has two abstract methods:
- *
- * <pre>
- *   public abstract CharEncoder getEncoder(String encodingName);
- *   public abstract CharDecoder getDecoder(String encodingName);
- * </pre>
- *
- * Each method returns an appropriate object or <tt>null</tt> if it cannot
- * translate the given encoding.  Typical <tt>CharCodec</tt> providers will
- * support more than one encoding.
- *
- * <p> If <tt>sun.io.StandardCodec</tt> is a provider of the <tt>CharCodec</tt>
- * service then its jar file would contain the file
- * <tt>META-INF/services/java.io.spi.CharCodec</tt>.  This file would contain
- * the single line:
- *
- * <pre>
- *   sun.io.StandardCodec    # Standard codecs for the platform
- * </pre>
- *
- * To locate an encoder for a given encoding name, the internal I/O code would
- * do something like this:
- *
- * <pre>
- *   CharEncoder getEncoder(String encodingName) {
- *       Iterator ps = Service.providers(CharCodec.class);
- *       while (ps.hasNext()) {
- *           CharCodec cc = (CharCodec)ps.next();
- *           CharEncoder ce = cc.getEncoder(encodingName);
- *           if (ce != null)
- *               return ce;
- *       }
- *       return null;
- *   }
- * </pre>
- *
- * The provider-lookup mechanism always executes in the security context of the
- * caller.  Trusted system code should typically invoke the methods in this
- * class from within a privileged security context.
- *
- * @author Mark Reinhold
- * @since 1.3
- */
-
-public final class Service<S> {
-
-    private static final String prefix = "META-INF/services/";
-
-    private Service() { }
-
-    private static void fail(Class<?> service, String msg, Throwable cause)
-        throws ServiceConfigurationError
-    {
-        ServiceConfigurationError sce
-            = new ServiceConfigurationError(service.getName() + ": " + msg);
-        sce.initCause(cause);
-        throw sce;
-    }
-
-    private static void fail(Class<?> service, String msg)
-        throws ServiceConfigurationError
-    {
-        throw new ServiceConfigurationError(service.getName() + ": " + msg);
-    }
-
-    private static void fail(Class<?> service, URL u, int line, String msg)
-        throws ServiceConfigurationError
-    {
-        fail(service, u + ":" + line + ": " + msg);
-    }
-
-    /**
-     * Parse a single line from the given configuration file, adding the name
-     * on the line to both the names list and the returned set iff the name is
-     * not already a member of the returned set.
-     */
-    private static int parseLine(Class<?> service, URL u, BufferedReader r, int lc,
-                                 List<String> names, Set<String> returned)
-        throws IOException, ServiceConfigurationError
-    {
-        String ln = r.readLine();
-        if (ln == null) {
-            return -1;
-        }
-        int ci = ln.indexOf('#');
-        if (ci >= 0) ln = ln.substring(0, ci);
-        ln = ln.trim();
-        int n = ln.length();
-        if (n != 0) {
-            if ((ln.indexOf(' ') >= 0) || (ln.indexOf('\t') >= 0))
-                fail(service, u, lc, "Illegal configuration-file syntax");
-            int cp = ln.codePointAt(0);
-            if (!Character.isJavaIdentifierStart(cp))
-                fail(service, u, lc, "Illegal provider-class name: " + ln);
-            for (int i = Character.charCount(cp); i < n; i += Character.charCount(cp)) {
-                cp = ln.codePointAt(i);
-                if (!Character.isJavaIdentifierPart(cp) && (cp != '.'))
-                    fail(service, u, lc, "Illegal provider-class name: " + ln);
-            }
-            if (!returned.contains(ln)) {
-                names.add(ln);
-                returned.add(ln);
-            }
-        }
-        return lc + 1;
-    }
-
-    /**
-     * Parse the content of the given URL as a provider-configuration file.
-     *
-     * @param  service
-     *         The service class for which providers are being sought;
-     *         used to construct error detail strings
-     *
-     * @param  url
-     *         The URL naming the configuration file to be parsed
-     *
-     * @param  returned
-     *         A Set containing the names of provider classes that have already
-     *         been returned.  This set will be updated to contain the names
-     *         that will be yielded from the returned <tt>Iterator</tt>.
-     *
-     * @return A (possibly empty) <tt>Iterator</tt> that will yield the
-     *         provider-class names in the given configuration file that are
-     *         not yet members of the returned set
-     *
-     * @throws ServiceConfigurationError
-     *         If an I/O error occurs while reading from the given URL, or
-     *         if a configuration-file format error is detected
-     */
-    private static Iterator<String> parse(Class<?> service, URL u, Set<String> returned)
-        throws ServiceConfigurationError
-    {
-        InputStream in = null;
-        BufferedReader r = null;
-        ArrayList<String> names = new ArrayList<>();
-        try {
-            in = u.openStream();
-            r = new BufferedReader(new InputStreamReader(in, "utf-8"));
-            int lc = 1;
-            while ((lc = parseLine(service, u, r, lc, names, returned)) >= 0);
-        } catch (IOException x) {
-            fail(service, ": " + x);
-        } finally {
-            try {
-                if (r != null) r.close();
-                if (in != null) in.close();
-            } catch (IOException y) {
-                fail(service, ": " + y);
-            }
-        }
-        return names.iterator();
-    }
-
-
-    /**
-     * Private inner class implementing fully-lazy provider lookup
-     */
-    private static class LazyIterator<S> implements Iterator<S> {
-
-        Class<S> service;
-        ClassLoader loader;
-        Enumeration<URL> configs = null;
-        Iterator<String> pending = null;
-        Set<String> returned = new TreeSet<>();
-        String nextName = null;
-
-        private LazyIterator(Class<S> service, ClassLoader loader) {
-            this.service = service;
-            this.loader = loader;
-        }
-
-        public boolean hasNext() throws ServiceConfigurationError {
-            if (nextName != null) {
-                return true;
-            }
-            if (configs == null) {
-                try {
-                    String fullName = prefix + service.getName();
-                    if (loader == null)
-                        configs = ClassLoader.getSystemResources(fullName);
-                    else
-                        configs = loader.getResources(fullName);
-                } catch (IOException x) {
-                    fail(service, ": " + x);
-                }
-            }
-            while ((pending == null) || !pending.hasNext()) {
-                if (!configs.hasMoreElements()) {
-                    return false;
-                }
-                pending = parse(service, configs.nextElement(), returned);
-            }
-            nextName = pending.next();
-            return true;
-        }
-
-        public S next() throws ServiceConfigurationError {
-            if (!hasNext()) {
-                throw new NoSuchElementException();
-            }
-            String cn = nextName;
-            nextName = null;
-            Class<?> c = null;
-            try {
-                c = Class.forName(cn, false, loader);
-            } catch (ClassNotFoundException x) {
-                fail(service,
-                     "Provider " + cn + " not found");
-            }
-            if (!service.isAssignableFrom(c)) {
-                fail(service,
-                     "Provider " + cn  + " not a subtype");
-            }
-            try {
-                return service.cast(c.newInstance());
-            } catch (Throwable x) {
-                fail(service,
-                     "Provider " + cn + " could not be instantiated: " + x,
-                     x);
-            }
-            return null;        /* This cannot happen */
-        }
-
-        public void remove() {
-            throw new UnsupportedOperationException();
-        }
-
-    }
-
-
-    /**
-     * Locates and incrementally instantiates the available providers of a
-     * given service using the given class loader.
-     *
-     * <p> This method transforms the name of the given service class into a
-     * provider-configuration filename as described above and then uses the
-     * <tt>getResources</tt> method of the given class loader to find all
-     * available files with that name.  These files are then read and parsed to
-     * produce a list of provider-class names.  The iterator that is returned
-     * uses the given class loader to lookup and then instantiate each element
-     * of the list.
-     *
-     * <p> Because it is possible for extensions to be installed into a running
-     * Java virtual machine, this method may return different results each time
-     * it is invoked. <p>
-     *
-     * @param  service
-     *         The service's abstract service class
-     *
-     * @param  loader
-     *         The class loader to be used to load provider-configuration files
-     *         and instantiate provider classes, or <tt>null</tt> if the system
-     *         class loader (or, failing that the bootstrap class loader) is to
-     *         be used
-     *
-     * @return An <tt>Iterator</tt> that yields provider objects for the given
-     *         service, in some arbitrary order.  The iterator will throw a
-     *         <tt>ServiceConfigurationError</tt> if a provider-configuration
-     *         file violates the specified format or if a provider class cannot
-     *         be found and instantiated.
-     *
-     * @throws ServiceConfigurationError
-     *         If a provider-configuration file violates the specified format
-     *         or names a provider class that cannot be found and instantiated
-     *
-     * @see #providers(java.lang.Class)
-     * @see #installedProviders(java.lang.Class)
-     */
-    public static <S> Iterator<S> providers(Class<S> service, ClassLoader loader)
-        throws ServiceConfigurationError
-    {
-        return new LazyIterator<S>(service, loader);
-    }
-
-
-    /**
-     * Locates and incrementally instantiates the available providers of a
-     * given service using the context class loader.  This convenience method
-     * is equivalent to
-     *
-     * <pre>
-     *   ClassLoader cl = Thread.currentThread().getContextClassLoader();
-     *   return Service.providers(service, cl);
-     * </pre>
-     *
-     * @param  service
-     *         The service's abstract service class
-     *
-     * @return An <tt>Iterator</tt> that yields provider objects for the given
-     *         service, in some arbitrary order.  The iterator will throw a
-     *         <tt>ServiceConfigurationError</tt> if a provider-configuration
-     *         file violates the specified format or if a provider class cannot
-     *         be found and instantiated.
-     *
-     * @throws ServiceConfigurationError
-     *         If a provider-configuration file violates the specified format
-     *         or names a provider class that cannot be found and instantiated
-     *
-     * @see #providers(java.lang.Class, java.lang.ClassLoader)
-     */
-    public static <S> Iterator<S> providers(Class<S> service)
-        throws ServiceConfigurationError
-    {
-        ClassLoader cl = Thread.currentThread().getContextClassLoader();
-        return Service.providers(service, cl);
-    }
-
-
-    /**
-     * Locates and incrementally instantiates the available providers of a
-     * given service using the extension class loader.  This convenience method
-     * simply locates the extension class loader, call it
-     * <tt>extClassLoader</tt>, and then does
-     *
-     * <pre>
-     *   return Service.providers(service, extClassLoader);
-     * </pre>
-     *
-     * If the extension class loader cannot be found then the system class
-     * loader is used; if there is no system class loader then the bootstrap
-     * class loader is used.
-     *
-     * @param  service
-     *         The service's abstract service class
-     *
-     * @return An <tt>Iterator</tt> that yields provider objects for the given
-     *         service, in some arbitrary order.  The iterator will throw a
-     *         <tt>ServiceConfigurationError</tt> if a provider-configuration
-     *         file violates the specified format or if a provider class cannot
-     *         be found and instantiated.
-     *
-     * @throws ServiceConfigurationError
-     *         If a provider-configuration file violates the specified format
-     *         or names a provider class that cannot be found and instantiated
-     *
-     * @see #providers(java.lang.Class, java.lang.ClassLoader)
-     */
-    public static <S> Iterator<S> installedProviders(Class<S> service)
-        throws ServiceConfigurationError
-    {
-        ClassLoader cl = ClassLoader.getSystemClassLoader();
-        ClassLoader prev = null;
-        while (cl != null) {
-            prev = cl;
-            cl = cl.getParent();
-        }
-        return Service.providers(service, prev);
-    }
-
-}
--- a/src/share/classes/sun/misc/ServiceConfigurationError.java	Mon Feb 17 11:36:40 2014 -0500
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,62 +0,0 @@
-/*
- * Copyright (c) 1999, 2011, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.  Oracle designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Oracle in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-
-package sun.misc;
-
-
-/**
- * Error thrown when something goes wrong while looking up service providers.
- * In particular, this error will be thrown in the following situations:
- *
- *   <ul>
- *   <li> A concrete provider class cannot be found,
- *   <li> A concrete provider class cannot be instantiated,
- *   <li> The format of a provider-configuration file is illegal, or
- *   <li> An IOException occurs while reading a provider-configuration file.
- *   </ul>
- *
- * @author Mark Reinhold
- * @since 1.3
- */
-
-public class ServiceConfigurationError extends Error {
-
-    static final long serialVersionUID = 8769866263384244465L;
-
-    /**
-     * Constructs a new instance with the specified detail string.
-     */
-    public ServiceConfigurationError(String msg) {
-        super(msg);
-    }
-
-    /**
-     * Constructs a new instance that wraps the specified throwable.
-     */
-    public ServiceConfigurationError(Throwable x) {
-        super(x);
-    }
-
-}
--- a/src/share/classes/sun/security/jgss/GSSUtil.java	Mon Feb 17 11:36:40 2014 -0500
+++ b/src/share/classes/sun/security/jgss/GSSUtil.java	Mon Feb 17 11:37:46 2014 -0500
@@ -25,7 +25,6 @@
 
 package sun.security.jgss;
 
-import com.sun.security.auth.callback.TextCallbackHandler;
 import javax.security.auth.Subject;
 import javax.security.auth.kerberos.KerberosPrincipal;
 import javax.security.auth.kerberos.KerberosTicket;
@@ -48,6 +47,7 @@
 import javax.security.auth.login.LoginContext;
 import javax.security.auth.login.LoginException;
 import sun.security.action.GetBooleanAction;
+import sun.security.util.ConsoleCallbackHandler;
 
 /**
  * The GSSUtilImplementation that knows how to work with the internals of
@@ -243,7 +243,7 @@
             if ((defaultHandler != null) && (defaultHandler.length() != 0)) {
                 cb = null;
             } else {
-                cb = new TextCallbackHandler();
+                cb = new ConsoleCallbackHandler();
             }
         }
 
--- a/src/share/classes/sun/security/provider/certpath/RevocationChecker.java	Mon Feb 17 11:36:40 2014 -0500
+++ b/src/share/classes/sun/security/provider/certpath/RevocationChecker.java	Mon Feb 17 11:37:46 2014 -0500
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2014, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -1035,6 +1035,9 @@
                 boolean signFlag = true;
                 List<? extends Certificate> cpList =
                     cpbr.getCertPath().getCertificates();
+                if (cpList.isEmpty()) {
+                    return;
+                }
                 try {
                     for (int i = cpList.size()-1; i >= 0; i-- ) {
                         X509Certificate cert = (X509Certificate)cpList.get(i);
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/share/classes/sun/security/util/ConsoleCallbackHandler.java	Mon Feb 17 11:37:46 2014 -0500
@@ -0,0 +1,247 @@
+/*
+ * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+package sun.security.util;
+
+import javax.security.auth.callback.Callback;
+import javax.security.auth.callback.CallbackHandler;
+import javax.security.auth.callback.ConfirmationCallback;
+import javax.security.auth.callback.NameCallback;
+import javax.security.auth.callback.PasswordCallback;
+import javax.security.auth.callback.TextOutputCallback;
+import javax.security.auth.callback.UnsupportedCallbackException;
+
+import java.io.BufferedReader;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+
+/**
+ * A {@code CallbackHandler} that prompts and reads from the command line
+ * for answers to authentication questions.
+ */
+public class ConsoleCallbackHandler implements CallbackHandler {
+
+    /**
+     * Creates a callback handler that prompts and reads from the
+     * command line for answers to authentication questions.
+     */
+    public ConsoleCallbackHandler() { }
+
+    /**
+     * Handles the specified set of callbacks.
+     *
+     * @param callbacks the callbacks to handle
+     * @throws IOException if an input or output error occurs.
+     * @throws UnsupportedCallbackException if the callback is not an
+     * instance of NameCallback or PasswordCallback
+     */
+    public void handle(Callback[] callbacks)
+        throws IOException, UnsupportedCallbackException
+    {
+        ConfirmationCallback confirmation = null;
+
+        for (int i = 0; i < callbacks.length; i++) {
+            if (callbacks[i] instanceof TextOutputCallback) {
+                TextOutputCallback tc = (TextOutputCallback) callbacks[i];
+
+                String text;
+                switch (tc.getMessageType()) {
+                case TextOutputCallback.INFORMATION:
+                    text = "";
+                    break;
+                case TextOutputCallback.WARNING:
+                    text = "Warning: ";
+                    break;
+                case TextOutputCallback.ERROR:
+                    text = "Error: ";
+                    break;
+                default:
+                    throw new UnsupportedCallbackException(
+                        callbacks[i], "Unrecognized message type");
+                }
+
+                String message = tc.getMessage();
+                if (message != null) {
+                    text += message;
+                }
+                if (text != null) {
+                    System.err.println(text);
+                }
+
+            } else if (callbacks[i] instanceof NameCallback) {
+                NameCallback nc = (NameCallback) callbacks[i];
+
+                if (nc.getDefaultName() == null) {
+                    System.err.print(nc.getPrompt());
+                } else {
+                    System.err.print(nc.getPrompt() +
+                                " [" + nc.getDefaultName() + "] ");
+                }
+                System.err.flush();
+
+                String result = readLine();
+                if (result.equals("")) {
+                    result = nc.getDefaultName();
+                }
+
+                nc.setName(result);
+
+            } else if (callbacks[i] instanceof PasswordCallback) {
+                PasswordCallback pc = (PasswordCallback) callbacks[i];
+
+                System.err.print(pc.getPrompt());
+                System.err.flush();
+
+                pc.setPassword(Password.readPassword(System.in, pc.isEchoOn()));
+
+            } else if (callbacks[i] instanceof ConfirmationCallback) {
+                confirmation = (ConfirmationCallback) callbacks[i];
+
+            } else {
+                throw new UnsupportedCallbackException(
+                    callbacks[i], "Unrecognized Callback");
+            }
+        }
+
+        /* Do the confirmation callback last. */
+        if (confirmation != null) {
+            doConfirmation(confirmation);
+        }
+    }
+
+    /* Reads a line of input */
+    private String readLine() throws IOException {
+        String result = new BufferedReader
+            (new InputStreamReader(System.in)).readLine();
+        if (result == null) {
+            throw new IOException("Cannot read from System.in");
+        }
+        return result;
+    }
+
+    private void doConfirmation(ConfirmationCallback confirmation)
+        throws IOException, UnsupportedCallbackException
+    {
+        String prefix;
+        int messageType = confirmation.getMessageType();
+        switch (messageType) {
+        case ConfirmationCallback.WARNING:
+            prefix =  "Warning: ";
+            break;
+        case ConfirmationCallback.ERROR:
+            prefix = "Error: ";
+            break;
+        case ConfirmationCallback.INFORMATION:
+            prefix = "";
+            break;
+        default:
+            throw new UnsupportedCallbackException(
+                confirmation, "Unrecognized message type: " + messageType);
+        }
+
+        class OptionInfo {
+            String name;
+            int value;
+            OptionInfo(String name, int value) {
+                this.name = name;
+                this.value = value;
+            }
+        }
+
+        OptionInfo[] options;
+        int optionType = confirmation.getOptionType();
+        switch (optionType) {
+        case ConfirmationCallback.YES_NO_OPTION:
+            options = new OptionInfo[] {
+                new OptionInfo("Yes", ConfirmationCallback.YES),
+                new OptionInfo("No", ConfirmationCallback.NO)
+            };
+            break;
+        case ConfirmationCallback.YES_NO_CANCEL_OPTION:
+            options = new OptionInfo[] {
+                new OptionInfo("Yes", ConfirmationCallback.YES),
+                new OptionInfo("No", ConfirmationCallback.NO),
+                new OptionInfo("Cancel", ConfirmationCallback.CANCEL)
+            };
+            break;
+        case ConfirmationCallback.OK_CANCEL_OPTION:
+            options = new OptionInfo[] {
+                new OptionInfo("OK", ConfirmationCallback.OK),
+                new OptionInfo("Cancel", ConfirmationCallback.CANCEL)
+            };
+            break;
+        case ConfirmationCallback.UNSPECIFIED_OPTION:
+            String[] optionStrings = confirmation.getOptions();
+            options = new OptionInfo[optionStrings.length];
+            for (int i = 0; i < options.length; i++) {
+                options[i] = new OptionInfo(optionStrings[i], i);
+            }
+            break;
+        default:
+            throw new UnsupportedCallbackException(
+                confirmation, "Unrecognized option type: " + optionType);
+        }
+
+        int defaultOption = confirmation.getDefaultOption();
+
+        String prompt = confirmation.getPrompt();
+        if (prompt == null) {
+            prompt = "";
+        }
+        prompt = prefix + prompt;
+        if (!prompt.equals("")) {
+            System.err.println(prompt);
+        }
+
+        for (int i = 0; i < options.length; i++) {
+            if (optionType == ConfirmationCallback.UNSPECIFIED_OPTION) {
+                // defaultOption is an index into the options array
+                System.err.println(
+                    i + ". " + options[i].name +
+                    (i == defaultOption ? " [default]" : ""));
+            } else {
+                // defaultOption is an option value
+                System.err.println(
+                    i + ". " + options[i].name +
+                    (options[i].value == defaultOption ? " [default]" : ""));
+            }
+        }
+        System.err.print("Enter a number: ");
+        System.err.flush();
+        int result;
+        try {
+            result = Integer.parseInt(readLine());
+            if (result < 0 || result > (options.length - 1)) {
+                result = defaultOption;
+            }
+            result = options[result].value;
+        } catch (NumberFormatException e) {
+            result = defaultOption;
+        }
+
+        confirmation.setSelectedIndex(result);
+    }
+}
--- a/src/share/instrument/InvocationAdapter.c	Mon Feb 17 11:36:40 2014 -0500
+++ b/src/share/instrument/InvocationAdapter.c	Mon Feb 17 11:37:46 2014 -0500
@@ -153,7 +153,6 @@
         char *          options;
         jarAttribute*   attributes;
         char *          premainClass;
-        char *          agentClass;
         char *          bootClassPath;
 
         /*
--- a/src/share/instrument/JarFacade.c	Mon Feb 17 11:36:40 2014 -0500
+++ b/src/share/instrument/JarFacade.c	Mon Feb 17 11:37:46 2014 -0500
@@ -33,6 +33,7 @@
 #endif /* _WIN32 */
 #include <string.h>
 #include <stdlib.h>
+#include <ctype.h>
 
 #include "jni.h"
 #include "manifest_info.h"
--- a/src/share/native/java/lang/ClassLoader.c	Mon Feb 17 11:36:40 2014 -0500
+++ b/src/share/native/java/lang/ClassLoader.c	Mon Feb 17 11:37:46 2014 -0500
@@ -325,7 +325,7 @@
     void *entryName = NULL;
     char *jniFunctionName;
     int i;
-    int len;
+    size_t len;
 
     // Check for JNI_On(Un)Load<_libname> function
     if (isLoad) {
@@ -501,9 +501,9 @@
 {
     const char *cname;
     char *libName;
-    int prefixLen = (int) strlen(JNI_LIB_PREFIX);
-    int suffixLen = (int) strlen(JNI_LIB_SUFFIX);
-    int len;
+    size_t prefixLen = strlen(JNI_LIB_PREFIX);
+    size_t suffixLen = strlen(JNI_LIB_SUFFIX);
+    size_t len;
     jstring lib;
     void *ret;
     const char *onLoadSymbols[] = JNI_ONLOAD_SYMBOLS;
--- a/src/share/native/java/lang/Throwable.c	Mon Feb 17 11:36:40 2014 -0500
+++ b/src/share/native/java/lang/Throwable.c	Mon Feb 17 11:37:46 2014 -0500
@@ -44,7 +44,7 @@
  * `this' so you can write 'throw e.fillInStackTrace();'
  */
 JNIEXPORT jobject JNICALL
-Java_java_lang_Throwable_fillInStackTrace(JNIEnv *env, jobject throwable, int dummy)
+Java_java_lang_Throwable_fillInStackTrace(JNIEnv *env, jobject throwable, jint dummy)
 {
     JVM_FillInStackTrace(env, throwable);
     return throwable;
--- a/src/share/native/sun/nio/ch/genSocketOptionRegistry.c	Mon Feb 17 11:36:40 2014 -0500
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,130 +0,0 @@
-/*
- * Copyright (c) 2008, 2012, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.  Oracle designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Oracle in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-
-#include <stdio.h>
-#ifdef _WIN32
-#include <winsock2.h>
-#include <ws2tcpip.h>
-#else
-#include <sys/types.h>
-#include <sys/socket.h>
-#include <netinet/in.h>
-#include <netinet/tcp.h>
-#endif
-
-/**
- * Generates sun.nio.ch.SocketOptionRegistry, a class that maps Java-level
- * socket options to the platform specific level and option.
- */
-
-static void out(char* s) {
-    printf("%s\n", s);
-}
-
-static void emit(const char *name, char * family, int level, int optname) {
-    printf("            map.put(new RegistryKey(%s, %s),", name, family);
-    printf(" new OptionKey(%d, %d));\n", level, optname);
-}
-
-static void emit_unspec(const char *name, int level, int optname) {
-    emit(name, "Net.UNSPEC", level, optname);
-}
-
-static  void emit_inet(const char *name, int level, int optname) {
-    emit(name, "StandardProtocolFamily.INET", level, optname);
-}
-
-static void emit_inet6(const char *name, int level, int optname) {
-    emit(name, "StandardProtocolFamily.INET6", level, optname);
-}
-
-int main(int argc, const char* argv[]) {
-    out("// AUTOMATICALLY GENERATED FILE - DO NOT EDIT                                  ");
-    out("package sun.nio.ch;                                                            ");
-    out("import java.net.SocketOption;                                                  ");
-    out("import java.net.StandardSocketOptions;                                         ");
-    out("import java.net.ProtocolFamily;                                                ");
-    out("import java.net.StandardProtocolFamily;                                        ");
-    out("import java.util.Map;                                                          ");
-    out("import java.util.HashMap;                                                      ");
-    out("class SocketOptionRegistry {                                                   ");
-    out("    private SocketOptionRegistry() { }                                         ");
-    out("    private static class RegistryKey {                                         ");
-    out("        private final SocketOption<?> name;                                    ");
-    out("        private final ProtocolFamily family;                                   ");
-    out("        RegistryKey(SocketOption<?> name, ProtocolFamily family) {             ");
-    out("            this.name = name;                                                  ");
-    out("            this.family = family;                                              ");
-    out("        }                                                                      ");
-    out("        public int hashCode() {                                                ");
-    out("            return name.hashCode() + family.hashCode();                        ");
-    out("        }                                                                      ");
-    out("        public boolean equals(Object ob) {                                     ");
-    out("            if (ob == null) return false;                                      ");
-    out("            if (!(ob instanceof RegistryKey)) return false;                    ");
-    out("            RegistryKey other = (RegistryKey)ob;                               ");
-    out("            if (this.name != other.name) return false;                         ");
-    out("            if (this.family != other.family) return false;                     ");
-    out("            return true;                                                       ");
-    out("        }                                                                      ");
-    out("    }                                                                          ");
-    out("    private static class LazyInitialization {                                  ");
-    out("        static final Map<RegistryKey,OptionKey> options = options();           ");
-    out("        private static Map<RegistryKey,OptionKey> options() {                  ");
-    out("            Map<RegistryKey,OptionKey> map =                                   ");
-    out("                new HashMap<RegistryKey,OptionKey>();                          ");
-
-    emit_unspec("StandardSocketOptions.SO_BROADCAST", SOL_SOCKET, SO_BROADCAST);
-    emit_unspec("StandardSocketOptions.SO_KEEPALIVE", SOL_SOCKET, SO_KEEPALIVE);
-    emit_unspec("StandardSocketOptions.SO_LINGER",    SOL_SOCKET, SO_LINGER);
-    emit_unspec("StandardSocketOptions.SO_SNDBUF",    SOL_SOCKET, SO_SNDBUF);
-    emit_unspec("StandardSocketOptions.SO_RCVBUF",    SOL_SOCKET, SO_RCVBUF);
-    emit_unspec("StandardSocketOptions.SO_REUSEADDR", SOL_SOCKET, SO_REUSEADDR);
-    emit_unspec("StandardSocketOptions.TCP_NODELAY",  IPPROTO_TCP, TCP_NODELAY);
-
-    emit_inet("StandardSocketOptions.IP_TOS",            IPPROTO_IP,     IP_TOS);
-    emit_inet("StandardSocketOptions.IP_MULTICAST_IF",   IPPROTO_IP,     IP_MULTICAST_IF);
-    emit_inet("StandardSocketOptions.IP_MULTICAST_TTL",  IPPROTO_IP,     IP_MULTICAST_TTL);
-    emit_inet("StandardSocketOptions.IP_MULTICAST_LOOP", IPPROTO_IP,     IP_MULTICAST_LOOP);
-
-#ifdef AF_INET6
-    emit_inet6("StandardSocketOptions.IP_MULTICAST_IF",   IPPROTO_IPV6,  IPV6_MULTICAST_IF);
-    emit_inet6("StandardSocketOptions.IP_MULTICAST_TTL",  IPPROTO_IPV6,  IPV6_MULTICAST_HOPS);
-    emit_inet6("StandardSocketOptions.IP_MULTICAST_LOOP", IPPROTO_IPV6,  IPV6_MULTICAST_LOOP);
-#endif
-
-    emit_unspec("ExtendedSocketOption.SO_OOBINLINE", SOL_SOCKET, SO_OOBINLINE);
-
-    out("            return map;                                                        ");
-    out("        }                                                                      ");
-    out("    }                                                                          ");
-    out("    public static OptionKey findOption(SocketOption<?> name, ProtocolFamily family) { ");
-    out("        RegistryKey key = new RegistryKey(name, family);                       ");
-    out("        return LazyInitialization.options.get(key);                            ");
-    out("    }                                                                          ");
-    out("}                                                                              ");
-
-    return 0;
-}
--- a/src/share/native/sun/security/pkcs11/wrapper/pkcs11wrapper.h	Mon Feb 17 11:36:40 2014 -0500
+++ b/src/share/native/sun/security/pkcs11/wrapper/pkcs11wrapper.h	Mon Feb 17 11:37:46 2014 -0500
@@ -55,6 +55,9 @@
  * @author Martin Schlaeffer <schlaeff@sbox.tugraz.at>
  */
 
+#ifndef _PKCS11WRAPPER_H
+#define _PKCS11WRAPPER_H 1
+
 /* disable asserts in product mode */
 #ifndef DEBUG
   #ifndef NDEBUG
@@ -461,3 +464,5 @@
 #define free(c)         (p11free((c), THIS_FILE, __LINE__))
 
 #endif
+
+#endif /* _PKCS11WRAPPER_H */
--- a/src/solaris/classes/sun/awt/X11/generator/WrapperGenerator.java	Mon Feb 17 11:36:40 2014 -0500
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1366 +0,0 @@
-/*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.  Oracle designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Oracle in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-
-import java.util.*;
-import java.io.*;
-import java.nio.charset.*;
-import java.text.MessageFormat;
-import java.util.logging.Level;
-import java.util.logging.Logger;
-
-public class WrapperGenerator {
-    /* XLibParser converts Xlib.h to a Java Object that encapsulates the
-     * X11 API and data structures */
-    // Charset and decoder for ISO-8859-15
-    private final static Logger log = Logger.getLogger("WrapperGenerator");
-    boolean generateLog = true;
-    boolean wide;
-    private static Charset charset = Charset.forName("ISO-8859-15");
-
-    String package_name = "sun.awt.X11";
-    String package_path = "sun/awt/X11";
-    String sizerFileName = "sizer.c";
-    String defaultBaseClass = "XWrapperBase";
-
-    String compile_options = "-lX11";
-    static Hashtable symbolTable = new Hashtable();
-    static Hashtable sizeTable32bit = new Hashtable();
-    static Hashtable sizeTable64bit = new Hashtable();
-    static Hashtable knownSizes32 = new Hashtable();
-    static Hashtable knownSizes64 = new Hashtable();
-    static {
-/*
-        knownSizes64.put("", Integer.valueOf());
-        knownSizes32.put("", Integer.valueOf());
-*/
-        knownSizes64.put("XComposeStatus", Integer.valueOf(16));
-        knownSizes64.put("XTimeCoord", Integer.valueOf(16));
-        knownSizes64.put("XExtData", Integer.valueOf(32));
-        knownSizes64.put("XWindowChanges", Integer.valueOf(40));
-        knownSizes64.put("XOMCharSetList", Integer.valueOf(16));
-        knownSizes64.put("XModifierKeymap", Integer.valueOf(16));
-        knownSizes32.put("XIMValuesList", Integer.valueOf(8));
-        knownSizes32.put("XGCValues", Integer.valueOf(92));
-//          knownSizes32.put("XIMStringConversionCallbackStruct", Integer.valueOf(16));
-    }
-
-    private static abstract class BaseType {
-
-        String real_type;
-        String name;
-
-
-        public String getName() {
-            return name;
-        }
-        public String getRealType() {
-            return real_type;
-        }
-
-        public String toString() {
-            return name;
-        }
-    }
-
-    private static class AtomicType extends BaseType {
-
-        private boolean alias;
-        private String aliasName;
-
-        static final int TYPE_INT=0;
-        static final int TYPE_CHAR=1;
-        static final int TYPE_LONG=2;
-        static final int TYPE_LONG_LONG=3;
-        static final int TYPE_DOUBLE=4;
-        static final int TYPE_FLOAT=5;
-        static final int TYPE_PTR=6;
-        static final int TYPE_SHORT=7;
-        static final int TYPE_BOOL = 8;
-        static final int TYPE_STRUCT = 9;
-        static final int TYPE_ARRAY = 10;
-        static final int TYPE_BYTE=11;
-        static final int TYPE_ATOM = 12;
-        static final int TYPE_ULONG = 13;
-        static int getTypeForString(String str) {
-            int type=-1;
-            if (str.equals("int"))
-                type = AtomicType.TYPE_INT;
-            else if (str.equals("long"))
-                type = AtomicType.TYPE_LONG;
-            else if (str.equals("byte"))
-                type = AtomicType.TYPE_BYTE;
-            else if (str.equals("char"))
-                type = AtomicType.TYPE_CHAR;
-            else if (str.equals("long long"))
-                type = AtomicType.TYPE_LONG_LONG;
-            else if (str.equals("double"))
-                type = AtomicType.TYPE_DOUBLE;
-            else if (str.equals("float"))
-                type = AtomicType.TYPE_FLOAT;
-            else if (str.equals("pointer"))
-                type = AtomicType.TYPE_PTR;
-            else if (str.equals("short"))
-                type = AtomicType.TYPE_SHORT;
-            else if (str.equals("Bool"))
-                type = AtomicType.TYPE_BOOL;
-            else if (str.equals("struct"))
-                type = AtomicType.TYPE_STRUCT;
-            else if (str.equals("Atom"))
-                type = AtomicType.TYPE_ATOM;
-            else if (str.equals("array"))
-                type = TYPE_ARRAY;
-            else if (str.equals("ulong"))
-                type = TYPE_ULONG;
-            else throw new IllegalArgumentException("Uknown type string: " + str);
-
-            return type;
-        }
-        String getJavaType() {
-            if (referencedType != null) {
-                if (referencedType instanceof AtomicType) {
-                    return ((AtomicType)referencedType).getJavaType();
-                } else {
-                    return referencedType.getName();
-                }
-            } else {
-                return getJavaTypeForType(type);
-            }
-        }
-        static String getJavaTypeForType(int type) {
-            switch (type) {
-              case TYPE_INT:
-                  return "int";
-              case TYPE_CHAR:
-                  return "char";
-              case TYPE_BYTE:
-                  return "byte";
-              case TYPE_LONG:
-              case TYPE_LONG_LONG:
-              case TYPE_PTR:
-              case TYPE_ULONG:
-                  return "long";
-              case TYPE_DOUBLE:
-                  return "double";
-              case TYPE_FLOAT:
-                  return "float";
-              case TYPE_SHORT:
-                  return "short";
-              case TYPE_BOOL:
-                  return "boolean";
-              case TYPE_ATOM:
-                  return "long";
-              default:
-                  throw new IllegalArgumentException("Unknown type: " + type);
-            }
-        }
-        String getItemSize() {
-            if (referencedType != null) {
-                  if (referencedType instanceof StructType) {
-                      return ((StructType)referencedType).getSize();
-                  } else {
-                      return ((AtomicType)referencedType).getItemSize();
-                  }
-            } else {
-                int i32 = getNativeSizeForAccess(getJavaAccess(false));
-                int i64 = getNativeSizeForAccess(getJavaAccess(true));
-                if (i32 != i64) {
-                    return "Native.get" + getNativeAccess() + "Size()";
-                } else {
-                    return Integer.toString(i32);
-                }
-            }
-        }
-
-        String getJavaResult(String offset, String base) {
-            String res = null;
-            switch (type) {
-              case TYPE_STRUCT:
-                  res = "pData + " + offset;
-                  break;
-              case TYPE_PTR:
-                  if (referencedType == null || referencedType instanceof StructType) {
-                      res = base + "+" + offset;
-                  } else if (referencedType instanceof AtomicType) {
-                      res = MessageFormat.format("Native.get{0}({1})",
-                                                 new Object[] {getNativeAccessForType(((AtomicType)referencedType).type),
-                                                               base + "+" + offset});
-                  }
-                  break;
-              case TYPE_ARRAY:
-                  if (referencedType instanceof StructType) {
-                      res = "pData + " + offset;
-                  }  else if (referencedType instanceof AtomicType) {
-                      res = MessageFormat.format("Native.get{0}(pData + {1})",
-                                                 new Object[] {getNativeAccessForType(((AtomicType)referencedType).type),
-                                                               offset});
-                  }
-                  break;
-              default:
-                res = MessageFormat.format("(Native.get{0}(pData+{1}))",
-                                           new Object[] {getNativeAccess(), offset});
-            }
-            return getJavaResultConversion(res, base);
-        }
-        String getJavaResultConversion(String value, String base) {
-            if (referencedType != null) {
-                if (referencedType instanceof StructType) {
-                    if (type == TYPE_PTR) {
-                        return MessageFormat.format("({2} != 0)?(new {0}({1})):(null)", new Object[] {referencedType.getName(),value, base});
-                    } else {
-                        return MessageFormat.format("new {0}({1})", new Object[] {referencedType.getName(),value});
-                    }
-                } else {
-                    return value;
-                }
-            } else {
-                return getJavaResultConversionForType(type, value);
-            }
-        }
-        static String getJavaResultConversionForType(int type, String value) {
-            return value;
-        }
-        String getNativeAccess() {
-            return getNativeAccessForType(type);
-        }
-        String getJavaAccess(boolean wide) {
-            return getJavaAccessForType(type, wide);
-        }
-        static String getJavaAccessForType(int type, boolean wide) {
-            switch (type) {
-              case TYPE_INT:
-                  return "Int";
-              case TYPE_CHAR:
-                  return "Char";
-              case TYPE_BYTE:
-                  return "Byte";
-              case TYPE_LONG:
-              case TYPE_PTR:
-              case TYPE_ARRAY:
-              case TYPE_STRUCT:
-              case TYPE_ATOM:
-                  return (wide?"Long":"Int");
-              case TYPE_LONG_LONG:
-                  return "Long";
-              case TYPE_ULONG:
-                  return (wide?"ULong":"UInt");
-              case TYPE_DOUBLE:
-                  return "Double";
-              case TYPE_FLOAT:
-                  return "Float";
-              case TYPE_SHORT:
-                  return "Short";
-              case TYPE_BOOL:
-                  return "Int";
-              default:
-                  throw new IllegalArgumentException("Unknown type: " + type);
-            }
-        }
-        static String getNativeAccessForType(int type) {
-            switch (type) {
-              case TYPE_INT:
-                  return "Int";
-              case TYPE_CHAR:
-                  return "Char";
-              case TYPE_BYTE:
-                  return "Byte";
-              case TYPE_LONG:
-              case TYPE_PTR:
-              case TYPE_ARRAY:
-              case TYPE_STRUCT:
-                  return "Long";
-              case TYPE_LONG_LONG:
-                  return "Long";
-              case TYPE_ULONG:
-                  return "ULong";
-              case TYPE_DOUBLE:
-                  return "Double";
-              case TYPE_FLOAT:
-                  return "Float";
-              case TYPE_SHORT:
-                  return "Short";
-              case TYPE_BOOL:
-                  return "Bool";
-              case TYPE_ATOM:
-                  return "Long";
-              default:
-                  throw new IllegalArgumentException("Unknown type: " + type);
-            }
-        }
-
-        static int getNativeSizeForAccess(String access) {
-            if (access.equals("Int")) return 4;
-            else if (access.equals("Byte")) return 1;
-            else if (access.equals("Long")) return 8;
-            else if (access.equals("Double")) return 8;
-            else if (access.equals("Float")) return 4;
-            else if (access.equals("Char")) return 2;
-            else if (access.equals("Short")) return 2;
-            else if (access.equals("ULong")) return 8;
-            else if (access.equals("UInt")) return 4;
-            else throw new IllegalArgumentException("Unknow access type: " + access);
-        }
-
-        String getJavaConversion(String offset, String value) {
-            if (referencedType != null) {
-                if (referencedType instanceof StructType) {
-                    return getJavaConversionForType(TYPE_PTR, offset, value + ".pData");
-                } else {
-                    if (type == TYPE_ARRAY) {
-                        return getJavaConversionForType(((AtomicType)referencedType).type, offset, value);
-                    } else { // TYPE_PTR
-                        return getJavaConversionForType(TYPE_PTR, offset, value);
-                    }
-                }
-            } else {
-                return getJavaConversionForType(type, offset, value);
-            }
-        }
-        static String getJavaConversionForType(int type, String offset, String value) {
-            return MessageFormat.format("Native.put{0}({2}, {1})", new Object[] {getNativeAccessForType(type), value, offset});
-        }
-
-
-        int type;
-        int offset;
-        int direction;
-        BaseType referencedType;
-        int arrayLength = -1;
-        boolean autoFree = false;
-        public AtomicType(int _type,String _name, String _real_type) {
-            name = _name.replaceAll("[* \t]","");
-            if ((name.indexOf("[") != -1) || (name.indexOf("]") != -1))
-            {
-                name = name.replaceAll("\\[.*\\]","");
-            }
-            type = _type;
-            real_type = _real_type;
-            if (real_type == null)
-            {
-                System.out.println(" real type is null");
-
-            }
-        }
-        public boolean isIn() {
-            return direction == 0;
-        }
-        public boolean isOut() {
-            return direction == 1;
-        }
-        public boolean isInOut() {
-            return direction == 2;
-        }
-        public boolean isAutoFree() {
-            return autoFree;
-        }
-        public void setAttributes(String[] attributes) {
-            String mod = attributes[3];
-            if ("in".equals(mod)) {
-                direction = 0;
-            } else if ("out".equals(mod)) {
-                direction = 1;
-                if (attributes.length > 4 && "free".equals(attributes[4])) {
-                    autoFree = true;
-                }
-            } else if ("inout".equals(mod)) {
-                direction = 2;
-            } else if ("alias".equals(mod)) {
-                alias = true;
-                aliasName = attributes[4];
-            } else if (type == TYPE_ARRAY || type == TYPE_PTR || type == TYPE_STRUCT) {
-                referencedType = (BaseType)symbolTable.get(mod);
-                if (referencedType == null) {
-                    log.warning("Can't find type for name " + mod);
-                }
-                if (attributes.length > 4) { // array length
-                    try {
-                        arrayLength = Integer.parseInt(attributes[4]);
-                    } catch (Exception e) {
-                    }
-                }
-            }
-        }
-        public BaseType getReferencedType() {
-            return referencedType;
-        }
-        public int getArrayLength() {
-            return arrayLength;
-        }
-        public void setOffset(int o)
-        {
-            offset = o;
-        }
-        public int getType() {
-            return type;
-        }
-        public String getTypeUpperCase() {
-            switch (type) {
-              case TYPE_INT:
-                  return "Int";
-              case TYPE_CHAR:
-                  return "Char";
-              case TYPE_BYTE:
-                  return "Byte";
-              case TYPE_LONG:
-              case TYPE_LONG_LONG:
-              case TYPE_PTR:
-                  return "Long";
-              case TYPE_DOUBLE:
-                  return "Double";
-              case TYPE_FLOAT:
-                  return "Float";
-              case TYPE_SHORT:
-                  return "Short";
-              case TYPE_BOOL:
-                  return "Int";
-              case TYPE_ATOM:
-                  return "Long";
-              case TYPE_ULONG:
-                  return "ULong";
-              default: throw new IllegalArgumentException("Uknown type");
-            }
-        }
-        public int getOffset()
-        {
-            return offset;
-        }
-        public boolean isAlias() {
-            return alias;
-        }
-        public String getAliasName() {
-            return aliasName;
-        }
-    }
-
-    private static class StructType extends BaseType {
-
-        Vector members;
-        String description;
-        boolean packed;
-        int size;
-        String baseClass, interfaces;
-        boolean isInterface;
-        String javaClassName;
-
-        /**
-         * Construct new structured type.
-         * Description is used for name and type definition and has the following format:
-         * structName [ '[' base classe ']' ] [ '{' interfaces '}' ] [ '|' javaClassName ]
-         */
-        public StructType(String _desc)
-        {
-            members = new Vector();
-            parseDescription(_desc);
-        }
-        public int getNumFields()
-        {
-            return members.size();
-        }
-        public void setName(String _name)
-        {
-            _name = _name.replaceAll("[* \t]","");
-            parseDescription(_name);
-        }
-
-        public void setSize(int i)
-        {
-            size = i;
-        }
-
-        public String getDescription()
-        {
-            return description;
-        }
-
-        public Enumeration getMembers()
-        {
-            return members.elements();
-        }
-
-        public void addMember(BaseType tp)
-        {
-            members.add(tp);
-        }
-        public String getBaseClass() {
-            return baseClass;
-        }
-        public String getInterfaces() {
-            return interfaces;
-        }
-        public boolean getIsInterface() {
-            return isInterface;
-        }
-        public String getJavaClassName() {
-            return javaClassName;
-        }
-        void parseDescription(String _desc) {
-            if (_desc.indexOf('[') != -1) { // Has base class
-                baseClass = _desc.substring(_desc.indexOf('[')+1, _desc.indexOf(']'));
-                _desc = _desc.substring(0, _desc.indexOf('[')) + _desc.substring(_desc.indexOf(']')+1);
-            }
-            if (_desc.indexOf('{') != -1) { // Has base class
-                interfaces = _desc.substring(_desc.indexOf('{')+1, _desc.indexOf('}'));
-                _desc = _desc.substring(0, _desc.indexOf('{')) + _desc.substring(_desc.indexOf('}')+1);
-            }
-            if (_desc.startsWith("-")) { // Interface
-                isInterface = true;
-                _desc = _desc.substring(1, _desc.length());
-            }
-            if (_desc.indexOf("|") != -1) {
-                javaClassName = _desc.substring(_desc.indexOf('|')+1, _desc.length());
-                _desc = _desc.substring(0, _desc.indexOf('|'));
-            }
-            name = _desc;
-            if (javaClassName == null) {
-                javaClassName = name;
-            }
-            description = _desc;
-//              System.out.println("Struct " + name + " extends " + baseClass + " implements " + interfaces);
-        }
-
-        /**
-         * Returns String containing Java code calculating size of the structure depending on the data model
-         */
-        public String getSize() {
-            String s32 = (String) WrapperGenerator.sizeTable32bit.get(getName());
-            String s64 = (String) WrapperGenerator.sizeTable64bit.get(getName());
-            if (s32 == null || s64 == null) {
-                return (s32 == null)?(s64):(s32);
-            }
-            if (s32.equals(s64)) {
-                return s32;
-            } else {
-                return MessageFormat.format("((XlibWrapper.dataModel == 32)?({0}):({1}))", new Object[] {s32, s64});
-            }
-        }
-        public String getOffset(AtomicType atp) {
-            String key = getName()+"."+(atp.isAlias() ? atp.getAliasName() : atp.getName());
-            String s64 = (String) WrapperGenerator.sizeTable64bit.get(key);
-            String s32 = (String) WrapperGenerator.sizeTable32bit.get(key);
-            if (s32 == null || s64 == null) {
-                return (s32 == null)?(s64):(s32);
-            }
-            if (s32.equals(s64)) {
-                return s32;
-            } else {
-                return MessageFormat.format("((XlibWrapper.dataModel == 32)?({0}):({1}))", new Object[]{s32, s64});
-            }
-        }
-    }
-
-    private static class FunctionType extends BaseType {
-
-        Vector args;
-        String description;
-        boolean packed;
-        String returnType;
-
-        int alignment;
-
-        public FunctionType(String _desc)
-        {
-            args = new Vector();
-            description = _desc;
-            setName(_desc);
-        }
-        boolean isVoid() {
-            return (returnType == null);
-        }
-        String getReturnType() {
-            if (returnType == null) {
-                return "void";
-            } else {
-                return returnType;
-            }
-        }
-
-        public int getNumArgs()
-        {
-            return args.size();
-        }
-        public void setName(String _name)
-        {
-            if (_name.startsWith("!")) {
-                _name = _name.substring(1, _name.length());
-            }
-            if (_name.indexOf("|") != -1) {
-                returnType = _name.substring(_name.indexOf("|")+1, _name.length());
-                _name = _name.substring(0, _name.indexOf("|"));
-            }
-            name = _name.replaceAll("[* \t]","");
-        }
-
-        public String getDescription()
-        {
-            return description;
-        }
-
-        public Collection getArguments()
-        {
-            return args;
-        }
-        public void addArgument(BaseType tp)
-        {
-            args.add(tp);
-        }
-    }
-
-    public String makeComment(String str)
-    {
-        StringTokenizer st = new StringTokenizer(str,"\r\n");
-        String ret="";
-
-        while (st.hasMoreTokens())
-        {
-            ret = ret + "//" + st.nextToken() + "\n";
-        }
-
-        return ret;
-    }
-
-    public String getJavaTypeForSize(int size) {
-        switch(size) {
-          case 1: return "byte";
-          case 2: return "short";
-          case 4: return "int";
-          case 8: return "long";
-          default: throw new RuntimeException("Unsupported size: " + size);
-        }
-    }
-    public String getOffsets(StructType stp,AtomicType atp, boolean wide)
-    {
-        String key = stp.getName()+"."+atp.getName();
-        return wide == true ? (String) sizeTable64bit.get(key) : (String) sizeTable32bit.get(key);
-    }
-
-    public String getStructSize(StructType stp, boolean wide)
-    {
-        return wide == true ? (String) sizeTable64bit.get(stp.getName()) : (String) sizeTable32bit.get(stp.getName());
-    }
-
-    public int getLongSize(boolean wide)
-    {
-        return Integer.parseInt(wide == true ? (String)sizeTable64bit.get("long") : (String)sizeTable32bit.get("long"));
-    }
-
-    public int getPtrSize(boolean wide)
-    {
-        return Integer.parseInt(wide == true ? (String)sizeTable64bit.get("ptr") : (String)sizeTable32bit.get("ptr"));
-    }
-    public int getBoolSize(boolean wide) {
-        return getOrdinalSize("Bool", wide);
-    }
-    public int getOrdinalSize(String ordinal, boolean wide) {
-        return Integer.parseInt(wide == true ? (String)sizeTable64bit.get(ordinal) : (String)sizeTable32bit.get(ordinal));
-    }
-
-    public void writeToString(StructType stp, PrintWriter pw) {
-        int type;
-        pw.println("\n\n\tString getName() {\n\t\treturn \"" + stp.getName()+ "\"; \n\t}");
-        pw.println("\n\n\tString getFieldsAsString() {\n\t\tStringBuilder ret = new StringBuilder(" + stp.getNumFields() * 40 + ");\n");
-
-        for (Enumeration e = stp.getMembers() ; e.hasMoreElements() ;) {
-            AtomicType tp = (AtomicType) e.nextElement();
-
-            type = tp.getType();
-            String name = tp.getName().replace('.', '_');
-            if ((name != null) && (name.length() > 0))
-            {
-                if (type == AtomicType.TYPE_ATOM) {
-                    pw.println("\t\tret.append(\"" + name + " = \" ).append( XAtom.get(get_" + name + "()) ).append(\", \");");
-                } else if (name.equals("type")) {
-                    pw.println("\t\tret.append(\"type = \").append( XlibWrapper.eventToString[get_type()] ).append(\", \");");
-                } else if (name.equals("window")){
-                    pw.println("\t\tret.append(\"window = \" ).append( getWindow(get_window()) ).append(\", \");");
-                } else if (type == AtomicType.TYPE_ARRAY) {
-                    pw.print("\t\tret.append(\"{\")");
-                    for (int i = 0; i < tp.getArrayLength(); i++) {
-                        pw.print("\n\t\t.append( get_" + name + "(" + i + ") ).append(\" \")");
-                    }
-                    pw.println(".append( \"}\");");
-                } else {
-                    pw.println("\t\tret.append(\"" + name +" = \").append( get_"+ name+"() ).append(\", \");");
-                }
-            }
-
-        }
-        pw.println("\t\treturn ret.toString();\n\t}\n\n");
-    }
-
-    public void writeStubs(StructType stp, PrintWriter pw) {
-        int type;
-        String prefix = "";
-        if (!stp.getIsInterface()) {
-            prefix = "\t\tabstract ";
-        } else {
-            prefix = "\t";
-        }
-        for (Enumeration e = stp.getMembers() ; e.hasMoreElements() ;) {
-            AtomicType tp = (AtomicType) e.nextElement();
-
-            type = tp.getType();
-            String name = tp.getName().replace('.','_');
-            if ((name != null) && (name.length() > 0))
-            {
-                if (type == AtomicType.TYPE_ARRAY) {
-                    // Returns pointer to the start of the array
-                    pw.println(prefix + "long get_" +name +"();");
-
-                    pw.println(prefix + tp.getJavaType() + " get_" +name +"(int index);");
-                    pw.println(prefix + "void set_" +name +"(int index, " + tp.getJavaType() + " v);");
-                } else {
-                    pw.println(prefix + tp.getJavaType() + " get_" +name +"();");
-                    if (type != AtomicType.TYPE_STRUCT) pw.println(prefix + "void set_" +name +"(" + tp.getJavaType() + " v);");
-                }
-            }
-        }
-    }
-
-    private int padSize(int size, int wordLength) {
-        int bytesPerWord = wordLength / 8;
-        // Make size dividable by bytesPerWord
-        return (size + bytesPerWord / 2) / bytesPerWord * bytesPerWord;
-    }
-
-    public void writeAccessorImpls(StructType stp, PrintWriter pw) {
-        int type;
-        int i=0;
-        String s_size_32 = getStructSize(stp, false);
-        String s_size_64 = getStructSize(stp, true);
-        int acc_size_32 = 0;
-        int acc_size_64 = 0;
-        String s_log = (generateLog?"log.finest(\"\");":"");
-        for (Enumeration e = stp.getMembers() ; e.hasMoreElements() ;) {
-            AtomicType tp = (AtomicType) e.nextElement();
-
-            type = tp.getType();
-            String name = tp.getName().replace('.','_');
-            String pref = "\tpublic " ;
-            if ((name != null) && (name.length() > 0))
-            {
-                String jt = tp.getJavaType();
-                String ja_32 = tp.getJavaAccess(false);
-                String ja_64 = tp.getJavaAccess(true);
-                String ja = ja_32;
-                int elemSize_32 = AtomicType.getNativeSizeForAccess(ja_32);
-                int elemSize_64 = AtomicType.getNativeSizeForAccess(ja_64);
-                String elemSize = tp.getItemSize();
-                if (type == AtomicType.TYPE_ARRAY) {
-                    acc_size_32 += elemSize_32 * tp.getArrayLength();
-                    acc_size_64 += elemSize_64 * tp.getArrayLength();
-                    pw.println(pref + tp.getJavaType() + " get_" +name + "(int index) { " +s_log+"return " +
-                               tp.getJavaResult(stp.getOffset(tp) + "+index*" + elemSize, null) + "; }");
-                    if (tp.getReferencedType() instanceof AtomicType) { // Set for StructType is forbidden
-                        pw.println(MessageFormat.format(pref + "void set_{0}(int index, {1} v) '{' {3} {2}; '}'",
-                                                        new Object[] {
-                                                            name, jt,
-                                                            tp.getJavaConversion("pData+"+stp.getOffset(tp)+" + index*" + elemSize, "v"),
-                                                            s_log}));
-                    }
-                    // Returns pointer to the start of the array
-                    pw.println(pref + "long get_" +name+ "() { "+s_log+"return pData+"+stp.getOffset(tp)+"; }");
-                } else if (type == AtomicType.TYPE_PTR) {
-                    pw.println(MessageFormat.format(pref + "{0} get_{1}(int index) '{' {3} return {2}; '}'",
-                                         new Object[] {
-                                             jt, name,
-                                             tp.getJavaResult("index*" + elemSize, "Native.getLong(pData+"+stp.getOffset(tp)+")"),
-                                             s_log
-                                             }));
-                    pw.println(pref + "long get_" +name+ "() { "+s_log+"return Native.getLong(pData+"+stp.getOffset(tp)+"); }");
-                    pw.println(MessageFormat.format(pref + "void set_{0}({1} v) '{' {3} {2}; '}'",
-                                                    new Object[] {name, "long", "Native.putLong(pData + " + stp.getOffset(tp) + ", v)", s_log}));
-                    acc_size_32 += elemSize_32;
-                    acc_size_64 += elemSize_64;
-                } else {
-                    acc_size_32 += elemSize_32;
-                    acc_size_64 += elemSize_64;
-                    pw.println(pref + tp.getJavaType() + " get_" +name +
-                               "() { "+s_log+"return " + tp.getJavaResult(stp.getOffset(tp), null) + "; }");
-                    if (type != AtomicType.TYPE_STRUCT) {
-                        pw.println(MessageFormat.format(pref + "void set_{0}({1} v) '{' {3} {2}; '}'",
-                                                        new Object[] {name, jt, tp.getJavaConversion("pData+"+stp.getOffset(tp), "v"), s_log}));
-                    }
-                }
-                i++;
-            }
-        }
-        if (s_size_32 != null && !s_size_32.equals(Integer.toString(acc_size_32))) {
-            if (log.isLoggable(Level.FINE)) {
-                log.fine("32 bits: The size of the structure " + stp.getName() + " " + s_size_32 +
-                        " is not equal to the accumulated size " +acc_size_32 + " of the fields");
-            }
-        } else if (s_size_64 != null && !s_size_64.equals(Integer.toString(acc_size_64))) {
-            if (log.isLoggable(Level.FINE)) {
-                log.fine("64 bits: The size of the structure " + stp.getName() + " " +s_size_64+
-                        " is not equal to the accumulated size " +acc_size_64+" of the fields");
-            }
-        }
-    }
-
-    public void writeWrapperSubclass(StructType stp, PrintWriter pw, boolean wide) {
-
-
-        pw.println("class " + stp.getJavaClassName() + "AccessorImpl"  + " extends " + stp.getJavaClassName() + "Accessor  {");
-        pw.println("/*\nThis class serves as a Wrapper for the following X Struct \nsThe offsets here are calculated based on actual compiler.\n\n" +stp.getDescription() + "\n\n */");
-
-        writeAccessorImpls(stp, pw);
-
-        pw.println("\n\n } \n\n");
-    }
-
-    public void writeWrapper(String outputDir, StructType stp)
-    {
-        if (stp.getNumFields() > 0) {
-
-            try {
-                FileOutputStream fs =  new FileOutputStream(outputDir + "/"+stp.getJavaClassName()+".java");
-                PrintWriter pw = new PrintWriter(fs);
-                pw.println("// This file is an automatically generated file, please do not edit this file, modify the WrapperGenerator.java file instead !\n" );
-
-                pw.println("package "+package_name+";\n");
-                pw.println("import sun.misc.*;\n");
-                pw.println("import sun.util.logging.PlatformLogger;");
-                String baseClass = stp.getBaseClass();
-                if (baseClass == null) {
-                    baseClass = defaultBaseClass;
-                }
-                if (stp.getIsInterface()) {
-                    pw.print("public interface ");
-                    pw.print(stp.getJavaClassName());
-                } else {
-                    pw.print("public class ");
-                    pw.print(stp.getJavaClassName() + " extends " + baseClass);
-                }
-                if (stp.getInterfaces() != null) {
-                    pw.print(" implements " + stp.getInterfaces());
-                }
-                pw.println(" { ");
-                if (!stp.getIsInterface()) {
-                    pw.println("\tprivate Unsafe unsafe = XlibWrapper.unsafe; ");
-                    pw.println("\tprivate final boolean should_free_memory;");
-                    pw.println("\tpublic static int getSize() { return " + stp.getSize() + "; }");
-                    pw.println("\tpublic int getDataSize() { return getSize(); }");
-                    pw.println("\n\tlong pData;");
-                    pw.println("\n\tpublic long getPData() { return pData; }");
-
-                    pw.println("\n\n\tpublic " + stp.getJavaClassName() + "(long addr) {");
-                    if (generateLog) {
-                        pw.println("\t\tlog.finest(\"Creating\");");
-                    }
-                    pw.println("\t\tpData=addr;");
-                    pw.println("\t\tshould_free_memory = false;");
-                    pw.println("\t}");
-                    pw.println("\n\n\tpublic " + stp.getJavaClassName() + "() {");
-                    if (generateLog) {
-                        pw.println("\t\tlog.finest(\"Creating\");");
-                    }
-                    pw.println("\t\tpData = unsafe.allocateMemory(getSize());");
-                    pw.println("\t\tshould_free_memory = true;");
-                    pw.println("\t}");
-
-                    pw.println("\n\n\tpublic void dispose() {");
-                    if (generateLog) {
-                        pw.println("\t\tlog.finest(\"Disposing\");");
-                    }
-                    pw.println("\t\tif (should_free_memory) {");
-                    if (generateLog) {
-                        pw.println("\t\t\tlog.finest(\"freeing memory\");");
-                    }
-                    pw.println("\t\t\tunsafe.freeMemory(pData); \n\t}");
-                    pw.println("\t\t}");
-                    writeAccessorImpls(stp, pw);
-                    writeToString(stp,pw);
-                } else {
-                    pw.println("\n\n\tvoid dispose();");
-                    pw.println("\n\tlong getPData();");
-                    writeStubs(stp,pw);
-                }
-
-
-                pw.println("}\n\n\n");
-                pw.close();
-            }
-            catch (Exception e)
-            {
-                e.printStackTrace();
-            }
-        }
-    }
-
-    private boolean readSizeInfo(InputStream is, boolean wide) {
-        String line;
-        String splits[];
-        BufferedReader in  = new BufferedReader(new InputStreamReader(is));
-        try {
-            while ((line = in.readLine()) != null)
-            {
-                splits = line.split("\\p{Space}");
-                if (splits.length == 2)
-                {
-                    if (wide) {
-                        sizeTable64bit.put(splits[0],splits[1]);
-                    } else {
-                        sizeTable32bit.put(splits[0],splits[1]);
-                    }
-                }
-            }
-            return true;
-        } catch (Exception e) {
-            e.printStackTrace();
-            return false;
-        }
-    }
-
-    public void writeFunctionCallWrapper(String outputDir, FunctionType ft) {
-        try {
-            FileOutputStream fs =  new FileOutputStream(outputDir + "/" + ft.getName()+".java");
-            PrintWriter pw = new PrintWriter(fs);
-            pw.println("// This file is an automatically generated file, please do not edit this file, modify the WrapperGenerator.java file instead !\n" );
-
-            pw.println("package "+package_name+";\n");
-            pw.println("import sun.misc.Unsafe;\n");
-            pw.println("class " + ft.getName() + " {");
-            pw.println("\tprivate static Unsafe unsafe = XlibWrapper.unsafe;");
-            pw.println("\tprivate boolean __executed = false;");
-            pw.println("\tprivate boolean __disposed = false;");
-            Iterator iter = ft.getArguments().iterator();
-            while (iter.hasNext()) {
-                AtomicType at = (AtomicType)iter.next();
-                if (at.isIn()) {
-                    pw.println("\t" + at.getJavaType() + " _" + at.getName() + ";");
-                } else {
-                    pw.println("\tlong " + at.getName() + "_ptr = unsafe.allocateMemory(Native.get" + at.getTypeUpperCase() + "Size());");
-                }
-            }
-            pw.println("\tpublic " + ft.getName() + "(");
-            iter = ft.getArguments().iterator();
-            boolean first = true;
-            while (iter.hasNext()) {
-                AtomicType at = (AtomicType)iter.next();
-                if (at.isIn() || at.isInOut()) {
-                    if (!first) {
-                        pw.println(",");
-                    }
-                    first = false;
-                    pw.print("\t\t" + at.getJavaType() + " " + at.getName());
-                }
-            }
-            pw.println("\t)");
-            pw.println("\t{");
-            iter = ft.getArguments().iterator();
-            while (iter.hasNext()) {
-                AtomicType at = (AtomicType)iter.next();
-                if (at.isIn() || at.isInOut()) {
-                    pw.println("\t\tset_" + at.getName() + "(" + at.getName() + ");");
-                }
-            }
-            pw.println("\t}");
-
-            pw.println("\tpublic " + ft.getReturnType() + " execute() {");
-            if (ft.isVoid()) {
-                pw.println("\t\texecute(null);");
-            } else {
-                pw.println("\t\treturn execute(null);");
-            }
-            pw.println("\t}");
-
-            pw.println("\tpublic " + ft.getReturnType() + " execute(XToolkit.XErrorHandler errorHandler) {");
-            pw.println("\t\tif (__disposed) {");
-            pw.println("\t\t    throw new IllegalStateException(\"Disposed\");");
-            pw.println("\t\t}");
-            pw.println("\t\tXToolkit.awtLock();");
-            pw.println("\t\ttry {");
-            pw.println("\t\t\tif (__executed) {");
-            pw.println("\t\t\t    throw new IllegalStateException(\"Already executed\");");
-            pw.println("\t\t\t}");
-            pw.println("\t\t\t__executed = true;");
-            pw.println("\t\t\tif (errorHandler != null) {");
-            pw.println("\t\t\t    XErrorHandlerUtil.WITH_XERROR_HANDLER(errorHandler);");
-            pw.println("\t\t\t}");
-            iter = ft.getArguments().iterator();
-            while (iter.hasNext()) {
-                AtomicType at = (AtomicType)iter.next();
-                if (!at.isIn() && at.isAutoFree()) {
-                    pw.println("\t\t\tNative.put" + at.getTypeUpperCase() + "(" +at.getName() + "_ptr, 0);");
-                }
-            }
-            if (!ft.isVoid()) {
-                pw.println("\t\t\t" + ft.getReturnType() + " status = ");
-            }
-            pw.println("\t\t\tXlibWrapper." + ft.getName() + "(XToolkit.getDisplay(), ");
-            iter = ft.getArguments().iterator();
-            first = true;
-            while (iter.hasNext()) {
-                AtomicType at = (AtomicType)iter.next();
-                if (!first) {
-                    pw.println(",");
-                }
-                first = false;
-                if (at.isIn()) {
-                    pw.print("\t\t\t\tget_" + at.getName() + "()");
-                } else {
-                    pw.print("\t\t\t\t" + at.getName() + "_ptr");
-                }
-            }
-            pw.println("\t\t\t);");
-            pw.println("\t\t\tif (errorHandler != null) {");
-            pw.println("\t\t\t    XErrorHandlerUtil.RESTORE_XERROR_HANDLER();");
-            pw.println("\t\t\t}");
-            if (!ft.isVoid()) {
-                pw.println("\t\t\treturn status;");
-            }
-            pw.println("\t\t} finally {");
-            pw.println("\t\t    XToolkit.awtUnlock();");
-            pw.println("\t\t}");
-            pw.println("\t}");
-
-            pw.println("\tpublic boolean isExecuted() {");
-            pw.println("\t    return __executed;");
-            pw.println("\t}");
-            pw.println("\t");
-            pw.println("\tpublic boolean isDisposed() {");
-            pw.println("\t    return __disposed;");
-            pw.println("\t}");
-            pw.println("\tpublic void finalize() {");
-            pw.println("\t    dispose();");
-            pw.println("\t}");
-
-            pw.println("\tpublic void dispose() {");
-            pw.println("\t\tXToolkit.awtLock();");
-            pw.println("\t\ttry {");
-            pw.println("\t\tif (__disposed || !__executed) {");
-            pw.println("\t\t    return;");
-            pw.println("\t\t} finally {");
-            pw.println("\t\t    XToolkit.awtUnlock();");
-            pw.println("\t\t}");
-            pw.println("\t\t}");
-
-            iter = ft.getArguments().iterator();
-            while (iter.hasNext()) {
-                AtomicType at = (AtomicType)iter.next();
-                if (!at.isIn()) {
-                    if (at.isAutoFree()) {
-                        pw.println("\t\tif (__executed && get_" + at.getName() + "()!= 0) {");
-                        pw.println("\t\t\tXlibWrapper.XFree(get_" + at.getName() + "());");
-                        pw.println("\t\t}");
-                    }
-                    pw.println("\t\tunsafe.freeMemory(" + at.getName() + "_ptr);");
-                }
-            }
-            pw.println("\t\t__disposed = true;");
-            pw.println("\t\t}");
-            pw.println("\t}");
-
-            iter = ft.getArguments().iterator();
-            while (iter.hasNext()) {
-                AtomicType at = (AtomicType)iter.next();
-                pw.println("\tpublic " + at.getJavaType() + " get_" + at.getName() + "() {");
-
-                pw.println("\t\tif (__disposed) {");
-                pw.println("\t\t    throw new IllegalStateException(\"Disposed\");");
-                pw.println("\t\t}");
-                pw.println("\t\tif (!__executed) {");
-                pw.println("\t\t    throw new IllegalStateException(\"Not executed\");");
-                pw.println("\t\t}");
-
-                if (at.isIn()) {
-                    pw.println("\t\treturn _" + at.getName() + ";");
-                } else {
-                    pw.println("\t\treturn Native.get" + at.getTypeUpperCase() + "(" + at.getName() + "_ptr);");
-                }
-                pw.println("\t}");
-
-                pw.println("\tpublic void set_" + at.getName() + "(" + at.getJavaType() + " data) {");
-                if (at.isIn()) {
-                    pw.println("\t\t_" + at.getName() + " = data;");
-                } else {
-                    pw.println("\t\tNative.put" + at.getTypeUpperCase() + "(" + at.getName() + "_ptr, data);");
-                }
-                pw.println("\t}");
-            }
-            pw.println("}");
-            pw.close();
-        } catch (Exception e) {
-            e.printStackTrace();
-        }
-    }
-
-    public void writeJavaWrapperClass(String outputDir) {
-//          (new File(outputDir, package_path)).mkdirs();
-        try {
-            for (Enumeration e = symbolTable.elements() ; e.hasMoreElements() ;) {
-                BaseType tp = (BaseType) e.nextElement();
-                if (tp instanceof StructType) {
-                    StructType st = (StructType) tp;
-                    writeWrapper(outputDir, st);
-                } else if (tp instanceof FunctionType) {
-                    writeFunctionCallWrapper(outputDir, (FunctionType)tp);
-                }
-            }
-        }
-        catch (Exception e) {
-            e.printStackTrace();
-        }
-    }
-
-
-    public void writeNativeSizer(String file)
-    {
-        int type;
-        int i=0;
-        int j=0;
-        BaseType tp;
-        StructType stp;
-        Enumeration eo;
-
-
-        try {
-
-            FileOutputStream fs =  new FileOutputStream(file);
-            PrintWriter pw = new PrintWriter(fs);
-
-            pw.println("/* This file is an automatically generated file, please do not edit this file, modify the XlibParser.java file instead !*/\n" );
-            pw.println("#include <X11/Xlib.h>\n#include <X11/Xutil.h>\n#include <X11/Xos.h>\n#include <X11/Xatom.h>\n#include <stdio.h>\n");
-            pw.println("#include <X11/extensions/Xdbe.h>");
-            pw.println("#include <X11/XKBlib.h>");
-            pw.println("#include \"awt_p.h\"");
-            pw.println("#include \"color.h\"");
-            pw.println("#include \"colordata.h\"");
-            pw.println("\ntypedef struct\n");
-            pw.println("{\n");
-            pw.println("    unsigned long flags;\n");
-            pw.println("    unsigned long functions;\n");
-            pw.println("    unsigned long decorations;\n");
-            pw.println("    long inputMode;\n");
-            pw.println("    unsigned long status;\n");
-            pw.println("} PropMwmHints;\n");
-
-
-            pw.println("\n\nint main(){");
-            j=0;
-            for ( eo = symbolTable.elements() ; eo.hasMoreElements() ;) {
-                tp = (BaseType) eo.nextElement();
-                if (tp instanceof StructType)
-                {
-                    stp = (StructType) tp;
-                    if (!stp.getIsInterface()) {
-                        pw.println(stp.getName()+"  temp"+ j + ";\n");
-                        j++;
-                    }
-                }
-            }
-            j=0;
-
-            pw.println("printf(\"long\t%d\\n\",(int)sizeof(long));");
-            pw.println("printf(\"int\t%d\\n\",(int)sizeof(int));");
-            pw.println("printf(\"short\t%d\\n\",(int)sizeof(short));");
-            pw.println("printf(\"ptr\t%d\\n\",(int)sizeof(void *));");
-            pw.println("printf(\"Bool\t%d\\n\",(int)sizeof(Bool));");
-            pw.println("printf(\"Atom\t%d\\n\",(int)sizeof(Atom));");
-            pw.println("printf(\"Window\t%d\\n\",(int)sizeof(Window));");
-
-
-            for (eo = symbolTable.elements() ; eo.hasMoreElements() ;) {
-
-
-                tp = (BaseType) eo.nextElement();
-                if (tp instanceof StructType)
-                {
-                    stp = (StructType) tp;
-                    if (stp.getIsInterface()) {
-                        continue;
-                    }
-                    for (Enumeration e = stp.getMembers() ; e.hasMoreElements() ;) {
-                        AtomicType atp = (AtomicType) e.nextElement();
-                        if (atp.isAlias()) continue;
-                        pw.println("printf(\""+ stp.getName() + "." + atp.getName() + "\t%d\\n\""+
-                                   ",(int)((unsigned long ) &temp"+j+"."+atp.getName()+"- (unsigned long ) &temp" + j + ")  );");
-
-                        i++;
-
-
-                    }
-                    pw.println("printf(\""+ stp.getName() + "\t%d\\n\"" + ",(int)sizeof(temp"+j+"));");
-
-                    j++;
-                }
-
-            }
-            pw.println("return 0;");
-            pw.println("}");
-            pw.close();
-
-        }
-        catch (Exception e)
-        {
-            e.printStackTrace();
-        }
-    }
-
-    private void initTypes() {
-        symbolTable.put("int", new AtomicType(AtomicType.TYPE_INT, "", "int"));
-        symbolTable.put("short", new AtomicType(AtomicType.TYPE_SHORT, "", "short"));
-        symbolTable.put("long", new AtomicType(AtomicType.TYPE_LONG, "", "long"));
-        symbolTable.put("float", new AtomicType(AtomicType.TYPE_FLOAT, "", "float"));
-        symbolTable.put("double", new AtomicType(AtomicType.TYPE_DOUBLE, "", "double"));
-        symbolTable.put("Bool", new AtomicType(AtomicType.TYPE_BOOL, "", "Bool"));
-        symbolTable.put("char", new AtomicType(AtomicType.TYPE_CHAR, "", "char"));
-        symbolTable.put("byte", new AtomicType(AtomicType.TYPE_BYTE, "", "byte"));
-        symbolTable.put("pointer", new AtomicType(AtomicType.TYPE_PTR, "", "pointer"));
-        symbolTable.put("longlong", new AtomicType(AtomicType.TYPE_LONG_LONG, "", "longlong"));
-        symbolTable.put("Atom", new AtomicType(AtomicType.TYPE_ATOM, "", "Atom"));
-        symbolTable.put("ulong", new AtomicType(AtomicType.TYPE_ULONG, "", "ulong"));
-    }
-    public WrapperGenerator(String outputDir, String xlibFilename) {
-        initTypes();
-        try {
-            BufferedReader in  = new BufferedReader(new FileReader(xlibFilename));
-            String line;
-            String splits[];
-            BaseType curType = null;
-            while ((line = in.readLine()) != null)
-            {
-                int commentStart = line.indexOf("//");
-                if (commentStart >= 0) {
-                    // remove comment
-                    line = line.substring(0, commentStart);
-                }
-
-                if ("".equals(line)) {
-                    // skip empty line
-                    continue;
-                }
-
-                splits = line.split("\\p{Space}+");
-                if (splits.length >= 2)
-                {
-                    String struct_name = curType.getName();
-                    String field_name = splits[1];
-                    String s_type = splits[2];
-                    BaseType bt = curType;
-                    int type = AtomicType.getTypeForString(s_type);
-                    AtomicType atp = null;
-                    if (bt != null && type != -1) {
-                        atp = new AtomicType(type,field_name,s_type);
-                        if (splits.length > 3) {
-                            atp.setAttributes(splits);
-                        }
-                        if (bt instanceof StructType) {
-                            StructType  stp = (StructType) bt;
-                            stp.addMember(atp);
-                        } else if (bt instanceof FunctionType) {
-                            ((FunctionType)bt).addArgument(atp);
-                        }
-                    }
-                    else if (bt == null) {
-                        System.out.println("Cannot find " + struct_name);
-                    }
-
-                }
-                else  if (line != null) {
-                    BaseType bt = (BaseType) symbolTable.get(line);
-                    if (bt == null) {
-                        if (line.startsWith("!")) {
-                            FunctionType ft = new FunctionType(line);
-                            ft.setName(line);
-                            symbolTable.put(ft.getName(),ft);
-                            curType = ft;
-                        } else {
-                            StructType stp = new StructType(line);
-                            stp.setName(line);
-                            curType = stp;
-                            symbolTable.put(stp.getName(),stp);
-                        }
-                    }
-                }
-
-            }
-            in.close();
-        }
-        catch (Exception e) {
-            e.printStackTrace();
-        }
-
-    }
-    private void makeSizer(String outputDir) {
-        if (wide) {
-            sizerFileName = "sizer.64.c";
-        } else {
-            sizerFileName = "sizer.32.c";
-        }
-        File fp = new File(outputDir, sizerFileName);
-        writeNativeSizer(fp.getAbsolutePath());
-    }
-    private boolean readSizeInfo(String sizeInfo) {
-        try {
-            File f = new File(sizeInfo+".32");
-            boolean res = true;
-            FileInputStream fis = null;
-            if (f.exists()) {
-                fis = new FileInputStream(f);
-                res = readSizeInfo(fis, false);
-                fis.close();
-            }
-            f = new File(sizeInfo+".64");
-            if (f.exists()) {
-                fis = new FileInputStream(f);
-                res &= readSizeInfo(fis, true);
-                fis.close();
-            }
-            return res;
-        } catch (Exception e) {
-            e.printStackTrace();
-            return false;
-        }
-    }
-
-    private void startGeneration(String outputDir, String sizeInfo) {
-        if (readSizeInfo(sizeInfo))
-        {
-            writeJavaWrapperClass(outputDir);
-        }
-        else {
-            System.out.println("Error calculating offsets");
-        }
-    }
-
-    public static void main(String[] args) {
-
-        if (args.length < 4) {
-            System.out.println("Usage:\nWrapperGenerator <output_dir> <xlibtypes.txt> <action> [<platform> | <sizes info file>]");
-            System.out.println("Where <action>: gen, sizer");
-            System.out.println("      <platform>: 32, 64");
-            System.exit(1);
-        }
-
-        WrapperGenerator xparser = new WrapperGenerator(args[0], args[1]);
-        if (args[2].equals("sizer")) {
-            xparser.wide = args[3].equals("64");
-            xparser.makeSizer(args[0]);
-        } else if (args[2].equals("gen")) {
-            xparser.startGeneration(args[0], args[3]);
-        }
-    }
-
-}
--- a/src/solaris/classes/sun/awt/X11/generator/functions.txt	Mon Feb 17 11:36:40 2014 -0500
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,26 +0,0 @@
-!XGetWindowProperty|int
-    w                long
-    property         Atom
-    long_offset      long
-    long_length      long
-    delete           Bool
-    req_type         Atom
-    actual_type      Atom out
-    actual_format    int out
-    number_of_items  long out
-    bytes_after      long out
-    data             pointer out free
-!XQueryTree|int
-    w                long
-    root             long out
-    parent           long out
-    children         pointer out free
-    nchildren        int out
-!XTranslateCoordinates|int
-    scr_w            long
-    dest_w           long 
-    src_x            int
-    src_y            int
-    dest_x           int out
-    dest_y           int out
-    child            long out
--- a/src/solaris/classes/sun/awt/X11/generator/sizes.32	Mon Feb 17 11:36:40 2014 -0500
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1016 +0,0 @@
-long	4
-int	4
-short	2
-ptr	4
-Bool	4
-Atom	4
-Window	4
-XExtData.number	0
-XExtData.next	4
-XExtData.free_private	8
-XExtData.private_data	12
-XExtData	16
-XIMStringConversionCallbackStruct.position	0
-XIMStringConversionCallbackStruct.direction	4
-XIMStringConversionCallbackStruct.operation	8
-XIMStringConversionCallbackStruct.factor	10
-XIMStringConversionCallbackStruct.text	12
-XIMStringConversionCallbackStruct	16
-XkbNewKeyboardNotifyEvent.type	0
-XkbNewKeyboardNotifyEvent.serial	4
-XkbNewKeyboardNotifyEvent.send_event	8
-XkbNewKeyboardNotifyEvent.display	12
-XkbNewKeyboardNotifyEvent.time	16
-XkbNewKeyboardNotifyEvent.xkb_type	20
-XkbNewKeyboardNotifyEvent.device	24
-XkbNewKeyboardNotifyEvent.old_device	28
-XkbNewKeyboardNotifyEvent.min_key_code	32
-XkbNewKeyboardNotifyEvent.max_key_code	36
-XkbNewKeyboardNotifyEvent.old_min_key_code	40
-XkbNewKeyboardNotifyEvent.old_max_key_code	44
-XkbNewKeyboardNotifyEvent.changed	48
-XkbNewKeyboardNotifyEvent.req_major	52
-XkbNewKeyboardNotifyEvent.req_minor	53
-XkbNewKeyboardNotifyEvent	56
-XTimeCoord.time	0
-XTimeCoord.x	4
-XTimeCoord.y	6
-XTimeCoord	8
-XkbCompatMapNotifyEvent.type	0
-XkbCompatMapNotifyEvent.serial	4
-XkbCompatMapNotifyEvent.send_event	8
-XkbCompatMapNotifyEvent.display	12
-XkbCompatMapNotifyEvent.time	16
-XkbCompatMapNotifyEvent.xkb_type	20
-XkbCompatMapNotifyEvent.device	24
-XkbCompatMapNotifyEvent.changed_groups	28
-XkbCompatMapNotifyEvent.first_si	32
-XkbCompatMapNotifyEvent.num_si	36
-XkbCompatMapNotifyEvent.num_total_si	40
-XkbCompatMapNotifyEvent	44
-XIMStatusDrawCallbackStruct.type	0
-XIMStatusDrawCallbackStruct.data	4
-XIMStatusDrawCallbackStruct	8
-XKeyboardControl.key_click_percent	0
-XKeyboardControl.bell_percent	4
-XKeyboardControl.bell_pitch	8
-XKeyboardControl.bell_duration	12
-XKeyboardControl.led	16
-XKeyboardControl.led_mode	20
-XKeyboardControl.key	24
-XKeyboardControl.auto_repeat_mode	28
-XKeyboardControl	32
-XSelectionClearEvent.type	0
-XSelectionClearEvent.serial	4
-XSelectionClearEvent.send_event	8
-XSelectionClearEvent.display	12
-XSelectionClearEvent.window	16
-XSelectionClearEvent.selection	20
-XSelectionClearEvent.time	24
-XSelectionClearEvent	28
-XWindowChanges.x	0
-XWindowChanges.y	4
-XWindowChanges.width	8
-XWindowChanges.height	12
-XWindowChanges.border_width	16
-XWindowChanges.sibling	20
-XWindowChanges.stack_mode	24
-XWindowChanges	28
-XIMPreeditCaretCallbackStruct.position	0
-XIMPreeditCaretCallbackStruct.direction	4
-XIMPreeditCaretCallbackStruct.style	8
-XIMPreeditCaretCallbackStruct	12
-XOMCharSetList.charset_count	0
-XOMCharSetList.charset_list	4
-XOMCharSetList	8
-XOMFontInfo.num_font	0
-XOMFontInfo.font_struct_list	4
-XOMFontInfo.font_name_list	8
-XOMFontInfo	12
-AwtScreenData.numConfigs	0
-AwtScreenData.root	4
-AwtScreenData.whitepixel	8
-AwtScreenData.blackpixel	12
-AwtScreenData.defaultConfig	16
-AwtScreenData.configs	20
-AwtScreenData	24
-XIMHotKeyTrigger.keysym	0
-XIMHotKeyTrigger.modifier	4
-XIMHotKeyTrigger.modifier_mask	8
-XIMHotKeyTrigger	12
-XCirculateEvent.type	0
-XCirculateEvent.serial	4
-XCirculateEvent.send_event	8
-XCirculateEvent.display	12
-XCirculateEvent.event	16
-XCirculateEvent.window	20
-XCirculateEvent.place	24
-XCirculateEvent	28
-Screen.ext_data	0
-Screen.display	4
-Screen.root	8
-Screen.width	12
-Screen.height	16
-Screen.mwidth	20
-Screen.mheight	24
-Screen.ndepths	28
-Screen.depths	32
-Screen.root_depth	36
-Screen.root_visual	40
-Screen.default_gc	44
-Screen.cmap	48
-Screen.white_pixel	52
-Screen.black_pixel	56
-Screen.max_maps	60
-Screen.min_maps	64
-Screen.backing_store	68
-Screen.save_unders	72
-Screen.root_input_mask	76
-Screen	80
-XMapRequestEvent.type	0
-XMapRequestEvent.serial	4
-XMapRequestEvent.send_event	8
-XMapRequestEvent.display	12
-XMapRequestEvent.parent	16
-XMapRequestEvent.window	20
-XMapRequestEvent	24
-XIMText.length	0
-XIMText.feedback	4
-XIMText.encoding_is_wchar	8
-XIMText.string	12
-XIMText	16
-XGraphicsExposeEvent.type	0
-XGraphicsExposeEvent.serial	4
-XGraphicsExposeEvent.send_event	8
-XGraphicsExposeEvent.display	12
-XGraphicsExposeEvent.drawable	16
-XGraphicsExposeEvent.x	20
-XGraphicsExposeEvent.y	24
-XGraphicsExposeEvent.width	28
-XGraphicsExposeEvent.height	32
-XGraphicsExposeEvent.count	36
-XGraphicsExposeEvent.major_code	40
-XGraphicsExposeEvent.minor_code	44
-XGraphicsExposeEvent	48
-XEvent.type	0
-XEvent.xany	0
-XEvent.xkey	0
-XEvent.xbutton	0
-XEvent.xmotion	0
-XEvent.xcrossing	0
-XEvent.xfocus	0
-XEvent.xexpose	0
-XEvent.xgraphicsexpose	0
-XEvent.xnoexpose	0
-XEvent.xvisibility	0
-XEvent.xcreatewindow	0
-XEvent.xdestroywindow	0
-XEvent.xunmap	0
-XEvent.xmap	0
-XEvent.xmaprequest	0
-XEvent.xreparent	0
-XEvent.xconfigure	0
-XEvent.xgravity	0
-XEvent.xresizerequest	0
-XEvent.xconfigurerequest	0
-XEvent.xcirculate	0
-XEvent.xcirculaterequest	0
-XEvent.xproperty	0
-XEvent.xselectionclear	0
-XEvent.xselectionrequest	0
-XEvent.xselection	0
-XEvent.xcolormap	0
-XEvent.xclient	0
-XEvent.xmapping	0
-XEvent.xerror	0
-XEvent.xkeymap	0
-XEvent.pad	0
-XEvent	96
-XRenderDirectFormat.red	0
-XRenderDirectFormat.redMask	2
-XRenderDirectFormat.green	4
-XRenderDirectFormat.greenMask	6
-XRenderDirectFormat.blue	8
-XRenderDirectFormat.blueMask	10
-XRenderDirectFormat.alpha	12
-XRenderDirectFormat.alphaMask	14
-XRenderDirectFormat	16
-ColorData.awt_Colors	0
-ColorData.awt_numICMcolors	4
-ColorData.awt_icmLUT	8
-ColorData.awt_icmLUT2Colors	12
-ColorData.img_grays	16
-ColorData.img_clr_tbl	20
-ColorData.img_oda_red	24
-ColorData.img_oda_green	28
-ColorData.img_oda_blue	32
-ColorData.pGrayInverseLutData	36
-ColorData.screendata	40
-ColorData	44
-XFontStruct.ext_data	0
-XFontStruct.fid	4
-XFontStruct.direction	8
-XFontStruct.min_char_or_byte2	12
-XFontStruct.max_char_or_byte2	16
-XFontStruct.min_byte1	20
-XFontStruct.max_byte1	24
-XFontStruct.all_chars_exist	28
-XFontStruct.n_properties	36
-XFontStruct.properties	40
-XFontStruct.min_bounds	44
-XFontStruct.max_bounds	56
-XFontStruct.per_char	68
-XFontStruct.ascent	72
-XFontStruct.descent	76
-XFontStruct	80
-XExtCodes.extension	0
-XExtCodes.major_opcode	4
-XExtCodes.first_event	8
-XExtCodes.first_error	12
-XExtCodes	16
-XFontSetExtents.max_ink_extent	0
-XFontSetExtents.max_logical_extent	8
-XFontSetExtents	16
-XSelectionEvent.type	0
-XSelectionEvent.serial	4
-XSelectionEvent.send_event	8
-XSelectionEvent.display	12
-XSelectionEvent.requestor	16
-XSelectionEvent.selection	20
-XSelectionEvent.target	24
-XSelectionEvent.property	28
-XSelectionEvent.time	32
-XSelectionEvent	36
-XArc.x	0
-XArc.y	2
-XArc.width	4
-XArc.height	6
-XArc.angle1	8
-XArc.angle2	10
-XArc	12
-XErrorEvent.type	0
-XErrorEvent.display	4
-XErrorEvent.resourceid	8
-XErrorEvent.serial	12
-XErrorEvent.error_code	16
-XErrorEvent.request_code	17
-XErrorEvent.minor_code	18
-XErrorEvent	20
-XConfigureRequestEvent.type	0
-XConfigureRequestEvent.serial	4
-XConfigureRequestEvent.send_event	8
-XConfigureRequestEvent.display	12
-XConfigureRequestEvent.parent	16
-XConfigureRequestEvent.window	20
-XConfigureRequestEvent.x	24
-XConfigureRequestEvent.y	28
-XConfigureRequestEvent.width	32
-XConfigureRequestEvent.height	36
-XConfigureRequestEvent.border_width	40
-XConfigureRequestEvent.above	44
-XConfigureRequestEvent.detail	48
-XConfigureRequestEvent.value_mask	52
-XConfigureRequestEvent	56
-ScreenFormat.ext_data	0
-ScreenFormat.depth	4
-ScreenFormat.bits_per_pixel	8
-ScreenFormat.scanline_pad	12
-ScreenFormat	16
-XButtonEvent.type	0
-XButtonEvent.serial	4
-XButtonEvent.send_event	8
-XButtonEvent.display	12
-XButtonEvent.window	16
-XButtonEvent.root	20
-XButtonEvent.subwindow	24
-XButtonEvent.time	28
-XButtonEvent.x	32
-XButtonEvent.y	36
-XButtonEvent.x_root	40
-XButtonEvent.y_root	44
-XButtonEvent.state	48
-XButtonEvent.button	52
-XButtonEvent.same_screen	56
-XButtonEvent	60
-XFontProp.name	0
-XFontProp.card32	4
-XFontProp	8
-XIMValuesList.count_values	0
-XIMValuesList.supported_values	4
-XIMValuesList	8
-XKeymapEvent.type	0
-XKeymapEvent.serial	4
-XKeymapEvent.send_event	8
-XKeymapEvent.display	12
-XKeymapEvent.window	16
-XKeymapEvent.key_vector	20
-XKeymapEvent	52
-XTextItem16.chars	0
-XTextItem16.nchars	4
-XTextItem16.delta	8
-XTextItem16.font	12
-XTextItem16	16
-XIMPreeditDrawCallbackStruct.caret	0
-XIMPreeditDrawCallbackStruct.chg_first	4
-XIMPreeditDrawCallbackStruct.chg_length	8
-XIMPreeditDrawCallbackStruct.text	12
-XIMPreeditDrawCallbackStruct	16
-XVisualInfo.visual	0
-XVisualInfo.visualid	4
-XVisualInfo.screen	8
-XVisualInfo.depth	12
-XVisualInfo.class	16
-XVisualInfo.red_mask	20
-XVisualInfo.green_mask	24
-XVisualInfo.blue_mask	28
-XVisualInfo.colormap_size	32
-XVisualInfo.bits_per_rgb	36
-XVisualInfo	40
-XkbControlsNotifyEvent.type	0
-XkbControlsNotifyEvent.serial	4
-XkbControlsNotifyEvent.send_event	8
-XkbControlsNotifyEvent.display	12
-XkbControlsNotifyEvent.time	16
-XkbControlsNotifyEvent.xkb_type	20
-XkbControlsNotifyEvent.device	24
-XkbControlsNotifyEvent.changed_ctrls	28
-XkbControlsNotifyEvent.enabled_ctrls	32
-XkbControlsNotifyEvent.enabled_ctrl_changes	36
-XkbControlsNotifyEvent.num_groups	40
-XkbControlsNotifyEvent.keycode	44
-XkbControlsNotifyEvent.event_type	45
-XkbControlsNotifyEvent.req_major	46
-XkbControlsNotifyEvent.req_minor	47
-XkbControlsNotifyEvent	48
-PropMwmHints.flags	0
-PropMwmHints.functions	4
-PropMwmHints.decorations	8
-PropMwmHints.inputMode	12
-PropMwmHints.status	16
-PropMwmHints	20
-XClientMessageEvent.type	0
-XClientMessageEvent.serial	4
-XClientMessageEvent.send_event	8
-XClientMessageEvent.display	12
-XClientMessageEvent.window	16
-XClientMessageEvent.message_type	20
-XClientMessageEvent.format	24
-XClientMessageEvent.data	28
-XClientMessageEvent	48
-XAnyEvent.type	0
-XAnyEvent.serial	4
-XAnyEvent.send_event	8
-XAnyEvent.display	12
-XAnyEvent.window	16
-XAnyEvent	20
-XkbIndicatorNotifyEvent.type	0
-XkbIndicatorNotifyEvent.serial	4
-XkbIndicatorNotifyEvent.send_event	8
-XkbIndicatorNotifyEvent.display	12
-XkbIndicatorNotifyEvent.time	16
-XkbIndicatorNotifyEvent.xkb_type	20
-XkbIndicatorNotifyEvent.device	24
-XkbIndicatorNotifyEvent.changed	28
-XkbIndicatorNotifyEvent.state	32
-XkbIndicatorNotifyEvent	36
-XIMPreeditStateNotifyCallbackStruct.state	0
-XIMPreeditStateNotifyCallbackStruct	4
-XkbAnyEvent.type	0
-XkbAnyEvent.serial	4
-XkbAnyEvent.send_event	8
-XkbAnyEvent.display	12
-XkbAnyEvent.time	16
-XkbAnyEvent.xkb_type	20
-XkbAnyEvent.device	24
-XkbAnyEvent	28
-XMotionEvent.type	0
-XMotionEvent.serial	4
-XMotionEvent.send_event	8
-XMotionEvent.display	12
-XMotionEvent.window	16
-XMotionEvent.root	20
-XMotionEvent.subwindow	24
-XMotionEvent.time	28
-XMotionEvent.x	32
-XMotionEvent.y	36
-XMotionEvent.x_root	40
-XMotionEvent.y_root	44
-XMotionEvent.state	48
-XMotionEvent.is_hint	52
-XMotionEvent.same_screen	56
-XMotionEvent	60
-XIMHotKeyTriggers.num_hot_key	0
-XIMHotKeyTriggers.key	4
-XIMHotKeyTriggers	8
-XIMStyles.count_styles	0
-XIMStyles.supported_styles	4
-XIMStyles	8
-XkbExtensionDeviceNotifyEvent.type	0
-XkbExtensionDeviceNotifyEvent.serial	4
-XkbExtensionDeviceNotifyEvent.send_event	8
-XkbExtensionDeviceNotifyEvent.display	12
-XkbExtensionDeviceNotifyEvent.time	16
-XkbExtensionDeviceNotifyEvent.xkb_type	20
-XkbExtensionDeviceNotifyEvent.device	24
-XkbExtensionDeviceNotifyEvent.reason	28
-XkbExtensionDeviceNotifyEvent.supported	32
-XkbExtensionDeviceNotifyEvent.unsupported	36
-XkbExtensionDeviceNotifyEvent.first_btn	40
-XkbExtensionDeviceNotifyEvent.num_btns	44
-XkbExtensionDeviceNotifyEvent.leds_defined	48
-XkbExtensionDeviceNotifyEvent.led_state	52
-XkbExtensionDeviceNotifyEvent.led_class	56
-XkbExtensionDeviceNotifyEvent.led_id	60
-XkbExtensionDeviceNotifyEvent	64
-XwcTextItem.chars	0
-XwcTextItem.nchars	4
-XwcTextItem.delta	8
-XwcTextItem.font_set	12
-XwcTextItem	16
-XClassHint.res_name	0
-XClassHint.res_class	4
-XClassHint	8
-XChar2b.byte1	0
-XChar2b.byte2	1
-XChar2b	2
-XSetWindowAttributes.background_pixmap	0
-XSetWindowAttributes.background_pixel	4
-XSetWindowAttributes.border_pixmap	8
-XSetWindowAttributes.border_pixel	12
-XSetWindowAttributes.bit_gravity	16
-XSetWindowAttributes.win_gravity	20
-XSetWindowAttributes.backing_store	24
-XSetWindowAttributes.backing_planes	28
-XSetWindowAttributes.backing_pixel	32
-XSetWindowAttributes.save_under	36
-XSetWindowAttributes.event_mask	40
-XSetWindowAttributes.do_not_propagate_mask	44
-XSetWindowAttributes.override_redirect	48
-XSetWindowAttributes.colormap	52
-XSetWindowAttributes.cursor	56
-XSetWindowAttributes	60
-XRenderPictFormat.id	0
-XRenderPictFormat.type	4
-XRenderPictFormat.depth	8
-XRenderPictFormat.direct	12
-XRenderPictFormat.colormap	28
-XRenderPictFormat	32
-XReparentEvent.type	0
-XReparentEvent.serial	4
-XReparentEvent.send_event	8
-XReparentEvent.display	12
-XReparentEvent.event	16
-XReparentEvent.window	20
-XReparentEvent.parent	24
-XReparentEvent.x	28
-XReparentEvent.y	32
-XReparentEvent.override_redirect	36
-XReparentEvent	40
-XCirculateRequestEvent.type	0
-XCirculateRequestEvent.serial	4
-XCirculateRequestEvent.send_event	8
-XCirculateRequestEvent.display	12
-XCirculateRequestEvent.parent	16
-XCirculateRequestEvent.window	20
-XCirculateRequestEvent.place	24
-XCirculateRequestEvent	28
-XImage.width	0
-XImage.height	4
-XImage.xoffset	8
-XImage.format	12
-XImage.data	16
-XImage.byte_order	20
-XImage.bitmap_unit	24
-XImage.bitmap_bit_order	28
-XImage.bitmap_pad	32
-XImage.depth	36
-XImage.bytes_per_line	40
-XImage.bits_per_pixel	44
-XImage.red_mask	48
-XImage.green_mask	52
-XImage.blue_mask	56
-XImage.obdata	60
-XImage.f.create_image	64
-XImage.f.destroy_image	68
-XImage.f.get_pixel	72
-XImage.f.put_pixel	76
-XImage.f.sub_image	80
-XImage.f.add_pixel	84
-XImage	88
-XKeyEvent.type	0
-XKeyEvent.serial	4
-XKeyEvent.send_event	8
-XKeyEvent.display	12
-XKeyEvent.window	16
-XKeyEvent.root	20
-XKeyEvent.subwindow	24
-XKeyEvent.time	28
-XKeyEvent.x	32
-XKeyEvent.y	36
-XKeyEvent.x_root	40
-XKeyEvent.y_root	44
-XKeyEvent.state	48
-XKeyEvent.keycode	52
-XKeyEvent.same_screen	56
-XKeyEvent	60
-XkbActionMessageEvent.type	0
-XkbActionMessageEvent.serial	4
-XkbActionMessageEvent.send_event	8
-XkbActionMessageEvent.display	12
-XkbActionMessageEvent.time	16
-XkbActionMessageEvent.xkb_type	20
-XkbActionMessageEvent.device	24
-XkbActionMessageEvent.keycode	28
-XkbActionMessageEvent.press	32
-XkbActionMessageEvent.key_event_follows	36
-XkbActionMessageEvent.group	40
-XkbActionMessageEvent.mods	44
-XkbActionMessageEvent.message	48
-XkbActionMessageEvent	56
-XdbeSwapInfo.swap_window	0
-XdbeSwapInfo.swap_action	4
-XdbeSwapInfo	8
-XTextItem.chars	0
-XTextItem.nchars	4
-XTextItem.delta	8
-XTextItem.font	12
-XTextItem	16
-XModifierKeymap.max_keypermod	0
-XModifierKeymap.modifiermap	4
-XModifierKeymap	8
-XCharStruct.lbearing	0
-XCharStruct.rbearing	2
-XCharStruct.width	4
-XCharStruct.ascent	6
-XCharStruct.descent	8
-XCharStruct.attributes	10
-XCharStruct	12
-XGravityEvent.type	0
-XGravityEvent.serial	4
-XGravityEvent.send_event	8
-XGravityEvent.display	12
-XGravityEvent.event	16
-XGravityEvent.window	20
-XGravityEvent.x	24
-XGravityEvent.y	28
-XGravityEvent	32
-Visual.ext_data	0
-Visual.visualid	4
-Visual.class	8
-Visual.red_mask	12
-Visual.green_mask	16
-Visual.blue_mask	20
-Visual.bits_per_rgb	24
-Visual.map_entries	28
-Visual	32
-XOMOrientation.num_orientation	0
-XOMOrientation.orientation	4
-XOMOrientation	8
-XkbAccessXNotifyEvent.type	0
-XkbAccessXNotifyEvent.serial	4
-XkbAccessXNotifyEvent.send_event	8
-XkbAccessXNotifyEvent.display	12
-XkbAccessXNotifyEvent.time	16
-XkbAccessXNotifyEvent.xkb_type	20
-XkbAccessXNotifyEvent.device	24
-XkbAccessXNotifyEvent.detail	28
-XkbAccessXNotifyEvent.keycode	32
-XkbAccessXNotifyEvent.sk_delay	36
-XkbAccessXNotifyEvent.debounce_delay	40
-XkbAccessXNotifyEvent	44
-XWindowAttributes.x	0
-XWindowAttributes.y	4
-XWindowAttributes.width	8
-XWindowAttributes.height	12
-XWindowAttributes.border_width	16
-XWindowAttributes.depth	20
-XWindowAttributes.visual	24
-XWindowAttributes.root	28
-XWindowAttributes.class	32
-XWindowAttributes.bit_gravity	36
-XWindowAttributes.win_gravity	40
-XWindowAttributes.backing_store	44
-XWindowAttributes.backing_planes	48
-XWindowAttributes.backing_pixel	52
-XWindowAttributes.save_under	56
-XWindowAttributes.colormap	60
-XWindowAttributes.map_installed	64
-XWindowAttributes.map_state	68
-XWindowAttributes.all_event_masks	72
-XWindowAttributes.your_event_mask	76
-XWindowAttributes.do_not_propagate_mask	80
-XWindowAttributes.override_redirect	84
-XWindowAttributes.screen	88
-XWindowAttributes	92
-XmbTextItem.chars	0
-XmbTextItem.nchars	4
-XmbTextItem.delta	8
-XmbTextItem.font_set	12
-XmbTextItem	16
-XMappingEvent.type	0
-XMappingEvent.serial	4
-XMappingEvent.send_event	8
-XMappingEvent.display	12
-XMappingEvent.window	16
-XMappingEvent.request	20
-XMappingEvent.first_keycode	24
-XMappingEvent.count	28
-XMappingEvent	32
-XSizeHints.flags	0
-XSizeHints.x	4
-XSizeHints.y	8
-XSizeHints.width	12
-XSizeHints.height	16
-XSizeHints.min_width	20
-XSizeHints.min_height	24
-XSizeHints.max_width	28
-XSizeHints.max_height	32
-XSizeHints.width_inc	36
-XSizeHints.height_inc	40
-XSizeHints.min_aspect.x	44
-XSizeHints.min_aspect.y	48
-XSizeHints.max_aspect.x	52
-XSizeHints.max_aspect.y	56
-XSizeHints.base_width	60
-XSizeHints.base_height	64
-XSizeHints.win_gravity	68
-XSizeHints	72
-XUnmapEvent.type	0
-XUnmapEvent.serial	4
-XUnmapEvent.send_event	8
-XUnmapEvent.display	12
-XUnmapEvent.event	16
-XUnmapEvent.window	20
-XUnmapEvent.from_configure	24
-XUnmapEvent	28
-awtImageData.Depth	0
-awtImageData.wsImageFormat	4
-awtImageData.clrdata	16
-awtImageData.convert	48
-awtImageData	304
-XkbStateNotifyEvent.type	0
-XkbStateNotifyEvent.serial	4
-XkbStateNotifyEvent.send_event	8
-XkbStateNotifyEvent.display	12
-XkbStateNotifyEvent.time	16
-XkbStateNotifyEvent.xkb_type	20
-XkbStateNotifyEvent.device	24
-XkbStateNotifyEvent.changed	28
-XkbStateNotifyEvent.group	32
-XkbStateNotifyEvent.base_group	36
-XkbStateNotifyEvent.latched_group	40
-XkbStateNotifyEvent.locked_group	44
-XkbStateNotifyEvent.mods	48
-XkbStateNotifyEvent.base_mods	52
-XkbStateNotifyEvent.latched_mods	56
-XkbStateNotifyEvent.locked_mods	60
-XkbStateNotifyEvent.compat_state	64
-XkbStateNotifyEvent.grab_mods	68
-XkbStateNotifyEvent.compat_grab_mods	69
-XkbStateNotifyEvent.lookup_mods	70
-XkbStateNotifyEvent.compat_lookup_mods	71
-XkbStateNotifyEvent.ptr_buttons	72
-XkbStateNotifyEvent.keycode	76
-XkbStateNotifyEvent.event_type	77
-XkbStateNotifyEvent.req_major	78
-XkbStateNotifyEvent.req_minor	79
-XkbStateNotifyEvent	80
-XExposeEvent.type	0
-XExposeEvent.serial	4
-XExposeEvent.send_event	8
-XExposeEvent.display	12
-XExposeEvent.window	16
-XExposeEvent.x	20
-XExposeEvent.y	24
-XExposeEvent.width	28
-XExposeEvent.height	32
-XExposeEvent.count	36
-XExposeEvent	40
-XkbMapNotifyEvent.type	0
-XkbMapNotifyEvent.serial	4
-XkbMapNotifyEvent.send_event	8
-XkbMapNotifyEvent.display	12
-XkbMapNotifyEvent.time	16
-XkbMapNotifyEvent.xkb_type	20
-XkbMapNotifyEvent.device	24
-XkbMapNotifyEvent.changed	28
-XkbMapNotifyEvent.flags	32
-XkbMapNotifyEvent.first_type	36
-XkbMapNotifyEvent.num_types	40
-XkbMapNotifyEvent.min_key_code	44
-XkbMapNotifyEvent.max_key_code	45
-XkbMapNotifyEvent.first_key_sym	46
-XkbMapNotifyEvent.first_key_act	47
-XkbMapNotifyEvent.first_key_behavior	48
-XkbMapNotifyEvent.first_key_explicit	49
-XkbMapNotifyEvent.first_modmap_key	50
-XkbMapNotifyEvent.first_vmodmap_key	51
-XkbMapNotifyEvent.num_key_syms	52
-XkbMapNotifyEvent.num_key_acts	56
-XkbMapNotifyEvent.num_key_behaviors	60
-XkbMapNotifyEvent.num_key_explicit	64
-XkbMapNotifyEvent.num_modmap_keys	68
-XkbMapNotifyEvent.num_vmodmap_keys	72
-XkbMapNotifyEvent.vmods	76
-XkbMapNotifyEvent	80
-XGCValues.function	0
-XGCValues.plane_mask	4
-XGCValues.foreground	8
-XGCValues.background	12
-XGCValues.line_width	16
-XGCValues.line_style	20
-XGCValues.cap_style	24
-XGCValues.join_style	28
-XGCValues.fill_style	32
-XGCValues.fill_rule	36
-XGCValues.arc_mode	40
-XGCValues.tile	44
-XGCValues.stipple	48
-XGCValues.ts_x_origin	52
-XGCValues.ts_y_origin	56
-XGCValues.font	60
-XGCValues.subwindow_mode	64
-XGCValues.graphics_exposures	68
-XGCValues.clip_x_origin	72
-XGCValues.clip_y_origin	76
-XGCValues.clip_mask	80
-XGCValues.dash_offset	84
-XGCValues.dashes	88
-XGCValues	92
-XFocusChangeEvent.type	0
-XFocusChangeEvent.serial	4
-XFocusChangeEvent.send_event	8
-XFocusChangeEvent.display	12
-XFocusChangeEvent.window	16
-XFocusChangeEvent.mode	20
-XFocusChangeEvent.detail	24
-XFocusChangeEvent	28
-XPixmapFormatValues.depth	0
-XPixmapFormatValues.bits_per_pixel	4
-XPixmapFormatValues.scanline_pad	8
-XPixmapFormatValues	12
-XMapEvent.type	0
-XMapEvent.serial	4
-XMapEvent.send_event	8
-XMapEvent.display	12
-XMapEvent.event	16
-XMapEvent.window	20
-XMapEvent.override_redirect	24
-XMapEvent	28
-XkbBellNotifyEvent.type	0
-XkbBellNotifyEvent.serial	4
-XkbBellNotifyEvent.send_event	8
-XkbBellNotifyEvent.display	12
-XkbBellNotifyEvent.time	16
-XkbBellNotifyEvent.xkb_type	20
-XkbBellNotifyEvent.device	24
-XkbBellNotifyEvent.percent	28
-XkbBellNotifyEvent.pitch	32
-XkbBellNotifyEvent.duration	36
-XkbBellNotifyEvent.bell_class	40
-XkbBellNotifyEvent.bell_id	44
-XkbBellNotifyEvent.name	48
-XkbBellNotifyEvent.window	52
-XkbBellNotifyEvent.event_only	56
-XkbBellNotifyEvent	60
-XIMStringConversionText.length	0
-XIMStringConversionText.feedback	4
-XIMStringConversionText.encoding_is_wchar	8
-XIMStringConversionText.string	12
-XIMStringConversionText	16
-XKeyboardState.key_click_percent	0
-XKeyboardState.bell_percent	4
-XKeyboardState.bell_pitch	8
-XKeyboardState.bell_duration	12
-XKeyboardState.led_mask	16
-XKeyboardState.global_auto_repeat	20
-XKeyboardState.auto_repeats	24
-XKeyboardState	56
-XkbEvent.type	0
-XkbEvent.any	0
-XkbEvent.new_kbd	0
-XkbEvent.map	0
-XkbEvent.state	0
-XkbEvent.ctrls	0
-XkbEvent.indicators	0
-XkbEvent.names	0
-XkbEvent.compat	0
-XkbEvent.bell	0
-XkbEvent.message	0
-XkbEvent.accessx	0
-XkbEvent.device	0
-XkbEvent.core	0
-XkbEvent	96
-XPoint.x	0
-XPoint.y	2
-XPoint	4
-XSegment.x1	0
-XSegment.y1	2
-XSegment.x2	4
-XSegment.y2	6
-XSegment	8
-XIconSize.min_width	0
-XIconSize.min_height	4
-XIconSize.max_width	8
-XIconSize.max_height	12
-XIconSize.width_inc	16
-XIconSize.height_inc	20
-XIconSize	24
-XIMCallback.client_data	0
-XIMCallback.callback	4
-XIMCallback	8
-XConfigureEvent.type	0
-XConfigureEvent.serial	4
-XConfigureEvent.send_event	8
-XConfigureEvent.display	12
-XConfigureEvent.event	16
-XConfigureEvent.window	20
-XConfigureEvent.x	24
-XConfigureEvent.y	28
-XConfigureEvent.width	32
-XConfigureEvent.height	36
-XConfigureEvent.border_width	40
-XConfigureEvent.above	44
-XConfigureEvent.override_redirect	48
-XConfigureEvent	52
-XRectangle.x	0
-XRectangle.y	2
-XRectangle.width	4
-XRectangle.height	6
-XRectangle	8
-XkbNamesNotifyEvent.type	0
-XkbNamesNotifyEvent.serial	4
-XkbNamesNotifyEvent.send_event	8
-XkbNamesNotifyEvent.display	12
-XkbNamesNotifyEvent.time	16
-XkbNamesNotifyEvent.xkb_type	20
-XkbNamesNotifyEvent.device	24
-XkbNamesNotifyEvent.changed	28
-XkbNamesNotifyEvent.first_type	32
-XkbNamesNotifyEvent.num_types	36
-XkbNamesNotifyEvent.first_lvl	40
-XkbNamesNotifyEvent.num_lvls	44
-XkbNamesNotifyEvent.num_aliases	48
-XkbNamesNotifyEvent.num_radio_groups	52
-XkbNamesNotifyEvent.changed_vmods	56
-XkbNamesNotifyEvent.changed_groups	60
-XkbNamesNotifyEvent.changed_indicators	64