add user sign function