start implementing pipeling