Python.h:  Don't attempt to redefine NDEBUG if it's already defined.
Others:  Remove redundant includes of assert.h.
diff --git a/Include/Python.h b/Include/Python.h
index 334116c..5d91125 100644
--- a/Include/Python.h
+++ b/Include/Python.h
@@ -51,8 +51,10 @@
 #endif
 
 #ifndef Py_DEBUG
+#ifndef NDEBUG
 #define NDEBUG 1
 #endif
+#endif
 #include <assert.h>
 
 #include "pyport.h"
diff --git a/Modules/mpzmodule.c b/Modules/mpzmodule.c
index d4a7370..bcbd238 100644
--- a/Modules/mpzmodule.c
+++ b/Modules/mpzmodule.c
@@ -12,7 +12,6 @@
 
 #include "Python.h"
 
-#include <assert.h>
 #include <sys/types.h>		/* For size_t */
 
 /*
diff --git a/Modules/regexpr.c b/Modules/regexpr.c
index 8694c74..8fe1321 100644
--- a/Modules/regexpr.c
+++ b/Modules/regexpr.c
@@ -30,7 +30,6 @@
 
 #include "Python.h"
 #include "regexpr.h"
-#include <assert.h>
 
 /* The original code blithely assumed that sizeof(short) == 2.  Not
  * always true.  Original instances of "(short)x" were replaced by
diff --git a/Objects/longobject.c b/Objects/longobject.c
index 6e337d0..71bd1ce 100644
--- a/Objects/longobject.c
+++ b/Objects/longobject.c
@@ -6,7 +6,6 @@
 #include "Python.h"
 #include "longintrepr.h"
 
-#include <assert.h>
 #include <ctype.h>
 
 #define ABS(x) ((x) < 0 ? -(x) : (x))
diff --git a/PC/import_nt.c b/PC/import_nt.c
index 573106f..58cd9e4 100644
--- a/PC/import_nt.c
+++ b/PC/import_nt.c
@@ -8,7 +8,6 @@
 
 #include "Python.h"
 #include "osdefs.h"
-#include <assert.h>
 #include <windows.h>
 #include "importdl.h"
 #include "malloc.h" /* for alloca */