@Override
	public void setComparators(TableRowSorter<PersonTableModel<Contestant>> sort) {
		Comparator<String> strCompNoCase = new Comparator<String>() {
			@Override
			public int compare(String o1, String o2) {
				return o1.compareToIgnoreCase(o2);
			}
		};
		
		Comparator<Object> activeComp = new Comparator<Object>() {

			@Override
			public int compare(Object o1, Object o2) {
				if (o1 instanceof String && o2 instanceof String) {
					return 0;
				}
				
				if (o1 instanceof Integer && o2 instanceof String) {
					return -1;
				}
				
				if (o1 instanceof String && o2 instanceof Integer) {
					return +1;
				}
				
				// both are ints:
				return (Integer)o1 - (Integer)o2;
			}
			
		};
		
		sort.setComparator(INDEX_ID, strCompNoCase);
		sort.setComparator(INDEX_FIRSTNAME, strCompNoCase);
		sort.setComparator(INDEX_LASTNAME, strCompNoCase);
		sort.setComparator(INDEX_DATECAST, activeComp);
		sort.setComparator(INDEX_TRIBE, strCompNoCase);	
	}