private static int[] extractValidPromptInput(String userInput) {
		/*This method throws various error messages depending on what the user has entered as an input after the 
		 * prompt is given. We will break the evaluation of the user's input on whether or not it contains a colon 
		 * or not. If it contains a colon we will evaluate it as being a type of hh:mm:ss and if doesn't contain a
		 * colon we will evaluate it as it being just seconds. Then proceeding we will check if it contains all 
		 * numbers or not. If its not all numbers then we will return an error specifying so.
		 * 
		 * When the input is checked to be invalid we will print out the error message and also return a null. 
		 * Returning null will have an effect later to how we proceed in the calculate method.
		 * 
		 */
		//We will immediately throw an error if the user input is and empty string or if the user's input has spaces
		if (userInput.equals("") || userInput.equals("::") || hasSpace(userInput)){//<--this will check if the user's input has a space or is an empty string
			System.out.println("*****ERROR: The string you provided does not have the appropriate format.");//<--if so we will print the error message
			return null;//<--then we will return null
		}
		//Next we will check if the user's input contains any colons. If it does then we will know its not a seconds input but a hh:mm:ss one
		if (hasColons(userInput)) {//<--this will check if the user's input has colons even if there is only one
			//At this point we will need to ensure that it is indeed of type hh:mm:ss, so we will need to verify that two colons exist
			if(colonCount(userInput)==2){//<--this checks if the user's input has two colons
				/*Now we will need to proceed accordingly and evaluate what is in between the colons. The user 
				 * could very well have (tets:43:00).
				 */
				//We will extract the elements in between and after the colons and then proceed to evaluate it further
				//I am creating an int variable that will act as a index holder for the first colon so that I can use it in the substring method later
				int indexFirstColon = 0;//<--I will initialize it with 0
				//I am creating an int variable that will act as a index holder for the second colon so that I can use it in the substring method later
				int indexSecondColon = 0;//<--I will initialize it with 0
				//I am creating an string variable that will hold the hours from the users's input
				String hours = "";//<--I will initialize it as an empty string
				//I am creating an string variable that will hold the minutes from the users's input
				String minutes = "";//<--I will initialize it as an empty string
				//I am creating an string variable that will hold the seconds from the users's input
				String seconds = "";//<--I will initialize it as an empty string
				//I am creating an string variable that will colon count present in the string
				int colonCounter = 1;//<--I will initialize it with 1
				//We will utilize a for loop to iterate over the string and then pull each section for the user's input of hh:mm:ss
				for (int i = 0; i < userInput.length(); i++){//<--this loop will iterate over the user's input until it reaches the end of the user's input
					//If we encounter the first colon we will store it's index so that we can utilize the substring method later.
					if(userInput.charAt(i) == ':' && colonCounter == 1){
						colonCounter ++;//<--we will increase the colonCounter by 1
						hours += userInput.substring(0, i);//<--we will extract the contents up until the first colon using the substring method
						indexFirstColon = i;//<--this will hold the index of our first colon that we will use to extract the minutes
						continue;//<--we will break out of this if statement and go to the top of the for loop, as if we continue then we will be storing the incorrect index for the colon
					}
					//If we encounter the second colon we will store its' index so that we can utilize the substring method later to extrac the seconds.
					if(userInput.charAt(i) == ':' && colonCounter == 2){
						colonCounter ++;//<--we will increase the colonCounter by 1
						minutes += userInput.substring(indexFirstColon+1, i);//<--we will extract the contents from the first colon up until the second colon using the substring method
						indexSecondColon = i;//<--this will hold the index of our second colon that we will use to extract the minutes
					}

				}//end of our loop that iterates through the user's input and extracts hh, mm and ss
				seconds += userInput.substring(indexSecondColon+1, userInput.length());//<--we will extract the contents from the second colon up until the end of the user's input using the substring method

				/*At this point we will need to check if each of the substrings contain all numbers. The user could very well have inputed test:89:09 as an input. 
				 * Checking to see if the substring are all numbers will ensure that we continue with our evaluations.
				 */
				//We will call on our method hasAllNumbers that will check hh, mm and ss to see if contains all digits
				if(hasAllNumbers(hours) && hasAllNumbers(minutes) && hasAllNumbers(seconds)) {//if hh, mm and ss are all digits then we will set the hours, minutes and seconds to an int value
					//We will need to convert the substrings into an int as our duration object only takes ints as a parameter, we will use the Integer class to accomplish this
					int hoursInt = Integer.parseInt(hours);//<--this converts our substring that contains hours into an int value
					int minutesInt = Integer.parseInt(minutes);//<--this converts our substring that contains minutes into an int value
					int secondsInt = Integer.parseInt(seconds);//<--this converts our substring that contains seconds into an int value
					/*Now if the user entered hours that is greater than 2 digits, minutes that is greater than 4 digits or seconds that is greater than 5 
					 * digits, we will need to tell the user that entered a string that is too long to represent a day's duration.
					 */
					if(hoursInt > 99 || minutesInt > 9999 || secondsInt > 99999){//<--this statement will evaluate the above and if true we will print out the error message
						System.out.println("*****ERROR: The string you provided is too long to represent a possible one day's Duration.");//<--this will print out the error message stating that the string is too long for a day's duration
						return null;//<--we will return a null after any error as in the statement above depends on this return statement as control for the if statement
					}
					//If the digits are within the range to represent a day's duration, then we will evaluate to see if the user's input will be greater than 24 hours
					//We will have the values go to a testDuration object that will return normalized values
					Duration testDuration = new Duration (hoursInt, minutesInt, secondsInt);//<--this is our testDuration object
					int finalHours = testDuration.getHours();//<--we will then grab the normalized values using the getHours method
					int finalMinutes = testDuration.getMinutes();//<--we will then grab the normalized values using the getMinutes method
					int finalSeconds = testDuration.getSeconds();//<--we will then grab the normalized values using the getSeconds method
					/*We will then evaluate situations using these values and display the error messages
					 */
					//Any time the hours is over 24 we will display the error message
					if(finalHours > 24) {//<--if the hours evaluate to be more than 24 hours we will throw the error message
						System.out.println("*****ERROR: The duration you tried to specify exceeds an 24h period!");//<-this will print out the error message
						return null;//<--we will return a null after any error as in the statement above depends on this return statement as control for the if statement
					}
					//There is also a chance that the user could enter 24:00:01 so we will handle this case with the following
					if(finalHours == 24 && (finalMinutes > 0 || finalSeconds > 0)) {//<-this will catch the special edge case
						System.out.println("*****ERROR: The duration you tried to specify exceeds an 24h period!");//<--this wil print out the error message
						return null;//<--we will return a null after any error as in the statement above depends on this return statement as control for the if statement
					}
					//We will store the correct results into an array and return that array
					int [] hhMmSs = {hoursInt, minutesInt, secondsInt};//<--this array will contain our user's valid input
					return hhMmSs;//<--we will return this array to the caller for this method

				}
				//IF it contains non-numbers throw error we will immediately need throw an error saying the string isn't in an appropriate format
				else {
					System.out.println("*****ERROR: The string you provided does not have the appropriate format.");//<--We will print this error message
					return null;//<--we will return a null after any error as in the statement above depends on this return statement as control for the if statement
				}

			}
		//We will evaluate inputs that doesn't have a colon as the user's attempt to enter in seconds
		} else {//<--this will handle cases where the user's input doesn't contain colons
			if (hasAllNumbers(userInput)) {//We will again call on the hasAllNumbers method to check if the input contains all digits
				int userInputNumberFormat = Integer.parseInt(userInput);//Then we will need to convert the input from a string to an integer
				/*At this point we will need to throw errors if the seconds input is negative or if the seconds input is greater than 86400
				 */
				if (userInputNumberFormat < 0) {//We will throw an error if the input is negative, or less than 0
					System.out.println("*****ERROR: The number you provided for seconds is negative!");//<--this will throw the error if the input is negative
					return null;//<--we will return a null after any error as in the statement above depends on this return statement as control for the if statement
				}
				if (userInputNumberFormat > 86400) {//We will also throw an error if the seconds are more than a day's worth
					System.out.println("*****ERROR: The number of seconds you provided are more than the possible seconds contained in one day's duration (86400).");//<--this will print the error message
					return null;//<--we will return a null after any error as in the statement above depends on this return statement as control for the if statement
				}
				//Finally if the input is valid we will create an array that holds our seconds value that the user inputed
				int [] seconds = {userInputNumberFormat};//<--this array will hold the seconds in an array with one element
				return seconds;//Then we will return this array to the caller of this method
			} else {//In all other cases we will where the user's seconds input isn't a number then we will throw the error message stating so
				System.out.println("*****ERROR: The string you provided as the number of seconds is not a number.");//<--this will print out the error message stating that
				return null;//<--we will return a null after any error as in the statement above depends on this return statement as control for the if statement
			}
		}
		//In all other cases where the user's input doesn't match our checks then we will return a null. This assumes that the user's input is invalid
		return null;//<--we will return a null as it doesn't match any of if statements above
	}//end of private method extractValidPromptInput