usage of pipe