merging mainline changes : 532124fea80614e6841a504347a3fc2751beadd8