handle text even better