class ActiveSupport::SafeBuffer

def [](*args)

def [](*args)
  if html_safe?
    new_string = super
    return unless new_string
    new_safe_buffer = new_string.is_a?(SafeBuffer) ? new_string : SafeBuffer.new(new_string)
    new_safe_buffer.instance_variable_set :@html_safe, true
    new_safe_buffer
  else
    to_str[*args]
  end
end