using pipe
using duplicated pipe