public void exitQueuedState(int exitTime) throws VehicleException {
	
		int timeInQueue = exitTime - this.getArrivalTime();
		int lastState = vehicleState.size() -1;
		
		if(vehicleState.contains("P") || vehicleState.contains("Q") == false)
			throw new VehicleException ("Vehicle  cannot exit Queued state, as it is" +
					" currently either parked or not in the que to enter the CarPark.\n");
		else if (exitTime < arrivalTime)
			throw new VehicleException ("Exit time cannot be greater than arrival time\n");
		else if (timeInQueue >= Constants.MAXIMUM_QUEUE_TIME){
			this.departureTime = exitTime;
			this.vehicleState.add("A");
		}
		else if (timeInQueue < Constants.MAXIMUM_QUEUE_TIME && 
				vehicleState.get(lastState).equals("Q"))				
			this.vehicleState.add("N");
			
		
	}