code: def parse_result(result, log=logger):
      """
      Parse the result printed by :func:`print_result`
  
      :param log: logger obj to trace where the function is called, default is aup.utils
      :type log: logging.Logger
      :param result: result string
      :type result: str
      :return: result for Auptimizer update
      :rtype: float
      """
      result = result.splitlines()
      for r in result:
          if "#Auptimizer:" in r:
              result = r[12:]
              try:
                  return float(result)
              except ValueError:
                  logger.debug(
                      "Cannot convert the result to float - trying to convert the result to a list"
                  )
                  return [float(f) for f in result.split(",")]
  
      log.fatal("Result `%s` is not created by aup", result)
      raise ValueError(
          "Result `%s` is not created by aup print_result" % result
      )
  
imports: from __future__ import print_function
  import sys
  import logging
  import os
  from os import path
  from six.moves import input
  from six.moves.configparser import ConfigParser
  import paramiko
  from paramiko import SFTPClient
  from .aup import BasicConfig, print_result
label_desc: Use image node_id 6 for calling a global function with example usage: parse_result(result, log) and returns: float, unknown