added signup logic