separating scope and tokenkind