@Override
	protected IToken doEvaluate(ICharacterScanner scanner, boolean resume) {

		if (resume) {
			return fToken;

		} else {

			int c= scanner.read();
			if ((char)c == fStartSequence[0]) {
				scanner.unread();
				int check = scanner.getColumn();
				if ( check != 0 ){
					scanner.unread();
					c = scanner.read();
					if ( (char)c == '.' || Character.isAlphabetic((char)c) || Character.isDigit((char)c) ){
						return Token.UNDEFINED;
					}
					scanner.read();
				}
				else{
					c = scanner.read();
				}
				if (sequenceDetected(scanner, fStartSequence, false)) {
					if ( lastReadCount == fStartSequence.length ){
						return fToken;
					}
				}
			}
		}

		scanner.unread();
		return Token.UNDEFINED;
	}