Added kernel code