public void Withdraw()
    {
        EventsController behaviourScript = new EventsController();

        behaviourScript.StepAnimation("circleEmpty3");
        WithdrawManager wm = new WithdrawManager();

        SceneManager.LoadScene("Loader", LoadSceneMode.Additive);
        string DocId = PlayerPrefs.GetString("DocId");

        UnityThreadHelper.CreateThread(() => {
            string withdrawResult = null;
            withdrawResult        = wm.payout(token, WithdrawPresenter.WithdrawMoney);
            Debug.Log("withdrawResult: " + withdrawResult);
            InfoPersonnelWithdraw.currentIdProof = null;
            InfoPersonnelWithdraw.currentIBAN    = null;
            if (!string.IsNullOrEmpty(withdrawResult))
            {
                if (withdrawResult == "ProhibitedLocation")
                {
                    UnityThreadHelper.Dispatcher.Dispatch(() => {
                        SceneManager.UnloadSceneAsync("Loader");
                        GameObject.Find("CalqueWidhraw").transform.localScale = Vector3.one;
                        var animator = GameObject.Find("popupProhibitedLocation").GetComponent <Animator> ();
                        animator.SetBool("Show Error", true);
                    });
                }
                else if (withdrawResult == WithdrawManager.WITHDRAW_ERROR_AMOUNT_INSUFFICIENT)
                {
                    UnityThreadHelper.Dispatcher.Dispatch(() => {
                        behaviourScript.withdrawFailed("Withdrawal", null, WithdrawManager.WITHDRAW_INSUFFICIENT_AMOUNT_FAILED_MESSAGE);
                    });
                }
                else if (withdrawResult == WithdrawManager.WITHDRAW_ERROR_BALANCE_INSUFFICIENT)
                {
                    UnityThreadHelper.Dispatcher.Dispatch(() => {
                        behaviourScript.withdrawFailed("Withdrawal", null, WithdrawManager.WITHDRAW_INSUFFICIENT_FUNDS_FAILED_MESSAGE);
                    });
                }
                else if (withdrawResult == "error")
                {
                    UnityThreadHelper.Dispatcher.Dispatch(() => {
                        behaviourScript.withdrawFailed(null, null, WithdrawManager.WITHDRAW_FAILED_MESSAGE);
                    });
                }
                else if (withdrawResult == WithdrawManager.WITHDRAW_SUCCEEDED_STATUS)
                {
                    UnityThreadHelper.Dispatcher.Dispatch(() => {
                        SceneManager.UnloadSceneAsync("Loader");
                        SceneManager.UnloadSceneAsync("WithdrawalInfo");
                        UserManager.CurrentMoney = (float.Parse(UserManager.CurrentMoney) - WithdrawPresenter.WithdrawMoney).ToString("N2").Replace(",", ".");
                        behaviourScript.backToWinMoney();
                        behaviourScript.ShowPopup("popupCongratWithdraw");
                    });
                }
            }
            else
            {
                UnityThreadHelper.Dispatcher.Dispatch(() => {
                    behaviourScript.withdrawFailed(null, null, WithdrawManager.WITHDRAW_FAILED_MESSAGE);
                });
            }
        });
    }