#2 better handling of token