# File lib/marc/record.rb, line 139
    def self.new_from_marchash(mh)
      r = self.new()
      r.leader = mh['leader']
      mh['fields'].each do |f|
        if (f.length == 2) 
          r << MARC::ControlField.new(f[0], f[1])
        elsif 
          r << MARC::DataField.new(f[0], f[1], f[2], *f[3])
        end
      end
      return r
    end