code: function (methodName, args) {
      const oThis = this
        , btAddress = oThis.contractAddress
        , scope = oThis.currContract.methods
        , transactionObject = scope[methodName].apply(scope, (args || []))
        , encodeABI = transactionObject.encodeABI()
        , transactionOutputs = contractInteractHelper.getTransactionOutputs(transactionObject)
        , resultData = {};
  
      return contractInteractHelper.call(web3Provider, btAddress, encodeABI, {}, transactionOutputs)
        .then(function (decodedResponse) {
          return decodedResponse[0];
        })
        .then(function (response) {
          resultData[methodName] = response;
          return responseHelper.successWithData(resultData);
        })
        .catch(function (err) {
          logger.error(err);
          return responseHelper.error({
            internal_error_identifier: 'l_ci_bt_callMethod_' + methodName + '_1',
            api_error_identifier: 'something_went_wrong',
            error_config: basicHelper.fetchErrorConfig()
          });
        })
        ;
  
    }
docs: Wrapper method to fetch properties
  
  @param {string} methodName - Contract method name
  @param {array} args - method arguments
  
  @return {promise<result>}
  @ignore