lib/contract_interact/st_prime.js
async function (senderAddress, senderPassphrase, beneficiaryAddress) {
    const oThis = this
      , encodedABI = oThis.currContract.methods.claim(beneficiaryAddress).encodeABI()
      , currentGasPrice = new BigNumber(await web3Provider.eth.getGasPrice())
    ;

    const estimateGasObj = new EstimateGasKlass({
      contract_name: stPrimeContractName,
      contract_address: oThis.contractAddress,
      chain: 'utility',
      sender_address: senderAddress,
      method_name: 'claim',
      method_arguments: [beneficiaryAddress]
    });

    const estimateGasResponse = await estimateGasObj.perform()
      , gasToUse = estimateGasResponse.data.gas_to_use
    ;

    return contractInteractHelper.safeSendFromAddr(
      web3Provider,
      oThis.contractAddress,
      encodedABI,
      senderAddress,
      senderPassphrase,
      {
        gasPrice: (currentGasPrice.equals(0) ? '0x0' : UC_GAS_PRICE),
        gas: gasToUse
      }
    );
  }
async function (senderAddress, senderPassphrase, beneficiaryAddress) {
    const oThis = this
      , encodedABI = oThis.currContract.methods.claim(beneficiaryAddress).encodeABI()
      , currentGasPrice = new BigNumber(await web3Provider.eth.getGasPrice())
    ;

    const estimateGasObj = new EstimateGasKlass({
      contract_name: stPrimeContractName,
      contract_address: oThis.contractAddress,
      chain: 'utility',
      sender_address: senderAddress,
      method_name: 'claim',
      method_arguments: [beneficiaryAddress]
    });

    const estimateGasResponse = await estimateGasObj.perform()
      , gasToUse = estimateGasResponse.data.gas_to_use
    ;

    return contractInteractHelper.safeSendFromAddr(
      web3Provider,
      oThis.contractAddress,
      encodedABI,
      senderAddress,
      senderPassphrase,
      {
        gasPrice: (currentGasPrice.equals(0) ? '0x0' : UC_GAS_PRICE),
        gas: gasToUse
      }
    );
  }
async function ( senderAddress , senderPassphrase , beneficiaryAddress ) { const oThis = this , encodedABI = oThis . currContract . methods . claim ( beneficiaryAddress ) . encodeABI ( ) , currentGasPrice = new BigNumber ( await web3Provider . eth . getGasPrice ( ) ) ; const estimateGasObj = new EstimateGasKlass ( { contract_name : stPrimeContractName , contract_address : oThis . contractAddress , chain : 'utility' , sender_address : senderAddress , method_name : 'claim' , method_arguments : [ beneficiaryAddress ] } ) ; const estimateGasResponse = await estimateGasObj . perform ( ) , gasToUse = estimateGasResponse . data . gas_to_use ; return contractInteractHelper . safeSendFromAddr ( web3Provider , oThis . contractAddress , encodedABI , senderAddress , senderPassphrase , { gasPrice : ( currentGasPrice . equals ( 0 ) ? '0x0' : UC_GAS_PRICE ) , gas : gasToUse } ) ; }
Claim ST' for beneficiary after they are process-minted

@param {string} senderAddress - address of sender
@param {string} senderPassphrase - passphrase of senderAddress
@param {string} beneficiaryAddress - address where funds would be credited

@return {promise<result>}
Claim ST for beneficiary after they are process - minted