class_docstr: Stores all actual data and typing information for an entityset
  
  Attributes:
      id
      dataframe_dict
      relationships
      time_type
  
  Properties:
      metadata
class_docstr_tok: ["Stores","all","actual","data","and","typing","information","for","an","entityset","Attributes",":","id","dataframe_dict","relationships","time_type","Properties",":","metadata"]
code: def __deepcopy__(self, memo):
      cls = self.__class__
      result = cls.__new__(cls)
      memo[id(self)] = result
      for k, v in self.__dict__.items():
          if k == "dataframe_dict":
              # Copy the DataFrames, retaining Woodwork typing information
              copied_attr = copy.copy(v)
              for df_name, df in copied_attr.items():
                  copied_attr[df_name] = df.ww.copy()
          else:
              copied_attr = copy.deepcopy(v, memo)
  
          setattr(result, k, copied_attr)
  
      for df in result.dataframe_dict.values():
          result._add_references_to_metadata(df)
      return result
  
imports: import copy
  import logging
  import warnings
  from collections import defaultdict
  import numpy
  import pandas
  from woodwork import init_series
  from woodwork.logical_types import Datetime, LatLong
  from featuretools.entityset import deserialize, serialize
  from featuretools.entityset.relationship import Relationship, RelationshipPath
  from featuretools.feature_base.feature_base import _ES_REF
  from featuretools.utils.gen_utils import Library, import_or_none, is_instance
  from featuretools.utils.plot_utils import check_graphviz, get_graphviz_format, save_graph
  from featuretools.utils.wrangle import _check_timedelta
label_desc: Use image node_id 7 for calling the EntitySet obj's underlying member method code with example usage: obj.__deepcopy__(memo) and returns: result