static void Main(string[] args)
        {
            String variable;

            Proveedor proveedor1 = new Proveedor();

            Supervisor supervisor1 = new Supervisor();

            Auxiliar auxiliar1 = new Auxiliar();

            Cajero cajero1 = new Cajero();

            Compra compra1 = new Compra();

            TodoTrabajadores todoTrabajadores = new TodoTrabajadores();

            Console.WriteLine("Bienvenido a Smart-ket!\n");

            while (true)
            {
                Console.WriteLine("Presiona [n] para ingresar");

                variable = Console.ReadLine();

                if (variable == "n")
                {
                    break;
                }

                else
                {
                    continue;
                }
            }

            while (true)
            {
                String tipo;

                String puestoTrabajo, eleccionIngreso;

                Console.WriteLine("\nDesea ingresar al Menu de:" +
                                  "\n[1] Proveedor" +
                                  "\n[2] Trabajador" +
                                  "\n[3] Cliente" +
                                  "\n[4] Informacion funcionamiento" +
                                  "\n[5] Terminar Programa");

                tipo = Console.ReadLine();

                if (tipo == "5")
                {
                    break;
                }

                switch (tipo)
                {
                case "1":     //Proveedor

                    String nombreProducto, nombreProveedor, precioProducto, stockProducto;

                    String seleccion;

                    Console.WriteLine("Ingrese nombre de proveedor/marca: ");

                    nombreProveedor = Console.ReadLine();

                    while (true)
                    {
                        Console.WriteLine("\nSeleccione tipo de producto que desea ingresar:" +
                                          "\n[1] Dulces" +
                                          "\n[2] Lacteos" +
                                          "\n[3] Carnes" +
                                          "\n[4] Verduras" +
                                          "\n[5] Frutas" +
                                          "\n[6] Carbohidratos" +
                                          "\n[7] Limpieza" +
                                          "\n[8] Salir");

                        seleccion = Console.ReadLine();

                        if (seleccion == "8")
                        {
                            break;
                        }

                        switch (seleccion)
                        {
                        case "1":

                            Console.WriteLine("Nombre Producto:");

                            nombreProducto = Console.ReadLine();

                            Console.WriteLine("Precio Producto:");

                            precioProducto = Console.ReadLine();

                            Console.WriteLine("Stock Producto:");

                            stockProducto = Console.ReadLine();

                            Producto dulces = new Producto(nombreProducto, nombreProveedor, precioProducto, stockProducto);

                            proveedor1.metodoDulces(dulces);

                            break;

                        case "2":

                            Console.WriteLine("Nombre Producto:");

                            nombreProducto = Console.ReadLine();

                            Console.WriteLine("Precio Producto:");

                            precioProducto = Console.ReadLine();

                            Console.WriteLine("Stock Producto:");

                            stockProducto = Console.ReadLine();

                            Producto lacteos = new Producto(nombreProducto, nombreProveedor, precioProducto, stockProducto);

                            proveedor1.metodoDulces(lacteos);

                            break;

                        case "3":

                            Console.WriteLine("Nombre Producto:");

                            nombreProducto = Console.ReadLine();

                            Console.WriteLine("Precio Producto:");

                            precioProducto = Console.ReadLine();

                            Console.WriteLine("Stock Producto:");

                            stockProducto = Console.ReadLine();

                            Producto carnes = new Producto(nombreProducto, nombreProveedor, precioProducto, stockProducto);

                            proveedor1.metodoDulces(carnes);

                            break;

                        case "4":

                            Console.WriteLine("Nombre Producto:");

                            nombreProducto = Console.ReadLine();

                            Console.WriteLine("Precio Producto:");

                            precioProducto = Console.ReadLine();

                            Console.WriteLine("Stock Producto:");

                            stockProducto = Console.ReadLine();

                            Producto verduras = new Producto(nombreProducto, nombreProveedor, precioProducto, stockProducto);

                            proveedor1.metodoDulces(verduras);

                            break;

                        case "5":

                            Console.WriteLine("Nombre Producto:");

                            nombreProducto = Console.ReadLine();

                            Console.WriteLine("Precio Producto:");

                            precioProducto = Console.ReadLine();

                            Console.WriteLine("Stock Producto:");

                            stockProducto = Console.ReadLine();

                            Producto frutas = new Producto(nombreProducto, nombreProveedor, precioProducto, stockProducto);

                            proveedor1.metodoDulces(frutas);

                            break;

                        case "6":

                            Console.WriteLine("Nombre Producto:");

                            nombreProducto = Console.ReadLine();

                            Console.WriteLine("Precio Producto:");

                            precioProducto = Console.ReadLine();

                            Console.WriteLine("Stock Producto:");

                            stockProducto = Console.ReadLine();

                            Producto carbohidratos = new Producto(nombreProducto, nombreProveedor, precioProducto, stockProducto);

                            proveedor1.metodoDulces(carbohidratos);

                            break;

                        case "7":

                            Console.WriteLine("Nombre Producto:");

                            nombreProducto = Console.ReadLine();

                            Console.WriteLine("Precio Producto:");

                            precioProducto = Console.ReadLine();

                            Console.WriteLine("Stock Producto:");

                            stockProducto = Console.ReadLine();

                            Producto limpieza = new Producto(nombreProducto, nombreProveedor, precioProducto, stockProducto);

                            proveedor1.metodoDulces(limpieza);

                            break;
                        }
                    }

                    break;

                case "2":     //Trabajador

                    Console.WriteLine("Presione [1] si desea agregar a un trabajador");

                    Console.WriteLine("Presione [2] si desea conocer a nuestros trabajadores");

                    Console.WriteLine("Presione [3] si desea salir");

                    eleccionIngreso = Console.ReadLine();

                    switch (eleccionIngreso)
                    {
                    case "1":         //Agregar trabajador

                        String rut, nombre, apellido, nacimiento, nacionalidad;

                        String puesto, sueldo, horario;

                        Console.WriteLine("Ingrese sus datos:");

                        Console.WriteLine("RUT:");

                        rut = Console.ReadLine();

                        Console.WriteLine("Nombre:");

                        nombre = Console.ReadLine();

                        Console.WriteLine("Apellido:");

                        apellido = Console.ReadLine();

                        Console.WriteLine("Nacimiento:");

                        nacimiento = Console.ReadLine();

                        Console.WriteLine("Nacionalidad:");

                        nacionalidad = Console.ReadLine();

                        Console.WriteLine("Puesto:");

                        puesto = Console.ReadLine();

                        Console.WriteLine("Sueldo:");

                        sueldo = Console.ReadLine();

                        Console.WriteLine("Horario:");

                        horario = Console.ReadLine();

                        switch (puesto)
                        {
                        case "supervisor":

                            Trabajador trabajador1 = new Trabajador(rut, nombre, apellido, nacimiento, nacionalidad);

                            trabajador1.DatosTrabajo(puesto, sueldo, horario);

                            supervisor1.DatosPersonalesSupervisor(trabajador1);

                            supervisor1.DatosProfesionalesSupervisor(trabajador1);

                            todoTrabajadores.ListaTrabajadores(trabajador1);

                            break;

                        case "auxiliar":

                            Trabajador trabajador2 = new Trabajador(rut, nombre, apellido, nacimiento, nacionalidad);

                            trabajador2.DatosTrabajo(puesto, sueldo, horario);

                            auxiliar1.DatosPersonalesAuxiliar(trabajador2);

                            auxiliar1.DatosProfesionalesAuxiliar(trabajador2);

                            todoTrabajadores.ListaTrabajadores(trabajador2);

                            break;

                        case "cajero":

                            Trabajador trabajador3 = new Trabajador(rut, nombre, apellido, nacimiento, nacionalidad);

                            trabajador3.DatosTrabajo(puesto, sueldo, horario);

                            cajero1.DatosPersonalesAuxiliar(trabajador3);

                            cajero1.DatosProfesionalesAuxiliar(trabajador3);

                            todoTrabajadores.ListaTrabajadores(trabajador3);

                            break;

                        case "reponedor":

                            break;

                        case "bodeguero":

                            break;

                        case "empaquetador":

                            break;

                        case "guardia":

                            break;
                        }

                        break;

                    case "2":

                        Console.WriteLine("\nElige un opcion:\n" +
                                          "\n[1] Jefe" +
                                          "\n[2] Supervisor" +
                                          "\n[3] Auxiliar" +
                                          "\n[4] Cajero" +
                                          "\n[5] Reponedor (proximamente)" +
                                          "\n[6] Bodeguero (proximamente)" +
                                          "\n[7] Empaquetador (proximamente)" +
                                          "\n[8] Guardia (proximamente)");

                        puestoTrabajo = Console.ReadLine();

                        switch (puestoTrabajo)
                        {
                        case "1":
                            String conocerJefe;

                            Console.WriteLine("\nElige un opcion ingresando 1 o 2\n" +
                                              "\n[1] Conocer Jefe" +
                                              "\n[2] Hacer una accion del Jefe");

                            Jefe jefe1 = new Jefe("20075160-4", "Daniel", "Saavedra", "5 de abril", "Chile");

                            jefe1.DatosTrabajo("Jefe", "2000000", "9:00 / 18:00");

                            conocerJefe = Console.ReadLine();

                            switch (conocerJefe)
                            {
                            case "1":

                                Console.WriteLine("\nCargo: " + jefe1.rut + "\nNombre: " + jefe1.nombre + "\nApellido: " + jefe1.apellido + "\nNacimiento: " + jefe1.nacimiento + "\nNacionalidad: " + jefe1.nacionalidad);

                                Console.WriteLine("\nCargo: " + jefe1.puesto + "\nSueldo: " + jefe1.sueldo + "\nHorario: " + jefe1.horario);

                                break;

                            case "2":

                                while (true)
                                {
                                    String eleccion;

                                    Console.WriteLine("\nElige un opcion ingresando 1, 2 o 3\n" +
                                                      "\n[1] Cambio trabajo" +
                                                      "\n[2] Cambio Sueldo" +
                                                      "\n[3] Cambio Horario");

                                    eleccion = Console.ReadLine();

                                    switch (eleccion)
                                    {
                                    case "1":

                                        String eleccion1;

                                        Console.WriteLine("\nElige a quien cambiar de trabajo:\n" +
                                                          "\n[1] Jefe" +
                                                          "\n[2] Supervisor" +
                                                          "\n[3] Auxiliar" +
                                                          "\n[4] Cajero");

                                        eleccion1 = Console.ReadLine();

                                        switch (eleccion1)
                                        {
                                        case "1":

                                            break;

                                        case "2":

                                            break;

                                        case "3":

                                            break;

                                        case "4":

                                            break;
                                        }

                                        break;

                                    case "2":

                                        Console.WriteLine("\nElige a quien cambiar su sueldo:\n" +
                                                          "\n[1] Supervisor" +
                                                          "\n[2] Auxiliar" +
                                                          "\n[3] Cajero");

                                        eleccion1 = Console.ReadLine();

                                        switch (eleccion1)
                                        {
                                        case "1":

                                            break;

                                        case "2":

                                            break;

                                        case "3":

                                            break;

                                        case "4":

                                            break;
                                        }

                                        break;

                                    case "3":

                                        Console.WriteLine("\nElige a quien cambiar su horario:\n" +
                                                          "\n[2] Supervisor" +
                                                          "\n[3] Auxiliar" +
                                                          "\n[4] Cajero");

                                        eleccion1 = Console.ReadLine();

                                        switch (eleccion1)
                                        {
                                        case "1":

                                            break;

                                        case "2":

                                            break;

                                        case "3":

                                            break;

                                        case "4":

                                            break;
                                        }

                                        break;
                                    }

                                    break;
                                }

                                break;
                            }

                            break;

                        case "2":

                            String conocerSupervisor;

                            Console.WriteLine("\nElige un opcion ingresando 1 o 2\n" +
                                              "\n[1] Conocer Supervisores" +
                                              "\n[2] Hacer una accion del Supervisor");

                            conocerSupervisor = Console.ReadLine();

                            switch (conocerSupervisor)
                            {
                            case "1":

                                supervisor1.informacionSupervisores();

                                break;

                            case "2":

                                break;
                            }

                            break;

                        case "3":

                            String conocerAuxiliar;

                            Console.WriteLine("\nElige un opcion ingresando 1 o 2\n" +
                                              "\n[1] Conocer Auxiliares" +
                                              "\n[2] Hacer una accion del Auxiliar");

                            conocerAuxiliar = Console.ReadLine();

                            switch (conocerAuxiliar)
                            {
                            case "1":

                                auxiliar1.informacionAuxiliar();

                                break;

                            case "2":

                                break;
                            }

                            break;

                        case "4":             //Cajero

                            String conocerCajero;

                            Console.WriteLine("\nElige un opcion ingresando 1 o 2\n" +
                                              "\n[1] Conocer Cajeros" +
                                              "\n[2] Hacer una accion del Cajero");

                            conocerCajero = Console.ReadLine();

                            switch (conocerCajero)
                            {
                            case "1":

                                cajero1.informacionCajero();

                                break;

                            case "2":

                                break;
                            }

                            break;

                        case "5":             //Reponedor

                            break;

                        case "6":             //Bodeguero

                            break;

                        case "7":             //Empaquetador

                            break;

                        case "8":             //Guardia

                            break;
                        }

                        break;

                    case "3":

                        Console.WriteLine("Saliendo de Smart-ket");

                        break;
                    }

                    break;

                case "3":

                    String rutCliente, nombreCliente, apellidoCliente, nacimientoCliente, nacionalidadCliente;

                    Console.WriteLine("Ingrese sus datos:");

                    Console.WriteLine("RUT:");

                    rutCliente = Console.ReadLine();

                    Console.WriteLine("Nombre:");

                    nombreCliente = Console.ReadLine();

                    Console.WriteLine("Apellido:");

                    apellidoCliente = Console.ReadLine();

                    Console.WriteLine("Nacimiento:");

                    nacimientoCliente = Console.ReadLine();

                    Console.WriteLine("Nacionalidad:");

                    nacionalidadCliente = Console.ReadLine();

                    Cliente personaCliente = new Cliente(rutCliente, nombreCliente, apellidoCliente, nacimientoCliente, nacionalidadCliente);

                    while (true)
                    {
                        String eleccionCliente;

                        Console.WriteLine("\nSeleccione tipo de producto que desea ingresar:" +
                                          "\n[1] Comprar Productos" +
                                          "\n[2] Ver carro de compras" +
                                          "\n[3] Pagar productos" +
                                          "\n[4] Salir");

                        eleccionCliente = Console.ReadLine();

                        if (eleccionCliente == "4")
                        {
                            break;
                        }

                        switch (eleccionCliente)
                        {
                        case "1":

                            String eleccionCompras;

                            int eleccionProductos;

                            Console.WriteLine("\nSeleccione tipo de producto que desea ingresar:" +
                                              "\n[1] Dulces" +
                                              "\n[2] Lacteos" +
                                              "\n[3] Carnes" +
                                              "\n[4] Verduras" +
                                              "\n[5] Frutas" +
                                              "\n[6] Carbohidratos" +
                                              "\n[7] Limpieza" +
                                              "\n[8] Salir");

                            eleccionCompras = Console.ReadLine();

                            if (eleccionCompras == "8")
                            {
                                break;
                            }

                            switch (eleccionCompras)
                            {
                            case "1":

                                String producto = "Dulces";

                                proveedor1.informacionDulces();

                                Console.WriteLine("Elija su Producto");

                                eleccionProductos = int.Parse(Console.ReadLine());

                                compra1.AgregarAlCarro(proveedor1, producto, eleccionProductos);

                                break;

                            case "2":

                                String producto1 = "Lacteos";

                                proveedor1.informacionLacteos();

                                Console.WriteLine("Elija su Producto");

                                eleccionProductos = int.Parse(Console.ReadLine());

                                compra1.AgregarAlCarro(proveedor1, producto1, eleccionProductos);

                                break;

                            case "3":

                                String producto2 = "Carnes";

                                proveedor1.informacionCarnes();

                                Console.WriteLine("Elija su Producto");

                                eleccionProductos = int.Parse(Console.ReadLine());

                                compra1.AgregarAlCarro(proveedor1, producto2, eleccionProductos);

                                break;

                            case "4":

                                String producto3 = "Verduras";

                                proveedor1.informacionVerduras();

                                Console.WriteLine("Elija su Producto");

                                eleccionProductos = int.Parse(Console.ReadLine());

                                compra1.AgregarAlCarro(proveedor1, producto3, eleccionProductos);

                                break;

                            case "5":

                                String producto4 = "Frutas";

                                proveedor1.informacionFrutas();

                                Console.WriteLine("Elija su Producto");

                                eleccionProductos = int.Parse(Console.ReadLine());

                                compra1.AgregarAlCarro(proveedor1, producto4, eleccionProductos);

                                break;

                            case "6":

                                String producto5 = "Carbohidratos";

                                proveedor1.informacionCarbohidratos();

                                Console.WriteLine("Elija su Producto");

                                eleccionProductos = int.Parse(Console.ReadLine());

                                compra1.AgregarAlCarro(proveedor1, producto5, eleccionProductos);

                                break;

                            case "7":

                                String producto6 = "Limpieza";

                                proveedor1.informacionLimpieza();

                                Console.WriteLine("Elija su Producto");

                                eleccionProductos = int.Parse(Console.ReadLine());

                                compra1.AgregarAlCarro(proveedor1, producto6, eleccionProductos);

                                break;
                            }

                            break;

                        case "2":

                            break;

                        case "3":

                            break;
                        }
                    }

                    break;

                case "4":

                    Console.WriteLine("En el Menu 'Trabajadores' existe la posibilidad de crear mas Trabajadores");

                    Console.WriteLine("En el Menu 'Trabajadores' existe la posibilidad de ver a los Trabajadores una vez ya creados");

                    Console.WriteLine("El Jefe viene prederterminado");

                    Console.WriteLine("En el Menu 'Proveedores' existe la facultad de crear productos dependiendo de su tipo");

                    Console.WriteLine("En la clase Producto se pueden crear los productos");

                    Console.WriteLine("La clase Compra almacena las compras de la clase Cliente");

                    Console.WriteLine("La clase Proveedor almacena los productos creados en la clase Producto");

                    Console.WriteLine("La clase Supervisor, Auxiliar y Cajero crean Trabajadores y los almacenan en sus respectivos trabajos");

                    Console.WriteLine("La clase TodoTrabajadores tiene los metodos para cambiar de puesto de trabajo ademas de cambiar el sueldo y horario de los trabajadores");

                    break;
                }
            }
        static void Main(string[] args)
        {
            //DateTime localdate = DateTime.Now;
            List <Client> listofclients = new List <Client>()
            {
                new Client("Diego", "Gonzalez", "28/02/2000", "Chileno", 500000, "12954851-7")
            };
            List <Employee> listofemployees = new List <Employee>()
            {
                new Employee("Pedro", "lopez", "01/05/1992", "Colombiano", 0, "12345678-k", 200000, "7:00 a 15:00", "cajero")
            };
            List <Product> listofproducts = new List <Product>()
            {
                new Product("Coca cola", 1000, "coca-cola company", 100)
            };
            List <Boleta>     listofchecks = new List <Boleta>();
            List <Supervisor> supervisors  = new List <Supervisor>()
            {
                new Supervisor("Juan", "Perez", "05/01/1993", "Venezolano", 10, "12345678-9", 320000, "7:00 a 15:00", "Supervisor fiambreria")
            };


            //El Supermercado no funciona de no haber al menos 1 empleado con el trabajo cajero o Cajero
            //Añadir productos es exclusivo de el menu del supervisor



            string Default_Stopper = "5";
            string Client_Stoper   = "7";

            Console.WriteLine("Bienvenido al supermercado porfavor eliga una opcion:");
            string stopper = "0";

            while (stopper != Default_Stopper)
            {
                Console.WriteLine("\n(1)Añadir cliente a la base de datos\n(2)Ingresar como cliente\n(3)Añadir empleado a la base de datos\n" +
                                  "(4)Ingresar como supervisor \n(5)Salir del programa\n");
                stopper = Console.ReadLine();
                switch (stopper)
                {
                case "1":    //agregar cliente Done
                    Console.WriteLine("Ingrese el rut con el siguiente formato: 12345678-9");
                    string rut = Console.ReadLine();
                    Console.WriteLine("Ingrese el nombre: ");
                    string name = Console.ReadLine();
                    Console.WriteLine("Ingrese el apellido: ");
                    string lastname = Console.ReadLine();
                    Console.WriteLine("Ingrese fecha de nacimiento en el siguiente formato: 00/00/0000");
                    string birthday = Console.ReadLine();
                    Console.WriteLine("Ingrese Nacionalidad: ");
                    string nacionality = Console.ReadLine();
                    string auxcliente  = "0";
                    int    money       = 0;
                    while (auxcliente != "1")
                    {
                        Console.WriteLine("Ingrese dinero disponible: ");
                        string moneystring = Console.ReadLine();
                        if (int.TryParse(moneystring, out money))
                        {
                            money      = Convert.ToInt32(moneystring);
                            auxcliente = "1";
                            break;
                        }
                        else
                        {
                            Console.WriteLine("Ingrese un numero valido\n");
                        }
                    }
                    Client client = new Client(name, lastname, birthday, nacionality, money, rut);
                    listofclients.Add(client);
                    break;

                case "2":    //Ingresar como cliente Done
                    bool fixer = false;
                    if (listofclients.Count() == 0)
                    {
                        Console.WriteLine("No existen clientes en la base de datos");
                    }
                    else
                    {
                        Console.WriteLine("Ingrese el rut con el siguiente formato: 12345678-9\n");
                        string rutclient = Console.ReadLine();
                        foreach (Client cliente in listofclients)
                        {
                            if (cliente.ReturnRut() == rutclient)
                            {
                                fixer = true;   //debugger
                                string clientstopper = "0";
                                while (Client_Stoper != clientstopper)
                                {
                                    Console.WriteLine("\n(1)Agregar producto al carro\n(2)Consultar Precio \n(3)Consultar stock\n(4)Finalizar compra\n(5)Revisar carro\n(6)Revisar Dinero\n(7)Volver al menu\n");
                                    clientstopper = Console.ReadLine();
                                    switch (clientstopper)
                                    {
                                    case "1":        //d
                                        bool fixer1 = false;
                                        Console.WriteLine("Ingrese el nombre del producto:");
                                        string productname = Console.ReadLine();
                                        if (listofproducts.Count != 0)
                                        {
                                            foreach (Product product in listofproducts)
                                            {
                                                if (product.GetName() == productname)
                                                {
                                                    fixer1 = true;
                                                    cliente.AddToCart(product);
                                                }
                                                break;
                                            }
                                            if (fixer1)
                                            {
                                                break;
                                            }
                                            else
                                            {
                                                Console.WriteLine("No se encontro el producto, intente nuevamente");
                                                break;
                                            }
                                        }
                                        else
                                        {
                                            Console.WriteLine("No existen productos en este momento");
                                            break;
                                        }

                                    case "2":        //d
                                        bool fixer3 = false;
                                        Console.WriteLine("Ingrese el nombre del producto:");
                                        string productnameprice = Console.ReadLine();
                                        if (listofproducts.Count() != 0)
                                        {
                                            foreach (Product product in listofproducts)
                                            {
                                                if (product.GetName() == productnameprice)
                                                {
                                                    fixer3 = true;
                                                    Console.WriteLine(cliente.PriceCheck(product) + "\n");
                                                }
                                            }
                                            if (fixer3)
                                            {
                                                break;
                                            }
                                            else
                                            {
                                                Console.WriteLine("No se encontro el producto, intente nuevamente");
                                                break;
                                            }
                                        }
                                        else
                                        {
                                            Console.WriteLine("No hay productos para consultar");
                                            break;
                                        }

                                    case "3":        //d
                                        bool fixer4 = false;
                                        Console.WriteLine("Ingrese el nombre del producto:");
                                        string productnamestock = Console.ReadLine();
                                        if (listofproducts.Count() != 0)
                                        {
                                            foreach (Product product in listofproducts)
                                            {
                                                if (product.GetName() == productnamestock)
                                                {
                                                    fixer4 = true;
                                                    Console.WriteLine(cliente.StockCheck(product) + "\n");
                                                }
                                            }
                                            if (fixer4)
                                            {
                                                break;
                                            }
                                            else
                                            {
                                                Console.WriteLine("No se encontro el producto, intente nuevamente");
                                                break;
                                            }
                                        }
                                        else
                                        {
                                            Console.WriteLine("No hay productos para consultar");
                                            break;
                                        }

                                    case "4":        //d
                                        bool fixer5 = false;
                                        if (listofemployees.Count() != 0)
                                        {
                                            foreach (Employee employee in listofemployees)
                                            {
                                                if (employee.ReturnJob() == "Cajero" || employee.ReturnJob() == "cajero")
                                                {
                                                    fixer5 = true;
                                                    if (cliente.ReturnCart().Count != 0)
                                                    {
                                                        Boleta boleta = new Boleta(employee, cliente, cliente.ReturnCart(), (DateTime.Now.ToString("MM/dd/yyyy")));
                                                        listofchecks.Add(boleta);
                                                        cliente.Buy();
                                                        break;
                                                    }
                                                    else
                                                    {
                                                        Console.WriteLine("El carro esta vacio");
                                                        break;
                                                    }
                                                }
                                            }
                                            if (fixer5)
                                            {
                                                break;
                                            }
                                            else
                                            {
                                                Console.WriteLine("No hay empleados con el puesto cajero asignado");
                                                break;
                                            }
                                        }
                                        else
                                        {
                                            Console.WriteLine("No hay empleados para atender como cajero");
                                            break;
                                        }

                                    case "5":
                                        cliente.Checkcart();
                                        break;

                                    case "6":
                                        cliente.CheckMoney();
                                        break;

                                    case "7":
                                        break;

                                    default:
                                        Console.WriteLine("Ingrese una opcion valida");
                                        break;
                                    }
                                }
                            }
                            break;
                        }
                        if (fixer)     //debugger
                        {
                            break;
                        }
                        else
                        {
                            Console.WriteLine("No se encontro el cliente en la base de datos, intente nuevamente\n");
                            break;
                        }
                    }
                    break;

                case "3":    //añadir empleado Done
                    Console.WriteLine("(1)Añadir empleado\n(2)Añadir Supervisor");
                    string suporemp = Console.ReadLine();
                    if (suporemp == "1")
                    {
                        Console.WriteLine("Ingrese el rut con el siguiente formato: 12345678-9");
                        string rutE = Console.ReadLine();
                        Console.WriteLine("Ingrese el nombre: ");
                        string nameE = Console.ReadLine();
                        Console.WriteLine("Ingrese el apellido: ");
                        string lastnameE = Console.ReadLine();
                        Console.WriteLine("Ingrese fecha de nacimiento en el siguiente formato: 00/00/0000");
                        string birthdayE = Console.ReadLine();
                        Console.WriteLine("Ingrese Nacionalidad: ");
                        string nacionalityE = Console.ReadLine();
                        string auxm         = "0";
                        int    moneyE       = 0;
                        while (auxm != "1")
                        {
                            Console.WriteLine("Ingrese dinero disponible: ");
                            string moneystring = Console.ReadLine();
                            if (int.TryParse(moneystring, out moneyE))
                            {
                                moneyE = Convert.ToInt32(moneystring);
                                auxm   = "1";
                            }
                            else
                            {
                                Console.WriteLine("Ingrese un numero valido\n");
                            }
                        }
                        string auxs   = "0";
                        int    salary = 0;
                        while (auxs != "1")
                        {
                            Console.WriteLine("Ingrese el sueldo inicial: ");
                            string salarystring = Console.ReadLine();
                            if (int.TryParse(salarystring, out moneyE))
                            {
                                salary = Convert.ToInt32(salarystring);
                                auxs   = "1";
                            }
                            else
                            {
                                Console.WriteLine("Ingrese un numero valido\n");
                            }
                        }
                        Console.WriteLine("Ingrese el horario en el siguiente formato: 9:00 a 17:00");
                        string horario = Console.ReadLine();
                        Console.WriteLine("Ingrese el puesto de trabajo: ");
                        string   job      = Console.ReadLine();
                        Employee empleado = new Employee(nameE, lastnameE, birthdayE, nacionalityE, moneyE, rutE, salary, horario, job);
                        listofemployees.Add(empleado);
                        break;
                    }
                    else if (suporemp == "2")
                    {
                        Console.WriteLine("Ingrese el rut con el siguiente formato: 12345678-9");
                        string rutS = Console.ReadLine();
                        Console.WriteLine("Ingrese el nombre: ");
                        string nameS = Console.ReadLine();
                        Console.WriteLine("Ingrese el apellido: ");
                        string lastnameS = Console.ReadLine();
                        Console.WriteLine("Ingrese fecha de nacimiento en el siguiente formato: 00/00/0000");
                        string birthdayS = Console.ReadLine();
                        Console.WriteLine("Ingrese Nacionalidad: ");
                        string nacionalityS = Console.ReadLine();
                        string auxm         = "0";
                        int    moneyS       = 0;
                        while (auxm != "1")
                        {
                            Console.WriteLine("Ingrese dinero disponible: ");
                            string moneystring = Console.ReadLine();
                            if (int.TryParse(moneystring, out moneyS))
                            {
                                moneyS = Convert.ToInt32(moneystring);
                                auxm   = "1";
                            }
                            else
                            {
                                Console.WriteLine("Ingrese un numero valido\n");
                            }
                        }
                        string auxs    = "0";
                        int    salaryS = 0;
                        while (auxs != "1")
                        {
                            Console.WriteLine("Ingrese el sueldo inicial: ");
                            string salarystring = Console.ReadLine();
                            if (int.TryParse(salarystring, out salaryS))
                            {
                                salaryS = Convert.ToInt32(salarystring);
                                auxs    = "1";
                            }
                            else
                            {
                                Console.WriteLine("Ingrese un numero valido\n");
                            }
                        }
                        Console.WriteLine("Ingrese el horario en el siguiente formato: 9:00 a 17:00");
                        string horarioS = Console.ReadLine();
                        Console.WriteLine("Ingrese el puesto de trabajo: ");
                        string     jobS       = Console.ReadLine();
                        Supervisor supervisor = new Supervisor(nameS, lastnameS, birthdayS, nacionalityS, moneyS, rutS, salaryS, horarioS, jobS);
                        supervisors.Add(supervisor);
                        break;
                    }
                    else
                    {
                        Console.WriteLine("Ingrese una opcion valida");
                        break;
                    }

                case "4":    //ingresar como supervisor
                    bool fixer6 = false;
                    Console.WriteLine("Ingrese el rut con el siguiente formato: 12345678-9\n");
                    string rutsup = Console.ReadLine();
                    if (supervisors.Count() == 0)
                    {
                        Console.WriteLine("No existen supervisores en la base de datos");
                        break;
                    }
                    else
                    {
                        foreach (Supervisor supervisor in supervisors)
                        {
                            if (supervisor.ReturnRut() == rutsup)
                            {
                                fixer6 = true;
                                string Sup_Stopper = "6";
                                string supswitcher = "0";
                                while (Sup_Stopper != supswitcher)
                                {
                                    Console.WriteLine("\n(1)Añadir Producto\n(2)Cambiar Salario de empleado\n(3)Pagar sueldos\n(4)Cambiar horario de empleado\n(5)Cambiar puesto de empleado\n(6)Salir");
                                    supswitcher = Console.ReadLine();
                                    switch (supswitcher)
                                    {
                                    case "1":        //Anadir product d
                                        supervisor.AddProduct(listofproducts);
                                        break;

                                    case "2":        //Cambiar salario d
                                        bool fixer7 = false;
                                        Console.WriteLine("Ingrese el rut del empleado con el siguiente formato: 12346578-9");
                                        string rutempleado = Console.ReadLine();
                                        if (listofemployees.Count() == 0)
                                        {
                                            Console.WriteLine("No se encontraron empleados en la base de datos.\n");
                                        }
                                        else
                                        {
                                            foreach (Employee employee in listofemployees)        //checked
                                            {
                                                if (employee.ReturnRut() == rutempleado)
                                                {
                                                    fixer7 = true;
                                                    supervisor.ChangeSalary(employee);
                                                    break;
                                                }
                                            }
                                            if (fixer7)
                                            {
                                                break;
                                            }
                                            else
                                            {
                                                Console.WriteLine("No se encontraron empleados en la base de datos.\n");
                                                break;
                                            }
                                        }
                                        break;

                                    case "3":        //Pagar sueldos
                                        supervisor.Payment(listofemployees);
                                        break;

                                    case "4":        //cambiar horario /d
                                        bool fixer8 = false;
                                        Console.WriteLine("Ingrese el rut del empleado con el siguiente formato: 12346578-9");
                                        string rutempleadoH = Console.ReadLine();
                                        if (listofemployees.Count() == 0)
                                        {
                                            Console.WriteLine("No se encontraron empleados en la base de datos.\n");
                                        }
                                        else
                                        {
                                            foreach (Employee employee in listofemployees)
                                            {
                                                if (employee.ReturnRut() == rutempleadoH)
                                                {
                                                    fixer8 = true;
                                                    supervisor.ChangeSchedule(employee);
                                                    break;
                                                }
                                            }
                                            if (fixer8)
                                            {
                                                break;
                                            }
                                            else
                                            {
                                                Console.WriteLine("No se encontraron empleados con ese rut en la base de datos.\n");
                                                break;
                                            }
                                        }
                                        break;

                                    case "5":        //cambiar puesto /d
                                        bool fixer9 = false;
                                        Console.WriteLine("Ingrese el rut del empleado con el siguiente formato: 12346578-9");
                                        string rutempleadoJ = Console.ReadLine();
                                        if (listofemployees.Count() == 0)
                                        {
                                            Console.WriteLine("No se encontraron empleados en la base de datos.\n");
                                        }
                                        else
                                        {
                                            foreach (Employee employee in listofemployees)
                                            {
                                                if (employee.ReturnRut() == rutempleadoJ)
                                                {
                                                    fixer9 = true;
                                                    supervisor.ChangeJob(employee);
                                                    break;
                                                }
                                            }
                                            if (fixer9)
                                            {
                                                break;
                                            }
                                            else
                                            {
                                                Console.WriteLine("No se encontraron empleados con ese rut en la base de datos.\n");
                                                break;
                                            }
                                        }
                                        break;

                                    case "6":        //salir
                                        break;

                                    default:
                                        Console.WriteLine("Ingrese una opcion valida");
                                        break;
                                    }
                                }

                                break;
                            }
                        }
                        if (fixer6)
                        {
                            break;
                        }
                        else
                        {
                            Console.WriteLine("No se encontro ningun supervisor con ese rut");
                            break;
                        }
                    }

                case "5":    //salir
                    break;

                default:
                    Console.WriteLine("Ingrese una opcion valida");
                    break;
                }
            }
        }