private void submitUserSelection(eUserMenuOption i_MenuOption, Garage i_Garage)
 {
     if (i_MenuOption == eUserMenuOption.AddVehicle)
     {
         addVehicle(i_Garage);
     }
     else if (i_MenuOption == eUserMenuOption.DisplayLicenseNumbers)
     {
         displayLicenseNumbers(i_Garage);
     }
     else if (i_MenuOption == eUserMenuOption.ChangeVehicleStatus)
     {
         changeVehicleStatus(i_Garage);
     }
     else if (i_MenuOption == eUserMenuOption.InflateVehicleWheels)
     {
         inflateAllVehiclesWheelsToMax(i_Garage);
     }
     else if (i_MenuOption == eUserMenuOption.AddFuelToRegularVehicle)
     {
         refuelRegularVehicle(i_Garage);
     }
     else if (i_MenuOption == eUserMenuOption.ChargeElectricVehicle)
     {
         chargeElectricVehicle(i_Garage);
     }
     else if (i_MenuOption == eUserMenuOption.DisplayVehicleDetails)
     {
         displayVehicleDetails(i_Garage);
     }
 }
        public void Run()
        {
            bool   exitProgram = false;
            Garage garage      = new Garage();

            while (!exitProgram)
            {
                try
                {
                    Console.WriteLine(k_UserDisplayText);
                    eUserMenuOption userSelection = getUserMenuChoice(Console.ReadLine());
                    Console.Clear();
                    if (userSelection == eUserMenuOption.QuitProgram)
                    {
                        break;
                    }

                    submitUserSelection(userSelection, garage);
                }
                catch (FormatException)
                {
                    Console.WriteLine("There is an error in the input");
                }
                catch (ArgumentException)
                {
                    Console.WriteLine("There is a logical error");
                }
                catch (ValueOutOfRangeExecption exeption)
                {
                    Console.WriteLine(string.Format("There is an error the value need to be in the range of:{0}-{1}.", exeption.MinValue, exeption.MaxValue));
                }
                catch (Exception)
                {
                    Console.WriteLine("unknown problem, exit from program......");
                    exitProgram = true;
                }

                Console.WriteLine("Press any key to back to menu.");
                Console.ReadLine();
                Console.Clear();
            }

            Console.WriteLine("Bye Bye");
            Console.ReadLine();
        }