code: def _parse_memory(s):
      
      units = {'g': 1024, 'm': 1, 't': 1 << 20, 'k': 1.0 / 1024}
      if s[-1].lower() not in units:
          raise ValueError("invalid format: " + s)
      return int(float(s[:-1]) * units[s[-1].lower()])
docs: Parse a memory string in the format supported by Java (e.g. 1g, 200m) and
      return the value in MiB
  
      >>> _parse_memory("256m")
      256
      >>> _parse_memory("2g")
      2048