merged the latest changes from the master