added flow kernels