code: def transfer(self, asset: str, from_acct: Account, b58_to_address: str, amount: int, payer: Account,
                   gas_limit: int, gas_price: int):
          
          tx = self.new_transfer_transaction(asset, from_acct.get_address_base58(), b58_to_address, amount,
                                             payer.get_address_base58(), gas_limit, gas_price)
          tx.sign_transaction(from_acct)
          if from_acct.get_address_base58() != payer.get_address_base58():
              tx.add_sign_transaction(payer)
          return self.__sdk.get_network().send_raw_transaction(tx)
docs: This interface is used to send a transfer transaction that only for ONT or ONG.
  
          :param asset: a string which is used to indicate which asset we want to transfer.
          :param from_acct: a Account object which indicate where the asset from.
          :param b58_to_address: a base58 encode address which indicate where the asset to.
          :param amount: the amount of asset that will be transferred.
          :param payer: a Account object which indicate who will pay for the transaction.
          :param gas_limit: an int value that indicate the gas limit.
          :param gas_price: an int value that indicate the gas price.
          :return: hexadecimal transaction hash value.