logic separation phase1