#if !(defined(HANDLE_MDMP_STREAM_TYPE) || defined(HANDLE_MDMP_ARCH) || \
defined(HANDLE_MDMP_PLATFORM) || defined(HANDLE_MDMP_PROTECT) || \
defined(HANDLE_MDMP_MEMSTATE) || defined(HANDLE_MDMP_MEMTYPE))
#error "Missing HANDLE_MDMP definition"
#endif
#ifndef HANDLE_MDMP_STREAM_TYPE
#define HANDLE_MDMP_STREAM_TYPE(CODE, NAME)
#endif
#ifndef HANDLE_MDMP_ARCH
#define HANDLE_MDMP_ARCH(CODE, NAME)
#endif
#ifndef HANDLE_MDMP_PLATFORM
#define HANDLE_MDMP_PLATFORM(CODE, NAME)
#endif
#ifndef HANDLE_MDMP_PROTECT
#define HANDLE_MDMP_PROTECT(CODE, NAME, NATIVENAME)
#endif
#ifndef HANDLE_MDMP_MEMSTATE
#define HANDLE_MDMP_MEMSTATE(CODE, NAME, NATIVENAME)
#endif
#ifndef HANDLE_MDMP_MEMTYPE
#define HANDLE_MDMP_MEMTYPE(CODE, NAME, NATIVENAME)
#endif
HANDLE_MDMP_STREAM_TYPE(0x0003, ThreadList)
HANDLE_MDMP_STREAM_TYPE(0x0004, ModuleList)
HANDLE_MDMP_STREAM_TYPE(0x0005, MemoryList)
HANDLE_MDMP_STREAM_TYPE(0x0006, Exception)
HANDLE_MDMP_STREAM_TYPE(0x0007, SystemInfo)
HANDLE_MDMP_STREAM_TYPE(0x0008, ThreadExList)
HANDLE_MDMP_STREAM_TYPE(0x0009, Memory64List)
HANDLE_MDMP_STREAM_TYPE(0x000a, CommentA)
HANDLE_MDMP_STREAM_TYPE(0x000b, CommentW)
HANDLE_MDMP_STREAM_TYPE(0x000c, HandleData)
HANDLE_MDMP_STREAM_TYPE(0x000d, FunctionTable)
HANDLE_MDMP_STREAM_TYPE(0x000e, UnloadedModuleList)
HANDLE_MDMP_STREAM_TYPE(0x000f, MiscInfo)
HANDLE_MDMP_STREAM_TYPE(0x0010, MemoryInfoList)
HANDLE_MDMP_STREAM_TYPE(0x0011, ThreadInfoList)
HANDLE_MDMP_STREAM_TYPE(0x0012, HandleOperationList)
HANDLE_MDMP_STREAM_TYPE(0x0013, Token)
HANDLE_MDMP_STREAM_TYPE(0x0014, JavascriptData)
HANDLE_MDMP_STREAM_TYPE(0x0015, SystemMemoryInfo)
HANDLE_MDMP_STREAM_TYPE(0x0016, ProcessVMCounters)
HANDLE_MDMP_STREAM_TYPE(0x47670001, BreakpadInfo)
HANDLE_MDMP_STREAM_TYPE(0x47670002, AssertionInfo)
HANDLE_MDMP_STREAM_TYPE(0x47670003, LinuxCPUInfo)
HANDLE_MDMP_STREAM_TYPE(0x47670004, LinuxProcStatus)
HANDLE_MDMP_STREAM_TYPE(0x47670005, LinuxLSBRelease)
HANDLE_MDMP_STREAM_TYPE(0x47670006, LinuxCMDLine)
HANDLE_MDMP_STREAM_TYPE(0x47670007, LinuxEnviron)
HANDLE_MDMP_STREAM_TYPE(0x47670008, LinuxAuxv)
HANDLE_MDMP_STREAM_TYPE(0x47670009, LinuxMaps)
HANDLE_MDMP_STREAM_TYPE(0x4767000A, LinuxDSODebug)
HANDLE_MDMP_STREAM_TYPE(0x4767000B, LinuxProcStat)
HANDLE_MDMP_STREAM_TYPE(0x4767000C, LinuxProcUptime)
HANDLE_MDMP_STREAM_TYPE(0x4767000D, LinuxProcFD)
HANDLE_MDMP_STREAM_TYPE(0xFACE1CA7, FacebookLogcat)
HANDLE_MDMP_STREAM_TYPE(0xFACECAFA, FacebookAppCustomData)
HANDLE_MDMP_STREAM_TYPE(0xFACECAFB, FacebookBuildID)
HANDLE_MDMP_STREAM_TYPE(0xFACECAFC, FacebookAppVersionName)
HANDLE_MDMP_STREAM_TYPE(0xFACECAFD, FacebookJavaStack)
HANDLE_MDMP_STREAM_TYPE(0xFACECAFE, FacebookDalvikInfo)
HANDLE_MDMP_STREAM_TYPE(0xFACECAFF, FacebookUnwindSymbols)
HANDLE_MDMP_STREAM_TYPE(0xFACECB00, FacebookDumpErrorLog)
HANDLE_MDMP_STREAM_TYPE(0xFACECCCC, FacebookAppStateLog)
HANDLE_MDMP_STREAM_TYPE(0xFACEDEAD, FacebookAbortReason)
HANDLE_MDMP_STREAM_TYPE(0xFACEE000, FacebookThreadName)
HANDLE_MDMP_ARCH(0x0000, X86)
HANDLE_MDMP_ARCH(0x0001, MIPS)
HANDLE_MDMP_ARCH(0x0002, Alpha)
HANDLE_MDMP_ARCH(0x0003, PPC)
HANDLE_MDMP_ARCH(0x0004, SHX)
HANDLE_MDMP_ARCH(0x0005, ARM)
HANDLE_MDMP_ARCH(0x0006, IA64)
HANDLE_MDMP_ARCH(0x0007, Alpha64)
HANDLE_MDMP_ARCH(0x0008, MSIL)
HANDLE_MDMP_ARCH(0x0009, AMD64)
HANDLE_MDMP_ARCH(0x000a, X86Win64)
HANDLE_MDMP_ARCH(0x000c, ARM64)
HANDLE_MDMP_ARCH(0x8001, BP_SPARC)
HANDLE_MDMP_ARCH(0x8002, BP_PPC64)
HANDLE_MDMP_ARCH(0x8003, BP_ARM64)
HANDLE_MDMP_ARCH(0x8004, BP_MIPS64)
HANDLE_MDMP_PLATFORM(0x0000, Win32S)
HANDLE_MDMP_PLATFORM(0x0001, Win32Windows)
HANDLE_MDMP_PLATFORM(0x0002, Win32NT)
HANDLE_MDMP_PLATFORM(0x0003, Win32CE)
HANDLE_MDMP_PLATFORM(0x8000, Unix)
HANDLE_MDMP_PLATFORM(0x8101, MacOSX)
HANDLE_MDMP_PLATFORM(0x8102, IOS)
HANDLE_MDMP_PLATFORM(0x8201, Linux)
HANDLE_MDMP_PLATFORM(0x8202, Solaris)
HANDLE_MDMP_PLATFORM(0x8203, Android)
HANDLE_MDMP_PLATFORM(0x8204, PS3)
HANDLE_MDMP_PLATFORM(0x8205, NaCl)
HANDLE_MDMP_PLATFORM(0x8206, OpenHOS)
HANDLE_MDMP_PROTECT(0x01, NoAccess, PAGE_NO_ACCESS)
HANDLE_MDMP_PROTECT(0x02, ReadOnly, PAGE_READ_ONLY)
HANDLE_MDMP_PROTECT(0x04, ReadWrite, PAGE_READ_WRITE)
HANDLE_MDMP_PROTECT(0x08, WriteCopy, PAGE_WRITE_COPY)
HANDLE_MDMP_PROTECT(0x10, Execute, PAGE_EXECUTE)
HANDLE_MDMP_PROTECT(0x20, ExecuteRead, PAGE_EXECUTE_READ)
HANDLE_MDMP_PROTECT(0x40, ExecuteReadWrite, PAGE_EXECUTE_READ_WRITE)
HANDLE_MDMP_PROTECT(0x80, ExeciteWriteCopy, PAGE_EXECUTE_WRITE_COPY)
HANDLE_MDMP_PROTECT(0x100, Guard, PAGE_GUARD)
HANDLE_MDMP_PROTECT(0x200, NoCache, PAGE_NOCACHE)
HANDLE_MDMP_PROTECT(0x400, WriteCombine, PAGE_WRITECOMBINE)
HANDLE_MDMP_PROTECT(0x40000000, TargetsInvalid, PAGE_TARGETS_INVALID)
HANDLE_MDMP_MEMSTATE(0x01000, Commit, MEM_COMMIT)
HANDLE_MDMP_MEMSTATE(0x02000, Reserve, MEM_RESERVE)
HANDLE_MDMP_MEMSTATE(0x10000, Free, MEM_FREE)
HANDLE_MDMP_MEMTYPE(0x0020000, Private, MEM_PRIVATE)
HANDLE_MDMP_MEMTYPE(0x0040000, Mapped, MEM_MAPPED)
HANDLE_MDMP_MEMTYPE(0x1000000, Image, MEM_IMAGE)
#undef HANDLE_MDMP_STREAM_TYPE
#undef HANDLE_MDMP_ARCH
#undef HANDLE_MDMP_PLATFORM
#undef HANDLE_MDMP_PROTECT
#undef HANDLE_MDMP_MEMSTATE
#undef HANDLE_MDMP_MEMTYPE