def fetch(sym)
      if @hash.include?(sym)
        @hash[sym]
      elsif @hash.include?(sym.to_s)
        @hash[sym.to_s]
      else
        raise_no_method_error(sym)
      end
    end
def fetch(sym)
      if @hash.include?(sym)
        @hash[sym]
      elsif @hash.include?(sym.to_s)
        @hash[sym.to_s]
      else
        raise_no_method_error(sym)
      end
    end
TODO investigate possible optimization with Ruby 2.3 frozen strings