c: phase1
c: phase1-2 WIP