code: def GetLineWidth(line):
    
    if isinstance(line, unicode):
      width = 0
      for uc in unicodedata.normalize('NFC', line):
        if unicodedata.east_asian_width(uc) in ('W', 'F'):
          width += 2
        elif not unicodedata.combining(uc):
          width += 1
      return width
    else:
      return len(line)
docs: Determines the width of the line in column positions.
  
    Args:
      line: A string, which may be a Unicode string.
  
    Returns:
      The width of the line in column positions, accounting for Unicode
      combining characters and wide characters.