# File lib/arrayfields.rb, line 276
    def self.new *pairs
      pairs = pairs.map{|pair| Enumerable === pair ? pair.to_a : pair}.flatten
      raise ArgumentError, "pairs must be evenly sized" unless(pairs.size % 2 == 0)
      (( array = [] )).fields = []
      0.step(pairs.size - 2, 2) do |a|
        b = a + 1
        array[ pairs[a] ] = pairs[b]
      end
      array
    end