restructure 'em all