New exercises #30, #31, #32(unfinished)