Share trait allows multiple texts

* Extract FirstNonBlank