@Override
	public AssemblyResolution backfill(RecursiveDescentSolver solver, Map<String, Long> vals) {
		if (!hasBackfills()) {
			return this;
		}

		AssemblyResolvedPatterns res = this;
		loop: while (true) {
			for (AssemblyResolvedBackfill bf : res.getBackfills()) {
				AssemblyResolution ar = bf.solve(solver, vals, this);
				if (ar.isError()) {
					continue;
				}
				AssemblyResolvedPatterns rc = (AssemblyResolvedPatterns) ar;
				AssemblyResolvedPatterns check = res.combineLessBackfill(rc, bf);
				if (check == null) {
					return factory.error("Conflict: Backfill " + bf.getDescription(), res);
				}
				res = check;
				continue loop;
			}
			return res;
		}
	}
Duplicate this resolution, with additional description text appended

@param append the text to append
@return the duplicate NOTE: An additional separator {@code ": "} is inserted
Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/app/plugin/assembler/sleigh/sem/DefaultAssemblyResolvedPatterns.java