public virtual void TearDown()
        {
            Debug.Log("Tearing Down....");
            _tc.bcWrapper.Client.FlushCachedMessages(false);

            _tc.bcWrapper.Client.ResetCommunication();
            _tc.bcWrapper.Client.DeregisterEventCallback();
            _tc.bcWrapper.Client.DeregisterRewardCallback();
            _tc.bcWrapper.Client.DeregisterFileUploadCallback();
            _tc.bcWrapper.Client.DeregisterFileUploadCallbacks();
            _tc.bcWrapper.Client.DeregisterGlobalErrorCallback();
            _tc.bcWrapper.Client.DeregisterNetworkErrorCallback();
            _tc.bcWrapper.Client.ShutDown();
            _tc.CleanUp();

            _successCount = 0;
            Destroy(_tc.bcWrapper);
            var listOfContainers = FindObjectsOfType <Transform>();

            foreach (Transform container in listOfContainers)
            {
                if (container.name.Contains("TestingContainer"))
                {
                    Destroy(container.gameObject);
                }
            }

            _tc = null;
        }