added KnR