phase 1 implementation