restructuring
not quite working :-(