/**
 * This function takes a list of architects and a list of projects as arguments.
 * It returns the architects who have been assigned all the projects.
 *
 * @param architects A list of architects.
 * @param projects A list of projects.
 * @return A list of architects who have been assigned all the projects.
 */
fun findArchitect(architects: List<Map<String, List<String>>>, projects: List<String>): List<Map<String, List<String>>> {

    val assignedArchitects = mutableListOf<Map<String, List<String>>>()
    for (architect in architects) {
        if (projects.all { project -> architect["assigned_projects"]?.contains(project) == true }) {
            assignedArchitects.add(architect)
        }
    }
    return assignedArchitects
}
/**
 * This function takes a list of architects and a list of projects as arguments.
 * It returns the architects who have been assigned all the projects.
 *
 * @param architects A list of architects.
 * @param projects A list of projects.
 * @return A list of architects who have been assigned all the projects.
 */
fun findArchitect(architects: List<Map<String, List<String>>>, projects: List<String>): List<Map<String, List<String>>> {
/**
 * This function takes a list of architects and a list of projects as arguments.
 * It returns the architects who have been assigned all the projects.
 *
 * @param architects A list of architects.
 * @param projects A list of projects.
 * @return A list of architects who have been assigned all the projects.
 */
fun findArchitect(architects: List<Map<String, List<String>>>, projects: List<String>): List<Map<String, List<String>>> {

    val assignedArchitects = mutableListOf<Map<String, List<String>>>()
    for (architect in architects) {
        if (projects.all { project -> architect["assigned_projects"]?.contains(project) == true }) {
            assignedArchitects.add(architect)
        }
    }
    return assignedArchitects
}