must add GUI