#ifndef LEAK_DETECTION_GUARD
#define LEAK_DETECTION_GUARD
#include <new>
#include <cstdlib> // for malloc() and free()
#include <string.h>
typedef unsigned int DWORD;
#define MEMORY_LEAK_DETECTION
#ifdef MEMORY_LEAK_DETECTION
void* operator new[](DWORD siz, const char* file, long line);
inline void * operator new(DWORD size, const char *file, int line);
void operator delete[](void* p) throw();
void operator delete (void *p) throw();
void DumpUnfreed();
#endif
#endif