SYNC-1249

Might not merge cleanly with SYNC-1179.

I'll rebase after it's pulled in.