*** empty log message ***
diff --git a/Demo/sockets/gopher.py b/Demo/sockets/gopher.py
index 625697b..f30ab0f 100755
--- a/Demo/sockets/gopher.py
+++ b/Demo/sockets/gopher.py
@@ -200,7 +200,7 @@
 	x = None
 	try:
 		p = os.popen('${PAGER-more}', 'w')
-		x = SaveLines().init(p)
+		x = SaveLines(p)
 		get_alt_textfile(selector, host, port, x.writeln)
 	except IOError, msg:
 		print 'IOError:', msg
@@ -209,7 +209,7 @@
 	f = open_savefile()
 	if not f:
 		return
-	x = SaveLines().init(f)
+	x = SaveLines(f)
 	try:
 		get_alt_textfile(selector, host, port, x.writeln)
 		print 'Done.'
@@ -252,7 +252,7 @@
 	f = open_savefile()
 	if not f:
 		return
-	x = SaveWithProgress().init(f)
+	x = SaveWithProgress(f)
 	get_alt_binary(selector, host, port, x.write, 8*1024)
 	x.close()
 
@@ -268,9 +268,8 @@
 
 # Class used to save lines, appending a newline to each line
 class SaveLines:
-	def init(self, f):
+	def __init__(self, f):
 		self.f = f
-		return self
 	def writeln(self, line):
 		self.f.write(line + '\n')
 	def close(self):
@@ -280,9 +279,8 @@
 
 # Class used to save data while showing progress
 class SaveWithProgress:
-	def init(self, f):
+	def __init__(self, f):
 		self.f = f
-		return self
 	def write(self, data):
 		sys.stdout.write('#')
 		sys.stdout.flush()
diff --git a/Demo/sockets/radio.py b/Demo/sockets/radio.py
index 4bb55ff..5905ff2 100755
--- a/Demo/sockets/radio.py
+++ b/Demo/sockets/radio.py
@@ -9,5 +9,6 @@
 s.bind('', MYPORT)
 
 while 1:
-	data = s.recv(1500)
+	data, wherefrom = s.recvfrom(1500, 0)
+	sys.stderr.write(`wherefrom` + '\n')
 	sys.stdout.write(data)
diff --git a/Demo/stdwin/jukebox.py b/Demo/stdwin/jukebox.py
index ff520db..bc43cb5 100755
--- a/Demo/stdwin/jukebox.py
+++ b/Demo/stdwin/jukebox.py
@@ -45,7 +45,7 @@
 
 # Global variables
 
-class struct(): pass		# Class to define featureless structures
+class struct: pass		# Class to define featureless structures
 
 G = struct()			# oHlds writable global variables
 
diff --git a/Demo/stdwin/lpwin.py b/Demo/stdwin/lpwin.py
index 0a1346f..eaf98be 100755
--- a/Demo/stdwin/lpwin.py
+++ b/Demo/stdwin/lpwin.py
@@ -86,7 +86,8 @@
 	mainloop.register(win)
 	mainloop.mainloop()
 
-def lpdispatch(type, win, detail):
+def lpdispatch(event):
+	type, win, detail = event
 	if type == WE_CLOSE or type == WE_CHAR and detail in ('q', 'Q'):
 		mainloop.unregister(win)
 	elif type == WE_DRAW:
diff --git a/Demo/stdwin/python.py b/Demo/stdwin/python.py
index ce398aa..2506078 100755
--- a/Demo/stdwin/python.py
+++ b/Demo/stdwin/python.py
@@ -375,7 +375,7 @@
 	save_stdout = sys.stdout
 	save_stderr = sys.stderr
 	try:
-		sys.stdin = sys.stdout = sys.stderr = IOWindow().init(win)
+		sys.stdin = sys.stdout = sys.stderr = IOWindow(win)
 		win.busy = 1
 		try:
 			exec(command, win.globals)
@@ -404,9 +404,8 @@
 #
 class IOWindow:
 	#
-	def init(self, win):
+	def __init__(self, win):
 		self.win = win
-		return self
 	#
 	def readline(self, *unused_args):
 		n = len(inputwindows)