make sure that type3 always returns an instance
type3 throws an error if text is not a string
type3 throws an error if text is empty
add texts() method