Excellent summary. Just one comment on when to use %unquote based on my experience teaching the SAS Macro Language course back in the 80s: If it looks right, but doesn't work, wrap a %unquote around it and it probably will work.