# File lib/hashie/mash.rb, line 194
    def method_missing(method_name, *args, &blk)
      return self.[](method_name, &blk) if key?(method_name)
      match = method_name.to_s.match(/(.*?)([?=!_]?)$/)
      case match[2]
      when "="
        self[match[1]] = args.first
      when "?"
        !!self[match[1]]
      when "!"
        initializing_reader(match[1])
      when "_"
        underbang_reader(match[1])
      else
        default(method_name, *args, &blk)
      end
    end