public static String getTemplateBaseName(String name) {
		int startOfTemplate =
			name.indexOf('<', name.startsWith(OPERATOR_LSHIFT_STR) ? OPERATOR_LSHIFT_STR.length()
					: name.startsWith(OPERATOR_LT_STR) ? OPERATOR_LT_STR.length() : 0);
		return (startOfTemplate > 0 && name.indexOf('>') > 0)
				? name.substring(0, startOfTemplate).trim()
				: null;
	}
Determines if a name is a C++ style templated name.  If so, returns just
the base portion of the name.
The name must have a start and end angle bracket: '&lt;' and '&gt;'.
<p>
operator&lt;() and operator&lt;&lt;() are handled so their angle brackets
don't trigger the template start/end angle bracket incorrectly.

@param name symbol name with C++ template portions
@return base portion of the symbol name without template portion
Ghidra/Features/Base/src/main/java/ghidra/app/util/bin/format/dwarf/DWARFUtil.java