code: def find_blocked_biomass_precursors(reaction, model):
      
      LOGGER.debug("Finding blocked biomass precursors")
      precursors = find_biomass_precursors(model, reaction)
      blocked_precursors = list()
      _, ub = helpers.find_bounds(model)
      for precursor in precursors:
          with model:
              dm_rxn = model.add_boundary(
                  precursor,
                  type="safe-demand",
                  reaction_id="safe_demand",
                  lb=0,
                  ub=ub
              )
              flux = helpers.run_fba(model, dm_rxn.id, direction='max')
              if np.isnan(flux) or abs(flux) < 1E-08:
                  blocked_precursors.append(precursor)
      return blocked_precursors
docs: Return a list of all biomass precursors that cannot be produced.
  
      Parameters
      ----------
      reaction : cobra.core.reaction.Reaction
          The biomass reaction of the model under investigation.
      model : cobra.Model
          The metabolic model under investigation.
  
      Returns
      -------
      list
          Metabolite objects that are reactants of the biomass reaction excluding
          ATP and H2O that cannot be produced by flux balance analysis.