private static int checkClassTypeSignature(final String signature, int pos) {
		// ClassTypeSignature:
		// L Identifier ( / Identifier )* TypeArguments? ( . Identifier
		// TypeArguments? )* ;

		pos = checkChar('L', signature, pos);
		pos = checkIdentifier(signature, pos);
		while (getChar(signature, pos) == '/') {
			pos = checkIdentifier(signature, pos + 1);
		}
		if (getChar(signature, pos) == '<') {
			pos = checkTypeArguments(signature, pos);
		}
		while (getChar(signature, pos) == '.') {
			pos = checkIdentifier(signature, pos + 1);
			if (getChar(signature, pos) == '<') {
				pos = checkTypeArguments(signature, pos);
			}
		}
		return checkChar(';', signature, pos);
	}