empty_result judged by tags.size instead of tags.length