this is the gui version