section 11, recursive functions