# File lib/main/parameter.rb, line 405
      def parse_arguments argv, params=nil
        params ||= select{|p| p.type == :argument}

        params.each do |p|
          if p.arity >= 0
            p.arity.times do
              break if argv.empty?
              value = argv.shift
              p.add_value value
            end
          else
            arity = p.arity.abs - 1
            arity.times do
              break if argv.empty?
              value = argv.shift
              p.add_value value
            end
            argv.size.times do
              value = argv.shift
              p.add_value value
            end
          end
        end

??
      end