code: def parse(representation):
      
      representation = str(representation).upper().strip()
  
      if '/' in representation:
          return parse_interval(representation)
  
      if representation[0] is 'P':
          return parse_duration(representation)
  
      return parse_date(representation)
docs: Attempts to parse an ISO8601 formatted ``representation`` string,
      which could be of any valid ISO8601 format (date, time, duration, interval).
  
      Return value is specific to ``representation``.