def checksum_by_negative_sum(fw, start, end):
    s = 0
    for i in range(start, (end - start), 2):
        s += (- struct.unpack('!H', fw[i:(i + 2)])[0])
    return s
def checksum_by_negative_sum(fw, start, end):
    s = 0
    for i in range(start, (end - start), 2):
        s += (- struct.unpack('!H', fw[i:(i + 2)])[0])
    return s