public void Apply() { if (!CheckBalance(GetAmount(), _fee)) { return; } lock (_mutex) ApplyImpl(); if (_fee != null) { _account.Balance = _account.Balance - _converter.Convert(_fee, _account.CurrencyInfo); } _account.AddHistory(this); }