class Icalendar::DowncasedHash

def [](key)

def [](key)
  __getobj__[key.to_s.downcase]
end

def []=(key, value)

def []=(key, value)
  __getobj__[key.to_s.downcase] = value
end

def delete(key, &block)

def delete(key, &block)
  __getobj__.delete key.to_s.downcase, &block
end

def has_key?(key)

def has_key?(key)
  __getobj__.has_key? key.to_s.downcase
end

def initialize(base)

def initialize(base)
  super Hash.new
  base.each do |key, value|
    self[key] = value
  end
end