cast works without async !