code: def _create_bound(model, reaction, bound_type, f_replace, units=None,
                    flux_udef=None):
      
      value = getattr(reaction, bound_type)
      if value == config.lower_bound:
          return LOWER_BOUND_ID
      elif value == 0:
          return ZERO_BOUND_ID
      elif value == config.upper_bound:
          return UPPER_BOUND_ID
      elif value == -float("Inf"):
          return BOUND_MINUS_INF
      elif value == float("Inf"):
          return BOUND_PLUS_INF
      else:
          # new parameter
          rid = reaction.id
          if f_replace and F_REACTION_REV in f_replace:
              rid = f_replace[F_REACTION_REV](rid)
          pid = rid + "_" + bound_type
          _create_parameter(model, pid=pid, value=value, sbo=SBO_FLUX_BOUND,
                            units=units, flux_udef=flux_udef)
          return pid
docs: Creates bound in model for given reaction.
  
      Adds the parameters for the bounds to the SBML model.
  
      Parameters
      ----------
      model : libsbml.Model
          SBML model instance
      reaction : cobra.core.Reaction
          Cobra reaction instance from which the bounds are read.
      bound_type : {LOWER_BOUND, UPPER_BOUND}
          Type of bound
      f_replace : dict of id replacement functions
      units : flux units
  
      Returns
      -------
      Id of bound parameter.