almost merged except few lines