Haibing working

taking in changes from the main branch.