docs: async function () {
      const oThis = this
      ;
  
      try {
        //validations
        if (!basicHelper.isBTNameValid(oThis.name)) {
          let errObj = responseHelper.error({
            internal_error_identifier: 's_ob_pbt_1',
            api_error_identifier: 'invalid_branded_token_name',
            error_config: basicHelper.fetchErrorConfig()
          });
  
          return Promise.resolve(errObj);
        }
        if (!basicHelper.isBTSymbolValid(oThis.symbol)) {
          let errObj = responseHelper.error({
            internal_error_identifier: 's_ob_pbt_2',
            api_error_identifier: 'invalid_branded_token_symbol',
            error_config: basicHelper.fetchErrorConfig()
          });
  
          return Promise.resolve(errObj);
        }
        if (!basicHelper.isBTConversionFactorValid(oThis.conversionFactor)) {
          let errObj = responseHelper.error({
            internal_error_identifier: 's_ob_pbt_3',
            api_error_identifier: 'invalid_conversion_factor',
            error_config: basicHelper.fetchErrorConfig()
          });
  
          return Promise.resolve(errObj);
        }
  
        const conversionRateConversionResponse = basicHelper.convertConversionFactorToConversionRate(oThis.conversionFactor);
  
        if (conversionRateConversionResponse.isSuccess()) {
  
          oThis.conversionRate = conversionRateConversionResponse.data.conversionRate;
          oThis.conversionRateDecimals = conversionRateConversionResponse.data.conversionRateDecimals;
  
          const proposalRsp = await openSTUtility.proposeBrandedToken(stakerAddr, stakerPassphrase, oThis.symbol,
            oThis.name, oThis.conversionRate, oThis.conversionRateDecimals);
  
          if (proposalRsp.isSuccess()) {
            proposalRsp.data.transaction_uuid = uuid.v4();
          }
  
          return Promise.resolve(proposalRsp);
  
        } else {
          return Promise.resolve(conversionRateConversionResponse);
        }
  
      } catch (err) {
        let errObj = responseHelper.error({
          internal_error_identifier: 's_ob_pbt_4',
          api_error_identifier: 'something_went_wrong',
          error_config: basicHelper.fetchErrorConfig()
        });
  
        return Promise.resolve(errObj);
      }
    }