works all flow