boolean key = iterable.endsWith("keySet()");
boolean val = iterable.endsWith("values()");
if (key || val) {
r = new Regex("([a-zA-Z0-9\\[\\]_]+(?@<>)?)\\s*\\,\\s*([a-zA-Z0-9\\[\\]_]+(?@<>)?)");
if (r.search(this.type)) {
if (key) this.type = r.stringMatched(1);
else this.type = r.stringMatched(2);
} else {
throw new ParseException(ctx.getEngine(), ctx.getTemplateClass(), line, "Invalid for loop iterator type declaration: %s", itrType);
}
}