Includes changes previously reviewed in #15607, #15877, and #15955. Change-Id: Ie2ff62e415f2099832ebfe05961a879b7b188fc3