<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def find_metabolites_not_produced_with_open_bounds(model):
 """ Return metabolites that cannot be produced with open exchange reactions. A perfect model should be able to produce each and every metabolite when all medium components are available. Parameters model : cobra.Model The metabolic model under investigation. Returns ------- list Those metabolites that could not be produced. """

    mets_not_produced = list()
    helpers.open_exchanges(model)
    for met in model.metabolites:
        with model:
            exch = model.add_boundary(
                met, type="irrex", reaction_id="IRREX", lb=0, ub=1000)
            solution = helpers.run_fba(model, exch.id)
            if np.isnan(solution) or solution < TOLERANCE_THRESHOLD:
                mets_not_produced.append(met)
    return mets_not_produced