complex token splitting