<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def atlas_peer_has_zonefile( peer_hostport, zonefile_hash, zonefile_bits=None, con=None, path=None, peer_table=None ):
 """ Does the given peer have the given zonefile defined? Check its inventory vector Return True if present Return False if not present Return None if we don't know about the zonefile ourselves, or if we don't know about the peer """


    bits = None
    if zonefile_bits is None:
        bits = atlasdb_get_zonefile_bits( zonefile_hash, con=con, path=path )
        if len(bits) == 0:
            return None

    else:
        bits = zonefile_bits

    zonefile_inv = None

    with AtlasPeerTableLocked(peer_table) as ptbl:
        if peer_hostport not in ptbl.keys():
            return False

        zonefile_inv = atlas_peer_get_zonefile_inventory( peer_hostport, peer_table=ptbl )
    
    res = atlas_inventory_test_zonefile_bits( zonefile_inv, bits )
    return res