def properties(lines):
    """Parse properties block

    Returns:
        dict: {property_type: (atom_index, value)}
    """
    results = {}
    for i, line in enumerate(lines):
        type_ = line[3:6]
        if type_ not in ["CHG", "RAD", "ISO"]:
            continue  # Other properties are not supported yet
        count = int(line[6:9])
        results[type_] = []
        for j in range(count):
            idx = int(line[10 + j * 8: 13 + j * 8])
            val = int(line[14 + j * 8: 17 + j * 8])
            results[type_].append((idx, val))
    return results
def properties ( lines ) : results = { } for i , line in enumerate ( lines ) : type_ = line [ 3 : 6 ] if type_ not in [ "CHG" , "RAD" , "ISO" ] : continue count = int ( line [ 6 : 9 ] ) results [ type_ ] = [ ] for j in range ( count ) : idx = int ( line [ 10 + j * 8 : 13 + j * 8 ] ) val = int ( line [ 14 + j * 8 : 17 + j * 8 ] ) results [ type_ ] . append ( ( idx , val ) ) return results
Parse properties block

    Returns:
        dict: {property_type: (atom_index, value)}