static Step parse(String stepSpec, TimeRadix radix) {
		if ("".equals(stepSpec)) {
			return nop();
		}
		String[] parts = stepSpec.split("-");
		if (parts.length == 1) {
			return parse(-1, parts[0].trim(), radix);
		}
		if (parts.length == 2) {
			String tPart = parts[0].trim();
			if (tPart.startsWith("t")) {
				return parse(Long.parseLong(tPart.substring(1)), parts[1].trim(), radix);
			}
		}
		throw new IllegalArgumentException("Cannot parse step: '" + stepSpec + "'");
	}
Parse a step, possibly including a thread prefix, e.g., {@code "t1-..."}

<p>
If the thread prefix is given, the step applies to the given thread. Otherwise, the step
applies to the last thread or the event thread.

@param stepSpec the string specification
@param radix the radix
@return the parsed step
@throws IllegalArgumentException if the specification is of the wrong form
Ghidra/Debug/Framework-TraceModeling/src/main/java/ghidra/trace/model/time/schedule/Step.java