modified GUI and functions