Refactored to recursive function.  Not any quicker though.  Going to need to page on the presentation layer.