merged with 2.2.3.x changes