diff --git a/PC/python33gen.py b/PC/python33gen.py
index b8a190a..a85f417 100644
--- a/PC/python33gen.py
+++ b/PC/python33gen.py
@@ -1,25 +1,24 @@
-# Generate python33stub.def out of python3.def
-# The regular import library cannot be used,
-# since it doesn't provide the right symbols for
-# data forwarding
-out = open("python33stub.def", "w")
-out.write('LIBRARY "python33"\n')
-out.write('EXPORTS\n')
-
-inp = open("python3.def")
-inp.readline()
-line = inp.readline()
-assert line.strip()=='EXPORTS'
-
-for line in inp:
-    # SYM1=python33.SYM2[ DATA]
-    head, tail = line.split('.')
-    if 'DATA' in tail:
-        symbol, tail = tail.split(' ')
-    else:
-        symbol = tail.strip()
-    out.write(symbol+'\n')
-
-inp.close()
-out.close()
-
+# Generate python33stub.def out of python3.def
+# The regular import library cannot be used,
+# since it doesn't provide the right symbols for
+# data forwarding
+out = open("python33stub.def", "w")
+out.write('LIBRARY "python33"\n')
+out.write('EXPORTS\n')
+
+inp = open("python3.def")
+inp.readline()
+line = inp.readline()
+assert line.strip()=='EXPORTS'
+
+for line in inp:
+    # SYM1=python33.SYM2[ DATA]
+    head, tail = line.split('.')
+    if 'DATA' in tail:
+        symbol, tail = tail.split(' ')
+    else:
+        symbol = tail.strip()
+    out.write(symbol+'\n')
+
+inp.close()
+out.close()
