diff --git a/Demo/scripts/find-uname.py b/Demo/scripts/find-uname.py
index fbf4033..1902423 100644
--- a/Demo/scripts/find-uname.py
+++ b/Demo/scripts/find-uname.py
@@ -21,20 +21,20 @@
 import re
 
 def main(args):
-    unicode_names= []
+    unicode_names = []
     for ix in range(sys.maxunicode+1):
         try:
-            unicode_names.append( (ix, unicodedata.name(chr(ix))) )
+            unicode_names.append((ix, unicodedata.name(chr(ix))))
         except ValueError: # no name for the character
             pass
     for arg in args:
         pat = re.compile(arg, re.I)
-        matches = [(x,y) for (x,y) in unicode_names
-                       if pat.search(y) is not None]
+        matches = [(y,x) for (x,y) in unicode_names
+                   if pat.search(y) is not None]
         if matches:
             print("***", arg, "matches", "***")
-            for (x,y) in matches:
-                print("%s (%d)" % (y,x))
+            for match in matches:
+                print("%s (%d)" % match)
 
 if __name__ == "__main__":
     main(sys.argv[1:])
