    # File lib/core/facets/enumerable/defer.rb, line 29
      def defer(&blk)
        if block_given?
          Denumerator.new do |output|
            each do |*input|
              yield(output, *input)
            end
          end
        else
          Denumerator.new do |output|
            each do |*input|
              output.yield(*input)
            end
          end
        end
      end