Restructure and ui change