    # File lib/active_support/vendor/i18n-0.1.3/lib/i18n/backend/simple.rb, line 151
            def interpolate(locale, string, values = {})
              return string unless string.is_a?(String)

              string.gsub(MATCH) do
                escaped, pattern, key = $1, $2, $2.to_sym

                if escaped
                  pattern
                elsif INTERPOLATION_RESERVED_KEYS.include?(pattern)
                  raise ReservedInterpolationKey.new(pattern, string)
                elsif !values.include?(key)
                  raise MissingInterpolationArgument.new(pattern, string)
                else
                  values[key].to_s
                end
              end
            end