def METHOD_NAME(framework, image_dl_estimator):
    def _get_adv_trainer():
        if framework == "keras":
            trainer = None
        if framework in ["tensorflow", "tensorflow2v1"]:
            trainer = None
        if framework == "pytorch":
            classifier, _ = image_dl_estimator(from_logits=True)
            attack = ProjectedGradientDescent(
                classifier,
                norm=np.inf,
                eps=0.3,
                eps_step=0.03,
                max_iter=20,
                targeted=False,
                num_random_init=1,
                batch_size=128,
                verbose=False,
            )
            trainer = AdversarialTrainerTRADESPyTorch(classifier, attack, beta=6.0)
        if framework == "scikitlearn":
            trainer = None
        return trainer
    return _get_adv_trainer