def grep(pattern, &block)
      result = select { |item| pattern === item }
      result = result.map(&block) if block_given?
      return result
    end
def grep(pattern, &block)
      result = select { |item| pattern === item }
      result = result.map(&block) if block_given?
      return result
    end
Search the collection for elements which are `#===` to `item`. Yield them to
 the optional code block if provided, and return them as a new collection.