<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def _md5_file(fn, block_size=1048576):
 """Builds the MD5 of a file block by block Args: fn: File path block_size: Size of the blocks to consider (default 1048576) Returns: File MD5 """

    h = hashlib.md5()
    with open(fn) as fp:
        d = 1
        while d:
            d = fp.read(block_size)
            h.update(d)
    return h.hexdigest()