public static int lookBack(FlaggableCharacterString target, int start, int count, Condition condition) {
	int index = start;
	
	while(0 <= index && index < target.size() && !condition.applies(target.get(index))) {
	    index--;
	}
	
	while(count > 0 && index > 0) {
	    index--;
	    if(index < 0){ 
		break;
	    } else if(condition.applies(target.get(index))) {
		count--;
	    }
	}
	
	return index;
    }