//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by Fernflower decompiler)
//
 
import java.util.ArrayList;
import java.util.Scanner;
 
public class Corrige {
    private static ArrayList<String> prenoms = new ArrayList();
    private static ArrayList<String> noms = new ArrayList();
    private static ArrayList<String> unites = new ArrayList();
    private static ArrayList<String> courriels = new ArrayList();
    private static ArrayList<Integer> postes = new ArrayList();
    private static ArrayList<String> locaux = new ArrayList();
 
    public Corrige() {
    }
 
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
 
        int option;
        label107:
        do {
            afficherMenuPrincipal();
            option = sc.nextInt();
            int option2;
            int option3;
            String nouveauCourriel;
            String nouvelleUnite;
            String nouveauLocal;
            int nouveauPoste;
            String nouvelleUnite1;
            String nouveauLocal1;
            String var12;
            switch(option) {
            case 1:
                label104:
                do {
                    afficherMenuRecherche();
                    option2 = sc.nextInt();
                    ArrayList var14;
                    int var15;
                    switch(option2) {
                    case 1:
                        System.out.println("saisissez l expression a rechercher");
                        var12 = sc.nextLine();
                        var14 = rechercheRapide(var12);
                        var15 = 0;
 
                        while(true) {
                            if(var15 >= var14.size()) {
                                continue label104;
                            }
 
                            imprimerEntree(((Integer)var14.get(var15)).intValue());
                            ++var15;
                        }
                    case 2:
                        do {
                            afficherMenuRechercheAvancee();
                            option3 = sc.nextInt();
                            var14 = new ArrayList();
                            switch(option3) {
                            case 1:
                                System.out.println("Saissez le nom?");
                                nouveauCourriel = sc.next();
                                var14 = rechercheAvancee(nouveauCourriel, "nom");
                                break;
                            case 2:
                                System.out.println("Saissez le prenom?");
                                nouvelleUnite = sc.next();
                                var14 = rechercheAvancee(nouvelleUnite, "prenom");
                                break;
                            case 3:
                                System.out.println("Saissez le courriel?");
                                nouveauLocal = sc.next();
                                var14 = rechercheAvancee(nouveauLocal, "courriel");
                                break;
                            case 4:
                                System.out.println("Saisissez le numero de poste?");
                                nouveauPoste = sc.nextInt();
                                var14 = rechercheAvancee(String.valueOf(nouveauPoste), "poste");
                                break;
                            case 5:
                                System.out.println("Saisissez l unite?");
                                nouvelleUnite1 = sc.next();
                                var14 = rechercheAvancee(nouvelleUnite1, "unite");
                                break;
                            case 6:
                                System.out.println("Saisissez le local?");
                                nouveauLocal1 = sc.next();
                                var14 = rechercheAvancee(nouveauLocal1, "local");
                            }
 
                            for(var15 = 0; var15 < var14.size(); ++var15) {
                                imprimerEntree(((Integer)var14.get(var15)).intValue());
                            }
                        } while(option3 != 99);
                    }
                } while(option2 != 99);
                break;
            case 2:
                while(true) {
                    afficherMenuConfiguration();
                    option2 = sc.nextInt();
 
                    for(option3 = 0; option3 < prenoms.size(); ++option3) {
                        imprimerEntree(option3);
                    }
 
                    label73:
                    switch(option2) {
                    case 1:
                        System.out.println("Saisissez l entree a modifier");
                        option3 = sc.nextInt();
 
                        while(true) {
                            afficherMenuModification();
                            int var13 = sc.nextInt();
                            switch(var13) {
                            case 1:
                                System.out.println("Saisissez le nouveau nom?");
                                nouveauCourriel = sc.next();
                                modifier(option3 - 1, "nom", nouveauCourriel);
                                break;
                            case 2:
                                System.out.println("Saisissez le nouveau prenom?");
                                nouvelleUnite = sc.next();
                                modifier(option3 - 1, "prenom", nouvelleUnite);
                                break;
                            case 3:
                                System.out.println("Saisissez le nouveau courriel?");
                                nouveauLocal = sc.next();
                                modifier(option3 - 1, "courriel", nouveauLocal);
                                break;
                            case 4:
                                System.out.println("Saisissez le nouveau poste?");
                                nouveauPoste = sc.nextInt();
                                modifier(option3 - 1, "poste", String.valueOf(nouveauPoste));
                                break;
                            case 5:
                                System.out.println("Saisissez la nouvelle unite?");
                                nouvelleUnite1 = sc.next();
                                modifier(option3 - 1, "unite", nouvelleUnite1);
                                break;
                            case 6:
                                System.out.println("Saisissez le nouveau local?");
                                nouveauLocal1 = sc.next();
                                modifier(option3 - 1, "local", nouveauLocal1);
                            }
 
                            if(var13 == 99) {
                                break label73;
                            }
                        }
                    case 2:
                        System.out.println("Saissez le nouveau nom");
                        var12 = sc.next();
                        System.out.println("Saissez le nouveau prenom");
                        String nouveauPrenom = sc.next();
                        System.out.println("Saissez le nouveau courriel");
                        nouveauCourriel = sc.next();
                        System.out.println("Saissez la nouvelle unite");
                        nouvelleUnite = sc.next();
                        System.out.println("Saissez le nouveau local");
                        nouveauLocal = sc.next();
                        System.out.println("Saissez le nouveau poste");
                        nouveauPoste = sc.nextInt();
                        ajouter(nouveauPrenom, var12, nouveauCourriel, nouvelleUnite, nouveauLocal, nouveauPoste);
                        break;
                    case 3:
                        System.out.println("Saissez l entree a eliminer");
                        option3 = sc.nextInt();
                        eliminer(option3 - 1);
                    }
 
                    if(option2 == 99) {
                        continue label107;
                    }
                }
            case 99:
                System.out.println("merci et bye");
            }
        } while(option != 99);
 
    }
 
    public static void imprimerEntree(int indice) {
        System.out.println("Entree " + (indice + 1));
        System.out.println("Prenom: " + (String)prenoms.get(indice));
        System.out.println("Nom: " + (String)noms.get(indice));
        System.out.println("Courriel: " + (String)courriels.get(indice));
        System.out.println("Unite: " + (String)unites.get(indice));
        System.out.println("Local: " + (String)locaux.get(indice));
        System.out.println("Poste: " + postes.get(indice));
    }
 
    public static void afficherMenuRecherche() {
        System.out.println("Menu recherche");
        System.out.println("1. Recherche rapide");
        System.out.println("2. Recherche avancee");
        System.out.println("99. Quitter");
    }
 
    public static void afficherMenuRechercheAvancee() {
        System.out.println("Menu recherche avancee");
        System.out.println("1. recherche par nom");
        System.out.println("2. recherche par prenom");
        System.out.println("3. recherche par courriel");
        System.out.println("4. recherche par poste");
        System.out.println("5. recherche par unite");
        System.out.println("6. recherche par local");
        System.out.println("99. Quitter");
    }
 
    public static void afficherMenuModification() {
        System.out.println("Menu moddification");
        System.out.println("1. modifier nom");
        System.out.println("2. modifier prenom");
        System.out.println("3. modifier courriel");
        System.out.println("4. modifier poste");
        System.out.println("5. modifier unite");
        System.out.println("6. modifier local");
        System.out.println("99. Quitter");
    }
 
    public static void afficherMenuPrincipal() {
        System.out.println("Menu principal");
        System.out.println("1. Recherche");
        System.out.println("2. Configurer");
        System.out.println("99. Quitter");
    }
 
    public static void afficherMenuConfiguration() {
        System.out.println("Menu configuration");
        System.out.println("1. Modifier entree");
        System.out.println("2. Ajouter entree");
        System.out.println("3. Supprimer entree");
        System.out.println("99. Quitter");
    }
 
    public static ArrayList<Integer> rechercheRapide(String saisi) {
        ArrayList returnList = new ArrayList();
        int tailleBottin = prenoms.size();
 
        for(int i = 0; i < tailleBottin; ++i) {
            String prenom = (String)prenoms.get(i);
            String nom = (String)noms.get(i);
            String unite = (String)unites.get(i);
            String courriel = (String)courriels.get(i);
            Integer poste = (Integer)postes.get(i);
            String local = (String)locaux.get(i);
            if(prenom.contains(saisi)) {
                returnList.add(Integer.valueOf(i));
            } else if(nom.contains(saisi)) {
                returnList.add(Integer.valueOf(i));
            } else if(unite.contains(saisi)) {
                returnList.add(Integer.valueOf(i));
            } else if(courriel.contains(saisi)) {
                returnList.add(Integer.valueOf(i));
            } else if(poste.toString().contains(saisi)) {
                returnList.add(Integer.valueOf(i));
            } else if(local.contains(saisi)) {
                returnList.add(Integer.valueOf(i));
            }
        }
 
        return returnList;
    }
 
    public static ArrayList<Integer> rechercheAvancee(String saisi, String cas) {
        ArrayList returnList = new ArrayList();
        int tailleBottin = prenoms.size();
        byte var5 = -1;
        switch(cas.hashCode()) {
        case -980102839:
            if(cas.equals("prenom")) {
                var5 = 0;
            }
            break;
        case -368382809:
            if(cas.equals("courriel")) {
                var5 = 3;
            }
            break;
        case 109260:
            if(cas.equals("nom")) {
                var5 = 1;
            }
            break;
        case 103145323:
            if(cas.equals("local")) {
                var5 = 4;
            }
            break;
        case 106855365:
            if(cas.equals("poste")) {
                var5 = 5;
            }
            break;
        case 111433569:
            if(cas.equals("unite")) {
                var5 = 2;
            }
        }
 
        int i;
        String var8;
        switch(var5) {
        case 0:
            for(i = 0; i < tailleBottin; ++i) {
                var8 = (String)prenoms.get(i);
                if(var8.contains(saisi)) {
                    returnList.add(Integer.valueOf(i));
                }
            }
 
            return returnList;
        case 1:
            for(i = 0; i < tailleBottin; ++i) {
                var8 = (String)noms.get(i);
                if(var8.contains(saisi)) {
                    returnList.add(Integer.valueOf(i));
                }
            }
 
            return returnList;
        case 2:
            for(i = 0; i < tailleBottin; ++i) {
                var8 = (String)unites.get(i);
                if(var8.contains(saisi)) {
                    returnList.add(Integer.valueOf(i));
                }
            }
 
            return returnList;
        case 3:
            for(i = 0; i < tailleBottin; ++i) {
                var8 = (String)courriels.get(i);
                if(var8.contains(saisi)) {
                    returnList.add(Integer.valueOf(i));
                }
            }
 
            return returnList;
        case 4:
            for(i = 0; i < tailleBottin; ++i) {
                var8 = (String)locaux.get(i);
                if(var8.contains(saisi)) {
                    returnList.add(Integer.valueOf(i));
                }
            }
 
            return returnList;
        case 5:
            for(i = 0; i < tailleBottin; ++i) {
                Integer poste = (Integer)postes.get(i);
                if(poste.toString().compareTo(saisi) == 0) {
                    returnList.add(Integer.valueOf(i));
                }
            }
        }
 
        return returnList;
    }
 
    public static void modifier(int indice, String cas, String saisi) {
        byte var4 = -1;
        switch(cas.hashCode()) {
        case -980102839:
            if(cas.equals("prenom")) {
                var4 = 0;
            }
            break;
        case -368382809:
            if(cas.equals("courriel")) {
                var4 = 3;
            }
            break;
        case 109260:
            if(cas.equals("nom")) {
                var4 = 1;
            }
            break;
        case 103145323:
            if(cas.equals("local")) {
                var4 = 2;
            }
            break;
        case 106855365:
            if(cas.equals("poste")) {
                var4 = 5;
            }
            break;
        case 111433569:
            if(cas.equals("unite")) {
                var4 = 4;
            }
        }
 
        switch(var4) {
        case 0:
            modifierString(indice, saisi, prenoms);
            break;
        case 1:
            modifierString(indice, saisi, noms);
            break;
        case 2:
            modifierString(indice, saisi, locaux);
            break;
        case 3:
            modifierString(indice, saisi, courriels);
            break;
        case 4:
            modifierString(indice, saisi, unites);
            break;
        case 5:
            modifierInteger(indice, Integer.valueOf(Integer.parseInt(saisi)), postes);
        }
 
    }
 
    private static void modifierString(int indice, String saisi, ArrayList<String> alist) {
        alist.set(indice, saisi);
    }
 
    private static void modifierInteger(int indice, Integer saisi, ArrayList<Integer> alist) {
        alist.set(indice, saisi);
    }
 
    public static void eliminer(int indice) {
        int tailleBottin = prenoms.size();
        if(indice < tailleBottin) {
            prenoms.remove(indice);
            noms.remove(indice);
            courriels.remove(indice);
            unites.remove(indice);
            locaux.remove(indice);
            postes.remove(indice);
        }
    }
 
    public static void ajouter(String prenom, String nom, String courriel, String unite, String local, int poste) {
        prenoms.add(prenom);
        noms.add(nom);
        courriels.add(courriel);
        unites.add(unite);
        locaux.add(local);
        postes.add(Integer.valueOf(poste));
    }
}