def METHOD_NAME(self, validated_data):
    """
    Extract the password from validated data and set it separately to ensure proper hash generation.
    """
    password = validated_data.pop('password')
    user = super().METHOD_NAME(validated_data)
    user.set_password(password)
    user.save()
    return user