ui and functionality additions