class_docstr: Abstract base class for preprocessing defences.
  
  By default, the gradient is estimated using BPDA with the identity function.
      To modify, override `estimate_gradient`
docstr: Create a preprocessing object.
  
  Optionally, set attributes.
docstr_tok: ["Create","a","preprocessing","object",".","Optionally",",","set","attributes","."]
code: def __init__(
      self,
      is_fitted: bool = False,
      apply_fit: bool = True,
      apply_predict: bool = True,
  ) -> None:
      """
      Create a preprocessing object.
  
      Optionally, set attributes.
      """
      self._is_fitted = bool(is_fitted)
      self._apply_fit = bool(apply_fit)
      self._apply_predict = bool(apply_predict)
  
imports: from __future__ import absolute_import, division, print_function, unicode_literals
  import abc
  from typing import List, Optional, Tuple, Any, TYPE_CHECKING
  import numpy
  from art import config
label_desc: Use image node_id 1 to create a new Preprocessor object from inherited base classes: abc with example: obj = Preprocessor(is_fitted, apply_fit, apply_predict)