merge latest changes from tmk