finished pass3