DDIM v prediction problem

Hi community,
I have checked the DDim scheduler in this code ddim_schedular and there is something i donot understand in the code that I hoped someone can explain to me why it is done in this way. In line 386, why is he computing the noise in the case of V_prediciton in this way. The formula used is very different from the one in the paper. Can you please explain to me more why it is done like this? Is there an error or something?

       elif self.config.prediction_type == "v_prediction":
            pred_original_sample = (alpha_prod_t**0.5) * sample - (beta_prod_t**0.5) * model_output
            pred_epsilon = (alpha_prod_t**0.5) * model_output + (beta_prod_t**0.5) * sample

Velocity is defined as v≡√(α_t ) ϵ-√(1-α_t ) x_0. In this formula, replace x_0 with its estimation derived from eq. (12) in [2010.02502] Denoising Diffusion Implicit Models and solve for ϵ.