synced with private repo up to 3.0.80