implement a nicer user interface