added gui and more