#define DOWNCASE(x) ((isascii((int)x) && isupper((int)x)) ? tolower((int)x) : (x)) #define UPCASE(x) ((isascii((int)x) && islower((int)x)) ? toupper((int)x) : (x)) /* #define free_object(thing) PUSH((thing), first_free) */