func: function handleIncomingPayment(address clientAddress, uint256 amount) private {
          ClientDeposit storage clientDeposit = depositsMap[clientAddress];
  
          require(clientDeposit.exists);
          require(clientDeposit.nextPaymentTotalAmount == amount);
  
          
          
          if (mp.isUserBlockedByContract(address(this))) {
              mp.payPlatformIncomingTransactionCommission.value(amount)(clientAddress);
              emit Blocked();
          } else {
              owner.transfer(clientDeposit.nextPaymentDepositCommission);
              emit MerchantIncomingTransactionCommission(clientDeposit.nextPaymentDepositCommission, clientAddress);
              mp.payPlatformIncomingTransactionCommission.value(clientDeposit.nextPaymentPlatformCommission)(clientAddress);
              emit PlatformIncomingTransactionCommission(clientDeposit.nextPaymentPlatformCommission, clientAddress);
          }
          
  
          
          clientDeposit.balance += amount.sub(clientDeposit.nextPaymentPlatformCommission).sub(clientDeposit.nextPaymentDepositCommission);
          emit DepositCommission(clientDeposit.nextPaymentDepositCommission, clientAddress);
      }