separate first passes #28283