def update_unexplored(scene, pacs):
    """
    Updates the floor by eliminating the visited floor positions by any pac.
    """
    # Current positions of all pacs.
    all_pac_positions = set([x['position'] for x in pacs['mine'] + pacs['their']])
    mine_pac_positions = set([x['position'] for x in pacs['mine']])

    # Remove the current pac positions from the floor.
    scene['un_floor'] = scene['un_floor'].difference(all_pac_positions)

    # Update the pois and dead ends with my positions only.
    scene['un_floor_4'] = scene['un_floor_4'].difference(mine_pac_positions)
    scene['un_floor_3'] = scene['un_floor_3'].difference(mine_pac_positions)
    scene['un_floor_2_corner'] = scene['un_floor_2_corner'].difference(mine_pac_positions)
    scene['un_floor_2_aisle'] = scene['un_floor_2_aisle'].difference(mine_pac_positions)
    scene['un_floor_1'] = scene['un_floor_1'].difference(mine_pac_positions)

    return scene