# 7 april 2019

BEGIN {
	RS = ""
	FS = "\n +- "
}

/^- job:/ {
	for (i = 1; i <= NF; i++) {
		if (!(i in nextindex)) {
			# fast path for first occurrence
			lines[i, 0] = $i
			nextindex[i] = 1
			if (maxIndex < i)
				maxIndex = i
			continue
		}
		found = 0
		for (j = 0; j < nextindex[i]; j++)
			if (lines[i, j] == $i) {
				found = 1
				break
			}
		if (!found) {
			lines[i, nextindex[i]] = $i
			nextindex[i]++
		}
	}
}

END {
	for (i = 1; i <= maxIndex; i++) {
		if (nextindex[i] == 1) {
			# only one entry here, just print it
			print "- " lines[i, 0]
			continue
		}
		print "{"
		for (j = 0; j < nextindex[i]; j++)
			print "- " lines[i, j]
		print "}"
	}
}