add user factories
add sample codes