better io piping