use empty? directly