//! NOTE: this file is autogenerated, DO NOT MODIFY
//--------------------------------------------------------------------------------
// Section: Constants (3105)
//--------------------------------------------------------------------------------
pub const _MM_HINT_T0 = @as(u32, 1);
pub const _MM_HINT_T1 = @as(u32, 2);
pub const _MM_HINT_T2 = @as(u32, 3);
pub const _MM_HINT_NTA = @as(u32, 0);
pub const ANYSIZE_ARRAY = @as(u32, 1);
pub const MEMORY_ALLOCATION_ALIGNMENT = @as(u32, 16);
pub const X86_CACHE_ALIGNMENT_SIZE = @as(u32, 64);
pub const ARM_CACHE_ALIGNMENT_SIZE = @as(u32, 128);
pub const SYSTEM_CACHE_ALIGNMENT_SIZE = @as(u32, 64);
pub const PRAGMA_DEPRECATED_DDK = @as(u32, 1);
pub const UCSCHAR_INVALID_CHARACTER = @as(u32, 4294967295);
pub const MIN_UCSCHAR = @as(u32, 0);
pub const MAX_UCSCHAR = @as(u32, 1114111);
pub const ALL_PROCESSOR_GROUPS = @as(u32, 65535);
pub const MAXIMUM_PROC_PER_GROUP = @as(u32, 64);
pub const MAXIMUM_PROCESSORS = @as(u32, 64);
pub const APPLICATION_ERROR_MASK = @as(u32, 536870912);
pub const ERROR_SEVERITY_SUCCESS = @as(u32, 0);
pub const ERROR_SEVERITY_INFORMATIONAL = @as(u32, 1073741824);
pub const ERROR_SEVERITY_WARNING = @as(u32, 2147483648);
pub const ERROR_SEVERITY_ERROR = @as(u32, 3221225472);
pub const MAXLONGLONG = @as(u64, 9223372036854775807);
pub const UNICODE_STRING_MAX_CHARS = @as(u32, 32767);
pub const MINCHAR = @as(u32, 128);
pub const MAXCHAR = @as(u32, 127);
pub const MINSHORT = @as(u32, 32768);
pub const MAXSHORT = @as(u32, 32767);
pub const MINLONG = @as(u32, 2147483648);
pub const MAXLONG = @as(u32, 2147483647);
pub const MAXBYTE = @as(u32, 255);
pub const MAXWORD = @as(u32, 65535);
pub const MAXDWORD = @as(u32, 4294967295);
pub const ENCLAVE_SHORT_ID_LENGTH = @as(u32, 16);
pub const ENCLAVE_LONG_ID_LENGTH = @as(u32, 32);
pub const VER_SERVER_NT = @as(u32, 2147483648);
pub const VER_WORKSTATION_NT = @as(u32, 1073741824);
pub const VER_SUITE_SMALLBUSINESS = @as(u32, 1);
pub const VER_SUITE_ENTERPRISE = @as(u32, 2);
pub const VER_SUITE_BACKOFFICE = @as(u32, 4);
pub const VER_SUITE_COMMUNICATIONS = @as(u32, 8);
pub const VER_SUITE_TERMINAL = @as(u32, 16);
pub const VER_SUITE_SMALLBUSINESS_RESTRICTED = @as(u32, 32);
pub const VER_SUITE_EMBEDDEDNT = @as(u32, 64);
pub const VER_SUITE_DATACENTER = @as(u32, 128);
pub const VER_SUITE_SINGLEUSERTS = @as(u32, 256);
pub const VER_SUITE_PERSONAL = @as(u32, 512);
pub const VER_SUITE_BLADE = @as(u32, 1024);
pub const VER_SUITE_EMBEDDED_RESTRICTED = @as(u32, 2048);
pub const VER_SUITE_SECURITY_APPLIANCE = @as(u32, 4096);
pub const VER_SUITE_STORAGE_SERVER = @as(u32, 8192);
pub const VER_SUITE_COMPUTE_SERVER = @as(u32, 16384);
pub const VER_SUITE_WH_SERVER = @as(u32, 32768);
pub const VER_SUITE_MULTIUSERTS = @as(u32, 131072);
pub const PRODUCT_STANDARD_SERVER_CORE = @as(u32, 13);
pub const PRODUCT_SOLUTION_EMBEDDEDSERVER_CORE = @as(u32, 57);
pub const PRODUCT_PROFESSIONAL_EMBEDDED = @as(u32, 58);
pub const PRODUCT_EMBEDDED = @as(u32, 65);
pub const PRODUCT_EMBEDDED_AUTOMOTIVE = @as(u32, 85);
pub const PRODUCT_EMBEDDED_INDUSTRY_A = @as(u32, 86);
pub const PRODUCT_THINPC = @as(u32, 87);
pub const PRODUCT_EMBEDDED_A = @as(u32, 88);
pub const PRODUCT_EMBEDDED_INDUSTRY = @as(u32, 89);
pub const PRODUCT_EMBEDDED_E = @as(u32, 90);
pub const PRODUCT_EMBEDDED_INDUSTRY_E = @as(u32, 91);
pub const PRODUCT_EMBEDDED_INDUSTRY_A_E = @as(u32, 92);
pub const PRODUCT_CORE_ARM = @as(u32, 97);
pub const PRODUCT_EMBEDDED_INDUSTRY_EVAL = @as(u32, 105);
pub const PRODUCT_EMBEDDED_INDUSTRY_E_EVAL = @as(u32, 106);
pub const PRODUCT_EMBEDDED_EVAL = @as(u32, 107);
pub const PRODUCT_EMBEDDED_E_EVAL = @as(u32, 108);
pub const PRODUCT_NANO_SERVER = @as(u32, 109);
pub const PRODUCT_CLOUD_STORAGE_SERVER = @as(u32, 110);
pub const PRODUCT_CORE_CONNECTED = @as(u32, 111);
pub const PRODUCT_PROFESSIONAL_STUDENT = @as(u32, 112);
pub const PRODUCT_CORE_CONNECTED_N = @as(u32, 113);
pub const PRODUCT_PROFESSIONAL_STUDENT_N = @as(u32, 114);
pub const PRODUCT_CORE_CONNECTED_SINGLELANGUAGE = @as(u32, 115);
pub const PRODUCT_CORE_CONNECTED_COUNTRYSPECIFIC = @as(u32, 116);
pub const PRODUCT_CONNECTED_CAR = @as(u32, 117);
pub const PRODUCT_INDUSTRY_HANDHELD = @as(u32, 118);
pub const PRODUCT_PPI_PRO = @as(u32, 119);
pub const PRODUCT_ARM64_SERVER = @as(u32, 120);
pub const PRODUCT_CLOUD_HOST_INFRASTRUCTURE_SERVER = @as(u32, 124);
pub const PRODUCT_PROFESSIONAL_S = @as(u32, 127);
pub const PRODUCT_PROFESSIONAL_S_N = @as(u32, 128);
pub const PRODUCT_HOLOGRAPHIC = @as(u32, 135);
pub const PRODUCT_HOLOGRAPHIC_BUSINESS = @as(u32, 136);
pub const PRODUCT_PRO_SINGLE_LANGUAGE = @as(u32, 138);
pub const PRODUCT_PRO_CHINA = @as(u32, 139);
pub const PRODUCT_ENTERPRISE_SUBSCRIPTION = @as(u32, 140);
pub const PRODUCT_ENTERPRISE_SUBSCRIPTION_N = @as(u32, 141);
pub const PRODUCT_DATACENTER_NANO_SERVER = @as(u32, 143);
pub const PRODUCT_STANDARD_NANO_SERVER = @as(u32, 144);
pub const PRODUCT_DATACENTER_WS_SERVER_CORE = @as(u32, 147);
pub const PRODUCT_STANDARD_WS_SERVER_CORE = @as(u32, 148);
pub const PRODUCT_UTILITY_VM = @as(u32, 149);
pub const PRODUCT_DATACENTER_EVALUATION_SERVER_CORE = @as(u32, 159);
pub const PRODUCT_STANDARD_EVALUATION_SERVER_CORE = @as(u32, 160);
pub const PRODUCT_PRO_FOR_EDUCATION = @as(u32, 164);
pub const PRODUCT_PRO_FOR_EDUCATION_N = @as(u32, 165);
pub const PRODUCT_AZURE_SERVER_CORE = @as(u32, 168);
pub const PRODUCT_AZURE_NANO_SERVER = @as(u32, 169);
pub const PRODUCT_ENTERPRISEG = @as(u32, 171);
pub const PRODUCT_ENTERPRISEGN = @as(u32, 172);
pub const PRODUCT_SERVERRDSH = @as(u32, 175);
pub const PRODUCT_CLOUD = @as(u32, 178);
pub const PRODUCT_CLOUDN = @as(u32, 179);
pub const PRODUCT_HUBOS = @as(u32, 180);
pub const PRODUCT_ONECOREUPDATEOS = @as(u32, 182);
pub const PRODUCT_CLOUDE = @as(u32, 183);
pub const PRODUCT_IOTOS = @as(u32, 185);
pub const PRODUCT_CLOUDEN = @as(u32, 186);
pub const PRODUCT_IOTEDGEOS = @as(u32, 187);
pub const PRODUCT_IOTENTERPRISE = @as(u32, 188);
pub const PRODUCT_LITE = @as(u32, 189);
pub const PRODUCT_IOTENTERPRISES = @as(u32, 191);
pub const PRODUCT_XBOX_SYSTEMOS = @as(u32, 192);
pub const PRODUCT_XBOX_NATIVEOS = @as(u32, 193);
pub const PRODUCT_XBOX_GAMEOS = @as(u32, 194);
pub const PRODUCT_XBOX_ERAOS = @as(u32, 195);
pub const PRODUCT_XBOX_DURANGOHOSTOS = @as(u32, 196);
pub const PRODUCT_XBOX_SCARLETTHOSTOS = @as(u32, 197);
pub const PRODUCT_AZURE_SERVER_CLOUDHOST = @as(u32, 199);
pub const PRODUCT_AZURE_SERVER_CLOUDMOS = @as(u32, 200);
pub const PRODUCT_CLOUDEDITIONN = @as(u32, 202);
pub const PRODUCT_CLOUDEDITION = @as(u32, 203);
pub const PRODUCT_AZURESTACKHCI_SERVER_CORE = @as(u32, 406);
pub const PRODUCT_DATACENTER_SERVER_AZURE_EDITION = @as(u32, 407);
pub const PRODUCT_DATACENTER_SERVER_CORE_AZURE_EDITION = @as(u32, 408);
pub const PRODUCT_UNLICENSED = @as(u32, 2882382797);
pub const LANG_NEUTRAL = @as(u32, 0);
pub const LANG_INVARIANT = @as(u32, 127);
pub const LANG_AFRIKAANS = @as(u32, 54);
pub const LANG_ALBANIAN = @as(u32, 28);
pub const LANG_ALSATIAN = @as(u32, 132);
pub const LANG_AMHARIC = @as(u32, 94);
pub const LANG_ARABIC = @as(u32, 1);
pub const LANG_ARMENIAN = @as(u32, 43);
pub const LANG_ASSAMESE = @as(u32, 77);
pub const LANG_AZERI = @as(u32, 44);
pub const LANG_AZERBAIJANI = @as(u32, 44);
pub const LANG_BANGLA = @as(u32, 69);
pub const LANG_BASHKIR = @as(u32, 109);
pub const LANG_BASQUE = @as(u32, 45);
pub const LANG_BELARUSIAN = @as(u32, 35);
pub const LANG_BENGALI = @as(u32, 69);
pub const LANG_BRETON = @as(u32, 126);
pub const LANG_BOSNIAN = @as(u32, 26);
pub const LANG_BOSNIAN_NEUTRAL = @as(u32, 30746);
pub const LANG_BULGARIAN = @as(u32, 2);
pub const LANG_CATALAN = @as(u32, 3);
pub const LANG_CENTRAL_KURDISH = @as(u32, 146);
pub const LANG_CHEROKEE = @as(u32, 92);
pub const LANG_CHINESE = @as(u32, 4);
pub const LANG_CHINESE_SIMPLIFIED = @as(u32, 4);
pub const LANG_CHINESE_TRADITIONAL = @as(u32, 31748);
pub const LANG_CORSICAN = @as(u32, 131);
pub const LANG_CROATIAN = @as(u32, 26);
pub const LANG_CZECH = @as(u32, 5);
pub const LANG_DANISH = @as(u32, 6);
pub const LANG_DARI = @as(u32, 140);
pub const LANG_DIVEHI = @as(u32, 101);
pub const LANG_DUTCH = @as(u32, 19);
pub const LANG_ENGLISH = @as(u32, 9);
pub const LANG_ESTONIAN = @as(u32, 37);
pub const LANG_FAEROESE = @as(u32, 56);
pub const LANG_FARSI = @as(u32, 41);
pub const LANG_FILIPINO = @as(u32, 100);
pub const LANG_FINNISH = @as(u32, 11);
pub const LANG_FRENCH = @as(u32, 12);
pub const LANG_FRISIAN = @as(u32, 98);
pub const LANG_FULAH = @as(u32, 103);
pub const LANG_GALICIAN = @as(u32, 86);
pub const LANG_GEORGIAN = @as(u32, 55);
pub const LANG_GERMAN = @as(u32, 7);
pub const LANG_GREEK = @as(u32, 8);
pub const LANG_GREENLANDIC = @as(u32, 111);
pub const LANG_GUJARATI = @as(u32, 71);
pub const LANG_HAUSA = @as(u32, 104);
pub const LANG_HAWAIIAN = @as(u32, 117);
pub const LANG_HEBREW = @as(u32, 13);
pub const LANG_HINDI = @as(u32, 57);
pub const LANG_HUNGARIAN = @as(u32, 14);
pub const LANG_ICELANDIC = @as(u32, 15);
pub const LANG_IGBO = @as(u32, 112);
pub const LANG_INDONESIAN = @as(u32, 33);
pub const LANG_INUKTITUT = @as(u32, 93);
pub const LANG_IRISH = @as(u32, 60);
pub const LANG_ITALIAN = @as(u32, 16);
pub const LANG_JAPANESE = @as(u32, 17);
pub const LANG_KANNADA = @as(u32, 75);
pub const LANG_KASHMIRI = @as(u32, 96);
pub const LANG_KAZAK = @as(u32, 63);
pub const LANG_KHMER = @as(u32, 83);
pub const LANG_KICHE = @as(u32, 134);
pub const LANG_KINYARWANDA = @as(u32, 135);
pub const LANG_KONKANI = @as(u32, 87);
pub const LANG_KOREAN = @as(u32, 18);
pub const LANG_KYRGYZ = @as(u32, 64);
pub const LANG_LAO = @as(u32, 84);
pub const LANG_LATVIAN = @as(u32, 38);
pub const LANG_LITHUANIAN = @as(u32, 39);
pub const LANG_LOWER_SORBIAN = @as(u32, 46);
pub const LANG_LUXEMBOURGISH = @as(u32, 110);
pub const LANG_MACEDONIAN = @as(u32, 47);
pub const LANG_MALAY = @as(u32, 62);
pub const LANG_MALAYALAM = @as(u32, 76);
pub const LANG_MALTESE = @as(u32, 58);
pub const LANG_MANIPURI = @as(u32, 88);
pub const LANG_MAORI = @as(u32, 129);
pub const LANG_MAPUDUNGUN = @as(u32, 122);
pub const LANG_MARATHI = @as(u32, 78);
pub const LANG_MOHAWK = @as(u32, 124);
pub const LANG_MONGOLIAN = @as(u32, 80);
pub const LANG_NEPALI = @as(u32, 97);
pub const LANG_NORWEGIAN = @as(u32, 20);
pub const LANG_OCCITAN = @as(u32, 130);
pub const LANG_ODIA = @as(u32, 72);
pub const LANG_ORIYA = @as(u32, 72);
pub const LANG_PASHTO = @as(u32, 99);
pub const LANG_PERSIAN = @as(u32, 41);
pub const LANG_POLISH = @as(u32, 21);
pub const LANG_PORTUGUESE = @as(u32, 22);
pub const LANG_PULAR = @as(u32, 103);
pub const LANG_PUNJABI = @as(u32, 70);
pub const LANG_QUECHUA = @as(u32, 107);
pub const LANG_ROMANIAN = @as(u32, 24);
pub const LANG_ROMANSH = @as(u32, 23);
pub const LANG_RUSSIAN = @as(u32, 25);
pub const LANG_SAKHA = @as(u32, 133);
pub const LANG_SAMI = @as(u32, 59);
pub const LANG_SANSKRIT = @as(u32, 79);
pub const LANG_SCOTTISH_GAELIC = @as(u32, 145);
pub const LANG_SERBIAN = @as(u32, 26);
pub const LANG_SERBIAN_NEUTRAL = @as(u32, 31770);
pub const LANG_SINDHI = @as(u32, 89);
pub const LANG_SINHALESE = @as(u32, 91);
pub const LANG_SLOVAK = @as(u32, 27);
pub const LANG_SLOVENIAN = @as(u32, 36);
pub const LANG_SOTHO = @as(u32, 108);
pub const LANG_SPANISH = @as(u32, 10);
pub const LANG_SWAHILI = @as(u32, 65);
pub const LANG_SWEDISH = @as(u32, 29);
pub const LANG_SYRIAC = @as(u32, 90);
pub const LANG_TAJIK = @as(u32, 40);
pub const LANG_TAMAZIGHT = @as(u32, 95);
pub const LANG_TAMIL = @as(u32, 73);
pub const LANG_TATAR = @as(u32, 68);
pub const LANG_TELUGU = @as(u32, 74);
pub const LANG_THAI = @as(u32, 30);
pub const LANG_TIBETAN = @as(u32, 81);
pub const LANG_TIGRIGNA = @as(u32, 115);
pub const LANG_TIGRINYA = @as(u32, 115);
pub const LANG_TSWANA = @as(u32, 50);
pub const LANG_TURKISH = @as(u32, 31);
pub const LANG_TURKMEN = @as(u32, 66);
pub const LANG_UIGHUR = @as(u32, 128);
pub const LANG_UKRAINIAN = @as(u32, 34);
pub const LANG_UPPER_SORBIAN = @as(u32, 46);
pub const LANG_URDU = @as(u32, 32);
pub const LANG_UZBEK = @as(u32, 67);
pub const LANG_VALENCIAN = @as(u32, 3);
pub const LANG_VIETNAMESE = @as(u32, 42);
pub const LANG_WELSH = @as(u32, 82);
pub const LANG_WOLOF = @as(u32, 136);
pub const LANG_XHOSA = @as(u32, 52);
pub const LANG_YAKUT = @as(u32, 133);
pub const LANG_YI = @as(u32, 120);
pub const LANG_YORUBA = @as(u32, 106);
pub const LANG_ZULU = @as(u32, 53);
pub const SUBLANG_NEUTRAL = @as(u32, 0);
pub const SUBLANG_DEFAULT = @as(u32, 1);
pub const SUBLANG_SYS_DEFAULT = @as(u32, 2);
pub const SUBLANG_CUSTOM_DEFAULT = @as(u32, 3);
pub const SUBLANG_CUSTOM_UNSPECIFIED = @as(u32, 4);
pub const SUBLANG_UI_CUSTOM_DEFAULT = @as(u32, 5);
pub const SUBLANG_AFRIKAANS_SOUTH_AFRICA = @as(u32, 1);
pub const SUBLANG_ALBANIAN_ALBANIA = @as(u32, 1);
pub const SUBLANG_ALSATIAN_FRANCE = @as(u32, 1);
pub const SUBLANG_AMHARIC_ETHIOPIA = @as(u32, 1);
pub const SUBLANG_ARABIC_SAUDI_ARABIA = @as(u32, 1);
pub const SUBLANG_ARABIC_IRAQ = @as(u32, 2);
pub const SUBLANG_ARABIC_EGYPT = @as(u32, 3);
pub const SUBLANG_ARABIC_LIBYA = @as(u32, 4);
pub const SUBLANG_ARABIC_ALGERIA = @as(u32, 5);
pub const SUBLANG_ARABIC_MOROCCO = @as(u32, 6);
pub const SUBLANG_ARABIC_TUNISIA = @as(u32, 7);
pub const SUBLANG_ARABIC_OMAN = @as(u32, 8);
pub const SUBLANG_ARABIC_YEMEN = @as(u32, 9);
pub const SUBLANG_ARABIC_SYRIA = @as(u32, 10);
pub const SUBLANG_ARABIC_JORDAN = @as(u32, 11);
pub const SUBLANG_ARABIC_LEBANON = @as(u32, 12);
pub const SUBLANG_ARABIC_KUWAIT = @as(u32, 13);
pub const SUBLANG_ARABIC_UAE = @as(u32, 14);
pub const SUBLANG_ARABIC_BAHRAIN = @as(u32, 15);
pub const SUBLANG_ARABIC_QATAR = @as(u32, 16);
pub const SUBLANG_ARMENIAN_ARMENIA = @as(u32, 1);
pub const SUBLANG_ASSAMESE_INDIA = @as(u32, 1);
pub const SUBLANG_AZERI_LATIN = @as(u32, 1);
pub const SUBLANG_AZERI_CYRILLIC = @as(u32, 2);
pub const SUBLANG_AZERBAIJANI_AZERBAIJAN_LATIN = @as(u32, 1);
pub const SUBLANG_AZERBAIJANI_AZERBAIJAN_CYRILLIC = @as(u32, 2);
pub const SUBLANG_BANGLA_INDIA = @as(u32, 1);
pub const SUBLANG_BANGLA_BANGLADESH = @as(u32, 2);
pub const SUBLANG_BASHKIR_RUSSIA = @as(u32, 1);
pub const SUBLANG_BASQUE_BASQUE = @as(u32, 1);
pub const SUBLANG_BELARUSIAN_BELARUS = @as(u32, 1);
pub const SUBLANG_BENGALI_INDIA = @as(u32, 1);
pub const SUBLANG_BENGALI_BANGLADESH = @as(u32, 2);
pub const SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_LATIN = @as(u32, 5);
pub const SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_CYRILLIC = @as(u32, 8);
pub const SUBLANG_BRETON_FRANCE = @as(u32, 1);
pub const SUBLANG_BULGARIAN_BULGARIA = @as(u32, 1);
pub const SUBLANG_CATALAN_CATALAN = @as(u32, 1);
pub const SUBLANG_CENTRAL_KURDISH_IRAQ = @as(u32, 1);
pub const SUBLANG_CHEROKEE_CHEROKEE = @as(u32, 1);
pub const SUBLANG_CHINESE_TRADITIONAL = @as(u32, 1);
pub const SUBLANG_CHINESE_SIMPLIFIED = @as(u32, 2);
pub const SUBLANG_CHINESE_HONGKONG = @as(u32, 3);
pub const SUBLANG_CHINESE_SINGAPORE = @as(u32, 4);
pub const SUBLANG_CHINESE_MACAU = @as(u32, 5);
pub const SUBLANG_CORSICAN_FRANCE = @as(u32, 1);
pub const SUBLANG_CZECH_CZECH_REPUBLIC = @as(u32, 1);
pub const SUBLANG_CROATIAN_CROATIA = @as(u32, 1);
pub const SUBLANG_CROATIAN_BOSNIA_HERZEGOVINA_LATIN = @as(u32, 4);
pub const SUBLANG_DANISH_DENMARK = @as(u32, 1);
pub const SUBLANG_DARI_AFGHANISTAN = @as(u32, 1);
pub const SUBLANG_DIVEHI_MALDIVES = @as(u32, 1);
pub const SUBLANG_DUTCH = @as(u32, 1);
pub const SUBLANG_DUTCH_BELGIAN = @as(u32, 2);
pub const SUBLANG_ENGLISH_US = @as(u32, 1);
pub const SUBLANG_ENGLISH_UK = @as(u32, 2);
pub const SUBLANG_ENGLISH_AUS = @as(u32, 3);
pub const SUBLANG_ENGLISH_CAN = @as(u32, 4);
pub const SUBLANG_ENGLISH_NZ = @as(u32, 5);
pub const SUBLANG_ENGLISH_EIRE = @as(u32, 6);
pub const SUBLANG_ENGLISH_SOUTH_AFRICA = @as(u32, 7);
pub const SUBLANG_ENGLISH_JAMAICA = @as(u32, 8);
pub const SUBLANG_ENGLISH_CARIBBEAN = @as(u32, 9);
pub const SUBLANG_ENGLISH_BELIZE = @as(u32, 10);
pub const SUBLANG_ENGLISH_TRINIDAD = @as(u32, 11);
pub const SUBLANG_ENGLISH_ZIMBABWE = @as(u32, 12);
pub const SUBLANG_ENGLISH_PHILIPPINES = @as(u32, 13);
pub const SUBLANG_ENGLISH_INDIA = @as(u32, 16);
pub const SUBLANG_ENGLISH_MALAYSIA = @as(u32, 17);
pub const SUBLANG_ENGLISH_SINGAPORE = @as(u32, 18);
pub const SUBLANG_ESTONIAN_ESTONIA = @as(u32, 1);
pub const SUBLANG_FAEROESE_FAROE_ISLANDS = @as(u32, 1);
pub const SUBLANG_FILIPINO_PHILIPPINES = @as(u32, 1);
pub const SUBLANG_FINNISH_FINLAND = @as(u32, 1);
pub const SUBLANG_FRENCH = @as(u32, 1);
pub const SUBLANG_FRENCH_BELGIAN = @as(u32, 2);
pub const SUBLANG_FRENCH_CANADIAN = @as(u32, 3);
pub const SUBLANG_FRENCH_SWISS = @as(u32, 4);
pub const SUBLANG_FRENCH_LUXEMBOURG = @as(u32, 5);
pub const SUBLANG_FRENCH_MONACO = @as(u32, 6);
pub const SUBLANG_FRISIAN_NETHERLANDS = @as(u32, 1);
pub const SUBLANG_FULAH_SENEGAL = @as(u32, 2);
pub const SUBLANG_GALICIAN_GALICIAN = @as(u32, 1);
pub const SUBLANG_GEORGIAN_GEORGIA = @as(u32, 1);
pub const SUBLANG_GERMAN = @as(u32, 1);
pub const SUBLANG_GERMAN_SWISS = @as(u32, 2);
pub const SUBLANG_GERMAN_AUSTRIAN = @as(u32, 3);
pub const SUBLANG_GERMAN_LUXEMBOURG = @as(u32, 4);
pub const SUBLANG_GERMAN_LIECHTENSTEIN = @as(u32, 5);
pub const SUBLANG_GREEK_GREECE = @as(u32, 1);
pub const SUBLANG_GREENLANDIC_GREENLAND = @as(u32, 1);
pub const SUBLANG_GUJARATI_INDIA = @as(u32, 1);
pub const SUBLANG_HAUSA_NIGERIA_LATIN = @as(u32, 1);
pub const SUBLANG_HAWAIIAN_US = @as(u32, 1);
pub const SUBLANG_HEBREW_ISRAEL = @as(u32, 1);
pub const SUBLANG_HINDI_INDIA = @as(u32, 1);
pub const SUBLANG_HUNGARIAN_HUNGARY = @as(u32, 1);
pub const SUBLANG_ICELANDIC_ICELAND = @as(u32, 1);
pub const SUBLANG_IGBO_NIGERIA = @as(u32, 1);
pub const SUBLANG_INDONESIAN_INDONESIA = @as(u32, 1);
pub const SUBLANG_INUKTITUT_CANADA = @as(u32, 1);
pub const SUBLANG_INUKTITUT_CANADA_LATIN = @as(u32, 2);
pub const SUBLANG_IRISH_IRELAND = @as(u32, 2);
pub const SUBLANG_ITALIAN = @as(u32, 1);
pub const SUBLANG_ITALIAN_SWISS = @as(u32, 2);
pub const SUBLANG_JAPANESE_JAPAN = @as(u32, 1);
pub const SUBLANG_KANNADA_INDIA = @as(u32, 1);
pub const SUBLANG_KASHMIRI_SASIA = @as(u32, 2);
pub const SUBLANG_KASHMIRI_INDIA = @as(u32, 2);
pub const SUBLANG_KAZAK_KAZAKHSTAN = @as(u32, 1);
pub const SUBLANG_KHMER_CAMBODIA = @as(u32, 1);
pub const SUBLANG_KICHE_GUATEMALA = @as(u32, 1);
pub const SUBLANG_KINYARWANDA_RWANDA = @as(u32, 1);
pub const SUBLANG_KONKANI_INDIA = @as(u32, 1);
pub const SUBLANG_KOREAN = @as(u32, 1);
pub const SUBLANG_KYRGYZ_KYRGYZSTAN = @as(u32, 1);
pub const SUBLANG_LAO_LAO = @as(u32, 1);
pub const SUBLANG_LATVIAN_LATVIA = @as(u32, 1);
pub const SUBLANG_LITHUANIAN = @as(u32, 1);
pub const SUBLANG_LOWER_SORBIAN_GERMANY = @as(u32, 2);
pub const SUBLANG_LUXEMBOURGISH_LUXEMBOURG = @as(u32, 1);
pub const SUBLANG_MACEDONIAN_MACEDONIA = @as(u32, 1);
pub const SUBLANG_MALAY_MALAYSIA = @as(u32, 1);
pub const SUBLANG_MALAY_BRUNEI_DARUSSALAM = @as(u32, 2);
pub const SUBLANG_MALAYALAM_INDIA = @as(u32, 1);
pub const SUBLANG_MALTESE_MALTA = @as(u32, 1);
pub const SUBLANG_MAORI_NEW_ZEALAND = @as(u32, 1);
pub const SUBLANG_MAPUDUNGUN_CHILE = @as(u32, 1);
pub const SUBLANG_MARATHI_INDIA = @as(u32, 1);
pub const SUBLANG_MOHAWK_MOHAWK = @as(u32, 1);
pub const SUBLANG_MONGOLIAN_CYRILLIC_MONGOLIA = @as(u32, 1);
pub const SUBLANG_MONGOLIAN_PRC = @as(u32, 2);
pub const SUBLANG_NEPALI_INDIA = @as(u32, 2);
pub const SUBLANG_NEPALI_NEPAL = @as(u32, 1);
pub const SUBLANG_NORWEGIAN_BOKMAL = @as(u32, 1);
pub const SUBLANG_NORWEGIAN_NYNORSK = @as(u32, 2);
pub const SUBLANG_OCCITAN_FRANCE = @as(u32, 1);
pub const SUBLANG_ODIA_INDIA = @as(u32, 1);
pub const SUBLANG_ORIYA_INDIA = @as(u32, 1);
pub const SUBLANG_PASHTO_AFGHANISTAN = @as(u32, 1);
pub const SUBLANG_PERSIAN_IRAN = @as(u32, 1);
pub const SUBLANG_POLISH_POLAND = @as(u32, 1);
pub const SUBLANG_PORTUGUESE = @as(u32, 2);
pub const SUBLANG_PORTUGUESE_BRAZILIAN = @as(u32, 1);
pub const SUBLANG_PULAR_SENEGAL = @as(u32, 2);
pub const SUBLANG_PUNJABI_INDIA = @as(u32, 1);
pub const SUBLANG_PUNJABI_PAKISTAN = @as(u32, 2);
pub const SUBLANG_QUECHUA_BOLIVIA = @as(u32, 1);
pub const SUBLANG_QUECHUA_ECUADOR = @as(u32, 2);
pub const SUBLANG_QUECHUA_PERU = @as(u32, 3);
pub const SUBLANG_ROMANIAN_ROMANIA = @as(u32, 1);
pub const SUBLANG_ROMANSH_SWITZERLAND = @as(u32, 1);
pub const SUBLANG_RUSSIAN_RUSSIA = @as(u32, 1);
pub const SUBLANG_SAKHA_RUSSIA = @as(u32, 1);
pub const SUBLANG_SAMI_NORTHERN_NORWAY = @as(u32, 1);
pub const SUBLANG_SAMI_NORTHERN_SWEDEN = @as(u32, 2);
pub const SUBLANG_SAMI_NORTHERN_FINLAND = @as(u32, 3);
pub const SUBLANG_SAMI_LULE_NORWAY = @as(u32, 4);
pub const SUBLANG_SAMI_LULE_SWEDEN = @as(u32, 5);
pub const SUBLANG_SAMI_SOUTHERN_NORWAY = @as(u32, 6);
pub const SUBLANG_SAMI_SOUTHERN_SWEDEN = @as(u32, 7);
pub const SUBLANG_SAMI_SKOLT_FINLAND = @as(u32, 8);
pub const SUBLANG_SAMI_INARI_FINLAND = @as(u32, 9);
pub const SUBLANG_SANSKRIT_INDIA = @as(u32, 1);
pub const SUBLANG_SCOTTISH_GAELIC = @as(u32, 1);
pub const SUBLANG_SERBIAN_BOSNIA_HERZEGOVINA_LATIN = @as(u32, 6);
pub const SUBLANG_SERBIAN_BOSNIA_HERZEGOVINA_CYRILLIC = @as(u32, 7);
pub const SUBLANG_SERBIAN_MONTENEGRO_LATIN = @as(u32, 11);
pub const SUBLANG_SERBIAN_MONTENEGRO_CYRILLIC = @as(u32, 12);
pub const SUBLANG_SERBIAN_SERBIA_LATIN = @as(u32, 9);
pub const SUBLANG_SERBIAN_SERBIA_CYRILLIC = @as(u32, 10);
pub const SUBLANG_SERBIAN_CROATIA = @as(u32, 1);
pub const SUBLANG_SERBIAN_LATIN = @as(u32, 2);
pub const SUBLANG_SERBIAN_CYRILLIC = @as(u32, 3);
pub const SUBLANG_SINDHI_INDIA = @as(u32, 1);
pub const SUBLANG_SINDHI_PAKISTAN = @as(u32, 2);
pub const SUBLANG_SINDHI_AFGHANISTAN = @as(u32, 2);
pub const SUBLANG_SINHALESE_SRI_LANKA = @as(u32, 1);
pub const SUBLANG_SOTHO_NORTHERN_SOUTH_AFRICA = @as(u32, 1);
pub const SUBLANG_SLOVAK_SLOVAKIA = @as(u32, 1);
pub const SUBLANG_SLOVENIAN_SLOVENIA = @as(u32, 1);
pub const SUBLANG_SPANISH = @as(u32, 1);
pub const SUBLANG_SPANISH_MEXICAN = @as(u32, 2);
pub const SUBLANG_SPANISH_MODERN = @as(u32, 3);
pub const SUBLANG_SPANISH_GUATEMALA = @as(u32, 4);
pub const SUBLANG_SPANISH_COSTA_RICA = @as(u32, 5);
pub const SUBLANG_SPANISH_PANAMA = @as(u32, 6);
pub const SUBLANG_SPANISH_DOMINICAN_REPUBLIC = @as(u32, 7);
pub const SUBLANG_SPANISH_VENEZUELA = @as(u32, 8);
pub const SUBLANG_SPANISH_COLOMBIA = @as(u32, 9);
pub const SUBLANG_SPANISH_PERU = @as(u32, 10);
pub const SUBLANG_SPANISH_ARGENTINA = @as(u32, 11);
pub const SUBLANG_SPANISH_ECUADOR = @as(u32, 12);
pub const SUBLANG_SPANISH_CHILE = @as(u32, 13);
pub const SUBLANG_SPANISH_URUGUAY = @as(u32, 14);
pub const SUBLANG_SPANISH_PARAGUAY = @as(u32, 15);
pub const SUBLANG_SPANISH_BOLIVIA = @as(u32, 16);
pub const SUBLANG_SPANISH_EL_SALVADOR = @as(u32, 17);
pub const SUBLANG_SPANISH_HONDURAS = @as(u32, 18);
pub const SUBLANG_SPANISH_NICARAGUA = @as(u32, 19);
pub const SUBLANG_SPANISH_PUERTO_RICO = @as(u32, 20);
pub const SUBLANG_SPANISH_US = @as(u32, 21);
pub const SUBLANG_SWAHILI_KENYA = @as(u32, 1);
pub const SUBLANG_SWEDISH = @as(u32, 1);
pub const SUBLANG_SWEDISH_FINLAND = @as(u32, 2);
pub const SUBLANG_SYRIAC_SYRIA = @as(u32, 1);
pub const SUBLANG_TAJIK_TAJIKISTAN = @as(u32, 1);
pub const SUBLANG_TAMAZIGHT_ALGERIA_LATIN = @as(u32, 2);
pub const SUBLANG_TAMAZIGHT_MOROCCO_TIFINAGH = @as(u32, 4);
pub const SUBLANG_TAMIL_INDIA = @as(u32, 1);
pub const SUBLANG_TAMIL_SRI_LANKA = @as(u32, 2);
pub const SUBLANG_TATAR_RUSSIA = @as(u32, 1);
pub const SUBLANG_TELUGU_INDIA = @as(u32, 1);
pub const SUBLANG_THAI_THAILAND = @as(u32, 1);
pub const SUBLANG_TIBETAN_PRC = @as(u32, 1);
pub const SUBLANG_TIGRIGNA_ERITREA = @as(u32, 2);
pub const SUBLANG_TIGRINYA_ERITREA = @as(u32, 2);
pub const SUBLANG_TIGRINYA_ETHIOPIA = @as(u32, 1);
pub const SUBLANG_TSWANA_BOTSWANA = @as(u32, 2);
pub const SUBLANG_TSWANA_SOUTH_AFRICA = @as(u32, 1);
pub const SUBLANG_TURKISH_TURKEY = @as(u32, 1);
pub const SUBLANG_TURKMEN_TURKMENISTAN = @as(u32, 1);
pub const SUBLANG_UIGHUR_PRC = @as(u32, 1);
pub const SUBLANG_UKRAINIAN_UKRAINE = @as(u32, 1);
pub const SUBLANG_UPPER_SORBIAN_GERMANY = @as(u32, 1);
pub const SUBLANG_URDU_PAKISTAN = @as(u32, 1);
pub const SUBLANG_URDU_INDIA = @as(u32, 2);
pub const SUBLANG_UZBEK_LATIN = @as(u32, 1);
pub const SUBLANG_UZBEK_CYRILLIC = @as(u32, 2);
pub const SUBLANG_VALENCIAN_VALENCIA = @as(u32, 2);
pub const SUBLANG_VIETNAMESE_VIETNAM = @as(u32, 1);
pub const SUBLANG_WELSH_UNITED_KINGDOM = @as(u32, 1);
pub const SUBLANG_WOLOF_SENEGAL = @as(u32, 1);
pub const SUBLANG_XHOSA_SOUTH_AFRICA = @as(u32, 1);
pub const SUBLANG_YAKUT_RUSSIA = @as(u32, 1);
pub const SUBLANG_YI_PRC = @as(u32, 1);
pub const SUBLANG_YORUBA_NIGERIA = @as(u32, 1);
pub const SUBLANG_ZULU_SOUTH_AFRICA = @as(u32, 1);
pub const SORT_DEFAULT = @as(u32, 0);
pub const SORT_INVARIANT_MATH = @as(u32, 1);
pub const SORT_JAPANESE_XJIS = @as(u32, 0);
pub const SORT_JAPANESE_UNICODE = @as(u32, 1);
pub const SORT_JAPANESE_RADICALSTROKE = @as(u32, 4);
pub const SORT_CHINESE_BIG5 = @as(u32, 0);
pub const SORT_CHINESE_PRCP = @as(u32, 0);
pub const SORT_CHINESE_UNICODE = @as(u32, 1);
pub const SORT_CHINESE_PRC = @as(u32, 2);
pub const SORT_CHINESE_BOPOMOFO = @as(u32, 3);
pub const SORT_CHINESE_RADICALSTROKE = @as(u32, 4);
pub const SORT_KOREAN_KSC = @as(u32, 0);
pub const SORT_KOREAN_UNICODE = @as(u32, 1);
pub const SORT_GERMAN_PHONE_BOOK = @as(u32, 1);
pub const SORT_HUNGARIAN_DEFAULT = @as(u32, 0);
pub const SORT_HUNGARIAN_TECHNICAL = @as(u32, 1);
pub const SORT_GEORGIAN_TRADITIONAL = @as(u32, 0);
pub const SORT_GEORGIAN_MODERN = @as(u32, 1);
pub const NLS_VALID_LOCALE_MASK = @as(u32, 1048575);
pub const LOCALE_NAME_MAX_LENGTH = @as(u32, 85);
pub const LOCALE_TRANSIENT_KEYBOARD1 = @as(u32, 8192);
pub const LOCALE_TRANSIENT_KEYBOARD2 = @as(u32, 9216);
pub const LOCALE_TRANSIENT_KEYBOARD3 = @as(u32, 10240);
pub const LOCALE_TRANSIENT_KEYBOARD4 = @as(u32, 11264);
pub const MAXIMUM_WAIT_OBJECTS = @as(u32, 64);
pub const MAXIMUM_SUSPEND_COUNT = @as(u32, 127);
pub const PF_TEMPORAL_LEVEL_1 = @as(u32, 1);
pub const PF_TEMPORAL_LEVEL_2 = @as(u32, 2);
pub const PF_TEMPORAL_LEVEL_3 = @as(u32, 3);
pub const PF_NON_TEMPORAL_LEVEL_ALL = @as(u32, 0);
pub const EXCEPTION_READ_FAULT = @as(u32, 0);
pub const EXCEPTION_WRITE_FAULT = @as(u32, 1);
pub const EXCEPTION_EXECUTE_FAULT = @as(u32, 8);
pub const CONTEXT_AMD64 = @as(i32, 1048576);
pub const CONTEXT_KERNEL_DEBUGGER = @as(i32, 67108864);
pub const CONTEXT_EXCEPTION_ACTIVE = @as(i32, 134217728);
pub const CONTEXT_SERVICE_ACTIVE = @as(i32, 268435456);
pub const CONTEXT_EXCEPTION_REQUEST = @as(i32, 1073741824);
pub const CONTEXT_EXCEPTION_REPORTING = @as(i32, -2147483648);
pub const CONTEXT_UNWOUND_TO_CALL = @as(u32, 536870912);
pub const INITIAL_MXCSR = @as(u32, 8064);
pub const INITIAL_FPCSR = @as(u32, 639);
pub const RUNTIME_FUNCTION_INDIRECT = @as(u32, 1);
pub const UNW_FLAG_NO_EPILOGUE = @as(u32, 2147483648);
pub const UNWIND_CHAIN_LIMIT = @as(u32, 32);
pub const CONTEXT_ARM = @as(i32, 2097152);
pub const INITIAL_CPSR = @as(u32, 16);
pub const INITIAL_FPSCR = @as(u32, 0);
pub const ARM_MAX_BREAKPOINTS = @as(u32, 8);
pub const ARM_MAX_WATCHPOINTS = @as(u32, 1);
pub const ARM64_PREFETCH_PLD = @as(u32, 0);
pub const ARM64_PREFETCH_PLI = @as(u32, 8);
pub const ARM64_PREFETCH_PST = @as(u32, 16);
pub const ARM64_PREFETCH_L1 = @as(u32, 0);
pub const ARM64_PREFETCH_L2 = @as(u32, 2);
pub const ARM64_PREFETCH_L3 = @as(u32, 4);
pub const ARM64_PREFETCH_KEEP = @as(u32, 0);
pub const ARM64_PREFETCH_STRM = @as(u32, 1);
pub const ARM64_MULT_INTRINSICS_SUPPORTED = @as(u32, 1);
pub const CONTEXT_ARM64 = @as(i32, 4194304);
pub const CONTEXT_ARM64_UNWOUND_TO_CALL = @as(u32, 536870912);
pub const CONTEXT_ARM64_RET_TO_GUEST = @as(u32, 67108864);
pub const CONTEXT_RET_TO_GUEST = @as(u32, 67108864);
pub const ARM64_MAX_BREAKPOINTS = @as(u32, 8);
pub const ARM64_MAX_WATCHPOINTS = @as(u32, 2);
pub const NONVOL_INT_NUMREG_ARM64 = @as(u32, 11);
pub const NONVOL_FP_NUMREG_ARM64 = @as(u32, 8);
pub const BREAK_DEBUG_BASE = @as(u32, 524288);
pub const ASSERT_BREAKPOINT = @as(u32, 524291);
pub const SIZE_OF_80387_REGISTERS = @as(u32, 80);
pub const CONTEXT_i386 = @as(i32, 65536);
pub const CONTEXT_i486 = @as(i32, 65536);
pub const MAXIMUM_SUPPORTED_EXTENSION = @as(u32, 512);
pub const EXCEPTION_NONCONTINUABLE = @as(u32, 1);
pub const EXCEPTION_UNWINDING = @as(u32, 2);
pub const EXCEPTION_EXIT_UNWIND = @as(u32, 4);
pub const EXCEPTION_STACK_INVALID = @as(u32, 8);
pub const EXCEPTION_NESTED_CALL = @as(u32, 16);
pub const EXCEPTION_TARGET_UNWIND = @as(u32, 32);
pub const EXCEPTION_COLLIDED_UNWIND = @as(u32, 64);
pub const EXCEPTION_SOFTWARE_ORIGINATE = @as(u32, 128);
pub const EXCEPTION_MAXIMUM_PARAMETERS = @as(u32, 15);
pub const DELETE = @as(u32, 65536);
pub const WRITE_DAC = @as(u32, 262144);
pub const WRITE_OWNER = @as(u32, 524288);
pub const ACCESS_SYSTEM_SECURITY = @as(u32, 16777216);
pub const MAXIMUM_ALLOWED = @as(u32, 33554432);
pub const GENERIC_READ = @as(u32, 2147483648);
pub const GENERIC_WRITE = @as(u32, 1073741824);
pub const GENERIC_EXECUTE = @as(u32, 536870912);
pub const GENERIC_ALL = @as(u32, 268435456);
pub const SID_REVISION = @as(u32, 1);
pub const SID_MAX_SUB_AUTHORITIES = @as(u32, 15);
pub const SID_RECOMMENDED_SUB_AUTHORITIES = @as(u32, 1);
pub const SID_HASH_SIZE = @as(u32, 32);
pub const SECURITY_NULL_RID = @as(i32, 0);
pub const SECURITY_WORLD_RID = @as(i32, 0);
pub const SECURITY_LOCAL_RID = @as(i32, 0);
pub const SECURITY_LOCAL_LOGON_RID = @as(i32, 1);
pub const SECURITY_CREATOR_OWNER_RID = @as(i32, 0);
pub const SECURITY_CREATOR_GROUP_RID = @as(i32, 1);
pub const SECURITY_CREATOR_OWNER_SERVER_RID = @as(i32, 2);
pub const SECURITY_CREATOR_GROUP_SERVER_RID = @as(i32, 3);
pub const SECURITY_CREATOR_OWNER_RIGHTS_RID = @as(i32, 4);
pub const SECURITY_DIALUP_RID = @as(i32, 1);
pub const SECURITY_NETWORK_RID = @as(i32, 2);
pub const SECURITY_BATCH_RID = @as(i32, 3);
pub const SECURITY_INTERACTIVE_RID = @as(i32, 4);
pub const SECURITY_LOGON_IDS_RID = @as(i32, 5);
pub const SECURITY_LOGON_IDS_RID_COUNT = @as(i32, 3);
pub const SECURITY_SERVICE_RID = @as(i32, 6);
pub const SECURITY_ANONYMOUS_LOGON_RID = @as(i32, 7);
pub const SECURITY_PROXY_RID = @as(i32, 8);
pub const SECURITY_ENTERPRISE_CONTROLLERS_RID = @as(i32, 9);
pub const SECURITY_SERVER_LOGON_RID = @as(i32, 9);
pub const SECURITY_PRINCIPAL_SELF_RID = @as(i32, 10);
pub const SECURITY_AUTHENTICATED_USER_RID = @as(i32, 11);
pub const SECURITY_RESTRICTED_CODE_RID = @as(i32, 12);
pub const SECURITY_TERMINAL_SERVER_RID = @as(i32, 13);
pub const SECURITY_REMOTE_LOGON_RID = @as(i32, 14);
pub const SECURITY_THIS_ORGANIZATION_RID = @as(i32, 15);
pub const SECURITY_IUSER_RID = @as(i32, 17);
pub const SECURITY_LOCAL_SYSTEM_RID = @as(i32, 18);
pub const SECURITY_LOCAL_SERVICE_RID = @as(i32, 19);
pub const SECURITY_NETWORK_SERVICE_RID = @as(i32, 20);
pub const SECURITY_NT_NON_UNIQUE = @as(i32, 21);
pub const SECURITY_NT_NON_UNIQUE_SUB_AUTH_COUNT = @as(i32, 3);
pub const SECURITY_ENTERPRISE_READONLY_CONTROLLERS_RID = @as(i32, 22);
pub const SECURITY_BUILTIN_DOMAIN_RID = @as(i32, 32);
pub const SECURITY_WRITE_RESTRICTED_CODE_RID = @as(i32, 33);
pub const SECURITY_PACKAGE_BASE_RID = @as(i32, 64);
pub const SECURITY_PACKAGE_RID_COUNT = @as(i32, 2);
pub const SECURITY_PACKAGE_NTLM_RID = @as(i32, 10);
pub const SECURITY_PACKAGE_SCHANNEL_RID = @as(i32, 14);
pub const SECURITY_PACKAGE_DIGEST_RID = @as(i32, 21);
pub const SECURITY_CRED_TYPE_BASE_RID = @as(i32, 65);
pub const SECURITY_CRED_TYPE_RID_COUNT = @as(i32, 2);
pub const SECURITY_CRED_TYPE_THIS_ORG_CERT_RID = @as(i32, 1);
pub const SECURITY_MIN_BASE_RID = @as(i32, 80);
pub const SECURITY_SERVICE_ID_BASE_RID = @as(i32, 80);
pub const SECURITY_SERVICE_ID_RID_COUNT = @as(i32, 6);
pub const SECURITY_RESERVED_ID_BASE_RID = @as(i32, 81);
pub const SECURITY_APPPOOL_ID_BASE_RID = @as(i32, 82);
pub const SECURITY_APPPOOL_ID_RID_COUNT = @as(i32, 6);
pub const SECURITY_VIRTUALSERVER_ID_BASE_RID = @as(i32, 83);
pub const SECURITY_VIRTUALSERVER_ID_RID_COUNT = @as(i32, 6);
pub const SECURITY_USERMODEDRIVERHOST_ID_BASE_RID = @as(i32, 84);
pub const SECURITY_USERMODEDRIVERHOST_ID_RID_COUNT = @as(i32, 6);
pub const SECURITY_CLOUD_INFRASTRUCTURE_SERVICES_ID_BASE_RID = @as(i32, 85);
pub const SECURITY_CLOUD_INFRASTRUCTURE_SERVICES_ID_RID_COUNT = @as(i32, 6);
pub const SECURITY_WMIHOST_ID_BASE_RID = @as(i32, 86);
pub const SECURITY_WMIHOST_ID_RID_COUNT = @as(i32, 6);
pub const SECURITY_TASK_ID_BASE_RID = @as(i32, 87);
pub const SECURITY_NFS_ID_BASE_RID = @as(i32, 88);
pub const SECURITY_COM_ID_BASE_RID = @as(i32, 89);
pub const SECURITY_WINDOW_MANAGER_BASE_RID = @as(i32, 90);
pub const SECURITY_RDV_GFX_BASE_RID = @as(i32, 91);
pub const SECURITY_DASHOST_ID_BASE_RID = @as(i32, 92);
pub const SECURITY_DASHOST_ID_RID_COUNT = @as(i32, 6);
pub const SECURITY_USERMANAGER_ID_BASE_RID = @as(i32, 93);
pub const SECURITY_USERMANAGER_ID_RID_COUNT = @as(i32, 6);
pub const SECURITY_WINRM_ID_BASE_RID = @as(i32, 94);
pub const SECURITY_WINRM_ID_RID_COUNT = @as(i32, 6);
pub const SECURITY_CCG_ID_BASE_RID = @as(i32, 95);
pub const SECURITY_UMFD_BASE_RID = @as(i32, 96);
pub const SECURITY_VIRTUALACCOUNT_ID_RID_COUNT = @as(i32, 6);
pub const SECURITY_MAX_BASE_RID = @as(i32, 111);
pub const SECURITY_MAX_ALWAYS_FILTERED = @as(i32, 999);
pub const SECURITY_MIN_NEVER_FILTERED = @as(i32, 1000);
pub const SECURITY_OTHER_ORGANIZATION_RID = @as(i32, 1000);
pub const SECURITY_WINDOWSMOBILE_ID_BASE_RID = @as(i32, 112);
pub const SECURITY_INSTALLER_GROUP_CAPABILITY_BASE = @as(u32, 32);
pub const SECURITY_INSTALLER_GROUP_CAPABILITY_RID_COUNT = @as(u32, 9);
pub const SECURITY_INSTALLER_CAPABILITY_RID_COUNT = @as(u32, 10);
pub const SECURITY_LOCAL_ACCOUNT_RID = @as(i32, 113);
pub const SECURITY_LOCAL_ACCOUNT_AND_ADMIN_RID = @as(i32, 114);
pub const DOMAIN_GROUP_RID_AUTHORIZATION_DATA_IS_COMPOUNDED = @as(i32, 496);
pub const DOMAIN_GROUP_RID_AUTHORIZATION_DATA_CONTAINS_CLAIMS = @as(i32, 497);
pub const DOMAIN_GROUP_RID_ENTERPRISE_READONLY_DOMAIN_CONTROLLERS = @as(i32, 498);
pub const FOREST_USER_RID_MAX = @as(i32, 499);
pub const DOMAIN_USER_RID_ADMIN = @as(i32, 500);
pub const DOMAIN_USER_RID_GUEST = @as(i32, 501);
pub const DOMAIN_USER_RID_KRBTGT = @as(i32, 502);
pub const DOMAIN_USER_RID_DEFAULT_ACCOUNT = @as(i32, 503);
pub const DOMAIN_USER_RID_WDAG_ACCOUNT = @as(i32, 504);
pub const DOMAIN_USER_RID_MAX = @as(i32, 999);
pub const DOMAIN_GROUP_RID_ADMINS = @as(i32, 512);
pub const DOMAIN_GROUP_RID_USERS = @as(i32, 513);
pub const DOMAIN_GROUP_RID_GUESTS = @as(i32, 514);
pub const DOMAIN_GROUP_RID_COMPUTERS = @as(i32, 515);
pub const DOMAIN_GROUP_RID_CONTROLLERS = @as(i32, 516);
pub const DOMAIN_GROUP_RID_CERT_ADMINS = @as(i32, 517);
pub const DOMAIN_GROUP_RID_SCHEMA_ADMINS = @as(i32, 518);
pub const DOMAIN_GROUP_RID_ENTERPRISE_ADMINS = @as(i32, 519);
pub const DOMAIN_GROUP_RID_POLICY_ADMINS = @as(i32, 520);
pub const DOMAIN_GROUP_RID_READONLY_CONTROLLERS = @as(i32, 521);
pub const DOMAIN_GROUP_RID_CLONEABLE_CONTROLLERS = @as(i32, 522);
pub const DOMAIN_GROUP_RID_CDC_RESERVED = @as(i32, 524);
pub const DOMAIN_GROUP_RID_PROTECTED_USERS = @as(i32, 525);
pub const DOMAIN_GROUP_RID_KEY_ADMINS = @as(i32, 526);
pub const DOMAIN_GROUP_RID_ENTERPRISE_KEY_ADMINS = @as(i32, 527);
pub const DOMAIN_ALIAS_RID_ADMINS = @as(i32, 544);
pub const DOMAIN_ALIAS_RID_USERS = @as(i32, 545);
pub const DOMAIN_ALIAS_RID_GUESTS = @as(i32, 546);
pub const DOMAIN_ALIAS_RID_POWER_USERS = @as(i32, 547);
pub const DOMAIN_ALIAS_RID_ACCOUNT_OPS = @as(i32, 548);
pub const DOMAIN_ALIAS_RID_SYSTEM_OPS = @as(i32, 549);
pub const DOMAIN_ALIAS_RID_PRINT_OPS = @as(i32, 550);
pub const DOMAIN_ALIAS_RID_BACKUP_OPS = @as(i32, 551);
pub const DOMAIN_ALIAS_RID_REPLICATOR = @as(i32, 552);
pub const DOMAIN_ALIAS_RID_RAS_SERVERS = @as(i32, 553);
pub const DOMAIN_ALIAS_RID_PREW2KCOMPACCESS = @as(i32, 554);
pub const DOMAIN_ALIAS_RID_REMOTE_DESKTOP_USERS = @as(i32, 555);
pub const DOMAIN_ALIAS_RID_NETWORK_CONFIGURATION_OPS = @as(i32, 556);
pub const DOMAIN_ALIAS_RID_INCOMING_FOREST_TRUST_BUILDERS = @as(i32, 557);
pub const DOMAIN_ALIAS_RID_MONITORING_USERS = @as(i32, 558);
pub const DOMAIN_ALIAS_RID_LOGGING_USERS = @as(i32, 559);
pub const DOMAIN_ALIAS_RID_AUTHORIZATIONACCESS = @as(i32, 560);
pub const DOMAIN_ALIAS_RID_TS_LICENSE_SERVERS = @as(i32, 561);
pub const DOMAIN_ALIAS_RID_DCOM_USERS = @as(i32, 562);
pub const DOMAIN_ALIAS_RID_IUSERS = @as(i32, 568);
pub const DOMAIN_ALIAS_RID_CRYPTO_OPERATORS = @as(i32, 569);
pub const DOMAIN_ALIAS_RID_CACHEABLE_PRINCIPALS_GROUP = @as(i32, 571);
pub const DOMAIN_ALIAS_RID_NON_CACHEABLE_PRINCIPALS_GROUP = @as(i32, 572);
pub const DOMAIN_ALIAS_RID_EVENT_LOG_READERS_GROUP = @as(i32, 573);
pub const DOMAIN_ALIAS_RID_CERTSVC_DCOM_ACCESS_GROUP = @as(i32, 574);
pub const DOMAIN_ALIAS_RID_RDS_REMOTE_ACCESS_SERVERS = @as(i32, 575);
pub const DOMAIN_ALIAS_RID_RDS_ENDPOINT_SERVERS = @as(i32, 576);
pub const DOMAIN_ALIAS_RID_RDS_MANAGEMENT_SERVERS = @as(i32, 577);
pub const DOMAIN_ALIAS_RID_HYPER_V_ADMINS = @as(i32, 578);
pub const DOMAIN_ALIAS_RID_ACCESS_CONTROL_ASSISTANCE_OPS = @as(i32, 579);
pub const DOMAIN_ALIAS_RID_REMOTE_MANAGEMENT_USERS = @as(i32, 580);
pub const DOMAIN_ALIAS_RID_DEFAULT_ACCOUNT = @as(i32, 581);
pub const DOMAIN_ALIAS_RID_STORAGE_REPLICA_ADMINS = @as(i32, 582);
pub const DOMAIN_ALIAS_RID_DEVICE_OWNERS = @as(i32, 583);
pub const SECURITY_APP_PACKAGE_BASE_RID = @as(i32, 2);
pub const SECURITY_BUILTIN_APP_PACKAGE_RID_COUNT = @as(i32, 2);
pub const SECURITY_APP_PACKAGE_RID_COUNT = @as(i32, 8);
pub const SECURITY_CAPABILITY_BASE_RID = @as(i32, 3);
pub const SECURITY_CAPABILITY_APP_RID = @as(u64, 1024);
pub const SECURITY_BUILTIN_CAPABILITY_RID_COUNT = @as(i32, 2);
pub const SECURITY_CAPABILITY_RID_COUNT = @as(i32, 5);
pub const SECURITY_PARENT_PACKAGE_RID_COUNT = @as(i32, 8);
pub const SECURITY_CHILD_PACKAGE_RID_COUNT = @as(i32, 12);
pub const SECURITY_BUILTIN_PACKAGE_ANY_PACKAGE = @as(i32, 1);
pub const SECURITY_BUILTIN_PACKAGE_ANY_RESTRICTED_PACKAGE = @as(i32, 2);
pub const SECURITY_CAPABILITY_INTERNET_CLIENT = @as(i32, 1);
pub const SECURITY_CAPABILITY_INTERNET_CLIENT_SERVER = @as(i32, 2);
pub const SECURITY_CAPABILITY_PRIVATE_NETWORK_CLIENT_SERVER = @as(i32, 3);
pub const SECURITY_CAPABILITY_PICTURES_LIBRARY = @as(i32, 4);
pub const SECURITY_CAPABILITY_VIDEOS_LIBRARY = @as(i32, 5);
pub const SECURITY_CAPABILITY_MUSIC_LIBRARY = @as(i32, 6);
pub const SECURITY_CAPABILITY_DOCUMENTS_LIBRARY = @as(i32, 7);
pub const SECURITY_CAPABILITY_ENTERPRISE_AUTHENTICATION = @as(i32, 8);
pub const SECURITY_CAPABILITY_SHARED_USER_CERTIFICATES = @as(i32, 9);
pub const SECURITY_CAPABILITY_REMOVABLE_STORAGE = @as(i32, 10);
pub const SECURITY_CAPABILITY_APPOINTMENTS = @as(i32, 11);
pub const SECURITY_CAPABILITY_CONTACTS = @as(i32, 12);
pub const SECURITY_CAPABILITY_INTERNET_EXPLORER = @as(i32, 4096);
pub const SECURITY_MANDATORY_UNTRUSTED_RID = @as(i32, 0);
pub const SECURITY_MANDATORY_LOW_RID = @as(i32, 4096);
pub const SECURITY_MANDATORY_MEDIUM_RID = @as(i32, 8192);
pub const SECURITY_MANDATORY_MEDIUM_PLUS_RID = @as(u32, 8448);
pub const SECURITY_MANDATORY_HIGH_RID = @as(i32, 12288);
pub const SECURITY_MANDATORY_SYSTEM_RID = @as(i32, 16384);
pub const SECURITY_MANDATORY_PROTECTED_PROCESS_RID = @as(i32, 20480);
pub const SECURITY_MANDATORY_MAXIMUM_USER_RID = @as(i32, 16384);
pub const SECURITY_AUTHENTICATION_AUTHORITY_RID_COUNT = @as(i32, 1);
pub const SECURITY_AUTHENTICATION_AUTHORITY_ASSERTED_RID = @as(i32, 1);
pub const SECURITY_AUTHENTICATION_SERVICE_ASSERTED_RID = @as(i32, 2);
pub const SECURITY_AUTHENTICATION_FRESH_KEY_AUTH_RID = @as(i32, 3);
pub const SECURITY_AUTHENTICATION_KEY_TRUST_RID = @as(i32, 4);
pub const SECURITY_AUTHENTICATION_KEY_PROPERTY_MFA_RID = @as(i32, 5);
pub const SECURITY_AUTHENTICATION_KEY_PROPERTY_ATTESTATION_RID = @as(i32, 6);
pub const SECURITY_PROCESS_TRUST_AUTHORITY_RID_COUNT = @as(i32, 2);
pub const SECURITY_PROCESS_PROTECTION_TYPE_FULL_RID = @as(i32, 1024);
pub const SECURITY_PROCESS_PROTECTION_TYPE_LITE_RID = @as(i32, 512);
pub const SECURITY_PROCESS_PROTECTION_TYPE_NONE_RID = @as(i32, 0);
pub const SECURITY_PROCESS_PROTECTION_LEVEL_WINTCB_RID = @as(i32, 8192);
pub const SECURITY_PROCESS_PROTECTION_LEVEL_WINDOWS_RID = @as(i32, 4096);
pub const SECURITY_PROCESS_PROTECTION_LEVEL_APP_RID = @as(i32, 2048);
pub const SECURITY_PROCESS_PROTECTION_LEVEL_ANTIMALWARE_RID = @as(i32, 1536);
pub const SECURITY_PROCESS_PROTECTION_LEVEL_AUTHENTICODE_RID = @as(i32, 1024);
pub const SECURITY_PROCESS_PROTECTION_LEVEL_NONE_RID = @as(i32, 0);
pub const SECURITY_TRUSTED_INSTALLER_RID1 = @as(u32, 956008885);
pub const SECURITY_TRUSTED_INSTALLER_RID2 = @as(u32, 3418522649);
pub const SECURITY_TRUSTED_INSTALLER_RID3 = @as(u32, 1831038044);
pub const SECURITY_TRUSTED_INSTALLER_RID4 = @as(u32, 1853292631);
pub const SECURITY_TRUSTED_INSTALLER_RID5 = @as(u32, 2271478464);
pub const SE_GROUP_MANDATORY = @as(i32, 1);
pub const SE_GROUP_ENABLED_BY_DEFAULT = @as(i32, 2);
pub const SE_GROUP_ENABLED = @as(i32, 4);
pub const SE_GROUP_OWNER = @as(i32, 8);
pub const SE_GROUP_USE_FOR_DENY_ONLY = @as(i32, 16);
pub const SE_GROUP_INTEGRITY = @as(i32, 32);
pub const SE_GROUP_INTEGRITY_ENABLED = @as(i32, 64);
pub const SE_GROUP_LOGON_ID = @as(i32, -1073741824);
pub const SE_GROUP_RESOURCE = @as(i32, 536870912);
pub const ACL_REVISION1 = @as(u32, 1);
pub const ACL_REVISION2 = @as(u32, 2);
pub const ACL_REVISION3 = @as(u32, 3);
pub const ACL_REVISION4 = @as(u32, 4);
pub const MAX_ACL_REVISION = @as(u32, 4);
pub const ACCESS_MIN_MS_ACE_TYPE = @as(u32, 0);
pub const ACCESS_ALLOWED_ACE_TYPE = @as(u32, 0);
pub const ACCESS_DENIED_ACE_TYPE = @as(u32, 1);
pub const SYSTEM_AUDIT_ACE_TYPE = @as(u32, 2);
pub const SYSTEM_ALARM_ACE_TYPE = @as(u32, 3);
pub const ACCESS_MAX_MS_V2_ACE_TYPE = @as(u32, 3);
pub const ACCESS_ALLOWED_COMPOUND_ACE_TYPE = @as(u32, 4);
pub const ACCESS_MAX_MS_V3_ACE_TYPE = @as(u32, 4);
pub const ACCESS_MIN_MS_OBJECT_ACE_TYPE = @as(u32, 5);
pub const ACCESS_ALLOWED_OBJECT_ACE_TYPE = @as(u32, 5);
pub const ACCESS_DENIED_OBJECT_ACE_TYPE = @as(u32, 6);
pub const SYSTEM_AUDIT_OBJECT_ACE_TYPE = @as(u32, 7);
pub const SYSTEM_ALARM_OBJECT_ACE_TYPE = @as(u32, 8);
pub const ACCESS_MAX_MS_OBJECT_ACE_TYPE = @as(u32, 8);
pub const ACCESS_MAX_MS_V4_ACE_TYPE = @as(u32, 8);
pub const ACCESS_MAX_MS_ACE_TYPE = @as(u32, 8);
pub const ACCESS_ALLOWED_CALLBACK_ACE_TYPE = @as(u32, 9);
pub const ACCESS_DENIED_CALLBACK_ACE_TYPE = @as(u32, 10);
pub const ACCESS_ALLOWED_CALLBACK_OBJECT_ACE_TYPE = @as(u32, 11);
pub const ACCESS_DENIED_CALLBACK_OBJECT_ACE_TYPE = @as(u32, 12);
pub const SYSTEM_AUDIT_CALLBACK_ACE_TYPE = @as(u32, 13);
pub const SYSTEM_ALARM_CALLBACK_ACE_TYPE = @as(u32, 14);
pub const SYSTEM_AUDIT_CALLBACK_OBJECT_ACE_TYPE = @as(u32, 15);
pub const SYSTEM_ALARM_CALLBACK_OBJECT_ACE_TYPE = @as(u32, 16);
pub const SYSTEM_MANDATORY_LABEL_ACE_TYPE = @as(u32, 17);
pub const SYSTEM_RESOURCE_ATTRIBUTE_ACE_TYPE = @as(u32, 18);
pub const SYSTEM_SCOPED_POLICY_ID_ACE_TYPE = @as(u32, 19);
pub const SYSTEM_PROCESS_TRUST_LABEL_ACE_TYPE = @as(u32, 20);
pub const SYSTEM_ACCESS_FILTER_ACE_TYPE = @as(u32, 21);
pub const ACCESS_MAX_MS_V5_ACE_TYPE = @as(u32, 21);
pub const VALID_INHERIT_FLAGS = @as(u32, 31);
pub const CRITICAL_ACE_FLAG = @as(u32, 32);
pub const TRUST_PROTECTED_FILTER_ACE_FLAG = @as(u32, 64);
pub const SYSTEM_MANDATORY_LABEL_NO_WRITE_UP = @as(u32, 1);
pub const SYSTEM_MANDATORY_LABEL_NO_READ_UP = @as(u32, 2);
pub const SYSTEM_MANDATORY_LABEL_NO_EXECUTE_UP = @as(u32, 4);
pub const SYSTEM_PROCESS_TRUST_LABEL_VALID_MASK = @as(u32, 16777215);
pub const SYSTEM_PROCESS_TRUST_NOCONSTRAINT_MASK = @as(u32, 4294967295);
pub const SYSTEM_ACCESS_FILTER_VALID_MASK = @as(u32, 16777215);
pub const SYSTEM_ACCESS_FILTER_NOCONSTRAINT_MASK = @as(u32, 4294967295);
pub const SECURITY_DESCRIPTOR_REVISION = @as(u32, 1);
pub const SECURITY_DESCRIPTOR_REVISION1 = @as(u32, 1);
pub const SE_OWNER_DEFAULTED = @as(u32, 1);
pub const SE_GROUP_DEFAULTED = @as(u32, 2);
pub const SE_DACL_PRESENT = @as(u32, 4);
pub const SE_DACL_DEFAULTED = @as(u32, 8);
pub const SE_SACL_PRESENT = @as(u32, 16);
pub const SE_SACL_DEFAULTED = @as(u32, 32);
pub const SE_DACL_AUTO_INHERIT_REQ = @as(u32, 256);
pub const SE_SACL_AUTO_INHERIT_REQ = @as(u32, 512);
pub const SE_DACL_AUTO_INHERITED = @as(u32, 1024);
pub const SE_SACL_AUTO_INHERITED = @as(u32, 2048);
pub const SE_DACL_PROTECTED = @as(u32, 4096);
pub const SE_SACL_PROTECTED = @as(u32, 8192);
pub const SE_RM_CONTROL_VALID = @as(u32, 16384);
pub const SE_SELF_RELATIVE = @as(u32, 32768);
pub const ACCESS_OBJECT_GUID = @as(u32, 0);
pub const ACCESS_PROPERTY_SET_GUID = @as(u32, 1);
pub const ACCESS_PROPERTY_GUID = @as(u32, 2);
pub const ACCESS_MAX_LEVEL = @as(u32, 4);
pub const AUDIT_ALLOW_NO_PRIVILEGE = @as(u32, 1);
pub const PRIVILEGE_SET_ALL_NECESSARY = @as(u32, 1);
pub const ACCESS_REASON_TYPE_MASK = @as(u32, 16711680);
pub const ACCESS_REASON_DATA_MASK = @as(u32, 65535);
pub const ACCESS_REASON_STAGING_MASK = @as(u32, 2147483648);
pub const ACCESS_REASON_EXDATA_MASK = @as(u32, 2130706432);
pub const SE_SECURITY_DESCRIPTOR_FLAG_NO_OWNER_ACE = @as(u32, 1);
pub const SE_SECURITY_DESCRIPTOR_FLAG_NO_LABEL_ACE = @as(u32, 2);
pub const SE_SECURITY_DESCRIPTOR_FLAG_NO_ACCESS_FILTER_ACE = @as(u32, 4);
pub const SE_SECURITY_DESCRIPTOR_VALID_FLAGS = @as(u32, 7);
pub const SE_ACCESS_CHECK_FLAG_NO_LEARNING_MODE_LOGGING = @as(u32, 8);
pub const SE_ACCESS_CHECK_VALID_FLAGS = @as(u32, 8);
pub const POLICY_AUDIT_SUBCATEGORY_COUNT = @as(u32, 59);
pub const TOKEN_SOURCE_LENGTH = @as(u32, 8);
pub const CLAIM_SECURITY_ATTRIBUTE_TYPE_INVALID = @as(u32, 0);
pub const CLAIM_SECURITY_ATTRIBUTE_CUSTOM_FLAGS = @as(u32, 4294901760);
pub const CLAIM_SECURITY_ATTRIBUTES_INFORMATION_VERSION_V1 = @as(u32, 1);
pub const CLAIM_SECURITY_ATTRIBUTES_INFORMATION_VERSION = @as(u32, 1);
pub const PROCESS_TRUST_LABEL_SECURITY_INFORMATION = @as(i32, 128);
pub const ACCESS_FILTER_SECURITY_INFORMATION = @as(i32, 256);
pub const SE_SIGNING_LEVEL_UNCHECKED = @as(u32, 0);
pub const SE_SIGNING_LEVEL_UNSIGNED = @as(u32, 1);
pub const SE_SIGNING_LEVEL_ENTERPRISE = @as(u32, 2);
pub const SE_SIGNING_LEVEL_CUSTOM_1 = @as(u32, 3);
pub const SE_SIGNING_LEVEL_DEVELOPER = @as(u32, 3);
pub const SE_SIGNING_LEVEL_AUTHENTICODE = @as(u32, 4);
pub const SE_SIGNING_LEVEL_CUSTOM_2 = @as(u32, 5);
pub const SE_SIGNING_LEVEL_STORE = @as(u32, 6);
pub const SE_SIGNING_LEVEL_CUSTOM_3 = @as(u32, 7);
pub const SE_SIGNING_LEVEL_ANTIMALWARE = @as(u32, 7);
pub const SE_SIGNING_LEVEL_MICROSOFT = @as(u32, 8);
pub const SE_SIGNING_LEVEL_CUSTOM_4 = @as(u32, 9);
pub const SE_SIGNING_LEVEL_CUSTOM_5 = @as(u32, 10);
pub const SE_SIGNING_LEVEL_DYNAMIC_CODEGEN = @as(u32, 11);
pub const SE_SIGNING_LEVEL_WINDOWS = @as(u32, 12);
pub const SE_SIGNING_LEVEL_CUSTOM_7 = @as(u32, 13);
pub const SE_SIGNING_LEVEL_WINDOWS_TCB = @as(u32, 14);
pub const SE_SIGNING_LEVEL_CUSTOM_6 = @as(u32, 15);
pub const SE_LEARNING_MODE_FLAG_PERMISSIVE = @as(u32, 1);
pub const JOB_OBJECT_ASSIGN_PROCESS = @as(u32, 1);
pub const JOB_OBJECT_SET_ATTRIBUTES = @as(u32, 2);
pub const JOB_OBJECT_QUERY = @as(u32, 4);
pub const JOB_OBJECT_TERMINATE = @as(u32, 8);
pub const JOB_OBJECT_SET_SECURITY_ATTRIBUTES = @as(u32, 16);
pub const JOB_OBJECT_IMPERSONATE = @as(u32, 32);
pub const FLS_MAXIMUM_AVAILABLE = @as(u32, 4080);
pub const TLS_MINIMUM_AVAILABLE = @as(u32, 64);
pub const THREAD_DYNAMIC_CODE_ALLOW = @as(u32, 1);
pub const THREAD_BASE_PRIORITY_LOWRT = @as(u32, 15);
pub const THREAD_BASE_PRIORITY_MAX = @as(u32, 2);
pub const THREAD_BASE_PRIORITY_MIN = @as(i32, -2);
pub const THREAD_BASE_PRIORITY_IDLE = @as(i32, -15);
pub const COMPONENT_KTM = @as(u32, 1);
pub const COMPONENT_VALID_FLAGS = @as(u32, 1);
pub const MEMORY_PRIORITY_LOWEST = @as(u32, 0);
pub const DYNAMIC_EH_CONTINUATION_TARGET_ADD = @as(u32, 1);
pub const DYNAMIC_EH_CONTINUATION_TARGET_PROCESSED = @as(u32, 2);
pub const DYNAMIC_ENFORCED_ADDRESS_RANGE_ADD = @as(u32, 1);
pub const DYNAMIC_ENFORCED_ADDRESS_RANGE_PROCESSED = @as(u32, 2);
pub const QUOTA_LIMITS_HARDWS_MIN_ENABLE = @as(u32, 1);
pub const QUOTA_LIMITS_HARDWS_MIN_DISABLE = @as(u32, 2);
pub const QUOTA_LIMITS_HARDWS_MAX_ENABLE = @as(u32, 4);
pub const QUOTA_LIMITS_HARDWS_MAX_DISABLE = @as(u32, 8);
pub const QUOTA_LIMITS_USE_DEFAULT_LIMITS = @as(u32, 16);
pub const MAX_HW_COUNTERS = @as(u32, 16);
pub const THREAD_PROFILING_FLAG_DISPATCH = @as(u32, 1);
pub const JOB_OBJECT_NET_RATE_CONTROL_MAX_DSCP_TAG = @as(u32, 64);
pub const JOB_OBJECT_MSG_END_OF_JOB_TIME = @as(u32, 1);
pub const JOB_OBJECT_MSG_END_OF_PROCESS_TIME = @as(u32, 2);
pub const JOB_OBJECT_MSG_ACTIVE_PROCESS_LIMIT = @as(u32, 3);
pub const JOB_OBJECT_MSG_ACTIVE_PROCESS_ZERO = @as(u32, 4);
pub const JOB_OBJECT_MSG_NEW_PROCESS = @as(u32, 6);
pub const JOB_OBJECT_MSG_EXIT_PROCESS = @as(u32, 7);
pub const JOB_OBJECT_MSG_ABNORMAL_EXIT_PROCESS = @as(u32, 8);
pub const JOB_OBJECT_MSG_PROCESS_MEMORY_LIMIT = @as(u32, 9);
pub const JOB_OBJECT_MSG_JOB_MEMORY_LIMIT = @as(u32, 10);
pub const JOB_OBJECT_MSG_NOTIFICATION_LIMIT = @as(u32, 11);
pub const JOB_OBJECT_MSG_JOB_CYCLE_TIME_LIMIT = @as(u32, 12);
pub const JOB_OBJECT_MSG_SILO_TERMINATED = @as(u32, 13);
pub const JOB_OBJECT_MSG_MINIMUM = @as(u32, 1);
pub const JOB_OBJECT_MSG_MAXIMUM = @as(u32, 13);
pub const JOB_OBJECT_UILIMIT_ALL = @as(u32, 255);
pub const JOB_OBJECT_UI_VALID_FLAGS = @as(u32, 255);
pub const JOB_OBJECT_CPU_RATE_CONTROL_MIN_MAX_RATE = @as(u32, 16);
pub const JOB_OBJECT_CPU_RATE_CONTROL_VALID_FLAGS = @as(u32, 31);
pub const MEMORY_PARTITION_QUERY_ACCESS = @as(u32, 1);
pub const MEMORY_PARTITION_MODIFY_ACCESS = @as(u32, 2);
pub const EVENT_MODIFY_STATE = @as(u32, 2);
pub const MUTANT_QUERY_STATE = @as(u32, 1);
pub const SEMAPHORE_MODIFY_STATE = @as(u32, 2);
pub const TIMER_QUERY_STATE = @as(u32, 1);
pub const TIMER_MODIFY_STATE = @as(u32, 2);
pub const TIME_ZONE_ID_UNKNOWN = @as(u32, 0);
pub const TIME_ZONE_ID_STANDARD = @as(u32, 1);
pub const TIME_ZONE_ID_DAYLIGHT = @as(u32, 2);
pub const LTP_PC_SMT = @as(u32, 1);
pub const CACHE_FULLY_ASSOCIATIVE = @as(u32, 255);
pub const PROCESSOR_INTEL_386 = @as(u32, 386);
pub const PROCESSOR_INTEL_486 = @as(u32, 486);
pub const PROCESSOR_INTEL_PENTIUM = @as(u32, 586);
pub const PROCESSOR_INTEL_IA64 = @as(u32, 2200);
pub const PROCESSOR_AMD_X8664 = @as(u32, 8664);
pub const PROCESSOR_MIPS_R4000 = @as(u32, 4000);
pub const PROCESSOR_ALPHA_21064 = @as(u32, 21064);
pub const PROCESSOR_PPC_601 = @as(u32, 601);
pub const PROCESSOR_PPC_603 = @as(u32, 603);
pub const PROCESSOR_PPC_604 = @as(u32, 604);
pub const PROCESSOR_PPC_620 = @as(u32, 620);
pub const PROCESSOR_HITACHI_SH3 = @as(u32, 10003);
pub const PROCESSOR_HITACHI_SH3E = @as(u32, 10004);
pub const PROCESSOR_HITACHI_SH4 = @as(u32, 10005);
pub const PROCESSOR_MOTOROLA_821 = @as(u32, 821);
pub const PROCESSOR_SHx_SH3 = @as(u32, 103);
pub const PROCESSOR_SHx_SH4 = @as(u32, 104);
pub const PROCESSOR_STRONGARM = @as(u32, 2577);
pub const PROCESSOR_ARM720 = @as(u32, 1824);
pub const PROCESSOR_ARM820 = @as(u32, 2080);
pub const PROCESSOR_ARM920 = @as(u32, 2336);
pub const PROCESSOR_ARM_7TDMI = @as(u32, 70001);
pub const PROCESSOR_OPTIL = @as(u32, 18767);
pub const PROCESSOR_ARCHITECTURE_MIPS = @as(u32, 1);
pub const PROCESSOR_ARCHITECTURE_ALPHA = @as(u32, 2);
pub const PROCESSOR_ARCHITECTURE_PPC = @as(u32, 3);
pub const PROCESSOR_ARCHITECTURE_SHX = @as(u32, 4);
pub const PROCESSOR_ARCHITECTURE_ALPHA64 = @as(u32, 7);
pub const PROCESSOR_ARCHITECTURE_MSIL = @as(u32, 8);
pub const PROCESSOR_ARCHITECTURE_IA32_ON_WIN64 = @as(u32, 10);
pub const PROCESSOR_ARCHITECTURE_NEUTRAL = @as(u32, 11);
pub const PROCESSOR_ARCHITECTURE_ARM64 = @as(u32, 12);
pub const PROCESSOR_ARCHITECTURE_ARM32_ON_WIN64 = @as(u32, 13);
pub const PROCESSOR_ARCHITECTURE_IA32_ON_ARM64 = @as(u32, 14);
pub const PF_PPC_MOVEMEM_64BIT_OK = @as(u32, 4);
pub const PF_ALPHA_BYTE_INSTRUCTIONS = @as(u32, 5);
pub const PF_SSE_DAZ_MODE_AVAILABLE = @as(u32, 11);
pub const PF_ARM_NEON_INSTRUCTIONS_AVAILABLE = @as(u32, 19);
pub const PF_RDRAND_INSTRUCTION_AVAILABLE = @as(u32, 28);
pub const PF_RDTSCP_INSTRUCTION_AVAILABLE = @as(u32, 32);
pub const PF_RDPID_INSTRUCTION_AVAILABLE = @as(u32, 33);
pub const PF_MONITORX_INSTRUCTION_AVAILABLE = @as(u32, 35);
pub const PF_SSSE3_INSTRUCTIONS_AVAILABLE = @as(u32, 36);
pub const PF_SSE4_1_INSTRUCTIONS_AVAILABLE = @as(u32, 37);
pub const PF_SSE4_2_INSTRUCTIONS_AVAILABLE = @as(u32, 38);
pub const PF_AVX_INSTRUCTIONS_AVAILABLE = @as(u32, 39);
pub const PF_AVX2_INSTRUCTIONS_AVAILABLE = @as(u32, 40);
pub const PF_AVX512F_INSTRUCTIONS_AVAILABLE = @as(u32, 41);
pub const PF_ERMS_AVAILABLE = @as(u32, 42);
pub const PF_ARM_V82_DP_INSTRUCTIONS_AVAILABLE = @as(u32, 43);
pub const PF_ARM_V83_JSCVT_INSTRUCTIONS_AVAILABLE = @as(u32, 44);
pub const XSTATE_LEGACY_FLOATING_POINT = @as(u32, 0);
pub const XSTATE_LEGACY_SSE = @as(u32, 1);
pub const XSTATE_GSSE = @as(u32, 2);
pub const XSTATE_AVX = @as(u32, 2);
pub const XSTATE_MPX_BNDREGS = @as(u32, 3);
pub const XSTATE_MPX_BNDCSR = @as(u32, 4);
pub const XSTATE_AVX512_KMASK = @as(u32, 5);
pub const XSTATE_AVX512_ZMM_H = @as(u32, 6);
pub const XSTATE_AVX512_ZMM = @as(u32, 7);
pub const XSTATE_IPT = @as(u32, 8);
pub const XSTATE_PASID = @as(u32, 10);
pub const XSTATE_CET_U = @as(u32, 11);
pub const XSTATE_CET_S = @as(u32, 12);
pub const XSTATE_AMX_TILE_CONFIG = @as(u32, 17);
pub const XSTATE_AMX_TILE_DATA = @as(u32, 18);
pub const XSTATE_LWP = @as(u32, 62);
pub const MAXIMUM_XSTATE_FEATURES = @as(u32, 64);
pub const XSTATE_COMPACTION_ENABLE = @as(u32, 63);
pub const XSTATE_ALIGN_BIT = @as(u32, 1);
pub const XSTATE_XFD_BIT = @as(u32, 2);
pub const XSTATE_CONTROLFLAG_XSAVEOPT_MASK = @as(u32, 1);
pub const XSTATE_CONTROLFLAG_XSAVEC_MASK = @as(u32, 2);
pub const XSTATE_CONTROLFLAG_XFD_MASK = @as(u32, 4);
pub const CFG_CALL_TARGET_VALID = @as(u32, 1);
pub const CFG_CALL_TARGET_PROCESSED = @as(u32, 2);
pub const CFG_CALL_TARGET_CONVERT_EXPORT_SUPPRESSED_TO_VALID = @as(u32, 4);
pub const CFG_CALL_TARGET_VALID_XFG = @as(u32, 8);
pub const CFG_CALL_TARGET_CONVERT_XFG_TO_CFG = @as(u32, 16);
pub const SESSION_QUERY_ACCESS = @as(u32, 1);
pub const SESSION_MODIFY_ACCESS = @as(u32, 2);
pub const MEM_TOP_DOWN = @as(u32, 1048576);
pub const MEM_WRITE_WATCH = @as(u32, 2097152);
pub const MEM_PHYSICAL = @as(u32, 4194304);
pub const MEM_ROTATE = @as(u32, 8388608);
pub const MEM_DIFFERENT_IMAGE_BASE_OK = @as(u32, 8388608);
pub const MEM_4MB_PAGES = @as(u32, 2147483648);
pub const MEM_COALESCE_PLACEHOLDERS = @as(u32, 1);
pub const MEM_EXTENDED_PARAMETER_GRAPHICS = @as(u32, 1);
pub const MEM_EXTENDED_PARAMETER_NONPAGED = @as(u32, 2);
pub const MEM_EXTENDED_PARAMETER_ZERO_PAGES_OPTIONAL = @as(u32, 4);
pub const MEM_EXTENDED_PARAMETER_NONPAGED_LARGE = @as(u32, 8);
pub const MEM_EXTENDED_PARAMETER_NONPAGED_HUGE = @as(u32, 16);
pub const MEM_EXTENDED_PARAMETER_SOFT_FAULT_PAGES = @as(u32, 32);
pub const MEM_EXTENDED_PARAMETER_EC_CODE = @as(u32, 64);
pub const MEM_EXTENDED_PARAMETER_TYPE_BITS = @as(u32, 8);
pub const SEC_HUGE_PAGES = @as(u32, 131072);
pub const WRITE_WATCH_FLAG_RESET = @as(u32, 1);
pub const ENCLAVE_TYPE_SGX = @as(u32, 1);
pub const ENCLAVE_TYPE_SGX2 = @as(u32, 2);
pub const ENCLAVE_TYPE_VBS = @as(u32, 16);
pub const ENCLAVE_VBS_FLAG_DEBUG = @as(u32, 1);
pub const ENCLAVE_TYPE_VBS_BASIC = @as(u32, 17);
pub const VBS_BASIC_PAGE_MEASURED_DATA = @as(u32, 1);
pub const VBS_BASIC_PAGE_UNMEASURED_DATA = @as(u32, 2);
pub const VBS_BASIC_PAGE_ZERO_FILL = @as(u32, 3);
pub const VBS_BASIC_PAGE_THREAD_DESCRIPTOR = @as(u32, 4);
pub const VBS_BASIC_PAGE_SYSTEM_CALL = @as(u32, 5);
pub const DEDICATED_MEMORY_CACHE_ELIGIBLE = @as(u32, 1);
pub const TREE_CONNECT_ATTRIBUTE_PRIVACY = @as(u32, 16384);
pub const TREE_CONNECT_ATTRIBUTE_INTEGRITY = @as(u32, 32768);
pub const TREE_CONNECT_ATTRIBUTE_GLOBAL = @as(u32, 4);
pub const TREE_CONNECT_ATTRIBUTE_PINNED = @as(u32, 2);
pub const FILE_ATTRIBUTE_STRICTLY_SEQUENTIAL = @as(u32, 536870912);
pub const MAILSLOT_NO_MESSAGE = @as(u32, 4294967295);
pub const MAILSLOT_WAIT_FOREVER = @as(u32, 4294967295);
pub const FILE_CASE_SENSITIVE_SEARCH = @as(u32, 1);
pub const FILE_CASE_PRESERVED_NAMES = @as(u32, 2);
pub const FILE_UNICODE_ON_DISK = @as(u32, 4);
pub const FILE_PERSISTENT_ACLS = @as(u32, 8);
pub const FILE_FILE_COMPRESSION = @as(u32, 16);
pub const FILE_VOLUME_QUOTAS = @as(u32, 32);
pub const FILE_SUPPORTS_SPARSE_FILES = @as(u32, 64);
pub const FILE_SUPPORTS_REPARSE_POINTS = @as(u32, 128);
pub const FILE_SUPPORTS_REMOTE_STORAGE = @as(u32, 256);
pub const FILE_RETURNS_CLEANUP_RESULT_INFO = @as(u32, 512);
pub const FILE_SUPPORTS_POSIX_UNLINK_RENAME = @as(u32, 1024);
pub const FILE_SUPPORTS_BYPASS_IO = @as(u32, 2048);
pub const FILE_VOLUME_IS_COMPRESSED = @as(u32, 32768);
pub const FILE_SUPPORTS_OBJECT_IDS = @as(u32, 65536);
pub const FILE_SUPPORTS_ENCRYPTION = @as(u32, 131072);
pub const FILE_NAMED_STREAMS = @as(u32, 262144);
pub const FILE_READ_ONLY_VOLUME = @as(u32, 524288);
pub const FILE_SEQUENTIAL_WRITE_ONCE = @as(u32, 1048576);
pub const FILE_SUPPORTS_TRANSACTIONS = @as(u32, 2097152);
pub const FILE_SUPPORTS_HARD_LINKS = @as(u32, 4194304);
pub const FILE_SUPPORTS_EXTENDED_ATTRIBUTES = @as(u32, 8388608);
pub const FILE_SUPPORTS_OPEN_BY_FILE_ID = @as(u32, 16777216);
pub const FILE_SUPPORTS_USN_JOURNAL = @as(u32, 33554432);
pub const FILE_SUPPORTS_INTEGRITY_STREAMS = @as(u32, 67108864);
pub const FILE_SUPPORTS_BLOCK_REFCOUNTING = @as(u32, 134217728);
pub const FILE_SUPPORTS_SPARSE_VDL = @as(u32, 268435456);
pub const FILE_DAX_VOLUME = @as(u32, 536870912);
pub const FILE_SUPPORTS_GHOSTING = @as(u32, 1073741824);
pub const FILE_CS_FLAG_CASE_SENSITIVE_DIR = @as(u32, 1);
pub const FLUSH_FLAGS_FILE_DATA_ONLY = @as(u32, 1);
pub const FLUSH_FLAGS_NO_SYNC = @as(u32, 2);
pub const FLUSH_FLAGS_FILE_DATA_SYNC_ONLY = @as(u32, 4);
pub const IO_REPARSE_TAG_RESERVED_ZERO = @as(u32, 0);
pub const IO_REPARSE_TAG_RESERVED_ONE = @as(u32, 1);
pub const IO_REPARSE_TAG_RESERVED_TWO = @as(u32, 2);
pub const IO_REPARSE_TAG_RESERVED_RANGE = @as(u32, 2);
pub const IO_REPARSE_TAG_MOUNT_POINT = @as(i32, -1610612733);
pub const IO_REPARSE_TAG_HSM = @as(i32, -1073741820);
pub const IO_REPARSE_TAG_HSM2 = @as(i32, -2147483642);
pub const IO_REPARSE_TAG_SIS = @as(i32, -2147483641);
pub const IO_REPARSE_TAG_WIM = @as(i32, -2147483640);
pub const IO_REPARSE_TAG_CSV = @as(i32, -2147483639);
pub const IO_REPARSE_TAG_DFS = @as(i32, -2147483638);
pub const IO_REPARSE_TAG_SYMLINK = @as(i32, -1610612724);
pub const IO_REPARSE_TAG_DFSR = @as(i32, -2147483630);
pub const IO_REPARSE_TAG_DEDUP = @as(i32, -2147483629);
pub const IO_REPARSE_TAG_NFS = @as(i32, -2147483628);
pub const IO_REPARSE_TAG_FILE_PLACEHOLDER = @as(i32, -2147483627);
pub const IO_REPARSE_TAG_WOF = @as(i32, -2147483625);
pub const IO_REPARSE_TAG_WCI = @as(i32, -2147483624);
pub const IO_REPARSE_TAG_WCI_1 = @as(i32, -1879044072);
pub const IO_REPARSE_TAG_GLOBAL_REPARSE = @as(i32, -1610612711);
pub const IO_REPARSE_TAG_CLOUD = @as(i32, -1879048166);
pub const IO_REPARSE_TAG_CLOUD_1 = @as(i32, -1879044070);
pub const IO_REPARSE_TAG_CLOUD_2 = @as(i32, -1879039974);
pub const IO_REPARSE_TAG_CLOUD_3 = @as(i32, -1879035878);
pub const IO_REPARSE_TAG_CLOUD_4 = @as(i32, -1879031782);
pub const IO_REPARSE_TAG_CLOUD_5 = @as(i32, -1879027686);
pub const IO_REPARSE_TAG_CLOUD_6 = @as(i32, -1879023590);
pub const IO_REPARSE_TAG_CLOUD_7 = @as(i32, -1879019494);
pub const IO_REPARSE_TAG_CLOUD_8 = @as(i32, -1879015398);
pub const IO_REPARSE_TAG_CLOUD_9 = @as(i32, -1879011302);
pub const IO_REPARSE_TAG_CLOUD_A = @as(i32, -1879007206);
pub const IO_REPARSE_TAG_CLOUD_B = @as(i32, -1879003110);
pub const IO_REPARSE_TAG_CLOUD_C = @as(i32, -1878999014);
pub const IO_REPARSE_TAG_CLOUD_D = @as(i32, -1878994918);
pub const IO_REPARSE_TAG_CLOUD_E = @as(i32, -1878990822);
pub const IO_REPARSE_TAG_CLOUD_F = @as(i32, -1878986726);
pub const IO_REPARSE_TAG_CLOUD_MASK = @as(i32, 61440);
pub const IO_REPARSE_TAG_APPEXECLINK = @as(i32, -2147483621);
pub const IO_REPARSE_TAG_PROJFS = @as(i32, -1879048164);
pub const IO_REPARSE_TAG_STORAGE_SYNC = @as(i32, -2147483618);
pub const IO_REPARSE_TAG_WCI_TOMBSTONE = @as(i32, -1610612705);
pub const IO_REPARSE_TAG_UNHANDLED = @as(i32, -2147483616);
pub const IO_REPARSE_TAG_ONEDRIVE = @as(i32, -2147483615);
pub const IO_REPARSE_TAG_PROJFS_TOMBSTONE = @as(i32, -1610612702);
pub const IO_REPARSE_TAG_AF_UNIX = @as(i32, -2147483613);
pub const IO_REPARSE_TAG_WCI_LINK = @as(i32, -1610612697);
pub const IO_REPARSE_TAG_WCI_LINK_1 = @as(i32, -1610608601);
pub const IO_REPARSE_TAG_DATALESS_CIM = @as(i32, -1610612696);
pub const SCRUB_DATA_INPUT_FLAG_RESUME = @as(u32, 1);
pub const SCRUB_DATA_INPUT_FLAG_SKIP_IN_SYNC = @as(u32, 2);
pub const SCRUB_DATA_INPUT_FLAG_SKIP_NON_INTEGRITY_DATA = @as(u32, 4);
pub const SCRUB_DATA_INPUT_FLAG_IGNORE_REDUNDANCY = @as(u32, 8);
pub const SCRUB_DATA_INPUT_FLAG_SKIP_DATA = @as(u32, 16);
pub const SCRUB_DATA_INPUT_FLAG_SCRUB_BY_OBJECT_ID = @as(u32, 32);
pub const SCRUB_DATA_INPUT_FLAG_OPLOCK_NOT_ACQUIRED = @as(u32, 64);
pub const SCRUB_DATA_OUTPUT_FLAG_INCOMPLETE = @as(u32, 1);
pub const SCRUB_DATA_OUTPUT_FLAG_NON_USER_DATA_RANGE = @as(u32, 65536);
pub const SCRUB_DATA_OUTPUT_FLAG_PARITY_EXTENT_DATA_RETURNED = @as(u32, 131072);
pub const SCRUB_DATA_OUTPUT_FLAG_RESUME_CONTEXT_LENGTH_SPECIFIED = @as(u32, 262144);
pub const SHUFFLE_FILE_FLAG_SKIP_INITIALIZING_NEW_CLUSTERS = @as(u32, 1);
pub const IO_COMPLETION_MODIFY_STATE = @as(u32, 2);
pub const NETWORK_APP_INSTANCE_CSV_FLAGS_VALID_ONLY_IF_CSV_COORDINATOR = @as(u32, 1);
pub const GUID_MAX_POWER_SAVINGS = Guid.initString("a1841308-3541-4fab-bc81-f71556f20b4a");
pub const GUID_MIN_POWER_SAVINGS = Guid.initString("8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c");
pub const GUID_TYPICAL_POWER_SAVINGS = Guid.initString("381b4222-f694-41f0-9685-ff5bb260df2e");
pub const NO_SUBGROUP_GUID = Guid.initString("fea3413e-7e05-4911-9a71-700331f1c294");
pub const ALL_POWERSCHEMES_GUID = Guid.initString("68a1e95e-13ea-41e1-8011-0c496ca490b0");
pub const GUID_POWERSCHEME_PERSONALITY = Guid.initString("245d8541-3943-4422-b025-13a784f679b7");
pub const GUID_ACTIVE_POWERSCHEME = Guid.initString("31f9f286-5084-42fe-b720-2b0264993763");
pub const GUID_IDLE_RESILIENCY_SUBGROUP = Guid.initString("2e601130-5351-4d9d-8e04-252966bad054");
pub const GUID_IDLE_RESILIENCY_PERIOD = Guid.initString("c42b79aa-aa3a-484b-a98f-2cf32aa90a28");
pub const GUID_DEEP_SLEEP_ENABLED = Guid.initString("d502f7ee-1dc7-4efd-a55d-f04b6f5c0545");
pub const GUID_DEEP_SLEEP_PLATFORM_STATE = Guid.initString("d23f2fb8-9536-4038-9c94-1ce02e5c2152");
pub const GUID_DISK_COALESCING_POWERDOWN_TIMEOUT = Guid.initString("c36f0eb4-2988-4a70-8eee-0884fc2c2433");
pub const GUID_EXECUTION_REQUIRED_REQUEST_TIMEOUT = Guid.initString("3166bc41-7e98-4e03-b34e-ec0f5f2b218e");
pub const GUID_VIDEO_SUBGROUP = Guid.initString("7516b95f-f776-4464-8c53-06167f40cc99");
pub const GUID_VIDEO_POWERDOWN_TIMEOUT = Guid.initString("3c0bc021-c8a8-4e07-a973-6b14cbcb2b7e");
pub const GUID_VIDEO_ANNOYANCE_TIMEOUT = Guid.initString("82dbcf2d-cd67-40c5-bfdc-9f1a5ccd4663");
pub const GUID_VIDEO_ADAPTIVE_PERCENT_INCREASE = Guid.initString("eed904df-b142-4183-b10b-5a1197a37864");
pub const GUID_VIDEO_DIM_TIMEOUT = Guid.initString("17aaa29b-8b43-4b94-aafe-35f64daaf1ee");
pub const GUID_VIDEO_ADAPTIVE_POWERDOWN = Guid.initString("90959d22-d6a1-49b9-af93-bce885ad335b");
pub const GUID_MONITOR_POWER_ON = Guid.initString("02731015-4510-4526-99e6-e5a17ebd1aea");
pub const GUID_DEVICE_POWER_POLICY_VIDEO_BRIGHTNESS = Guid.initString("aded5e82-b909-4619-9949-f5d71dac0bcb");
pub const GUID_DEVICE_POWER_POLICY_VIDEO_DIM_BRIGHTNESS = Guid.initString("f1fbfde2-a960-4165-9f88-50667911ce96");
pub const GUID_VIDEO_CURRENT_MONITOR_BRIGHTNESS = Guid.initString("8ffee2c6-2d01-46be-adb9-398addc5b4ff");
pub const GUID_VIDEO_ADAPTIVE_DISPLAY_BRIGHTNESS = Guid.initString("fbd9aa66-9553-4097-ba44-ed6e9d65eab8");
pub const GUID_CONSOLE_DISPLAY_STATE = Guid.initString("6fe69556-704a-47a0-8f24-c28d936fda47");
pub const GUID_ALLOW_DISPLAY_REQUIRED = Guid.initString("a9ceb8da-cd46-44fb-a98b-02af69de4623");
pub const GUID_VIDEO_CONSOLE_LOCK_TIMEOUT = Guid.initString("8ec4b3a5-6868-48c2-be75-4f3044be88a7");
pub const GUID_ADVANCED_COLOR_QUALITY_BIAS = Guid.initString("684c3e69-a4f7-4014-8754-d45179a56167");
pub const GUID_ADAPTIVE_POWER_BEHAVIOR_SUBGROUP = Guid.initString("8619b916-e004-4dd8-9b66-dae86f806698");
pub const GUID_NON_ADAPTIVE_INPUT_TIMEOUT = Guid.initString("5adbbfbc-074e-4da1-ba38-db8b36b2c8f3");
pub const GUID_ADAPTIVE_INPUT_CONTROLLER_STATE = Guid.initString("0e98fae9-f45a-4de1-a757-6031f197f6ea");
pub const GUID_DISK_SUBGROUP = Guid.initString("0012ee47-9041-4b5d-9b77-535fba8b1442");
pub const GUID_DISK_MAX_POWER = Guid.initString("51dea550-bb38-4bc4-991b-eacf37be5ec8");
pub const GUID_DISK_POWERDOWN_TIMEOUT = Guid.initString("6738e2c4-e8a5-4a42-b16a-e040e769756e");
pub const GUID_DISK_IDLE_TIMEOUT = Guid.initString("58e39ba8-b8e6-4ef6-90d0-89ae32b258d6");
pub const GUID_DISK_BURST_IGNORE_THRESHOLD = Guid.initString("80e3c60e-bb94-4ad8-bbe0-0d3195efc663");
pub const GUID_DISK_ADAPTIVE_POWERDOWN = Guid.initString("396a32e1-499a-40b2-9124-a96afe707667");
pub const GUID_DISK_NVME_NOPPME = Guid.initString("fc7372b6-ab2d-43ee-8797-15e9841f2cca");
pub const GUID_SLEEP_SUBGROUP = Guid.initString("238c9fa8-0aad-41ed-83f4-97be242c8f20");
pub const GUID_SLEEP_IDLE_THRESHOLD = Guid.initString("81cd32e0-7833-44f3-8737-7081f38d1f70");
pub const GUID_STANDBY_TIMEOUT = Guid.initString("29f6c1db-86da-48c5-9fdb-f2b67b1f44da");
pub const GUID_UNATTEND_SLEEP_TIMEOUT = Guid.initString("7bc4a2f9-d8fc-4469-b07b-33eb785aaca0");
pub const GUID_HIBERNATE_TIMEOUT = Guid.initString("9d7815a6-7ee4-497e-8888-515a05f02364");
pub const GUID_HIBERNATE_FASTS4_POLICY = Guid.initString("94ac6d29-73ce-41a6-809f-6363ba21b47e");
pub const GUID_CRITICAL_POWER_TRANSITION = Guid.initString("b7a27025-e569-46c2-a504-2b96cad225a1");
pub const GUID_SYSTEM_AWAYMODE = Guid.initString("98a7f580-01f7-48aa-9c0f-44352c29e5c0");
pub const GUID_ALLOW_AWAYMODE = Guid.initString("25dfa149-5dd1-4736-b5ab-e8a37b5b8187");
pub const GUID_USER_PRESENCE_PREDICTION = Guid.initString("82011705-fb95-4d46-8d35-4042b1d20def");
pub const GUID_STANDBY_BUDGET_GRACE_PERIOD = Guid.initString("60c07fe1-0556-45cf-9903-d56e32210242");
pub const GUID_STANDBY_BUDGET_PERCENT = Guid.initString("9fe527be-1b70-48da-930d-7bcf17b44990");
pub const GUID_STANDBY_RESERVE_GRACE_PERIOD = Guid.initString("c763ee92-71e8-4127-84eb-f6ed043a3e3d");
pub const GUID_STANDBY_RESERVE_TIME = Guid.initString("468fe7e5-1158-46ec-88bc-5b96c9e44fd0");
pub const GUID_STANDBY_RESET_PERCENT = Guid.initString("49cb11a5-56e2-4afb-9d38-3df47872e21b");
pub const GUID_HUPR_ADAPTIVE_DISPLAY_TIMEOUT = Guid.initString("0a7d6ab6-ac83-4ad1-8282-eca5b58308f3");
pub const GUID_ALLOW_STANDBY_STATES = Guid.initString("abfc2519-3608-4c2a-94ea-171b0ed546ab");
pub const GUID_ALLOW_RTC_WAKE = Guid.initString("bd3b718a-0680-4d9d-8ab2-e1d2b4ac806d");
pub const GUID_LEGACY_RTC_MITIGATION = Guid.initString("1a34bdc3-7e6b-442e-a9d0-64b6ef378e84");
pub const GUID_ALLOW_SYSTEM_REQUIRED = Guid.initString("a4b195f5-8225-47d8-8012-9d41369786e2");
pub const GUID_POWER_SAVING_STATUS = Guid.initString("e00958c0-c213-4ace-ac77-fecced2eeea5");
pub const GUID_ENERGY_SAVER_SUBGROUP = Guid.initString("de830923-a562-41af-a086-e3a2c6bad2da");
pub const GUID_ENERGY_SAVER_BATTERY_THRESHOLD = Guid.initString("e69653ca-cf7f-4f05-aa73-cb833fa90ad4");
pub const GUID_ENERGY_SAVER_BRIGHTNESS = Guid.initString("13d09884-f74e-474a-a852-b6bde8ad03a8");
pub const GUID_ENERGY_SAVER_POLICY = Guid.initString("5c5bb349-ad29-4ee2-9d0b-2b25270f7a81");
pub const GUID_SYSTEM_BUTTON_SUBGROUP = Guid.initString("4f971e89-eebd-4455-a8de-9e59040e7347");
pub const POWERBUTTON_ACTION_INDEX_NOTHING = @as(u32, 0);
pub const POWERBUTTON_ACTION_INDEX_SLEEP = @as(u32, 1);
pub const POWERBUTTON_ACTION_INDEX_HIBERNATE = @as(u32, 2);
pub const POWERBUTTON_ACTION_INDEX_SHUTDOWN = @as(u32, 3);
pub const POWERBUTTON_ACTION_INDEX_TURN_OFF_THE_DISPLAY = @as(u32, 4);
pub const POWERBUTTON_ACTION_VALUE_NOTHING = @as(u32, 0);
pub const POWERBUTTON_ACTION_VALUE_SLEEP = @as(u32, 2);
pub const POWERBUTTON_ACTION_VALUE_HIBERNATE = @as(u32, 3);
pub const POWERBUTTON_ACTION_VALUE_SHUTDOWN = @as(u32, 6);
pub const POWERBUTTON_ACTION_VALUE_TURN_OFF_THE_DISPLAY = @as(u32, 8);
pub const GUID_POWERBUTTON_ACTION = Guid.initString("7648efa3-dd9c-4e3e-b566-50f929386280");
pub const GUID_SLEEPBUTTON_ACTION = Guid.initString("96996bc0-ad50-47ec-923b-6f41874dd9eb");
pub const GUID_USERINTERFACEBUTTON_ACTION = Guid.initString("a7066653-8d6c-40a8-910e-a1f54b84c7e5");
pub const GUID_LIDCLOSE_ACTION = Guid.initString("5ca83367-6e45-459f-a27b-476b1d01c936");
pub const GUID_LIDOPEN_POWERSTATE = Guid.initString("99ff10e7-23b1-4c07-a9d1-5c3206d741b4");
pub const GUID_BATTERY_SUBGROUP = Guid.initString("e73a048d-bf27-4f12-9731-8b2076e8891f");
pub const GUID_BATTERY_DISCHARGE_ACTION_0 = Guid.initString("637ea02f-bbcb-4015-8e2c-a1c7b9c0b546");
pub const GUID_BATTERY_DISCHARGE_LEVEL_0 = Guid.initString("9a66d8d7-4ff7-4ef9-b5a2-5a326ca2a469");
pub const GUID_BATTERY_DISCHARGE_FLAGS_0 = Guid.initString("5dbb7c9f-38e9-40d2-9749-4f8a0e9f640f");
pub const GUID_BATTERY_DISCHARGE_ACTION_1 = Guid.initString("d8742dcb-3e6a-4b3c-b3fe-374623cdcf06");
pub const GUID_BATTERY_DISCHARGE_LEVEL_1 = Guid.initString("8183ba9a-e910-48da-8769-14ae6dc1170a");
pub const GUID_BATTERY_DISCHARGE_FLAGS_1 = Guid.initString("bcded951-187b-4d05-bccc-f7e51960c258");
pub const GUID_BATTERY_DISCHARGE_ACTION_2 = Guid.initString("421cba38-1a8e-4881-ac89-e33a8b04ece4");
pub const GUID_BATTERY_DISCHARGE_LEVEL_2 = Guid.initString("07a07ca2-adaf-40d7-b077-533aaded1bfa");
pub const GUID_BATTERY_DISCHARGE_FLAGS_2 = Guid.initString("7fd2f0c4-feb7-4da3-8117-e3fbedc46582");
pub const GUID_BATTERY_DISCHARGE_ACTION_3 = Guid.initString("80472613-9780-455e-b308-72d3003cf2f8");
pub const GUID_BATTERY_DISCHARGE_LEVEL_3 = Guid.initString("58afd5a6-c2dd-47d2-9fbf-ef70cc5c5965");
pub const GUID_BATTERY_DISCHARGE_FLAGS_3 = Guid.initString("73613ccf-dbfa-4279-8356-4935f6bf62f3");
pub const GUID_PROCESSOR_SETTINGS_SUBGROUP = Guid.initString("54533251-82be-4824-96c1-47b60b740d00");
pub const GUID_PROCESSOR_THROTTLE_POLICY = Guid.initString("57027304-4af6-4104-9260-e3d95248fc36");
pub const PERFSTATE_POLICY_CHANGE_IDEAL = @as(u32, 0);
pub const PERFSTATE_POLICY_CHANGE_SINGLE = @as(u32, 1);
pub const PERFSTATE_POLICY_CHANGE_ROCKET = @as(u32, 2);
pub const PERFSTATE_POLICY_CHANGE_IDEAL_AGGRESSIVE = @as(u32, 3);
pub const PERFSTATE_POLICY_CHANGE_DECREASE_MAX = @as(u32, 2);
pub const PERFSTATE_POLICY_CHANGE_INCREASE_MAX = @as(u32, 3);
pub const GUID_PROCESSOR_THROTTLE_MAXIMUM = Guid.initString("bc5038f7-23e0-4960-96da-33abaf5935ec");
pub const GUID_PROCESSOR_THROTTLE_MAXIMUM_1 = Guid.initString("bc5038f7-23e0-4960-96da-33abaf5935ed");
pub const GUID_PROCESSOR_THROTTLE_MINIMUM = Guid.initString("893dee8e-2bef-41e0-89c6-b55d0929964c");
pub const GUID_PROCESSOR_THROTTLE_MINIMUM_1 = Guid.initString("893dee8e-2bef-41e0-89c6-b55d0929964d");
pub const GUID_PROCESSOR_FREQUENCY_LIMIT = Guid.initString("75b0ae3f-bce0-45a7-8c89-c9611c25e100");
pub const GUID_PROCESSOR_FREQUENCY_LIMIT_1 = Guid.initString("75b0ae3f-bce0-45a7-8c89-c9611c25e101");
pub const GUID_PROCESSOR_ALLOW_THROTTLING = Guid.initString("3b04d4fd-1cc7-4f23-ab1c-d1337819c4bb");
pub const PROCESSOR_THROTTLE_DISABLED = @as(u32, 0);
pub const PROCESSOR_THROTTLE_ENABLED = @as(u32, 1);
pub const PROCESSOR_THROTTLE_AUTOMATIC = @as(u32, 2);
pub const GUID_PROCESSOR_IDLESTATE_POLICY = Guid.initString("68f262a7-f621-4069-b9a5-4874169be23c");
pub const GUID_PROCESSOR_PERFSTATE_POLICY = Guid.initString("bbdc3814-18e9-4463-8a55-d197327c45c0");
pub const GUID_PROCESSOR_PERF_INCREASE_THRESHOLD = Guid.initString("06cadf0e-64ed-448a-8927-ce7bf90eb35d");
pub const GUID_PROCESSOR_PERF_INCREASE_THRESHOLD_1 = Guid.initString("06cadf0e-64ed-448a-8927-ce7bf90eb35e");
pub const GUID_PROCESSOR_PERF_DECREASE_THRESHOLD = Guid.initString("12a0ab44-fe28-4fa9-b3bd-4b64f44960a6");
pub const GUID_PROCESSOR_PERF_DECREASE_THRESHOLD_1 = Guid.initString("12a0ab44-fe28-4fa9-b3bd-4b64f44960a7");
pub const GUID_PROCESSOR_PERF_INCREASE_POLICY = Guid.initString("465e1f50-b610-473a-ab58-00d1077dc418");
pub const GUID_PROCESSOR_PERF_INCREASE_POLICY_1 = Guid.initString("465e1f50-b610-473a-ab58-00d1077dc419");
pub const GUID_PROCESSOR_PERF_DECREASE_POLICY = Guid.initString("40fbefc7-2e9d-4d25-a185-0cfd8574bac6");
pub const GUID_PROCESSOR_PERF_DECREASE_POLICY_1 = Guid.initString("40fbefc7-2e9d-4d25-a185-0cfd8574bac7");
pub const GUID_PROCESSOR_PERF_INCREASE_TIME = Guid.initString("984cf492-3bed-4488-a8f9-4286c97bf5aa");
pub const GUID_PROCESSOR_PERF_INCREASE_TIME_1 = Guid.initString("984cf492-3bed-4488-a8f9-4286c97bf5ab");
pub const GUID_PROCESSOR_PERF_DECREASE_TIME = Guid.initString("d8edeb9b-95cf-4f95-a73c-b061973693c8");
pub const GUID_PROCESSOR_PERF_DECREASE_TIME_1 = Guid.initString("d8edeb9b-95cf-4f95-a73c-b061973693c9");
pub const GUID_PROCESSOR_PERF_TIME_CHECK = Guid.initString("4d2b0152-7d5c-498b-88e2-34345392a2c5");
pub const GUID_PROCESSOR_PERF_BOOST_POLICY = Guid.initString("45bcc044-d885-43e2-8605-ee0ec6e96b59");
pub const PROCESSOR_PERF_BOOST_POLICY_DISABLED = @as(u32, 0);
pub const PROCESSOR_PERF_BOOST_POLICY_MAX = @as(u32, 100);
pub const GUID_PROCESSOR_PERF_BOOST_MODE = Guid.initString("be337238-0d82-4146-a960-4f3749d470c7");
pub const PROCESSOR_PERF_BOOST_MODE_DISABLED = @as(u32, 0);
pub const PROCESSOR_PERF_BOOST_MODE_ENABLED = @as(u32, 1);
pub const PROCESSOR_PERF_BOOST_MODE_AGGRESSIVE = @as(u32, 2);
pub const PROCESSOR_PERF_BOOST_MODE_EFFICIENT_ENABLED = @as(u32, 3);
pub const PROCESSOR_PERF_BOOST_MODE_EFFICIENT_AGGRESSIVE = @as(u32, 4);
pub const PROCESSOR_PERF_BOOST_MODE_AGGRESSIVE_AT_GUARANTEED = @as(u32, 5);
pub const PROCESSOR_PERF_BOOST_MODE_EFFICIENT_AGGRESSIVE_AT_GUARANTEED = @as(u32, 6);
pub const PROCESSOR_PERF_BOOST_MODE_MAX = @as(u32, 6);
pub const GUID_PROCESSOR_PERF_AUTONOMOUS_MODE = Guid.initString("8baa4a8a-14c6-4451-8e8b-14bdbd197537");
pub const PROCESSOR_PERF_AUTONOMOUS_MODE_DISABLED = @as(u32, 0);
pub const PROCESSOR_PERF_AUTONOMOUS_MODE_ENABLED = @as(u32, 1);
pub const GUID_PROCESSOR_PERF_ENERGY_PERFORMANCE_PREFERENCE = Guid.initString("36687f9e-e3a5-4dbf-b1dc-15eb381c6863");
pub const GUID_PROCESSOR_PERF_ENERGY_PERFORMANCE_PREFERENCE_1 = Guid.initString("36687f9e-e3a5-4dbf-b1dc-15eb381c6864");
pub const PROCESSOR_PERF_PERFORMANCE_PREFERENCE = @as(u32, 255);
pub const PROCESSOR_PERF_ENERGY_PREFERENCE = @as(u32, 0);
pub const GUID_PROCESSOR_PERF_AUTONOMOUS_ACTIVITY_WINDOW = Guid.initString("cfeda3d0-7697-4566-a922-a9086cd49dfa");
pub const PROCESSOR_PERF_MINIMUM_ACTIVITY_WINDOW = @as(u32, 0);
pub const PROCESSOR_PERF_MAXIMUM_ACTIVITY_WINDOW = @as(u32, 1270000000);
pub const GUID_PROCESSOR_DUTY_CYCLING = Guid.initString("4e4450b3-6179-4e91-b8f1-5bb9938f81a1");
pub const PROCESSOR_DUTY_CYCLING_DISABLED = @as(u32, 0);
pub const PROCESSOR_DUTY_CYCLING_ENABLED = @as(u32, 1);
pub const GUID_PROCESSOR_IDLE_ALLOW_SCALING = Guid.initString("6c2993b0-8f48-481f-bcc6-00dd2742aa06");
pub const GUID_PROCESSOR_IDLE_DISABLE = Guid.initString("5d76a2ca-e8c0-402f-a133-2158492d58ad");
pub const GUID_PROCESSOR_IDLE_STATE_MAXIMUM = Guid.initString("9943e905-9a30-4ec1-9b99-44dd3b76f7a2");
pub const GUID_PROCESSOR_IDLE_TIME_CHECK = Guid.initString("c4581c31-89ab-4597-8e2b-9c9cab440e6b");
pub const GUID_PROCESSOR_IDLE_DEMOTE_THRESHOLD = Guid.initString("4b92d758-5a24-4851-a470-815d78aee119");
pub const GUID_PROCESSOR_IDLE_PROMOTE_THRESHOLD = Guid.initString("7b224883-b3cc-4d79-819f-8374152cbe7c");
pub const GUID_PROCESSOR_CORE_PARKING_INCREASE_THRESHOLD = Guid.initString("df142941-20f3-4edf-9a4a-9c83d3d717d1");
pub const GUID_PROCESSOR_CORE_PARKING_DECREASE_THRESHOLD = Guid.initString("68dd2f27-a4ce-4e11-8487-3794e4135dfa");
pub const GUID_PROCESSOR_CORE_PARKING_INCREASE_POLICY = Guid.initString("c7be0679-2817-4d69-9d02-519a537ed0c6");
pub const CORE_PARKING_POLICY_CHANGE_IDEAL = @as(u32, 0);
pub const CORE_PARKING_POLICY_CHANGE_SINGLE = @as(u32, 1);
pub const CORE_PARKING_POLICY_CHANGE_ROCKET = @as(u32, 2);
pub const CORE_PARKING_POLICY_CHANGE_MULTISTEP = @as(u32, 3);
pub const CORE_PARKING_POLICY_CHANGE_MAX = @as(u32, 3);
pub const GUID_PROCESSOR_CORE_PARKING_DECREASE_POLICY = Guid.initString("71021b41-c749-4d21-be74-a00f335d582b");
pub const GUID_PROCESSOR_CORE_PARKING_MAX_CORES = Guid.initString("ea062031-0e34-4ff1-9b6d-eb1059334028");
pub const GUID_PROCESSOR_CORE_PARKING_MAX_CORES_1 = Guid.initString("ea062031-0e34-4ff1-9b6d-eb1059334029");
pub const GUID_PROCESSOR_CORE_PARKING_MIN_CORES = Guid.initString("0cc5b647-c1df-4637-891a-dec35c318583");
pub const GUID_PROCESSOR_CORE_PARKING_MIN_CORES_1 = Guid.initString("0cc5b647-c1df-4637-891a-dec35c318584");
pub const GUID_PROCESSOR_CORE_PARKING_INCREASE_TIME = Guid.initString("2ddd5a84-5a71-437e-912a-db0b8c788732");
pub const GUID_PROCESSOR_CORE_PARKING_DECREASE_TIME = Guid.initString("dfd10d17-d5eb-45dd-877a-9a34ddd15c82");
pub const GUID_PROCESSOR_CORE_PARKING_AFFINITY_HISTORY_DECREASE_FACTOR = Guid.initString("8f7b45e3-c393-480a-878c-f67ac3d07082");
pub const GUID_PROCESSOR_CORE_PARKING_AFFINITY_HISTORY_THRESHOLD = Guid.initString("5b33697b-e89d-4d38-aa46-9e7dfb7cd2f9");
pub const GUID_PROCESSOR_CORE_PARKING_AFFINITY_WEIGHTING = Guid.initString("e70867f1-fa2f-4f4e-aea1-4d8a0ba23b20");
pub const GUID_PROCESSOR_CORE_PARKING_OVER_UTILIZATION_HISTORY_DECREASE_FACTOR = Guid.initString("1299023c-bc28-4f0a-81ec-d3295a8d815d");
pub const GUID_PROCESSOR_CORE_PARKING_OVER_UTILIZATION_HISTORY_THRESHOLD = Guid.initString("9ac18e92-aa3c-4e27-b307-01ae37307129");
pub const GUID_PROCESSOR_CORE_PARKING_OVER_UTILIZATION_WEIGHTING = Guid.initString("8809c2d8-b155-42d4-bcda-0d345651b1db");
pub const GUID_PROCESSOR_CORE_PARKING_OVER_UTILIZATION_THRESHOLD = Guid.initString("943c8cb6-6f93-4227-ad87-e9a3feec08d1");
pub const GUID_PROCESSOR_PARKING_CORE_OVERRIDE = Guid.initString("a55612aa-f624-42c6-a443-7397d064c04f");
pub const GUID_PROCESSOR_PARKING_PERF_STATE = Guid.initString("447235c7-6a8d-4cc0-8e24-9eaf70b96e2b");
pub const GUID_PROCESSOR_PARKING_PERF_STATE_1 = Guid.initString("447235c7-6a8d-4cc0-8e24-9eaf70b96e2c");
pub const GUID_PROCESSOR_PARKING_CONCURRENCY_THRESHOLD = Guid.initString("2430ab6f-a520-44a2-9601-f7f23b5134b1");
pub const GUID_PROCESSOR_PARKING_HEADROOM_THRESHOLD = Guid.initString("f735a673-2066-4f80-a0c5-ddee0cf1bf5d");
pub const GUID_PROCESSOR_PARKING_DISTRIBUTION_THRESHOLD = Guid.initString("4bdaf4e9-d103-46d7-a5f0-6280121616ef");
pub const GUID_PROCESSOR_SOFT_PARKING_LATENCY = Guid.initString("97cfac41-2217-47eb-992d-618b1977c907");
pub const GUID_PROCESSOR_PERF_HISTORY = Guid.initString("7d24baa7-0b84-480f-840c-1b0743c00f5f");
pub const GUID_PROCESSOR_PERF_HISTORY_1 = Guid.initString("7d24baa7-0b84-480f-840c-1b0743c00f60");
pub const GUID_PROCESSOR_PERF_INCREASE_HISTORY = Guid.initString("99b3ef01-752f-46a1-80fb-7730011f2354");
pub const GUID_PROCESSOR_PERF_DECREASE_HISTORY = Guid.initString("0300f6f8-abd6-45a9-b74f-4908691a40b5");
pub const GUID_PROCESSOR_PERF_CORE_PARKING_HISTORY = Guid.initString("77d7f282-8f1a-42cd-8537-45450a839be8");
pub const GUID_PROCESSOR_PERF_LATENCY_HINT = Guid.initString("0822df31-9c83-441c-a079-0de4cf009c7b");
pub const GUID_PROCESSOR_PERF_LATENCY_HINT_PERF = Guid.initString("619b7505-003b-4e82-b7a6-4dd29c300971");
pub const GUID_PROCESSOR_PERF_LATENCY_HINT_PERF_1 = Guid.initString("619b7505-003b-4e82-b7a6-4dd29c300972");
pub const GUID_PROCESSOR_LATENCY_HINT_MIN_UNPARK = Guid.initString("616cdaa5-695e-4545-97ad-97dc2d1bdd88");
pub const GUID_PROCESSOR_LATENCY_HINT_MIN_UNPARK_1 = Guid.initString("616cdaa5-695e-4545-97ad-97dc2d1bdd89");
pub const GUID_PROCESSOR_DISTRIBUTE_UTILITY = Guid.initString("e0007330-f589-42ed-a401-5ddb10e785d3");
pub const GUID_PROCESSOR_HETEROGENEOUS_POLICY = Guid.initString("7f2f5cfa-f10c-4823-b5e1-e93ae85f46b5");
pub const GUID_PROCESSOR_HETERO_DECREASE_TIME = Guid.initString("7f2492b6-60b1-45e5-ae55-773f8cd5caec");
pub const GUID_PROCESSOR_HETERO_INCREASE_TIME = Guid.initString("4009efa7-e72d-4cba-9edf-91084ea8cbc3");
pub const GUID_PROCESSOR_HETERO_DECREASE_THRESHOLD = Guid.initString("f8861c27-95e7-475c-865b-13c0cb3f9d6b");
pub const GUID_PROCESSOR_HETERO_INCREASE_THRESHOLD = Guid.initString("b000397d-9b0b-483d-98c9-692a6060cfbf");
pub const GUID_PROCESSOR_CLASS0_FLOOR_PERF = Guid.initString("fddc842b-8364-4edc-94cf-c17f60de1c80");
pub const GUID_PROCESSOR_CLASS1_INITIAL_PERF = Guid.initString("1facfc65-a930-4bc5-9f38-504ec097bbc0");
pub const GUID_PROCESSOR_THREAD_SCHEDULING_POLICY = Guid.initString("93b8b6dc-0698-4d1c-9ee4-0644e900c85d");
pub const GUID_PROCESSOR_SHORT_THREAD_SCHEDULING_POLICY = Guid.initString("bae08b81-2d5e-4688-ad6a-13243356654b");
pub const GUID_PROCESSOR_SHORT_THREAD_RUNTIME_THRESHOLD = Guid.initString("d92998c2-6a48-49ca-85d4-8cceec294570");
pub const GUID_SYSTEM_COOLING_POLICY = Guid.initString("94d3a615-a899-4ac5-ae2b-e4d8f634367f");
pub const GUID_PROCESSOR_RESPONSIVENESS_DISABLE_THRESHOLD = Guid.initString("38b8383d-cce0-4c79-9e3e-56a4f17cc480");
pub const GUID_PROCESSOR_RESPONSIVENESS_DISABLE_THRESHOLD_1 = Guid.initString("38b8383d-cce0-4c79-9e3e-56a4f17cc481");
pub const GUID_PROCESSOR_RESPONSIVENESS_ENABLE_THRESHOLD = Guid.initString("3d44e256-7222-4415-a9ed-9c45fa3dd830");
pub const GUID_PROCESSOR_RESPONSIVENESS_ENABLE_THRESHOLD_1 = Guid.initString("3d44e256-7222-4415-a9ed-9c45fa3dd831");
pub const GUID_PROCESSOR_RESPONSIVENESS_DISABLE_TIME = Guid.initString("f565999f-3fb0-411a-a226-3f0198dec130");
pub const GUID_PROCESSOR_RESPONSIVENESS_DISABLE_TIME_1 = Guid.initString("f565999f-3fb0-411a-a226-3f0198dec131");
pub const GUID_PROCESSOR_RESPONSIVENESS_ENABLE_TIME = Guid.initString("3d915188-7830-49ae-a79a-0fb0a1e5a200");
pub const GUID_PROCESSOR_RESPONSIVENESS_ENABLE_TIME_1 = Guid.initString("3d915188-7830-49ae-a79a-0fb0a1e5a201");
pub const GUID_PROCESSOR_RESPONSIVENESS_EPP_CEILING = Guid.initString("4427c73b-9756-4a5c-b84b-c7bda79c7320");
pub const GUID_PROCESSOR_RESPONSIVENESS_EPP_CEILING_1 = Guid.initString("4427c73b-9756-4a5c-b84b-c7bda79c7321");
pub const GUID_PROCESSOR_RESPONSIVENESS_PERF_FLOOR = Guid.initString("ce8e92ee-6a86-4572-bfe0-20c21d03cd40");
pub const GUID_PROCESSOR_RESPONSIVENESS_PERF_FLOOR_1 = Guid.initString("ce8e92ee-6a86-4572-bfe0-20c21d03cd41");
pub const GUID_LOCK_CONSOLE_ON_WAKE = Guid.initString("0e796bdb-100d-47d6-a2d5-f7d2daa51f51");
pub const GUID_DEVICE_IDLE_POLICY = Guid.initString("4faab71a-92e5-4726-b531-224559672d19");
pub const POWER_DEVICE_IDLE_POLICY_PERFORMANCE = @as(u32, 0);
pub const POWER_DEVICE_IDLE_POLICY_CONSERVATIVE = @as(u32, 1);
pub const GUID_CONNECTIVITY_IN_STANDBY = Guid.initString("f15576e8-98b7-4186-b944-eafa664402d9");
pub const POWER_CONNECTIVITY_IN_STANDBY_DISABLED = @as(u32, 0);
pub const POWER_CONNECTIVITY_IN_STANDBY_ENABLED = @as(u32, 1);
pub const POWER_CONNECTIVITY_IN_STANDBY_SYSTEM_MANAGED = @as(u32, 2);
pub const GUID_DISCONNECTED_STANDBY_MODE = Guid.initString("68afb2d9-ee95-47a8-8f50-4115088073b1");
pub const POWER_DISCONNECTED_STANDBY_MODE_NORMAL = @as(u32, 0);
pub const POWER_DISCONNECTED_STANDBY_MODE_AGGRESSIVE = @as(u32, 1);
pub const GUID_ACDC_POWER_SOURCE = Guid.initString("5d3e9a59-e9d5-4b00-a6bd-ff34ff516548");
pub const GUID_LIDSWITCH_STATE_CHANGE = Guid.initString("ba3e0f4d-b817-4094-a2d1-d56379e6a0f3");
pub const GUID_LIDSWITCH_STATE_RELIABILITY = Guid.initString("ae4c4ff1-d361-43f4-80aa-bbb6eb03de94");
pub const GUID_BATTERY_PERCENTAGE_REMAINING = Guid.initString("a7ad8041-b45a-4cae-87a3-eecbb468a9e1");
pub const GUID_BATTERY_COUNT = Guid.initString("7d263f15-fca4-49e5-854b-a9f2bfbd5c24");
pub const GUID_GLOBAL_USER_PRESENCE = Guid.initString("786e8a1d-b427-4344-9207-09e70bdcbea9");
pub const GUID_SESSION_DISPLAY_STATUS = Guid.initString("2b84c20e-ad23-4ddf-93db-05ffbd7efca5");
pub const GUID_SESSION_USER_PRESENCE = Guid.initString("3c0f4548-c03f-4c4d-b9f2-237ede686376");
pub const GUID_IDLE_BACKGROUND_TASK = Guid.initString("515c31d8-f734-163d-a0fd-11a08c91e8f1");
pub const GUID_BACKGROUND_TASK_NOTIFICATION = Guid.initString("cf23f240-2a54-48d8-b114-de1518ff052e");
pub const GUID_APPLAUNCH_BUTTON = Guid.initString("1a689231-7399-4e9a-8f99-b71f999db3fa");
pub const GUID_PCIEXPRESS_SETTINGS_SUBGROUP = Guid.initString("501a4d13-42af-4429-9fd1-a8218c268e20");
pub const GUID_PCIEXPRESS_ASPM_POLICY = Guid.initString("ee12f906-d277-404b-b6da-e5fa1a576df5");
pub const GUID_ENABLE_SWITCH_FORCED_SHUTDOWN = Guid.initString("833a6b62-dfa4-46d1-82f8-e09e34d029d6");
pub const GUID_INTSTEER_SUBGROUP = Guid.initString("48672f38-7a9a-4bb2-8bf8-3d85be19de4e");
pub const GUID_INTSTEER_MODE = Guid.initString("2bfc24f9-5ea2-4801-8213-3dbae01aa39d");
pub const GUID_INTSTEER_LOAD_PER_PROC_TRIGGER = Guid.initString("73cde64d-d720-4bb2-a860-c755afe77ef2");
pub const GUID_INTSTEER_TIME_UNPARK_TRIGGER = Guid.initString("d6ba4903-386f-4c2c-8adb-5c21b3328d25");
pub const GUID_GRAPHICS_SUBGROUP = Guid.initString("5fb4938d-1ee8-4b0f-9a3c-5036b0ab995c");
pub const GUID_GPU_PREFERENCE_POLICY = Guid.initString("dd848b2a-8a5d-4451-9ae2-39cd41658f6c");
pub const GUID_MIXED_REALITY_MODE = Guid.initString("1e626b4e-cf04-4f8d-9cc7-c97c5b0f2391");
pub const GUID_SPR_ACTIVE_SESSION_CHANGE = Guid.initString("0e24ce38-c393-4742-bdb1-744f4b9ee08e");
pub const POWER_SYSTEM_MAXIMUM = @as(u32, 7);
pub const DIAGNOSTIC_REASON_VERSION = @as(u32, 0);
pub const DIAGNOSTIC_REASON_SIMPLE_STRING = @as(u32, 1);
pub const DIAGNOSTIC_REASON_DETAILED_STRING = @as(u32, 2);
pub const DIAGNOSTIC_REASON_NOT_SPECIFIED = @as(u32, 2147483648);
pub const POWER_REQUEST_CONTEXT_VERSION = @as(u32, 0);
pub const PDCAP_D0_SUPPORTED = @as(u32, 1);
pub const PDCAP_D1_SUPPORTED = @as(u32, 2);
pub const PDCAP_D2_SUPPORTED = @as(u32, 4);
pub const PDCAP_D3_SUPPORTED = @as(u32, 8);
pub const PDCAP_WAKE_FROM_D0_SUPPORTED = @as(u32, 16);
pub const PDCAP_WAKE_FROM_D1_SUPPORTED = @as(u32, 32);
pub const PDCAP_WAKE_FROM_D2_SUPPORTED = @as(u32, 64);
pub const PDCAP_WAKE_FROM_D3_SUPPORTED = @as(u32, 128);
pub const PDCAP_WARM_EJECT_SUPPORTED = @as(u32, 256);
pub const POWER_SETTING_VALUE_VERSION = @as(u32, 1);
pub const PROC_IDLE_BUCKET_COUNT = @as(u32, 6);
pub const PROC_IDLE_BUCKET_COUNT_EX = @as(u32, 16);
pub const ACPI_PPM_SOFTWARE_ALL = @as(u32, 252);
pub const ACPI_PPM_SOFTWARE_ANY = @as(u32, 253);
pub const ACPI_PPM_HARDWARE_ALL = @as(u32, 254);
pub const MS_PPM_SOFTWARE_ALL = @as(u32, 1);
pub const PPM_FIRMWARE_ACPI1C2 = @as(u32, 1);
pub const PPM_FIRMWARE_ACPI1C3 = @as(u32, 2);
pub const PPM_FIRMWARE_ACPI1TSTATES = @as(u32, 4);
pub const PPM_FIRMWARE_CST = @as(u32, 8);
pub const PPM_FIRMWARE_CSD = @as(u32, 16);
pub const PPM_FIRMWARE_PCT = @as(u32, 32);
pub const PPM_FIRMWARE_PSS = @as(u32, 64);
pub const PPM_FIRMWARE_XPSS = @as(u32, 128);
pub const PPM_FIRMWARE_PPC = @as(u32, 256);
pub const PPM_FIRMWARE_PSD = @as(u32, 512);
pub const PPM_FIRMWARE_PTC = @as(u32, 1024);
pub const PPM_FIRMWARE_TSS = @as(u32, 2048);
pub const PPM_FIRMWARE_TPC = @as(u32, 4096);
pub const PPM_FIRMWARE_TSD = @as(u32, 8192);
pub const PPM_FIRMWARE_PCCH = @as(u32, 16384);
pub const PPM_FIRMWARE_PCCP = @as(u32, 32768);
pub const PPM_FIRMWARE_OSC = @as(u32, 65536);
pub const PPM_FIRMWARE_PDC = @as(u32, 131072);
pub const PPM_FIRMWARE_CPC = @as(u32, 262144);
pub const PPM_FIRMWARE_LPI = @as(u32, 524288);
pub const PPM_PERFORMANCE_IMPLEMENTATION_NONE = @as(u32, 0);
pub const PPM_PERFORMANCE_IMPLEMENTATION_PSTATES = @as(u32, 1);
pub const PPM_PERFORMANCE_IMPLEMENTATION_PCCV1 = @as(u32, 2);
pub const PPM_PERFORMANCE_IMPLEMENTATION_CPPC = @as(u32, 3);
pub const PPM_PERFORMANCE_IMPLEMENTATION_PEP = @as(u32, 4);
pub const PPM_IDLE_IMPLEMENTATION_NONE = @as(u32, 0);
pub const PPM_IDLE_IMPLEMENTATION_CSTATES = @as(u32, 1);
pub const PPM_IDLE_IMPLEMENTATION_PEP = @as(u32, 2);
pub const PPM_IDLE_IMPLEMENTATION_MICROPEP = @as(u32, 3);
pub const PPM_IDLE_IMPLEMENTATION_LPISTATES = @as(u32, 4);
pub const PPM_PERFSTATE_CHANGE_GUID = Guid.initString("a5b32ddd-7f39-4abc-b892-900e43b59ebb");
pub const PPM_PERFSTATE_DOMAIN_CHANGE_GUID = Guid.initString("995e6b7f-d653-497a-b978-36a30c29bf01");
pub const PPM_IDLESTATE_CHANGE_GUID = Guid.initString("4838fe4f-f71c-4e51-9ecc-8430a7ac4c6c");
pub const PPM_PERFSTATES_DATA_GUID = Guid.initString("5708cc20-7d40-4bf4-b4aa-2b01338d0126");
pub const PPM_IDLESTATES_DATA_GUID = Guid.initString("ba138e10-e250-4ad7-8616-cf1a7ad410e7");
pub const PPM_IDLE_ACCOUNTING_GUID = Guid.initString("e2a26f78-ae07-4ee0-a30f-ce54f55a94cd");
pub const PPM_IDLE_ACCOUNTING_EX_GUID = Guid.initString("d67abd39-81f8-4a5e-8152-72e31ec912ee");
pub const PPM_THERMALCONSTRAINT_GUID = Guid.initString("a852c2c8-1a4c-423b-8c2c-f30d82931a88");
pub const PPM_PERFMON_PERFSTATE_GUID = Guid.initString("7fd18652-0cfe-40d2-b0a1-0b066a87759e");
pub const PPM_THERMAL_POLICY_CHANGE_GUID = Guid.initString("48f377b8-6880-4c7b-8bdc-380176c6654d");
pub const POWER_ACTION_QUERY_ALLOWED = @as(u32, 1);
pub const POWER_ACTION_UI_ALLOWED = @as(u32, 2);
pub const POWER_ACTION_OVERRIDE_APPS = @as(u32, 4);
pub const POWER_ACTION_HIBERBOOT = @as(u32, 8);
pub const POWER_ACTION_USER_NOTIFY = @as(u32, 16);
pub const POWER_ACTION_DOZE_TO_HIBERNATE = @as(u32, 32);
pub const POWER_ACTION_ACPI_CRITICAL = @as(u32, 16777216);
pub const POWER_ACTION_ACPI_USER_NOTIFY = @as(u32, 33554432);
pub const POWER_ACTION_DIRECTED_DRIPS = @as(u32, 67108864);
pub const POWER_ACTION_PSEUDO_TRANSITION = @as(u32, 134217728);
pub const POWER_ACTION_LIGHTEST_FIRST = @as(u32, 268435456);
pub const POWER_ACTION_LOCK_CONSOLE = @as(u32, 536870912);
pub const POWER_ACTION_DISABLE_WAKES = @as(u32, 1073741824);
pub const POWER_ACTION_CRITICAL = @as(u32, 2147483648);
pub const POWER_USER_NOTIFY_FORCED_SHUTDOWN = @as(u32, 32);
pub const BATTERY_DISCHARGE_FLAGS_EVENTCODE_MASK = @as(u32, 7);
pub const BATTERY_DISCHARGE_FLAGS_ENABLE = @as(u32, 2147483648);
pub const NUM_DISCHARGE_POLICIES = @as(u32, 4);
pub const DISCHARGE_POLICY_CRITICAL = @as(u32, 0);
pub const DISCHARGE_POLICY_LOW = @as(u32, 1);
pub const PROCESSOR_IDLESTATE_POLICY_COUNT = @as(u32, 3);
pub const PO_THROTTLE_NONE = @as(u32, 0);
pub const PO_THROTTLE_CONSTANT = @as(u32, 1);
pub const PO_THROTTLE_DEGRADE = @as(u32, 2);
pub const PO_THROTTLE_ADAPTIVE = @as(u32, 3);
pub const PO_THROTTLE_MAXIMUM = @as(u32, 4);
pub const HIBERFILE_TYPE_NONE = @as(u32, 0);
pub const HIBERFILE_TYPE_REDUCED = @as(u32, 1);
pub const HIBERFILE_TYPE_FULL = @as(u32, 2);
pub const HIBERFILE_TYPE_MAX = @as(u32, 3);
pub const IMAGE_DOS_SIGNATURE = @as(u32, 23117);
pub const IMAGE_OS2_SIGNATURE = @as(u32, 17742);
pub const IMAGE_OS2_SIGNATURE_LE = @as(u32, 17740);
pub const IMAGE_VXD_SIGNATURE = @as(u32, 17740);
pub const IMAGE_NT_SIGNATURE = @as(u32, 17744);
pub const IMAGE_SIZEOF_FILE_HEADER = @as(u32, 20);
pub const IMAGE_NUMBEROF_DIRECTORY_ENTRIES = @as(u32, 16);
pub const IMAGE_SIZEOF_SHORT_NAME = @as(u32, 8);
pub const IMAGE_SIZEOF_SECTION_HEADER = @as(u32, 40);
pub const IMAGE_SIZEOF_SYMBOL = @as(u32, 18);
pub const IMAGE_SYM_SECTION_MAX = @as(u32, 65279);
pub const IMAGE_SYM_SECTION_MAX_EX = @as(u32, 2147483647);
pub const IMAGE_SYM_TYPE_NULL = @as(u32, 0);
pub const IMAGE_SYM_TYPE_VOID = @as(u32, 1);
pub const IMAGE_SYM_TYPE_CHAR = @as(u32, 2);
pub const IMAGE_SYM_TYPE_SHORT = @as(u32, 3);
pub const IMAGE_SYM_TYPE_INT = @as(u32, 4);
pub const IMAGE_SYM_TYPE_LONG = @as(u32, 5);
pub const IMAGE_SYM_TYPE_FLOAT = @as(u32, 6);
pub const IMAGE_SYM_TYPE_DOUBLE = @as(u32, 7);
pub const IMAGE_SYM_TYPE_STRUCT = @as(u32, 8);
pub const IMAGE_SYM_TYPE_UNION = @as(u32, 9);
pub const IMAGE_SYM_TYPE_ENUM = @as(u32, 10);
pub const IMAGE_SYM_TYPE_MOE = @as(u32, 11);
pub const IMAGE_SYM_TYPE_BYTE = @as(u32, 12);
pub const IMAGE_SYM_TYPE_WORD = @as(u32, 13);
pub const IMAGE_SYM_TYPE_UINT = @as(u32, 14);
pub const IMAGE_SYM_TYPE_DWORD = @as(u32, 15);
pub const IMAGE_SYM_TYPE_PCODE = @as(u32, 32768);
pub const IMAGE_SYM_DTYPE_NULL = @as(u32, 0);
pub const IMAGE_SYM_DTYPE_POINTER = @as(u32, 1);
pub const IMAGE_SYM_DTYPE_FUNCTION = @as(u32, 2);
pub const IMAGE_SYM_DTYPE_ARRAY = @as(u32, 3);
pub const IMAGE_SYM_CLASS_NULL = @as(u32, 0);
pub const IMAGE_SYM_CLASS_AUTOMATIC = @as(u32, 1);
pub const IMAGE_SYM_CLASS_EXTERNAL = @as(u32, 2);
pub const IMAGE_SYM_CLASS_STATIC = @as(u32, 3);
pub const IMAGE_SYM_CLASS_REGISTER = @as(u32, 4);
pub const IMAGE_SYM_CLASS_EXTERNAL_DEF = @as(u32, 5);
pub const IMAGE_SYM_CLASS_LABEL = @as(u32, 6);
pub const IMAGE_SYM_CLASS_UNDEFINED_LABEL = @as(u32, 7);
pub const IMAGE_SYM_CLASS_MEMBER_OF_STRUCT = @as(u32, 8);
pub const IMAGE_SYM_CLASS_ARGUMENT = @as(u32, 9);
pub const IMAGE_SYM_CLASS_STRUCT_TAG = @as(u32, 10);
pub const IMAGE_SYM_CLASS_MEMBER_OF_UNION = @as(u32, 11);
pub const IMAGE_SYM_CLASS_UNION_TAG = @as(u32, 12);
pub const IMAGE_SYM_CLASS_TYPE_DEFINITION = @as(u32, 13);
pub const IMAGE_SYM_CLASS_UNDEFINED_STATIC = @as(u32, 14);
pub const IMAGE_SYM_CLASS_ENUM_TAG = @as(u32, 15);
pub const IMAGE_SYM_CLASS_MEMBER_OF_ENUM = @as(u32, 16);
pub const IMAGE_SYM_CLASS_REGISTER_PARAM = @as(u32, 17);
pub const IMAGE_SYM_CLASS_BIT_FIELD = @as(u32, 18);
pub const IMAGE_SYM_CLASS_FAR_EXTERNAL = @as(u32, 68);
pub const IMAGE_SYM_CLASS_BLOCK = @as(u32, 100);
pub const IMAGE_SYM_CLASS_FUNCTION = @as(u32, 101);
pub const IMAGE_SYM_CLASS_END_OF_STRUCT = @as(u32, 102);
pub const IMAGE_SYM_CLASS_FILE = @as(u32, 103);
pub const IMAGE_SYM_CLASS_SECTION = @as(u32, 104);
pub const IMAGE_SYM_CLASS_WEAK_EXTERNAL = @as(u32, 105);
pub const IMAGE_SYM_CLASS_CLR_TOKEN = @as(u32, 107);
pub const N_BTMASK = @as(u32, 15);
pub const N_TMASK = @as(u32, 48);
pub const N_TMASK1 = @as(u32, 192);
pub const N_TMASK2 = @as(u32, 240);
pub const N_BTSHFT = @as(u32, 4);
pub const N_TSHIFT = @as(u32, 2);
pub const IMAGE_COMDAT_SELECT_NODUPLICATES = @as(u32, 1);
pub const IMAGE_COMDAT_SELECT_ANY = @as(u32, 2);
pub const IMAGE_COMDAT_SELECT_SAME_SIZE = @as(u32, 3);
pub const IMAGE_COMDAT_SELECT_EXACT_MATCH = @as(u32, 4);
pub const IMAGE_COMDAT_SELECT_ASSOCIATIVE = @as(u32, 5);
pub const IMAGE_COMDAT_SELECT_LARGEST = @as(u32, 6);
pub const IMAGE_COMDAT_SELECT_NEWEST = @as(u32, 7);
pub const IMAGE_WEAK_EXTERN_SEARCH_NOLIBRARY = @as(u32, 1);
pub const IMAGE_WEAK_EXTERN_SEARCH_LIBRARY = @as(u32, 2);
pub const IMAGE_WEAK_EXTERN_SEARCH_ALIAS = @as(u32, 3);
pub const IMAGE_WEAK_EXTERN_ANTI_DEPENDENCY = @as(u32, 4);
pub const IMAGE_REL_I386_ABSOLUTE = @as(u32, 0);
pub const IMAGE_REL_I386_DIR16 = @as(u32, 1);
pub const IMAGE_REL_I386_REL16 = @as(u32, 2);
pub const IMAGE_REL_I386_DIR32 = @as(u32, 6);
pub const IMAGE_REL_I386_DIR32NB = @as(u32, 7);
pub const IMAGE_REL_I386_SEG12 = @as(u32, 9);
pub const IMAGE_REL_I386_SECTION = @as(u32, 10);
pub const IMAGE_REL_I386_SECREL = @as(u32, 11);
pub const IMAGE_REL_I386_TOKEN = @as(u32, 12);
pub const IMAGE_REL_I386_SECREL7 = @as(u32, 13);
pub const IMAGE_REL_I386_REL32 = @as(u32, 20);
pub const IMAGE_REL_MIPS_ABSOLUTE = @as(u32, 0);
pub const IMAGE_REL_MIPS_REFHALF = @as(u32, 1);
pub const IMAGE_REL_MIPS_REFWORD = @as(u32, 2);
pub const IMAGE_REL_MIPS_JMPADDR = @as(u32, 3);
pub const IMAGE_REL_MIPS_REFHI = @as(u32, 4);
pub const IMAGE_REL_MIPS_REFLO = @as(u32, 5);
pub const IMAGE_REL_MIPS_GPREL = @as(u32, 6);
pub const IMAGE_REL_MIPS_LITERAL = @as(u32, 7);
pub const IMAGE_REL_MIPS_SECTION = @as(u32, 10);
pub const IMAGE_REL_MIPS_SECREL = @as(u32, 11);
pub const IMAGE_REL_MIPS_SECRELLO = @as(u32, 12);
pub const IMAGE_REL_MIPS_SECRELHI = @as(u32, 13);
pub const IMAGE_REL_MIPS_TOKEN = @as(u32, 14);
pub const IMAGE_REL_MIPS_JMPADDR16 = @as(u32, 16);
pub const IMAGE_REL_MIPS_REFWORDNB = @as(u32, 34);
pub const IMAGE_REL_MIPS_PAIR = @as(u32, 37);
pub const IMAGE_REL_ALPHA_ABSOLUTE = @as(u32, 0);
pub const IMAGE_REL_ALPHA_REFLONG = @as(u32, 1);
pub const IMAGE_REL_ALPHA_REFQUAD = @as(u32, 2);
pub const IMAGE_REL_ALPHA_GPREL32 = @as(u32, 3);
pub const IMAGE_REL_ALPHA_LITERAL = @as(u32, 4);
pub const IMAGE_REL_ALPHA_LITUSE = @as(u32, 5);
pub const IMAGE_REL_ALPHA_GPDISP = @as(u32, 6);
pub const IMAGE_REL_ALPHA_BRADDR = @as(u32, 7);
pub const IMAGE_REL_ALPHA_HINT = @as(u32, 8);
pub const IMAGE_REL_ALPHA_INLINE_REFLONG = @as(u32, 9);
pub const IMAGE_REL_ALPHA_REFHI = @as(u32, 10);
pub const IMAGE_REL_ALPHA_REFLO = @as(u32, 11);
pub const IMAGE_REL_ALPHA_PAIR = @as(u32, 12);
pub const IMAGE_REL_ALPHA_MATCH = @as(u32, 13);
pub const IMAGE_REL_ALPHA_SECTION = @as(u32, 14);
pub const IMAGE_REL_ALPHA_SECREL = @as(u32, 15);
pub const IMAGE_REL_ALPHA_REFLONGNB = @as(u32, 16);
pub const IMAGE_REL_ALPHA_SECRELLO = @as(u32, 17);
pub const IMAGE_REL_ALPHA_SECRELHI = @as(u32, 18);
pub const IMAGE_REL_ALPHA_REFQ3 = @as(u32, 19);
pub const IMAGE_REL_ALPHA_REFQ2 = @as(u32, 20);
pub const IMAGE_REL_ALPHA_REFQ1 = @as(u32, 21);
pub const IMAGE_REL_ALPHA_GPRELLO = @as(u32, 22);
pub const IMAGE_REL_ALPHA_GPRELHI = @as(u32, 23);
pub const IMAGE_REL_PPC_ABSOLUTE = @as(u32, 0);
pub const IMAGE_REL_PPC_ADDR64 = @as(u32, 1);
pub const IMAGE_REL_PPC_ADDR32 = @as(u32, 2);
pub const IMAGE_REL_PPC_ADDR24 = @as(u32, 3);
pub const IMAGE_REL_PPC_ADDR16 = @as(u32, 4);
pub const IMAGE_REL_PPC_ADDR14 = @as(u32, 5);
pub const IMAGE_REL_PPC_REL24 = @as(u32, 6);
pub const IMAGE_REL_PPC_REL14 = @as(u32, 7);
pub const IMAGE_REL_PPC_TOCREL16 = @as(u32, 8);
pub const IMAGE_REL_PPC_TOCREL14 = @as(u32, 9);
pub const IMAGE_REL_PPC_ADDR32NB = @as(u32, 10);
pub const IMAGE_REL_PPC_SECREL = @as(u32, 11);
pub const IMAGE_REL_PPC_SECTION = @as(u32, 12);
pub const IMAGE_REL_PPC_IFGLUE = @as(u32, 13);
pub const IMAGE_REL_PPC_IMGLUE = @as(u32, 14);
pub const IMAGE_REL_PPC_SECREL16 = @as(u32, 15);
pub const IMAGE_REL_PPC_REFHI = @as(u32, 16);
pub const IMAGE_REL_PPC_REFLO = @as(u32, 17);
pub const IMAGE_REL_PPC_PAIR = @as(u32, 18);
pub const IMAGE_REL_PPC_SECRELLO = @as(u32, 19);
pub const IMAGE_REL_PPC_SECRELHI = @as(u32, 20);
pub const IMAGE_REL_PPC_GPREL = @as(u32, 21);
pub const IMAGE_REL_PPC_TOKEN = @as(u32, 22);
pub const IMAGE_REL_PPC_TYPEMASK = @as(u32, 255);
pub const IMAGE_REL_PPC_NEG = @as(u32, 256);
pub const IMAGE_REL_PPC_BRTAKEN = @as(u32, 512);
pub const IMAGE_REL_PPC_BRNTAKEN = @as(u32, 1024);
pub const IMAGE_REL_PPC_TOCDEFN = @as(u32, 2048);
pub const IMAGE_REL_SH3_ABSOLUTE = @as(u32, 0);
pub const IMAGE_REL_SH3_DIRECT16 = @as(u32, 1);
pub const IMAGE_REL_SH3_DIRECT32 = @as(u32, 2);
pub const IMAGE_REL_SH3_DIRECT8 = @as(u32, 3);
pub const IMAGE_REL_SH3_DIRECT8_WORD = @as(u32, 4);
pub const IMAGE_REL_SH3_DIRECT8_LONG = @as(u32, 5);
pub const IMAGE_REL_SH3_DIRECT4 = @as(u32, 6);
pub const IMAGE_REL_SH3_DIRECT4_WORD = @as(u32, 7);
pub const IMAGE_REL_SH3_DIRECT4_LONG = @as(u32, 8);
pub const IMAGE_REL_SH3_PCREL8_WORD = @as(u32, 9);
pub const IMAGE_REL_SH3_PCREL8_LONG = @as(u32, 10);
pub const IMAGE_REL_SH3_PCREL12_WORD = @as(u32, 11);
pub const IMAGE_REL_SH3_STARTOF_SECTION = @as(u32, 12);
pub const IMAGE_REL_SH3_SIZEOF_SECTION = @as(u32, 13);
pub const IMAGE_REL_SH3_SECTION = @as(u32, 14);
pub const IMAGE_REL_SH3_SECREL = @as(u32, 15);
pub const IMAGE_REL_SH3_DIRECT32_NB = @as(u32, 16);
pub const IMAGE_REL_SH3_GPREL4_LONG = @as(u32, 17);
pub const IMAGE_REL_SH3_TOKEN = @as(u32, 18);
pub const IMAGE_REL_SHM_PCRELPT = @as(u32, 19);
pub const IMAGE_REL_SHM_REFLO = @as(u32, 20);
pub const IMAGE_REL_SHM_REFHALF = @as(u32, 21);
pub const IMAGE_REL_SHM_RELLO = @as(u32, 22);
pub const IMAGE_REL_SHM_RELHALF = @as(u32, 23);
pub const IMAGE_REL_SHM_PAIR = @as(u32, 24);
pub const IMAGE_REL_SH_NOMODE = @as(u32, 32768);
pub const IMAGE_REL_ARM_ABSOLUTE = @as(u32, 0);
pub const IMAGE_REL_ARM_ADDR32 = @as(u32, 1);
pub const IMAGE_REL_ARM_ADDR32NB = @as(u32, 2);
pub const IMAGE_REL_ARM_BRANCH24 = @as(u32, 3);
pub const IMAGE_REL_ARM_BRANCH11 = @as(u32, 4);
pub const IMAGE_REL_ARM_TOKEN = @as(u32, 5);
pub const IMAGE_REL_ARM_GPREL12 = @as(u32, 6);
pub const IMAGE_REL_ARM_GPREL7 = @as(u32, 7);
pub const IMAGE_REL_ARM_BLX24 = @as(u32, 8);
pub const IMAGE_REL_ARM_BLX11 = @as(u32, 9);
pub const IMAGE_REL_ARM_SECTION = @as(u32, 14);
pub const IMAGE_REL_ARM_SECREL = @as(u32, 15);
pub const IMAGE_REL_ARM_MOV32A = @as(u32, 16);
pub const IMAGE_REL_ARM_MOV32 = @as(u32, 16);
pub const IMAGE_REL_ARM_MOV32T = @as(u32, 17);
pub const IMAGE_REL_THUMB_MOV32 = @as(u32, 17);
pub const IMAGE_REL_ARM_BRANCH20T = @as(u32, 18);
pub const IMAGE_REL_THUMB_BRANCH20 = @as(u32, 18);
pub const IMAGE_REL_ARM_BRANCH24T = @as(u32, 20);
pub const IMAGE_REL_THUMB_BRANCH24 = @as(u32, 20);
pub const IMAGE_REL_ARM_BLX23T = @as(u32, 21);
pub const IMAGE_REL_THUMB_BLX23 = @as(u32, 21);
pub const IMAGE_REL_AM_ABSOLUTE = @as(u32, 0);
pub const IMAGE_REL_AM_ADDR32 = @as(u32, 1);
pub const IMAGE_REL_AM_ADDR32NB = @as(u32, 2);
pub const IMAGE_REL_AM_CALL32 = @as(u32, 3);
pub const IMAGE_REL_AM_FUNCINFO = @as(u32, 4);
pub const IMAGE_REL_AM_REL32_1 = @as(u32, 5);
pub const IMAGE_REL_AM_REL32_2 = @as(u32, 6);
pub const IMAGE_REL_AM_SECREL = @as(u32, 7);
pub const IMAGE_REL_AM_SECTION = @as(u32, 8);
pub const IMAGE_REL_AM_TOKEN = @as(u32, 9);
pub const IMAGE_REL_ARM64_ABSOLUTE = @as(u32, 0);
pub const IMAGE_REL_ARM64_ADDR32 = @as(u32, 1);
pub const IMAGE_REL_ARM64_ADDR32NB = @as(u32, 2);
pub const IMAGE_REL_ARM64_BRANCH26 = @as(u32, 3);
pub const IMAGE_REL_ARM64_PAGEBASE_REL21 = @as(u32, 4);
pub const IMAGE_REL_ARM64_REL21 = @as(u32, 5);
pub const IMAGE_REL_ARM64_PAGEOFFSET_12A = @as(u32, 6);
pub const IMAGE_REL_ARM64_PAGEOFFSET_12L = @as(u32, 7);
pub const IMAGE_REL_ARM64_SECREL = @as(u32, 8);
pub const IMAGE_REL_ARM64_SECREL_LOW12A = @as(u32, 9);
pub const IMAGE_REL_ARM64_SECREL_HIGH12A = @as(u32, 10);
pub const IMAGE_REL_ARM64_SECREL_LOW12L = @as(u32, 11);
pub const IMAGE_REL_ARM64_TOKEN = @as(u32, 12);
pub const IMAGE_REL_ARM64_SECTION = @as(u32, 13);
pub const IMAGE_REL_ARM64_ADDR64 = @as(u32, 14);
pub const IMAGE_REL_ARM64_BRANCH19 = @as(u32, 15);
pub const IMAGE_REL_AMD64_ABSOLUTE = @as(u32, 0);
pub const IMAGE_REL_AMD64_ADDR64 = @as(u32, 1);
pub const IMAGE_REL_AMD64_ADDR32 = @as(u32, 2);
pub const IMAGE_REL_AMD64_ADDR32NB = @as(u32, 3);
pub const IMAGE_REL_AMD64_REL32 = @as(u32, 4);
pub const IMAGE_REL_AMD64_REL32_1 = @as(u32, 5);
pub const IMAGE_REL_AMD64_REL32_2 = @as(u32, 6);
pub const IMAGE_REL_AMD64_REL32_3 = @as(u32, 7);
pub const IMAGE_REL_AMD64_REL32_4 = @as(u32, 8);
pub const IMAGE_REL_AMD64_REL32_5 = @as(u32, 9);
pub const IMAGE_REL_AMD64_SECTION = @as(u32, 10);
pub const IMAGE_REL_AMD64_SECREL = @as(u32, 11);
pub const IMAGE_REL_AMD64_SECREL7 = @as(u32, 12);
pub const IMAGE_REL_AMD64_TOKEN = @as(u32, 13);
pub const IMAGE_REL_AMD64_SREL32 = @as(u32, 14);
pub const IMAGE_REL_AMD64_PAIR = @as(u32, 15);
pub const IMAGE_REL_AMD64_SSPAN32 = @as(u32, 16);
pub const IMAGE_REL_AMD64_EHANDLER = @as(u32, 17);
pub const IMAGE_REL_AMD64_IMPORT_BR = @as(u32, 18);
pub const IMAGE_REL_AMD64_IMPORT_CALL = @as(u32, 19);
pub const IMAGE_REL_AMD64_CFG_BR = @as(u32, 20);
pub const IMAGE_REL_AMD64_CFG_BR_REX = @as(u32, 21);
pub const IMAGE_REL_AMD64_CFG_CALL = @as(u32, 22);
pub const IMAGE_REL_AMD64_INDIR_BR = @as(u32, 23);
pub const IMAGE_REL_AMD64_INDIR_BR_REX = @as(u32, 24);
pub const IMAGE_REL_AMD64_INDIR_CALL = @as(u32, 25);
pub const IMAGE_REL_AMD64_INDIR_BR_SWITCHTABLE_FIRST = @as(u32, 32);
pub const IMAGE_REL_AMD64_INDIR_BR_SWITCHTABLE_LAST = @as(u32, 47);
pub const IMAGE_REL_IA64_ABSOLUTE = @as(u32, 0);
pub const IMAGE_REL_IA64_IMM14 = @as(u32, 1);
pub const IMAGE_REL_IA64_IMM22 = @as(u32, 2);
pub const IMAGE_REL_IA64_IMM64 = @as(u32, 3);
pub const IMAGE_REL_IA64_DIR32 = @as(u32, 4);
pub const IMAGE_REL_IA64_DIR64 = @as(u32, 5);
pub const IMAGE_REL_IA64_PCREL21B = @as(u32, 6);
pub const IMAGE_REL_IA64_PCREL21M = @as(u32, 7);
pub const IMAGE_REL_IA64_PCREL21F = @as(u32, 8);
pub const IMAGE_REL_IA64_GPREL22 = @as(u32, 9);
pub const IMAGE_REL_IA64_LTOFF22 = @as(u32, 10);
pub const IMAGE_REL_IA64_SECTION = @as(u32, 11);
pub const IMAGE_REL_IA64_SECREL22 = @as(u32, 12);
pub const IMAGE_REL_IA64_SECREL64I = @as(u32, 13);
pub const IMAGE_REL_IA64_SECREL32 = @as(u32, 14);
pub const IMAGE_REL_IA64_DIR32NB = @as(u32, 16);
pub const IMAGE_REL_IA64_SREL14 = @as(u32, 17);
pub const IMAGE_REL_IA64_SREL22 = @as(u32, 18);
pub const IMAGE_REL_IA64_SREL32 = @as(u32, 19);
pub const IMAGE_REL_IA64_UREL32 = @as(u32, 20);
pub const IMAGE_REL_IA64_PCREL60X = @as(u32, 21);
pub const IMAGE_REL_IA64_PCREL60B = @as(u32, 22);
pub const IMAGE_REL_IA64_PCREL60F = @as(u32, 23);
pub const IMAGE_REL_IA64_PCREL60I = @as(u32, 24);
pub const IMAGE_REL_IA64_PCREL60M = @as(u32, 25);
pub const IMAGE_REL_IA64_IMMGPREL64 = @as(u32, 26);
pub const IMAGE_REL_IA64_TOKEN = @as(u32, 27);
pub const IMAGE_REL_IA64_GPREL32 = @as(u32, 28);
pub const IMAGE_REL_IA64_ADDEND = @as(u32, 31);
pub const IMAGE_REL_CEF_ABSOLUTE = @as(u32, 0);
pub const IMAGE_REL_CEF_ADDR32 = @as(u32, 1);
pub const IMAGE_REL_CEF_ADDR64 = @as(u32, 2);
pub const IMAGE_REL_CEF_ADDR32NB = @as(u32, 3);
pub const IMAGE_REL_CEF_SECTION = @as(u32, 4);
pub const IMAGE_REL_CEF_SECREL = @as(u32, 5);
pub const IMAGE_REL_CEF_TOKEN = @as(u32, 6);
pub const IMAGE_REL_CEE_ABSOLUTE = @as(u32, 0);
pub const IMAGE_REL_CEE_ADDR32 = @as(u32, 1);
pub const IMAGE_REL_CEE_ADDR64 = @as(u32, 2);
pub const IMAGE_REL_CEE_ADDR32NB = @as(u32, 3);
pub const IMAGE_REL_CEE_SECTION = @as(u32, 4);
pub const IMAGE_REL_CEE_SECREL = @as(u32, 5);
pub const IMAGE_REL_CEE_TOKEN = @as(u32, 6);
pub const IMAGE_REL_M32R_ABSOLUTE = @as(u32, 0);
pub const IMAGE_REL_M32R_ADDR32 = @as(u32, 1);
pub const IMAGE_REL_M32R_ADDR32NB = @as(u32, 2);
pub const IMAGE_REL_M32R_ADDR24 = @as(u32, 3);
pub const IMAGE_REL_M32R_GPREL16 = @as(u32, 4);
pub const IMAGE_REL_M32R_PCREL24 = @as(u32, 5);
pub const IMAGE_REL_M32R_PCREL16 = @as(u32, 6);
pub const IMAGE_REL_M32R_PCREL8 = @as(u32, 7);
pub const IMAGE_REL_M32R_REFHALF = @as(u32, 8);
pub const IMAGE_REL_M32R_REFHI = @as(u32, 9);
pub const IMAGE_REL_M32R_REFLO = @as(u32, 10);
pub const IMAGE_REL_M32R_PAIR = @as(u32, 11);
pub const IMAGE_REL_M32R_SECTION = @as(u32, 12);
pub const IMAGE_REL_M32R_SECREL32 = @as(u32, 13);
pub const IMAGE_REL_M32R_TOKEN = @as(u32, 14);
pub const IMAGE_REL_EBC_ABSOLUTE = @as(u32, 0);
pub const IMAGE_REL_EBC_ADDR32NB = @as(u32, 1);
pub const IMAGE_REL_EBC_REL32 = @as(u32, 2);
pub const IMAGE_REL_EBC_SECTION = @as(u32, 3);
pub const IMAGE_REL_EBC_SECREL = @as(u32, 4);
pub const EMARCH_ENC_I17_IMM7B_INST_WORD_X = @as(u32, 3);
pub const EMARCH_ENC_I17_IMM7B_SIZE_X = @as(u32, 7);
pub const EMARCH_ENC_I17_IMM7B_INST_WORD_POS_X = @as(u32, 4);
pub const EMARCH_ENC_I17_IMM7B_VAL_POS_X = @as(u32, 0);
pub const EMARCH_ENC_I17_IMM9D_INST_WORD_X = @as(u32, 3);
pub const EMARCH_ENC_I17_IMM9D_SIZE_X = @as(u32, 9);
pub const EMARCH_ENC_I17_IMM9D_INST_WORD_POS_X = @as(u32, 18);
pub const EMARCH_ENC_I17_IMM9D_VAL_POS_X = @as(u32, 7);
pub const EMARCH_ENC_I17_IMM5C_INST_WORD_X = @as(u32, 3);
pub const EMARCH_ENC_I17_IMM5C_SIZE_X = @as(u32, 5);
pub const EMARCH_ENC_I17_IMM5C_INST_WORD_POS_X = @as(u32, 13);
pub const EMARCH_ENC_I17_IMM5C_VAL_POS_X = @as(u32, 16);
pub const EMARCH_ENC_I17_IC_INST_WORD_X = @as(u32, 3);
pub const EMARCH_ENC_I17_IC_SIZE_X = @as(u32, 1);
pub const EMARCH_ENC_I17_IC_INST_WORD_POS_X = @as(u32, 12);
pub const EMARCH_ENC_I17_IC_VAL_POS_X = @as(u32, 21);
pub const EMARCH_ENC_I17_IMM41a_INST_WORD_X = @as(u32, 1);
pub const EMARCH_ENC_I17_IMM41a_SIZE_X = @as(u32, 10);
pub const EMARCH_ENC_I17_IMM41a_INST_WORD_POS_X = @as(u32, 14);
pub const EMARCH_ENC_I17_IMM41a_VAL_POS_X = @as(u32, 22);
pub const EMARCH_ENC_I17_IMM41b_INST_WORD_X = @as(u32, 1);
pub const EMARCH_ENC_I17_IMM41b_SIZE_X = @as(u32, 8);
pub const EMARCH_ENC_I17_IMM41b_INST_WORD_POS_X = @as(u32, 24);
pub const EMARCH_ENC_I17_IMM41b_VAL_POS_X = @as(u32, 32);
pub const EMARCH_ENC_I17_IMM41c_INST_WORD_X = @as(u32, 2);
pub const EMARCH_ENC_I17_IMM41c_SIZE_X = @as(u32, 23);
pub const EMARCH_ENC_I17_IMM41c_INST_WORD_POS_X = @as(u32, 0);
pub const EMARCH_ENC_I17_IMM41c_VAL_POS_X = @as(u32, 40);
pub const EMARCH_ENC_I17_SIGN_INST_WORD_X = @as(u32, 3);
pub const EMARCH_ENC_I17_SIGN_SIZE_X = @as(u32, 1);
pub const EMARCH_ENC_I17_SIGN_INST_WORD_POS_X = @as(u32, 27);
pub const EMARCH_ENC_I17_SIGN_VAL_POS_X = @as(u32, 63);
pub const X3_OPCODE_INST_WORD_X = @as(u32, 3);
pub const X3_OPCODE_SIZE_X = @as(u32, 4);
pub const X3_OPCODE_INST_WORD_POS_X = @as(u32, 28);
pub const X3_OPCODE_SIGN_VAL_POS_X = @as(u32, 0);
pub const X3_I_INST_WORD_X = @as(u32, 3);
pub const X3_I_SIZE_X = @as(u32, 1);
pub const X3_I_INST_WORD_POS_X = @as(u32, 27);
pub const X3_I_SIGN_VAL_POS_X = @as(u32, 59);
pub const X3_D_WH_INST_WORD_X = @as(u32, 3);
pub const X3_D_WH_SIZE_X = @as(u32, 3);
pub const X3_D_WH_INST_WORD_POS_X = @as(u32, 24);
pub const X3_D_WH_SIGN_VAL_POS_X = @as(u32, 0);
pub const X3_IMM20_INST_WORD_X = @as(u32, 3);
pub const X3_IMM20_SIZE_X = @as(u32, 20);
pub const X3_IMM20_INST_WORD_POS_X = @as(u32, 4);
pub const X3_IMM20_SIGN_VAL_POS_X = @as(u32, 0);
pub const X3_IMM39_1_INST_WORD_X = @as(u32, 2);
pub const X3_IMM39_1_SIZE_X = @as(u32, 23);
pub const X3_IMM39_1_INST_WORD_POS_X = @as(u32, 0);
pub const X3_IMM39_1_SIGN_VAL_POS_X = @as(u32, 36);
pub const X3_IMM39_2_INST_WORD_X = @as(u32, 1);
pub const X3_IMM39_2_SIZE_X = @as(u32, 16);
pub const X3_IMM39_2_INST_WORD_POS_X = @as(u32, 16);
pub const X3_IMM39_2_SIGN_VAL_POS_X = @as(u32, 20);
pub const X3_P_INST_WORD_X = @as(u32, 3);
pub const X3_P_SIZE_X = @as(u32, 4);
pub const X3_P_INST_WORD_POS_X = @as(u32, 0);
pub const X3_P_SIGN_VAL_POS_X = @as(u32, 0);
pub const X3_TMPLT_INST_WORD_X = @as(u32, 0);
pub const X3_TMPLT_SIZE_X = @as(u32, 4);
pub const X3_TMPLT_INST_WORD_POS_X = @as(u32, 0);
pub const X3_TMPLT_SIGN_VAL_POS_X = @as(u32, 0);
pub const X3_BTYPE_QP_INST_WORD_X = @as(u32, 2);
pub const X3_BTYPE_QP_SIZE_X = @as(u32, 9);
pub const X3_BTYPE_QP_INST_WORD_POS_X = @as(u32, 23);
pub const X3_BTYPE_QP_INST_VAL_POS_X = @as(u32, 0);
pub const X3_EMPTY_INST_WORD_X = @as(u32, 1);
pub const X3_EMPTY_SIZE_X = @as(u32, 2);
pub const X3_EMPTY_INST_WORD_POS_X = @as(u32, 14);
pub const X3_EMPTY_INST_VAL_POS_X = @as(u32, 0);
pub const IMAGE_REL_BASED_ABSOLUTE = @as(u32, 0);
pub const IMAGE_REL_BASED_HIGH = @as(u32, 1);
pub const IMAGE_REL_BASED_LOW = @as(u32, 2);
pub const IMAGE_REL_BASED_HIGHLOW = @as(u32, 3);
pub const IMAGE_REL_BASED_HIGHADJ = @as(u32, 4);
pub const IMAGE_REL_BASED_MACHINE_SPECIFIC_5 = @as(u32, 5);
pub const IMAGE_REL_BASED_RESERVED = @as(u32, 6);
pub const IMAGE_REL_BASED_MACHINE_SPECIFIC_7 = @as(u32, 7);
pub const IMAGE_REL_BASED_MACHINE_SPECIFIC_8 = @as(u32, 8);
pub const IMAGE_REL_BASED_MACHINE_SPECIFIC_9 = @as(u32, 9);
pub const IMAGE_REL_BASED_DIR64 = @as(u32, 10);
pub const IMAGE_REL_BASED_IA64_IMM64 = @as(u32, 9);
pub const IMAGE_REL_BASED_MIPS_JMPADDR = @as(u32, 5);
pub const IMAGE_REL_BASED_MIPS_JMPADDR16 = @as(u32, 9);
pub const IMAGE_REL_BASED_ARM_MOV32 = @as(u32, 5);
pub const IMAGE_REL_BASED_THUMB_MOV32 = @as(u32, 7);
pub const IMAGE_ARCHIVE_START_SIZE = @as(u32, 8);
pub const IMAGE_SIZEOF_ARCHIVE_MEMBER_HDR = @as(u32, 60);
pub const IMAGE_ORDINAL_FLAG64 = @as(u64, 9223372036854775808);
pub const IMAGE_ORDINAL_FLAG32 = @as(u32, 2147483648);
pub const IMAGE_ORDINAL_FLAG = @as(u64, 9223372036854775808);
pub const IMAGE_RESOURCE_NAME_IS_STRING = @as(u32, 2147483648);
pub const IMAGE_RESOURCE_DATA_IS_DIRECTORY = @as(u32, 2147483648);
pub const IMAGE_DYNAMIC_RELOCATION_GUARD_RF_PROLOGUE = @as(u32, 1);
pub const IMAGE_DYNAMIC_RELOCATION_GUARD_RF_EPILOGUE = @as(u32, 2);
pub const IMAGE_DYNAMIC_RELOCATION_GUARD_IMPORT_CONTROL_TRANSFER = @as(u32, 3);
pub const IMAGE_DYNAMIC_RELOCATION_GUARD_INDIR_CONTROL_TRANSFER = @as(u32, 4);
pub const IMAGE_DYNAMIC_RELOCATION_GUARD_SWITCHTABLE_BRANCH = @as(u32, 5);
pub const IMAGE_HOT_PATCH_BASE_OBLIGATORY = @as(u32, 1);
pub const IMAGE_HOT_PATCH_BASE_CAN_ROLL_BACK = @as(u32, 2);
pub const IMAGE_HOT_PATCH_CHUNK_INVERSE = @as(u32, 2147483648);
pub const IMAGE_HOT_PATCH_CHUNK_OBLIGATORY = @as(u32, 1073741824);
pub const IMAGE_HOT_PATCH_CHUNK_RESERVED = @as(u32, 1072705536);
pub const IMAGE_HOT_PATCH_CHUNK_TYPE = @as(u32, 1032192);
pub const IMAGE_HOT_PATCH_CHUNK_SOURCE_RVA = @as(u32, 32768);
pub const IMAGE_HOT_PATCH_CHUNK_TARGET_RVA = @as(u32, 16384);
pub const IMAGE_HOT_PATCH_CHUNK_SIZE = @as(u32, 4095);
pub const IMAGE_HOT_PATCH_NONE = @as(u32, 0);
pub const IMAGE_HOT_PATCH_FUNCTION = @as(u32, 114688);
pub const IMAGE_HOT_PATCH_ABSOLUTE = @as(u32, 180224);
pub const IMAGE_HOT_PATCH_REL32 = @as(u32, 245760);
pub const IMAGE_HOT_PATCH_CALL_TARGET = @as(u32, 278528);
pub const IMAGE_HOT_PATCH_INDIRECT = @as(u32, 376832);
pub const IMAGE_HOT_PATCH_NO_CALL_TARGET = @as(u32, 409600);
pub const IMAGE_HOT_PATCH_DYNAMIC_VALUE = @as(u32, 491520);
pub const IMAGE_GUARD_CF_INSTRUMENTED = @as(u32, 256);
pub const IMAGE_GUARD_CFW_INSTRUMENTED = @as(u32, 512);
pub const IMAGE_GUARD_CF_FUNCTION_TABLE_PRESENT = @as(u32, 1024);
pub const IMAGE_GUARD_SECURITY_COOKIE_UNUSED = @as(u32, 2048);
pub const IMAGE_GUARD_PROTECT_DELAYLOAD_IAT = @as(u32, 4096);
pub const IMAGE_GUARD_DELAYLOAD_IAT_IN_ITS_OWN_SECTION = @as(u32, 8192);
pub const IMAGE_GUARD_CF_EXPORT_SUPPRESSION_INFO_PRESENT = @as(u32, 16384);
pub const IMAGE_GUARD_CF_ENABLE_EXPORT_SUPPRESSION = @as(u32, 32768);
pub const IMAGE_GUARD_CF_LONGJUMP_TABLE_PRESENT = @as(u32, 65536);
pub const IMAGE_GUARD_RF_INSTRUMENTED = @as(u32, 131072);
pub const IMAGE_GUARD_RF_ENABLE = @as(u32, 262144);
pub const IMAGE_GUARD_RF_STRICT = @as(u32, 524288);
pub const IMAGE_GUARD_RETPOLINE_PRESENT = @as(u32, 1048576);
pub const IMAGE_GUARD_EH_CONTINUATION_TABLE_PRESENT = @as(u32, 4194304);
pub const IMAGE_GUARD_XFG_ENABLED = @as(u32, 8388608);
pub const IMAGE_GUARD_CF_FUNCTION_TABLE_SIZE_MASK = @as(u32, 4026531840);
pub const IMAGE_GUARD_CF_FUNCTION_TABLE_SIZE_SHIFT = @as(u32, 28);
pub const IMAGE_GUARD_FLAG_FID_SUPPRESSED = @as(u32, 1);
pub const IMAGE_GUARD_FLAG_EXPORT_SUPPRESSED = @as(u32, 2);
pub const IMAGE_GUARD_FLAG_FID_LANGEXCPTHANDLER = @as(u32, 4);
pub const IMAGE_GUARD_FLAG_FID_XFG = @as(u32, 8);
pub const IMAGE_ENCLAVE_LONG_ID_LENGTH = @as(u32, 32);
pub const IMAGE_ENCLAVE_SHORT_ID_LENGTH = @as(u32, 16);
pub const IMAGE_ENCLAVE_POLICY_DEBUGGABLE = @as(u32, 1);
pub const IMAGE_ENCLAVE_FLAG_PRIMARY_IMAGE = @as(u32, 1);
pub const IMAGE_ENCLAVE_IMPORT_MATCH_NONE = @as(u32, 0);
pub const IMAGE_ENCLAVE_IMPORT_MATCH_UNIQUE_ID = @as(u32, 1);
pub const IMAGE_ENCLAVE_IMPORT_MATCH_AUTHOR_ID = @as(u32, 2);
pub const IMAGE_ENCLAVE_IMPORT_MATCH_FAMILY_ID = @as(u32, 3);
pub const IMAGE_ENCLAVE_IMPORT_MATCH_IMAGE_ID = @as(u32, 4);
pub const IMAGE_DEBUG_TYPE_OMAP_TO_SRC = @as(u32, 7);
pub const IMAGE_DEBUG_TYPE_OMAP_FROM_SRC = @as(u32, 8);
pub const IMAGE_DEBUG_TYPE_RESERVED10 = @as(u32, 10);
pub const IMAGE_DEBUG_TYPE_CLSID = @as(u32, 11);
pub const IMAGE_DEBUG_TYPE_VC_FEATURE = @as(u32, 12);
pub const IMAGE_DEBUG_TYPE_POGO = @as(u32, 13);
pub const IMAGE_DEBUG_TYPE_ILTCG = @as(u32, 14);
pub const IMAGE_DEBUG_TYPE_MPX = @as(u32, 15);
pub const IMAGE_DEBUG_TYPE_REPRO = @as(u32, 16);
pub const IMAGE_DEBUG_TYPE_EX_DLLCHARACTERISTICS = @as(u32, 20);
pub const FRAME_FPO = @as(u32, 0);
pub const FRAME_TRAP = @as(u32, 1);
pub const FRAME_TSS = @as(u32, 2);
pub const FRAME_NONFPO = @as(u32, 3);
pub const SIZEOF_RFPO_DATA = @as(u32, 16);
pub const IMAGE_DEBUG_MISC_EXENAME = @as(u32, 1);
pub const IMAGE_SEPARATE_DEBUG_SIGNATURE = @as(u32, 18756);
pub const NON_PAGED_DEBUG_SIGNATURE = @as(u32, 18766);
pub const IMAGE_SEPARATE_DEBUG_FLAGS_MASK = @as(u32, 32768);
pub const IMAGE_SEPARATE_DEBUG_MISMATCH = @as(u32, 32768);
pub const IMPORT_OBJECT_HDR_SIG2 = @as(u32, 65535);
pub const UNWIND_HISTORY_TABLE_SIZE = @as(u32, 12);
pub const RTL_RUN_ONCE_CHECK_ONLY = @as(u32, 1);
pub const RTL_RUN_ONCE_ASYNC = @as(u32, 2);
pub const RTL_RUN_ONCE_INIT_FAILED = @as(u32, 4);
pub const RTL_RUN_ONCE_CTX_RESERVED_BITS = @as(u32, 2);
pub const FAST_FAIL_LEGACY_GS_VIOLATION = @as(u32, 0);
pub const FAST_FAIL_VTGUARD_CHECK_FAILURE = @as(u32, 1);
pub const FAST_FAIL_STACK_COOKIE_CHECK_FAILURE = @as(u32, 2);
pub const FAST_FAIL_CORRUPT_LIST_ENTRY = @as(u32, 3);
pub const FAST_FAIL_INCORRECT_STACK = @as(u32, 4);
pub const FAST_FAIL_INVALID_ARG = @as(u32, 5);
pub const FAST_FAIL_GS_COOKIE_INIT = @as(u32, 6);
pub const FAST_FAIL_FATAL_APP_EXIT = @as(u32, 7);
pub const FAST_FAIL_RANGE_CHECK_FAILURE = @as(u32, 8);
pub const FAST_FAIL_UNSAFE_REGISTRY_ACCESS = @as(u32, 9);
pub const FAST_FAIL_GUARD_ICALL_CHECK_FAILURE = @as(u32, 10);
pub const FAST_FAIL_GUARD_WRITE_CHECK_FAILURE = @as(u32, 11);
pub const FAST_FAIL_INVALID_FIBER_SWITCH = @as(u32, 12);
pub const FAST_FAIL_INVALID_SET_OF_CONTEXT = @as(u32, 13);
pub const FAST_FAIL_INVALID_REFERENCE_COUNT = @as(u32, 14);
pub const FAST_FAIL_INVALID_JUMP_BUFFER = @as(u32, 18);
pub const FAST_FAIL_MRDATA_MODIFIED = @as(u32, 19);
pub const FAST_FAIL_CERTIFICATION_FAILURE = @as(u32, 20);
pub const FAST_FAIL_INVALID_EXCEPTION_CHAIN = @as(u32, 21);
pub const FAST_FAIL_CRYPTO_LIBRARY = @as(u32, 22);
pub const FAST_FAIL_INVALID_CALL_IN_DLL_CALLOUT = @as(u32, 23);
pub const FAST_FAIL_INVALID_IMAGE_BASE = @as(u32, 24);
pub const FAST_FAIL_DLOAD_PROTECTION_FAILURE = @as(u32, 25);
pub const FAST_FAIL_UNSAFE_EXTENSION_CALL = @as(u32, 26);
pub const FAST_FAIL_DEPRECATED_SERVICE_INVOKED = @as(u32, 27);
pub const FAST_FAIL_INVALID_BUFFER_ACCESS = @as(u32, 28);
pub const FAST_FAIL_INVALID_BALANCED_TREE = @as(u32, 29);
pub const FAST_FAIL_INVALID_NEXT_THREAD = @as(u32, 30);
pub const FAST_FAIL_GUARD_ICALL_CHECK_SUPPRESSED = @as(u32, 31);
pub const FAST_FAIL_APCS_DISABLED = @as(u32, 32);
pub const FAST_FAIL_INVALID_IDLE_STATE = @as(u32, 33);
pub const FAST_FAIL_MRDATA_PROTECTION_FAILURE = @as(u32, 34);
pub const FAST_FAIL_UNEXPECTED_HEAP_EXCEPTION = @as(u32, 35);
pub const FAST_FAIL_INVALID_LOCK_STATE = @as(u32, 36);
pub const FAST_FAIL_GUARD_JUMPTABLE = @as(u32, 37);
pub const FAST_FAIL_INVALID_LONGJUMP_TARGET = @as(u32, 38);
pub const FAST_FAIL_INVALID_DISPATCH_CONTEXT = @as(u32, 39);
pub const FAST_FAIL_INVALID_THREAD = @as(u32, 40);
pub const FAST_FAIL_INVALID_SYSCALL_NUMBER = @as(u32, 41);
pub const FAST_FAIL_INVALID_FILE_OPERATION = @as(u32, 42);
pub const FAST_FAIL_LPAC_ACCESS_DENIED = @as(u32, 43);
pub const FAST_FAIL_GUARD_SS_FAILURE = @as(u32, 44);
pub const FAST_FAIL_LOADER_CONTINUITY_FAILURE = @as(u32, 45);
pub const FAST_FAIL_GUARD_EXPORT_SUPPRESSION_FAILURE = @as(u32, 46);
pub const FAST_FAIL_INVALID_CONTROL_STACK = @as(u32, 47);
pub const FAST_FAIL_SET_CONTEXT_DENIED = @as(u32, 48);
pub const FAST_FAIL_INVALID_IAT = @as(u32, 49);
pub const FAST_FAIL_HEAP_METADATA_CORRUPTION = @as(u32, 50);
pub const FAST_FAIL_PAYLOAD_RESTRICTION_VIOLATION = @as(u32, 51);
pub const FAST_FAIL_LOW_LABEL_ACCESS_DENIED = @as(u32, 52);
pub const FAST_FAIL_ENCLAVE_CALL_FAILURE = @as(u32, 53);
pub const FAST_FAIL_UNHANDLED_LSS_EXCEPTON = @as(u32, 54);
pub const FAST_FAIL_ADMINLESS_ACCESS_DENIED = @as(u32, 55);
pub const FAST_FAIL_UNEXPECTED_CALL = @as(u32, 56);
pub const FAST_FAIL_CONTROL_INVALID_RETURN_ADDRESS = @as(u32, 57);
pub const FAST_FAIL_UNEXPECTED_HOST_BEHAVIOR = @as(u32, 58);
pub const FAST_FAIL_FLAGS_CORRUPTION = @as(u32, 59);
pub const FAST_FAIL_VEH_CORRUPTION = @as(u32, 60);
pub const FAST_FAIL_ETW_CORRUPTION = @as(u32, 61);
pub const FAST_FAIL_RIO_ABORT = @as(u32, 62);
pub const FAST_FAIL_INVALID_PFN = @as(u32, 63);
pub const FAST_FAIL_GUARD_ICALL_CHECK_FAILURE_XFG = @as(u32, 64);
pub const FAST_FAIL_CAST_GUARD = @as(u32, 65);
pub const FAST_FAIL_HOST_VISIBILITY_CHANGE = @as(u32, 66);
pub const FAST_FAIL_KERNEL_CET_SHADOW_STACK_ASSIST = @as(u32, 67);
pub const FAST_FAIL_PATCH_CALLBACK_FAILED = @as(u32, 68);
pub const FAST_FAIL_NTDLL_PATCH_FAILED = @as(u32, 69);
pub const FAST_FAIL_INVALID_FLS_DATA = @as(u32, 70);
pub const FAST_FAIL_INVALID_FAST_FAIL_CODE = @as(u32, 4294967295);
pub const IS_TEXT_UNICODE_DBCS_LEADBYTE = @as(u32, 1024);
pub const IS_TEXT_UNICODE_UTF8 = @as(u32, 2048);
pub const COMPRESSION_FORMAT_NONE = @as(u32, 0);
pub const COMPRESSION_FORMAT_DEFAULT = @as(u32, 1);
pub const COMPRESSION_FORMAT_LZNT1 = @as(u32, 2);
pub const COMPRESSION_FORMAT_XPRESS = @as(u32, 3);
pub const COMPRESSION_FORMAT_XPRESS_HUFF = @as(u32, 4);
pub const COMPRESSION_FORMAT_XP10 = @as(u32, 5);
pub const COMPRESSION_ENGINE_STANDARD = @as(u32, 0);
pub const COMPRESSION_ENGINE_MAXIMUM = @as(u32, 256);
pub const COMPRESSION_ENGINE_HIBER = @as(u32, 512);
pub const SEF_AI_USE_EXTRA_PARAMS = @as(u32, 2048);
pub const SEF_FORCE_USER_MODE = @as(u32, 8192);
pub const MESSAGE_RESOURCE_UNICODE = @as(u32, 1);
pub const MESSAGE_RESOURCE_UTF8 = @as(u32, 2);
pub const VER_EQUAL = @as(u32, 1);
pub const VER_GREATER = @as(u32, 2);
pub const VER_GREATER_EQUAL = @as(u32, 3);
pub const VER_LESS = @as(u32, 4);
pub const VER_LESS_EQUAL = @as(u32, 5);
pub const VER_AND = @as(u32, 6);
pub const VER_OR = @as(u32, 7);
pub const VER_CONDITION_MASK = @as(u32, 7);
pub const VER_NUM_BITS_PER_CONDITION_MASK = @as(u32, 3);
pub const VER_NT_WORKSTATION = @as(u32, 1);
pub const VER_NT_DOMAIN_CONTROLLER = @as(u32, 2);
pub const VER_NT_SERVER = @as(u32, 3);
pub const RTL_UMS_VERSION = @as(u32, 256);
pub const VRL_PREDEFINED_CLASS_BEGIN = @as(u32, 1);
pub const VRL_CUSTOM_CLASS_BEGIN = @as(u32, 256);
pub const VRL_ENABLE_KERNEL_BREAKS = @as(u32, 2147483648);
pub const CTMF_INCLUDE_APPCONTAINER = @as(u32, 1);
pub const CTMF_INCLUDE_LPAC = @as(u32, 2);
pub const FLUSH_NV_MEMORY_IN_FLAG_NO_DRAIN = @as(u32, 1);
pub const WRITE_NV_MEMORY_FLAG_FLUSH = @as(u32, 1);
pub const WRITE_NV_MEMORY_FLAG_NON_TEMPORAL = @as(u32, 2);
pub const WRITE_NV_MEMORY_FLAG_NO_DRAIN = @as(u32, 256);
pub const FILL_NV_MEMORY_FLAG_FLUSH = @as(u32, 1);
pub const FILL_NV_MEMORY_FLAG_NON_TEMPORAL = @as(u32, 2);
pub const FILL_NV_MEMORY_FLAG_NO_DRAIN = @as(u32, 256);
pub const IMAGE_POLICY_METADATA_VERSION = @as(u32, 1);
pub const RTL_VIRTUAL_UNWIND2_VALIDATE_PAC = @as(u32, 1);
pub const RTL_CRITICAL_SECTION_FLAG_NO_DEBUG_INFO = @as(u32, 16777216);
pub const RTL_CRITICAL_SECTION_FLAG_DYNAMIC_SPIN = @as(u32, 33554432);
pub const RTL_CRITICAL_SECTION_FLAG_STATIC_INIT = @as(u32, 67108864);
pub const RTL_CRITICAL_SECTION_FLAG_RESOURCE_TYPE = @as(u32, 134217728);
pub const RTL_CRITICAL_SECTION_FLAG_FORCE_DEBUG_INFO = @as(u32, 268435456);
pub const RTL_CRITICAL_SECTION_ALL_FLAG_BITS = @as(u32, 4278190080);
pub const RTL_CRITICAL_SECTION_DEBUG_FLAG_STATIC_INIT = @as(u32, 1);
pub const RTL_CONDITION_VARIABLE_LOCKMODE_SHARED = @as(u32, 1);
pub const HEAP_OPTIMIZE_RESOURCES_CURRENT_VERSION = @as(u32, 1);
pub const WT_EXECUTEINUITHREAD = @as(u32, 2);
pub const WT_EXECUTEINPERSISTENTIOTHREAD = @as(u32, 64);
pub const WT_EXECUTEINLONGTHREAD = @as(u32, 16);
pub const WT_EXECUTEDELETEWAIT = @as(u32, 8);
pub const ACTIVATION_CONTEXT_PATH_TYPE_NONE = @as(u32, 1);
pub const ACTIVATION_CONTEXT_PATH_TYPE_WIN32_FILE = @as(u32, 2);
pub const ACTIVATION_CONTEXT_PATH_TYPE_URL = @as(u32, 3);
pub const ACTIVATION_CONTEXT_PATH_TYPE_ASSEMBLYREF = @as(u32, 4);
pub const CREATE_BOUNDARY_DESCRIPTOR_ADD_APPCONTAINER_SID = @as(u32, 1);
pub const PERFORMANCE_DATA_VERSION = @as(u32, 1);
pub const READ_THREAD_PROFILING_FLAG_DISPATCHING = @as(u32, 1);
pub const READ_THREAD_PROFILING_FLAG_HARDWARE_COUNTERS = @as(u32, 2);
pub const UNIFIEDBUILDREVISION_MIN = @as(u32, 0);
pub const DLL_PROCESS_ATTACH = @as(u32, 1);
pub const DLL_THREAD_ATTACH = @as(u32, 2);
pub const DLL_THREAD_DETACH = @as(u32, 3);
pub const DLL_PROCESS_DETACH = @as(u32, 0);
pub const EVENTLOG_FORWARDS_READ = @as(u32, 4);
pub const EVENTLOG_BACKWARDS_READ = @as(u32, 8);
pub const EVENTLOG_START_PAIRED_EVENT = @as(u32, 1);
pub const EVENTLOG_END_PAIRED_EVENT = @as(u32, 2);
pub const EVENTLOG_END_ALL_PAIRED_EVENTS = @as(u32, 4);
pub const EVENTLOG_PAIRED_EVENT_ACTIVE = @as(u32, 8);
pub const EVENTLOG_PAIRED_EVENT_INACTIVE = @as(u32, 16);
pub const MAXLOGICALLOGNAMESIZE = @as(u32, 256);
pub const REG_REFRESH_HIVE = @as(i32, 2);
pub const REG_NO_LAZY_FLUSH = @as(i32, 4);
pub const REG_APP_HIVE = @as(i32, 16);
pub const REG_PROCESS_PRIVATE = @as(i32, 32);
pub const REG_START_JOURNAL = @as(i32, 64);
pub const REG_HIVE_EXACT_FILE_GROWTH = @as(i32, 128);
pub const REG_HIVE_NO_RM = @as(i32, 256);
pub const REG_HIVE_SINGLE_LOG = @as(i32, 512);
pub const REG_BOOT_HIVE = @as(i32, 1024);
pub const REG_LOAD_HIVE_OPEN_HANDLE = @as(i32, 2048);
pub const REG_FLUSH_HIVE_FILE_GROWTH = @as(i32, 4096);
pub const REG_OPEN_READ_ONLY = @as(i32, 8192);
pub const REG_IMMUTABLE = @as(i32, 16384);
pub const REG_NO_IMPERSONATION_FALLBACK = @as(i32, 32768);
pub const REG_APP_HIVE_OPEN_READ_ONLY = @as(i32, 8192);
pub const REG_FORCE_UNLOAD = @as(u32, 1);
pub const REG_UNLOAD_LEGAL_FLAGS = @as(u32, 1);
pub const SERVICE_USER_SERVICE = @as(u32, 64);
pub const SERVICE_USERSERVICE_INSTANCE = @as(u32, 128);
pub const SERVICE_INTERACTIVE_PROCESS = @as(u32, 256);
pub const SERVICE_PKG_SERVICE = @as(u32, 512);
pub const CM_SERVICE_NETWORK_BOOT_LOAD = @as(u32, 1);
pub const CM_SERVICE_VIRTUAL_DISK_BOOT_LOAD = @as(u32, 2);
pub const CM_SERVICE_USB_DISK_BOOT_LOAD = @as(u32, 4);
pub const CM_SERVICE_SD_DISK_BOOT_LOAD = @as(u32, 8);
pub const CM_SERVICE_USB3_DISK_BOOT_LOAD = @as(u32, 16);
pub const CM_SERVICE_MEASURED_BOOT_LOAD = @as(u32, 32);
pub const CM_SERVICE_VERIFIER_BOOT_LOAD = @as(u32, 64);
pub const CM_SERVICE_WINPE_BOOT_LOAD = @as(u32, 128);
pub const CM_SERVICE_RAM_DISK_BOOT_LOAD = @as(u32, 256);
pub const TAPE_PSEUDO_LOGICAL_POSITION = @as(i32, 2);
pub const TAPE_PSEUDO_LOGICAL_BLOCK = @as(i32, 3);
pub const TAPE_DRIVE_FIXED = @as(u32, 1);
pub const TAPE_DRIVE_SELECT = @as(u32, 2);
pub const TAPE_DRIVE_INITIATOR = @as(u32, 4);
pub const TAPE_DRIVE_ERASE_SHORT = @as(u32, 16);
pub const TAPE_DRIVE_ERASE_LONG = @as(u32, 32);
pub const TAPE_DRIVE_ERASE_BOP_ONLY = @as(u32, 64);
pub const TAPE_DRIVE_ERASE_IMMEDIATE = @as(u32, 128);
pub const TAPE_DRIVE_TAPE_CAPACITY = @as(u32, 256);
pub const TAPE_DRIVE_TAPE_REMAINING = @as(u32, 512);
pub const TAPE_DRIVE_FIXED_BLOCK = @as(u32, 1024);
pub const TAPE_DRIVE_VARIABLE_BLOCK = @as(u32, 2048);
pub const TAPE_DRIVE_WRITE_PROTECT = @as(u32, 4096);
pub const TAPE_DRIVE_EOT_WZ_SIZE = @as(u32, 8192);
pub const TAPE_DRIVE_ECC = @as(u32, 65536);
pub const TAPE_DRIVE_COMPRESSION = @as(u32, 131072);
pub const TAPE_DRIVE_PADDING = @as(u32, 262144);
pub const TAPE_DRIVE_REPORT_SMKS = @as(u32, 524288);
pub const TAPE_DRIVE_GET_ABSOLUTE_BLK = @as(u32, 1048576);
pub const TAPE_DRIVE_GET_LOGICAL_BLK = @as(u32, 2097152);
pub const TAPE_DRIVE_SET_EOT_WZ_SIZE = @as(u32, 4194304);
pub const TAPE_DRIVE_EJECT_MEDIA = @as(u32, 16777216);
pub const TAPE_DRIVE_CLEAN_REQUESTS = @as(u32, 33554432);
pub const TAPE_DRIVE_SET_CMP_BOP_ONLY = @as(u32, 67108864);
pub const TAPE_DRIVE_RESERVED_BIT = @as(u32, 2147483648);
pub const TAPE_DRIVE_FORMAT = @as(u32, 2684354560);
pub const TAPE_DRIVE_FORMAT_IMMEDIATE = @as(u32, 3221225472);
pub const TAPE_DRIVE_HIGH_FEATURES = @as(u32, 2147483648);
pub const TAPE_QUERY_DRIVE_PARAMETERS = @as(i32, 0);
pub const TAPE_QUERY_MEDIA_CAPACITY = @as(i32, 1);
pub const TAPE_CHECK_FOR_DRIVE_PROBLEM = @as(i32, 2);
pub const TAPE_QUERY_IO_ERROR_DATA = @as(i32, 3);
pub const TAPE_QUERY_DEVICE_ERROR_DATA = @as(i32, 4);
pub const TRANSACTIONMANAGER_QUERY_INFORMATION = @as(u32, 1);
pub const TRANSACTIONMANAGER_SET_INFORMATION = @as(u32, 2);
pub const TRANSACTIONMANAGER_RECOVER = @as(u32, 4);
pub const TRANSACTIONMANAGER_RENAME = @as(u32, 8);
pub const TRANSACTIONMANAGER_CREATE_RM = @as(u32, 16);
pub const TRANSACTIONMANAGER_BIND_TRANSACTION = @as(u32, 32);
pub const TRANSACTION_QUERY_INFORMATION = @as(u32, 1);
pub const TRANSACTION_SET_INFORMATION = @as(u32, 2);
pub const TRANSACTION_ENLIST = @as(u32, 4);
pub const TRANSACTION_COMMIT = @as(u32, 8);
pub const TRANSACTION_ROLLBACK = @as(u32, 16);
pub const TRANSACTION_PROPAGATE = @as(u32, 32);
pub const TRANSACTION_RIGHT_RESERVED1 = @as(u32, 64);
pub const RESOURCEMANAGER_QUERY_INFORMATION = @as(u32, 1);
pub const RESOURCEMANAGER_SET_INFORMATION = @as(u32, 2);
pub const RESOURCEMANAGER_RECOVER = @as(u32, 4);
pub const RESOURCEMANAGER_ENLIST = @as(u32, 8);
pub const RESOURCEMANAGER_GET_NOTIFICATION = @as(u32, 16);
pub const RESOURCEMANAGER_REGISTER_PROTOCOL = @as(u32, 32);
pub const RESOURCEMANAGER_COMPLETE_PROPAGATION = @as(u32, 64);
pub const ENLISTMENT_QUERY_INFORMATION = @as(u32, 1);
pub const ENLISTMENT_SET_INFORMATION = @as(u32, 2);
pub const ENLISTMENT_RECOVER = @as(u32, 4);
pub const ENLISTMENT_SUBORDINATE_RIGHTS = @as(u32, 8);
pub const ENLISTMENT_SUPERIOR_RIGHTS = @as(u32, 16);
pub const PcTeb = @as(u32, 24);
pub const ACTIVATION_CONTEXT_SECTION_ASSEMBLY_INFORMATION = @as(u32, 1);
pub const ACTIVATION_CONTEXT_SECTION_DLL_REDIRECTION = @as(u32, 2);
pub const ACTIVATION_CONTEXT_SECTION_WINDOW_CLASS_REDIRECTION = @as(u32, 3);
pub const ACTIVATION_CONTEXT_SECTION_COM_SERVER_REDIRECTION = @as(u32, 4);
pub const ACTIVATION_CONTEXT_SECTION_COM_INTERFACE_REDIRECTION = @as(u32, 5);
pub const ACTIVATION_CONTEXT_SECTION_COM_TYPE_LIBRARY_REDIRECTION = @as(u32, 6);
pub const ACTIVATION_CONTEXT_SECTION_COM_PROGID_REDIRECTION = @as(u32, 7);
pub const ACTIVATION_CONTEXT_SECTION_GLOBAL_OBJECT_RENAME_TABLE = @as(u32, 8);
pub const ACTIVATION_CONTEXT_SECTION_CLR_SURROGATES = @as(u32, 9);
pub const ACTIVATION_CONTEXT_SECTION_APPLICATION_SETTINGS = @as(u32, 10);
pub const ACTIVATION_CONTEXT_SECTION_COMPATIBILITY_INFO = @as(u32, 11);
pub const ACTIVATION_CONTEXT_SECTION_WINRT_ACTIVATABLE_CLASSES = @as(u32, 12);
pub const BSF_MSGSRV32ISOK = @as(u32, 2147483648);
pub const BSF_MSGSRV32ISOK_BIT = @as(u32, 31);
pub const DBT_APPYBEGIN = @as(u32, 0);
pub const DBT_APPYEND = @as(u32, 1);
pub const DBT_DEVNODES_CHANGED = @as(u32, 7);
pub const DBT_QUERYCHANGECONFIG = @as(u32, 23);
pub const DBT_CONFIGCHANGED = @as(u32, 24);
pub const DBT_CONFIGCHANGECANCELED = @as(u32, 25);
pub const DBT_MONITORCHANGE = @as(u32, 27);
pub const DBT_SHELLLOGGEDON = @as(u32, 32);
pub const DBT_CONFIGMGAPI32 = @as(u32, 34);
pub const DBT_VXDINITCOMPLETE = @as(u32, 35);
pub const DBT_VOLLOCKQUERYLOCK = @as(u32, 32833);
pub const DBT_VOLLOCKLOCKTAKEN = @as(u32, 32834);
pub const DBT_VOLLOCKLOCKFAILED = @as(u32, 32835);
pub const DBT_VOLLOCKQUERYUNLOCK = @as(u32, 32836);
pub const DBT_VOLLOCKLOCKRELEASED = @as(u32, 32837);
pub const DBT_VOLLOCKUNLOCKFAILED = @as(u32, 32838);
pub const LOCKP_ALLOW_WRITES = @as(u32, 1);
pub const LOCKP_FAIL_WRITES = @as(u32, 0);
pub const LOCKP_FAIL_MEM_MAPPING = @as(u32, 2);
pub const LOCKP_ALLOW_MEM_MAPPING = @as(u32, 0);
pub const LOCKP_USER_MASK = @as(u32, 3);
pub const LOCKP_LOCK_FOR_FORMAT = @as(u32, 4);
pub const LOCKF_LOGICAL_LOCK = @as(u32, 0);
pub const LOCKF_PHYSICAL_LOCK = @as(u32, 1);
pub const DBT_NO_DISK_SPACE = @as(u32, 71);
pub const DBT_LOW_DISK_SPACE = @as(u32, 72);
pub const DBT_CONFIGMGPRIVATE = @as(u32, 32767);
pub const DBT_DEVICEARRIVAL = @as(u32, 32768);
pub const DBT_DEVICEQUERYREMOVE = @as(u32, 32769);
pub const DBT_DEVICEQUERYREMOVEFAILED = @as(u32, 32770);
pub const DBT_DEVICEREMOVEPENDING = @as(u32, 32771);
pub const DBT_DEVICEREMOVECOMPLETE = @as(u32, 32772);
pub const DBT_DEVICETYPESPECIFIC = @as(u32, 32773);
pub const DBT_CUSTOMEVENT = @as(u32, 32774);
pub const DBT_DEVTYP_DEVNODE = @as(u32, 1);
pub const DBT_DEVTYP_NET = @as(u32, 4);
pub const DBTF_RESOURCE = @as(u32, 1);
pub const DBTF_XPORT = @as(u32, 2);
pub const DBTF_SLOWNET = @as(u32, 4);
pub const DBT_VPOWERDAPI = @as(u32, 33024);
pub const DBT_USERDEFINED = @as(u32, 65535);
pub const GUID_IO_VOLUME_CHANGE = Guid.initString("7373654a-812a-11d0-bec7-08002be2092f");
pub const GUID_IO_VOLUME_DISMOUNT = Guid.initString("d16a55e8-1059-11d2-8ffd-00a0c9a06d32");
pub const GUID_IO_VOLUME_DISMOUNT_FAILED = Guid.initString("e3c5b178-105d-11d2-8ffd-00a0c9a06d32");
pub const GUID_IO_VOLUME_MOUNT = Guid.initString("b5804878-1a96-11d2-8ffd-00a0c9a06d32");
pub const GUID_IO_VOLUME_LOCK = Guid.initString("50708874-c9af-11d1-8fef-00a0c9a06d32");
pub const GUID_IO_VOLUME_LOCK_FAILED = Guid.initString("ae2eed10-0ba8-11d2-8ffb-00a0c9a06d32");
pub const GUID_IO_VOLUME_UNLOCK = Guid.initString("9a8c3d68-d0cb-11d1-8fef-00a0c9a06d32");
pub const GUID_IO_VOLUME_NAME_CHANGE = Guid.initString("2de97f83-4c06-11d2-a532-00609713055a");
pub const GUID_IO_VOLUME_NEED_CHKDSK = Guid.initString("799a0960-0a0b-4e03-ad88-2fa7c6ce748a");
pub const GUID_IO_VOLUME_WORM_NEAR_FULL = Guid.initString("f3bfff82-f3de-48d2-af95-457f80b763f2");
pub const GUID_IO_VOLUME_WEARING_OUT = Guid.initString("873113ca-1486-4508-82ac-c3b2e5297aaa");
pub const GUID_IO_VOLUME_FORCE_CLOSED = Guid.initString("411ad84f-433e-4dc2-a5ae-4a2d1a2de654");
pub const GUID_IO_VOLUME_INFO_MAKE_COMPAT = Guid.initString("3ab9a0d2-ef80-45cf-8cdc-cbe02a212906");
pub const GUID_IO_VOLUME_PREPARING_EJECT = Guid.initString("c79eb16e-0dac-4e7a-a86c-b25ceeaa88f6");
pub const GUID_IO_VOLUME_BACKGROUND_FORMAT = Guid.initString("a2e5fc86-d5cd-4038-b2e3-4445065c2377");
pub const GUID_IO_VOLUME_PHYSICAL_CONFIGURATION_CHANGE = Guid.initString("2de97f84-4c06-11d2-a532-00609713055a");
pub const GUID_IO_VOLUME_UNIQUE_ID_CHANGE = Guid.initString("af39da42-6622-41f5-970b-139d092fa3d9");
pub const GUID_IO_VOLUME_FVE_STATUS_CHANGE = Guid.initString("062998b2-ee1f-4b6a-b857-e76cbbe9a6da");
pub const GUID_IO_VOLUME_DEVICE_INTERFACE = Guid.initString("53f5630d-b6bf-11d0-94f2-00a0c91efb8b");
pub const GUID_IO_VOLUME_CHANGE_SIZE = Guid.initString("3a1625be-ad03-49f1-8ef8-6bbac182d1fd");
pub const GUID_IO_MEDIA_ARRIVAL = Guid.initString("d07433c0-a98e-11d2-917a-00a0c9068ff3");
pub const GUID_IO_MEDIA_REMOVAL = Guid.initString("d07433c1-a98e-11d2-917a-00a0c9068ff3");
pub const GUID_IO_CDROM_EXCLUSIVE_LOCK = Guid.initString("bc56c139-7a10-47ee-a294-4c6a38f0149a");
pub const GUID_IO_CDROM_EXCLUSIVE_UNLOCK = Guid.initString("a3b6d27d-5e35-4885-81e5-ee18c00ed779");
pub const GUID_IO_DEVICE_BECOMING_READY = Guid.initString("d07433f0-a98e-11d2-917a-00a0c9068ff3");
pub const GUID_IO_DEVICE_EXTERNAL_REQUEST = Guid.initString("d07433d0-a98e-11d2-917a-00a0c9068ff3");
pub const GUID_IO_MEDIA_EJECT_REQUEST = Guid.initString("d07433d1-a98e-11d2-917a-00a0c9068ff3");
pub const GUID_IO_DRIVE_REQUIRES_CLEANING = Guid.initString("7207877c-90ed-44e5-a000-81428d4c79bb");
pub const GUID_IO_TAPE_ERASE = Guid.initString("852d11eb-4bb8-4507-9d9b-417cc2b1b438");
pub const GUID_DEVICE_EVENT_RBC = Guid.initString("d0744792-a98e-11d2-917a-00a0c9068ff3");
pub const GUID_IO_DISK_CLONE_ARRIVAL = Guid.initString("6a61885b-7c39-43dd-9b56-b8ac22a549aa");
pub const GUID_IO_DISK_LAYOUT_CHANGE = Guid.initString("11dff54c-8469-41f9-b3de-ef836487c54a");
pub const GUID_IO_DISK_HEALTH_NOTIFICATION = Guid.initString("0f1bd644-3916-49c5-b063-991940118fb2");
pub const D3DNTHAL_NUMCLIPVERTICES = @as(u32, 20);
pub const D3DNTHAL_SCENE_CAPTURE_START = @as(i32, 0);
pub const D3DNTHAL_SCENE_CAPTURE_END = @as(i32, 1);
pub const D3DNTHAL_CONTEXT_BAD = @as(i64, 512);
pub const D3DNTHAL_OUTOFCONTEXTS = @as(i64, 513);
pub const D3DNTHAL2_CB32_SETRENDERTARGET = @as(i32, 1);
pub const D3DHAL_STATESETBEGIN = @as(u32, 0);
pub const D3DHAL_STATESETEND = @as(u32, 1);
pub const D3DHAL_STATESETDELETE = @as(u32, 2);
pub const D3DHAL_STATESETEXECUTE = @as(u32, 3);
pub const D3DHAL_STATESETCAPTURE = @as(u32, 4);
pub const D3DNTHALDP2_USERMEMVERTICES = @as(i32, 1);
pub const D3DNTHALDP2_EXECUTEBUFFER = @as(i32, 2);
pub const D3DNTHALDP2_SWAPVERTEXBUFFER = @as(i32, 4);
pub const D3DNTHALDP2_SWAPCOMMANDBUFFER = @as(i32, 8);
pub const D3DNTHALDP2_REQVERTEXBUFSIZE = @as(i32, 16);
pub const D3DNTHALDP2_REQCOMMANDBUFSIZE = @as(i32, 32);
pub const D3DNTHALDP2_VIDMEMVERTEXBUF = @as(i32, 64);
pub const D3DNTHALDP2_VIDMEMCOMMANDBUF = @as(i32, 128);
pub const D3DNTHAL3_CB32_CLEAR2 = @as(i32, 1);
pub const D3DNTHAL3_CB32_RESERVED = @as(i32, 2);
pub const D3DNTHAL3_CB32_VALIDATETEXTURESTAGESTATE = @as(i32, 4);
pub const D3DNTHAL3_CB32_DRAWPRIMITIVES2 = @as(i32, 8);
pub const D3DNTHAL_TSS_RENDERSTATEBASE = @as(u32, 256);
pub const D3DNTHAL_TSS_MAXSTAGES = @as(u32, 8);
pub const D3DNTHAL_TSS_STATESPERSTAGE = @as(u32, 64);
pub const D3DTSS_TEXTUREMAP = @as(u32, 0);
pub const D3DHAL_SAMPLER_MAXSAMP = @as(u32, 16);
pub const D3DHAL_SAMPLER_MAXVERTEXSAMP = @as(u32, 4);
pub const D3DPMISCCAPS_LINEPATTERNREP = @as(i32, 4);
pub const D3DRS_MAXVERTEXSHADERINST = @as(u32, 196);
pub const D3DRS_MAXPIXELSHADERINST = @as(u32, 197);
pub const D3DRENDERSTATE_EVICTMANAGEDTEXTURES = @as(u32, 61);
pub const D3DRENDERSTATE_SCENECAPTURE = @as(u32, 62);
pub const _NT_D3DRS_DELETERTPATCH = @as(u32, 169);
pub const D3DINFINITEINSTRUCTIONS = @as(u32, 4294967295);
pub const D3DNTHAL_STATESETCREATE = @as(u32, 5);
pub const D3DNTCLEAR_COMPUTERECTS = @as(i32, 8);
pub const _NT_RTPATCHFLAG_HASSEGS = @as(i32, 1);
pub const _NT_RTPATCHFLAG_HASINFO = @as(i32, 2);
pub const D3DNTHAL_ROW_WEIGHTS = @as(u32, 1);
pub const D3DNTHAL_COL_WEIGHTS = @as(u32, 2);
pub const DP2BLT_POINT = @as(i32, 1);
pub const DP2BLT_LINEAR = @as(i32, 2);
pub const DDBLT_EXTENDED_PRESENTATION_STRETCHFACTOR = @as(i32, 16);
pub const _NT_D3DGDI2_MAGIC = @as(u32, 4294967295);
pub const _NT_D3DGDI2_TYPE_GETD3DCAPS8 = @as(u32, 1);
pub const _NT_D3DGDI2_TYPE_GETFORMATCOUNT = @as(u32, 2);
pub const _NT_D3DGDI2_TYPE_GETFORMAT = @as(u32, 3);
pub const _NT_D3DGDI2_TYPE_DXVERSION = @as(u32, 4);
pub const _NT_D3DGDI2_TYPE_DEFERRED_AGP_AWARE = @as(u32, 24);
pub const _NT_D3DGDI2_TYPE_FREE_DEFERRED_AGP = @as(u32, 25);
pub const _NT_D3DGDI2_TYPE_DEFER_AGP_FREES = @as(u32, 32);
pub const _NT_D3DGDI2_TYPE_GETD3DCAPS9 = @as(u32, 16);
pub const _NT_D3DGDI2_TYPE_GETEXTENDEDMODECOUNT = @as(u32, 17);
pub const _NT_D3DGDI2_TYPE_GETEXTENDEDMODE = @as(u32, 18);
pub const _NT_D3DGDI2_TYPE_GETADAPTERGROUP = @as(u32, 19);
pub const _NT_D3DGDI2_TYPE_GETMULTISAMPLEQUALITYLEVELS = @as(u32, 22);
pub const _NT_D3DGDI2_TYPE_GETD3DQUERYCOUNT = @as(u32, 33);
pub const _NT_D3DGDI2_TYPE_GETD3DQUERY = @as(u32, 34);
pub const _NT_D3DGDI2_TYPE_GETDDIVERSION = @as(u32, 35);
pub const DX9_DDI_VERSION = @as(u32, 4);
pub const _NT_D3DDEVCAPS_HWVERTEXBUFFER = @as(i32, 33554432);
pub const _NT_D3DDEVCAPS_HWINDEXBUFFER = @as(i32, 67108864);
pub const _NT_D3DDEVCAPS_SUBVOLUMELOCK = @as(i32, 134217728);
pub const _NT_D3DPMISCCAPS_FOGINFVF = @as(i32, 8192);
pub const _NT_D3DFVF_FOG = @as(i32, 8192);
pub const D3DPRASTERCAPS_STRETCHBLTMULTISAMPLE = @as(i32, 8388608);
pub const _NT_D3DVS_MAXINSTRUCTIONCOUNT_V1_1 = @as(u32, 128);
pub const _NT_D3DVS_LABEL_MAX_V3_0 = @as(u32, 2048);
pub const _NT_D3DVS_TCRDOUTREG_MAX_V1_1 = @as(u32, 8);
pub const _NT_D3DVS_TCRDOUTREG_MAX_V2_0 = @as(u32, 8);
pub const _NT_D3DVS_TCRDOUTREG_MAX_V2_1 = @as(u32, 8);
pub const _NT_D3DVS_OUTPUTREG_MAX_V3_0 = @as(u32, 12);
pub const _NT_D3DVS_OUTPUTREG_MAX_SW_DX9 = @as(u32, 16);
pub const _NT_D3DVS_ATTROUTREG_MAX_V1_1 = @as(u32, 2);
pub const _NT_D3DVS_ATTROUTREG_MAX_V2_0 = @as(u32, 2);
pub const _NT_D3DVS_ATTROUTREG_MAX_V2_1 = @as(u32, 2);
pub const _NT_D3DVS_INPUTREG_MAX_V1_1 = @as(u32, 16);
pub const _NT_D3DVS_INPUTREG_MAX_V2_0 = @as(u32, 16);
pub const _NT_D3DVS_INPUTREG_MAX_V2_1 = @as(u32, 16);
pub const _NT_D3DVS_INPUTREG_MAX_V3_0 = @as(u32, 16);
pub const _NT_D3DVS_TEMPREG_MAX_V1_1 = @as(u32, 12);
pub const _NT_D3DVS_TEMPREG_MAX_V2_0 = @as(u32, 12);
pub const _NT_D3DVS_TEMPREG_MAX_V2_1 = @as(u32, 32);
pub const _NT_D3DVS_TEMPREG_MAX_V3_0 = @as(u32, 32);
pub const _NT_D3DVS_CONSTREG_MAX_V1_1 = @as(u32, 96);
pub const _NT_D3DVS_CONSTREG_MAX_V2_0 = @as(u32, 8192);
pub const _NT_D3DVS_CONSTREG_MAX_V2_1 = @as(u32, 8192);
pub const _NT_D3DVS_CONSTREG_MAX_V3_0 = @as(u32, 8192);
pub const _NT_D3DVS_CONSTINTREG_MAX_SW_DX9 = @as(u32, 2048);
pub const _NT_D3DVS_CONSTINTREG_MAX_V2_0 = @as(u32, 16);
pub const _NT_D3DVS_CONSTINTREG_MAX_V2_1 = @as(u32, 16);
pub const _NT_D3DVS_CONSTINTREG_MAX_V3_0 = @as(u32, 16);
pub const _NT_D3DVS_CONSTBOOLREG_MAX_SW_DX9 = @as(u32, 2048);
pub const _NT_D3DVS_CONSTBOOLREG_MAX_V2_0 = @as(u32, 16);
pub const _NT_D3DVS_CONSTBOOLREG_MAX_V2_1 = @as(u32, 16);
pub const _NT_D3DVS_CONSTBOOLREG_MAX_V3_0 = @as(u32, 16);
pub const _NT_D3DVS_ADDRREG_MAX_V1_1 = @as(u32, 1);
pub const _NT_D3DVS_ADDRREG_MAX_V2_0 = @as(u32, 1);
pub const _NT_D3DVS_ADDRREG_MAX_V2_1 = @as(u32, 1);
pub const _NT_D3DVS_ADDRREG_MAX_V3_0 = @as(u32, 1);
pub const _NT_D3DVS_MAXLOOPSTEP_V2_0 = @as(u32, 128);
pub const _NT_D3DVS_MAXLOOPSTEP_V2_1 = @as(u32, 128);
pub const _NT_D3DVS_MAXLOOPSTEP_V3_0 = @as(u32, 128);
pub const _NT_D3DVS_MAXLOOPINITVALUE_V2_0 = @as(u32, 255);
pub const _NT_D3DVS_MAXLOOPINITVALUE_V2_1 = @as(u32, 255);
pub const _NT_D3DVS_MAXLOOPINITVALUE_V3_0 = @as(u32, 255);
pub const _NT_D3DVS_MAXLOOPITERATIONCOUNT_V2_0 = @as(u32, 255);
pub const _NT_D3DVS_MAXLOOPITERATIONCOUNT_V2_1 = @as(u32, 255);
pub const _NT_D3DVS_MAXLOOPITERATIONCOUNT_V3_0 = @as(u32, 255);
pub const _NT_D3DVS_PREDICATE_MAX_V2_1 = @as(u32, 1);
pub const _NT_D3DVS_PREDICATE_MAX_V3_0 = @as(u32, 1);
pub const _NT_D3DPS_INPUTREG_MAX_V1_1 = @as(u32, 2);
pub const _NT_D3DPS_INPUTREG_MAX_V1_2 = @as(u32, 2);
pub const _NT_D3DPS_INPUTREG_MAX_V1_3 = @as(u32, 2);
pub const _NT_D3DPS_INPUTREG_MAX_V1_4 = @as(u32, 2);
pub const _NT_D3DPS_INPUTREG_MAX_V2_0 = @as(u32, 2);
pub const _NT_D3DPS_INPUTREG_MAX_V2_1 = @as(u32, 2);
pub const _NT_D3DPS_INPUTREG_MAX_V3_0 = @as(u32, 12);
pub const _NT_D3DPS_TEMPREG_MAX_V1_1 = @as(u32, 2);
pub const _NT_D3DPS_TEMPREG_MAX_V1_2 = @as(u32, 2);
pub const _NT_D3DPS_TEMPREG_MAX_V1_3 = @as(u32, 2);
pub const _NT_D3DPS_TEMPREG_MAX_V1_4 = @as(u32, 6);
pub const _NT_D3DPS_TEMPREG_MAX_V2_0 = @as(u32, 12);
pub const _NT_D3DPS_TEMPREG_MAX_V2_1 = @as(u32, 32);
pub const _NT_D3DPS_TEMPREG_MAX_V3_0 = @as(u32, 32);
pub const _NT_D3DPS_TEXTUREREG_MAX_V1_1 = @as(u32, 4);
pub const _NT_D3DPS_TEXTUREREG_MAX_V1_2 = @as(u32, 4);
pub const _NT_D3DPS_TEXTUREREG_MAX_V1_3 = @as(u32, 4);
pub const _NT_D3DPS_TEXTUREREG_MAX_V1_4 = @as(u32, 6);
pub const _NT_D3DPS_TEXTUREREG_MAX_V2_0 = @as(u32, 8);
pub const _NT_D3DPS_TEXTUREREG_MAX_V2_1 = @as(u32, 8);
pub const _NT_D3DPS_TEXTUREREG_MAX_V3_0 = @as(u32, 0);
pub const _NT_D3DPS_COLOROUT_MAX_V2_0 = @as(u32, 4);
pub const _NT_D3DPS_COLOROUT_MAX_V2_1 = @as(u32, 4);
pub const _NT_D3DPS_COLOROUT_MAX_V3_0 = @as(u32, 4);
pub const _NT_D3DPS_PREDICATE_MAX_V2_1 = @as(u32, 1);
pub const _NT_D3DPS_PREDICATE_MAX_V3_0 = @as(u32, 1);
pub const _NT_D3DPS_CONSTREG_MAX_SW_DX9 = @as(u32, 8192);
pub const _NT_D3DPS_CONSTREG_MAX_V1_1 = @as(u32, 8);
pub const _NT_D3DPS_CONSTREG_MAX_V1_2 = @as(u32, 8);
pub const _NT_D3DPS_CONSTREG_MAX_V1_3 = @as(u32, 8);
pub const _NT_D3DPS_CONSTREG_MAX_V1_4 = @as(u32, 8);
pub const _NT_D3DPS_CONSTREG_MAX_V2_0 = @as(u32, 32);
pub const _NT_D3DPS_CONSTREG_MAX_V2_1 = @as(u32, 32);
pub const _NT_D3DPS_CONSTREG_MAX_V3_0 = @as(u32, 224);
pub const _NT_D3DPS_CONSTBOOLREG_MAX_SW_DX9 = @as(u32, 2048);
pub const _NT_D3DPS_CONSTBOOLREG_MAX_V2_1 = @as(u32, 16);
pub const _NT_D3DPS_CONSTBOOLREG_MAX_V3_0 = @as(u32, 16);
pub const _NT_D3DPS_CONSTINTREG_MAX_SW_DX9 = @as(u32, 2048);
pub const _NT_D3DPS_CONSTINTREG_MAX_V2_1 = @as(u32, 16);
pub const _NT_D3DPS_CONSTINTREG_MAX_V3_0 = @as(u32, 16);
pub const _NT_D3DPS_MAXLOOPSTEP_V2_1 = @as(u32, 128);
pub const _NT_D3DPS_MAXLOOPSTEP_V3_0 = @as(u32, 128);
pub const _NT_D3DPS_MAXLOOPINITVALUE_V2_1 = @as(u32, 255);
pub const _NT_D3DPS_MAXLOOPINITVALUE_V3_0 = @as(u32, 255);
pub const _NT_D3DPS_MAXLOOPITERATIONCOUNT_V2_1 = @as(u32, 255);
pub const _NT_D3DPS_MAXLOOPITERATIONCOUNT_V3_0 = @as(u32, 255);
pub const _NT_D3DPS_INPUTREG_MAX_DX8 = @as(u32, 8);
pub const _NT_D3DPS_TEMPREG_MAX_DX8 = @as(u32, 8);
pub const _NT_D3DPS_CONSTREG_MAX_DX8 = @as(u32, 8);
pub const _NT_D3DPS_TEXTUREREG_MAX_DX8 = @as(u32, 8);
pub const D3DVSDT_FLOAT1 = @as(u32, 0);
pub const D3DVSDT_FLOAT2 = @as(u32, 1);
pub const D3DVSDT_FLOAT3 = @as(u32, 2);
pub const D3DVSDT_FLOAT4 = @as(u32, 3);
pub const D3DVSDT_D3DCOLOR = @as(u32, 4);
pub const D3DVSDT_UBYTE4 = @as(u32, 5);
pub const D3DVSDT_SHORT2 = @as(u32, 6);
pub const D3DVSDT_SHORT4 = @as(u32, 7);
pub const D3DVSDE_POSITION = @as(u32, 0);
pub const D3DVSDE_BLENDWEIGHT = @as(u32, 1);
pub const D3DVSDE_BLENDINDICES = @as(u32, 2);
pub const D3DVSDE_NORMAL = @as(u32, 3);
pub const D3DVSDE_PSIZE = @as(u32, 4);
pub const D3DVSDE_DIFFUSE = @as(u32, 5);
pub const D3DVSDE_SPECULAR = @as(u32, 6);
pub const D3DVSDE_TEXCOORD0 = @as(u32, 7);
pub const D3DVSDE_TEXCOORD1 = @as(u32, 8);
pub const D3DVSDE_TEXCOORD2 = @as(u32, 9);
pub const D3DVSDE_TEXCOORD3 = @as(u32, 10);
pub const D3DVSDE_TEXCOORD4 = @as(u32, 11);
pub const D3DVSDE_TEXCOORD5 = @as(u32, 12);
pub const D3DVSDE_TEXCOORD6 = @as(u32, 13);
pub const D3DVSDE_TEXCOORD7 = @as(u32, 14);
pub const D3DVSDE_POSITION2 = @as(u32, 15);
pub const D3DVSDE_NORMAL2 = @as(u32, 16);
pub const D3DVSD_TOKENTYPESHIFT = @as(u32, 29);
pub const D3DVSD_STREAMNUMBERSHIFT = @as(u32, 0);
pub const D3DVSD_DATALOADTYPESHIFT = @as(u32, 28);
pub const D3DVSD_DATATYPESHIFT = @as(u32, 16);
pub const D3DVSD_SKIPCOUNTSHIFT = @as(u32, 16);
pub const D3DVSD_VERTEXREGSHIFT = @as(u32, 0);
pub const D3DVSD_VERTEXREGINSHIFT = @as(u32, 20);
pub const D3DVSD_CONSTCOUNTSHIFT = @as(u32, 25);
pub const D3DVSD_CONSTADDRESSSHIFT = @as(u32, 0);
pub const D3DVSD_CONSTRSSHIFT = @as(u32, 16);
pub const D3DVSD_EXTCOUNTSHIFT = @as(u32, 24);
pub const D3DVSD_EXTINFOSHIFT = @as(u32, 0);
pub const D3DVSD_STREAMTESSSHIFT = @as(u32, 28);
pub const DIRECT3D_VERSION = @as(u32, 1792);
pub const D3DTRANSFORMCAPS_CLIP = @as(i32, 1);
pub const D3DLIGHTINGMODEL_RGB = @as(i32, 1);
pub const D3DLIGHTINGMODEL_MONO = @as(i32, 2);
pub const D3DLIGHTCAPS_POINT = @as(i32, 1);
pub const D3DLIGHTCAPS_SPOT = @as(i32, 2);
pub const D3DLIGHTCAPS_DIRECTIONAL = @as(i32, 4);
pub const D3DLIGHTCAPS_PARALLELPOINT = @as(i32, 8);
pub const D3DLIGHTCAPS_GLSPOT = @as(i32, 16);
pub const D3DPMISCCAPS_MASKPLANES = @as(i32, 1);
pub const D3DPMISCCAPS_MASKZ = @as(i32, 2);
pub const D3DPMISCCAPS_CONFORMANT = @as(i32, 8);
pub const D3DPMISCCAPS_CULLNONE = @as(i32, 16);
pub const D3DPMISCCAPS_CULLCW = @as(i32, 32);
pub const D3DPMISCCAPS_CULLCCW = @as(i32, 64);
pub const D3DPRASTERCAPS_DITHER = @as(i32, 1);
pub const D3DPRASTERCAPS_ROP2 = @as(i32, 2);
pub const D3DPRASTERCAPS_XOR = @as(i32, 4);
pub const D3DPRASTERCAPS_PAT = @as(i32, 8);
pub const D3DPRASTERCAPS_ZTEST = @as(i32, 16);
pub const D3DPRASTERCAPS_SUBPIXEL = @as(i32, 32);
pub const D3DPRASTERCAPS_SUBPIXELX = @as(i32, 64);
pub const D3DPRASTERCAPS_FOGVERTEX = @as(i32, 128);
pub const D3DPRASTERCAPS_FOGTABLE = @as(i32, 256);
pub const D3DPRASTERCAPS_STIPPLE = @as(i32, 512);
pub const D3DPRASTERCAPS_ANTIALIASSORTDEPENDENT = @as(i32, 1024);
pub const D3DPRASTERCAPS_ANTIALIASSORTINDEPENDENT = @as(i32, 2048);
pub const D3DPRASTERCAPS_ANTIALIASEDGES = @as(i32, 4096);
pub const D3DPRASTERCAPS_MIPMAPLODBIAS = @as(i32, 8192);
pub const D3DPRASTERCAPS_ZBIAS = @as(i32, 16384);
pub const D3DPRASTERCAPS_ZBUFFERLESSHSR = @as(i32, 32768);
pub const D3DPRASTERCAPS_FOGRANGE = @as(i32, 65536);
pub const D3DPRASTERCAPS_ANISOTROPY = @as(i32, 131072);
pub const D3DPRASTERCAPS_WBUFFER = @as(i32, 262144);
pub const D3DPRASTERCAPS_TRANSLUCENTSORTINDEPENDENT = @as(i32, 524288);
pub const D3DPRASTERCAPS_WFOG = @as(i32, 1048576);
pub const D3DPRASTERCAPS_ZFOG = @as(i32, 2097152);
pub const D3DPCMPCAPS_NEVER = @as(i32, 1);
pub const D3DPCMPCAPS_LESS = @as(i32, 2);
pub const D3DPCMPCAPS_EQUAL = @as(i32, 4);
pub const D3DPCMPCAPS_LESSEQUAL = @as(i32, 8);
pub const D3DPCMPCAPS_GREATER = @as(i32, 16);
pub const D3DPCMPCAPS_NOTEQUAL = @as(i32, 32);
pub const D3DPCMPCAPS_GREATEREQUAL = @as(i32, 64);
pub const D3DPCMPCAPS_ALWAYS = @as(i32, 128);
pub const D3DPBLENDCAPS_ZERO = @as(i32, 1);
pub const D3DPBLENDCAPS_ONE = @as(i32, 2);
pub const D3DPBLENDCAPS_SRCCOLOR = @as(i32, 4);
pub const D3DPBLENDCAPS_INVSRCCOLOR = @as(i32, 8);
pub const D3DPBLENDCAPS_SRCALPHA = @as(i32, 16);
pub const D3DPBLENDCAPS_INVSRCALPHA = @as(i32, 32);
pub const D3DPBLENDCAPS_DESTALPHA = @as(i32, 64);
pub const D3DPBLENDCAPS_INVDESTALPHA = @as(i32, 128);
pub const D3DPBLENDCAPS_DESTCOLOR = @as(i32, 256);
pub const D3DPBLENDCAPS_INVDESTCOLOR = @as(i32, 512);
pub const D3DPBLENDCAPS_SRCALPHASAT = @as(i32, 1024);
pub const D3DPBLENDCAPS_BOTHSRCALPHA = @as(i32, 2048);
pub const D3DPBLENDCAPS_BOTHINVSRCALPHA = @as(i32, 4096);
pub const D3DPSHADECAPS_COLORFLATMONO = @as(i32, 1);
pub const D3DPSHADECAPS_COLORFLATRGB = @as(i32, 2);
pub const D3DPSHADECAPS_COLORGOURAUDMONO = @as(i32, 4);
pub const D3DPSHADECAPS_COLORGOURAUDRGB = @as(i32, 8);
pub const D3DPSHADECAPS_COLORPHONGMONO = @as(i32, 16);
pub const D3DPSHADECAPS_COLORPHONGRGB = @as(i32, 32);
pub const D3DPSHADECAPS_SPECULARFLATMONO = @as(i32, 64);
pub const D3DPSHADECAPS_SPECULARFLATRGB = @as(i32, 128);
pub const D3DPSHADECAPS_SPECULARGOURAUDMONO = @as(i32, 256);
pub const D3DPSHADECAPS_SPECULARGOURAUDRGB = @as(i32, 512);
pub const D3DPSHADECAPS_SPECULARPHONGMONO = @as(i32, 1024);
pub const D3DPSHADECAPS_SPECULARPHONGRGB = @as(i32, 2048);
pub const D3DPSHADECAPS_ALPHAFLATBLEND = @as(i32, 4096);
pub const D3DPSHADECAPS_ALPHAFLATSTIPPLED = @as(i32, 8192);
pub const D3DPSHADECAPS_ALPHAGOURAUDBLEND = @as(i32, 16384);
pub const D3DPSHADECAPS_ALPHAGOURAUDSTIPPLED = @as(i32, 32768);
pub const D3DPSHADECAPS_ALPHAPHONGBLEND = @as(i32, 65536);
pub const D3DPSHADECAPS_ALPHAPHONGSTIPPLED = @as(i32, 131072);
pub const D3DPSHADECAPS_FOGFLAT = @as(i32, 262144);
pub const D3DPSHADECAPS_FOGGOURAUD = @as(i32, 524288);
pub const D3DPSHADECAPS_FOGPHONG = @as(i32, 1048576);
pub const D3DPTEXTURECAPS_PERSPECTIVE = @as(i32, 1);
pub const D3DPTEXTURECAPS_POW2 = @as(i32, 2);
pub const D3DPTEXTURECAPS_ALPHA = @as(i32, 4);
pub const D3DPTEXTURECAPS_TRANSPARENCY = @as(i32, 8);
pub const D3DPTEXTURECAPS_BORDER = @as(i32, 16);
pub const D3DPTEXTURECAPS_SQUAREONLY = @as(i32, 32);
pub const D3DPTEXTURECAPS_TEXREPEATNOTSCALEDBYSIZE = @as(i32, 64);
pub const D3DPTEXTURECAPS_ALPHAPALETTE = @as(i32, 128);
pub const D3DPTEXTURECAPS_NONPOW2CONDITIONAL = @as(i32, 256);
pub const D3DPTEXTURECAPS_PROJECTED = @as(i32, 1024);
pub const D3DPTEXTURECAPS_CUBEMAP = @as(i32, 2048);
pub const D3DPTEXTURECAPS_COLORKEYBLEND = @as(i32, 4096);
pub const D3DPTFILTERCAPS_NEAREST = @as(i32, 1);
pub const D3DPTFILTERCAPS_LINEAR = @as(i32, 2);
pub const D3DPTFILTERCAPS_MIPNEAREST = @as(i32, 4);
pub const D3DPTFILTERCAPS_MIPLINEAR = @as(i32, 8);
pub const D3DPTFILTERCAPS_LINEARMIPNEAREST = @as(i32, 16);
pub const D3DPTFILTERCAPS_LINEARMIPLINEAR = @as(i32, 32);
pub const D3DPTFILTERCAPS_MINFPOINT = @as(i32, 256);
pub const D3DPTFILTERCAPS_MINFLINEAR = @as(i32, 512);
pub const D3DPTFILTERCAPS_MINFANISOTROPIC = @as(i32, 1024);
pub const D3DPTFILTERCAPS_MIPFPOINT = @as(i32, 65536);
pub const D3DPTFILTERCAPS_MIPFLINEAR = @as(i32, 131072);
pub const D3DPTFILTERCAPS_MAGFPOINT = @as(i32, 16777216);
pub const D3DPTFILTERCAPS_MAGFLINEAR = @as(i32, 33554432);
pub const D3DPTFILTERCAPS_MAGFANISOTROPIC = @as(i32, 67108864);
pub const D3DPTFILTERCAPS_MAGFAFLATCUBIC = @as(i32, 134217728);
pub const D3DPTFILTERCAPS_MAGFGAUSSIANCUBIC = @as(i32, 268435456);
pub const D3DPTBLENDCAPS_DECAL = @as(i32, 1);
pub const D3DPTBLENDCAPS_MODULATE = @as(i32, 2);
pub const D3DPTBLENDCAPS_DECALALPHA = @as(i32, 4);
pub const D3DPTBLENDCAPS_MODULATEALPHA = @as(i32, 8);
pub const D3DPTBLENDCAPS_DECALMASK = @as(i32, 16);
pub const D3DPTBLENDCAPS_MODULATEMASK = @as(i32, 32);
pub const D3DPTBLENDCAPS_COPY = @as(i32, 64);
pub const D3DPTBLENDCAPS_ADD = @as(i32, 128);
pub const D3DPTADDRESSCAPS_WRAP = @as(i32, 1);
pub const D3DPTADDRESSCAPS_MIRROR = @as(i32, 2);
pub const D3DPTADDRESSCAPS_CLAMP = @as(i32, 4);
pub const D3DPTADDRESSCAPS_BORDER = @as(i32, 8);
pub const D3DPTADDRESSCAPS_INDEPENDENTUV = @as(i32, 16);
pub const D3DSTENCILCAPS_KEEP = @as(i32, 1);
pub const D3DSTENCILCAPS_ZERO = @as(i32, 2);
pub const D3DSTENCILCAPS_REPLACE = @as(i32, 4);
pub const D3DSTENCILCAPS_INCRSAT = @as(i32, 8);
pub const D3DSTENCILCAPS_DECRSAT = @as(i32, 16);
pub const D3DSTENCILCAPS_INVERT = @as(i32, 32);
pub const D3DSTENCILCAPS_INCR = @as(i32, 64);
pub const D3DSTENCILCAPS_DECR = @as(i32, 128);
pub const D3DTEXOPCAPS_DISABLE = @as(i32, 1);
pub const D3DTEXOPCAPS_SELECTARG1 = @as(i32, 2);
pub const D3DTEXOPCAPS_SELECTARG2 = @as(i32, 4);
pub const D3DTEXOPCAPS_MODULATE = @as(i32, 8);
pub const D3DTEXOPCAPS_MODULATE2X = @as(i32, 16);
pub const D3DTEXOPCAPS_MODULATE4X = @as(i32, 32);
pub const D3DTEXOPCAPS_ADD = @as(i32, 64);
pub const D3DTEXOPCAPS_ADDSIGNED = @as(i32, 128);
pub const D3DTEXOPCAPS_ADDSIGNED2X = @as(i32, 256);
pub const D3DTEXOPCAPS_SUBTRACT = @as(i32, 512);
pub const D3DTEXOPCAPS_ADDSMOOTH = @as(i32, 1024);
pub const D3DTEXOPCAPS_BLENDDIFFUSEALPHA = @as(i32, 2048);
pub const D3DTEXOPCAPS_BLENDTEXTUREALPHA = @as(i32, 4096);
pub const D3DTEXOPCAPS_BLENDFACTORALPHA = @as(i32, 8192);
pub const D3DTEXOPCAPS_BLENDTEXTUREALPHAPM = @as(i32, 16384);
pub const D3DTEXOPCAPS_BLENDCURRENTALPHA = @as(i32, 32768);
pub const D3DTEXOPCAPS_PREMODULATE = @as(i32, 65536);
pub const D3DTEXOPCAPS_MODULATEALPHA_ADDCOLOR = @as(i32, 131072);
pub const D3DTEXOPCAPS_MODULATECOLOR_ADDALPHA = @as(i32, 262144);
pub const D3DTEXOPCAPS_MODULATEINVALPHA_ADDCOLOR = @as(i32, 524288);
pub const D3DTEXOPCAPS_MODULATEINVCOLOR_ADDALPHA = @as(i32, 1048576);
pub const D3DTEXOPCAPS_BUMPENVMAP = @as(i32, 2097152);
pub const D3DTEXOPCAPS_BUMPENVMAPLUMINANCE = @as(i32, 4194304);
pub const D3DTEXOPCAPS_DOTPRODUCT3 = @as(i32, 8388608);
pub const D3DFVFCAPS_TEXCOORDCOUNTMASK = @as(i32, 65535);
pub const D3DFVFCAPS_DONOTSTRIPELEMENTS = @as(i32, 524288);
pub const D3DDD_COLORMODEL = @as(i32, 1);
pub const D3DDD_DEVCAPS = @as(i32, 2);
pub const D3DDD_TRANSFORMCAPS = @as(i32, 4);
pub const D3DDD_LIGHTINGCAPS = @as(i32, 8);
pub const D3DDD_BCLIPPING = @as(i32, 16);
pub const D3DDD_LINECAPS = @as(i32, 32);
pub const D3DDD_TRICAPS = @as(i32, 64);
pub const D3DDD_DEVICERENDERBITDEPTH = @as(i32, 128);
pub const D3DDD_DEVICEZBUFFERBITDEPTH = @as(i32, 256);
pub const D3DDD_MAXBUFFERSIZE = @as(i32, 512);
pub const D3DDD_MAXVERTEXCOUNT = @as(i32, 1024);
pub const D3DDEVCAPS_FLOATTLVERTEX = @as(i32, 1);
pub const D3DDEVCAPS_SORTINCREASINGZ = @as(i32, 2);
pub const D3DDEVCAPS_SORTDECREASINGZ = @as(i32, 4);
pub const D3DDEVCAPS_SORTEXACT = @as(i32, 8);
pub const D3DDEVCAPS_EXECUTESYSTEMMEMORY = @as(i32, 16);
pub const D3DDEVCAPS_EXECUTEVIDEOMEMORY = @as(i32, 32);
pub const D3DDEVCAPS_TLVERTEXSYSTEMMEMORY = @as(i32, 64);
pub const D3DDEVCAPS_TLVERTEXVIDEOMEMORY = @as(i32, 128);
pub const D3DDEVCAPS_TEXTURESYSTEMMEMORY = @as(i32, 256);
pub const D3DDEVCAPS_TEXTUREVIDEOMEMORY = @as(i32, 512);
pub const D3DDEVCAPS_DRAWPRIMTLVERTEX = @as(i32, 1024);
pub const D3DDEVCAPS_CANRENDERAFTERFLIP = @as(i32, 2048);
pub const D3DDEVCAPS_TEXTURENONLOCALVIDMEM = @as(i32, 4096);
pub const D3DDEVCAPS_DRAWPRIMITIVES2 = @as(i32, 8192);
pub const D3DDEVCAPS_SEPARATETEXTUREMEMORIES = @as(i32, 16384);
pub const D3DDEVCAPS_DRAWPRIMITIVES2EX = @as(i32, 32768);
pub const D3DDEVCAPS_HWTRANSFORMANDLIGHT = @as(i32, 65536);
pub const D3DDEVCAPS_CANBLTSYSTONONLOCAL = @as(i32, 131072);
pub const D3DDEVCAPS_HWRASTERIZATION = @as(i32, 524288);
pub const D3DVTXPCAPS_TEXGEN = @as(i32, 1);
pub const D3DVTXPCAPS_MATERIALSOURCE7 = @as(i32, 2);
pub const D3DVTXPCAPS_VERTEXFOG = @as(i32, 4);
pub const D3DVTXPCAPS_DIRECTIONALLIGHTS = @as(i32, 8);
pub const D3DVTXPCAPS_POSITIONALLIGHTS = @as(i32, 16);
pub const D3DVTXPCAPS_LOCALVIEWER = @as(i32, 32);
pub const D3DFDS_COLORMODEL = @as(i32, 1);
pub const D3DFDS_GUID = @as(i32, 2);
pub const D3DFDS_HARDWARE = @as(i32, 4);
pub const D3DFDS_TRIANGLES = @as(i32, 8);
pub const D3DFDS_LINES = @as(i32, 16);
pub const D3DFDS_MISCCAPS = @as(i32, 32);
pub const D3DFDS_RASTERCAPS = @as(i32, 64);
pub const D3DFDS_ZCMPCAPS = @as(i32, 128);
pub const D3DFDS_ALPHACMPCAPS = @as(i32, 256);
pub const D3DFDS_SRCBLENDCAPS = @as(i32, 512);
pub const D3DFDS_DSTBLENDCAPS = @as(i32, 1024);
pub const D3DFDS_SHADECAPS = @as(i32, 2048);
pub const D3DFDS_TEXTURECAPS = @as(i32, 4096);
pub const D3DFDS_TEXTUREFILTERCAPS = @as(i32, 8192);
pub const D3DFDS_TEXTUREBLENDCAPS = @as(i32, 16384);
pub const D3DFDS_TEXTUREADDRESSCAPS = @as(i32, 32768);
pub const D3DDEB_BUFSIZE = @as(i32, 1);
pub const D3DDEB_CAPS = @as(i32, 2);
pub const D3DDEB_LPDATA = @as(i32, 4);
pub const D3DDEBCAPS_SYSTEMMEMORY = @as(i32, 1);
pub const D3DDEBCAPS_VIDEOMEMORY = @as(i32, 2);
pub const D3DMAXUSERCLIPPLANES = @as(u32, 32);
pub const D3DCLIPPLANE0 = @as(u32, 1);
pub const D3DCLIPPLANE1 = @as(u32, 2);
pub const D3DCLIPPLANE2 = @as(u32, 4);
pub const D3DCLIPPLANE3 = @as(u32, 8);
pub const D3DCLIPPLANE4 = @as(u32, 16);
pub const D3DCLIPPLANE5 = @as(u32, 32);
pub const D3DCLIP_LEFT = @as(i32, 1);
pub const D3DCLIP_RIGHT = @as(i32, 2);
pub const D3DCLIP_TOP = @as(i32, 4);
pub const D3DCLIP_BOTTOM = @as(i32, 8);
pub const D3DCLIP_FRONT = @as(i32, 16);
pub const D3DCLIP_BACK = @as(i32, 32);
pub const D3DCLIP_GEN0 = @as(i32, 64);
pub const D3DCLIP_GEN1 = @as(i32, 128);
pub const D3DCLIP_GEN2 = @as(i32, 256);
pub const D3DCLIP_GEN3 = @as(i32, 512);
pub const D3DCLIP_GEN4 = @as(i32, 1024);
pub const D3DCLIP_GEN5 = @as(i32, 2048);
pub const D3DSTATUS_CLIPUNIONLEFT = @as(i32, 1);
pub const D3DSTATUS_CLIPUNIONRIGHT = @as(i32, 2);
pub const D3DSTATUS_CLIPUNIONTOP = @as(i32, 4);
pub const D3DSTATUS_CLIPUNIONBOTTOM = @as(i32, 8);
pub const D3DSTATUS_CLIPUNIONFRONT = @as(i32, 16);
pub const D3DSTATUS_CLIPUNIONBACK = @as(i32, 32);
pub const D3DSTATUS_CLIPUNIONGEN0 = @as(i32, 64);
pub const D3DSTATUS_CLIPUNIONGEN1 = @as(i32, 128);
pub const D3DSTATUS_CLIPUNIONGEN2 = @as(i32, 256);
pub const D3DSTATUS_CLIPUNIONGEN3 = @as(i32, 512);
pub const D3DSTATUS_CLIPUNIONGEN4 = @as(i32, 1024);
pub const D3DSTATUS_CLIPUNIONGEN5 = @as(i32, 2048);
pub const D3DSTATUS_CLIPINTERSECTIONLEFT = @as(i32, 4096);
pub const D3DSTATUS_CLIPINTERSECTIONRIGHT = @as(i32, 8192);
pub const D3DSTATUS_CLIPINTERSECTIONTOP = @as(i32, 16384);
pub const D3DSTATUS_CLIPINTERSECTIONBOTTOM = @as(i32, 32768);
pub const D3DSTATUS_CLIPINTERSECTIONFRONT = @as(i32, 65536);
pub const D3DSTATUS_CLIPINTERSECTIONBACK = @as(i32, 131072);
pub const D3DSTATUS_CLIPINTERSECTIONGEN0 = @as(i32, 262144);
pub const D3DSTATUS_CLIPINTERSECTIONGEN1 = @as(i32, 524288);
pub const D3DSTATUS_CLIPINTERSECTIONGEN2 = @as(i32, 1048576);
pub const D3DSTATUS_CLIPINTERSECTIONGEN3 = @as(i32, 2097152);
pub const D3DSTATUS_CLIPINTERSECTIONGEN4 = @as(i32, 4194304);
pub const D3DSTATUS_CLIPINTERSECTIONGEN5 = @as(i32, 8388608);
pub const D3DSTATUS_ZNOTVISIBLE = @as(i32, 16777216);
pub const D3DTRANSFORM_CLIPPED = @as(i32, 1);
pub const D3DTRANSFORM_UNCLIPPED = @as(i32, 2);
pub const D3DLIGHT_ACTIVE = @as(u32, 1);
pub const D3DLIGHT_NO_SPECULAR = @as(u32, 2);
pub const D3DCOLOR_MONO = @as(u32, 1);
pub const D3DCOLOR_RGB = @as(u32, 2);
pub const D3DCLEAR_TARGET = @as(i32, 1);
pub const D3DCLEAR_ZBUFFER = @as(i32, 2);
pub const D3DCLEAR_STENCIL = @as(i32, 4);
pub const D3DSTATE_OVERRIDE_BIAS = @as(u32, 256);
pub const D3DRENDERSTATE_WRAPBIAS = @as(u32, 128);
pub const D3DWRAP_U = @as(i32, 1);
pub const D3DWRAP_V = @as(i32, 2);
pub const D3DWRAPCOORD_0 = @as(i32, 1);
pub const D3DWRAPCOORD_1 = @as(i32, 2);
pub const D3DWRAPCOORD_2 = @as(i32, 4);
pub const D3DWRAPCOORD_3 = @as(i32, 8);
pub const D3DPROCESSVERTICES_TRANSFORMLIGHT = @as(i32, 0);
pub const D3DPROCESSVERTICES_TRANSFORM = @as(i32, 1);
pub const D3DPROCESSVERTICES_COPY = @as(i32, 2);
pub const D3DPROCESSVERTICES_OPMASK = @as(i32, 7);
pub const D3DPROCESSVERTICES_UPDATEEXTENTS = @as(i32, 8);
pub const D3DPROCESSVERTICES_NOCOLOR = @as(i32, 16);
pub const D3DTSS_TCI_PASSTHRU = @as(u32, 0);
pub const D3DTSS_TCI_CAMERASPACENORMAL = @as(u32, 65536);
pub const D3DTSS_TCI_CAMERASPACEPOSITION = @as(u32, 131072);
pub const D3DTSS_TCI_CAMERASPACEREFLECTIONVECTOR = @as(u32, 196608);
pub const D3DTA_SELECTMASK = @as(u32, 15);
pub const D3DTA_DIFFUSE = @as(u32, 0);
pub const D3DTA_CURRENT = @as(u32, 1);
pub const D3DTA_TEXTURE = @as(u32, 2);
pub const D3DTA_TFACTOR = @as(u32, 3);
pub const D3DTA_SPECULAR = @as(u32, 4);
pub const D3DTA_COMPLEMENT = @as(u32, 16);
pub const D3DTA_ALPHAREPLICATE = @as(u32, 32);
pub const D3DTRIFLAG_START = @as(i32, 0);
pub const D3DTRIFLAG_ODD = @as(i32, 30);
pub const D3DTRIFLAG_EVEN = @as(i32, 31);
pub const D3DTRIFLAG_EDGEENABLE1 = @as(i32, 256);
pub const D3DTRIFLAG_EDGEENABLE2 = @as(i32, 512);
pub const D3DTRIFLAG_EDGEENABLE3 = @as(i32, 1024);
pub const D3DSETSTATUS_STATUS = @as(i32, 1);
pub const D3DSETSTATUS_EXTENTS = @as(i32, 2);
pub const D3DCLIPSTATUS_STATUS = @as(i32, 1);
pub const D3DCLIPSTATUS_EXTENTS2 = @as(i32, 2);
pub const D3DCLIPSTATUS_EXTENTS3 = @as(i32, 4);
pub const D3DEXECUTE_CLIPPED = @as(i32, 1);
pub const D3DEXECUTE_UNCLIPPED = @as(i32, 2);
pub const D3DPAL_FREE = @as(u32, 0);
pub const D3DPAL_READONLY = @as(u32, 64);
pub const D3DPAL_RESERVED = @as(u32, 128);
pub const D3DVBCAPS_SYSTEMMEMORY = @as(i32, 2048);
pub const D3DVBCAPS_WRITEONLY = @as(i32, 65536);
pub const D3DVBCAPS_OPTIMIZED = @as(i32, -2147483648);
pub const D3DVBCAPS_DONOTCLIP = @as(i32, 1);
pub const D3DVOP_LIGHT = @as(u32, 1024);
pub const D3DVOP_TRANSFORM = @as(u32, 1);
pub const D3DVOP_CLIP = @as(u32, 4);
pub const D3DVOP_EXTENTS = @as(u32, 8);
pub const D3DPV_DONOTCOPYDATA = @as(u32, 1);
pub const D3DFVF_RESERVED0 = @as(u32, 1);
pub const D3DFVF_POSITION_MASK = @as(u32, 14);
pub const D3DFVF_XYZ = @as(u32, 2);
pub const D3DFVF_XYZRHW = @as(u32, 4);
pub const D3DFVF_XYZB1 = @as(u32, 6);
pub const D3DFVF_XYZB2 = @as(u32, 8);
pub const D3DFVF_XYZB3 = @as(u32, 10);
pub const D3DFVF_XYZB4 = @as(u32, 12);
pub const D3DFVF_XYZB5 = @as(u32, 14);
pub const D3DFVF_NORMAL = @as(u32, 16);
pub const D3DFVF_RESERVED1 = @as(u32, 32);
pub const D3DFVF_DIFFUSE = @as(u32, 64);
pub const D3DFVF_SPECULAR = @as(u32, 128);
pub const D3DFVF_TEXCOUNT_MASK = @as(u32, 3840);
pub const D3DFVF_TEXCOUNT_SHIFT = @as(u32, 8);
pub const D3DFVF_TEX0 = @as(u32, 0);
pub const D3DFVF_TEX1 = @as(u32, 256);
pub const D3DFVF_TEX2 = @as(u32, 512);
pub const D3DFVF_TEX3 = @as(u32, 768);
pub const D3DFVF_TEX4 = @as(u32, 1024);
pub const D3DFVF_TEX5 = @as(u32, 1280);
pub const D3DFVF_TEX6 = @as(u32, 1536);
pub const D3DFVF_TEX7 = @as(u32, 1792);
pub const D3DFVF_TEX8 = @as(u32, 2048);
pub const D3DFVF_RESERVED2 = @as(u32, 61440);
pub const D3DDP_MAXTEXCOORD = @as(u32, 8);
pub const D3DVIS_INSIDE_FRUSTUM = @as(u32, 0);
pub const D3DVIS_INTERSECT_FRUSTUM = @as(u32, 1);
pub const D3DVIS_OUTSIDE_FRUSTUM = @as(u32, 2);
pub const D3DVIS_INSIDE_LEFT = @as(u32, 0);
pub const D3DVIS_INTERSECT_LEFT = @as(u32, 4);
pub const D3DVIS_OUTSIDE_LEFT = @as(u32, 8);
pub const D3DVIS_INSIDE_RIGHT = @as(u32, 0);
pub const D3DVIS_INTERSECT_RIGHT = @as(u32, 16);
pub const D3DVIS_OUTSIDE_RIGHT = @as(u32, 32);
pub const D3DVIS_INSIDE_TOP = @as(u32, 0);
pub const D3DVIS_INTERSECT_TOP = @as(u32, 64);
pub const D3DVIS_OUTSIDE_TOP = @as(u32, 128);
pub const D3DVIS_INSIDE_BOTTOM = @as(u32, 0);
pub const D3DVIS_INTERSECT_BOTTOM = @as(u32, 256);
pub const D3DVIS_OUTSIDE_BOTTOM = @as(u32, 512);
pub const D3DVIS_INSIDE_NEAR = @as(u32, 0);
pub const D3DVIS_INTERSECT_NEAR = @as(u32, 1024);
pub const D3DVIS_OUTSIDE_NEAR = @as(u32, 2048);
pub const D3DVIS_INSIDE_FAR = @as(u32, 0);
pub const D3DVIS_INTERSECT_FAR = @as(u32, 4096);
pub const D3DVIS_OUTSIDE_FAR = @as(u32, 8192);
pub const D3DVIS_MASK_FRUSTUM = @as(u32, 3);
pub const D3DVIS_MASK_LEFT = @as(u32, 12);
pub const D3DVIS_MASK_RIGHT = @as(u32, 48);
pub const D3DVIS_MASK_TOP = @as(u32, 192);
pub const D3DVIS_MASK_BOTTOM = @as(u32, 768);
pub const D3DVIS_MASK_NEAR = @as(u32, 3072);
pub const D3DVIS_MASK_FAR = @as(u32, 12288);
pub const D3DDEVINFOID_TEXTUREMANAGER = @as(u32, 1);
pub const D3DDEVINFOID_D3DTEXTUREMANAGER = @as(u32, 2);
pub const D3DDEVINFOID_TEXTURING = @as(u32, 3);
pub const D3DFVF_TEXTUREFORMAT2 = @as(u32, 0);
pub const D3DFVF_TEXTUREFORMAT1 = @as(u32, 3);
pub const D3DFVF_TEXTUREFORMAT3 = @as(u32, 1);
pub const D3DFVF_TEXTUREFORMAT4 = @as(u32, 2);
pub const ROTFLAGS_REGISTRATIONKEEPSALIVE = @as(u32, 1);
pub const ROTFLAGS_ALLOWANYCLIENT = @as(u32, 2);
pub const ROT_COMPARE_MAX = @as(u32, 2048);
pub const WDT_INPROC_CALL = @as(u32, 1215587415);
pub const WDT_REMOTE_CALL = @as(u32, 1383359575);
pub const WDT_INPROC64_CALL = @as(u32, 1349805143);
pub const PROCESS_HEAP_REGION = @as(u32, 1);
pub const PROCESS_HEAP_UNCOMMITTED_RANGE = @as(u32, 2);
pub const PROCESS_HEAP_ENTRY_BUSY = @as(u32, 4);
pub const PROCESS_HEAP_SEG_ALLOC = @as(u32, 8);
pub const PROCESS_HEAP_ENTRY_MOVEABLE = @as(u32, 16);
pub const PROCESS_HEAP_ENTRY_DDESHARE = @as(u32, 32);
pub const LMEM_NOCOMPACT = @as(u32, 16);
pub const LMEM_NODISCARD = @as(u32, 32);
pub const LMEM_MODIFY = @as(u32, 128);
pub const LMEM_DISCARDABLE = @as(u32, 3840);
pub const LMEM_VALID_FLAGS = @as(u32, 3954);
pub const LMEM_INVALID_HANDLE = @as(u32, 32768);
pub const LMEM_DISCARDED = @as(u32, 16384);
pub const LMEM_LOCKCOUNT = @as(u32, 255);
pub const NUMA_NO_PREFERRED_NODE = @as(u32, 4294967295);
pub const REDBOOK_DIGITAL_AUDIO_EXTRACTION_INFO_VERSION = @as(u32, 1);
pub const FACILITY_MCA_ERROR_CODE = @as(u32, 5);
pub const IO_ERR_INSUFFICIENT_RESOURCES = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479678));
pub const IO_ERR_DRIVER_ERROR = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479676));
pub const IO_ERR_SEEK_ERROR = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479674));
pub const IO_ERR_BAD_BLOCK = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479673));
pub const IO_ERR_TIMEOUT = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479671));
pub const IO_ERR_CONTROLLER_ERROR = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479669));
pub const IO_ERR_NOT_READY = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479665));
pub const IO_ERR_INVALID_REQUEST = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479664));
pub const IO_ERR_RESET = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479661));
pub const IO_ERR_BAD_FIRMWARE = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479655));
pub const IO_WRN_BAD_FIRMWARE = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147221478));
pub const IO_WRITE_CACHE_ENABLED = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147221472));
pub const IO_RECOVERED_VIA_ECC = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147221471));
pub const IO_WRITE_CACHE_DISABLED = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147221470));
pub const IO_WARNING_PAGING_FAILURE = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147221453));
pub const IO_WRN_FAILURE_PREDICTED = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147221452));
pub const IO_WARNING_ALLOCATION_FAILED = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147221448));
pub const IO_WARNING_DUPLICATE_SIGNATURE = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147221446));
pub const IO_WARNING_DUPLICATE_PATH = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147221445));
pub const IO_WARNING_WRITE_FUA_PROBLEM = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147221372));
pub const IO_WARNING_VOLUME_LOST_DISK_EXTENT = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147221362));
pub const IO_WARNING_DEVICE_HAS_INTERNAL_DUMP = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147221361));
pub const IO_WARNING_SOFT_THRESHOLD_REACHED = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147221360));
pub const IO_WARNING_SOFT_THRESHOLD_REACHED_EX = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147221359));
pub const IO_WARNING_SOFT_THRESHOLD_REACHED_EX_LUN_LUN = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147221358));
pub const IO_WARNING_SOFT_THRESHOLD_REACHED_EX_LUN_POOL = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147221357));
pub const IO_WARNING_SOFT_THRESHOLD_REACHED_EX_POOL_LUN = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147221356));
pub const IO_WARNING_SOFT_THRESHOLD_REACHED_EX_POOL_POOL = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147221355));
pub const IO_ERROR_DISK_RESOURCES_EXHAUSTED = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479530));
pub const IO_WARNING_DISK_CAPACITY_CHANGED = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147221353));
pub const IO_WARNING_DISK_PROVISIONING_TYPE_CHANGED = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147221352));
pub const IO_WARNING_IO_OPERATION_RETRIED = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147221351));
pub const IO_ERROR_IO_HARDWARE_ERROR = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479526));
pub const IO_WARNING_COMPLETION_TIME = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147221349));
pub const IO_WARNING_DISK_SURPRISE_REMOVED = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147221347));
pub const IO_WARNING_REPEATED_DISK_GUID = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147221346));
pub const IO_WARNING_DISK_FIRMWARE_UPDATED = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, 1074004127));
pub const IO_ERR_RETRY_SUCCEEDED = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, 262145));
pub const IO_DUMP_CREATION_SUCCESS = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, 262306));
pub const IO_FILE_QUOTA_THRESHOLD = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, 1074004004));
pub const IO_FILE_QUOTA_LIMIT = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, 1074004005));
pub const IO_FILE_QUOTA_STARTED = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, 1074004006));
pub const IO_FILE_QUOTA_SUCCEEDED = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, 1074004007));
pub const IO_INFO_THROTTLE_COMPLETE = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, 1074004087));
pub const IO_CDROM_EXCLUSIVE_LOCK = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, 1074004101));
pub const IO_WARNING_ADAPTER_FIRMWARE_UPDATED = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, 1074004128));
pub const IO_FILE_QUOTA_FAILED = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147221464));
pub const IO_LOST_DELAYED_WRITE = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147221454));
pub const IO_WARNING_INTERRUPT_STILL_PENDING = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147221451));
pub const IO_DRIVER_CANCEL_TIMEOUT = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147221450));
pub const IO_WARNING_LOG_FLUSH_FAILED = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147221447));
pub const IO_WARNING_BUS_RESET = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147221386));
pub const IO_WARNING_RESET = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147221375));
pub const IO_LOST_DELAYED_WRITE_NETWORK_DISCONNECTED = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147221365));
pub const IO_LOST_DELAYED_WRITE_NETWORK_SERVER_ERROR = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147221364));
pub const IO_LOST_DELAYED_WRITE_NETWORK_LOCAL_DISK_ERROR = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147221363));
pub const IO_WARNING_DUMP_DISABLED_DEVICE_GONE = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147221348));
pub const IO_ERR_CONFIGURATION_ERROR = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479677));
pub const IO_ERR_PARITY = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479675));
pub const IO_ERR_OVERRUN_ERROR = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479672));
pub const IO_ERR_SEQUENCE = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479670));
pub const IO_ERR_INTERNAL_ERROR = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479668));
pub const IO_ERR_INCORRECT_IRQL = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479667));
pub const IO_ERR_INVALID_IOBASE = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479666));
pub const IO_ERR_VERSION = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479663));
pub const IO_ERR_LAYERED_FAILURE = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479662));
pub const IO_ERR_PROTOCOL = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479660));
pub const IO_ERR_MEMORY_CONFLICT_DETECTED = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479659));
pub const IO_ERR_PORT_CONFLICT_DETECTED = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479658));
pub const IO_ERR_DMA_CONFLICT_DETECTED = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479657));
pub const IO_ERR_IRQ_CONFLICT_DETECTED = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479656));
pub const IO_ERR_DMA_RESOURCE_CONFLICT = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479653));
pub const IO_ERR_INTERRUPT_RESOURCE_CONFLICT = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479652));
pub const IO_ERR_MEMORY_RESOURCE_CONFLICT = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479651));
pub const IO_ERR_PORT_RESOURCE_CONFLICT = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479650));
pub const IO_BAD_BLOCK_WITH_NAME = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479649));
pub const IO_FILE_SYSTEM_CORRUPT = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479639));
pub const IO_FILE_QUOTA_CORRUPT = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479638));
pub const IO_SYSTEM_SLEEP_FAILED = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479637));
pub const IO_DUMP_POINTER_FAILURE = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479636));
pub const IO_DUMP_DRIVER_LOAD_FAILURE = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479635));
pub const IO_DUMP_INITIALIZATION_FAILURE = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479634));
pub const IO_DUMP_DUMPFILE_CONFLICT = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479633));
pub const IO_DUMP_DIRECT_CONFIG_FAILED = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479632));
pub const IO_DUMP_PAGE_CONFIG_FAILED = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479631));
pub const IO_FILE_SYSTEM_CORRUPT_WITH_NAME = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479625));
pub const IO_ERR_THREAD_STUCK_IN_DEVICE_DRIVER = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479572));
pub const IO_ERR_PORT_TIMEOUT = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479563));
pub const IO_ERROR_DUMP_CREATION_ERROR = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479519));
pub const IO_DUMP_CALLBACK_EXCEPTION = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073479517));
pub const MCA_INFO_CPU_THERMAL_THROTTLING_REMOVED = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, 1074069616));
pub const MCA_INFO_NO_MORE_CORRECTED_ERROR_LOGS = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, 1074069619));
pub const MCA_INFO_MEMORY_PAGE_MARKED_BAD = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, 1074069620));
pub const MCA_WARNING_CACHE = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147155908));
pub const MCA_WARNING_TLB = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147155906));
pub const MCA_WARNING_CPU_BUS = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147155904));
pub const MCA_WARNING_REGISTER_FILE = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147155902));
pub const MCA_WARNING_MAS = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147155900));
pub const MCA_WARNING_MEM_UNKNOWN = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147155898));
pub const MCA_WARNING_MEM_1_2 = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147155896));
pub const MCA_WARNING_MEM_1_2_5 = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147155894));
pub const MCA_WARNING_MEM_1_2_5_4 = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147155892));
pub const MCA_WARNING_SYSTEM_EVENT = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147155890));
pub const MCA_WARNING_PCI_BUS_PARITY = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147155888));
pub const MCA_WARNING_PCI_BUS_PARITY_NO_INFO = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147155886));
pub const MCA_WARNING_PCI_BUS_SERR = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147155884));
pub const MCA_WARNING_PCI_BUS_SERR_NO_INFO = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147155882));
pub const MCA_WARNING_PCI_BUS_MASTER_ABORT = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147155880));
pub const MCA_WARNING_PCI_BUS_MASTER_ABORT_NO_INFO = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147155878));
pub const MCA_WARNING_PCI_BUS_TIMEOUT = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147155876));
pub const MCA_WARNING_PCI_BUS_TIMEOUT_NO_INFO = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147155874));
pub const MCA_WARNING_PCI_BUS_UNKNOWN = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147155872));
pub const MCA_WARNING_PCI_DEVICE = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147155870));
pub const MCA_WARNING_SMBIOS = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147155868));
pub const MCA_WARNING_PLATFORM_SPECIFIC = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147155866));
pub const MCA_WARNING_UNKNOWN = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147155864));
pub const MCA_WARNING_UNKNOWN_NO_CPU = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147155862));
pub const MCA_WARNING_CMC_THRESHOLD_EXCEEDED = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147155859));
pub const MCA_WARNING_CPE_THRESHOLD_EXCEEDED = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147155858));
pub const MCA_WARNING_CPU_THERMAL_THROTTLED = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147155857));
pub const MCA_WARNING_CPU = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2147155855));
pub const MCA_ERROR_CACHE = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073414083));
pub const MCA_ERROR_TLB = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073414081));
pub const MCA_ERROR_CPU_BUS = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073414079));
pub const MCA_ERROR_REGISTER_FILE = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073414077));
pub const MCA_ERROR_MAS = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073414075));
pub const MCA_ERROR_MEM_UNKNOWN = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073414073));
pub const MCA_ERROR_MEM_1_2 = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073414071));
pub const MCA_ERROR_MEM_1_2_5 = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073414069));
pub const MCA_ERROR_MEM_1_2_5_4 = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073414067));
pub const MCA_ERROR_SYSTEM_EVENT = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073414065));
pub const MCA_ERROR_PCI_BUS_PARITY = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073414063));
pub const MCA_ERROR_PCI_BUS_PARITY_NO_INFO = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073414061));
pub const MCA_ERROR_PCI_BUS_SERR = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073414059));
pub const MCA_ERROR_PCI_BUS_SERR_NO_INFO = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073414057));
pub const MCA_ERROR_PCI_BUS_MASTER_ABORT = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073414055));
pub const MCA_ERROR_PCI_BUS_MASTER_ABORT_NO_INFO = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073414053));
pub const MCA_ERROR_PCI_BUS_TIMEOUT = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073414051));
pub const MCA_ERROR_PCI_BUS_TIMEOUT_NO_INFO = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073414049));
pub const MCA_ERROR_PCI_BUS_UNKNOWN = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073414047));
pub const MCA_ERROR_PCI_DEVICE = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073414045));
pub const MCA_ERROR_SMBIOS = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073414043));
pub const MCA_ERROR_PLATFORM_SPECIFIC = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073414041));
pub const MCA_ERROR_UNKNOWN = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073414039));
pub const MCA_ERROR_UNKNOWN_NO_CPU = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073414037));
pub const MCA_ERROR_CPU = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073414030));
pub const MCA_MEMORYHIERARCHY_ERROR = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073414024));
pub const MCA_TLB_ERROR = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073414023));
pub const MCA_BUS_ERROR = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073414022));
pub const MCA_BUS_TIMEOUT_ERROR = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073414021));
pub const MCA_INTERNALTIMER_ERROR = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073414020));
pub const MCA_MICROCODE_ROM_PARITY_ERROR = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073414018));
pub const MCA_EXTERNAL_ERROR = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073414017));
pub const MCA_FRC_ERROR = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -1073414016));
pub const VOLMGR_KSR_ERROR = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2143813631));
pub const VOLMGR_KSR_READ_ERROR = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2143813630));
pub const VOLMGR_KSR_BYPASS = @import("../zig.zig").typedConst(NTSTATUS, @as(i32, -2143813629));
pub const GUID_DEVINTERFACE_DMR = Guid.initString("d0875fb4-2196-4c7a-a63d-e416addd60a1");
pub const GUID_DEVINTERFACE_DMP = Guid.initString("25b4e268-2a05-496e-803b-266837fbda4b");
pub const GUID_DEVINTERFACE_DMS = Guid.initString("c96037ae-a558-4470-b432-115a31b85553");

//--------------------------------------------------------------------------------
// Section: Types (261)
//--------------------------------------------------------------------------------
pub const ALERT_SYSTEM_SEV = enum(u32) {
    INFORMATIONAL = 1,
    WARNING = 2,
    ERROR = 3,
    QUERY = 4,
    CRITICAL = 5,
};
pub const ALERT_SYSTEM_INFORMATIONAL = ALERT_SYSTEM_SEV.INFORMATIONAL;
pub const ALERT_SYSTEM_WARNING = ALERT_SYSTEM_SEV.WARNING;
pub const ALERT_SYSTEM_ERROR = ALERT_SYSTEM_SEV.ERROR;
pub const ALERT_SYSTEM_QUERY = ALERT_SYSTEM_SEV.QUERY;
pub const ALERT_SYSTEM_CRITICAL = ALERT_SYSTEM_SEV.CRITICAL;

pub const APPCOMMAND_ID = enum(u32) {
    BROWSER_BACKWARD = 1,
    BROWSER_FORWARD = 2,
    BROWSER_REFRESH = 3,
    BROWSER_STOP = 4,
    BROWSER_SEARCH = 5,
    BROWSER_FAVORITES = 6,
    BROWSER_HOME = 7,
    VOLUME_MUTE = 8,
    VOLUME_DOWN = 9,
    VOLUME_UP = 10,
    MEDIA_NEXTTRACK = 11,
    MEDIA_PREVIOUSTRACK = 12,
    MEDIA_STOP = 13,
    MEDIA_PLAY_PAUSE = 14,
    LAUNCH_MAIL = 15,
    LAUNCH_MEDIA_SELECT = 16,
    LAUNCH_APP1 = 17,
    LAUNCH_APP2 = 18,
    BASS_DOWN = 19,
    BASS_BOOST = 20,
    BASS_UP = 21,
    TREBLE_DOWN = 22,
    TREBLE_UP = 23,
    MICROPHONE_VOLUME_MUTE = 24,
    MICROPHONE_VOLUME_DOWN = 25,
    MICROPHONE_VOLUME_UP = 26,
    HELP = 27,
    FIND = 28,
    NEW = 29,
    OPEN = 30,
    CLOSE = 31,
    SAVE = 32,
    PRINT = 33,
    UNDO = 34,
    REDO = 35,
    COPY = 36,
    CUT = 37,
    PASTE = 38,
    REPLY_TO_MAIL = 39,
    FORWARD_MAIL = 40,
    SEND_MAIL = 41,
    SPELL_CHECK = 42,
    DICTATE_OR_COMMAND_CONTROL_TOGGLE = 43,
    MIC_ON_OFF_TOGGLE = 44,
    CORRECTION_LIST = 45,
    MEDIA_PLAY = 46,
    MEDIA_PAUSE = 47,
    MEDIA_RECORD = 48,
    MEDIA_FAST_FORWARD = 49,
    MEDIA_REWIND = 50,
    MEDIA_CHANNEL_UP = 51,
    MEDIA_CHANNEL_DOWN = 52,
    DELETE = 53,
    DWM_FLIP3D = 54,
};
pub const APPCOMMAND_BROWSER_BACKWARD = APPCOMMAND_ID.BROWSER_BACKWARD;
pub const APPCOMMAND_BROWSER_FORWARD = APPCOMMAND_ID.BROWSER_FORWARD;
pub const APPCOMMAND_BROWSER_REFRESH = APPCOMMAND_ID.BROWSER_REFRESH;
pub const APPCOMMAND_BROWSER_STOP = APPCOMMAND_ID.BROWSER_STOP;
pub const APPCOMMAND_BROWSER_SEARCH = APPCOMMAND_ID.BROWSER_SEARCH;
pub const APPCOMMAND_BROWSER_FAVORITES = APPCOMMAND_ID.BROWSER_FAVORITES;
pub const APPCOMMAND_BROWSER_HOME = APPCOMMAND_ID.BROWSER_HOME;
pub const APPCOMMAND_VOLUME_MUTE = APPCOMMAND_ID.VOLUME_MUTE;
pub const APPCOMMAND_VOLUME_DOWN = APPCOMMAND_ID.VOLUME_DOWN;
pub const APPCOMMAND_VOLUME_UP = APPCOMMAND_ID.VOLUME_UP;
pub const APPCOMMAND_MEDIA_NEXTTRACK = APPCOMMAND_ID.MEDIA_NEXTTRACK;
pub const APPCOMMAND_MEDIA_PREVIOUSTRACK = APPCOMMAND_ID.MEDIA_PREVIOUSTRACK;
pub const APPCOMMAND_MEDIA_STOP = APPCOMMAND_ID.MEDIA_STOP;
pub const APPCOMMAND_MEDIA_PLAY_PAUSE = APPCOMMAND_ID.MEDIA_PLAY_PAUSE;
pub const APPCOMMAND_LAUNCH_MAIL = APPCOMMAND_ID.LAUNCH_MAIL;
pub const APPCOMMAND_LAUNCH_MEDIA_SELECT = APPCOMMAND_ID.LAUNCH_MEDIA_SELECT;
pub const APPCOMMAND_LAUNCH_APP1 = APPCOMMAND_ID.LAUNCH_APP1;
pub const APPCOMMAND_LAUNCH_APP2 = APPCOMMAND_ID.LAUNCH_APP2;
pub const APPCOMMAND_BASS_DOWN = APPCOMMAND_ID.BASS_DOWN;
pub const APPCOMMAND_BASS_BOOST = APPCOMMAND_ID.BASS_BOOST;
pub const APPCOMMAND_BASS_UP = APPCOMMAND_ID.BASS_UP;
pub const APPCOMMAND_TREBLE_DOWN = APPCOMMAND_ID.TREBLE_DOWN;
pub const APPCOMMAND_TREBLE_UP = APPCOMMAND_ID.TREBLE_UP;
pub const APPCOMMAND_MICROPHONE_VOLUME_MUTE = APPCOMMAND_ID.MICROPHONE_VOLUME_MUTE;
pub const APPCOMMAND_MICROPHONE_VOLUME_DOWN = APPCOMMAND_ID.MICROPHONE_VOLUME_DOWN;
pub const APPCOMMAND_MICROPHONE_VOLUME_UP = APPCOMMAND_ID.MICROPHONE_VOLUME_UP;
pub const APPCOMMAND_HELP = APPCOMMAND_ID.HELP;
pub const APPCOMMAND_FIND = APPCOMMAND_ID.FIND;
pub const APPCOMMAND_NEW = APPCOMMAND_ID.NEW;
pub const APPCOMMAND_OPEN = APPCOMMAND_ID.OPEN;
pub const APPCOMMAND_CLOSE = APPCOMMAND_ID.CLOSE;
pub const APPCOMMAND_SAVE = APPCOMMAND_ID.SAVE;
pub const APPCOMMAND_PRINT = APPCOMMAND_ID.PRINT;
pub const APPCOMMAND_UNDO = APPCOMMAND_ID.UNDO;
pub const APPCOMMAND_REDO = APPCOMMAND_ID.REDO;
pub const APPCOMMAND_COPY = APPCOMMAND_ID.COPY;
pub const APPCOMMAND_CUT = APPCOMMAND_ID.CUT;
pub const APPCOMMAND_PASTE = APPCOMMAND_ID.PASTE;
pub const APPCOMMAND_REPLY_TO_MAIL = APPCOMMAND_ID.REPLY_TO_MAIL;
pub const APPCOMMAND_FORWARD_MAIL = APPCOMMAND_ID.FORWARD_MAIL;
pub const APPCOMMAND_SEND_MAIL = APPCOMMAND_ID.SEND_MAIL;
pub const APPCOMMAND_SPELL_CHECK = APPCOMMAND_ID.SPELL_CHECK;
pub const APPCOMMAND_DICTATE_OR_COMMAND_CONTROL_TOGGLE = APPCOMMAND_ID.DICTATE_OR_COMMAND_CONTROL_TOGGLE;
pub const APPCOMMAND_MIC_ON_OFF_TOGGLE = APPCOMMAND_ID.MIC_ON_OFF_TOGGLE;
pub const APPCOMMAND_CORRECTION_LIST = APPCOMMAND_ID.CORRECTION_LIST;
pub const APPCOMMAND_MEDIA_PLAY = APPCOMMAND_ID.MEDIA_PLAY;
pub const APPCOMMAND_MEDIA_PAUSE = APPCOMMAND_ID.MEDIA_PAUSE;
pub const APPCOMMAND_MEDIA_RECORD = APPCOMMAND_ID.MEDIA_RECORD;
pub const APPCOMMAND_MEDIA_FAST_FORWARD = APPCOMMAND_ID.MEDIA_FAST_FORWARD;
pub const APPCOMMAND_MEDIA_REWIND = APPCOMMAND_ID.MEDIA_REWIND;
pub const APPCOMMAND_MEDIA_CHANNEL_UP = APPCOMMAND_ID.MEDIA_CHANNEL_UP;
pub const APPCOMMAND_MEDIA_CHANNEL_DOWN = APPCOMMAND_ID.MEDIA_CHANNEL_DOWN;
pub const APPCOMMAND_DELETE = APPCOMMAND_ID.DELETE;
pub const APPCOMMAND_DWM_FLIP3D = APPCOMMAND_ID.DWM_FLIP3D;

pub const ATF_FLAGS = enum(u32) {
    TIMEOUTON = 1,
    ONOFFFEEDBACK = 2,
    _,
    pub fn initFlags(o: struct {
        TIMEOUTON: u1 = 0,
        ONOFFFEEDBACK: u1 = 0,
    }) ATF_FLAGS {
        return @as(ATF_FLAGS, @enumFromInt((if (o.TIMEOUTON == 1) @intFromEnum(ATF_FLAGS.TIMEOUTON) else 0) | (if (o.ONOFFFEEDBACK == 1) @intFromEnum(ATF_FLAGS.ONOFFFEEDBACK) else 0)));
    }
};
pub const ATF_TIMEOUTON = ATF_FLAGS.TIMEOUTON;
pub const ATF_ONOFFFEEDBACK = ATF_FLAGS.ONOFFFEEDBACK;

pub const CHOOSECOLOR_FLAGS = enum(u32) {
    RGBINIT = 1,
    FULLOPEN = 2,
    PREVENTFULLOPEN = 4,
    SHOWHELP = 8,
    ENABLEHOOK = 16,
    ENABLETEMPLATE = 32,
    ENABLETEMPLATEHANDLE = 64,
    SOLIDCOLOR = 128,
    ANYCOLOR = 256,
    _,
    pub fn initFlags(o: struct {
        RGBINIT: u1 = 0,
        FULLOPEN: u1 = 0,
        PREVENTFULLOPEN: u1 = 0,
        SHOWHELP: u1 = 0,
        ENABLEHOOK: u1 = 0,
        ENABLETEMPLATE: u1 = 0,
        ENABLETEMPLATEHANDLE: u1 = 0,
        SOLIDCOLOR: u1 = 0,
        ANYCOLOR: u1 = 0,
    }) CHOOSECOLOR_FLAGS {
        return @as(CHOOSECOLOR_FLAGS, @enumFromInt((if (o.RGBINIT == 1) @intFromEnum(CHOOSECOLOR_FLAGS.RGBINIT) else 0) | (if (o.FULLOPEN == 1) @intFromEnum(CHOOSECOLOR_FLAGS.FULLOPEN) else 0) | (if (o.PREVENTFULLOPEN == 1) @intFromEnum(CHOOSECOLOR_FLAGS.PREVENTFULLOPEN) else 0) | (if (o.SHOWHELP == 1) @intFromEnum(CHOOSECOLOR_FLAGS.SHOWHELP) else 0) | (if (o.ENABLEHOOK == 1) @intFromEnum(CHOOSECOLOR_FLAGS.ENABLEHOOK) else 0) | (if (o.ENABLETEMPLATE == 1) @intFromEnum(CHOOSECOLOR_FLAGS.ENABLETEMPLATE) else 0) | (if (o.ENABLETEMPLATEHANDLE == 1) @intFromEnum(CHOOSECOLOR_FLAGS.ENABLETEMPLATEHANDLE) else 0) | (if (o.SOLIDCOLOR == 1) @intFromEnum(CHOOSECOLOR_FLAGS.SOLIDCOLOR) else 0) | (if (o.ANYCOLOR == 1) @intFromEnum(CHOOSECOLOR_FLAGS.ANYCOLOR) else 0)));
    }
};
pub const CC_RGBINIT = CHOOSECOLOR_FLAGS.RGBINIT;
pub const CC_FULLOPEN = CHOOSECOLOR_FLAGS.FULLOPEN;
pub const CC_PREVENTFULLOPEN = CHOOSECOLOR_FLAGS.PREVENTFULLOPEN;
pub const CC_SHOWHELP = CHOOSECOLOR_FLAGS.SHOWHELP;
pub const CC_ENABLEHOOK = CHOOSECOLOR_FLAGS.ENABLEHOOK;
pub const CC_ENABLETEMPLATE = CHOOSECOLOR_FLAGS.ENABLETEMPLATE;
pub const CC_ENABLETEMPLATEHANDLE = CHOOSECOLOR_FLAGS.ENABLETEMPLATEHANDLE;
pub const CC_SOLIDCOLOR = CHOOSECOLOR_FLAGS.SOLIDCOLOR;
pub const CC_ANYCOLOR = CHOOSECOLOR_FLAGS.ANYCOLOR;

pub const CLIPBOARD_FORMATS = enum(u32) {
    TEXT = 1,
    BITMAP = 2,
    METAFILEPICT = 3,
    SYLK = 4,
    DIF = 5,
    TIFF = 6,
    OEMTEXT = 7,
    DIB = 8,
    PALETTE = 9,
    PENDATA = 10,
    RIFF = 11,
    WAVE = 12,
    UNICODETEXT = 13,
    ENHMETAFILE = 14,
    HDROP = 15,
    LOCALE = 16,
    DIBV5 = 17,
    MAX = 18,
    OWNERDISPLAY = 128,
    DSPTEXT = 129,
    DSPBITMAP = 130,
    DSPMETAFILEPICT = 131,
    DSPENHMETAFILE = 142,
    PRIVATEFIRST = 512,
    PRIVATELAST = 767,
    GDIOBJFIRST = 768,
    GDIOBJLAST = 1023,
};
pub const CF_TEXT = CLIPBOARD_FORMATS.TEXT;
pub const CF_BITMAP = CLIPBOARD_FORMATS.BITMAP;
pub const CF_METAFILEPICT = CLIPBOARD_FORMATS.METAFILEPICT;
pub const CF_SYLK = CLIPBOARD_FORMATS.SYLK;
pub const CF_DIF = CLIPBOARD_FORMATS.DIF;
pub const CF_TIFF = CLIPBOARD_FORMATS.TIFF;
pub const CF_OEMTEXT = CLIPBOARD_FORMATS.OEMTEXT;
pub const CF_DIB = CLIPBOARD_FORMATS.DIB;
pub const CF_PALETTE = CLIPBOARD_FORMATS.PALETTE;
pub const CF_PENDATA = CLIPBOARD_FORMATS.PENDATA;
pub const CF_RIFF = CLIPBOARD_FORMATS.RIFF;
pub const CF_WAVE = CLIPBOARD_FORMATS.WAVE;
pub const CF_UNICODETEXT = CLIPBOARD_FORMATS.UNICODETEXT;
pub const CF_ENHMETAFILE = CLIPBOARD_FORMATS.ENHMETAFILE;
pub const CF_HDROP = CLIPBOARD_FORMATS.HDROP;
pub const CF_LOCALE = CLIPBOARD_FORMATS.LOCALE;
pub const CF_DIBV5 = CLIPBOARD_FORMATS.DIBV5;
pub const CF_MAX = CLIPBOARD_FORMATS.MAX;
pub const CF_OWNERDISPLAY = CLIPBOARD_FORMATS.OWNERDISPLAY;
pub const CF_DSPTEXT = CLIPBOARD_FORMATS.DSPTEXT;
pub const CF_DSPBITMAP = CLIPBOARD_FORMATS.DSPBITMAP;
pub const CF_DSPMETAFILEPICT = CLIPBOARD_FORMATS.DSPMETAFILEPICT;
pub const CF_DSPENHMETAFILE = CLIPBOARD_FORMATS.DSPENHMETAFILE;
pub const CF_PRIVATEFIRST = CLIPBOARD_FORMATS.PRIVATEFIRST;
pub const CF_PRIVATELAST = CLIPBOARD_FORMATS.PRIVATELAST;
pub const CF_GDIOBJFIRST = CLIPBOARD_FORMATS.GDIOBJFIRST;
pub const CF_GDIOBJLAST = CLIPBOARD_FORMATS.GDIOBJLAST;

pub const GESTURECONFIG_FLAGS = enum(u32) {
    ALLGESTURES = 1,
    // ZOOM = 1, this enum value conflicts with ALLGESTURES
    // PAN = 1, this enum value conflicts with ALLGESTURES
    PAN_WITH_SINGLE_FINGER_VERTICALLY = 2,
    PAN_WITH_SINGLE_FINGER_HORIZONTALLY = 4,
    PAN_WITH_GUTTER = 8,
    PAN_WITH_INERTIA = 16,
    // ROTATE = 1, this enum value conflicts with ALLGESTURES
    // TWOFINGERTAP = 1, this enum value conflicts with ALLGESTURES
    // PRESSANDTAP = 1, this enum value conflicts with ALLGESTURES
    // ROLLOVER = 1, this enum value conflicts with ALLGESTURES
    _,
    pub fn initFlags(o: struct {
        ALLGESTURES: u1 = 0,
        PAN_WITH_SINGLE_FINGER_VERTICALLY: u1 = 0,
        PAN_WITH_SINGLE_FINGER_HORIZONTALLY: u1 = 0,
        PAN_WITH_GUTTER: u1 = 0,
        PAN_WITH_INERTIA: u1 = 0,
    }) GESTURECONFIG_FLAGS {
        return @as(GESTURECONFIG_FLAGS, @enumFromInt((if (o.ALLGESTURES == 1) @intFromEnum(GESTURECONFIG_FLAGS.ALLGESTURES) else 0) | (if (o.PAN_WITH_SINGLE_FINGER_VERTICALLY == 1) @intFromEnum(GESTURECONFIG_FLAGS.PAN_WITH_SINGLE_FINGER_VERTICALLY) else 0) | (if (o.PAN_WITH_SINGLE_FINGER_HORIZONTALLY == 1) @intFromEnum(GESTURECONFIG_FLAGS.PAN_WITH_SINGLE_FINGER_HORIZONTALLY) else 0) | (if (o.PAN_WITH_GUTTER == 1) @intFromEnum(GESTURECONFIG_FLAGS.PAN_WITH_GUTTER) else 0) | (if (o.PAN_WITH_INERTIA == 1) @intFromEnum(GESTURECONFIG_FLAGS.PAN_WITH_INERTIA) else 0)));
    }
};
pub const GC_ALLGESTURES = GESTURECONFIG_FLAGS.ALLGESTURES;
pub const GC_ZOOM = GESTURECONFIG_FLAGS.ALLGESTURES;
pub const GC_PAN = GESTURECONFIG_FLAGS.ALLGESTURES;
pub const GC_PAN_WITH_SINGLE_FINGER_VERTICALLY = GESTURECONFIG_FLAGS.PAN_WITH_SINGLE_FINGER_VERTICALLY;
pub const GC_PAN_WITH_SINGLE_FINGER_HORIZONTALLY = GESTURECONFIG_FLAGS.PAN_WITH_SINGLE_FINGER_HORIZONTALLY;
pub const GC_PAN_WITH_GUTTER = GESTURECONFIG_FLAGS.PAN_WITH_GUTTER;
pub const GC_PAN_WITH_INERTIA = GESTURECONFIG_FLAGS.PAN_WITH_INERTIA;
pub const GC_ROTATE = GESTURECONFIG_FLAGS.ALLGESTURES;
pub const GC_TWOFINGERTAP = GESTURECONFIG_FLAGS.ALLGESTURES;
pub const GC_PRESSANDTAP = GESTURECONFIG_FLAGS.ALLGESTURES;
pub const GC_ROLLOVER = GESTURECONFIG_FLAGS.ALLGESTURES;

pub const CFE_UNDERLINE = enum(u32) {
    CF1UNDERLINE = 255,
    INVERT = 254,
    UNDERLINETHICKLONGDASH = 18,
    UNDERLINETHICKDOTTED = 17,
    UNDERLINETHICKDASHDOTDOT = 16,
    UNDERLINETHICKDASHDOT = 15,
    UNDERLINETHICKDASH = 14,
    UNDERLINELONGDASH = 13,
    UNDERLINEHEAVYWAVE = 12,
    UNDERLINEDOUBLEWAVE = 11,
    UNDERLINEHAIRLINE = 10,
    UNDERLINETHICK = 9,
    UNDERLINEWAVE = 8,
    UNDERLINEDASHDOTDOT = 7,
    UNDERLINEDASHDOT = 6,
    UNDERLINEDASH = 5,
    UNDERLINEDOTTED = 4,
    UNDERLINEDOUBLE = 3,
    UNDERLINEWORD = 2,
    UNDERLINE = 1,
    UNDERLINENONE = 0,
    _,
    pub fn initFlags(o: struct {
        CF1UNDERLINE: u1 = 0,
        INVERT: u1 = 0,
        UNDERLINETHICKLONGDASH: u1 = 0,
        UNDERLINETHICKDOTTED: u1 = 0,
        UNDERLINETHICKDASHDOTDOT: u1 = 0,
        UNDERLINETHICKDASHDOT: u1 = 0,
        UNDERLINETHICKDASH: u1 = 0,
        UNDERLINELONGDASH: u1 = 0,
        UNDERLINEHEAVYWAVE: u1 = 0,
        UNDERLINEDOUBLEWAVE: u1 = 0,
        UNDERLINEHAIRLINE: u1 = 0,
        UNDERLINETHICK: u1 = 0,
        UNDERLINEWAVE: u1 = 0,
        UNDERLINEDASHDOTDOT: u1 = 0,
        UNDERLINEDASHDOT: u1 = 0,
        UNDERLINEDASH: u1 = 0,
        UNDERLINEDOTTED: u1 = 0,
        UNDERLINEDOUBLE: u1 = 0,
        UNDERLINEWORD: u1 = 0,
        UNDERLINE: u1 = 0,
        UNDERLINENONE: u1 = 0,
    }) CFE_UNDERLINE {
        return @as(CFE_UNDERLINE, @enumFromInt((if (o.CF1UNDERLINE == 1) @intFromEnum(CFE_UNDERLINE.CF1UNDERLINE) else 0) | (if (o.INVERT == 1) @intFromEnum(CFE_UNDERLINE.INVERT) else 0) | (if (o.UNDERLINETHICKLONGDASH == 1) @intFromEnum(CFE_UNDERLINE.UNDERLINETHICKLONGDASH) else 0) | (if (o.UNDERLINETHICKDOTTED == 1) @intFromEnum(CFE_UNDERLINE.UNDERLINETHICKDOTTED) else 0) | (if (o.UNDERLINETHICKDASHDOTDOT == 1) @intFromEnum(CFE_UNDERLINE.UNDERLINETHICKDASHDOTDOT) else 0) | (if (o.UNDERLINETHICKDASHDOT == 1) @intFromEnum(CFE_UNDERLINE.UNDERLINETHICKDASHDOT) else 0) | (if (o.UNDERLINETHICKDASH == 1) @intFromEnum(CFE_UNDERLINE.UNDERLINETHICKDASH) else 0) | (if (o.UNDERLINELONGDASH == 1) @intFromEnum(CFE_UNDERLINE.UNDERLINELONGDASH) else 0) | (if (o.UNDERLINEHEAVYWAVE == 1) @intFromEnum(CFE_UNDERLINE.UNDERLINEHEAVYWAVE) else 0) | (if (o.UNDERLINEDOUBLEWAVE == 1) @intFromEnum(CFE_UNDERLINE.UNDERLINEDOUBLEWAVE) else 0) | (if (o.UNDERLINEHAIRLINE == 1) @intFromEnum(CFE_UNDERLINE.UNDERLINEHAIRLINE) else 0) | (if (o.UNDERLINETHICK == 1) @intFromEnum(CFE_UNDERLINE.UNDERLINETHICK) else 0) | (if (o.UNDERLINEWAVE == 1) @intFromEnum(CFE_UNDERLINE.UNDERLINEWAVE) else 0) | (if (o.UNDERLINEDASHDOTDOT == 1) @intFromEnum(CFE_UNDERLINE.UNDERLINEDASHDOTDOT) else 0) | (if (o.UNDERLINEDASHDOT == 1) @intFromEnum(CFE_UNDERLINE.UNDERLINEDASHDOT) else 0) | (if (o.UNDERLINEDASH == 1) @intFromEnum(CFE_UNDERLINE.UNDERLINEDASH) else 0) | (if (o.UNDERLINEDOTTED == 1) @intFromEnum(CFE_UNDERLINE.UNDERLINEDOTTED) else 0) | (if (o.UNDERLINEDOUBLE == 1) @intFromEnum(CFE_UNDERLINE.UNDERLINEDOUBLE) else 0) | (if (o.UNDERLINEWORD == 1) @intFromEnum(CFE_UNDERLINE.UNDERLINEWORD) else 0) | (if (o.UNDERLINE == 1) @intFromEnum(CFE_UNDERLINE.UNDERLINE) else 0) | (if (o.UNDERLINENONE == 1) @intFromEnum(CFE_UNDERLINE.UNDERLINENONE) else 0)));
    }
};
pub const CFU_CF1UNDERLINE = CFE_UNDERLINE.CF1UNDERLINE;
pub const CFU_INVERT = CFE_UNDERLINE.INVERT;
pub const CFU_UNDERLINETHICKLONGDASH = CFE_UNDERLINE.UNDERLINETHICKLONGDASH;
pub const CFU_UNDERLINETHICKDOTTED = CFE_UNDERLINE.UNDERLINETHICKDOTTED;
pub const CFU_UNDERLINETHICKDASHDOTDOT = CFE_UNDERLINE.UNDERLINETHICKDASHDOTDOT;
pub const CFU_UNDERLINETHICKDASHDOT = CFE_UNDERLINE.UNDERLINETHICKDASHDOT;
pub const CFU_UNDERLINETHICKDASH = CFE_UNDERLINE.UNDERLINETHICKDASH;
pub const CFU_UNDERLINELONGDASH = CFE_UNDERLINE.UNDERLINELONGDASH;
pub const CFU_UNDERLINEHEAVYWAVE = CFE_UNDERLINE.UNDERLINEHEAVYWAVE;
pub const CFU_UNDERLINEDOUBLEWAVE = CFE_UNDERLINE.UNDERLINEDOUBLEWAVE;
pub const CFU_UNDERLINEHAIRLINE = CFE_UNDERLINE.UNDERLINEHAIRLINE;
pub const CFU_UNDERLINETHICK = CFE_UNDERLINE.UNDERLINETHICK;
pub const CFU_UNDERLINEWAVE = CFE_UNDERLINE.UNDERLINEWAVE;
pub const CFU_UNDERLINEDASHDOTDOT = CFE_UNDERLINE.UNDERLINEDASHDOTDOT;
pub const CFU_UNDERLINEDASHDOT = CFE_UNDERLINE.UNDERLINEDASHDOT;
pub const CFU_UNDERLINEDASH = CFE_UNDERLINE.UNDERLINEDASH;
pub const CFU_UNDERLINEDOTTED = CFE_UNDERLINE.UNDERLINEDOTTED;
pub const CFU_UNDERLINEDOUBLE = CFE_UNDERLINE.UNDERLINEDOUBLE;
pub const CFU_UNDERLINEWORD = CFE_UNDERLINE.UNDERLINEWORD;
pub const CFU_UNDERLINE = CFE_UNDERLINE.UNDERLINE;
pub const CFU_UNDERLINENONE = CFE_UNDERLINE.UNDERLINENONE;

pub const IGP_ID = enum(u32) {
    GETIMEVERSION = 4294967292,
    PROPERTY = 4,
    CONVERSION = 8,
    SENTENCE = 12,
    UI = 16,
    SETCOMPSTR = 20,
    SELECT = 24,
};
pub const IGP_GETIMEVERSION = IGP_ID.GETIMEVERSION;
pub const IGP_PROPERTY = IGP_ID.PROPERTY;
pub const IGP_CONVERSION = IGP_ID.CONVERSION;
pub const IGP_SENTENCE = IGP_ID.SENTENCE;
pub const IGP_UI = IGP_ID.UI;
pub const IGP_SETCOMPSTR = IGP_ID.SETCOMPSTR;
pub const IGP_SELECT = IGP_ID.SELECT;

pub const SECTION_FLAGS = enum(u32) {
    ALL_ACCESS = 983071,
    QUERY = 1,
    MAP_WRITE = 2,
    MAP_READ = 4,
    MAP_EXECUTE = 8,
    EXTEND_SIZE = 16,
    MAP_EXECUTE_EXPLICIT = 32,
    _,
    pub fn initFlags(o: struct {
        ALL_ACCESS: u1 = 0,
        QUERY: u1 = 0,
        MAP_WRITE: u1 = 0,
        MAP_READ: u1 = 0,
        MAP_EXECUTE: u1 = 0,
        EXTEND_SIZE: u1 = 0,
        MAP_EXECUTE_EXPLICIT: u1 = 0,
    }) SECTION_FLAGS {
        return @as(SECTION_FLAGS, @enumFromInt((if (o.ALL_ACCESS == 1) @intFromEnum(SECTION_FLAGS.ALL_ACCESS) else 0) | (if (o.QUERY == 1) @intFromEnum(SECTION_FLAGS.QUERY) else 0) | (if (o.MAP_WRITE == 1) @intFromEnum(SECTION_FLAGS.MAP_WRITE) else 0) | (if (o.MAP_READ == 1) @intFromEnum(SECTION_FLAGS.MAP_READ) else 0) | (if (o.MAP_EXECUTE == 1) @intFromEnum(SECTION_FLAGS.MAP_EXECUTE) else 0) | (if (o.EXTEND_SIZE == 1) @intFromEnum(SECTION_FLAGS.EXTEND_SIZE) else 0) | (if (o.MAP_EXECUTE_EXPLICIT == 1) @intFromEnum(SECTION_FLAGS.MAP_EXECUTE_EXPLICIT) else 0)));
    }
};
pub const SECTION_ALL_ACCESS = SECTION_FLAGS.ALL_ACCESS;
pub const SECTION_QUERY = SECTION_FLAGS.QUERY;
pub const SECTION_MAP_WRITE = SECTION_FLAGS.MAP_WRITE;
pub const SECTION_MAP_READ = SECTION_FLAGS.MAP_READ;
pub const SECTION_MAP_EXECUTE = SECTION_FLAGS.MAP_EXECUTE;
pub const SECTION_EXTEND_SIZE = SECTION_FLAGS.EXTEND_SIZE;
pub const SECTION_MAP_EXECUTE_EXPLICIT = SECTION_FLAGS.MAP_EXECUTE_EXPLICIT;

pub const TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH = enum(u32) {
    ABS_BLK_IMMED = 2147491840,
    ABSOLUTE_BLK = 2147487744,
    END_OF_DATA = 2147549184,
    FILEMARKS = 2147745792,
    LOAD_UNLOAD = 2147483649,
    LOAD_UNLD_IMMED = 2147483680,
    LOCK_UNLOCK = 2147483652,
    LOCK_UNLK_IMMED = 2147483776,
    LOG_BLK_IMMED = 2147516416,
    LOGICAL_BLK = 2147500032,
    RELATIVE_BLKS = 2147614720,
    REVERSE_POSITION = 2151677952,
    REWIND_IMMEDIATE = 2147483656,
    SEQUENTIAL_FMKS = 2148007936,
    SEQUENTIAL_SMKS = 2149580800,
    SET_BLOCK_SIZE = 2147483664,
    SET_COMPRESSION = 2147484160,
    SET_ECC = 2147483904,
    SET_PADDING = 2147484672,
    SET_REPORT_SMKS = 2147485696,
    SETMARKS = 2148532224,
    SPACE_IMMEDIATE = 2155872256,
    TENSION = 2147483650,
    TENSION_IMMED = 2147483712,
    WRITE_FILEMARKS = 2181038080,
    WRITE_LONG_FMKS = 2281701376,
    WRITE_MARK_IMMED = 2415919104,
    WRITE_SETMARKS = 2164260864,
    WRITE_SHORT_FMKS = 2214592512,
    _,
    pub fn initFlags(o: struct {
        ABS_BLK_IMMED: u1 = 0,
        ABSOLUTE_BLK: u1 = 0,
        END_OF_DATA: u1 = 0,
        FILEMARKS: u1 = 0,
        LOAD_UNLOAD: u1 = 0,
        LOAD_UNLD_IMMED: u1 = 0,
        LOCK_UNLOCK: u1 = 0,
        LOCK_UNLK_IMMED: u1 = 0,
        LOG_BLK_IMMED: u1 = 0,
        LOGICAL_BLK: u1 = 0,
        RELATIVE_BLKS: u1 = 0,
        REVERSE_POSITION: u1 = 0,
        REWIND_IMMEDIATE: u1 = 0,
        SEQUENTIAL_FMKS: u1 = 0,
        SEQUENTIAL_SMKS: u1 = 0,
        SET_BLOCK_SIZE: u1 = 0,
        SET_COMPRESSION: u1 = 0,
        SET_ECC: u1 = 0,
        SET_PADDING: u1 = 0,
        SET_REPORT_SMKS: u1 = 0,
        SETMARKS: u1 = 0,
        SPACE_IMMEDIATE: u1 = 0,
        TENSION: u1 = 0,
        TENSION_IMMED: u1 = 0,
        WRITE_FILEMARKS: u1 = 0,
        WRITE_LONG_FMKS: u1 = 0,
        WRITE_MARK_IMMED: u1 = 0,
        WRITE_SETMARKS: u1 = 0,
        WRITE_SHORT_FMKS: u1 = 0,
    }) TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH {
        return @as(TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH, @enumFromInt((if (o.ABS_BLK_IMMED == 1) @intFromEnum(TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.ABS_BLK_IMMED) else 0) | (if (o.ABSOLUTE_BLK == 1) @intFromEnum(TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.ABSOLUTE_BLK) else 0) | (if (o.END_OF_DATA == 1) @intFromEnum(TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.END_OF_DATA) else 0) | (if (o.FILEMARKS == 1) @intFromEnum(TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.FILEMARKS) else 0) | (if (o.LOAD_UNLOAD == 1) @intFromEnum(TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.LOAD_UNLOAD) else 0) | (if (o.LOAD_UNLD_IMMED == 1) @intFromEnum(TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.LOAD_UNLD_IMMED) else 0) | (if (o.LOCK_UNLOCK == 1) @intFromEnum(TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.LOCK_UNLOCK) else 0) | (if (o.LOCK_UNLK_IMMED == 1) @intFromEnum(TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.LOCK_UNLK_IMMED) else 0) | (if (o.LOG_BLK_IMMED == 1) @intFromEnum(TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.LOG_BLK_IMMED) else 0) | (if (o.LOGICAL_BLK == 1) @intFromEnum(TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.LOGICAL_BLK) else 0) | (if (o.RELATIVE_BLKS == 1) @intFromEnum(TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.RELATIVE_BLKS) else 0) | (if (o.REVERSE_POSITION == 1) @intFromEnum(TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.REVERSE_POSITION) else 0) | (if (o.REWIND_IMMEDIATE == 1) @intFromEnum(TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.REWIND_IMMEDIATE) else 0) | (if (o.SEQUENTIAL_FMKS == 1) @intFromEnum(TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.SEQUENTIAL_FMKS) else 0) | (if (o.SEQUENTIAL_SMKS == 1) @intFromEnum(TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.SEQUENTIAL_SMKS) else 0) | (if (o.SET_BLOCK_SIZE == 1) @intFromEnum(TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.SET_BLOCK_SIZE) else 0) | (if (o.SET_COMPRESSION == 1) @intFromEnum(TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.SET_COMPRESSION) else 0) | (if (o.SET_ECC == 1) @intFromEnum(TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.SET_ECC) else 0) | (if (o.SET_PADDING == 1) @intFromEnum(TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.SET_PADDING) else 0) | (if (o.SET_REPORT_SMKS == 1) @intFromEnum(TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.SET_REPORT_SMKS) else 0) | (if (o.SETMARKS == 1) @intFromEnum(TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.SETMARKS) else 0) | (if (o.SPACE_IMMEDIATE == 1) @intFromEnum(TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.SPACE_IMMEDIATE) else 0) | (if (o.TENSION == 1) @intFromEnum(TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.TENSION) else 0) | (if (o.TENSION_IMMED == 1) @intFromEnum(TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.TENSION_IMMED) else 0) | (if (o.WRITE_FILEMARKS == 1) @intFromEnum(TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.WRITE_FILEMARKS) else 0) | (if (o.WRITE_LONG_FMKS == 1) @intFromEnum(TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.WRITE_LONG_FMKS) else 0) | (if (o.WRITE_MARK_IMMED == 1) @intFromEnum(TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.WRITE_MARK_IMMED) else 0) | (if (o.WRITE_SETMARKS == 1) @intFromEnum(TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.WRITE_SETMARKS) else 0) | (if (o.WRITE_SHORT_FMKS == 1) @intFromEnum(TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.WRITE_SHORT_FMKS) else 0)));
    }
};
pub const TAPE_DRIVE_ABS_BLK_IMMED = TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.ABS_BLK_IMMED;
pub const TAPE_DRIVE_ABSOLUTE_BLK = TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.ABSOLUTE_BLK;
pub const TAPE_DRIVE_END_OF_DATA = TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.END_OF_DATA;
pub const TAPE_DRIVE_FILEMARKS = TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.FILEMARKS;
pub const TAPE_DRIVE_LOAD_UNLOAD = TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.LOAD_UNLOAD;
pub const TAPE_DRIVE_LOAD_UNLD_IMMED = TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.LOAD_UNLD_IMMED;
pub const TAPE_DRIVE_LOCK_UNLOCK = TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.LOCK_UNLOCK;
pub const TAPE_DRIVE_LOCK_UNLK_IMMED = TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.LOCK_UNLK_IMMED;
pub const TAPE_DRIVE_LOG_BLK_IMMED = TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.LOG_BLK_IMMED;
pub const TAPE_DRIVE_LOGICAL_BLK = TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.LOGICAL_BLK;
pub const TAPE_DRIVE_RELATIVE_BLKS = TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.RELATIVE_BLKS;
pub const TAPE_DRIVE_REVERSE_POSITION = TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.REVERSE_POSITION;
pub const TAPE_DRIVE_REWIND_IMMEDIATE = TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.REWIND_IMMEDIATE;
pub const TAPE_DRIVE_SEQUENTIAL_FMKS = TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.SEQUENTIAL_FMKS;
pub const TAPE_DRIVE_SEQUENTIAL_SMKS = TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.SEQUENTIAL_SMKS;
pub const TAPE_DRIVE_SET_BLOCK_SIZE = TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.SET_BLOCK_SIZE;
pub const TAPE_DRIVE_SET_COMPRESSION = TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.SET_COMPRESSION;
pub const TAPE_DRIVE_SET_ECC = TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.SET_ECC;
pub const TAPE_DRIVE_SET_PADDING = TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.SET_PADDING;
pub const TAPE_DRIVE_SET_REPORT_SMKS = TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.SET_REPORT_SMKS;
pub const TAPE_DRIVE_SETMARKS = TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.SETMARKS;
pub const TAPE_DRIVE_SPACE_IMMEDIATE = TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.SPACE_IMMEDIATE;
pub const TAPE_DRIVE_TENSION = TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.TENSION;
pub const TAPE_DRIVE_TENSION_IMMED = TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.TENSION_IMMED;
pub const TAPE_DRIVE_WRITE_FILEMARKS = TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.WRITE_FILEMARKS;
pub const TAPE_DRIVE_WRITE_LONG_FMKS = TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.WRITE_LONG_FMKS;
pub const TAPE_DRIVE_WRITE_MARK_IMMED = TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.WRITE_MARK_IMMED;
pub const TAPE_DRIVE_WRITE_SETMARKS = TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.WRITE_SETMARKS;
pub const TAPE_DRIVE_WRITE_SHORT_FMKS = TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH.WRITE_SHORT_FMKS;

pub const DEV_BROADCAST_HDR_DEVICE_TYPE = enum(u32) {
    DEVICEINTERFACE = 5,
    HANDLE = 6,
    OEM = 0,
    PORT = 3,
    VOLUME = 2,
};
pub const DBT_DEVTYP_DEVICEINTERFACE = DEV_BROADCAST_HDR_DEVICE_TYPE.DEVICEINTERFACE;
pub const DBT_DEVTYP_HANDLE = DEV_BROADCAST_HDR_DEVICE_TYPE.HANDLE;
pub const DBT_DEVTYP_OEM = DEV_BROADCAST_HDR_DEVICE_TYPE.OEM;
pub const DBT_DEVTYP_PORT = DEV_BROADCAST_HDR_DEVICE_TYPE.PORT;
pub const DBT_DEVTYP_VOLUME = DEV_BROADCAST_HDR_DEVICE_TYPE.VOLUME;

pub const DEV_BROADCAST_VOLUME_FLAGS = enum(u16) {
    MEDIA = 1,
    NET = 2,
};
pub const DBTF_MEDIA = DEV_BROADCAST_VOLUME_FLAGS.MEDIA;
pub const DBTF_NET = DEV_BROADCAST_VOLUME_FLAGS.NET;

pub const PUMS_SCHEDULER_ENTRY_POINT = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        Reason: RTL_UMS_SCHEDULER_REASON,
        ActivationPayload: usize,
        SchedulerParam: ?*anyopaque,
    ) callconv(@import("std").os.windows.WINAPI) void,
    else => *const fn (
        Reason: RTL_UMS_SCHEDULER_REASON,
        ActivationPayload: usize,
        SchedulerParam: ?*anyopaque,
    ) callconv(@import("std").os.windows.WINAPI) void,
};

pub const TP_POOL = extern struct {
    placeholder: usize, // TODO: why is this type empty?
};

pub const TP_CLEANUP_GROUP = extern struct {
    placeholder: usize, // TODO: why is this type empty?
};

pub const TEB = extern struct {
    placeholder: usize, // TODO: why is this type empty?
};

pub const RemHGLOBAL = extern struct {
    fNullHGlobal: i32,
    cbData: u32,
    data: [1]u8,
};

pub const RemHMETAFILEPICT = extern struct {
    mm: i32,
    xExt: i32,
    yExt: i32,
    cbData: u32,
    data: [1]u8,
};

pub const RemHENHMETAFILE = extern struct {
    cbData: u32,
    data: [1]u8,
};

pub const RemHBITMAP = extern struct {
    cbData: u32,
    data: [1]u8,
};

pub const RemHPALETTE = extern struct {
    cbData: u32,
    data: [1]u8,
};

pub const RemBRUSH = extern struct {
    cbData: u32,
    data: [1]u8,
};

pub const userCLIPFORMAT = extern struct {
    fContext: i32,
    u: extern struct {
        dwValue: u32,
        pwszName: ?PWSTR,
    },
};

pub const GDI_NONREMOTE = extern struct {
    fContext: i32,
    u: extern struct {
        hInproc: i32,
        hRemote: ?*DWORD_BLOB,
    },
};

pub const userHGLOBAL = extern struct {
    fContext: i32,
    u: extern struct {
        hInproc: i32,
        hRemote: ?*FLAGGED_BYTE_BLOB,
        hInproc64: i64,
    },
};

pub const userHMETAFILE = extern struct {
    fContext: i32,
    u: extern struct {
        hInproc: i32,
        hRemote: ?*BYTE_BLOB,
        hInproc64: i64,
    },
};

pub const remoteMETAFILEPICT = extern struct {
    mm: i32,
    xExt: i32,
    yExt: i32,
    hMF: ?*userHMETAFILE,
};

pub const userHMETAFILEPICT = extern struct {
    fContext: i32,
    u: extern struct {
        hInproc: i32,
        hRemote: ?*remoteMETAFILEPICT,
        hInproc64: i64,
    },
};

pub const userHENHMETAFILE = extern struct {
    fContext: i32,
    u: extern struct {
        hInproc: i32,
        hRemote: ?*BYTE_BLOB,
        hInproc64: i64,
    },
};

pub const userBITMAP = extern struct {
    bmType: i32,
    bmWidth: i32,
    bmHeight: i32,
    bmWidthBytes: i32,
    bmPlanes: u16,
    bmBitsPixel: u16,
    cbSize: u32,
    pBuffer: [1]u8,
};

pub const userHBITMAP = extern struct {
    fContext: i32,
    u: extern struct {
        hInproc: i32,
        hRemote: ?*userBITMAP,
        hInproc64: i64,
    },
};

pub const userHPALETTE = extern struct {
    fContext: i32,
    u: extern struct {
        hInproc: i32,
        hRemote: ?*LOGPALETTE,
        hInproc64: i64,
    },
};

pub const RemotableHandle = extern struct {
    fContext: i32,
    u: extern struct {
        hInproc: i32,
        hRemote: i32,
    },
};

pub const DEVICE_EVENT_MOUNT = extern struct {
    Version: u32,
    Flags: u32,
    FileSystemNameLength: u32,
    FileSystemNameOffset: u32,
};

pub const DEVICE_EVENT_BECOMING_READY = extern struct {
    Version: u32,
    Reason: u32,
    Estimated100msToReady: u32,
};

pub const DEVICE_EVENT_EXTERNAL_REQUEST = extern struct {
    Version: u32,
    DeviceClass: u32,
    ButtonStatus: u16,
    Request: u16,
    SystemTime: LARGE_INTEGER,
};

pub const DEVICE_EVENT_GENERIC_DATA = extern struct {
    EventNumber: u32,
};

pub const DEVICE_EVENT_RBC_DATA = extern struct {
    EventNumber: u32,
    SenseQualifier: u8,
    SenseCode: u8,
    SenseKey: u8,
    Reserved: u8,
    Information: u32,
};

pub const GUID_IO_DISK_CLONE_ARRIVAL_INFORMATION = extern struct {
    DiskNumber: u32,
};

pub const DISK_HEALTH_NOTIFICATION_DATA = extern struct {
    DeviceGuid: Guid,
};

pub const REDBOOK_DIGITAL_AUDIO_EXTRACTION_INFO = extern struct {
    Version: u32,
    Accurate: u32,
    Supported: u32,
    AccurateMask0: u32,
};

pub const DEV_BROADCAST_HDR = extern struct {
    dbch_size: u32,
    dbch_devicetype: DEV_BROADCAST_HDR_DEVICE_TYPE,
    dbch_reserved: u32,
};

pub const VolLockBroadcast = extern struct {
    vlb_dbh: DEV_BROADCAST_HDR,
    vlb_owner: u32,
    vlb_perms: u8,
    vlb_lockType: u8,
    vlb_drive: u8,
    vlb_flags: u8,
};

pub const _DEV_BROADCAST_HEADER = extern struct {
    dbcd_size: u32,
    dbcd_devicetype: u32,
    dbcd_reserved: u32,
};

pub const DEV_BROADCAST_OEM = extern struct {
    dbco_size: u32,
    dbco_devicetype: u32,
    dbco_reserved: u32,
    dbco_identifier: u32,
    dbco_suppfunc: u32,
};

pub const DEV_BROADCAST_DEVNODE = extern struct {
    dbcd_size: u32,
    dbcd_devicetype: u32,
    dbcd_reserved: u32,
    dbcd_devnode: u32,
};

pub const DEV_BROADCAST_VOLUME = extern struct {
    dbcv_size: u32,
    dbcv_devicetype: u32,
    dbcv_reserved: u32,
    dbcv_unitmask: u32,
    dbcv_flags: DEV_BROADCAST_VOLUME_FLAGS,
};

pub const DEV_BROADCAST_PORT_A = extern struct {
    dbcp_size: u32,
    dbcp_devicetype: u32,
    dbcp_reserved: u32,
    dbcp_name: [1]CHAR,
};

pub const DEV_BROADCAST_PORT_W = extern struct {
    dbcp_size: u32,
    dbcp_devicetype: u32,
    dbcp_reserved: u32,
    dbcp_name: [1]u16,
};

pub const DEV_BROADCAST_NET = extern struct {
    dbcn_size: u32,
    dbcn_devicetype: u32,
    dbcn_reserved: u32,
    dbcn_resource: u32,
    dbcn_flags: u32,
};

pub const DEV_BROADCAST_DEVICEINTERFACE_A = extern struct {
    dbcc_size: u32,
    dbcc_devicetype: u32,
    dbcc_reserved: u32,
    dbcc_classguid: Guid,
    dbcc_name: [1]CHAR,
};

pub const DEV_BROADCAST_DEVICEINTERFACE_W = extern struct {
    dbcc_size: u32,
    dbcc_devicetype: u32,
    dbcc_reserved: u32,
    dbcc_classguid: Guid,
    dbcc_name: [1]u16,
};

pub const DEV_BROADCAST_HANDLE = extern struct {
    dbch_size: u32,
    dbch_devicetype: u32,
    dbch_reserved: u32,
    dbch_handle: ?HANDLE,
    dbch_hdevnotify: ?*anyopaque,
    dbch_eventguid: Guid,
    dbch_nameoffset: i32,
    dbch_data: [1]u8,
};

pub const DEV_BROADCAST_HANDLE32 = extern struct {
    dbch_size: u32,
    dbch_devicetype: u32,
    dbch_reserved: u32,
    dbch_handle: u32,
    dbch_hdevnotify: u32,
    dbch_eventguid: Guid,
    dbch_nameoffset: i32,
    dbch_data: [1]u8,
};

pub const DEV_BROADCAST_HANDLE64 = extern struct {
    dbch_size: u32,
    dbch_devicetype: u32,
    dbch_reserved: u32,
    dbch_handle: u64,
    dbch_hdevnotify: u64,
    dbch_eventguid: Guid,
    dbch_nameoffset: i32,
    dbch_data: [1]u8,
};

pub const _DEV_BROADCAST_USERDEFINED = extern struct {
    dbud_dbh: DEV_BROADCAST_HDR,
    dbud_szName: [1]CHAR,
};

pub const AtlThunkData_t = extern struct {
    placeholder: usize, // TODO: why is this type empty?
};

pub const XSAVE_CET_U_FORMAT = extern struct {
    Ia32CetUMsr: u64,
    Ia32Pl3SspMsr: u64,
};

pub const KERNEL_CET_CONTEXT = extern struct {
    Ssp: u64,
    Rip: u64,
    SegCs: u16,
    Anonymous: extern union {
        AllFlags: u16,
        Anonymous: extern struct {
            _bitfield: u16,
        },
    },
    Fill: [2]u16,
};

pub const SCOPE_TABLE_AMD64 = extern struct {
    Count: u32,
    ScopeRecord: [1]extern struct {
        BeginAddress: u32,
        EndAddress: u32,
        HandlerAddress: u32,
        JumpTarget: u32,
    },
};

pub const SCOPE_TABLE_ARM = extern struct {
    Count: u32,
    ScopeRecord: [1]extern struct {
        BeginAddress: u32,
        EndAddress: u32,
        HandlerAddress: u32,
        JumpTarget: u32,
    },
};

pub const SCOPE_TABLE_ARM64 = extern struct {
    Count: u32,
    ScopeRecord: [1]extern struct {
        BeginAddress: u32,
        EndAddress: u32,
        HandlerAddress: u32,
        JumpTarget: u32,
    },
};

pub const DISPATCHER_CONTEXT_NONVOLREG_ARM64 = extern union {
    Buffer: [152]u8,
    Anonymous: extern struct {
        GpNvRegs: [11]u64,
        FpNvRegs: [8]f64,
    },
};

pub const SECURITY_DESCRIPTOR_RELATIVE = extern struct {
    Revision: u8,
    Sbz1: u8,
    Control: u16,
    Owner: u32,
    Group: u32,
    Sacl: u32,
    Dacl: u32,
};

pub const SECURITY_OBJECT_AI_PARAMS = extern struct {
    Size: u32,
    ConstraintMask: u32,
};

pub const ACCESS_REASON_TYPE = enum(i32) {
    None = 0,
    AllowedAce = 65536,
    DeniedAce = 131072,
    AllowedParentAce = 196608,
    DeniedParentAce = 262144,
    NotGrantedByCape = 327680,
    NotGrantedByParentCape = 393216,
    NotGrantedToAppContainer = 458752,
    MissingPrivilege = 1048576,
    FromPrivilege = 2097152,
    IntegrityLevel = 3145728,
    Ownership = 4194304,
    NullDacl = 5242880,
    EmptyDacl = 6291456,
    NoSD = 7340032,
    NoGrant = 8388608,
    TrustLabel = 9437184,
    FilterAce = 10485760,
};
pub const AccessReasonNone = ACCESS_REASON_TYPE.None;
pub const AccessReasonAllowedAce = ACCESS_REASON_TYPE.AllowedAce;
pub const AccessReasonDeniedAce = ACCESS_REASON_TYPE.DeniedAce;
pub const AccessReasonAllowedParentAce = ACCESS_REASON_TYPE.AllowedParentAce;
pub const AccessReasonDeniedParentAce = ACCESS_REASON_TYPE.DeniedParentAce;
pub const AccessReasonNotGrantedByCape = ACCESS_REASON_TYPE.NotGrantedByCape;
pub const AccessReasonNotGrantedByParentCape = ACCESS_REASON_TYPE.NotGrantedByParentCape;
pub const AccessReasonNotGrantedToAppContainer = ACCESS_REASON_TYPE.NotGrantedToAppContainer;
pub const AccessReasonMissingPrivilege = ACCESS_REASON_TYPE.MissingPrivilege;
pub const AccessReasonFromPrivilege = ACCESS_REASON_TYPE.FromPrivilege;
pub const AccessReasonIntegrityLevel = ACCESS_REASON_TYPE.IntegrityLevel;
pub const AccessReasonOwnership = ACCESS_REASON_TYPE.Ownership;
pub const AccessReasonNullDacl = ACCESS_REASON_TYPE.NullDacl;
pub const AccessReasonEmptyDacl = ACCESS_REASON_TYPE.EmptyDacl;
pub const AccessReasonNoSD = ACCESS_REASON_TYPE.NoSD;
pub const AccessReasonNoGrant = ACCESS_REASON_TYPE.NoGrant;
pub const AccessReasonTrustLabel = ACCESS_REASON_TYPE.TrustLabel;
pub const AccessReasonFilterAce = ACCESS_REASON_TYPE.FilterAce;

pub const SE_TOKEN_USER = extern struct {
    Anonymous1: extern union {
        TokenUser: TOKEN_USER,
        User: SID_AND_ATTRIBUTES,
    },
    Anonymous2: extern union {
        Sid: SID,
        Buffer: [68]u8,
    },
};

pub const TOKEN_SID_INFORMATION = extern struct {
    Sid: ?PSID,
};

pub const TOKEN_BNO_ISOLATION_INFORMATION = extern struct {
    IsolationPrefix: ?PWSTR,
    IsolationEnabled: BOOLEAN,
};

pub const SE_IMAGE_SIGNATURE_TYPE = enum(i32) {
    None = 0,
    Embedded = 1,
    Cache = 2,
    CatalogCached = 3,
    CatalogNotCached = 4,
    CatalogHint = 5,
    PackageCatalog = 6,
    PplMitigated = 7,
};
pub const SeImageSignatureNone = SE_IMAGE_SIGNATURE_TYPE.None;
pub const SeImageSignatureEmbedded = SE_IMAGE_SIGNATURE_TYPE.Embedded;
pub const SeImageSignatureCache = SE_IMAGE_SIGNATURE_TYPE.Cache;
pub const SeImageSignatureCatalogCached = SE_IMAGE_SIGNATURE_TYPE.CatalogCached;
pub const SeImageSignatureCatalogNotCached = SE_IMAGE_SIGNATURE_TYPE.CatalogNotCached;
pub const SeImageSignatureCatalogHint = SE_IMAGE_SIGNATURE_TYPE.CatalogHint;
pub const SeImageSignaturePackageCatalog = SE_IMAGE_SIGNATURE_TYPE.PackageCatalog;
pub const SeImageSignaturePplMitigated = SE_IMAGE_SIGNATURE_TYPE.PplMitigated;

pub const SE_LEARNING_MODE_DATA_TYPE = enum(i32) {
    InvalidType = 0,
    Settings = 1,
    Max = 2,
};
pub const SeLearningModeInvalidType = SE_LEARNING_MODE_DATA_TYPE.InvalidType;
pub const SeLearningModeSettings = SE_LEARNING_MODE_DATA_TYPE.Settings;
pub const SeLearningModeMax = SE_LEARNING_MODE_DATA_TYPE.Max;

pub const NT_TIB32 = extern struct {
    ExceptionList: u32,
    StackBase: u32,
    StackLimit: u32,
    SubSystemTib: u32,
    Anonymous: extern union {
        FiberData: u32,
        Version: u32,
    },
    ArbitraryUserPointer: u32,
    Self: u32,
};

pub const NT_TIB64 = extern struct {
    ExceptionList: u64,
    StackBase: u64,
    StackLimit: u64,
    SubSystemTib: u64,
    Anonymous: extern union {
        FiberData: u64,
        Version: u32,
    },
    ArbitraryUserPointer: u64,
    Self: u64,
};

pub const UMS_CREATE_THREAD_ATTRIBUTES = extern struct {
    UmsVersion: u32,
    UmsContext: ?*anyopaque,
    UmsCompletionList: ?*anyopaque,
};

pub const COMPONENT_FILTER = extern struct {
    ComponentFlags: u32,
};

pub const RATE_QUOTA_LIMIT = extern union {
    RateData: u32,
    Anonymous: extern struct {
        _bitfield: u32,
    },
};

pub const QUOTA_LIMITS_EX = extern struct {
    PagedPoolLimit: usize,
    NonPagedPoolLimit: usize,
    MinimumWorkingSetSize: usize,
    MaximumWorkingSetSize: usize,
    PagefileLimit: usize,
    TimeLimit: LARGE_INTEGER,
    WorkingSetLimit: usize,
    Reserved2: usize,
    Reserved3: usize,
    Reserved4: usize,
    Flags: u32,
    CpuRateLimit: RATE_QUOTA_LIMIT,
};

pub const PROCESS_MITIGATION_ASLR_POLICY = extern struct {
    Anonymous: extern union {
        Flags: u32,
        Anonymous: extern struct {
            _bitfield: u32,
        },
    },
};

pub const PROCESS_MITIGATION_DEP_POLICY = extern struct {
    Anonymous: extern union {
        Flags: u32,
        Anonymous: extern struct {
            _bitfield: u32,
        },
    },
    Permanent: BOOLEAN,
};

pub const PROCESS_MITIGATION_STRICT_HANDLE_CHECK_POLICY = extern struct {
    Anonymous: extern union {
        Flags: u32,
        Anonymous: extern struct {
            _bitfield: u32,
        },
    },
};

pub const PROCESS_MITIGATION_SYSTEM_CALL_DISABLE_POLICY = extern struct {
    Anonymous: extern union {
        Flags: u32,
        Anonymous: extern struct {
            _bitfield: u32,
        },
    },
};

pub const PROCESS_MITIGATION_EXTENSION_POINT_DISABLE_POLICY = extern struct {
    Anonymous: extern union {
        Flags: u32,
        Anonymous: extern struct {
            _bitfield: u32,
        },
    },
};

pub const PROCESS_MITIGATION_DYNAMIC_CODE_POLICY = extern struct {
    Anonymous: extern union {
        Flags: u32,
        Anonymous: extern struct {
            _bitfield: u32,
        },
    },
};

pub const PROCESS_MITIGATION_CONTROL_FLOW_GUARD_POLICY = extern struct {
    Anonymous: extern union {
        Flags: u32,
        Anonymous: extern struct {
            _bitfield: u32,
        },
    },
};

pub const PROCESS_MITIGATION_BINARY_SIGNATURE_POLICY = extern struct {
    Anonymous: extern union {
        Flags: u32,
        Anonymous: extern struct {
            _bitfield: u32,
        },
    },
};

pub const PROCESS_MITIGATION_FONT_DISABLE_POLICY = extern struct {
    Anonymous: extern union {
        Flags: u32,
        Anonymous: extern struct {
            _bitfield: u32,
        },
    },
};

pub const PROCESS_MITIGATION_IMAGE_LOAD_POLICY = extern struct {
    Anonymous: extern union {
        Flags: u32,
        Anonymous: extern struct {
            _bitfield: u32,
        },
    },
};

pub const PROCESS_MITIGATION_SYSTEM_CALL_FILTER_POLICY = extern struct {
    Anonymous: extern union {
        Flags: u32,
        Anonymous: extern struct {
            _bitfield: u32,
        },
    },
};

pub const PROCESS_MITIGATION_PAYLOAD_RESTRICTION_POLICY = extern struct {
    Anonymous: extern union {
        Flags: u32,
        Anonymous: extern struct {
            _bitfield: u32,
        },
    },
};

pub const PROCESS_MITIGATION_CHILD_PROCESS_POLICY = extern struct {
    Anonymous: extern union {
        Flags: u32,
        Anonymous: extern struct {
            _bitfield: u32,
        },
    },
};

pub const PROCESS_MITIGATION_SIDE_CHANNEL_ISOLATION_POLICY = extern struct {
    Anonymous: extern union {
        Flags: u32,
        Anonymous: extern struct {
            _bitfield: u32,
        },
    },
};

pub const PROCESS_MITIGATION_USER_SHADOW_STACK_POLICY = extern struct {
    Anonymous: extern union {
        Flags: u32,
        Anonymous: extern struct {
            _bitfield: u32,
        },
    },
};

pub const PROCESS_MITIGATION_REDIRECTION_TRUST_POLICY = extern struct {
    Anonymous: extern union {
        Flags: u32,
        Anonymous: extern struct {
            _bitfield: u32,
        },
    },
};

pub const SILOOBJECT_BASIC_INFORMATION = extern struct {
    SiloId: u32,
    SiloParentId: u32,
    NumberOfProcesses: u32,
    IsInServerSilo: BOOLEAN,
    Reserved: [3]u8,
};

pub const SERVERSILO_STATE = enum(i32) {
    INITING = 0,
    STARTED = 1,
    SHUTTING_DOWN = 2,
    TERMINATING = 3,
    TERMINATED = 4,
};
pub const SERVERSILO_INITING = SERVERSILO_STATE.INITING;
pub const SERVERSILO_STARTED = SERVERSILO_STATE.STARTED;
pub const SERVERSILO_SHUTTING_DOWN = SERVERSILO_STATE.SHUTTING_DOWN;
pub const SERVERSILO_TERMINATING = SERVERSILO_STATE.TERMINATING;
pub const SERVERSILO_TERMINATED = SERVERSILO_STATE.TERMINATED;

pub const SERVERSILO_BASIC_INFORMATION = extern struct {
    ServiceSessionId: u32,
    State: SERVERSILO_STATE,
    ExitStatus: u32,
    IsDownlevelContainer: BOOLEAN,
    ApiSetSchema: ?*anyopaque,
    HostApiSetSchema: ?*anyopaque,
};

pub const MEM_ADDRESS_REQUIREMENTS = extern struct {
    LowestStartingAddress: ?*anyopaque,
    HighestEndingAddress: ?*anyopaque,
    Alignment: usize,
};

pub const MEM_DEDICATED_ATTRIBUTE_TYPE = enum(i32) {
    ReadBandwidth = 0,
    ReadLatency = 1,
    WriteBandwidth = 2,
    WriteLatency = 3,
    Max = 4,
};
pub const MemDedicatedAttributeReadBandwidth = MEM_DEDICATED_ATTRIBUTE_TYPE.ReadBandwidth;
pub const MemDedicatedAttributeReadLatency = MEM_DEDICATED_ATTRIBUTE_TYPE.ReadLatency;
pub const MemDedicatedAttributeWriteBandwidth = MEM_DEDICATED_ATTRIBUTE_TYPE.WriteBandwidth;
pub const MemDedicatedAttributeWriteLatency = MEM_DEDICATED_ATTRIBUTE_TYPE.WriteLatency;
pub const MemDedicatedAttributeMax = MEM_DEDICATED_ATTRIBUTE_TYPE.Max;

pub const MEM_SECTION_EXTENDED_PARAMETER_TYPE = enum(i32) {
    InvalidType = 0,
    UserPhysicalFlags = 1,
    NumaNode = 2,
    SigningLevel = 3,
    Max = 4,
};
pub const MemSectionExtendedParameterInvalidType = MEM_SECTION_EXTENDED_PARAMETER_TYPE.InvalidType;
pub const MemSectionExtendedParameterUserPhysicalFlags = MEM_SECTION_EXTENDED_PARAMETER_TYPE.UserPhysicalFlags;
pub const MemSectionExtendedParameterNumaNode = MEM_SECTION_EXTENDED_PARAMETER_TYPE.NumaNode;
pub const MemSectionExtendedParameterSigningLevel = MEM_SECTION_EXTENDED_PARAMETER_TYPE.SigningLevel;
pub const MemSectionExtendedParameterMax = MEM_SECTION_EXTENDED_PARAMETER_TYPE.Max;

pub const MEMORY_PARTITION_DEDICATED_MEMORY_ATTRIBUTE = extern struct {
    Type: MEM_DEDICATED_ATTRIBUTE_TYPE,
    Reserved: u32,
    Value: u64,
};

pub const MEMORY_PARTITION_DEDICATED_MEMORY_INFORMATION = extern struct {
    NextEntryOffset: u32,
    SizeOfInformation: u32,
    Flags: u32,
    AttributesOffset: u32,
    AttributeCount: u32,
    Reserved: u32,
    TypeId: u64,
};

pub const SCRUB_DATA_INPUT = extern struct {
    Size: u32,
    Flags: u32,
    MaximumIos: u32,
    ObjectId: [4]u32,
    Reserved: [41]u32,
    ResumeContext: [1040]u8,
};

pub const SCRUB_PARITY_EXTENT = extern struct {
    Offset: i64,
    Length: u64,
};

pub const SCRUB_PARITY_EXTENT_DATA = extern struct {
    Size: u16,
    Flags: u16,
    NumberOfParityExtents: u16,
    MaximumNumberOfParityExtents: u16,
    ParityExtents: [1]SCRUB_PARITY_EXTENT,
};

pub const SCRUB_DATA_OUTPUT = extern struct {
    Size: u32,
    Flags: u32,
    Status: u32,
    ErrorFileOffset: u64,
    ErrorLength: u64,
    NumberOfBytesRepaired: u64,
    NumberOfBytesFailed: u64,
    InternalFileReference: u64,
    ResumeContextLength: u16,
    ParityExtentDataOffset: u16,
    Reserved: [9]u32,
    NumberOfMetadataBytesProcessed: u64,
    NumberOfDataBytesProcessed: u64,
    TotalNumberOfMetadataBytesInUse: u64,
    TotalNumberOfDataBytesInUse: u64,
    DataBytesSkippedDueToNoAllocation: u64,
    DataBytesSkippedDueToInvalidRun: u64,
    DataBytesSkippedDueToIntegrityStream: u64,
    DataBytesSkippedDueToRegionBeingClean: u64,
    DataBytesSkippedDueToLockConflict: u64,
    DataBytesSkippedDueToNoScrubDataFlag: u64,
    DataBytesSkippedDueToNoScrubNonIntegrityStreamFlag: u64,
    DataBytesScrubbed: u64,
    ResumeContext: [1040]u8,
};

pub const SharedVirtualDiskSupportType = enum(i32) {
    sUnsupported = 0,
    sSupported = 1,
    SnapshotsSupported = 3,
    CDPSnapshotsSupported = 7,
};
pub const SharedVirtualDisksUnsupported = SharedVirtualDiskSupportType.sUnsupported;
pub const SharedVirtualDisksSupported = SharedVirtualDiskSupportType.sSupported;
pub const SharedVirtualDiskSnapshotsSupported = SharedVirtualDiskSupportType.SnapshotsSupported;
pub const SharedVirtualDiskCDPSnapshotsSupported = SharedVirtualDiskSupportType.CDPSnapshotsSupported;

pub const SharedVirtualDiskHandleState = enum(i32) {
    None = 0,
    FileShared = 1,
    HandleShared = 3,
};
pub const SharedVirtualDiskHandleStateNone = SharedVirtualDiskHandleState.None;
pub const SharedVirtualDiskHandleStateFileShared = SharedVirtualDiskHandleState.FileShared;
pub const SharedVirtualDiskHandleStateHandleShared = SharedVirtualDiskHandleState.HandleShared;

pub const SHARED_VIRTUAL_DISK_SUPPORT = extern struct {
    SharedVirtualDiskSupport: SharedVirtualDiskSupportType,
    HandleState: SharedVirtualDiskHandleState,
};

pub const REARRANGE_FILE_DATA = extern struct {
    SourceStartingOffset: u64,
    TargetOffset: u64,
    SourceFileHandle: ?HANDLE,
    Length: u32,
    Flags: u32,
};

pub const SHUFFLE_FILE_DATA = extern struct {
    StartingOffset: i64,
    Length: i64,
    Flags: u32,
};

pub const NETWORK_APP_INSTANCE_EA = extern struct {
    AppInstanceID: Guid,
    CsvFlags: u32,
};

pub const MONITOR_DISPLAY_STATE = enum(i32) {
    Off = 0,
    On = 1,
    Dim = 2,
};
pub const PowerMonitorOff = MONITOR_DISPLAY_STATE.Off;
pub const PowerMonitorOn = MONITOR_DISPLAY_STATE.On;
pub const PowerMonitorDim = MONITOR_DISPLAY_STATE.Dim;

pub const USER_ACTIVITY_PRESENCE = enum(i32) {
    Present = 0,
    NotPresent = 1,
    Inactive = 2,
    Maximum = 3,
    // Invalid = 3, this enum value conflicts with Maximum
};
pub const PowerUserPresent = USER_ACTIVITY_PRESENCE.Present;
pub const PowerUserNotPresent = USER_ACTIVITY_PRESENCE.NotPresent;
pub const PowerUserInactive = USER_ACTIVITY_PRESENCE.Inactive;
pub const PowerUserMaximum = USER_ACTIVITY_PRESENCE.Maximum;
pub const PowerUserInvalid = USER_ACTIVITY_PRESENCE.Maximum;

pub const POWER_USER_PRESENCE_TYPE = enum(i32) {
    NotPresent = 0,
    Present = 1,
    Unknown = 255,
};
pub const UserNotPresent = POWER_USER_PRESENCE_TYPE.NotPresent;
pub const UserPresent = POWER_USER_PRESENCE_TYPE.Present;
pub const UserUnknown = POWER_USER_PRESENCE_TYPE.Unknown;

pub const POWER_USER_PRESENCE = extern struct {
    UserPresence: POWER_USER_PRESENCE_TYPE,
};

pub const POWER_SESSION_CONNECT = extern struct {
    Connected: BOOLEAN,
    Console: BOOLEAN,
};

pub const POWER_SESSION_TIMEOUTS = extern struct {
    InputTimeout: u32,
    DisplayTimeout: u32,
};

pub const POWER_SESSION_RIT_STATE = extern struct {
    Active: BOOLEAN,
    LastInputTime: u64,
};

pub const POWER_SESSION_WINLOGON = extern struct {
    SessionId: u32,
    Console: BOOLEAN,
    Locked: BOOLEAN,
};

pub const POWER_SESSION_ALLOW_EXTERNAL_DMA_DEVICES = extern struct {
    IsAllowed: BOOLEAN,
};

pub const POWER_IDLE_RESILIENCY = extern struct {
    CoalescingTimeout: u32,
    IdleResiliencyPeriod: u32,
};

pub const POWER_MONITOR_REQUEST_REASON = enum(i32) {
    Unknown = 0,
    PowerButton = 1,
    RemoteConnection = 2,
    ScMonitorpower = 3,
    UserInput = 4,
    AcDcDisplayBurst = 5,
    UserDisplayBurst = 6,
    PoSetSystemState = 7,
    SetThreadExecutionState = 8,
    FullWake = 9,
    SessionUnlock = 10,
    ScreenOffRequest = 11,
    IdleTimeout = 12,
    PolicyChange = 13,
    SleepButton = 14,
    Lid = 15,
    BatteryCountChange = 16,
    GracePeriod = 17,
    PnP = 18,
    DP = 19,
    SxTransition = 20,
    SystemIdle = 21,
    NearProximity = 22,
    ThermalStandby = 23,
    ResumePdc = 24,
    ResumeS4 = 25,
    Terminal = 26,
    PdcSignal = 27,
    AcDcDisplayBurstSuppressed = 28,
    SystemStateEntered = 29,
    Winrt = 30,
    UserInputKeyboard = 31,
    UserInputMouse = 32,
    UserInputTouchpad = 33,
    UserInputPen = 34,
    UserInputAccelerometer = 35,
    UserInputHid = 36,
    UserInputPoUserPresent = 37,
    UserInputSessionSwitch = 38,
    UserInputInitialization = 39,
    PdcSignalWindowsMobilePwrNotif = 40,
    PdcSignalWindowsMobileShell = 41,
    PdcSignalHeyCortana = 42,
    PdcSignalHolographicShell = 43,
    PdcSignalFingerprint = 44,
    DirectedDrips = 45,
    Dim = 46,
    BuiltinPanel = 47,
    DisplayRequiredUnDim = 48,
    BatteryCountChangeSuppressed = 49,
    ResumeModernStandby = 50,
    TerminalInit = 51,
    PdcSignalSensorsHumanPresence = 52,
    BatteryPreCritical = 53,
    UserInputTouch = 54,
    Max = 55,
};
pub const MonitorRequestReasonUnknown = POWER_MONITOR_REQUEST_REASON.Unknown;
pub const MonitorRequestReasonPowerButton = POWER_MONITOR_REQUEST_REASON.PowerButton;
pub const MonitorRequestReasonRemoteConnection = POWER_MONITOR_REQUEST_REASON.RemoteConnection;
pub const MonitorRequestReasonScMonitorpower = POWER_MONITOR_REQUEST_REASON.ScMonitorpower;
pub const MonitorRequestReasonUserInput = POWER_MONITOR_REQUEST_REASON.UserInput;
pub const MonitorRequestReasonAcDcDisplayBurst = POWER_MONITOR_REQUEST_REASON.AcDcDisplayBurst;
pub const MonitorRequestReasonUserDisplayBurst = POWER_MONITOR_REQUEST_REASON.UserDisplayBurst;
pub const MonitorRequestReasonPoSetSystemState = POWER_MONITOR_REQUEST_REASON.PoSetSystemState;
pub const MonitorRequestReasonSetThreadExecutionState = POWER_MONITOR_REQUEST_REASON.SetThreadExecutionState;
pub const MonitorRequestReasonFullWake = POWER_MONITOR_REQUEST_REASON.FullWake;
pub const MonitorRequestReasonSessionUnlock = POWER_MONITOR_REQUEST_REASON.SessionUnlock;
pub const MonitorRequestReasonScreenOffRequest = POWER_MONITOR_REQUEST_REASON.ScreenOffRequest;
pub const MonitorRequestReasonIdleTimeout = POWER_MONITOR_REQUEST_REASON.IdleTimeout;
pub const MonitorRequestReasonPolicyChange = POWER_MONITOR_REQUEST_REASON.PolicyChange;
pub const MonitorRequestReasonSleepButton = POWER_MONITOR_REQUEST_REASON.SleepButton;
pub const MonitorRequestReasonLid = POWER_MONITOR_REQUEST_REASON.Lid;
pub const MonitorRequestReasonBatteryCountChange = POWER_MONITOR_REQUEST_REASON.BatteryCountChange;
pub const MonitorRequestReasonGracePeriod = POWER_MONITOR_REQUEST_REASON.GracePeriod;
pub const MonitorRequestReasonPnP = POWER_MONITOR_REQUEST_REASON.PnP;
pub const MonitorRequestReasonDP = POWER_MONITOR_REQUEST_REASON.DP;
pub const MonitorRequestReasonSxTransition = POWER_MONITOR_REQUEST_REASON.SxTransition;
pub const MonitorRequestReasonSystemIdle = POWER_MONITOR_REQUEST_REASON.SystemIdle;
pub const MonitorRequestReasonNearProximity = POWER_MONITOR_REQUEST_REASON.NearProximity;
pub const MonitorRequestReasonThermalStandby = POWER_MONITOR_REQUEST_REASON.ThermalStandby;
pub const MonitorRequestReasonResumePdc = POWER_MONITOR_REQUEST_REASON.ResumePdc;
pub const MonitorRequestReasonResumeS4 = POWER_MONITOR_REQUEST_REASON.ResumeS4;
pub const MonitorRequestReasonTerminal = POWER_MONITOR_REQUEST_REASON.Terminal;
pub const MonitorRequestReasonPdcSignal = POWER_MONITOR_REQUEST_REASON.PdcSignal;
pub const MonitorRequestReasonAcDcDisplayBurstSuppressed = POWER_MONITOR_REQUEST_REASON.AcDcDisplayBurstSuppressed;
pub const MonitorRequestReasonSystemStateEntered = POWER_MONITOR_REQUEST_REASON.SystemStateEntered;
pub const MonitorRequestReasonWinrt = POWER_MONITOR_REQUEST_REASON.Winrt;
pub const MonitorRequestReasonUserInputKeyboard = POWER_MONITOR_REQUEST_REASON.UserInputKeyboard;
pub const MonitorRequestReasonUserInputMouse = POWER_MONITOR_REQUEST_REASON.UserInputMouse;
pub const MonitorRequestReasonUserInputTouchpad = POWER_MONITOR_REQUEST_REASON.UserInputTouchpad;
pub const MonitorRequestReasonUserInputPen = POWER_MONITOR_REQUEST_REASON.UserInputPen;
pub const MonitorRequestReasonUserInputAccelerometer = POWER_MONITOR_REQUEST_REASON.UserInputAccelerometer;
pub const MonitorRequestReasonUserInputHid = POWER_MONITOR_REQUEST_REASON.UserInputHid;
pub const MonitorRequestReasonUserInputPoUserPresent = POWER_MONITOR_REQUEST_REASON.UserInputPoUserPresent;
pub const MonitorRequestReasonUserInputSessionSwitch = POWER_MONITOR_REQUEST_REASON.UserInputSessionSwitch;
pub const MonitorRequestReasonUserInputInitialization = POWER_MONITOR_REQUEST_REASON.UserInputInitialization;
pub const MonitorRequestReasonPdcSignalWindowsMobilePwrNotif = POWER_MONITOR_REQUEST_REASON.PdcSignalWindowsMobilePwrNotif;
pub const MonitorRequestReasonPdcSignalWindowsMobileShell = POWER_MONITOR_REQUEST_REASON.PdcSignalWindowsMobileShell;
pub const MonitorRequestReasonPdcSignalHeyCortana = POWER_MONITOR_REQUEST_REASON.PdcSignalHeyCortana;
pub const MonitorRequestReasonPdcSignalHolographicShell = POWER_MONITOR_REQUEST_REASON.PdcSignalHolographicShell;
pub const MonitorRequestReasonPdcSignalFingerprint = POWER_MONITOR_REQUEST_REASON.PdcSignalFingerprint;
pub const MonitorRequestReasonDirectedDrips = POWER_MONITOR_REQUEST_REASON.DirectedDrips;
pub const MonitorRequestReasonDim = POWER_MONITOR_REQUEST_REASON.Dim;
pub const MonitorRequestReasonBuiltinPanel = POWER_MONITOR_REQUEST_REASON.BuiltinPanel;
pub const MonitorRequestReasonDisplayRequiredUnDim = POWER_MONITOR_REQUEST_REASON.DisplayRequiredUnDim;
pub const MonitorRequestReasonBatteryCountChangeSuppressed = POWER_MONITOR_REQUEST_REASON.BatteryCountChangeSuppressed;
pub const MonitorRequestReasonResumeModernStandby = POWER_MONITOR_REQUEST_REASON.ResumeModernStandby;
pub const MonitorRequestReasonTerminalInit = POWER_MONITOR_REQUEST_REASON.TerminalInit;
pub const MonitorRequestReasonPdcSignalSensorsHumanPresence = POWER_MONITOR_REQUEST_REASON.PdcSignalSensorsHumanPresence;
pub const MonitorRequestReasonBatteryPreCritical = POWER_MONITOR_REQUEST_REASON.BatteryPreCritical;
pub const MonitorRequestReasonUserInputTouch = POWER_MONITOR_REQUEST_REASON.UserInputTouch;
pub const MonitorRequestReasonMax = POWER_MONITOR_REQUEST_REASON.Max;

pub const POWER_MONITOR_REQUEST_TYPE = enum(i32) {
    Off = 0,
    OnAndPresent = 1,
    ToggleOn = 2,
};
pub const MonitorRequestTypeOff = POWER_MONITOR_REQUEST_TYPE.Off;
pub const MonitorRequestTypeOnAndPresent = POWER_MONITOR_REQUEST_TYPE.OnAndPresent;
pub const MonitorRequestTypeToggleOn = POWER_MONITOR_REQUEST_TYPE.ToggleOn;

pub const POWER_MONITOR_INVOCATION = extern struct {
    Console: BOOLEAN,
    RequestReason: POWER_MONITOR_REQUEST_REASON,
};

pub const RESUME_PERFORMANCE = extern struct {
    PostTimeMs: u32,
    TotalResumeTimeMs: u64,
    ResumeCompleteTimestamp: u64,
};

pub const NOTIFY_USER_POWER_SETTING = extern struct {
    Guid: Guid,
};

pub const APPLICATIONLAUNCH_SETTING_VALUE = extern struct {
    ActivationTime: LARGE_INTEGER,
    Flags: u32,
    ButtonInstanceID: u32,
};

pub const POWER_PLATFORM_INFORMATION = extern struct {
    AoAc: BOOLEAN,
};

pub const POWER_SETTING_ALTITUDE = enum(i32) {
    GROUP_POLICY = 0,
    USER = 1,
    RUNTIME_OVERRIDE = 2,
    PROVISIONING = 3,
    OEM_CUSTOMIZATION = 4,
    INTERNAL_OVERRIDE = 5,
    OS_DEFAULT = 6,
};
pub const ALTITUDE_GROUP_POLICY = POWER_SETTING_ALTITUDE.GROUP_POLICY;
pub const ALTITUDE_USER = POWER_SETTING_ALTITUDE.USER;
pub const ALTITUDE_RUNTIME_OVERRIDE = POWER_SETTING_ALTITUDE.RUNTIME_OVERRIDE;
pub const ALTITUDE_PROVISIONING = POWER_SETTING_ALTITUDE.PROVISIONING;
pub const ALTITUDE_OEM_CUSTOMIZATION = POWER_SETTING_ALTITUDE.OEM_CUSTOMIZATION;
pub const ALTITUDE_INTERNAL_OVERRIDE = POWER_SETTING_ALTITUDE.INTERNAL_OVERRIDE;
pub const ALTITUDE_OS_DEFAULT = POWER_SETTING_ALTITUDE.OS_DEFAULT;

pub const PPM_WMI_LEGACY_PERFSTATE = extern struct {
    Frequency: u32,
    Flags: u32,
    PercentFrequency: u32,
};

pub const PPM_WMI_IDLE_STATE = extern struct {
    Latency: u32,
    Power: u32,
    TimeCheck: u32,
    PromotePercent: u8,
    DemotePercent: u8,
    StateType: u8,
    Reserved: u8,
    StateFlags: u32,
    Context: u32,
    IdleHandler: u32,
    Reserved1: u32,
};

pub const PPM_WMI_IDLE_STATES = extern struct {
    Type: u32,
    Count: u32,
    TargetState: u32,
    OldState: u32,
    TargetProcessors: u64,
    State: [1]PPM_WMI_IDLE_STATE,
};

pub const PPM_WMI_IDLE_STATES_EX = extern struct {
    Type: u32,
    Count: u32,
    TargetState: u32,
    OldState: u32,
    TargetProcessors: ?*anyopaque,
    State: [1]PPM_WMI_IDLE_STATE,
};

pub const PPM_WMI_PERF_STATE = extern struct {
    Frequency: u32,
    Power: u32,
    PercentFrequency: u8,
    IncreaseLevel: u8,
    DecreaseLevel: u8,
    Type: u8,
    IncreaseTime: u32,
    DecreaseTime: u32,
    Control: u64,
    Status: u64,
    HitCount: u32,
    Reserved1: u32,
    Reserved2: u64,
    Reserved3: u64,
};

pub const PPM_WMI_PERF_STATES = extern struct {
    Count: u32,
    MaxFrequency: u32,
    CurrentState: u32,
    MaxPerfState: u32,
    MinPerfState: u32,
    LowestPerfState: u32,
    ThermalConstraint: u32,
    BusyAdjThreshold: u8,
    PolicyType: u8,
    Type: u8,
    Reserved: u8,
    TimerInterval: u32,
    TargetProcessors: u64,
    PStateHandler: u32,
    PStateContext: u32,
    TStateHandler: u32,
    TStateContext: u32,
    FeedbackHandler: u32,
    Reserved1: u32,
    Reserved2: u64,
    State: [1]PPM_WMI_PERF_STATE,
};

pub const PPM_WMI_PERF_STATES_EX = extern struct {
    Count: u32,
    MaxFrequency: u32,
    CurrentState: u32,
    MaxPerfState: u32,
    MinPerfState: u32,
    LowestPerfState: u32,
    ThermalConstraint: u32,
    BusyAdjThreshold: u8,
    PolicyType: u8,
    Type: u8,
    Reserved: u8,
    TimerInterval: u32,
    TargetProcessors: ?*anyopaque,
    PStateHandler: u32,
    PStateContext: u32,
    TStateHandler: u32,
    TStateContext: u32,
    FeedbackHandler: u32,
    Reserved1: u32,
    Reserved2: u64,
    State: [1]PPM_WMI_PERF_STATE,
};

pub const PPM_IDLE_STATE_ACCOUNTING = extern struct {
    IdleTransitions: u32,
    FailedTransitions: u32,
    InvalidBucketIndex: u32,
    TotalTime: u64,
    IdleTimeBuckets: [6]u32,
};

pub const PPM_IDLE_ACCOUNTING = extern struct {
    StateCount: u32,
    TotalTransitions: u32,
    ResetCount: u32,
    StartTime: u64,
    State: [1]PPM_IDLE_STATE_ACCOUNTING,
};

pub const PPM_IDLE_STATE_BUCKET_EX = extern struct {
    TotalTimeUs: u64,
    MinTimeUs: u32,
    MaxTimeUs: u32,
    Count: u32,
};

pub const PPM_IDLE_STATE_ACCOUNTING_EX = extern struct {
    TotalTime: u64,
    IdleTransitions: u32,
    FailedTransitions: u32,
    InvalidBucketIndex: u32,
    MinTimeUs: u32,
    MaxTimeUs: u32,
    CancelledTransitions: u32,
    IdleTimeBuckets: [16]PPM_IDLE_STATE_BUCKET_EX,
};

pub const PPM_IDLE_ACCOUNTING_EX = extern struct {
    StateCount: u32,
    TotalTransitions: u32,
    ResetCount: u32,
    AbortCount: u32,
    StartTime: u64,
    State: [1]PPM_IDLE_STATE_ACCOUNTING_EX,
};

pub const PPM_PERFSTATE_EVENT = extern struct {
    State: u32,
    Status: u32,
    Latency: u32,
    Speed: u32,
    Processor: u32,
};

pub const PPM_PERFSTATE_DOMAIN_EVENT = extern struct {
    State: u32,
    Latency: u32,
    Speed: u32,
    Processors: u64,
};

pub const PPM_IDLESTATE_EVENT = extern struct {
    NewState: u32,
    OldState: u32,
    Processors: u64,
};

pub const PPM_THERMALCHANGE_EVENT = extern struct {
    ThermalConstraint: u32,
    Processors: u64,
};

pub const PPM_THERMAL_POLICY_EVENT = extern struct {
    Mode: u8,
    Processors: u64,
};

pub const PROCESSOR_IDLESTATE_INFO = extern struct {
    TimeCheck: u32,
    DemotePercent: u8,
    PromotePercent: u8,
    Spare: [2]u8,
};

pub const PROCESSOR_IDLESTATE_POLICY = extern struct {
    Revision: u16,
    Flags: extern union {
        AsWORD: u16,
        Anonymous: extern struct {
            _bitfield: u16,
        },
    },
    PolicyCount: u32,
    Policy: [3]PROCESSOR_IDLESTATE_INFO,
};

pub const PROCESSOR_PERFSTATE_POLICY = extern struct {
    Revision: u32,
    MaxThrottle: u8,
    MinThrottle: u8,
    BusyAdjThreshold: u8,
    Anonymous: extern union {
        Spare: u8,
        Flags: extern union {
            AsBYTE: u8,
            Anonymous: extern struct {
                _bitfield: u8,
            },
        },
    },
    TimeCheck: u32,
    IncreaseTime: u32,
    DecreaseTime: u32,
    IncreasePercent: u32,
    DecreasePercent: u32,
};

pub const HIBERFILE_BUCKET_SIZE = enum(i32) {
    @"1GB" = 0,
    @"2GB" = 1,
    @"4GB" = 2,
    @"8GB" = 3,
    @"16GB" = 4,
    @"32GB" = 5,
    Unlimited = 6,
    Max = 7,
};
pub const HiberFileBucket1GB = HIBERFILE_BUCKET_SIZE.@"1GB";
pub const HiberFileBucket2GB = HIBERFILE_BUCKET_SIZE.@"2GB";
pub const HiberFileBucket4GB = HIBERFILE_BUCKET_SIZE.@"4GB";
pub const HiberFileBucket8GB = HIBERFILE_BUCKET_SIZE.@"8GB";
pub const HiberFileBucket16GB = HIBERFILE_BUCKET_SIZE.@"16GB";
pub const HiberFileBucket32GB = HIBERFILE_BUCKET_SIZE.@"32GB";
pub const HiberFileBucketUnlimited = HIBERFILE_BUCKET_SIZE.Unlimited;
pub const HiberFileBucketMax = HIBERFILE_BUCKET_SIZE.Max;

pub const HIBERFILE_BUCKET = extern struct {
    MaxPhysicalMemory: u64,
    PhysicalMemoryPercent: [3]u32,
};

pub const IMAGE_DOS_HEADER = extern struct {
    e_magic: u16 align(2),
    e_cblp: u16 align(2),
    e_cp: u16 align(2),
    e_crlc: u16 align(2),
    e_cparhdr: u16 align(2),
    e_minalloc: u16 align(2),
    e_maxalloc: u16 align(2),
    e_ss: u16 align(2),
    e_sp: u16 align(2),
    e_csum: u16 align(2),
    e_ip: u16 align(2),
    e_cs: u16 align(2),
    e_lfarlc: u16 align(2),
    e_ovno: u16 align(2),
    e_res: [4]u16 align(2),
    e_oemid: u16 align(2),
    e_oeminfo: u16 align(2),
    e_res2: [10]u16 align(2),
    e_lfanew: i32 align(2),
};

pub const IMAGE_OS2_HEADER = extern struct {
    ne_magic: u16 align(2),
    ne_ver: CHAR align(2),
    ne_rev: CHAR align(2),
    ne_enttab: u16 align(2),
    ne_cbenttab: u16 align(2),
    ne_crc: i32 align(2),
    ne_flags: u16 align(2),
    ne_autodata: u16 align(2),
    ne_heap: u16 align(2),
    ne_stack: u16 align(2),
    ne_csip: i32 align(2),
    ne_sssp: i32 align(2),
    ne_cseg: u16 align(2),
    ne_cmod: u16 align(2),
    ne_cbnrestab: u16 align(2),
    ne_segtab: u16 align(2),
    ne_rsrctab: u16 align(2),
    ne_restab: u16 align(2),
    ne_modtab: u16 align(2),
    ne_imptab: u16 align(2),
    ne_nrestab: i32 align(2),
    ne_cmovent: u16 align(2),
    ne_align: u16 align(2),
    ne_cres: u16 align(2),
    ne_exetyp: u8 align(2),
    ne_flagsothers: u8 align(2),
    ne_pretthunks: u16 align(2),
    ne_psegrefbytes: u16 align(2),
    ne_swaparea: u16 align(2),
    ne_expver: u16 align(2),
};

pub const IMAGE_VXD_HEADER = extern struct {
    e32_magic: u16 align(2),
    e32_border: u8 align(2),
    e32_worder: u8 align(2),
    e32_level: u32 align(2),
    e32_cpu: u16 align(2),
    e32_os: u16 align(2),
    e32_ver: u32 align(2),
    e32_mflags: u32 align(2),
    e32_mpages: u32 align(2),
    e32_startobj: u32 align(2),
    e32_eip: u32 align(2),
    e32_stackobj: u32 align(2),
    e32_esp: u32 align(2),
    e32_pagesize: u32 align(2),
    e32_lastpagesize: u32 align(2),
    e32_fixupsize: u32 align(2),
    e32_fixupsum: u32 align(2),
    e32_ldrsize: u32 align(2),
    e32_ldrsum: u32 align(2),
    e32_objtab: u32 align(2),
    e32_objcnt: u32 align(2),
    e32_objmap: u32 align(2),
    e32_itermap: u32 align(2),
    e32_rsrctab: u32 align(2),
    e32_rsrccnt: u32 align(2),
    e32_restab: u32 align(2),
    e32_enttab: u32 align(2),
    e32_dirtab: u32 align(2),
    e32_dircnt: u32 align(2),
    e32_fpagetab: u32 align(2),
    e32_frectab: u32 align(2),
    e32_impmod: u32 align(2),
    e32_impmodcnt: u32 align(2),
    e32_impproc: u32 align(2),
    e32_pagesum: u32 align(2),
    e32_datapage: u32 align(2),
    e32_preload: u32 align(2),
    e32_nrestab: u32 align(2),
    e32_cbnrestab: u32 align(2),
    e32_nressum: u32 align(2),
    e32_autodata: u32 align(2),
    e32_debuginfo: u32 align(2),
    e32_debuglen: u32 align(2),
    e32_instpreload: u32 align(2),
    e32_instdemand: u32 align(2),
    e32_heapsize: u32 align(2),
    e32_res3: [12]u8 align(2),
    e32_winresoff: u32 align(2),
    e32_winreslen: u32 align(2),
    e32_devid: u16 align(2),
    e32_ddkver: u16 align(2),
};

pub const ANON_OBJECT_HEADER = extern struct {
    Sig1: u16,
    Sig2: u16,
    Version: u16,
    Machine: u16,
    TimeDateStamp: u32,
    ClassID: Guid,
    SizeOfData: u32,
};

pub const ANON_OBJECT_HEADER_V2 = extern struct {
    Sig1: u16,
    Sig2: u16,
    Version: u16,
    Machine: u16,
    TimeDateStamp: u32,
    ClassID: Guid,
    SizeOfData: u32,
    Flags: u32,
    MetaDataSize: u32,
    MetaDataOffset: u32,
};

pub const ANON_OBJECT_HEADER_BIGOBJ = extern struct {
    Sig1: u16,
    Sig2: u16,
    Version: u16,
    Machine: u16,
    TimeDateStamp: u32,
    ClassID: Guid,
    SizeOfData: u32,
    Flags: u32,
    MetaDataSize: u32,
    MetaDataOffset: u32,
    NumberOfSections: u32,
    PointerToSymbolTable: u32,
    NumberOfSymbols: u32,
};

pub const IMAGE_SYMBOL = extern struct {
    N: extern union {
        ShortName: [8]u8 align(2),
        Name: extern struct {
            Short: u32 align(2),
            Long: u32 align(2),
        } align(2),
        LongName: [2]u32 align(2),
    } align(2),
    Value: u32 align(2),
    SectionNumber: i16 align(2),
    Type: u16 align(2),
    StorageClass: u8 align(2),
    NumberOfAuxSymbols: u8 align(2),
};

pub const IMAGE_SYMBOL_EX = extern struct {
    N: extern union {
        ShortName: [8]u8 align(2),
        Name: extern struct {
            Short: u32 align(2),
            Long: u32 align(2),
        } align(2),
        LongName: [2]u32 align(2),
    } align(2),
    Value: u32 align(2),
    SectionNumber: i32 align(2),
    Type: u16 align(2),
    StorageClass: u8 align(2),
    NumberOfAuxSymbols: u8 align(2),
};

pub const IMAGE_AUX_SYMBOL_TOKEN_DEF = extern struct {
    bAuxType: u8 align(2),
    bReserved: u8 align(2),
    SymbolTableIndex: u32 align(2),
    rgbReserved: [12]u8 align(2),
};

pub const IMAGE_AUX_SYMBOL = extern union {
    Sym: extern struct {
        TagIndex: u32 align(2),
        Misc: extern union {
            LnSz: extern struct {
                Linenumber: u16,
                Size: u16,
            } align(2),
            TotalSize: u32 align(2),
        } align(2),
        FcnAry: extern union {
            Function: extern struct {
                PointerToLinenumber: u32 align(2),
                PointerToNextFunction: u32 align(2),
            },
            Array: extern struct {
                Dimension: [4]u16,
            },
        } align(2),
        TvIndex: u16 align(2),
    },
    File: extern struct {
        Name: [18]u8,
    },
    Section: extern struct {
        Length: u32 align(2),
        NumberOfRelocations: u16 align(2),
        NumberOfLinenumbers: u16 align(2),
        CheckSum: u32 align(2),
        Number: i16 align(2),
        Selection: u8 align(2),
        bReserved: u8 align(2),
        HighNumber: i16 align(2),
    },
    TokenDef: IMAGE_AUX_SYMBOL_TOKEN_DEF,
    CRC: extern struct {
        crc: u32 align(2),
        rgbReserved: [14]u8 align(2),
    },
};

pub const IMAGE_AUX_SYMBOL_EX = extern union {
    Sym: extern struct {
        WeakDefaultSymIndex: u32 align(2),
        WeakSearchType: u32 align(2),
        rgbReserved: [12]u8 align(2),
    },
    File: extern struct {
        Name: [20]u8,
    },
    Section: extern struct {
        Length: u32 align(2),
        NumberOfRelocations: u16 align(2),
        NumberOfLinenumbers: u16 align(2),
        CheckSum: u32 align(2),
        Number: i16 align(2),
        Selection: u8 align(2),
        bReserved: u8 align(2),
        HighNumber: i16 align(2),
        rgbReserved: [2]u8 align(2),
    },
    Anonymous: extern struct {
        TokenDef: IMAGE_AUX_SYMBOL_TOKEN_DEF,
        rgbReserved: [2]u8,
    },
    CRC: extern struct {
        crc: u32 align(2),
        rgbReserved: [16]u8 align(2),
    },
};

pub const IMAGE_AUX_SYMBOL_TYPE = enum(i32) {
    F = 1,
};
pub const IMAGE_AUX_SYMBOL_TYPE_TOKEN_DEF = IMAGE_AUX_SYMBOL_TYPE.F;

pub const IMAGE_RELOCATION = extern struct {
    Anonymous: extern union {
        VirtualAddress: u32 align(2),
        RelocCount: u32 align(2),
    } align(2),
    SymbolTableIndex: u32 align(2),
    Type: u16 align(2),
};

pub const IMAGE_LINENUMBER = extern struct {
    Type: extern union {
        SymbolTableIndex: u32 align(2),
        VirtualAddress: u32 align(2),
    },
    Linenumber: u16,
};

pub const IMAGE_BASE_RELOCATION = extern struct {
    VirtualAddress: u32,
    SizeOfBlock: u32,
};

pub const IMAGE_ARCHIVE_MEMBER_HEADER = extern struct {
    Name: [16]u8,
    Date: [12]u8,
    UserID: [6]u8,
    GroupID: [6]u8,
    Mode: [8]u8,
    Size: [10]u8,
    EndHeader: [2]u8,
};

pub const IMAGE_EXPORT_DIRECTORY = extern struct {
    Characteristics: u32,
    TimeDateStamp: u32,
    MajorVersion: u16,
    MinorVersion: u16,
    Name: u32,
    Base: u32,
    NumberOfFunctions: u32,
    NumberOfNames: u32,
    AddressOfFunctions: u32,
    AddressOfNames: u32,
    AddressOfNameOrdinals: u32,
};

pub const IMAGE_IMPORT_BY_NAME = extern struct {
    Hint: u16,
    Name: [1]CHAR,
};

pub const PIMAGE_TLS_CALLBACK = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        DllHandle: ?*anyopaque,
        Reason: u32,
        Reserved: ?*anyopaque,
    ) callconv(@import("std").os.windows.WINAPI) void,
    else => *const fn (
        DllHandle: ?*anyopaque,
        Reason: u32,
        Reserved: ?*anyopaque,
    ) callconv(@import("std").os.windows.WINAPI) void,
};

pub const IMAGE_TLS_DIRECTORY64 = extern struct {
    StartAddressOfRawData: u64 align(4),
    EndAddressOfRawData: u64 align(4),
    AddressOfIndex: u64 align(4),
    AddressOfCallBacks: u64 align(4),
    SizeOfZeroFill: u32 align(4),
    Anonymous: extern union {
        Characteristics: u32,
        Anonymous: extern struct {
            _bitfield: u32,
        },
    } align(4),
};

pub const IMAGE_TLS_DIRECTORY32 = extern struct {
    StartAddressOfRawData: u32,
    EndAddressOfRawData: u32,
    AddressOfIndex: u32,
    AddressOfCallBacks: u32,
    SizeOfZeroFill: u32,
    Anonymous: extern union {
        Characteristics: u32,
        Anonymous: extern struct {
            _bitfield: u32,
        },
    },
};

pub const IMAGE_IMPORT_DESCRIPTOR = extern struct {
    Anonymous: extern union {
        Characteristics: u32,
        OriginalFirstThunk: u32,
    },
    TimeDateStamp: u32,
    ForwarderChain: u32,
    Name: u32,
    FirstThunk: u32,
};

pub const IMAGE_BOUND_IMPORT_DESCRIPTOR = extern struct {
    TimeDateStamp: u32,
    OffsetModuleName: u16,
    NumberOfModuleForwarderRefs: u16,
};

pub const IMAGE_BOUND_FORWARDER_REF = extern struct {
    TimeDateStamp: u32,
    OffsetModuleName: u16,
    Reserved: u16,
};

pub const IMAGE_RESOURCE_DIRECTORY = extern struct {
    Characteristics: u32,
    TimeDateStamp: u32,
    MajorVersion: u16,
    MinorVersion: u16,
    NumberOfNamedEntries: u16,
    NumberOfIdEntries: u16,
};

pub const IMAGE_RESOURCE_DIRECTORY_ENTRY = extern struct {
    Anonymous1: extern union {
        Anonymous: extern struct {
            _bitfield: u32,
        },
        Name: u32,
        Id: u16,
    },
    Anonymous2: extern union {
        OffsetToData: u32,
        Anonymous: extern struct {
            _bitfield: u32,
        },
    },
};

pub const IMAGE_RESOURCE_DIRECTORY_STRING = extern struct {
    Length: u16,
    NameString: [1]CHAR,
};

pub const IMAGE_RESOURCE_DIR_STRING_U = extern struct {
    Length: u16,
    NameString: [1]u16,
};

pub const IMAGE_RESOURCE_DATA_ENTRY = extern struct {
    OffsetToData: u32,
    Size: u32,
    CodePage: u32,
    Reserved: u32,
};

pub const IMAGE_DYNAMIC_RELOCATION_TABLE = extern struct {
    Version: u32,
    Size: u32,
};

pub const IMAGE_DYNAMIC_RELOCATION32 = extern struct {
    Symbol: u32 align(1),
    BaseRelocSize: u32 align(1),
};

pub const IMAGE_DYNAMIC_RELOCATION64 = extern struct {
    Symbol: u64 align(1),
    BaseRelocSize: u32 align(1),
};

pub const IMAGE_DYNAMIC_RELOCATION32_V2 = extern struct {
    HeaderSize: u32 align(1),
    FixupInfoSize: u32 align(1),
    Symbol: u32 align(1),
    SymbolGroup: u32 align(1),
    Flags: u32 align(1),
};

pub const IMAGE_DYNAMIC_RELOCATION64_V2 = extern struct {
    HeaderSize: u32 align(1),
    FixupInfoSize: u32 align(1),
    Symbol: u64 align(1),
    SymbolGroup: u32 align(1),
    Flags: u32 align(1),
};

pub const IMAGE_PROLOGUE_DYNAMIC_RELOCATION_HEADER = extern struct {
    PrologueByteCount: u8,
};

pub const IMAGE_EPILOGUE_DYNAMIC_RELOCATION_HEADER = extern struct {
    EpilogueCount: u32 align(1),
    EpilogueByteCount: u8 align(1),
    BranchDescriptorElementSize: u8 align(1),
    BranchDescriptorCount: u16 align(1),
};

pub const IMAGE_IMPORT_CONTROL_TRANSFER_DYNAMIC_RELOCATION = extern struct {
    _bitfield: u32 align(1),
};

pub const IMAGE_INDIR_CONTROL_TRANSFER_DYNAMIC_RELOCATION = extern struct {
    _bitfield: u16 align(1),
};

pub const IMAGE_SWITCHTABLE_BRANCH_DYNAMIC_RELOCATION = extern struct {
    _bitfield: u16 align(1),
};

pub const IMAGE_HOT_PATCH_INFO = extern struct {
    Version: u32,
    Size: u32,
    SequenceNumber: u32,
    BaseImageList: u32,
    BaseImageCount: u32,
    BufferOffset: u32,
    ExtraPatchSize: u32,
};

pub const IMAGE_HOT_PATCH_BASE = extern struct {
    SequenceNumber: u32,
    Flags: u32,
    OriginalTimeDateStamp: u32,
    OriginalCheckSum: u32,
    CodeIntegrityInfo: u32,
    CodeIntegritySize: u32,
    PatchTable: u32,
    BufferOffset: u32,
};

pub const IMAGE_HOT_PATCH_HASHES = extern struct {
    SHA256: [32]u8,
    SHA1: [20]u8,
};

pub const IMAGE_CE_RUNTIME_FUNCTION_ENTRY = extern struct {
    FuncStart: u32,
    _bitfield: u32,
};

pub const IMAGE_ARM_RUNTIME_FUNCTION_ENTRY = extern struct {
    BeginAddress: u32,
    Anonymous: extern union {
        UnwindData: u32,
        Anonymous: extern struct {
            _bitfield: u32,
        },
    },
};

pub const ARM64_FNPDATA_FLAGS = enum(i32) {
    RefToFullXdata = 0,
    PackedUnwindFunction = 1,
    PackedUnwindFragment = 2,
};
pub const PdataRefToFullXdata = ARM64_FNPDATA_FLAGS.RefToFullXdata;
pub const PdataPackedUnwindFunction = ARM64_FNPDATA_FLAGS.PackedUnwindFunction;
pub const PdataPackedUnwindFragment = ARM64_FNPDATA_FLAGS.PackedUnwindFragment;

pub const ARM64_FNPDATA_CR = enum(i32) {
    Unchained = 0,
    UnchainedSavedLr = 1,
    ChainedWithPac = 2,
    Chained = 3,
};
pub const PdataCrUnchained = ARM64_FNPDATA_CR.Unchained;
pub const PdataCrUnchainedSavedLr = ARM64_FNPDATA_CR.UnchainedSavedLr;
pub const PdataCrChainedWithPac = ARM64_FNPDATA_CR.ChainedWithPac;
pub const PdataCrChained = ARM64_FNPDATA_CR.Chained;

pub const IMAGE_ARM64_RUNTIME_FUNCTION_ENTRY_XDATA = extern union {
    HeaderData: u32,
    Anonymous: extern struct {
        _bitfield: u32,
    },
};

pub const IMAGE_ALPHA64_RUNTIME_FUNCTION_ENTRY = extern struct {
    BeginAddress: u64 align(4),
    EndAddress: u64 align(4),
    ExceptionHandler: u64 align(4),
    HandlerData: u64 align(4),
    PrologEndAddress: u64 align(4),
};

pub const IMAGE_ALPHA_RUNTIME_FUNCTION_ENTRY = extern struct {
    BeginAddress: u32,
    EndAddress: u32,
    ExceptionHandler: u32,
    HandlerData: u32,
    PrologEndAddress: u32,
};

pub const IMAGE_DEBUG_MISC = extern struct {
    DataType: u32,
    Length: u32,
    Unicode: BOOLEAN,
    Reserved: [3]u8,
    Data: [1]u8,
};

pub const IMAGE_SEPARATE_DEBUG_HEADER = extern struct {
    Signature: u16,
    Flags: u16,
    Machine: u16,
    Characteristics: u16,
    TimeDateStamp: u32,
    CheckSum: u32,
    ImageBase: u32,
    SizeOfImage: u32,
    NumberOfSections: u32,
    ExportedNamesSize: u32,
    DebugDirectorySize: u32,
    SectionAlignment: u32,
    Reserved: [2]u32,
};

pub const NON_PAGED_DEBUG_INFO = extern struct {
    Signature: u16 align(4),
    Flags: u16 align(4),
    Size: u32 align(4),
    Machine: u16 align(4),
    Characteristics: u16 align(4),
    TimeDateStamp: u32 align(4),
    CheckSum: u32 align(4),
    SizeOfImage: u32 align(4),
    ImageBase: u64 align(4),
};

pub const IMAGE_ARCHITECTURE_HEADER = extern struct {
    _bitfield: u32,
    FirstEntryRVA: u32,
};

pub const IMAGE_ARCHITECTURE_ENTRY = extern struct {
    FixupInstRVA: u32,
    NewInst: u32,
};

pub const IMPORT_OBJECT_HEADER = extern struct {
    Sig1: u16,
    Sig2: u16,
    Version: u16,
    Machine: u16,
    TimeDateStamp: u32,
    SizeOfData: u32,
    Anonymous: extern union {
        Ordinal: u16,
        Hint: u16,
    },
    _bitfield: u16,
};

pub const IMPORT_OBJECT_TYPE = enum(i32) {
    CODE = 0,
    DATA = 1,
    CONST = 2,
};
pub const IMPORT_OBJECT_CODE = IMPORT_OBJECT_TYPE.CODE;
pub const IMPORT_OBJECT_DATA = IMPORT_OBJECT_TYPE.DATA;
pub const IMPORT_OBJECT_CONST = IMPORT_OBJECT_TYPE.CONST;

pub const IMPORT_OBJECT_NAME_TYPE = enum(i32) {
    ORDINAL = 0,
    NAME = 1,
    NAME_NO_PREFIX = 2,
    NAME_UNDECORATE = 3,
    NAME_EXPORTAS = 4,
};
pub const IMPORT_OBJECT_ORDINAL = IMPORT_OBJECT_NAME_TYPE.ORDINAL;
pub const IMPORT_OBJECT_NAME = IMPORT_OBJECT_NAME_TYPE.NAME;
pub const IMPORT_OBJECT_NAME_NO_PREFIX = IMPORT_OBJECT_NAME_TYPE.NAME_NO_PREFIX;
pub const IMPORT_OBJECT_NAME_UNDECORATE = IMPORT_OBJECT_NAME_TYPE.NAME_UNDECORATE;
pub const IMPORT_OBJECT_NAME_EXPORTAS = IMPORT_OBJECT_NAME_TYPE.NAME_EXPORTAS;

pub const ReplacesCorHdrNumericDefines = enum(i32) {
    COMIMAGE_FLAGS_ILONLY = 1,
    COMIMAGE_FLAGS_32BITREQUIRED = 2,
    COMIMAGE_FLAGS_IL_LIBRARY = 4,
    COMIMAGE_FLAGS_STRONGNAMESIGNED = 8,
    COMIMAGE_FLAGS_NATIVE_ENTRYPOINT = 16,
    COMIMAGE_FLAGS_TRACKDEBUGDATA = 65536,
    COMIMAGE_FLAGS_32BITPREFERRED = 131072,
    // COR_VERSION_MAJOR_V2 = 2, this enum value conflicts with COMIMAGE_FLAGS_32BITREQUIRED
    // COR_VERSION_MAJOR = 2, this enum value conflicts with COMIMAGE_FLAGS_32BITREQUIRED
    COR_VERSION_MINOR = 5,
    // COR_DELETED_NAME_LENGTH = 8, this enum value conflicts with COMIMAGE_FLAGS_STRONGNAMESIGNED
    // COR_VTABLEGAP_NAME_LENGTH = 8, this enum value conflicts with COMIMAGE_FLAGS_STRONGNAMESIGNED
    // NATIVE_TYPE_MAX_CB = 1, this enum value conflicts with COMIMAGE_FLAGS_ILONLY
    COR_ILMETHOD_SECT_SMALL_MAX_DATASIZE = 255,
    // IMAGE_COR_MIH_METHODRVA = 1, this enum value conflicts with COMIMAGE_FLAGS_ILONLY
    // IMAGE_COR_MIH_EHRVA = 2, this enum value conflicts with COMIMAGE_FLAGS_32BITREQUIRED
    // IMAGE_COR_MIH_BASICBLOCK = 8, this enum value conflicts with COMIMAGE_FLAGS_STRONGNAMESIGNED
    // COR_VTABLE_32BIT = 1, this enum value conflicts with COMIMAGE_FLAGS_ILONLY
    // COR_VTABLE_64BIT = 2, this enum value conflicts with COMIMAGE_FLAGS_32BITREQUIRED
    // COR_VTABLE_FROM_UNMANAGED = 4, this enum value conflicts with COMIMAGE_FLAGS_IL_LIBRARY
    // COR_VTABLE_FROM_UNMANAGED_RETAIN_APPDOMAIN = 8, this enum value conflicts with COMIMAGE_FLAGS_STRONGNAMESIGNED
    // COR_VTABLE_CALL_MOST_DERIVED = 16, this enum value conflicts with COMIMAGE_FLAGS_NATIVE_ENTRYPOINT
    IMAGE_COR_EATJ_THUNK_SIZE = 32,
    MAX_CLASS_NAME = 1024,
    // MAX_PACKAGE_NAME = 1024, this enum value conflicts with MAX_CLASS_NAME
};
pub const COMIMAGE_FLAGS_ILONLY = ReplacesCorHdrNumericDefines.COMIMAGE_FLAGS_ILONLY;
pub const COMIMAGE_FLAGS_32BITREQUIRED = ReplacesCorHdrNumericDefines.COMIMAGE_FLAGS_32BITREQUIRED;
pub const COMIMAGE_FLAGS_IL_LIBRARY = ReplacesCorHdrNumericDefines.COMIMAGE_FLAGS_IL_LIBRARY;
pub const COMIMAGE_FLAGS_STRONGNAMESIGNED = ReplacesCorHdrNumericDefines.COMIMAGE_FLAGS_STRONGNAMESIGNED;
pub const COMIMAGE_FLAGS_NATIVE_ENTRYPOINT = ReplacesCorHdrNumericDefines.COMIMAGE_FLAGS_NATIVE_ENTRYPOINT;
pub const COMIMAGE_FLAGS_TRACKDEBUGDATA = ReplacesCorHdrNumericDefines.COMIMAGE_FLAGS_TRACKDEBUGDATA;
pub const COMIMAGE_FLAGS_32BITPREFERRED = ReplacesCorHdrNumericDefines.COMIMAGE_FLAGS_32BITPREFERRED;
pub const COR_VERSION_MAJOR_V2 = ReplacesCorHdrNumericDefines.COMIMAGE_FLAGS_32BITREQUIRED;
pub const COR_VERSION_MAJOR = ReplacesCorHdrNumericDefines.COMIMAGE_FLAGS_32BITREQUIRED;
pub const COR_VERSION_MINOR = ReplacesCorHdrNumericDefines.COR_VERSION_MINOR;
pub const COR_DELETED_NAME_LENGTH = ReplacesCorHdrNumericDefines.COMIMAGE_FLAGS_STRONGNAMESIGNED;
pub const COR_VTABLEGAP_NAME_LENGTH = ReplacesCorHdrNumericDefines.COMIMAGE_FLAGS_STRONGNAMESIGNED;
pub const NATIVE_TYPE_MAX_CB = ReplacesCorHdrNumericDefines.COMIMAGE_FLAGS_ILONLY;
pub const COR_ILMETHOD_SECT_SMALL_MAX_DATASIZE = ReplacesCorHdrNumericDefines.COR_ILMETHOD_SECT_SMALL_MAX_DATASIZE;
pub const IMAGE_COR_MIH_METHODRVA = ReplacesCorHdrNumericDefines.COMIMAGE_FLAGS_ILONLY;
pub const IMAGE_COR_MIH_EHRVA = ReplacesCorHdrNumericDefines.COMIMAGE_FLAGS_32BITREQUIRED;
pub const IMAGE_COR_MIH_BASICBLOCK = ReplacesCorHdrNumericDefines.COMIMAGE_FLAGS_STRONGNAMESIGNED;
pub const COR_VTABLE_32BIT = ReplacesCorHdrNumericDefines.COMIMAGE_FLAGS_ILONLY;
pub const COR_VTABLE_64BIT = ReplacesCorHdrNumericDefines.COMIMAGE_FLAGS_32BITREQUIRED;
pub const COR_VTABLE_FROM_UNMANAGED = ReplacesCorHdrNumericDefines.COMIMAGE_FLAGS_IL_LIBRARY;
pub const COR_VTABLE_FROM_UNMANAGED_RETAIN_APPDOMAIN = ReplacesCorHdrNumericDefines.COMIMAGE_FLAGS_STRONGNAMESIGNED;
pub const COR_VTABLE_CALL_MOST_DERIVED = ReplacesCorHdrNumericDefines.COMIMAGE_FLAGS_NATIVE_ENTRYPOINT;
pub const IMAGE_COR_EATJ_THUNK_SIZE = ReplacesCorHdrNumericDefines.IMAGE_COR_EATJ_THUNK_SIZE;
pub const MAX_CLASS_NAME = ReplacesCorHdrNumericDefines.MAX_CLASS_NAME;
pub const MAX_PACKAGE_NAME = ReplacesCorHdrNumericDefines.MAX_CLASS_NAME;

pub const RTL_UMS_SCHEDULER_REASON = enum(i32) {
    Startup = 0,
    ThreadBlocked = 1,
    ThreadYield = 2,
};
pub const UmsSchedulerStartup = RTL_UMS_SCHEDULER_REASON.Startup;
pub const UmsSchedulerThreadBlocked = RTL_UMS_SCHEDULER_REASON.ThreadBlocked;
pub const UmsSchedulerThreadYield = RTL_UMS_SCHEDULER_REASON.ThreadYield;

pub const IMAGE_POLICY_ENTRY_TYPE = enum(i32) {
    None = 0,
    Bool = 1,
    Int8 = 2,
    UInt8 = 3,
    Int16 = 4,
    UInt16 = 5,
    Int32 = 6,
    UInt32 = 7,
    Int64 = 8,
    UInt64 = 9,
    AnsiString = 10,
    UnicodeString = 11,
    Override = 12,
    Maximum = 13,
};
pub const ImagePolicyEntryTypeNone = IMAGE_POLICY_ENTRY_TYPE.None;
pub const ImagePolicyEntryTypeBool = IMAGE_POLICY_ENTRY_TYPE.Bool;
pub const ImagePolicyEntryTypeInt8 = IMAGE_POLICY_ENTRY_TYPE.Int8;
pub const ImagePolicyEntryTypeUInt8 = IMAGE_POLICY_ENTRY_TYPE.UInt8;
pub const ImagePolicyEntryTypeInt16 = IMAGE_POLICY_ENTRY_TYPE.Int16;
pub const ImagePolicyEntryTypeUInt16 = IMAGE_POLICY_ENTRY_TYPE.UInt16;
pub const ImagePolicyEntryTypeInt32 = IMAGE_POLICY_ENTRY_TYPE.Int32;
pub const ImagePolicyEntryTypeUInt32 = IMAGE_POLICY_ENTRY_TYPE.UInt32;
pub const ImagePolicyEntryTypeInt64 = IMAGE_POLICY_ENTRY_TYPE.Int64;
pub const ImagePolicyEntryTypeUInt64 = IMAGE_POLICY_ENTRY_TYPE.UInt64;
pub const ImagePolicyEntryTypeAnsiString = IMAGE_POLICY_ENTRY_TYPE.AnsiString;
pub const ImagePolicyEntryTypeUnicodeString = IMAGE_POLICY_ENTRY_TYPE.UnicodeString;
pub const ImagePolicyEntryTypeOverride = IMAGE_POLICY_ENTRY_TYPE.Override;
pub const ImagePolicyEntryTypeMaximum = IMAGE_POLICY_ENTRY_TYPE.Maximum;

pub const IMAGE_POLICY_ID = enum(i32) {
    None = 0,
    Etw = 1,
    Debug = 2,
    CrashDump = 3,
    CrashDumpKey = 4,
    CrashDumpKeyGuid = 5,
    ParentSd = 6,
    ParentSdRev = 7,
    Svn = 8,
    DeviceId = 9,
    Capability = 10,
    ScenarioId = 11,
    Maximum = 12,
};
pub const ImagePolicyIdNone = IMAGE_POLICY_ID.None;
pub const ImagePolicyIdEtw = IMAGE_POLICY_ID.Etw;
pub const ImagePolicyIdDebug = IMAGE_POLICY_ID.Debug;
pub const ImagePolicyIdCrashDump = IMAGE_POLICY_ID.CrashDump;
pub const ImagePolicyIdCrashDumpKey = IMAGE_POLICY_ID.CrashDumpKey;
pub const ImagePolicyIdCrashDumpKeyGuid = IMAGE_POLICY_ID.CrashDumpKeyGuid;
pub const ImagePolicyIdParentSd = IMAGE_POLICY_ID.ParentSd;
pub const ImagePolicyIdParentSdRev = IMAGE_POLICY_ID.ParentSdRev;
pub const ImagePolicyIdSvn = IMAGE_POLICY_ID.Svn;
pub const ImagePolicyIdDeviceId = IMAGE_POLICY_ID.DeviceId;
pub const ImagePolicyIdCapability = IMAGE_POLICY_ID.Capability;
pub const ImagePolicyIdScenarioId = IMAGE_POLICY_ID.ScenarioId;
pub const ImagePolicyIdMaximum = IMAGE_POLICY_ID.Maximum;

pub const IMAGE_POLICY_ENTRY = extern struct {
    Type: IMAGE_POLICY_ENTRY_TYPE,
    PolicyId: IMAGE_POLICY_ID,
    u: extern union {
        None: ?*const anyopaque,
        BoolValue: BOOLEAN,
        Int8Value: i8,
        UInt8Value: u8,
        Int16Value: i16,
        UInt16Value: u16,
        Int32Value: i32,
        UInt32Value: u32,
        Int64Value: i64,
        UInt64Value: u64,
        AnsiStringValue: ?[*:0]const u8,
        UnicodeStringValue: ?[*:0]const u16,
    },
};

pub const IMAGE_POLICY_METADATA = extern struct {
    Version: u8,
    Reserved0: [7]u8,
    ApplicationId: u64,
    Policies: [1]IMAGE_POLICY_ENTRY,
};

pub const HEAP_OPTIMIZE_RESOURCES_INFORMATION = extern struct {
    Version: u32,
    Flags: u32,
};

pub const WORKERCALLBACKFUNC = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        param0: ?*anyopaque,
    ) callconv(@import("std").os.windows.WINAPI) void,
    else => *const fn (
        param0: ?*anyopaque,
    ) callconv(@import("std").os.windows.WINAPI) void,
};

pub const APC_CALLBACK_FUNCTION = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        param0: u32,
        param1: ?*anyopaque,
        param2: ?*anyopaque,
    ) callconv(@import("std").os.windows.WINAPI) void,
    else => *const fn (
        param0: u32,
        param1: ?*anyopaque,
        param2: ?*anyopaque,
    ) callconv(@import("std").os.windows.WINAPI) void,
};

pub const ACTIVATION_CONTEXT_INFO_CLASS = enum(i32) {
    ActivationContextBasicInformation = 1,
    ActivationContextDetailedInformation = 2,
    AssemblyDetailedInformationInActivationContext = 3,
    FileInformationInAssemblyOfAssemblyInActivationContext = 4,
    RunlevelInformationInActivationContext = 5,
    CompatibilityInformationInActivationContext = 6,
    ActivationContextManifestResourceName = 7,
    MaxActivationContextInfoClass = 8,
    // AssemblyDetailedInformationInActivationContxt = 3, this enum value conflicts with AssemblyDetailedInformationInActivationContext
    // FileInformationInAssemblyOfAssemblyInActivationContxt = 4, this enum value conflicts with FileInformationInAssemblyOfAssemblyInActivationContext
};
pub const ActivationContextBasicInformation = ACTIVATION_CONTEXT_INFO_CLASS.ActivationContextBasicInformation;
pub const ActivationContextDetailedInformation = ACTIVATION_CONTEXT_INFO_CLASS.ActivationContextDetailedInformation;
pub const AssemblyDetailedInformationInActivationContext = ACTIVATION_CONTEXT_INFO_CLASS.AssemblyDetailedInformationInActivationContext;
pub const FileInformationInAssemblyOfAssemblyInActivationContext = ACTIVATION_CONTEXT_INFO_CLASS.FileInformationInAssemblyOfAssemblyInActivationContext;
pub const RunlevelInformationInActivationContext = ACTIVATION_CONTEXT_INFO_CLASS.RunlevelInformationInActivationContext;
pub const CompatibilityInformationInActivationContext = ACTIVATION_CONTEXT_INFO_CLASS.CompatibilityInformationInActivationContext;
pub const ActivationContextManifestResourceName = ACTIVATION_CONTEXT_INFO_CLASS.ActivationContextManifestResourceName;
pub const MaxActivationContextInfoClass = ACTIVATION_CONTEXT_INFO_CLASS.MaxActivationContextInfoClass;
pub const AssemblyDetailedInformationInActivationContxt = ACTIVATION_CONTEXT_INFO_CLASS.AssemblyDetailedInformationInActivationContext;
pub const FileInformationInAssemblyOfAssemblyInActivationContxt = ACTIVATION_CONTEXT_INFO_CLASS.FileInformationInAssemblyOfAssemblyInActivationContext;

pub const SUPPORTED_OS_INFO = extern struct {
    MajorVersion: u16,
    MinorVersion: u16,
};

pub const MAXVERSIONTESTED_INFO = extern struct {
    MaxVersionTested: u64,
};

pub const PACKEDEVENTINFO = extern struct {
    ulSize: u32,
    ulNumEventsForLogFile: u32,
    ulOffsets: [1]u32,
};

pub const CM_SERVICE_NODE_TYPE = enum(i32) {
    DriverType = 1,
    FileSystemType = 2,
    Win32ServiceOwnProcess = 16,
    Win32ServiceShareProcess = 32,
    AdapterType = 4,
    RecognizerType = 8,
};
pub const DriverType = CM_SERVICE_NODE_TYPE.DriverType;
pub const FileSystemType = CM_SERVICE_NODE_TYPE.FileSystemType;
pub const Win32ServiceOwnProcess = CM_SERVICE_NODE_TYPE.Win32ServiceOwnProcess;
pub const Win32ServiceShareProcess = CM_SERVICE_NODE_TYPE.Win32ServiceShareProcess;
pub const AdapterType = CM_SERVICE_NODE_TYPE.AdapterType;
pub const RecognizerType = CM_SERVICE_NODE_TYPE.RecognizerType;

pub const CM_SERVICE_LOAD_TYPE = enum(i32) {
    BootLoad = 0,
    SystemLoad = 1,
    AutoLoad = 2,
    DemandLoad = 3,
    DisableLoad = 4,
};
pub const BootLoad = CM_SERVICE_LOAD_TYPE.BootLoad;
pub const SystemLoad = CM_SERVICE_LOAD_TYPE.SystemLoad;
pub const AutoLoad = CM_SERVICE_LOAD_TYPE.AutoLoad;
pub const DemandLoad = CM_SERVICE_LOAD_TYPE.DemandLoad;
pub const DisableLoad = CM_SERVICE_LOAD_TYPE.DisableLoad;

pub const CM_ERROR_CONTROL_TYPE = enum(i32) {
    IgnoreError = 0,
    NormalError = 1,
    SevereError = 2,
    CriticalError = 3,
};
pub const IgnoreError = CM_ERROR_CONTROL_TYPE.IgnoreError;
pub const NormalError = CM_ERROR_CONTROL_TYPE.NormalError;
pub const SevereError = CM_ERROR_CONTROL_TYPE.SevereError;
pub const CriticalError = CM_ERROR_CONTROL_TYPE.CriticalError;

pub const TAPE_GET_DRIVE_PARAMETERS = extern struct {
    ECC: BOOLEAN,
    Compression: BOOLEAN,
    DataPadding: BOOLEAN,
    ReportSetmarks: BOOLEAN,
    DefaultBlockSize: u32,
    MaximumBlockSize: u32,
    MinimumBlockSize: u32,
    MaximumPartitionCount: u32,
    FeaturesLow: u32,
    FeaturesHigh: TAPE_GET_DRIVE_PARAMETERS_FEATURES_HIGH,
    EOTWarningZoneSize: u32,
};

pub const TAPE_SET_DRIVE_PARAMETERS = extern struct {
    ECC: BOOLEAN,
    Compression: BOOLEAN,
    DataPadding: BOOLEAN,
    ReportSetmarks: BOOLEAN,
    EOTWarningZoneSize: u32,
};

pub const TAPE_GET_MEDIA_PARAMETERS = extern struct {
    Capacity: LARGE_INTEGER,
    Remaining: LARGE_INTEGER,
    BlockSize: u32,
    PartitionCount: u32,
    WriteProtected: BOOLEAN,
};

pub const TAPE_SET_MEDIA_PARAMETERS = extern struct {
    BlockSize: u32,
};

pub const TAPE_CREATE_PARTITION = extern struct {
    Method: u32,
    Count: u32,
    Size: u32,
};

pub const TAPE_WMI_OPERATIONS = extern struct {
    Method: u32,
    DataBufferSize: u32,
    DataBuffer: ?*anyopaque,
};

pub const TAPE_DRIVE_PROBLEM_TYPE = enum(i32) {
    ProblemNone = 0,
    ReadWriteWarning = 1,
    ReadWriteError = 2,
    ReadWarning = 3,
    WriteWarning = 4,
    ReadError = 5,
    WriteError = 6,
    HardwareError = 7,
    UnsupportedMedia = 8,
    ScsiConnectionError = 9,
    TimetoClean = 10,
    CleanDriveNow = 11,
    MediaLifeExpired = 12,
    SnappedTape = 13,
};
pub const TapeDriveProblemNone = TAPE_DRIVE_PROBLEM_TYPE.ProblemNone;
pub const TapeDriveReadWriteWarning = TAPE_DRIVE_PROBLEM_TYPE.ReadWriteWarning;
pub const TapeDriveReadWriteError = TAPE_DRIVE_PROBLEM_TYPE.ReadWriteError;
pub const TapeDriveReadWarning = TAPE_DRIVE_PROBLEM_TYPE.ReadWarning;
pub const TapeDriveWriteWarning = TAPE_DRIVE_PROBLEM_TYPE.WriteWarning;
pub const TapeDriveReadError = TAPE_DRIVE_PROBLEM_TYPE.ReadError;
pub const TapeDriveWriteError = TAPE_DRIVE_PROBLEM_TYPE.WriteError;
pub const TapeDriveHardwareError = TAPE_DRIVE_PROBLEM_TYPE.HardwareError;
pub const TapeDriveUnsupportedMedia = TAPE_DRIVE_PROBLEM_TYPE.UnsupportedMedia;
pub const TapeDriveScsiConnectionError = TAPE_DRIVE_PROBLEM_TYPE.ScsiConnectionError;
pub const TapeDriveTimetoClean = TAPE_DRIVE_PROBLEM_TYPE.TimetoClean;
pub const TapeDriveCleanDriveNow = TAPE_DRIVE_PROBLEM_TYPE.CleanDriveNow;
pub const TapeDriveMediaLifeExpired = TAPE_DRIVE_PROBLEM_TYPE.MediaLifeExpired;
pub const TapeDriveSnappedTape = TAPE_DRIVE_PROBLEM_TYPE.SnappedTape;

pub const TRANSACTION_STATE = enum(i32) {
    Normal = 1,
    Indoubt = 2,
    CommittedNotify = 3,
};
pub const TransactionStateNormal = TRANSACTION_STATE.Normal;
pub const TransactionStateIndoubt = TRANSACTION_STATE.Indoubt;
pub const TransactionStateCommittedNotify = TRANSACTION_STATE.CommittedNotify;

pub const TRANSACTION_BASIC_INFORMATION = extern struct {
    TransactionId: Guid,
    State: u32,
    Outcome: u32,
};

pub const TRANSACTIONMANAGER_BASIC_INFORMATION = extern struct {
    TmIdentity: Guid,
    VirtualClock: LARGE_INTEGER,
};

pub const TRANSACTIONMANAGER_LOG_INFORMATION = extern struct {
    LogIdentity: Guid,
};

pub const TRANSACTIONMANAGER_LOGPATH_INFORMATION = extern struct {
    LogPathLength: u32,
    LogPath: [1]u16,
};

pub const TRANSACTIONMANAGER_RECOVERY_INFORMATION = extern struct {
    LastRecoveredLsn: u64,
};

pub const TRANSACTIONMANAGER_OLDEST_INFORMATION = extern struct {
    OldestTransactionGuid: Guid,
};

pub const TRANSACTION_PROPERTIES_INFORMATION = extern struct {
    IsolationLevel: u32,
    IsolationFlags: u32,
    Timeout: LARGE_INTEGER,
    Outcome: u32,
    DescriptionLength: u32,
    Description: [1]u16,
};

pub const TRANSACTION_BIND_INFORMATION = extern struct {
    TmHandle: ?HANDLE,
};

pub const TRANSACTION_ENLISTMENT_PAIR = extern struct {
    EnlistmentId: Guid,
    ResourceManagerId: Guid,
};

pub const TRANSACTION_ENLISTMENTS_INFORMATION = extern struct {
    NumberOfEnlistments: u32,
    EnlistmentPair: [1]TRANSACTION_ENLISTMENT_PAIR,
};

pub const TRANSACTION_SUPERIOR_ENLISTMENT_INFORMATION = extern struct {
    SuperiorEnlistmentPair: TRANSACTION_ENLISTMENT_PAIR,
};

pub const RESOURCEMANAGER_BASIC_INFORMATION = extern struct {
    ResourceManagerId: Guid,
    DescriptionLength: u32,
    Description: [1]u16,
};

pub const RESOURCEMANAGER_COMPLETION_INFORMATION = extern struct {
    IoCompletionPortHandle: ?HANDLE,
    CompletionKey: usize,
};

pub const TRANSACTION_INFORMATION_CLASS = enum(i32) {
    BasicInformation = 0,
    PropertiesInformation = 1,
    EnlistmentInformation = 2,
    SuperiorEnlistmentInformation = 3,
    BindInformation = 4,
    DTCPrivateInformation = 5,
};
pub const TransactionBasicInformation = TRANSACTION_INFORMATION_CLASS.BasicInformation;
pub const TransactionPropertiesInformation = TRANSACTION_INFORMATION_CLASS.PropertiesInformation;
pub const TransactionEnlistmentInformation = TRANSACTION_INFORMATION_CLASS.EnlistmentInformation;
pub const TransactionSuperiorEnlistmentInformation = TRANSACTION_INFORMATION_CLASS.SuperiorEnlistmentInformation;
pub const TransactionBindInformation = TRANSACTION_INFORMATION_CLASS.BindInformation;
pub const TransactionDTCPrivateInformation = TRANSACTION_INFORMATION_CLASS.DTCPrivateInformation;

pub const TRANSACTIONMANAGER_INFORMATION_CLASS = enum(i32) {
    BasicInformation = 0,
    LogInformation = 1,
    LogPathInformation = 2,
    RecoveryInformation = 4,
    OnlineProbeInformation = 3,
    OldestTransactionInformation = 5,
};
pub const TransactionManagerBasicInformation = TRANSACTIONMANAGER_INFORMATION_CLASS.BasicInformation;
pub const TransactionManagerLogInformation = TRANSACTIONMANAGER_INFORMATION_CLASS.LogInformation;
pub const TransactionManagerLogPathInformation = TRANSACTIONMANAGER_INFORMATION_CLASS.LogPathInformation;
pub const TransactionManagerRecoveryInformation = TRANSACTIONMANAGER_INFORMATION_CLASS.RecoveryInformation;
pub const TransactionManagerOnlineProbeInformation = TRANSACTIONMANAGER_INFORMATION_CLASS.OnlineProbeInformation;
pub const TransactionManagerOldestTransactionInformation = TRANSACTIONMANAGER_INFORMATION_CLASS.OldestTransactionInformation;

pub const RESOURCEMANAGER_INFORMATION_CLASS = enum(i32) {
    BasicInformation = 0,
    CompletionInformation = 1,
};
pub const ResourceManagerBasicInformation = RESOURCEMANAGER_INFORMATION_CLASS.BasicInformation;
pub const ResourceManagerCompletionInformation = RESOURCEMANAGER_INFORMATION_CLASS.CompletionInformation;

pub const ENLISTMENT_BASIC_INFORMATION = extern struct {
    EnlistmentId: Guid,
    TransactionId: Guid,
    ResourceManagerId: Guid,
};

pub const ENLISTMENT_CRM_INFORMATION = extern struct {
    CrmTransactionManagerId: Guid,
    CrmResourceManagerId: Guid,
    CrmEnlistmentId: Guid,
};

pub const ENLISTMENT_INFORMATION_CLASS = enum(i32) {
    BasicInformation = 0,
    RecoveryInformation = 1,
    CrmInformation = 2,
};
pub const EnlistmentBasicInformation = ENLISTMENT_INFORMATION_CLASS.BasicInformation;
pub const EnlistmentRecoveryInformation = ENLISTMENT_INFORMATION_CLASS.RecoveryInformation;
pub const EnlistmentCrmInformation = ENLISTMENT_INFORMATION_CLASS.CrmInformation;

pub const TRANSACTION_LIST_ENTRY = extern struct {
    UOW: Guid,
};

pub const TRANSACTION_LIST_INFORMATION = extern struct {
    NumberOfTransactions: u32,
    TransactionInformation: [1]TRANSACTION_LIST_ENTRY,
};

pub const KTMOBJECT_TYPE = enum(i32) {
    TRANSACTION = 0,
    TRANSACTION_MANAGER = 1,
    RESOURCE_MANAGER = 2,
    ENLISTMENT = 3,
    INVALID = 4,
};
pub const KTMOBJECT_TRANSACTION = KTMOBJECT_TYPE.TRANSACTION;
pub const KTMOBJECT_TRANSACTION_MANAGER = KTMOBJECT_TYPE.TRANSACTION_MANAGER;
pub const KTMOBJECT_RESOURCE_MANAGER = KTMOBJECT_TYPE.RESOURCE_MANAGER;
pub const KTMOBJECT_ENLISTMENT = KTMOBJECT_TYPE.ENLISTMENT;
pub const KTMOBJECT_INVALID = KTMOBJECT_TYPE.INVALID;

pub const KTMOBJECT_CURSOR = extern struct {
    LastQuery: Guid,
    ObjectIdCount: u32,
    ObjectIds: [1]Guid,
};

pub const PTERMINATION_HANDLER = switch (@import("../zig.zig").arch) {
    .Arm64 => switch (@import("builtin").zig_backend) {
        .stage1 => fn (
            _abnormal_termination: BOOLEAN,
            EstablisherFrame: u64,
        ) callconv(@import("std").os.windows.WINAPI) void,
        else => *const fn (
            _abnormal_termination: BOOLEAN,
            EstablisherFrame: u64,
        ) callconv(@import("std").os.windows.WINAPI) void,
    },
    .X64 => switch (@import("builtin").zig_backend) {
        .stage1 => fn (
            _abnormal_termination: BOOLEAN,
            EstablisherFrame: ?*anyopaque,
        ) callconv(@import("std").os.windows.WINAPI) void,
        else => *const fn (
            _abnormal_termination: BOOLEAN,
            EstablisherFrame: ?*anyopaque,
        ) callconv(@import("std").os.windows.WINAPI) void,
    },
    else => usize, // NOTE: this should be a @compileError but can't because of https://github.com/ziglang/zig/issues/9682
};
pub const POUT_OF_PROCESS_FUNCTION_TABLE_CALLBACK = switch (@import("../zig.zig").arch) {
    .Arm64 => switch (@import("builtin").zig_backend) {
        .stage1 => fn (
            Process: ?HANDLE,
            TableAddress: ?*anyopaque,
            Entries: ?*u32,
            Functions: ?*?*IMAGE_ARM64_RUNTIME_FUNCTION_ENTRY,
        ) callconv(@import("std").os.windows.WINAPI) u32,
        else => *const fn (
            Process: ?HANDLE,
            TableAddress: ?*anyopaque,
            Entries: ?*u32,
            Functions: ?*?*IMAGE_ARM64_RUNTIME_FUNCTION_ENTRY,
        ) callconv(@import("std").os.windows.WINAPI) u32,
    },
    .X64 => switch (@import("builtin").zig_backend) {
        .stage1 => fn (
            Process: ?HANDLE,
            TableAddress: ?*anyopaque,
            Entries: ?*u32,
            Functions: ?*?*IMAGE_RUNTIME_FUNCTION_ENTRY,
        ) callconv(@import("std").os.windows.WINAPI) u32,
        else => *const fn (
            Process: ?HANDLE,
            TableAddress: ?*anyopaque,
            Entries: ?*u32,
            Functions: ?*?*IMAGE_RUNTIME_FUNCTION_ENTRY,
        ) callconv(@import("std").os.windows.WINAPI) u32,
    },
    else => usize, // NOTE: this should be a @compileError but can't because of https://github.com/ziglang/zig/issues/9682
};
pub const PEXCEPTION_FILTER = switch (@import("../zig.zig").arch) {
    .X64, .Arm64 => switch (@import("builtin").zig_backend) {
        .stage1 => fn (
            ExceptionPointers: ?*EXCEPTION_POINTERS,
            EstablisherFrame: ?*anyopaque,
        ) callconv(@import("std").os.windows.WINAPI) i32,
        else => *const fn (
            ExceptionPointers: ?*EXCEPTION_POINTERS,
            EstablisherFrame: ?*anyopaque,
        ) callconv(@import("std").os.windows.WINAPI) i32,
    },
    else => usize, // NOTE: this should be a @compileError but can't because of https://github.com/ziglang/zig/issues/9682
};
pub const REARRANGE_FILE_DATA32 = switch (@import("../zig.zig").arch) {
    .X64, .Arm64 => extern struct {
        SourceStartingOffset: u64,
        TargetOffset: u64,
        SourceFileHandle: u32,
        Length: u32,
        Flags: u32,
    },
    else => usize, // NOTE: this should be a @compileError but can't because of https://github.com/ziglang/zig/issues/9682
};

//--------------------------------------------------------------------------------
// Section: Functions (1)
//--------------------------------------------------------------------------------
// TODO: this type is limited to platform 'windows5.1.2600'
pub extern "user32" fn UnregisterDeviceNotification(
    Handle: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) BOOL;

//--------------------------------------------------------------------------------
// Section: Unicode Aliases (2)
//--------------------------------------------------------------------------------
const thismodule = @This();
pub usingnamespace switch (@import("../zig.zig").unicode_mode) {
    .ansi => struct {
        pub const DEV_BROADCAST_PORT_ = thismodule.DEV_BROADCAST_PORT_A;
        pub const DEV_BROADCAST_DEVICEINTERFACE_ = thismodule.DEV_BROADCAST_DEVICEINTERFACE_A;
    },
    .wide => struct {
        pub const DEV_BROADCAST_PORT_ = thismodule.DEV_BROADCAST_PORT_W;
        pub const DEV_BROADCAST_DEVICEINTERFACE_ = thismodule.DEV_BROADCAST_DEVICEINTERFACE_W;
    },
    .unspecified => if (@import("builtin").is_test) struct {
        pub const DEV_BROADCAST_PORT_ = *opaque {};
        pub const DEV_BROADCAST_DEVICEINTERFACE_ = *opaque {};
    } else struct {
        pub const DEV_BROADCAST_PORT_ = @compileError("'DEV_BROADCAST_PORT_' requires that UNICODE be set to true or false in the root module");
        pub const DEV_BROADCAST_DEVICEINTERFACE_ = @compileError("'DEV_BROADCAST_DEVICEINTERFACE_' requires that UNICODE be set to true or false in the root module");
    },
};
//--------------------------------------------------------------------------------
// Section: Imports (20)
//--------------------------------------------------------------------------------
const Guid = @import("../zig.zig").Guid;
const BOOL = @import("../foundation.zig").BOOL;
const BOOLEAN = @import("../foundation.zig").BOOLEAN;
const BYTE_BLOB = @import("../system/com.zig").BYTE_BLOB;
const CHAR = @import("../foundation.zig").CHAR;
const DWORD_BLOB = @import("../system/com.zig").DWORD_BLOB;
const FLAGGED_BYTE_BLOB = @import("../system/com.zig").FLAGGED_BYTE_BLOB;
const HANDLE = @import("../foundation.zig").HANDLE;
const LARGE_INTEGER = @import("../foundation.zig").LARGE_INTEGER;
const LOGPALETTE = @import("../graphics/gdi.zig").LOGPALETTE;
const NTSTATUS = @import("../foundation.zig").NTSTATUS;
const PSID = @import("../foundation.zig").PSID;
const PSTR = @import("../foundation.zig").PSTR;
const PWSTR = @import("../foundation.zig").PWSTR;
const SID = @import("../security.zig").SID;
const SID_AND_ATTRIBUTES = @import("../security.zig").SID_AND_ATTRIBUTES;
const TOKEN_USER = @import("../security.zig").TOKEN_USER;
// 3 arch-specific imports
const EXCEPTION_POINTERS = switch (@import("../zig.zig").arch) {
    .X64, .Arm64 => @import("../system/diagnostics/debug.zig").EXCEPTION_POINTERS,
    else => usize, // NOTE: this should be a @compileError but can't because of https://github.com/ziglang/zig/issues/9682
};
const IMAGE_ARM64_RUNTIME_FUNCTION_ENTRY = switch (@import("../zig.zig").arch) {
    .Arm64 => @import("../system/diagnostics/debug.zig").IMAGE_ARM64_RUNTIME_FUNCTION_ENTRY,
    else => usize, // NOTE: this should be a @compileError but can't because of https://github.com/ziglang/zig/issues/9682
};
const IMAGE_RUNTIME_FUNCTION_ENTRY = switch (@import("../zig.zig").arch) {
    .X64 => @import("../system/diagnostics/debug.zig").IMAGE_RUNTIME_FUNCTION_ENTRY,
    else => usize, // NOTE: this should be a @compileError but can't because of https://github.com/ziglang/zig/issues/9682
};

test {
    // The following '_ = <FuncPtrType>' lines are a workaround for https://github.com/ziglang/zig/issues/4476
    if (@hasDecl(@This(), "PUMS_SCHEDULER_ENTRY_POINT")) {
        _ = PUMS_SCHEDULER_ENTRY_POINT;
    }
    if (@hasDecl(@This(), "PIMAGE_TLS_CALLBACK")) {
        _ = PIMAGE_TLS_CALLBACK;
    }
    if (@hasDecl(@This(), "WORKERCALLBACKFUNC")) {
        _ = WORKERCALLBACKFUNC;
    }
    if (@hasDecl(@This(), "APC_CALLBACK_FUNCTION")) {
        _ = APC_CALLBACK_FUNCTION;
    }
    if (@hasDecl(@This(), "PTERMINATION_HANDLER")) {
        _ = PTERMINATION_HANDLER;
    }
    if (@hasDecl(@This(), "PTERMINATION_HANDLER")) {
        _ = PTERMINATION_HANDLER;
    }
    if (@hasDecl(@This(), "POUT_OF_PROCESS_FUNCTION_TABLE_CALLBACK")) {
        _ = POUT_OF_PROCESS_FUNCTION_TABLE_CALLBACK;
    }
    if (@hasDecl(@This(), "POUT_OF_PROCESS_FUNCTION_TABLE_CALLBACK")) {
        _ = POUT_OF_PROCESS_FUNCTION_TABLE_CALLBACK;
    }
    if (@hasDecl(@This(), "PEXCEPTION_FILTER")) {
        _ = PEXCEPTION_FILTER;
    }

    @setEvalBranchQuota(comptime @import("std").meta.declarations(@This()).len * 3);

    // reference all the pub declarations
    if (!@import("builtin").is_test) return;
    inline for (comptime @import("std").meta.declarations(@This())) |decl| {
        if (decl.is_pub) {
            _ = @field(@This(), decl.name);
        }
    }
}
