minor but &&'ing an isEmpty would return immediately here as well