this commit from the gihanDev branch