public static void startGameCustom(String[] customArgs) throws NumbersAreSameException{
		resetFields();
		setDifficulty(CUSTOM_DIFFICULTY);
		EnterText("Starting a new game set in the Custom Difficulty.");
		EnterText("Question #" + MathQuizGame.frame.numberOfTimesPlayed);

		int maxRangeLocal;
		int minRangeLocal;
		// If User only specifies one number and that's it, the program should automatically set
		// the minimum range to 0 and the max to whatever the user specified.
		if(customArgs.length >= 2){
			minRangeLocal = Integer.parseInt(customArgs[1]);
			maxRangeLocal = Integer.parseInt(customArgs[0]);
		} else {
			minRangeLocal = 0;
			maxRangeLocal = Integer.parseInt(customArgs[0]);
		}

		if(maxRangeLocal < minRangeLocal){
			customMaxRange = minRangeLocal;
			customMinRange = maxRangeLocal;
		}else if (maxRangeLocal > minRangeLocal){
			customMaxRange = maxRangeLocal;
			customMinRange = minRangeLocal;
		}else if (maxRangeLocal == minRangeLocal){
			throw new NumbersAreSameException("Numbers cannot be same.");
		}


		if(customArgs.length > 2){
			customOperations = customArgs[2];
		} else{
			customOperations = "+";
		}

		if(customArgs.length > 3){
			int CustomNumberOfTimesToBePlayedLocal = Integer.parseInt(customArgs[3]);
			numberOfTimesWillBePlayed = CustomNumberOfTimesToBePlayedLocal;
			pointsWorth = 100 / numberOfTimesWillBePlayed;
		}else if (customArgs.length <= 3){
			numberOfTimesWillBePlayed = 10;
			pointsWorth = 10;
		}

		if(MathQuizGame.getTimerRunning()){
			MathQuizGame.timer.start();
		}

		GenerateNewNumbers(3);
		askQuestion();
		MathQuizGame.frame.input.requestFocusInWindow();
		MathQuizGame.frame.input.selectAll();
		MathQuizGame.setQuestionState(0);
	}