gui implementation
gui implementation