message: eth - send - check - we are send to contract? select gasLimit
diff: @@ -372,6 +372,7 @@ const sendWithAdminFee = async ({ from, to, amount, gasPrice, gasLimit, speed })
  const adminFeeMin = new BigNumber(adminFeeMinValue)
  + const isSendToContract = await addressIsContract(to)
  // fee - from amount - percent
  let feeFromAmount = new BigNumber(adminFee).dividedBy(100).multipliedBy(amount)
  if (adminFeeMin.isGreaterThan(feeFromAmount)) feeFromAmount = adminFeeMin
  @@ -380,7 +381,13 @@ const sendWithAdminFee = async ({ from, to, amount, gasPrice, gasLimit, speed })
  feeFromAmount = feeFromAmount.toNumber() // Admin fee
  gasPrice = gasPrice || await helpers.eth.estimateGasPrice({ speed })
  - gasLimit = gasLimit || constants.defaultCurrencyParameters.eth.limit.send
  +
  + const mainGasLimit = gasLimit || (
  + isSendToContract
  + ? constants.defaultCurrencyParameters.eth.limit.contractInteract
  + : constants.defaultCurrencyParameters.eth.limit.send
  + )
  + const serviceFeeGasLimit = gasLimit || constants.defaultCurrencyParameters.eth.limit.send
  const walletData = actions.core.getWallet({
  address: from,
  @@ -394,7 +401,7 @@ const sendWithAdminFee = async ({ from, to, amount, gasPrice, gasLimit, speed })
  from,
  to: String(to).trim(),
  gasPrice,
  - gas: gasLimit,
  + gas: mainGasLimit,
  value: web3utils.toWei(String(amount)),
  }
  @@ -427,7 +434,7 @@ const sendWithAdminFee = async ({ from, to, amount, gasPrice, gasLimit, speed })
  const adminFeeParams = {
  to: String(adminFeeAddress).trim(),
  gasPrice,
  - gas: gasLimit,
  + gas: serviceFeeGasLimit,
  value: web3utils.toWei(String(feeFromAmount)),
  }
  @@ -454,8 +461,14 @@ const sendDefault = ({ from, to, amount, gasPrice = null, gasLimit = null, speed
  return new Promise(async (resolve, reject) => {
  const web3js = getWeb3()
  + const isSendToContract = await addressIsContract(to)
  +
  gasPrice = gasPrice || await helpers.eth.estimateGasPrice({ speed })
  - gasLimit = gasLimit || constants.defaultCurrencyParameters.eth.limit.send
  + gasLimit = gasLimit || (
  + isSendToContract
  + ? constants.defaultCurrencyParameters.eth.limit.contractInteract
  + : constants.defaultCurrencyParameters.eth.limit.send
  + )
  const params = {
  from,
  