some changes, add adduser