need to finish GUI