finalised Phong