updated signup logic