<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def recover(gzfile, last_good_position):
 # type: (gzip.GzipFile, int) -> gzip.GzipFile """ Skip to the next possibly decompressable part of a gzip file. Return a new GzipFile object if such part is found or None if it is not found. """

    pos = get_recover_position(gzfile, last_good_position=last_good_position)
    if pos == -1:
        return None
    fp = gzfile.fileobj
    fp.seek(pos)
#     gzfile.close()
    return gzip.GzipFile(fileobj=fp, mode='r')