merging in changes from trunk 606e65e608f52f1089a33763c7766b11c1ec12b1