more gui implementation