unfinished stuff -- complete at own risk! :-)
