code: def extract_dates(obj):
      """extract ISO8601 dates from unpacked JSON"""
      if isinstance(obj, dict):
          new_obj = {}  # don't clobber
          for k, v in iteritems(obj):
              new_obj[k] = extract_dates(v)
          obj = new_obj
      elif isinstance(obj, (list, tuple)):
          obj = [extract_dates(o) for o in obj]
      elif isinstance(obj, string_types):
          obj = parse_date(obj)
      return obj
  
file_path: catboost/contrib/python/jupyter-client/py2/jupyter_client/jsonutil.py
imports: from datetime import datetime
  import re
  import warnings
  from dateutil.parser import parse
  from dateutil.tz import tzlocal
  from ipython_genutils import py3compat
  from ipython_genutils.py3compat import string_types, iteritems
label_desc: Use image node_id 3 for calling a global function with example usage: extract_dates(obj) and returns: obj