// Path: src/main/java/com/Ostermiller/util/DateTimeToken.java
// public enum DateTimeTokenType {
// 	ERROR,
// 	NUMBER,
// 	WORD,
// 	PUNCTUATION,
// 	SPACE,
// 	APOS_YEAR,
// 	ORDINAL_DAY,
// }


import java.util.TimeZone;
import com.Ostermiller.util.DateTimeToken.DateTimeTokenType;
import java.io.*;
import java.util.*;
			if (!i.hasNext()){
				switch(state){
					case TIME_STATE_HOUR_SEP:
					case TIME_STATE_MINUTE_SEP: {
						return false;
					}
					case TIME_STATE_MINUTE:
					case TIME_STATE_SECOND: {
						end = tokens.size();
						state = TIME_STATE_DONE;
					}
					default: break;
				}
			}
		}
		if (state == TIME_STATE_DONE){
			int position = 0;
			for(Iterator<DateTimeToken> i = tokens.iterator(); i.hasNext(); position++){
				i.next();
				if (position >= start && position < end){
					i.remove();
				}
			}
		}
		return true;
	}

	private boolean setPreferredDateNumberFields(WorkingDateTime work, LinkedList<DateTimeToken> tokens){
		for(Iterator<DateTimeToken> i = tokens.iterator(); i.hasNext();){
			DateTimeToken token = i.next();
// Path: src/main/java/com/Ostermiller/util/DateTimeToken.java
// public enum DateTimeTokenType {
// 	ERROR,
// 	NUMBER,
// 	WORD,
// 	PUNCTUATION,
// 	SPACE,
// 	APOS_YEAR,
// 	ORDINAL_DAY,
// }


// Path: src/main/java/com/Ostermiller/util/DateTimeParse.java
import java.util.TimeZone;
import com.Ostermiller.util.DateTimeToken.DateTimeTokenType;
import java.io.*;
import java.util.*;

			if (!i.hasNext()){
				switch(state){
					case TIME_STATE_HOUR_SEP:
					case TIME_STATE_MINUTE_SEP: {
						return false;
					}
					case TIME_STATE_MINUTE:
					case TIME_STATE_SECOND: {
						end = tokens.size();
						state = TIME_STATE_DONE;
					}
					default: break;
				}
			}
		}
		if (state == TIME_STATE_DONE){
			int position = 0;
			for(Iterator<DateTimeToken> i = tokens.iterator(); i.hasNext(); position++){
				i.next();
				if (position >= start && position < end){
					i.remove();
				}
			}
		}
		return true;
	}

	private boolean setPreferredDateNumberFields(WorkingDateTime work, LinkedList<DateTimeToken> tokens){
		for(Iterator<DateTimeToken> i = tokens.iterator(); i.hasNext();){
			DateTimeToken token = i.next();
			if (token.getType() == DateTimeTokenType.NUMBER){