#ifndef ____K_SGO_H____ #define ____K_SGO_H____ #define KSGO_SEXGENDER 0xFFF0FF #define KSGO_SEX 0xF00000 #define KSGO_TRANSITION 0x0F0000 #define KSGO_GENDER 0x00F000 #define KSGO_ORIENTATION 0x000F00 #define KSGO_TITLE 0x0000E0 #define KSGO_PRONOUN 0x00001F #define KSGO_SEXGENDER_MULTIPLIER 0x101021 #define KSGO_SEX_MULTIPLIER 0x100000 #define KSGO_TRANSITION_MULTIPLIER 0x010000 #define KSGO_GENDER_MULTIPLIER 0x001000 #define KSGO_ORIENTATION_MULTIPLIER 0x000100 #define KSGO_TITLE_MULTIPLIER 0x000020 #define KSGO_PRONOUN_MULTIPLIER 0x000001 #define KSGO_SEXGENDER_MAX 0x2 #define KSGO_SEX_MAX 0xF #define KSGO_TRANSITION_MAX 0xF #define KSGO_GENDER_MAX 0xF #define KSGO_ORIENTATION_MAX 0xF #define KSGO_TITLE_MAX 0x7 #define KSGO_PRONOUN_MAX 0x1F #define KSGO_SG_UNSPECIFIED 0x000000 #define KSGO_SG_MALE 0x101021 #define KSGO_SG_FEMALE 0x202042 #define KSGO_S_UNSPECIFIED 0x000000 #define KSGO_S_MALE 0x100000 #define KSGO_S_FEMALE 0x200000 #define KSGO_S_NEUTER 0x300000 #define KSGO_S_INTERSEX 0x400000 #define KSGO_S_INTERSEX_MALE_ASSIGNED 0x500000 #define KSGO_S_INTERSEX_FEMALE_ASSIGNED 0x600000 #define KSGO_S_MTF 0x700000 #define KSGO_S_FTM 0x800000 #define KSGO_S_HUMAN 0x900000 #define KSGO_S_DONTKNOW 0xE00000 #define KSGO_S_OTHER 0xF00000 #define KSGO_TS_UNSPECIFIED 0x000000 #define KSGO_TS_NON_OP 0x010000 #define KSGO_TS_PRE_EVERYTHING 0x020000 #define KSGO_TS_IN_TRANSITION 0x030000 #define KSGO_TS_POST_OP 0x040000 #define KSGO_TS_DONTKNOW 0x0E0000 #define KSGO_TS_OTHER 0x0F0000 #define KSGO_G_UNSPECIFIED 0x000000 #define KSGO_G_MALE 0x001000 #define KSGO_G_FEMALE 0x002000 #define KSGO_G_BIGENDER 0x003000 #define KSGO_G_AGENDER 0x004000 #define KSGO_G_ANDROGYNE 0x005000 #define KSGO_G_GENDERQUEER 0x006000 #define KSGO_G_THIRD 0x007000 #define KSGO_G_FOURTH 0x008000 #define KSGO_G_FLUID 0x009000 #define KSGO_G_QUESTIONING 0x00E000 #define KSGO_G_OTHER 0x00F000 #define KSGO_O_UNSPECIFIED 0x000000 #define KSGO_O_STRAIGHT 0x000100 #define KSGO_O_GAY 0x000200 #define KSGO_O_LESBIAN 0x000300 #define KSGO_O_BISEXUAL 0x000400 #define KSGO_O_PANSEXUAL 0x000500 #define KSGO_O_ASEXUAL 0x000600 #define KSGO_O_HETEROFLEXIBLE 0x000700 #define KSGO_O_HOMOFLEXIBLE 0x000800 #define KSGO_O_QUESTIONING 0x000E00 #define KSGO_O_OTHER 0x000F00 #define KSGO_T_UNSPECIFIED 0x000000 #define KSGO_T_MR 0x000020 #define KSGO_T_MS 0x000040 #define KSGO_T_MISS 0x000060 #define KSGO_T_MRS 0x000080 #define KSGO_T_MX 0x0000A0 #define KSGO_T_MRE 0x0000C0 #define KSGO_T_OTHER 0x0000E0 #define KSGO_P_UNSPECIFIED 0x000000 #define KSGO_P_HE 0x000001 #define KSGO_P_SHE 0x000002 #define KSGO_P_IT 0x000003 #define KSGO_P_THEY 0x000004 #define KSGO_P_SPIVAK 0x000005 #define KSGO_P_SPIVAK_ALT 0x000006 #define KSGO_P_SIE 0x000007 #define KSGO_P_BORNSTEIN 0x000008 #define KSGO_P_ZE 0x000009 #define KSGO_P_ZIE 0x00000A #define KSGO_P_VE 0x00000B #define KSGO_P_XE 0x00000C #define KSGO_P_THON 0x00000D #define KSGO_P_I 0x00000E #define KSGO_P_YOU 0x00000F #define KSGO_P_SPLAT 0x000010 #define KSGO_P_EITHER 0x000011 #define KSGO_P_ANGROGYNE 0x000012 #define KSGO_P_FRENCH 0x000013 #define KSGO_P_UNDECIDED 0x00001E #define KSGO_P_OTHER 0x00001F char * KSGO_SEXGENDER_STRING[] = { "Unspecified", "Male", "Female", "", "", "", "", "", "", "", "", "", "", "", "Questioning", "Other" }; char * KSGO_SEX_STRING[] = { "Unspecified", "Male", "Female", "Neuter", "Intersex", "Intersex, Male-Assigned", "Intersex, Female-Assigned", "MTF", "FTM", "Human", "", "", "", "", "Don't Know", "Other" }; char * KSGO_TRANSITION_STRING[] = { "Unspecified", "Non-Op", "Pre-Everything", "In Transition", "Post-Op", "", "", "", "", "", "", "", "", "", "Don't Know", "Other" }; char * KSGO_GENDER_STRING[] = { "Unspecified", "Male", "Female", "Bigender", "Agender", "Androgyne", "Genderqueer", "Third", "Fourth", "Fluid", "", "", "", "", "Questioning", "Other" }; char * KSGO_ORIENTATION_STRING[] = { "Unspecified", "Straight", "Gay", "Lesbian", "Bisexual", "Pansexual", "Asexual", "Heteroflexible", "Homoflexible", "", "", "", "", "", "Questioning", "Other" }; char * KSGO_TITLE_STRING[] = { "Unspecified", "Mr.", "Ms.", "Miss", "Mrs.", "Mx.", "Mre.", "Other" }; char * KSGO_PRONOUN_STRING[] = { "Unspecified", "He", "She", "It", "They", "E/Em", "Ey/Em", "Sie/Hir", "Ze/Hir", "Ze/Zem", "Zie/Zim", "Ve/Ver", "Xe/Xem", "Thon", "I", "You", "Splat", "Either", "Androgyne", "French", "", "", "", "", "", "", "", "", "", "", "Undecided", "Other" }; char * KSGO_PRONOUN_SUBJECT[] = { "they", "he", "she", "it", "they", "e", "ey", "sie", "ze", "ze", "zie", "ve", "xe", "thon", "I", "you", "*e", "s/he", "soe", "le", "", "", "", "", "", "", "", "", "", "", "", "" }; char * KSGO_PRONOUN_OBJECT[] = { "them", "him", "her", "it", "them", "em", "em", "hir", "hir", "zem", "zim", "ver", "xem", "thon", "me", "you", "h*", "him/er", "soen", "lem", "", "", "", "", "", "", "", "", "", "", "", "" }; char * KSGO_PRONOUN_POSSESSIVE[] = { "their", "his", "her", "its", "their", "eir", "eir", "hir", "hir", "zes", "zir", "vis", "xyr", "thons", "my", "your", "h*", "his/er", "soer", "les", "", "", "", "", "", "", "", "", "", "", "", "" }; char * KSGO_PRONOUN_POSS_OBJ[] = { "theirs", "his", "hers", "its", "theirs", "eirs", "eirs", "hirs", "hirs", "zes", "zirs", "vis", "xyrs", "thons", "mine", "yours", "h*s", "his/ers", "soers", "lems", "", "", "", "", "", "", "", "", "", "", "", "" }; char * KSGO_PRONOUN_REFLEXIVE[] = { "themselves", "himself", "herself", "itself", "themselves", "emself", "eirself", "hirself", "hirself", "zemself", "zirself", "verself", "xemself", "thonself", "myself", "yourself", "h*self", "his/erself", "soenself", "lemself", "", "", "", "", "", "", "", "", "", "", "", "" }; #endif