<% # Creates a flattened map of repeated elements components = [x for (k, v) in contents.items() for x in [k]*v] %> outputs/${name}.pdf: ${' '.join(components)}; pdfunite $+ $@ % for (card, count) in contents.items(): export: outputs/generated/${name}/${card}[${count}].png outputs/generated/${name}/${card}[${count}].png: generated/${card}.png; cp $^ $@ % endfor decks: outputs/${name}.pdf