platform:serial8250
 ?÷     	              index;
} xcb_xkb_lock_behavior_iterator_t;

/**
 * @brief xcb_xkb_radio_group_behavior_t
 **/
typedef struct xcb_xkb_radio_group_behavior_t {
    uint8_t type;
    uint8_t group;
} xcb_xkb_radio_group_behavior_t;

/**
 * @brief xcb_xkb_radio_group_behavior_iterator_t
 **/
typedef struct xcb_xkb_radio_group_behavior_iterator_t {
    xcb_xkb_radio_group_behavior_t *data;
    int                             rem;
    int                             index;
} xcb_xkb_radio_group_behavior_iterator_t;

/**
 * @brief xcb_xkb_overlay_behavior_t
 **/
typedef struct xcb_xkb_overlay_behavior_t {
    uint8_t       type;
    xcb_keycode_t key;
} xcb_xkb_overlay_behavior_t;

/**
 * @brief xcb_xkb_overlay_behavior_iterator_t
 **/
typedef struct xcb_xkb_overlay_behavior_iterator_t {
    xcb_xkb_overlay_behavior_t *data;
    int                         rem;
    int                         index;
} xcb_xkb_overlay_behavior_iterator_t;

/**
 * @brief xcb_xkb_permament_lock_behavior_t
 **/
typedef struct xcb_xkb_permament_lock_behavior_t {
    uint8_t type;
    uint8_t pad0;
} xcb_xkb_permament_lock_behavior_t;

/**
 * @brief xcb_xkb_permament_lock_behavior_iterator_t
 **/
typedef struct xcb_xkb_permament_lock_behavior_iterator_t {
    xcb_xkb_permament_lock_behavior_t *data;
    int                                rem;
    int                                index;
} xcb_xkb_permament_lock_behavior_iterator_t;

/**
 * @brief xcb_xkb_permament_radio_group_behavior_t
 **/
typedef struct xcb_xkb_permament_radio_group_behavior_t {
    uint8_t type;
    uint8_t group;
} xcb_xkb_permament_radio_group_behavior_t;

/**
 * @brief xcb_xkb_permament_radio_group_behavior_iterator_t
 **/
typedef struct xcb_xkb_permament_radio_group_behavior_iterator_t {
    xcb_xkb_permament_radio_group_behavior_t *data;
    int                                       rem;
    int                                       index;
} xcb_xkb_permament_radio_group_behavior_iterator_t;

/**
 * @brief xcb_xkb_permament_overlay_behavior_t
 **/
typedef struct xcb_xkb_permament_overlay_behavior_t {
    uint8_t       type;
    xcb_keycode_t key;
} xcb_xkb_permament_overlay_behavior_t;

/**
 * @brief xcb_xkb_permament_overlay_behavior_iterator_t
 **/
typedef struct xcb_xkb_permament_overlay_behavior_iterator_t {
    xcb_xkb_permament_overlay_behavior_t *data;
    int                                   rem;
    int                                   index;
} xcb_xkb_permament_overlay_behavior_iterator_t;

/**
 * @brief xcb_xkb_behavior_t
 **/
typedef union xcb_xkb_behavior_t {
    xcb_xkb_common_behavior_t                common;
    xcb_xkb_default_behavior_t               _default;
    xcb_xkb_lock_behavior_t                  lock;
    xcb_xkb_radio_group_behavior_t           radioGroup;
    xcb_xkb_overlay_behavior_t               overlay1;
    xcb_xkb_overlay_behavior_t               overlay2;
    xcb_xkb_permament_lock_behavior_t        permamentLock;
    xcb_xkb_permament_radio_group_behavior_t permamentRadioGroup;
    xcb_xkb_permament_overlay_behavior_t     permamentOverlay1;
    xcb_xkb_permament_overlay_behavior_t     permamentOverlay2;
    uint8_t                                  type;
} xcb_xkb_behavior_t;

/**
 * @brief xcb_xkb_behavior_iterator_t
 **/
typedef struct xcb_xkb_behavior_iterator_t {
    xcb_xkb_behavior_t *data;
    int                 rem;
    int                 index;
} xcb_xkb_behavior_iterator_t;

typedef enum xcb_xkb_behavior_type_t {
    XCB_XKB_BEHAVIOR_TYPE_DEFAULT = 0,
    XCB_XKB_BEHAVIOR_TYPE_LOCK = 1,
    XCB_XKB_BEHAVIOR_TYPE_RADIO_GROUP = 2,
    XCB_XKB_BEHAVIOR_TYPE_OVERLAY_1 = 3,
    XCB_XKB_BEHAVIOR_TYPE_OVERLAY_2 = 4,
    XCB_XKB_BEHAVIOR_TYPE_PERMAMENT_LOCK = 129,
    XCB_XKB_BEHAVIOR_TYPE_PERMAMENT_RADIO_GROUP = 130,
    XCB_XKB_BEHAVIOR_TYPE_PERMAMENT_OVERLAY_1 = 131,
    XCB_XKB_BEHAVIOR_TYPE_PERMAMENT_OVERLAY_2 = 132
} xcb_xkb_behavior_type_t;

/**
 * @brief xcb_xkb_set_behavior_t
 **/
typedef struct xcb_xkb_set_behavior_t {
    xcb_keycode_t      keycode;
    xcb_xkb_behavior_t behavior;
    uint8_t 