Adler32 is a checksum algorithm which was invented by Mark Adler in 1995. Compared to a cyclic redundancy check of the same length, it trades reliability for speed preferring the latter. Adler32 is more reliable than Fletcher16, and slightly less reliable than Fletcher32.2 source: https:en.wikipedia.orgwikiAdler32 Function implements adler32 hash. Iterates and evaluates a new value for each character  adler32'Algorithms' 363791387  adler32'go adler em all' 708642122
MOD_ADLER = 65521


def adler32(plain_text: str) -> int:
    """
    Function implements adler-32 hash.
    Iterates and evaluates a new value for each character

    >>> adler32('Algorithms')
    363791387

    >>> adler32('go adler em all')
    708642122
    """
    a = 1
    b = 0
    for plain_chr in plain_text:
        a = (a + ord(plain_chr)) % MOD_ADLER
        b = (b + a) % MOD_ADLER
    return (b << 16) | a
