class_docstr: Utility class used to wrap an experience.
  
  Instances of this class will allow to get attrbitues setted
  in the original experience, but the `origin_stream` and
  `current_experience` attributes will be overridden.
code: def __getattr__(self, attr):
      if attr == "wrapped_exp" and attr not in self.__dict__:
          # Happens when using copy.copy or copy.deepcopy
          raise AttributeError(attr)
  
      if attr in self.__dict__:
          return self.__dict__[attr]
  
      return getattr(self.wrapped_exp, attr)
  
imports: from typing import Generic, Iterable, Iterator, List, Optional, TypeVar
  from avalanche.benchmarks.scenarios.generic_scenario import CLExperience, CLScenario, CLStream, SequenceCLStream, SizedCLStream
label_desc: Use image node_id 2 for calling the ExperienceWrapper obj's underlying member method code with example usage: obj.__getattr__(attr) and returns: getattr, self