      """Validator Mixin that uses forms for validation.
      Extends the ValidatorMixin interface to also provide a get_bound_form() method.
      (Which may be used by some emitters.)"""
      
      """The form class that should be used for validation, or None to turn off form validation."""
      form = None
      bound_form_instance = None
  
      def validate(self, content):
          """Given some content as input return some cleaned, validated content.
          Raises a ResponseException with status code 400 (Bad Request) on failure.
          
 
</s> remove class FormValidatorMixin(ValidatorMixin):
    """Validator Mixin that uses forms for validation.
    Extends the ValidatorMixin interface to also provide a get_bound_form() method.
    (Which may be used by some emitters.)"""
 </s> add class FormValidator(BaseValidator):
    """Validator class that uses forms for validation.
    Also provides a get_bound_form() method which may be used by some renderers. </s> remove class ModelFormValidatorMixin(FormValidatorMixin):
    """Validator Mixin that uses forms for validation and falls back to a model form if no form is set.
    Extends the ValidatorMixin interface to also provide a get_bound_form() method.
    (Which may be used by some emitters.)"""
 </s> add class ModelFormValidator(FormValidator):
    """Validator class that uses forms for validation and otherwise falls back to a model form if no form is set.
    Also provides a get_bound_form() method which may be used by some renderers.""" </s> remove         Raises a ResponseException with status code 400 (Bad Request) on failure.
        
 </s> add         Typically raises a ResponseException with status code 400 (Bad Request) on failure.
 </s> remove class ValidatorMixin(object):
    """Base class for all ValidatorMixin classes, which simply defines the interface they provide."""
 </s> add class BaseValidator(object):
    """Base class for all Validator classes, which simply defines the interface they provide."""

    def __init__(self, view):
        self.view = view </s> remove                 return self.form(content, content.FILES)
            return self.form(content)
        return self.form()
 </s> add                 return form_cls(content, content.FILES)
            return form_cls(content)
        return form_cls()
    The view class should provide `.form` attribute which specifies the form classmethod
    to be used for validation.
    
    On calling validate() this validator may set a `.bound_form_instance` attribute on the
    view, which may be used by some renderers."""

      """Validator Mixin that uses forms for validation.
      Extends the ValidatorMixin interface to also provide a get_bound_form() method.
      (Which may be used by some emitters.)"""
      
    The view class should provide `.form` attribute which specifies the form classmethod
    to be used for validation.
    
    On calling validate() this validator may set a `.bound_form_instance` attribute on the
    view, which may be used by some renderers."""

    The view class should provide `.form` attribute which specifies the form classmethod
    to be used for validation.
    
    On calling validate() this validator may set a `.bound_form_instance` attribute on the
    view, which may be used by some renderers."""

    The view class should provide `.form` attribute which specifies the form classmethod
    to be used for validation.
    
    On calling validate() this validator may set a `.bound_form_instance` attribute on the
    view, which may be used by some renderers."""

  
      def validate(self, content):
          """Given some content as input return some cleaned, validated content.
          Raises a ResponseException with status code 400 (Bad Request) on failure.
          
keep keep keep keep replace replace replace keep keep keep keep keep
 Lots of validator tests passing after refactor 
djangorestframework/validators.py