#
# Copyright (c) 2002, 2009, 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.
#

# Define public interface.

SUNWprivate_1.1 {
        global:
        JNI_OnLoad;
        Java_sun_awt_X11_XlibWrapper_copyIntArray;
        Java_sun_awt_X11_XlibWrapper_copyLongArray;
        Java_sun_awt_X11_XlibWrapper_getAddress;
        Java_sun_awt_X11_XlibWrapper_XConvertSelection;
        Java_sun_awt_X11_XlibWrapper_XSetSelectionOwner;
        Java_sun_awt_X11_XlibWrapper_XGetSelectionOwner;
        Java_sun_awt_X11_XlibWrapper_XGetAtomName;
        Java_sun_awt_X11_XlibWrapper_XMaxRequestSize;
        Java_sun_awt_X11_XlibWrapper_XReparentWindow;
        Java_sun_awt_X11_XlibWrapper_XAllocSizeHints;
        Java_sun_awt_X11_XlibWrapper_XAllocWMHints;
        Java_sun_awt_X11_XlibWrapper_XSetMinMaxHints;
        Java_sun_awt_X11_XlibWrapper_XGetVisualInfo;
        Java_sun_awt_X11_XlibWrapper_XOpenDisplay;
        Java_sun_awt_X11_XlibWrapper_XCloseDisplay;
        Java_sun_awt_X11_XlibWrapper_XDisplayString;
        Java_sun_awt_X11_XlibWrapper_XSetCloseDownMode;
        Java_sun_awt_X11_XlibWrapper_XCreateWindow;
        Java_sun_awt_X11_XlibWrapper_XMapWindow;
        Java_sun_awt_X11_XlibWrapper_XMapRaised;
        Java_sun_awt_X11_XlibWrapper_XUnmapWindow;
        Java_sun_awt_X11_XlibWrapper_XSelectInput;
        Java_sun_awt_X11_XlibWrapper_XNextEvent;
        Java_sun_awt_X11_XlibWrapper_XMaskEvent;
        Java_sun_awt_X11_XlibWrapper_XWindowEvent;
        Java_sun_awt_X11_XlibWrapper_XFilterEvent;
        Java_sun_awt_X11_XlibWrapper_XSupportsLocale;
        Java_sun_awt_X11_XlibWrapper_XSetLocaleModifiers;
        Java_sun_awt_X11_XlibWrapper_XPeekEvent;
        Java_sun_awt_X11_XlibWrapper_DefaultScreen;
	Java_sun_awt_X11_XlibWrapper_ScreenOfDisplay;
	Java_sun_awt_X11_XlibWrapper_DoesBackingStore;
        Java_sun_awt_X11_XlibWrapper_RootWindow;
        Java_sun_awt_X11_XlibWrapper_DisplayHeight;
        Java_sun_awt_X11_XlibWrapper_DisplayWidthMM;
        Java_sun_awt_X11_XlibWrapper_DisplayWidth;
        Java_sun_awt_X11_XlibWrapper_DisplayHeightMM;
        Java_sun_awt_X11_XlibWrapper_ScreenCount;
        Java_sun_awt_X11_XlibWrapper_XMoveResizeWindow;
        Java_sun_awt_X11_XlibWrapper_XResizeWindow;
        Java_sun_awt_X11_XlibWrapper_XMoveWindow;
        Java_sun_awt_X11_XlibWrapper_XGetWindowAttributes;
        Java_sun_awt_X11_XlibWrapper_XGetGeometry;
        Java_sun_awt_X11_XlibWrapper_XGrabPointer;
        Java_sun_awt_X11_XlibWrapper_XUngrabPointer;
        Java_sun_awt_X11_XlibWrapper_XGrabKeyboard;
        Java_sun_awt_X11_XlibWrapper_XUngrabKeyboard;
        Java_sun_awt_X11_XlibWrapper_XSetWindowBackground;
        Java_sun_awt_X11_XlibWrapper_XFlush;
        Java_sun_awt_X11_XlibWrapper_XSync;
        Java_sun_awt_X11_XlibWrapper_XEventsQueued;
        Java_sun_awt_X11_XlibWrapper_XRaiseWindow;
        Java_sun_awt_X11_XlibWrapper_XLowerWindow;
        Java_sun_awt_X11_XlibWrapper_XRestackWindows;
        Java_sun_awt_X11_XlibWrapper_XSetInputFocus;
        Java_sun_awt_X11_XlibWrapper_XSetInputFocus2;
        Java_sun_awt_X11_XlibWrapper_XGetInputFocus;
        Java_sun_awt_X11_XlibWrapper_XDestroyWindow;
        Java_sun_awt_X11_XlibWrapper_XTranslateCoordinates;
        Java_sun_awt_X11_XlibWrapper_XCreateFontCursor;
        Java_sun_awt_X11_XlibWrapper_XSetTransientFor;
        Java_sun_awt_X11_XlibWrapper_XSetWMHints;
        Java_sun_awt_X11_XlibWrapper_XGetWMHints;
        Java_sun_awt_X11_XlibWrapper_XShapeQueryExtension;
        Java_sun_awt_X11_XlibWrapper_SetRectangularShape;
        Java_sun_awt_X11_XlibWrapper_SetBitmapShape;
        Java_sun_awt_X11_XlibWrapper_XConfigureWindow;
        Java_sun_awt_X11_XlibWrapper_SetZOrder;
        Java_sun_awt_X11_XToolkit_initIDs;
        Java_sun_awt_X11_XWindow_getNativeColor;
        Java_sun_awt_X11_XWindow_getWMInsets;
        Java_sun_awt_X11_XWindow_getTopWindow;
        Java_sun_awt_X11_XWindow_getWindowBounds;
        Java_sun_awt_X11_XWindow_setSizeHints;
        Java_sun_awt_X11_XWindow_getAWTKeyCodeForKeySym;
        Java_sun_awt_X11_XWindow_getKeySymForAWTKeyCode;
        Java_sun_awt_X11_XToolkit_nativeLoadSystemColors;
        Java_sun_awt_X11_XToolkit_awt_1toolkit_1init;
        Java_sun_awt_X11_XToolkit_awt_1output_1flush;
        Java_sun_awt_X11_XToolkit_wakeup_1poll;
        Java_java_awt_Cursor_finalizeImpl;
        Java_sun_awt_X11_XlibWrapper_InternAtom;
        Java_sun_awt_X11_XlibWrapper_GetProperty;
        Java_sun_awt_X11_XlibWrapper_SetProperty;
        Java_sun_awt_X11_XlibWrapper_XGetDefault;
        Java_sun_awt_X11_XlibWrapper_XGetPointerMapping;
        Java_sun_awt_X11_XlibWrapper_XScreenNumberOfScreen;
        Java_sun_awt_X11_XlibWrapper_getScreenOfWindow;
        Java_sun_awt_X11_XlibWrapper_XIconifyWindow;
        Java_sun_awt_X11_XlibWrapper_XBell;
        Java_sun_awt_X11_XlibWrapper_XChangePropertyImpl;
        Java_sun_awt_X11_XlibWrapper_XChangePropertyS;
        Java_sun_awt_X11_XlibWrapper_XGetWindowProperty;
        Java_sun_awt_X11_XlibWrapper_getStringBytes;
        Java_sun_awt_X11_XlibWrapper_XFree;
        Java_sun_awt_X11_XlibWrapper_ServerVendor;
        Java_sun_awt_X11_XlibWrapper_VendorRelease;
        Java_sun_awt_X11_XlibWrapper_IsXsunKPBehavior;
        Java_sun_awt_X11_XlibWrapper_IsSunKeyboard;
        Java_sun_awt_X11_XlibWrapper_IsKanaKeyboard;
        Java_sun_awt_X11_XlibWrapper_SetToolkitErrorHandler;
        Java_sun_awt_X11_XlibWrapper_XSetErrorHandler;
        Java_sun_awt_X11_XlibWrapper_CallErrorHandler;
        Java_sun_awt_X11_XlibWrapper_PrintXErrorEvent;
        Java_sun_awt_X11_XlibWrapper_XInternAtoms;
        Java_sun_awt_X11_XlibWrapper_XChangeWindowAttributes;
        Java_sun_awt_X11_XlibWrapper_XDeleteProperty;
        Java_sun_awt_X11_XlibWrapper_XSetWMNormalHints;
        Java_sun_awt_X11_XlibWrapper_XGetWMNormalHints;
        Java_sun_awt_X11_XlibWrapper_XSendEvent;
        Java_sun_awt_X11_XlibWrapper_XQueryTree;
        Java_sun_awt_X11_XlibWrapper_memcpy;
        Java_sun_awt_X11_XlibWrapper_XdbeQueryExtension;
        Java_sun_awt_X11_XlibWrapper_XQueryExtension;
        Java_sun_awt_X11_XlibWrapper_IsKeypadKey;
        Java_sun_awt_X11_XlibWrapper_XdbeAllocateBackBufferName;
        Java_sun_awt_X11_XlibWrapper_XdbeDeallocateBackBufferName;
        Java_sun_awt_X11_XlibWrapper_XdbeSwapBuffers;
        Java_sun_awt_X11_XlibWrapper_XdbeBeginIdiom;
        Java_sun_awt_X11_XlibWrapper_XdbeEndIdiom;
        Java_sun_awt_X11_XDesktopPeer_init;
        Java_sun_awt_X11_XDesktopPeer_gnome_1url_1show;
        Java_sun_awt_X11_XRobotPeer_getRGBPixelsImpl;
        Java_sun_awt_X11_XRobotPeer_keyPressImpl;
        Java_sun_awt_X11_XRobotPeer_keyReleaseImpl;
        Java_sun_awt_X11_XRobotPeer_mouseMoveImpl;
        Java_sun_awt_X11_XRobotPeer_mousePressImpl;
        Java_sun_awt_X11_XRobotPeer_mouseReleaseImpl;
        Java_sun_awt_X11_XRobotPeer_mouseWheelImpl;
        Java_sun_awt_X11_XRobotPeer_setup;
        Java_sun_awt_X11_XToolkit_getNumberOfButtonsImpl;
        Java_java_awt_Component_initIDs;
        Java_java_awt_Container_initIDs;
        Java_java_awt_Button_initIDs;
        Java_java_awt_Scrollbar_initIDs;
        Java_java_awt_Window_initIDs;
        Java_java_awt_Frame_initIDs;
	Java_sun_awt_SunToolkit_closeSplashScreen;
        Java_sun_awt_UNIXToolkit_check_1gtk;
        Java_sun_awt_UNIXToolkit_load_1gtk;
        Java_sun_awt_UNIXToolkit_unload_1gtk;
        Java_sun_awt_UNIXToolkit_load_1stock_1icon;
        Java_sun_awt_UNIXToolkit_load_1gtk_1icon;
        Java_sun_awt_UNIXToolkit_nativeSync;
        Java_sun_awt_UNIXToolkit_gtkCheckVersionImpl;
        Java_java_awt_AWTEvent_initIDs;
        Java_java_awt_event_InputEvent_initIDs;
        Java_java_awt_event_KeyEvent_initIDs;
        Java_java_awt_MenuComponent_initIDs;
        Java_java_awt_Cursor_initIDs;
        Java_java_awt_MenuItem_initIDs;
        Java_java_awt_Menu_initIDs;
        Java_java_awt_TextArea_initIDs;
        Java_java_awt_Checkbox_initIDs;
        Java_java_awt_ScrollPane_initIDs;
        Java_java_awt_TextField_initIDs;
        Java_java_awt_TrayIcon_initIDs;
        Java_sun_font_FontConfigManager_getFontConfig;
        Java_sun_font_FontConfigManager_getFontConfigAASettings;
        Java_sun_font_FontConfigManager_getFontConfigVersion;
	Java_sun_awt_X11FontManager_getFontPath;
	Java_sun_font_X11FontManager_setNativeFontPath;
        Java_sun_awt_X11GraphicsEnvironment_initDisplay;
        Java_sun_awt_X11GraphicsEnvironment_initGLX;
        Java_sun_awt_X11GraphicsEnvironment_checkShmExt;
        Java_sun_awt_X11GraphicsEnvironment_getNumScreens;
        Java_sun_awt_X11GraphicsEnvironment_getDefaultScreenNum;
        Java_sun_awt_X11GraphicsEnvironment_pRunningXinerama;
        Java_sun_awt_X11GraphicsEnvironment_getXineramaCenterPoint;
        Java_sun_awt_X11GraphicsEnvironment_getDisplayString;
#        Java_sun_awt_X11GraphicsEnvironment_getNativeFonts;
        Java_sun_awt_X11GraphicsDevice_initIDs;
        Java_sun_awt_X11GraphicsDevice_getConfigVisualId;
        Java_sun_awt_X11GraphicsDevice_getConfigDepth;
        Java_sun_awt_X11GraphicsDevice_getNumConfigs;
        Java_sun_awt_X11GraphicsDevice_getConfigColormap;
        Java_sun_awt_X11GraphicsDevice_isDBESupported;
        Java_sun_awt_X11GraphicsDevice_getDisplay;
        Java_sun_awt_X11GraphicsDevice_getDoubleBufferVisuals;
        Java_sun_awt_X11GraphicsDevice_initXrandrExtension;
        Java_sun_awt_X11GraphicsDevice_enterFullScreenExclusive;
        Java_sun_awt_X11GraphicsDevice_exitFullScreenExclusive;
        Java_sun_awt_X11GraphicsDevice_getCurrentDisplayMode;
        Java_sun_awt_X11GraphicsDevice_enumDisplayModes;
        Java_sun_awt_X11GraphicsDevice_configDisplayMode;
        Java_sun_awt_X11GraphicsDevice_resetNativeData;
        Java_sun_awt_X11GraphicsConfig_initIDs;
        Java_sun_awt_X11GraphicsConfig_getXResolution;
        Java_sun_awt_X11GraphicsConfig_getYResolution;
        Java_sun_awt_X11GraphicsConfig_init;
        Java_sun_awt_X11GraphicsConfig_dispose;
        Java_sun_awt_X11GraphicsConfig_makeColorModel;
        Java_sun_awt_X11GraphicsConfig_pGetBounds;
        Java_sun_awt_X11GraphicsConfig_createBackBuffer;
	Java_sun_awt_X11GraphicsConfig_destroyBackBuffer;
	Java_sun_awt_X11GraphicsConfig_swapBuffers;
	Java_sun_awt_X11GraphicsConfig_isTranslucencyCapable;
        Java_java_awt_Insets_initIDs;
        Java_java_awt_KeyboardFocusManager_initIDs;
        Java_java_awt_Font_initIDs;
        # libfontmanager entry points
        AWTIsHeadless;
	AWTCountFonts;
        AWTLoadFont;
        AWTFreeFont;
        AWTFontAscent;
        AWTFontDescent;
        AWTFontMinByte1;
        AWTFontMaxByte1;
        AWTFontMinCharOrByte2;
        AWTFontMaxCharOrByte2;
        AWTFontDefaultChar;
        AWTFontPerChar;
        AWTFontMaxBounds;
        AWTFontTextExtents16;
        AWTFreeChar;
        AWTFontGenerateImage;
        AWTCharAdvance;
        AWTCharLBearing;
        AWTCharRBearing;
        AWTCharAscent;
        AWTCharDescent;
        AWTDrawGlyphList;
        AccelGlyphCache_RemoveAllCellInfos;

        Java_sun_awt_X11_XToolkit_waitForEvents;
        Java_java_awt_Event_initIDs;
        Java_sun_awt_motif_X11FontMetrics_initIDs;
        Java_sun_awt_motif_X11FontMetrics_init;
        Java_sun_awt_X11_XWindow_x11inputMethodLookupString;
        Java_sun_awt_X11_XWindow_haveCurrentX11InputMethodInstance;
        Java_java_awt_AWTEvent_nativeSetSource;
        Java_java_awt_Dialog_initIDs;
        Java_sun_awt_PlatformFont_initIDs;
        Java_sun_awt_FontDescriptor_initIDs;
        Java_sun_awt_X11_XFontPeer_initIDs;
        Java_sun_awt_motif_X11FontMetrics_getMFCharsWidth;
        Java_sun_awt_X11InputMethod_initIDs;
        Java_sun_awt_X11InputMethod_resetXIC;
        Java_sun_awt_X11InputMethod_disposeXIC;
        Java_sun_awt_X11InputMethod_setCompositionEnabledNative;
        Java_sun_awt_X11InputMethod_isCompositionEnabledNative;
        Java_sun_awt_X11InputMethod_turnoffStatusWindow;
        Java_sun_awt_X11_XInputMethod_openXIMNative;
        Java_sun_awt_X11_XInputMethod_createXICNative;
        Java_sun_awt_X11_XInputMethod_setXICFocusNative;
        Java_sun_awt_X11_XInputMethod_adjustStatusWindow;
        Java_sun_awt_X11_XlibWrapper_XQueryPointer;
        Java_sun_awt_X11_XlibWrapper_XFreeCursor;
        Java_sun_awt_X11_XToolkit_getDefaultXColormap;
        Java_sun_awt_X11_XToolkit_getDefaultScreenData;
        Java_sun_awt_X11_XToolkit_getEnv;
        Java_sun_awt_X11_XlibWrapper_XCreateBitmapFromData;
        Java_sun_awt_X11_XlibWrapper_XFreePixmap;
        Java_sun_awt_X11_XlibWrapper_XAllocColor;
        Java_sun_awt_X11_XlibWrapper_XCreatePixmapCursor;
        Java_sun_awt_X11_XlibWrapper_XQueryBestCursor;
        Java_sun_awt_X11_XlibWrapper_XCreatePixmap;
        Java_sun_awt_X11_XlibWrapper_XCreateImage;
        Java_sun_awt_X11_XlibWrapper_XCreateGC;
        Java_sun_awt_X11_XlibWrapper_XDestroyImage;
        Java_sun_awt_X11_XlibWrapper_XPutImage;
        Java_sun_awt_X11_XlibWrapper_XFreeGC;
        Java_sun_awt_X11_XlibWrapper_XSetWindowBackgroundPixmap;
        Java_sun_awt_X11_XlibWrapper_XClearWindow;
        Java_sun_awt_X11_XlibWrapper_XGetIconSizes;
        Java_sun_awt_X11_XlibWrapper_XKeycodeToKeysym;
        Java_sun_awt_X11_XlibWrapper_XKeysymToKeycode;
	Java_sun_awt_X11_XlibWrapper_XQueryKeymap;
        Java_sun_awt_X11_XlibWrapper_XkbGetEffectiveGroup;
        Java_sun_awt_X11_XlibWrapper_XkbSelectEvents;
        Java_sun_awt_X11_XlibWrapper_XkbSelectEventDetails;
        Java_sun_awt_X11_XlibWrapper_XkbKeycodeToKeysym;
        Java_sun_awt_X11_XlibWrapper_XkbLibraryVersion;
        Java_sun_awt_X11_XlibWrapper_XkbQueryExtension;
        Java_sun_awt_X11_XlibWrapper_XkbGetMap;
        Java_sun_awt_X11_XlibWrapper_XkbGetUpdatedMap;
        Java_sun_awt_X11_XlibWrapper_XkbFreeKeyboard;
        Java_sun_awt_X11_XlibWrapper_XkbTranslateKeyCode;
        Java_sun_awt_X11_XlibWrapper_XGetModifierMapping;
        Java_sun_awt_X11_XlibWrapper_XFreeModifiermap;
        Java_sun_awt_X11_XlibWrapper_XRefreshKeyboardMapping;
        Java_sun_awt_X11_XlibWrapper_XChangeActivePointerGrab;
        Java_sun_awt_X11_XlibWrapper_XNextSecondaryLoopEvent;
        Java_sun_awt_X11_XlibWrapper_ExitSecondaryLoop;
        Java_sun_awt_X11_XlibWrapper_XTextPropertyToStringList;
        Java_sun_awt_X11_XlibWrapper_XGrabServer;
        Java_sun_awt_X11_XlibWrapper_XUngrabServer;
        Java_sun_awt_X11_XlibWrapper_XPutBackEvent;
        Java_sun_awt_X11_XlibWrapper_XConvertCase;
        Java_sun_awt_X11_XlibWrapper_XSynchronize;
        Java_java_awt_FileDialog_initIDs;
        Java_sun_awt_X11_XWindow_initIDs;

        Java_sun_java2d_opengl_OGLContext_getOGLIdString;
        Java_sun_java2d_opengl_OGLMaskFill_maskFill;
        Java_sun_java2d_opengl_OGLRenderer_drawPoly;
        Java_sun_java2d_opengl_OGLRenderQueue_flushBuffer;
        Java_sun_java2d_opengl_OGLSurfaceData_initTexture;
        Java_sun_java2d_opengl_OGLSurfaceData_initFBObject;
        Java_sun_java2d_opengl_OGLSurfaceData_initFlipBackbuffer;
        Java_sun_java2d_opengl_OGLSurfaceData_getTextureID;
        Java_sun_java2d_opengl_OGLSurfaceData_getTextureTarget;
        Java_sun_java2d_opengl_OGLTextRenderer_drawGlyphList;
        Java_sun_java2d_opengl_GLXGraphicsConfig_getGLXConfigInfo;
        Java_sun_java2d_opengl_GLXGraphicsConfig_initConfig;
        Java_sun_java2d_opengl_GLXGraphicsConfig_getOGLCapabilities;
        Java_sun_java2d_opengl_GLXSurfaceData_initOps;
        Java_sun_java2d_opengl_GLXSurfaceData_initPbuffer;

        Java_sun_java2d_x11_X11PMBlitBgLoops_nativeBlitBg;
        Java_sun_java2d_x11_X11PMBlitLoops_nativeBlit;
        Java_sun_java2d_x11_X11PMBlitLoops_updateBitmask;
	Java_sun_java2d_x11_X11Renderer_XFillSpans;
	Java_sun_java2d_x11_X11Renderer_XDrawArc;
	Java_sun_java2d_x11_X11Renderer_XDrawLine;
	Java_sun_java2d_x11_X11Renderer_XDrawOval;
	Java_sun_java2d_x11_X11Renderer_XDrawPoly;
	Java_sun_java2d_x11_X11Renderer_XDrawRect;
	Java_sun_java2d_x11_X11Renderer_XDrawRoundRect;
        Java_sun_java2d_x11_X11Renderer_XDoPath;
	Java_sun_java2d_x11_X11Renderer_XFillArc;
	Java_sun_java2d_x11_X11Renderer_XFillOval;
	Java_sun_java2d_x11_X11Renderer_XFillPoly;
	Java_sun_java2d_x11_X11Renderer_XFillRect;
	Java_sun_java2d_x11_X11Renderer_XFillRoundRect;
        Java_sun_java2d_x11_X11Renderer_devCopyArea;
        Java_sun_java2d_x11_X11SurfaceData_setInvalid;
        Java_sun_java2d_x11_X11SurfaceData_initIDs;
	Java_sun_java2d_x11_X11SurfaceData_isDrawableValid;
        Java_sun_java2d_x11_X11SurfaceData_isDgaAvailable;
	Java_sun_java2d_x11_X11SurfaceData_isShmPMAvailable;
        Java_sun_java2d_x11_X11SurfaceData_initOps;
        Java_sun_java2d_x11_X11SurfaceData_initSurface;
        Java_sun_java2d_x11_X11SurfaceData_flushNativeSurface;
        Java_sun_java2d_x11_X11SurfaceData_XCreateGC;
        Java_sun_java2d_x11_X11SurfaceData_XResetClip;
        Java_sun_java2d_x11_X11SurfaceData_XSetClip;
        Java_sun_java2d_x11_X11SurfaceData_XSetCopyMode;
        Java_sun_java2d_x11_X11SurfaceData_XSetXorMode;
        Java_sun_java2d_x11_X11SurfaceData_XSetForeground;
        Java_sun_java2d_x11_X11SurfaceData_XSetGraphicsExposures;

        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1arrow;
        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1box;
        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1box_1gap;
        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1check;
        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1expander;
        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1extension;
        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1flat_1box;
        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1focus;
        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1handle;
        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1hline;
        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1option;
        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1shadow;
        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1slider;
        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1vline;
        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1background;
        Java_com_sun_java_swing_plaf_gtk_GTKEngine_nativeStartPainting;
        Java_com_sun_java_swing_plaf_gtk_GTKEngine_nativeFinishPainting;
        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1switch_1theme;
        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1get_1gtk_1setting;
        Java_com_sun_java_swing_plaf_gtk_GTKEngine_nativeSetRangeValue;
        Java_com_sun_java_swing_plaf_gtk_GTKStyle_nativeGetXThickness;
        Java_com_sun_java_swing_plaf_gtk_GTKStyle_nativeGetYThickness;
        Java_com_sun_java_swing_plaf_gtk_GTKStyle_nativeGetColorForState;
        Java_com_sun_java_swing_plaf_gtk_GTKStyle_nativeGetClassValue;
        Java_com_sun_java_swing_plaf_gtk_GTKStyle_nativeGetPangoFontName;

	Java_sun_awt_X11_GtkFileDialogPeer_run;
	Java_sun_awt_X11_GtkFileDialogPeer_quit;

	Java_sun_print_CUPSPrinter_initIDs;
	Java_sun_print_CUPSPrinter_getCupsServer;
	Java_sun_print_CUPSPrinter_getCupsPort;
	Java_sun_print_CUPSPrinter_canConnect;	
	Java_sun_print_CUPSPrinter_getMedia;
	Java_sun_print_CUPSPrinter_getPageSizes;

        awt_GetDrawingSurface;
        awt_FreeDrawingSurface;
        awt_Unlock;
        awt_Lock;
        awt_GetComponent;

        # Java Plugin
        # This is in awt_LoadLibrary.c and falls through to libmawt.
        # Evidently plugin needs this for backward compatability.
        getAwtLockFunctions;
        getAwtData;
        getAwtDisplay;
        #XAWT entry point for CDE
        Java_sun_awt_motif_XsessionWMcommand;
        Java_sun_awt_motif_XsessionWMcommand_New;

        local:
                *;
};
