Got recursive to replace for in func proc anlz