some analysis restructuring