added some implementation for phase 3