Clean rebase of sheldon-im's #5404 (rebase-first). Co-authored-by: sheldon-im <sheldon-im@users.noreply.github.com>