#include <stdio.h>

#define stddeb stdout
#define stdnimp stdout

#ifdef DEBUG_RUNTIME
#define api_assert(name,test) if (test) ; else \
    { \
        fprintf(stddeb,"API assertion failed for %s: %s\n", name, #test); \
        abort(); \
    }
#else
#define api_assert(name,test) ;
#endif

/* Do not remove this line or change anything below this line */

#ifdef DEBUG_NONE_EXT
#undef DEBUG_ACCEL
#undef DEBUG_BITBLT
#undef DEBUG_BITMAP
#undef DEBUG_CARET
#undef DEBUG_CATCH
#undef DEBUG_CDAUDIO
#undef DEBUG_CLASS
#undef DEBUG_CLIPBOARD
#undef DEBUG_CLIPPING
#undef DEBUG_COMBO
#undef DEBUG_COMM
#undef DEBUG_CURSOR
#undef DEBUG_DC
#undef DEBUG_DIALOG
#undef DEBUG_DLL
#undef DEBUG_DOSFS
#undef DEBUG_DRIVER
#undef DEBUG_EDIT
#undef DEBUG_ENUM
#undef DEBUG_EVENT
#undef DEBUG_EXEC
#undef DEBUG_FILE
#undef DEBUG_FIXUP
#undef DEBUG_FONT
#undef DEBUG_GDI
#undef DEBUG_GLOBAL
#undef DEBUG_GRAPHICS
#undef DEBUG_ICON
#undef DEBUG_INT
#undef DEBUG_KEY
#undef DEBUG_KEYBOARD
#undef DEBUG_LDT
#undef DEBUG_LISTBOX
#undef DEBUG_LOCAL
#undef DEBUG_MALLOC
#undef DEBUG_MCI
#undef DEBUG_MCIANIM
#undef DEBUG_MCIWAVE
#undef DEBUG_MDI
#undef DEBUG_MENU
#undef DEBUG_MENUCALC
#undef DEBUG_MESSAGE
#undef DEBUG_METAFILE
#undef DEBUG_MIDI
#undef DEBUG_MMIO
#undef DEBUG_MMSYS
#undef DEBUG_MMTIME
#undef DEBUG_MODULE
#undef DEBUG_MSG
#undef DEBUG_NONCLIENT
#undef DEBUG_OLE
#undef DEBUG_PALETTE
#undef DEBUG_PROFILE
#undef DEBUG_PROP
#undef DEBUG_REG
#undef DEBUG_REGION
#undef DEBUG_RELAY
#undef DEBUG_RESOURCE
#undef DEBUG_SCROLL
#undef DEBUG_SELECTOR
#undef DEBUG_SELECTORS
#undef DEBUG_STRESS
#undef DEBUG_SYSCOLOR
#undef DEBUG_TASK
#undef DEBUG_TEXT
#undef DEBUG_TIMER
#undef DEBUG_TOOLHELP
#undef DEBUG_UTILITY
#undef DEBUG_WIN
#undef DEBUG_WINSOCK
#endif

#ifdef DEBUG_ALL_EXT
#define DEBUG_ACCEL
#define DEBUG_BITBLT
#define DEBUG_BITMAP
#define DEBUG_CARET
#define DEBUG_CATCH
#define DEBUG_CDAUDIO
#define DEBUG_CLASS
#define DEBUG_CLIPBOARD
#define DEBUG_CLIPPING
#define DEBUG_COMBO
#define DEBUG_COMM
#define DEBUG_CURSOR
#define DEBUG_DC
#define DEBUG_DIALOG
#define DEBUG_DLL
#define DEBUG_DOSFS
#define DEBUG_DRIVER
#define DEBUG_EDIT
#define DEBUG_ENUM
#define DEBUG_EVENT
#define DEBUG_EXEC
#define DEBUG_FILE
#define DEBUG_FIXUP
#define DEBUG_FONT
#define DEBUG_GDI
#define DEBUG_GLOBAL
#define DEBUG_GRAPHICS
#define DEBUG_ICON
#define DEBUG_INT
#define DEBUG_KEY
#define DEBUG_KEYBOARD
#define DEBUG_LDT
#define DEBUG_LISTBOX
#define DEBUG_LOCAL
#define DEBUG_MALLOC
#define DEBUG_MCI
#define DEBUG_MCIANIM
#define DEBUG_MCIWAVE
#define DEBUG_MDI
#define DEBUG_MENU
#define DEBUG_MENUCALC
#define DEBUG_MESSAGE
#define DEBUG_METAFILE
#define DEBUG_MIDI
#define DEBUG_MMIO
#define DEBUG_MMSYS
#define DEBUG_MMTIME
#define DEBUG_MODULE
#define DEBUG_MSG
#define DEBUG_NONCLIENT
#define DEBUG_OLE
#define DEBUG_PALETTE
#define DEBUG_PROFILE
#define DEBUG_PROP
#define DEBUG_REG
#define DEBUG_REGION
#define DEBUG_RELAY
#define DEBUG_RESOURCE
#define DEBUG_SCROLL
#define DEBUG_SELECTOR
#define DEBUG_SELECTORS
#define DEBUG_STRESS
#define DEBUG_SYSCOLOR
#define DEBUG_TASK
#define DEBUG_TEXT
#define DEBUG_TIMER
#define DEBUG_TOOLHELP
#define DEBUG_UTILITY
#define DEBUG_WIN
#define DEBUG_WINSOCK
#endif

#ifdef DEBUG_RUNTIME
#ifdef DEBUG_DEFINE_VARIABLES
short debug_msg_enabled[]={
#ifdef DEBUG_ACCEL
    1,
#else
    0,
#endif
#ifdef DEBUG_BITBLT
    1,
#else
    0,
#endif
#ifdef DEBUG_BITMAP
    1,
#else
    0,
#endif
#ifdef DEBUG_CARET
    1,
#else
    0,
#endif
#ifdef DEBUG_CATCH
    1,
#else
    0,
#endif
#ifdef DEBUG_CDAUDIO
    1,
#else
    0,
#endif
#ifdef DEBUG_CLASS
    1,
#else
    0,
#endif
#ifdef DEBUG_CLIPBOARD
    1,
#else
    0,
#endif
#ifdef DEBUG_CLIPPING
    1,
#else
    0,
#endif
#ifdef DEBUG_COMBO
    1,
#else
    0,
#endif
#ifdef DEBUG_COMM
    1,
#else
    0,
#endif
#ifdef DEBUG_CURSOR
    1,
#else
    0,
#endif
#ifdef DEBUG_DC
    1,
#else
    0,
#endif
#ifdef DEBUG_DIALOG
    1,
#else
    0,
#endif
#ifdef DEBUG_DLL
    1,
#else
    0,
#endif
#ifdef DEBUG_DOSFS
    1,
#else
    0,
#endif
#ifdef DEBUG_DRIVER
    1,
#else
    0,
#endif
#ifdef DEBUG_EDIT
    1,
#else
    0,
#endif
#ifdef DEBUG_ENUM
    1,
#else
    0,
#endif
#ifdef DEBUG_EVENT
    1,
#else
    0,
#endif
#ifdef DEBUG_EXEC
    1,
#else
    0,
#endif
#ifdef DEBUG_FILE
    1,
#else
    0,
#endif
#ifdef DEBUG_FIXUP
    1,
#else
    0,
#endif
#ifdef DEBUG_FONT
    1,
#else
    0,
#endif
#ifdef DEBUG_GDI
    1,
#else
    0,
#endif
#ifdef DEBUG_GLOBAL
    1,
#else
    0,
#endif
#ifdef DEBUG_GRAPHICS
    1,
#else
    0,
#endif
#ifdef DEBUG_ICON
    1,
#else
    0,
#endif
#ifdef DEBUG_INT
    1,
#else
    0,
#endif
#ifdef DEBUG_KEY
    1,
#else
    0,
#endif
#ifdef DEBUG_KEYBOARD
    1,
#else
    0,
#endif
#ifdef DEBUG_LDT
    1,
#else
    0,
#endif
#ifdef DEBUG_LISTBOX
    1,
#else
    0,
#endif
#ifdef DEBUG_LOCAL
    1,
#else
    0,
#endif
#ifdef DEBUG_MALLOC
    1,
#else
    0,
#endif
#ifdef DEBUG_MCI
    1,
#else
    0,
#endif
#ifdef DEBUG_MCIANIM
    1,
#else
    0,
#endif
#ifdef DEBUG_MCIWAVE
    1,
#else
    0,
#endif
#ifdef DEBUG_MDI
    1,
#else
    0,
#endif
#ifdef DEBUG_MENU
    1,
#else
    0,
#endif
#ifdef DEBUG_MENUCALC
    1,
#else
    0,
#endif
#ifdef DEBUG_MESSAGE
    1,
#else
    0,
#endif
#ifdef DEBUG_METAFILE
    1,
#else
    0,
#endif
#ifdef DEBUG_MIDI
    1,
#else
    0,
#endif
#ifdef DEBUG_MMIO
    1,
#else
    0,
#endif
#ifdef DEBUG_MMSYS
    1,
#else
    0,
#endif
#ifdef DEBUG_MMTIME
    1,
#else
    0,
#endif
#ifdef DEBUG_MODULE
    1,
#else
    0,
#endif
#ifdef DEBUG_MSG
    1,
#else
    0,
#endif
#ifdef DEBUG_NONCLIENT
    1,
#else
    0,
#endif
#ifdef DEBUG_OLE
    1,
#else
    0,
#endif
#ifdef DEBUG_PALETTE
    1,
#else
    0,
#endif
#ifdef DEBUG_PROFILE
    1,
#else
    0,
#endif
#ifdef DEBUG_PROP
    1,
#else
    0,
#endif
#ifdef DEBUG_REG
    1,
#else
    0,
#endif
#ifdef DEBUG_REGION
    1,
#else
    0,
#endif
#ifdef DEBUG_RELAY
    1,
#else
    0,
#endif
#ifdef DEBUG_RESOURCE
    1,
#else
    0,
#endif
#ifdef DEBUG_SCROLL
    1,
#else
    0,
#endif
#ifdef DEBUG_SELECTOR
    1,
#else
    0,
#endif
#ifdef DEBUG_SELECTORS
    1,
#else
    0,
#endif
#ifdef DEBUG_STRESS
    1,
#else
    0,
#endif
#ifdef DEBUG_SYSCOLOR
    1,
#else
    0,
#endif
#ifdef DEBUG_TASK
    1,
#else
    0,
#endif
#ifdef DEBUG_TEXT
    1,
#else
    0,
#endif
#ifdef DEBUG_TIMER
    1,
#else
    0,
#endif
#ifdef DEBUG_TOOLHELP
    1,
#else
    0,
#endif
#ifdef DEBUG_UTILITY
    1,
#else
    0,
#endif
#ifdef DEBUG_WIN
    1,
#else
    0,
#endif
#ifdef DEBUG_WINSOCK
    1,
#else
    0,
#endif
    0
};
#else
extern short debug_msg_enabled[];
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_accel if(!debug_msg_enabled[0]) ; else fprintf
#define debugging_accel debug_msg_enabled[0]
#else
#ifdef DEBUG_ACCEL
#define dprintf_accel fprintf
#define debugging_accel 1
#else
#define dprintf_accel while(0) fprintf
#define debugging_accel 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_bitblt if(!debug_msg_enabled[1]) ; else fprintf
#define debugging_bitblt debug_msg_enabled[1]
#else
#ifdef DEBUG_BITBLT
#define dprintf_bitblt fprintf
#define debugging_bitblt 1
#else
#define dprintf_bitblt while(0) fprintf
#define debugging_bitblt 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_bitmap if(!debug_msg_enabled[2]) ; else fprintf
#define debugging_bitmap debug_msg_enabled[2]
#else
#ifdef DEBUG_BITMAP
#define dprintf_bitmap fprintf
#define debugging_bitmap 1
#else
#define dprintf_bitmap while(0) fprintf
#define debugging_bitmap 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_caret if(!debug_msg_enabled[3]) ; else fprintf
#define debugging_caret debug_msg_enabled[3]
#else
#ifdef DEBUG_CARET
#define dprintf_caret fprintf
#define debugging_caret 1
#else
#define dprintf_caret while(0) fprintf
#define debugging_caret 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_catch if(!debug_msg_enabled[4]) ; else fprintf
#define debugging_catch debug_msg_enabled[4]
#else
#ifdef DEBUG_CATCH
#define dprintf_catch fprintf
#define debugging_catch 1
#else
#define dprintf_catch while(0) fprintf
#define debugging_catch 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_cdaudio if(!debug_msg_enabled[5]) ; else fprintf
#define debugging_cdaudio debug_msg_enabled[5]
#else
#ifdef DEBUG_CDAUDIO
#define dprintf_cdaudio fprintf
#define debugging_cdaudio 1
#else
#define dprintf_cdaudio while(0) fprintf
#define debugging_cdaudio 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_class if(!debug_msg_enabled[6]) ; else fprintf
#define debugging_class debug_msg_enabled[6]
#else
#ifdef DEBUG_CLASS
#define dprintf_class fprintf
#define debugging_class 1
#else
#define dprintf_class while(0) fprintf
#define debugging_class 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_clipboard if(!debug_msg_enabled[7]) ; else fprintf
#define debugging_clipboard debug_msg_enabled[7]
#else
#ifdef DEBUG_CLIPBOARD
#define dprintf_clipboard fprintf
#define debugging_clipboard 1
#else
#define dprintf_clipboard while(0) fprintf
#define debugging_clipboard 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_clipping if(!debug_msg_enabled[8]) ; else fprintf
#define debugging_clipping debug_msg_enabled[8]
#else
#ifdef DEBUG_CLIPPING
#define dprintf_clipping fprintf
#define debugging_clipping 1
#else
#define dprintf_clipping while(0) fprintf
#define debugging_clipping 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_combo if(!debug_msg_enabled[9]) ; else fprintf
#define debugging_combo debug_msg_enabled[9]
#else
#ifdef DEBUG_COMBO
#define dprintf_combo fprintf
#define debugging_combo 1
#else
#define dprintf_combo while(0) fprintf
#define debugging_combo 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_comm if(!debug_msg_enabled[10]) ; else fprintf
#define debugging_comm debug_msg_enabled[10]
#else
#ifdef DEBUG_COMM
#define dprintf_comm fprintf
#define debugging_comm 1
#else
#define dprintf_comm while(0) fprintf
#define debugging_comm 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_cursor if(!debug_msg_enabled[11]) ; else fprintf
#define debugging_cursor debug_msg_enabled[11]
#else
#ifdef DEBUG_CURSOR
#define dprintf_cursor fprintf
#define debugging_cursor 1
#else
#define dprintf_cursor while(0) fprintf
#define debugging_cursor 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_dc if(!debug_msg_enabled[12]) ; else fprintf
#define debugging_dc debug_msg_enabled[12]
#else
#ifdef DEBUG_DC
#define dprintf_dc fprintf
#define debugging_dc 1
#else
#define dprintf_dc while(0) fprintf
#define debugging_dc 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_dialog if(!debug_msg_enabled[13]) ; else fprintf
#define debugging_dialog debug_msg_enabled[13]
#else
#ifdef DEBUG_DIALOG
#define dprintf_dialog fprintf
#define debugging_dialog 1
#else
#define dprintf_dialog while(0) fprintf
#define debugging_dialog 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_dll if(!debug_msg_enabled[14]) ; else fprintf
#define debugging_dll debug_msg_enabled[14]
#else
#ifdef DEBUG_DLL
#define dprintf_dll fprintf
#define debugging_dll 1
#else
#define dprintf_dll while(0) fprintf
#define debugging_dll 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_dosfs if(!debug_msg_enabled[15]) ; else fprintf
#define debugging_dosfs debug_msg_enabled[15]
#else
#ifdef DEBUG_DOSFS
#define dprintf_dosfs fprintf
#define debugging_dosfs 1
#else
#define dprintf_dosfs while(0) fprintf
#define debugging_dosfs 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_driver if(!debug_msg_enabled[16]) ; else fprintf
#define debugging_driver debug_msg_enabled[16]
#else
#ifdef DEBUG_DRIVER
#define dprintf_driver fprintf
#define debugging_driver 1
#else
#define dprintf_driver while(0) fprintf
#define debugging_driver 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_edit if(!debug_msg_enabled[17]) ; else fprintf
#define debugging_edit debug_msg_enabled[17]
#else
#ifdef DEBUG_EDIT
#define dprintf_edit fprintf
#define debugging_edit 1
#else
#define dprintf_edit while(0) fprintf
#define debugging_edit 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_enum if(!debug_msg_enabled[18]) ; else fprintf
#define debugging_enum debug_msg_enabled[18]
#else
#ifdef DEBUG_ENUM
#define dprintf_enum fprintf
#define debugging_enum 1
#else
#define dprintf_enum while(0) fprintf
#define debugging_enum 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_event if(!debug_msg_enabled[19]) ; else fprintf
#define debugging_event debug_msg_enabled[19]
#else
#ifdef DEBUG_EVENT
#define dprintf_event fprintf
#define debugging_event 1
#else
#define dprintf_event while(0) fprintf
#define debugging_event 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_exec if(!debug_msg_enabled[20]) ; else fprintf
#define debugging_exec debug_msg_enabled[20]
#else
#ifdef DEBUG_EXEC
#define dprintf_exec fprintf
#define debugging_exec 1
#else
#define dprintf_exec while(0) fprintf
#define debugging_exec 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_file if(!debug_msg_enabled[21]) ; else fprintf
#define debugging_file debug_msg_enabled[21]
#else
#ifdef DEBUG_FILE
#define dprintf_file fprintf
#define debugging_file 1
#else
#define dprintf_file while(0) fprintf
#define debugging_file 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_fixup if(!debug_msg_enabled[22]) ; else fprintf
#define debugging_fixup debug_msg_enabled[22]
#else
#ifdef DEBUG_FIXUP
#define dprintf_fixup fprintf
#define debugging_fixup 1
#else
#define dprintf_fixup while(0) fprintf
#define debugging_fixup 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_font if(!debug_msg_enabled[23]) ; else fprintf
#define debugging_font debug_msg_enabled[23]
#else
#ifdef DEBUG_FONT
#define dprintf_font fprintf
#define debugging_font 1
#else
#define dprintf_font while(0) fprintf
#define debugging_font 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_gdi if(!debug_msg_enabled[24]) ; else fprintf
#define debugging_gdi debug_msg_enabled[24]
#else
#ifdef DEBUG_GDI
#define dprintf_gdi fprintf
#define debugging_gdi 1
#else
#define dprintf_gdi while(0) fprintf
#define debugging_gdi 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_global if(!debug_msg_enabled[25]) ; else fprintf
#define debugging_global debug_msg_enabled[25]
#else
#ifdef DEBUG_GLOBAL
#define dprintf_global fprintf
#define debugging_global 1
#else
#define dprintf_global while(0) fprintf
#define debugging_global 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_graphics if(!debug_msg_enabled[26]) ; else fprintf
#define debugging_graphics debug_msg_enabled[26]
#else
#ifdef DEBUG_GRAPHICS
#define dprintf_graphics fprintf
#define debugging_graphics 1
#else
#define dprintf_graphics while(0) fprintf
#define debugging_graphics 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_icon if(!debug_msg_enabled[27]) ; else fprintf
#define debugging_icon debug_msg_enabled[27]
#else
#ifdef DEBUG_ICON
#define dprintf_icon fprintf
#define debugging_icon 1
#else
#define dprintf_icon while(0) fprintf
#define debugging_icon 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_int if(!debug_msg_enabled[28]) ; else fprintf
#define debugging_int debug_msg_enabled[28]
#else
#ifdef DEBUG_INT
#define dprintf_int fprintf
#define debugging_int 1
#else
#define dprintf_int while(0) fprintf
#define debugging_int 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_key if(!debug_msg_enabled[29]) ; else fprintf
#define debugging_key debug_msg_enabled[29]
#else
#ifdef DEBUG_KEY
#define dprintf_key fprintf
#define debugging_key 1
#else
#define dprintf_key while(0) fprintf
#define debugging_key 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_keyboard if(!debug_msg_enabled[30]) ; else fprintf
#define debugging_keyboard debug_msg_enabled[30]
#else
#ifdef DEBUG_KEYBOARD
#define dprintf_keyboard fprintf
#define debugging_keyboard 1
#else
#define dprintf_keyboard while(0) fprintf
#define debugging_keyboard 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_ldt if(!debug_msg_enabled[31]) ; else fprintf
#define debugging_ldt debug_msg_enabled[31]
#else
#ifdef DEBUG_LDT
#define dprintf_ldt fprintf
#define debugging_ldt 1
#else
#define dprintf_ldt while(0) fprintf
#define debugging_ldt 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_listbox if(!debug_msg_enabled[32]) ; else fprintf
#define debugging_listbox debug_msg_enabled[32]
#else
#ifdef DEBUG_LISTBOX
#define dprintf_listbox fprintf
#define debugging_listbox 1
#else
#define dprintf_listbox while(0) fprintf
#define debugging_listbox 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_local if(!debug_msg_enabled[33]) ; else fprintf
#define debugging_local debug_msg_enabled[33]
#else
#ifdef DEBUG_LOCAL
#define dprintf_local fprintf
#define debugging_local 1
#else
#define dprintf_local while(0) fprintf
#define debugging_local 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_malloc if(!debug_msg_enabled[34]) ; else fprintf
#define debugging_malloc debug_msg_enabled[34]
#else
#ifdef DEBUG_MALLOC
#define dprintf_malloc fprintf
#define debugging_malloc 1
#else
#define dprintf_malloc while(0) fprintf
#define debugging_malloc 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_mci if(!debug_msg_enabled[35]) ; else fprintf
#define debugging_mci debug_msg_enabled[35]
#else
#ifdef DEBUG_MCI
#define dprintf_mci fprintf
#define debugging_mci 1
#else
#define dprintf_mci while(0) fprintf
#define debugging_mci 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_mcianim if(!debug_msg_enabled[36]) ; else fprintf
#define debugging_mcianim debug_msg_enabled[36]
#else
#ifdef DEBUG_MCIANIM
#define dprintf_mcianim fprintf
#define debugging_mcianim 1
#else
#define dprintf_mcianim while(0) fprintf
#define debugging_mcianim 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_mciwave if(!debug_msg_enabled[37]) ; else fprintf
#define debugging_mciwave debug_msg_enabled[37]
#else
#ifdef DEBUG_MCIWAVE
#define dprintf_mciwave fprintf
#define debugging_mciwave 1
#else
#define dprintf_mciwave while(0) fprintf
#define debugging_mciwave 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_mdi if(!debug_msg_enabled[38]) ; else fprintf
#define debugging_mdi debug_msg_enabled[38]
#else
#ifdef DEBUG_MDI
#define dprintf_mdi fprintf
#define debugging_mdi 1
#else
#define dprintf_mdi while(0) fprintf
#define debugging_mdi 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_menu if(!debug_msg_enabled[39]) ; else fprintf
#define debugging_menu debug_msg_enabled[39]
#else
#ifdef DEBUG_MENU
#define dprintf_menu fprintf
#define debugging_menu 1
#else
#define dprintf_menu while(0) fprintf
#define debugging_menu 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_menucalc if(!debug_msg_enabled[40]) ; else fprintf
#define debugging_menucalc debug_msg_enabled[40]
#else
#ifdef DEBUG_MENUCALC
#define dprintf_menucalc fprintf
#define debugging_menucalc 1
#else
#define dprintf_menucalc while(0) fprintf
#define debugging_menucalc 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_message if(!debug_msg_enabled[41]) ; else fprintf
#define debugging_message debug_msg_enabled[41]
#else
#ifdef DEBUG_MESSAGE
#define dprintf_message fprintf
#define debugging_message 1
#else
#define dprintf_message while(0) fprintf
#define debugging_message 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_metafile if(!debug_msg_enabled[42]) ; else fprintf
#define debugging_metafile debug_msg_enabled[42]
#else
#ifdef DEBUG_METAFILE
#define dprintf_metafile fprintf
#define debugging_metafile 1
#else
#define dprintf_metafile while(0) fprintf
#define debugging_metafile 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_midi if(!debug_msg_enabled[43]) ; else fprintf
#define debugging_midi debug_msg_enabled[43]
#else
#ifdef DEBUG_MIDI
#define dprintf_midi fprintf
#define debugging_midi 1
#else
#define dprintf_midi while(0) fprintf
#define debugging_midi 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_mmio if(!debug_msg_enabled[44]) ; else fprintf
#define debugging_mmio debug_msg_enabled[44]
#else
#ifdef DEBUG_MMIO
#define dprintf_mmio fprintf
#define debugging_mmio 1
#else
#define dprintf_mmio while(0) fprintf
#define debugging_mmio 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_mmsys if(!debug_msg_enabled[45]) ; else fprintf
#define debugging_mmsys debug_msg_enabled[45]
#else
#ifdef DEBUG_MMSYS
#define dprintf_mmsys fprintf
#define debugging_mmsys 1
#else
#define dprintf_mmsys while(0) fprintf
#define debugging_mmsys 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_mmtime if(!debug_msg_enabled[46]) ; else fprintf
#define debugging_mmtime debug_msg_enabled[46]
#else
#ifdef DEBUG_MMTIME
#define dprintf_mmtime fprintf
#define debugging_mmtime 1
#else
#define dprintf_mmtime while(0) fprintf
#define debugging_mmtime 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_module if(!debug_msg_enabled[47]) ; else fprintf
#define debugging_module debug_msg_enabled[47]
#else
#ifdef DEBUG_MODULE
#define dprintf_module fprintf
#define debugging_module 1
#else
#define dprintf_module while(0) fprintf
#define debugging_module 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_msg if(!debug_msg_enabled[48]) ; else fprintf
#define debugging_msg debug_msg_enabled[48]
#else
#ifdef DEBUG_MSG
#define dprintf_msg fprintf
#define debugging_msg 1
#else
#define dprintf_msg while(0) fprintf
#define debugging_msg 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_nonclient if(!debug_msg_enabled[49]) ; else fprintf
#define debugging_nonclient debug_msg_enabled[49]
#else
#ifdef DEBUG_NONCLIENT
#define dprintf_nonclient fprintf
#define debugging_nonclient 1
#else
#define dprintf_nonclient while(0) fprintf
#define debugging_nonclient 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_ole if(!debug_msg_enabled[50]) ; else fprintf
#define debugging_ole debug_msg_enabled[50]
#else
#ifdef DEBUG_OLE
#define dprintf_ole fprintf
#define debugging_ole 1
#else
#define dprintf_ole while(0) fprintf
#define debugging_ole 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_palette if(!debug_msg_enabled[51]) ; else fprintf
#define debugging_palette debug_msg_enabled[51]
#else
#ifdef DEBUG_PALETTE
#define dprintf_palette fprintf
#define debugging_palette 1
#else
#define dprintf_palette while(0) fprintf
#define debugging_palette 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_profile if(!debug_msg_enabled[52]) ; else fprintf
#define debugging_profile debug_msg_enabled[52]
#else
#ifdef DEBUG_PROFILE
#define dprintf_profile fprintf
#define debugging_profile 1
#else
#define dprintf_profile while(0) fprintf
#define debugging_profile 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_prop if(!debug_msg_enabled[53]) ; else fprintf
#define debugging_prop debug_msg_enabled[53]
#else
#ifdef DEBUG_PROP
#define dprintf_prop fprintf
#define debugging_prop 1
#else
#define dprintf_prop while(0) fprintf
#define debugging_prop 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_reg if(!debug_msg_enabled[54]) ; else fprintf
#define debugging_reg debug_msg_enabled[54]
#else
#ifdef DEBUG_REG
#define dprintf_reg fprintf
#define debugging_reg 1
#else
#define dprintf_reg while(0) fprintf
#define debugging_reg 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_region if(!debug_msg_enabled[55]) ; else fprintf
#define debugging_region debug_msg_enabled[55]
#else
#ifdef DEBUG_REGION
#define dprintf_region fprintf
#define debugging_region 1
#else
#define dprintf_region while(0) fprintf
#define debugging_region 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_relay if(!debug_msg_enabled[56]) ; else fprintf
#define debugging_relay debug_msg_enabled[56]
#else
#ifdef DEBUG_RELAY
#define dprintf_relay fprintf
#define debugging_relay 1
#else
#define dprintf_relay while(0) fprintf
#define debugging_relay 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_resource if(!debug_msg_enabled[57]) ; else fprintf
#define debugging_resource debug_msg_enabled[57]
#else
#ifdef DEBUG_RESOURCE
#define dprintf_resource fprintf
#define debugging_resource 1
#else
#define dprintf_resource while(0) fprintf
#define debugging_resource 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_scroll if(!debug_msg_enabled[58]) ; else fprintf
#define debugging_scroll debug_msg_enabled[58]
#else
#ifdef DEBUG_SCROLL
#define dprintf_scroll fprintf
#define debugging_scroll 1
#else
#define dprintf_scroll while(0) fprintf
#define debugging_scroll 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_selector if(!debug_msg_enabled[59]) ; else fprintf
#define debugging_selector debug_msg_enabled[59]
#else
#ifdef DEBUG_SELECTOR
#define dprintf_selector fprintf
#define debugging_selector 1
#else
#define dprintf_selector while(0) fprintf
#define debugging_selector 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_selectors if(!debug_msg_enabled[60]) ; else fprintf
#define debugging_selectors debug_msg_enabled[60]
#else
#ifdef DEBUG_SELECTORS
#define dprintf_selectors fprintf
#define debugging_selectors 1
#else
#define dprintf_selectors while(0) fprintf
#define debugging_selectors 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_stress if(!debug_msg_enabled[61]) ; else fprintf
#define debugging_stress debug_msg_enabled[61]
#else
#ifdef DEBUG_STRESS
#define dprintf_stress fprintf
#define debugging_stress 1
#else
#define dprintf_stress while(0) fprintf
#define debugging_stress 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_syscolor if(!debug_msg_enabled[62]) ; else fprintf
#define debugging_syscolor debug_msg_enabled[62]
#else
#ifdef DEBUG_SYSCOLOR
#define dprintf_syscolor fprintf
#define debugging_syscolor 1
#else
#define dprintf_syscolor while(0) fprintf
#define debugging_syscolor 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_task if(!debug_msg_enabled[63]) ; else fprintf
#define debugging_task debug_msg_enabled[63]
#else
#ifdef DEBUG_TASK
#define dprintf_task fprintf
#define debugging_task 1
#else
#define dprintf_task while(0) fprintf
#define debugging_task 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_text if(!debug_msg_enabled[64]) ; else fprintf
#define debugging_text debug_msg_enabled[64]
#else
#ifdef DEBUG_TEXT
#define dprintf_text fprintf
#define debugging_text 1
#else
#define dprintf_text while(0) fprintf
#define debugging_text 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_timer if(!debug_msg_enabled[65]) ; else fprintf
#define debugging_timer debug_msg_enabled[65]
#else
#ifdef DEBUG_TIMER
#define dprintf_timer fprintf
#define debugging_timer 1
#else
#define dprintf_timer while(0) fprintf
#define debugging_timer 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_toolhelp if(!debug_msg_enabled[66]) ; else fprintf
#define debugging_toolhelp debug_msg_enabled[66]
#else
#ifdef DEBUG_TOOLHELP
#define dprintf_toolhelp fprintf
#define debugging_toolhelp 1
#else
#define dprintf_toolhelp while(0) fprintf
#define debugging_toolhelp 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_utility if(!debug_msg_enabled[67]) ; else fprintf
#define debugging_utility debug_msg_enabled[67]
#else
#ifdef DEBUG_UTILITY
#define dprintf_utility fprintf
#define debugging_utility 1
#else
#define dprintf_utility while(0) fprintf
#define debugging_utility 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_win if(!debug_msg_enabled[68]) ; else fprintf
#define debugging_win debug_msg_enabled[68]
#else
#ifdef DEBUG_WIN
#define dprintf_win fprintf
#define debugging_win 1
#else
#define dprintf_win while(0) fprintf
#define debugging_win 0
#endif
#endif

#ifdef DEBUG_RUNTIME
#define dprintf_winsock if(!debug_msg_enabled[69]) ; else fprintf
#define debugging_winsock debug_msg_enabled[69]
#else
#ifdef DEBUG_WINSOCK
#define dprintf_winsock fprintf
#define debugging_winsock 1
#else
#define dprintf_winsock while(0) fprintf
#define debugging_winsock 0
#endif
#endif


#ifdef DEBUG_RUNTIME
#ifdef DEBUG_DEFINE_VARIABLES
static char *debug_msg_name[] = {
    "accel",
    "bitblt",
    "bitmap",
    "caret",
    "catch",
    "cdaudio",
    "class",
    "clipboard",
    "clipping",
    "combo",
    "comm",
    "cursor",
    "dc",
    "dialog",
    "dll",
    "dosfs",
    "driver",
    "edit",
    "enum",
    "event",
    "exec",
    "file",
    "fixup",
    "font",
    "gdi",
    "global",
    "graphics",
    "icon",
    "int",
    "key",
    "keyboard",
    "ldt",
    "listbox",
    "local",
    "malloc",
    "mci",
    "mcianim",
    "mciwave",
    "mdi",
    "menu",
    "menucalc",
    "message",
    "metafile",
    "midi",
    "mmio",
    "mmsys",
    "mmtime",
    "module",
    "msg",
    "nonclient",
    "ole",
    "palette",
    "profile",
    "prop",
    "reg",
    "region",
    "relay",
    "resource",
    "scroll",
    "selector",
    "selectors",
    "stress",
    "syscolor",
    "task",
    "text",
    "timer",
    "toolhelp",
    "utility",
    "win",
    "winsock",
    ""
};
#endif
#endif
