add pipe practice