change structure and layout