Consider the main procedure for doing the binary addition:(define binary-add (lambda(L1 L2)(let ((len1 (length L1)) (len2 (length L2)))(if (> len1 len2)(binaryadd L2 L1)(if (< len1 len2)(binary-add (append '(0) L1) L2)(recursive-add (append '(0) L1) (append '(0) L2) 0))) ) ))Why is this procedure required before the main recursive one (recursive-add)?