per Scott's suggestion factored out a bunch of the list traversals into a macro
per Scott's suggestion factored out a bunch of the list traversals into a macro


angavrilov/olmar,angavrilov/olmar,angavrilov/olmar,angavrilov/olmar