working kernel, progress check 3.5