first GUI pass