( begin  ( define  ( ZEDappend ZEDlist1 ZEDlist2)  ( cond  ( #t ( append  ZEDlist1 ZEDlist2) )  ( else  err) ) )  ( define  ( ZEDcar ZEDpair)  ( cond  ( #t ( car  ZEDpair) )  ( else  err) ) )  ( define  ( ZEDcdr ZEDpair)  ( cond  ( #t ( cdr  ZEDpair) )  ( else  err) ) )  ( define  ( ZEDcons ZEDone ZEDtwo)  ( cond  ( #t ( cons  ZEDone ZEDtwo) )  ( else  err) ) )  ( define  ( ZEDmap ZEDfunction ZEDlist)  ( cond  ( #t ( map  ZEDfunction ZEDlist) )  ( else  err) ) )  ( define  ( ZEDmerge ZEDcomparator ZEDlist1 ZEDlist2)  ( cond  ( #t ( ZEDmerge1 ZEDcomparator ZEDlist1 ZEDlist2 ( quote  ( ) ) ) )  ( else  err) ) )  ( define  ( ZEDmerge1 ZEDcomparator ZEDlist1 ZEDlist2 ZEDcollect)  ( cond  ( ( ZEDnull? ZEDlist2)  ( ZEDappend ( ZEDreverse ZEDcollect)  ZEDlist1) )  ( ( ZEDnull? ZEDlist1)  ( ZEDappend ( ZEDreverse ZEDcollect)  ZEDlist2) )  ( ( ZEDcomparator ( ZEDcar ZEDlist2)  ( ZEDcar ZEDlist1) )  ( ZEDmerge1 ZEDcomparator ZEDlist1 ( ZEDcdr ZEDlist2)  ( ZEDcons ( ZEDcar ZEDlist2)  ZEDcollect) ) )  ( #t ( ZEDmerge1 ZEDcomparator ( ZEDcdr ZEDlist1)  ZEDlist2 ( ZEDcons ( ZEDcar ZEDlist1)  ZEDcollect) ) )  ( else  err) ) )  ( define  ( ZEDnull? ZEDvalue)  ( cond  ( #t ( null?  ZEDvalue) )  ( else  err) ) )  ( define  ( ZEDreverse ZEDlist)  ( cond  ( #t ( reverse  ZEDlist) )  ( else  err) ) )  ( define  ( ZEDsort ZEDcomparator ZEDjumble)  ( cond  ( #t ( ZEDcar ( ZEDsort11 ZEDcomparator ( ZEDsort1 ZEDjumble) ) ) )  ( else  err) ) )  ( define  ( ZEDsort1 ZEDjumble)  ( cond  ( #t ( ZEDmap list  ZEDjumble) )  ( else  err) ) )  ( define  ( ZEDsort11 ZEDcomparator ZEDjumble)  ( cond  ( ( ZEDnull? ZEDjumble)  ( quote  ( ) ) )  ( ( ZEDnull? ( ZEDcdr ZEDjumble) )  ZEDjumble)  ( #t ( ZEDsort11 ZEDcomparator ( ZEDcons ( ZEDmerge ZEDcomparator ( ZEDcar ZEDjumble)  ( cadr  ZEDjumble) )  ( ZEDsort11 ZEDcomparator ( cddr ZEDjumble) ) ) ) )  ( else  err) ) ) ) 
( display  ( ZEDsort >  '( 1  3  5  6  9  0  8  7  4  2 ) ) ) 
KGJlZ2luIChkZWZpbmUgKFpFRGFwcGVuZCBaRURsaXN0MSBaRURsaXN0MikgKGNvbmQgKCN0IChhcHBlbmQgWkVEbGlzdDEgWkVEbGlzdDIpKSAoZWxzZSBlcnIpKSkgKGRlZmluZSAoWkVEY2FyIFpFRHBhaXIpIChjb25kICgjdCAoY2FyIFpFRHBhaXIpKSAoZWxzZSBlcnIpKSkgKGRlZmluZSAoWkVEY2RyIFpFRHBhaXIpIChjb25kICgjdCAoY2RyIFpFRHBhaXIpKSAoZWxzZSBlcnIpKSkgKGRlZmluZSAoWkVEY29ucyBaRURvbmUgWkVEdHdvKSAoY29uZCAoI3QgKGNvbnMgWkVEb25lIFpFRHR3bykpIChlbHNlIGVycikpKSAoZGVmaW5lIChaRURtYXAgWkVEZnVuY3Rpb24gWkVEbGlzdCkgKGNvbmQgKCN0IChtYXAgWkVEZnVuY3Rpb24gWkVEbGlzdCkpIChlbHNlIGVycikpKSAoZGVmaW5lIChaRURtZXJnZSBaRURjb21wYXJhdG9yIFpFRGxpc3QxIFpFRGxpc3QyKSAoY29uZCAoI3QgKFpFRG1lcmdlMSBaRURjb21wYXJhdG9yIFpFRGxpc3QxIFpFRGxpc3QyIChxdW90ZSAoKSkpKSAoZWxzZSBlcnIpKSkgKGRlZmluZSAoWkVEbWVyZ2UxIFpFRGNvbXBhcmF0b3IgWkVEbGlzdDEgWkVEbGlzdDIgWkVEY29sbGVjdCkgKGNvbmQgKChaRURudWxsPyBaRURsaXN0MikgKFpFRGFwcGVuZCAoWkVEcmV2ZXJzZSBaRURjb2xsZWN0KSBaRURsaXN0MSkpICgoWkVEbnVsbD8gWkVEbGlzdDEpIChaRURhcHBlbmQgKFpFRHJldmVyc2UgWkVEY29sbGVjdCkgWkVEbGlzdDIpKSAoKFpFRGNvbXBhcmF0b3IgKFpFRGNhciBaRURsaXN0MikgKFpFRGNhciBaRURsaXN0MSkpIChaRURtZXJnZTEgWkVEY29tcGFyYXRvciBaRURsaXN0MSAoWkVEY2RyIFpFRGxpc3QyKSAoWkVEY29ucyAoWkVEY2FyIFpFRGxpc3QyKSBaRURjb2xsZWN0KSkpICgjdCAoWkVEbWVyZ2UxIFpFRGNvbXBhcmF0b3IgKFpFRGNkciBaRURsaXN0MSkgWkVEbGlzdDIgKFpFRGNvbnMgKFpFRGNhciBaRURsaXN0MSkgWkVEY29sbGVjdCkpKSAoZWxzZSBlcnIpKSkgKGRlZmluZSAoWkVEbnVsbD8gWkVEdmFsdWUpIChjb25kICgjdCAobnVsbD8gWkVEdmFsdWUpKSAoZWxzZSBlcnIpKSkgKGRlZmluZSAoWkVEcmV2ZXJzZSBaRURsaXN0KSAoY29uZCAoI3QgKHJldmVyc2UgWkVEbGlzdCkpIChlbHNlIGVycikpKSAoZGVmaW5lIChaRURzb3J0IFpFRGNvbXBhcmF0b3IgWkVEanVtYmxlKSAoY29uZCAoI3QgKFpFRGNhciAoWkVEc29ydDExIFpFRGNvbXBhcmF0b3IgKFpFRHNvcnQxIFpFRGp1bWJsZSkpKSkgKGVsc2UgZXJyKSkpIChkZWZpbmUgKFpFRHNvcnQxIFpFRGp1bWJsZSkgKGNvbmQgKCN0IChaRURtYXAgbGlzdCBaRURqdW1ibGUpKSAoZWxzZSBlcnIpKSkgKGRlZmluZSAoWkVEc29ydDExIFpFRGNvbXBhcmF0b3IgWkVEanVtYmxlKSAoY29uZCAoKFpFRG51bGw/IFpFRGp1bWJsZSkgKHF1b3RlICgpKSkgKChaRURudWxsPyAoWkVEY2RyIFpFRGp1bWJsZSkpIFpFRGp1bWJsZSkgKCN0IChaRURzb3J0MTEgWkVEY29tcGFyYXRvciAoWkVEY29ucyAoWkVEbWVyZ2UgWkVEY29tcGFyYXRvciAoWkVEY2FyIFpFRGp1bWJsZSkgKGNhZHIgWkVEanVtYmxlKSkgKFpFRHNvcnQxMSBaRURjb21wYXJhdG9yIChjZGRyIFpFRGp1bWJsZSkpKSkpIChlbHNlIGVycikpKSkKKGRpc3BsYXkgKFpFRHNvcnQgPiAnKDEgMyA1IDYgOSAwIDggNyA0IDIpKSk=
				
				 
			
				
			
			
				
	 
KGFwcGVuZCkgbGlzdDEgbGlzdDIKY29tbWVudDoKI3RydWUKKDAwMykgJnF1b3Q7YXBwZW5kJnF1b3Q7IGxpc3QxIGxpc3QyCiAKKGNhcikgcGFpcgpjb21tZW50OgojdHJ1ZQooMDAyKSAmcXVvdDtjYXImcXVvdDsgcGFpcgogCihjZHIpIHBhaXIKY29tbWVudDoKI3RydWUKKDAwMikgJnF1b3Q7Y2RyJnF1b3Q7IHBhaXIKIAooY29ucykgb25lIHR3bwpjb21tZW50OgojdHJ1ZQooMDAzKSAmcXVvdDtjb25zJnF1b3Q7IG9uZSB0d28KIAoobWFwKSBmdW5jdGlvbiBsaXN0CmNvbW1lbnQ6CiN0cnVlCigwMDMpICZxdW90O21hcCZxdW90OyBmdW5jdGlvbiBsaXN0CiAKKG1lcmdlKSBjb21wYXJhdG9yIGxpc3QxIGxpc3QyCmNvbW1lbnQ6CiN0cnVlCihtZXJnZTEpIGNvbXBhcmF0b3IgbGlzdDEgbGlzdDIgbmlsCiAKKG1lcmdlMSkgY29tcGFyYXRvciBsaXN0MSBsaXN0MiBjb2xsZWN0CmNvbW1lbnQ6CihudWxsPykgbGlzdDIKKGFwcGVuZCkgKHJldmVyc2UpIGNvbGxlY3QgbGlzdDEKIAoobWVyZ2UxKSBjb21wYXJhdG9yIGxpc3QxIGxpc3QyIGNvbGxlY3QKY29tbWVudDoKKG51bGw/KSBsaXN0MQooYXBwZW5kKSAocmV2ZXJzZSkgY29sbGVjdCBsaXN0MgogCihtZXJnZTEpIGNvbXBhcmF0b3IgbGlzdDEgbGlzdDIgY29sbGVjdApjb21tZW50OgooMDAzKSBjb21wYXJhdG9yIChjYXIpIGxpc3QyIChjYXIpIGxpc3QxCihtZXJnZTEpIGNvbXBhcmF0b3IgbGlzdDEgKGNkcikgbGlzdDIgKGNvbnMpIChjYXIpIGxpc3QyIGNvbGxlY3QKIAoobWVyZ2UxKSBjb21wYXJhdG9yIGxpc3QxIGxpc3QyIGNvbGxlY3QKY29tbWVudDoKI3RydWUKKG1lcmdlMSkgY29tcGFyYXRvciAoY2RyKSBsaXN0MSBsaXN0MiAoY29ucykgKGNhcikgbGlzdDEgY29sbGVjdAogCihudWxsPykgdmFsdWUKY29tbWVudDoKI3RydWUKKDAwMikgJnF1b3Q7bnVsbD8mcXVvdDsgdmFsdWUKIAoocmV2ZXJzZSkgbGlzdApjb21tZW50OgojdHJ1ZQooMDAyKSAmcXVvdDtyZXZlcnNlJnF1b3Q7IGxpc3QKIAooc29ydCkgY29tcGFyYXRvciBqdW1ibGUKY29tbWVudDoKI3RydWUKKGNhcikgKHNvcnQxMSkgY29tcGFyYXRvciAoc29ydDEpIGp1bWJsZQogCihzb3J0MSkganVtYmxlCmNvbW1lbnQ6CiN0cnVlCihtYXApICZxdW90O2xpc3QmcXVvdDsganVtYmxlCiAKKHNvcnQxMSkgY29tcGFyYXRvciBqdW1ibGUKY29tbWVudDoKKG51bGw/KSBqdW1ibGUKbmlsCiAKKHNvcnQxMSkgY29tcGFyYXRvciBqdW1ibGUKY29tbWVudDoKKG51bGw/KSAoY2RyKSBqdW1ibGUKanVtYmxlCiAKKHNvcnQxMSkgY29tcGFyYXRvciBqdW1ibGUKY29tbWVudDoKI3RydWUKKHNvcnQxMSkgY29tcGFyYXRvcgogICAgICAgICAoY29ucykgKG1lcmdlKSBjb21wYXJhdG9yIChjYXIpIGp1bWJsZSAoMDAyKSAmcXVvdDtjYWRyJnF1b3Q7IGp1bWJsZQogICAgICAgICAgICAgICAgKHNvcnQxMSkgY29tcGFyYXRvciAoMDAyKSAmcXVvdDtjZGRyJnF1b3Q7IGp1bWJsZQ==
(append) list1 list2
comment:
#true
(003) "append" list1 list2
 
(car) pair
comment:
#true
(002) "car" pair
 
(cdr) pair
comment:
#true
(002) "cdr" pair
 
(cons) one two
comment:
#true
(003) "cons" one two
 
(map) function list
comment:
#true
(003) "map" function list
 
(merge) comparator list1 list2
comment:
#true
(merge1) comparator list1 list2 nil
 
(merge1) comparator list1 list2 collect
comment:
(null?) list2
(append) (reverse) collect list1
 
(merge1) comparator list1 list2 collect
comment:
(null?) list1
(append) (reverse) collect list2
 
(merge1) comparator list1 list2 collect
comment:
(003) comparator (car) list2 (car) list1
(merge1) comparator list1 (cdr) list2 (cons) (car) list2 collect
 
(merge1) comparator list1 list2 collect
comment:
#true
(merge1) comparator (cdr) list1 list2 (cons) (car) list1 collect
 
(null?) value
comment:
#true
(002) "null?" value
 
(reverse) list
comment:
#true
(002) "reverse" list
 
(sort) comparator jumble
comment:
#true
(car) (sort11) comparator (sort1) jumble
 
(sort1) jumble
comment:
#true
(map) "list" jumble
 
(sort11) comparator jumble
comment:
(null?) jumble
nil
 
(sort11) comparator jumble
comment:
(null?) (cdr) jumble
jumble
 
(sort11) comparator jumble
comment:
#true
(sort11) comparator
         (cons) (merge) comparator (car) jumble (002) "cadr" jumble
                (sort11) comparator (002) "cddr" jumble