contribute by wlj