added gui functionality