def find_small_key_door_candidates(builder, start_regions, world, player):
    candidates = []
    checked_doors = set()
    for region in start_regions:
        (possible, checked) = find_key_door_candidates(region, checked_doors, world, player)
        candidates.extend(possible)
        checked_doors.update(checked)
    flat_candidates = []
    for candidate in candidates:
        if ((candidate.type != DoorType.Normal) or (candidate.dest not in checked_doors) or (candidate.dest in candidates)):
            flat_candidates.append(candidate)
    paired_candidates = build_pair_list(flat_candidates)
    builder.candidates = paired_candidates
def find_small_key_door_candidates(builder, start_regions, world, player):
    candidates = []
    checked_doors = set()
    for region in start_regions:
        (possible, checked) = find_key_door_candidates(region, checked_doors, world, player)
        candidates.extend(possible)
        checked_doors.update(checked)
    flat_candidates = []
    for candidate in candidates:
        if ((candidate.type != DoorType.Normal) or (candidate.dest not in checked_doors) or (candidate.dest in candidates)):
            flat_candidates.append(candidate)
    paired_candidates = build_pair_list(flat_candidates)
    builder.candidates = paired_candidates