111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/**************************************************************************** 211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert **************************************************************************** 311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** 411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** This header was automatically generated from a Linux kernel header 511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** of the same name, to make information necessary for userspace to 611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** call into the kernel available to libc. It contains only constants, 711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** structures, and macros generated from the original header, and thus, 811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** contains no copyrightable information. 911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** 1011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** To edit the content of this header, modify the corresponding 1111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** source file (e.g. under external/kernel-headers/original/) then 1211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** run bionic/libc/kernel/tools/update_all.py 1311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** 1411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** Any manual change here will be lost the next time this script will 1511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** be run. You've been warned! 1611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** 1711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert **************************************************************************** 1811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert ****************************************************************************/ 1911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#ifndef _UAPI_LINUX_KD_H 2011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _UAPI_LINUX_KD_H 2111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#include <linux/types.h> 2211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#include <linux/compiler.h> 2311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 2411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define GIO_FONT 0x4B60 2511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define PIO_FONT 0x4B61 2611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define GIO_FONTX 0x4B6B 2711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define PIO_FONTX 0x4B6C 2811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 2911cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct consolefontdesc { 3011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned short charcount; 3111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned short charheight; 3211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert char __user *chardata; 3311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 3411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 3511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define PIO_FONTRESET 0x4B6D 3611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define GIO_CMAP 0x4B70 3711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define PIO_CMAP 0x4B71 3811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 3911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KIOCSOUND 0x4B2F 4011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDMKTONE 0x4B30 4111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDGETLED 0x4B31 4211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDSETLED 0x4B32 4311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 4411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define LED_SCR 0x01 4511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define LED_NUM 0x02 4611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define LED_CAP 0x04 4711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDGKBTYPE 0x4B33 4811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 4911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KB_84 0x01 5011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KB_101 0x02 5111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KB_OTHER 0x03 5211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDADDIO 0x4B34 5311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 5411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDDELIO 0x4B35 5511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDENABIO 0x4B36 5611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDDISABIO 0x4B37 5711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDSETMODE 0x4B3A 5811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 5911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KD_TEXT 0x00 6011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KD_GRAPHICS 0x01 6111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KD_TEXT0 0x02 6211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KD_TEXT1 0x03 6311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 6411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDGETMODE 0x4B3B 6511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDMAPDISP 0x4B3C 6611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDUNMAPDISP 0x4B3D 6711cd02dfb91661c65134cac258cf5924270e9d2Dan Alberttypedef char scrnmap_t; 6811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 6911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define E_TABSZ 256 7011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define GIO_SCRNMAP 0x4B40 7111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define PIO_SCRNMAP 0x4B41 7211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define GIO_UNISCRNMAP 0x4B69 7311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 7411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define PIO_UNISCRNMAP 0x4B6A 7511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define GIO_UNIMAP 0x4B66 7611cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct unipair { 7711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned short unicode; 7811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 7911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned short fontpos; 8011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 8111cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct unimapdesc { 8211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned short entry_ct; 8311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 8411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert struct unipair __user *entries; 8511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 8611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define PIO_UNIMAP 0x4B67 8711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define PIO_UNIMAPCLR 0x4B68 8811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 8911cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct unimapinit { 9011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned short advised_hashsize; 9111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned short advised_hashstep; 9211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned short advised_hashlevel; 9311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 9411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 9511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define UNI_DIRECT_BASE 0xF000 9611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define UNI_DIRECT_MASK 0x01FF 9711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define K_RAW 0x00 9811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 9911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define K_XLATE 0x01 10011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define K_MEDIUMRAW 0x02 10111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define K_UNICODE 0x03 10211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define K_OFF 0x04 10311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 10411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDGKBMODE 0x4B44 10511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDSKBMODE 0x4B45 10611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define K_METABIT 0x03 10711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define K_ESCPREFIX 0x04 10811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 10911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDGKBMETA 0x4B62 11011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDSKBMETA 0x4B63 11111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define K_SCROLLLOCK 0x01 11211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define K_NUMLOCK 0x02 11311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 11411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define K_CAPSLOCK 0x04 11511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDGKBLED 0x4B64 11611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDSKBLED 0x4B65 11711cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct kbentry { 11811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 11911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char kb_table; 12011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char kb_index; 12111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned short kb_value; 12211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 12311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 12411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define K_NORMTAB 0x00 12511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define K_SHIFTTAB 0x01 12611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define K_ALTTAB 0x02 12711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define K_ALTSHIFTTAB 0x03 12811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 12911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDGKBENT 0x4B46 13011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDSKBENT 0x4B47 13111cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct kbsentry { 13211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char kb_func; 13311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 13411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char kb_string[512]; 13511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 13611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDGKBSENT 0x4B48 13711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDSKBSENT 0x4B49 13811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 13911cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct kbdiacr { 14011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char diacr, base, result; 14111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 14211cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct kbdiacrs { 14311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 14411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned int kb_cnt; 14511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert struct kbdiacr kbdiacr[256]; 14611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 14711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDGKBDIACR 0x4B4A 14811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 14911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDSKBDIACR 0x4B4B 15011cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct kbdiacruc { 15111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned int diacr, base, result; 15211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 15311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 15411cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct kbdiacrsuc { 15511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned int kb_cnt; 15611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert struct kbdiacruc kbdiacruc[256]; 15711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 15811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 15911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDGKBDIACRUC 0x4BFA 16011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDSKBDIACRUC 0x4BFB 16111cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct kbkeycode { 16211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned int scancode, keycode; 16311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 16411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 16511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDGETKEYCODE 0x4B4C 16611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDSETKEYCODE 0x4B4D 16711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDSIGACCEPT 0x4B4E 16811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 16911cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct kbd_repeat { 17011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int delay; 17111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int period; 17211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 17311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 17411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDKBDREP 0x4B52 17511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDFONTOP 0x4B72 17611cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct console_font_op { 17711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned int op; 17811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 17911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned int flags; 18011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned int width, height; 18111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned int charcount; 18211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char __user *data; 18311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 18411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 18511cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct console_font { 18611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned int width, height; 18711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned int charcount; 18811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 18911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char *data; 19011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 19111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KD_FONT_OP_SET 0 19211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KD_FONT_OP_GET 1 19311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 19411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KD_FONT_OP_SET_DEFAULT 2 19511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KD_FONT_OP_COPY 3 19611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KD_FONT_FLAG_DONT_RECALC 1 19711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#endif 19811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 199