2 pass assimilation