better use `nonEmpty`.