public static Bike.eLicenseType ParseBikeLicenseType(string i_Input)
        {
            Bike.eLicenseType userOption = 0;
            try
            {
                switch ((Bike.eLicenseType)Enum.Parse(typeof(Bike.eLicenseType), i_Input))
                {
                case Bike.eLicenseType.A:
                    userOption = Bike.eLicenseType.A;
                    break;

                case Bike.eLicenseType.A1:
                    userOption = Bike.eLicenseType.A1;
                    break;

                case Bike.eLicenseType.AB:
                    userOption = Bike.eLicenseType.AB;
                    break;

                case Bike.eLicenseType.B1:
                    userOption = Bike.eLicenseType.B1;
                    break;

                default:
                    throw new FormatException("Invalid input, valid licenses are: 'A', 'A1', 'AB' or 'B1'");
                }
            }
            catch
            {
                throw new FormatException("Invalid input, valid licenses are: 'A', 'A1', 'AB' or 'B1'");
            }

            return(userOption);
        }
        private static Vehicle createBike(Engine.eEngineType i_Engine, List <string> i_VehicleParametersStrings, eVehicleType i_VehicleType)
        {
            string modelName;
            string licenseNumber;
            float  energyPercentageLeft;
            string tireManufactureName;
            float  tireCurrentAirPressure;

            Bike.eLicenseType licenseType = (Bike.eLicenseType)Enum.Parse(typeof(Bike.eLicenseType), i_VehicleParametersStrings[(int)eExtraParametersInputOrder.BikeLicenseType]);

            getVehicleParameters(
                i_VehicleParametersStrings,
                out modelName,
                out licenseNumber,
                out energyPercentageLeft,
                out tireManufactureName,
                out tireCurrentAirPressure);

            Engine engine = i_Engine == Engine.eEngineType.FuelEngine
                                ? createFuelEngine(Bike.k_FuelType, Bike.k_MaxTankCapacity)
                                : (Engine)createElectricEngine(Bike.k_MaxBatteryTime);

            Bike bike = new Bike(i_VehicleType, modelName, licenseNumber, new Tire[Bike.k_NumberOfTires], engine, energyPercentageLeft, tireManufactureName, tireCurrentAirPressure, licenseType, Bike.k_MaxTankCapacity);

            return(bike);
        }