more function and ui added