add template match kernel code