DataMuseum.dk

Presents historical artifacts from the history of:

Rational R1000/400 Tapes

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about Rational R1000/400 Tapes

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download
Index: ┃ T V

⟦15b57654f⟧ TextFile

    Length: 116049 (0x1c551)
    Types: TextFile
    Names: »V«

Derivation

└─⟦85b835f43⟧ Bits:30000549 8mm tape, Rational 1000, Xlib rev 6.00
    └─ ⟦0c20f784e⟧ »DATA« 
        └─⟦1abbe589f⟧ 
            └─⟦059497ac5⟧ 
                └─⟦this⟧ 

TextFile

with Xlbt_Arithmetic;  
use Xlbt_Arithmetic;  
with Xlbt_Basic3;  
use Xlbt_Basic3;  
with Xlbt_Color;  
use Xlbt_Color;  
with Xlbt_Gc;  
use Xlbt_Gc;  
with Xlbt_Grab;  
use Xlbt_Grab;  
with Xlbt_Graphics;  
use Xlbt_Graphics;  
with Xlbt_Host;  
use Xlbt_Host;  
with Xlbt_Image;  
use Xlbt_Image;  
with Xlbt_Input_Focus;  
use Xlbt_Input_Focus;  
with Xlbt_Key;  
use Xlbt_Key;  
with Xlbt_Keyboard;  
use Xlbt_Keyboard;  
with Xlbt_Misc;  
use Xlbt_Misc;  
with Xlbt_Pointer;  
use Xlbt_Pointer;  
with Xlbt_Screen_Saver;  
use Xlbt_Screen_Saver;  
with Xlbt_Window4;  
use Xlbt_Window4;

--/ if Record_Rep_Clauses then
--// with Xlbmt_Parameters;
--// use Xlbmt_Parameters;
--/ end if;
with Xlbmt_Network_Types;  
use Xlbmt_Network_Types;

package Xlbt_Request3 is
------------------------------------------------------------------------------
-- X Library Protocol Requests - Full Interface
--
-- Xlbt_Request3 - Record definitions of the protocol request packets
------------------------------------------------------------------------------
-- Copyright 1989 - 1991 by Rational, Santa Clara, California.
-- Copyright 1985 - 1989 by the Massachusetts Institute of Technology
--
--                  All Rights Reserved.
--
-- Permission to use, copy, modify, and distribute this software and its
-- documentation for any purpose and without fee is hereby granted,
-- provided that the above copyright notice(s) appear in all copies and that
-- both that copyright notice(s) and this permission notice appear in
-- supporting documentation, and that the names of MIT or Rational not be
-- used in advertising or publicity pertaining to distribution of the software
-- without specific, written prior permission.
--
-- MIT and Rational disclaim all warranties with regard to this software,
-- including all implied warranties of merchantability and fitness, in no
-- event shall MIT or Rational be liable for any special, indirect or
-- consequential damages or any damages whatsoever resulting from loss of use,
-- data or profits, whether in an action of contract, negligence or other
-- tortious action, arising out of or in connection with the use or performance
-- of this software.
------------------------------------------------------------------------------

--\f

------------------------------------------------------------------------------
-- X Protocol Request Codes
------------------------------------------------------------------------------

    type X_Request_Code is  
       (

        Invalid_Request,            --  0

        Create_Window,              --  1
        Change_Window_Attributes,   --  2
        Get_Window_Attributes,      --  3
        Destroy_Window,             --  4
        Destroy_Subwindows,         --  5
        Change_Save_Set,            --  6
        Reparent_Window,            --  7
        Map_Window,                 --  8
        Map_Subwindows,             --  9
        Unmap_Window,               -- 10
        Unmap_Subwindows,           -- 11
        Configure_Window,           -- 12
        Circulate_Window,           -- 13
        Get_Geometry,               -- 14
        Query_Tree,                 -- 15
        Intern_Atom,                -- 16
        Get_Atom_Name,              -- 17
        Change_Property,            -- 18
        Delete_Property,            -- 19
        Get_Property,               -- 20
        List_Properties,            -- 21
        Set_Selection_Owner,        -- 22
        Get_Selection_Owner,        -- 23
        Convert_Selection,          -- 24
        Send_Event,                 -- 25
        Grab_Pointer,               -- 26
        Ungrab_Pointer,             -- 27
        Grab_Button,                -- 28
        Ungrab_Button,              -- 29
        Change_Active_Pointer_Grab, -- 30
        Grab_Keyboard,              -- 31
        Ungrab_Keyboard,            -- 32
        Grab_Key,                   -- 33
        Ungrab_Key,                 -- 34
        Allow_Events,               -- 35
        Grab_Server,                -- 36
        Ungrab_Server,              -- 37
        Query_Pointer,              -- 38
        Get_Motion_Events,          -- 39
        Translate_Coords,           -- 40
        Warp_Pointer,               -- 41
        Set_Input_Focus,            -- 42
        Get_Input_Focus,            -- 43
        Query_Keymap,               -- 44
        Open_Font,                  -- 45
        Close_Font,                 -- 46
        Query_Font,                 -- 47
        Query_Text_Extents,         -- 48
        List_Fonts,                 -- 49
        List_Fonts_With_Info,       -- 50
        Set_Font_Path,              -- 51
        Get_Font_Path,              -- 52
        Create_Pixmap,              -- 53
        Free_Pixmap,                -- 54
        Create_Gc,                  -- 55
        Change_Gc,                  -- 56
        Copy_Gc,                    -- 57
        Set_Dashes,                 -- 58
        Set_Clip_Rectangles,        -- 59
        Free_Gc,                    -- 60
        Clear_Area,                 -- 61
        Copy_Area,                  -- 62
        Copy_Plane,                 -- 63
        Poly_Point,                 -- 64
        Poly_Line,                  -- 65
        Poly_Segment,               -- 66
        Poly_Rectangle,             -- 67
        Poly_Arc,                   -- 68
        Fill_Poly,                  -- 69
        Poly_Fill_Rectangle,        -- 70
        Poly_Fill_Arc,              -- 71
        Put_Image,                  -- 72
        Get_Image,                  -- 73
        Poly_Text8,                 -- 74
        Poly_Text16,                -- 75
        Image_Text8,                -- 76
        Image_Text16,               -- 77
        Create_Colormap,            -- 78
        Free_Colormap,              -- 79
        Copy_Colormap_And_Free,     -- 80
        Install_Colormap,           -- 81
        Uninstall_Colormap,         -- 82
        List_Installed_Colormaps,   -- 83
        Alloc_Color,                -- 84
        Alloc_Named_Color,          -- 85
        Alloc_Color_Cells,          -- 86
        Alloc_Color_Planes,         -- 87
        Free_Colors,                -- 88
        Store_Colors,               -- 89
        Store_Named_Color,          -- 90
        Query_Colors,               -- 91
        Lookup_Color,               -- 92
        Create_Cursor,              -- 93
        Create_Glyph_Cursor,        -- 94
        Free_Cursor,                -- 95
        Recolor_Cursor,             -- 96
        Query_Best_Size,            -- 97
        Query_Extension,            -- 98
        List_Extensions,            -- 99
        Change_Keyboard_Mapping,    -- 100
        Get_Keyboard_Mapping,       -- 101
        Change_Keyboard_Control,    -- 102
        Get_Keyboard_Control,       -- 103
        Bell,                       -- 104
        Change_Pointer_Control,     -- 105
        Get_Pointer_Control,        -- 106
        Set_Screen_Saver,           -- 107
        Get_Screen_Saver,           -- 108
        Change_Hosts,               -- 109
        List_Hosts,                 -- 110
        Set_Access_Control,         -- 111
        Set_Close_Down_Mode,        -- 112
        Kill_Client,                -- 113
        Rotate_Properties,          -- 114
        Force_Screen_Saver,         -- 115
        Set_Pointer_Mapping,        -- 116
        Get_Pointer_Mapping,        -- 117
        Set_Modifier_Mapping,       -- 118
        Get_Modifier_Mapping,       -- 119

        Xr120, Xr121, Xr122, Xr123, Xr124, Xr125, Xr126,

        No_Operation,                -- 127;

        Xr128, Xr129, Xr130, Xr131, Xr132, Xr133, Xr134, Xr135, Xr136, Xr137,  
        Xr138, Xr139, Xr140, Xr141, Xr142, Xr143, Xr144, Xr145, Xr146, Xr147,  
        Xr148, Xr149, Xr150, Xr151, Xr152, Xr153, Xr154, Xr155, Xr156, Xr157,  
        Xr158, Xr159, Xr160, Xr161, Xr162, Xr163, Xr164, Xr165, Xr166, Xr167,  
        Xr168, Xr169, Xr170, Xr171, Xr172, Xr173, Xr174, Xr175, Xr176, Xr177,  
        Xr178, Xr179, Xr180, Xr181, Xr182, Xr183, Xr184, Xr185, Xr186, Xr187,  
        Xr188, Xr189, Xr190, Xr191, Xr192, Xr193, Xr194, Xr195, Xr196, Xr197,  
        Xr198, Xr199, Xr200, Xr201, Xr202, Xr203, Xr204, Xr205, Xr206, Xr207,  
        Xr208, Xr209, Xr210, Xr211, Xr212, Xr213, Xr214, Xr215, Xr216, Xr217,  
        Xr218, Xr219, Xr220, Xr221, Xr222, Xr223, Xr224, Xr225, Xr226, Xr227,  
        Xr228, Xr229, Xr230, Xr231, Xr232, Xr233, Xr234, Xr235, Xr236, Xr237,  
        Xr238, Xr239, Xr240, Xr241, Xr242, Xr243, Xr244, Xr245, Xr246,  
        Xr247, Xr248, Xr249, Xr250, Xr251, Xr252, Xr253, Xr254, Xr255);

--/ if Length_Clauses then
    for X_Request_Code'Size use 8;
--/ end if;
--
    None_X_Request_Code : constant X_Request_Code := X_Request_Code'Val (0);

--\f

------------------------------------------------------------------------------
-- X Protocol Request Packets
------------------------------------------------------------------------------

    type X_Alloc_Color_Request is  
        record  
            Kind     : X_Request_Code;  
            Pad      : U_Char;  
            Length   : U_Short;  
            Colormap : X_Colormap;  
            Red      : U_Short;  
            Green    : U_Short;  
            Blue     : U_Short;  
            Pad2     : U_Short;  
        end record;

--/ if Length_Clauses then
    for X_Alloc_Color_Request'Size use 8 * 4 * 4;
--/ end if;

--\f

    type X_Alloc_Color_Cells_Request is  
        record  
            Kind       : X_Request_Code;  
            Contiguous : X_Boolean_Char;  
            Length     : U_Short;  
            Colormap   : X_Colormap;  
            Colors     : U_Short;  
            Planes     : U_Short;  
        end record;

--/ if Length_Clauses then
    for X_Alloc_Color_Cells_Request'Size use 8 * 4 * 3;
--/ end if;

--\f

    type X_Alloc_Color_Planes_Request is  
        record  
            Kind       : X_Request_Code;  
            Contiguous : X_Boolean_Char;  
            Length     : U_Short;  
            Colormap   : X_Colormap;  
            Colors     : U_Short;  
            Red        : U_Short;  
            Green      : U_Short;  
            Blue       : U_Short;  
        end record;

--/ if Length_Clauses then
    for X_Alloc_Color_Planes_Request'Size use 8 * 4 * 4;
--/ end if;

--\f

    type X_Alloc_Named_Color_Request is  
        record  
            Kind     : X_Request_Code;  
            Pad      : U_Char;  
            Length   : U_Short;  
            Colormap : X_Colormap;  
            N_Bytes  : U_Short;       -- followed by structure
            Pad1     : U_Char;  
            Pad2     : U_Char;  
        end record;

--/ if Length_Clauses then
    for X_Alloc_Named_Color_Request'Size use 8 * 4 * 3;
--/ end if;

--\f

    type X_Allow_Events_Request is  
        record  
            Kind   : X_Request_Code;  
            Mode   : X_Allow_Event_Mode;  
            Length : U_Short;  
            Time   : X_Time;  
        end record;

--/ if Length_Clauses then
    for X_Allow_Events_Request'Size use 8 * 4 * 2;
--/ end if;

--\f

    type X_Bell_Request is  
        record  
            Kind    : X_Request_Code;  
            Percent : S_Char;       -- S_Percent;  -- -100 to 100
            Length  : U_Short;  
        end record;

--/ if Length_Clauses then
    for X_Bell_Request'Size use 8 * 4 * 1;
--/ end if;

--\f

    type X_Change_Active_Pointer_Grab_Request is  
        record  
            Kind       : X_Request_Code;  
            Pad        : U_Char;  
            Length     : U_Short;  
            Cursor     : X_Cursor;  
            Time       : X_Time;  
            Event_Mask : X_Event_Mask;  
        end record;

--/ if not R1000_Size_Bug and then Length_Clauses then
--//     for X_Change_Active_Pointer_Grab_Request'Size use 8 * 4 * 4;
--/ end if;

--\f

    type X_Change_Gc_Request is  
        record  
            Kind        : X_Request_Code;  
            Pad         : U_Char;  
            Length      : U_Short;  
            Gc          : X_G_Context;  
            Change_Mask : X_Gc_Components;  
        end record;

--/ if Length_Clauses then
    for X_Change_Gc_Request'Size use 8 * 4 * 3;
--/ end if;

--\f

    type X_Change_Hosts_Request is  
        record  
            Kind        : X_Request_Code;  
            Mode        : X_Change_Hosts_Mode;  
            Length      : U_Short;  
            Host_Family : X_Host_Protocol_Family;  
            Pad         : U_Char;  
            Host_Length : U_Short;  
        end record;

--/ if Length_Clauses then
    for X_Change_Hosts_Request'Size use 8 * 4 * 2;
--/ end if;

--\f

    type X_Change_Keyboard_Control_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short;  
            Mask   : X_Keyboard_Control_Flags;  
        end record;

--/ if Length_Clauses then
    for X_Change_Keyboard_Control_Request'Size use 8 * 4 * 2;
--/ end if;

--\f

    type X_Change_Keyboard_Mapping_Request is  
        record  
            Kind                  : X_Request_Code;  
            Key_Codes             : U_Char;  
            Length                : U_Short;  
            First_Key_Code        : X_Key_Code;  
            Key_Syms_Per_Key_Code : U_Char;  
            Pad1                  : U_Short;  
        end record;

--/ if Length_Clauses then
    for X_Change_Keyboard_Mapping_Request'Size use 8 * 4 * 2;
--/ end if;

--\f

    type X_Change_Pointer_Control_Request is  
        record  
            Kind        : X_Request_Code;  
            Pad         : U_Char;  
            Length      : U_Short;  
            Accel_Num   : S_Short;  
            Accel_Denom : S_Short;  
            Threshold   : S_Short;  
            Do_Accel    : X_Boolean_Char;  
            Do_Thresh   : X_Boolean_Char;  
        end record;

--/ if Length_Clauses then
    for X_Change_Pointer_Control_Request'Size use 8 * 4 * 3;
--/ end if;

--\f

    type X_Change_Property_Request is  
        record  
            Kind           : X_Request_Code;  
            Mode           : X_Property_Mode;  
            Length         : U_Short;  
            Window         : X_Window;  
            Property       : X_Atom;  
            Representation : X_Atom;  
            Format         : U_Char;  
            Pad1           : U_Char;  
            Pad2           : U_Char;  
            Pad3           : U_Char;  
            N_Units        : S_Long; -- length of stuff following,
                                     --  depends on format
        end record;

--/ if Length_Clauses then
    for X_Change_Property_Request'Size use 8 * 4 * 6;
--/ end if;

--\f

    type X_Change_Save_Set_Request is  
        record  
            Kind   : X_Request_Code;  
            Mode   : X_Change_Save_Set_Mode;  
            Length : U_Short;  
            Window : X_Window;  
        end record;

--/ if Length_Clauses then
    for X_Change_Save_Set_Request'Size use 8 * 4 * 2;
--/ end if;

--\f

    type X_Change_Window_Attributes_Request is  
        record  
            Kind       : X_Request_Code;  
            Pad        : U_Char;  
            Length     : U_Short;  
            Window     : X_Window;  
            Value_Mask : X_New_Window_Attributes;  
        end record;

--/ if Length_Clauses then
    for X_Change_Window_Attributes_Request'Size use 8 * 4 * 3;
--/ end if;

--\f

    type X_Circulate_Window_Request is  
        record  
            Kind      : X_Request_Code;  
            Direction : X_Circulate_Place;  
            Length    : U_Short;  
            Window    : X_Window;  
        end record;

--/ if Length_Clauses then
    for X_Circulate_Window_Request'Size use 8 * 4 * 2;
--/ end if;

--\f

    type X_Clear_Area_Request is  
        record  
            Kind      : X_Request_Code;  
            Exposures : X_Boolean_Char;  
            Length    : U_Short;  
            Window    : X_Window;  
            X         : S_Short;  
            Y         : S_Short;  
            Width     : U_Short;  
            Height    : U_Short;  
        end record;

--/ if Length_Clauses then
    for X_Clear_Area_Request'Size use 8 * 4 * 4;
--/ end if;

--\f

    type X_Close_Font_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short;  
            Id     : X_Font;  
        end record;

--/ if Length_Clauses then
    for X_Close_Font_Request'Size use 8 * 4 * 2;
--/ end if;

--\f

    type X_Configure_Window_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short;  
            Window : X_Window;  
            Mask   : X_Window_Changes_Mask;  
            Pad2   : U_Short;  
        end record;

--/ if Length_Clauses then
    for X_Configure_Window_Request'Size use 8 * 4 * 3;
--/ end if;

--\f

    type X_Convert_Selection_Request is  
        record  
            Kind      : X_Request_Code;  
            Pad       : U_Char;  
            Length    : U_Short;  
            Requestor : X_Window;  
            Selection : X_Atom;  
            Target    : X_Atom;  
            Property  : X_Atom;  
            Time      : X_Time;  
        end record;

--/ if Length_Clauses then
    for X_Convert_Selection_Request'Size use 8 * 4 * 6;
--/ end if;

--\f

    type X_Copy_Area_Request is  
        record  
            Kind         : X_Request_Code;  
            Pad          : U_Char;  
            Length       : U_Short;  
            Src_Drawable : X_Drawable;  
            Dst_Drawable : X_Drawable;  
            Gc           : X_G_Context;  
            Src_X        : S_Short;  
            Src_Y        : S_Short;  
            Dst_X        : S_Short;  
            Dst_Y        : S_Short;  
            Width        : U_Short;  
            Height       : U_Short;  
        end record;

--/ if Length_Clauses then
    for X_Copy_Area_Request'Size use 8 * 4 * 7;
--/ end if;

--\f

    type X_Copy_Colormap_And_Free_Request is  
        record  
            Kind         : X_Request_Code;  
            Pad          : U_Char;  
            Length       : U_Short;  
            Mid          : X_Colormap;  
            Src_Colormap : X_Colormap;  
        end record;

--/ if Length_Clauses then
    for X_Copy_Colormap_And_Free_Request'Size use 8 * 4 * 3;
--/ end if;

--\f

    type X_Copy_Gc_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short;  
            Src_Gc : X_G_Context;  
            Dst_Gc : X_G_Context;  
            Mask   : X_Gc_Components;  
        end record;

--/ if Length_Clauses then
    for X_Copy_Gc_Request'Size use 8 * 4 * 4;
--/ end if;

--\f

    type X_Copy_Plane_Request is  
        record  
            Kind         : X_Request_Code;  
            Pad          : U_Char;  
            Length       : U_Short;  
            Src_Drawable : X_Drawable;  
            Dst_Drawable : X_Drawable;  
            Gc           : X_G_Context;  
            Src_X        : S_Short;  
            Src_Y        : S_Short;  
            Dst_X        : S_Short;  
            Dst_Y        : S_Short;  
            Width        : U_Short;  
            Height       : U_Short;  
            Bit_Plane    : X_Plane_Mask;  
        end record;

--/ if Length_Clauses then
    for X_Copy_Plane_Request'Size use 8 * 4 * 8;
--/ end if;

--\f

    type X_Create_Colormap_Request is  
        record  
            Kind   : X_Request_Code;  
            Alloc  : X_Colormap_Alloc;  
            Length : U_Short;  
            Mid    : X_Colormap;  
            Window : X_Window;  
            Visual : X_Visual_Id;  
        end record;

--/ if Length_Clauses then
    for X_Create_Colormap_Request'Size use 8 * 4 * 4;
--/ end if;

--\f

    type X_Create_Cursor_Request is  
        record  
            Kind       : X_Request_Code;  
            Pad        : U_Char;  
            Length     : U_Short;  
            Cursor     : X_Cursor;  
            Source     : X_Pixmap;  
            Mask       : X_Pixmap;  
            Fore_Red   : U_Short;  
            Fore_Green : U_Short;  
            Fore_Blue  : U_Short;  
            Back_Red   : U_Short;  
            Back_Green : U_Short;  
            Back_Blue  : U_Short;  
            X          : U_Short;  
            Y          : U_Short;  
        end record;

--/ if Length_Clauses then
    for X_Create_Cursor_Request'Size use 8 * 4 * 8;
--/ end if;

--\f

    type X_Create_Gc_Request is  
        record  
            Kind        : X_Request_Code;  
            Pad         : U_Char;  
            Length      : U_Short;  
            Gc          : X_G_Context;  
            Drawable    : X_Id;  
            Create_Mask : X_Gc_Components;  
        end record;

--/ if Length_Clauses then
    for X_Create_Gc_Request'Size use 8 * 4 * 4;
--/ end if;

--\f

    type X_Create_Glyph_Cursor_Request is  
        record  
            Kind        : X_Request_Code;  
            Pad         : U_Char;  
            Length      : U_Short;  
            Cursor      : X_Cursor;  
            Source      : X_Font;  
            Mask        : X_Font;  
            Source_Char : U_Short;  
            Mask_Char   : U_Short;  
            Fore_Red    : U_Short;  
            Fore_Green  : U_Short;  
            Fore_Blue   : U_Short;  
            Back_Red    : U_Short;  
            Back_Green  : U_Short;  
            Back_Blue   : U_Short;  
        end record;

--/ if Length_Clauses then
    for X_Create_Glyph_Cursor_Request'Size use 8 * 4 * 8;
--/ end if;

--\f

    type X_Create_Pixmap_Request is  
        record  
            Kind     : X_Request_Code;  
            Depth    : U_Char;  
            Length   : U_Short;  
            Pixmap   : X_Pixmap;  
            Drawable : X_Drawable;  
            Width    : U_Short;  
            Height   : U_Short;  
        end record;

--/ if Length_Clauses then
    for X_Create_Pixmap_Request'Size use 8 * 4 * 4;
--/ end if;

--\f

    type X_Create_Window_Request is  
        record  
            Kind         : X_Request_Code;  
            Depth        : U_Char;  
            Length       : U_Short;  
            Window       : X_Window;  
            Parent       : X_Window;  
            X            : S_Short;  
            Y            : S_Short;  
            Width        : U_Short;  
            Height       : U_Short;  
            Border_Width : U_Short;  
            Class        : X_Window_Class;  
            Visual       : X_Visual_Id;  
            Mask         : X_New_Window_Attributes;  
        end record;

--/ if Length_Clauses then
    for X_Create_Window_Request'Size use 8 * 4 * 8;
--/ end if;

--\f

    type X_Delete_Property_Request is  
        record  
            Kind     : X_Request_Code;  
            Pad      : U_Char;  
            Length   : U_Short;  
            Window   : X_Window;  
            Property : X_Atom;  
        end record;

--/ if Length_Clauses then
    for X_Delete_Property_Request'Size use 8 * 4 * 3;
--/ end if;

--\f

    type X_Destroy_Subwindows_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short;  
            Id     : X_Window;  
        end record;

--/ if Length_Clauses then
    for X_Destroy_Subwindows_Request'Size use 8 * 4 * 2;
--/ end if;

--\f

    type X_Destroy_Window_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short;  
            Id     : X_Window;  
        end record;

--/ if Length_Clauses then
    for X_Destroy_Window_Request'Size use 8 * 4 * 2;
--/ end if;

--\f

    type X_Fill_Poly_Request is  
        record  
            Kind       : X_Request_Code;  
            Pad        : U_Char;  
            Length     : U_Short;  
            Drawable   : X_Drawable;  
            Gc         : X_G_Context;  
            Shape      : X_Polygon_Shape;  
            Coord_Mode : X_Coordinate_Mode;  
            Pad1       : U_Short;  
        end record;

--/ if Length_Clauses then
    for X_Fill_Poly_Request'Size use 32 * 4;
--/ end if;

--\f

    type X_Force_Screen_Saver_Request is  
        record  
            Kind   : X_Request_Code;  
            Mode   : X_Screen_Saver_Mode;  
            Length : U_Short;  
        end record;

--/ if Length_Clauses then
    for X_Force_Screen_Saver_Request'Size use 8 * 4 * 1;
--/ end if;

--\f

    type X_Free_Colormap_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short;  
            Id     : X_Colormap;  
        end record;

--/ if Length_Clauses then
    for X_Free_Colormap_Request'Size use 8 * 4 * 2;
--/ end if;

--\f

    type X_Free_Colors_Request is  
        record  
            Kind       : X_Request_Code;  
            Pad        : U_Char;  
            Length     : U_Short;  
            Colormap   : X_Colormap;  
            Plane_Mask : X_Plane_Mask;  
        end record;

--/ if Length_Clauses then
    for X_Free_Colors_Request'Size use 8 * 4 * 3;
--/ end if;

--\f

    type X_Free_Cursor_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short;  
            Id     : X_Cursor;  
        end record;

--/ if Length_Clauses then
    for X_Free_Cursor_Request'Size use 8 * 4 * 2;
--/ end if;

--\f

    type X_Free_Gc_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short;  
            Id     : X_G_Context;  
        end record;

--/ if Length_Clauses then
    for X_Free_Gc_Request'Size use 8 * 4 * 2;
--/ end if;

--\f

    type X_Free_Pixmap_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short;  
            Id     : X_Pixmap;  
        end record;

--/ if Length_Clauses then
    for X_Free_Pixmap_Request'Size use 8 * 4 * 2;
--/ end if;

--\f

    type X_Get_Atom_Name_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short;  
            Id     : X_Atom;  
        end record;

--/ if Length_Clauses then
    for X_Get_Atom_Name_Request'Size use 8 * 4 * 2;
--/ end if;

--\f

    type X_Get_Font_Path_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short; --of whole request, including this header
        end record;

--/ if Length_Clauses then
    for X_Get_Font_Path_Request'Size use 8 * 4 * 1;
--/ end if;

--\f

    type X_Get_Geometry_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short;  
            Id     : X_Drawable;  
        end record;

--/ if Length_Clauses then
    for X_Get_Geometry_Request'Size use 8 * 4 * 2;
--/ end if;

--\f

    type X_Get_Image_Request is  
        record  
            Kind       : X_Request_Code;  
            Format     : X_Image_Format;  
            Length     : U_Short;  
            Drawable   : X_Drawable;  
            X          : S_Short;  
            Y          : S_Short;  
            Width      : U_Short;  
            Height     : U_Short;  
            Plane_Mask : X_Plane_Mask;  
        end record;

--/ if Length_Clauses then
    for X_Get_Image_Request'Size use 8 * 4 * 5;
--/ end if;

--\f

    type X_Get_Input_Focus_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short; --of whole request, including this header
        end record;

--/ if Length_Clauses then
    for X_Get_Input_Focus_Request'Size use 8 * 4 * 1;
--/ end if;

--\f

    type X_Get_Keyboard_Control_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short; --of whole request, including this header
        end record;

--/ if Length_Clauses then
    for X_Get_Keyboard_Control_Request'Size use 8 * 4 * 1;
--/ end if;

--\f

    type X_Get_Keyboard_Mapping_Request is  
        record  
            Kind          : X_Request_Code;  
            Pad           : U_Char;  
            Length        : U_Short;  
            First_Keycode : X_Key_Code;  
            Count         : U_Char;  
            Pad1          : U_Short;  
        end record;

--/ if Length_Clauses then
    for X_Get_Keyboard_Mapping_Request'Size use 8 * 4 * 2;
--/ end if;

--\f

    type X_Get_Modifier_Mapping_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short; --of whole request, including this header
        end record;

--/ if Length_Clauses then
    for X_Get_Modifier_Mapping_Request'Size use 8 * 4 * 1;
--/ end if;

--\f

    type X_Get_Motion_Events_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short;  
            Window : X_Window;  
            Start  : X_Time;  
            Stop   : X_Time;  
        end record;

--/ if Length_Clauses then
    for X_Get_Motion_Events_Request'Size use 8 * 4 * 4;
--/ end if;

--\f

    type X_Get_Pointer_Control_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short; --of whole request, including this header
        end record;

--/ if Length_Clauses then
    for X_Get_Pointer_Control_Request'Size use 8 * 4 * 1;
--/ end if;

--\f

    type X_Get_Pointer_Mapping_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short;   -- of whole request, including this header
        end record;

--/ if Length_Clauses then
    for X_Get_Pointer_Mapping_Request'Size use 8 * 4 * 1;
--/ end if;

--\f

    type X_Get_Property_Request is  
        record  
            Kind           : X_Request_Code;  
            Delete         : X_Boolean_Char;  
            Length         : U_Short;  
            Window         : X_Window;  
            Property       : X_Atom;  
            Representation : X_Atom;  
            Data_Offset    : S_Long;  
            Data_Length    : S_Long;  
        end record;

--/ if Length_Clauses then
    for X_Get_Property_Request'Size use 8 * 4 * 6;
--/ end if;

--\f

    type X_Get_Screen_Saver_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short;  
        end record;

--/ if Length_Clauses then
    for X_Get_Screen_Saver_Request'Size use 8 * 4 * 1;
--/ end if;

--\f

    type X_Get_Selection_Owner_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short;  
            Id     : X_Atom;  
        end record;

--/ if Length_Clauses then
    for X_Get_Selection_Owner_Request'Size use 8 * 4 * 2;
--/ end if;

--\f

    type X_Get_Window_Attributes_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short;  
            Id     : X_Window;  
        end record;

--/ if Length_Clauses then
    for X_Get_Window_Attributes_Request'Size use 8 * 4 * 2;
--/ end if;

--\f

    type X_Grab_Button_Request is  
        record  
            Kind          : X_Request_Code;  
            Owner_Events  : X_Boolean_Char;  
            Length        : U_Short;  
            Grab_Window   : X_Window;  
            Event_Mask    : X_Event_Mask_Short;  
            Pointer_Mode  : X_Grab_Mode;  
            Keyboard_Mode : X_Grab_Mode;  
            Confine_To    : X_Window;  
            Cursor        : X_Cursor;  
            Button        : X_Button_Name;  
            Pad           : U_Char;  
            Modifiers     : X_Key_Button_Mask;  
        end record;

--/ if not R1000_Size_Bug and then Length_Clauses then
--//     for X_Grab_Button_Request'Size use 8 * 4 * 6;
--/ end if;

--\f

    type X_Grab_Key_Request is  
        record  
            Kind          : X_Request_Code;  
            Owner_Events  : X_Boolean_Char;  
            Length        : U_Short;  
            Grab_Window   : X_Window;  
            Modifiers     : X_Key_Button_Mask;  
            Key           : X_Key_Code;  
            Pointer_Mode  : X_Grab_Mode;  
            Keyboard_Mode : X_Grab_Mode;  
            Pad1          : U_Char;  
            Pad2          : U_Char;  
            Pad3          : U_Char;  
        end record;

--/ if Length_Clauses then
    for X_Grab_Key_Request'Size use 8 * 4 * 4;
--/ end if;

--\f

    type X_Grab_Keyboard_Request is  
        record  
            Kind          : X_Request_Code;  
            Owner_Events  : X_Boolean_Char;  
            Length        : U_Short;  
            Grab_Window   : X_Window;  
            Time          : X_Time;  
            Pointer_Mode  : X_Grab_Mode;  
            Keyboard_Mode : X_Grab_Mode;  
            Pad           : U_Short;  
        end record;

--/ if Length_Clauses then
    for X_Grab_Keyboard_Request'Size use 8 * 4 * 4;
--/ end if;

--\f

    type X_Grab_Pointer_Request is  
        record  
            Kind          : X_Request_Code;  
            Owner_Events  : X_Boolean_Char;  
            Length        : U_Short;  
            Grab_Window   : X_Window;  
            Event_Mask    : X_Event_Mask_Short;  
            Pointer_Mode  : X_Grab_Mode;  
            Keyboard_Mode : X_Grab_Mode;  
            Confine_To    : X_Window;  
            Cursor        : X_Cursor;  
            Time          : X_Time;  
        end record;

--/ if not R1000_Size_Bug and then Length_Clauses then
--//     for X_Grab_Pointer_Request'Size use 8 * 4 * 6;
--/ end if;

--\f

    type X_Grab_Server_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short; --of whole request, including this header
        end record;

--/ if Length_Clauses then
    for X_Grab_Server_Request'Size use 8 * 4 * 1;
--/ end if;

--\f

    type X_Image_Text16_Request is  
        record  
            Kind     : X_Request_Code;  
            N_Chars  : U_Char;  
            Length   : U_Short;  
            Drawable : X_Drawable;  
            Gc       : X_G_Context;  
            X        : S_Short;  
            Y        : S_Short;  
        end record;

--/ if Length_Clauses then
    for X_Image_Text16_Request'Size use 8 * 4 * 4;
--/ end if;

--\f

    type X_Image_Text8_Request is  
        record  
            Kind     : X_Request_Code;  
            N_Chars  : U_Char;  
            Length   : U_Short;  
            Drawable : X_Drawable;  
            Gc       : X_G_Context;  
            X        : S_Short;  
            Y        : S_Short;  
        end record;

--/ if Length_Clauses then
    for X_Image_Text8_Request'Size use 8 * 4 * 4;
--/ end if;

--\f

    type X_Install_Colormap_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short;  
            Id     : X_Colormap;  
        end record;

--/ if Length_Clauses then
    for X_Install_Colormap_Request'Size use 8 * 4 * 2;
--/ end if;

--\f

    type X_Intern_Atom_Request is  
        record  
            Kind           : X_Request_Code;  
            Only_If_Exists : X_Boolean_Char;  
            Length         : U_Short;  
            N_Bytes        : U_Short;    -- number of bytes in string
            Pad            : U_Short;  
        end record;

--/ if Length_Clauses then
    for X_Intern_Atom_Request'Size use 8 * 4 * 2;
--/ end if;

--\f

    type X_Kill_Client_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short;  
            Id     : X_Id;  
        end record;

--/ if Length_Clauses then
    for X_Kill_Client_Request'Size use 8 * 4 * 2;
--/ end if;

--\f

    type X_List_Extensions_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short; --of whole request, including this header
        end record;

--/ if Length_Clauses then
    for X_List_Extensions_Request'Size use 8 * 4 * 1;
--/ end if;

--\f

    type X_List_Fonts_Request is  
        record  
            Kind      : X_Request_Code;  
            Pad       : U_Char;  
            Length    : U_Short;  
            Max_Names : U_Short;  
            N_Bytes   : U_Short;  -- followed immediately by str bytes
        end record;

--/ if Length_Clauses then
    for X_List_Fonts_Request'Size use 8 * 4 * 2;
--/ end if;

--\f

    type X_List_Fonts_With_Info_Request is  
        record  
            Kind      : X_Request_Code;  
            Pad       : U_Char;  
            Length    : U_Short;  
            Max_Names : U_Short;  
            N_Bytes   : U_Short;  -- followed immediately by str bytes
        end record;

--/ if Length_Clauses then
    for X_List_Fonts_With_Info_Request'Size use 8 * 4 * 2;
--/ end if;

--\f

    type X_List_Hosts_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short;  
        end record;

--/ if Length_Clauses then
    for X_List_Hosts_Request'Size use 8 * 4 * 1;
--/ end if;

--\f

    type X_List_Installed_Colormaps_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short;  
            Id     : X_Window;  
        end record;

--/ if Length_Clauses then
    for X_List_Installed_Colormaps_Request'Size use 8 * 4 * 2;
--/ end if;

--\f

    type X_List_Properties_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short;  
            Id     : X_Window;  
        end record;

--/ if Length_Clauses then
    for X_List_Properties_Request'Size use 8 * 4 * 2;
--/ end if;

--\f

    type X_Lookup_Color_Request is  
        record  
            Kind     : X_Request_Code;  
            Pad      : U_Char;  
            Length   : U_Short;  
            Colormap : X_Colormap;  
            N_Bytes  : U_Short;  -- number of str bytes following structure
            Pad1     : U_Char;  
            Pad2     : U_Char;  
        end record;

--/ if Length_Clauses then
    for X_Lookup_Color_Request'Size use 8 * 4 * 3;
--/ end if;

--\f

    type X_Map_Subwindows_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short;  
            Id     : X_Window;  
        end record;

--/ if Length_Clauses then
    for X_Map_Subwindows_Request'Size use 8 * 4 * 2;
--/ end if;

--\f

    type X_Map_Window_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short;  
            Id     : X_Window;  
        end record;

--/ if Length_Clauses then
    for X_Map_Window_Request'Size use 8 * 4 * 2;
--/ end if;

--\f

    type X_No_Operation_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short;  -- of whole request, including this header
        end record;

--/ if Length_Clauses then
    for X_No_Operation_Request'Size use 8 * 4 * 1;
--/ end if;

--\f

    type X_Open_Font_Request is  
        record  
            Kind    : X_Request_Code;  
            Pad     : U_Char;  
            Length  : U_Short;  
            Font    : X_Font;  
            N_Bytes : U_Short;  
            Pad1    : U_Char;  
            Pad2    : U_Char;    -- str follows on word boundary
        end record;

--/ if Length_Clauses then
    for X_Open_Font_Request'Size use 8 * 4 * 3;
--/ end if;

--\f

    type X_Poly_Arc_Request is  
        record  
            Kind     : X_Request_Code;  
            Pad      : U_Char;  
            Length   : U_Short;  
            Drawable : X_Drawable;  
            Gc       : X_G_Context;  
        end record;

--/ if Length_Clauses then
    for X_Poly_Arc_Request'Size use 8 * 4 * 3;
--/ end if;

--\f

    type X_Poly_Fill_Arc_Request is  
        record  
            Kind     : X_Request_Code;  
            Pad      : U_Char;  
            Length   : U_Short;  
            Drawable : X_Drawable;  
            Gc       : X_G_Context;  
        end record;

--/ if Length_Clauses then
    for X_Poly_Fill_Arc_Request'Size use 8 * 4 * 3;
--/ end if;

--\f

    type X_Poly_Fill_Rectangle_Request is  
        record  
            Kind     : X_Request_Code;  
            Pad      : U_Char;  
            Length   : U_Short;  
            Drawable : X_Drawable;  
            Gc       : X_G_Context;  
        end record;

--/ if Length_Clauses then
    for X_Poly_Fill_Rectangle_Request'Size use 8 * 4 * 3;
--/ end if;

--\f

    type X_Poly_Line_Request is  
        record  
            Kind       : X_Request_Code;  
            Coord_Mode : X_Coordinate_Mode;  
            Length     : U_Short;  
            Drawable   : X_Drawable;  
            Gc         : X_G_Context;  
        end record;

--/ if Length_Clauses then
    for X_Poly_Line_Request'Size use 8 * 4 * 3;
--/ end if;

--\f

    type X_Poly_Point_Request is  
        record  
            Kind       : X_Request_Code;  
            Coord_Mode : X_Coordinate_Mode;  
            Length     : U_Short;  
            Drawable   : X_Drawable;  
            Gc         : X_G_Context;  
        end record;

--/ if Length_Clauses then
    for X_Poly_Point_Request'Size use 8 * 4 * 3;
--/ end if;

--\f

    type X_Poly_Rectangle_Request is  
        record  
            Kind     : X_Request_Code;  
            Pad      : U_Char;  
            Length   : U_Short;  
            Drawable : X_Drawable;  
            Gc       : X_G_Context;  
        end record;

--/ if Length_Clauses then
    for X_Poly_Rectangle_Request'Size use 8 * 4 * 3;
--/ end if;

--\f

    type X_Poly_Segment_Request is  
        record  
            Kind     : X_Request_Code;  
            Pad      : U_Char;  
            Length   : U_Short;  
            Drawable : X_Drawable;  
            Gc       : X_G_Context;  
        end record;

--/ if Length_Clauses then
    for X_Poly_Segment_Request'Size use 8 * 4 * 3;
--/ end if;

--\f

    type X_Poly_Text16_Request is  
        record  
            Kind     : X_Request_Code;  
            Pad      : U_Char;  
            Length   : U_Short;  
            Drawable : X_Drawable;  
            Gc       : X_G_Context;  
            X        : S_Short;  
            Y        : S_Short;  
        end record;

--/ if Length_Clauses then
    for X_Poly_Text16_Request'Size use 8 * 4 * 4;
--/ end if;

--\f

    type X_Poly_Text8_Request is  
        record  
            Kind     : X_Request_Code;  
            Pad      : U_Char;  
            Length   : U_Short;  
            Drawable : X_Drawable;  
            Gc       : X_G_Context;  
            X        : S_Short;  
            Y        : S_Short;  
        end record;

--/ if Length_Clauses then
    for X_Poly_Text8_Request'Size use 8 * 4 * 4;
--/ end if;

--\f

    type X_Put_Image_Request is  
        record  
            Kind     : X_Request_Code;  
            Format   : X_Image_Format;  
            Length   : U_Short;  
            Drawable : X_Drawable;  
            Gc       : X_G_Context;  
            Width    : U_Short;  
            Height   : U_Short;  
            Dst_X    : S_Short;  
            Dst_Y    : S_Short;  
            Left_Pad : U_Char;  
            Depth    : U_Char;  
            Pad      : U_Short;  
        end record;

--/ if Length_Clauses then
    for X_Put_Image_Request'Size use 8 * 4 * 6;
--/ end if;

--\f

    type X_Query_Best_Size_Request is  
        record  
            Kind     : X_Request_Code;  
            Class    : X_Best_Size_Class;  
            Length   : U_Short;  
            Drawable : X_Drawable;  
            Width    : U_Short;  
            Height   : U_Short;  
        end record;

--/ if Length_Clauses then
    for X_Query_Best_Size_Request'Size use 8 * 4 * 3;
--/ end if;

--\f

    type X_Query_Colors_Request is  
        record  
            Kind     : X_Request_Code;  
            Pad      : U_Char;  
            Length   : U_Short;  
            Colormap : X_Colormap;  
        end record;

--/ if Length_Clauses then
    for X_Query_Colors_Request'Size use 8 * 4 * 2;
--/ end if;

--\f

    type X_Query_Extension_Request is  
        record  
            Kind    : X_Request_Code;  
            Pad     : U_Char;  
            Length  : U_Short;  
            N_Bytes : U_Short;  -- number of str bytes following structure
            Pad1    : U_Char;  
            Pad2    : U_Char;  
        end record;

--/ if Length_Clauses then
    for X_Query_Extension_Request'Size use 8 * 4 * 2;
--/ end if;

--\f

    type X_Query_Font_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short;  
            Id     : X_Font;  
        end record;

--/ if Length_Clauses then
    for X_Query_Font_Request'Size use 8 * 4 * 2;
--/ end if;

--\f

    type X_Query_Keymap_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short; --of whole request, including this header
        end record;

--/ if Length_Clauses then
    for X_Query_Keymap_Request'Size use 8 * 4 * 1;
--/ end if;

--\f

    type X_Query_Pointer_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short;  
            Id     : X_Window;  
        end record;

--/ if Length_Clauses then
    for X_Query_Pointer_Request'Size use 8 * 4 * 2;
--/ end if;

--\f

    type X_Query_Text_Extents_Request is  
        record  
            Kind       : X_Request_Code;  
            Odd_Length : X_Boolean_Char;  
            Length     : U_Short;  
            Font       : X_Font;  
        end record;

--/ if Length_Clauses then
    for X_Query_Text_Extents_Request'Size use 8 * 4 * 2;
--/ end if;

--\f

    type X_Query_Tree_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short;  
            Window : X_Window;  
        end record;

--/ if Length_Clauses then
    for X_Query_Tree_Request'Size use 8 * 4 * 2;
--/ end if;

--\f

    type X_Recolor_Cursor_Request is  
        record  
            Kind       : X_Request_Code;  
            Pad        : U_Char;  
            Length     : U_Short;  
            Cursor     : X_Cursor;  
            Fore_Red   : U_Short;  
            Fore_Green : U_Short;  
            Fore_Blue  : U_Short;  
            Back_Red   : U_Short;  
            Back_Green : U_Short;  
            Back_Blue  : U_Short;  
        end record;

--/ if Length_Clauses then
    for X_Recolor_Cursor_Request'Size use 8 * 4 * 5;
--/ end if;

--\f

    type X_Reparent_Window_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short;  
            Window : X_Window;  
            Parent : X_Window;  
            X      : S_Short;  
            Y      : S_Short;  
        end record;

--/ if Length_Clauses then
    for X_Reparent_Window_Request'Size use 8 * 4 * 4;
--/ end if;

--\f

    type X_Rotate_Properties_Request is  
        record                      -- followed by LIST of ATOM
            Kind        : X_Request_Code;  
            Pad         : U_Char;  
            Length      : U_Short;  
            Window      : X_Window;  
            N_Atoms     : U_Short;  
            N_Positions : S_Short;  
        end record;

--/ if Length_Clauses then
    for X_Rotate_Properties_Request'Size use 8 * 4 * 3;
--/ end if;

--\f

    type X_Send_Event_Request is  
        record  
            Kind        : X_Request_Code;  
            Propagate   : X_Boolean_Char;  
            Length      : U_Short;  
            Destination : X_Window;  
            Event_Mask  : X_Event_Mask;  
            Event       : X_Raw_Data_Array (1 .. 32);  
        end record;

--/ if not R1000_Size_Bug and then Length_Clauses then
--//     for X_Send_Event_Request'Size use 8 * 4 * 11;
--/ end if;

--\f

    type X_Set_Access_Control_Request is  
        record  
            Kind   : X_Request_Code;  
            Mode   : X_Change_Access;  
            Length : U_Short;  
        end record;

--/ if Length_Clauses then
    for X_Set_Access_Control_Request'Size use 8 * 4 * 1;
--/ end if;

--\f

    type X_Set_Clip_Rectangles_Request is  
        record  
            Kind     : X_Request_Code;  
            Ordering : X_Clip_Ordering;  
            Length   : U_Short;  
            Gc       : X_G_Context;  
            X_Origin : S_Short;  
            Y_Origin : S_Short;  
        end record;

--/ if Length_Clauses then
    for X_Set_Clip_Rectangles_Request'Size use 8 * 4 * 3;
--/ end if;

--\f

    type X_Set_Close_Down_Mode_Request is  
        record  
            Kind   : X_Request_Code;  
            Mode   : X_Close_Down_Mode;  
            Length : U_Short;  
        end record;

--/ if Length_Clauses then
    for X_Set_Close_Down_Mode_Request'Size use 8 * 4 * 1;
--/ end if;


--\f

    type X_Set_Dashes_Request is  
        record  
            Kind        : X_Request_Code;  
            Pad         : U_Char;  
            Length      : U_Short;  
            Gc          : X_G_Context;  
            Dash_Offset : U_Short;  
            N_Dashes    : U_Short; -- length U_Char_Array of values following
        end record;

--/ if Length_Clauses then
    for X_Set_Dashes_Request'Size use 8 * 4 * 3;
--/ end if;

--\f

    type X_Set_Font_Path_Request is  
        record  
            Kind    : X_Request_Code;  
            Pad     : U_Char;  
            Length  : U_Short;  
            N_Fonts : U_Short;  
            Pad1    : U_Char;  
            Pad2    : U_Char;    -- X_String_List follows on word boundary
        end record;

--/ if Length_Clauses then
    for X_Set_Font_Path_Request'Size use 8 * 4 * 2;
--/ end if;

--\f

    type X_Set_Input_Focus_Request is  
        record  
            Kind      : X_Request_Code;  
            Revert_To : X_Revert_Focus_Mode;  
            Length    : U_Short;  
            Focus     : X_Window;  
            Time      : X_Time;  
        end record;

--/ if Length_Clauses then
    for X_Set_Input_Focus_Request'Size use 8 * 4 * 3;
--/ end if;

--\f

    type X_Set_Modifier_Mapping_Request is  
        record  
            Kind                 : X_Request_Code;  
            Num_Key_Per_Modifier : U_Char;  
            Length               : U_Short;  
        end record;

--/ if Length_Clauses then
    for X_Set_Modifier_Mapping_Request'Size use 8 * 4 * 1;
--/ end if;

--\f

    type X_Set_Pointer_Mapping_Request is  
        record  
            Kind   : X_Request_Code;  
            N_Elts : U_Char;  -- how many elements in the map
            Length : U_Short;  
        end record;

--/ if Length_Clauses then
    for X_Set_Pointer_Mapping_Request'Size use 8 * 4 * 1;
--/ end if;

--\f

    type X_Set_Screen_Saver_Request is  
        record  
            Kind         : X_Request_Code;  
            Pad          : U_Char;  
            Length       : U_Short;  
            Timeout      : U_Short;  
            Interval     : U_Short;  
            Prefer_Blank : X_Screen_Saver_Blanking;  
            Allow_Expose : X_Screen_Saver_Exposures;  
            Pad2         : U_Short;  
        end record;

--/ if Length_Clauses then
    for X_Set_Screen_Saver_Request'Size use 8 * 4 * 3;
--/ end if;

--\f

    type X_Set_Selection_Owner_Request is  
        record  
            Kind      : X_Request_Code;  
            Pad       : U_Char;  
            Length    : U_Short;  
            Window    : X_Window;  
            Selection : X_Atom;  
            Time      : X_Time;  
        end record;

--/ if Length_Clauses then
    for X_Set_Selection_Owner_Request'Size use 8 * 4 * 4;
--/ end if;

--\f

    type X_Store_Colors_Request is  
        record  
            Kind     : X_Request_Code;  
            Pad      : U_Char;  
            Length   : U_Short;  
            Colormap : X_Colormap;  
        end record;

--/ if Length_Clauses then
    for X_Store_Colors_Request'Size use 8 * 4 * 2;
--/ end if;

    type X_Color_Item is  
        record  
            Pixel : X_Pixel;  
            Red   : U_Short;  
            Green : U_Short;  
            Blue  : U_Short;  
            Flags : X_Color_Flags;  -- Do_Red/Green/Blue booleans
            Pad   : U_Char;  
        end record;

--/ if Length_Clauses then
    for X_Color_Item'Size use 8 * 4 * 3;
--/ end if;

--\f

    type X_Store_Named_Color_Request is  
        record  
            Kind     : X_Request_Code;  
            Flags    : X_Color_Flags; -- Do_Red/Green/Blue
            Length   : U_Short;  
            Colormap : X_Colormap;  
            Pixel    : X_Pixel;  
            N_Bytes  : U_Short; -- # of name str bytes following structure
            Pad1     : U_Char;  
            Pad2     : U_Char;  
        end record;

--/ if Length_Clauses then
    for X_Store_Named_Color_Request'Size use 8 * 4 * 4;
--/ end if;

--\f

    type X_Translate_Coords_Request is  
        record  
            Kind       : X_Request_Code;  
            Pad        : U_Char;  
            Length     : U_Short;  
            Src_Window : X_Window;  
            Dst_Window : X_Window;  
            Src_X      : S_Short;  
            Src_Y      : S_Short;  
        end record;

--/ if Length_Clauses then
    for X_Translate_Coords_Request'Size use 8 * 4 * 4;
--/ end if;

--\f

    type X_Ungrab_Button_Request is  
        record  
            Kind        : X_Request_Code;  
            Button      : X_Button_Name;  
            Length      : U_Short;  
            Grab_Window : X_Window;  
            Modifiers   : X_Key_Button_Mask;  
            Pad         : U_Short;  
        end record;

--/ if Length_Clauses then
    for X_Ungrab_Button_Request'Size use 8 * 4 * 3;
--/ end if;

--\f

    type X_Ungrab_Key_Request is  
        record  
            Kind        : X_Request_Code;  
            Key         : X_Key_Code;  
            Length      : U_Short;  
            Grab_Window : X_Window;  
            Modifiers   : X_Key_Button_Mask;  
            Pad         : U_Short;  
        end record;

--/ if Length_Clauses then
    for X_Ungrab_Key_Request'Size use 8 * 4 * 3;
--/ end if;

--\f

    type X_Ungrab_Keyboard_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short;  
            Time   : X_Time;  
        end record;

--/ if Length_Clauses then
    for X_Ungrab_Keyboard_Request'Size use 8 * 4 * 2;
--/ end if;

--\f

    type X_Ungrab_Pointer_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short;  
            Time   : X_Time;  
        end record;

--/ if Length_Clauses then
    for X_Ungrab_Pointer_Request'Size use 8 * 4 * 2;
--/ end if;

--\f

    type X_Ungrab_Server_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short; -- of whole request, including this header
        end record;

--/ if Length_Clauses then
    for X_Ungrab_Server_Request'Size use 8 * 4 * 1;
--/ end if;

--\f

    type X_Uninstall_Colormap_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short;  
            Id     : X_Colormap;  
        end record;

--/ if Length_Clauses then
    for X_Uninstall_Colormap_Request'Size use 8 * 4 * 2;
--/ end if;

--\f

    type X_Unmap_Subwindows_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short;  
            Id     : X_Window;  
        end record;

--/ if Length_Clauses then
    for X_Unmap_Subwindows_Request'Size use 8 * 4 * 2;
--/ end if;

--\f

    type X_Unmap_Window_Request is  
        record  
            Kind   : X_Request_Code;  
            Pad    : U_Char;  
            Length : U_Short;  
            Id     : X_Window;  
        end record;

--/ if Length_Clauses then
    for X_Unmap_Window_Request'Size use 8 * 4 * 2;
--/ end if;

--\f

    type X_Warp_Pointer_Request is  
        record  
            Kind       : X_Request_Code;  
            Pad        : U_Char;  
            Length     : U_Short;  
            Src_Window : X_Window;  
            Dst_Window : X_Window;  
            Src_X      : S_Short;  
            Src_Y      : S_Short;  
            Src_Width  : U_Short;  
            Src_Height : U_Short;  
            Dst_X      : S_Short;  
            Dst_Y      : S_Short;  
        end record;

--/ if Length_Clauses then
    for X_Warp_Pointer_Request'Size use 8 * 4 * 6;
--/ end if;

--\f

--/ if Record_Rep_Clauses then
--//
--//     for X_Alloc_Color_Request use
--//         record
--//             Kind     at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad      at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length   at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Colormap at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Red      at 2 * X_Word range X_Half0a .. X_Half0b;
--//             Green    at 2 * X_Word range X_Half1a .. X_Half1b;
--//             Blue     at 3 * X_Word range X_Half0a .. X_Half0b;
--//             Pad2     at 3 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Alloc_Color_Cells_Request use
--//         record
--//             Kind       at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Contiguous at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length     at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Colormap   at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Colors     at 2 * X_Word range X_Half0a .. X_Half0b;
--//             Planes     at 2 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Alloc_Color_Planes_Request use
--//         record
--//             Kind       at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Contiguous at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length     at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Colormap   at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Colors     at 2 * X_Word range X_Half0a .. X_Half0b;
--//             Red        at 2 * X_Word range X_Half1a .. X_Half1b;
--//             Green      at 3 * X_Word range X_Half0a .. X_Half0b;
--//             Blue       at 3 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Alloc_Named_Color_Request use
--//         record
--//             Kind     at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad      at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length   at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Colormap at 1 * X_Word range X_Word0a .. X_Word0b;
--//             N_Bytes  at 2 * X_Word range X_Half0a .. X_Half0b;
--//             Pad1     at 2 * X_Word range X_Byte2a .. X_Byte2b;
--//             Pad2     at 2 * X_Word range X_Byte3a .. X_Byte3b;
--//         end record;
--//
--//     for X_Allow_Events_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Mode   at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Time   at 1 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Bell_Request use
--//         record
--//             Kind    at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Percent at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length  at 0 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Change_Active_Pointer_Grab_Request use
--//         record
--//             Kind       at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad        at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length     at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Cursor     at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Time       at 2 * X_Word range X_Word0a .. X_Word0b;
--//             Event_Mask at 3 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Change_Gc_Request use
--//         record
--//             Kind        at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad         at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length      at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Gc          at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Change_Mask at 2 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Change_Hosts_Request use
--//         record
--//             Kind        at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Mode        at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length      at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Host_Family at 1 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad         at 1 * X_Word range X_Byte1a .. X_Byte1b;
--//             Host_Length at 1 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Change_Keyboard_Control_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Mask   at 1 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Change_Keyboard_Mapping_Request use
--//         record
--//             Kind                  at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Key_Codes             at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length                at 0 * X_Word range X_Half1a .. X_Half1b;
--//             First_Key_Code        at 1 * X_Word range X_Byte0a .. X_Byte0b;
--//             Key_Syms_Per_Key_Code at 1 * X_Word range X_Byte1a .. X_Byte1b;
--//             Pad1                  at 1 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Change_Pointer_Control_Request use
--//         record
--//             Kind        at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad         at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length      at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Accel_Num   at 1 * X_Word range X_Half0a .. X_Half0b;
--//             Accel_Denom at 1 * X_Word range X_Half1a .. X_Half1b;
--//             Threshold   at 2 * X_Word range X_Half0a .. X_Half0b;
--//             Do_Accel    at 2 * X_Word range X_Byte2a .. X_Byte2b;
--//             Do_Thresh   at 2 * X_Word range X_Byte3a .. X_Byte3b;
--//         end record;
--//
--//     for X_Change_Property_Request use
--//         record
--//             Kind           at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Mode           at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length         at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Window         at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Property       at 2 * X_Word range X_Word0a .. X_Word0b;
--//             Representation at 3 * X_Word range X_Word0a .. X_Word0b;
--//             Format         at 4 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad1           at 4 * X_Word range X_Byte1a .. X_Byte1b;
--//             Pad2           at 4 * X_Word range X_Byte2a .. X_Byte2b;
--//             Pad3           at 4 * X_Word range X_Byte3a .. X_Byte3b;
--//             N_Units        at 5 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Change_Save_Set_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Mode   at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Window at 1 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Change_Window_Attributes_Request use
--//         record
--//             Kind       at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad        at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length     at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Window     at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Value_Mask at 2 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Circulate_Window_Request use
--//         record
--//             Kind      at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Direction at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length    at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Window    at 1 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Clear_Area_Request use
--//         record
--//             Kind      at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Exposures at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length    at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Window    at 1 * X_Word range X_Word0a .. X_Word0b;
--//             X         at 2 * X_Word range X_Half0a .. X_Half0b;
--//             Y         at 2 * X_Word range X_Half1a .. X_Half1b;
--//             Width     at 3 * X_Word range X_Half0a .. X_Half0b;
--//             Height    at 3 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Close_Font_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Id     at 1 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Configure_Window_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Window at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Mask   at 2 * X_Word range X_Half0a .. X_Half0b;
--//             Pad2   at 2 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Convert_Selection_Request use
--//         record
--//             Kind      at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad       at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length    at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Requestor at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Selection at 2 * X_Word range X_Word0a .. X_Word0b;
--//             Target    at 3 * X_Word range X_Word0a .. X_Word0b;
--//             Property  at 4 * X_Word range X_Word0a .. X_Word0b;
--//             Time      at 5 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Copy_Area_Request use
--//         record
--//             Kind         at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad          at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length       at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Src_Drawable at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Dst_Drawable at 2 * X_Word range X_Word0a .. X_Word0b;
--//             Gc           at 3 * X_Word range X_Word0a .. X_Word0b;
--//             Src_X        at 4 * X_Word range X_Half0a .. X_Half0b;
--//             Src_Y        at 4 * X_Word range X_Half1a .. X_Half1b;
--//             Dst_X        at 5 * X_Word range X_Half0a .. X_Half0b;
--//             Dst_Y        at 5 * X_Word range X_Half1a .. X_Half1b;
--//             Width        at 6 * X_Word range X_Half0a .. X_Half0b;
--//             Height       at 6 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Copy_Colormap_And_Free_Request use
--//         record
--//             Kind         at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad          at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length       at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Mid          at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Src_Colormap at 2 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Copy_Gc_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Src_Gc at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Dst_Gc at 2 * X_Word range X_Word0a .. X_Word0b;
--//             Mask   at 3 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Copy_Plane_Request use
--//         record
--//             Kind         at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad          at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length       at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Src_Drawable at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Dst_Drawable at 2 * X_Word range X_Word0a .. X_Word0b;
--//             Gc           at 3 * X_Word range X_Word0a .. X_Word0b;
--//             Src_X        at 4 * X_Word range X_Half0a .. X_Half0b;
--//             Src_Y        at 4 * X_Word range X_Half1a .. X_Half1b;
--//             Dst_X        at 5 * X_Word range X_Half0a .. X_Half0b;
--//             Dst_Y        at 5 * X_Word range X_Half1a .. X_Half1b;
--//             Width        at 6 * X_Word range X_Half0a .. X_Half0b;
--//             Height       at 6 * X_Word range X_Half1a .. X_Half1b;
--//             Bit_Plane    at 7 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Create_Colormap_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Alloc  at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Mid    at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Window at 2 * X_Word range X_Word0a .. X_Word0b;
--//             Visual at 3 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Create_Cursor_Request use
--//         record
--//             Kind       at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad        at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length     at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Cursor     at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Source     at 2 * X_Word range X_Word0a .. X_Word0b;
--//             Mask       at 3 * X_Word range X_Word0a .. X_Word0b;
--//             Fore_Red   at 4 * X_Word range X_Half0a .. X_Half0b;
--//             Fore_Green at 4 * X_Word range X_Half1a .. X_Half1b;
--//             Fore_Blue  at 5 * X_Word range X_Half0a .. X_Half0b;
--//             Back_Red   at 5 * X_Word range X_Half1a .. X_Half1b;
--//             Back_Green at 6 * X_Word range X_Half0a .. X_Half0b;
--//             Back_Blue  at 6 * X_Word range X_Half1a .. X_Half1b;
--//             X          at 7 * X_Word range X_Half0a .. X_Half0b;
--//             Y          at 7 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Create_Gc_Request use
--//         record
--//             Kind        at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad         at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length      at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Gc          at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Drawable    at 2 * X_Word range X_Word0a .. X_Word0b;
--//             Create_Mask at 3 * X_Word range X_Word0a .. X_Word0b;
--//
--//         end record;
--//
--//     for X_Create_Glyph_Cursor_Request use
--//         record
--//             Kind        at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad         at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length      at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Cursor      at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Source      at 2 * X_Word range X_Word0a .. X_Word0b;
--//             Mask        at 3 * X_Word range X_Word0a .. X_Word0b;
--//             Source_Char at 4 * X_Word range X_Half0a .. X_Half0b;
--//             Mask_Char   at 4 * X_Word range X_Half1a .. X_Half1b;
--//             Fore_Red    at 5 * X_Word range X_Half0a .. X_Half0b;
--//             Fore_Green  at 5 * X_Word range X_Half1a .. X_Half1b;
--//             Fore_Blue   at 6 * X_Word range X_Half0a .. X_Half0b;
--//             Back_Red    at 6 * X_Word range X_Half1a .. X_Half1b;
--//             Back_Green  at 7 * X_Word range X_Half0a .. X_Half0b;
--//             Back_Blue   at 7 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Create_Pixmap_Request use
--//         record
--//             Kind     at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Depth    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length   at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Pixmap   at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Drawable at 2 * X_Word range X_Word0a .. X_Word0b;
--//             Width    at 3 * X_Word range X_Half0a .. X_Half0b;
--//             Height   at 3 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Create_Window_Request use
--//         record
--//             Kind         at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Depth        at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length       at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Window       at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Parent       at 2 * X_Word range X_Word0a .. X_Word0b;
--//             X            at 3 * X_Word range X_Half0a .. X_Half0b;
--//             Y            at 3 * X_Word range X_Half1a .. X_Half1b;
--//             Width        at 4 * X_Word range X_Half0a .. X_Half0b;
--//             Height       at 4 * X_Word range X_Half1a .. X_Half1b;
--//             Border_Width at 5 * X_Word range X_Half0a .. X_Half0b;
--//             Class        at 5 * X_Word range X_Half1a .. X_Half1b;
--//             Visual       at 6 * X_Word range X_Word0a .. X_Word0b;
--//             Mask         at 7 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Delete_Property_Request use
--//         record
--//             Kind     at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad      at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length   at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Window   at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Property at 2 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Destroy_Subwindows_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Id     at 1 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Destroy_Window_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Id     at 1 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Fill_Poly_Request use
--//         record
--//             Kind       at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad        at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length     at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Drawable   at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Gc         at 2 * X_Word range X_Word0a .. X_Word0b;
--//             Shape      at 3 * X_Word range X_Byte0a .. X_Byte0b;
--//             Coord_Mode at 3 * X_Word range X_Byte1a .. X_Byte1b;
--//             Pad1       at 3 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Force_Screen_Saver_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Mode   at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Free_Colormap_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Id     at 1 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Free_Colors_Request use
--//         record
--//             Kind       at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad        at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length     at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Colormap   at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Plane_Mask at 2 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Free_Cursor_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Id     at 1 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Free_Gc_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Id     at 1 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Free_Pixmap_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Id     at 1 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Get_Atom_Name_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Id     at 1 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Get_Font_Path_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Get_Geometry_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Id     at 1 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Get_Image_Request use
--//         record
--//             Kind       at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Format     at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length     at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Drawable   at 1 * X_Word range X_Word0a .. X_Word0b;
--//             X          at 2 * X_Word range X_Half0a .. X_Half0b;
--//             Y          at 2 * X_Word range X_Half1a .. X_Half1b;
--//             Width      at 3 * X_Word range X_Half0a .. X_Half0b;
--//             Height     at 3 * X_Word range X_Half1a .. X_Half1b;
--//             Plane_Mask at 4 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Get_Input_Focus_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Get_Keyboard_Control_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Get_Keyboard_Mapping_Request use
--//         record
--//             Kind          at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad           at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length        at 0 * X_Word range X_Half1a .. X_Half1b;
--//             First_Keycode at 1 * X_Word range X_Byte0a .. X_Byte0b;
--//             Count         at 1 * X_Word range X_Byte1a .. X_Byte1b;
--//             Pad1          at 1 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Get_Modifier_Mapping_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Get_Motion_Events_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Window at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Start  at 2 * X_Word range X_Word0a .. X_Word0b;
--//             Stop   at 3 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Get_Pointer_Control_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Get_Pointer_Mapping_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Get_Property_Request use
--//         record
--//             Kind           at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Delete         at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length         at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Window         at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Property       at 2 * X_Word range X_Word0a .. X_Word0b;
--//             Representation at 3 * X_Word range X_Word0a .. X_Word0b;
--//             Data_Offset    at 4 * X_Word range X_Word0a .. X_Word0b;
--//             Data_Length    at 5 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Get_Screen_Saver_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Get_Selection_Owner_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Id     at 1 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Get_Window_Attributes_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Id     at 1 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Grab_Button_Request use
--//         record
--//             Kind          at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Owner_Events  at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length        at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Grab_Window   at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Event_Mask    at 2 * X_Word range X_Half0a .. X_Half0b;
--//             Pointer_Mode  at 2 * X_Word range X_Byte2a .. X_Byte2b;
--//             Keyboard_Mode at 2 * X_Word range X_Byte3a .. X_Byte3b;
--//             Confine_To    at 3 * X_Word range X_Word0a .. X_Word0b;
--//             Cursor        at 4 * X_Word range X_Word0a .. X_Word0b;
--//             Button        at 5 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad           at 5 * X_Word range X_Byte1a .. X_Byte1b;
--//             Modifiers     at 5 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Grab_Key_Request use
--//         record
--//             Kind          at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Owner_Events  at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length        at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Grab_Window   at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Modifiers     at 2 * X_Word range X_Half0a .. X_Half0b;
--//             Key           at 2 * X_Word range X_Byte2a .. X_Byte2b;
--//             Pointer_Mode  at 2 * X_Word range X_Byte3a .. X_Byte3b;
--//             Keyboard_Mode at 3 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad1          at 3 * X_Word range X_Byte1a .. X_Byte1b;
--//             Pad2          at 3 * X_Word range X_Byte2a .. X_Byte2b;
--//             Pad3          at 3 * X_Word range X_Byte3a .. X_Byte3b;
--//         end record;
--//
--//     for X_Grab_Keyboard_Request use
--//         record
--//             Kind          at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Owner_Events  at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length        at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Grab_Window   at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Time          at 2 * X_Word range X_Word0a .. X_Word0b;
--//             Pointer_Mode  at 3 * X_Word range X_Byte0a .. X_Byte0b;
--//             Keyboard_Mode at 3 * X_Word range X_Byte1a .. X_Byte1b;
--//             Pad           at 3 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Grab_Pointer_Request use
--//         record
--//             Kind          at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Owner_Events  at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length        at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Grab_Window   at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Event_Mask    at 2 * X_Word range X_Half0a .. X_Half0b;
--//             Pointer_Mode  at 2 * X_Word range X_Byte2a .. X_Byte2b;
--//             Keyboard_Mode at 2 * X_Word range X_Byte3a .. X_Byte3b;
--//             Confine_To    at 3 * X_Word range X_Word0a .. X_Word0b;
--//             Cursor        at 4 * X_Word range X_Word0a .. X_Word0b;
--//             Time          at 5 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Grab_Server_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Image_Text16_Request use
--//         record
--//             Kind     at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             N_Chars  at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length   at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Drawable at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Gc       at 2 * X_Word range X_Word0a .. X_Word0b;
--//             X        at 3 * X_Word range X_Half0a .. X_Half0b;
--//             Y        at 3 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Image_Text8_Request use
--//         record
--//             Kind     at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             N_Chars  at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length   at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Drawable at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Gc       at 2 * X_Word range X_Word0a .. X_Word0b;
--//             X        at 3 * X_Word range X_Half0a .. X_Half0b;
--//             Y        at 3 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Install_Colormap_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Id     at 1 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Intern_Atom_Request use
--//         record
--//             Kind           at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Only_If_Exists at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length         at 0 * X_Word range X_Half1a .. X_Half1b;
--//             N_Bytes        at 1 * X_Word range X_Half0a .. X_Half0b;
--//             Pad            at 1 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Kill_Client_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Id     at 1 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_List_Extensions_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_List_Fonts_Request use
--//         record
--//             Kind      at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad       at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length    at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Max_Names at 1 * X_Word range X_Half0a .. X_Half0b;
--//             N_Bytes   at 1 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_List_Fonts_With_Info_Request use
--//         record
--//             Kind      at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad       at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length    at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Max_Names at 1 * X_Word range X_Half0a .. X_Half0b;
--//             N_Bytes   at 1 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_List_Hosts_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_List_Installed_Colormaps_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Id     at 1 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_List_Properties_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Id     at 1 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Lookup_Color_Request use
--//         record
--//             Kind     at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad      at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length   at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Colormap at 1 * X_Word range X_Word0a .. X_Word0b;
--//             N_Bytes  at 2 * X_Word range X_Half0a .. X_Half0b;
--//             Pad1     at 2 * X_Word range X_Byte2a .. X_Byte2b;
--//             Pad2     at 2 * X_Word range X_Byte3a .. X_Byte3b;
--//         end record;
--//
--//     for X_Map_Subwindows_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Id     at 1 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Map_Window_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Id     at 1 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_No_Operation_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Open_Font_Request use
--//         record
--//             Kind    at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad     at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length  at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Font    at 1 * X_Word range X_Word0a .. X_Word0b;
--//             N_Bytes at 2 * X_Word range X_Half0a .. X_Half0b;
--//             Pad1    at 2 * X_Word range X_Byte2a .. X_Byte2b;
--//             Pad2    at 2 * X_Word range X_Byte3a .. X_Byte3b;
--//         end record;
--//
--//     for X_Poly_Arc_Request use
--//         record
--//             Kind     at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad      at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length   at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Drawable at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Gc       at 2 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Poly_Fill_Arc_Request use
--//         record
--//             Kind     at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad      at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length   at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Drawable at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Gc       at 2 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Poly_Fill_Rectangle_Request use
--//         record
--//             Kind     at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad      at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length   at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Drawable at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Gc       at 2 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Poly_Line_Request use
--//         record
--//             Kind       at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Coord_Mode at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length     at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Drawable   at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Gc         at 2 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Poly_Point_Request use
--//         record
--//             Kind       at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Coord_Mode at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length     at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Drawable   at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Gc         at 2 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Poly_Rectangle_Request use
--//         record
--//             Kind     at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad      at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length   at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Drawable at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Gc       at 2 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Poly_Segment_Request use
--//         record
--//             Kind     at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad      at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length   at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Drawable at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Gc       at 2 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Poly_Text16_Request use
--//         record
--//             Kind     at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad      at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length   at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Drawable at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Gc       at 2 * X_Word range X_Word0a .. X_Word0b;
--//             X        at 3 * X_Word range X_Half0a .. X_Half0b;
--//             Y        at 3 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Poly_Text8_Request use
--//         record
--//             Kind     at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad      at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length   at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Drawable at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Gc       at 2 * X_Word range X_Word0a .. X_Word0b;
--//             X        at 3 * X_Word range X_Half0a .. X_Half0b;
--//             Y        at 3 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Put_Image_Request use
--//         record
--//             Kind     at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Format   at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length   at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Drawable at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Gc       at 2 * X_Word range X_Word0a .. X_Word0b;
--//             Width    at 3 * X_Word range X_Half0a .. X_Half0b;
--//             Height   at 3 * X_Word range X_Half1a .. X_Half1b;
--//             Dst_X    at 4 * X_Word range X_Half0a .. X_Half0b;
--//             Dst_Y    at 4 * X_Word range X_Half1a .. X_Half1b;
--//             Left_Pad at 5 * X_Word range X_Byte0a .. X_Byte0b;
--//             Depth    at 5 * X_Word range X_Byte1a .. X_Byte1b;
--//             Pad      at 5 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Query_Best_Size_Request use
--//         record
--//             Kind     at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Class    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length   at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Drawable at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Width    at 2 * X_Word range X_Half0a .. X_Half0b;
--//             Height   at 2 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Query_Colors_Request use
--//         record
--//             Kind     at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad      at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length   at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Colormap at 1 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Query_Extension_Request use
--//         record
--//             Kind    at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad     at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length  at 0 * X_Word range X_Half1a .. X_Half1b;
--//             N_Bytes at 1 * X_Word range X_Half0a .. X_Half0b;
--//             Pad1    at 1 * X_Word range X_Byte2a .. X_Byte2b;
--//             Pad2    at 1 * X_Word range X_Byte3a .. X_Byte3b;
--//         end record;
--//
--//     for X_Query_Font_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Id     at 1 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Query_Keymap_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Query_Pointer_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Id     at 1 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Query_Text_Extents_Request use
--//         record
--//             Kind       at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Odd_Length at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length     at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Font       at 1 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Query_Tree_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Window at 1 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Recolor_Cursor_Request use
--//         record
--//             Kind       at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad        at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length     at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Cursor     at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Fore_Red   at 2 * X_Word range X_Half0a .. X_Half0b;
--//             Fore_Green at 2 * X_Word range X_Half1a .. X_Half1b;
--//             Fore_Blue  at 3 * X_Word range X_Half0a .. X_Half0b;
--//             Back_Red   at 3 * X_Word range X_Half1a .. X_Half1b;
--//             Back_Green at 4 * X_Word range X_Half0a .. X_Half0b;
--//             Back_Blue  at 4 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Reparent_Window_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Window at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Parent at 2 * X_Word range X_Word0a .. X_Word0b;
--//             X      at 3 * X_Word range X_Half0a .. X_Half0b;
--//             Y      at 3 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Rotate_Properties_Request use
--//         record
--//             Kind        at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad         at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length      at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Window      at 1 * X_Word range X_Word0a .. X_Word0b;
--//             N_Atoms     at 2 * X_Word range X_Half0a .. X_Half0b;
--//             N_Positions at 2 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Send_Event_Request use
--//         record
--//             Kind        at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Propagate   at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length      at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Destination at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Event_Mask  at 2 * X_Word range X_Word0a .. X_Word0b;
--//             Event       at 3 * X_Word range 0 .. 8 * 32 - 1;
--//         end record;
--//
--//     for X_Set_Access_Control_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Mode   at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Set_Clip_Rectangles_Request use
--//         record
--//             Kind     at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Ordering at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length   at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Gc       at 1 * X_Word range X_Word0a .. X_Word0b;
--//             X_Origin at 2 * X_Word range X_Half0a .. X_Half0b;
--//             Y_Origin at 2 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Set_Close_Down_Mode_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Mode   at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Set_Dashes_Request use
--//         record
--//             Kind        at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad         at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length      at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Gc          at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Dash_Offset at 2 * X_Word range X_Half0a .. X_Half0b;
--//             N_Dashes    at 2 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Set_Font_Path_Request use
--//         record
--//             Kind    at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad     at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length  at 0 * X_Word range X_Half1a .. X_Half1b;
--//             N_Fonts at 1 * X_Word range X_Half0a .. X_Half0b;
--//             Pad1    at 1 * X_Word range X_Byte2a .. X_Byte2b;
--//             Pad2    at 1 * X_Word range X_Byte3a .. X_Byte3b;
--//         end record;
--//
--//     for X_Set_Input_Focus_Request use
--//         record
--//             Kind      at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Revert_To at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length    at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Focus     at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Time      at 2 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Set_Modifier_Mapping_Request use
--//         record
--//             Kind                 at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Num_Key_Per_Modifier at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length               at 0 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Set_Pointer_Mapping_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             N_Elts at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Set_Screen_Saver_Request use
--//         record
--//             Kind         at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad          at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length       at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Timeout      at 1 * X_Word range X_Half0a .. X_Half0b;
--//             Interval     at 1 * X_Word range X_Half1a .. X_Half1b;
--//             Prefer_Blank at 2 * X_Word range X_Byte0a .. X_Byte0b;
--//             Allow_Expose at 2 * X_Word range X_Byte1a .. X_Byte1b;
--//             Pad2         at 2 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Set_Selection_Owner_Request use
--//         record
--//             Kind      at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad       at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length    at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Window    at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Selection at 2 * X_Word range X_Word0a .. X_Word0b;
--//             Time      at 3 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Store_Colors_Request use
--//         record
--//             Kind     at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad      at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length   at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Colormap at 1 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Color_Item use
--//         record
--//             Pixel at 0 * X_Word range X_Word0a .. X_Word0b;
--//             Red   at 1 * X_Word range X_Half0a .. X_Half0b;
--//             Green at 1 * X_Word range X_Half1a .. X_Half1b;
--//             Blue  at 2 * X_Word range X_Half0a .. X_Half0b;
--//             Flags at 2 * X_Word range X_Byte2a .. X_Byte2b;
--//             Pad   at 2 * X_Word range X_Byte3a .. X_Byte3b;
--//         end record;
--//
--//     for X_Store_Named_Color_Request use
--//         record
--//             Kind     at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Flags    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length   at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Colormap at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Pixel    at 2 * X_Word range X_Word0a .. X_Word0b;
--//             N_Bytes  at 3 * X_Word range X_Half0a .. X_Half0b;
--//             Pad1     at 3 * X_Word range X_Byte2a .. X_Byte2b;
--//             Pad2     at 3 * X_Word range X_Byte3a .. X_Byte3b;
--//         end record;
--//
--//     for X_Translate_Coords_Request use
--//         record
--//             Kind       at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad        at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length     at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Src_Window at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Dst_Window at 2 * X_Word range X_Word0a .. X_Word0b;
--//             Src_X      at 3 * X_Word range X_Half0a .. X_Half0b;
--//             Src_Y      at 3 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Ungrab_Button_Request use
--//         record
--//             Kind        at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Button      at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length      at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Grab_Window at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Modifiers   at 2 * X_Word range X_Half0a .. X_Half0b;
--//             Pad         at 2 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Ungrab_Key_Request use
--//         record
--//             Kind        at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Key         at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length      at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Grab_Window at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Modifiers   at 2 * X_Word range X_Half0a .. X_Half0b;
--//             Pad         at 2 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Ungrab_Keyboard_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Time   at 1 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Ungrab_Pointer_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Time   at 1 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Ungrab_Server_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--//     for X_Uninstall_Colormap_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Id     at 1 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Unmap_Subwindows_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Id     at 1 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Unmap_Window_Request use
--//         record
--//             Kind   at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad    at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Id     at 1 * X_Word range X_Word0a .. X_Word0b;
--//         end record;
--//
--//     for X_Warp_Pointer_Request use
--//         record
--//             Kind       at 0 * X_Word range X_Byte0a .. X_Byte0b;
--//             Pad        at 0 * X_Word range X_Byte1a .. X_Byte1b;
--//             Length     at 0 * X_Word range X_Half1a .. X_Half1b;
--//             Src_Window at 1 * X_Word range X_Word0a .. X_Word0b;
--//             Dst_Window at 2 * X_Word range X_Word0a .. X_Word0b;
--//             Src_X      at 3 * X_Word range X_Half0a .. X_Half0b;
--//             Src_Y      at 3 * X_Word range X_Half1a .. X_Half1b;
--//             Src_Width  at 4 * X_Word range X_Half0a .. X_Half0b;
--//             Src_Height at 4 * X_Word range X_Half1a .. X_Half1b;
--//             Dst_X      at 5 * X_Word range X_Half0a .. X_Half0b;
--//             Dst_Y      at 5 * X_Word range X_Half1a .. X_Half1b;
--//         end record;
--//
--/ end if;

end Xlbt_Request3;