pipeline implemented