improved text analysis