Pass 3 UI loop