recursive parsing of lists

parsing of lists is done by two functions, first one that indetify whole
list and second one that parse list items