work in progress, better UI, separate logic