Synced with the source at ccc1fbed4e39230ac6eb751f46362928b88a3335.