code: def _parse_sparkml(spark, scope, model, global_inputs, output_dict):
      '''
      This is a delegate function. It doesn't nothing but invoke the correct parsing function according to the input
      model's type.
      :param scope: Scope object
      :param model: A spark-ml object (e.g., OneHotEncoder and LogisticRegression)
      :param inputs: A list of variables
      :return: The output variables produced by the input model
      '''
      if isinstance(model, PipelineModel):
          return _parse_sparkml_pipeline(spark, scope, model, global_inputs, output_dict)
      else:
          return _parse_sparkml_simple_model(spark, scope, model, global_inputs, output_dictf _parse_sparkml(spark, scope, model, global_inputs, output_dict):
      '''
      This is a delegate function. It doesn't nothing but invoke the correct parsing function according to the input
      model's type.
      :param scope: Scope object
      :param model: A spark-ml object (e.g., OneHotEncoder and LogisticRegression)
      :param inputs: A list of variables
      :return: The output variables produced by the input model
      '''
      if isinstance(model, PipelineModel):
          return _parse_sparkml_pipeline(spark, scope, model, global_inputs, output_dict)
      else:
          return _parse_sparkml_simple_model(spark, scope, model, global_inputs, output_dict)
docs: This is a delegate function. It doesn't nothing but invoke the correct parsing function according to the input
      model's type.
      :param scope: Scope object
      :param model: A spark-ml object (e.g., OneHotEncoder and LogisticRegression)
      :param inputs: A list of variables
      :return: The output variables produced by the input model