is this guaranteed to be non-empty?