diff --git a/tools/uec/meta.py b/tools/uec/meta.py
index 5b845d8..1d994a6 100644
--- a/tools/uec/meta.py
+++ b/tools/uec/meta.py
@@ -1,10 +1,23 @@
-import sys
-from BaseHTTPServer import HTTPServer, BaseHTTPRequestHandler
-from SimpleHTTPServer import SimpleHTTPRequestHandler
+#    Licensed under the Apache License, Version 2.0 (the "License"); you may
+#    not use this file except in compliance with the License. You may obtain
+#    a copy of the License at
+#
+#         http://www.apache.org/licenses/LICENSE-2.0
+#
+#    Unless required by applicable law or agreed to in writing, software
+#    distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+#    WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+#    License for the specific language governing permissions and limitations
+#    under the License.
 
-def main(host, port, HandlerClass = SimpleHTTPRequestHandler,
-         ServerClass = HTTPServer, protocol="HTTP/1.0"):
-    """simple http server that listens on a give address:port"""
+import BaseHTTPServer
+import SimpleHTTPServer
+import sys
+
+
+def main(host, port, HandlerClass=SimpleHTTPServer.SimpleHTTPRequestHandler,
+         ServerClass=BaseHTTPServer.HTTPServer, protocol="HTTP/1.0"):
+    """simple http server that listens on a give address:port."""
 
     server_address = (host, port)
 
@@ -12,7 +25,7 @@
     httpd = ServerClass(server_address, HandlerClass)
 
     sa = httpd.socket.getsockname()
-    print "Serving HTTP on", sa[0], "port", sa[1], "..."
+    print("Serving HTTP on", sa[0], "port", sa[1], "...")
     httpd.serve_forever()
 
 if __name__ == '__main__':
