move make_eiffel_method() out of base metaclass
diff --git a/Demo/newmetaclasses/Eiffel.py b/Demo/newmetaclasses/Eiffel.py
index e73d0ca..3e68611 100644
--- a/Demo/newmetaclasses/Eiffel.py
+++ b/Demo/newmetaclasses/Eiffel.py
@@ -27,6 +27,13 @@
 
     convert_methods = classmethod(convert_methods)
 
+class EiffelMetaClass1(EiffelBaseMetaClass):
+    # an implementation of the "eiffel" meta class that uses nested functions
+
+    def __new__(meta, name, bases, dict):
+        meta.convert_methods(dict)
+        return super(EiffelMetaClass1, meta).__new__(meta, name, bases, dict)
+
     def make_eiffel_method(func, pre, post):
         def method(self, *args, **kwargs):
             if pre:
@@ -43,13 +50,6 @@
     
     make_eiffel_method = staticmethod(make_eiffel_method)
 
-class EiffelMetaClass1(EiffelBaseMetaClass):
-    # an implementation of the "eiffel" meta class that uses nested functions
-
-    def __new__(meta, name, bases, dict):
-        meta.convert_methods(dict)
-        return super(EiffelMetaClass1, meta).__new__(meta, name, bases, dict)
-
 class EiffelMethodWrapper:
 
     def __init__(self, inst, descr):