pipe functionality changes