implemented new gui