class_docstr: An abstract class that represents constraints on adversial text
  examples. Constraints evaluate whether transformations from a
  ``AttackedText`` to another ``AttackedText`` meet certain conditions.
  
  Args:
      compare_against_original (bool): If `True`, the reference text should be the original text under attack.
          If `False`, the reference text is the most recent text from which the transformed text was generated.
          All constraints must have this attribute.
class_docstr_tok: ["An","abstract","class","that","represents","constraints","on","adversial","text","examples",".","Constraints","evaluate","whether","transformations","from","a","``","AttackedText","``","to","another","``","AttackedText","``","meet","certain","conditions",".","Args",":","compare_against_original","(","bool",")",":","If","`","True","`",",","the","reference","text","should","be","the","original","text","under","attack",".","If","`","False","`",",","the","reference","text","is","the","most","recent","text","from","which","the","transformed","text","was","generated",".","All","constraints","must","have","this","attribute","."]
code: def __init__(self, compare_against_original):
      self.compare_against_original = compare_against_original
  
file_path: TextAttack/textattack/constraints/constraint.py
imports: from abc import ABC, abstractmethod
  import textattack
  from textattack.shared.utils import ReprMixin
label_desc: Use image node_id 1 to create a new Constraint object from inherited base classes: ReprMixin, ABC with example: obj = Constraint(compare_against_original)