def decide_model_actions(spec, model):
    """
    either set the param hints or the bounds depending on the spec dict
    :param spec: dictionary of the params to be set on the model
    :param model: lmfit model object
    :return: the updated model object
    """
    for param_key, param_value in spec['params'].items():
        if param_value:  # then set this value
            model.set_param_hint(param_key, value=param_value)
    for bound_key, bound_value in spec['bounds'].items():
        if bound_value[0]:  # then set lower bound
            model.set_param_hint(bound_key, min=bound_value[0])
        if bound_value[1]:  # then set upper bound
            model.set_param_hint(bound_key, max=bound_value[1])
    return model