restructuring the ui