most of UI complete