merge and some changes
merge