some tuning on converge condition and roles result