docs: def frame2expnum(frameid):
      """Given a standard OSSOS frameid return the expnum, version and ccdnum as a dictionary."""
      result = {}
      parts = re.search('(?P<expnum>\d{7})(?P<type>\S)(?P<ccd>\d\d)', frameid)
      assert parts is not None
      result['expnum'] = parts.group('expnum')
      result['ccd'] = parts.group('ccd')
      result['version'] = parts.group('type')
      return result