class_docstr: A torch.fx graph transformation that is reversible.
  
  It must implement the [`~optimum.fx.optimization.ReversibleTransformation.transform`] and
  [`~optimum.fx.optimization.ReversibleTransformation.reverse`] methods, and be used as a callable.
class_docstr_tok: ["A","torch.fx","graph","transformation","that","is","reversible",".","It","must","implement","the","[","`","~optimum.fx.optimization.ReversibleTransformation.transform","`","]","and","[","`","~optimum.fx.optimization.ReversibleTransformation.reverse","`","]","methods",",","and","be","used","as","a","callable","."]
docstr: Marks a node as restored back to its original state.
  
  Args:
      node (`torch.fx.Node`):
          The node to mark as restored.
docstr_tok: ["Marks","a","node","as","restored","back","to","its","original","state",".","Args",":","node","(","`","torch.fx.Node","`",")",":","The","node","to","mark","as","restored","."]
code: def mark_as_restored(self, node: "Node"):
      """
      Marks a node as restored back to its original state.
  
      Args:
          node (`torch.fx.Node`):
              The node to mark as restored.
      """
      node_transformations = getattr(node, "transformations", set())
      if self.signature not in node_transformations:
          raise ValueError(
              "The node was not transformed by this transformation."
          )
      node_transformations.remove(self.signature)
  
imports: import collections
  import copy
  import functools
  import itertools
  import operator
  import warnings
  from abc import ABC, abstractmethod
  from typing import TYPE_CHECKING, List
  import torch
  from transformers.file_utils import add_end_docstrings
  from transformers.utils.fx import _gen_constructor_wrapper
label_desc: Use image node_id 3 for calling the ReversibleTransformation obj's underlying member method code with example usage: obj.mark_as_restored(node) without return types