尽量使用管道机制，减少中间变量数，可能减少内存使用。Minor bug fixed.