added 'done' with token support