Synchronized with the source at 772dfaadb24f803897c606f9b5ecd460cf926bee.