could you add some comments on what's going on below - seems like you have two cases depending on whether or not estimator supports predict_proba.