Merge from jd-dev