First pass up to section 4