It runs again. Many steps aren't skipped because I haven't yet figured
out how origins should be checked while unexpanding. Is unexpansion
top-down or bottom-up? Is it possible to unexpand macros individually?
Also, constants still aren't tagged.