merge with OSHK master branch